@charset "UTF-8";
/*! Writen  by SCSS */
/* RESET */
body, html {
  padding: 0px;
  margin: 0px;
  border: none; }

.pre-inc a, .pre-inc img, .pre-inc ul, .pre-inc li, .pre-inc table, .pre-inc tr, .pre-inc td, .pre-inc p, .pre-inc h1, .pre-inc h2, .pre-inc h3, .pre-inc h4, .pre-inc h5, .pre-inc h6, .pre-inc ol, .pre-inc div, .pre-inc dl, .pre-inc dt, .pre-inc dd, .pre-inc h1, .pre-inc h2, .pre-inc h3, .pre-inc h4, .pre-inc h5, .pre-inc h6, .pre-inc hr, .pre-inc header, .pre-inc footer, .pre-inc section, .pre-inc figure, .pre-inc figcaption, .pre-inc aside, .pre-inc main, .pre-inc span {
  padding: 0px;
  margin: 0px;
  border: none;
  list-style: none;
  font-weight: inherit;
  font-size: 1em; }
.pre-inc header, .pre-inc section, .pre-inc figure, .pre-inc figcaption, .pre-inc aside, .pre-inc main {
  display: block; }
.pre-inc img {
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -webkit-backface-visibility: hidden; }
.pre-inc a img {
  border: none; }

/*font-style
---------------------------------------*/
.pre-inc {
  font-size: 14px;
  line-height: 1.8;
  color: #333;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  letter-spacing: 0.05em;
  font-family: YakuHanMP,"Shippori Mincho", serif;
  font-weight: 400;
  font-style: normal; }
  @media screen and (max-width: 480px) {
    .pre-inc {
      padding-bottom: 74px; } }
  .pre-inc *, .pre-inc *:before, .pre-inc *:after {
    box-sizing: border-box; }
  .pre-inc *.bs_cb {
    box-sizing: content-box; }
  .pre-inc .wrap {
    position: relative;
    overflow: hidden; }
  .pre-inc i.iefontfix {
    transform: translateY(0.2em);
    font-style: inherit; }
  .pre-inc .kerning {
    font-feature-settings: "palt"; }
  .pre-inc .bold {
    font-weight: bold; }
  .pre-inc .nobold {
    font-weight: normal; }

