@charset "UTF-8";
/*SPのフォントサイズ
 デザインカンプ横幅 720pxに合わせるために仕様*/
/*ゴシック上書き*/
/*font-family
アルファベット ： Acumin Pro SemiCondensed Bold
font-family: acumin-pro-semi-condensed, sans-serif;
日本語 ： 游ゴシック*/
/*
Regular: 400;
Medium: 500
SemiBold: 600 (デフォ)
Bold: 700;
*/
/*
	@include hover() {
		opacity: 0.6;
	}
*/
/*transition*/
/*scroll animation*/
@keyframes scrollBound {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-10px);
  }
}
/* SP header 上から再表示 */
@keyframes spHeaderScroll {
  0% {
    opacity: 0;
  }
  10% {
    transform: translateY(-100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes spHeaderScroll_reverse {
  0% {
    opacity: 1;
  }
  100% {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
  }
}
/*PC header 一旦消えて 再度表示*/
@keyframes pcHeaderScroll {
  0% {
    opacity: 0;
  }
  20% {
    position: fixed;
    top: 0;
    bottom: auto;
    transform: translateY(-100%);
    height: 0.8rem;
    opacity: 0;
  }
  100% {
    position: fixed;
    top: 0;
    bottom: auto;
    height: 0.8rem;
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes pcHeaderScrollReverse {
  0% {
    opacity: 0;
  }
  1% {
    top: auto;
    bottom: 0;
    height: 1rem;
  }
  100% {
    top: auto;
    bottom: 0;
    height: 1rem;
    opacity: 1;
  }
}
/*
	$line:イラレの行の値
	$size:イラレの文字の値

	@include lh(38, 15);
*/
/*
	$size:object-fitの値

	@include objectfit();
	@include objectfit('contain');
*/
/*
	@include taJ();
*/
/*
	@extend %rightarr;
*/
/*
@mixin f_roboto($weight:400) {
	font-family: 'Roboto',"游ゴシック","游ゴシック体","Yu Gothic",YuGothic, sans-serif;
	font-weight:$weight;
}
Robotoフォント設定
400：Regular（デフォルト）
500：Medium
700：Bold
*/
/*
	$weight:フォントの太さ

	@include f_min();
	@include f_min(500);
	@include f_min(600);
*/
/*
	$color:色指定
	$stripe:線サイズ
	$spacing:線の空きサイズ
	$height:太さ

	@include dotted(#e6e1d2, 4,4,2);
*/
/*
example
@include dotted-y(#COLOR, WidthPX,SpaceingPX,LengthPX,); 横破線
@include dotted-y(#e6e1d2, 4,4,2,10);
*/
html {
  font-family: acumin-pro-semi-condensed, "Yu Gothic", YuGothic, "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
  /*font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;*/
  font-size: 100px;
  font-feature-settings: "palt";
  /* SP */
}
@media print, screen and (min-width: 641px) {
  html {
    line-height: 1;
  }
}
@media screen and (max-width: 640px) {
  html {
    -webkit-text-size-adjust: 100%;
  }
}
@media print, screen and (min-width: 1440px) and (max-width: 1599px) {
  html {
    font-size: 90px;
  }
}
@media print, screen and (min-width: 1366px) and (max-width: 1439px) {
  html {
    font-size: 85px;
  }
}
@media print, screen and (min-width: 1280px) and (max-width: 1365px) {
  html {
    font-size: 80px;
  }
}
@media print, screen and (min-width: 641px) and (max-width: 1279px) {
  html {
    font-size: 75px;
  }
}
@media screen and (min-width: 428px) and (max-width: 640px) {
  html { /* SP： 428px から 640pxの間 ※6.7inch(iPhone12ProMax) */
    font-size: 114px;
  }
}
@media screen and (min-width: 414px) and (max-width: 427px) {
  html { /* SP： 414px から 427pxの間 ※iPhone6 Plus・6s Plus・7 Plus・8 Plus・XR・11・XS Max・11 Pro Max */
    font-size: 110px;
  }
}
@media screen and (min-width: 375px) and (max-width: 413px) {
  html { /* SP： 375px から 413pxの間 ※iPhone6・6s・7・8・SE(2)・X・XS・11 Pro */ /* 基本 */
    font-size: 100px;
  }
}
@media screen and (min-width: 360px) and (max-width: 374px) {
  html { /* SP： 360px から 374pxの間 ※小さめAndroid */
    font-size: 96px;
  }
}
@media screen and (max-width: 359px) {
  html { /* SP： 359px以下 ※iPhone 5・5s・SE(1) */
    font-size: 85px;
  }
}
html.edge {
  -ms-text-size-adjust: 100%;
}
html.safari {
  -webkit-font-smoothing: antialiased;
}
html.scrollingFlg {
  pointer-events: none;
}

body {
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
  font-size: 0.11rem;
}
@media print, screen and (min-width: 641px) {
  body {
    min-width: 1024px;
  }
}

.touchevents * {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.chrome body {
  image-rendering: -webkit-optimize-contrast;
}

h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, td, th, figure {
  margin: 0;
  padding: 0;
}

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

img {
  -ms-interpolation-mode: bicubic;
  border-style: none;
  vertical-align: bottom;
}

svg:not(:root) {
  overflow: hidden;
}

hr {
  height: 0;
  overflow: visible;
  box-sizing: border-box;
}

b, strong {
  font-weight: inherit;
  font-weight: bolder;
}

a {
  outline: 0;
  text-decoration: none;
  color: inherit;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

li {
  list-style: none;
}

sub, sup {
  position: relative;
  vertical-align: baseline;
  line-height: 0;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

audio, video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

canvas {
  display: inline-block;
}

input, select, button, optgroup, textarea {
  font-family: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  outline: 0;
  margin: 0;
  padding: 0;
}

button, input {
  overflow: visible;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

button:-moz-focusring,
input:-moz-focusring {
  outline: 1px dotted ButtonText;
}

button, select {
  cursor: pointer;
  text-transform: none;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border: none;
}

select::-ms-expand {
  display: none;
}

/* プリント対応 */
[data-hidePrintMessageArea] {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  pointer-events: none;
  opacity: 0;
}

@media print {
  body {
    position: relative;
    top: 100px;
  }
  body:before {
    content: "ページを印刷する際は一番下までスクロールして下さい。";
    display: none;
    white-space: pre;
    font-size: 20px;
    padding: 10px 10px;
    border: 3px solid #000;
    background-color: #FFF;
    color: #000;
    position: absolute;
    top: -100px;
    left: 0px;
    right: 0px;
    text-align: center;
    box-sizing: border-box;
  }
  .chrome body:before {
    content: "ページを印刷する際は一番下までスクロールして下さい。\a画像を表示させる場合は、「基本設定」→「背景のグラフィック」を有効にして下さい。";
  }
  .ie body:before {
    content: "ページを印刷する際は一番下までスクロールして下さい。\a画像を表示させる場合は、「印刷プレビュー」→「ページ設定」→「背景の色とイメージを印刷する」を有効にして下さい。";
  }
  .safari body:before {
    content: "ページを印刷する際は一番下までスクロールして下さい。\a画像を表示させる場合は、「詳細を表示」→「背景をプリント」を有効にして下さい。";
  }
  .edge body:before {
    content: "※Microsoft Edgeは背景や画像を印刷できません。";
  }
  .addPrintMessage body:before {
    display: block;
  }
  * {
    background-attachment: scroll !important;
  }
}
/* 721px以上は消す */
@media print, screen and (min-width: 641px) {
  [data-sc-sp] {
    display: none !important;
  }
}
/* 720px以下は消す */
@media screen and (max-width: 640px) {
  [data-sc-pc] {
    display: none !important;
  }
}
.mod_main {
  overflow: hidden;
}

.device-tablet .mod_main {
  width: calc(100% + 1px);
}

/* 自動高さ調整 */
[data-autoheight],
[data-pc-autoheight],
[data-sp-autoheight] {
  transition: none !important;
}

/* 遅延読み込み */
[data-lf] {
  opacity: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  transition: opacity 1s;
}

[data-lf][src],
[data-lf][style*=background-image],
[data-lf].load_view {
  opacity: 1;
}

.flowbottomSP {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 44px;
  display: table;
  text-align: center;
  transition: transform 1s;
  transform: translateY(100%);
  z-index: 999;
}
.flowbottomSP.active {
  transform: none;
}
.flowbottomSP a {
  display: table-cell;
  background-color: #FFF;
  vertical-align: middle;
}
.flowbottomSP a:nth-child(2) {
  background-color: #FFFEB7;
}
.flowbottomSP span {
  font-size: 0.11rem;
}

.flowbottomSPinview {
  position: absolute;
  top: 105vh;
  bottom: 0;
  pointer-events: none;
  width: 0;
}

/* ページトップボタン */
.pagetopbtn {
  position: fixed;
  right: calc(100vw * 20 / 720);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 999;
  bottom: 0.2rem;
}
@media print, screen and (min-width: 641px) {
  .pagetopbtn {
    right: 0.7rem;
    bottom: 0.7rem;
  }
}
.pagetopbtn img {
  width: 100%;
  height: auto;
  filter: opacity(0%);
}
.pageLoaded .pagetopbtn img {
  transition: filter 1s, opacity 0.2s;
}
.pagetopbtn.active {
  pointer-events: auto;
}
.pagetopbtn.active img {
  filter: opacity(100%) !important;
}
.no-touchevents .pagetopbtn:hover {
  opacity: 0.6;
}
.pageLoaded .pagetopbtn {
  transition: all 0.5s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
.pagetopbtn.roman_top {
  bottom: 0.3rem;
}
@media screen and (max-width: 640px) {
  .pageLoaded .pagetopbtn.roman_top.is_adj {
    bottom: 1.2rem;
  }
}
.subPage .pagetopbtn {
  bottom: 1rem;
}
@media screen and (max-width: 640px) {
  .subPage .pagetopbtn.is_adj {
    bottom: 1.2rem;
  }
}
.pageLoaded .pagetopbtn.roman_detail {
  transition: all 1s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
@media screen and (max-width: 640px) {
  .pagetopbtn.roman_detail {
    right: 0.2rem;
  }
  .pageLoaded .pagetopbtn.roman_detail img {
    transition: all 1s, opacity;
  }
  .pagetopbtn.roman_detail img.hide {
    filter: opacity(0);
    transition: all 0.15s, opacity;
  }
}
@media screen and (max-width: 640px) {
  .pagetopbtn.is_replace {
    animation: detail_pageTop_btn 1s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
  }
}
@media screen and (max-width: 640px) {
  .pagetopbtn.is_detail_adj {
    transform: translateY(-0.95rem);
  }
  .pageLoaded .pagetopbtn.is_detail_adj {
    transition: all 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
}

@keyframes detail_pageTop_btn {
  0% {
    top: calc(100% - 44px - 0.25rem);
    right: calc(100vw * 20 / 720);
  }
  100% {
    top: calc(100% - 44px - 0.25rem);
    right: calc(100vw * 20 / 720);
  }
}
.pagetopbtnInview {
  position: absolute;
  top: 200vh;
  bottom: 0;
  pointer-events: none;
  width: 0;
}

/* ヘッダー */
.pageLoaded .mod_header {
  transition: all 0.5s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  opacity: 1;
}
.pageLoaded .mod_header.is_hide {
  opacity: 0;
  pointer-events: none;
}

/* common */
/* TOP header*/
.top_header {
  position: fixed;
  width: 100%;
  left: 0;
  box-sizing: border-box;
  background-color: #fff;
  z-index: 10;
}
@media screen and (max-width: 640px) {
  .top_header {
    top: 0;
    height: 1.05rem;
    padding-left: calc(100vw * 40 / 720);
    padding-right: calc(100vw * 40 / 720);
    opacity: 0;
  }
}
@media print, screen and (min-width: 641px) {
  .top_header {
    position: absolute;
    bottom: 0;
    right: 0;
    max-width: 10rem;
    height: 1rem;
    padding: 0.13rem 0;
    margin: 0 auto;
    z-index: 100;
  }
}
.pageLoaded .top_header {
  opacity: 1;
}
@media screen and (max-width: 640px) {
  .pageLoaded .top_header {
    transition: all 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79);
    opacity: 0;
  }
}
@media print, screen and (min-width: 641px) {
  .pageLoaded .top_header {
    transition: all 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
}
@media screen and (max-width: 640px) {
  .pageLoaded .top_header.is_header_view {
    opacity: 1;
  }
}
.pageLoaded .top_header.is_resize {
  background-color: rgba(255, 255, 255, 0.85);
}
@media print, screen and (min-width: 641px) {
  .pageLoaded .top_header.is_resize {
    max-width: none;
    animation: pcHeaderScroll 0.6s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
    top: 0;
  }
  .pageLoaded .top_header.is_resize .list.box {
    align-items: center;
  }
}
@media screen and (max-width: 640px) {
  .pageLoaded .top_header.is_resize {
    animation: spHeaderScroll 0.6s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
    height: 0.8rem !important;
  }
  .pageLoaded .top_header.is_resize .link_list .list:nth-of-type(n + 3) {
    margin-top: 0.08rem !important;
  }
}
@media screen and (max-width: 640px) {
  .pageLoaded .top_header.no_first.is_resize_reverse {
    animation: spHeaderScroll_reverse 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
  }
}
@media screen and (max-width: 640px) {
  .pageLoaded .top_header.is_footet_hide {
    opacity: 0;
    pointer-events: none;
  }
}
.top_header .link_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  box-sizing: border-box;
}
.top_header .link_list {
  display: flex;
}
@media screen and (max-width: 640px) {
  .top_header .link_list {
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 641px) {
  .top_header .link_list {
    justify-content: center;
    height: 100%;
  }
}
.top_header .list {
  position: relative;
  display: block;
  z-index: 1;
  width: 50%;
}
.pageLoaded .top_header .list {
  transition: all 0.5s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
@media print, screen and (min-width: 641px) {
  .top_header .list {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
  }
  .top_header .list.noboribetsu {
    padding: 0 0.44rem;
  }
  .top_header .list.shiraoi {
    padding: 0 0.53rem;
  }
  .top_header .list.info {
    padding: 0 0.34rem;
  }
  .top_header .list.box {
    padding: 0 0.35rem;
  }
}
@media screen and (max-width: 640px) {
  .top_header .list:nth-of-type(n + 3) {
    margin-top: 0.15rem;
  }
  .top_header .list:nth-of-type(2n + 1)::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background-color: #0a0a0a;
    z-index: 1;
  }
}
@media screen and (max-width: 640px) {
  .top_header .list:not(.box) {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.no-touchevents .top_header .list:not(.box) .link {
  position: relative;
  display: inline-block;
}
.no-touchevents .top_header .list:not(.box) .link::after {
  position: absolute;
  content: "";
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #0a0a0a;
  transform: scale(0, 1);
  transform-origin: right top;
}
.pageLoaded .top_header .list:not(.box) .link::after {
  transition: transform 0.4s 0.1s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
.no-touchevents .top_header .list:not(.box) .link:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}
.top_header .list::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: #0a0a0a;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .top_header .list::before {
    width: 2px;
  }
}
.top_header .list.box {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media print, screen and (min-width: 641px) {
  .top_header .list.box {
    align-items: start;
  }
}
.top_header .list.box .rsv {
  width: 1.23rem;
  border: 1.5px solid #0a0a0a;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .top_header .list.box .rsv {
    margin-left: 0.12rem;
  }
}
@media print, screen and (min-width: 641px) {
  .top_header .list.box .rsv {
    width: 1.4rem;
    height: 100%;
    border: 3px solid #0a0a0a;
  }
  .top_header .list.box .rsv .rsv_link {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
  }
}
.no-touchevents .top_header .list.box .rsv .rsv_link {
  transition: all 0.3s 0.05s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
.no-touchevents .top_header .list.box .rsv .rsv_link:hover {
  transition: all 0.3s 0.05s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  background-color: #0a0a0a;
  color: #fff;
}
@media screen and (max-width: 640px) {
  .top_header .list.box .insta {
    width: 0.16rem;
    height: 0.16rem;
    margin-left: 0.1rem;
  }
}
@media print, screen and (min-width: 641px) {
  .top_header .list.box .insta {
    width: 0.33rem;
    height: 0.33rem;
    margin-left: 0.38rem;
  }
}
.top_header .list.box .insta .insta_link {
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(/common/img/icon_sns_instagram.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.pageLoaded .top_header .list.box .insta .insta_link {
  transition: 0.3s 0.1s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
.no-touchevents .top_header .list.box .insta .insta_link:hover {
  background-image: url(/common/img/icon_sns_instagram_bl.svg);
}
.top_header .list.box::before {
  display: none;
}
.top_header .list .link {
  display: block;
  text-align: center;
  line-height: 1.6;
  font-weight: 600;
  font-size: 0.14rem;
  letter-spacing: 0.08em;
}
.top_header .list .link span.roman {
  letter-spacing: 0;
}
@media print, screen and (min-width: 641px) {
  .top_header .list .link {
    font-size: 0.2rem;
    line-height: 1.75;
  }
}
.subPage .top_header {
  position: fixed;
  background-color: rgba(255, 255, 255, 0.85);
}
@media screen and (max-width: 640px) {
  .subPage .top_header {
    top: 0;
    opacity: 1;
    height: 0.8rem !important;
  }
  .subPage .top_header .link_list .list:nth-of-type(n + 3) {
    margin-top: 0.08rem !important;
  }
}
@media print, screen and (min-width: 641px) {
  .subPage .top_header {
    width: 100%;
    top: 0;
    max-width: 100%;
    animation: pcHeaderScroll 0.6s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
  }
}

.subPage .main_wrap {
  padding-top: 1rem;
}
@media print, screen and (min-width: 641px) {
  .subPage .main_wrap {
    padding-top: 1.1rem;
  }
}
@media screen and (max-width: 640px) {
  .subPage .sec_ttl .ja {
    margin-top: 0.1rem;
  }
}

/*----------------------
detail_header
-----------------------*/
.detailNB .mod_header .mv_top_logo {
  background-color: #d2c7b8;
}
.detailNB .mod_header .detail_header {
  background-color: #d2c7b8;
}
.detailNB .pankuzu {
  background-color: #d2c7b8;
}

.detailSO .mod_header .mv_top_logo {
  background-color: #f3cea6;
}
.detailSO .mod_header .detail_header {
  background-color: #f3cea6;
}
.detailSO .pankuzu {
  background-color: #f3cea6;
}

.mod_header {
  /* SP PC 共通 */
  /*ロゴ*/
  /* SP グロナビ回り*/
}
.mod_header .mv_top_logo {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 1.1rem;
  height: 0.87rem;
  z-index: 80;
}
@media print, screen and (min-width: 641px) {
  .mod_header .mv_top_logo {
    width: 2.2rem;
    height: 1.75rem;
  }
}
.mod_header .mv_logo_img {
  width: 0.54rem;
  height: auto;
}
@media print, screen and (min-width: 641px) {
  .mod_header .mv_logo_img {
    width: 1.1rem;
  }
}
.mod_header .detail_header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  box-sizing: border-box;
  z-index: 10;
}
@media screen and (max-width: 640px) {
  .mod_header .detail_header {
    height: 0.65rem;
  }
}
@media print, screen and (min-width: 641px) {
  .mod_header .detail_header {
    height: 1.37rem;
    opacity: 1;
  }
}
@media print, screen and (min-width: 641px) {
  .detailNB.pageLoaded .mod_header .detail_header {
    transition: 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
}
.detailNB.pageLoaded .mod_header .detail_header.is_resize_dt {
  animation: detail_header_resize_nb 1.2s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
}
.detailNB.pageLoaded .mod_header .detail_header.is_resize_dt_re.no_first {
  animation: detail_header_resize_reverse_nb 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
}
@keyframes detail_header_resize_nb {
  20% {
    height: 1.1rem;
    background-color: #d2c7b8;
  }
  100% {
    opacity: 1;
    height: 1.1rem;
    background-color: #d2c7b8;
  }
}
@keyframes detail_header_resize_reverse_nb {
  0% {
    height: 1.1rem;
    background-color: #d2c7b8;
  }
  100% {
    height: 1.37rem;
  }
}
@media print, screen and (min-width: 641px) {
  .detailSO.pageLoaded .mod_header .detail_header {
    transition: 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
}
.detailSO.pageLoaded .mod_header .detail_header.is_resize_dt {
  animation: detail_header_resize 1.2s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
}
.detailSO.pageLoaded .mod_header .detail_header.is_resize_dt_re.no_first {
  animation: detail_header_resize_reverse 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
}
@keyframes detail_header_resize {
  20% {
    height: 1.1rem;
    background-color: #f3cea6;
  }
  100% {
    opacity: 1;
    height: 1.1rem;
    background-color: #f3cea6;
  }
}
@keyframes detail_header_resize_reverse {
  0% {
    height: 1.1rem;
    background-color: #f3cea6;
  }
  100% {
    height: 1.37rem;
  }
}
.mod_header .detail_header .in {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .mod_header .detail_header .in {
    width: calc(100% - 0.4rem);
    padding-right: 0.5rem;
  }
}
@media print, screen and (min-width: 641px) {
  .mod_header .detail_header .in {
    max-width: 10rem;
    padding: 0.37rem 0 0.2rem;
  }
}
@media print, screen and (min-width: 641px) {
  .mod_header .detail_header .link_left .list {
    position: relative;
    display: block;
    z-index: 1;
  }
  .mod_header .detail_header .link_left .list::before {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    right: 0;
    width: 2px;
    height: 100%;
    z-index: 1;
    background-color: #0a0a0a;
  }
  .mod_header .detail_header .link_left .list .link {
    line-height: 1.9;
  }
}
.mod_header .detail_header .link_left .list:nth-of-type(1) {
  display: block;
}
.mod_header .detail_header .link_left .list:nth-of-type(1) .link {
  position: relative;
  display: block;
  padding: 0.06rem 0;
  padding-left: 0.14rem;
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .mod_header .detail_header .link_left .list:nth-of-type(1) .link {
    padding: 0 0.3rem 0 0.25rem;
  }
}
.pageLoaded .mod_header .detail_header .link_left .list:nth-of-type(1) .link::before {
  transition: 0.2s 0.1s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
.no-touchevents .mod_header .detail_header .link_left .list:nth-of-type(1) .link:hover::before {
  backface-visibility: hidden;
  transform: rotate(45deg) translate(-4px, 4px);
}
@media screen and (max-width: 640px) {
  .mod_header .detail_header .link_left .list:nth-of-type(1) .link span {
    position: relative;
    top: -2px;
  }
}
.mod_header .detail_header .link_left .list:nth-of-type(1) .link::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  bottom: 0;
  left: 3px;
  width: 0.25rem;
  height: 0.25rem;
  border-bottom: 1px solid #0a0a0a;
  border-left: 1px solid #0a0a0a;
  transform: rotate(45deg);
  z-index: 1;
}
@media print, screen and (min-width: 641px) {
  .mod_header .detail_header .link_left .list:nth-of-type(1) .link::before {
    width: 0.26rem;
    height: 0.26rem;
    margin: auto 0;
    border-bottom: 2px solid #0a0a0a;
    border-left: 2px solid #0a0a0a;
  }
}
@media print, screen and (min-width: 641px) {
  .mod_header .detail_header .link_left .list:nth-of-type(n + 2) .link {
    padding: 0 0.25rem;
  }
  .no-touchevents .mod_header .detail_header .link_left .list:nth-of-type(n + 2) .link .wrap {
    position: relative;
    display: inline-block;
  }
  .no-touchevents .mod_header .detail_header .link_left .list:nth-of-type(n + 2) .link .wrap::after {
    position: absolute;
    content: "";
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #0a0a0a;
    transform: scale(0, 1);
    transform-origin: right top;
  }
  .pageLoaded .mod_header .detail_header .link_left .list:nth-of-type(n + 2) .link .wrap::after {
    transition: transform 0.4s 0.1s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
  .no-touchevents .mod_header .detail_header .link_left .list:nth-of-type(n + 2) .link .wrap:hover::after {
    transform-origin: left top;
    transform: scale(1, 1);
  }
}
.mod_header .detail_header .left_wrap {
  display: flex;
  align-items: center;
}
@media print, screen and (min-width: 641px) {
  .mod_header .detail_header .link_right {
    height: 100%;
  }
  .mod_header .detail_header .link_right .link_box {
    display: flex;
    height: 100%;
  }
  .mod_header .detail_header .link_right .rsv {
    box-sizing: border-box;
    width: 1.4rem;
    height: 100%;
    border: 3px solid #0a0a0a;
  }
  .mod_header .detail_header .link_right .rsv .rsv_link {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
  }
  .no-touchevents .mod_header .detail_header .link_right .rsv .rsv_link {
    transition: all 0.3s 0.05s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
  .no-touchevents .mod_header .detail_header .link_right .rsv .rsv_link:hover {
    transition: all 0.3s 0.05s cubic-bezier(0.14, 0.42, 0.89, 0.79);
    background-color: #0a0a0a;
    color: #fff;
  }
  .mod_header .detail_header .link_right .insta {
    width: 0.33rem;
    height: 0.33rem;
    margin-left: 0.38rem;
  }
  .mod_header .detail_header .link_right .insta .insta_link {
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(/common/img/icon_sns_instagram.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  }
  .pageLoaded .mod_header .detail_header .link_right .insta .insta_link {
    transition: 0.3s 0.05s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
  .no-touchevents .mod_header .detail_header .link_right .insta .insta_link:hover {
    background-image: url(/common/img/icon_sns_instagram_bl.svg);
  }
  .mod_header .detail_header .link_right::before {
    display: none;
  }
}
.mod_header .detail_header .link {
  font-weight: 600;
  font-size: 0.13rem;
  letter-spacing: 0.05em;
}
@media print, screen and (min-width: 641px) {
  .mod_header .detail_header .link {
    font-size: 0.2rem;
  }
}
.mod_header .detail_header .link .roman {
  letter-spacing: 0;
}
.mod_header .detail_header .link.rsv_link {
  display: block;
}
@media screen and (max-width: 640px) {
  .mod_header .detail_header .link.rsv_link {
    padding: 3px 7px;
    margin-right: 0.05rem;
    border: 1.5px solid #0a0a0a;
    line-height: 1.3;
  }
}
.mod_header .detail_header .link.rsv_link span {
  vertical-align: baseline;
}
@media screen and (max-width: 640px) {
  .mod_header .sp_menu_area {
    background-color: rgb(0, 0, 0);
    position: fixed;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    top: 0;
    left: 0;
    width: 100%;
    bottom: 0;
    opacity: 0;
    z-index: 1000;
    pointer-events: none;
    display: flex;
    align-items: center;
  }
  .pageLoaded .mod_header .sp_menu_area {
    transition: opacity 0.4s;
  }
  .spmenuopen .mod_header .sp_menu_area {
    opacity: 1;
    pointer-events: auto;
  }
  .mod_header .sp_menu_area .in {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 83%;
    height: 100%;
    margin: 0 auto 0;
  }
  .mod_header .sp_menu_area .in .nav_link {
    display: block;
    text-align: center;
    font-family: "Yu Gothic", YuGothic, "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
    font-size: 0.23rem;
    letter-spacing: 0.05em;
    color: #fff;
  }
  .mod_header .sp_menu_area .in .nav_link .roman {
    letter-spacing: 0;
  }
  .mod_header .sp_menu_area .nav_area {
    position: relative;
    display: block;
    width: 100%;
    height: 44%;
    z-index: 1;
  }
  .mod_header .sp_menu_area .nav_link_wrap {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
  }
  .mod_header .sp_menu_area .bottom_area {
    padding-top: calc(100vw * 75 / 720);
  }
  .mod_header .sp_menu_area .sns_list_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .mod_header .sp_menu_area .sns_list_wrap .sns_list + .sns_list {
    margin-left: 0.19rem;
  }
  .mod_header .sp_menu_area .sns_list_wrap .sns_link {
    width: 0.35rem;
    height: 0.35rem;
  }
}
@media screen and (max-width: 640px) {
  .mod_header .menu {
    width: 0.5rem;
    height: 0.5rem;
    position: fixed;
    top: 0.075rem;
    right: 0.2rem;
    z-index: 1000;
    pointer-events: auto;
  }
  .mod_header .menu .open .bar {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 75%;
    height: 1px;
    margin: auto;
    background-color: #0a0a0a;
  }
  .pageLoaded .mod_header .menu .open .bar {
    transition: 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
  .mod_header .menu .open .bar:nth-child(1) {
    top: -0.18rem;
  }
  .mod_header .menu .open .bar:nth-child(3) {
    bottom: -0.18rem;
  }
  .mod_header .menu .close .bar {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 0;
    height: 1px;
    margin: auto;
    background-color: #fff;
  }
  .pageLoaded .mod_header .menu .close .bar {
    transition: 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
  .mod_header .menu .close .bar:nth-child(1) {
    transform: rotate(24deg);
  }
  .mod_header .menu .close .bar:nth-child(2) {
    transform: rotate(-24deg);
  }
  .spmenuopen .mod_header .menu .open .bar {
    width: 0;
  }
  .spmenuopen .mod_header .menu .close .bar {
    width: 77%;
  }
}

/*-------------------------
footer
--------------------------*/
.mod_footer {
  position: relative;
  display: block;
  padding-top: 0.2rem;
  margin: 0 0.2rem 0.18rem;
}
@media print, screen and (min-width: 641px) {
  .mod_footer {
    max-width: 10rem;
    padding-top: 1rem;
    margin: 0 auto 0.8rem;
  }
}

.footer_in {
  display: flex;
}
.footer_in .box_list .list {
  font-size: 0.14rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  line-height: 1.5;
}
.footer_in .box_list .list span.roman {
  letter-spacing: 0;
}
@media print, screen and (min-width: 641px) {
  .footer_in .box_list .list {
    font-size: 0.16rem;
  }
}
.footer_in .box_list .list + .list {
  margin-top: 0.1rem;
}
@media print, screen and (min-width: 641px) {
  .footer_in .box_list .list + .list {
    margin-top: 0.14rem;
  }
}
@media print, screen and (min-width: 641px) {
  .footer_in .box_list .list:not(.rsv) .link {
    display: inline-block;
  }
  .no-touchevents .footer_in .box_list .list:not(.rsv) .link {
    position: relative;
    display: inline-block;
  }
  .no-touchevents .footer_in .box_list .list:not(.rsv) .link::after {
    position: absolute;
    content: "";
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #0a0a0a;
    transform: scale(0, 1);
    transform-origin: right top;
  }
  .pageLoaded .footer_in .box_list .list:not(.rsv) .link::after {
    transition: transform 0.4s 0.1s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
  .no-touchevents .footer_in .box_list .list:not(.rsv) .link:hover::after {
    transform-origin: left top;
    transform: scale(1, 1);
  }
}

.footer_box_left, .footer_box_center {
  padding-bottom: 0.21rem;
}
.footer_box_left .box_list .list.rsv {
  width: 80%;
  margin-top: 0.2rem;
  text-align: center;
  box-sizing: border-box;
  border: 1.5px solid #0a0a0a;
}
@media print, screen and (min-width: 641px) {
  .footer_box_left .box_list .list.rsv {
    margin-top: 0.4rem;
    border: 2px solid #0a0a0a;
    line-height: 1.75;
  }
}
.no-touchevents .footer_box_left .box_list .list.rsv {
  transition: all 0.3s 0.05s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
.no-touchevents .footer_box_left .box_list .list.rsv:hover {
  transition: all 0.3s 0.05s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  background-color: #0a0a0a;
  color: #fff;
}
.footer_box_left .box_list .list.rsv .link {
  font-weight: 600;
  display: block;
}
.footer_box_center {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-left: 0.27rem;
}
@media screen and (max-width: 640px) {
  .footer_box_center {
    z-index: 2;
  }
}
@media print, screen and (min-width: 641px) {
  .footer_box_center {
    padding-left: 1rem;
  }
  .footer_box_center .box_list .list {
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 640px) {
  .footer_box_center .sns_wrap {
    padding-bottom: 0.03rem;
  }
}
.footer_box_center .sns_list_wrap {
  display: flex;
  align-items: center;
}
.footer_box_center .sns_list {
  display: block;
  width: 0.22rem;
  height: 0.22rem;
}
@media print, screen and (min-width: 641px) {
  .footer_box_center .sns_list {
    width: 0.35rem;
    height: 0.35rem;
  }
}
.footer_box_center .sns_list + .sns_list {
  margin-left: 0.13rem;
}
@media print, screen and (min-width: 641px) {
  .footer_box_center .sns_list + .sns_list {
    margin-left: 0.2rem;
  }
}
.footer_box_right {
  position: absolute;
  display: block;
  bottom: 0;
  right: 0;
}
.footer_box_right .footer_logo {
  width: 0.65rem;
  margin-left: auto;
}
@media print, screen and (min-width: 641px) {
  .footer_box_right .footer_logo {
    width: 1.1rem;
  }
}
.footer_box_right .footer_logo .logo_link {
  display: block;
  transform-origin: center bottom;
}
.pageLoaded .footer_box_right .footer_logo .logo_link {
  transition: all 0.4s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
.no-touchevents .footer_box_right .footer_logo .logo_link:hover {
  transform: translateY(-8px);
}
.pageLoaded .no-touchevents .footer_box_right .footer_logo .logo_link:hover {
  transition: all 0.4s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
.footer_box_right .footer_logo img {
  width: 100%;
}
.footer_box_right .copyright {
  margin-top: 0.1rem;
  font-size: 0.1rem;
}
@media print, screen and (min-width: 641px) {
  .footer_box_right .copyright {
    margin-top: 1.18rem;
    font-size: 0.14rem;
  }
}

/*ヘッダーフッター共通SNS*/
.sns_link {
  display: block;
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transform-origin: center bottom;
}
.pageLoaded .sns_link {
  transition: all 0.4s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
.no-touchevents .sns_link:hover {
  transform: translateY(-8px);
}
.pageLoaded .no-touchevents .sns_link:hover {
  transition: all 0.4s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

.insta {
  background-image: url(/common/img/icon_sns_instagram.svg);
}
.insta_w {
  background-image: url(/common/img/icon_sns_instagram_w.svg);
}

.tw {
  background-image: url(/common/img/icon_sns_twitter.svg);
}
.tw_w {
  background-image: url(/common/img/icon_sns_twitter_w.svg);
}

.fb {
  background-image: url(/common/img/icon_sns_facebook.svg);
}
.fb_w {
  background-image: url(/common/img/icon_sns_facebook_w.svg);
}

/*-------------------------
パンくず
--------------------------*/
.pankuzu {
  width: auto;
  padding: 0.12rem 0.2rem;
}
@media print, screen and (min-width: 641px) {
  .pankuzu {
    padding: 0.5rem 0;
    padding-left: calc((100% - 10rem) / 2);
    padding-right: calc((100% - 10rem) / 2);
  }
}
.pankuzu .link {
  display: inline-block;
  position: relative;
}
.pankuzu .link + .link {
  margin-left: 0.25rem;
}
@media print, screen and (min-width: 641px) {
  .pankuzu .link + .link {
    margin-left: 46px;
  }
}
.pankuzu .link + .link:before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-right: 1px solid #000;
  border-top: 1px solid #000;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -0.18rem;
  margin: auto;
  transform: rotate(45deg) skew(-10deg, -10deg);
}
@media print, screen and (min-width: 641px) {
  .pankuzu .link + .link:before {
    top: 2px;
    left: -29px;
  }
}
@media print, screen and (min-width: 641px) {
  .pankuzu .link .linkin {
    font-weight: 500;
    font-size: 0.16rem;
  }
  .no-touchevents .pankuzu .link .linkin span {
    position: relative;
    display: inline-block;
  }
  .no-touchevents .pankuzu .link .linkin span::after {
    position: absolute;
    content: "";
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #0a0a0a;
    transform: scale(0, 1);
    transform-origin: right top;
  }
  .pageLoaded .pankuzu .link .linkin span::after {
    transition: transform 0.4s 0.1s cubic-bezier(0.14, 0.42, 0.89, 0.79);
  }
  .no-touchevents .pankuzu .link .linkin span:hover::after {
    transform-origin: left top;
    transform: scale(1, 1);
  }
}

/*-----------------------
 演出
 -------------------- */
[data-pararax01] {
  position: relative;
}

[data-pararax01-inview] {
  position: absolute !important;
  top: 120px;
  bottom: 120px;
  left: 0;
  right: 0;
  width: 0%;
  margin-left: auto;
  margin-right: auto;
  pointer-events: none;
  opacity: 0;
}
@media print, screen and (min-width: 641px) and (max-height: 800px) {
  [data-pararax01-inview] {
    top: 120px;
    bottom: 120px;
  }
}
@media print, screen and (min-width: 641px) and (max-height: 650px) {
  [data-pararax01-inview] {
    top: 50px;
    bottom: 50px;
  }
}
@media screen and (max-width: 640px) {
  [data-pararax01-inview] {
    top: 100px;
    bottom: 100px;
  }
}

[data-pararax01-opacity01] {
  opacity: 0 !important;
}
[data-pararax01-opacity01].active {
  opacity: 1 !important;
  transition: opacity 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity02] {
  opacity: 0 !important;
  transform: translateX(-10px) !important;
}
[data-pararax01-opacity02].active {
  opacity: 1 !important;
  transform: none !important;
  transition: opacity 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79), transform 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity02_min] {
  opacity: 0 !important;
  transform: translateX(-10px) !important;
}
[data-pararax01-opacity02_min].active {
  opacity: 1 !important;
  transform: none !important;
  transition: opacity 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79), transform 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity03] {
  opacity: 0 !important;
  transform: translateX(10px) !important;
}
[data-pararax01-opacity03].active {
  opacity: 1 !important;
  transform: none !important;
  transition: opacity 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79), transform 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity04] {
  opacity: 0 !important;
  transform: translateY(10px) !important;
}
[data-pararax01-opacity04].active {
  opacity: 1 !important;
  transform: none !important;
  transition: opacity 0.4s cubic-bezier(0.14, 0.42, 0.89, 0.79), transform 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity05] {
  opacity: 0 !important;
  transform: translateY(-10px) !important;
}
[data-pararax01-opacity05].active {
  opacity: 1 !important;
  transform: none !important;
  transition: opacity 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79), transform 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity06] {
  opacity: 0 !important;
  transform: scale(0.8) !important;
}
[data-pararax01-opacity06].active {
  opacity: 1 !important;
  transform: none !important;
  transition: opacity 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79), transform 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity07] {
  opacity: 0 !important;
  transform: scale(1.2) !important;
}
[data-pararax01-opacity07].active {
  opacity: 1 !important;
  transform: none !important;
  transition: opacity 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79), transform 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity08] {
  perspective: 1000px;
}
[data-pararax01-opacity08] [data-pararax01-opacity08-target] {
  transform-style: preserve-3d;
  opacity: 0;
  transform: rotateY(720deg) scale(0.2);
  overflow: hidden;
}
[data-pararax01-opacity08] [data-pararax01-opacity08-target]:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.5;
  clip-path: polygon(0px 0%, 100% 0%, 100% 100%, 0% 100%);
}
[data-pararax01-opacity08].active [data-pararax01-opacity08-target] {
  opacity: 1;
  transform: rotateY(0deg) scale(1);
  transition: 1.4s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}
[data-pararax01-opacity08].active [data-pararax01-opacity08-target]:after {
  left: 100%;
  transition: 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79) 0.7s;
  clip-path: polygon(50px 0%, 100% 0%, 100% 100%, 0% 100%);
}

[data-pararax01-opacity09] {
  clip-path: polygon(0% 50%, 100% 50%, 100% 50%, 0% 50%);
  opacity: 0;
}
[data-pararax01-opacity09].active {
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  opacity: 1;
  transition: clip-path 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79), opacity 0.7s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity10] {
  clip-path: polygon(0% 0%, 100% -100%, -100% 100%);
  opacity: 0;
}
[data-pararax01-opacity10].active {
  clip-path: polygon(0% 0%, 200% 0%, 0% 200%);
  opacity: 1;
  transition: clip-path 1.4s cubic-bezier(0.14, 0.42, 0.89, 0.79), opacity 1.4s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity11] {
  clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
  opacity: 0;
}
[data-pararax01-opacity11].active {
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  opacity: 1;
  transition: clip-path 1.4s cubic-bezier(0.14, 0.42, 0.89, 0.79), opacity 1.4s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

[data-pararax01-opacity12] {
  clip-path: polygon(100% 0%, 100% 0%, 100% 0%, 100% 0%);
  opacity: 0;
}
[data-pararax01-opacity12].active {
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  opacity: 1;
  transition: clip-path 1.4s cubic-bezier(0.14, 0.42, 0.89, 0.79), opacity 1.4s cubic-bezier(0.14, 0.42, 0.89, 0.79);
}

.pararax01_pattern01 {
  font-size: 20px;
  line-height: 2;
  font-weight: bold;
}
.pararax01_pattern01 .pararax01_pattern01_underline {
  background-image: linear-gradient(#f00 0%, #f00 100%);
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: 0% 2px;
}
.pararax01_pattern01.active .pararax01_pattern01_underline {
  background-size: 100% 2px;
  transition: background-size 1.4s cubic-bezier(0.2, 0, 0.18, 1);
}

[data-pararax01-photo01a],
[data-pararax01-photo01b],
[data-pararax01-photo02a],
[data-pararax01-photo02b],
[data-pararax01-photo03a],
[data-pararax01-photo03b],
[data-pararax01-photo03b-orange],
[data-pararax01-photo03b-brawn],
[data-pararax01-photo03c],
[data-pararax01-photo04a],
[data-pararax01-photo04b] {
  display: inline-block;
  position: relative;
  opacity: 0;
  font-size: 0;
}
.ie [data-pararax01-photo01a] > *,
.ie [data-pararax01-photo01b] > *,
.ie [data-pararax01-photo02a] > *,
.ie [data-pararax01-photo02b] > *,
.ie [data-pararax01-photo03a] > *,
.ie [data-pararax01-photo03b] > *,
.ie [data-pararax01-photo03b-orange] > *,
.ie [data-pararax01-photo03b-brawn] > *,
.ie [data-pararax01-photo03c] > *,
.ie [data-pararax01-photo04a] > *,
.ie [data-pararax01-photo04b] > * {
  opacity: 0;
}

[data-pararax01-photo01a].active,
[data-pararax01-photo01b].active,
[data-pararax01-photo02a].active,
[data-pararax01-photo02b].active,
[data-pararax01-photo03a].active,
[data-pararax01-photo03b].active,
[data-pararax01-photo03b-orange].active,
[data-pararax01-photo03b-brawn].active,
[data-pararax01-photo03c].active,
[data-pararax01-photo04a].active,
[data-pararax01-photo04b].active {
  opacity: 1;
}
.ie [data-pararax01-photo01a].active > *,
.ie [data-pararax01-photo01b].active > *,
.ie [data-pararax01-photo02a].active > *,
.ie [data-pararax01-photo02b].active > *,
.ie [data-pararax01-photo03a].active > *,
.ie [data-pararax01-photo03b].active > *,
.ie [data-pararax01-photo03b-orange].active > *,
.ie [data-pararax01-photo03b-brawn].active > *,
.ie [data-pararax01-photo03c].active > *,
.ie [data-pararax01-photo04a].active > *,
.ie [data-pararax01-photo04b].active > * {
  opacity: 1;
}

.ie [data-pararax01-photo01a],
.ie [data-pararax01-photo01b],
.ie [data-pararax01-photo02a],
.ie [data-pararax01-photo02b],
.ie [data-pararax01-photo03a],
.ie [data-pararax01-photo03b],
.ie [data-pararax01-photo03b-orange],
.ie [data-pararax01-photo03b-brawn],
.ie [data-pararax01-photo03c],
.ie [data-pararax01-photo04a],
.ie [data-pararax01-photo04b],
.edge [data-pararax01-photo01a],
.edge [data-pararax01-photo01b],
.edge [data-pararax01-photo02a],
.edge [data-pararax01-photo02b],
.edge [data-pararax01-photo03a],
.edge [data-pararax01-photo03b],
.edge [data-pararax01-photo03b-orange],
.edge [data-pararax01-photo03b-brawn],
.edge [data-pararax01-photo03c],
.edge [data-pararax01-photo04a],
.edge [data-pararax01-photo04b] {
  background-color: #FFF;
  opacity: 1 !important;
}

[data-pararax01-photo01a] svg,
[data-pararax01-photo01b] svg,
[data-pararax01-photo02a] svg,
[data-pararax01-photo02b] svg,
[data-pararax01-photo03a] svg,
[data-pararax01-photo03b] svg,
[data-pararax01-photo03b-orange] svg,
[data-pararax01-photo03b-brawn] svg,
[data-pararax01-photo03c] svg,
[data-pararax01-photo04a] svg,
[data-pararax01-photo04b] svg {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}

[data-pararax01-photo01a] rect,
[data-pararax01-photo01b] rect,
[data-pararax01-photo02a] rect,
[data-pararax01-photo02b] rect,
[data-pararax01-photo03a] rect,
[data-pararax01-photo03b] rect,
[data-pararax01-photo03c] rect,
[data-pararax01-photo04a] rect,
[data-pararax01-photo04b] rect {
  fill: #FFF;
}

.detailSO .about_detail_area [data-pararax01-photo03b] rect,
.detailSO .about_detail_area [data-pararax01-photo03c] rect {
  fill: #f3cea6;
}

.detailNB .about_detail_area [data-pararax01-photo03b] rect,
.detailNB .about_detail_area [data-pararax01-photo03c] rect {
  fill: #d2c7b8;
}

[data-pararax01-photo01a].init,
[data-pararax01-photo01b].init,
[data-pararax01-photo02a].init,
[data-pararax01-photo02b].init,
[data-pararax01-photo03a].init,
[data-pararax01-photo03b].init,
[data-pararax01-photo03b-orange].init,
[data-pararax01-photo03b-brawn].init,
[data-pararax01-photo03c].init,
[data-pararax01-photo04a].init,
[data-pararax01-photo04b].init {
  opacity: 1;
}

/*----------
ハック
-----------*/
.ie .top_header .list.box .rsv .rsv_link span {
  position: relative;
  bottom: -5px;
}
.ie .detail_header_inpage .header_list .list .link span {
  position: relative;
  bottom: -5px;
}
.ie .mod_header .detail_header .link_right .rsv .rsv_link span {
  position: relative;
  bottom: -5px;
}
.ie .footer_box_left .box_list .list.rsv span {
  position: relative;
  bottom: -5px;
}

.detailNB.pageLoaded .ie .mode_header .detail_header.is_resize_dt,
.detailNB.pageLoaded .firefox .mode_header .detail_header.is_resize_dt {
  background-color: none;
  animation: detail_header_resize_none 1.2s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
}
.detailNB.pageLoaded .ie .mode_header .detail_header.is_resize_dt_re,
.detailNB.pageLoaded .firefox .mode_header .detail_header.is_resize_dt_re {
  background-color: none;
  animation: detail_header_resize_reverse_none 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
}
@keyframes detail_header_resize_nb_none {
  20% {
    height: 1.1rem;
    background-color: rgba(210, 199, 184, 0.8);
  }
  100% {
    opacity: 1;
    height: 1.1rem;
    background-color: rgba(210, 199, 184, 0.8);
  }
}
@keyframes detail_header_resize_reverse_nb_none {
  0% {
    height: 1.1rem;
    background-color: rgba(210, 199, 184, 0.8);
  }
  100% {
    height: 1.37rem;
  }
}
.detailNB.pageLoaded .ie .mode_header .detail_header.is_resize_dt,
.detailNB.pageLoaded .firefox .mode_header .detail_header.is_resize_dt {
  animation: detail_header_resize_none 1.2s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
}
.detailNB.pageLoaded .ie .mode_header .detail_header.is_resize_dt_re,
.detailNB.pageLoaded .firefox .mode_header .detail_header.is_resize_dt_re {
  animation: detail_header_resize_reverse_none 0.3s cubic-bezier(0.14, 0.42, 0.89, 0.79) forwards;
}
@keyframes detail_header_resize_nb_none {
  20% {
    height: 1.1rem;
    background-color: rgba(255, 204, 153, 0.8);
  }
  100% {
    opacity: 1;
    height: 1.1rem;
    background-color: rgba(255, 204, 153, 0.8);
  }
}
@keyframes detail_header_resize_reverse_nb_none {
  0% {
    height: 1.1rem;
    background-color: rgba(255, 204, 153, 0.8);
  }
  100% {
    height: 1.37rem;
  }
}/*# sourceMappingURL=common.css.map */