@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }
  q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none; }

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

/*! normalize.css v3.0.1 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * 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; }

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

/**
 * 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 4+, 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 4+, 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.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * 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; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. 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;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

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

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

/**
 * Address Firefox 4+ 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.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * 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; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  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; }

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

/**
 * 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; }

.no-scroll {
  overflow: hidden; }

#rakuen2 {
  margin: 0;
  line-height: 0;
  opacity: 0; }
  #rakuen2 .background {
    background-image: url(../img/common/bg_pc.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    background-attachment: fixed; }
  #rakuen2 p, #rakuen2 li {
    line-height: 1; }
  #rakuen2 .color_blue {
    color: #64fecc; }
  #rakuen2 header {
    position: fixed;
    bottom: 0;
    right: 0;
    width: 22.5%;
    height: 60vh;
    z-index: 998;
    text-align: center;
    box-sizing: border-box; }
    #rakuen2 header nav {
      position: relative;
      bottom: 2vh;
      right: 0;
      text-align: right; }
      #rakuen2 header nav ul li {
        margin-bottom: 2.4vh;
        position: relative;
        width: 100%;
        display: block;
        line-height: 2;
        z-index: 1; }
        #rakuen2 header nav ul li::before {
          content: '';
          position: absolute;
          background-color: #ebf9f9;
          top: 50%;
          right: 0;
          width: 18%;
          height: 0.134vw;
          z-index: 0;
          transition: all 0.5s;
          z-index: -1; }
        #rakuen2 header nav ul li::after {
          content: '';
          position: absolute;
          background-color: #ebf9f9;
          top: 50%;
          right: 3.5vw;
          transform: translate(-50%, -40%);
          width: 0.55vw;
          height: 0.55vw;
          z-index: 0;
          border-radius: 100%;
          transition: all 0.5s;
          z-index: -1; }
        #rakuen2 header nav ul li a {
          font-size: 1.2vw;
          padding-right: 5.5vw;
          display: block;
          transition: all 0.5s; }
          #rakuen2 header nav ul li a:hover {
            opacity: 1; }
        #rakuen2 header nav ul li:last-child {
          margin-bottom: 0; }
        @media (any-hover: hover) {
          #rakuen2 header nav ul li:hover {
            width: 100%; }
            #rakuen2 header nav ul li:hover::before {
              background-color: #64fecc;
              width: 32%; }
            #rakuen2 header nav ul li:hover::after {
              background-color: #64fecc;
              right: 6.5vw; }
            #rakuen2 header nav ul li:hover:last-child {
              margin-bottom: 0; }
            #rakuen2 header nav ul li:hover a {
              color: #64fecc;
              padding-right: 8.6vw; }
              #rakuen2 header nav ul li:hover a:hover {
                opacity: 1; } }
  #rakuen2 .hum {
    display: none; }
  #rakuen2 main article .left_block {
    position: fixed;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
    display: flex;
    align-items: center;
    width: 44.7%;
    height: 100vh;
    z-index: 998;
    text-align: center;
    box-sizing: border-box; }
    #rakuen2 main article .left_block .inner {
      max-width: 80%;
      margin: auto; }
      #rakuen2 main article .left_block .inner h1 {
        width: 86%;
        margin: 0 auto 2.5vh; }
      #rakuen2 main article .left_block .inner .staff_credit {
        line-height: 2;
        font-size: 1.4vw;
        margin-bottom: 4vh; }
      #rakuen2 main article .left_block .inner .sns {
        display: flex;
        width: 57%;
        justify-content: space-between;
        margin: auto; }
        #rakuen2 main article .left_block .inner .sns li {
          width: 4.3vw;
          margin-right: 3.5%;
          margin-left: 3.5%; }
          #rakuen2 main article .left_block .inner .sns li:first-child {
            margin-left: 0; }
          #rakuen2 main article .left_block .inner .sns li:last-child {
            margin-right: 0; }
      #rakuen2 main article .left_block .inner .pc_banner_block {
        margin: 3.4vh auto 5vh;
        max-width: 408px; }
        #rakuen2 main article .left_block .inner .pc_banner_block a {
          margin-bottom: 2.2vh; }
          #rakuen2 main article .left_block .inner .pc_banner_block a:last-child {
            margin-bottom: none; }
      #rakuen2 main article .left_block .inner .pc_copy {
        font-size: 14px;
        line-height: 1.2; }
  #rakuen2 main article .main_block {
    background-image: linear-gradient(0deg, #53636c, #7e96a3 30%);
    width: 32.8%;
    margin: 0px 22.5% 0 auto;
    box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.6); }
    #rakuen2 main article .main_block .main_inner {
      overflow: hidden; }
      #rakuen2 main article .main_block .main_inner .mv {
        padding: 7.6vw 0 26vw;
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 87%, #7e96a3 100%), url(../img/common/mv.jpg);
        background-repeat: no-repeat;
        background-size: cover;
        background-position: top center;
        position: relative; }
        #rakuen2 main article .main_block .main_inner .mv h2 {
          width: 20.8334vw;
          margin: auto; }
      #rakuen2 main article .main_block .main_inner .staff_credit {
        margin: 2.8vw auto 8vw;
        position: relative; }
        #rakuen2 main article .main_block .main_inner .staff_credit::before {
          content: '';
          position: absolute;
          background-image: url(../img/common/deco_staff_right.png);
          background-repeat: no-repeat;
          background-position: top right;
          background-size: cover;
          top: -2vw;
          right: 0;
          width: 100%;
          height: 58%;
          opacity: 0.5;
          z-index: 0; }
        #rakuen2 main article .main_block .main_inner .staff_credit::after {
          content: '';
          position: absolute;
          background-image: url(../img/common/deco_staff_left.png);
          background-repeat: no-repeat;
          background-position: top right;
          background-size: cover;
          bottom: -3vw;
          left: 0;
          width: 100%;
          height: 50%;
          opacity: 0.5;
          z-index: 0; }
        #rakuen2 main article .main_block .main_inner .staff_credit p {
          font-size: 1.4vw;
          line-height: 2.3;
          text-align: center; }
      #rakuen2 main article .main_block .main_inner .news .news_title {
        display: flex;
        margin-bottom: 1vw;
        justify-content: space-between; }
        #rakuen2 main article .main_block .main_inner .news .news_title h3 {
          width: 60%;
          margin-left: 3.3%; }
          #rakuen2 main article .main_block .main_inner .news .news_title h3 img {
            width: 9.7223vw; }
        #rakuen2 main article .main_block .main_inner .news .news_title .vewmore {
          position: relative;
          display: flex;
          align-items: center;
          width: 40%;
          font-size: 1.3vw;
          line-height: 2;
          transition: all 0.5s;
          display: block;
          z-index: 1; }
          #rakuen2 main article .main_block .main_inner .news .news_title .vewmore::before {
            content: '';
            position: absolute;
            background-color: #ebf9f9;
            top: 50%;
            right: 0;
            width: 23%;
            height: 0.134vw;
            z-index: -1;
            transition: all 0.5s; }
          #rakuen2 main article .main_block .main_inner .news .news_title .vewmore::after {
            content: '';
            position: absolute;
            background-color: #ebf9f9;
            top: 50%;
            right: 19%;
            transform: translate(-50%, -40%);
            width: 0.55vw;
            height: 0.55vw;
            z-index: -1;
            border-radius: 100%;
            transition: all 0.5s; }
          #rakuen2 main article .main_block .main_inner .news .news_title .vewmore a {
            width: 100%;
            transition: all 0.5s;
            display: block; }
            #rakuen2 main article .main_block .main_inner .news .news_title .vewmore a:hover {
              opacity: 1; }
          @media (any-hover: hover) {
            #rakuen2 main article .main_block .main_inner .news .news_title .vewmore:hover {
              width: 55%; }
              #rakuen2 main article .main_block .main_inner .news .news_title .vewmore:hover::before {
                background-color: #64fecc;
                width: 37%; }
              #rakuen2 main article .main_block .main_inner .news .news_title .vewmore:hover::after {
                background-color: #64fecc;
                right: 5.2vw; }
              #rakuen2 main article .main_block .main_inner .news .news_title .vewmore:hover:last-child {
                margin-bottom: 0; }
              #rakuen2 main article .main_block .main_inner .news .news_title .vewmore:hover a {
                color: #64fecc; }
                #rakuen2 main article .main_block .main_inner .news .news_title .vewmore:hover a:hover {
                  opacity: 1; } }
      #rakuen2 main article .main_block .main_inner .news .news_content li {
        margin: 0 5.2% 8.8% 0;
        position: relative; }
        #rakuen2 main article .main_block .main_inner .news .news_content li::before {
          content: '';
          position: absolute;
          background-color: #ebf9f9;
          bottom: -1.8vw;
          left: 0;
          width: 99%;
          height: 0.134vw;
          z-index: 0; }
        #rakuen2 main article .main_block .main_inner .news .news_content li::after {
          content: '';
          position: absolute;
          background-color: #ebf9f9;
          bottom: -2.13vw;
          right: 0%;
          transform: translate(-50%, -50%);
          width: 0.417vw;
          height: 0.417vw;
          z-index: 0; }
        #rakuen2 main article .main_block .main_inner .news .news_content li:last-child {
          margin: 0 5.2% 8.8% 0; }
        #rakuen2 main article .main_block .main_inner .news .news_content li a {
          margin-left: 5%;
          display: block;
          font-size: 1.4vw;
          line-height: 1.3; }
          #rakuen2 main article .main_block .main_inner .news .news_content li a span {
            line-height: 2;
            font-size: 1.3vw; }
      #rakuen2 main article .main_block .main_inner .pv {
        position: relative;
        z-index: 0; }
        #rakuen2 main article .main_block .main_inner .pv::before {
          content: '';
          position: absolute;
          background-image: url(../img/common/deco_pv_bg.png);
          background-repeat: no-repeat;
          background-size: cover;
          top: -4.2vw;
          right: 0;
          width: 100%;
          height: 27.6vw;
          z-index: -1;
          opacity: 0.5; }
        #rakuen2 main article .main_block .main_inner .pv .inner {
          margin: 29% 2.6% 24% 5.2%; }
          #rakuen2 main article .main_block .main_inner .pv .inner h3 {
            position: absolute;
            right: 3.3%;
            width: 5.5vw;
            top: -1.3vw;
            z-index: 1; }
          #rakuen2 main article .main_block .main_inner .pv .inner .movie {
            list-style: none; }
            #rakuen2 main article .main_block .main_inner .pv .inner .movie a {
              position: relative;
              z-index: 0; }
              #rakuen2 main article .main_block .main_inner .pv .inner .movie a::after {
                content: '';
                position: absolute;
                background-image: url(../img/common/play_btn.png);
                background-repeat: no-repeat;
                background-size: cover;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                width: 17.912%;
                height: 31.33%;
                z-index: 1; }
              #rakuen2 main article .main_block .main_inner .pv .inner .movie a::before {
                content: '';
                position: absolute;
                background-color: #64fecc;
                bottom: -0.97vw;
                left: -0.97vw;
                width: 100%;
                height: 100%;
                z-index: -1; }
              #rakuen2 main article .main_block .main_inner .pv .inner .movie a img {
                border: solid 0.2vw #ebf9f9;
                width: 99%; }
      #rakuen2 main article .main_block .main_inner .sns {
        position: relative;
        z-index: 1; }
        #rakuen2 main article .main_block .main_inner .sns::before {
          content: '';
          position: absolute;
          background-image: url(../img/common/deco_sns_right.png);
          background-repeat: no-repeat;
          background-size: cover;
          top: -4vw;
          right: 0;
          width: 100%;
          height: 6.8vw;
          z-index: -1;
          opacity: 0.5; }
        #rakuen2 main article .main_block .main_inner .sns .inner {
          position: relative;
          display: flex;
          margin: 26.5% auto 10.6%;
          width: 80%;
          max-width: 378px;
          justify-content: center; }
          #rakuen2 main article .main_block .main_inner .sns .inner li {
            width: 18vw;
            margin-right: 3.6%;
            margin-left: 3.6%; }
            #rakuen2 main article .main_block .main_inner .sns .inner li:first-child {
              margin-left: 0; }
            #rakuen2 main article .main_block .main_inner .sns .inner li:last-child {
              margin-right: 0; }
      #rakuen2 main article .main_block .main_inner .rakuten1_banner {
        position: relative;
        z-index: 0; }
        #rakuen2 main article .main_block .main_inner .rakuten1_banner::before {
          content: '';
          position: absolute;
          background-image: url(../img/common/deco_banner_bg.png);
          background-repeat: no-repeat;
          background-size: cover;
          top: -3.2vw;
          right: 0;
          width: 100%;
          height: 13vw;
          z-index: -1;
          opacity: 0.5; }
        #rakuen2 main article .main_block .main_inner .rakuten1_banner a {
          margin: 0 2.6%; }
      #rakuen2 main article .main_block .main_inner .banner_block {
        position: relative;
        z-index: 1; }
        #rakuen2 main article .main_block .main_inner .banner_block a {
          margin: 0 2.6% 6%; }
      #rakuen2 main article .main_block .main_inner .footer {
        margin: 12.8% auto 0;
        width: 95%;
        padding-bottom: 5.3%; }
        #rakuen2 main article .main_block .main_inner .footer p {
          text-align: center;
          font-size: 16px;
          font-weight: 500;
          line-height: 1.2; }

@media screen and (max-width: 767px) {
  #rakuen2 header {
    top: 0;
    -webkit-transform: translate(100%, 0%);
    transform: translate(100%, 0%);
    width: 100%;
    height: 100vh;
    min-height: unset;
    border-left: none;
    -webkit-transition: transform .3s;
    transition: transform .3s;
    background-color: #000; }
    #rakuen2 header nav {
      bottom: -14vh; }
      #rakuen2 header nav ul li {
        margin-bottom: 4vh; }
        #rakuen2 header nav ul li::before {
          width: 10%;
          height: 0.3vw; }
        #rakuen2 header nav ul li::after {
          right: 9.5vw;
          transform: translate(-50%, -35%);
          width: 0.8vw;
          height: 0.8vw; }
        #rakuen2 header nav ul li a {
          font-size: 3.8vw;
          padding-right: 13vw; } }
      @media screen and (max-width: 767px) and (any-hover: hover) {
        #rakuen2 header nav ul li:hover::before {
          width: 18%; }
        #rakuen2 header nav ul li:hover::after {
          right: 17vw; }
        #rakuen2 header nav ul li:hover a {
          padding-right: 20vw; } }
@media screen and (max-width: 767px) {
  #rakuen2 .hum {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    width: 12vw;
    height: 12vw;
    z-index: 999;
    cursor: pointer;
    background-image: url(../img/common/nav.jpg);
    background-size: cover; }
  #rakuen2 .header_open {
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%); }
  #rakuen2 .hum_open {
    background-image: url(../img/common/nav_close.jpg); }
  #rakuen2 main article .left_block {
    display: none; }
  #rakuen2 main article .main_block {
    width: 100%;
    margin: auto;
    box-shadow: none; }
    #rakuen2 main article .main_block .main_inner .mv {
      background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 87%, #7e96a3 100%), url(../img/common/mv.jpg);
      background-repeat: no-repeat;
      background-size: cover;
      background-position: top center;
      padding: 27% 0 80%;
      animation-delay: 1.5s; }
      #rakuen2 main article .main_block .main_inner .mv h2 {
        max-width: none;
        width: 60vw; }
    #rakuen2 main article .main_block .main_inner .staff_credit {
      margin: 8vw auto 0; }
      #rakuen2 main article .main_block .main_inner .staff_credit::before {
        top: -5vw;
        height: 60%; }
      #rakuen2 main article .main_block .main_inner .staff_credit::after {
        bottom: -11vw; }
      #rakuen2 main article .main_block .main_inner .staff_credit p {
        font-size: 4.2vw; }
    #rakuen2 main article .main_block .main_inner .news {
      margin-top: 0vw;
      padding-top: 22vw; }
      #rakuen2 main article .main_block .main_inner .news .news_title h3 img {
        width: 31vw; }
      #rakuen2 main article .main_block .main_inner .news .news_title .vewmore {
        font-size: 3.7vw;
        margin-left: 10%; }
        #rakuen2 main article .main_block .main_inner .news .news_title .vewmore::before {
          top: 48.5%;
          height: 0.3vw;
          z-index: 0; }
        #rakuen2 main article .main_block .main_inner .news .news_title .vewmore::after {
          right: 20%;
          transform: translate(-50%, -50%);
          width: 1.1vw;
          height: 1.1vw;
          z-index: 0; } }
      @media screen and (max-width: 767px) and (any-hover: hover) {
        #rakuen2 main article .main_block .main_inner .news .news_title .vewmore:hover::after {
          background-color: #64fecc;
          right: 14.2vw; }
        #rakuen2 main article .main_block .main_inner .news .news_title .vewmore:hover::before {
          height: 0.3vw; } }
@media screen and (max-width: 767px) {
      #rakuen2 main article .main_block .main_inner .news .news_content li::before {
        bottom: -5.3333vw; }
      #rakuen2 main article .main_block .main_inner .news .news_content li::after {
        bottom: -6.3vw;
        width: 1.1vw;
        height: 1.1vw; }
      #rakuen2 main article .main_block .main_inner .news .news_content li a {
        margin-left: 5.2%;
        font-size: 4.2vw; }
        #rakuen2 main article .main_block .main_inner .news .news_content li a span {
          font-size: 3.7vw; }
    #rakuen2 main article .main_block .main_inner .pv::before {
      top: -13vw;
      height: 84vw; }
    #rakuen2 main article .main_block .main_inner .pv .inner h3 {
      width: 15vw;
      top: -3.6vw; }
    #rakuen2 main article .main_block .main_inner .pv .inner .movie a::before {
      bottom: -2.4vw;
      left: -2.4vw; }
    #rakuen2 main article .main_block .main_inner .pv .inner .movie a img {
      border: solid 0.55vw #ebf9f9; }
    #rakuen2 main article .main_block .main_inner .sns::before {
      top: -11.5vw;
      height: 20.5vw; }
    #rakuen2 main article .main_block .main_inner .sns .inner li {
      margin-right: 2.6%;
      margin-left: 2.6%; }
      #rakuen2 main article .main_block .main_inner .sns .inner li:first-child {
        margin-left: 0; }
      #rakuen2 main article .main_block .main_inner .sns .inner li:last-child {
        margin-right: 0; }
    #rakuen2 main article .main_block .main_inner .rakuten1_banner::before {
      top: -10vw;
      height: 39.7vw; }
    #rakuen2 main article .main_block .main_inner .footer p {
      font-size: 3.2vw; } }
@media screen and (min-width: 1441px) {
  #rakuen2 main article .left_block .inner h1 {
    margin: 0 auto 24px;
    max-width: 464px; }
  #rakuen2 main article .left_block .inner .staff_credit {
    line-height: 2;
    font-size: 20px;
    margin-bottom: 30px;
    max-width: 514px; }
  #rakuen2 main article .left_block .inner .sns {
    max-width: 464px; }
    #rakuen2 main article .left_block .inner .sns li {
      width: 58px;
      margin-right: 10px;
      margin-left: 10px; }
      #rakuen2 main article .left_block .inner .sns li:first-child {
        margin-left: 0; }
      #rakuen2 main article .left_block .inner .sns li:last-child {
        margin-right: 0; }
  #rakuen2 main article .left_block .inner .pc_banner_block {
    margin: 20px auto 40px;
    max-width: 408px; }
  #rakuen2 main article .left_block .inner .pc_copy {
    max-width: 464px;
    font-size: 14px; } }
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  opacity: 0; }

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px); }
  to {
    opacity: 1;
    visibility: inherit;
    transform: translateY(0); } }
.no-click:hover {
  opacity: 1; }

/* ==========================================================================
    recruit-project-staff-2024.html
   ========================================================================== */
