@charset "UTF-8";
/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;
*/
/*
The provided mixins are intended to be used with the array-like variables

.icon-home {
@include sprite-width($icon-home);
}

.icon-email {
@include sprite($icon-email);
}
*/
/*! normalize.css v3.0.hasegawa | MIT License | git.io/normalize */
/**
* hasegawa. Set default font family to sans-serif.
* imura. Prevent iOS text size adjust after orientation change, without disabling
*    user zoom.
*/
html {
  font-family: sans-serif;
  /* hasegawa */
  -ms-text-size-adjust: 100%;
  /* imura */
  -webkit-text-size-adjust: 100%;
  /* imura */
}

/**
* Remove default margin.
*/
body {
  margin: 0;
}

/* HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined for any HTML5 element in IE 8/9.
* Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
* Correct `block` display not defined for `main` in IE 11.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
* hasegawa. Correct `inline-block` display not defined in IE 8/9.
* imura. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
progress,
video {
  display: inline-block;
  /* hasegawa */
  vertical-align: baseline;
  /* imura */
}

/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
* Address `[hidden]` styling not present in IE 8/9/10.
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
*/
[hidden],
template {
  display: none;
}

/* Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
  background: transparent;
}

/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
========================================================================== */
/**
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
  border-bottom: 1px dotted;
}

/**
* Address style set to `bolder` in Firefox akagi+, Safari, and Chrome.
*/
b,
strong {
  font-weight: bold;
}

/**
* Address styling not present in Safari and Chrome.
*/
dfn {
  font-style: italic;
}

/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox akagi+, Safari, and Chrome.
*/
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
* Address styling not present in IE 8/9.
*/
mark {
  background: #ff0;
  color: #000;
}

/**
* Address inconsistent and variable font size in all browsers.
*/
small {
  font-size: 80%;
}

/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9/10.
*/
img {
  border: 0;
}

/**
* Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari.
*/
figure {
  margin: 1em 40px;
}

/**
* Address differences between Firefox and other browsers.
*/
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
* Contain overflow in all browsers.
*/
pre {
  overflow: auto;
}

/**
* Address odd `em`-unit font size rendering in all browsers.
*/
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
========================================================================== */
/**
* Known limitation: by default, Chrome and Safari on OS X allow very limited
* styling of `select`, unless a `border` property is set.
*/
/**
* hasegawa. Correct color not being inherited.
*    Known issue: affects color of disabled elements.
* imura. Correct font properties not being inherited.
* watanabe. Address margins set differently in Firefox akagi+, Safari, and Chrome.
*/
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* hasegawa */
  font: inherit;
  /* imura */
  margin: 0;
  /* watanabe */
}

/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
  overflow: visible;
}

/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
* Correct `select` style inheritance in Firefox.
*/
button,
select {
  text-transform: none;
}

/**
* hasegawa. Avoid the WebKit bug in Android akagi.0.* where (imura) destroys native `audio`
*    and `video` controls.
* imura. Correct inability to style clickable `input` types in iOS.
* watanabe. Improve usability and consistency of cursor style between image-type
*    `input` and others.
*/
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  /* imura */
  cursor: pointer;
  /* watanabe */
}

/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
* Remove inner padding and border in Firefox akagi+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
* Address Firefox akagi+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
input {
  line-height: normal;
}

/**
* It's recommended that you don't attempt to style these elements.
* Firefox's implementation doesn't respect box-sizing, padding, or width.
*
* hasegawa. Address box sizing set to `content-box` in IE 8/9/10.
* imura. Remove excess padding in IE 8/9/10.
*/
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  /* hasegawa */
  padding: 0;
  /* imura */
}

/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
* hasegawa. Address `appearance` set to `searchfield` in Safari and Chrome.
* imura. Address `box-sizing` set to `border-box` in Safari and Chrome
*    (include `-moz` to future-proof).
*/
input[type=search] {
  -webkit-appearance: textfield;
  /* hasegawa */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* imura */
  box-sizing: content-box;
}

/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
* Define consistent border, margin, and padding.
*/
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
* hasegawa. Correct `color` not being inherited in IE 8/9/10/11.
* imura. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
  border: 0;
  /* hasegawa */
  padding: 0;
  /* imura */
}

/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
  overflow: auto;
}

/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
  font-weight: bold;
}

/* Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, p {
  margin: 0;
  padding: 0;
  line-height: 1;
  font-size: 1em;
}

ul, ol, dl {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

img {
  vertical-align: top;
}

body {
  background: #1a1a1a;
  color: #fff;
  -webkit-text-size-adjust: 100%;
  font-family: sans-serif;
}

a {
  color: #00deff;
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  .forPC {
    display: inherit;
  }

  .forSP {
    display: none;
  }

  body {
    min-width: 1000px;
    font-size: 10px;
  }

  p {
    line-height: 1.6;
  }

  a:hover {
    color: #66ff00;
  }

  a[href^="tel:"] {
    color: #fff;
    cursor: default;
  }

  #page-header #main-nav:after, #sub-nav ul:after, #top #news li:after, #top #news a:after, #top #about-p3peace .inner:after, #top #about-ab .inner:after, #top #banner-area ul:after, #artist-bank #lead-area:after, #artist-bank .wrapper:after, #artist-bank .pickup .header:after, #page-news article .news-contents:after, #page-about .section-contents:after, #company-info dl:after, #page-contact #contact .section-contents:after, #page-special .section-contents:after, #page-abar .contents-header:after, #page-abar .howto:after, #page-chalent #chalent-list ul:after, #page-tsunagalink .section-contents:after, #page-tsunagalink dl:after, .audio:after, #page-joy #article-contents ul:after, #page-news-past article .news-contents:after, #page-news-past article section:after, #page-news-past article .image-wrapper:after, #page-news-past .horizontal:after, #top.foreign-language #contact .section-contents:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  .sp-attention {
    display: none;
  }

  #contents {
    position: relative;
    padding-top: 10px;
    background: #1a1a1a;
  }

  #contents .inner {
    width: 900px;
    margin: 0 auto;
  }

  #contents > section h1 {
    font-size: 3.8em;
    text-transform: uppercase;
  }

  .icon-balloon-red:before, .icon-balloon-blue:before, .icon-balloon-green:before, .icon-balloon-yellow:before, .icon-pierrot-green:before, .icon-pierrot-blue:before, .icon-pierrot-pink:before, .icon-tent-red:before, .icon-tent-blue:before, .icon-tent-purple:before {
    display: inline-block;
    content: "";
  }

  .icon-balloon-red:before, .icon-balloon-blue:before, .icon-balloon-green:before, .icon-balloon-yellow:before {
    width: 34px;
    height: 52px;
    background-image: url(../img/sprite_old.png);
  }

  .icon-pierrot-green:before, .icon-pierrot-blue:before, .icon-pierrot-pink:before {
    width: 52px;
    height: 55px;
    background-image: url(../img/sprite_old.png);
  }

  .icon-tent-red:before, .icon-tent-blue:before, .icon-tent-purple:before {
    width: 68px;
    height: 52px;
    background-image: url(../img/sprite_old.png);
  }

  .icon-balloon-red:before {
    background-position: -204px -321px;
  }

  .icon-balloon-blue:before {
    background-position: -333px -241px;
  }

  .icon-balloon-green:before {
    background-position: -265px -241px;
  }

  .icon-balloon-yellow:before {
    background-position: -299px -241px;
  }

  .icon-pierrot-green:before {
    background-position: -213px -241px;
  }

  .icon-pierrot-blue:before {
    background-position: -109px -241px;
  }

  .icon-pierrot-pink:before {
    background-position: -161px -241px;
  }

  .icon-tent-red:before {
    background-position: -136px -321px;
  }

  .icon-tent-blue:before {
    background-position: -68px -321px;
  }

  .icon-tent-purple:before {
    background-position: 0px -321px;
  }

  .ios a:hover .hover {
    display: none !important;
  }

  .audio {
    margin-top: 20px;
  }

  .audio .heading {
    float: left;
    margin-right: 20px;
    padding-top: 8px;
    padding-bottom: 10px;
    color: #f0375e;
    font-size: 1.5em;
    line-height: 1;
  }

  .audio .heading:before {
    display: inline-block;
    content: "";
    width: 14px;
    height: 20px;
    margin: -3px 6px 0 0;
    vertical-align: top;
    background: url("/assets/img/ico_audio.png") 0 0 no-repeat;
  }

  .ios .audio .heading {
    float: none;
    margin-bottom: 60px;
  }

  .audio .description {
    clear: both;
    font-size: 1.4em;
  }

  .audio audio {
    vertical-align: top;
  }

  #iframe-container {
    overflow: hidden;
    width: 0;
    height: 0;
  }

  .ios #page-top-link, .android #page-top-link {
    right: 10px !important;
  }
}
@media screen and (max-width: 767px) {
  html, body {
    width: 100%;
  }

  .forPC {
    display: none;
  }

  .forSP {
    display: inherit;
  }

  body {
    font-size: 1.5625vw;
  }

  img {
    width: 100%;
    height: auto;
  }

  #contents {
    position: relative;
    padding-top: 0.3448275862%;
    background: #1a1a1a;
  }

  #contents .inner {
    width: 90.625%;
    margin: 0 auto;
  }

  #contents > section h1 {
    text-transform: uppercase;
  }

  .sp-attention {
    color: #66ff00;
  }

  .audio {
    margin-top: 4.8275862069%;
  }

  .audio .heading {
    float: left;
    margin-bottom: 0.9230769231em;
    color: #f0375e;
    font-size: 4.0625vw;
    line-height: 1;
  }

  .audio .heading:before {
    display: inline-block;
    content: "";
    margin: -0.2307692308em 0.3846153846em 0 0;
    vertical-align: middle;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 49.8214285714% 26.9306930693%;
    background-size: 4407.69230769% 3070.58823529%;
    width: 1em;
    height: 1.3076923077em;
  }

  .audio .description {
    clear: both;
    font-size: 1.4em;
  }

  .audio audio {
    vertical-align: top;
  }

  .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.2068965517%;
  }

  .youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    vertical-align: top;
  }
}
@media screen and (min-width: 768px) {
  #contents {
    padding-top: 110px;
  }

  #page-header {
    position: fixed;
    top: 0;
    width: 100%;
    background: #f0375e;
    zoom: 1;
    z-index: 3;
  }

  #page-header:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    height: 4px;
    background: url("/assets/img/bg_pink_dot.png") 0 0 repeat-x;
  }

  #page-header:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    height: 4px;
    background: url("/assets/img/bg_pink_dot.png") 0 0 repeat-x;
  }

  #page-header.fixed {
    position: fixed !important;
    top: 0 !important;
  }

  #page-header h1 {
    margin: 0;
    padding: 0;
  }

  #page-header ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
  }

  #page-header .inner {
    position: relative;
    width: 960px;
    margin: 0 auto;
  }

  #page-header #main-nav {
    padding: 24px 0;
  }

  #page-header #logo {
    float: left;
    margin-left: -1px;
    margin-right: 30px;
  }

  #page-header #logo img {
    width: 100%;
    height: 100%;
  }

  #lang-link {
    position: absolute;
    top: 0;
    left: 50%;
    width: 960px;
    margin-left: -480px;
  }

  #lang-link ul {
    position: absolute;
    right: 0;
    margin: 0;
    padding: 0;
    list-style-type: none;
  }

  #lang-link li {
    overflow: hidden;
    float: left;
    width: 80px;
    height: 23px;
    margin-left: 2px;
    padding-bottom: 2px;
    border-radius: 0 0 6px 6px;
    font-size: 1.2em;
    background-color: #c9003e;
  }

  #lang-link a {
    display: table-cell;
    width: 80px;
    height: 23px;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    background-color: #d80349;
  }

  #lang-link a:hover {
    background-color: #c9003e;
  }

  #copyright {
    margin: 0;
    padding: 25px 0;
    font-family: Arial;
    color: #fff;
    text-align: center;
    line-height: 1;
    background: #a80ece;
  }

  #copyright small {
    font-size: 1.2em;
  }

  #page-footer #footer-wrapper {
    position: relative;
    background: #f0375e url("/assets/img/bg_pink_dot.png") 0 0 repeat-x;
  }

  #page-footer #footer-wrapper:before {
    position: absolute;
    top: -60px;
    left: 50%;
    display: block;
    content: "";
    width: 200px;
    height: 64px;
    margin-left: -100px;
    background: url("/assets/img/bg_footer_arc.png") 0 0 no-repeat;
  }

  #page-footer .inner {
    width: 960px;
    margin: 0 auto;
    padding: 4px 0 42px;
    text-align: center;
  }

  #page-footer #footer-logo {
    position: relative;
    margin-top: -7px;
    margin-bottom: 31px;
    z-index: 2;
  }

  #page-footer .company {
    font-size: 1.4em;
    line-height: 1;
    max-height: 999999px;
  }

  #page-footer .name {
    display: block;
    margin-bottom: 14px;
  }

  #page-footer .instagram-link {
    margin: 20px auto 0;
    width: 23px;
  }

  #page-footer a {
    color: #111111;
  }
}
@media screen and (max-width: 767px) {
  #page-header {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: fixed;
    overflow: hidden;
    top: 0;
    width: 100%;
    height: 18.75vw;
    background: #f0375e;
    z-index: 3;
    -webkit-transition: all 300ms;
    -moz-transition: all 300ms;
    -ms-transition: all 300ms;
    -o-transition: all 300ms;
    transition: all 300ms;
  }

  #page-header:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 0.9375%;
    background: url("/assets/img/bg_pink_dot_sp.png") 0 0 repeat-x;
    -webkit-background-size: 1.875%;
    background-size: 1.875%;
  }

  #page-header:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    margin-top: 17.8125%;
    padding-top: 0.9375%;
    background: url("/assets/img/bg_pink_dot_sp.png") 0 0 repeat-x;
    -webkit-background-size: 1.875%;
    background-size: 1.875%;
  }

  #page-header .inner {
    position: relative;
  }

  #page-header #logo {
    position: relative;
    width: 17.1875%;
    margin: 0 auto;
    padding: 2.96875% 0 3.125%;
    z-index: 2;
  }

  #page-header #logo img {
    width: 100%;
    height: 100%;
  }

  #page-header.open {
    height: 100%;
    overflow: scroll;
  }

  #page-header.open .button-line {
    background: transparent;
  }

  #page-header.open .button-line:before {
    margin-top: 0;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  #page-header.open .button-line:after {
    margin-top: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  #lang-link {
    display: none;
  }

  #lang-link ul {
    position: absolute;
    right: 0;
    margin: 0;
    padding: 0;
    list-style-type: none;
  }

  #lang-link li {
    float: left;
    width: 70px;
    height: 22px;
    margin-left: 2px;
    font-size: 1.1em;
  }

  #lang-link a {
    display: table-cell;
    width: 70px;
    height: 22px;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    background-color: #0a8ef3;
    border-radius: 0 0 7px 7px;
  }

  #lang-link a:hover {
    color: #0a8ef3;
    background-color: #fff;
  }

  #copyright {
    margin: 0;
    padding: 4.84375% 0;
    font-family: Arial;
    color: #fff;
    text-align: center;
    font-size: 2.8125vw !important;
    line-height: 1 !important;
    background: #a80ece;
  }

  #copyright small {
    font-size: 1em;
    line-height: 1;
  }

  #page-footer #footer-wrapper {
    position: relative;
    background: #f0375e url("/assets/img/bg_pink_dot_sp.png") 0 0 repeat-x;
    -webkit-background-size: 1.875%;
    background-size: 1.875%;
  }

  #page-footer #footer-wrapper:before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    content: "";
    width: 33.4375%;
    margin-top: -9.375%;
    margin-left: -16.71875%;
    padding-top: 10.3125%;
    background: url("/assets/img/bg_footer_arc_sp.png") 0 0 no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-footer .inner {
    margin: 0 auto;
    padding: 0 0 6.25%;
    text-align: center;
  }

  #page-footer #footer-logo {
    position: relative;
    width: 20.3125%;
    margin: 0 auto;
    z-index: 2;
  }

  #page-footer .company {
    font-size: 3.75vw;
    line-height: 1;
    max-height: 999999px;
  }

  #page-footer .name {
    display: block;
    margin: 6.25% 0 3.4375%;
  }

  #page-footer .address {
    display: block;
    margin-bottom: 2.1875%;
  }

  #page-footer .instagram-link {
    display: block;
    width: 7.8125%;
    margin: 4.6875% auto 0;
  }

  #page-footer a {
    color: #fff;
  }
}
@media screen and (min-width: 768px) {
  #anime {
    position: relative;
    width: 100%;
    height: 500px;
    margin: 0;
    overflow: hidden;
  }

  #anime .anime-inner {
    position: absolute;
    left: 0;
  }

  .header-wrapper #page-header {
    top: 500px;
  }

  #top #page-header {
    position: absolute;
  }

  #top #contents {
    padding-bottom: 196px;
  }

  #top #contents > section {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #top #news {
    margin-top: 220px;
    margin-bottom: 227px;
  }

  #top #news li {
    margin-bottom: 40px;
  }

  #top #news a {
    display: block;
  }

  #top #news a:hover .summary {
    color: #66bbf8;
  }

  #top #news a:hover .hover {
    display: block;
  }

  #top #news a:hover .image img {
    border-radius: 20px;
  }

  #top #news .image {
    position: relative;
    overflow: hidden;
    float: left;
    width: 240px;
    height: 180px;
    padding-right: 30px;
  }

  #top #news .image img {
    width: 100%;
    height: auto;
    border-radius: 15px;
  }

  #top #news .hover {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 226px;
    height: 166px;
    border: #ffee00 solid 7px;
    z-index: 2;
    background: rgba(0, 0, 0, 0.7) url("/assets/img/bg_hover-arrow.png") center center no-repeat;
    border-radius: 15px;
  }

  #top #news .text {
    float: left;
    width: 630px;
    margin-bottom: -14px;
  }

  #top #news .date {
    color: #66ff00;
    font-size: 2.2em;
    margin-top: 5px;
  }

  #top #news .summary {
    color: #fff;
    font-size: 2em;
    line-height: 1.55;
  }

  #top #news .summary p {
    margin: 9px 0;
  }

  #top.foreign-language #page-header #logo {
    float: none;
    width: 84px;
    margin: 0 auto !important;
  }

  #top.foreign-language #contents {
    padding-top: 326px;
  }

  #top.foreign-language #contents p {
    margin-bottom: 1em;
  }

  #top.foreign-language #contents .lead {
    margin-bottom: 10px;
  }

  #top.foreign-language #contents em {
    font-weight: bold;
    font-style: normal;
    font-size: 1.3125em;
    line-height: 1.2;
  }

  #top.foreign-language #contents .caution {
    margin: 9px 0 13px;
    font-size: 1.4em;
    line-height: 1.6;
  }

  #top.foreign-language #about-p3peace {
    margin-bottom: 200px;
  }

  #top.foreign-language #about-ab {
    margin-bottom: 200px;
  }

  #top.foreign-language #company-info {
    margin-bottom: 200px;
  }

  #top.foreign-language #contact .phone-number, #top.foreign-language #contact .email-address {
    font-size: 3.5em;
    color: #fff;
  }

  #top.foreign-language #contact .phone-number a, #top.foreign-language #contact .email-address a {
    display: inline-block;
    color: #fff;
  }

  #top.foreign-language #contact .phone-number a:hover, #top.foreign-language #contact .email-address a:hover {
    color: #f0375e;
  }

  #top.foreign-language #mail {
    width: 420px;
    margin: 0 auto;
    padding-top: 5px;
    text-align: center;
  }

  #top.foreign-language #mail img {
    margin-bottom: 35px;
  }

  #top #about-p3peace .inner {
    margin-bottom: 60px;
  }

  #top #about-p3peace .text .more-link {
    margin-top: 25px;
  }

  #top #about-ab .inner {
    margin-bottom: 80px;
  }

  #top #about-ab .section-title {
    margin-bottom: 39px;
  }

  #top #about-ab .text .more-link {
    margin-top: 15px;
  }

  #top #about-p3peace .image, #top #about-ab .image {
    float: left;
    width: 108px;
    margin-right: 21px;
  }

  #top #about-p3peace .text, #top #about-ab .text {
    float: left;
    width: 771px;
    margin-top: -4px;
  }

  #top #about-p3peace .text p, #top #about-ab .text p {
    margin: 0;
    font-size: 1.6em;
    line-height: 1.7;
  }

  #banner-area {
    overflow: hidden;
    background: url("/assets/img/bg_section-separator.png") repeat-x 0 0;
  }

  #banner-area ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    width: 920px;
    margin: 85px 0 0;
  }

  #banner-area li {
    float: left;
    width: 210px;
    margin-right: 20px;
    font-size: 1.3em;
  }

  #banner-area .image {
    margin-bottom: 10px;
  }

  #banner-area .text {
    margin: 0 2px;
    line-height: 1.7;
  }

  #banner-area a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  #top {
    padding-top: 18.75%;
  }

  #anime {
    position: relative;
    width: 100%;
    padding-top: 131.25%;
    margin: 0;
    overflow: hidden;
  }

  #anime .anime-inner {
    position: absolute;
    top: 0;
    height: 100%;
  }

  #anime img {
    float: left;
    width: auto;
    height: 100%;
  }

  #top #contents {
    margin-top: 33.75%;
    padding-bottom: 46.875%;
  }

  #top p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #top #contents > section {
    position: relative;
    padding-top: 0.3125%;
  }

  #top #contents > section:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #top #news {
    margin-bottom: 46.8965517241%;
  }

  #top #news li {
    margin-bottom: 12.4137931034%;
  }

  #top #news a {
    display: block;
  }

  #top #news .image img {
    -webkit-border-radius: 1.2em;
    -moz-border-radius: 1.2em;
    border-radius: 1.2em;
  }

  #top #news .hover {
    display: none;
  }

  #top #news .date {
    margin-top: 5.1724137931%;
    color: #66ff00;
    font-size: 4.6875vw;
  }

  #top #news .summary {
    color: #fff;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #top #news .summary p {
    margin: 2.0689655172% 0;
  }

  #top.foreign-language #contents p {
    margin-bottom: 1em;
  }

  #top.foreign-language #contents .lead {
    margin-bottom: 1.724137931%;
  }

  #top.foreign-language #contents em {
    font-weight: bold;
    font-style: normal;
    font-size: 4.375vw;
    line-height: 1.4285714286;
  }

  #top.foreign-language #contents .caution {
    margin: 0.4545454545em 0 0.6363636364em;
    font-size: 3.4375vw;
    line-height: 1.3636363636;
  }

  #top.foreign-language #about-p3peace {
    padding-bottom: 35%;
  }

  #top.foreign-language #about-p3peace .image {
    width: 34.4827586207%;
    margin: 6.8965517241% auto 5.5172413793%;
  }

  #top.foreign-language #about-p3peace .lead-text {
    margin-bottom: 4.8275862069%;
  }

  #top.foreign-language #about-p3peace em {
    font-weight: bold;
    font-style: normal;
    font-size: 4.6875vw;
    line-height: 1.4666666667;
  }

  #top.foreign-language #about-ab {
    padding-bottom: 35%;
  }

  #top.foreign-language #company-info {
    padding-bottom: 35%;
  }

  #top.foreign-language #company-info .section-title {
    margin-top: -1.4166666667em;
  }

  #top.foreign-language #mail {
    margin-top: 13.7931034483%;
    text-align: center;
  }

  #top.foreign-language #mail a {
    color: #fff;
    font-size: 6.875vw;
    line-height: 1;
  }

  #top.foreign-language #mail img {
    width: 22.4137931034%;
    margin-bottom: 5.1724137931%;
  }

  #top.korean #contents {
    margin-top: 38.125%;
  }

  #top.korean #about-p3peace .section-title {
    margin-top: -1.4166666667em;
  }

  #top.korean #company-info .section-title {
    margin-top: -0.8333333333em;
  }

  #top.english #company-info .section-title {
    margin-top: -1.4166666667em;
  }

  #top #about-ab {
    padding-bottom: 12.5%;
  }

  #top #about-ab .section-title {
    margin: -10.625% auto 6.25%;
  }

  #top #about-ab .image {
    width: 34.4827586207%;
    margin: 0 auto;
  }

  #top #about-ab .text p {
    margin: 3.7931034483% 0;
  }

  #top #about-ab .text .more-link {
    margin-top: 5.8620689655%;
  }

  #banner-area {
    position: relative;
    overflow: hidden;
    padding: 13.75% 0 0;
  }

  #banner-area:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #banner-area ul:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #banner-area li {
    float: left;
    width: 46.5517241379%;
    margin-right: 6.8965517241%;
  }

  #banner-area li:nth-child(2n) {
    margin-right: 0;
  }

  #banner-area li:nth-child(2n+1) {
    clear: left;
  }

  #banner-area .text {
    margin: 4.4444444444% 0 12.5925925926%;
    font-size: 3.75vw;
    line-height: 1.5;
  }
}
@media screen and (min-width: 768px) {
  #page-about #contents {
    margin-top: 220px;
  }

  #page-about #contents > section {
    padding-top: 1px;
    padding-bottom: 5px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #page-about #contents #access {
    padding-bottom: 200px;
  }

  #page-about #contents p {
    margin: 0 0 27px;
    font-size: 1.6em;
    line-height: 1.7;
    max-height: 999999px;
  }

  #page-about #about-p3peace {
    margin-bottom: 184px;
  }

  #page-about #about-p3peace .section-title {
    margin-bottom: 36px;
  }

  #page-about #about-p3peace .image {
    float: right;
    width: 120px;
    margin-top: 6px;
  }

  #page-about #about-p3peace .image img {
    width: 100%;
    height: auto;
  }

  #page-about #about-p3peace .text {
    float: left;
    width: 750px;
    margin-right: 30px;
  }

  #page-about #about-p3peace .lead-text {
    width: 770px;
    margin-bottom: 10px;
  }

  #page-about #about-p3peace em {
    font-weight: bold;
    font-style: normal;
    font-size: 1.3125em;
    line-height: 1.3333333333;
  }

  #page-about #access .section-contents p {
    margin-bottom: 23px;
    line-height: 1.875;
  }

  #company-info .section-title {
    margin-bottom: 35px;
  }

  #company-info dl {
    margin: 16px 0 157px;
    padding: 0;
  }

  #company-info dt {
    clear: left;
    float: left;
    width: 150px;
    margin: 0 13px 20px 0;
    padding-left: 2px;
    color: #66ff00;
    font-size: 2em;
    line-height: 1.5;
  }

  #company-info dd {
    float: left;
    width: 730px;
    margin: 0 0 20px;
    font-size: 2em;
    line-height: 1.5;
  }

  #access .section-title {
    margin-bottom: 33px;
  }

  #access #map-area {
    width: 470px;
    margin: 25px auto 0;
  }

  #access img {
    margin-bottom: 18px;
    border: #fff solid 3px;
    border-radius: 15px;
    background: #fff;
  }

  #access .simple-link {
    text-align: right;
  }
}
@media screen and (max-width: 767px) {
  #page-about #contents {
    padding-top: 60.9375%;
  }

  #page-about #contents > section {
    position: relative;
    padding-top: 0.3125%;
  }

  #page-about #contents > section:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-about #contents p {
    margin: 0 0 6.8965517241%;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-about #about-p3peace {
    padding-bottom: 35%;
  }

  #page-about #about-p3peace .section-title {
    margin-top: -11.724137931%;
  }

  #page-about #about-p3peace .image {
    width: 34.4827586207%;
    margin: 6.8965517241% auto 5.5172413793%;
  }

  #page-about #about-p3peace .lead-text {
    margin-bottom: 4.8275862069%;
  }

  #page-about #about-p3peace em {
    font-weight: bold;
    font-style: normal;
    font-size: 4.6875vw;
    line-height: 1.4666666667;
  }

  #page-about #access .section-contents p {
    margin-bottom: 5.8620689655%;
  }

  #company-info {
    padding-bottom: 26.5625%;
  }

  #company-info .section-title {
    margin-bottom: 5.8620689655%;
  }

  #company-info dl:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #company-info dt {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    clear: left;
    float: left;
    width: 29.6551724138%;
    margin: 0 0 4.8275862069%;
    padding-left: 0.3448275862%;
    color: #66ff00;
    font-size: 4.0625vw;
    line-height: 1.4615384615;
  }

  #company-info dd {
    float: left;
    width: 70%;
    margin: 0 0 4.8275862069%;
    font-size: 4.0625vw;
    line-height: 1.4615384615;
  }

  #company-info a {
    color: #fff;
  }

  #access {
    padding-bottom: 58.6206896552%;
  }

  #access .section-title {
    margin-bottom: 5.8620689655%;
  }

  #access #map-area {
    margin: 0 auto;
  }

  #access img {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: #fff solid 0.46875vw;
    border-radius: 2.34375vw;
    background: #fff;
  }

  #access .simple-link {
    margin-top: 5.1724137931%;
    text-align: center;
    line-height: 1;
  }
}
@media screen and (min-width: 768px) {
  #artist-bank.chara06 #contents {
    padding-top: 309px;
  }

  #artist-bank #contents {
    padding-top: 326px;
    padding-bottom: 210px;
  }

  #artist-bank #contents p {
    margin-top: 17px;
    font-size: 1.6em;
    line-height: 1.6875;
    max-height: 999999px;
  }

  #artist-bank #contents .caution {
    margin: 9px 0 13px;
    font-size: 1.4em;
    line-height: 1.6;
  }

  #artist-bank #page-title {
    margin-bottom: 34px;
  }

  #artist-bank #lead-area .image {
    float: right;
    width: 135px;
    margin-top: 5px;
    text-align: right;
  }

  #artist-bank #lead-area .lead-text {
    float: left;
    width: 750px;
  }

  #artist-bank #lead-area em {
    font-weight: bold;
    font-style: normal;
    font-size: 1.3125em;
    line-height: 1.2;
  }

  #artist-bank .lead-text {
    margin: 0 0 10px 2px;
  }

  #artist-bank .wrapper {
    margin-top: 44px;
  }

  #artist-bank #main {
    float: right;
    width: 590px;
  }

  #artist-bank #artist-movie h1 {
    position: relative;
    margin: 2px 0 14px;
    color: #fff;
    font-size: 2.7em;
  }

  #artist-bank #artist-movie h1:before {
    display: inline-block;
    content: "";
    margin-top: -2px;
    margin-right: 12px;
    background-image: url(/assets/img/sprite.png);
    background-position: -70px -520px;
    width: 61px;
    height: 60px;
    vertical-align: middle;
  }

  #artist-bank #artist-movie p {
    margin-bottom: 6px;
  }

  #artist-bank #artist-movie iframe {
    vertical-align: top;
  }

  #artist-bank #artist-movie .attention {
    margin: 0;
    font-size: 1.4em;
    line-height: 1.6;
  }

  #artist-bank #artist-list {
    overflow: hidden;
  }

  #artist-bank #artist-list ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    width: 620px;
  }

  #artist-bank #artist-list li {
    float: left;
    width: 280px;
    margin: 0 30px 37px 0;
  }

  #artist-bank #artist-list .image img {
    border-radius: 15px;
    border: #ffee00 solid 7px;
  }

  #artist-bank #artist-list .name {
    display: block;
    margin-top: 12px;
    margin-left: 15px;
    text-indent: -15px;
    font-size: 1.6em;
    line-height: 1.3;
    text-align: center;
  }

  #artist-bank #artist-list .name:before {
    margin: 0 8px 0 0;
    display: inline-block;
    content: "";
    vertical-align: text-top;
    background-image: url(/assets/img/sprite.png);
    background-position: -648px -497px;
    width: 7px;
    height: 14px;
  }

  #artist-bank #artist-list .align-left {
    text-align: left;
  }

  #artist-bank #artist-list a:hover .name:before {
    background-position: -641px -497px;
  }

  #artist-bank #artist-list .hover {
    width: 266px;
    height: 194px;
  }

  #about-artist-bank-japan {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") repeat-x 0 0;
  }

  .pagination {
    text-align: center;
    padding-top: 42px;
    background: url("/assets/img/bg_dot-separator03.png") 0 0 repeat-x;
  }

  .pagination.top-pagination {
    margin-bottom: 38px;
    padding: 0 0 31px;
    background: url("/assets/img/bg_dot-separator03.png") 0 100% repeat-x;
  }

  .pagination .prev {
    display: inline-block;
    width: 13px;
    margin-top: 4px;
    vertical-align: top;
  }

  .pagination .prev a {
    display: inline-block;
    background-image: url(/assets/img/sprite.png);
    background-position: -655px -327px;
    width: 13px;
    height: 23px;
    text-indent: -9999px;
  }

  .pagination .prev a:hover {
    background-position: -655px -258px;
  }

  .pagination .next {
    display: inline-block;
    width: 13px;
    margin-top: 4px;
    vertical-align: top;
  }

  .pagination .next a {
    display: inline-block;
    background-image: url(/assets/img/sprite.png);
    background-position: -655px -304px;
    width: 13px;
    height: 23px;
    text-indent: -9999px;
  }

  .pagination .next a:hover {
    background-position: -655px -281px;
  }

  .pagination ol {
    display: inline-block;
    margin: 0;
    padding: 0;
    list-style-type: none;
    margin: 0 20px 0 27px;
  }

  .pagination li {
    display: inline-block;
    margin-right: 7px;
  }

  .pagination li a {
    display: inline-block;
    width: 26px;
    padding: 6px 0 4px;
    border: #f0375e solid 2px;
    border-radius: 15px;
    font-size: 1.6em;
    line-height: 1;
    color: #f0375e;
    text-align: center;
    background: #fff;
  }

  .pagination li a:hover {
    background-color: #ffcccc;
  }

  .pagination .current a {
    color: #fff;
    background: #f0375e;
  }

  .pagination .current a:hover {
    color: #fff;
    background: #f0375e;
  }

  .pickup {
    padding-top: 2px;
  }

  .pickup .header {
    margin-top: 36px;
    margin-bottom: 23px;
  }

  .pickup .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 62px;
    margin-right: 12px;
    padding: 10px 15px;
    font-size: 2em;
    line-height: 1;
    color: #fff;
    text-align: center;
    border-radius: 8px;
    background: #2266bb;
  }

  .pickup .number:before {
    position: absolute;
    top: -38px;
    left: 50%;
    display: inline-block;
    content: "";
    margin-left: -20px;
    background-image: url(/assets/img/sprite.png);
    background-position: -96px -588px;
    width: 40px;
    height: 40px;
  }

  .pickup .name {
    float: left;
    width: 480px;
    overflow: hidden;
    margin-top: 4px;
    font-size: 2.7em;
    line-height: 1.2;
  }

  .pickup .title {
    font-size: 0.78em;
  }

  .pickup .text p {
    margin-bottom: 12px;
  }

  .pickup .text .simple-link {
    margin: 10px 0 22px;
  }

  #back-number .heading {
    margin: 20px 19px 0;
    color: #f0375e;
    font-weight: bold;
    font-size: 0.9375em;
    cursor: pointer;
    line-height: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }

  #back-number .heading:before {
    display: inline-block;
    content: "";
    margin: -4px 5px 0 0;
    background-image: url(/assets/img/sprite.png);
    background-position: -647px -427px;
    width: 22px;
    height: 22px;
    vertical-align: middle;
  }

  #back-number.open .heading:before {
    background-position: -647px -361px;
  }

  #back-number ol {
    margin: 0;
    padding: 0;
    list-style-type: none;
    margin-top: 15px;
    font-size: 1em;
    margin-bottom: -13px;
  }

  #menu .current #back-number li {
    margin-bottom: 11px;
    font-size: 0.9375em;
  }

  #menu .current #back-number a {
    position: relative;
    display: inline-block;
    background: none;
    margin: 0 0 0 19px;
    padding: 0 0 0 22px;
    border: none;
    border-radius: 0;
    color: #00deff;
    line-height: 1.2;
  }

  #menu .current #back-number a:before {
    position: absolute;
    top: 1px;
    left: 8px;
    display: inline-block;
    content: "";
    margin-right: 7px;
    background-image: url(/assets/img/sprite.png);
    background-position: -648px -497px;
    width: 7px;
    height: 14px;
  }

  #menu .current #back-number a:hover {
    color: #66ff00;
    background: none;
  }

  #menu .current #back-number a:hover:before {
    background-position: -641px -497px;
  }
}
@media screen and (max-width: 767px) {
  #artist-bank.chara06 #contents {
    padding-top: 55.9375%;
  }

  #artist-bank #contents {
    padding-top: 59.6875%;
    padding-bottom: 53.125%;
  }

  #artist-bank #contents p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
    max-height: 999999px;
  }

  #artist-bank #contents .caution {
    margin: 4.1379310345% 0 0;
    font-size: 3.59375vw;
    line-height: 1.5217391304;
  }

  #artist-bank #lead-area .image {
    width: 34.4827586207%;
    margin: 0 auto 5.5172413793%;
  }

  #artist-bank #lead-area em {
    font-weight: bold;
    font-style: normal;
    font-size: 4.6875vw;
    line-height: 1.4666666667;
  }

  #artist-bank .lead-text {
    margin: 0 0 4.1379310345% 0.3448275862%;
  }

  #artist-bank #artist-movie {
    margin-top: 11.5625%;
  }

  #artist-bank #artist-movie h1 {
    position: relative;
    margin: 0 0 3.1034482759%;
    color: #fff;
    font-weight: normal;
    font-size: 5.625vw;
  }

  #artist-bank #artist-movie h1:before {
    display: inline-block;
    content: "";
    margin-right: 3.1034482759%;
    width: 14.1379310345%;
    padding-top: 13.7931034483%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 63.6929460581%;
    background-size: 1397.56097561% 1305%;
    vertical-align: middle;
  }

  #artist-bank #artist-movie p {
    margin: 3.9655172414% 0 2.9310344828%;
  }

  #artist-bank #artist-movie .attention {
    margin: 0;
    font-size: 3.59375vw;
    line-height: 1.5217391304;
  }

  #artist-bank #youtube {
    position: relative;
    width: 100%;
    padding-top: 56.2068965517%;
  }

  #artist-bank #youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    vertical-align: top;
  }

  #artist-bank #menu {
    margin-top: 13.1034482759%;
  }

  #artist-bank #artist-list {
    overflow: hidden;
    margin-top: 7.2413793103%;
  }

  #artist-bank #artist-list ul {
    width: 100%;
    margin-bottom: -6.2068965517%;
  }

  #artist-bank #artist-list li {
    width: 100%;
    margin: 0 0 6.2068965517% 0;
  }

  #artist-bank #artist-list .image img {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 2.34375vw;
    border: #ffee00 solid 1.875vw;
  }

  #artist-bank #artist-list .name {
    display: block;
    margin-top: 2.7586206897%;
    font-size: 4.0625vw;
    line-height: 1.3076923077;
    text-align: center;
  }

  #artist-bank #artist-list .name:before {
    display: inline-block;
    margin: 0 1.724137931% 0 0;
    content: "";
    width: 0.4615384615em;
    height: 0.7692307692em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 75.1953125%;
    background-size: 9550% 5220%;
  }

  #artist-bank #artist-list .align-left {
    text-align: left;
  }

  #artist-bank #artist-list .hover {
    display: none;
  }

  #about-artist-bank-japan {
    position: relative;
    padding-top: 0.3125%;
  }

  #about-artist-bank-japan:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  .pagination {
    position: relative;
    text-align: center;
    margin: 6.5517241379% 0 13.7931034483%;
    padding-top: 5.8620689655%;
    background: url("/assets/img/bg_dot-separator03_sp.png") 0 0 repeat-x;
  }

  .pagination.top-pagination {
    margin: 7.2413793103% 0 -0.3448275862%;
    padding: 0 0 5.8620689655%;
    background: url("/assets/img/bg_dot-separator03_sp.png") 0 100% repeat-x;
  }

  .pagination.top-pagination .prev, .pagination.top-pagination .next {
    margin-top: 0;
  }

  .pagination .prev {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    width: 4.8275862069%;
    margin-top: 5.8620689655%;
    vertical-align: top;
  }

  .pagination .prev a {
    display: inline-block;
    margin-top: 25%;
    font-size: 0;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 81.5742397138% 27.7108433735%;
    width: 100%;
    background-size: 4092.85714286% 2175%;
    padding-top: 171.428571429%;
    text-indent: -9999px;
  }

  .pagination .next {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    width: 4.8275862069%;
    margin-top: 5.8620689655%;
    vertical-align: top;
  }

  .pagination .next a {
    display: inline-block;
    margin-top: 25%;
    font-size: 0;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 81.5742397138% 33.5341365462%;
    width: 100%;
    background-size: 4092.85714286% 2175%;
    padding-top: 171.428571429%;
    text-indent: -9999px;
  }

  .pagination ol {
    margin: 0 8.275862069%;
  }

  .pagination li {
    display: inline-block;
    margin-right: 2.8925619835%;
  }

  .pagination li:nth-last-child(1) {
    margin-right: 0;
  }

  .pagination li a {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    width: 1.875em;
    padding: 0.34375em 0;
    border: #f0375e solid 0.09375em;
    border-radius: 0.9375em;
    font-size: 5vw;
    line-height: 1;
    color: #f0375e;
    text-align: center;
    background: #fff;
  }

  .pagination .current a {
    color: #fff;
    background: #f0375e;
  }

  .pickup .header {
    margin-top: 13.1034482759%;
    margin-bottom: 3.9655172414%;
  }

  .pickup .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 13.1034482759%;
    margin-right: 2.7586206897%;
    padding: 2.4137931034% 5.1724137931%;
    color: #fff;
    font-weight: bold;
    font-size: 4.375vw;
    line-height: 1;
    text-align: center;
    border-radius: 1.25vw;
    background: #2266bb;
  }

  .pickup .number:before {
    position: absolute;
    top: -8.4375vw;
    left: 50%;
    display: inline-block;
    content: "";
    margin-left: -4.6875vw;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 97.9742173112% 85.3658536585%;
    width: 9.375%;
    background-size: 1910% 1740%;
    width: 2.1428571429em;
    height: 2.1428571429em;
  }

  .pickup .name {
    overflow: hidden;
    margin-bottom: 0.0555555556em;
    padding-top: 1.25vw;
    font-size: 5.625vw;
    line-height: 1.1111111111;
  }

  .pickup .title {
    font-size: 4.375vw;
  }

  .pickup .text p {
    margin-bottom: 5.6896551724%;
  }

  .pickup .text .simple-link {
    margin: 5.6896551724% 0;
  }

  .pickup .images {
    margin-bottom: 13.7931034483%;
  }

  #back-number .heading {
    margin: 5.1724137931% 5.5172413793% 0;
    color: #f0375e;
    font-weight: bold;
    font-size: 4.375vw;
    cursor: pointer;
    line-height: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }

  #back-number .heading:before {
    display: inline-block;
    content: "";
    margin: -1.1627906977% 1.9379844961% 0 0;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 80.9222423146% 57.96812749%;
    background-size: 2865% 2610%;
    width: 7.7519379845%;
    padding-top: 7.7519379845%;
    vertical-align: middle;
  }

  #back-number.open .heading:before {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 80.9222423146% 52.9880478088%;
    background-size: 2865% 2610%;
  }

  #back-number ol {
    margin: 2.0689655172% 0 -1.724137931%;
  }

  #menu .current #back-number li {
    margin: 0;
    font-size: 4.0625vw;
    line-height: 1.8461538462;
  }

  #menu .current #back-number a {
    position: relative;
    display: block;
    background: none;
    padding: 0 0 0 12.0689655172%;
    border: none;
    border-radius: 0;
    color: #00deff;
    background: transparent;
  }

  #menu .current #back-number a:before {
    position: absolute;
    left: 8.275862069%;
    display: inline-block;
    content: "";
    width: 2.0689655172%;
    padding-top: 3.4482758621%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 75.1953125%;
    background-size: 9550% 5220%;
  }
}
@media screen and (min-width: 768px) {
  #page-game-scenario #contents {
    padding-top: 325px;
    padding-bottom: 200px;
  }

  #page-game-scenario #contents p {
    font-size: 1.6em;
    line-height: 1.6875;
    max-height: 999999px;
  }

  #page-game-scenario.page-web #contents {
    padding-top: 322px;
  }

  #page-game-scenario #article-header {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #page-game-scenario #article-header .lead {
    margin-bottom: 10px;
    font-size: 2.1em;
    line-height: 1.2;
    max-height: 999999px;
  }

  #page-game-scenario #article-header .lead em {
    font-weight: bold;
    font-style: normal;
  }

  #page-game-scenario #article-header .description {
    margin-bottom: 34px;
  }

  #page-game-scenario section {
    margin-top: 45px;
  }

  #page-game-scenario .section-title-game {
    position: relative;
    margin: 0;
    color: #fff;
    font-size: 3.5em;
    line-height: 69px;
    max-height: 999999px;
  }

  #page-game-scenario .section-title-game:before {
    display: inline-block;
    content: "";
    margin-right: 18px;
    vertical-align: top;
    background-image: url(/assets/img/sprite.png);
    background-position: -420px -282px;
    width: 70px;
    height: 69px;
  }

  #page-game-scenario .section-title-game.section-title-game02:before {
    background-position: 0px -520px;
  }

  #page-game-scenario .text {
    font-size: 1.6em;
    max-height: 999999px;
  }

  #page-game-scenario .lead {
    margin: 14px 0 39px;
  }

  #scheme ol {
    counter-reset: flow1;
    margin: 0;
    padding: 0;
    list-style-type: none;
  }

  #scheme li {
    position: relative;
    margin-bottom: 35px;
    padding-left: 49px;
  }

  #scheme li .heading {
    margin-bottom: 13px;
    color: #ffee00;
    font-weight: bold;
    font-size: 2.4em;
    max-height: 999999px;
  }

  #scheme li .heading:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: -8px;
    left: 0;
    display: inline-block;
    counter-increment: flow1;
    content: counter(flow1);
    padding-top: 11px;
    font-size: 0.8em;
    line-height: 1;
    color: #a44d23;
    text-align: center;
    background-image: url(/assets/img/sprite.png);
    background-position: -282px -520px;
    width: 40px;
    height: 39px;
  }

  #scheme li .heading .small {
    margin-left: 1em;
    color: #fff;
    font-weight: normal;
    font-size: 0.58em;
  }

  .page-web #scheme li:nth-last-child(1) {
    margin-bottom: 40px;
  }

  #scheme li .text {
    line-height: 1.85;
  }

  #scheme li ol {
    counter-reset: flow2;
    margin-top: 35px;
    margin-bottom: 36px;
  }

  #scheme li li {
    margin-bottom: 24px;
    padding-left: 40px;
  }

  #scheme li li .heading {
    margin-bottom: 10px;
    font-size: 2em;
    color: #66ff00;
    max-height: 999999px;
  }

  #scheme li li .heading:before {
    position: absolute;
    top: -5px;
    left: 0;
    display: inline-block;
    counter-increment: flow2;
    content: counter(flow2);
    width: 30px;
    height: auto;
    min-height: 16px;
    padding: 6px 0 4px;
    border: #66ff00 solid 2px;
    border-radius: 15px;
    font-size: 0.8em;
    line-height: 1;
    color: #66ff00;
    text-align: center;
    background: #1a1a1a;
  }

  #scheme li li .heading span {
    margin-left: 0;
    font-size: 0.9em;
  }

  #scheme li li .text {
    line-height: 1.5;
  }

  #scheme .return-link {
    margin-top: 55px;
  }

  #case .lead {
    margin-bottom: 34px;
  }

  #case ul {
    padding: 0;
    list-style-type: none;
  }

  #case ul li {
    position: relative;
    margin-bottom: 36px;
    padding-left: 51px;
  }

  #case ul li.case-pc li {
    margin-bottom: 4px;
  }

  #case ul .heading {
    margin-bottom: 10px;
    font-size: 2em;
    color: #ffee00;
    max-height: 999999px;
  }

  #case ul .heading:before {
    position: absolute;
    content: "";
    top: -10px;
    left: 0;
    display: inline-block;
    background-image: url(/assets/img/sprite.png);
    background-position: -242px -520px;
    width: 40px;
    height: 39px;
  }

  #case ul .heading span {
    margin-left: 1em;
    font-size: 0.58em;
  }

  #case ul ul {
    margin-top: 0;
    max-height: 999999px;
  }

  #case ul ul li {
    margin: 0 0 0 1em;
    text-indent: -1em;
    padding-left: 0;
    font-size: 1.6em;
    line-height: 1.75;
    max-height: 999999px;
  }

  #case ul ul li:before {
    display: inline;
    content: "・";
  }

  /* scenario modal */
  .game-overlay {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.8;
    cursor: pointer;
    z-index: 1000;
  }

  .game-modal {
    display: none;
    position: absolute;
    top: 115px;
    left: 50%;
    width: 960px;
    margin: 0 0 0 -480px;
    z-index: 1000;
  }

  .game-modal-inner {
    width: 800px;
    margin: 0 auto;
  }

  .game-modal-main {
    position: relative;
  }

  .game-modal-main a {
    position: absolute;
    top: 280px;
    left: 509px;
    display: block;
    width: 173px;
    height: 51px;
  }

  .game-modal-inner-top {
    width: 800px;
    margin: 0 auto 50px auto;
  }

  .game-modal-inner-top .game-modal-main {
    position: relative;
  }

  .game-modal-inner-top .game-modal-main a {
    position: absolute;
    top: 357px;
    left: 343px;
    display: block;
    width: 202px;
    height: 61px;
  }

  .game-modal-inner-top .game-modal-main a.link-button-right {
    position: absolute;
    top: 355px;
    left: 574px;
    display: block;
    width: 204px;
    height: 63px;
  }

  .game-modal-close {
    position: absolute;
    top: -65px;
    right: 80px;
  }

  .game-modal-close a {
    display: block;
    width: 50px;
    height: 50px;
    text-indent: -9999px;
    background: url("/assets/img/scenario/game-modal-close.png") 0 0 no-repeat;
  }

  .game-modal-close a:hover {
    background: url("/assets/img/scenario/game-modal-close.png") -50px 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-game-scenario #page-title {
    margin-bottom: 5%;
  }

  #page-game-scenario #contents {
    padding-top: 51.5625%;
    padding-bottom: 53.125%;
  }

  #page-game-scenario #contents p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-game-scenario.page-web #contents {
    padding-bottom: 51.875%;
  }

  #page-game-scenario #article-header {
    position: relative;
    padding-top: 0.3448275862%;
  }

  #page-game-scenario #article-header:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-game-scenario #article-header .lead {
    margin: 0 0 4.1379310345%;
    font-size: 4.6875vw;
    line-height: 1.4666666667;
    max-height: 999999px;
  }

  #page-game-scenario #article-header .lead em {
    font-weight: bold;
    font-style: normal;
  }

  #page-game-scenario #article-header .description {
    margin-bottom: 8.9655172414%;
  }

  #page-game-scenario .section-title-game {
    position: relative;
    margin: 0;
    color: #fff;
    font-size: 7.8125vw;
    line-height: 2;
    max-height: 999999px;
  }

  #page-game-scenario .section-title-game:before {
    display: inline-block;
    content: "";
    margin-right: 18px;
    vertical-align: top;
    width: 17.5862068966%;
    padding-top: 17.2413793103%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 75% 56.3559322034%;
    background-size: 1123.52941176% 1044%;
  }

  #page-game-scenario .section-title-game.section-title-game02:before {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 31.0344827586% 80.0847457627%;
    background-size: 1123.52941176% 1044%;
  }

  #page-game-scenario .lead {
    margin: 4.1379310345% 0 6.5517241379%;
  }

  #scheme ol {
    counter-reset: flow1;
  }

  #scheme li {
    position: relative;
    margin-bottom: 7.9310344828%;
    padding-left: 13.1034482759%;
  }

  #scheme li .heading {
    margin-bottom: 0.6666666667em;
    color: #ffee00;
    font-weight: bold;
    font-size: 5.625vw;
    max-height: 999999px;
  }

  #scheme li .heading:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: -0.4444444444em;
    left: 0;
    display: inline-block;
    counter-increment: flow1;
    content: counter(flow1);
    padding-top: 0.6666666667em;
    font-size: 4.21875vw;
    line-height: 1;
    color: #a44d23;
    text-align: center;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 48.802946593% 76.8292682927%;
    width: 9.375%;
    background-size: 1910% 1740%;
    width: 2.2222222222em;
    height: 2.2222222222em;
  }

  #scheme li .heading .small {
    display: block;
    margin: 2.380952381% 0 -0.7936507937%;
    color: #fff;
    font-weight: normal;
    font-size: 3.59375vw;
    line-height: 1.347826087;
  }

  #scheme li .text {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  .page-web #scheme li:nth-last-child(1) {
    margin-bottom: 0;
  }

  #scheme li ol {
    counter-reset: flow2;
    margin-top: 6.3492063492%;
  }

  #scheme li li {
    margin-bottom: 5.5555555556%;
    padding-left: 11.9047619048%;
  }

  #scheme li li .heading {
    margin-bottom: 3.1531531532%;
    font-size: 4.6875vw;
    line-height: 1.3333333333;
    color: #66ff00;
    max-height: 999999px;
  }

  #scheme li li .heading:before {
    position: absolute;
    top: -5px;
    left: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    counter-increment: flow2;
    content: counter(flow2);
    width: 8.7301587302%;
    height: auto;
    padding: 1.5873015873% 0;
    border: #66ff00 solid 0.0833333333em;
    border-radius: 0.9166666667em;
    font-size: 3.75vw;
    line-height: 1;
    color: #66ff00;
    text-align: center;
    background: #1a1a1a;
  }

  #scheme li li .heading span {
    margin-left: 0;
    font-size: 4.21875vw;
    line-height: 1.4814814815;
  }

  #scheme .return-link {
    margin-top: 55px;
  }

  #case .lead {
    margin-bottom: 5.5172413793%;
  }

  #case ul li {
    position: relative;
    margin-bottom: 8.6206896552%;
    padding-left: 13.1034482759%;
  }

  #case ul .heading {
    margin-bottom: 2.7777777778%;
    font-weight: bold;
    font-size: 4.6875vw;
    line-height: 1.3333333333;
    color: #ffee00;
    max-height: 999999px;
  }

  #case ul .heading:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    display: inline-block;
    margin-top: -2.0689655172%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 64.2725598527% 45.1219512195%;
    width: 9.375%;
    background-size: 1910% 1740%;
    width: 10.3448275862%;
    padding-bottom: 10.3448275862%;
  }

  #case ul .heading span {
    margin-left: 1em;
    font-size: 4.21875vw;
    line-height: 1.4814814815;
  }

  #case ul ul {
    margin: 0;
  }

  #case ul ul li {
    margin: 0 0 2.380952381% 1em;
    text-indent: -1em;
    padding-left: 0;
    font-size: 4.0625vw;
    line-height: 1.3846153846;
    max-height: 999999px;
  }

  #case ul ul li:before {
    display: inline;
    content: "・";
  }

  /* scenario modal */
  .game-overlay {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.8;
    cursor: pointer;
    z-index: 1000;
  }

  .game-modal {
    display: none;
    position: absolute;
    top: 115px;
    left: 50%;
    width: 90.625%;
    margin-left: -45.3125%;
    z-index: 1000;
  }

  .game-modal-inner {
    margin: 0 auto;
  }

  .game-modal-main {
    position: relative;
  }

  .game-modal-main a {
    position: absolute;
    top: 0;
    left: 0;
    left: 63.75%;
    width: 21.625%;
    margin-top: 35%;
    display: block;
  }

  .game-modal-inner-top {
    margin: 0 auto 50px auto;
  }

  .game-modal-inner-top .game-modal-main {
    position: relative;
  }

  .game-modal-inner-top .game-modal-main a {
    position: absolute;
    top: 0;
    left: 0;
    left: 42.875%;
    margin-top: 44.625%;
    display: block;
    width: 25.25%;
  }

  .game-modal-inner-top .game-modal-main a.link-button-right {
    position: absolute;
    top: 0;
    left: 0;
    left: 71.75%;
    margin-top: 44.375%;
    display: block;
    width: 25.5%;
  }

  .game-modal-close {
    position: absolute;
    top: -65px;
    right: 0;
  }

  .game-modal-close a {
    display: block;
    width: 50px;
    height: 50px;
    text-indent: -9999px;
    background: url("/assets/img/scenario/game-modal-close.png") 0 0 no-repeat;
  }

  .game-modal-close a:hover {
    background: url("/assets/img/scenario/game-modal-close.png") -50px 0 no-repeat;
  }
}
@media screen and (min-width: 768px) {
  #page-works #contents {
    padding-top: 322px;
  }

  #page-works #works {
    padding-top: 1px;
    padding-bottom: 159px;
    background: url("/assets/img/bg_section-separator.png") repeat-x 0 0;
  }

  #page-works #works #page-title {
    margin-bottom: 34px;
  }

  #page-works #works p, #page-works #works .text {
    font-size: 1.6em;
    line-height: 1.6875;
    max-height: 999999px;
  }

  #page-works #works .description {
    margin-top: 14px;
  }

  #page-works #works ul {
    margin: 58px 0 0;
    padding: 0;
    list-style-type: none;
  }

  #page-works #works ul li {
    position: relative;
    margin-bottom: 36px;
    padding-left: 54px;
  }

  #page-works #works ul .heading {
    margin-bottom: 14px;
    font-size: 2.4em;
    color: #ffee00;
    max-height: 999999px;
  }

  #page-works #works ul .heading:before {
    position: absolute;
    content: "";
    top: -10px;
    left: 8px;
    display: inline-block;
    background-image: url(/assets/img/sprite.png);
    background-position: -56px -588px;
    width: 40px;
    height: 40px;
  }

  #page-works #works ul .heading span {
    margin-left: 1em;
    font-size: 0.58em;
  }

  #page-works #works ul ul {
    margin-top: 9px;
  }

  #page-works #works ul ul li {
    padding-left: 0;
  }

  #page-works #works ul ul li .simple-link {
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-works #works ul ul .heading {
    margin-bottom: 4px;
    font-size: 1.6em;
    line-height: 1.5;
  }

  #page-works #works ul ul .heading:before {
    position: static;
    top: 0;
    left: 0;
    display: inline;
    content: "●";
    width: auto;
    height: auto;
    margin-right: 0.5em;
    background: none;
  }

  #page-works #works ul ul .text {
    padding-left: 1.5em;
    font-size: 1.6em;
    line-height: 1.5;
  }
}
@media screen and (max-width: 767px) {
  #page-works #contents {
    padding-top: 50.9375%;
    padding-bottom: 45.9375%;
  }

  #page-works #works {
    position: relative;
    padding-top: 0.3448275862%;
  }

  #page-works #works:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-works #works #page-title {
    margin-bottom: 5.8620689655%;
  }

  #page-works #works .description {
    margin-bottom: 10.3448275862%;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-works #works ul li {
    position: relative;
    margin-bottom: 7.9310344828%;
    padding-left: 13.1034482759%;
  }

  #page-works #works ul .heading {
    color: #ffee00;
    max-height: 999999px;
  }

  #page-works #works ul .heading:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    display: inline-block;
    margin-top: -1.724137931%;
    padding-top: 10.3448275862%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 97.9742173112% 78.2520325203%;
    width: 10.3448275862%;
    background-size: 1910% 1740%;
  }

  #page-works #works ul .heading span {
    margin-left: 1em;
  }

  #page-works #works ul ul li {
    padding-left: 0;
  }

  #page-works #works ul ul li .simple-link a:before {
    margin-right: 1.9841269841%;
  }

  #page-works #works ul ul .heading:before {
    position: static;
    top: 0;
    left: 0;
    display: inline;
    content: "●";
    width: auto;
    height: auto;
    margin-right: 0.5em;
    background: none;
  }

  #page-works #works ul ul .text {
    padding-left: 1.5em;
  }
}
@media screen and (min-width: 768px) {
  #page-special #contents {
    padding-top: 314px;
    padding-bottom: 139px;
  }

  #page-special #contents p {
    margin-top: 0;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-special #contents .no-separator {
    padding-bottom: 0;
    background: none;
  }

  #page-special #special {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #page-special #special #page-title {
    margin-bottom: 0;
  }

  #page-special #special > section {
    padding-top: 60px;
    padding-bottom: 5px;
    background: url("/assets/img/bg_section-separator.png") 0 100% repeat-x;
  }

  #page-special .section-contents {
    padding-bottom: 61px;
  }

  #page-special .section-title-special {
    position: relative;
    margin: 0 0 20px;
    color: #fff;
    font-size: 3.5em;
    line-height: 69px;
    max-height: 999999px;
  }

  #page-special .section-title-special:before {
    display: inline-block;
    content: "";
    margin-right: 18px;
    vertical-align: top;
    background-image: url(/assets/img/sprite.png);
    background-position: -420px -282px;
    width: 70px;
    height: 69px;
  }

  #page-special .section-title-special.section-title-game02:before {
    background-position: 0px -520px;
  }

  #page-special .image {
    float: right;
    width: 200px;
  }

  #page-special .text {
    float: left;
    width: 670px;
    margin-right: 30px;
  }

  #page-special .text .more-link {
    margin-top: 25px;
  }

  #page-special #abweb {
    padding-top: 52px;
  }

  #page-special #abweb .image {
    margin-top: 55px;
  }

  #page-special #abar .image {
    margin-top: 19px;
  }

  #page-special #chalent .section-contents {
    padding-bottom: 58px;
  }

  #page-special #chalent .image {
    margin-top: 18px;
    width: 194px;
    padding-right: 2px;
  }

  #page-special #tsubuno .section-title-special:after {
    position: relative;
    display: inline-block;
    content: "";
    top: 2px;
    width: 30px;
    height: 30px;
    margin-left: 11px;
    background: url("/assets/img/special/ico_facebook.png") 0 0 no-repeat;
  }

  #page-special #tsubuno .image {
    margin-top: 22px;
  }

  #page-special #tsubuno .image .section-contents {
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  #page-special #contents {
    padding-top: 51.5625%;
    padding-bottom: 53.125%;
  }

  #page-special #contents p {
    margin-top: 0;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-special #contents .sp-attention {
    margin-top: 0.6153846154em;
  }

  #page-special #contents .no-separator {
    padding-bottom: 0;
  }

  #page-special #contents .no-separator:before {
    display: none;
  }

  #page-special #special {
    position: relative;
    padding-top: 0.3125%;
  }

  #page-special #special:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-special #special #page-title {
    margin-bottom: 0;
  }

  #page-special #special > section {
    position: relative;
    padding-top: 6.8965517241%;
    padding-bottom: 11.724137931%;
  }

  #page-special #special > section:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-special .section-title-special {
    position: relative;
    margin: 0 0 0.6222222222em;
    color: #fff;
    font-size: 7.03125vw;
    line-height: 1.3333333333;
    padding-left: 2.6222222222em;
  }

  #page-special .section-title-special:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    content: "";
    margin-top: -1.1333333333em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 75% 56.3559322034%;
    width: 15.9375%;
    background-size: 1123.52941176% 1044%;
    width: 2.2666666667em;
    padding-top: 2.2222222222em;
  }

  #page-special .image {
    margin: 5.5172413793% auto 6.8965517241%;
  }

  #page-special #chalent .image {
    width: 62.4137931034%;
    margin-bottom: 6.2068965517%;
  }

  #page-special #tsubuno .section-title-special:after {
    position: relative;
    display: inline-block;
    content: "";
    top: 0.0888888889em;
    margin-left: 0.3111111111em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 20.5776173285% 69.3836978131%;
    width: 5.9375%;
    background-size: 3015.78947368% 2747.36842105%;
    width: 0.8444444444em;
    height: 0.8444444444em;
  }

  #page-special #tsubuno .image {
    width: 72.4137931034%;
  }

  #page-special #tsubuno .image img {
    -webkit-border-radius: 3.125vw;
    -moz-border-radius: 3.125vw;
    border-radius: 3.125vw;
  }

  #page-special #abar .section-title-special {
    margin: 0 0 11.0344827586%;
  }

  #page-special #abar .image {
    width: 68.9655172414%;
    margin-bottom: 0;
  }

  #page-special #abweb {
    padding-bottom: 0;
  }

  #page-special #abweb .section-title-special {
    margin: 0 0 11.0344827586%;
  }

  #page-special #abweb .image {
    width: 65.8620689655%;
  }
}
@media screen and (min-width: 768px) {
  #page-news #contents {
    padding-top: 326px;
    padding-bottom: 200px;
  }

  #page-news #news {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #page-news #page-title {
    margin-bottom: -6px;
  }

  #page-news article {
    margin-top: 59px;
    padding-bottom: 34px;
    background: url("/assets/img/bg_section-separator.png") 0 100% repeat-x;
  }

  #page-news article .more-link {
    width: 630px;
    float: right;
    margin-top: 3px;
  }

  #page-news article .more-link + .more-link {
    margin-top: 17px;
  }

  #page-news .news-title {
    position: relative;
    margin: 22px 0 26px;
    padding: 0 0 0 72px;
    color: #fff;
    font-size: 3em;
    line-height: 1.2666666667;
    max-height: 999999px;
  }

  #page-news .news-title:before {
    display: inline-block;
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
    background-image: url(/assets/img/sprite.png);
    background-position: -70px -520px;
    width: 61px;
    height: 60px;
  }

  #page-news .news-title span {
    font-size: 0.7em;
  }

  #page-news .image {
    position: relative;
    overflow: hidden;
    float: left;
    width: 240px;
    height: 180px;
    margin-bottom: 30px;
    padding-right: 30px;
  }

  #page-news .image img {
    border-radius: 15px;
  }

  #page-news .text {
    float: right;
    width: 630px;
  }

  #page-news .text p {
    margin: -3px 0 24px;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-news .date {
    color: #66ff00;
    font-size: 2.2em;
    line-height: 1;
    max-height: 999999px;
  }

  #page-news .more-link {
    margin-top: 27px;
  }

  #page-news .ellipse-link {
    width: 13.8888888889em;
    margin: 60px auto 0;
    font-size: 1.8em;
    line-height: 1;
    text-align: center;
  }

  #page-news-past #contents {
    padding-top: 326px;
    padding-bottom: 200px;
  }

  #page-news-past #contents .lead {
    margin-bottom: 30px;
    font-size: 2em;
    line-height: 1.6;
    max-height: 999999px;
  }

  #page-news-past #news {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #page-news-past .youtube {
    display: inline;
  }

  #page-news-past article {
    margin-top: 70px;
    padding-bottom: 5px;
    background: url("/assets/img/bg_section-separator.png") 0 100% repeat-x;
  }

  #page-news-past article h2 {
    position: relative;
    margin: 22px 0 42px;
    padding: 0 0 0 72px;
    color: #fff;
    font-size: 3em;
    line-height: 1.2666666667;
    max-height: 999999px;
  }

  #page-news-past article h2:before {
    position: absolute;
    top: -4px;
    left: 0;
  }

  #page-news-past article h2 span {
    display: block;
    font-size: 0.6em;
    line-height: 1.2;
  }

  #page-news-past article h2 .time {
    display: inline;
    margin-left: 10px;
    font-size: 0.6em;
    line-height: 1.2;
  }

  #page-news-past article .news-title:before {
    display: inline-block;
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
    background-image: url(/assets/img/sprite.png);
    background-position: -131px -520px;
    width: 61px;
    height: 60px;
  }

  #page-news-past article .text h2 .time {
    display: inline;
    margin-bottom: 12px;
    font-size: 0.5em;
    margin-left: 5px;
  }

  #page-news-past article .image {
    display: inline;
    float: left;
    margin-bottom: 60px;
    padding-right: 30px;
  }

  #page-news-past article .image img {
    border-radius: 15px;
  }

  #page-news-past article .image .caption {
    font-size: 1.2em;
  }

  #page-news-past article .square-image img {
    border-radius: 0;
  }

  #page-news-past article .news-header p {
    margin: -3px 0 24px;
    font-size: 1.6em;
    line-height: 1.7;
    max-height: 999999px;
  }

  #page-news-past article .text {
    overflow: hidden;
    margin-bottom: 31px;
  }

  #page-news-past article .text .time {
    margin-bottom: 12px;
    font-size: 1.6em;
    line-height: 1.5;
    max-height: 999999px;
  }

  #page-news-past article .text .place {
    margin: 10px 0 21px;
    font-size: 1.6em;
    line-height: 1.5;
    max-height: 999999px;
  }

  #page-news-past article .text p {
    margin: -3px 0 24px;
    font-size: 1.6em;
    line-height: 1.6875;
    max-height: 999999px;
  }

  #page-news-past article .smalltextbottom {
    margin: 15px 0 0 0;
    font-size: 1.2em;
    width: 450px;
  }

  #page-news-past article .smalltextbottom2 {
    margin: 10px 0 36px 0;
    font-size: 1.2em;
    width: 450px;
  }

  #page-news-past article .date {
    color: #66ff00;
    font-size: 2.2em;
    line-height: 1;
    max-height: 999999px;
  }

  #page-news-past article section h2 {
    margin: -2px 0 10px;
    padding: 0;
    font-size: 2.4em;
  }

  #page-news-past article section .text {
    margin-bottom: 10px;
  }

  #page-news-past article section .image {
    margin-bottom: 36px;
  }

  #page-news-past article #konpedo .image {
    width: 450px;
  }

  #page-news-past article .image-wrapper div {
    float: left;
  }

  #page-news-past article .image-wrapper .caption {
    margin: 8px 0 0;
  }

  #page-news-past article .r13 img {
    border-radius: 13px;
  }

  #page-news-past article .w450 {
    width: 450px;
  }

  #page-news-past article .w215 {
    width: 215px;
  }

  #page-news-past article .mr20 {
    margin-right: 20px;
  }

  #page-news-past article .audio {
    margin-top: 17px;
  }

  #page-news-past article .audio .description {
    margin-top: 6px;
  }

  #page-news-past article .audio .small-credit {
    font-size: 0.857em;
  }

  #page-news-past .article-wrapper {
    padding-top: 36px;
    padding-bottom: 15px;
    background: url("/assets/img/bg_section-separator.png") 0 100% repeat-x;
  }

  #page-news-past .article-wrapper article {
    margin: 30px 0 37px;
    padding-bottom: 0;
    background: none;
  }

  #page-news-past .article-wrapper .news-contents {
    margin-bottom: 32px;
  }

  #page-news-past .article-wrapper .image {
    margin-bottom: 0;
  }

  #page-news-past .article-wrapper .text {
    margin-bottom: 0;
  }

  #page-news-past .article-wrapper .more-link {
    margin-bottom: 13px;
  }

  #page-news-past #art-report {
    padding-bottom: 5px;
    background: url("/assets/img/bg_section-separator.png") 0 100% repeat-x;
  }

  #page-news-past #art-report a {
    display: block;
    width: 700px;
    margin: 60px auto;
  }

  #page-news-past .more-link {
    text-align: left;
    margin-bottom: 7px;
  }

  #page-news-past .horizontal {
    margin-left: -5px;
  }

  #page-news-past .horizontal div {
    float: left;
    margin-left: 5px;
  }

  #page-news-past .vertical {
    margin-top: -5px;
  }

  #page-news-past .vertical div {
    margin-top: 5px;
  }

  #page-news-past .credit {
    margin: 8px 0 -6px;
    font-size: 1.2em;
    line-height: 1.6;
  }

  #page-news-past .small-credit {
    font-size: 1.1em;
  }

  #page-news-past iframe {
    vertical-align: top;
  }

  #page-news-past .ellipse-link {
    width: 13.8888888889em;
    margin: 60px auto 0;
    font-size: 1.8em;
    line-height: 1;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  #page-news #contents {
    padding-top: 57.9310344828%;
    padding-bottom: 58.6206896552%;
  }

  #page-news #news {
    position: relative;
    padding-top: 0.3448275862%;
  }

  #page-news #news:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-news #page-title {
    margin-bottom: -0.9375%;
  }

  #page-news article {
    position: relative;
    margin-top: 9.375%;
    padding-bottom: 10.625%;
  }

  #page-news article:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-news article .more-link {
    margin-top: 1.3333333333em;
    text-align: center;
    font-size: 4.6875vw;
    line-height: 1.2666666667;
  }

  #page-news article .more-link a {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0.4666666667em 1.7333333333em 0.4666666667em 3em;
    border: #00ddff solid 0.0666666667em;
    -webkit-border-radius: 1.1333333333em;
    -moz-border-radius: 1.1333333333em;
    border-radius: 1.1333333333em;
  }

  #page-news article .more-link a:before {
    top: 0;
    left: 1.7333333333em;
    margin-top: 0.6em;
    position: absolute;
  }

  #page-news .news-title {
    position: relative;
    display: table-cell;
    height: 2.6111111111em;
    padding-left: 2.6666666667em;
    color: #fff;
    font-size: 5.625vw;
    line-height: 1.3333333333;
    vertical-align: middle;
  }

  #page-news .news-title:before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    content: "";
    margin-top: 0.1666666667em;
    margin-right: 0.3888888889em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 63.6929460581%;
    background-size: 1397.56097561% 1305%;
    width: 2.2777777778em;
    padding-top: 2.2222222222em;
  }

  #page-news .image {
    position: relative;
  }

  #page-news .image img {
    -webkit-border-radius: 2.34375vw;
    -moz-border-radius: 2.34375vw;
    border-radius: 2.34375vw;
  }

  #page-news .text p {
    margin: 0.7692307692em 0 0.8461538462em;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-news .date {
    color: #66ff00;
    margin-bottom: 0.4em;
    font-size: 4.6875vw;
    line-height: 1.2666666667;
  }

  #page-news .more-link.ellipse-link {
    margin-top: 7.2413793103%;
  }

  #page-news .more-link.ellipse-link a {
    border: none;
    padding-bottom: 0;
  }

  #page-news-past #contents {
    padding-top: 57.9310344828%;
    padding-bottom: 58.6206896552%;
  }

  #page-news-past #contents .lead {
    margin-bottom: 0.8461538462em;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-news-past #news {
    position: relative;
    padding-top: 0.3448275862%;
  }

  #page-news-past #news:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-news-past #page-title {
    margin-bottom: -0.9375%;
  }

  #page-news-past article {
    position: relative;
    margin-top: 8.4375%;
    padding-bottom: 10.625%;
  }

  #page-news-past article:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-news-past article h2 span {
    display: block;
    font-size: 3.125vw;
    line-height: 1.4;
  }

  #page-news-past article h2 .time {
    display: inline;
    margin-left: 0.5em;
    font-size: 3.125vw;
    line-height: 1.4;
  }

  #page-news-past article .more-link {
    margin-top: 1.3333333333em;
    text-align: center;
    font-size: 4.6875vw;
    line-height: 1.2666666667;
  }

  #page-news-past article .more-link a {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0.4666666667em 1.7333333333em 0.4666666667em 3em;
    border: #00ddff solid 0.0666666667em;
    -webkit-border-radius: 1.1333333333em;
    -moz-border-radius: 1.1333333333em;
    border-radius: 1.1333333333em;
  }

  #page-news-past article .more-link a:before {
    top: 0;
    left: 1.7333333333em;
    margin-top: 0.6em;
    position: absolute;
  }

  #page-news-past article p {
    margin: 0.7692307692em 0 0.8461538462em;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-news-past .news-title {
    position: relative;
    display: table-cell;
    height: 2.6111111111em;
    padding-left: 2.6666666667em;
    color: #fff;
    font-size: 5.625vw;
    line-height: 1.3333333333;
    vertical-align: middle;
  }

  #page-news-past .news-title:before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    content: "";
    margin-top: 0.1666666667em;
    margin-right: 0.4444444444em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 54.356846473%;
    background-size: 1397.56097561% 1305%;
    width: 2.2777777778em;
    padding-top: 2.2222222222em;
  }

  #page-news-past .text {
    margin-top: 3.4482758621%;
  }

  #page-news-past .text h2 .time {
    display: inline;
    margin-bottom: 0.4545454545em;
    margin-left: 0.4545454545em;
    font-size: 3.4375vw;
  }

  #page-news-past .text .time {
    margin-bottom: 0.3846153846em;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-news-past .text .place {
    margin: 0.3846153846em 0 0.7692307692em;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-news-past .image img {
    -webkit-border-radius: 2.34375vw;
    -moz-border-radius: 2.34375vw;
    border-radius: 2.34375vw;
  }

  #page-news-past .image .caption {
    font-size: 3.125vw;
    line-height: 1.3;
  }

  #page-news-past .square-image img {
    border-radius: 0;
  }

  #page-news-past .smalltextbottom {
    margin: 1em 0 0 0;
    font-size: 3.125vw;
    line-height: 1.3;
  }

  #page-news-past .smalltextbottom2 {
    margin: 0.5em 0 0;
    font-size: 3.125vw;
    line-height: 1.3;
  }

  #page-news-past .date {
    color: #66ff00;
    margin-bottom: 0.4em;
    font-size: 4.6875vw;
    line-height: 1.2666666667;
  }

  #page-news-past #happy-valentines-day, #page-news-past #happy-white-day, #page-news-past #konpedo {
    margin-top: 5.1724137931%;
  }

  #page-news-past section h2 {
    margin: -0.1333333333em 0 0.3333333333em;
    padding: 0;
    font-size: 4.6875vw;
  }

  #page-news-past .image-wrapper div {
    margin-bottom: 5.1724137931%;
  }

  #page-news-past .image-wrapper .caption {
    margin: 0.5em 0 0;
  }

  #page-news-past .r13 img {
    -webkit-border-radius: 2.03125vw;
    -moz-border-radius: 2.03125vw;
    border-radius: 2.03125vw;
  }

  #page-news-past .audio {
    margin-top: 3.4482758621%;
  }

  #page-news-past .audio .heading {
    font-size: 3.125vw;
  }

  #page-news-past .audio .description {
    margin-top: 1.0344827586%;
  }

  #page-news-past .audio .small-credit {
    font-size: 3.125vw;
  }

  #page-news-past .article-wrapper {
    position: relative;
    padding-top: 6.2068965517%;
    padding-bottom: 3.4482758621%;
  }

  #page-news-past .article-wrapper:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-news-past .article-wrapper article {
    margin: 6.2068965517% 0 6.8965517241%;
    padding-bottom: 0;
  }

  #page-news-past .article-wrapper article:before {
    display: none;
  }

  #page-news-past .article-wrapper .news-contents {
    margin-bottom: 5.5172413793%;
  }

  #page-news-past .article-wrapper .image {
    margin-bottom: 0;
  }

  #page-news-past .article-wrapper .text {
    margin-bottom: 0;
  }

  #page-news-past #art-report {
    position: relative;
    padding: 9.375% 4.6875% 10.625%;
  }

  #page-news-past #art-report:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-news-past .horizontal {
    overflow: hidden;
  }

  #page-news-past .horizontal div {
    float: left;
    width: 48%;
  }

  #page-news-past .horizontal div:nth-child(1) {
    margin-right: 4%;
  }

  #page-news-past .vertical div {
    margin-bottom: 5.1724137931%;
  }

  #page-news-past .credit {
    margin: 0.5em 0 -0.2em;
    font-size: 3.125vw;
    line-height: 1.6;
  }

  #page-news-past .small-credit {
    font-size: 3.4375vw;
    line-height: 1.2727272727;
  }

  #page-news-past iframe {
    vertical-align: top;
  }

  #page-news-past .more-link.ellipse-link {
    margin-top: 7.2413793103%;
    text-align: center;
  }

  #page-news-past .more-link.ellipse-link a {
    border: none;
    padding-bottom: 0;
  }
}
@media screen and (min-width: 768px) {
  #page-contact #contents {
    padding-top: 314px;
    padding-bottom: 200px;
  }

  #page-contact #contact {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
    margin-bottom: 237px;
  }

  #page-contact .phone-number, #page-contact .email-address {
    font-size: 3.5em;
    color: #fff;
  }

  #page-contact .phone-number a, #page-contact .email-address a {
    display: inline-block;
    color: #fff;
  }

  #page-contact .phone-number a:hover, #page-contact .email-address a:hover {
    color: #00deff;
  }

  #page-contact .section-contents p {
    margin-bottom: 45px;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-contact #tel {
    float: left;
    width: 420px;
    margin-right: 60px;
    text-align: center;
  }

  #page-contact #tel img {
    margin-bottom: 18px;
  }

  #page-contact #mail {
    float: left;
    width: 420px;
    padding-top: 5px;
    text-align: center;
  }

  #page-contact #mail img {
    margin-bottom: 23px;
  }

  #page-contact #access {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #page-contact #access p {
    margin: 13px 0 19px;
  }
}
@media screen and (max-width: 767px) {
  #page-contact #contents {
    padding-top: 57.8125%;
    padding-bottom: 53.125%;
  }

  #page-contact #contact {
    position: relative;
    padding-top: 1px;
    margin-bottom: 46.5625%;
  }

  #page-contact #contact:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-contact .section-title {
    margin-bottom: 5.3125%;
  }

  #page-contact .phone-number, #page-contact .email-address {
    font-size: 6.875vw;
    line-height: 1;
    color: #fff;
  }

  #page-contact .phone-number a, #page-contact .email-address a {
    display: inline-block;
    color: #fff;
  }

  #page-contact .phone-number a:hover, #page-contact .email-address a:hover {
    color: #00deff;
  }

  #page-contact .section-contents p {
    margin-bottom: 2em;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-contact #tel {
    text-align: center;
  }

  #page-contact #tel img {
    width: 16.5517241379%;
    margin: 0 auto 5.1724137931%;
  }

  #page-contact #mail {
    margin-top: 13.7931034483%;
    text-align: center;
  }

  #page-contact #mail img {
    width: 22.4137931034%;
    margin-bottom: 5.1724137931%;
  }

  #page-contact #access {
    position: relative;
    padding-top: 0.3448275862%;
    padding-bottom: 0;
  }

  #page-contact #access:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-contact #access p {
    margin: 0 0 0.6153846154em;
  }

  #page-contact #access #map-area {
    margin-top: 3.7931034483%;
  }

  #page-contact .simple-link {
    margin-top: 3.4482758621%;
  }
}
@media screen and (min-width: 768px) {
  .page-otanoshimi #contents {
    padding-top: 302px;
  }

  .page-otanoshimi #page-title {
    margin-bottom: 0;
  }

  .page-otanoshimi #article-header {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  .page-otanoshimi #article-header .lead {
    margin: 33px 0 55px;
    font-size: 1.6em;
    line-height: 1.75;
  }

  .page-otanoshimi #article-contents {
    overflow: hidden;
    padding-bottom: 140px;
  }

  #page-serialization #contents {
    padding-top: 306px;
  }
}
@media screen and (max-width: 767px) {
  .page-otanoshimi #sub-nav #joy-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 19.66873706% 34.2569269521%;
    width: 28.125%;
    background-size: 636.666666667% 417.6%;
  }

  .page-otanoshimi #contents {
    padding-top: 49.375%;
    padding-bottom: 40.3125%;
  }

  .page-otanoshimi #page-title {
    margin-bottom: 5.3125%;
  }

  .page-otanoshimi #article-header {
    position: relative;
    padding-top: 0.3125%;
  }

  .page-otanoshimi #article-header:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  .page-otanoshimi #article-header .lead {
    margin: 0 0 2em;
  }

  .page-otanoshimi #article-contents {
    overflow: hidden;
  }

  .page-otanoshimi p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-serialization #sub-nav #serialization-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }

  #page-serialization #sub-nav #joy-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 34.2569269521%;
    width: 28.125%;
    background-size: 636.666666667% 417.6%;
  }

  #page-serialization #contents {
    padding-top: 50.9375%;
  }
}
@media screen and (min-width: 768px) {
  #page-tsunagalink #contents {
    padding-top: 319px;
    padding-bottom: 221px;
  }

  #page-tsunagalink #article-tsunagalink article {
    padding-bottom: 5px;
    background: url("/assets/img/bg_section-separator.png") 0 100% repeat-x;
  }

  #page-tsunagalink #article-tsunagalink #m2 {
    padding-bottom: 50px;
  }

  #page-tsunagalink #article-tsunagalink #danjiribayashi {
    padding-bottom: 62px;
  }

  #page-tsunagalink #article-tsunagalink #sasakiseika {
    padding-bottom: 66px;
  }

  #page-tsunagalink #article-tsunagalink #cervenka {
    padding-bottom: 66px;
  }

  #page-tsunagalink #article-tsunagalink #begista {
    padding-bottom: 0;
    background: none;
  }

  #page-tsunagalink #article-header {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #page-tsunagalink #article-header .lead {
    margin: 1em 0 14px;
  }

  #page-tsunagalink #page-title {
    margin-bottom: 6px;
  }

  #page-tsunagalink .article-title {
    position: relative;
    min-height: 57px;
    margin: 59px 0 3px;
    padding: 0 0 0 83px;
    color: #fff;
    font-size: 3.5em;
    line-height: 1.2;
  }

  #page-tsunagalink .article-title:before {
    position: absolute;
    top: -13px;
    left: 0;
    display: block;
    content: "";
    background-image: url(/assets/img/sprite.png);
    background-position: -420px -282px;
    width: 70px;
    height: 69px;
  }

  #page-tsunagalink .lead, #page-tsunagalink .text p {
    margin: 1em 0;
    font-size: 1.6em;
    line-height: 1.6875;
    max-height: 999999px;
  }

  #page-tsunagalink .text {
    float: left;
    width: 630px;
    margin-right: 30px;
  }

  #page-tsunagalink .text .simple-link {
    line-height: 1.7333333333;
  }

  #page-tsunagalink .image {
    float: left;
    width: 240px;
  }

  #page-tsunagalink #danjiribayashi .image02 img {
    background: #fff;
  }

  #page-tsunagalink .image div {
    margin-top: 20px;
    text-align: center;
  }

  #page-tsunagalink dl {
    margin: 22px 0 0;
    font-size: 1.6em;
  }

  #page-tsunagalink dt {
    clear: left;
    float: left;
    color: #66ff00;
    margin-bottom: 10px;
    line-height: 1.3125;
  }

  #page-tsunagalink dd {
    float: left;
    margin: 0;
    margin-bottom: 10px;
    line-height: 1.3125;
  }

  #page-tsunagalink #m2 dt {
    width: 104px;
  }

  #page-tsunagalink #m2 dd {
    width: 526px;
  }

  #page-tsunagalink #danjiribayashi dt {
    width: 124px;
  }

  #page-tsunagalink #danjiribayashi dd {
    width: 506px;
  }
}
@media screen and (max-width: 767px) {
  #page-tsunagalink #sub-nav #tsunagalink-link {
    margin-top: 33.4375%;
  }

  #page-tsunagalink #sub-nav #tsunagalink-link a {
    left: 27.5%;
    padding-top: 41.5625%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 79.5918367347% 0%;
    width: 25.9375%;
    background-size: 690.361445783% 392.481203008%;
  }

  #page-tsunagalink #contents {
    padding-top: 53.125%;
    padding-bottom: 53.125%;
  }

  #page-tsunagalink #article-tsunagalink article {
    position: relative;
    margin-top: 7.8125%;
    padding-bottom: 10.625%;
  }

  #page-tsunagalink #article-tsunagalink article:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-tsunagalink #article-tsunagalink #begista {
    padding-bottom: 0;
  }

  #page-tsunagalink #article-tsunagalink #begista:before {
    display: none;
  }

  #page-tsunagalink #article-header {
    position: relative;
    padding-top: 0.3448275862%;
  }

  #page-tsunagalink #article-header:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 0.9375%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-tsunagalink #article-header .lead {
    margin: 0 0 -0.3076923077em;
  }

  #page-tsunagalink #page-title {
    margin-top: -6.8965517241%;
    margin-bottom: 5.8620689655%;
  }

  #page-tsunagalink .article-title {
    position: relative;
    display: table-cell;
    height: 2.6666666667em;
    padding-left: 2.6222222222em;
    color: #fff;
    font-size: 7.03125vw;
    line-height: 1.3333333333;
    vertical-align: middle;
  }

  #page-tsunagalink .article-title:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    content: "";
    margin-top: -1.1333333333em;
    margin-right: 2.7586206897%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 75% 56.3559322034%;
    background-size: 1123.52941176% 1044%;
    width: 2.2666666667em;
    padding-top: 2.2222222222em;
  }

  #page-tsunagalink .lead, #page-tsunagalink .text p {
    margin: 0.4615384615em 0 0.9230769231em;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-tsunagalink .text {
    margin-bottom: 6.8965517241%;
  }

  #page-tsunagalink .simple-link {
    margin-bottom: 3.4482758621%;
    line-height: 1;
  }

  #page-tsunagalink #sasakiseika .image02 {
    width: 58.9655172414%;
    margin-right: auto;
    margin-left: auto;
  }

  #page-tsunagalink #danjiribayashi .image02 img {
    background: #fff;
  }

  #page-tsunagalink #cervenka .image {
    width: 86.2068965517%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 0;
  }

  #page-tsunagalink #cervenka .image .image {
    width: 100%;
  }

  #page-tsunagalink .image {
    margin-bottom: -8.6206896552%;
  }

  #page-tsunagalink .image div {
    margin-bottom: 8.6206896552%;
    text-align: center;
  }

  #page-tsunagalink dl {
    margin: 1em 0 0;
    font-size: 4.0625vw;
  }

  #page-tsunagalink dl:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-tsunagalink dt {
    clear: left;
    float: left;
    color: #66ff00;
    margin-bottom: 0.6153846154em;
    line-height: 1.4615384615;
  }

  #page-tsunagalink dd {
    float: left;
    margin-bottom: 0.6153846154em;
    line-height: 1.4615384615;
  }

  #page-tsunagalink #m2 dt {
    width: 6.7692307692em;
  }

  #page-tsunagalink #m2 dd {
    width: 15.5384615385em;
  }

  #page-tsunagalink #danjiribayashi dt {
    width: 7.4615384615em;
    margin-bottom: 0.6923076923em;
  }

  #page-tsunagalink #danjiribayashi dd {
    width: 14.8461538462em;
    margin-bottom: 0.6923076923em;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }

  #page-tsunagalink #danjiribayashi audio {
    width: 100%;
  }

  #page-tsunagalink .rounded-image img {
    -webkit-border-radius: 3.125vw;
    -moz-border-radius: 3.125vw;
    border-radius: 3.125vw;
  }
}
@media screen and (min-width: 768px) {
  #page-chalent #contents {
    padding-top: 214px;
    padding-bottom: 200px;
  }

  #page-chalent #contents .inner {
    width: 900px;
  }

  #page-chalent .contents-header {
    float: left;
    width: 700px;
    margin-right: 25px;
    margin-bottom: 52px;
  }

  #page-chalent #page-title-chalent {
    position: relative;
    margin: 0;
    padding: 16px 0 25px 306px;
    font-size: 2.7em;
    line-height: 1;
  }

  #page-chalent #page-title-chalent img {
    position: absolute;
    top: 0;
    left: -2px;
    width: 290px;
    height: 68px;
  }

  #page-chalent .lead {
    margin: 27px 0 0;
  }

  #page-chalent .lead dt {
    font-weight: bold;
  }

  #page-chalent .lead dd {
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-chalent .lead .more-link {
    margin-top: 24px;
    font-size: 1.125em;
    text-align: left;
  }

  #page-chalent .return-link {
    margin-top: 50px;
  }

  .feature-chalent {
    float: left;
    width: 175px;
  }

  .feature-chalent .image {
    padding-top: 27px;
    margin-bottom: 9px;
  }

  .feature-chalent .text {
    text-align: center;
  }

  .feature-chalent .text .name {
    margin-bottom: 4px;
    font-size: 1.2em;
    text-align: center;
  }

  .feature-chalent .text .description {
    width: 185px;
    font-size: 1em;
    line-height: 1.5;
  }

  #chalent-list {
    overflow: hidden;
    clear: both;
    padding: 40px 0 0;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    background: #fff;
  }

  #chalent-list ul {
    width: 856px;
    margin: 0 0 0 36px;
    padding: 0;
    list-style-type: none;
  }

  #chalent-list li {
    float: left;
    width: 188px;
    height: 428px;
    margin-right: 26px;
  }

  #chalent-list .image {
    margin-bottom: 10px;
  }

  #chalent-list .name {
    margin-bottom: 4px;
    font-weight: bold;
    font-size: 1.3em;
    text-align: center;
  }

  #chalent-list .description {
    font-size: 1.1em;
    line-height: 1.3636363636;
  }

  #amagurimukio .image {
    margin-left: 2px;
  }

  #amagurimukio .text {
    color: #9d0c85;
  }

  #hottori-san .image {
    margin-top: 31px;
    margin-left: 7px;
  }

  #hottori-san .text {
    color: #e67b00;
  }

  #fighting-baby .image {
    margin-top: 64px;
    margin-left: 15px;
  }

  #fighting-baby .text {
    color: #00a0e9;
    margin-left: -1px;
  }

  #hekohekoshirou .image {
    margin-top: 2px;
    margin-left: 19px;
  }

  #hekohekoshirou .text {
    color: #8d9d00;
  }

  #komatta-chan-buta-chan .image {
    margin-left: 6px;
  }

  #komatta-chan-buta-chan .text {
    color: #ec6690;
  }

  #komatta-chan-buta-chan .text01 {
    margin-bottom: 5px;
  }

  #slacky .image {
    margin-top: 2px;
    margin-left: 20px;
  }

  #slacky .text {
    color: #708ad1;
  }

  #mokkomoko .image {
    margin-top: 19px;
    margin-left: 18px;
  }

  #mokkomoko .text {
    color: #14a83b;
    margin-left: -1px;
  }

  #ecokobee .image {
    margin-top: 19px;
    margin-left: 12px;
  }

  #ecokobee .text {
    color: #cc9e00;
  }
}
@media screen and (max-width: 767px) {
  #page-chalent #contents {
    padding-top: 30.625%;
    padding-bottom: 40.625%;
  }

  #page-chalent .contents-header {
    margin-bottom: 6.5517241379%;
  }

  #page-chalent #page-title-chalent {
    position: relative;
    margin: 0;
    color: #f0375e;
    font-size: 5.625vw;
    line-height: 1;
  }

  #page-chalent #page-title-chalent img {
    display: block;
    width: 86.8965517241%;
    margin-bottom: 3.7931034483%;
    margin-left: -0.3448275862%;
  }

  #page-chalent .lead {
    margin: 5.8620689655% 0 0;
  }

  #page-chalent .lead dt {
    font-weight: bold;
  }

  #page-chalent .lead dd {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-chalent .lead .more-link {
    margin-top: 4.3103448276%;
    font-size: 4.0625vw;
    line-height: 1.1538461539;
    text-align: left;
  }

  #page-chalent .lead .more-link a:before {
    display: inline-block;
    content: "";
    margin: 0 0.3076923077em 0 0;
    vertical-align: top;
    width: 1.1538461539em;
    height: 1.1538461539em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 81.7204301075% 43.7869822485%;
    background-size: 3820% 3480%;
  }

  #page-chalent .return-link {
    margin-top: 1.9230769231em;
  }

  .feature-chalent .image {
    width: 43.4482758621%;
    margin: 0 0 0 23.7931034483%;
  }

  .feature-chalent .text {
    margin-bottom: 6.2068965517%;
    text-align: center;
  }

  .feature-chalent .text .name {
    margin: 1.724137931% 0 1.3793103448%;
    font-size: 3.59375vw;
    line-height: 1;
  }

  .feature-chalent .text .description {
    font-size: 3.28125vw;
    line-height: 1.2857142857;
  }

  #chalent-list {
    padding: 10% 0 7.9310344828%;
    -webkit-border-radius: 2.34375vw;
    -moz-border-radius: 2.34375vw;
    border-radius: 2.34375vw;
    background: #fff;
  }

  #chalent-list .image {
    margin-top: 6.2068965517%;
    margin-bottom: 3.1034482759%;
  }

  #chalent-list .name {
    margin-bottom: 1.3793103448%;
    font-size: 4.0625vw;
    line-height: 1;
    text-align: center;
  }

  #chalent-list .description {
    width: 86.2068965517%;
    margin: 0 auto;
    font-size: 3.4375vw;
    line-height: 1.3636363636;
  }

  #amagurimukio .image {
    width: 53.1034482759%;
    margin-left: 22.0689655172%;
  }

  #amagurimukio .text {
    color: #9d0c85;
  }

  #hottori-san .image {
    width: 46.5517241379%;
    margin-left: 26.8965517241%;
  }

  #hottori-san .text {
    color: #e67b00;
  }

  #fighting-baby .image {
    width: 44.1379310345%;
    margin-left: 28.275862069%;
  }

  #fighting-baby .text {
    color: #00a0e9;
    margin-left: -1px;
  }

  #hekohekoshirou .image {
    width: 45.1724137931%;
    margin-left: 27.5862068966%;
  }

  #hekohekoshirou .text {
    color: #8d9d00;
  }

  #komatta-chan-buta-chan .image {
    width: 51.724137931%;
    margin-left: 21.724137931%;
  }

  #komatta-chan-buta-chan .text {
    color: #ec6690;
  }

  #komatta-chan-buta-chan .text01 {
    margin-bottom: 2.4137931034%;
  }

  #slacky .image {
    width: 42.7586206897%;
    margin-left: 28.9655172414%;
  }

  #slacky .text {
    color: #708ad1;
  }

  #mokkomoko .image {
    width: 50.3448275862%;
    margin-left: 28.9655172414%;
  }

  #mokkomoko .text {
    color: #14a83b;
  }

  #ecokobee .image {
    width: 45.1724137931%;
    margin-left: 27.5862068966%;
  }

  #ecokobee .text {
    color: #cc9e00;
  }
}
@media screen and (min-width: 768px) {
  #page-abar {
    counter-reset: step;
  }

  #page-abar #contents {
    padding-top: 216px;
    padding-bottom: 200px;
  }

  #page-abar article .inner {
    width: 960px;
  }

  #page-abar .contents-header {
    padding: 0;
  }

  #page-abar .contents-header .text {
    float: right;
    width: 550px;
    padding-top: 122px;
  }

  #page-abar .contents-header #abar-logo {
    float: right;
    width: 300px;
    margin-right: 30px;
    margin-left: -10px;
  }

  #page-abar .contents-header h2 {
    margin: 0;
    font-size: 3em;
    color: #f0375e;
  }

  #page-abar .contents-header p {
    margin: 14px 0 0;
    font-size: 1.6em;
    line-height: 1.6875;
    max-height: 999999px;
  }

  #page-abar .section-title-abar {
    position: relative;
    padding-left: 81px;
    margin-bottom: 37px;
    padding-bottom: 16px;
    color: #fff;
    font-size: 3.5em;
    line-height: 69px;
    text-transform: uppercase;
    background: url("/assets/img/bg_dot-separator02.png") 0 100% repeat-x;
    max-height: 999999px;
  }

  #page-abar .section-title-abar:before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    content: "";
    background-image: url(/assets/img/sprite.png);
    background-position: -420px -282px;
    width: 70px;
    height: 69px;
  }

  #page-abar .howto {
    width: 840px;
    margin: 39px auto 11px;
  }

  #page-abar .howto .image {
    float: right;
    margin-left: 30px;
  }

  #page-abar .howto ol {
    margin: 0 0 0 10px;
    padding: 0;
    list-style-type: none;
  }

  #page-abar .howto li {
    position: relative;
    padding: 0 0 17px 52px;
  }

  #page-abar .howto .heading {
    margin-bottom: 9px;
    color: #ffee00;
    font-weight: bold;
    font-size: 2.4em;
    max-height: 999999px;
  }

  #page-abar .howto .heading:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: -8px;
    left: 0;
    display: inline-block;
    counter-increment: step;
    content: counter(step);
    padding-top: 11px;
    font-size: 0.8em;
    line-height: 1;
    color: #a44d23;
    text-align: center;
    background-image: url(/assets/img/sprite.png);
    background-position: -282px -520px;
    width: 40px;
    height: 39px;
  }

  #page-abar .howto p {
    margin: 0 0 1em;
    font-size: 1.6em;
    line-height: 1.6875;
    max-height: 999999px;
  }

  #page-abar .howto .strong {
    font-weight: bold;
  }

  #page-abar #button {
    width: 384px;
    margin: 0 auto 60px;
  }

  #page-abar #button a:hover {
    opacity: 0.8;
  }

  #page-abar #marker {
    text-align: center;
  }

  #page-abar #marker p {
    margin: 19px 0;
    font-size: 1.4em;
    line-height: 1;
    max-height: 999999px;
  }

  #page-abar #operating-environment {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 820px;
    margin: 60px auto 20px;
    padding: 20px 20px 16px;
    border: #999999 solid 1px;
    font-size: 1.2em;
    max-height: 999999px;
  }

  #page-abar #operating-environment dt {
    margin: 0 0 10px;
    font-weight: bold;
    line-height: 1;
  }

  #page-abar #operating-environment dd {
    margin: 0;
    line-height: 1.7;
  }

  #page-abar #rights {
    margin-bottom: 61px;
    font-size: 1.3em;
    line-height: 1;
    text-align: center;
    max-height: 999999px;
  }

  #page-abar #rights dt {
    display: inline;
  }

  #page-abar #rights dd {
    display: inline;
    margin: 0;
    font-weight: bold;
  }

  #page-abar #rights .return-link {
    margin-top: 61px;
  }
}
@media screen and (min-width: 768px) {
  #page-cervenka #contents {
    padding-top: 214px;
    padding-bottom: 200px;
  }

  #page-cervenka #contents .inner {
    width: 840px;
  }

  #page-cervenka #page-title-cervenka {
    margin: 0;
    padding: 10px 0 0;
    font-size: 2.7em;
    line-height: 1;
  }

  #page-cervenka #page-title-cervenka img {
    width: 180px;
    margin-top: -10px;
    margin-right: 17px;
    vertical-align: middle;
  }

  #page-cervenka .lead {
    margin: 27px 0 0;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-cervenka .more-link {
    margin: 25px 0 0;
    text-align: left;
    font-size: 1.8em;
  }

  #page-cervenka #cervenka-movie {
    margin: 0;
    padding: 40px 0 0;
    text-align: center;
  }

  #page-cervenka #cervenka-movie p {
    margin: 1em 0;
    font-size: 1.2em;
    line-height: 1.6;
  }

  #page-cervenka .return-link {
    margin-top: 46px;
  }
}
@media screen and (max-width: 767px) {
  #page-cervenka #contents {
    padding-top: 30.625%;
    padding-bottom: 53.125%;
  }

  #page-cervenka #page-title-cervenka {
    font-size: 5.625vw;
    line-height: 1;
  }

  #page-cervenka #page-title-cervenka img {
    display: block;
    width: 68.9655172414%;
    margin-bottom: 3.7931034483%;
  }

  #page-cervenka .lead {
    margin: 5.8620689655% 0 0;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-cervenka .more-link {
    margin-top: 4.3103448276%;
    font-size: 4.0625vw;
    line-height: 1.1538461539;
    text-align: left;
  }

  #page-cervenka .more-link a:before {
    display: inline-block;
    content: "";
    margin: 0 0.3076923077em 0 0;
    vertical-align: top;
    width: 1.1538461539em;
    height: 1.1538461539em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 81.7204301075% 43.7869822485%;
    background-size: 3820% 3480%;
  }

  #page-cervenka #cervenka-movie {
    margin-top: 6.8965517241%;
    text-align: center;
  }

  #page-cervenka #cervenka-movie p {
    margin: 1em 0;
    font-size: 3.125vw;
    line-height: 1.2;
  }

  #page-cervenka .return-link {
    margin-top: 46px;
  }
}
@media screen and (min-width: 768px) {
  #page-dokoikun #sub-nav #joy-link a {
    background-position: -335px -156px;
  }

  #page-dokoikun #sub-nav #joy-link a:hover {
    background-position: -501px 0px;
  }

  #page-dokoikun .mb10 {
    margin-bottom: 40px;
  }

  #page-dokoikun .mb40 {
    margin-bottom: 40px;
  }

  #page-dokoikun #contents {
    padding-top: 216px;
    padding-bottom: 203px;
  }

  #page-dokoikun #contents .inner {
    overflow: hidden;
  }

  #page-dokoikun #article-header {
    padding-bottom: 35px;
    background: url("/assets/img/bg_section-separator.png") 0 100% repeat-x;
  }

  #page-dokoikun #article-header .lead-text {
    margin: 21px 0 34px;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-dokoikun #article-header .lead-text ruby {
    ruby-position: before;
    ruby-align: center;
    margin: 0;
    padding: 0;
  }

  #page-dokoikun #page-title {
    margin: 0;
    padding: 0;
  }

  #page-dokoikun #menu {
    width: 900px;
    margin: 0 auto;
  }

  #page-dokoikun #menu li {
    float: left;
    width: 292px;
    margin: 0 12px 10px 0;
    font-size: 1.8em;
  }

  #page-dokoikun #menu li:last-child {
    margin-right: 0;
  }

  #page-dokoikun #menu li a {
    padding: 10px 5px 10px 45px;
  }

  #page-dokoikun #menu li a:before {
    top: 8px;
  }

  #page-dokoikun #article-contents .inner {
    padding-top: 0px;
  }

  #page-dokoikun #article-contents .number-title {
    overflow: hidden;
    margin-bottom: 19px;
    padding-top: 77px;
  }

  #page-dokoikun #article-contents .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 62px;
    margin-right: 12px;
    padding: 10px 15px;
    font-size: 2em;
    line-height: 1;
    color: #fff;
    text-align: center;
    border-radius: 8px;
    background: #2266bb;
  }

  #page-dokoikun #article-contents .number:before {
    position: absolute;
    top: -37px;
    left: 50%;
    display: inline-block;
    content: "";
    margin-left: -28px;
    background-image: url(/assets/img/sprite.png);
    background-position: -586px -471px;
    width: 55px;
    height: 40px;
  }

  #page-dokoikun #article-contents .current-title {
    float: left;
    overflow: hidden;
    margin-top: 1px;
    margin-bottom: -5px;
    font-size: 2.7em;
    line-height: 1.4074074074;
    font-weight: bold;
  }

  #page-dokoikun #article-contents .current-title ruby {
    ruby-position: before;
    ruby-align: center;
    margin: 0;
    padding: 0;
  }

  #page-dokoikun #article-contents .current-title span {
    font-size: 0.8em;
  }

  #page-dokoikun #article-contents .lead-text span {
    font-size: 0.8em;
  }

  #page-dokoikun #article-contents .lead-text em {
    font-weight: bold;
    font-style: normal;
  }

  #page-dokoikun #article-contents p {
    margin: 1em 0;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-dokoikun #article-contents .sub-text {
    margin: 40px 50px;
    padding: 20px;
    border: #f0375e dotted 3px;
    font-size: 1.6em;
    overflow: hidden;
  }

  #page-dokoikun #article-contents .sub-text em {
    font-weight: bold;
    font-style: normal;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .sub-text .simple-link {
    display: inline-block;
    margin-top: 6px;
    font-size: 1em;
  }

  #page-dokoikun #article-contents .sub-text .photo {
    margin-right: 20px;
    float: left;
  }

  #page-dokoikun #article-contents .sub-text .text {
    float: left;
  }

  #page-dokoikun #article-contents .sub-text .text em {
    font-size: 1.2em;
    font-weight: bold;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .sub-text .text span {
    font-size: 0.8em;
  }

  #page-dokoikun #article-contents .sub-text2 {
    margin-top: 0;
  }

  #page-dokoikun #article-contents .movie-text {
    font-size: 1.6em;
    line-height: 1.2em;
    margin-top: 40px;
    margin-left: 90px;
  }

  #page-dokoikun #article-contents .sub-title {
    margin: 38px 0 16px;
    font-size: 2.4em;
    font-weight: bold;
    line-height: 1.5833333333;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .main-image {
    margin: 40px 0 0;
    text-align: center;
  }

  #page-dokoikun #article-contents .main-image-subtext {
    margin: 7px 50px 40px;
    font-size: 1.1em;
    color: #777;
    text-align: right;
  }

  #page-dokoikun #article-contents .smalltext {
    margin: 0;
    font-size: 1.1em;
    color: #777;
    text-align: right;
  }

  #page-dokoikun #article-contents .sub-image {
    margin: 40px 0 40px;
    text-align: center;
  }

  #page-dokoikun #article-contents .youtube {
    margin: 40px 0 0;
    text-align: center;
  }

  #page-dokoikun #article-contents .youtube2 {
    margin: 5px 0 40px;
    text-align: center;
  }

  #page-dokoikun #article-contents .smalltext-youtube {
    margin: -10px 0 0;
    font-size: 1.1em;
    color: #777;
    text-align: left;
  }

  #page-dokoikun #article-contents .sub-title-50 {
    margin: 50px 0 0;
    font-size: 2.4em;
    font-weight: bold;
    line-height: 1.4em;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .text-image-area {
    margin: 20px 0 0;
    overflow: hidden;
    zoom: 1;
  }

  #page-dokoikun #article-contents .text-image-area .image-right {
    margin: 0;
    text-align: right;
    float: right;
    width: 465px;
  }

  #page-dokoikun #article-contents .text-image-area .image-right02 {
    margin: 0;
    text-align: right;
    float: right;
  }

  #page-dokoikun #article-contents .text-image-area .text-left {
    margin: -6px 0 0;
    float: left;
    width: 435px;
  }

  #page-dokoikun #article-contents .text-image-area .text-left .textbottom {
    margin-top: 30px;
  }

  #page-dokoikun #article-contents .text-image-area .image-left {
    margin: 0;
    text-align: left;
    float: left;
    width: 465px;
  }

  #page-dokoikun #article-contents .text-image-area .image-left02 {
    margin: 0;
    text-align: left;
    float: left;
  }

  #page-dokoikun #article-contents .text-image-area .text-right {
    margin: -6px 0 0;
    float: right;
    width: 435px;
  }

  #page-dokoikun #article-contents .sub-area-dotline {
    margin: 50px 50px 0;
    padding: 30px;
    border: #f0375e dotted 3px;
    overflow: hidden;
    zoom: 1;
  }

  #page-dokoikun #article-contents .sub-area-dotline .title {
    margin: 0 0 20px;
    font-size: 2em;
    font-weight: bold;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .sub-area-dotline .image-right {
    margin: 0;
    text-align: right;
    float: right;
    width: 382px;
  }

  #page-dokoikun #article-contents .sub-area-dotline .text-left {
    margin: -6px 0 0;
    float: left;
    width: 352px;
  }

  #page-dokoikun #article-contents .ptop20 {
    padding: 20px 0 0 0;
  }

  #page-dokoikun #article-contents .caption-center {
    margin: 40px 0 -20px;
    text-align: center;
    font-size: 1.4em;
    color: #777777;
  }
}
@media screen and (max-width: 767px) {
  #page-dokoikun #sub-nav #joy-link a, .dokoikun-popup #sub-nav #joy-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 19.66873706% 34.2569269521%;
    width: 28.125%;
    background-size: 636.666666667% 417.6%;
  }

  #page-dokoikun #contents {
    padding-top: 28.125%;
    padding-bottom: 50.9375%;
  }

  #page-dokoikun #contents .inner {
    overflow: hidden;
  }

  #page-dokoikun #article-header {
    margin-bottom: 8.4375%;
  }

  #page-dokoikun #article-header .lead-text {
    margin: 1.2307692308em 0 0;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-dokoikun #article-header .lead-text ruby {
    ruby-position: before;
    ruby-align: center;
    margin: 0;
    padding: 0;
  }

  #page-dokoikun #dokoikun-page-title {
    width: 84.4827586207%;
  }

  #page-dokoikun #menu {
    width: 90.625%;
    margin: 9.375% auto 0;
  }

  #page-dokoikun #article-contents .inner {
    padding-top: 0px;
  }

  #page-dokoikun #article-contents .number-title {
    overflow: hidden;
    margin-bottom: 4.4827586207%;
    padding-top: 9.6551724138%;
  }

  #page-dokoikun #article-contents .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 13.1034482759%;
    margin-right: 3.4482758621%;
    padding: 2.4137931034% 5.1724137931%;
    color: #fff;
    font-weight: bold;
    font-size: 4.375vw;
    line-height: 1;
    text-align: center;
    border-radius: 1.25vw;
    background: #2266bb;
  }

  #page-dokoikun #article-contents .number:before {
    position: absolute;
    top: -2em;
    left: 50%;
    display: inline-block;
    content: "";
    margin-left: -1.5em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 56.8738229755% 45.1219512195%;
    width: 13.125%;
    background-size: 1364.28571429% 1740%;
    width: 3em;
    height: 2.1428571429em;
  }

  #page-dokoikun #article-contents .current-title {
    float: left;
    overflow: hidden;
    width: 73.1034482759%;
    margin-bottom: -0.1944444444em;
    padding-top: 0.0555555556em;
    font-size: 5.625vw;
    line-height: 1.3333333333;
    font-weight: bold;
  }

  #page-dokoikun #article-contents .current-title ruby {
    ruby-position: before;
    ruby-align: center;
    margin: 0;
    padding: 0;
  }

  #page-dokoikun #article-contents .current-title span {
    font-size: 0.8em;
  }

  #page-dokoikun #article-contents .lead-text span {
    font-size: 0.8em;
  }

  #page-dokoikun #article-contents .lead-text em {
    font-weight: bold;
    font-style: normal;
  }

  #page-dokoikun #article-contents p {
    margin: 1em 0;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-dokoikun #article-contents .sub-text {
    margin: 6.8965517241% 0;
    padding: 3.4482758621%;
    border: #f0375e dotted 2px;
    font-size: 3.4375vw;
    overflow: hidden;
  }

  #page-dokoikun #article-contents .sub-text em {
    font-weight: bold;
    font-style: normal;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .sub-text .simple-link {
    display: block;
    margin-top: 0.4545454545em;
    font-size: 3.4375vw;
  }

  #page-dokoikun #article-contents .sub-text .photo {
    float: left;
    width: 29.9625468165%;
    margin-left: 1.872659176%;
    margin-right: 3.7453183521%;
  }

  #page-dokoikun #article-contents .sub-text .text {
    float: left;
    width: 60.6741573034%;
    margin-right: 1.872659176%;
    font-size: 3.75vw;
  }

  #page-dokoikun #article-contents .sub-text .text em {
    font-size: 4.375vw;
    font-weight: bold;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .sub-text .text span {
    font-size: 3.4375vw;
  }

  #page-dokoikun #article-contents .sub-text2 {
    margin-top: 0;
  }

  #page-dokoikun #article-contents .movie-text {
    margin-top: 1.8181818182em;
    font-size: 3.4375vw;
    line-height: 1.3636363636;
  }

  #page-dokoikun #article-contents .sub-title {
    margin: 1.1875em 0 0.5em;
    font-weight: bold;
    font-size: 5vw;
    line-height: 1.3125;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .main-image {
    margin: 6.8965517241% 0 0;
    text-align: center;
  }

  #page-dokoikun #article-contents .main-image-subtext {
    margin: 0.5em 0 2em -1em;
    font-size: 3.125vw;
    color: #777;
    text-indent: 1em;
  }

  #page-dokoikun #article-contents .smalltext {
    margin: 0 0 0 -1em;
    font-size: 3.4375vw;
    color: #777;
    text-indent: 1em;
  }

  #page-dokoikun #article-contents .sub-image {
    margin: 6.8965517241% 0;
    text-align: center;
  }

  #page-dokoikun #article-contents .youtube {
    margin: 6.8965517241% 0 0;
    text-align: center;
  }

  #page-dokoikun #article-contents .youtube2 {
    margin: 1.0344827586% 0 6.8965517241%;
    position: relative;
    width: 100%;
    padding-top: 56.2068965517%;
  }

  #page-dokoikun #article-contents .youtube2 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    vertical-align: top;
  }

  #page-dokoikun #article-contents .smalltext-youtube {
    margin: 0.4545454545em 0 0;
    font-size: 3.4375vw;
    color: #777;
    text-align: left;
  }

  #page-dokoikun #article-contents .sub-title-50 {
    margin: 1.5625em 0 0;
    font-weight: bold;
    font-size: 5vw;
    line-height: 1.3125;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .text-image-area {
    margin: 2.4137931034% 0 9.3103448276%;
    overflow: hidden;
    zoom: 1;
  }

  #page-dokoikun #article-contents .text-image-area .origin-image {
    width: auto;
    vertical-align: middle;
  }

  #page-dokoikun #article-contents .text-image-area .image-right {
    margin: 3.7931034483% 0 0;
  }

  #page-dokoikun #article-contents .text-image-area .image-right02 {
    margin: 3.7931034483% 0 0;
  }

  #page-dokoikun #article-contents .text-image-area .text-left .textbottom {
    margin-top: 30px;
  }

  #page-dokoikun #article-contents .text-image-area .image-left {
    margin: 3.7931034483% 0 0;
  }

  #page-dokoikun #article-contents .text-image-area .image-left02 {
    margin: 3.7931034483% 0 0;
  }

  #page-dokoikun #article-contents .sub-area-dotline {
    margin: 10.3448275862% 0 0;
    padding: 4.4827586207% 4.1379310345% 5.1724137931% 5.1724137931%;
    border: #f0375e dotted 2px;
    overflow: hidden;
    zoom: 1;
  }

  #page-dokoikun #article-contents .sub-area-dotline .title {
    margin: 0 0 0.4666666667em;
    font-weight: bold;
    font-size: 4.6875vw;
    line-height: 1.3333333333;
    color: #ffee00;
  }

  #page-dokoikun #article-contents .sub-area-dotline .image-right {
    margin: 4.2307692308% 0 0;
  }

  #page-dokoikun #article-contents .caption-center {
    margin: 2em 0 -1em;
    text-align: center;
    font-size: 3.125vw;
    color: #777777;
  }

  #page-dokoikun .dokoikun-sp-only-image a {
    display: inline-block;
  }

  #page-dokoikun .dokoikun-sp-only-image a:nth-child(1) {
    width: 23.4482758621%;
  }

  #page-dokoikun .dokoikun-sp-only-image a:nth-child(2) {
    width: 42.0689655172%;
  }

  #page-dokoikun .dokoikun-sp-only-image a:nth-child(3) {
    width: 34.4827586207%;
  }
}
@media screen and (min-width: 768px) {
  #page-minami #sub-nav #joy-link a {
    background-position: -335px -156px;
  }

  #page-minami #sub-nav #joy-link a:hover {
    background-position: -501px 0px;
  }

  #page-minami #contents {
    padding-top: 216px;
    padding-bottom: 178px;
  }

  #page-minami #article-header {
    padding-bottom: 5px;
    background: url("/assets/img/bg_section-separator.png") 0 100% repeat-x;
    padding-bottom: 40px;
  }

  #page-minami #article-header .text-title {
    margin: 30px 0 0;
    font-size: 2em;
    line-height: 2;
    font-weight: bold;
    text-align: center;
    color: #ffee00;
  }

  #page-minami #article-header .lead-text {
    margin: 26px 0 24px;
    font-size: 1.6em;
    line-height: 1.6875;
    text-align: center;
  }

  #page-minami #article-header .lead-text span {
    font-size: 0.8em;
  }

  #page-minami #page-title {
    margin: 0;
    padding: 0;
    border: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }

  #page-minami .article-contents {
    background: url("/assets/img/bg_section-separator.png") 0 100% repeat-x;
    padding-bottom: 22px;
  }

  #page-minami .article-contents .inner {
    padding-top: 30px;
  }

  #page-minami .article-contents #spot-title {
    margin-top: 1px;
    margin-bottom: 10px;
    padding-left: 74px;
    padding-top: 19px;
    font-size: 3.2em;
    line-height: 1.2;
    font-weight: bold;
    background: url("/assets/img/joy/minami/ohenro_icon_blue.png") 0 100% no-repeat;
    height: 52px;
  }

  #page-minami .article-contents h2 span {
    color: #ffee00;
  }

  #page-minami .article-contents #spot-area .section-contents {
    margin-top: 30px;
    padding-bottom: 33px;
    overflow: hidden;
    zoom: 1;
    background: url("/assets/img/joy/minami/separator.png") 0 100% no-repeat;
  }

  #page-minami .article-contents #spot-area .section-contents .text {
    width: 530px;
    float: left;
  }

  #page-minami .article-contents #spot-area .section-contents h3 {
    margin-top: 1px;
    margin-bottom: 16px;
    padding-left: 31px;
    font-size: 2.4em;
    line-height: 1.2;
    font-weight: bold;
    background: url("/assets/img/joy/minami/pin.png") 0 100% no-repeat;
    height: 29px;
    color: #66ff00;
  }

  #page-minami .article-contents #spot-area .section-contents p {
    margin: 0;
    font-size: 1.6em;
    line-height: 1.6;
  }

  #page-minami .article-contents #spot-area .section-contents .sub {
    margin-top: 15px;
    overflow: hidden;
    zoom: 1;
  }

  #page-minami .article-contents #spot-area .section-contents .sub .image {
    float: left;
    margin-left: 12px;
  }

  #page-minami .article-contents #spot-area .section-contents .sub p {
    float: left;
    margin-top: 60px;
    margin-left: 15px;
    font-size: 1.2em;
    line-height: 1.5;
  }

  #page-minami .article-contents #spot-area .section-contents .photo {
    width: 370px;
    float: right;
    text-align: right;
  }

  #page-minami .article-contents #spot-area .last {
    background: none;
  }

  #page-minami .article-contents #office-title {
    margin-top: 1px;
    margin-bottom: 10px;
    padding-left: 74px;
    padding-top: 19px;
    font-size: 3.2em;
    line-height: 1.2;
    font-weight: bold;
    background: url("/assets/img/joy/minami/ohenro_icon_pink.png") 0 100% no-repeat;
    height: 52px;
  }

  #page-minami .article-contents .office-area {
    overflow: hidden;
    zoom: 1;
  }

  #page-minami .article-contents .office-area {
    overflow: hidden;
    zoom: 1;
  }

  #page-minami .article-contents .office-area .section-contents {
    margin-top: 30px;
    width: 430px;
    border: none;
  }

  #page-minami .article-contents .office-area .left {
    float: left;
    border: none;
  }

  #page-minami .article-contents .office-area .right {
    float: right;
    border: none;
  }

  #page-minami .article-contents .office-area-bottom {
    margin-top: 10px;
  }

  #page-minami .article-contents .section-contents h3 {
    margin-top: 1px;
    margin-bottom: 16px;
    padding-left: 31px;
    font-size: 2.1em;
    line-height: 1.3;
    font-weight: bold;
    background: url("/assets/img/joy/minami/pin.png") 0 100% no-repeat;
    height: 29px;
    color: #66ff00;
  }

  #page-minami .article-contents .section-contents p {
    margin: 18px 0 -5px;
    font-size: 1.4em;
    line-height: 1.7142857143;
  }

  #page-minami .article-contents-last {
    background: none;
  }
}
@media screen and (max-width: 767px) {
  #page-minami #sub-nav #joy-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 19.66873706% 34.2569269521%;
    width: 28.125%;
    background-size: 636.666666667% 417.6%;
  }

  #page-minami #contents {
    padding-top: 26.5625%;
    padding-bottom: 53.125%;
  }

  #page-minami #contents p {
    margin: 1em 0;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-minami #article-header {
    position: relative;
    padding-bottom: 9.0625%;
  }

  #page-minami #article-header:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-minami #article-header .text-title {
    margin: 30px 0 0;
    font-size: 2em;
    line-height: 2;
    font-weight: bold;
    text-align: center;
    color: #ffee00;
  }

  #page-minami #article-header .lead-text {
    margin: 0.8461538462em 0 0.9230769231em;
  }

  #page-minami #article-header .lead-text span {
    font-size: 0.8em;
  }

  #page-minami #page-title {
    margin: 0;
    padding: 0;
    border: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }

  #page-minami .map-wrapper {
    position: relative;
    width: 100%;
    padding-top: 65.5172413793%;
  }

  #page-minami #map_basic {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
  }

  #page-minami .article-contents {
    position: relative;
    padding-bottom: 9.0625%;
  }

  #page-minami .article-contents:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 0.9375%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-minami .article-contents #spot-title {
    position: relative;
    margin: 1.0416666667em 0 0.9166666667em;
    padding-left: 2.3333333333em;
    font-size: 7.5vw;
    line-height: 1.25;
    font-weight: bold;
  }

  #page-minami .article-contents #spot-title:before {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 0;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 100%;
    width: 14.0625%;
    background-size: 1273.33333333% 966.666666667%;
    width: 1.875em;
    padding-top: 2.25em;
  }

  #page-minami .article-contents h2 span {
    color: #ffee00;
  }

  #page-minami .article-contents #spot-area .section-contents {
    margin-top: 6.8965517241%;
  }

  #page-minami .article-contents #spot-area .section-contents p {
    margin: 0;
  }

  #page-minami .article-contents #spot-area .section-contents .sub {
    margin: 3.1034482759% 0 4.1379310345%;
    display: table;
  }

  #page-minami .article-contents #spot-area .section-contents .sub .image {
    display: table-cell;
    width: 18.6206896552%;
  }

  #page-minami .article-contents #spot-area .section-contents .sub p {
    display: table-cell;
    padding-left: 2.7586206897%;
    font-size: 3.59375vw;
    line-height: 1.4782608696;
    vertical-align: middle;
  }

  #page-minami .article-contents #spot-area .section-contents .photo {
    margin-top: 4.1379310345%;
  }

  #page-minami .article-contents #spot-area .last {
    background: none;
  }

  #page-minami .article-contents #office-title {
    position: relative;
    margin: 1.2916666667em 0 0.9166666667em;
    padding-left: 2.3333333333em;
    font-size: 7.5vw;
    line-height: 1.25;
    font-weight: bold;
  }

  #page-minami .article-contents #office-title:before {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 0;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 90.5303030303% 84.4017094017%;
    width: 14.0625%;
    background-size: 1273.33333333% 966.666666667%;
    width: 1.875em;
    padding-top: 2.25em;
  }

  #page-minami .article-contents .office-area {
    overflow: hidden;
    zoom: 1;
  }

  #page-minami .article-contents .office-area .section-contents {
    position: relative;
    margin-bottom: 6.8965517241%;
    padding-bottom: 7.9310344828%;
  }

  #page-minami .article-contents .office-area .section-contents:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 0.78125%;
    background: url("/assets/img/joy/minami/separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-minami .article-contents .office-area .section-contents.sp-no-border {
    margin-bottom: 0;
    padding-bottom: 0;
  }

  #page-minami .article-contents .office-area .section-contents.sp-no-border:after {
    display: none;
  }

  #page-minami .article-contents .office-area-bottom {
    margin-top: 10px;
  }

  #page-minami .article-contents .section-contents h3 {
    position: relative;
    margin-bottom: 0.4736842105em;
    padding-left: 1.2105263158em;
    font-size: 5.9375vw;
    line-height: 1.1052631579;
    font-weight: bold;
    color: #66ff00;
  }

  #page-minami .article-contents .section-contents h3:before {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 0;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 81.8671454219% 39.121756487%;
    width: 5%;
    background-size: 3581.25% 2485.71428571%;
    width: 0.8421052632em;
    padding-top: 1.1052631579em;
  }

  #page-minami .article-contents .section-contents p {
    margin: 0.6923076923em 0 0.8461538462em;
  }

  #page-minami .article-contents-last {
    padding-bottom: 0;
  }

  #page-minami .article-contents-last:before {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  #page-zenmaimai #sub-nav #joy-link a {
    background-position: -335px -156px;
  }

  #page-zenmaimai #sub-nav #joy-link a:hover {
    background-position: -501px 0px;
  }

  #page-zenmaimai #contents {
    padding-top: 216px;
    padding-bottom: 200px;
  }

  #page-zenmaimai #contents .article-contents {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    width: 960px;
    padding: 50px 30px 40px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    background-color: #ffff99;
  }

  #page-zenmaimai #contents .simple-link {
    margin-top: 20px;
    text-align: right;
    line-height: 1;
  }

  #page-zenmaimai #menu {
    float: none;
    overflow: hidden;
    width: 910px;
    margin: 30px 0 0;
  }

  #page-zenmaimai #menu ul {
    margin-right: -10px;
  }

  #page-zenmaimai #menu li {
    float: left;
    width: 445px;
    margin-right: 10px;
    margin-bottom: 10px;
    font-size: 1.6em;
    line-height: 1;
  }
}
@media screen and (max-width: 767px) {
  #page-zenmaimai #sub-nav #joy-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 19.66873706% 34.2569269521%;
    width: 28.125%;
    background-size: 636.666666667% 417.6%;
  }

  #page-zenmaimai #contents {
    padding-top: 26.5625%;
    padding-bottom: 53.125%;
  }

  #page-zenmaimai #contents .article-contents {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 90.625%;
    margin: 0 auto;
    padding: 9.375% 0 7.8125%;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    background-color: #ffff99;
  }

  #page-zenmaimai #contents .contents {
    overflow: scroll;
    width: 94.8275862069%;
    margin-right: 5.1724137931%;
  }

  #page-zenmaimai #contents .contents img {
    width: 163.636363636%;
    text-align: right;
  }

  #page-zenmaimai #contents .simple-link {
    clear: right;
    width: 90.625%;
    margin: 0 auto;
    padding-top: 1.25em;
    font-size: 3.75vw;
    line-height: 1;
  }

  #page-zenmaimai #menu {
    width: 89.6551724138%;
    margin: 8.6206896552% auto 0;
  }
}
@media screen and (min-width: 768px) {
  #page-rakko #sub-nav #serialization-link a {
    background-position: -438px -386px;
  }

  #page-rakko #sub-nav #serialization-link a:hover {
    background-position: 0px -110px;
  }

  #page-rakko #contents {
    padding-top: 216px;
    padding-bottom: 200px;
  }

  #page-rakko #contents .article-contents {
    width: 960px;
    margin: 0 auto;
    padding-bottom: 48px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    background: #ffff99;
  }

  #page-rakko #contents .contents {
    padding: 70px 50px 0;
    overflow: hidden;
  }

  #page-rakko #contents #left {
    padding: 0;
    width: 420px;
    float: left;
  }

  #page-rakko #contents #right {
    padding: 50px 0 0 40px;
    width: 400px;
    float: right;
  }

  #page-rakko #contents .name {
    margin-top: 30px;
    margin-left: 20px;
    color: #111;
    font-weight: bold;
    font-size: 1.6em;
    line-height: 1.125;
  }

  #page-rakko #contents .name a {
    font-size: 0.85em;
    font-weight: normal;
  }

  #page-rakko #contents .simple-link {
    margin-top: 15px;
    margin-left: 22px;
    font-size: 1.5em;
    line-height: 1.1875;
  }

  #page-rakko #pose {
    padding: 27px 0 0;
  }
}
@media screen and (max-width: 767px) {
  #page-rakko #sub-nav #serialization-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }

  #page-rakko #contents {
    padding-top: 26.5625%;
    padding-bottom: 53.125%;
  }

  #page-rakko #contents .article-contents {
    width: 90.625%;
    margin: 0 auto;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    background: #ffff99;
  }

  #page-rakko #contents .contents {
    padding: 10.3448275862% 5.1724137931% 10%;
    overflow: hidden;
  }

  #page-rakko #contents #left {
    padding: 0;
  }

  #page-rakko #contents #right {
    margin-top: 9.6153846154%;
  }

  #page-rakko #contents .name {
    margin-top: 1.6923076923em;
    margin-left: 1.9230769231%;
    color: #111;
    font-weight: bold;
    font-size: 4.0625vw;
    line-height: 1.2307692308;
  }

  #page-rakko #contents .name a {
    font-size: 0.85em;
    font-weight: normal;
  }

  #page-rakko #contents .simple-link {
    margin-top: 0.9166666667em;
    margin-left: 1.9230769231%;
    font-size: 3.75vw;
    line-height: 1.3333333333;
  }

  #page-rakko #pose {
    margin-top: 7.6923076923%;
  }
}
@media screen and (min-width: 768px) {
  #page-morichara #article-morichara {
    width: 960px;
    margin: 0 auto;
    padding: 106px 0 170px;
  }

  #page-morichara .page-title {
    width: 900px;
    margin: 0 auto;
  }

  #page-morichara .description {
    margin: 25px 0 14px;
    font-size: 1.6em;
    line-height: 1.6875;
    text-align: center;
  }

  #page-morichara .simple-link {
    margin: 0 0 25px;
    font-size: 1.5em;
    line-height: 1.7333333333;
    text-align: center;
  }

  #page-morichara .morichara-link {
    width: 900px;
    margin: 0 auto;
  }

  #page-morichara .morichara-link ul {
    overflow: hidden;
    width: 916px;
    margin: 0 0 -20px;
    padding: 0;
    list-style-type: none;
  }

  #page-morichara .morichara-link li {
    position: relative;
    float: left;
    margin-bottom: 20px;
  }

  #page-morichara .morichara-link li a, #page-morichara .morichara-link li span {
    display: block;
  }

  #page-morichara .morichara-link li a .ico-new {
    position: absolute;
  }

  #page-morichara .morichara-link li a:hover .img-content {
    opacity: 0.8;
  }

  #page-morichara .morichara-link li .img-content {
    width: 100%;
    height: auto;
  }

  #page-morichara .morichara-link li.even {
    width: 289px;
    margin-right: 16px;
  }

  #page-morichara .morichara-link li.even a, #page-morichara .morichara-link li.even span {
    background-image: url(../img/morichara/sprite.png);
    background-position: 0px 0px;
    width: 289px;
    height: 263px;
  }

  #page-morichara .morichara-link li.even a .ico-new {
    top: -2px;
    right: 4px;
  }

  #page-morichara .morichara-link li.even a:hover {
    background-image: url(../img/morichara/sprite.png);
    background-position: -289px 0px;
    width: 289px;
    height: 263px;
  }

  #page-morichara .morichara-link li.even a:hover .ico-new {
    top: 5px;
    right: -3px;
  }

  #page-morichara .morichara-link li.odd {
    width: 288px;
    margin-right: 17px;
  }

  #page-morichara .morichara-link li.odd a, #page-morichara .morichara-link li.odd span {
    background-image: url(../img/morichara/sprite.png);
    background-position: 0px -263px;
    width: 289px;
    height: 263px;
  }

  #page-morichara .morichara-link li.odd a .ico-new {
    top: 5px;
    right: -3px;
  }

  #page-morichara .morichara-link li.odd a:hover {
    background-image: url(../img/morichara/sprite.png);
    background-position: -289px -263px;
    width: 289px;
    height: 263px;
  }

  #page-morichara .morichara-link li.odd a:hover .ico-new {
    top: -2px;
    right: 4px;
  }
}
@media screen and (max-width: 767px) {
  #page-morichara #sub-nav #serialization-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }

  #page-morichara #article-morichara {
    width: 90.625%;
    margin: 0 auto;
    padding: 29.6875% 0 53.125%;
  }

  #page-morichara .description {
    margin: 0.8461538462em 0;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-morichara .simple-link {
    margin: 0 0 1.3846153846em;
  }

  #page-morichara .morichara-link {
    margin: 0 auto;
  }

  #page-morichara .morichara-link ul {
    margin: 0 0 -5.1724137931%;
  }

  #page-morichara .morichara-link li {
    position: relative;
    width: 89.6551724138%;
    margin: 0 auto 5.1724137931%;
  }

  #page-morichara .morichara-link li a, #page-morichara .morichara-link li span {
    display: block;
  }

  #page-morichara .morichara-link li a .ico-new {
    position: absolute;
    width: 17.6923076923%;
  }

  #page-morichara .morichara-link li.even a, #page-morichara .morichara-link li.even span {
    background-image: url(../img/morichara/bg_even_sp.png);
    -webkit-background-size: cover;
    background-size: cover;
  }

  #page-morichara .morichara-link li.even a .ico-new {
    top: -0.422832981%;
    right: 0.7692307692%;
  }

  #page-morichara .morichara-link li.odd a, #page-morichara .morichara-link li.odd span {
    background-image: url(../img/morichara/bg_odd_sp.png);
    -webkit-background-size: cover;
    background-size: cover;
  }

  #page-morichara .morichara-link li.odd a .ico-new {
    top: 1.2684989429%;
    right: -0.7692307692%;
  }

  #morichara-popup #sub-nav #serialization-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }
}
@media screen and (min-width: 768px) {
  /* cnaracter */
  #page-character #article-header {
    margin-bottom: 236px;
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #page-character #article-header .lead {
    margin-bottom: 10px;
    font-size: 2.1em;
    line-height: 1.2;
    max-height: 999999px;
  }

  #page-character #article-header .lead em {
    font-weight: bold;
    font-style: normal;
  }

  #page-character #article-header .description {
    margin-bottom: 15px;
  }

  #page-character #article-header .simple-link {
    margin-bottom: 45px;
  }

  #page-character #contents {
    padding-top: 269px;
    padding-bottom: 192px;
  }

  #page-character #contents p {
    font-size: 1.6em;
    line-height: 1.7;
    max-height: 999999px;
  }

  #page-character section {
    padding-top: 48px;
  }

  #page-character .text {
    font-size: 1em;
    max-height: 999999px;
  }

  #page-character #chala-list {
    overflow: hidden;
    clear: both;
    margin: 0 auto;
    width: 900px;
    background-color: #fff;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
  }

  #page-character #chala-list ul {
    width: 870px;
    margin: 0 0 0 30px;
    padding: 19px 0 50px;
    list-style-type: none;
  }

  #page-character #chala-list ul:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-character #chala-list li {
    float: left;
    width: 280px;
    height: auto;
    margin-top: 30px;
  }

  #page-character #chala-list li.seiza {
    float: left;
    width: 840px;
    margin-top: 30px;
    margin-right: 30px;
  }

  #page-character #chala-list .koko-family, #page-character #chala-list .oba, #page-character #chala-list .kakero {
    position: relative;
  }

  #page-character #chala-list .koko-family:after, #page-character #chala-list .oba:after, #page-character #chala-list .kakero:after {
    position: absolute;
    display: block;
    content: "";
    background-image: url(/assets/img/sprite.png);
    background-position: -641px -471px;
    width: 26px;
    height: 26px;
  }

  #page-character #chala-list .koko-family:after {
    top: 103px;
    left: -22px;
  }

  #page-character #chala-list .oba:after {
    top: 126px;
    left: 12px;
  }

  #page-character #chala-list .kakero:after {
    top: 92px;
    left: -13px;
  }

  #page-character #chala-list .anpontan {
    position: relative;
  }

  #page-character #chala-list .flets {
    width: 840px;
  }

  #page-character #chala-list .anpontan:after {
    position: absolute;
    display: block;
    content: "";
    top: 145px;
    left: -16px;
    background-image: url(/assets/img/sprite.png);
    background-position: -420px -351px;
    width: 26px;
    height: 26px;
  }

  #page-character #chala-list .image {
    margin-bottom: 10px;
    text-align: center;
  }

  #page-character #chala-list .name {
    margin-bottom: 2px;
    color: #111;
    font-weight: bold;
    font-size: 1.3em;
    text-align: center;
  }

  #page-character #chala-list .artist {
    font-size: 1.1em;
    line-height: 1.4;
    text-align: center;
    margin-bottom: 0;
    color: #666;
  }

  #page-character #chalent {
    padding-top: 1px;
    background: url("/assets/img/bg_section-separator.png") 0 0 repeat-x;
  }

  #page-character #chalent .section-title {
    margin-bottom: 32px;
  }

  #page-character .charent-text {
    width: 690px;
    margin: 5px 30px 0 0;
    display: inline-block;
    vertical-align: top;
  }

  #page-character .charent-text .lead {
    margin-bottom: 15px;
  }

  #page-character .feature-chalent {
    float: none;
    margin: 0 0 27px;
    padding: 0;
    display: inline-block;
    text-align: center;
    vertical-align: top;
  }

  #page-character .feature-chalent .image {
    margin: 0;
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  /* cnaracter */
  #page-character #article-header {
    position: relative;
    padding-top: 1px;
  }

  #page-character #article-header:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-character #article-header #page-title {
    margin-bottom: 0.7083333333em;
  }

  #page-character #article-header .lead {
    margin-bottom: 0.5333333333em;
    font-size: 4.6875vw;
    line-height: 1.4666666667;
  }

  #page-character #article-header .lead em {
    font-weight: bold;
    font-style: normal;
  }

  #page-character #article-header .description {
    margin-bottom: 0.6153846154em;
  }

  #page-character #article-header .simple-link {
    margin-bottom: 1.2307692308em;
  }

  #page-character #contents {
    padding-top: 55.3125%;
    padding-bottom: 53.125%;
  }

  #page-character #contents p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-character #chala-list {
    overflow: hidden;
    clear: both;
    margin: 0 auto 45.8620689655%;
    background-color: #fff;
    -webkit-border-radius: 2.34375vw;
    -moz-border-radius: 2.34375vw;
    border-radius: 2.34375vw;
  }

  #page-character #chala-list ul {
    padding-top: 2.7586206897%;
    padding-bottom: 7.5862068966%;
  }

  #page-character #chala-list ul:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-character #chala-list li {
    width: 91.3793103448%;
    margin: 5.8620689655% auto 0;
    text-align: center;
  }

  #page-character #chala-list .koko-family, #page-character #chala-list .oba, #page-character #chala-list .kakero {
    position: relative;
  }

  #page-character #chala-list .koko-family:after, #page-character #chala-list .oba:after, #page-character #chala-list .kakero:after {
    position: absolute;
    top: 0;
    display: block;
    content: "";
    left: 45.6603773585%;
    background-image: url(/assets/img/sprite.png);
    background-position: -641px -471px;
    width: 26px;
    height: 26px;
  }

  #page-character #chala-list .koko-family {
    margin-top: 11.724137931%;
  }

  #page-character #chala-list .koko-family:after {
    margin-top: -8.3018867925%;
  }

  #page-character #chala-list .oba {
    margin-top: 15.1724137931%;
  }

  #page-character #chala-list .oba:after {
    margin-top: -12.0754716981%;
  }

  #page-character #chala-list .kakero {
    margin-top: 16.8965517241%;
  }

  #page-character #chala-list .kakero:after {
    margin-top: -13.9622641509%;
  }

  #page-character #chala-list .anpontan {
    position: relative;
    margin-top: 16.8965517241%;
  }

  #page-character #chala-list .anpontan:after {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 45.6603773585%;
    margin-top: -13.9622641509%;
    background-image: url(/assets/img/sprite.png);
    background-position: -420px -351px;
    width: 26px;
    height: 26px;
  }

  #page-character #chala-list .name {
    margin-top: 0.6956521739em;
    color: #111;
    font-weight: bold;
    font-size: 3.59375vw;
    line-height: 1.3913043478;
  }

  #page-character #chala-list .artist {
    color: #666;
    font-size: 2.96875vw;
    line-height: 1.6842105263;
  }

  #page-character #chalent {
    position: relative;
    padding-top: 1px;
  }

  #page-character #chalent:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.25%;
    background: url("/assets/img/bg_section-separator_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #page-character #chalent .section-title {
    margin-bottom: 0.7083333333em;
  }

  #page-character .charent-text {
    margin-bottom: 6.5517241379%;
  }

  #page-character .charent-text .simple-link {
    margin-top: 4.3103448276%;
  }
}
@media screen and (min-width: 768px) {
  #page-sakagami #sub-nav #joy-link a {
    background-position: -335px -156px;
  }

  #page-sakagami #sub-nav #joy-link a:hover {
    background-position: -501px 0px;
  }

  #page-sakagami #contents {
    padding-top: 225px;
    padding-bottom: 200px;
  }

  #page-sakagami #contents p {
    margin: 1em 0;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-sakagami #menu {
    width: 100%;
    float: none;
    margin-top: 46px;
    margin-bottom: -10px;
  }

  #page-sakagami #menu ul {
    width: 912px;
  }

  #page-sakagami #menu ul:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-sakagami #menu ul.long li {
    width: 444px;
  }

  #page-sakagami #menu li {
    float: left;
    width: 292px;
    margin-right: 12px;
  }

  #page-sakagami #menu li.long {
    width: 444px;
  }

  #page-sakagami #contents-title {
    position: relative;
    margin: 0 0 24px;
    padding-left: 76px;
    color: #fff;
    font-size: 3em;
    line-height: 1.4;
    max-height: 999999px;
  }

  #page-sakagami #contents-title:before {
    position: absolute;
    top: -12px;
    left: 0;
    display: inline-block;
    content: "";
    margin-right: 18px;
    vertical-align: top;
    background-image: url(/assets/img/sprite.png);
    background-position: -131px -520px;
    width: 61px;
    height: 60px;
  }

  #page-sakagami .image-title {
    width: 100%;
    text-align: center;
    margin-bottom: 24px;
  }

  #page-sakagami .image-title img {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
  }

  #page-sakagami .series-heading {
    margin-top: 89px;
    margin-bottom: 33px;
  }

  #page-sakagami .series-heading:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-sakagami .series-heading .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 62px;
    padding: 10px 15px;
    font-size: 2em;
    line-height: 1;
    color: #fff;
    text-align: center;
    border-radius: 8px;
    background: #2266bb;
  }

  #page-sakagami .series-heading .number:before {
    position: absolute;
    top: -39px;
    left: 23px;
    display: inline-block;
    content: "";
    background-image: url(/assets/img/sprite.png);
    background-position: -192px -520px;
    width: 50px;
    height: 39px;
  }

  #page-sakagami .series-heading .series-title {
    float: right;
    width: 780px;
    overflow: hidden;
    font-size: 2.7em;
    line-height: 1.4444444444;
  }

  #page-sakagami .simple-link {
    font-size: 1.6em;
  }

  #page-sakagami .contents-block {
    margin-top: 39px;
  }

  #page-sakagami .contents-block h4 {
    position: relative;
    margin: 0 0 24px;
    padding-left: 76px;
    color: #fff;
    font-size: 2.7em;
    line-height: 1.4444444444;
    max-height: 999999px;
  }

  #page-sakagami .contents-block h4:before {
    position: absolute;
    top: -10px;
    left: 0;
    display: inline-block;
    content: "";
    margin-right: 18px;
    vertical-align: top;
    background-image: url(/assets/img/sprite.png);
    background-position: -70px -520px;
    width: 61px;
    height: 60px;
  }

  #page-sakagami .contents-block h5 {
    color: #ffee00;
    font-size: 2.4em;
    line-height: 1.5833333333;
  }

  #page-sakagami .contents-block .text-area {
    margin-bottom: 38px;
  }

  #page-sakagami .contents-block .image-caption {
    margin: 8px 0 3px;
    font-size: 1.4em;
    line-height: 1.9285714286;
  }

  #page-sakagami .contents-block .simple-link {
    font-size: 1.4em;
    line-height: 1.4285714286;
  }

  #page-sakagami .text-image-wrapper {
    margin-top: 23px;
  }

  #page-sakagami .text-image-wrapper:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-sakagami .text-image-wrapper .text-area,
