/* /moniplat */
:root{--h-header:6rem;--scr-pt:5.5rem; --w-logo:9rem;--h-logo:3.3rem;--maxw:1600px;}
html{scroll-padding-top:var(--scr-pt);}
hr {margin: 0; width: 100%; border: none; background: #dedcdc; height: 1px;}
input[type="button"],input[type="password"],input[type="text"],input[type="submit"],input[type="image"],textarea{outline: none;}


/* FONT --------------------------------*/
  @font-face {font-family: 'icomoon'; src:url('../fonts/icomoon.eot?3wy5es'); src:url('../fonts/icomoon.eot?3wy5es#iefix') format('embedded-opentype'), url('../fonts/icomoon.ttf?3wy5es') format('truetype'), url('../fonts/icomoon.woff?3wy5es') format('woff'), url('../fonts/icomoon.svg?3wy5es#icomoon') format('svg'); font-weight: normal; font-style: normal; font-display: block; }
  [class^="icon-"], [class*=" icon-"] {font-family: 'icomoon' !important; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

  .icon-alert:before {content: "\e90c";}
  .icon-aw-down:before {content: "\e900";}
  .icon-aw-left:before {content: "\e901";}
  .icon-aw-right:before {content: "\e902";}
  .icon-aw-up:before {content: "\e903";}
  .icon-lock:before {content: "\e90d";}
  .icon-mail:before {content: "\e906";}
  .icon-map:before {content: "\e90e";}
  .icon-ph:before {content: "\e90f";}
  .icon-search:before {content: "\e907";}
  .icon-cart:before {content: "\e90b";}
  .icon-user:before {content: "\e910";}
  .icon-twitter:before {content: "\e908";}
  .icon-insta:before {content: "\e909";}
  .icon-facebook:before {content: "\e90a";}
  .icon-close:before {content: "\e904";}
  .icon-menu:before {content: "\e905";}



/* logo --------------------------------*/
  #logo.active {position: fixed; border: none; top: 0; left: 0;}
  #logo.active a {border: none;}
  #logo.active .maxw {padding: 0;}
  #logo.active #menu {opacity: 0; visibility:hidden;}

  #header.active #menu-button {opacity: 1; visibility:visible; display: block!important;}

/* MENU --------------------------------*/

  #menu-button {box-sizing: border-box; cursor: pointer;pointer-events: auto; transition: ease .2s; z-index: 30;}
    #menu-button svg {stroke:hsla(var(--themeDark),1);transition: 0.2s; width: 40px; height: 40px;}
    #menu-button svg g:first-child {opacity: 1;transition: opacity 0s 0.2s;}
    #menu-button svg g:first-child line {transition: transform 0.2s 0.2s;transform: translateY(0px);}
    #menu-button svg g:last-child {opacity: 0;transition: opacity 0s 0.2s;}
    #menu-button svg g:last-child line {transition: transform 0.2s;transform: rotate(0deg);transform-origin: center;}
    #menu-button line {stroke-width:2;}
    #menu-button.-menu-open {background: none;}
    #menu-button.-menu-open svg {stroke:hsla(var(--theme),1);}
    #menu-button.-menu-open svg g:first-child {opacity: 0;}
    #menu-button.-menu-open svg g:first-child line {transition: transform 0.2s;}
    #menu-button.-menu-open svg g:first-child line:first-child {transform: translateY(7px);}
    #menu-button.-menu-open svg g:first-child line:last-child {transform: translateY(-7px);}
    #menu-button.-menu-open svg g:last-child {opacity: 1;}
    #menu-button.-menu-open svg g:last-child line {transition: transform 0.2s 0.2s;}
    #menu-button.-menu-open svg g:last-child line:first-child {transform: rotate(45deg);}
    #menu-button.-menu-open svg g:last-child line:last-child {transform: rotate(-45deg);}

    #menu2 {position: fixed; width: 100%; height: 100%; top: 0; left: 0; z-index: -1; visibility:hidden;}
    #menu2.active {visibility: visible; z-index: 5;}

  @media(max-width: 767px){
    #wrap {margin-top: var(--h-header);}
    #header {z-index:20;}
    #menu-button {position: fixed; top: 1.5rem; right:2.5rem;}
    #menu-button.-menu-open.active {top: .5rem!important;}
    #page-top {margin-top: var(--h-header);}

  }

  @media(min-width: 768px){
    #menu-button.active {right:0;}
    #menu-button svg {width: 4.5rem; height: 4.5rem;}
    #menu-button line {stroke-width:1.5;}
    #menu-button {opacity: 0; visibility:hidden; position: fixed; top: 2rem; right:3rem; }
  }

  [id*="menu-0"].active {background: hsla(var(--theme));}
    [id*="menu-0"].active * {color: #FFF;}


/* nav --------------------------------*/

  .wave-top:after {pointer-events: none; content:""; width: 100%; height: 100%; top: 0; left: 0; position: absolute; background:url(/assets/img/global/wave-1.svg) left top no-repeat; background-size:100%;}
  .wave-top.w-100:after {pointer-events: none; content:""; width: 100%; height:100%; top:0; left: 0; position: absolute; background:url(/assets/img/global/wave-4.svg) left top no-repeat; background-size:100%;background-position-y:calc(-21vw + 85px); z-index: -1;}

  .wave-top {position: relative;}
  .wave-top2:before {pointer-events: none; position: absolute; top:20%; left: 0; content:""; width: 100%; height: 100%;  background:url(/assets/img/global/wave-2_mat.svg) left bottom no-repeat; background-size:100%;}
  .wave-bottom {position: relative;}
  .wave-bottom:before {position: absolute; bottom:-3%; left: 0; content:""; width: 100%; height: 100%;  background:url(/assets/img/global/wave-3.svg) left bottom no-repeat; background-size:100%; }


  #sticky-menu {left: 0; top: var(--h-header);}

  @media(min-width:576px){
    .wave-top.w-100:after {background-position-y:calc(-21vw + 85px);}
  }

  @media(min-width: 768px){
    .wave-top:after {width: 70%;}
  }


  @media(max-width: 991px){
    .wave-top2:before {background:url(/assets/img/global/wave-2.svg) left bottom no-repeat; top:0%; background-size:100%; z-index: 2;}
    #schedule {z-index:9; }
  }

  @media(min-width: 1200px){
    .wave-top:after {top: -2%;}
  }


/* links --------------------------------*/

  [class*="a-line"] {position: relative; border-bottom: 1px dotted hsla(var(--theme));}

    [class*="a-line"]:after {content:"";  height:.12rem; background-color:hsla(var(--theme)); position: absolute; right: 0; bottom:-.1rem; animation: aline-out .2s ease forwards;}
    [class*="a-line"]:hover::after,[class*="a-line"].active::after,.link-active:after {right:auto;left: 0; animation: aline .2s ease forwards;}
    @keyframes aline {0% { width:0;} 100% {width: 100%;}}
    @keyframes aline-out {0% {width:100%;} 100% {width: 0;}}

    [class*="a-line"].bc-blk:after { background-color:hsla(var(--theme));}

    .a-line-b:after {left: 0; animation: aline-out-b .2s ease forwards;}
    .a-line-b:after,.a-line.clr-theme:after {background:hsla(var(--theme));}
    .a-line-b:hover::after {left:auto;right: 0; animation: aline-b .2s ease forwards;}
    .a-line-b:before {content:""; height:.12rem; background:hsla(var(--theme)); position: absolute; left: 0; bottom:1.3rem; animation: aline-out .2s ease forwards;}
    .a-line-b:hover::before {left:auto;right: 0; animation: aline .2s ease forwards;}
    @keyframes aline-b {0% { width:100%;} 100% {width: 0;}}
    @keyframes aline-out-b {0% {width:0;} 100% {width: 100%;}}

    [class*="link-btn"] {border:1px solid rgb(var(--themeDark));}
    [class*="link-btn"]:hover,.hover-btn:hover {color:rgb(var(--theme)); background:rgb(var(--themeDark));}
    [class*="link-btn"] i {vertical-align:-.1rem;}
    .link-btn-m:after {font-family: 'icomoon' !important; content: "\e902"; padding-left: 1rem;}
    .link-btn-mb:before {font-family: 'icomoon' !important; content: "\e901"; padding-right: 1rem;}
    .link-btn-d:before {font-family: 'icomoon' !important; content: "\e900"; padding-right: 1rem;}
    .link-btn-db:after {font-family: 'icomoon' !important; content: "\e900"; padding-left: 1rem;}
    [class*="link-btn-"]:after,[class*="link-btn-"]:before {vertical-align:-.1rem; font-style: normal; font-weight: normal; font-variant: normal; line-height: 1; -webkit-font-smoothing: antialiased;}

    .bg-theme-dark a {color:var(--themeFix)}

  /* ani-hover  */
  @media(min-width:1100px) {
    .ani-hover:hover .item-2 img {opacity: 1; transform:scale(1);}
    .img-link img {-webkit-transform: scale(1);transform: scale(1);-webkit-transition: .8s ease-in-out;transition: .8s cubic-bezier(.165,.84,.44,1); -webkit-backface-visibility:hidden;}
    .img-link:hover img,.img-link.hover img {-webkit-transform: scale(1.05)!important; transform: scale(1.05)!important;}
  }

  /* animation */
  .tcb {transition: 1.2s cubic-bezier(.165,.84,.44,1);}
  .tcb-l {transition: 2s cubic-bezier(.165,.84,.44,1);}
  .tcb-s {transition: .8s cubic-bezier(.785, .135, .15, .86);}
  .tcb-h {transition: .8s cubic-bezier(0.79,0.14,0.15,0.86);}

  [class*="fadeSet"],img.lazy {opacity: 0; transition: 1.4s cubic-bezier(.165,.84,.44,1);}
  [class*="fadeSet"].active,img.lazy.active {opacity: 1!important; visibility:visible!important;}

  [class*="fadeSet"].slideUp {transform: translateY(3rem);}
  [class*="fadeSet"].slideDown {transform: translateY(-3rem);}
  [class*="fadeSet"].slideLeft {transform: translateX(-3rem);}
  [class*="fadeSet"].slideRight {transform: translateX(3rem);}
  [class*="slide"][class*="fadeSet"].active {transform: translate(0rem,0rem);}
  [class*="fadeSet"].scaleDown {transform:scale(1.1);}
  [class*="scale"][class*="fadeSet"].active {transform:scale(1);}


/* schedule --------------------------------*/
  .sche-tabs button {font-weight: bold; opacity: .3; padding-left: 0; padding-right: 0;}
  .sche-tabs span {display: none;}
  .sche-tabs .active span {display:inline;}
  .sche-tabs .active button {color:hsla(var(--theme),1); border-bottom: 1px solid hsla(var(--theme),1); opacity: 1; }
  .sche-p {display: none;}
  .sche-p.active {display: block;}

  /* wp-pagenavi */
  .wp-pagenavi {width: 100%; display: grid; grid-auto-flow:column; margin: auto; text-align: center; border-top: 0.1rem solid rgba(var(--themeDark),.15);  border-bottom: 0.1rem solid rgba(var(--themeDark),.15); font-family: 'Roboto'; }
  .wp-pagenavi .pages {display: none;}
  .wp-pagenavi *:last-child {border-right: 0.1rem solid rgba(var(--themeDark),.15);}
  .wp-pagenavi * {display: inline-block; padding:var(--g-def) calc(var(--g-def)/2); border-left: 0.1rem solid rgba(var(--themeDark),.15);}
    .wp-pagenavi .current{background:  hsla(var(--theme), .1);}
    .wp-pagenavi a:hover{color:#fff; background: hsla(var(--theme),1);}

  @media (min-width: 768px) {
    .wp-pagenavi * {padding-left: calc(var(--g-def)*2); padding-right: calc(var(--g-def)*2);}
  }
  @media (min-width: 992px) {
    .wp-pagenavi {display: block;}
  }

  .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
      border:none; background: none; color: red;
  }

/* HOME --------------------------------*/

  .logo-spin {transition: transform 2s cubic-bezier(0.075, 0.82, 0.165, 1);animation: spin 6s linear infinite;}

  #gmap {width: 100%; height: 48rem; overflow: hidden;}
  #gmap iframe {width: 100%; height: 80rem; margin-top: -17rem;}
    #gmap iframe:hover {filter:none;}

  @media(max-width:575px){
    [class*="read-"] {position: absolute; top: 0; writing-mode: vertical-rl;font-feature-settings: "vpal"; z-index: 1;}
    .read-1 {width:46%; right: 0;translate:0% 25%;}
    .read-2 {width:46%; left: 0;translate:0% 75%;}
  }




/* PARTS --------------------------------*/

  .brn-04 { filter: brightness(0.4);}
  .brn-06 { filter: brightness(0.6);}
  .brn-07 { filter: brightness(0.7);}
  .brn-08 { filter: brightness(0.8);}

  .of-pt{object-position:top;}
  .of-pb{object-position:bottom;}
  .of-pbr{object-position:bottom right;}

  .line-center {position: relative;}
  .line-center:before {content: ""; z-index: 1; position: absolute; top: 0; left: 50%; height: 100%; width: 1px; background-color:rgba(var(--gray),.3);}

  /* line-grid */
  .line-grid {overflow: hidden; border-left: 1px solid #dedcdc; border-bottom: 1px solid #dedcdc;}
  .line-grid li {position: relative;}
  .line-grid li:before,.line-grid li:after {content: ""; z-index: 1; position: absolute; top: 0; background-color: #dedcdc !important;}
  .line-grid li:before {left: -100%; width: 9999px; height: 1px;}
  .line-grid li:after {right: 0; width: 1px; height: 100%;}

  .line-dl {overflow: hidden;}
    .line-dl dd {position: relative;}
    .line-dl dd:before,.line-dl dd:after {content: ""; z-index: 1; position: absolute; bottom: 0; background-color:rgba(var(--themeDark),.2)!important;}
    .line-dl dd:before {left: -1000%; width: 9999px; height: 1px;}
    .line-dl dd:after {left: 0; width: 1px; height: 100%;}

  /* speech */
  @media(min-width:576px){
    .speech:before {content: "";position: absolute;top:-7rem;left: 16%;border:4rem solid transparent;border-bottom:4rem solid #fff;z-index: -1;}
  }

  /* arrow */
  .arrow {position: relative; width: 33px;height: 62px;}
  .arrow::before,
  .arrow::after {content: "";position: absolute;top: calc(50% - 1px);right: 0;width: 45px;height: 1px;border-radius: 9999px;background-color:hsla(var(--theme));transform-origin: calc(100% - 1px) 50%;}
  .arrow::before {transform: rotate(45deg);}
  .arrow::after {transform: rotate(-45deg);}

  .a-arrow:hover {background:hsla(var(--theme),.1);}

  /* f-line  */
  .clr-wht[class*="f-line"]::before,
  .clr-wht[class*="f-line"]::after {background-color: #ffffff!important;}
  .clr-wht.f-line-t [class*="f-line"]::before,
  .clr-wht.f-line-t [class*="f-line"]::after {background-color: #ffffff!important;}

  [class*="f-line"] {position: relative;}
  [class*="f-line"]::before,[class*="f-line"]::after {content: "";position: absolute;background-color: #bababa;}
  [class*="f-line"]::before {width: 1px;height: 5rem;}
  [class*="f-line"]::after {width: 7rem;height: 1px;}
  .f-line-t::before {top: -1.5rem;left:-2rem;}
  .f-line-t::after {top:0;left: -4rem;}
  .f-line-b::before {bottom: -1.5rem;right:-2rem;}
  .f-line-b::after {bottom:0;right: -4rem;}

  @media(max-width:575px){
    [class*="f-line"]::before {width: 1px;height: 3rem;}
    [class*="f-line"]::after {width: 3rem;height: 1px;}
    .f-line-t::before {top: -.5rem;left:-1rem;}
    .f-line-t::after {top:.5rem;left: -2rem;}
    .f-line-b::before {bottom: -1.5rem;right:0rem;}
    .f-line-b::after {bottom:0;right: -1rem;}
  }

  .dots-line {border-bottom: 3px dotted #bababa;}

  /* num-list */
  .num-list {counter-reset:number;list-style-type: none!important;}
  .num-list li {position: relative;padding-left:6rem;}

  .num-list li:before{position: absolute;counter-increment: number;content: counter(number);display:inline-block;background:hsla(var(--themeDark));color: #FFF;font-weight:bold;font-size: 2rem;border-radius: 50%;left: 0;width:4.5rem;height:4.5rem;line-height: 4.5rem;text-align: center;top: 50%;transform: translateY(-50%);}
  .yellow-disc {position: relative;}
  .yellow-disc:before{content:""; position: absolute; display:inline-block;background:hsla(var(--yellow));color: #FFF;font-weight:bold;font-size: 2rem; border-radius: 50%; left: 0;width:4.5rem;height:4.5rem;line-height: 4.5rem;text-align: center;top:7%;transform: translateY(-50%);}
  @media(max-width:575px){
    .yellow-disc:before{display: none;}
  }

  /* sec_tl */
  .sec_tl {position: relative;}
  .sec_tl::before {content:""; position: absolute;  bottom:-2rem; left: 50%; transform: translateX(-50%); height: 1px; width: 6rem; border-bottom: 3px dotted hsla(var(--themeDark));}

  /* parts */
  .bc-none {border: none;}
  .row-ltr {direction: ltr}
  .scr-smooth{scroll-behavior: smooth;}
  .z-2 {z-index: 2;}
  .z-12 {z-index: 12;}
  .z-20 {z-index: 20;}
  .pointer-none {pointer-events: none;}
  .pointer-auto {pointer-events: auto;}

  .bs-bbsd {position: relative;}
  .bs-bbsd::after {content: "";position: absolute;left: 50%;bottom: 0;width: 100vw;height: 1px; /* ボーダーの太さ */background-color:#dedcdc;transform: translateX(-50%); /* 画面中央に配置 */z-index: -1;}

  .y-circle {background: hsla(var(--yellow));}

  .dot-line {position: relative;}
    .dot-line::before {content: "";background-image: linear-gradient(to right, rgb(var(--themeDark)), rgb(var(--themeDark)) 2px, transparent 2px, transparent 4px),linear-gradient(to right, rgb(var(--themeDark)), rgb(var(--themeDark)) 2px, transparent 2px, transparent 4px),linear-gradient(to bottom, rgb(var(--themeDark)), rgb(var(--themeDark)) 2px, transparent 2px, transparent 4px),linear-gradient(to bottom, rgb(var(--themeDark)), rgb(var(--themeDark)) 2px, transparent 2px, transparent 4px);background-size: 4px 2px, 4px 2px, 2px 4px, 2px 4px;background-position: left top, left bottom, left top, right top;background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;position: absolute;top: 0;bottom: 0;left: 0;right: 0;pointer-events: none}

  .txt-clamp {overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
  .clamp-2  {overflow: hidden; display: -webkit-box; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp:2;}

  .web-map .fadeSet {transform: translate(0rem,0rem)!important;}
  .video-fade {display: none;}

  .t-shadow {text-shadow: 2px 3px 13px rgba(0, 0, 0, 0.41);}

  .minw-6rem {min-width: 6rem;}

  @keyframes spin {0% {transform: rotate(0deg);}100% {transform: rotate(360deg);}}

  i.line {position: relative; display: inline-block; width: 4rem; height: 2px;}
  i.line:before {content: ""; position: absolute; top: 0; left: 0; width: 4rem; height: 2px; background: #000; }

  /* table */
  table{caption-side: bottom;table-layout: fixed;border-collapse: collapse}
  tbody,td,tfoot,th,thead,tr{border-color: #dedcdc;border-style: solid;border-width: 0}
  th{text-align:inherit}
  .table {width:100%;vertical-align:middle;}
    .table>:not(caption)>*>*{border-bottom-width:1px}
    .table>tbody {vertical-align:inherit}
    .table>thead {vertical-align:bottom;background: rgba(255,255,255,.05)}
  .table-bordered>:not(caption)>*{border-width:1px 0}
    .table-bordered>:not(caption)>*>*{border-width:0 1px}
  .table-bordered td,.table-bordered th{border-color: inherit;}
  .table-bordered>thead>tr>th{border-bottom-width:inherit !important}
  .table-sp>:not(caption)>*>*{padding: 1em;}
  .table-sp :is(th,td) {border: 1px solid rgb(var(--grayLight),.4);}

  .bc-gray-light,.hvr-bc-gray-light:hover,.table-bordered,.table-bordered td,.table-bordered th{border-color:rgba(var(--grayLight),.3)}

  .table-sticky{position: relative;}
    .table-sticky thead th,.table-sticky th{position: sticky;top: 0;z-index:0;}
      .table-sticky thead th,.table-sticky tbody th{z-index: 10;}
    .table-sticky tbody th{left: 0;}

  .thead-sticky th {position: sticky; left: 0; top: 0;}

  caption {caption-side: top;}

  .table-auto {table-layout: auto;}
  .w-table {width: 60rem;}
  .w-table-05{width: 45rem;}
  .w-table-02{width: 25rem;}
  .va-middle {vertical-align: middle;}

  .table .px-0 {padding-left: 0; padding-right: 0;}

  /* modal */
  .modal {position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,.2); z-index:-100; opacity: 0; visibility: hidden;}
  .modal.active {opacity: 1;visibility: visible; z-index: 100;}
  .modal-container {background: #FFF; width:fit-content;position: relative; border:5px solid #fff;}
    .modal-container button {position: absolute; top:-.5rem; right:-.5rem; font-size: 130%; background:#E2DED2; padding:0; margin: 0; width:2rem; height:2rem;}

  /* aspect  */
  .ar-sq {aspect-ratio:1/1;}
  .ar-6x4 {aspect-ratio:6/4;}
  .ar-4x5 {aspect-ratio:4/5;}
  .ar-4x3 {aspect-ratio:4/3;}
  .ar-8x5 {aspect-ratio:8/5;}
  .ar-2x1 {aspect-ratio:2/1;}
  .ar-16x9 {aspect-ratio:16/9;}

  /* gtc */
  .gtc-12-4{grid-template-columns:repeat(12,[col] 1fr)}
    .gtc-12-4 > :nth-child(1){grid-column:col/span 12}
    .gtc-12-4 > :nth-child(2){grid-column:col/span 4}
    .gtc-12-4 > :nth-child(3){grid-column:col 5/span 4}
    .gtc-12-4 > :nth-child(4){grid-column:col 9/span 4}

  .gtc-12-6{grid-template-columns:repeat(12,[col] 1fr)}
    .gtc-12-6 > :nth-child(1){grid-column:col/span 12}
    .gtc-12-6 > :nth-child(2){grid-column:col/span 6}
    .gtc-12-6 > :nth-child(3){grid-column:col 7/span 6}

  .dir-reverse{direction: rtl;}

  /* tdu */
  .tdu-sm {text-decoration-thickness: .6rem;text-underline-offset: -.1em;}
  .tdu-md {text-decoration-thickness: .8rem;text-underline-offset: -.1em;}
  .tdu-xl {text-decoration-thickness: 1.2rem;text-underline-offset: -.1em;}

  /* --theme */
  .clr-theme {color: hsla(var(--theme),1);}
  .bg-theme {background-color: hsla(var(--theme),1);}
  .bg-theme-005 {background-color: hsla(var(--theme), .05);}
  .bg-theme-01 {background-color: hsla(var(--theme), .1);}
  .bg-theme-02 {background-color: hsla(var(--theme), .2);}
  .bg-theme-03 {background-color: hsla(var(--theme), .3);}
  .bg-theme-04 {background-color: hsla(var(--theme), .4);}
  .bg-theme-05 {background-color: hsla(var(--theme), .5);}
  .bg-theme-06 {background-color: hsla(var(--theme), .6);}
  .bg-theme-07 {background-color: hsla(var(--theme), .7);}
  .bg-theme-08 {background-color: hsla(var(--theme), .8);}
  .bg-theme-09 {background-color: hsla(var(--theme), .9);}

  .bg-themeFixLight {background-color:var(--themeFixLight);}
  .bg-themeFix07 {background-color:var(--themeFix07);}
  .bg-themeFix05 {background-color:var(--themeFix05);}
  .bg-themeFix03 {background-color:var(--themeFix03);}

  .bg-theme-dark {background-color: hsla(var(--themeDark),1);}
  .clr-theme-dark {color: hsla(var(--themeDark),1);}

  .bd-theme {text-decoration-color: hsla(var(--theme),1);}
  .bd-theme-01 {text-decoration-color: hsla(var(--theme), .1);}
  .bd-theme-02 {text-decoration-color: hsla(var(--theme), .2);}
  .bd-theme-03 {text-decoration-color: hsla(var(--theme), .3);}
  .bd-theme-04 {text-decoration-color: hsla(var(--theme), .4);}
  .bd-theme-05 {text-decoration-color: hsla(var(--theme), .5);}
  .bd-theme-06 {text-decoration-color: hsla(var(--theme), .6);}
  .bd-theme-07 {text-decoration-color: hsla(var(--theme), .7);}
  .bd-theme-08 {text-decoration-color: hsla(var(--theme), .8);}
  .bd-theme-09 {text-decoration-color: hsla(var(--theme), .9);}

  .bc-theme {border-color: hsla(var(--theme),1);}
  .bc-theme-02 {border-color: hsla(var(--theme), .2);}
  .bc-theme-03 {border-color: hsla(var(--theme), .3);}
  .bc-theme-04 {border-color: hsla(var(--theme), .4);}
  .bc-theme-05 {border-color: hsla(var(--theme), .5);}
  .bc-theme-06 {border-color: hsla(var(--theme), .6);}
  .bc-theme-07 {border-color: hsla(var(--theme), .7);}
  .bc-theme-08 {border-color: hsla(var(--theme), .8);}
  .bc-theme-09 {border-color: hsla(var(--theme), .9);}

  .bc-orange {border-color: hsla(var(--orange),1);}
  .bc-orange-02 {border-color: hsla(var(--orange), .2);}
  .bc-orange-03 {border-color: hsla(var(--orange), .3);}
  .bc-orange-04 {border-color: hsla(var(--orange), .4);}
  .bc-orange-05 {border-color: hsla(var(--orange), .5);}
  .bc-orange-06 {border-color: hsla(var(--orange), .6);}
  .bc-orange-07 {border-color: hsla(var(--orange), .7);}
  .bc-orange-08 {border-color: hsla(var(--orange), .8);}
  .bc-orange-09 {border-color: hsla(var(--orange), .9);}


  /* gray */
  .clr-gray {color: hsla(var(--gray),1);}
  .bg-gray {background-color: hsla(var(--gray),1);}
  .bg-gray-005 {background-color: hsla(var(--gray2), .05);}
  .bg-gray-01 {background-color: hsla(var(--gray2), .1);}
  .bg-gray-02 {background-color: hsla(var(--gray2), .2);}
  .bg-gray-03 {background-color: hsla(var(--gray2), .3);}
  .bg-gray-04 {background-color: hsla(var(--gray2), .4);}
  .bg-gray-05 {background-color: hsla(var(--gray2), .5);}
  .bg-gray-06 {background-color: hsla(var(--gray2), .6);}
  .bg-gray-07 {background-color: hsla(var(--gray2), .7);}
  .bg-gray-08 {background-color: hsla(var(--gray2), .8);}
  .bg-gray-09 {background-color: hsla(var(--gray2), .9);}

  /* yellow */
  .clr-yellow {color: hsla(var(--yellow),1);}
  .bg-yellow {background-color: hsla(var(--yellow),1);}
  .bg-yellow-005 {background-color: hsla(var(--yellow), .05);}
  .bg-yellow-01 {background-color: hsla(var(--yellow), .1);}
  .bg-yellow-02 {background-color: hsla(var(--yellow), .2);}
  .bg-yellow-03 {background-color: hsla(var(--yellow), .3);}
  .bg-yellow-04 {background-color: hsla(var(--yellow), .4);}
  .bg-yellow-05 {background-color: hsla(var(--yellow), .5);}
  .bg-yellow-06 {background-color: hsla(var(--yellow), .6);}
  .bg-yellow-07 {background-color: hsla(var(--yellow), .7);}
  .bg-yellow-08 {background-color: hsla(var(--yellow), .8);}
  .bg-yellow-09 {background-color: hsla(var(--yellow), .9);}


  .hvr-clr-blue:hover {color: hsla(var(--blue),1);}
  .hvr-clr-theme:hover {color: hsla(var(--theme),1);}
  .hvr-bc-theme:hover {border-color: hsla(var(--theme),1);}
  .hvr-bg-theme:hover {background-color: hsla(var(--theme),1);}

  .bd-yellow {text-decoration-color:#FFF185;}
  .bg-red {background:#962a2a; color: #FFF;}
  .clr-red {color:#962a2a;}

  .sec-bt{position: relative;}
  .sec-bt:before {content:"";position: absolute;top: 0;width: 100vw;height: 1px; background: #dedcdc; margin: 0 calc(50% - 50vw);}



/* 親要素の高さを揃えるための設定 */
.d-flex-column {
  display: flex !important;
  flex-direction: column !important;
}

/* カードを親要素の高さ限界まで引き伸ばす設定 */
.flex-grow-1 {
  flex-grow: 1 !important;
}

/* カード内のコンテンツを上下に振り分けるための設定 */
.flex-content-between {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* ボタンを一番下に押し下げる設定 */
.mt-auto {
  margin-top: auto !important;
}

  /* height */
  .h-100svh{height: 100svh;}
  .h-75svh{height: 75svh;}
  .h-75vh{height: 75vh;}
  .h-80vh{height: 80vh;}
  .h-100dvh{height: 100dvh;}
  .h-05rem{height: .5rem;}
  .h-075rem{height: .75rem;}
  .h-1rem{height: 1rem;}
  .h-1025rem{height: 1.25rem;}
  .h-105rem{height: 1.5rem;}
  .h-1075rem{height: 1.75rem;}
  .h-2rem{height: 2rem;}
  .h-205rem{height: 2.5rem;}
  .h-3rem{height: 3rem;}
  .h-4rem{height: 4rem;}
  .h-405rem{height: 4.5rem;}
  .h-5rem{height: 5rem;}
  .h-6rem{height: 6rem;}
  .h-7rem{height: 7rem;}
  .h-8rem{height: 8rem;}
  .h-10rem{height: 10rem;}
  .h-12rem{height: 12rem;}
  .h-14rem{height: 14rem;}
  .h-16rem{height: 16rem;}
  .h-20rem{height: 20rem;}
  .h-24rem{height: 24rem;}
  .h-25rem{height: 25rem;}
  .h-28rem{height: 28rem;}
  .h-30rem{height: 30rem;}
  .h-32rem{height: 32rem;}
  .h-35rem{height: 35rem;}
  .h-80rem{height: 80rem;}
  .h-70vh{height: 70vh;}
  .h-85vh{height: 85vh;}
  .h-90vh{height: 90vh;}
  .h-header{height: var(--h-header);}

  .mh-50rem{max-height: 50rem;}
  .mh-55rem{max-height: 55rem;}
  .mh-60rem{max-height: 60rem;}
  .mh-80rem{max-height: 80rem;}

  .h-faci{height:var(--h-faci)}
  .h-faci-half{height:calc(var(--h-faci) / 2)}

  /* width */
  .w-logo{width:var(--w-logo);}
  .w-1em{width: 1em;}
  .w-2em{width: 2em;}
  .w-30{width: 30%;}
  .w-cl{width: 33%;}
  .w-40{width: 40%;}
  .w-50{width: 50%;}
  .w-60{width: 60%;}
  .w-70{width: 70%;}
  .w-80{width: 80%;}
  .w-105rem{width: 1.5rem;}
  .w-2rem{width: 2rem;}
  .w-205rem{width: 2.5rem;}
  .w-3rem{width: 3rem;}
  .w-4rem{width: 4rem;}
  .w-5rem{width: 5rem;}
  .w-6rem{width: 6rem;}
  .w-7rem{width: 7rem;}
  .w-8rem{width: 8rem;}
  .w-10rem{width: 10rem;}
  .w-13rem{width: 13rem;}
  .w-16rem{width: 16rem;}
  .w-20rem{width: 20rem;}
  .w-23rem{width: 23rem;}
  .w-25rem{width: 25rem;}
  .w-30rem{width: 30rem;}
  .w-40rem{width: 40rem;}
  .w-45rem{width: 45rem;}
  .w-50rem{width: 50rem;}
  .top-navStep{top:var(--h-header)}
  .maxw-300 {max-width: 300px;}
  .maxw-400 {max-width: 400px;}
  .maxw-600 {max-width: 600px;}
  .maxw-120rem {max-width: 120rem;}


@media(max-width:575px){
  input,textarea,select {font-size: 16px;}
}

@media(min-width:576px){
  :root{--g-def:1.3rem;--fz:1.6rem; --w-logo:12rem;--h-logo:4.3rem;}
  .w-sm-9rem{width:9rem;}
  .w-sm-13rem{width:13rem;}
  .ovi-sm .fingerSwipe{display: none;}
  .top-sm-10rem {top: 10rem;}
  .top-sm-4rem {top: 4rem;}
  .h-sm-505rem {height: 5.5rem;}
  .h-sm-4rem {height: 4rem;}
  .h-sm-6rem {height: 6rem;}
  .h-sm-8rem {height:8rem;}
  .h-sm-10rem {height:10rem;}
  .h-sm-12rem {height:12rem;}
  .h-sm-15rem {height:15rem;}
  .h-sm-16rem {height:16rem;}
  .h-sm-25rem {height:25rem;}
  .h-sm-28rem {height:28rem;}
  .h-sm-30rem {height:30rem;}
  .h-sm-35rem {height:35rem;}
  .h-sm-40rem {height:40rem;}
  .w-sm-auto {width: auto!important;}
  .w-sm-4rem{width: 4rem;}
  .w-sm-5rem{width: 5rem;}
  .w-sm-6rem{width: 6rem;}
  .w-sm-7rem{width: 7rem;}
  .w-sm-8rem{width: 8rem;}
  .w-sm-9rem{width: 9rem;}
  .w-sm-10rem{width: 10rem;}
  .w-sm-12rem{width: 12rem;}
  .w-sm-14rem{width: 14rem;}
  .w-sm-16rem{width: 16rem;}
  .w-sm-30rem{width: 30rem;}
  .w-sm-38rem{width: 38rem;}
  .gaf-sm-0{grid-auto-flow:unset}
  .gtc-sm-0{grid-template-columns:unset}
  .mt-sm-n7{margin-top:calc(var(--g-def)*-4.5)}
  .ar-sm-6x4 {aspect-ratio:6/4;}
  .ar-sm-4x5 {aspect-ratio:4/5;}
  .ar-sm-sq {aspect-ratio:1/1;}
  .ar-sm-4x3 {aspect-ratio:4/3;}
  .ar-sm-8x5 {aspect-ratio:8/5;}
  .ar-sm-2x1 {aspect-ratio:2/1;}
  .vtc-sm-lr{writing-mode: vertical-lr !important}
  .line-sm-center {position: relative;}
  .line-sm-center:before {content: ""; z-index: 1; position: absolute; top: 0; left: 50%; height: 100%; width: 1px; background-color:rgba(var(--gray),.3);}
}
/* md */
@media(min-width:768px){
  :root{--scr-pt:0rem;}
  .ovi-md .fingerSwipe{display: none;}
  .w-md-auto {width: auto!important;}
  .w-md-4rem{width: 4rem;}
  .w-md-5rem{width: 5rem;}
  .w-md-6rem{width: 6rem;}
  .w-md-7rem{width: 7rem;}
  .w-md-8rem{width: 8rem;}
  .w-md-9rem{width: 9rem;}
  .w-md-10rem{width: 10rem;}
  .w-md-12rem{width: 12rem;}
  .w-md-13rem{width: 13rem;}
  .w-md-14rem{width: 14rem;}
  .w-md-15rem{width: 15rem;}
  .w-md-16rem{width: 16rem;}
  .w-md-18rem{width: 18rem;}
  .w-md-20rem{width: 20rem;}
  .w-md-25rem{width: 25rem;}
  .w-md-30rem{width: 30rem;}
  .w-md-35rem{width: 35rem;}
  .w-md-38rem{width: 38rem;}
  .w-md-40rem{width: 40rem;}
  .w-md-45rem{width: 45rem;}
  .w-md-50rem{width: 50rem;}
  .w-md-52rem{width: 52rem;}
  .w-md-60rem{width: 60rem;}
  .h-md-85vh{height: 85vh;}
  .h-md-90vh{height: 90vh;}
  .h-md-3rem {height:3rem;}
  .h-md-4rem {height:4rem;}
  .h-md-6rem {height:6rem;}
  .h-md-8rem {height:8rem;}
  .h-md-9rem {height:9rem;}
  .h-md-10rem {height:10rem;}
  .h-md-12rem {height:12rem;}
  .h-md-15rem {height:15rem;}
  .h-md-25rem {height:25rem;}
  .h-md-28rem {height:28rem;}
  .h-md-30rem {height:30rem;}
  .h-md-35rem {height:35rem;}
  .h-md-48rem {height:48rem;}
  .h-md-60rem {height:60rem;}
  .h-md-80rem {height:80rem;}
  .h-md-50vh{height: 50vh;}
  .h-md-100vh{height: 100vh;}
  .hm-md-100vh{min-height: 100vh;}
  .fz-md-10rem {font-size:clamp(10rem, 5.7rem + 1.5vw, 7.5rem)}
  .fz-md-11 {font-size:clamp(16rem, 5.7rem + 1.5vw, 7.5rem)}
  .w-md-60{width: 60%;}
  .top-md-4rem {top: 4rem;}
  .pt-md-100vh{padding-top: 100vh;}
  .bg-md-none {background: none;}
  .bottomEnd-md {bottom: 0; right: 0; top: auto; left: auto;}
  .img-align-md-bottom{top:100%;transform:translate(-50%,-100%)}
  .pgy-md-10vh{padding-top: 10vh;padding-bottom: 10vh;}
  .gtc-md-6_col{grid-template-columns:repeat(12,[col] 1fr)}
  .gtc-md-6_col > :nth-child(1){grid-column:col/span 6}
  .gtc-md-6_col > :nth-child(2){grid-column:col 7/span 2}
  .gtc-md-6_col > :nth-child(3){grid-column:col 9/span 2}
  .gtc-md-6_col > :nth-child(4){grid-column:col 11/span 2}
  .gaf-md-0{grid-auto-flow:unset}
  .gtc-md-0{grid-template-columns:unset}
  .gtc-md-5{grid-template-columns:repeat(5, 1fr);}
  .line-md-center {position: relative;}
  .line-md-center:before {content: ""; z-index: 1; position: absolute; top: 0; left: 50%; height: 100%; width: 1px; background-color:rgba(var(--gray),.3);}
  .vtc-md-lr{writing-mode: vertical-lr !important}
  .topEnd-md {top: 0; right: 0; left: auto;}
  .ct-line {position: relative;}
  .ct-line::before {content: "";position: absolute;display: block;top: 0;left: 50%;width: 1px;height: 100%;border-right: 3px dotted #bababa;}
  .ar-md-16x9 {aspect-ratio:16/9;}
  .maxw-md-400 {max-width: 400px;}
}
/* lg */
@media(min-width:992px){
  :root{--g-def:1.3rem; --glow-def:1.1rem; --w-logo:12rem;--h-logo:4.3rem;}
  .gtc-lg-0{grid-template-columns:unset}
  .ovv-lg .fingerSwipe{display: none;}
  .h-lg-3rem {height:3rem;}
  .h-lg-4rem {height:4rem;}
  .h-lg-5rem {height:5rem;}
  .h-lg-6rem {height:6rem;}
  .h-lg-8rem {height:8rem;}
  .h-lg-10rem {height: 10rem;}
  .h-lg-12rem {height: 12rem;}
  .h-lg-14rem {height: 14rem;}
  .h-lg-20rem {height: 20rem;}
  .h-lg-30rem {height: 30rem;}
  .h-lg-35rem {height: 35rem;}
  .h-lg-40rem {height: 40rem;}
  .h-lg-50rem {height: 50rem;}
  .h-lg-10vh{height:10vh}
  .h-lg-15vh{height:15vh}
  .h-lg-20vh{height:20vh}
  .h-lg-60vh{height:60vh}
  .h-lg-80vh{height:80vh}
  .h-lg-85vh{height:85vh}
  .h-lg-90vh{height:90vh}
  .h-lg-100vh{height: 100vh;}
  .hm-lg-100vh{min-height: 100vh;}
  .w-lg-12rem {width: 12rem;}
  .w-lg-14rem {width: 14rem;}
  .w-lg-14rem {width: 14rem;}
  .w-lg-30rem {width: 30rem;}
  .w-lg-35rem {width: 35rem;}
  .w-lg-45rem {width: 45rem;}
  .w-lg-50rem {width: 50rem;}
  .pe-lg-0-im {padding-right: 0!important;}
  .gtc-lg-8{grid-template-columns:repeat(8, 1fr);}
  .pt-lg-100vh{padding-top: 100vh;}
  .top-lg-4rem {top: 4rem;}
  .vtc-lg-lr{writing-mode: vertical-lr !important}
  .i-logo img {margin:-20rem 0 0 30rem;}
}


/*xl*/
@media(min-width:1200px){
  :root{--g-def:1.35rem; --glow-def:1.35rem; --w-logo:13rem;--h-logo:5rem;}
  .position-xl-sticky {top:3rem;}
  .w-xl-20rem {width: 20rem;}
  .w-xl-22rem {width: 22rem;}
  .w-xl-23rem {width: 23rem;}
  .w-xl-25rem {width: 25rem;}
  .w-xl-35rem {width: 35rem;}
  .w-xl-52rem {width: 52rem;}
  .h-xl-20rem{height:20rem!important}
  .h-xl-30rem{height:30rem!important}
  .h-xl-35rem{height:35rem!important}
  .h-xl-40rem{height:40rem!important}
  .h-xl-45rem{height:45rem!important}
  .h-xl-50rem{height:50rem!important}
  .h-xl-55rem{height:55rem!important}
  .h-xl-60rem{height:60rem!important}
  .h-xl-auto{height:auto!important}
  .h-xl-40vh{height:40vh}
  .h-xl-50vh{height:50vh}
  .h-xl-60vh{height:60vh}
  .h-xl-80vh{height:80vh}
  .h-xl-90vh{height:90vh}
  .h-xl-100vh{height:100vh}
  .h-xl-8rem {height:8rem;}
  .w-xl-14rem {width: 14rem;}
  .mh-xl-1000 {min-height: 700px;}
  .fz-xl-11 {font-size:clamp(16rem, 5.7rem + 1.5vw, 7.5rem)}
  .bg-xl-none {background: none;}
  .gtc-xl-5{grid-template-columns:repeat(5, 1fr);}
  .gtc-xl-8{grid-template-columns:repeat(8, 1fr);}
  .gtc-xl-1_11{grid-template-columns:1fr 11fr;}
  .p-xl-6{padding:calc(var(--g-def)*5)}
  .px-xl-6{padding-left:calc(var(--g-def)*5);padding-right:calc(var(--g-def)*5)}
  .pe-xl-0-im {padding-right: 0!important;}
  p {font-size: 105%;}
  .ar-xl-sq {aspect-ratio:1/1;}
  .vtc-xl-lr{writing-mode: vertical-lr !important}
  #wrap {padding-bottom: 10rem;}
  .i-logo img {margin:-20rem 0 0 34rem;}
  .w-xl-23rem {width: 23rem;}
}
/*2xl*/
@media(min-width:1400px){
  .p-2xl-8{padding:calc(var(--g-def)*6)}
  .px-2xl-8{padding-left:calc(var(--g-def)*6);padding-right:calc(var(--g-def)*6)}
  .gtc-2xl-5{grid-template-columns:repeat(5, 1fr);}
  .gtc-2xl-8{grid-template-columns:repeat(8, 1fr);}
  .maxw {max-width:var(--maxw); margin-left:auto ; margin-right: auto;}
}