#rakuen2.recruit {
  opacity: 1;
  line-height: 1.2; }
  #rakuen2.recruit .main_block .main_inner .content_block .content .content_inner .small_text {
    font-size: 80%; }
  #rakuen2.recruit .main_block .main_inner .dis_890 {
    display: block; }
  #rakuen2.recruit .main_block .main_inner li,
  #rakuen2.recruit .main_block .main_inner p {
    font-size: 1.4vw;
    line-height: 1.5;
    font-weight: 600; }
  #rakuen2.recruit .main_block .main_inner .title {
    position: relative; }
    #rakuen2.recruit .main_block .main_inner .title::after {
      content: '';
      position: absolute;
      right: 0;
      top: 50%;
      width: 100%;
      transform: translate(0, -50%);
      background-size: contain;
      background-repeat: no-repeat;
      opacity: 0.5; }
    #rakuen2.recruit .main_block .main_inner .title h3 {
      width: 36%;
      margin: 0 0 9% 3.3%; }
      #rakuen2.recruit .main_block .main_inner .title h3 img {
        width: 35.467vw; }
  #rakuen2.recruit .main_block .main_inner .page_title {
    padding: 24% 1.5% 40%;
    font-weight: 700;
    background-image: url(../img/recruit/title_bg.png);
    background-repeat: no-repeat;
    background-size: cover; }
    #rakuen2.recruit .main_block .main_inner .page_title h2 {
      text-align: center;
      line-height: 1.4;
      font-size: 2vw; }
    #rakuen2.recruit .main_block .main_inner .page_title p {
      font-size: 2.5vw;
      text-align: center;
      line-height: 1.5; }
  #rakuen2.recruit .main_block .main_inner h4 {
    font-size: 2vw;
    color: #64fecc;
    line-height: 1; }
    #rakuen2.recruit .main_block .main_inner h4 span {
      font-size: 1.5vw; }
  #rakuen2.recruit .main_block .main_inner .circle li {
    position: relative;
    list-style-position: outside;
    padding-left: 1.25em; }
    #rakuen2.recruit .main_block .main_inner .circle li::before {
      content: '・';
      position: absolute;
      top: 0;
      left: 0; }
  #rakuen2.recruit .main_block .main_inner #description {
    margin-bottom: 18.6%; }
    #rakuen2.recruit .main_block .main_inner #description .title::after {
      height: 178%;
      background-image: url(../img/recruit/deco_01.png); }
    #rakuen2.recruit .main_block .main_inner #description .content_block .content {
      margin-bottom: 12%; }
      #rakuen2.recruit .main_block .main_inner #description .content_block .content:last-child {
        margin-bottom: 0; }
      #rakuen2.recruit .main_block .main_inner #description .content_block .content .sub_title {
        position: relative;
        margin: 0 5.2% 11% 0; }
        #rakuen2.recruit .main_block .main_inner #description .content_block .content .sub_title::before {
          content: '';
          position: absolute;
          background-color: #ebf9f9;
          bottom: -1.6vw;
          left: 0;
          width: 99%;
          height: 0.1vw;
          z-index: 0; }
        #rakuen2.recruit .main_block .main_inner #description .content_block .content .sub_title::after {
          content: '';
          position: absolute;
          background-color: #ebf9f9;
          right: 0%;
          transform: translate(0, -50%);
          z-index: 0;
          bottom: -2.13vw;
          width: 0.6vw;
          height: 0.6vw; }
        #rakuen2.recruit .main_block .main_inner #description .content_block .content .sub_title h4 {
          margin-left: 3.3%;
          font-weight: 900; }
      #rakuen2.recruit .main_block .main_inner #description .content_block .content .content_inner {
        margin: 0 5%; }
        #rakuen2.recruit .main_block .main_inner #description .content_block .content .content_inner li:last-child {
          margin-bottom: 0; }
      #rakuen2.recruit .main_block .main_inner #description .content_block .content .num li {
        position: relative;
        list-style-position: outside;
        padding-left: 1.25em;
        margin-bottom: 5.9%; }
      #rakuen2.recruit .main_block .main_inner #description .content_block .content .num span {
        font-size: 1.4vw;
        position: absolute;
        left: 0;
        margin: 0; }
      #rakuen2.recruit .main_block .main_inner #description .content_block .content .work li {
        font-size: 1.6vw;
        line-height: 1.3; }
        #rakuen2.recruit .main_block .main_inner #description .content_block .content .work li span {
          transform: translate(0, 8%);
          top: 0; }
  #rakuen2.recruit .main_block .main_inner #guidelines .title::after {
    height: 205%;
    background-image: url(../img/recruit/deco_02.png); }
  #rakuen2.recruit .main_block .main_inner #guidelines p {
    font-size: 1.4vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block {
    margin: 0 5% 10.7%;
    padding: 0 0 0 5.4%; }
    #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content h4 {
      font-weight: 700;
      position: relative; }
      #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content h4::before {
        content: '□';
        position: absolute;
        color: #64fecc;
        left: -2.1vw;
        font-size: 1.4vw;
        top: 50%;
        transform: translate(0, -50%); }
    #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content:nth-child(2) .content_inner {
      position: relative;
      margin-bottom: 8.9%; }
      #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content:nth-child(2) .content_inner::after {
        content: '';
        position: absolute;
        background-color: #64fecc;
        top: -0.4vw;
        left: -1.5vw;
        width: 0.3%;
        height: 100%; }
      #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content:nth-child(2) .content_inner::before {
        content: '■';
        position: absolute;
        color: #64fecc;
        left: -1.5em;
        font-size: 1.4vw;
        bottom: 0; }
    #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner {
      position: relative;
      padding: 5.9% 0 8.9%; }
      #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner::after {
        content: '';
        position: absolute;
        background-color: #64fecc;
        top: -0.4vw;
        left: -1.5vw;
        width: 0.3%;
        height: 103.5%; }
      #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .form_btn {
        margin: 4.4% 0 5.9%; }
        #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .form_btn a {
          position: relative;
          color: #6d828d;
          font-size: 1.67vw;
          font-weight: 900;
          background-color: #ebf9f9;
          padding: 3.8% 20% 3.8% 10%; }
          #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .form_btn a::after {
            content: '';
            position: absolute;
            background-color: #6d828d;
            right: 4.5vw;
            width: 0.45vw;
            height: 0.45vw;
            border-radius: 100%;
            bottom: 50%;
            transform: translate(0, 50%); }
          #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .form_btn a::before {
            content: '';
            position: absolute;
            background-color: #6d828d;
            right: 0;
            width: 4.5vw;
            height: 0.1vw;
            bottom: 50%;
            transform: translate(0, 50%); }
      #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner p {
        font-weight: 700; }
      #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .sub_text p {
        font-size: 1.12vw;
        line-height: 1.7; }
      #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .sub_text li {
        font-size: 1.12vw;
        line-height: 1.7; }
  #rakuen2.recruit .main_block .main_inner #privacy {
    margin: 18.6% 0 0;
    padding: 0 3.3%; }
    #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner {
      margin-bottom: 8.5%; }
      #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner p {
        font-size: 1.12vw;
        line-height: 1.7; }
        #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner p .text_link {
          display: inline-block;
          border-bottom: 1px solid #ebf9f9;
          line-height: 1.5; }
      #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner .privacy_title {
        position: relative;
        font-size: 1.2vw;
        font-weight: 700;
        text-align: center;
        margin-bottom: 3%;
        padding: 0 0 2.5% 0; }
        #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner .privacy_title::after {
          content: '';
          position: absolute;
          background-color: #ebf9f9;
          width: 2vw;
          height: 0.1vw;
          bottom: 0;
          right: 50%;
          transform: translate(50%, 0); }
  #rakuen2.recruit .main_block .main_inner #contact {
    margin: 10.6% 0 0;
    padding: 0 5.3% 0 3.3%;
    position: relative;
    z-index: 0; }
    #rakuen2.recruit .main_block .main_inner #contact::after {
      content: '';
      position: absolute;
      right: 0;
      bottom: -20%;
      width: 100%;
      height: 28%;
      background-image: url(../img/recruit/deco_04.png);
      background-size: cover;
      background-repeat: no-repeat;
      opacity: 0.5;
      z-index: -1; }
    #rakuen2.recruit .main_block .main_inner #contact .content_block .content {
      position: relative;
      z-index: 0; }
      #rakuen2.recruit .main_block .main_inner #contact .content_block .content::after {
        content: '';
        position: absolute;
        background-color: #64fecc;
        bottom: -0.8vw;
        right: -0.8vw;
        width: 100%;
        height: 100%;
        z-index: -1; }
      #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner {
        background-color: #ebf9f9;
        color: #52646c;
        padding: 6% 2%;
        position: relative; }
        #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner::before {
          content: '';
          position: absolute;
          right: -12%;
          top: -20%;
          width: 100%;
          height: 40%;
          background-image: url(../img/recruit/deco_03.png);
          background-size: contain;
          background-repeat: no-repeat;
          opacity: 0.5;
          z-index: -1; }
        #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner h5 {
          font-size: 1.67vw;
          text-align: center;
          margin-bottom: 4%;
          font-weight: 900; }
        #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner p {
          text-align: center;
          font-size: 1.2vw;
          line-height: 1.6;
          font-weight: 700; }
          #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner p .mail {
            color: #52646c;
            margin-top: 2%;
            font-size: 1.12vw;
            font-weight: 900; }