#page-sakagami .text-image-wrapper .image-area {
    width: 435px;
  }

  #page-sakagami .text-image-wrapper .text-area {
    margin-top: -5px;
  }

  #page-sakagami .text-image-wrapper .text-area p {
    margin-top: 0;
  }

  #page-sakagami .text-left .text-area {
    float: left;
    margin-right: 30px;
  }

  #page-sakagami .text-left .image-area {
    float: right;
  }

  #page-sakagami .text-right .text-area {
    float: right;
  }

  #page-sakagami .text-right .image-area {
    float: left;
    margin-right: 30px;
  }

  #page-sakagami .image-contents {
    margin-top: 47px;
  }

  #page-sakagami .image-contents:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-sakagami .image-contents .image-item {
    float: left;
    width: 435px;
    margin-right: 30px;
  }

  #page-sakagami .image-contents .image-item:nth-child(2n) {
    margin-right: 0;
  }

  #page-sakagami .sub-text {
    margin: 47px 50px 50px;
    padding: 20px;
    border: #f0375e dotted 3px;
    overflow: hidden;
  }

  #page-sakagami .sub-text em {
    font-weight: bold;
    font-style: normal;
    font-size: 2em;
    line-height: 1.35;
  }

  #page-sakagami .sub-text .image-area {
    margin-right: 20px;
    float: left;
  }

  #page-sakagami .sub-text .text-area {
    float: right;
    width: 560px;
  }

  #page-sakagami .sub-text .text-area .sub-text-heading {
    margin-top: -3px;
    font-size: 2em;
    font-weight: bold;
  }

  #page-sakagami .sub-text .text-area .detail {
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-sakagami .sub-text .text-area span {
    font-size: 0.8em;
  }

  #page-sakagami .more-link {
    margin-top: 27px;
  }

  #page-sakagami .ellipse-link {
    margin: 50px auto 0;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  #page-sakagami #sub-nav #joy-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 19.66873706% 34.2569269521%;
    width: 28.125%;
    background-size: 636.666666667% 417.6%;
  }

  #page-sakagami #contents {
    padding-top: 29.375%;
    padding-bottom: 53.125%;
  }

  #page-sakagami #contents p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-sakagami .contents-header .lead-text {
    margin-top: 0.8461538462em;
  }

  #page-sakagami #menu {
    margin: 8.9655172414% 0 0;
  }

  #page-sakagami #contents-title {
    position: relative;
    display: table-cell;
    height: 2.6111111111em;
    padding-left: 2.6666666667em;
    color: #fff;
    font-size: 5.625vw;
    line-height: 1.3333333333;
    vertical-align: middle;
  }

  #page-sakagami #contents-title:before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    content: "";
    margin-top: 0.1666666667em;
    margin-right: 0.4444444444em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 54.356846473%;
    background-size: 1397.56097561% 1305%;
    width: 2.2777777778em;
    padding-top: 2.2222222222em;
  }

  #page-sakagami .image-title {
    margin-top: 7.5862068966%;
  }

  #page-sakagami .image-title img {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
  }

  #page-sakagami .series-heading {
    margin-top: 19.6551724138%;
    margin-bottom: 3.1034482759%;
    padding-top: 0.3448275862%;
  }

  #page-sakagami .series-heading:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-sakagami .series-heading .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 2.7142857143em;
    margin-right: 0.7142857143em;
    padding: 0.5em 1.0714285714em;
    color: #fff;
    font-weight: bold;
    font-size: 4.375vw;
    line-height: 1;
    text-align: center;
    border-radius: 1.25vw;
    background: #2266bb;
  }

  #page-sakagami .series-heading .number:before {
    position: absolute;
    top: -2em;
    left: 1.2142857143em;
    display: inline-block;
    content: "";
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 98.8847583643% 71.2550607287%;
    width: 10.9375%;
    background-size: 1637.14285714% 1864.28571429%;
    width: 2.5em;
    height: 2em;
  }

  #page-sakagami .series-heading .series-title {
    overflow: hidden;
    margin-top: -0.0555555556em;
    font-size: 5.625vw;
    line-height: 1.3333333333;
  }

  #page-sakagami .contents-block {
    margin-bottom: 8.275862069%;
  }

  #page-sakagami .contents-block h4 {
    position: relative;
    display: table-cell;
    height: 2.6111111111em;
    padding-left: 2.6666666667em;
    color: #fff;
    font-size: 5.625vw;
    line-height: 1.3333333333;
    vertical-align: middle;
  }

  #page-sakagami .contents-block h4:before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    content: "";
    margin-top: 0.1666666667em;
    margin-right: 0.3888888889em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 63.6929460581%;
    background-size: 1397.56097561% 1305%;
    width: 2.2777777778em;
    padding-top: 2.2222222222em;
  }

  #page-sakagami .contents-block h5 {
    color: #ffee00;
    font-size: 5vw;
    line-height: 1.3125;
  }

  #page-sakagami .contents-block .description {
    margin-top: 0.6153846154em;
    margin-bottom: 0.5384615385em;
  }

  #page-sakagami .contents-block .image-area {
    margin-top: 8.9655172414%;
  }

  #page-sakagami .contents-block .image-caption {
    margin: 0.5217391304em 0 0.2608695652em;
    font-size: 3.59375vw !important;
    line-height: 1.4782608696;
  }

  #page-sakagami .image-contents:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-sakagami .image-contents .image-item {
    margin-top: 8.9655172414%;
  }

  #page-sakagami .sub-text {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 9.3103448276% 0 10.3448275862%;
    padding: 5.1724137931%;
    border: #f0375e dotted 2px;
    font-size: 3.4375vw;
    overflow: hidden;
  }

  #page-sakagami .sub-text em {
    font-weight: bold;
    font-style: normal;
    color: #ffee00;
  }

  #page-sakagami .sub-text .simple-link {
    display: block;
    margin-top: 0.4545454545em;
    font-size: 3.4375vw;
  }

  #page-sakagami .sub-text .image-area {
    float: left;
    width: 33.0739299611%;
    margin-right: 5.8365758755%;
  }

  #page-sakagami .sub-text .text-area {
    float: left;
    width: 60.3112840467%;
    font-size: 3.75vw;
    line-height: 1.5;
  }

  #page-sakagami .sub-text .text-area .sub-text-heading {
    margin-top: -0.1428571429em;
    font-size: 4.375vw;
    line-height: 1.2857142857;
    font-weight: bold;
  }

  #page-sakagami .sub-text .text-area .simple-link {
    font-size: 3.59375vw;
  }
}
@media screen and (min-width: 768px) {
  #page-daruma #sub-nav #serialization-link a {
    background-position: -438px -386px;
  }

  #page-daruma #sub-nav #serialization-link a:hover {
    background-position: 0px -110px;
  }

  #page-daruma #contents {
    padding-top: 225px;
    padding-bottom: 200px;
  }

  #page-daruma #contents p {
    margin: 1em 0;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-daruma .contents-header .lead-text {
    margin: 34px 0 11px !important;
    text-align: center;
  }

  #page-daruma .contents-header .simple-link {
    text-align: center;
  }

  #page-daruma .image-title {
    overflow: hidden;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
  }

  #page-daruma .anatomische-tabellen {
    margin-top: 46px;
    text-align: center;
  }

  #page-daruma .anatomische-tabellen img {
    border: solid 9px #1054ff;
  }

  #page-daruma .topics-block {
    margin-top: 50px;
  }

  #page-daruma .topics-block .topics-list {
    margin-top: 40px;
  }

  #page-daruma .topics-block li {
    margin-top: 30px;
  }

  #page-daruma .topics-block li:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-daruma .topics-block .image-area {
    float: left;
    width: 240px;
  }

  #page-daruma .topics-block .image-area img {
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
  }

  #page-daruma .topics-block .text-area {
    float: right;
    width: 630px;
  }

  #page-daruma .topics-block .topics-date {
    margin-top: 2px;
    color: #66ff00;
    font-weight: bold;
    font-size: 2.2em;
    line-height: 1;
  }

  #page-daruma .topics-block p {
    margin: 15px 0 !important;
    line-height: 1.625 !important;
  }

  #page-daruma .topics-block .simple-link {
    font-size: 1.6em;
  }

  #page-daruma .topics-block .simple-link a:before {
    margin-top: 1px;
  }

  #page-daruma .daruma-event-block {
    overflow: hidden;
    width: 100%;
    margin-top: 50px;
  }

  #page-daruma .daruma-event-block .daruma-event-list {
    margin-top: 40px;
  }

  #page-daruma .daruma-event-block ol {
    width: 930px;
  }

  #page-daruma .daruma-event-block ol:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-daruma .daruma-event-block li {
    float: left;
    width: 280px;
    margin-top: 30px;
    margin-right: 30px;
  }

  #page-daruma .daruma-event-block .image-area img {
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
  }

  #page-daruma .daruma-event-block .image-area a {
    -webkit-transition: opacity 200ms;
    -moz-transition: opacity 200ms;
    -ms-transition: opacity 200ms;
    -o-transition: opacity 200ms;
    transition: opacity 200ms;
  }

  #page-daruma .daruma-event-block .image-area a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
  }

  #page-daruma .daruma-event-block .daruma-event-date {
    margin-top: 18px;
    color: #66ff00;
    font-weight: bold;
    font-size: 1.6em;
    line-height: 1;
  }

  #page-daruma .daruma-event-block .more-link {
    margin: 8px 0 -2px;
    text-align: left;
    font-size: 2.2em;
    line-height: 1.1818181818;
  }

  #page-daruma .daruma-event-block .more-link a {
    position: relative;
    padding-left: 26px;
  }

  #page-daruma .daruma-event-block .more-link a:before {
    position: absolute;
    top: 4px;
    left: 0;
  }

  #daruma-popup #sub-nav #serialization-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }

  #daruma-popup article {
    padding-bottom: 80px;
  }

  #daruma-popup article .inner {
    width: 740px;
    margin: 34px auto 0;
  }

  #daruma-popup .daruma-header {
    position: relative;
    padding-bottom: 16px;
    padding-left: 66px;
    font-weight: bold;
    background: url("/assets/img/wakamedaruma/bg_daruma-separator.png") repeat-x 0 100%;
  }

  #daruma-popup .daruma-header:before {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 0;
    background-image: url(/assets/img/sprite.png);
    background-position: -366px -258px;
    width: 52px;
    height: 60px;
  }

  #daruma-popup .daruma-header .date {
    margin: 3px 0 4px;
    color: #66ff00;
    font-size: 1.6em;
    line-height: 1;
  }

  #daruma-popup .daruma-header #title {
    margin-bottom: -5px;
    font-size: 3em;
    line-height: 1.3333333333;
  }

  #daruma-popup .text-area {
    margin: 33px 20px 37px;
  }

  #daruma-popup .lead-text {
    margin: 1em 0 12px;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #daruma-popup .image-item {
    margin-top: 40px;
  }

  #daruma-popup .image-caption {
    margin: 9px 0 -5px;
    font-size: 1.6em;
    line-height: 1.6875;
    color: #ffffff;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  #page-daruma #sub-nav #serialization-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }

  #page-daruma #contents {
    padding-top: 26.5625%;
    padding-bottom: 53.125%;
  }

  #page-daruma #contents p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-daruma .contents-header .lead-text {
    margin: 1.2307692308em 0 0.6153846154em;
  }

  #page-daruma .image-title {
    overflow: hidden;
    -webkit-border-radius: 3.125vw;
    -moz-border-radius: 3.125vw;
    border-radius: 3.125vw;
  }

  #page-daruma .anatomische-tabellen {
    margin-top: 8.4375%;
  }

  #page-daruma .topics-block {
    margin-top: 9.375%;
  }

  #page-daruma .topics-block li {
    margin-top: 6.8965517241%;
  }

  #page-daruma .topics-block .image-area img {
    -webkit-border-radius: 2.5vw;
    -moz-border-radius: 2.5vw;
    border-radius: 2.5vw;
  }

  #page-daruma .topics-block .topics-date {
    margin: 1em 0 0.4em;
    color: #66ff00;
    font-weight: bold;
    font-size: 4.6875vw;
    line-height: 1;
  }

  #page-daruma .topics-block p {
    margin: 0.4615384615em 0;
  }

  #page-daruma .daruma-event-block {
    margin-top: 9.375%;
  }

  #page-daruma .daruma-event-block li {
    margin-top: 6.8965517241%;
  }

  #page-daruma .daruma-event-block .image-area img {
    -webkit-border-radius: 2.5vw;
    -moz-border-radius: 2.5vw;
    border-radius: 2.5vw;
  }

  #page-daruma .daruma-event-block .daruma-event-date {
    margin-top: 0.9230769231em;
    color: #66ff00;
    font-weight: bold;
    font-size: 4.0625vw;
    line-height: 1;
  }

  #page-daruma .daruma-event-block .more-link {
    margin: 0.3333333333em 0 -0.1111111111em;
    text-align: left;
    font-size: 5.625vw;
    line-height: 1.2222222222;
  }

  #page-daruma .daruma-event-block .more-link a {
    position: relative;
    padding-left: 1.1666666667em;
  }

  #page-daruma .daruma-event-block .more-link a:before {
    position: absolute;
    top: 0.1944444444em;
    left: 0;
    width: 0.8333333333em;
    height: 0.8333333333em;
  }

  #daruma-popup article .inner {
    width: 90.625%;
    margin: 7.8125% auto 0;
  }

  #daruma-popup .daruma-header {
    position: relative;
    padding-bottom: 5.1724137931%;
    padding-left: 16.8965517241%;
    font-weight: bold;
  }

  #daruma-popup .daruma-header:before {
    position: absolute;
    display: block;
    content: "";
    top: 0;
    left: 0;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 99.6254681648% 33.5429769392%;
    width: 12.1875%;
    background-size: 1469.23076923% 1160%;
    width: 13.4482758621%;
    padding-top: 15.5172413793%;
  }

  #daruma-popup .daruma-header:after {
    position: absolute;
    display: block;
    content: "";
    bottom: 0;
    left: 0;
    width: 100%;
    padding-top: 1.0344827586%;
    background: url("/assets/img/wakamedaruma/bg_daruma-separator_sp.png") repeat-x 0 0;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #daruma-popup .daruma-header .date {
    margin: -0.0666666667em 0 0.2em;
    color: #66ff00;
    font-size: 4.6875vw;
    line-height: 1.3333333333;
  }

  #daruma-popup .daruma-header #title {
    margin-bottom: -0.15em;
    font-size: 6.25vw;
    line-height: 1.3;
  }

  #daruma-popup .text-area {
    margin: 5.8620689655% 0 0;
  }

  #daruma-popup .lead-text {
    margin-bottom: 0.6666666667em;
    font-size: 4.6875vw;
    line-height: 1.3333333333;
  }

  #daruma-popup .image-item {
    margin-top: 8.6206896552%;
  }

  #daruma-popup .image-caption {
    margin: 0.5384615385em 0 -0.2692307692em;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
    color: #ffffff;
  }
}
@media screen and (min-width: 768px) {
  #page-tiffanikki #sub-nav #serialization-link a {
    background-position: -438px -386px;
  }

  #page-tiffanikki #sub-nav #serialization-link a:hover {
    background-position: 0px -110px;
  }

  #page-tiffanikki #contents {
    padding-top: 225px;
    padding-bottom: 200px;
  }

  #page-tiffanikki #contents p {
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-tiffanikki .contents-header .lead-text {
    margin: 24px 0 10px;
  }

  #page-tiffanikki .contents-header .credit {
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-tiffanikki #select-menu {
    margin-top: 25px;
  }

  #page-tiffanikki #select-menu select {
    height: 50px;
    border: #f0375e solid 3px;
  }

  #page-tiffanikki .series-heading {
    margin-top: 105px;
    margin-bottom: 32px;
  }

  #page-tiffanikki .series-heading:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-tiffanikki .series-heading .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 62px;
    padding: 10px 15px;
    font-size: 2em;
    line-height: 1;
    color: #fff;
    text-align: center;
    border-radius: 8px;
    background: #8804db;
  }

  #page-tiffanikki .series-heading .number:before {
    position: absolute;
    top: -65px;
    left: 16px;
    display: inline-block;
    content: "";
    background-image: url(/assets/img/sprite.png);
    background-position: 0px -588px;
    width: 56px;
    height: 65px;
  }

  #page-tiffanikki .series-heading .series-title {
    float: right;
    width: 780px;
    overflow: hidden;
    font-size: 2.7em;
    line-height: 1.4444444444;
  }

  #page-tiffanikki .tiffanikki-contents .contents-block {
    margin-bottom: -33px;
    padding-top: 1px;
  }

  #page-tiffanikki .tiffanikki-contents p {
    margin: -6px 0 28px;
  }

  #page-tiffanikki .tiffanikki-contents .image-left {
    float: left;
    margin-right: 30px;
    margin-bottom: 30px;
  }

  #page-tiffanikki .tiffanikki-contents .image-right {
    float: right;
    margin-left: 30px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  #page-tiffanikki #sub-nav #serialization-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }

  #page-tiffanikki #contents {
    padding-top: 26.5625%;
    padding-bottom: 51.5625%;
  }

  #page-tiffanikki #contents p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-tiffanikki .contents-header .lead-text {
    margin: 0.8461538462em 0 0.1538461538em;
  }

  #page-tiffanikki .contents-header .credit {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-tiffanikki #select-menu {
    margin-top: 6.2068965517%;
  }

  #page-tiffanikki #select-menu select {
    border: #f0375e solid 0.78125vw;
    line-height: 2.7692307692;
  }

  #page-tiffanikki .series-heading {
    margin-top: 24.1379310345%;
    margin-bottom: 3.1034482759%;
    padding-top: 0.3448275862%;
  }

  #page-tiffanikki .series-heading:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-tiffanikki .series-heading .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 13.1034482759%;
    margin-right: 3.4482758621%;
    padding: 2.4137931034% 5.1724137931%;
    color: #fff;
    font-weight: bold;
    font-size: 4.375vw;
    line-height: 1;
    text-align: center;
    border-radius: 1.25vw;
    background: #8804db;
  }

  #page-tiffanikki .series-heading .number:before {
    position: absolute;
    top: -3.3571428571em;
    left: 1em;
    display: inline-block;
    content: "";
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 99.2537313433% 44.2105263158%;
    width: 11.5625%;
    background-size: 1548.64864865% 1110.63829787%;
    width: 2.6428571429em;
    height: 3.3571428571em;
  }

  #page-tiffanikki .series-heading .series-title {
    overflow: hidden;
    margin-top: -0.0555555556em;
    font-size: 5.625vw;
    line-height: 1.3333333333;
  }

  #page-tiffanikki .tiffanikki-contents p {
    margin-bottom: 1.5384615385em;
  }

  #page-tiffanikki .tiffanikki-contents .image {
    margin-top: 7.2413793103%;
  }
}
@media screen and (min-width: 768px) {
  #page-tarman #sub-nav #serialization-link a {
    background-position: -438px -386px;
  }

  #page-tarman #sub-nav #serialization-link a:hover {
    background-position: 0px -110px;
  }

  #page-tarman #contents {
    padding-top: 225px;
    padding-bottom: 200px;
  }

  #page-tarman #contents p {
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-tarman #contents p .large-text {
    font-size: 1.5em;
    line-height: 1.5833333333;
  }

  #page-tarman .contents-header .lead-text {
    margin: 24px 0 10px;
  }

  #page-tarman .contents-header .credit {
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-tarman .contents-block {
    padding-bottom: 66px;
    background: url("/assets/img/bg_dot-separator03.png") 0 100% repeat-x;
  }

  #page-tarman #select-menu {
    margin-top: 25px;
  }

  #page-tarman #select-menu select {
    height: 50px;
    border: #f0375e solid 3px;
  }

  #page-tarman .series-heading {
    margin-top: 60px;
    margin-bottom: 0;
  }

  #page-tarman .series-heading:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-tarman .series-heading .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 62px;
    padding: 10px 15px;
    font-size: 2em;
    line-height: 1;
    color: #fff;
    text-align: center;
    border-radius: 8px;
    background: #0c5ef2;
  }

  #page-tarman .series-heading .series-title {
    float: right;
    width: 780px;
    overflow: hidden;
    font-size: 2.7em;
    line-height: 1.4444444444;
  }

  #page-tarman .tarman-contents p {
    margin: 1.6875em 0;
  }

  #page-tarman .tarman-contents .sub-title {
    margin: 34px 0 27px;
    font-size: 2.4em !important;
    font-weight: bold;
    line-height: 1.5833333333 !important;
    color: #ffee00;
  }

  #page-tarman .tarman-contents .image-left {
    float: left;
    margin-right: 30px;
    margin-bottom: 30px;
  }

  #page-tarman .tarman-contents .image-right {
    float: right;
    margin-left: 30px;
    margin-bottom: 30px;
  }

  #page-tarman .tarman-contents .image-center {
    margin: 55px 0 54px;
    text-align: center;
  }

  #page-tarman .signature {
    margin-top: 56px;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-tarman .external-link {
    display: inline-block;
    min-width: 400px;
    margin: 70px 250px -45px;
    font-size: 1.6em;
    line-height: 1;
    text-align: center;
  }

  #page-tarman .external-link a {
    position: relative;
    display: block;
    padding: 18px 5px 18px 45px;
    border: #f0375e solid 4px;
    border-radius: 30px;
    color: #000;
    text-decoration: none;
    background-color: #fff;
    text-align: left;
  }

  #page-tarman .external-link a:before {
    position: absolute;
    top: 15px;
    left: 12px;
    display: inline-block;
    content: "";
    background-image: url(/assets/img/sprite.png);
    background-position: -647px -405px;
    width: 22px;
    height: 22px;
  }

  #page-tarman .external-link a:hover {
    background-color: #ffcccc;
  }

  #page-tarman .external-link .forPC {
    display: inline !important;
  }
}
@media screen and (max-width: 767px) {
  #page-tarman #sub-nav #serialization-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }

  #page-tarman #contents {
    padding-top: 26.5625%;
    padding-bottom: 51.5625%;
  }

  #page-tarman #contents p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-tarman #contents p .large-text {
    font-size: 5vw !important;
    line-height: 1.3125;
  }

  #page-tarman .contents-block {
    padding-bottom: 10vw;
    background: url("/assets/img/bg_dot-separator03_sp.png") 0 100% repeat-x;
    background-size: 6px 2px;
  }

  #page-tarman .sub-title {
    margin: 1.1875em 0 0.5em;
    font-weight: bold;
    font-size: 5vw !important;
    line-height: 1.3125 !important;
    color: #ffee00;
  }

  #page-tarman .contents-header .lead-text {
    margin: 0.8461538462em 0 0.1538461538em;
  }

  #page-tarman .contents-header .credit {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-tarman #select-menu {
    margin-top: 6.2068965517%;
  }

  #page-tarman #select-menu select {
    border: #f0375e solid 0.78125vw;
    line-height: 2.7692307692;
  }

  #page-tarman .series-heading {
    margin-top: 10.3448275862%;
    margin-bottom: 9.3103448276%;
  }

  #page-tarman .series-heading:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-tarman .series-heading .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 13.1034482759%;
    margin-right: 3.4482758621%;
    padding: 2.4137931034% 5.1724137931%;
    color: #fff;
    font-weight: bold;
    font-size: 4.375vw;
    line-height: 1;
    text-align: center;
    border-radius: 1.25vw;
    background: #0c5ef2;
  }

  #page-tarman .series-heading .series-title {
    overflow: hidden;
    padding-top: 0.1666666667em;
    font-size: 5.625vw;
    line-height: 1.3333333333;
  }

  #page-tarman .tarman-contents p {
    margin-bottom: 1.5384615385em;
  }

  #page-tarman .tarman-contents .image {
    margin: 11.0344827586% 0;
  }

  #page-tarman .signature {
    margin-top: 2.5em;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-tarman .external-link {
    margin-top: 7.8125vw;
    margin-bottom: 0;
    font-size: 4.375vw;
    line-height: 1.2857142857;
  }

  #page-tarman .external-link a {
    position: relative;
    display: block;
    font-size: 1em;
    padding: 0.5714285714em 0 0.5714285714em 2.7142857143em;
    border: #f0375e solid 0.2142857143em;
    border-radius: 2.2142857143em/50%;
    color: #000;
    text-decoration: none;
    background-color: #fff;
  }

  #page-tarman .external-link a:before {
    position: absolute;
    top: 50%;
    left: 0.9285714286em;
    display: inline-block;
    content: "";
    width: 1.4285714286em;
    margin-top: -0.7142857143em;
    padding-top: 1.4285714286em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 16.0940325497% 69.5219123506%;
    background-size: 2865% 2610%;
  }
}
@media screen and (min-width: 768px) {
  #page-kaedema #sub-nav #serialization-link a {
    background-position: -438px -386px;
  }

  #page-kaedema #sub-nav #serialization-link a:hover {
    background-position: 0px -110px;
  }

  #page-kaedema #contents {
    padding-top: 217px;
    padding-bottom: 234px;
  }

  #page-kaedema #contents p {
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-kaedema #contents p .large-text {
    font-size: 1.5em;
    line-height: 1.5833333333;
  }

  #page-kaedema .contents-header .lead-text {
    margin: 24px 0 10px;
  }

  #page-kaedema .contents-header .credit {
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-kaedema #select-menu {
    margin-top: 25px;
  }

  #page-kaedema #select-menu select {
    height: 50px;
    border: #f0375e solid 3px;
  }

  #page-kaedema .series-heading {
    margin-top: 60px;
    margin-bottom: 34px;
  }

  #page-kaedema .series-heading:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-kaedema .series-heading .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 62px;
    padding: 10px 15px;
    font-size: 2em;
    line-height: 1;
    color: #fff;
    text-align: center;
    border-radius: 8px;
    background: #0c5ef2;
  }

  #page-kaedema .series-heading .series-title {
    float: right;
    width: 780px;
    overflow: hidden;
    font-size: 2.7em;
    line-height: 1.4444444444;
  }

  #page-kaedema .series-heading .series-title .small {
    font-size: 0.7777777778em;
  }

  #page-kaedema .kaedema-contents p {
    margin: 1.6875em 0;
  }

  #page-kaedema .kaedema-contents .sub-title {
    margin: 34px 0 27px;
    font-size: 2.4em !important;
    font-weight: bold;
    line-height: 1.5833333333 !important;
    color: #ffee00;
  }

  #page-kaedema .kaedema-contents .image {
    margin: 34px 0 35px;
  }

  #page-kaedema .kaedema-contents .image-left {
    float: left;
    margin-right: 30px;
  }

  #page-kaedema .kaedema-contents .image-right {
    float: right;
    margin-left: 30px;
  }

  #page-kaedema .kaedema-contents .image-center {
    text-align: center;
  }

  #page-kaedema .contents-block > .image:nth-child(1) {
    margin-top: 40px;
  }

  #page-kaedema .contents-block > .image:nth-last-child(1) {
    margin-bottom: 0;
  }

  #page-kaedema .contents-block > p:nth-last-child(1) {
    margin-bottom: -5px;
  }
}
@media screen and (max-width: 767px) {
  #page-kaedema #sub-nav #serialization-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }

  #page-kaedema #contents {
    padding-top: 26.5625%;
    padding-bottom: 51.5625%;
  }

  #page-kaedema #contents p {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-kaedema #contents p .large-text {
    font-size: 5vw !important;
    line-height: 1.3125;
  }

  #page-kaedema .sub-title {
    margin: 1.1875em 0 0.5em;
    font-weight: bold;
    font-size: 5vw !important;
    line-height: 1.3125 !important;
    color: #ffee00;
  }

  #page-kaedema .contents-header .lead-text {
    margin: 0.8461538462em 0 0.1538461538em;
  }

  #page-kaedema .contents-header .credit {
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-kaedema #select-menu {
    margin-top: 6.2068965517%;
  }

  #page-kaedema #select-menu select {
    border: #f0375e solid 0.78125vw;
    line-height: 2.7692307692;
  }

  #page-kaedema .series-heading {
    margin-top: 10.3448275862%;
    margin-bottom: 9.3103448276%;
  }

  #page-kaedema .series-heading:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #page-kaedema .series-heading .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 13.1034482759%;
    margin-right: 3.4482758621%;
    padding: 2.4137931034% 5.1724137931%;
    color: #fff;
    font-weight: bold;
    font-size: 4.375vw;
    line-height: 1;
    text-align: center;
    border-radius: 1.25vw;
    background: #0c5ef2;
  }

  #page-kaedema .series-heading .series-title {
    overflow: hidden;
    padding-top: 0.1666666667em;
    font-size: 5.625vw;
    line-height: 1.3333333333;
  }

  #page-kaedema .series-heading .series-title .small {
    font-size: 0.7777777778em;
  }

  #page-kaedema .kaedema-contents p {
    margin-bottom: 1.5384615385em;
  }

  #page-kaedema .kaedema-contents .image {
    margin: 11.0344827586% 0;
  }
}
@media screen and (min-width: 768px) {
  #gnav li {
    margin-right: 23px;
  }

  #gnav a {
    display: block;
  }

  #gnav #gnav-about {
    margin-top: 21px;
  }

  #gnav #gnav-about-ab {
    margin-top: 8px;
  }

  #gnav #gnav-game-scenario {
    margin-top: 22px;
  }

  #gnav #gnav-character {
    margin-top: 22px;
    margin-right: 24px;
  }

  #gnav #gnav-web {
    margin-top: 22px;
    margin-right: 24px;
  }

  #gnav #gnav-works {
    margin-top: 23px;
    margin-right: 24px;
  }

  #gnav #gnav-special {
    margin-top: 22px;
    margin-right: 24px;
  }

  #gnav #gnav-news {
    margin-top: 23px;
  }

  #gnav #gnav-contact {
    margin-top: 22px;
    margin-right: 0;
  }

  #page-header li {
    float: left;
  }

  #sub-nav {
    position: absolute;
    bottom: -66px;
    right: 0;
    width: 355px;
    height: 86px;
    z-index: 2;
  }

  #sub-nav ul {
    height: 86px;
  }

  #sub-nav li {
    float: none;
    width: auto;
    margin: 0;
  }

  #sub-nav a {
    position: absolute;
    display: block;
    width: 85px;
    height: 86px;
    text-indent: -9999px;
    background-image: url(../img/sprite.png);
    background-repeat: no-repeat;
  }

  #sub-nav #serialization-link a {
    bottom: 0;
    left: 0;
    background-image: url(/assets/img/sprite.png);
    background-position: -586px 0px;
    width: 85px;
    height: 86px;
  }

  #page-serialization #sub-nav #serialization-link a {
    background-position: -438px -386px;
  }

  #page-serialization #sub-nav #serialization-link a:hover {
    background-position: 0px -110px;
  }

  #sub-nav #serialization-link a:hover {
    width: 95px;
    height: 148px;
    background-position: 0px -110px;
  }

  #sub-nav #joy-link a {
    top: 0;
    left: 90px;
    background-image: url(/assets/img/sprite.png);
    background-position: -268px -386px;
    width: 85px;
    height: 86px;
  }

  #page-joy #sub-nav #joy-link a {
    background-position: -335px -156px;
  }

  #page-joy #sub-nav #joy-link a:hover {
    background-position: -501px 0px;
  }

  #sub-nav #joy-link a:hover {
    width: 85px;
    height: 134px;
    background-position: -501px 0px;
  }

  #sub-nav #tsunagalink-link a {
    bottom: 0;
    left: 180px;
    background-image: url(/assets/img/sprite.png);
    background-position: -586px -86px;
    width: 85px;
    height: 86px;
  }

  #page-tsunagalink #sub-nav #tsunagalink-link a {
    background-position: -586px -172px;
  }

  #page-tsunagalink #sub-nav #tsunagalink-link a:hover {
    background-position: -335px 0px;
  }

  #sub-nav #tsunagalink-link a:hover {
    width: 85px;
    height: 156px;
    background-position: -335px 0px;
  }

  #sub-nav #instagram-link a {
    bottom: 0;
    left: 270px;
    background-image: url(/assets/img/sprite.png);
    background-position: -353px -386px;
    width: 85px;
    height: 86px;
  }

  #sub-nav #instagram-link a:hover {
    width: 144px;
    height: 110px;
    background-position: 0px 0px;
  }

  #page-cervenka #sub-nav #tsunagalink-link a {
    background-position: -586px -172px;
  }

  #page-cervenka #sub-nav #tsunagalink-link a:hover {
    background-position: -335px 0px;
  }

  #page-morichara #sub-nav #serialization-link a {
    background-position: -438px -386px;
  }

  #page-morichara #sub-nav #serialization-link a:hover {
    background-position: 0px -110px;
  }
}
@media screen and (max-width: 767px) {
  #gnav {
    width: 100%;
    z-index: 1;
  }

  #gnav ul {
    margin: 0 auto;
    padding: 9.375% 4.6875% 0;
  }

  #gnav ul:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  #gnav li {
    position: relative;
    float: left;
    width: 46.5517241379%;
    margin-right: 6.8965517241%;
    padding-bottom: 0.3448275862%;
  }

  #gnav li img {
    vertical-align: top;
  }

  #gnav li:after {
    display: block;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-top: 0.7407407407%;
    background: url("/assets/img/bg_header-nav-separator_sp.png") repeat-x 0 0;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #gnav li:nth-child(1), #gnav li:nth-child(2) {
    padding-top: 0.3448275862%;
  }

  #gnav li:nth-child(1):before, #gnav li:nth-child(2):before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 0.7407407407%;
    background: url("/assets/img/bg_header-nav-separator_sp.png") repeat-x 0 0;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #gnav li:nth-child(2n) {
    margin-right: 0;
  }

  #gnav a {
    display: block;
  }

  .open #gnav {
    height: auto;
  }

  #sub-nav {
    width: 100%;
    margin-top: -2.1875%;
    z-index: 2;
    -webkit-transition: all 300ms;
    -moz-transition: all 300ms;
    -ms-transition: all 300ms;
    -o-transition: all 300ms;
    transition: all 300ms;
  }

  #sub-nav ul {
    position: relative;
    padding-top: 81.25%;
  }

  #sub-nav li {
    position: absolute;
    top: 0;
    width: 100%;
    margin: 0;
  }

  #sub-nav a {
    position: absolute;
    display: block;
    text-indent: -9999px;
    font-size: 0;
  }

  .open #sub-nav {
    display: block;
  }

  #sub-nav #serialization-link a {
    left: 6.25%;
    padding-top: 40.9375%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 35.3629976581% 0%;
    width: 45.625%;
    background-size: 392.465753425% 398.473282443%;
  }

  #sub-nav #joy-link {
    margin-top: 13.75%;
    z-index: 2;
  }

  #sub-nav #joy-link a {
    left: 53.125%;
    padding-top: 39.0625%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 34.2569269521%;
    width: 28.125%;
    background-size: 636.666666667% 417.6%;
  }

  #sub-nav #tsunagalink-link {
    margin-top: 33.4375%;
  }

  #sub-nav #tsunagalink-link a {
    left: 27.5%;
    padding-top: 41.5625%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 61.6326530612% 0%;
    width: 25.9375%;
    background-size: 690.361445783% 392.481203008%;
  }

  #sub-nav #instagram-link {
    margin-top: 47.8125%;
  }

  #sub-nav #instagram-link a {
    left: 67.1875%;
    padding-top: 33.4375%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 38.854805726% 32.7710843373%;
    width: 26.25%;
    background-size: 682.142857143% 487.85046729%;
  }

  .lang-link {
    width: 100%;
    margin-top: 4.6875%;
    padding-bottom: 4.6875%;
  }

  .lang-link ul {
    width: 90.625%;
    margin: 0 auto;
  }

  .lang-link ul:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
  }

  .lang-link li {
    float: left;
    width: 46.5517241379%;
    font-size: 4.0625vw;
    line-height: 1;
    margin-right: 6.8965517241%;
  }

  .lang-link li:nth-child(2n) {
    margin-right: 0;
  }

  .lang-link a {
    display: block;
    padding: 0.7692307692em 0.7692307692em 0.7692307692em;
    border: #fff solid 0.0769230769em;
    -webkit-border-radius: 0.3846153846em;
    -moz-border-radius: 0.3846153846em;
    border-radius: 0.3846153846em;
    color: #fff;
  }

  .lang-link a:before {
    display: inline-block;
    content: "";
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 75.9717314488% 47.4609375%;
    width: 2.1875%;
    background-size: 8185.71428571% 5220%;
    width: 0.5384615385em;
    margin-right: 0.3846153846em;
    padding-top: 0.7692307692em;
  }

  .sp-nav-button {
    width: 100%;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: none;
  }

  .sp-nav-button span {
    position: absolute;
    top: 0;
    right: 3.125%;
    display: block;
    width: 5.3125%;
    margin-top: 8.75%;
    padding-top: 0.9375%;
    background-color: #fff;
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
    -webkit-transition: all 300ms;
    -moz-transition: all 300ms;
    -ms-transition: all 300ms;
    -o-transition: all 300ms;
    transition: all 300ms;
  }

  .sp-nav-button span:before, .sp-nav-button span:after {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 17.6470588235%;
    background-color: #fff;
    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;
    -webkit-transition: all 300ms;
    -moz-transition: all 300ms;
    -ms-transition: all 300ms;
    -o-transition: all 300ms;
    transition: all 300ms;
  }

  .sp-nav-button span:before {
    margin-top: -35.2941176471%;
  }

  .sp-nav-button span:after {
    margin-top: 35.2941176471%;
  }
}
@media screen and (min-width: 768px) {
  .section-title, #page-title {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 900px;
    margin: -35px auto 40px;
    padding: 14px 0 12px;
    border: solid 4px #f0375e;
    border-radius: 10px;
    color: #f0375e;
    font-size: 3.8em;
    line-height: 1;
    text-align: center;
    background-color: #fff;
  }

  .section-title:before, #page-title:before {
    position: absolute;
    display: block;
    content: "";
  }

  .icon-chara01:before {
    top: -112px;
    left: 410px;
    background-image: url(/assets/img/sprite.png);
    background-position: -238px -139px;
    width: 85px;
    height: 112px;
  }

  .icon-chara02:before {
    top: -116px;
    left: 414px;
    background-image: url(/assets/img/sprite.png);
    background-position: -137px -386px;
    width: 67px;
    height: 121px;
  }

  .icon-chara03:before {
    top: -119px;
    left: 415px;
    background-image: url(/assets/img/sprite.png);
    background-position: -204px -386px;
    width: 64px;
    height: 115px;
  }

  .icon-chara04:before {
    top: -107px;
    left: 413px;
    background-image: url(/assets/img/sprite.png);
    background-position: -586px -258px;
    width: 69px;
    height: 103px;
  }

  .icon-chara05:before {
    top: -71px;
    left: 415px;
    background-image: url(/assets/img/sprite.png);
    background-position: -523px -386px;
    width: 63px;
    height: 70px;
  }

  .icon-chara06:before {
    top: -99px;
    left: 407px;
    background-image: url(/assets/img/sprite.png);
    background-position: -90px -258px;
    width: 96px;
    height: 95px;
  }

  .icon-chara07:before {
    top: -114px;
    left: 418px;
    background-image: url(/assets/img/sprite.png);
    background-position: -586px -361px;
    width: 61px;
    height: 110px;
  }

  .icon-chara08:before {
    top: -113px;
    left: 401px;
    background-image: url(/assets/img/sprite.png);
    background-position: 0px -258px;
    width: 90px;
    height: 128px;
  }

  .icon-chara09:before {
    top: -98px;
    left: 287px;
    background-image: url(/assets/img/sprite.png);
    background-position: 0px -386px;
    width: 69px;
    height: 134px;
  }

  .icon-chara10:before {
    top: -125px;
    left: 283px;
    background-image: url(/assets/img/sprite.png);
    background-position: -144px 0px;
    width: 94px;
    height: 144px;
  }

  .icon-chara11:before {
    top: -124px;
    left: 423px;
    background-image: url(/assets/img/sprite.png);
    background-position: -95px -110px;
    width: 47px;
    height: 120px;
  }

  .icon-chara12:before {
    top: -112px;
    left: 407px;
    background-image: url(/assets/img/sprite.png);
    background-position: -144px -144px;
    width: 79px;
    height: 108px;
  }

  .icon-chara13:before {
    top: -129px;
    left: 412px;
    background-image: url(/assets/img/sprite.png);
    background-position: -69px -386px;
    width: 68px;
    height: 125px;
  }

  .icon-chara14:before {
    top: -93px;
    left: 399px;
    background-image: url(/assets/img/sprite.png);
    background-position: -186px -258px;
    width: 95px;
    height: 95px;
  }

  .icon-chara15:before {
    top: -127px;
    left: 398px;
    background-image: url(/assets/img/sprite.png);
    background-position: -238px 0px;
    width: 97px;
    height: 139px;
  }

  .icon-chara16:before {
    top: -124px;
    left: 404px;
    background-image: url(/assets/img/sprite.png);
    background-position: -501px -257px;
    width: 82px;
    height: 120px;
  }

  .icon-chara17:before {
    top: -127px;
    left: 406px;
    background-image: url(/assets/img/sprite.png);
    background-position: -501px -134px;
    width: 80px;
    height: 123px;
  }
}
@media screen and (max-width: 767px) {
  .section-title, #page-title {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 12.0833333333em;
    margin: -0.8333333333em auto 0.7916666667em;
    padding: 0.1666666667em 0.625em;
    border: solid 0.125em #f0375e;
    border-radius: 0.25em;
    color: #f0375e;
    font-size: 7.5vw;
    line-height: 1.1666666667;
    text-align: center;
    background-color: #fff;
  }

  .section-title:before, #page-title:before {
    position: absolute;
    top: 0;
    display: block;
    content: "";
  }

  .inner .section-title, .inner #page-title {
    width: 100%;
  }

  .section-title.sp-two-line, #page-title.sp-two-line {
    margin-top: -1.4166666667em;
  }

  .icon-chara01:before {
    left: 42.2535211268%;
    margin-top: -23.7676056338%;
    padding-top: 2.7916666667em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 20.30651341% 83.0769230769%;
    width: 17.9577464789%;
    background-size: 1123.52941176% 779.104477612%;
  }

  .icon-chara02:before {
    left: 42.9577464789%;
    margin-top: -24.6478873239%;
    padding-top: 3.0416666667em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 89.6810506567% 70.6013363029%;
    width: 14.0845070423%;
    background-size: 1432.5% 715.068493151%;
  }

  .icon-chara03:before {
    left: 42.2535211268%;
    margin-top: -27.9929577465%;
    padding-top: 3.2083333333em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 90.1886792453% 17.9775280899%;
    width: 15.1408450704%;
    background-size: 1332.55813953% 677.922077922%;
  }

  .icon-chara04:before {
    left: 40.4929577465%;
    margin-top: -24.823943662%;
    padding-top: 2.8333333333em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 90.5303030303% 53.7444933921%;
    width: 15.8450704225%;
    background-size: 1273.33333333% 767.647058824%;
  }

  .icon-chara05:before {
    left: 42.6056338028%;
    margin-top: -16.3732394366%;
    padding-top: 1.9166666667em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 41.054613936% 79.4117647059%;
    width: 14.7887323944%;
    background-size: 1364.28571429% 1134.7826087%;
  }

  .icon-chara06:before {
    left: 39.0845070423%;
    margin-top: -22.5352112676%;
    padding-top: 2.5416666667em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 51.07421875% 57.7006507592%;
    width: 21.4788732394%;
    background-size: 939.344262295% 855.737704918%;
  }

  .icon-chara07:before {
    left: 42.9577464789%;
    margin-top: -25.3521126761%;
    padding-top: 2.875em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 0%;
    width: 14.4366197183%;
    background-size: 1397.56097561% 756.52173913%;
  }

  .icon-chara08:before {
    left: 40.1408450704%;
    margin-top: -24.6478873239%;
    padding-top: 3.2916666667em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 58.413926499% 31.151241535%;
    width: 19.7183098592%;
    background-size: 1023.21428571% 660.759493671%;
  }

  .icon-chara09:before {
    left: 17.2535211268%;
    margin-top: -22.1830985915%;
    padding-top: 3.5416666667em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 0% 86.4988558352%;
    width: 15.8450704225%;
    background-size: 1273.33333333% 614.117647059%;
  }

  .icon-chara10:before {
    left: 16.5492957746%;
    margin-top: -24.2957746479%;
    padding-top: 3.25em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 28.3524904215% 59.9099099099%;
    width: 17.9577464789%;
    background-size: 1123.52941176% 669.230769231%;
  }

  .icon-chara11:before {
    left: 44.014084507%;
    margin-top: -29.5774647887%;
    padding-top: 3.375em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 98.3364140481% 16.7800453515%;
    width: 11.2676056338%;
    background-size: 1790.625% 644.444444444%;
  }

  .icon-chara12:before {
    left: 40.8450704225%;
    margin-top: -26.7605633803%;
    padding-top: 3.0416666667em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 39.1930835735% 59.2427616927%;
    width: 18.485915493%;
    background-size: 1091.42857143% 715.068493151%;
  }

  .icon-chara13:before {
    left: 43.3098591549%;
    margin-top: -28.1690140845%;
    padding-top: 3.2083333333em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 89.8496240602% 36.404494382%;
    width: 14.4366197183%;
    background-size: 1397.56097561% 677.922077922%;
  }

  .icon-chara14:before {
    left: 39.7887323944%;
    margin-top: -20.2464788732%;
    padding-top: 2.4166666667em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 63.7159533074% 57.3275862069%;
    width: 20.7746478873%;
    background-size: 971.186440678% 900%;
  }

  .icon-chara15:before {
    left: 40.4929577465%;
    margin-top: -25.176056338%;
    padding-top: 3.25em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 17.1483622351% 59.9099099099%;
    width: 19.014084507%;
    background-size: 1061.11111111% 669.230769231%;
  }

  .icon-chara16:before {
    left: 4.7916666667em;
    margin-top: -3.2083333333em;
    padding-top: 3.0833333333em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 9.5785440613% 84.375%;
    width: 17.9577464789%;
    background-size: 1123.52941176% 705.405405405%;
  }

  .icon-chara17:before {
    left: 4.6666666667em;
    margin-top: -3.25em;
    padding-top: 3.125em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 91.2213740458% 0%;
    width: 17.2535211268%;
    background-size: 1169.3877551% 696%;
  }
}
@media screen and (min-width: 768px) {
  #menu {
    float: left;
    width: 260px;
    margin: 0 50px 0 0;
  }

  #menu ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
  }

  #menu li {
    margin-bottom: 10px;
    font-size: 1.6em;
    line-height: 1;
  }

  #menu li a {
    position: relative;
    display: block;
    padding: 11px 5px 9px 45px;
    border: #f0375e solid 4px;
    border-radius: 21px;
    color: #000;
    text-decoration: none;
    background-color: #fff;
  }

  #menu li a:before {
    position: absolute;
    top: 7px;
    left: 15px;
    display: inline-block;
    content: "";
    background-image: url(/assets/img/sprite.png);
    background-position: -647px -405px;
    width: 22px;
    height: 22px;
  }

  #menu li a:hover {
    background-color: #ffcccc;
  }

  #menu .current a {
    color: #fff;
    background-color: #f0375e;
  }

  #menu .current a:before {
    background-position: -647px -383px;
  }

  #menu .current a:hover {
    color: #fff;
    background-color: #f0375e;
  }

  #menu .special {
    margin-bottom: 15px;
    padding-bottom: 17px;
    background: url("/assets/img/bg_dot-separator03.png") 0 100% repeat-x;
  }

  #menu .game {
    margin-top: 15px;
    margin-bottom: 0;
    padding-top: 17px;
    background: url("/assets/img/bg_dot-separator03.png") 0 0 repeat-x;
  }

  #menu .back-link {
    margin: 15px 0 0;
    padding: 15px 10px 0;
    background: url("/assets/img/bg_dot-separator03.png") 0 0 repeat-x;
  }

  #menu .back-link a {
    position: relative;
    display: inline-block;
    padding-left: 15px;
    font-size: 1.5em;
    line-height: 1.4;
  }

  #menu .back-link a:before {
    position: absolute;
    top: 3px;
    left: 0;
    display: inline-block;
    content: "";
    background-image: url(/assets/img/sprite.png);
    background-position: -648px -497px;
    width: 7px;
    height: 14px;
  }

  #menu .back-link a:hover:before {
    background-position: -641px -497px;
  }

  .menu-link a {
    position: relative;
    display: block;
    padding: 11px 5px 9px 45px;
    border: #f58800 solid 4px;
    border-radius: 21px;
    color: #111111;
    text-decoration: none;
    background-color: #fff;
  }

  .menu-link a:before {
    position: absolute;
    top: 7px;
    left: 15px;
    display: inline-block;
    content: "";
    background-image: url(../img/sprite_old.png);
    background-position: -80px -297px;
    width: 22px;
    height: 22px;
  }

  .menu-link a:hover {
    color: #fff;
    background-color: #f58800;
  }

  .menu-link a:hover:before {
    background-image: url(../img/sprite_old.png);
    background-position: -348px -215px;
    width: 22px;
    height: 22px;
  }
}
@media screen and (max-width: 767px) {
  #menu {
    margin: 0;
  }

  #menu li {
    margin-bottom: 0.5em;
    font-size: 4.375vw;
    line-height: 1;
  }

  #menu li a {
    position: relative;
    display: block;
    font-size: 1em;
    padding: 0.7142857143em 0 0.7142857143em 2.7142857143em;
    border: #f0375e solid 0.2142857143em;
    border-radius: 1.4285714286em;
    color: #000;
    text-decoration: none;
    background-color: #fff;
  }

  #menu li a:before {
    position: absolute;
    top: 0;
    left: 0.9285714286em;
    display: inline-block;
    content: "";
    width: 1.4285714286em;
    margin-top: 0.5em;
    padding-top: 1.4285714286em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 16.0940325497% 69.5219123506%;
    background-size: 2865% 2610%;
  }

  #menu .current a {
    color: #fff;
    background-color: #f0375e;
  }

  #menu .current a:before {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 65.6419529837% 38.2470119522%;
    background-size: 2865% 2610%;
  }

  #menu .special {
    position: relative;
    margin-bottom: 4.4827586207%;
    padding-bottom: 4.8275862069%;
  }

  #menu .special:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 0.6896551724%;
    background: url("/assets/img/bg_dot-separator03_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #menu .game {
    position: relative;
    margin-top: 4.8275862069%;
    margin-bottom: 0;
    padding-top: 4.1379310345%;
  }

  #menu .game:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 0.6896551724%;
    background: url("/assets/img/bg_dot-separator03_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #menu .back-link {
    position: relative;
    margin: 4.4827586207% 0 0;
    padding: 5.8620689655% 0 0;
  }

  #menu .back-link:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 0.6896551724%;
    background: url("/assets/img/bg_dot-separator03_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #menu .back-link a {
    position: relative;
    display: inline-block;
    padding-left: 6.8965517241%;
    font-size: 4.0625vw;
    line-height: 1.1538461539;
  }

  #menu .back-link a:before {
    position: absolute;
    left: 0;
    display: inline-block;
    content: "";
    width: 5.2816901409%;
    padding-top: 5.2816901409%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 73.476702509% 47.9289940828%;
    background-size: 3820% 3480%;
  }

  #menu.scenario-menu {
    width: 90.625%;
    margin-top: 11.5625%;
    margin-right: auto;
    margin-left: auto;
  }

  .menu-link a {
    position: relative;
    display: block;
    padding: 11px 5px 9px 45px;
    border: #f58800 solid 4px;
    border-radius: 21px;
    color: #111111;
    text-decoration: none;
    background-color: #fff;
  }

  .menu-link a:before {
    position: absolute;
    top: 7px;
    left: 15px;
    display: inline-block;
    content: "";
    background-image: url(../img/sprite_old.png);
    background-position: -80px -297px;
    width: 22px;
    height: 22px;
  }

  .menu-link a:hover {
    color: #fff;
    background-color: #f58800;
  }

  .menu-link a:hover:before {
    background-image: url(../img/sprite_old.png);
    background-position: -348px -215px;
    width: 22px;
    height: 22px;
  }
}
@media screen and (min-width: 768px) {
  .more-link {
    text-align: right;
    font-size: 1.8em;
    line-height: 1;
  }

  .more-link a {
    display: inline-block;
    text-decoration: none;
  }

  .more-link a:before {
    display: inline-block;
    content: "";
    margin: 0 8px 0 0;
    vertical-align: top;
    background-image: url(/assets/img/sprite.png);
    background-position: -113px -230px;
    width: 18px;
    height: 18px;
  }

  .more-link a:hover:before {
    background-position: -647px -449px;
  }

  .ellipse-link a {
    padding: 10px 20px;
    border: #00ddff solid 1px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
  }

  .ellipse-link a:hover {
    color: #000;
    background: #00ddff;
  }

  .ellipse-link a:hover:before {
    background-position: -482px -351px;
  }

  .simple-link {
    font-size: 1.5em;
  }

  .simple-link a:before {
    margin: 0 8px 0 0;
    display: inline-block;
    content: "";
    vertical-align: text-top;
    background-image: url(/assets/img/sprite.png);
    background-position: -648px -497px;
    width: 7px;
    height: 14px;
  }

  .simple-link a:hover:before {
    background-position: -641px -497px;
  }

  .return-link {
    margin-top: 63px;
    text-align: center;
    line-height: 1;
  }

  .return-link a {
    font-size: 1.8em;
    display: inline-block;
    text-decoration: none;
  }

  .return-link a:before {
    display: inline-block;
    content: "";
    margin: 0 4px 0 0;
    vertical-align: top;
    background-image: url(/assets/img/sprite.png);
    background-position: -464px -351px;
    width: 18px;
    height: 18px;
  }

  .return-link a:hover:before {
    background-position: -95px -230px;
  }

  .rounded-link {
    width: 260px;
    margin: 60px auto 0;
    font-size: 1.8em;
    line-height: 1;
  }

  .rounded-link a {
    position: relative;
    display: block;
    padding: 10px 5px 8px 45px;
    border: #ee7755 solid 4px;
    border-radius: 21px;
    text-decoration: none;
    background-color: #fff;
  }

  .rounded-link a:before {
    position: absolute;
    top: 7px;
    left: 15px;
    display: inline-block;
    content: "";
    background-image: url(../img/sprite_old.png);
    background-position: -216px -215px;
    width: 22px;
    height: 22px;
  }

  .rounded-link a:hover {
    color: #fff;
    background-color: #ee7755;
  }

  .rounded-link a:hover:before {
    background-image: url(../img/sprite_old.png);
    background-position: -348px -215px;
    width: 22px;
    height: 22px;
  }
}
@media screen and (max-width: 767px) {
  .more-link {
    text-align: right;
    font-size: 4.6875vw;
    line-height: 1;
  }

  .more-link a {
    display: inline-block;
    text-decoration: none;
  }

  .more-link a:before {
    display: inline-block;
    content: "";
    margin: 0 0.2666666667em 0 0;
    vertical-align: top;
    width: 1em;
    height: 1em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 81.7204301075% 43.7869822485%;
    background-size: 3820% 3480%;
  }

  .ellipse-link {
    text-align: center;
    font-size: 4.6875vw;
  }

  .ellipse-link a {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0.6em 1.7333333333em 0.6em 3em;
    border: #00ddff solid 0.0666666667em;
    -webkit-border-radius: 1.1333333333em;
    -moz-border-radius: 1.1333333333em;
    border-radius: 1.1333333333em;
  }

  .ellipse-link a:before {
    top: 0;
    left: 1.7333333333em;
    margin-top: 0.6em;
    position: absolute;
  }

  .simple-link {
    font-size: 4.0625vw;
  }

  .simple-link a:before {
    display: inline-block;
    margin: 0 2.0689655172% 0 0;
    content: "";
    width: 0.4615384615em;
    height: 0.7692307692em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 75.1953125%;
    background-size: 9550% 5220%;
  }

  .return-link {
    margin-top: 1.9230769231em;
    font-size: 4.0625vw;
    text-align: center;
    line-height: 1;
    font-weight: bold;
  }

  .return-link a {
    text-decoration: none;
    font-size: 1em;
    line-height: 1.1538461539;
  }

  .return-link a:before {
    display: inline-block;
    vertical-align: top;
    margin: 0 0.3076923077em 0 0;
    content: "";
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 73.476702509% 47.9289940828%;
    background-size: 3820% 3480%;
    width: 1.1538461539em;
    height: 1.1538461539em;
  }

  .rounded-link {
    width: 260px;
    margin: 60px auto 0;
    font-size: 1.8em;
    line-height: 1;
  }

  .rounded-link a {
    position: relative;
    display: block;
    padding: 10px 5px 8px 45px;
    border: #ee7755 solid 4px;
    border-radius: 21px;
    text-decoration: none;
    background-color: #fff;
  }

  .rounded-link a:before {
    position: absolute;
    top: 7px;
    left: 15px;
    display: inline-block;
    content: "";
    background-image: url(../img/sprite_old.png);
    background-position: -216px -215px;
    width: 22px;
    height: 22px;
  }

  .rounded-link a:hover {
    color: #fff;
    background-color: #ee7755;
  }

  .rounded-link a:hover:before {
    background-image: url(../img/sprite_old.png);
    background-position: -348px -215px;
    width: 22px;
    height: 22px;
  }
}
@media screen and (min-width: 768px) {
  .image-hover a {
    display: block;
  }

  .image-hover a:hover .hover {
    display: block;
  }

  .image-hover a:hover .image img {
    border-radius: 20px;
  }

  .image-hover .image {
    position: relative;
    overflow: hidden;
  }

  .image-hover .image img {
    border-radius: 15px;
  }

  .image-hover .hover {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    border: #ffee00 solid 7px;
    z-index: 2;
    background: rgba(0, 0, 0, 0.6) url("/assets/img/bg_hover-arrow.png") center center no-repeat;
    border-radius: 15px;
  }

  .image-hover02 {
    position: relative;
    display: inline-block;
  }

  .image-hover02 img {
    border-radius: 15px;
  }

  .image-hover02:hover img {
    border-radius: 20px;
  }

  .image-hover02:hover .hover {
    display: block;
  }

  .image-hover02 .hover {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    border: #ffee00 solid 7px;
    z-index: 2;
    background: rgba(0, 0, 0, 0.6) url("/assets/img/bg_hover-arrow.png") center center no-repeat;
    border-radius: 15px;
  }

  .rounded-image img {
    border-radius: 15px;
  }
}
@media screen and (min-width: 768px) {
  .otanoshimi-list {
    width: 952px;
    margin: 0;
    padding: 0;
    list-style-type: none;
  }

  .otanoshimi-list li {
    float: left;
    width: 424px;
    margin-right: 52px;
    margin-bottom: 56px;
    text-align: center;
  }

  .otanoshimi-list li.comingsoon .image {
    overflow: hidden;
  }

  .otanoshimi-list li.comingsoon .image img {
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
  }

  .otanoshimi-list a {
    width: 280px;
    height: 210px;
  }

  .otanoshimi-list .hover {
    width: 266px;
    height: 196px;
  }

  .otanoshimi-list .image {
    width: 280px;
    height: 210px;
    margin: 0 auto 25px;
  }

  .otanoshimi-list .image img {
    width: 100%;
    height: auto;
  }

  .otanoshimi-list .name {
    color: #ffee00;
    font-size: 2.8em;
    line-height: 1.3;
  }

  .otanoshimi-list .name span {
    display: block;
    font-size: 0.6428571429em;
    line-height: 1.4444444444;
  }

  .otanoshimi-list .name .kl, .otanoshimi-list .name .kr {
    display: inline-block;
    font-size: 1em;
    line-height: 1.3;
  }

  .otanoshimi-list .name .kl {
    margin-left: -0.5em;
  }

  .otanoshimi-list .name .kr {
    margin-right: -0.5em;
  }

  .otanoshimi-list .summary {
    padding: 0 5px;
  }

  .otanoshimi-list .summary p {
    margin-top: 11px;
    font-size: 1.4em;
    line-height: 1.5714285714;
  }

  .otanoshimi-list .sp-none .attention {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .otanoshimi-list li {
    margin-bottom: 12.7586206897%;
  }

  .otanoshimi-list li.comingsoon {
    display: none;
  }

  .otanoshimi-list .hover {
    display: none;
  }

  .otanoshimi-list .image {
    margin: 0 auto 5.1724137931%;
    overflow: hidden;
    -webkit-border-radius: 2.34375vw;
    -moz-border-radius: 2.34375vw;
    border-radius: 2.34375vw;
  }

  .otanoshimi-list .name {
    color: #ffee00;
    font-size: 7.8125vw;
    line-height: 1.24;
  }

  .otanoshimi-list .name span {
    display: block;
    margin-bottom: 0.1333333333em;
    font-size: 4.6875vw;
    line-height: 1.4;
  }

  .otanoshimi-list .name .kl, .otanoshimi-list .name .kr {
    display: inline-block;
    font-size: 7.8125vw;
    line-height: 1.24;
  }

  .otanoshimi-list .summary {
    margin-top: 3.1034482759%;
  }

  .otanoshimi-list .sp-none .attention {
    display: none;
  }

  .ios .otanoshimi-list .sp-none .attention, .android .otanoshimi-list .sp-none .attention {
    display: block;
    color: #f0375e;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }
}
@media screen and (min-width: 768px) {
  /*#page-abmarche #sub-nav #joy-link a {
     background-position: -335px -156px;
   }
   #page-abmarche #sub-nav #joy-link a:hover {
     background-position: -501px 0px;
   }*/
  #page-abmarche .mb10 {
    margin-bottom: 10px;
  }

  #page-abmarche .mb40 {
    margin-bottom: 40px;
  }

  #page-abmarche #contents {
    padding-top: 156px;
    padding-bottom: 203px;
  }

  #page-abmarche #contents .inner {
    overflow: hidden;
  }

  #page-abmarche #page-title {
    margin: 0;
    padding: 0;
  }

  #page-abmarche #article-contents .inner {
    padding-top: 0px;
  }

  #page-abmarche #article-contents .number-title {
    overflow: hidden;
    margin-bottom: 19px;
    padding-top: 77px;
  }

  #page-abmarche #article-contents .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 62px;
    margin-right: 12px;
    padding: 10px 15px;
    font-size: 2em;
    line-height: 1;
    color: #fff;
    text-align: center;
    border-radius: 8px;
    background: #2266bb;
  }

  #page-abmarche #article-contents .number:before {
    position: absolute;
    top: -37px;
    left: 50%;
    display: inline-block;
    content: "";
    margin-left: -28px;
    background-image: url(/assets/img/sprite.png);
    background-position: -586px -471px;
    width: 55px;
    height: 40px;
  }

  #page-abmarche #article-contents .current-title {
    float: left;
    overflow: hidden;
    margin-top: 1px;
    margin-bottom: -5px;
    font-size: 2.7em;
    line-height: 1.4074074074;
    font-weight: bold;
  }

  #page-abmarche #article-contents .current-title ruby {
    ruby-position: before;
    ruby-align: center;
    margin: 0;
    padding: 0;
  }

  #page-abmarche #article-contents .current-title span {
    font-size: 0.8em;
  }

  #page-abmarche #article-contents .lead-text {
    font-size: 1.8em;
  }

  #page-abmarche #article-contents .lead-text span {
    font-size: 0.8em;
  }

  #page-abmarche #article-contents .lead-text em {
    font-weight: bold;
    font-style: normal;
  }

  #page-abmarche #article-contents p {
    margin: 1em 0;
    font-size: 1.6em;
    line-height: 1.6875;
  }

  #page-abmarche #article-contents .sub-text {
    margin: 40px 50px;
    padding: 20px;
    border: #f0375e dotted 3px;
    font-size: 1.8em;
    overflow: hidden;
  }

  #page-abmarche #article-contents .sub-text em {
    font-weight: bold;
    font-style: normal;
    color: #ffee00;
  }

  #page-abmarche #article-contents .sub-text .simple-link {
    display: inline-block;
    margin-top: 6px;
    font-size: 1em;
  }

  #page-abmarche #article-contents .sub-text .photo {
    margin-right: 20px;
    float: left;
  }

  #page-abmarche #article-contents .sub-text .text {
    float: left;
  }

  #page-abmarche #article-contents .sub-text .text em {
    font-size: 1.2em;
    font-weight: bold;
    color: #ffee00;
  }

  #page-abmarche #article-contents .sub-text .text span {
    font-size: 0.8em;
  }

  #page-abmarche #article-contents .sub-text2 {
    margin-top: 0;
  }

  #page-abmarche #article-contents .movie-text {
    font-size: 1.6em;
    line-height: 1.2em;
    margin-top: 40px;
    margin-left: 90px;
  }

  #page-abmarche #article-contents .sub-title {
    margin: 6px 0 16px;
    font-size: 2.4em;
    font-weight: bold;
    line-height: 1.5833333333;
    color: #ffee00;
  }

  #page-abmarche #article-contents .main-image {
    margin: 40px 0 0;
    text-align: center;
  }

  #page-abmarche #article-contents .main-image-subtext {
    margin: 7px 50px 40px;
    font-size: 1.1em;
    color: #777;
    text-align: right;
  }

  #page-abmarche #article-contents .smalltext {
    margin: 0;
    font-size: 1.1em;
    color: #777;
    text-align: right;
  }

  #page-abmarche #article-contents .sub-image {
    margin: 40px 0 40px;
    text-align: center;
  }

  #page-abmarche #article-contents .youtube {
    margin: 40px 0 0;
    text-align: center;
  }

  #page-abmarche #article-contents .youtube2 {
    margin: 5px 0 40px;
    text-align: center;
  }

  #page-abmarche #article-contents .smalltext-youtube {
    margin: -10px 0 0;
    font-size: 1.1em;
    color: #777;
    text-align: left;
  }

  #page-abmarche #article-contents .sub-title-50 {
    margin: 50px 0 0;
    font-size: 2.4em;
    font-weight: bold;
    line-height: 1.4em;
    color: #ffee00;
  }

  #page-abmarche #article-contents .text-image-area {
    margin: 20px 0 0;
    overflow: hidden;
    zoom: 1;
  }

  #page-abmarche #article-contents .text-image-area .image-right {
    margin: 0;
    text-align: right;
    float: right;
    width: 465px;
  }

  #page-abmarche #article-contents .text-image-area .image-right02 {
    margin: 0;
    text-align: right;
    float: right;
  }

  #page-abmarche #article-contents .text-image-area .text-left {
    margin: -6px 0 0;
    float: left;
    width: 435px;
  }

  #page-abmarche #article-contents .text-image-area .text-left .textbottom {
    margin-top: 30px;
  }

  #page-abmarche #article-contents .text-image-area .image-left {
    margin: 0;
    text-align: left;
    float: left;
    width: 465px;
  }

  #page-abmarche #article-contents .text-image-area .image-left02 {
    margin: 0;
    text-align: left;
    float: left;
  }

  #page-abmarche #article-contents .text-image-area .text-right {
    margin: -6px 0 0;
    float: right;
    width: 435px;
  }

  #page-abmarche #article-contents .sub-area-dotline {
    margin: 50px 50px 0;
    padding: 30px;
    border: #f0375e dotted 3px;
    overflow: hidden;
    zoom: 1;
  }

  #page-abmarche #article-contents .sub-area-dotline .title {
    margin: 0 0 20px;
    font-size: 2em;
    font-weight: bold;
    color: #ffee00;
  }

  #page-abmarche #article-contents .sub-area-dotline .image-right {
    margin: 0;
    text-align: right;
    float: right;
    width: 382px;
  }

  #page-abmarche #article-contents .sub-area-dotline .text-left {
    margin: -6px 0 0;
    float: left;
    width: 352px;
  }

  #page-abmarche #article-contents .ptop20 {
    padding: 20px 0 0 0;
  }

  #page-abmarche #article-contents .caption-center {
    margin: 40px 0 -20px;
    text-align: center;
    font-size: 1.4em;
    color: #777777;
  }
}
@media screen and (max-width: 767px) {
  /*#page-abmarche #sub-nav #joy-link a, .dokoikun-popup #sub-nav #joy-link a {
     background-image: url(/assets/img/sprite-sp.png);
     background-position: 19.66873706% 34.2569269521%;
     width: 28.125%;
     background-size: 636.666666667% 417.6%;
   }*/
  #page-abmarche #contents {
    padding-top: 28.125%;
    padding-bottom: 50.9375%;
  }

  #page-abmarche #contents .inner {
    overflow: hidden;
  }

  #page-abmarche #dokoikun-page-title {
    width: 84.4827586207%;
  }

  #page-abmarche #menu {
    width: 90.625%;
    margin: 9.375% auto 0;
  }

  #page-abmarche #article-contents .inner {
    padding-top: 80px;
    padding-bottom: 140px;
  }

  #page-abmarche #article-contents .number-title {
    overflow: hidden;
    margin-bottom: 4.4827586207%;
    padding-top: 9.6551724138%;
  }

  #page-abmarche #article-contents .number {
    position: relative;
    float: left;
    display: inline-block;
    min-width: 13.1034482759%;
    margin-right: 3.4482758621%;
    padding: 2.4137931034% 5.1724137931%;
    color: #fff;
    font-weight: bold;
    font-size: 4.375vw;
    line-height: 1;
    text-align: center;
    border-radius: 1.25vw;
    background: #2266bb;
  }

  #page-abmarche #article-contents .number:before {
    position: absolute;
    top: -2em;
    left: 50%;
    display: inline-block;
    content: "";
    margin-left: -1.5em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 56.8738229755% 45.1219512195%;
    width: 13.125%;
    background-size: 1364.28571429% 1740%;
    width: 3em;
    height: 2.1428571429em;
  }

  #page-abmarche #article-contents .current-title {
    float: left;
    overflow: hidden;
    width: 73.1034482759%;
    margin-bottom: -0.1944444444em;
    padding-top: 0.0555555556em;
    font-size: 5.625vw;
    line-height: 1.3333333333;
    font-weight: bold;
  }

  #page-abmarche #article-contents .current-title ruby {
    ruby-position: before;
    ruby-align: center;
    margin: 0;
    padding: 0;
  }

  #page-abmarche #article-contents .current-title span {
    font-size: 0.8em;
  }

  #page-abmarche #article-contents .lead-text span {
    font-size: 0.8em;
  }

  #page-abmarche #article-contents .lead-text em {
    font-weight: bold;
    font-style: normal;
  }

  #page-abmarche #article-contents p {
    margin: 1em 0;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
  }

  #page-abmarche #article-contents .sub-text {
    margin: 6.8965517241% 0;
    padding: 3.4482758621%;
    border: #f0375e dotted 2px;
    font-size: 3.4375vw;
    overflow: hidden;
  }

  #page-abmarche #article-contents .sub-text em {
    font-weight: bold;
    font-style: normal;
    color: #ffee00;
  }

  #page-abmarche #article-contents .sub-text .simple-link {
    display: block;
    margin-top: 0.4545454545em;
    font-size: 3.4375vw;
  }

  #page-abmarche #article-contents .sub-text .photo {
    float: left;
    width: 29.9625468165%;
    margin-left: 1.872659176%;
    margin-right: 3.7453183521%;
  }

  #page-abmarche #article-contents .sub-text .text {
    float: left;
    width: 60.6741573034%;
    margin-right: 1.872659176%;
    font-size: 3.75vw;
  }

  #page-abmarche #article-contents .sub-text .text em {
    font-size: 4.375vw;
    font-weight: bold;
    color: #ffee00;
  }

  #page-abmarche #article-contents .sub-text .text span {
    font-size: 3.4375vw;
  }

  #page-abmarche #article-contents .sub-text2 {
    margin-top: 0;
  }

  #page-abmarche #article-contents .movie-text {
    margin-top: 1.8181818182em;
    font-size: 3.4375vw;
    line-height: 1.3636363636;
  }

  #page-abmarche #article-contents .sub-title {
    margin: 1.1875em 0 0.5em;
    font-weight: bold;
    font-size: 5vw;
    line-height: 1.3125;
    color: #ffee00;
  }

  #page-abmarche #article-contents .main-image {
    margin: 6.8965517241% 0 0;
    text-align: center;
  }

  #page-abmarche #article-contents .main-image-subtext {
    margin: 0.5em 0 2em -1em;
    font-size: 3.125vw;
    color: #777;
    text-indent: 1em;
  }

  #page-abmarche #article-contents .smalltext {
    margin: 0 0 0 -1em;
    font-size: 3.4375vw;
    color: #777;
    text-indent: 1em;
  }

  #page-abmarche #article-contents .sub-image {
    margin: 6.8965517241% 0;
    text-align: center;
  }

  #page-abmarche #article-contents .youtube {
    margin: 6.8965517241% 0 0;
    text-align: center;
  }

  #page-abmarche #article-contents .youtube2 {
    margin: 1.0344827586% 0 6.8965517241%;
    position: relative;
    width: 100%;
    padding-top: 56.2068965517%;
  }

  #page-abmarche #article-contents .youtube2 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    vertical-align: top;
  }

  #page-abmarche #article-contents .smalltext-youtube {
    margin: 0.4545454545em 0 0;
    font-size: 3.4375vw;
    color: #777;
    text-align: left;
  }

  #page-abmarche #article-contents .sub-title-50 {
    margin: 1.5625em 0 0;
    font-weight: bold;
    font-size: 5vw;
    line-height: 1.3125;
    color: #ffee00;
  }

  #page-abmarche #article-contents .text-image-area {
    margin: 2.4137931034% 0 9.3103448276%;
    overflow: hidden;
    zoom: 1;
  }

  #page-abmarche #article-contents .text-image-area .origin-image {
    width: auto;
    vertical-align: middle;
  }

  #page-abmarche #article-contents .text-image-area .image-right {
    margin: 3.7931034483% 0 0;
  }

  #page-abmarche #article-contents .text-image-area .image-right02 {
    margin: 3.7931034483% 0 0;
  }

  #page-abmarche #article-contents .text-image-area .text-left .textbottom {
    margin-top: 30px;
  }

  #page-abmarche #article-contents .text-image-area .image-left {
    margin: 3.7931034483% 0 0;
  }

  #page-abmarche #article-contents .text-image-area .image-left02 {
    margin: 3.7931034483% 0 0;
  }

  #page-abmarche #article-contents .sub-area-dotline {
    margin: 10.3448275862% 0 0;
    padding: 4.4827586207% 4.1379310345% 5.1724137931% 5.1724137931%;
    border: #f0375e dotted 2px;
    overflow: hidden;
    zoom: 1;
  }

  #page-abmarche #article-contents .sub-area-dotline .title {
    margin: 0 0 0.4666666667em;
    font-weight: bold;
    font-size: 4.6875vw;
    line-height: 1.3333333333;
    color: #ffee00;
  }

  #page-abmarche #article-contents .sub-area-dotline .image-right {
    margin: 4.2307692308% 0 0;
  }

  #page-abmarche #article-contents .caption-center {
    margin: 2em 0 -1em;
    text-align: center;
    font-size: 3.125vw;
    color: #777777;
  }

  #page-abmarche .dokoikun-sp-only-image a {
    display: inline-block;
  }

  #page-abmarche .dokoikun-sp-only-image a:nth-child(1) {
    width: 23.4482758621%;
  }

  #page-abmarche .dokoikun-sp-only-image a:nth-child(2) {
    width: 42.0689655172%;
  }

  #page-abmarche .dokoikun-sp-only-image a:nth-child(3) {
    width: 34.4827586207%;
  }
}
@media screen and (min-width: 768px) {
  #page-top {
    position: fixed;
    bottom: 40px;
    right: 40px;
  }

  #page-top-link {
    display: block;
    text-indent: -9999px;
    background-image: url(/assets/img/sprite.png);
    background-position: -420px -141px;
    width: 81px;
    height: 141px;
    z-index: 100;
  }

  #page-top-link:hover {
    background-position: -420px 0px;
  }
}
@media screen and (max-width: 767px) {
  #page-top {
    position: fixed;
    right: 3.28125vw;
    bottom: 3.125vw;
    width: 19.0625%;
  }

  #page-top-link {
    display: block;
    text-indent: -9999px;
    font-size: 0;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 76.171875% 32.7014218009%;
    width: 19.0625%;
    background-size: 939.344262295% 522%;
    width: 100%;
    padding-top: 163.93442623%;
    z-index: 100;
  }
}
#page-header #main-nav:after, #sub-nav ul:after, #artist-popup article #copy_area dl:after, #joy-popup article #copy_area dl:after, #morichara-popup article #copy_area dl:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

