@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Lato:400,700,900);
@import url("https://use.typekit.net/icw5ezj.css");
@import url("https://use.typekit.net/cvj1cfw.css");
@import url("https://use.typekit.net/tfh1rub.css");
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
@font-face {
  font-family: 'oswaldregular';
  src: url("font/oswald-regular-webfont.eot");
  src: url("font/oswald-regular-webfont.eot?#iefix") format("embedded-opentype"), url("font/oswald-regular-webfont.woff") format("woff"), url("font/oswald-regular-webfont.ttf") format("truetype"), url("font/oswald-regular-webfont.svg#oswaldregular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'oswaldlight';
  src: url("font/oswald-light-webfont.eot");
  src: url("font/oswald-light-webfont.eot?#iefix") format("embedded-opentype"), url("font/oswald-light-webfont.woff") format("woff"), url("font/oswald-light-webfont.ttf") format("truetype"), url("font/oswald-light-webfont.svg#oswaldregular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'oswaldlight';
  src: url("font/oswald-light-webfont.eot");
  src: url("font/oswald-light-webfont.eot?#iefix") format("embedded-opentype"), url("font/oswald-light-webfont.woff") format("woff"), url("font/oswald-light-webfont.ttf") format("truetype"), url("font/oswald-light-webfont.svg#oswaldregular") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'NotoSansJP-Bold';
  src: url("../font/NotoSansJP-Bold.eot");
  src: url("../font/NotoSansJP-Bold.eot?iefix") format("eot"), url("../font/NotoSansJP-Bold.woff") format("woff"); }

@font-face {
  font-family: 'NotoSansJP-Medium';
  src: url("../font/NotoSansJP-Medium.eot");
  src: url("../font/NotoSansJP-Medium.eot?iefix") format("eot"), url("../font/NotoSansJP-Medium.woff") format("woff"); }

@font-face {
  font-family: 'NotoSansJP-Regular';
  src: url("../font/NotoSansJP-Regular.eot");
  src: url("../font/NotoSansJP-Regular.eot?iefix") format("eot"), url("../font/NotoSansJP-Regular.woff") format("woff"); }

@font-face {
  font-family: 'NotoSansJP-DemiLight';
  src: url("../font/NotoSansJP-DemiLight.eot");
  src: url("../font/NotoSansJP-DemiLight.eot?iefix") format("eot"), url("../font/NotoSansJP-DemiLight.woff") format("woff"); }

@font-face {
  font-family: 'NotoSansJP-Light';
  src: url("../font/NotoSansJP-Light.eot");
  src: url("../font/NotoSansJP-Light.eot?iefix") format("eot"), url("../font/NotoSansJP-Light.woff") format("woff"); }

@font-face {
  font-family: 'NotoSansJP-Thin-Windows';
  src: url("../font/NotoSansJP-Thin-Windows.eot");
  src: url("../font/NotoSansJP-Thin-Windows.eot?iefix") format("eot"), url("../font/NotoSansJP-Thin-Windows.woff") format("woff"); }

/* 変数
-----------------------------------------------------------------*/
body, div, p, form, input, textarea, select, option, button, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, address, button, figure, figcaption {
  font-style: normal;
  line-height: 1;
  padding: 0;
  margin: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

/* PC / SP 表示分け
-----------------------------------------------------------------*/
@media only screen and (min-width: 861px) {
  .dn-pc {
    display: none !important; } }

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

@media only screen and (min-width: 861px) {
  body .classic_style .soukai_series .footer .isSp {
    display: none !important; } }

@media only screen and (max-width: 861px) {
  body .classic_style .soukai_series .footer .isPc {
    display: none !important; } }

#footer {
  display: none; }

body.is-hidden-footer {
  overflow: hidden; }
  body.is-hidden-footer #footer {
    display: none !important; }

body.is-modalOpen {
  overflow: hidden; }

#header {
  display: none !important; }

@media only screen and (max-width: 861px) {
  html,
  body {
    height: 100%;
    overflow: hidden; } }