@media screen and (max-width: 890px) {
  #rakuen2.recruit .main_block .main_inner .dis_890 {
    display: none; }
  #rakuen2.recruit .main_block .main_inner li,
  #rakuen2.recruit .main_block .main_inner p {
    font-size: 1.85vw; }
  #rakuen2.recruit .main_block .main_inner .page_title h2 {
    font-size: 2.31vw; }
  #rakuen2.recruit .main_block .main_inner .page_title p {
    font-size: 2.81vw; }
  #rakuen2.recruit .main_block .main_inner h4 {
    font-size: 2.31vw; }
    #rakuen2.recruit .main_block .main_inner h4 span {
      font-size: 1.81vw; }
  #rakuen2.recruit .main_block .main_inner #description .content_block .content .num span {
    font-size: 1.85vw; }
  #rakuen2.recruit .main_block .main_inner #description .content_block .content .work li {
    font-size: 1.98vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines p {
    font-size: 1.85vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content h4::before {
    left: -2.1vw;
    font-size: 1.85vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content:nth-child(2) .content_inner::after {
    top: -0.4vw;
    left: -1.2vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content:nth-child(2) .content_inner::before {
    left: -1.12em;
    font-size: 1.85vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner::after {
    top: -0.4vw;
    left: -1.2vw;
    height: 102%; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .form_btn a {
    font-size: 1.86vw;
    padding: 3.8% 20% 3.8% 5%; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .sub_text p {
    font-size: 1.64vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .sub_text li {
    font-size: 1.64vw; }
  #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner p {
    font-size: 1.44vw; }
  #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner .privacy_title {
    font-size: 1.64vw; }
  #rakuen2.recruit .main_block .main_inner #contact {
    padding: 0 4.3% 0 2.3%; }
    #rakuen2.recruit .main_block .main_inner #contact .content_block .content::after {
      bottom: -0.6vw;
      right: -0.6vw; }
    #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner h5 {
      font-size: 1.98vw; }
    #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner p {
      font-size: 1.51vw; }
      #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner p .mail {
        font-size: 1.35vw; } }