@media screen and (min-width: 768px) {
  #pspe {
    margin-right: 5px;
    margin-bottom: 5px;
  }

  .pb6 {
    padding-bottom: 6px;
  }

  .pb8 {
    padding-bottom: 8px;
  }

  .pb12 {
    padding-bottom: 12px;
  }

  .pb16 {
    padding-bottom: 16px;
  }

  .pb18 {
    padding-bottom: 18px;
  }

  .pb21 {
    padding-bottom: 21px;
  }

  .pb20 {
    padding-bottom: 20px;
  }

  .pb28 {
    padding-bottom: 28px;
  }

  .pb36 {
    padding-bottom: 36px;
  }

  .pb40 {
    padding-bottom: 40px;
  }

  .pb50 {
    padding-bottom: 50px;
  }

  .w12 {
    width: 12px;
  }

  .w14 {
    width: 14px;
  }

  .w15 {
    width: 15px;
  }

  .w30 {
    width: 30px;
  }

  .w200 {
    width: 200px;
  }

  .w204 {
    width: 204px;
  }

  .w277 {
    width: 277px;
  }

  .h12 {
    height: 12px;
  }

  .h20 {
    height: 20px;
  }

  .h28 {
    height: 28px;
  }

  .h36 {
    height: 36px;
  }

  .h50 {
    height: 50px;
  }

  .pr3 {
    margin: 0px;
    padding-right: 3px;
  }

  .pr14 {
    margin: 0px;
    padding-right: 14px;
  }

  .pl38 {
    margin: 0px;
    padding-left: 38px;
  }

  .pl56 {
    margin: 0px;
    padding-left: 56px;
  }

  .pt4 {
    margin: 0px;
    padding-top: 4px;
  }

  .pt10 {
    margin: 0px;
    padding-top: 10px;
  }

  .pt20 {
    margin: 0px;
    padding-top: 20px;
  }

  .lm12 {
    margin-left: 12px;
  }

  .lm14 {
    margin-left: 14px;
  }

  .lm15 {
    margin-left: 15px;
  }

  .lm18 {
    margin-left: 18px;
  }

  .lm20 {
    margin-left: 20px;
  }

  .mb20 {
    margin-bottom: 20px;
  }

  .lm54 {
    margin-left: 54px;
  }

  #copyright {
    margin: 0;
    padding: 21px 0 20px;
    font-family: Arial;
    color: #fff;
    text-align: center;
    line-height: 1;
    background-color: #9326ae;
  }

  #copyright small {
    font-size: 1.1em;
  }

  .popup-base {
    min-width: inherit !important;
  }

  .popup-base header {
    position: relative;
    padding: 15px 0;
    width: 100%;
    background: #f0375e;
  }

  .popup-base header:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    height: 4px;
    background: url(/assets/img/bg_pink_dot.png) 0 0 repeat-x;
  }

  .popup-base header:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    height: 4px;
    background: url(/assets/img/bg_pink_dot.png) 0 0 repeat-x;
  }

  .popup-base header .inner {
    position: relative;
    width: auto;
    max-width: 900px;
    margin: 0 auto;
  }

  .popup-base header h1 {
    margin: 0 0 0 20px;
    padding: 0;
  }

  .popup-base header #close-button {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -9px;
    color: #fff;
    font-size: 1.4em;
    line-height: 18px;
  }

  .popup-base header #close-button a {
    display: inline-block;
    cursor: pointer;
    color: #fff;
  }

  .popup-base header #close-button a:hover {
    text-decoration: underline;
  }

  .popup-base header #close-button a:before {
    display: inline-block;
    content: "";
    margin-top: -1px;
    margin-right: 6px;
    vertical-align: top;
    width: 18px;
    height: 18px;
    background: url("/assets/img/sprite/ico_close.png") no-repeat 0 0;
  }

  .popup-base article {
    padding: 1px 0 50px;
  }

  #artist-popup article .inner, #joy-popup article .inner {
    position: relative;
    width: auto;
    max-width: 740px;
    margin: 0 auto;
  }

  #artist-popup article #artist-name, #joy-popup article #artist-name {
    position: relative;
    color: #fff;
    font-size: 3em;
    line-height: 1.3333333333;
    min-height: 55px;
    margin: 41px 0 38px;
    padding-bottom: 12px;
    padding-left: 75px;
    background: url("/assets/img/bg_dot-separator02.png") 0 100% repeat-x;
  }

  #artist-popup article #artist-name:before, #joy-popup article #artist-name:before {
    position: absolute;
    top: -12px;
    left: 0;
    display: inline-block;
    content: "";
    width: 61px;
    height: 60px;
    vertical-align: middle;
    margin-right: 14px;
    background-image: url(../img/sprite/ico_ab01.png);
  }

  #artist-popup article #copy_area dl, #joy-popup article #copy_area dl {
    margin: 0 21px -12px;
    font-size: 1.6em;
    line-height: 1.4;
    color: #fff;
  }

  #artist-popup article #copy_area dt, #joy-popup article #copy_area dt {
    clear: left;
    float: left;
    width: 113px;
    margin-right: 16px;
    margin-bottom: 15px;
    font-weight: bold;
    line-height: 1.4;
    color: #66ff00;
  }

  #artist-popup article #copy_area dd, #joy-popup article #copy_area dd {
    float: left;
    width: 569px;
    margin: 0 0 12px;
    line-height: 1.4;
  }

  #artist-popup article #sample, #joy-popup article #sample {
    width: 642px;
    margin: 35px 0 0;
    padding: 44px;
    border: #f0375e solid 5px;
    border-radius: 15px;
    background-color: #fff;
  }

  #joy-popup article {
    padding: 50px 0;
    background: #fff;
  }

  #joy-popup article .inner {
    max-width: none;
    width: 900px;
    text-align: center;
  }

  #joy-popup #game-area {
    text-align: center;
  }

  #joy-popup iframe {
    margin: 0 auto;
    padding: 0;
    border: none;
  }

  #joy-popup iframe#karamikuji {
    width: 800px;
    height: 640px;
  }

  #joy-popup iframe#sm_uranai {
    width: 860px;
    height: 580px;
  }

  #morichara-popup article {
    padding-bottom: 80px;
  }

  #morichara-popup .page-title {
    width: 276px;
    height: 132px;
    margin: 27px auto 18px;
    text-align: center;
  }

  #morichara-popup .popup-content {
    position: relative;
    width: 900px;
  }

  #morichara-popup .popup-content .main-content {
    width: 600px;
    height: 542px;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
  }

  #morichara-popup .popup-content .prev {
    position: absolute;
    top: 50%;
    left: 55px;
    width: 45px;
    height: 77px;
    margin-top: -39px;
  }

  #morichara-popup .popup-content .prev a {
    display: block;
    text-indent: -9999px;
    background-image: url(../img/morichara/sprite.png);
    background-position: -578px -154px;
    width: 45px;
    height: 77px;
  }

  #morichara-popup .popup-content .prev a:hover {
    background-image: url(../img/morichara/sprite.png);
    background-position: -578px -231px;
    width: 45px;
    height: 77px;
  }

  #morichara-popup .popup-content .next {
    position: absolute;
    top: 50%;
    right: 55px;
    width: 45px;
    height: 77px;
    margin-top: -39px;
  }

  #morichara-popup .popup-content .next a {
    display: block;
    text-indent: -9999px;
    background-image: url(../img/morichara/sprite.png);
    background-position: -578px 0px;
    width: 45px;
    height: 77px;
  }

  #morichara-popup .popup-content .next a:hover {
    background-image: url(../img/morichara/sprite.png);
    background-position: -578px -77px;
    width: 45px;
    height: 77px;
  }
}
@media screen and (max-width: 767px) {
  #artist-popup article .inner {
    position: relative;
    width: 90.625%;
    margin: 0 auto;
    padding-top: 7.8125%;
  }

  #artist-popup article .artist-name-wrapper {
    position: relative;
    width: 100%;
    display: table;
    margin-bottom: 5.5172413793%;
    padding-bottom: 3.1034482759%;
  }

  #artist-popup article .artist-name-wrapper:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    padding-top: 1.0344827586%;
    background: url("/assets/img/bg_dot-separator02_sp.png") 0 0 repeat-x;
    -webkit-background-size: contain;
    background-size: contain;
  }

  #artist-popup article #artist-name {
    position: relative;
    display: table-cell;
    height: 2.4em;
    padding-left: 2.4em;
    color: #fff;
    font-size: 6.25vw;
    line-height: 1.2;
    vertical-align: middle;
  }

  #artist-popup article #artist-name:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    content: "";
    margin-top: -1em;
    margin-right: 3.1034482759%;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 100% 63.6929460581%;
    background-size: 1397.56097561% 1305%;
    width: 2.05em;
    padding-top: 2em;
  }

  #artist-popup article #copy_area dl {
    font-size: 4.0625vw;
  }

  #artist-popup article #copy_area dt {
    font-weight: bold;
    line-height: 1.5384615385;
    color: #66ff00;
  }

  #artist-popup article #copy_area dd {
    margin: 0 0 0.9230769231em;
    line-height: 1.5384615385;
    color: #fff;
    word-wrap: break-word;
  }

  #artist-popup article #copy_area dd a {
    word-wrap: break-word;
  }

  #artist-popup article #sample {
    margin: 35px 0 0;
    padding: 3.4482758621%;
    border: #f0375e solid 0.78125vw;
    border-radius: 2.34375vw;
    background-color: #fff;
  }

  #morichara-popup .page-title {
    width: 43.125%;
    margin: 6.25% auto 4.375%;
    text-align: center;
  }

  .popup-base article {
    padding: 18.75% 0 53.125%;
  }

  #morichara-popup article img {
    width: 100%;
    height: auto;
  }

  #morichara-popup .popup-content {
    position: relative;
  }

  #morichara-popup .popup-content .main-content {
    width: 93.75%;
    margin: 0 auto;
    text-align: center;
  }

  #morichara-popup .navigation {
    overflow: hidden;
    position: relative;
    margin: 5.3125% 6.5625% 0;
  }

  #morichara-popup .navigation div {
    position: relative;
    width: 9.3525179856%;
    padding-top: 15.8273381295%;
  }

  #morichara-popup .navigation a {
    position: absolute;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-background-size: contain;
    background-size: contain;
    text-indent: -9999px;
    font-size: 0;
  }

  #morichara-popup .popup-content .prev {
    float: left;
  }

  #morichara-popup .popup-content .prev a {
    background-image: url(../img/morichara/ico_prev_sp.png);
  }

  #morichara-popup .popup-content .next {
    float: right;
  }

  #morichara-popup .popup-content .next a {
    background-image: url(../img/morichara/ico_next_sp.png);
  }

  .forSP {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  #select-menu {
    margin-top: 30px;
  }

  #select-menu select {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    width: 100%;
    padding: 0 45px 0 14px;
    color: #111;
    font-size: 1.6em;
    height: 50px;
    line-height: 1;
    border: #888 solid 1px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff url("/assets/img/joy/rakko/bg_select.png") no-repeat 100% 50%;
  }

  #select-menu select::-ms-expand {
    display: none;
  }

  :root #select-menu select {
    padding-right: 0\0 ;
    background: #fff\0 ;
  }
}
@media all and (-ms-high-contrast: none) {
  :root #select-menu select {
    padding-right: 45px\0 ;
    background: #fff url("/assets/img/joy/rakko/bg_select.png") no-repeat 100% 50% \0 ;
  }
}
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, :root #select-menu select {
    padding-right: 45px\0 ;
    background: #fff url("/assets/img/joy/rakko/bg_select.png") no-repeat 100% 50% \0 ;
  }
}
@media screen and (max-width: 767px) {
  #select-menu {
    margin-top: 7.6923076923%;
  }

  #select-menu select {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    width: 100%;
    padding-left: 0.6923076923em;
    padding-right: 2.6153846154em;
    color: #111;
    font-size: 4.0625vw;
    line-height: 2.9230769231;
    border: #888 solid 0.0769230769em;
    -webkit-border-radius: 0.2307692308em;
    -moz-border-radius: 0.2307692308em;
    border-radius: 0.2307692308em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff url("/assets/img/joy/rakko/bg_select_sp.png") no-repeat 100% 50%;
    -webkit-background-size: 7.34375vw 11.875vw;
    background-size: 7.34375vw 11.875vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima #sub-nav #joy-link a {
    background-position: -335px -156px;
  }

  #page-mima #sub-nav #joy-link a:hover {
    background-position: -501px 0px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima #sub-nav #joy-link a {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 19.66873706% 34.2569269521%;
    width: 28.125%;
    background-size: 636.6666666667% 417.6%;
  }
}
#page-mima #contents {
  font-family: "Hiragino Maru Gothic ProN W4", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-header {
    width: 960px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-header {
    padding-top: 29.375vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-header .contents-title {
    padding-top: 100px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-header .contents-title {
    margin: 0 3.125vw;
  }
}
#page-mima .contents-header .contents-lead {
  box-sizing: border-box;
  text-align: center;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-header .contents-lead {
    width: 952px;
    height: 117px;
    margin-top: -19px;
    padding: 31px 81px 0 68px;
    font-weight: bold;
    font-size: 2.1em;
    line-height: 1.7142857143;
    background: url("/assets/img/mima/bg_header-lead.png");
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-header .contents-lead {
    width: 100%;
    height: 36.25vw;
    margin-top: -2.96875vw;
    padding: 6.25vw 4.6875vw 0;
    font-size: 3em;
    line-height: 1.4;
    background: url("/assets/img/mima/bg_header-lead_sp.png");
    background-size: contain;
  }
}
#page-mima .place-name {
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  #page-mima .place-name {
    margin-top: 32px;
    font-size: 2.5em;
    line-height: 1.44;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .place-name {
    margin-top: 7.8125vw;
    font-size: 5.9375vw;
    line-height: 1;
  }
}
#page-mima .place-name::before {
  display: inline-block;
  content: "●";
}