/*fontfamily-style
---------------------------------------*/
.pre-inc .mincho {
  font-family: YakuHanMP,"游明朝","Yu Mincho",YuMincho,"游明朝体","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝", serif; }
  @media screen and (max-width: 768px) {
    .pre-inc .mincho {
      font-family: YakuHanMP,"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho","游明朝",YuMincho,"游明朝体","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif; } }
.pre-inc .gothic {
  font-family: YakuHanJP,"Noto Sans JP","游ゴシック","Yu Gothic",YuGothic,"游ゴシック体","Lucida Grande","Hiragino Kaku Gothic ProN", Meiryo,sans-serif; }
.pre-inc .en {
  font-family: "freight-big-pro", serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-style: normal;
  line-height: 1; }
.pre-inc .garamond {
  font-family: "EB Garamond", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  line-height: 0.85; }
.pre-inc .libre {
  font-family: "Libre Caslon Display", serif;
  font-weight: 400;
  font-style: normal; }
.pre-inc sup {
  display: inline-block;
  vertical-align: text-top;
  font-size: 10px; }
.pre-inc .fw4 {
  font-weight: 400; }
.pre-inc .fw5 {
  font-weight: 500; }
.pre-inc .fw6 {
  font-weight: 600; }
.pre-inc .fw7 {
  font-weight: 700; }

/*color-style
---------------------------------------*/
.pre-inc .color_red {
  color: #990000; }

.pre-inc .bg_red {
  background-color: #990000; }

.pre-inc .color_blue {
  color: #000099; }

.pre-inc .bg_blue {
  background-color: #000099; }

.pre-inc .color_green {
  color: #009900; }

.pre-inc .bg_green {
  background-color: #009900; }

.pre-inc .color_yellow {
  color: #FFFF00; }

.pre-inc .bg_yellow {
  background-color: #FFFF00; }

/*link-style
---------------------------------------*/
.pre-inc a {
  text-decoration: none;
  color: inherit; }

/* NEW! */
/*** CLEAR-FIX ***/
.pre-inc .clearfix:after {
  content: "";
  display: block;
  clear: both;
  height: 0; }

/* ふんわりアルファオーバー */
.pre-inc .alpha a img {
  transition: all 0.2s ease-in-out 0s;
  will-change: opacity; }
.pre-inc:not(.mobile) .alpha a:hover img {
  opacity: 0.7; }

/* fade utility  ふんわりマウスオーバー画像置換 */
.pre-inc .fadeimg_wrap {
  display: inline-block;
  position: relative; }
  .pre-inc .fadeimg_wrap img {
    transition: all 0.3s ease-in-out 0s; }
    .pre-inc .fadeimg_wrap img.off {
      position: relative;
      z-index: 1; }
    .pre-inc .fadeimg_wrap img.on {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      opacity: 0; }
.pre-inc:not(.mobile) .fadeimg_wrap:hover img.off {
  opacity: 0; }
.pre-inc:not(.mobile) .fadeimg_wrap:hover img.on {
  opacity: 1; }

.pre-inc .cl_b {
  clear: both; }

/* NEW! */
/*caption*/
.pre-inc .cap_l {
  text-align: left;
  font-size: 10px; }
  @media screen and (max-width: 480px) {
    .pre-inc .cap_l {
      font-size: 10px; } }

.pre-inc .cap_r {
  text-align: right;
  font-size: 10px; }
  @media screen and (max-width: 480px) {
    .pre-inc .cap_r {
      font-size: 10px; } }

.pre-inc .center {
  margin-left: auto !important;
  margin-right: auto !important; }

/*** ALIGN ***/
.pre-inc .ta_c {
  text-align: center; }
.pre-inc .ta_r {
  text-align: right; }
.pre-inc .ta_l {
  text-align: left; }
@media screen and (max-width: 768px) {
  .pre-inc .ta_c_pc {
    text-align: center; }
  .pre-inc .ta_r_pc {
    text-align: right; }
  .pre-inc .ta_l_pc {
    text-align: left; } }
@media not screen, screen and (min-width: 769px) {
  .pre-inc .ta_c_sp {
    text-align: center; }
  .pre-inc .ta_r_sp {
    text-align: right; }
  .pre-inc .ta_l_sp {
    text-align: left; } }
.pre-inc:not(.mobile) a.sp_link {
  pointer-events: none; }
.pre-inc .shiny a {
  display: inline-block;
  max-width: 100%;
  position: relative;
  overflow: hidden; }
.pre-inc .shiny a:before {
  display: block;
  position: absolute;
  z-index: 10;
  left: -100%;
  top: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 75%, rgba(255, 255, 255, 0) 100%);
  animation: shiny 4s infinite linear 0s; }

/*光の起点と終点の指定*/
@keyframes shiny {
  0% {
    left: -100%; }
  20%,100% {
    left: 100%; } }
@media screen and (max-width: 480px) {
  .pre-inc .w10_sp {
    width: 10%;
    margin: 0 auto; } }

@media screen and (max-width: 480px) {
  .pre-inc .w20_sp {
    width: 20%;
    margin: 0 auto; } }

@media screen and (max-width: 480px) {
  .pre-inc .w30_sp {
    width: 30%;
    margin: 0 auto; } }

@media screen and (max-width: 480px) {
  .pre-inc .w40_sp {
    width: 40%;
    margin: 0 auto; } }

@media screen and (max-width: 480px) {
  .pre-inc .w50_sp {
    width: 50%;
    margin: 0 auto; } }

@media screen and (max-width: 480px) {
  .pre-inc .w60_sp {
    width: 60%;
    margin: 0 auto; } }

@media screen and (max-width: 480px) {
  .pre-inc .w70_sp {
    width: 70%;
    margin: 0 auto; } }

@media screen and (max-width: 480px) {
  .pre-inc .w80_sp {
    width: 80%;
    margin: 0 auto; } }

@media screen and (max-width: 480px) {
  .pre-inc .w90_sp {
    width: 90%;
    margin: 0 auto; } }

@media screen and (max-width: 480px) {
  .pre-inc .w100_sp {
    width: 100%;
    margin: 0 auto; } }

@media screen and (max-width: 1900px) {
  .pre-inc .vpc1900 {
    display: none; } }
@media not screen, screen and (min-width: 1901px) {
  .pre-inc .vsp1900 {
    display: none; } }
@media screen and (max-width: 1800px) {
  .pre-inc .vpc1800 {
    display: none; } }
@media not screen, screen and (min-width: 1801px) {
  .pre-inc .vsp1800 {
    display: none; } }
@media screen and (max-width: 1600px) {
  .pre-inc .vpc1600 {
    display: none; } }
@media not screen, screen and (min-width: 1601px) {
  .pre-inc .vsp1600 {
    display: none; } }
@media screen and (max-width: 1500px) {
  .pre-inc .vpc1500 {
    display: none; } }
@media not screen, screen and (min-width: 1501px) {
  .pre-inc .vsp1500 {
    display: none; } }
@media screen and (max-width: 1400px) {
  .pre-inc .vpc1400 {
    display: none; } }
@media not screen, screen and (min-width: 1401px) {
  .pre-inc .vsp1400 {
    display: none; } }
@media screen and (max-width: 1300px) {
  .pre-inc .vpc1300 {
    display: none; } }
@media not screen, screen and (min-width: 1301px) {
  .pre-inc .vsp1300 {
    display: none; } }
@media screen and (max-width: 1200px) {
  .pre-inc .vpc1200 {
    display: none; } }
@media not screen, screen and (min-width: 1201px) {
  .pre-inc .vsp1200 {
    display: none; } }
@media screen and (max-width: 1024px) {
  .pre-inc .vpc1024 {
    display: none; } }
@media not screen, screen and (min-width: 1025px) {
  .pre-inc .vsp1024 {
    display: none; } }
@media screen and (max-width: 960px) {
  .pre-inc .vpc960 {
    display: none; } }
@media not screen, screen and (min-width: 961px) {
  .pre-inc .vsp960 {
    display: none; } }
@media screen and (max-width: 900px) {
  .pre-inc .vpc900 {
    display: none; } }
@media not screen, screen and (min-width: 901px) {
  .pre-inc .vsp900 {
    display: none; } }
@media screen and (max-width: 820px) {
  .pre-inc .vpc820 {
    display: none; } }
@media not screen, screen and (min-width: 821px) {
  .pre-inc .vsp820 {
    display: none; } }
@media screen and (max-width: 768px) {
  .pre-inc .vpc768 {
    display: none; } }
@media not screen, screen and (min-width: 769px) {
  .pre-inc .vsp768 {
    display: none; } }
@media screen and (max-width: 767px) {
  .pre-inc .vpc767 {
    display: none; } }
@media not screen, screen and (min-width: 768px) {
  .pre-inc .vsp767 {
    display: none; } }
@media screen and (max-width: 480px) {
  .pre-inc .vpc480 {
    display: none; } }
@media not screen, screen and (min-width: 481px) {
  .pre-inc .vsp480 {
    display: none; } }
@media screen and (max-width: 375px) {
  .pre-inc .vpc375 {
    display: none; } }
@media not screen, screen and (min-width: 376px) {
  .pre-inc .vsp375 {
    display: none; } }
@media screen and (max-width: 360px) {
  .pre-inc .vpc360 {
    display: none; } }
@media not screen, screen and (min-width: 361px) {
  .pre-inc .vsp360 {
    display: none; } }
@media screen and (max-width: 320px) {
  .pre-inc .vpc320 {
    display: none; } }
@media not screen, screen and (min-width: 321px) {
  .pre-inc .vsp320 {
    display: none; } }
.pre-inc .mt0 {
  margin-top: 0px !important; }

.pre-inc .mr0 {
  margin-right: 0px !important; }

.pre-inc .ml0 {
  margin-left: 0px !important; }

.pre-inc .mb0 {
  margin-bottom: 0px !important; }

.pre-inc .pt0 {
  padding-top: 0px !important; }

.pre-inc .pr0 {
  padding-right: 0px !important; }

.pre-inc .pl0 {
  padding-left: 0px !important; }

.pre-inc .pb0 {
  padding-bottom: 0px !important; }

.pre-inc .mt1 {
  margin-top: 1px !important; }

.pre-inc .mr1 {
  margin-right: 1px !important; }

.pre-inc .ml1 {
  margin-left: 1px !important; }

.pre-inc .mb1 {
  margin-bottom: 1px !important; }

.pre-inc .pt1 {
  padding-top: 1px !important; }

.pre-inc .pr1 {
  padding-right: 1px !important; }

.pre-inc .pl1 {
  padding-left: 1px !important; }

.pre-inc .pb1 {
  padding-bottom: 1px !important; }

.pre-inc .mt2 {
  margin-top: 2px !important; }

.pre-inc .mr2 {
  margin-right: 2px !important; }

.pre-inc .ml2 {
  margin-left: 2px !important; }

.pre-inc .mb2 {
  margin-bottom: 2px !important; }

.pre-inc .pt2 {
  padding-top: 2px !important; }

.pre-inc .pr2 {
  padding-right: 2px !important; }

.pre-inc .pl2 {
  padding-left: 2px !important; }

.pre-inc .pb2 {
  padding-bottom: 2px !important; }

.pre-inc .mt3 {
  margin-top: 3px !important; }

.pre-inc .mr3 {
  margin-right: 3px !important; }

.pre-inc .ml3 {
  margin-left: 3px !important; }

.pre-inc .mb3 {
  margin-bottom: 3px !important; }

.pre-inc .pt3 {
  padding-top: 3px !important; }

.pre-inc .pr3 {
  padding-right: 3px !important; }

.pre-inc .pl3 {
  padding-left: 3px !important; }

.pre-inc .pb3 {
  padding-bottom: 3px !important; }

.pre-inc .mt4 {
  margin-top: 4px !important; }

.pre-inc .mr4 {
  margin-right: 4px !important; }

.pre-inc .ml4 {
  margin-left: 4px !important; }

.pre-inc .mb4 {
  margin-bottom: 4px !important; }

.pre-inc .pt4 {
  padding-top: 4px !important; }

.pre-inc .pr4 {
  padding-right: 4px !important; }

.pre-inc .pl4 {
  padding-left: 4px !important; }

.pre-inc .pb4 {
  padding-bottom: 4px !important; }

.pre-inc .mt5 {
  margin-top: 5px !important; }

.pre-inc .mr5 {
  margin-right: 5px !important; }

.pre-inc .ml5 {
  margin-left: 5px !important; }

.pre-inc .mb5 {
  margin-bottom: 5px !important; }

.pre-inc .pt5 {
  padding-top: 5px !important; }

.pre-inc .pr5 {
  padding-right: 5px !important; }

.pre-inc .pl5 {
  padding-left: 5px !important; }

.pre-inc .pb5 {
  padding-bottom: 5px !important; }

.pre-inc .mt6 {
  margin-top: 6px !important; }

.pre-inc .mr6 {
  margin-right: 6px !important; }

.pre-inc .ml6 {
  margin-left: 6px !important; }

.pre-inc .mb6 {
  margin-bottom: 6px !important; }

.pre-inc .pt6 {
  padding-top: 6px !important; }

.pre-inc .pr6 {
  padding-right: 6px !important; }

.pre-inc .pl6 {
  padding-left: 6px !important; }

.pre-inc .pb6 {
  padding-bottom: 6px !important; }

.pre-inc .mt7 {
  margin-top: 7px !important; }

.pre-inc .mr7 {
  margin-right: 7px !important; }

.pre-inc .ml7 {
  margin-left: 7px !important; }

.pre-inc .mb7 {
  margin-bottom: 7px !important; }

.pre-inc .pt7 {
  padding-top: 7px !important; }

.pre-inc .pr7 {
  padding-right: 7px !important; }

.pre-inc .pl7 {
  padding-left: 7px !important; }

.pre-inc .pb7 {
  padding-bottom: 7px !important; }

.pre-inc .mt8 {
  margin-top: 8px !important; }

.pre-inc .mr8 {
  margin-right: 8px !important; }

.pre-inc .ml8 {
  margin-left: 8px !important; }

.pre-inc .mb8 {
  margin-bottom: 8px !important; }

.pre-inc .pt8 {
  padding-top: 8px !important; }

.pre-inc .pr8 {
  padding-right: 8px !important; }

.pre-inc .pl8 {
  padding-left: 8px !important; }

.pre-inc .pb8 {
  padding-bottom: 8px !important; }

.pre-inc .mt9 {
  margin-top: 9px !important; }

.pre-inc .mr9 {
  margin-right: 9px !important; }

.pre-inc .ml9 {
  margin-left: 9px !important; }

.pre-inc .mb9 {
  margin-bottom: 9px !important; }

.pre-inc .pt9 {
  padding-top: 9px !important; }

.pre-inc .pr9 {
  padding-right: 9px !important; }

.pre-inc .pl9 {
  padding-left: 9px !important; }

.pre-inc .pb9 {
  padding-bottom: 9px !important; }

.pre-inc .mt10 {
  margin-top: 10px !important; }

.pre-inc .mr10 {
  margin-right: 10px !important; }

.pre-inc .ml10 {
  margin-left: 10px !important; }

.pre-inc .mb10 {
  margin-bottom: 10px !important; }

.pre-inc .pt10 {
  padding-top: 10px !important; }

.pre-inc .pr10 {
  padding-right: 10px !important; }

.pre-inc .pl10 {
  padding-left: 10px !important; }

.pre-inc .pb10 {
  padding-bottom: 10px !important; }

.pre-inc .mt15 {
  margin-top: 15px !important; }

.pre-inc .mr15 {
  margin-right: 15px !important; }

.pre-inc .ml15 {
  margin-left: 15px !important; }

.pre-inc .mb15 {
  margin-bottom: 15px !important; }

.pre-inc .pt15 {
  padding-top: 15px !important; }

.pre-inc .pr15 {
  padding-right: 15px !important; }

.pre-inc .pl15 {
  padding-left: 15px !important; }

.pre-inc .pb15 {
  padding-bottom: 15px !important; }

.pre-inc .mt20 {
  margin-top: 20px !important; }

.pre-inc .mr20 {
  margin-right: 20px !important; }

.pre-inc .ml20 {
  margin-left: 20px !important; }

.pre-inc .mb20 {
  margin-bottom: 20px !important; }

.pre-inc .pt20 {
  padding-top: 20px !important; }

.pre-inc .pr20 {
  padding-right: 20px !important; }

.pre-inc .pl20 {
  padding-left: 20px !important; }

.pre-inc .pb20 {
  padding-bottom: 20px !important; }

.pre-inc .mt25 {
  margin-top: 25px !important; }

.pre-inc .mr25 {
  margin-right: 25px !important; }

.pre-inc .ml25 {
  margin-left: 25px !important; }

.pre-inc .mb25 {
  margin-bottom: 25px !important; }

.pre-inc .pt25 {
  padding-top: 25px !important; }

.pre-inc .pr25 {
  padding-right: 25px !important; }

.pre-inc .pl25 {
  padding-left: 25px !important; }

.pre-inc .pb25 {
  padding-bottom: 25px !important; }

.pre-inc .mt30 {
  margin-top: 30px !important; }

.pre-inc .mr30 {
  margin-right: 30px !important; }

.pre-inc .ml30 {
  margin-left: 30px !important; }

.pre-inc .mb30 {
  margin-bottom: 30px !important; }

.pre-inc .pt30 {
  padding-top: 30px !important; }

.pre-inc .pr30 {
  padding-right: 30px !important; }

.pre-inc .pl30 {
  padding-left: 30px !important; }

.pre-inc .pb30 {
  padding-bottom: 30px !important; }

.pre-inc .mt35 {
  margin-top: 35px !important; }

.pre-inc .mr35 {
  margin-right: 35px !important; }

.pre-inc .ml35 {
  margin-left: 35px !important; }

.pre-inc .mb35 {
  margin-bottom: 35px !important; }

.pre-inc .pt35 {
  padding-top: 35px !important; }

.pre-inc .pr35 {
  padding-right: 35px !important; }

.pre-inc .pl35 {
  padding-left: 35px !important; }

.pre-inc .pb35 {
  padding-bottom: 35px !important; }

.pre-inc .mt40 {
  margin-top: 40px !important; }

.pre-inc .mr40 {
  margin-right: 40px !important; }

.pre-inc .ml40 {
  margin-left: 40px !important; }

.pre-inc .mb40 {
  margin-bottom: 40px !important; }

.pre-inc .pt40 {
  padding-top: 40px !important; }

.pre-inc .pr40 {
  padding-right: 40px !important; }

.pre-inc .pl40 {
  padding-left: 40px !important; }

.pre-inc .pb40 {
  padding-bottom: 40px !important; }

.pre-inc .mt45 {
  margin-top: 45px !important; }

.pre-inc .mr45 {
  margin-right: 45px !important; }

.pre-inc .ml45 {
  margin-left: 45px !important; }

.pre-inc .mb45 {
  margin-bottom: 45px !important; }

.pre-inc .pt45 {
  padding-top: 45px !important; }

.pre-inc .pr45 {
  padding-right: 45px !important; }

.pre-inc .pl45 {
  padding-left: 45px !important; }

.pre-inc .pb45 {
  padding-bottom: 45px !important; }

.pre-inc .mt50 {
  margin-top: 50px !important; }

.pre-inc .mr50 {
  margin-right: 50px !important; }

.pre-inc .ml50 {
  margin-left: 50px !important; }

.pre-inc .mb50 {
  margin-bottom: 50px !important; }

.pre-inc .pt50 {
  padding-top: 50px !important; }

.pre-inc .pr50 {
  padding-right: 50px !important; }

.pre-inc .pl50 {
  padding-left: 50px !important; }

.pre-inc .pb50 {
  padding-bottom: 50px !important; }

.pre-inc .mt55 {
  margin-top: 55px !important; }

.pre-inc .mr55 {
  margin-right: 55px !important; }

.pre-inc .ml55 {
  margin-left: 55px !important; }

.pre-inc .mb55 {
  margin-bottom: 55px !important; }

.pre-inc .pt55 {
  padding-top: 55px !important; }

.pre-inc .pr55 {
  padding-right: 55px !important; }

.pre-inc .pl55 {
  padding-left: 55px !important; }

.pre-inc .pb55 {
  padding-bottom: 55px !important; }

.pre-inc .mt60 {
  margin-top: 60px !important; }

.pre-inc .mr60 {
  margin-right: 60px !important; }

.pre-inc .ml60 {
  margin-left: 60px !important; }

.pre-inc .mb60 {
  margin-bottom: 60px !important; }

.pre-inc .pt60 {
  padding-top: 60px !important; }

.pre-inc .pr60 {
  padding-right: 60px !important; }

.pre-inc .pl60 {
  padding-left: 60px !important; }

.pre-inc .pb60 {
  padding-bottom: 60px !important; }

.pre-inc .mt65 {
  margin-top: 65px !important; }

.pre-inc .mr65 {
  margin-right: 65px !important; }

.pre-inc .ml65 {
  margin-left: 65px !important; }

.pre-inc .mb65 {
  margin-bottom: 65px !important; }

.pre-inc .pt65 {
  padding-top: 65px !important; }

.pre-inc .pr65 {
  padding-right: 65px !important; }

.pre-inc .pl65 {
  padding-left: 65px !important; }

.pre-inc .pb65 {
  padding-bottom: 65px !important; }

.pre-inc .mt70 {
  margin-top: 70px !important; }

.pre-inc .mr70 {
  margin-right: 70px !important; }

.pre-inc .ml70 {
  margin-left: 70px !important; }

.pre-inc .mb70 {
  margin-bottom: 70px !important; }

.pre-inc .pt70 {
  padding-top: 70px !important; }

.pre-inc .pr70 {
  padding-right: 70px !important; }

.pre-inc .pl70 {
  padding-left: 70px !important; }

.pre-inc .pb70 {
  padding-bottom: 70px !important; }

.pre-inc .mt75 {
  margin-top: 75px !important; }

.pre-inc .mr75 {
  margin-right: 75px !important; }

.pre-inc .ml75 {
  margin-left: 75px !important; }

.pre-inc .mb75 {
  margin-bottom: 75px !important; }

.pre-inc .pt75 {
  padding-top: 75px !important; }

.pre-inc .pr75 {
  padding-right: 75px !important; }

.pre-inc .pl75 {
  padding-left: 75px !important; }

.pre-inc .pb75 {
  padding-bottom: 75px !important; }

.pre-inc .mt80 {
  margin-top: 80px !important; }

.pre-inc .mr80 {
  margin-right: 80px !important; }

.pre-inc .ml80 {
  margin-left: 80px !important; }

.pre-inc .mb80 {
  margin-bottom: 80px !important; }

.pre-inc .pt80 {
  padding-top: 80px !important; }

.pre-inc .pr80 {
  padding-right: 80px !important; }

.pre-inc .pl80 {
  padding-left: 80px !important; }

.pre-inc .pb80 {
  padding-bottom: 80px !important; }

.pre-inc .mt85 {
  margin-top: 85px !important; }

.pre-inc .mr85 {
  margin-right: 85px !important; }

.pre-inc .ml85 {
  margin-left: 85px !important; }

.pre-inc .mb85 {
  margin-bottom: 85px !important; }

.pre-inc .pt85 {
  padding-top: 85px !important; }

.pre-inc .pr85 {
  padding-right: 85px !important; }

.pre-inc .pl85 {
  padding-left: 85px !important; }

.pre-inc .pb85 {
  padding-bottom: 85px !important; }

.pre-inc .mt90 {
  margin-top: 90px !important; }

.pre-inc .mr90 {
  margin-right: 90px !important; }

.pre-inc .ml90 {
  margin-left: 90px !important; }

.pre-inc .mb90 {
  margin-bottom: 90px !important; }

.pre-inc .pt90 {
  padding-top: 90px !important; }

.pre-inc .pr90 {
  padding-right: 90px !important; }

.pre-inc .pl90 {
  padding-left: 90px !important; }

.pre-inc .pb90 {
  padding-bottom: 90px !important; }

.pre-inc .mt95 {
  margin-top: 95px !important; }

.pre-inc .mr95 {
  margin-right: 95px !important; }

.pre-inc .ml95 {
  margin-left: 95px !important; }

.pre-inc .mb95 {
  margin-bottom: 95px !important; }

.pre-inc .pt95 {
  padding-top: 95px !important; }

.pre-inc .pr95 {
  padding-right: 95px !important; }

.pre-inc .pl95 {
  padding-left: 95px !important; }

.pre-inc .pb95 {
  padding-bottom: 95px !important; }

.pre-inc .mt100 {
  margin-top: 100px !important; }

.pre-inc .mr100 {
  margin-right: 100px !important; }

.pre-inc .ml100 {
  margin-left: 100px !important; }

.pre-inc .mb100 {
  margin-bottom: 100px !important; }

.pre-inc .pt100 {
  padding-top: 100px !important; }

.pre-inc .pr100 {
  padding-right: 100px !important; }

.pre-inc .pl100 {
  padding-left: 100px !important; }

.pre-inc .pb100 {
  padding-bottom: 100px !important; }

.pre-inc .mt105 {
  margin-top: 105px !important; }

.pre-inc .mr105 {
  margin-right: 105px !important; }

.pre-inc .ml105 {
  margin-left: 105px !important; }

.pre-inc .mb105 {
  margin-bottom: 105px !important; }

.pre-inc .pt105 {
  padding-top: 105px !important; }

.pre-inc .pr105 {
  padding-right: 105px !important; }

.pre-inc .pl105 {
  padding-left: 105px !important; }

.pre-inc .pb105 {
  padding-bottom: 105px !important; }

.pre-inc .mt110 {
  margin-top: 110px !important; }

.pre-inc .mr110 {
  margin-right: 110px !important; }

.pre-inc .ml110 {
  margin-left: 110px !important; }

.pre-inc .mb110 {
  margin-bottom: 110px !important; }

.pre-inc .pt110 {
  padding-top: 110px !important; }

.pre-inc .pr110 {
  padding-right: 110px !important; }

.pre-inc .pl110 {
  padding-left: 110px !important; }

.pre-inc .pb110 {
  padding-bottom: 110px !important; }

.pre-inc .mt115 {
  margin-top: 115px !important; }

.pre-inc .mr115 {
  margin-right: 115px !important; }

.pre-inc .ml115 {
  margin-left: 115px !important; }

.pre-inc .mb115 {
  margin-bottom: 115px !important; }

.pre-inc .pt115 {
  padding-top: 115px !important; }

.pre-inc .pr115 {
  padding-right: 115px !important; }

.pre-inc .pl115 {
  padding-left: 115px !important; }

.pre-inc .pb115 {
  padding-bottom: 115px !important; }

.pre-inc .mt120 {
  margin-top: 120px !important; }

.pre-inc .mr120 {
  margin-right: 120px !important; }

.pre-inc .ml120 {
  margin-left: 120px !important; }

.pre-inc .mb120 {
  margin-bottom: 120px !important; }

.pre-inc .pt120 {
  padding-top: 120px !important; }

.pre-inc .pr120 {
  padding-right: 120px !important; }

.pre-inc .pl120 {
  padding-left: 120px !important; }

.pre-inc .pb120 {
  padding-bottom: 120px !important; }

.pre-inc .mt125 {
  margin-top: 125px !important; }

.pre-inc .mr125 {
  margin-right: 125px !important; }

.pre-inc .ml125 {
  margin-left: 125px !important; }

.pre-inc .mb125 {
  margin-bottom: 125px !important; }

.pre-inc .pt125 {
  padding-top: 125px !important; }

.pre-inc .pr125 {
  padding-right: 125px !important; }

.pre-inc .pl125 {
  padding-left: 125px !important; }

.pre-inc .pb125 {
  padding-bottom: 125px !important; }

.pre-inc .mt130 {
  margin-top: 130px !important; }

.pre-inc .mr130 {
  margin-right: 130px !important; }

.pre-inc .ml130 {
  margin-left: 130px !important; }

.pre-inc .mb130 {
  margin-bottom: 130px !important; }

.pre-inc .pt130 {
  padding-top: 130px !important; }

.pre-inc .pr130 {
  padding-right: 130px !important; }

.pre-inc .pl130 {
  padding-left: 130px !important; }

.pre-inc .pb130 {
  padding-bottom: 130px !important; }

.pre-inc .mt135 {
  margin-top: 135px !important; }

.pre-inc .mr135 {
  margin-right: 135px !important; }

.pre-inc .ml135 {
  margin-left: 135px !important; }

.pre-inc .mb135 {
  margin-bottom: 135px !important; }

.pre-inc .pt135 {
  padding-top: 135px !important; }

.pre-inc .pr135 {
  padding-right: 135px !important; }

.pre-inc .pl135 {
  padding-left: 135px !important; }

.pre-inc .pb135 {
  padding-bottom: 135px !important; }

.pre-inc .mt140 {
  margin-top: 140px !important; }

.pre-inc .mr140 {
  margin-right: 140px !important; }

.pre-inc .ml140 {
  margin-left: 140px !important; }

.pre-inc .mb140 {
  margin-bottom: 140px !important; }

.pre-inc .pt140 {
  padding-top: 140px !important; }

.pre-inc .pr140 {
  padding-right: 140px !important; }

.pre-inc .pl140 {
  padding-left: 140px !important; }

.pre-inc .pb140 {
  padding-bottom: 140px !important; }

.pre-inc .mt145 {
  margin-top: 145px !important; }

.pre-inc .mr145 {
  margin-right: 145px !important; }

.pre-inc .ml145 {
  margin-left: 145px !important; }

.pre-inc .mb145 {
  margin-bottom: 145px !important; }

.pre-inc .pt145 {
  padding-top: 145px !important; }

.pre-inc .pr145 {
  padding-right: 145px !important; }

.pre-inc .pl145 {
  padding-left: 145px !important; }

.pre-inc .pb145 {
  padding-bottom: 145px !important; }

.pre-inc .mt150 {
  margin-top: 150px !important; }

.pre-inc .mr150 {
  margin-right: 150px !important; }

.pre-inc .ml150 {
  margin-left: 150px !important; }

.pre-inc .mb150 {
  margin-bottom: 150px !important; }

.pre-inc .pt150 {
  padding-top: 150px !important; }

.pre-inc .pr150 {
  padding-right: 150px !important; }

.pre-inc .pl150 {
  padding-left: 150px !important; }

.pre-inc .pb150 {
  padding-bottom: 150px !important; }

.pre-inc .mt155 {
  margin-top: 155px !important; }

.pre-inc .mr155 {
  margin-right: 155px !important; }

.pre-inc .ml155 {
  margin-left: 155px !important; }

.pre-inc .mb155 {
  margin-bottom: 155px !important; }

.pre-inc .pt155 {
  padding-top: 155px !important; }

.pre-inc .pr155 {
  padding-right: 155px !important; }

.pre-inc .pl155 {
  padding-left: 155px !important; }

.pre-inc .pb155 {
  padding-bottom: 155px !important; }

.pre-inc .mt160 {
  margin-top: 160px !important; }

.pre-inc .mr160 {
  margin-right: 160px !important; }

.pre-inc .ml160 {
  margin-left: 160px !important; }

.pre-inc .mb160 {
  margin-bottom: 160px !important; }

.pre-inc .pt160 {
  padding-top: 160px !important; }

.pre-inc .pr160 {
  padding-right: 160px !important; }

.pre-inc .pl160 {
  padding-left: 160px !important; }

.pre-inc .pb160 {
  padding-bottom: 160px !important; }

.pre-inc .mt165 {
  margin-top: 165px !important; }

.pre-inc .mr165 {
  margin-right: 165px !important; }

.pre-inc .ml165 {
  margin-left: 165px !important; }

.pre-inc .mb165 {
  margin-bottom: 165px !important; }

.pre-inc .pt165 {
  padding-top: 165px !important; }

.pre-inc .pr165 {
  padding-right: 165px !important; }

.pre-inc .pl165 {
  padding-left: 165px !important; }

.pre-inc .pb165 {
  padding-bottom: 165px !important; }

.pre-inc .mt170 {
  margin-top: 170px !important; }

.pre-inc .mr170 {
  margin-right: 170px !important; }

.pre-inc .ml170 {
  margin-left: 170px !important; }

.pre-inc .mb170 {
  margin-bottom: 170px !important; }

.pre-inc .pt170 {
  padding-top: 170px !important; }

.pre-inc .pr170 {
  padding-right: 170px !important; }

.pre-inc .pl170 {
  padding-left: 170px !important; }

.pre-inc .pb170 {
  padding-bottom: 170px !important; }

.pre-inc .mt175 {
  margin-top: 175px !important; }

.pre-inc .mr175 {
  margin-right: 175px !important; }

.pre-inc .ml175 {
  margin-left: 175px !important; }

.pre-inc .mb175 {
  margin-bottom: 175px !important; }

.pre-inc .pt175 {
  padding-top: 175px !important; }

.pre-inc .pr175 {
  padding-right: 175px !important; }

.pre-inc .pl175 {
  padding-left: 175px !important; }

.pre-inc .pb175 {
  padding-bottom: 175px !important; }

.pre-inc .mt180 {
  margin-top: 180px !important; }

.pre-inc .mr180 {
  margin-right: 180px !important; }

.pre-inc .ml180 {
  margin-left: 180px !important; }

.pre-inc .mb180 {
  margin-bottom: 180px !important; }

.pre-inc .pt180 {
  padding-top: 180px !important; }

.pre-inc .pr180 {
  padding-right: 180px !important; }

.pre-inc .pl180 {
  padding-left: 180px !important; }

.pre-inc .pb180 {
  padding-bottom: 180px !important; }

.pre-inc .mt185 {
  margin-top: 185px !important; }

.pre-inc .mr185 {
  margin-right: 185px !important; }

.pre-inc .ml185 {
  margin-left: 185px !important; }

.pre-inc .mb185 {
  margin-bottom: 185px !important; }

.pre-inc .pt185 {
  padding-top: 185px !important; }

.pre-inc .pr185 {
  padding-right: 185px !important; }

.pre-inc .pl185 {
  padding-left: 185px !important; }

.pre-inc .pb185 {
  padding-bottom: 185px !important; }

.pre-inc .mt190 {
  margin-top: 190px !important; }

.pre-inc .mr190 {
  margin-right: 190px !important; }

.pre-inc .ml190 {
  margin-left: 190px !important; }

.pre-inc .mb190 {
  margin-bottom: 190px !important; }

.pre-inc .pt190 {
  padding-top: 190px !important; }

.pre-inc .pr190 {
  padding-right: 190px !important; }

.pre-inc .pl190 {
  padding-left: 190px !important; }

.pre-inc .pb190 {
  padding-bottom: 190px !important; }

.pre-inc .mt195 {
  margin-top: 195px !important; }

.pre-inc .mr195 {
  margin-right: 195px !important; }

.pre-inc .ml195 {
  margin-left: 195px !important; }

.pre-inc .mb195 {
  margin-bottom: 195px !important; }

.pre-inc .pt195 {
  padding-top: 195px !important; }

.pre-inc .pr195 {
  padding-right: 195px !important; }

.pre-inc .pl195 {
  padding-left: 195px !important; }

.pre-inc .pb195 {
  padding-bottom: 195px !important; }

.pre-inc .mt200 {
  margin-top: 200px !important; }

.pre-inc .mr200 {
  margin-right: 200px !important; }

.pre-inc .ml200 {
  margin-left: 200px !important; }

.pre-inc .mb200 {
  margin-bottom: 200px !important; }

.pre-inc .pt200 {
  padding-top: 200px !important; }

.pre-inc .pr200 {
  padding-right: 200px !important; }

.pre-inc .pl200 {
  padding-left: 200px !important; }

.pre-inc .pb200 {
  padding-bottom: 200px !important; }

.pre-inc .side_spc {
  padding-left: 20px;
  padding-right: 20px; }

@media screen and (max-width: 768px) {
  .pre-inc .mb0_sp {
    margin-bottom: 0px !important; }

  .pre-inc .mb1_sp {
    margin-bottom: 1px !important; }

  .pre-inc .mb2_sp {
    margin-bottom: 2px !important; }

  .pre-inc .mb3_sp {
    margin-bottom: 3px !important; }

  .pre-inc .mb4_sp {
    margin-bottom: 4px !important; }

  .pre-inc .mb5_sp {
    margin-bottom: 5px !important; }

  .pre-inc .mb6_sp {
    margin-bottom: 6px !important; }

  .pre-inc .mb7_sp {
    margin-bottom: 7px !important; }

  .pre-inc .mb8_sp {
    margin-bottom: 8px !important; }

  .pre-inc .mb9_sp {
    margin-bottom: 9px !important; }

  .pre-inc .mb10_sp {
    margin-bottom: 10px !important; }

  .pre-inc .mb15_sp {
    margin-bottom: 15px !important; }

  .pre-inc .mb20_sp {
    margin-bottom: 20px !important; }

  .pre-inc .mb25_sp {
    margin-bottom: 25px !important; }

  .pre-inc .mb30_sp {
    margin-bottom: 30px !important; }

  .pre-inc .mb35_sp {
    margin-bottom: 35px !important; }

  .pre-inc .mb40_sp {
    margin-bottom: 40px !important; }

  .pre-inc .mb45_sp {
    margin-bottom: 45px !important; }

  .pre-inc .mb50_sp {
    margin-bottom: 50px !important; }

  .pre-inc .mb55_sp {
    margin-bottom: 55px !important; }

  .pre-inc .mb60_sp {
    margin-bottom: 60px !important; }

  .pre-inc .mb65_sp {
    margin-bottom: 65px !important; }

  .pre-inc .mb70_sp {
    margin-bottom: 70px !important; }

  .pre-inc .mb75_sp {
    margin-bottom: 75px !important; }

  .pre-inc .mb80_sp {
    margin-bottom: 80px !important; }

  .pre-inc .mb85_sp {
    margin-bottom: 85px !important; }

  .pre-inc .mb90_sp {
    margin-bottom: 90px !important; }

  .pre-inc .mb95_sp {
    margin-bottom: 95px !important; }

  .pre-inc .mb100_sp {
    margin-bottom: 100px !important; }

  .pre-inc .mb105_sp {
    margin-bottom: 105px !important; }

  .pre-inc .mb110_sp {
    margin-bottom: 110px !important; }

  .pre-inc .mb115_sp {
    margin-bottom: 115px !important; }

  .pre-inc .mb120_sp {
    margin-bottom: 120px !important; }

  .pre-inc .mb125_sp {
    margin-bottom: 125px !important; }

  .pre-inc .mb130_sp {
    margin-bottom: 130px !important; }

  .pre-inc .mb135_sp {
    margin-bottom: 135px !important; }

  .pre-inc .mb140_sp {
    margin-bottom: 140px !important; }

  .pre-inc .mb145_sp {
    margin-bottom: 145px !important; }

  .pre-inc .mb150_sp {
    margin-bottom: 150px !important; }

  .pre-inc .mb155_sp {
    margin-bottom: 155px !important; }

  .pre-inc .mb160_sp {
    margin-bottom: 160px !important; }

  .pre-inc .mb165_sp {
    margin-bottom: 165px !important; }

  .pre-inc .mb170_sp {
    margin-bottom: 170px !important; }

  .pre-inc .mb175_sp {
    margin-bottom: 175px !important; }

  .pre-inc .mb180_sp {
    margin-bottom: 180px !important; }

  .pre-inc .mb185_sp {
    margin-bottom: 185px !important; }

  .pre-inc .mb190_sp {
    margin-bottom: 190px !important; }

  .pre-inc .mb195_sp {
    margin-bottom: 195px !important; }

  .pre-inc .mb200_sp {
    margin-bottom: 200px !important; } }
h1.main_title {
  display: none; }

.pre-inc {
  /*	モーダル	*/
  /*	スクロールアクション	*/ }
  .pre-inc .header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    transform: translateY(-10px);
    opacity: 0;
    pointer-events: none;
    transition: 0.3s transform cubic-bezier(0, 0, 0.2, 1) 0s, 0.3s opacity cubic-bezier(0, 0, 0.2, 1) 0s; }
    .pre-inc .header:before {
      content: "";
      position: fixed;
      inset: 0;
      height: 100vh;
      width: 100%;
      background: rgba(0, 0, 0, 0.5);
      pointer-events: none;
      opacity: 0;
      transition: 0.3s opacity cubic-bezier(0, 0, 0.2, 1) 0s; }
  .pre-inc.up_navi .header {
    opacity: 1;
    pointer-events: all;
    transform: translateY(0); }
  .pre-inc.nav_open .header:before {
    opacity: 1; }
  .pre-inc div.header_inner {
    margin: 0 auto;
    position: relative; }
    .pre-inc div.header_inner .logo {
      position: absolute;
      top: 22px;
      left: 34px;
      line-height: 0;
      font-size: 0; }
      @media screen and (max-width: 768px) {
        .pre-inc div.header_inner .logo {
          top: 10px; } }
      @media screen and (max-width: 480px) {
        .pre-inc div.header_inner .logo {
          top: 20px;
          left: 20px; } }
      .pre-inc div.header_inner .logo .logo_img {
        transition: 0.3s opacity ease-in-out 0s; }
        .pre-inc div.header_inner .logo .logo_img.white {
          position: absolute;
          left: 0;
          top: 0;
          opacity: 0; }
    .pre-inc div.header_inner#login .header_inner .logo .logo_img.black, .pre-inc div.header_inner#limited .header_inner .logo .logo_img.black {
      opacity: 0; }
    .pre-inc div.header_inner#login .header_inner .logo .logo_img.white, .pre-inc div.header_inner#limited .header_inner .logo .logo_img.white {
      opacity: 1; }
    .pre-inc div.header_inner#login .header_inner .logo.white_none .logo_img.black, .pre-inc div.header_inner#limited .header_inner .logo.white_none .logo_img.black {
      opacity: 1; }
    .pre-inc div.header_inner#login .header_inner .logo.white_none .logo_img.white, .pre-inc div.header_inner#limited .header_inner .logo.white_none .logo_img.white {
      opacity: 0; }
    .pre-inc div.header_inner ul.headnavi {
      position: absolute;
      top: 25px;
      right: 100px;
      display: flex;
      column-gap: 15px; }
      @media screen and (max-width: 768px) {
        .pre-inc div.header_inner ul.headnavi {
          display: none; } }
      .pre-inc div.header_inner ul.headnavi .headnavi_item .headnavi_link {
        display: flex;
        flex-direction: column;
        justify-content: center;
        color: #FFF;
        text-align: center;
        padding: 13px 50px; }
        .pre-inc div.header_inner ul.headnavi .headnavi_item .headnavi_link .en {
          font-size: 23px; }
        .pre-inc div.header_inner ul.headnavi .headnavi_item .headnavi_link .jp {
          font-size: 11px; }
  .pre-inc .nav_btn {
    /*	button初期化*/
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    appearance: none;
    /*	button初期化*/
    position: absolute;
    top: 25px;
    right: 20px;
    cursor: pointer;
    z-index: 9999;
    width: 69px;
    height: 69px;
    background: #F1F1F1;
    border: 1px solid #E7E7E7;
    border-radius: 10px;
    transition: all 0.5s ease-in-out; }
    @media screen and (max-width: 480px) {
      .pre-inc .nav_btn {
        top: 20px; } }
    .pre-inc .nav_btn .menu_txt {
      position: absolute;
      left: 0;
      right: 0;
      color: #333;
      top: 5px;
      font-size: 10px;
      text-align: center; }
    .pre-inc .nav_btn .nav_btn_line {
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: #000;
      position: absolute;
      border: none;
      transform-origin: center center;
      border-radius: 50%;
      left: 0;
      right: 0;
      margin: 0 auto;
      transition: top 0.2s ease-in-out 0.2s,transform 0.2s ease-in-out 0s; }
      .pre-inc .nav_btn .nav_btn_line:nth-of-type(1) {
        top: 31px; }
      .pre-inc .nav_btn .nav_btn_line:nth-of-type(2), .pre-inc .nav_btn .nav_btn_line:nth-of-type(4) {
        left: 20px;
        top: 31px;
        right: auto; }
      .pre-inc .nav_btn .nav_btn_line:nth-of-type(3), .pre-inc .nav_btn .nav_btn_line:nth-of-type(5) {
        top: 31px;
        right: 20px;
        left: auto; }
    .pre-inc .nav_btn .hamb_txt {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      font-size: 10px;
      font-weight: bold;
      color: #000;
      text-align: center;
      transition: all 0.5s ease-in-out; }
      .pre-inc .nav_btn .hamb_txt.close {
        opacity: 0; }
  .pre-inc.nav_open .nav_btn .nav_btn_line {
    transition: top 0.2s ease-in-out 0s,transform 0.2s ease-in-out 0s; }
    .pre-inc.nav_open .nav_btn .nav_btn_line:nth-of-type(1) {
      top: 31px; }
    .pre-inc.nav_open .nav_btn .nav_btn_line:nth-of-type(2), .pre-inc.nav_open .nav_btn .nav_btn_line:nth-of-type(3) {
      transform: translateY(-10px); }
    .pre-inc.nav_open .nav_btn .nav_btn_line:nth-of-type(4), .pre-inc.nav_open .nav_btn .nav_btn_line:nth-of-type(5) {
      transform: translateY(10px); }
  .pre-inc.nav_open .nav_btn .hamb_txt.open {
    opacity: 0; }
  .pre-inc.nav_open .nav_btn .hamb_txt.close {
    opacity: 1; }
  .pre-inc .site_btn {
    position: relative;
    border-radius: 10px;
    overflow: hidden; }
    .pre-inc .site_btn.normal, .pre-inc .site_btn.inq, .pre-inc .site_btn.login {
      color: #FFF; }
      .pre-inc .site_btn.normal:before, .pre-inc .site_btn.inq:before, .pre-inc .site_btn.login:before {
        background: #00787F; }
      .pre-inc .site_btn.normal:after, .pre-inc .site_btn.inq:after, .pre-inc .site_btn.login:after {
        background: #002B37; }
    .pre-inc .site_btn.rsv {
      color: #FFF; }
      .pre-inc .site_btn.rsv:before {
        background: #c53a52; }
      .pre-inc .site_btn.rsv:after {
        background: #892133; }
    .pre-inc .site_btn.limited {
      color: #FFF; }
      .pre-inc .site_btn.limited:before {
        background: #3c5c8d; }
      .pre-inc .site_btn.limited:after {
        background: #102341; }
    .pre-inc .site_btn.googlemap {
      color: #FFF; }
      .pre-inc .site_btn.googlemap:before {
        background: #00787F; }
      .pre-inc .site_btn.googlemap:after {
        background: #01494d; }
    .pre-inc .site_btn:before, .pre-inc .site_btn:after {
      content: "";
      position: absolute;
      inset: 0; }
    .pre-inc .site_btn:before {
      z-index: -2; }
    .pre-inc .site_btn:after {
      z-index: -1;
      transform: translateY(100%);
      transition: 0.3s transform cubic-bezier(0, 0, 0.2, 1) 0s; }
  .pre-inc:not(.mobile) .site_btn:hover:after {
    transform: translateY(0); }
  .pre-inc .nav_item {
    position: absolute;
    right: 8px;
    left: auto;
    top: 13px;
    clip-path: inset(0 0 100% 0);
    transition: 0.3s clip-path cubic-bezier(0, 0, 0.2, 1) 0s;
    z-index: 9000;
    max-width: 1030px;
    width: calc(100% - 20px);
    display: flex; }
    @media screen and (max-width: 820px) {
      .pre-inc .nav_item {
        left: 8px;
        margin: auto; } }
    .pre-inc .nav_item .nav_item_in {
      display: flex;
      flex-direction: row-reverse;
      justify-content: space-between; }
      @media screen and (max-width: 480px) {
        .pre-inc .nav_item .nav_item_in {
          flex-direction: column;
          height: calc(100vh - 26px);
          overflow-y: auto;
          row-gap: 10px;
          justify-content: flex-start; } }
    .pre-inc .nav_item .navi_box {
      border-radius: 10px; }
    .pre-inc .nav_item nav.gnavi_wrap {
      position: relative;
      width: 49.62%;
      padding: 40px 30px;
      background: rgba(255, 255, 255, 0.8);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 30px 0; }
      @media screen and (max-width: 480px) {
        .pre-inc .nav_item nav.gnavi_wrap {
          width: 100%;
          padding: 40px 30px 30px; } }
      .pre-inc .nav_item nav.gnavi_wrap .gnavi_ttl {
        display: flex;
        align-items: center;
        column-gap: 10px;
        line-height: 1;
        margin-right: 60px; }
        .pre-inc .nav_item nav.gnavi_wrap .gnavi_ttl .gnavi_ttl_in {
          font-size: clamp(12px, 1.25vw, 15px);
          flex-shrink: 0; }
        .pre-inc .nav_item nav.gnavi_wrap .gnavi_ttl:after {
          content: "";
          width: 100%;
          height: 1px;
          background: #000; }
      .pre-inc .nav_item nav.gnavi_wrap ul.gnavi {
        flex-wrap: wrap;
        row-gap: 40px;
        position: relative; }
        @media screen and (max-width: 480px) {
          .pre-inc .nav_item nav.gnavi_wrap ul.gnavi {
            row-gap: 20px; } }
        .pre-inc .nav_item nav.gnavi_wrap ul.gnavi:after {
          content: "";
          position: absolute;
          left: 50%;
          top: 0;
          bottom: 0;
          background: rgba(0, 0, 0, 0.1);
          width: 1px; }
        .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont {
          width: 50%; }
          .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont:nth-child(2n) {
            padding-left: 20px; }
            @media screen and (max-width: 480px) {
              .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont:nth-child(2n) {
                padding-left: 15px; } }
          .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link {
            display: flex;
            flex-direction: column;
            row-gap: 3px;
            font-size: clamp(18px, 2.5vw, 30px);
            transition: 0.3s all ease-in-out 0s; }
            @media screen and (max-width: 480px) {
              .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link {
                font-size: 5vw; } }
            .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link.cr {
              color: #046971; }
            .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link .nav_seg {
              line-height: 1;
              letter-spacing: -0.025em; }
              .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link .nav_seg.en {
                font-weight: 600; }
                .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link .nav_seg.en .small {
                  font-size: 50%; }
                .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link .nav_seg.en .num {
                  transform: translateY(-5px);
                  display: inline-block; }
              .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link .nav_seg.jp {
                font-size: 50%; }
                @media screen and (max-width: 480px) {
                  .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link .nav_seg.jp {
                    font-size: 55%; } }
          .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont.inq {
            width: 50%; }
            @media screen and (max-width: 480px) {
              .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont.inq {
                width: 100%; } }
            .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .nav_cont.inq .nav_link {
              text-decoration: none;
              background: #900;
              color: #FFF; }
        .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .navi_pc {
          display: block; }
          @media screen and (max-width: 768px) {
            .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .navi_pc {
              display: none; } }
        .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .navi_sp {
          display: none; }
          @media screen and (max-width: 768px) {
            .pre-inc .nav_item nav.gnavi_wrap ul.gnavi .navi_sp {
              display: block; } }
      .pre-inc .nav_item nav.gnavi_wrap .link_box .site_btn {
        font-size: clamp(14px, 1.334vw, 16px);
        width: 100%;
        position: relative;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        z-index: 1;
        padding: 19px 0; }
    .pre-inc .nav_item .gnavi_cv_wrap {
      width: 49.62%;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      color: #FFF;
      row-gap: 10px; }
      @media screen and (max-width: 480px) {
        .pre-inc .nav_item .gnavi_cv_wrap {
          width: 100%; } }
      .pre-inc .nav_item .gnavi_cv_wrap .cv_in {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-grow: 1;
        position: relative; }
        .pre-inc .nav_item .gnavi_cv_wrap .cv_in .gnavi_inq_in {
          width: 50%; }
        .pre-inc .nav_item .gnavi_cv_wrap .cv_in .cv_ttl {
          display: flex;
          flex-direction: column;
          align-items: center;
          row-gap: 5px;
          font-size: clamp(10px, 1.167vw, 14px); }
          @media screen and (max-width: 480px) {
            .pre-inc .nav_item .gnavi_cv_wrap .cv_in .cv_ttl {
              font-size: 10px; } }
          .pre-inc .nav_item .gnavi_cv_wrap .cv_in .cv_ttl .cv_ttl_seg {
            line-height: 1; }
            .pre-inc .nav_item .gnavi_cv_wrap .cv_in .cv_ttl .cv_ttl_seg.en {
              font-size: 292%;
              line-height: 1; }
              @media screen and (max-width: 480px) {
                .pre-inc .nav_item .gnavi_cv_wrap .cv_in .cv_ttl .cv_ttl_seg.en {
                  font-size: 250%; } }
        .pre-inc .nav_item .gnavi_cv_wrap .cv_in .cv_read_wrap {
          padding: clamp(15px, 2.5vw, 30px) 0;
          border-left: 1px solid rgba(255, 255, 255, 0.2); }
          @media screen and (max-width: 480px) {
            .pre-inc .nav_item .gnavi_cv_wrap .cv_in .cv_read_wrap {
              padding: 25px 20px; } }
          .pre-inc .nav_item .gnavi_cv_wrap .cv_in .cv_read_wrap .cv_read {
            width: 86.28%;
            margin: 0 auto;
            font-size: clamp(10px, 1.167vw, 14px); }
            @media screen and (max-width: 480px) {
              .pre-inc .nav_item .gnavi_cv_wrap .cv_in .cv_read_wrap .cv_read {
                width: 100%; } }
      .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap {
        background: rgba(18, 18, 18, 0.8);
        padding: clamp(25px, 2.5vw, 30px);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        row-gap: 40px; }
        @media screen and (max-width: 480px) {
          .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap {
            flex-direction: column;
            row-gap: 20px;
            padding: 20px 15px; } }
        .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in {
          column-gap: 10px;
          justify-content: flex-start;
          align-items: flex-start;
          column-gap: 30px; }
          @media screen and (max-width: 480px) {
            .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in {
              flex-direction: column;
              row-gap: 10px; } }
          .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_left {
            flex-shrink: 0;
            font-size: clamp(12px, 1.334vw, 16px);
            line-height: 2.2; }
            @media screen and (max-width: 480px) {
              .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_left {
                width: 100%;
                font-size: 16px;
                line-height: 1.6; } }
            .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_left .underline {
              text-decoration: underline; }
          .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right {
            display: flex;
            flex-direction: column;
            row-gap: 10px; }
            @media screen and (max-width: 480px) {
              .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right {
                width: 100%; } }
            .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right .gnavi_r_link {
              display: flex;
              align-items: center;
              column-gap: 5px; }
              .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right .gnavi_r_link .gnavi_tel_txt {
                font-size: clamp(30px, 3.334vw, 40px); }
                @media screen and (max-width: 480px) {
                  .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right .gnavi_r_link .gnavi_tel_txt {
                    font-size: 30px; } }
            .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right .tel_text {
              font-size: clamp(13px, 1.25vw, 15px);
              display: flex; }
              @media screen and (max-width: 480px) {
                .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right .tel_text {
                  font-size: 11px; } }
              .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right .tel_text .tel_text01 {
                width: 5em;
                flex-shrink: 0; }
                @media screen and (max-width: 820px) {
                  .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right .tel_text .tel_text01 {
                    width: 5em; } }
              .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right .tel_text .tel_text02 {
                width: 100%; }
                .pre-inc .nav_item .gnavi_cv_wrap .gnavi_tel_wrap .gnavi_tel_in .gnavi_right .tel_text .tel_text02 .small {
                  font-size: 10px;
                  display: block; }
  .pre-inc:not(.mobile) .nav_item nav.gnavi_wrap ul.gnavi .nav_cont .nav_link:hover {
    color: #046971; }
  .pre-inc.nav_open .nav_item {
    clip-path: inset(0 0 0 0); }
  .pre-inc .top_bottom {
    clip-path: inset(0% 0% 100% 0%); }
  .pre-inc .concept_movie_area .concept_movie_in {
    max-width: 694px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    row-gap: 30px; }
    @media screen and (max-width: 480px) {
      .pre-inc .concept_movie_area .concept_movie_in {
        row-gap: 20px; } }
    .pre-inc .concept_movie_area .concept_movie_in .movie_ttl {
      align-items: center;
      column-gap: 15px; }
      .pre-inc .concept_movie_area .concept_movie_in .movie_ttl:before, .pre-inc .concept_movie_area .concept_movie_in .movie_ttl:after {
        content: "";
        height: 1px;
        width: 100%;
        background: #00787F; }
      .pre-inc .concept_movie_area .concept_movie_in .movie_ttl span {
        flex-shrink: 0;
        font-size: clamp(20px, 2.667vw, 32px);
        color: #00787F; }
  .pre-inc .loop_text_wrap {
    overflow: hidden; }
    .pre-inc .loop_text_wrap .loop_text {
      justify-content: flex-start; }
      .pre-inc .loop_text_wrap .loop_text .concept_ttl {
        font-size: 165px;
        color: rgba(255, 255, 255, 0.1);
        letter-spacing: normal;
        white-space: nowrap;
        line-height: 0.8;
        padding-right: 50px;
        animation: loop_text 25s linear infinite; }
        @media screen and (max-width: 820px) {
          .pre-inc .loop_text_wrap .loop_text .concept_ttl {
            font-size: 120px; } }
        @media screen and (max-width: 480px) {
          .pre-inc .loop_text_wrap .loop_text .concept_ttl {
            font-size: 80px; } }
        .pre-inc .loop_text_wrap .loop_text .concept_ttl .num {
          font-size: 87%; }
        .pre-inc .loop_text_wrap .loop_text .concept_ttl.alpha5 {
          color: rgba(255, 255, 255, 0.5); }
@keyframes loop_text {
  100% {
    transform: translateX(-100%); } }
  .pre-inc .inner {
    max-width: 1200px;
    margin: 0 auto;
    width: calc(100% - 80px); }
    @media screen and (max-width: 820px) {
      .pre-inc .inner {
        width: calc(100% - 60px); } }
    @media screen and (max-width: 480px) {
      .pre-inc .inner {
        width: calc(100% - 40px); } }
  .pre-inc .flex {
    display: flex;
    justify-content: space-between; }
    .pre-inc .flex.column {
      flex-direction: column; }
  .pre-inc .fix_img img {
    width: 100%; }
  .pre-inc .caption_area {
    padding: 30px 0;
    border-bottom: 1px solid #262626;
    background: #0E0E0F;
    position: relative; }
    .pre-inc .caption_area.limited_cap {
      background: #FFF; }
      @media screen and (max-width: 480px) {
        .pre-inc .caption_area.limited_cap {
          padding: 50px 0; } }
      .pre-inc .caption_area.limited_cap .inner {
        max-width: 730px; }
        .pre-inc .caption_area.limited_cap .inner p {
          color: #000; }
    .pre-inc .caption_area .inner {
      max-width: 1820px; }
      .pre-inc .caption_area .inner p {
        font-size: 12px;
        text-indent: -1em;
        padding-left: 1em;
        color: #FFF; }
        @media screen and (max-width: 480px) {
          .pre-inc .caption_area .inner p {
            font-size: 10px; } }
  .pre-inc .okinawakanade {
    position: relative;
    aspect-ratio: 1; }
    .pre-inc .okinawakanade > figure {
      position: absolute;
      inset: 0; }
    .pre-inc .okinawakanade .circle_anime {
      animation: 200s rotate infinite linear normal both; }
      .pre-inc .okinawakanade .circle_anime.rev {
        animation-name: rotate_rev; }
    .pre-inc .okinawakanade .circle_anime {
      animation: 200s rotate infinite linear normal both; }
@keyframes rotate {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
@keyframes rotate_rev {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(-360deg); } }
  .pre-inc .foot_wrap {
    position: relative;
    width: 100%;
    background: #0E0E0F; }
    .pre-inc .foot_wrap .foot_in {
      max-width: 1556px;
      margin: 0 auto;
      flex-direction: column; }
      .pre-inc .foot_wrap .foot_in .foot_over {
        padding: clamp(120px, 12.5vw, 200px) 0;
        align-items: flex-start; }
        @media screen and (max-width: 820px) {
          .pre-inc .foot_wrap .foot_in .foot_over {
            padding: 100px 0; } }
        @media screen and (max-width: 480px) {
          .pre-inc .foot_wrap .foot_in .foot_over {
            flex-direction: column;
            row-gap: 40px; } }
        .pre-inc .foot_wrap .foot_in .foot_over .foot_logo {
          width: 22.63%;
          margin-top: 7px;
          pointer-events: none; }
          @media screen and (max-width: 820px) {
            .pre-inc .foot_wrap .foot_in .foot_over .foot_logo {
              width: 40%; } }
          @media screen and (max-width: 480px) {
            .pre-inc .foot_wrap .foot_in .foot_over .foot_logo {
              text-align: center;
              width: 80%;
              margin: 0 auto; } }
  .pre-inc .sp_cv_group {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 10px;
    width: calc(100% - 20px);
    margin: 0 auto;
    z-index: 90; }
    @media screen and (max-width: 480px) {
      .pre-inc .sp_cv_group {
        display: flex;
        justify-content: space-between; } }
    .pre-inc .sp_cv_group .sp_cv_link {
      width: 49%;
      display: flex;
      flex-direction: column;
      justify-content: center;
      color: #FFF;
      text-align: center;
      padding: 10px 6px;
      row-gap: 3px;
      box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.4); }
      .pre-inc .sp_cv_group .sp_cv_link .en {
        font-size: 20px; }
      .pre-inc .sp_cv_group .sp_cv_link .jp {
        font-size: 12px;
        line-height: 1; }
  .pre-inc .img_cap {
    position: relative; }
    .pre-inc .img_cap .cap {
      position: absolute;
      bottom: 0;
      right: 0;
      font-size: 10px;
      display: block;
      padding: 3px 5px;
      line-height: 1.5;
      color: #FFF;
      text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.8), 0px 0px 1px rgba(0, 0, 0, 0.8), 0px 0px 2px rgba(0, 0, 0, 0.8), 0px 0px 3px rgba(0, 0, 0, 0.8), 0px 0px 4px rgba(0, 0, 0, 0.8), 0px 0px 5px rgba(0, 0, 0, 0.8);
      text-align: right; }
    .pre-inc .img_cap.no_shadow .cap {
      text-shadow: none; }
    .pre-inc .img_cap.black .cap {
      color: #000;
      text-shadow: 0px 0px 0px rgba(255, 255, 255, 0.8), 0px 0px 1px rgba(255, 255, 255, 0.8), 0px 0px 2px rgba(255, 255, 255, 0.8), 0px 0px 3px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8), 0px 0px 5px rgba(255, 255, 255, 0.8), 0px 0px 6px rgba(255, 255, 255, 0.8), 0px 0px 7px rgba(255, 255, 255, 0.8), 0px 0px 8px rgba(255, 255, 255, 0.8); }
    .pre-inc .img_cap.black.no_shadow .cap {
      text-shadow: none; }
    .pre-inc .img_cap.left .cap {
      right: auto;
      left: 0; }
  .pre-inc .pagetop {
    position: fixed;
    bottom: 20px;
    right: -60px;
    transition: all 0.5s ease-in-out 0s; }
    .pre-inc .pagetop.scrolled {
      right: 20px; }
  .pre-inc .pagetop2 {
    position: fixed;
    bottom: 80px;
    right: -60px;
    transition: all 0.5s ease-in-out 0s; }
    .pre-inc .pagetop2.scrolled {
      right: 20px; }
  .pre-inc .modal_cont {
    display: none; }
  .pre-inc .iziModal {
    background: none !important;
    box-shadow: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100vh !important; }
    .pre-inc .iziModal .iziModal-wrap {
      display: flex;
      align-items: center;
      justify-content: center;
      height: 100% !important; }
  .pre-inc .modal_box {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    width: calc(100% - 40px); }
    .pre-inc .modal_box .movie_wrap {
      aspect-ratio: 16/9;
      position: relative; }
      .pre-inc .modal_box .movie_wrap video {
        position: absolute;
        inset: 0;
        width: 100%; }
  .pre-inc .izimodal_close {
    position: fixed;
    right: 20px;
    bottom: 20px;
    cursor: pointer; }
  .pre-inc .fadeup {
    transition: opacity 0.5s cubic-bezier(0, 0, 0.2, 1) 0s, transform 0.5s cubic-bezier(0, 0, 0.2, 1) 0s;
    opacity: 0;
    transform: translateY(20px);
    will-change: opacity,transform; }
    .pre-inc .fadeup.p-view {
      opacity: 1;
      transform: translateY(0px); }
  .pre-inc .parallax.blur {
    opacity: 0;
    filter: blur(20px);
    transition: all 0.6s ease-in-out 0s;
    transform: translateY(0);
    will-change: opacity,filter,transform; }
    .pre-inc .parallax.blur.p-view {
      opacity: 1;
      filter: blur(0); }
  @media print {
    .pre-inc .header {
      display: none; }
    .pre-inc footer {
      padding: 20px 0; }
      .pre-inc footer .foot_in .foot_over .foot_logo {
        max-width: 250px; }
      .pre-inc footer .foot_in .foot_over .foot_info .foot_info_ttl {
        font-size: 11px; }
      .pre-inc footer .foot_in .foot_over .foot_info .foot_info_in {
        row-gap: 20px; }
        .pre-inc footer .foot_in .foot_over .foot_info .foot_info_in .info_group .info_group_ttl {
          font-size: 10px; }
        .pre-inc footer .foot_in .foot_over .foot_info .foot_info_in .info_group .info_area a {
          margin-bottom: 10px; }
        .pre-inc footer .foot_in .foot_over .foot_info .foot_info_in .info_group .info_area .tel_text {
          font-size: 10px; }
    .pre-inc .button_link_group {
      display: none; } }

/*# sourceMappingURL=common.css.map */