@media screen and (max-width: 767px) {
  #rakuen2.recruit .main_block .main_inner .dis_890 {
    display: block; }
  #rakuen2.recruit .main_block .main_inner li,
  #rakuen2.recruit .main_block .main_inner p {
    font-size: 4.2vw; }
  #rakuen2.recruit .main_block .main_inner .title h3 {
    margin: 0 0 8% 3.3%; }
  #rakuen2.recruit .main_block .main_inner .page_title {
    padding: 27% 0 30% 0; }
    #rakuen2.recruit .main_block .main_inner .page_title h2 {
      font-size: 5.86vw; }
    #rakuen2.recruit .main_block .main_inner .page_title p {
      font-size: 7.73vw; }
  #rakuen2.recruit .main_block .main_inner h4 {
    font-size: 5.3vw; }
    #rakuen2.recruit .main_block .main_inner h4 span {
      font-size: 4.2vw; }
  #rakuen2.recruit .main_block .main_inner #description .content_block .content {
    margin-bottom: 10.7%; }
    #rakuen2.recruit .main_block .main_inner #description .content_block .content:last-child {
      margin-bottom: 0; }
    #rakuen2.recruit .main_block .main_inner #description .content_block .content .sub_title {
      margin: 0 5.2% 9.4% 0; }
      #rakuen2.recruit .main_block .main_inner #description .content_block .content .sub_title::before {
        bottom: -3.5vw;
        height: 0.134vw; }
      #rakuen2.recruit .main_block .main_inner #description .content_block .content .sub_title::after {
        bottom: -4.5vw;
        width: 1.1vw;
        height: 1.1vw; }
    #rakuen2.recruit .main_block .main_inner #description .content_block .content .content_inner li:last-child {
      margin-bottom: 0; }
    #rakuen2.recruit .main_block .main_inner #description .content_block .content .num span {
      font-size: 4.2vw; }
    #rakuen2.recruit .main_block .main_inner #description .content_block .content .work li {
      font-size: 4.8vw; }
      #rakuen2.recruit .main_block .main_inner #description .content_block .content .work li span {
        transform: translate(0, 2%); }
  #rakuen2.recruit .main_block .main_inner #guidelines p {
    font-size: 4.2vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content h4::before {
    left: -2.5em;
    font-size: 2.667vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content:nth-child(2) .content_inner {
    position: relative;
    margin-bottom: 8.9%; }
    #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content:nth-child(2) .content_inner::after {
      content: '';
      position: absolute;
      background-color: #64fecc;
      top: -1.5vw;
      left: -5.4vw;
      width: 0.3%;
      height: 100%; }
    #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content:nth-child(2) .content_inner::before {
      content: '■';
      position: absolute;
      color: #64fecc;
      left: -2.5em;
      font-size: 2.667vw;
      bottom: 0; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner::after {
    top: -1.5vw;
    left: -5.4vw;
    height: 103.8%; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .form_btn a {
    font-size: 4.8vw;
    padding: 3.8% 19.8% 3.8% 11.3%; }
    #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .form_btn a::after {
      right: 13vw;
      width: 1.067vw;
      height: 1.067vw; }
    #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .form_btn a::before {
      width: 13.3vw;
      height: 0.27vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .sub_text p {
    font-size: 3.7vw; }
  #rakuen2.recruit .main_block .main_inner #guidelines .content_block .content .content_inner .sub_text li {
    font-size: 3.7vw; }
  #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner p {
    font-size: 3.2vw; }
  #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner .privacy_title {
    font-size: 3.7vw; }
    #rakuen2.recruit .main_block .main_inner #privacy .content_block .content .content_inner .privacy_title::after {
      width: 6.4vw;
      height: 0.26vw; }
  #rakuen2.recruit .main_block .main_inner #contact {
    padding: 0 5.3% 0 3.3%; }
    #rakuen2.recruit .main_block .main_inner #contact .content_block .content::after {
      bottom: -2.4vw;
      right: -2.4vw; }
    #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner {
      padding: 6%; }
      #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner::before {
        right: -7%; }
      #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner h5 {
        font-size: 4.8vw; }
      #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner p {
        font-size: 3.4vw; }
        #rakuen2.recruit .main_block .main_inner #contact .content_block .content .content_inner p .mail {
          font-size: 3.2vw; } }