@media screen and (min-width: 768px) {
  #page-mima .place-description {
    margin-top: 4px;
    font-size: 1.8em;
    line-height: 1.4444444444;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .place-description {
    margin-top: 3.75vw;
    font-size: 4.0625vw;
    line-height: 1.6153846154;
  }
}
#page-mima .place-address {
  color: #e4831a;
}

@media screen and (min-width: 768px) {
  #page-mima .place-address {
    margin-top: 5px;
    font-size: 1.8em;
    line-height: 1.4444444444;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .place-address {
    margin-top: 2.1875vw;
    font-size: 4.0625vw;
    line-height: 1.6153846154;
  }
}
#page-mima .place-address::before {
  display: inline-block;
  content: "";
}

@media screen and (min-width: 768px) {
  #page-mima .place-address::before {
    width: 20px;
    height: 30px;
    margin-right: 7px;
    background: url("/assets/img/mima/ico_place.png") 0 0 no-repeat;
    vertical-align: bottom;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .place-address::before {
    width: 4.53125vw;
    height: 6.71875vw;
    margin-right: 1.5625vw;
    background: url("/assets/img/mima/ico_place_sp.png") 0 0 no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
    vertical-align: middle;
  }
}
#page-mima .place-link {
  position: relative;
  display: inline-block;
  color: #f0375e;
}