@media only screen and (min-width: 861px) {
  html,
  body {
    height: 100%;
    overflow: hidden; } }

.soukai_series #footer-page-top-fix .pageTop.active {
  display: none !important; }

body {
  color: #000;
  background: #fff; }
  body a {
    list-style: none;
    text-decoration: none; }
  body .container {
    max-width: inherit;
    padding: 0 !important; }
    @media only screen and (max-width: 861px) {
      body .container {
        padding: 0 !important; } }
  body .breadcrumbs {
    display: none !important; }
  @media only screen and (max-width: 861px) {
    body .classic_style .isPc {
      display: block !important; } }

/* コンテンツ
-----------------------------------------------------------------*/
.classic_style {
  width: auto; }

article.contents {
  margin: 0 auto;
  color: #000; }
  article.contents a {
    color: #000;
    text-decoration: none; }

/*=============================================

	FV

==============================================*/
.fvSection {
  position: relative;
  width: 100%;
  z-index: 100000;
  background-color: #fff;
  overflow: hidden; }
  @media only screen and (min-width: 861px) {
    .fvSection {
      height: 100vh !important; } }
  @media only screen and (max-width: 861px) {
    .fvSection {
      height: 100dvh !important;
      -ms-touch-action: none;
      touch-action: none; } }

@media only screen and (min-width: 861px) {
  .fvList {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

@media only screen and (max-width: 861px) {
  .fvList {
    position: relative;
    height: 100dvh; } }

.fvList_logo {
  position: absolute;
  z-index: 100;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  @media only screen and (min-width: 861px) {
    .fvList_logo {
      width: calc(300 / 1280 * 100vw); } }
  @media only screen and (max-width: 861px) {
    .fvList_logo {
      width: 180px;
      height: auto; } }
  @media only screen and (min-width: 768px) and (max-width: 1024px) {
    .fvList_logo {
      width: 250px; } }
  .fvList_logo img {
    width: 100%;
    height: auto; }

.fvList_inner {
  position: relative;
  width: 100%; }
  @media only screen and (min-width: 861px) {
    .fvList_inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  @media only screen and (max-width: 861px) {
    .fvList_inner {
      height: 100dvh; } }

.fvList_item {
  cursor: pointer;
  position: relative; }
  @media only screen and (min-width: 861px) {
    .fvList_item {
      width: 50%;
      -webkit-transition: ease .3s;
      transition: ease .3s; }
      .fvList_item:hover .fvList_item_info:after {
        background-color: #fff; }
      .fvList_item:hover:before {
        opacity: 0; } }
  @media only screen and (max-width: 861px) {
    .fvList_item {
      display: block;
      height: 50.5dvh; } }
  @media only screen and (min-width: 861px) {
    .fvList_item + .fvList_item .fvList_item_info {
      right: calc(50 / 1280 * 100vw);
      left: initial; } }
  @media only screen and (max-width: 861px) {
    .fvList_item + .fvList_item .fvList_item_info {
      bottom: 40px;
      top: initial; } }
  .fvList_item:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.15);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    -webkit-transition: ease .3s;
    transition: ease .3s; }

.fvList_item_img {
  width: 100%; }
  @media only screen and (min-width: 861px) {
    .fvList_item_img {
      height: 100%;
      -o-object-fit: cover;
      object-fit: cover; } }
  @media only screen and (min-width: 768px) and (max-width: 1024px) {
    .fvList_item_img {
      height: auto !important; } }
  @media only screen and (max-width: 861px) {
    .fvList_item_img {
      height: 100%;
      -o-object-fit: cover;
      object-fit: cover; } }

.fvList_item_info {
  position: absolute;
  left: calc(50 / 1280 * 100vw);
  bottom: 42px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  z-index: 2; }
  @media only screen and (min-width: 861px) {
    .fvList_item_info {
      -webkit-transition: ease .3s;
      transition: ease .3s; }
      .fvList_item_info:after {
        content: '';
        display: block;
        width: 96%;
        height: 1px;
        background-color: transparent;
        position: absolute;
        bottom: -8px;
        left: 0;
        -webkit-transition: ease .3s;
        transition: ease .3s; }
      .men .fvList_item_info:after {
        width: 92%; } }
  @media only screen and (max-width: 861px) {
    .fvList_item_info {
      height: -webkit-fit-content;
      height: -moz-fit-content;
      height: fit-content;
      top: 30px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%); } }

.fvList_itemList {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden; }

.fvList_item_text {
  position: relative;
  font-family: "span", serif;
  font-size: max(18 / 1280 * 100vw, 14.4px);
  font-weight: 400;
  letter-spacing: .32em;
  color: #fff; }
  @media only screen and (max-width: 861px) {
    .fvList_item_text {
      font-size: 16px; } }

.fvSection {
  position: relative; }

.fvSection_logo {
  position: absolute;
  z-index: 100;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  @media only screen and (min-width: 861px) {
    .fvSection_logo {
      width: calc(292.03 / 1280 * 100vw); } }
  @media only screen and (max-width: 861px) {
    .fvSection_logo {
      width: 180px; } }
  @media only screen and (min-width: 768px) and (max-width: 1024px) {
    .fvSection_logo {
      width: 250px; } }
  .fvSection_logo img {
    width: 100%;
    height: auto; }

.fvSection_gender {
  position: absolute;
  z-index: 100;
  bottom: calc(105 / 1280 * 100vw);
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%); }
  @media only screen and (max-width: 861px) {
    .fvSection_gender {
      bottom: 40px; } }

.fvSection_genderText {
  color: #fff;
  font-family: "span", serif;
  font-size: max(18 / 1280 * 100vw, 14.4px);
  letter-spacing: .32em; }
  @media only screen and (max-width: 861px) {
    .fvSection_genderText {
      font-size: 16px; } }
  @media only screen and (min-width: 768px) and (max-width: 1024px) {
    .fvSection_genderText {
      font-size: 20px; } }

.fvSection_video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  z-index: 1;
  pointer-events: none; }

/*=============================================

	ナビ

==============================================*/
.navSection {
  height: 100dvh; }

.navSection_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (min-width: 861px) {
    .navSection_head {
      width: calc(775 / 1280 * 100vw);
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      gap: 60px;
      margin-bottom: calc(50 / 1280 * 100vw); } }
  @media only screen and (max-width: 861px) {
    .navSection_head {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; } }

.navSection_headCatch {
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  font-size: 16px;
  letter-spacing: .12em;
  width: 100%;
  line-height: 1.8; }
  @media only screen and (max-width: 861px) {
    .navSection_headCatch {
      font-size: 15px; } }

.navSection_headRead {
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  font-size: 12px;
  letter-spacing: .12em;
  line-height: 1.9; }
  @media only screen and (max-width: 861px) {
    .navSection_headRead {
      margin-top: 24px;
      line-height: 1.8; } }

@media only screen and (min-width: 861px) {
  .navSection_content {
    width: calc(816 / 1280 * 100vw); } }

@media only screen and (max-width: 861px) {
  .navSection_content {
    padding: 40px 36px 96px 20px;
    height: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch; } }

.navSection_contentInner {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, 1fr);
  gap: 32px; }
  @media only screen and (max-width: 861px) {
    .navSection_contentInner {
      margin-top: 60px;
      width: 100%;
      -ms-grid-columns: (1fr)[2];
      grid-template-columns: repeat(2, 1fr);
      gap: 32px 16px; }
      .modal_fixedNav_wrap .navSection_contentInner {
        padding-top: 70px;
        margin-top: 0; } }

@media only screen and (min-width: 861px) {
  .navSection_itemImg {
    cursor: pointer;
    border: 1px solid transparent;
    -webkit-transition: ease .3s;
    transition: ease .3s; }
    .navSection_itemImg:hover {
      border: 1px solid #fff; } }

.navSection_itemImg img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover; }

.navSection_info {
  margin-top: calc(16 / 1280 * 100vw); }
  @media only screen and (max-width: 861px) {
    .navSection_info {
      margin-top: 16px; } }

.navSection_navTitle {
  font-family: "span", serif;
  color: #fff;
  font-size: 16px;
  letter-spacing: .11em; }

.navSection_navText {
  margin-top: 8px;
  color: #fff;
  font-size: 12px;
  letter-spacing: .08em;
  line-height: 1.8;
  font-family: "Noto Sans JP", sans-serif; }

.navButton,
.modal_navButton_close {
  position: fixed;
  top: 30px;
  right: 30px;
  z-index: 100; }
  @media only screen and (min-width: 861px) {
    .navButton,
    .modal_navButton_close {
      cursor: pointer;
      -webkit-transition: opacity ease .3s;
      transition: opacity ease .3s; }
      .navButton:hover,
      .modal_navButton_close:hover {
        opacity: .7; } }
  @media only screen and (max-width: 861px) {
    .navButton,
    .modal_navButton_close {
      top: 20px;
      right: 20px; } }

/*=============================================

	ページスタイル

==============================================*/
/* セクションコンテナ */
.scrollContainer {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden; }
  @media only screen and (max-width: 861px) {
    .scrollContainer {
      height: 100dvh; } }

/* セクション */
.section {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  will-change: transform; }
  @media only screen and (max-width: 861px) {
    .section {
      height: 100dvh; } }

.section:first-child {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  z-index: 10; }

/* セクションの背景画像（body.men / body.women で切り替え） */
.men .section:nth-child(2) {
  background-image: url(../images/soukai_series/men/bg2-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .men .section:nth-child(2) {
      background-image: url(../images/soukai_series/men/bg2-sp.jpg); } }

.women .section:nth-child(2) {
  background-image: url(../images/soukai_series/women/bg2-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .women .section:nth-child(2) {
      background-image: url(../images/soukai_series/women/bg2-sp.jpg); } }

.men .section:nth-child(3) {
  background-image: url(../images/soukai_series/men/bg3-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .men .section:nth-child(3) {
      background-image: url(../images/soukai_series/men/bg3-sp.jpg); } }

.women .section:nth-child(3) {
  background-image: url(../images/soukai_series/women/bg3-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .women .section:nth-child(3) {
      background-image: url(../images/soukai_series/women/bg3-sp.jpg); } }

.men .section:nth-child(4) {
  background-image: url(../images/soukai_series/men/bg4-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .men .section:nth-child(4) {
      background-image: url(../images/soukai_series/men/bg4-sp.jpg); } }

.women .section:nth-child(4) {
  background-image: url(../images/soukai_series/women/bg4-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .women .section:nth-child(4) {
      background-image: url(../images/soukai_series/women/bg4-sp.jpg); } }

.men .section:nth-child(5) {
  background-image: url(../images/soukai_series/men/bg5-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .men .section:nth-child(5) {
      background-image: url(../images/soukai_series/men/bg5-sp.jpg); } }

.women .section:nth-child(5) {
  background-image: url(../images/soukai_series/women/bg5-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .women .section:nth-child(5) {
      background-image: url(../images/soukai_series/women/bg5-sp.jpg); } }

.men .section:nth-child(6) {
  background-image: url(../images/soukai_series/men/bg6-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .men .section:nth-child(6) {
      background-image: url(../images/soukai_series/men/bg6-sp.jpg); } }

.women .section:nth-child(6) {
  background-image: url(../images/soukai_series/women/bg6-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .women .section:nth-child(6) {
      background-image: url(../images/soukai_series/women/bg6-sp.jpg); } }

.men .section:nth-child(7) {
  background-image: url(../images/soukai_series/men/bg7-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .men .section:nth-child(7) {
      background-image: url(../images/soukai_series/men/bg7-sp.jpg); } }

.women .section:nth-child(7) {
  background-image: url(../images/soukai_series/women/bg7-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .women .section:nth-child(7) {
      background-image: url(../images/soukai_series/women/bg7-sp.jpg); } }

.men .section:nth-child(8) {
  background-image: url(../images/soukai_series/men/bg8-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .men .section:nth-child(8) {
      background-image: url(../images/soukai_series/men/bg8-sp.jpg); } }

.women .section:nth-child(8) {
  background-image: url(../images/soukai_series/women/bg8-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .women .section:nth-child(8) {
      background-image: url(../images/soukai_series/women/bg8-sp.jpg); } }

.men .section:nth-child(9) {
  background-image: url(../images/soukai_series/men/bg9-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .men .section:nth-child(9) {
      background-image: url(../images/soukai_series/men/bg9-sp.jpg); } }

.women .section:nth-child(9) {
  background-image: url(../images/soukai_series/women/bg9-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .women .section:nth-child(9) {
      background-image: url(../images/soukai_series/women/bg9-sp.jpg); } }

.men .section:nth-child(10) {
  background-image: url(../images/soukai_series/men/bg10-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .men .section:nth-child(10) {
      background-image: url(../images/soukai_series/men/bg10-sp.jpg); } }

.women .section:nth-child(10) {
  background-image: url(../images/soukai_series/women/bg10-pc.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }
  @media only screen and (max-width: 861px) {
    .women .section:nth-child(10) {
      background-image: url(../images/soukai_series/women/bg10-sp.jpg); } }

.sectionInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (min-width: 861px) {
    .sectionInner {
      width: 1030px;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-left: 170px;
      margin-right: 80px; } }
  @media only screen and (min-width: 1040px) and (max-width: 1200px) and (orientation: landscape) {
    .sectionInner {
      width: 800px; } }
  @media only screen and (max-width: 861px) {
    .sectionInner {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      padding: 100px 40px 54px 52px;
      height: 100%;
      width: auto;
      overflow-y: auto;
      -webkit-overflow-scrolling: touch; } }

.section_mainContentCategory {
  font-family: "span", serif;
  font-size: 40px;
  letter-spacing: .11em;
  color: #fff; }
  @media only screen and (max-width: 861px) {
    .section_mainContentCategory {
      font-size: 42px; } }

.section_mainContentCatch {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  letter-spacing: .16em;
  line-height: 1.8;
  color: #fff;
  margin-top: 72px; }
  @media only screen and (max-width: 861px) {
    .section_mainContentCatch {
      margin-top: 48px;
      font-size: 15px;
      line-height: 1.5; } }

.section_mainContent_link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  width: 143px;
  padding: 4.5px 8px;
  position: relative;
  overflow: hidden;
  background-color: #fff;
  text-decoration: none;
  margin-top: 24px;
  -webkit-transition: ease .3s;
  transition: ease .3s; }
  @media only screen and (min-width: 861px) {
    .section_mainContent_link:before {
      content: "";
      position: absolute;
      inset: 0;
      background-color: #000;
      -webkit-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0);
      -webkit-transform-origin: left center;
      -ms-transform-origin: left center;
      transform-origin: left center;
      -webkit-transition: -webkit-transform .3s ease;
      transition: -webkit-transform .3s ease;
      transition: transform .3s ease;
      transition: transform .3s ease, -webkit-transform .3s ease;
      z-index: 0; }
    .section_mainContent_link:hover:before {
      -webkit-transform: scaleX(1);
      -ms-transform: scaleX(1);
      transform: scaleX(1); }
    .section_mainContent_link:hover .section_mainContent_linkText {
      color: #fff; }
    .section_mainContent_link:hover .section_mainContent_link {
      -webkit-filter: brightness(0) invert(1);
      filter: brightness(0) invert(1); }
    .section_mainContent_link:hover .section_mainContent_linkArrow {
      -webkit-filter: brightness(0) invert(1);
      filter: brightness(0) invert(1); } }
  @media only screen and (max-width: 861px) {
    .section_mainContent_link {
      margin-top: 16px; } }

.section_mainContent_linkText {
  color: #000;
  font-family: "span", serif;
  font-size: 14px;
  letter-spacing: 0.11em;
  text-transform: lowercase;
  position: relative;
  z-index: 1;
  -webkit-transition: ease .3s;
  transition: ease .3s; }

.section_mainContent_linkArrow {
  width: 15px;
  position: relative;
  z-index: 1; }

.section_subContent {
  width: 430px; }
  @media only screen and (max-width: 861px) {
    .section_subContent {
      width: 100%; } }

.section_subContent_text {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  letter-spacing: .1em;
  line-height: 2.08;
  word-break: break-all; }
  @media only screen and (max-width: 861px) {
    .section_subContent_text {
      letter-spacing: .12em;
      line-height: 1.5; } }
  @media only screen and (min-width: 768px) and (max-width: 1024px) {
    .section_subContent_text {
      width: 550px; } }

.section_iconList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 77px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start; }
  @media only screen and (max-width: 861px) {
    .section_iconList {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
      margin-top: 48px; } }
  @media only screen and (min-width: 768px) and (max-width: 1024px) {
    .section_iconList {
      -ms-grid-columns: (1fr)[5];
      grid-template-columns: repeat(5, 1fr); } }

@media only screen and (max-width: 861px) {
  .section_iconList_node {
    width: 68px; } }

.section_iconList_node img {
  width: 100%;
  height: 100%; }

.section_subContent_caution {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 11px;
  letter-spacing: .1em;
  margin-top: 37px; }
  @media only screen and (min-width: 861px) {
    .section_subContent_caution {
      margin-top: 24px; } }

@media only screen and (max-width: 861px) {
  .section_subContent {
    margin-top: 72px; } }

/* セクション内コンテンツ */
.section_text {
  font-size: 1.2rem;
  opacity: 0.9;
  max-width: 600px; }

.scrollBar {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10; }
  @media only screen and (max-width: 861px) {
    .scrollBar {
      left: initial;
      right: 20px; } }
  .scrollBar:before {
    content: "Scroll";
    position: absolute;
    bottom: 135px;
    font-family: "span", serif;
    color: #fff;
    font-size: 14px;
    letter-spacing: .11em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl; }
    @media only screen and (min-width: 861px) {
      .scrollBar:before {
        left: 30px; } }
    @media only screen and (max-width: 861px) {
      .scrollBar:before {
        font-size: 12px;
        bottom: 50px;
        right: -6.5px; } }
    @media only screen and (min-width: 768px) and (max-width: 1024px) {
      .scrollBar:before {
        font-size: 14px; } }

.scrollBar_section {
  position: absolute;
  bottom: 0;
  z-index: 10;
  right: 20px; }

.scrollBar_inner {
  position: absolute;
  bottom: 0;
  left: 23px;
  width: 1px;
  height: 180px;
  overflow: hidden;
  background-color: rgba(255, 255, 255, 0.5);
  z-index: 1; }
  @media only screen and (max-width: 861px) {
    .scrollBar_inner {
      left: initial;
      right: 0;
      height: 40px; } }
  .scrollBar_inner::after {
    content: "";
    position: absolute;
    width: 1px;
    height: 180px;
    background-color: #707070;
    -webkit-animation: scrolldown 4s ease infinite 1s;
    animation: scrolldown 4s ease infinite 1s; }
    @media only screen and (max-width: 861px) {
      .scrollBar_inner::after {
        height: 40px; } }

@-webkit-keyframes scrolldown {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); }
  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%); } }

@keyframes scrolldown {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); }
  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%); } }

/* ナビゲーション */
.pageNav {
  position: fixed;
  left: 40px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 1000;
  border-left: 1px solid #fff;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 1s ease, visibility 1s ease;
  transition: opacity 1s ease, visibility 1s ease;
  height: 100%; }
  @media only screen and (min-width: 861px) {
    .pageNav {
      width: 1px; } }
  @media only screen and (min-width: 768px) and (max-width: 1024px) {
    .pageNav {
      width: 35px; } }
  body[data-index="0"] .pageNav,
  body[data-index="1"] .pageNav {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: none;
    transition: none; }
  body[data-index="2"] .pageNav,
  body[data-index="3"] .pageNav,
  body[data-index="4"] .pageNav,
  body[data-index="5"] .pageNav,
  body[data-index="6"] .pageNav,
  body[data-index="7"] .pageNav,
  body[data-index="8"] .pageNav,
  body[data-index="9"] .pageNav {
    opacity: 1;
    visibility: visible;
    -webkit-transition: opacity 1s ease, visibility 1s ease;
    transition: opacity 1s ease, visibility 1s ease; }
  @media only screen and (max-width: 861px) {
    .pageNav {
      left: 8px; } }

.pageNav_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 24px; }
  .men .pageNav_inner {
    gap: 39px; }
    @media only screen and (max-width: 861px) {
      .men .pageNav_inner {
        gap: 35px; } }
  @media only screen and (max-width: 861px) {
    .pageNav_inner {
      position: relative;
      top: 50%;
      -webkit-transform: translatey(-50%);
      -ms-transform: translatey(-50%);
      transform: translatey(-50%);
      gap: 16px; } }
  @media only screen and (min-width: 768px) and (max-width: 1024px) {
    .pageNav_inner {
      height: initial;
      max-height: initial; } }

.pageNav_item {
  cursor: pointer;
  position: relative;
  color: #fff !important;
  font-family: "span", serif;
  font-size: 12px;
  letter-spacing: 0.11em;
  line-height: 2.75;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  opacity: .3;
  -webkit-transition: opacity .3s ease;
  transition: opacity .3s ease; }
  @media (hover: hover) {
    .pageNav_item:hover {
      opacity: 1; } }
  @media only screen and (max-width: 861px) {
    .pageNav_item {
      white-space: nowrap; } }
  .pageNav_item.is-active {
    opacity: 1; }
    .pageNav_item.is-active:after {
      content: '';
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      left: -2px;
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background: #fff; }

.modal_fixedNav_wrap {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .3s ease, visibility .3s ease;
  transition: opacity .3s ease, visibility .3s ease; }
  @media only screen and (max-width: 861px) {
    .modal_fixedNav_wrap {
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
      padding: 10px 0 0; } }
  .modal_fixedNav_wrap.is-active {
    opacity: 1;
    visibility: visible; }

.modal_fixedNav {
  background-image: url(../images/soukai_series/modal_bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: calc(100% - 60px);
  height: calc(100% - 60px);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 1; }
  @media only screen and (max-width: 861px) {
    .modal_fixedNav {
      background-image: url(../images/soukai_series/modal_bg-sp.jpg);
      width: calc(100% - 20px);
      height: auto;
      position: relative;
      top: 0;
      left: 0;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none;
      margin: 0 auto 10px; } }

.modal_fixedNav_bg .modal_navButton_close {
  position: absolute; }

.modal_fixedNav_inner {
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 2; }
  @media only screen and (min-width: 861px) {
    .modal_fixedNav_inner {
      width: calc(816 / 1280 * 100vw); } }
  @media only screen and (max-width: 861px) {
    .modal_fixedNav_inner {
      width: calc(100% - 40px);
      position: relative;
      top: 0;
      left: 0;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none;
      padding-bottom: 40px; } }

.modal_fixedNav_topButton {
  margin: 48px auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  cursor: pointer;
  font-family: "Noto Sans JP", sans-serif;
  color: #fff;
  font-size: 14px;
  letter-spacing: .32em;
  color: #fff;
  border-bottom: 1px solid #fff;
  padding-bottom: 10px; }
  @media only screen and (min-width: 861px) {
    .modal_fixedNav_topButton {
      -webkit-transition: ease .3s;
      transition: ease .3s; }
      .modal_fixedNav_topButton:hover {
        border-bottom: 1px solid transparent; } }
  @media only screen and (max-width: 861px) {
    .modal_fixedNav_topButton {
      margin: 48px auto 0;
      font-size: 12px; } }