html {
  font-size: 100%;
  font-family: "Noto Serif JP",'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
  color: #ebf9f9;
  font-weight: 600; }

body {
  position: relative;
  overflow-anchor: none; }

img {
  max-width: 100%;
  flex-shrink: 0; }

a {
  text-decoration: none;
  color: #ebf9f9;
  font-weight: 600;
  opacity: 1;
  -webkit-transition: all .3s;
  transition: all .3s;
  display: block; }
  a:visited {
    color: #ebf9f9; }
  a:hover {
    opacity: 0.7; }

* {
  outline: none !important; }

/* ==========================================================================
   mar/pad
   ========================================================================== */
.mt--0 {
  margin-top: 0px !important; }

.mt--5 {
  margin-top: 5px !important; }

.mt--10 {
  margin-top: 10px !important; }

.mt--20 {
  margin-top: 20px !important; }

.mt--30 {
  margin-top: 30px !important; }

.mt--40 {
  margin-top: 40px !important; }

.mt--50 {
  margin-top: 50px !important; }

.mt--60 {
  margin-top: 60px !important; }

.mt--70 {
  margin-top: 70px !important; }

.mt--80 {
  margin-top: 80px !important; }

.mt--90 {
  margin-top: 90px !important; }

.mt--100 {
  margin-top: 100px !important; }

.mb--0 {
  margin-bottom: 0px !important; }

.mb--5 {
  margin-bottom: 5px !important; }

.mb--10 {
  margin-bottom: 10px !important; }

.mb--20 {
  margin-bottom: 20px !important; }

.mb--30 {
  margin-bottom: 30px !important; }

.mb--40 {
  margin-bottom: 40px !important; }

.mb--50 {
  margin-bottom: 50px !important; }

.mb--60 {
  margin-bottom: 60px !important; }

.mb--70 {
  margin-bottom: 70px !important; }

.mb--80 {
  margin-bottom: 80px !important; }

.mb--90 {
  margin-bottom: 90px !important; }

.mb--100 {
  margin-bottom: 100px !important; }

.mr--0 {
  margin-right: 0px !important; }

.mr--5 {
  margin-right: 5px !important; }

.mr--10 {
  margin-right: 10px !important; }

.mr--20 {
  margin-right: 20px !important; }

.mr--30 {
  margin-right: 30px !important; }

.mr--40 {
  margin-right: 40px !important; }

.mr--50 {
  margin-right: 50px !important; }

.mr--60 {
  margin-right: 60px !important; }

.mr--70 {
  margin-right: 70px !important; }

.mr--80 {
  margin-right: 80px !important; }

.mr--90 {
  margin-right: 90px !important; }

.mr--100 {
  margin-right: 100px !important; }

.ml--0 {
  margin-left: 0px !important; }

.ml--5 {
  margin-left: 5px !important; }

.ml--10 {
  margin-left: 10px !important; }

.ml--20 {
  margin-left: 20px !important; }

.ml--30 {
  margin-left: 30px !important; }

.ml--40 {
  margin-left: 40px !important; }

.ml--50 {
  margin-left: 50px !important; }

.ml--60 {
  margin-left: 60px !important; }

.ml--70 {
  margin-left: 70px !important; }

.ml--80 {
  margin-left: 80px !important; }

.ml--90 {
  margin-left: 90px !important; }

.ml--100 {
  margin-left: 100px !important; }

.pt--0 {
  padding-top: 0px !important; }

.pt--5 {
  padding-top: 5px !important; }

.pt--10 {
  padding-top: 10px !important; }

.pt--15 {
  padding-top: 15px !important; }

.pt--20 {
  padding-top: 20px !important; }

.pt--30 {
  padding-top: 30px !important; }

.pt--40 {
  padding-top: 40px !important; }

.pt--50 {
  padding-top: 50px !important; }

.pt--60 {
  padding-top: 60px !important; }

.pt--70 {
  padding-top: 70px !important; }

.pt--80 {
  padding-top: 80px !important; }

.pt--90 {
  padding-top: 90px !important; }

.pt--100 {
  padding-top: 100px !important; }

.pb--0 {
  padding-bottom: 0px !important; }

.pb--5 {
  padding-bottom: 5px !important; }

.pb--10 {
  padding-bottom: 10px !important; }

.pb--20 {
  padding-bottom: 20px !important; }

.pb--30 {
  padding-bottom: 30px !important; }

.pb--40 {
  padding-bottom: 40px !important; }

.pb--50 {
  padding-bottom: 50px !important; }

.pb--60 {
  padding-bottom: 60px !important; }

.pb--70 {
  padding-bottom: 70px !important; }

.pb--80 {
  padding-bottom: 80px !important; }

.pb--90 {
  padding-bottom: 90px !important; }

.pb--100 {
  padding-bottom: 100px !important; }

.pr--0 {
  padding-right: 0px !important; }

.pr--5 {
  padding-right: 5px !important; }

.pr--10 {
  padding-right: 10px !important; }

.pr--20 {
  padding-right: 20px !important; }

.pr--30 {
  padding-right: 30px !important; }

.pr--40 {
  padding-right: 40px !important; }

.pr--50 {
  padding-right: 50px !important; }

.pr--60 {
  padding-right: 60px !important; }

.pr--70 {
  padding-right: 70px !important; }

.pr--80 {
  padding-right: 80px !important; }

.pr--90 {
  padding-right: 90px !important; }

.pr--100 {
  padding-right: 100px !important; }

.pl--0 {
  padding-left: 0px !important; }

.pl--5 {
  padding-left: 5px !important; }

.pl--10 {
  padding-left: 10px !important; }

.pl--20 {
  padding-left: 20px !important; }

.pl--30 {
  padding-left: 30px !important; }

.pl--40 {
  padding-left: 40px !important; }

.pl--50 {
  padding-left: 50px !important; }

.pl--60 {
  padding-left: 60px !important; }

.pl--70 {
  padding-left: 70px !important; }

.pl--80 {
  padding-left: 80px !important; }

.pl--90 {
  padding-left: 90px !important; }

.pl--100 {
  padding-left: 100px !important; }

/* ==========================================================================
   全ページ共通
   ========================================================================== */
.sp-only {
  display: none !important; }

.sp-only__inline {
  display: none !important; }

.sp-only__flex {
  display: none !important; }

@media screen and (max-width: 767px) {
  .pc-only {
    display: none !important; }

  .sp-only {
    display: block !important; }

  .sp-only__inline {
    display: inline-block !important; }

  .sp-only__flex {
    display: flex !important; } }