@media screen and (min-width: 768px) {
  #page-mima .place-link {
    margin-top: 12px;
    font-size: 1.8em;
    line-height: 1;
  }

  #page-mima .place-link:hover {
    color: #00deff;
  }

  #page-mima .place-link:hover::before {
    background-image: url(/assets/img/sprite.png);
    background-position: -113px -230px;
    width: 18px;
    height: 18px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .place-link {
    margin-top: 3.125vw;
    font-size: 4.0625vw;
    line-height: 1;
  }
}
#page-mima .place-link::before {
  display: inline-block;
  content: "";
  vertical-align: top;
}

@media screen and (min-width: 768px) {
  #page-mima .place-link::before {
    margin-right: 5px;
    width: 18px;
    height: 18px;
    background: url("/assets/img/mima/ico_link.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .place-link::before {
    width: 4.6875vw;
    height: 4.6875vw;
    margin-top: -0.3125vw;
    margin-right: 1.5625vw;
    background: url("/assets/img/mima/ico_link_sp.png") 0 0 no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
  }
}
#page-mima .contents-content01 {
  position: relative;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content01 {
    width: 930px;
    margin: 30px auto 0;
    padding-left: 30px;
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 {
    margin: 0 4.6875vw;
    padding-top: 12.5vw;
  }
}
#page-mima .contents-content01::before {
  display: block;
  content: "";
  position: absolute;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content01::before {
    top: 0;
    left: 30px;
    width: 900px;
    height: 11px;
    background: url("/assets/img/mima/bg_separator01.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01::before {
    top: 5.9375vw;
    left: 0;
    width: 90.3125vw;
    height: 1.71875vw;
    background: url("/assets/img/mima/bg_separator01_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 p {
    font-size: 1.8em;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 p {
    padding: 0 0.15625vw;
    font-size: 4.0625vw;
    line-height: 1.6153846154;
  }
}
#page-mima .contents-content01 .place-link {
  color: #00deff;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .place-link::before {
    background-image: url(/assets/img/sprite.png);
    background-position: -113px -230px;
    width: 18px;
    height: 18px;
  }

  #page-mima .contents-content01 .place-link:hover {
    color: #66ff00;
  }

  #page-mima .contents-content01 .place-link:hover::before {
    background-position: -647px -449px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .place-link::before {
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 81.7204301075% 43.7869822485%;
    width: 4.6875%;
    background-size: 3820% 3480%;
    width: 4.6875vw;
    height: 4.6875vw;
  }
}
#page-mima .contents-content01 .contents-content-block01 {
  position: relative;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block01 {
    padding-top: 35px;
    padding-bottom: 57px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block01 {
    padding-bottom: 11.5625vw;
  }
}
#page-mima .contents-content01 .contents-content-block01::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block01::after {
    left: 19px;
    width: 856px;
    height: 34px;
    background: url("/assets/img/mima/bg_separator02.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block01::after {
    left: 0;
    width: 95.3125vw;
    height: 5.3125vw;
    background: url("/assets/img/mima/bg_separator02_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block01 p {
    margin-left: 2px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block01 .image-block {
    display: flex;
    justify-content: space-between;
    margin: 6.5625vw 9.6875vw 0;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block01 .image-item {
    position: absolute;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block01 .image-item {
    width: 32.5vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block01 .image-item01 {
    top: 30px;
    right: 87px;
    z-index: 2;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block01 .image-item02 {
    top: 131px;
    right: 40px;
  }
}
#page-mima .contents-content01 .contents-content-block02 {
  position: relative;
}

#page-mima .contents-content01 .contents-content-block02::after {
  position: absolute;
  display: block;
  content: "";
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block02::after {
    bottom: 0;
    left: 30px;
    width: 856px;
    height: 34px;
    background: url("/assets/img/mima/bg_separator02.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block02::after {
    bottom: 4.0625vw;
    left: 0;
    width: 95.3125vw;
    height: 5.3125vw;
    background: url("/assets/img/mima/bg_separator02_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block02 {
    padding-bottom: 66px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block02 {
    padding-bottom: 11.5625vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block02 .image-block {
    overflow: hidden;
    margin-top: 32px;
    margin-left: 34px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block02 .image-block {
    display: flex;
    flex-wrap: wrap;
    margin: 4.6875vw 7.1875vw 0;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block02 .image-item {
    float: left;
    margin-right: 50px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block02 .image-item {
    margin-bottom: 6.25vw;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block02 .image-item03 {
    width: 34.375vw;
    margin-right: 6.25vw;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block02 .image-item04 {
    width: 34.375vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block02 .image-item05 {
    margin-top: 74px;
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content01 .contents-content-block02 .image-item05 {
    width: 45.625vw;
    margin-left: 15vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block02 .place-description {
    margin-top: 12px;
    line-height: 1.8333333333;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content01 .contents-content-block02 .place-address {
    margin-top: 14px;
  }
}
#page-mima .contents-content02 {
  background-color: #ffcc99;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content02 .contents-content-inner {
    width: 900px;
    margin: 0 auto;
    padding: 14px 0 12px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content02 .contents-content-inner {
    width: 96.875vw;
    margin: 0 auto;
    padding: 2.96875vw 0;
  }
}
#page-mima .contents-content03 {
  position: relative;
}

@media screen and (max-width: 767px) {
  #page-mima .contents-content03 {
    overflow: hidden;
  }
}
#page-mima .contents-content03 em {
  font-style: normal;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-header {
    width: 900px;
    margin: 0 auto;
    padding: 84px 0 64px 7px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-header {
    padding: 9.375vw 0 6.09375vw;
  }
}
#page-mima .contents-content03 .contents-content-header .img-mimamima {
  position: absolute;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-header .img-mimamima01 {
    top: 57px;
    left: 50%;
    margin-left: 206px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-header .img-mimamima01 {
    top: 19.53125vw;
    right: 0;
    width: 31.875vw;
    height: 51.25vw;
  }
}
#page-mima .contents-content03 .contents-content-header .img-mimamima02 {
  z-index: 1;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-header .img-mimamima02 {
    top: 313px;
    left: 50%;
    margin-left: 164px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-header .img-mimamima02 {
    top: 53.28125vw;
    right: 6.5625vw;
    width: 31.25vw;
    height: 19.53125vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-header-inner {
    width: 840px;
    height: 229px;
    background: url("/assets/img/mima/bg_content03-header.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-header-inner {
    box-sizing: border-box;
    width: 72.8125vw;
    height: 46.09375vw;
    padding-top: 7.8125vw;
    background: url("/assets/img/mima/bg_content03-header_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .content03-lead-text {
    padding-top: 60px;
    padding-left: 77px;
    font-size: 2.356em;
    line-height: 1.4995755518;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .content03-lead-text {
    margin-left: 4.0625vw;
    font-size: 4.6875vw;
    line-height: 1.3333333333;
  }
}
#page-mima .contents-content03 .contents-content-inner {
  position: relative;
  background-color: #bfdfff;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-inner {
    padding: 23px 0 20px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-inner {
    padding: 3.125vw 1.5625vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block-wrapper {
    overflow: hidden;
    width: 900px;
    margin: 0 auto;
    border-radius: 10px;
    padding-bottom: 30px;
    background: #feeaee url("/assets/img/mima/bg_stripe.png") 0 0 repeat-y;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block-wrapper {
    padding: 0 3.125vw 6.25vw;
    border-radius: 2.34375vw;
    background: #feeaee url("/assets/img/mima/bg_stripe_sp.png") 0 0 repeat-y;
    background-size: contain;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block {
    padding-left: 27px;
  }
}
#page-mima .contents-content03 .contents-content-block01 .mima-block01 {
  position: relative;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01 {
    padding-top: 222px;
    padding-bottom: 39px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01 {
    padding: 50vw 0 7.5vw;
  }
}
#page-mima .contents-content03 .contents-content-block01 .mima-block01::after {
  display: block;
  content: "";
  position: absolute;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01::after {
    bottom: 0;
    left: -18px;
    width: 875px;
    height: 10px;
    background: url("/assets/img/mima/bg_separator03.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01::after {
    bottom: 0;
    left: -0.78125vw;
    width: 91.875vw;
    height: 1.5625vw;
    background: url("/assets/img/mima/bg_separator03_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01 .image-block {
    position: absolute;
    top: 67px;
    left: 346px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01 .image-block {
    display: flex;
    margin: 0 4.53125vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01 .image-item {
    float: left;
    margin-right: 8px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01 .image-item {
    margin-top: 4.6875vw;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01 .image-item06 {
    width: 41.71875vw;
    margin-right: 4.6875vw;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block01 .image-item07 {
    width: 35vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .feel {
    top: 5px;
    left: -13px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .feel {
    top: 3.28125vw;
    left: 0;
    width: 74.21875vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 {
    padding-top: 203px;
    padding-bottom: 64px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 {
    position: relative;
    padding-bottom: 11.5625vw;
  }
}
#page-mima .contents-content03 .contents-content-block01 .mima-block02::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02::after {
    width: 840px;
    height: 34px;
    background: url("/assets/img/mima/bg_separator04.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02::after {
    width: 90.625vw;
    height: 5.3125vw;
    background: url("/assets/img/mima/bg_separator04_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .place-name {
    margin-top: 5.9375vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .image-block {
    position: absolute;
    top: 28px;
    left: 11px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .image-block {
    display: flex;
    flex-wrap: wrap;
    margin: 0 2.8125vw 0 2.96875vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .image-item {
    float: left;
    margin-right: 46px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .image-item {
    margin-top: 4.6875vw;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .image-item08 {
    width: 40vw;
    margin-right: 4.6875vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .image-item09 {
    margin-right: 47px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .image-item09 {
    width: 40.15625vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .image-item10 {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block01 .mima-block02 .image-item10 {
    width: 34.0625vw;
    margin-left: 25.3125vw;
  }
}
#page-mima .contents-content03 .contents-content-block02 {
  position: relative;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 {
    padding-bottom: 65px;
  }
}
#page-mima .contents-content03 .contents-content-block02::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02::after {
    left: 29px;
    width: 840px;
    height: 34px;
    background: url("/assets/img/mima/bg_separator06.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02::after {
    left: 0;
    width: 90.625vw;
    height: 5.3125vw;
    background: url("/assets/img/mima/bg_separator06_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01 {
    padding-top: 420px;
    padding-bottom: 41px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01 {
    position: relative;
    padding: 80.9375vw 0 7.8125vw;
  }
}
#page-mima .contents-content03 .contents-content-block02 .mima-block01::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01::after {
    left: -19px;
    width: 875px;
    height: 9px;
    background: url("/assets/img/mima/bg_separator05.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01::after {
    left: -0.625vw;
    width: 91.875vw;
    height: 1.40625vw;
    background: url("/assets/img/mima/bg_separator05_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01 .image-block {
    position: absolute;
    top: 177px;
    left: -4px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01 .image-block {
    display: flex;
    justify-content: space-between;
    margin: 16.25vw 7.1875vw 0;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01 .image-item {
    float: left;
    margin-right: 11px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01 .image-item11 {
    width: 30.78125vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01 .image-item12 {
    margin-top: 66px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block01 .image-item12 {
    margin-top: 10.3125vw;
    width: 40.78125vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .feel {
    top: 28px;
    left: 325px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .feel {
    top: 6.09375vw;
    left: 2.03125vw;
    width: 84.53125vw;
  }
}
#page-mima .contents-content03 .contents-content-block02 .feel-text {
  position: absolute;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .feel-text {
    top: 45px;
    left: 21px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .feel-text {
    top: 60.9375vw;
    left: 2.8125vw;
  }
}
#page-mima .contents-content03 .contents-content-block02 .illustration01 {
  position: absolute;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .illustration01 {
    top: 278px;
    left: 488px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .illustration01 {
    right: -0.625vw;
    bottom: 41.5625vw;
    width: 52.1875vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block02 {
    padding-top: 242px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block02 {
    padding-bottom: 82.03125vw;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block02 .place-name {
    margin-top: 5.9375vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block02 .image-block {
    position: absolute;
    top: 30px;
    left: 343px;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block02 .image-item {
    float: left;
    margin-right: 19px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block02 .image-item {
    position: absolute;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block02 .image-item13 {
    width: 30.9375vw;
    bottom: 39.21875vw;
    left: 56.5625vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block02 .image-item14 {
    margin-top: 44px;
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .mima-block02 .image-item14 {
    width: 45.46875vw;
    bottom: 11.71875vw;
    left: 1.25vw;
  }
}
#page-mima .contents-content03 .contents-content-block02 .illustration {
  position: absolute;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .illustration02 {
    top: 58px;
    left: 4px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .illustration02 {
    width: 48.125vw;
    left: 3.59375vw;
    bottom: 50.46875vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block02 .illustration03 {
    top: 308px;
    left: 529px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block02 .illustration03 {
    width: 41.5625vw;
    left: 49.21875vw;
    bottom: 11.71875vw;
  }
}
#page-mima .contents-content03 .contents-content-block03 {
  position: relative;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 {
    padding-bottom: 63px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 {
    padding-bottom: 11.40625vw;
  }
}
#page-mima .contents-content03 .contents-content-block03::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03::after {
    left: 27px;
    width: 840px;
    height: 33px;
    background: url("/assets/img/mima/bg_separator07.png") 0 0 no-repeat;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03::after {
    left: 0;
    width: 90.625vw;
    height: 5.15625vw;
    background: url("/assets/img/mima/bg_separator07_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 {
    padding-top: 164px;
    padding-bottom: 344px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 {
    position: relative;
    padding-top: 92.1875vw;
    padding-bottom: 108.4375vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 .image-block {
    position: absolute;
    bottom: 0;
    left: -5px;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 .image-item {
    float: left;
    margin-right: 13px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 .image-item {
    position: absolute;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 .image-item15 {
    bottom: 54.6875vw;
    left: 1.25vw;
    width: 36.5625vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 .image-item16 {
    margin-top: 90px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 .image-item16 {
    bottom: 68.75vw;
    left: 42.5vw;
    width: 46.71875vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 .image-item17 {
    margin-top: 90px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block01 .image-item17 {
    bottom: 29.21875vw;
    left: 42.65625vw;
    width: 46.5625vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .feel {
    top: 23px;
    left: 337px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .feel {
    top: 6.40625vw;
    left: -1.5625vw;
    width: 93.4375vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .feel-text {
    top: 54px;
    left: 35px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .feel-text {
    top: 58.125vw;
    left: 4.0625vw;
    width: 82.1875vw;
  }
}
#page-mima .contents-content03 .contents-content-block03 .illustration04 {
  position: absolute;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .illustration04 {
    top: 470px;
    left: 276px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .illustration04 {
    left: 0.3125vw;
    bottom: 7.96875vw;
    width: 90vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block02 {
    margin-top: 60px;
  }
}
#page-mima .contents-content03 .contents-content-block03 .mima-block02 .mima-block-heading {
  color: #306cdb;
  text-align: center;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block02 .mima-block-heading {
    width: 884px;
    height: 80px;
    margin-left: -10px;
    padding-top: 30px;
    font-size: 3.8em;
    font-weight: bold;
    line-height: 1;
    background: url("/assets/img/mima/bg_mima-heading.png");
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block02 .mima-block-heading {
    box-sizing: border-box;
    width: 96.71875vw;
    height: 32.03125vw;
    margin-left: -2.1875vw;
    padding-top: 4.84375vw;
    font-size: 7.5vw;
    line-height: 1.375;
    background: url("/assets/img/mima/bg_mima-heading_sp.png");
    background-size: cover;
  }
}
#page-mima .contents-content03 .contents-content-block03 .mima-block02 .text-block p {
  color: #000000;
  text-align: center;
}

@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block02 .text-block p {
    margin-top: 1px;
    margin-bottom: 23px;
    font-size: 2.4em;
    line-height: 1.5833333333;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block02 .text-block p {
    width: 96.875vw;
    margin: 1.875vw -3.125vw 5vw;
    font-size: 4.6875vw;
    line-height: 1.6;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block02 .image-block {
    overflow: hidden;
    margin-left: 8px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block02 .image-block {
    width: 63.59375vw;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block02 .image-item {
    float: left;
    margin-right: 15px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .contents-content03 .contents-content-block03 .mima-block02 .image-item {
    margin-top: 4.6875vw;
  }
}
@media screen and (min-width: 768px) {
  #page-mima .contents-content03 .mima-block {
    position: relative;
  }
}
#page-mima .contents-content03 .place-name {
  color: #000000;
}

#page-mima .contents-content03 .place-description {
  color: #000000;
}

#page-mima .contents-content03 .feel {
  position: absolute;
}

#page-mima .contents-content03 .feel-text {
  position: absolute;
}

@media screen and (min-width: 768px) {
  #page-mima .epilogue {
    width: 900px;
    margin: 56px auto 215px;
    padding-left: 27px;
  }
}
@media screen and (max-width: 767px) {
  #page-mima .epilogue {
    width: 95vw;
    margin-top: 18.75vw;
    margin-left: 2.5vw;
    margin-bottom: 44.53125vw;
  }
}
#page-cupnyan #contents {
  padding-top: 206px;
}
@media screen and (max-width: 767px) {
  #page-cupnyan #contents {
    padding-top: 26.5625vw;
  }
}
#page-cupnyan .cupnyan-page-header {
  width: 900px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-page-header {
    width: 100%;
  }
}
#page-cupnyan .cupnyan-page-title {
  margin-top: 40px;
  color: #ffee00;
  font-size: 2.1em;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-page-title {
    margin: 5.15625vw 4.6875vw 0;
    font-size: 4.6875vw;
    line-height: 1.4666666667;
    text-align: left;
  }
}
#page-cupnyan .cupnyan-description {
  margin-top: 16px;
  margin-bottom: 35px;
  white-space: nowrap;
  font-size: 1.6em;
  line-height: 1.6875;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-description {
    margin: 2.5vw 4.6875vw 5.15625vw;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
    text-align: left;
    white-space: normal;
  }
}
#page-cupnyan .cupnyan-contents {
  width: 900px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-contents {
    width: 100%;
  }
}
#page-cupnyan .cupnyan-contents-item {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-contents-item {
    margin-top: 4.6875vw;
  }
}
#page-cupnyan .cupnyan-sns {
  margin-top: 38px;
  margin-bottom: 234px;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-sns {
    position: relative;
    width: 90.625vw;
    height: 48.75vw;
    margin: 6.25vw auto 50vw;
  }
}
#page-cupnyan .cupnyan-sns-heading {
  position: relative;
  width: 726px;
  margin: 0 auto -7px;
  padding-left: 174px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-sns-heading {
    width: 100%;
    margin: 0;
    padding: 0;
  }
}
#page-cupnyan .cupnyan-sns-box {
  position: relative;
  width: 900px;
  height: 208px;
  margin: 0 auto;
  background: url("/assets/img/cupnyan/bg_sns.png") 0 0 no-repeat;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-sns-box {
    position: static;
    width: 100%;
    height: auto;
    background: none;
  }
}
#page-cupnyan .cupnyan-sns-insta {
  position: absolute;
  top: 54px;
  left: 113px;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-sns-insta {
    top: 22.65625vw;
    left: 14.21875vw;
    width: 22.1875vw;
    height: 20.625vw;
    z-index: 1;
  }
}
#page-cupnyan .cupnyan-sns-twitter {
  position: absolute;
  top: 54px;
  left: 455px;
}
@media screen and (max-width: 767px) {
  #page-cupnyan .cupnyan-sns-twitter {
    top: 22.65625vw;
    left: 45.625vw;
    width: 30.9375vw;
    height: 20.625vw;
    z-index: 1;
  }
}
@media screen and (min-width: 768px) {
  #page-cupnyan .cupnyan-sns a:hover {
    opacity: 0.8;
  }
}

#page-tsubuno #contents {
  padding-top: 206px;
}
@media screen and (max-width: 767px) {
  #page-tsubuno #contents {
    padding-top: 26.5625vw;
  }
}
#page-tsubuno .tsubuno-page-header {
  width: 900px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  #page-tsubuno .tsubuno-page-header {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #page-tsubuno .tsubuno-mv {
    width: 90.625vw;
    margin: 0 auto;
  }
}
#page-tsubuno .tsubuno-page-title {
  margin-top: 40px;
  color: #ffee00;
  font-size: 2.1em;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #page-tsubuno .tsubuno-page-title {
    margin: 5.15625vw 4.6875vw 0;
    font-size: 4.6875vw;
    line-height: 1.4666666667;
    text-align: left;
  }
}
#page-tsubuno .tsubuno-description {
  margin-top: 16px;
  font-size: 1.6em;
  line-height: 1.6875;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #page-tsubuno .tsubuno-description {
    margin: 2.5vw 4.6875vw 0;
    font-size: 4.0625vw;
    line-height: 1.5384615385;
    text-align: left;
    white-space: normal;
  }
}
#page-tsubuno .tsubuno-comingsoon {
  width: 900px;
  margin: 55px auto 234px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #page-tsubuno .tsubuno-comingsoon {
    width: 100%;
    margin-top: 8.28125vw;
    margin-bottom: 50vw;
  }
}
@media screen and (max-width: 767px) {
  #page-tsubuno .tsubuno-comingsoon-image {
    width: 59.375vw;
    margin: 0 auto;
  }
}
#page-tsubuno .tsubuno-comingsoon-description {
  margin-top: 18px;
  margin-bottom: 32px;
  font-weight: 600;
  font-size: 2em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  #page-tsubuno .tsubuno-comingsoon-description {
    margin: 2.8125vw 4.6875vw 0;
    font-size: 4.6875vw;
    line-height: 1.6;
  }
}
@media screen and (min-width: 768px) {
  #page-tsubuno .original-character-link {
    margin-top: 12px;
  }
}
@media screen and (max-width: 767px) {
  #page-tsubuno .original-character-link {
    margin-top: 4.84375vw;
  }
}

@media screen and (min-width: 768px) {
  .original-character-link {
    position: relative;
    display: inline-block;
    color: #00deff;
    font-size: 1.8em;
    line-height: 1;
  }
  .original-character-link:hover {
    color: #66ff00;
  }
  .original-character-link:hover::before {
    background-position: -647px -449px;
  }
  .original-character-link::before {
    display: inline-block;
    content: "";
    vertical-align: top;
    margin-right: 8px;
    background-image: url(/assets/img/sprite.png);
    background-position: -113px -230px;
    width: 18px;
    height: 18px;
  }
}
@media screen and (max-width: 767px) {
  .original-character-link {
    display: inline-block;
    text-decoration: none;
    font-size: 4.6875vw;
    line-height: 1.2666666667;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0.4666666667em 2.2666666667em 0.4666666667em 3.6666666667em;
    border: #00ddff solid 0.0666666667em;
    -webkit-border-radius: 1.1333333333em;
    -moz-border-radius: 1.1333333333em;
    border-radius: 1.1333333333em;
  }
  .original-character-link::before {
    top: 0;
    left: 2.2em;
    position: absolute;
    display: inline-block;
    content: "";
    margin: 0.5666666667em 0.2666666667em 0 0;
    vertical-align: top;
    width: 1em;
    height: 1em;
    background-image: url(/assets/img/sprite-sp.png);
    background-position: 81.7204301075% 43.7869822485%;
    background-size: 3820% 3480%;
  }
}

@media screen and (max-width: 767px) {
  #page-character #contents {
    padding-top: 28.125%;
  }
}
@media screen and (max-width: 767px) {
  #page-character .section-title, #page-character #page-title {
    padding-top: 1.25vw;
    padding-bottom: 1.25vw;
    font-size: 7.5vw;
  }
}
@media screen and (min-width: 768px) {
  #page-character #chala-list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  #page-character #chala-list ul li {
    float: none;
  }
}
#page-character #article-header {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  #page-character #article-header {
    margin-bottom: 12.5vw;
  }
}
#page-character .internal-adjust01 {
  padding-top: 95px;
}
@media screen and (max-width: 767px) {
  #page-character .internal-adjust01 {
    padding-top: 18.75vw;
  }
}
#page-character .internal-adjust02 {
  padding-top: 153px;
}
@media screen and (max-width: 767px) {
  #page-character .internal-adjust02 {
    padding-top: 28.59375vw;
  }
}
#page-character .internal-adjust03 {
  padding-top: 156px;
}
@media screen and (max-width: 767px) {
  #page-character .internal-adjust03 {
    padding-top: 28.90625vw;
  }
}
#page-character .internal-nav {
  width: 900px;
  margin: 0 auto 80px;
}
#page-character .internal-nav:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}
@media screen and (max-width: 767px) {
  #page-character .internal-nav {
    width: 90.625vw;
    margin-bottom: 12.34375vw;
  }
}
#page-character .internal-nav-item {
  position: relative;
  float: left;
  width: 292px;
  margin-right: 12px;
  font-size: 1.8em;
  line-height: 1;
  z-index: 0;
}
#page-character .internal-nav-item:nth-last-child(1) {
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  #page-character .internal-nav-item {
    width: 100%;
    margin-bottom: 6.25vw;
    font-size: 4.375vw;
  }
  #page-character .internal-nav-item:nth-last-child(1) {
    margin-bottom: 0;
  }
}
#page-character .internal-nav a {
  display: block;
  padding: 9px 0 9px 45px;
  border: #f0375e 4px solid;
  border-radius: 22px;
  color: #000000;
  background-color: #ffffff;
}
@media screen and (max-width: 767px) {
  #page-character .internal-nav a {
    padding: 3.125vw 0 3.125vw 11.875vw;
    border-width: 0.9375vw;
  }
}
#page-character .internal-nav a::before {
  position: absolute;
  top: 11px;
  left: 19px;
  display: block;
  content: "";
  width: 22px;
  height: 22px;
  background: url("/assets/img/ico_arrow_down.png") 0 0 no-repeat;
}
@media screen and (max-width: 767px) {
  #page-character .internal-nav a::before {
    top: 2.8125vw;
    left: 4.0625vw;
    width: 6.25vw;
    height: 6.25vw;
    background: url("/assets/img/ico_arrow_down_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
#page-character .internal-nav a::after {
  position: absolute;
  display: block;
  content: "";
  z-index: -1;
}
@media screen and (max-width: 767px) {
  #page-character .internal-nav a::after {
    z-index: 1;
  }
}
@media screen and (min-width: 768px) {
  #page-character .internal-nav a:hover {
    background-color: #ffcccc;
  }
}
#page-character .internal-nav .icon-original a::after {
  top: -72px;
  left: 105px;
  width: 77px;
  height: 92px;
  background: url("/assets/img/ico_original.png") 0 0 no-repeat;
}
@media screen and (max-width: 767px) {
  #page-character .internal-nav .icon-original a::after {
    top: -2.8125vw;
    left: inherit;
    right: 7.96875vw;
    width: 11.875vw;
    height: 14.0625vw;
    background: url("/assets/img/ico_original_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
#page-character .internal-nav .icon-character a::after {
  top: -67px;
  left: 117px;
  width: 63px;
  height: 90px;
  background: url("/assets/img/ico_character.png") 0 0 no-repeat;
}
@media screen and (max-width: 767px) {
  #page-character .internal-nav .icon-character a::after {
    top: -3.75vw;
    left: inherit;
    right: 7.03125vw;
    width: 13.125vw;
    height: 15vw;
    background: url("/assets/img/ico_character_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
#page-character .internal-nav .icon-chalent a::after {
  top: -75px;
  left: 91px;
  width: 108px;
  height: 119px;
  background: url("/assets/img/ico_chalent.png") 0 0 no-repeat;
}
@media screen and (max-width: 767px) {
  #page-character .internal-nav .icon-chalent a::after {
    top: -5vw;
    left: inherit;
    right: 7.34375vw;
    width: 15vw;
    height: 16.5625vw;
    background: url("/assets/img/ico_chalent_sp.png") 0 0 no-repeat;
    background-size: cover;
  }
}
#page-character #original {
  padding-top: 1px;
  background: url(/assets/img/bg_section-separator.png) 0 0 repeat-x;
}
#page-character #original .lead {
  margin-bottom: 18px;
  font-size: 2.1em;
  line-height: 1.3333333333;
  max-height: 999999px;
}
@media screen and (max-width: 767px) {
  #page-character #original .lead {
    margin-bottom: 2.8125vw;
    margin-top: 5.46875vw;
    font-size: 4.6875vw;
    line-height: 1.4666666667;
  }
}
#page-character #original .lead em {
  font-weight: bold;
  font-style: normal;
}
@media screen and (min-width: 768px) {
  #page-character #original a:hover img {
    opacity: 0.8;
  }
}
#page-character .icon-chara18::after {
  position: absolute;
  top: -65px;
  left: 394px;
  display: block;
  content: "";
  width: 108px;
  height: 66px;
  background: url("/assets/img/ico_original-heading.png") 0 0 no-repeat;
}
@media screen and (max-width: 767px) {
  #page-character .icon-chara18::after {
    top: -14.0625vw;
    left: 32.34375vw;
    width: 23.125vw;
    height: 14.6875vw;
    background: url("/assets/img/ico_original-heading_sp.png") 0 0 no-repeat;
    background-size: contain;
  }
}
#page-character .original-character {
  margin-top: 35px;
  margin-bottom: 86px;
  margin-left: 145px;
}
#page-character .original-character:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}
@media screen and (max-width: 767px) {
  #page-character .original-character {
    margin-top: 6.5625vw;
    margin-left: 0;
    margin-bottom: 12.5vw;
  }
}
#page-character .original-character-item {
  float: left;
}
@media screen and (max-width: 767px) {
  #page-character .original-character-item {
    float: none;
    width: 100%;
    text-align: center;
  }
}
#page-character .original-character-item-cupnyan {
  width: 226px;
  margin-right: 179px;
}
@media screen and (max-width: 767px) {
  #page-character .original-character-item-cupnyan {
    width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  #page-character .original-character-item-cupnyan img {
    width: 48.4375vw;
    margin-bottom: 4.6875vw;
  }
}
@media screen and (min-width: 768px) {
  #page-character .original-character-item-cupnyan .original-character-link {
    margin-left: 34px;
  }
}
#page-character .original-character-item-tsubuno {
  width: 219px;
  margin-top: 46px;
}
@media screen and (max-width: 767px) {
  #page-character .original-character-item-tsubuno {
    width: 100%;
    margin-right: 0;
  }
}
#page-character .original-character-item-tsubuno img {
  margin-bottom: 16px;
}
@media screen and (max-width: 767px) {
  #page-character .original-character-item-tsubuno img {
    width: 46.5625vw;
    margin-left: 3.59375vw;
    margin-bottom: 4.53125vw;
  }
}
@media screen and (min-width: 768px) {
  #page-character .original-character-item-tsubuno .original-character-link {
    margin-left: 18px;
  }
}
@media screen and (min-width: 768px) {
  #page-character .original-character .original-character-link {
    margin-top: 22px;
  }
}
@media screen and (max-width: 767px) {
  .section-title, #page-title {
    padding: 0 0.4166666667em;
  }
}