@charset "UTF-8";
@font-face {
  font-family: LINESeedSans;
  src: local("※"), url(../fonts/LINESeedJP_OTF_Th.woff) format('woff'), url(../fonts/LINESeedJP_OTF_Th.woff2) format('woff2');
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: LINESeedSans;
  src: local("※"), url(../fonts/LINESeedJP_OTF_Rg.woff) format('woff'), url(../fonts/LINESeedJP_OTF_Rg.woff2) format('woff2');
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: LINESeedSans;
  src: local("※"), url(../fonts/LINESeedJP_OTF_Bd.woff) format('woff'), url(../fonts/LINESeedJP_OTF_Bd.woff2) format('woff2');
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: LINESeedSans;
  src: local("※"), url(../fonts/LINESeedJP_OTF_Eb.woff) format('woff'), url(../fonts/LINESeedJP_OTF_Eb.woff2) format('woff2');
  font-weight: 800;
  font-style: normal;
}
html {
  scroll-behavior: smooth;
}
body {
  font-family: LINESeedSans, sans-serif;
  font-style: normal;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 2.05;
  font-size: 19px;
  font-weight: var(--FW_Regular);
  color: var(--Color_Black);
}
@media screen and (min-width: 750px) {
  body {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  body {
    line-height: 2.27;
  }
  body:before {
    content: none;
  }
}
body.fixed {
  overflow: hidden;
}
@media screen and (min-width: 750px) {
  .sp-only,
  .sp_only {
    display: none;
  }
}
@media screen and (max-width: 749px) {
  .pc-only,
  .pc_only {
    display: none;
  }
}
.anker-m60 {
  position: relative;
}
.anker-m60 > span {
  position: absolute;
  top: -60px;
}
@media screen and (min-width: 750px) {
  .anker-m60 > span {
    top: -60px;
  }
}
.anker-m100 {
  position: relative;
}
.anker-m100 > span {
  position: absolute;
  top: -100px;
}
@media screen and (min-width: 750px) {
  .anker-m100 > span {
    top: -100px;
  }
}
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
b,
strong {
  font-weight: var(--FW_SemiBold);
}
img {
  vertical-align: top;
}
a {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  color: var(--Color_Black);
  text-decoration: none;
}
a:hover {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
a.on_zoom {
  text-decoration: none;
}
@media screen and (min-width: 750px) {
  a.on_zoom {
    display: block;
  }
  a.on_zoom:hover {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}
a.normal,
a:not([class]) {
  color: var(--Color_Black);
  -webkit-transition: none;
  transition: none;
}
a.normal:hover,
a:not([class]):hover {
  -webkit-transition: none;
  transition: none;
  text-decoration: underline;
}
table {
  border-collapse: collapse;
  border: 1px solid var(--Color_DarkGray);
}
table tr td {
  border-collapse: collapse;
  border: 1px solid var(--Color_DarkGray);
  padding: 5px 10px;
}
h1 {
  position: relative;
  z-index: 1;
  background-color: var(--Color_Aqua);
  color: #fff;
  font-size: 30px;
  font-weight: var(--FW_Medium);
  text-align: center;
  overflow: hidden;
}
h1:before {
  position: absolute;
  z-index: -1;
  content: attr(data-sub);
  top: 0;
  left: 50%;
  font-size: 80px;
  line-height: 100px;
  white-space: nowrap;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: rgba(255, 255, 255, 0.1);
}
h2 {
  font-size: 38px;
  font-weight: var(--FW_Medium);
  line-height: 1.342;
}
@media screen and (min-width: 750px) {
  h2 {
    text-align: center;
  }
}
h2 sup {
  font-size: 0.6em;
}
h3 {
  font-size: 30px;
  font-weight: var(--FW_Medium);
  line-height: 1.367;
}
dl dt {
  font-size: 19px;
}
@media screen and (min-width: 750px) {
  dl dt {
    font-size: 18px;
  }
}
dl dd {
  font-size: 19px;
}
@media screen and (min-width: 750px) {
  dl dd {
    font-size: 18px;
  }
}
dl.faq dt {
  background-image: url(../img/icon/q.svg);
  background-repeat: no-repeat;
  background-position: left 10px center;
  padding: 10px 20px  10px 80px;
  background-size: min(12vw, 60px);
  padding-left: min(80px, 19vw);
  line-height: 1.625;
  min-height: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 12px;
  background-color: var(--Color_White);
  margin-top: 10px;
}
dl.faq dd {
  background-image: url(../img/icon/a.svg);
  background-repeat: no-repeat;
  background-position: left top;
  background-position: left 10px top 10px;
  padding: 20px 0  0 80px;
  background-size: min(12vw, 60px);
  padding-left: min(80px, 19vw);
  line-height: 1.625;
}
dl.info {
  margin-top: 4px;
  margin-bottom: 8px;
  padding: 20px 20px 25px 20px;
}
dl.info > div {
  padding-top: 10px;
  padding-bottom: 10px;
  background-image: url(../img/common/dashedline_black.png);
  background-repeat: repeat-x;
  background-position: bottom;
}
dl.info > div:last-of-type {
  background: none;
}
@media screen and (min-width: 650px) {
  dl.info > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
dl.info > div dt {
  font-size: 19px;
  line-height: 1.5;
}
@media screen and (min-width: 650px) {
  dl.info > div dt {
    font-size: 18px;
    width: 13em;
  }
}
dl.info > div dd {
  font-size: 19px;
  line-height: 1.5;
}
@media screen and (min-width: 650px) {
  dl.info > div dd {
    font-size: 18px;
    padding-left: 0;
  }
}
ul {
  list-style: none;
  padding-left: 1.2em;
}
ul li {
  font-size: 19px;
  line-height: 1.6;
  margin-bottom: 0.7em;
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 750px) {
  ul li {
    font-size: 18px;
  }
}
ul li:before {
  position: absolute;
  top: 0.65em;
  left: -0.95em;
  width: 0px;
  height: 0px;
  border: 3px solid transparent;
  border-left: 6px solid var(--Color_LightAqua);
  content: "";
}
ul:not([class]) li::before,
ul.disc li::before {
  top: 0.64em;
  left: -0.95em;
  width: 0px;
  height: 0px;
  border: 3px solid var(--Color_Black);
  border-radius: 3px;
}
ul.circle li::before {
  top: calc(0.65em - 1px);
  left: -0.95em;
  width: 5px;
  height: 5px;
  border: 1px solid var(--Color_Black);
  border-radius: 10px;
}
ul.dot li {
  position: relative;
  font-size: 19px;
  line-height: 1.66;
  margin-bottom: 0;
}
@media screen and (min-width: 750px) {
  ul.dot li {
    font-size: 18px;
  }
}
ul.dot li::before {
  position: absolute;
  content: "・";
  top: 0;
  left: -0.8em;
  border: none;
}
ul.note {
  padding-left: 1em;
}
ul.note li {
  position: relative;
  font-size: 19px;
  line-height: 1.66;
  margin-bottom: 0;
}
@media screen and (min-width: 750px) {
  ul.note li {
    font-size: 18px;
  }
}
ul.note li::before {
  position: absolute;
  content: "※";
  top: 0;
  left: -1em;
  border: none;
}
ul.triangle li {
  position: relative;
  line-height: 1.45;
  margin-bottom: 0.9em;
}
ul.triangle li::before {
  position: absolute;
  background-image: url(../img/icon/triangle_black.svg);
  background-repeat: no-repeat;
  width: 7px;
  height: 6px;
  content: "";
  top: calc((1.45em / 2) - 3px);
  left: -0.8em;
  border: none;
}
ul.star li {
  line-height: 1.45;
  margin-bottom: 0.3em;
}
ul.star li::before {
  content: "★";
  top: 0;
  left: -1.1em;
  border: none;
}
ul.icon_number {
  padding-left: 0;
}
@media screen and (min-width: 750px) {
  ul.icon_number {
    padding-left: 122px;
  }
}
ul.icon_number li {
  position: relative;
  line-height: 1.45;
  margin-bottom: 0;
  font-size: 28px;
  line-height: 1.285;
  font-weight: var(--FW_SemiBold);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 95px;
}
@media screen and (min-width: 750px) {
  ul.icon_number li {
    min-height: 75px;
    line-height: 1.143;
    padding-top: 10px;
  }
}
ul.icon_number li::before {
  position: absolute;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-image: url(../img/icon/numberbg.svg);
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 76px;
  border: none;
  content: attr(data-number);
  top: 0;
  left: 0;
  font-size: 35px;
  font-weight: var(--FW_Bold);
  line-height: 73px;
  white-space: nowrap;
  color: #231815;
  padding: 6px 6px;
  text-align: center;
}
@media screen and (min-width: 750px) {
  ul.icon_number li::before {
    background-position: left center;
    width: 94px;
    left: -122px;
  }
}
ul.icon_number li + li {
  margin-top: 40px;
}
@media screen and (min-width: 750px) {
  ul.icon_number li + li {
    margin-top: 5px;
  }
}
ol {
  list-style: none;
  padding-left: 1.5em;
  line-height: 1.625;
  counter-reset: o_number;
}
ol > li {
  margin-left: 0;
  padding-left: 0;
  margin-bottom: 0.5em;
  position: relative;
  z-index: 0;
}
ol > li:before {
  counter-increment: o_number;
  content: counter(o_number) '.';
  position: absolute;
  left: -2.3em;
  width: 2em;
  text-align: right;
}
p {
  font-weight: var(--FW_Regular);
  position: relative;
  z-index: 0;
}
p.note {
  margin-left: 1em;
}
p.note:before {
  content: "※";
  margin-left: -1em;
}
p.toppage_comment {
  font-size: 20px;
  line-height: 1.75;
  color: var(--Color_White);
}
@media screen and (min-width: 750px) {
  p.toppage_comment {
    font-size: 19px;
  }
}
@media screen and (min-width: 750px) {
  p.toppage_comment {
    text-align: center;
  }
}
.spc_5 {
  height: 5px;
}
.spc_10 {
  height: 10px;
}
.spc_15 {
  height: 15px;
}
.spc_20 {
  height: 20px;
}
.spc_25 {
  height: 25px;
}
.spc_30 {
  height: 30px;
}
.spc_35 {
  height: 35px;
}
.spc_40 {
  height: 40px;
}
.spc_45 {
  height: 45px;
}
.spc_50 {
  height: 50px;
}
.spc_60 {
  height: 60px;
}
.spc_70 {
  height: 70px;
}
.spc_80 {
  height: 80px;
}
.spc_90 {
  height: 90px;
}
.spc_100 {
  height: 100px;
}
.spc_105 {
  height: 105px;
}
.spc_110 {
  height: 110px;
}
.spc_120 {
  height: 120px;
}
.spc_145 {
  height: 145px;
}
.spc_210 {
  height: 210px;
}
.spc_675 {
  height: 675px;
}
.spc_419 {
  height: 419px;
}
@media screen and (min-width: 750px) {
  .pc-spc_0 {
    height: 0;
  }
  .pc-spc_5 {
    height: 5px;
  }
  .pc-spc_10 {
    height: 10px;
  }
  .pc-spc_15 {
    height: 15px;
  }
  .pc-spc_20 {
    height: 20px;
  }
  .pc-spc_25 {
    height: 25px;
  }
  .pc-spc_30 {
    height: 30px;
  }
  .pc-spc_35 {
    height: 35px;
  }
  .pc-spc_40 {
    height: 40px;
  }
  .pc-spc_50 {
    height: 50px;
  }
  .pc-spc_60 {
    height: 60px;
  }
  .pc-spc_70 {
    height: 70px;
  }
  .pc-spc_80 {
    height: 80px;
  }
  .pc-spc_80 {
    height: 80px;
  }
  .pc-spc_90 {
    height: 90px;
  }
  .pc-spc_95 {
    height: 95px;
  }
  .pc-spc_100 {
    height: 100px;
  }
  .pc-spc_110 {
    height: 110px;
  }
  .pc-spc_145 {
    height: 145px;
  }
  .pc-spc_150 {
    height: 150px;
  }
  .pc-spc_210 {
    height: 210px;
  }
  .pc-spc_675 {
    height: 675px;
  }
  .pc-spc_419 {
    height: 419px;
  }
}
@media screen and (max-width: 999px) and (min-width: 750px) {
  .tb-spc_0 {
    height: 0;
  }
  .tb-spc_20 {
    height: 20px;
  }
}
.inline-block {
  display: inline-block;
}
.font-thin {
  font-weight: 100;
}
.font-extralight {
  font-weight: 200;
}
.font-light {
  font-weight: 300;
}
.font-normal {
  font-weight: 400;
}
.font-medium {
  font-weight: 500;
}
.font-semibold {
  font-weight: 600;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-justify {
  text-align: justify;
}
.text-start {
  text-align: start;
}
.text-end {
  text-align: end;
}
@media screen and (min-width: 750px) {
  .pc-text-left {
    text-align: left;
  }
  .pc-text-center {
    text-align: center;
  }
  .pc-text-right {
    text-align: right;
  }
  .pc-text-justify {
    text-align: justify;
  }
  .pc-text-start {
    text-align: start;
  }
  .pc-text-end {
    text-align: end;
  }
}
.text-fs14 {
  font-size: 14px;
  line-height: 1.67;
}
.text-fs15 {
  font-size: 15px;
  line-height: 1.67;
}
.text-fs16 {
  font-size: 16px !important;
  line-height: 1.67;
}
.text-fs18 {
  font-size: 18px;
  line-height: 1.67;
}
.text-fs19 {
  font-size: 19px;
  line-height: 1.52;
}
.text-fs20 {
  font-size: 20px;
  line-height: 1.52;
}
.text-fs21 {
  font-size: 21px;
  line-height: 1.52;
}
.text-fs23 {
  font-size: 23px;
  line-height: 1.52;
}
.text-fs24 {
  font-size: 24px;
  line-height: 1.41;
}
.text-fs26 {
  font-size: 26px;
  line-height: 1.52;
}
.text-fs28 {
  font-size: 28px;
  line-height: 1.4;
}
.text-fs30 {
  font-size: 30px !important;
  line-height: 1.6;
}
.text-fs53 {
  font-size: 53px;
  line-height: 1;
}
@media screen and (min-width: 750px) {
  .pc-text-fs14 {
    font-size: 14px;
    line-height: 1.67;
  }
  .pc-text-fs15 {
    font-size: 15px;
    line-height: 1.67;
  }
  .pc-text-fs16 {
    font-size: 16px;
    line-height: 1.67;
  }
  .pc-text-fs18 {
    font-size: 18px;
    line-height: 1.67;
  }
  .pc-text-fs19 {
    font-size: 19px;
    line-height: 1.52;
  }
  .pc-text-fs20 {
    font-size: 20px;
    line-height: 1.52;
  }
  .pc-text-fs21 {
    font-size: 21px;
    line-height: 1.52;
  }
  .pc-text-fs23 {
    font-size: 23px;
    line-height: 1.52;
  }
  .pc-text-fs24 {
    font-size: 24px;
    line-height: 1.41;
  }
  .pc-text-fs26 {
    font-size: 26px;
    line-height: 1.52;
  }
  .pc-text-fs28 {
    font-size: 28px;
    line-height: 1.4;
  }
  .pc-text-fs30 {
    font-size: 30px !important;
    line-height: 1.6;
  }
  .pc-text-fs53 {
    font-size: 53px;
    line-height: 1;
  }
}
.leading-none {
  line-height: 1;
}
.leading-tight {
  line-height: 1.25;
}
.leading-snug {
  line-height: 1.375;
}
.leading-normal {
  line-height: 1.5;
}
.leading-relaxed {
  line-height: 1.625;
}
.leading-loose {
  line-height: 2;
}
.leading-7 {
  line-height: 28px;
}
.leading-8 {
  line-height: 31px;
}
@media screen and (min-width: 750px) {
  .pc-leading-none {
    line-height: 1;
  }
  .pc-leading-tight {
    line-height: 1.25;
  }
  .pc-leading-snug {
    line-height: 1.375;
  }
  .pc-leading-normal {
    line-height: 1.5;
  }
  .pc-leading-relaxed {
    line-height: 1.625;
  }
  .pc-leading-loose {
    line-height: 2;
  }
  .pc-leading-7 {
    line-height: 28px;
  }
  .pc-leading-8 {
    line-height: 31px;
  }
}
.text-ridgeblack {
  color: var(--Color_RidgeBlack);
}
.text-black {
  color: var(--Color_Black);
}
.text-white {
  color: var(--Color_White);
}
.text-yellow {
  color: var(--Color_Yellow);
}
.text-orange {
  color: var(--Color_Orange);
}
.text-red {
  color: var(--Color_Red);
}
@media screen and (min-width: 750px) {
  .pc-text-ridgeblack {
    color: var(--Color_RidgeBlack);
  }
  .pc-text-black {
    color: var(--Color_Black);
  }
  .pc-text-white {
    color: var(--Color_White);
  }
  .pc-text-yellow {
    color: var(--Color_Yellow);
  }
  .pc-text-orange {
    color: var(--Color_Orange);
  }
  .pc-text-red {
    color: var(--Color_Red);
  }
}
.maker-yellow {
  position: relative;
  z-index: -1;
}
.maker-yellow:before {
  position: absolute;
  z-index: -1;
  content: "";
  top: 50%;
  left: -2px;
  right: 2px;
  width: calc(100% + 4px);
  height: 1.2em;
  background-color: var(--Color_Yellow);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.bg-black {
  background-color: var(--Color_Black);
}
.bg-white {
  background-color: var(--Color_White);
}
@media screen and (min-width: 750px) {
  .pc-bg-black {
    background-color: var(--Color_Black);
  }
  .pc-bg-white {
    background-color: var(--Color_White);
  }
}
.dot-underline {
  border-bottom: 1px dotted;
  padding-bottom: 0.5em;
}
.rounded-12 {
  border-radius: 12px;
}
.rounded-full {
  border-radius: 9999px;
}
.overflow-hidden {
  overflow: hidden;
}
.block-center {
  margin-left: auto;
  margin-right: auto;
}
.w270 {
  width: min(270px, 100%);
}
@media screen and (min-width: 750px) {
  .pc-w270 {
    width: min(270px, 100%);
  }
}
.p-15 {
  padding: 15px;
}
.p-16 {
  padding: 16px;
}
.p-17 {
  padding: 17px;
}
.p-20 {
  padding: 20px;
}
.p-40 {
  padding: 40px;
}
.pt-40 {
  padding-top: 40px;
}
.pb-40 {
  padding-bottom: 40px;
}
.pl-0 {
  padding-left: 0;
}
.pr-0 {
  padding-right: 0;
}
.pt-10 {
  padding-top: 10px;
}
.pb-10 {
  padding-bottom: 10px;
}
@media screen and (min-width: 750px) {
  .pc-p-40 {
    padding: 40px;
  }
  .pc-pl-40 {
    padding-left: 40px;
  }
  .pc-pr-40 {
    padding-right: 40px;
  }
}
.mt-10 {
  margin-top: 10px;
}
.mt-20 {
  margin-top: 20px;
}
@media screen and (min-width: 750px) {
  .pc_mr-40 {
    margin-right: 40px;
  }
}
.overflow-hidden {
  overflow: hidden;
}
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.flex.flex-wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.flex.gap-0 {
  gap: 0px;
}
.flex.gap-10 {
  gap: 10px;
}
.flex.gap-25 {
  gap: 25px;
}
.flex.gap-20 {
  gap: 20px;
}
.flex.gap-35 {
  gap: 35px;
}
.flex.gap-40 {
  gap: 40px;
}
.flex.gap-45 {
  gap: 45px;
}
.flex.gap-y-0 {
  row-gap: 0;
}
.flex.gap-y-5px {
  row-gap: 5px;
}
.flex.gap-y-10px {
  row-gap: 10px;
}
.flex.gap-y-15px {
  row-gap: 15px;
}
.flex.gap-y-20px {
  row-gap: 20px;
}
.flex.gap-y-25px {
  row-gap: 25px;
}
.flex.gap-y-30px {
  row-gap: 30px;
}
.flex.justify-normal {
  -webkit-box-pack: normal;
      -ms-flex-pack: normal;
          justify-content: normal;
}
.flex.justify-start {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.flex.justify-end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.flex.justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.flex.justify-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.flex.justify-around {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}
.flex.items-start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.flex.items-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.flex.items-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.flex.flex-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
.flex.flex-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.flex.flex-col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.flex.flex-col-reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
.flex .flex-1 {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0%;
          flex: 1 1 0%;
}
.flex .flex-auto {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.flex .flex-initial {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
}
.flex .flex-none {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.flex .inner_full {
  width: 100%;
}
.flex .inner_w308 {
  width: min(308px, 100%);
}
@media screen and (min-width: 750px) {
  .flex.pc-gap-0 {
    gap: 0px;
  }
  .flex.pc-gap-10 {
    gap: 10px;
  }
  .flex.pc-gap-25 {
    gap: 25px;
  }
  .flex.pc-gap-20 {
    gap: 20px;
  }
  .flex.pc-gap-35 {
    gap: 35px;
  }
  .flex.pc-gap-40 {
    gap: 40px;
  }
  .flex.pc-gap-45 {
    gap: 45px;
  }
  .flex.pc-gap-y-0 {
    row-gap: 0;
  }
  .flex.pc-gap-y-5px {
    row-gap: 5px;
  }
  .flex.pc-gap-y-10px {
    row-gap: 10px;
  }
  .flex.pc-gap-y-15px {
    row-gap: 15px;
  }
  .flex.pc-gap-y-20px {
    row-gap: 20px;
  }
  .flex.pc-gap-y-25px {
    row-gap: 25px;
  }
  .flex.pc-gap-y-30px {
    row-gap: 30px;
  }
  .flex.pc-justify-normal {
    -webkit-box-pack: normal;
        -ms-flex-pack: normal;
            justify-content: normal;
  }
  .flex.pc-justify-start {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .flex.pc-justify-end {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .flex.pc-justify-center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .flex.pc-justify-between {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .flex.pc-justify-around {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  .flex.pc-flex-col-inherit {
    -webkit-box-orient: inherit;
    -webkit-box-direction: inherit;
        -ms-flex-direction: inherit;
            flex-direction: inherit;
  }
  .flex.pc-flex-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .flex.pc-flex-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .flex.pc-flex-col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .flex.pc-flex-col-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .flex .pc-flex-1 {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  .flex .pc-flex-auto {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
  .flex .pc-flex-initial {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  .flex .pc-flex-none {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
  .flex .pc-inner_full {
    width: 100%;
  }
  .flex .pc-inner_w308 {
    width: min(308px, 100%);
  }
}
.img.aspect-square {
  aspect-ratio: 1;
}
.img.aspect-video {
  aspect-ratio: 1.77777778;
}
.img.aspect-portrait {
  aspect-ratio: 1.33333333;
}
.img.aspect-photo {
  aspect-ratio: 1.5;
}
.img.aspect-portrait-v {
  aspect-ratio: 0.75;
}
@media screen and (min-width: 750px) {
  .img.pc-aspect-square {
    aspect-ratio: 1;
  }
  .img.pc-aspect-video {
    aspect-ratio: 1.77777778;
  }
  .img.pc-aspect-portrait {
    aspect-ratio: 1.33333333;
  }
  .img.pc-aspect-photo {
    aspect-ratio: 1.5;
  }
  .img.pc-aspect-portrait-v {
    aspect-ratio: 0.75;
  }
}
.img.v_wrap {
  width: 75%;
  margin-left: auto;
  margin-right: auto;
}
.img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.img.img-70p > img {
  width: 70%;
}
.img.img-80p > img {
  width: 80%;
}
.img.img-57p > img {
  width: 57%;
}
.img.max-w-full > img,
.img.img-full > img,
.img.img-max > img {
  width: 100%;
  max-width: 100%;
}
.img.img-mw100 > img {
  width: inherit;
  max-width: 100%;
}
.img.img-100p > img {
  width: 100%;
  max-width: inherit;
}
@media screen and (min-width: 750px) {
  .img.pc-h183 > img {
    width: inherit;
    height: 183px;
  }
  .img.pc-max-w-full > img,
  .img.pc-img-full > img,
  .img.pc-img-max > img {
    width: inherit;
    max-width: 100%;
  }
  .img.pc-img-70p > img {
    width: 70%;
  }
  .img.pc-img-57p > img {
    width: 57%;
  }
}
.index_colm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 10px;
}
@media screen and (min-width: 750px) {
  .index_colm {
    height: 100%;
    margin-left: 25px;
    margin-right: 25px;
  }
}
.style_colm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 20px;
}
@media screen and (min-width: 750px) {
  .style_colm {
    height: 100%;
  }
}
.inquiry_colm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 25px 40px;
  margin-bottom: 15px;
}
@media screen and (min-width: 950px) {
  .inquiry_colm {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-bottom: 0;
  }
}
.inquiry_colm > .inner {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0%;
          flex: 1 1 0%;
}
@media screen and (min-width: 950px) {
  .inquiry_colm > .inner {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
}
.max-w-full {
  width: inherit;
  max-width: 100%;
}
.max-w-full > img {
  width: inherit;
  max-width: 100%;
}
.shadow_wrap {
  position: relative;
}
.shadow_wrap > .shadow {
  position: absolute;
  -webkit-filter: drop-shadow(0 0 8px var(--Color_RidgeBlack));
          filter: drop-shadow(0 0 8px var(--Color_RidgeBlack));
  mix-blend-mode: multiply;
}
a.btn-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: min(365px, 100%);
  height: 87px;
  font-size: 20px;
  line-height: 1.44;
  background-image: url(../img/icon/binoculars.svg);
  background-position: center left 28px;
  background-repeat: no-repeat;
  background-color: var(--Color_Yellow2);
  border: 1px solid var(--Color_Yellow);
  border-radius: 41px;
  padding-left: 103px;
  padding-right: 41px;
}
a.btn-link:hover {
  border: 1px solid var(--Color_SkyBlue);
  background-color: var(--Color_SkyBlue);
  color: var(--Color_White);
}
a.btn-link2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: min(300px, 100%);
  height: 72px;
  font-size: 18px;
  line-height: 1.44;
  background-image: url(../img/icon/link_detail2.svg);
  background-position: center left 22px;
  background-repeat: no-repeat;
  background-color: var(--Color_Yellow2);
  border: 1px solid var(--Color_Yellow);
  border-radius: 41px;
  padding-left: 76px;
  padding-right: 35px;
}
a.btn-link2:hover {
  background-image: url(../img/icon/link_detail3.svg);
  border: 1px solid var(--Color_SkyBlue);
  background-color: var(--Color_SkyBlue);
  color: var(--Color_White);
}
a.btn-mountain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  width: min(365px, 100%);
  height: 78px;
  font-size: 20px;
  text-align: right;
  line-height: 1.44;
  background-image: url(../img/icon/cloud_mountain.svg);
  background-position: center left 28px;
  background-repeat: no-repeat;
  background-color: var(--Color_Yellow2);
  border: 1px solid var(--Color_Yellow);
  border-radius: 41px;
  padding-left: 103px;
  padding-right: 62px;
}
a.btn-mountain:hover {
  border: 1px solid var(--Color_SkyBlue);
  background-color: var(--Color_SkyBlue);
  color: var(--Color_White);
}
a.btn-binoculars {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  width: min(365px, 100%);
  height: 78px;
  font-size: 20px;
  line-height: 1.44;
  background-image: url(../img/icon/binoculars.svg);
  background-position: center left 28px;
  background-repeat: no-repeat;
  background-color: var(--Color_Yellow2);
  border: 1px solid var(--Color_Yellow);
  border-radius: 41px;
  padding-left: 103px;
  padding-right: 62px;
}
a.btn-binoculars:hover {
  border: 1px solid var(--Color_SkyBlue);
  background-color: var(--Color_SkyBlue);
  color: var(--Color_White);
}
a.btn-entry_activity {
  position: relative;
  margin-left: 0.7em;
}
a.btn-entry_activity:before {
  content: "";
  position: absolute;
  background-image: url(../img/icon/arrow_r_white.svg);
  background-position: center;
  background-repeat: no-repeat;
  height: 7px;
  width: 7px;
  top: calc(0.5em - 3.5px);
  left: -0.7em;
}
a.btn-modify_activity {
  position: relative;
  margin-left: 0.7em;
}
a.btn-modify_activity:before {
  content: "";
  position: absolute;
  background-image: url(../img/icon/arrow_r_white.svg);
  background-position: center;
  background-repeat: no-repeat;
  height: 7px;
  width: 7px;
  top: calc(0.5em - 3.5px);
  left: -0.7em;
}
a.btn-reservation_activity {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--Color_SkyBlue);
  color: var(--Color_White);
  font-size: 18px;
  line-height: 1.44;
  border-radius: 12px;
  width: min(308px, 100%);
  height: 52px;
}
@media screen and (min-width: 750px) {
  a.btn-reservation_activity {
    font-size: 17px;
  }
}
a.btn-reservation_activity span {
  text-align: center;
}
a.btn-reservation_activity:hover {
  background-color: var(--Color_RidgeBlack);
}
a.btn-contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--Color_LightBlack);
  color: var(--Color_White);
  font-size: 18px;
  line-height: 1.44;
  border-radius: 12px;
  width: min(308px, 100%);
  height: 52px;
}
@media screen and (min-width: 750px) {
  a.btn-contact {
    font-size: 17px;
  }
}
a.btn-contact:hover {
  background-color: var(--Color_RidgeBlack);
  color: var(--Color_Yellow);
}
a.link-flag_yellow {
  position: relative;
  z-index: 1;
  width: 307px;
  height: 293px;
  display: block;
  line-height: 1.4;
  padding: 80px 60px;
}
a.link-flag_yellow:before {
  position: absolute;
  z-index: -1;
  content: "";
  top: 0;
  left: 0;
  background-image: url(../img/common/flag_yellow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 307px;
  height: 293px;
}
@media screen and (min-width: 855px) {
  a.link-flag_yellow {
    padding: 72px 55px;
    width: 279px;
    height: 267px;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
  a.link-flag_yellow:before {
    width: 279px;
    height: 267px;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
}
a.link-flag_yellow > span.sub {
  font-size: 19px;
}
@media screen and (min-width: 750px) {
  a.link-flag_yellow > span.sub {
    font-size: 17px;
  }
}
a.link-flag_yellow > span.name {
  font-size: 24px;
  font-weight: var(--FW_SemiBold);
}
a.link-flag_yellow:hover > span.name {
  color: var(--Color_DarkGreen);
}
@media screen and (min-width: 855px) {
  a.link-flag_yellow:hover {
    padding: 65px 42px;
  }
  a.link-flag_yellow:hover:before {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
    top: -7px;
    left: -12px;
  }
}
a.link-flag_white {
  position: relative;
  z-index: 1;
  width: 307px;
  height: 293px;
  display: block;
  line-height: 1.4;
  padding: 80px 60px;
}
a.link-flag_white:before {
  position: absolute;
  z-index: -1;
  content: "";
  top: 0;
  left: 0;
  background-image: url(../img/common/flag_white.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 307px;
  height: 293px;
}
@media screen and (min-width: 855px) {
  a.link-flag_white {
    padding: 72px 55px;
    width: 279px;
    height: 267px;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
  a.link-flag_white:before {
    width: 279px;
    height: 267px;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
}
a.link-flag_white > span.sub {
  font-size: 19px;
}
@media screen and (min-width: 750px) {
  a.link-flag_white > span.sub {
    font-size: 17px;
  }
}
a.link-flag_white > span.name {
  font-size: 24px;
  font-weight: var(--FW_SemiBold);
}
a.link-flag_white:hover > span.name {
  color: var(--Color_DarkGreen);
}
@media screen and (min-width: 855px) {
  a.link-flag_white:hover {
    padding: 65px 42px;
  }
  a.link-flag_white:hover:before {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
    top: -7px;
    left: -12px;
  }
}
a.link-carabiner {
  background-image: url(../img/common/carabiner_sp.svg);
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 132px;
  margin-left: -1px;
  line-height: 1.217;
  font-size: 23px;
  font-weight: var(--FW_SemiBold);
  color: var(--Color_White);
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-text-stroke: 6px transparent;
  text-stroke: 6px transparent;
  paint-order: stroke;
  position: relative;
}
@media screen and (min-width: 750px) {
  a.link-carabiner {
    width: 350px;
    background-image: url(../img/common/carabiner_sp.svg);
  }
}
a.link-carabiner:hover {
  background-image: url(../img/common/carabiner_green_sp.svg);
  -webkit-text-stroke: 6px var(--Color_DarkSkyBlue);
  text-stroke: 6px var(--Color_DarkSkyBlue);
  paint-order: stroke;
}
@media screen and (min-width: 750px) {
  a.link-carabiner:hover {
    background-image: url(../img/common/carabiner_green_sp.svg);
    -webkit-animation: sway2 0.3s infinite;
            animation: sway2 0.3s infinite;
  }
}
@-webkit-keyframes sway1 {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(1px, 0px) rotateZ(0.5deg);
            transform: translate(1px, 0px) rotateZ(0.5deg);
  }
  75% {
    -webkit-transform: translate(-1px, 0px) rotateZ(-0.5deg);
            transform: translate(-1px, 0px) rotateZ(-0.5deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}
@keyframes sway1 {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(1px, 0px) rotateZ(0.5deg);
            transform: translate(1px, 0px) rotateZ(0.5deg);
  }
  75% {
    -webkit-transform: translate(-1px, 0px) rotateZ(-0.5deg);
            transform: translate(-1px, 0px) rotateZ(-0.5deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}
@-webkit-keyframes sway2 {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(1px, 0px) rotateZ(0deg);
            transform: translate(1px, 0px) rotateZ(0deg);
  }
  75% {
    -webkit-transform: translate(-1px, 0px) rotateZ(0deg);
            transform: translate(-1px, 0px) rotateZ(0deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}
@keyframes sway2 {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(1px, 0px) rotateZ(0deg);
            transform: translate(1px, 0px) rotateZ(0deg);
  }
  75% {
    -webkit-transform: translate(-1px, 0px) rotateZ(0deg);
            transform: translate(-1px, 0px) rotateZ(0deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}
@-webkit-keyframes sway3 {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(-1px, 0px) rotateZ(0deg);
            transform: translate(-1px, 0px) rotateZ(0deg);
  }
  75% {
    -webkit-transform: translate(1px, 0px) rotateZ(0deg);
            transform: translate(1px, 0px) rotateZ(0deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}
@keyframes sway3 {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(-1px, 0px) rotateZ(0deg);
            transform: translate(-1px, 0px) rotateZ(0deg);
  }
  75% {
    -webkit-transform: translate(1px, 0px) rotateZ(0deg);
            transform: translate(1px, 0px) rotateZ(0deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}
a.link-panel_pin {
  position: relative;
  background-color: var(--Color_White);
  border-radius: 12px;
  width: min(305px, 100%);
  height: 205px;
  display: block;
  margin-top: 26px;
  line-height: 1.2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
a.link-panel_pin:before {
  content: "";
  position: absolute;
  top: -25px;
  background-image: url(../img/icon/pin.svg);
  width: 100%;
  height: 52px;
  background-position: center top;
  background-repeat: no-repeat;
}
a.link-panel_pin figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
}
a.link-panel_pin figure > div {
  height: 90px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
a.link-panel_pin figure figcaption {
  text-align: center;
}
a.link-panel_pin span.sub {
  font-size: 20.5px;
}
a.link-panel_pin span.name {
  font-size: 31.3px;
}
@media screen and (min-width: 750px) {
  a.link-panel_pin span.sub {
    font-size: 19px;
  }
  a.link-panel_pin span.name {
    font-size: 29px;
  }
}
a.link-panel_pin:hover {
  background-color: var(--Color_SkyBlue);
}
a.link-panel_calendar {
  position: relative;
  background-image: url(../img/common/bg_calendar.svg);
  background-position: center;
  background-repeat: no-repeat;
  width: 257px;
  height: 178px;
  font-size: 27px;
  font-weight: var(--FW_SemiBold);
  line-height: 1.259;
  color: var(--Color_Black);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 70px 10px 10px 10px;
  -webkit-text-stroke: 4px var(--Color_White);
  text-stroke: 4px var(--Color_White);
  paint-order: stroke;
}
a.link-panel_calendar:hover {
  background-image: url(../img/common/bg_calendar_green.svg);
  color: var(--Color_White);
  -webkit-text-stroke: 6px #0071b7;
  text-stroke: 6px #0071b7;
}
a.link-gray {
  background-color: var(--Color_LightGray);
  border: 1px solid var(--Color_DarkGray);
  border-radius: 31px;
  min-height: 75px;
  font-size: 24px;
  line-height: 1.25;
  overflow: hidden;
  padding: 24px 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
a.link_c_arrow {
  width: 100%;
  background-color: var(--Color_White);
  background-image: url(../img/icon/link_c_arrow.svg);
  background-repeat: no-repeat;
  background-position: left 20px top calc(17px + 1.29em / 2 - 13px);
  border: 1px solid var(--Color_White);
  color: var(--Color_Black);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0px;
  min-height: 55px;
  font-size: 17px;
  line-height: 1.29;
  padding: 17px 25px 17px 62px;
}
@media screen and (min-width: 750px) {
  a.link_c_arrow {
    font-size: 16px;
    background-position: left 20px top calc(17px + 1.29em / 2 - 13px);
  }
}
a.link_c_arrow:hover {
  background-image: url(../img/icon/link_c_arrow2.svg);
  border: 1px solid var(--Color_Gray3);
}
a.download[href$=".pdf"],
a.download.pdf {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--Color_Red69);
  min-height: 100px;
  border: 1px solid var(--Color_Red);
  border-radius: 10px;
  color: var(--Color_White);
  font-size: 22px;
  line-height: 1.45;
  padding: 70px 30px 15px 30px;
}
@media screen and (min-width: 750px) {
  a.download[href$=".pdf"],
  a.download.pdf {
    padding: 10px 15px 10px 137px;
  }
}
a.download[href$=".pdf"]:hover,
a.download.pdf:hover {
  background-color: var(--Color_Red);
}
a.download[href$=".pdf"]:before,
a.download.pdf:before {
  position: absolute;
  background-color: var(--Color_White);
  width: 78px;
  height: 42px;
  color: var(--Color_Red);
  content: "PDF";
  font-size: 22px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 22px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 750px) {
  a.download[href$=".pdf"]:before,
  a.download.pdf:before {
    left: 37px;
    top: inherit;
    -webkit-transform: inherit;
            transform: inherit;
  }
}
.area {
  border: 1px solid var(--Color_DarkGreen);
  border-radius: 18px;
  color: var(--Color_DarkGreen);
  font-size: 18px;
  width: 184px;
  height: 37px;
  margin-left: 0;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 750px) {
  .area {
    font-size: 17px;
  }
}
.distance {
  background-color: var(--Color_RedOrange);
  border: 1px solid var(--Color_RedOrange);
  border-radius: 18px;
  color: var(--Color_White);
  font-size: 18px;
  width: 184px;
  height: 38px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 750px) {
  .distance {
    font-size: 17px;
  }
}
.menu_form a.btn-reservation_activity {
  background-color: var(--Color_Black);
  color: var(--Color_White);
  font-weight: var(--FW_SemiBold);
  font-size: 19px;
  line-height: 1.44;
  border-radius: 12px;
  width: min(350px, 100%);
  height: 58px;
}
.menu_form a.btn-reservation_activity:hover {
  background-color: var(--Color_Orange);
  color: var(--Color_White);
}
.menu_form a.btn-contact {
  background-color: var(--Color_Black);
  color: var(--Color_White);
  font-weight: var(--FW_SemiBold);
  font-size: 19px;
  line-height: 1.44;
  border-radius: 12px;
  width: min(350px, 100%);
  height: 58px;
}
.menu_form a.btn-contact:hover {
  background-color: var(--Color_Orange);
  color: var(--Color_White);
}
.w1300_wrap {
  width: min(1300px, 100%);
  margin-left: auto;
  margin-right: auto;
}
.w1000_wrap {
  width: min(1000px, 96%);
  margin-left: auto;
  margin-right: auto;
}
.w800_wrap {
  width: min(800px, 100%);
  margin-left: auto;
  margin-right: auto;
}
.w750_wrap {
  width: min(750px, 100%);
  margin-left: auto;
  margin-right: auto;
}
.bg_white {
  background-color: var(--Color_White);
}
.bg-translucent_blue {
  background-color: var(--Color_SkyBlue89);
}
.box-map {
  display: block;
  width: 100%;
  height: 370px;
}
@media screen and (min-width: 750px) {
  .box-map {
    height: 403px;
  }
}
.box-map iframe {
  border: none;
  width: 100%;
  height: 370px;
}
@media screen and (min-width: 750px) {
  .box-map iframe {
    height: 403px;
  }
}
.box-map3 {
  display: block;
  width: 100%;
  height: 250px;
  aspect-ratio: 4;
}
.box-map3 iframe {
  border: none;
  width: 100%;
  height: 100%;
}
.box-map2 {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 2;
}
.box-map2 iframe {
  border: none;
  width: 100%;
  height: 100%;
}
.box-movie {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: min(800px, 100%);
  height: 100%;
  aspect-ratio: 1.77777778;
}
.box-movie iframe {
  border: none;
  width: 100%;
  height: 100%;
}
.box-linklist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
}
header.toppage {
  height: calc(100svh - 125px - 93px);
}
@media screen and (min-width: 750px) {
  header.toppage {
    min-height: 750px;
  }
}
header.toppage .sitelogo {
  padding-bottom: min(40px, 4vh);
}
@media screen and (min-width: 750px) {
  header.toppage .sitelogo {
    padding-bottom: 40px;
  }
}
header.toppage .sitelogo img {
  width: auto;
  height: min(233px, 100%);
}
@media screen and (min-width: 750px) {
  header.toppage .sitelogo img {
    width: 334px;
    height: auto;
  }
}
header.toppage .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: calc(100svh - 125px - 140px);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 125px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
header.toppage .wrap .title {
  text-align: center;
  font-size: min(19px, 2.5vh);
  font-weight: var(--FW_SemiBold);
  color: var(--Color_White);
  margin-bottom: 20px;
}
header.toppage .wrap .message {
  text-align: center;
  font-size: min(24px, 2.7vh);
  font-weight: var(--FW_SemiBold);
  color: var(--Color_White);
  line-height: 1.8;
}
@media screen and (min-width: 750px) {
  header.toppage .wrap {
    margin-top: 0;
    gap: 30px;
    height: 90%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  header.toppage .wrap .title {
    margin-bottom: 0;
    font-size: 30px;
  }
  header.toppage .wrap .message {
    font-size: 28px;
  }
}
header.subpage .w1300_wrap {
  position: relative;
  min-height: 272px;
  background-image: url(../img/common/bg_header_sp.png);
  background-size: 227px;
  background-position: top 123px right;
  background-repeat: no-repeat;
}
header.subpage .w1300_wrap .sitelogo {
  height: 189px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 20px;
}
header.subpage .w1300_wrap .sitelogo img {
  height: 143px;
  width: auto;
}
@media screen and (min-width: 1000px) {
  header.subpage .w1300_wrap .sitelogo {
    height: 236px;
    margin-left: 20px;
  }
  header.subpage .w1300_wrap .sitelogo img {
    height: 185px;
    width: auto;
  }
}
header.subpage .w1300_wrap .copy {
  position: absolute;
  top: 40px;
  left: 200px;
}
@media screen and (min-width: 1000px) {
  header.subpage .w1300_wrap .copy {
    top: 70px;
    left: 270px;
  }
}
header.subpage .w1300_wrap .copy p {
  font-weight: var(--FW_SemiBold);
  font-size: 21px;
  line-height: 1.75;
  color: var(--Color_White);
}
header.subpage .w1300_wrap .pagetitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 83px;
  padding: 30px 0 0;
  background-color: var(--Color_White);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
header.subpage .w1300_wrap .pagetitle p {
  font-size: 48px;
  line-height: 1.3;
}
header.subpage .w1300_wrap .pagetitle h1 {
  color: var(--Color_Black);
  font-size: 48px;
  line-height: 1.14;
  overflow: inherit;
}
@media screen and (min-width: 750px) {
  header.subpage .w1300_wrap .pagetitle h1 {
    font-size: 53px;
    line-height: 1.2;
  }
}
@media screen and (min-width: 1000px) {
  header.subpage .w1300_wrap {
    height: 295px;
    background-image: url(../img/common/bg_header_pc.png);
    background-position: bottom center;
    background-size: 1300px;
  }
  header.subpage .w1300_wrap .pagetitle {
    background: none;
    position: absolute;
    top: 200px;
    right: 0;
    min-width: min(590px, 43vw);
  }
  header.subpage .w1300_wrap .pagetitle p {
    font-size: 53px;
  }
}
@media screen and (min-width: 1300px) {
  header.subpage .w1300_wrap .pagetitle {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-right: inherit;
    right: 10px;
    min-width: 590px;
  }
}
footer {
  padding-bottom: 93px;
}
footer .logo {
  width: 100%;
  text-align: center;
}
footer .logo img {
  width: 230px;
  display: inline-block;
}
@media screen and (min-width: 750px) {
  footer {
    padding-bottom: 0;
  }
  footer .logo {
    width: 225px;
  }
  footer .logo img {
    width: 205px;
  }
}
footer .link_list ul li {
  line-height: 1.5;
  font-size: 17px;
}
footer .box_dedicated {
  background-color: var(--Color_White);
  color: var(--Color_Black);
}
footer .box_dedicated .dedicated {
  display: block;
  font-size: 17px;
  padding-bottom: 25px;
  line-height: 1.8;
}
footer .box_dedicated a {
  color: var(--Color_Black);
}
footer .box_dedicated a.btn-entry_activity {
  font-size: 17px;
  line-height: 1.6;
}
footer .box_dedicated a.btn-entry_activity:before {
  background-image: url(../img/icon/arrow_r_black.svg);
  top: calc(0.8em - 3.5px);
}
footer .box_dedicated a.btn-entry_activity:hover {
  text-decoration: underline;
}
footer .box_dedicated a.btn-modify_activity {
  font-size: 17px;
  line-height: 1.6;
}
footer .box_dedicated a.btn-modify_activity:before {
  background-image: url(../img/icon/arrow_r_black.svg);
  top: calc(0.8em - 3.5px);
}
footer .box_dedicated a.btn-modify_activity:hover {
  text-decoration: underline;
}
@media screen and (min-width: 750px) {
  footer .box_dedicated {
    background-color: var(--Color_Black);
    color: var(--Color_White);
  }
  footer .box_dedicated .dedicated {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 50px;
    height: 45px;
    font-size: 16px;
    padding-bottom: 0;
  }
  footer .box_dedicated a {
    color: var(--Color_White);
  }
  footer .box_dedicated a.btn-entry_activity {
    font-size: 16px;
  }
  footer .box_dedicated a.btn-entry_activity:before {
    background-image: url(../img/icon/arrow_r_white.svg);
  }
  footer .box_dedicated a.btn-modify_activity {
    font-size: 16px;
  }
  footer .box_dedicated a.btn-modify_activity:before {
    background-image: url(../img/icon/arrow_r_white.svg);
  }
}
footer .flag_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 55px;
}
@media screen and (min-width: 855px) {
  footer .flag_wrap {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0;
  }
}
footer .flag_wrap > .inner {
  margin-left: auto;
  margin-right: auto;
  width: min(279px, 100%);
}
footer .carabiner_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 57px;
}
@media screen and (min-width: 750px) {
  footer .carabiner_wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0;
  }
}
footer .carabiner_wrap > .inner {
  margin-left: auto;
  margin-right: auto;
  width: min(347px, 100%);
}
footer .carabiner_wrap > .inner.knot {
  width: 100%;
}
@media screen and (min-width: 750px) {
  footer .carabiner_wrap > .inner.w145 {
    width: 10vw;
    background-image: url(../img/common/carabiner_line.png);
    background-position: center bottom 61px;
    background-repeat: repeat-x;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  footer .carabiner_wrap > .inner.knot {
    width: 347px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  footer .carabiner_wrap > .inner.wauto {
    width: calc(100% - 347px - 347px - 10vw);
    background-image: url(../img/common/carabiner_line.png);
    background-position: center bottom 61px;
    background-repeat: repeat-x;
  }
}
@media screen and (min-width: 1000px) {
  footer .carabiner_wrap > .inner.w145 {
    width: 145px;
  }
  footer .carabiner_wrap > .inner.knot {
    width: 347px;
  }
  footer .carabiner_wrap > .inner.wauto {
    width: calc(100% - 347px - 347px - 145px);
  }
}
footer .panel_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 35px;
  margin-bottom: 50px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 25px;
}
@media screen and (min-width: 855px) {
  footer .panel_wrap {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
footer .panel_wrap > .inner {
  margin-left: auto;
  margin-right: auto;
  width: min(305px, 100%);
}
@media screen and (min-width: 855px) {
  footer .panel_wrap > .inner {
    width: calc((100% - 5vw) / 3);
  }
}
@media screen and (min-width: 1000px) {
  footer .panel_wrap > .inner {
    width: calc((100% - 85px) / 3);
  }
}
aside.bg_slider {
  position: fixed;
  z-index: -1;
  top: 0;
}
aside.topmove_btn {
  position: fixed;
  z-index: 89;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  bottom: -100px;
  cursor: pointer;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  right: 2vw;
  width: 70px;
  height: 70px;
}
@media only screen and (min-width: 750px) {
  aside.topmove_btn {
    right: 31px;
    width: 80px;
    height: 80px;
  }
}
aside.topmove_btn span {
  background-image: url(../img/common/totop.svg);
  background-size: contain;
  height: 100%;
  width: 100%;
}
aside.topmove_btn.active {
  bottom: 100px;
}
@media only screen and (min-width: 750px) {
  aside.topmove_btn.active {
    bottom: 20px;
  }
}
main .flex_between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 25px;
}
main .flex_between.flex_column {
  height: 100%;
}
@media screen and (min-width: 750px) {
  main .flex_between {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
main .flex_column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
main .flex_center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 25px;
}
@media screen and (min-width: 750px) {
  main .flex_center {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
main .flex_center.gap130 {
  gap: 25px 130px;
}
main h3.link-panel_pin {
  position: relative;
  overflow: inherit  !important;
  background-color: var(--Color_White) !important;
  border-radius: 12px;
  border: 1px solid var(--Color_DarkGray);
  width: min(305px, 100%);
  height: 205px;
  margin-top: 26px;
  margin-left: auto;
  margin-right: auto;
  padding: inherit  !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
main h3.link-panel_pin:before {
  content: "";
  position: absolute;
  top: -25px;
  background-image: url(../img/icon/pin.svg);
  width: 100%;
  height: 52px;
  background-position: center top;
  background-repeat: no-repeat;
}
main h3.link-panel_pin figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
}
main h3.link-panel_pin figure > div {
  height: 90px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
main h3.link-panel_pin figure figcaption {
  text-align: center;
}
main h3.link-panel_pin span.sub {
  font-size: 20.5px;
}
main h3.link-panel_pin span.name {
  font-size: 31.3px;
}
@media screen and (min-width: 750px) {
  main h3.link-panel_pin span.sub {
    font-size: 19px;
  }
  main h3.link-panel_pin span.name {
    font-size: 29px;
  }
}
main.toppage .description {
  display: block;
}
@media screen and (min-width: 1057px) {
  main.toppage .description {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 362px;
  }
}
main.toppage .description p {
  font-size: 19px;
  line-height: 1.75;
}
@media screen and (min-width: 750px) {
  main.toppage .description p {
    font-size: 18px;
  }
}
main.toppage .description .heading {
  height: 200px;
  width: 100%;
  position: relative;
}
@media screen and (min-width: 1057px) {
  main.toppage .description .heading {
    height: inherit;
    width: 310px;
  }
}
main.toppage .description .heading h2 {
  position: relative;
  font-size: 28px;
  font-weight: var(--FW_SemiBold);
  color: var(--Color_White);
  text-align: center;
  background-color: inherit;
  background-image: url(../img/toppage/bg_heading.svg);
  background-position: top center;
  background-repeat: no-repeat;
  height: 100%;
}
@media screen and (min-width: 1057px) {
  main.toppage .description .heading h2 {
    background-position: top left;
    width: 344px;
  }
}
main.toppage .description .heading h2 span {
  position: absolute;
  top: 113px;
  left: 38px;
  right: 36px;
}
main.toppage .description .content {
  padding: 20px;
  width: 100%;
  background-color: var(--Color_White);
}
@media screen and (min-width: 750px) {
  main.toppage .description .content {
    padding: 34px;
    width: 690px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 1057px) {
  main.toppage .description .content {
    margin-top: 6px;
    width: calc(100% - 310px);
  }
}
main.toppage .description .content .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px 25px;
}
main.toppage .description .content .inner .left {
  width: 100%;
}
main.toppage .description .content .inner .right {
  width: 100%;
}
@media screen and (min-width: 750px) {
  main.toppage .description .content .inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  main.toppage .description .content .inner .left {
    width: 285px;
  }
  main.toppage .description .content .inner .right {
    width: calc(100% - 285px - 25px);
  }
}
main.toppage .description.rev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
main.toppage .description.rev .heading h2 {
  background-image: url(../img/toppage/bg_heading_rev.svg);
}
@media screen and (min-width: 1057px) {
  main.toppage .description.rev .heading h2 {
    background-position: top right;
    left: -34px;
  }
}
main.toppage .description.rev .heading h2 span {
  position: absolute;
  top: 113px;
  left: 38px;
  right: 36px;
}
main.subpage {
  /*
		.mp_phone + .mp_addr{
			padding-top: 0;
			padding-bottom: 18px;
			min-height: inherit;
		}
*/
}
main.subpage h1,
main.subpage h2,
main.subpage .heading_lv1 {
  background-color: var(--Color_SkyBlue);
  color: var(--Color_White);
  font-size: 28px;
  font-weight: var(--FW_Regular);
  line-height: 1.14;
  overflow: hidden;
  padding: 8px 32px;
  min-height: 75px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
main.subpage h3,
main.subpage .heading_lv2 {
  background-color: var(--Color_LightSkyBlue);
  color: var(--Color_black);
  font-size: 23px;
  font-weight: var(--FW_Regular);
  line-height: 1.4;
  overflow: hidden;
  padding: 8px 32px;
  min-height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
main.subpage .heading-image {
  background-color: var(--Color_SkyBlue);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 27.1vw;
  max-height: 291px;
}
main.subpage .mp_phone {
  background-color: var(--Color_LightSkyBlue);
  color: var(--Color_black);
  font-size: 20px;
  font-weight: var(--FW_Regular);
  line-height: 1.4;
  overflow: hidden;
  padding: 8px 32px;
  min-height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 750px) {
  main.subpage .mp_phone {
    font-size: 19px;
  }
}
main.subpage .mp_phone:before {
  content: "　";
  background-image: url(../img/icon/phone.svg);
  background-repeat: no-repeat;
  background-position: left;
  width: 1.3em;
}
main.subpage .mp_addr {
  background-color: var(--Color_LightSkyBlue50);
  color: var(--Color_black);
  font-size: 20px;
  font-weight: var(--FW_Regular);
  line-height: 1.4;
  overflow: hidden;
  padding: 8px 32px;
  min-height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 750px) {
  main.subpage .mp_addr {
    font-size: 19px;
  }
}
main.subpage .detail_name {
  background-color: var(--Color_SkyBlue);
  color: var(--Color_White);
  font-size: 28px;
  font-weight: var(--FW_Regular);
  line-height: 1.14;
  overflow: hidden;
  padding: 22px 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
main.subpage .overview_name {
  font-weight: var(--FW_SemiBold);
  font-size: 27px;
  line-height: 1.14;
  padding: 0;
  background: none;
  min-height: inherit;
  margin-top: 10px;
  margin-bottom: 20px;
}
@media screen and (min-width: 750px) {
  main.subpage .overview_name {
    font-size: 25px;
  }
}
main.subpage p {
  font-size: 19px;
  line-height: 1.68;
}
@media screen and (min-width: 750px) {
  main.subpage p {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  main.subpage p {
    line-height: 1.77;
  }
}
main.subpage .introduction p {
  font-size: 25px;
  line-height: 1.32;
}
@media screen and (min-width: 750px) {
  main.subpage .introduction p {
    font-size: 24px;
  }
}
@media screen and (min-width: 750px) {
  main.subpage .introduction p {
    line-height: 1.25;
  }
}
main.subpage .box-gray {
  background-color: var(--Color_Gray);
  padding: 25px 35px;
}
main.subpage .box-gray .box-heading {
  background: none;
  padding: 0;
  color: var(--Color_Black);
  font-size: 23px;
  font-weight: var(--FW_SemiBold);
  line-height: 1.4;
}
main.subpage .box-gray ul li {
  margin-bottom: 0.3em;
  line-height: 1.5;
}
main.subpage .box-info {
  background-color: var(--Color_Gray);
}
main.subpage .box-info .box-info_heading {
  position: relative;
  background-color: var(--Color_Black);
  color: var(--Color_White);
  min-height: 40px;
  padding-left: 29px;
  padding-right: 15px;
  display: inline-block;
  font-size: 18px;
  font-weight: var(--FW_Regular);
  line-height: 40px;
  overflow: inherit;
  padding: 0 15px 0 29px;
}
main.subpage .box-info .box-info_heading:after {
  content: "";
  display: block;
  width: 36px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -36px;
  background: -webkit-gradient(linear, left top, right bottom, color-stop(49%, var(--Color_Black)), color-stop(51%, transparent));
  background: linear-gradient(to bottom right, var(--Color_Black) 49%, transparent 51%);
}
main.subpage .box-info ul li {
  margin-bottom: 0;
  line-height: 1.5;
}
main.subpage .box-info > .inner {
  padding: 17px 12px 17px 12px;
}
@media screen and (min-width: 750px) {
  main.subpage .box-info > .inner {
    padding: 20px 34px 25px 34px;
  }
}
main.subpage .box-info > .inner ul.triangle li {
  position: relative;
  line-height: 1.65;
  margin-bottom: 0.6em;
  font-size: 20px;
}
@media screen and (min-width: 750px) {
  main.subpage .box-info > .inner ul.triangle li {
    margin-bottom: 0.18em;
    font-size: 18px;
  }
}
main.subpage .box-info > .inner ul.triangle li::before {
  position: absolute;
  background-image: url(../img/icon/triangle_black.svg);
  background-repeat: no-repeat;
  width: 7px;
  height: 6px;
  content: "";
  top: calc((1.65em / 2) - 4px);
  left: -0.8em;
  border: none;
}
main.subpage .box_columns2 {
  padding: 15px 15px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 25px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 750px) {
  main.subpage .box_columns2 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 30px 15px 30px;
  }
}
main.subpage .box_columns2 > * {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
main.subpage .photo-index {
  display: block;
}
main.subpage .photo-index > .inner {
  margin-bottom: 20px;
}
main.subpage .photo-index > .inner figcaption {
  font-size: 18px;
  line-height: 1.5;
  margin-top: 10px;
  margin-bottom: 10px;
}
main.subpage .photo-index > .inner a {
  text-decoration: none;
}
@media screen and (min-width: 750px) {
  main.subpage .photo-index {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 17px 15px;
  }
  main.subpage .photo-index > .inner {
    margin-bottom: 0;
    width: calc((100% - 15px) / 2);
  }
  main.subpage .photo-index > .inner figcaption {
    font-size: 16px;
    line-height: 1.43;
  }
}
main.subpage .photo-colm {
  display: block;
}
main.subpage .photo-colm > .inner {
  margin-bottom: 20px;
}
main.subpage .photo-colm > .inner figcaption {
  font-size: 18px;
  line-height: 1.5;
  margin-top: 10px;
  margin-bottom: 10px;
}
main.subpage .photo-colm > .inner a {
  text-decoration: none;
}
@media screen and (min-width: 750px) {
  main.subpage .photo-colm {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 20px;
  }
  main.subpage .photo-colm > .inner {
    margin-bottom: 20px;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  main.subpage .photo-colm > .inner figcaption {
    font-size: 16px;
    line-height: 1.43;
  }
}
main.subpage .box-colm {
  display: block;
}
main.subpage .box-colm > .inner {
  margin-bottom: 35px;
}
main.subpage .box-colm > .inner figcaption {
  font-size: 18px;
  line-height: 1.5;
  margin-top: 10px;
  margin-bottom: 10px;
}
main.subpage .box-colm > .inner a {
  text-decoration: none;
}
main.subpage .box-colm.gap25 > .inner {
  margin-bottom: 25px;
}
@media screen and (min-width: 750px) {
  main.subpage .box-colm {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 35px;
  }
  main.subpage .box-colm.gap25 {
    gap: 25px;
  }
  main.subpage .box-colm > .inner {
    margin-bottom: 35px;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  main.subpage .box-colm > .inner figcaption {
    font-size: 16px;
    line-height: 1.43;
  }
  main.subpage .box-colm.gap25 {
    gap: 25px;
  }
  main.subpage .box-colm.gap25 > .inner {
    margin-bottom: 0;
  }
}
main.subpage .area_block {
  display: block;
  margin: 10px;
}
main.subpage .area_block > .inner_area,
main.subpage .area_block > .inner {
  margin-bottom: 10px;
}
main.subpage .area_block > .inner_area figcaption,
main.subpage .area_block > .inner figcaption {
  font-size: 18px;
  line-height: 1.5;
  margin-top: 10px;
  margin-bottom: 10px;
}
main.subpage .area_block > .inner_area a,
main.subpage .area_block > .inner a {
  text-decoration: none;
}
@media screen and (min-width: 750px) {
  main.subpage .area_block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 25px;
  }
  main.subpage .area_block > .inner {
    margin-bottom: 0;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
            flex: 1 1 0%;
  }
  main.subpage .area_block > .inner figcaption {
    font-size: 16px;
    line-height: 1.43;
  }
}
main.subpage .faq_block {
  position: relative;
  padding-top: 34px;
}
@media screen and (min-width: 750px) {
  main.subpage .faq_block {
    padding-top: 0;
  }
}
main.subpage .faq_block .inner_q {
  position: relative;
  background-color: var(--Color_SkyBlue);
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  color: var(--Color_White);
  font-size: 28px;
  line-height: 1.143;
  padding: 65px 22px 18px;
}
main.subpage .faq_block .inner_q:before {
  content: "";
  position: absolute;
  background-image: url(../img/icon/question.svg);
  background-repeat: no-repeat;
  top: -34px;
  left: calc(50% - 33px);
  width: 66px;
  height: 92px;
}
@media screen and (min-width: 750px) {
  main.subpage .faq_block .inner_q:before {
    top: 10px;
    left: 20px;
  }
}
main.subpage .faq_block .inner_q p {
  font-size: 28px;
  line-height: 1.143;
}
@media screen and (min-width: 750px) {
  main.subpage .faq_block .inner_q {
    padding: 27px 32px;
    padding-left: 109px;
  }
}
main.subpage .faq_block .inner_a {
  background-color: var(--Color_Gray2);
  background-image: url(../img/icon/answer.svg);
  background-position: center top 20px;
  background-repeat: no-repeat;
  padding: 100px 20px 35px;
  font-size: 20px;
  line-height: 1.6;
  min-height: 8em;
}
main.subpage .faq_block .inner_a p {
  font-size: 20px;
  line-height: 1.6;
}
@media screen and (min-width: 750px) {
  main.subpage .faq_block .inner_a {
    background-position: left 20px top 42px;
    padding: 37px 32px;
    padding-left: 117px;
    font-size: 18px;
    line-height: 1.77;
  }
  main.subpage .faq_block .inner_a p {
    font-size: 18px;
    line-height: 1.77;
  }
}
main.subpage .overview_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 25px 40px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 750px) {
  main.subpage .overview_block {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
main.subpage .overview_block .inner_link {
  width: 310px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: 0 auto;
}
.sp_bottom_fixed {
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 10;
}
.sp_bottom_fixed a.btn-reservation_activity {
  border-radius: 0;
  height: 93px;
  line-height: 1.44;
  width: 100%;
}
.sp_bottom_fixed a.btn-contact {
  border-radius: 0;
  height: 93px;
  line-height: 1.44;
  width: 100%;
}
@media screen and (min-width: 750px) {
  .sp_bottom_fixed {
    position: relative;
  }
  .sp_bottom_fixed a.btn-reservation_activity {
    border-radius: 12px;
    height: 58px;
    width: min(308px, 100%);
  }
  .sp_bottom_fixed a.btn-contact {
    border-radius: 12px;
    height: 58px;
    width: min(308px, 100%);
  }
}
.breadcrumb_wrap {
  display: none;
}
@media screen and (min-width: 750px) {
  .breadcrumb_wrap {
    display: block;
    height: 60px;
    width: min(1300px, 100%);
    margin-top: -60px;
    margin-left: auto;
    margin-right: auto;
  }
  .breadcrumb_wrap .breadcrumb {
    padding-left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
    margin-left: 40px;
    margin-right: 20px;
    line-height: 1.4;
  }
  .breadcrumb_wrap .breadcrumb li {
    color: var(--Color_White);
    margin-bottom: 0;
  }
  .breadcrumb_wrap .breadcrumb li:before {
    content: none;
  }
  .breadcrumb_wrap .breadcrumb li span,
  .breadcrumb_wrap .breadcrumb li a {
    color: var(--Color_White);
    font-size: 16px;
    line-height: 1.4;
  }
  .breadcrumb_wrap .breadcrumb li + li {
    position: relative;
    margin-left: 20px;
  }
  .breadcrumb_wrap .breadcrumb li + li:before {
    position: absolute;
    content: "";
    background-image: url(../img/icon/nextlevel.svg);
    background-position: left center;
    width: 7px;
    height: 8px;
    top: calc(0.7em - 4px);
    left: -14px;
  }
}
.box_pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.box_pagination .item {
  background-image: url(../img/common/page_no.svg);
  background-repeat: no-repeat;
  background-position: center bottom;
  width: 71px;
  height: 76px;
  color: var(--Color_DarkGreen);
  font-size: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1.4;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.box_pagination .item:hover {
  background-image: url(../img/common/page_choice.svg);
  color: var(--Color_White);
  width: 88px;
}
.box_pagination .item.active {
  background-image: url(../img/common/page_active.svg);
  font-size: var(--FW_SemiBold);
  color: var(--Color_White);
  pointer-events: none;
  width: 88px;
}
.banner_item .banner {
  width: 220px;
  height: 80px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 905px) {
  main.activity .activity_sp-only,
  main.activity .activity_sp_only {
    display: none;
  }
}
@media screen and (max-width: 904px) {
  main.activity .activity_pc-only,
  main.activity .activity_pc_only {
    display: none;
  }
}
main.activity h1 {
  color: var(--Color_White);
  background-color: var(--Color_SkyBlue);
  min-height: 75px;
  padding: 25px 35px;
  text-align: left;
  font-size: 28px;
  line-height: 1.14;
}
main.activity .flex_type01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
@media screen and (min-width: 750px) {
  main.activity .flex_type01 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
main.activity .flex_type02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
}
main.activity .flex_type03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
main.activity a.btn-reservation_activity {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--Color_Black);
  color: var(--Color_White);
  font-size: 19.8px;
  width: 100%;
  height: 60px;
}
@media screen and (min-width: 750px) {
  main.activity a.btn-reservation_activity {
    width: min(308px, 100%);
    height: 52px;
    font-size: 17px;
  }
}
main.activity a.btn-reservation_activity:hover {
  background-color: var(--Color_SkyBlue);
}
main.activity .box_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px 2px;
}
@media screen and (min-width: 750px) {
  main.activity .box_area {
    gap: 20px;
  }
}
main.activity .box_area > * {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc((100% - 2px) / 2);
}
@media screen and (min-width: 750px) {
  main.activity .box_area > * {
    width: 184px;
  }
}
main.activity .box_area .all,
main.activity .box_area .nishimeya,
main.activity .box_area .ajigasawa,
main.activity .box_area .fukaura,
main.activity .box_area .hirosaki,
main.activity .box_area .shirakami {
  border-radius: 63px;
  border: 1px solid var(--Color_DarkGreen);
  background-color: var(--Color_White);
  color: var(--Color_DarkGreen);
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  height: 63px;
  font-size: 16px;
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  main.activity .box_area .all,
  main.activity .box_area .nishimeya,
  main.activity .box_area .ajigasawa,
  main.activity .box_area .fukaura,
  main.activity .box_area .hirosaki,
  main.activity .box_area .shirakami {
    border-radius: 19px;
    height: 37px;
    font-size: 17px;
  }
}
main.activity .box_area .all:hover,
main.activity .box_area .nishimeya:hover,
main.activity .box_area .ajigasawa:hover,
main.activity .box_area .fukaura:hover,
main.activity .box_area .hirosaki:hover,
main.activity .box_area .shirakami:hover {
  background-color: var(--Color_Yellow);
}
main.activity .box_area .active {
  border-radius: 63px;
  border: 1px solid var(--Color_DarkGreen);
  background-color: var(--Color_DarkGreen);
  color: var(--Color_White);
  text-decoration: none;
  pointer-events: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  height: 63px;
  font-size: 16px;
  line-height: 1.4;
}
@media screen and (min-width: 750px) {
  main.activity .box_area .active {
    border-radius: 19px;
    height: 37px;
    font-size: 17px;
  }
}
main.activity .box_area .active:hover {
  background-color: var(--Color_Yellow);
  color: var(--Color_DarkGreen);
}
main.activity .overview p {
  font-size: 19px;
  line-height: 1.68;
}
@media screen and (min-width: 750px) {
  main.activity .overview p {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  main.activity .overview p {
    line-height: 1.77;
  }
}
main.activity .remarks p {
  font-size: 17px;
  line-height: 1.64;
}
@media screen and (min-width: 750px) {
  main.activity .remarks p {
    font-size: 16px;
  }
}
@media screen and (min-width: 750px) {
  main.activity .remarks p {
    line-height: 1.75;
  }
}
main.activity .box-schedule {
  background-color: var(--Color_Gray);
}
main.activity .box-schedule .box-schedule_heading {
  position: relative;
  background-color: var(--Color_Black);
  color: var(--Color_White);
  min-height: 40px;
  padding-left: 29px;
  padding-right: 15px;
  display: inline-block;
  font-size: 18px;
  font-weight: var(--FW_Regular);
  line-height: 40px;
}
main.activity .box-schedule .box-schedule_heading:after {
  content: "";
  display: block;
  width: 36px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -36px;
  background: -webkit-gradient(linear, left top, right bottom, color-stop(49%, var(--Color_Black)), color-stop(51%, transparent));
  background: linear-gradient(to bottom right, var(--Color_Black) 49%, transparent 51%);
}
main.activity .box-schedule dl.schedule {
  padding: 20px 20px 25px 20px;
}
@media screen and (min-width: 750px) {
  main.activity .box-schedule dl.schedule div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 25px;
  }
}
main.activity .box-schedule dl.schedule div dt {
  font-size: 19px;
  line-height: 1.34;
}
@media screen and (min-width: 750px) {
  main.activity .box-schedule dl.schedule div dt {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  main.activity .box-schedule dl.schedule div dt {
    line-height: 1.66;
    width: 50px;
  }
}
main.activity .box-schedule dl.schedule div dd {
  font-size: 19px;
  line-height: 1.34;
  margin-bottom: 5px;
}
@media screen and (min-width: 750px) {
  main.activity .box-schedule dl.schedule div dd {
    font-size: 18px;
  }
}
@media screen and (min-width: 750px) {
  main.activity .box-schedule dl.schedule div dd {
    line-height: 1.66;
    margin-bottom: 0;
  }
}
main.activity .photo-index {
  display: block;
}
main.activity .photo-index > .inner {
  margin-bottom: 20px;
}
main.activity .photo-index > .inner figcaption {
  font-size: 18px;
  line-height: 1.5;
  margin-top: 10px;
  margin-bottom: 10px;
}
main.activity .photo-index > .inner a {
  text-decoration: none;
}
@media screen and (min-width: 750px) {
  main.activity .photo-index {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 25px;
  }
  main.activity .photo-index > .inner {
    margin-bottom: 0;
    width: calc((100% - 25px) / 2);
  }
  main.activity .photo-index > .inner figcaption {
    font-size: 16px;
    line-height: 1.43;
  }
}
main.activity .result_item {
  border: 1px solid var(--Color_SkyBlue);
}
main.activity .result_item .name {
  background-color: var(--Color_SkyBlue);
  color: var(--Color_White);
  font-size: 28px;
  line-height: 1.142;
  min-height: 75px;
  padding: 15px 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
main.activity .result_item .item_wrap {
  padding: 18px 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 26px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
main.activity .result_item .item_wrap .area {
  margin-bottom: 15px;
}
main.activity .result_item .item_wrap .distance {
  margin-top: 15px;
  margin-bottom: 10px;
}
@media screen and (min-width: 750px) {
  main.activity .result_item .item_wrap {
    padding: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 18px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  main.activity .result_item .item_wrap .thumb {
    width: 400px;
  }
  main.activity .result_item .item_wrap .content {
    width: calc(100% - 400px - 18px);
  }
  main.activity .result_item .item_wrap .overview {
    height: calc(3 * 1.77 * 1em);
    overflow: hidden;
  }
  main.activity .result_item .item_wrap .area {
    margin-bottom: 15px;
  }
  main.activity .result_item .item_wrap .distance {
    margin-top: 15px;
    margin-bottom: 10px;
  }
}
main.activity .link_detail {
  background-image: url(../img/icon/link_detail.svg);
  background-size: 29px 33px;
  background-position: center right 115px;
  background-repeat: no-repeat;
  background-color: var(--Color_Yellow);
  color: var(--Color_Black);
  font-size: 18px;
  line-height: 1.142;
  min-height: 75px;
  padding: 5px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}
@media screen and (min-width: 750px) {
  main.activity .link_detail {
    padding: 5px 30px;
    font-size: 20px;
    background-size: 43px 49px;
    background-position: center right 160px;
  }
}
main.activity .link_detail > span.zone {
  position: relative;
  font-size: 25px;
  margin-left: 20px;
}
@media screen and (min-width: 750px) {
  main.activity .link_detail > span.zone {
    margin-left: 22px;
  }
}
main.activity .link_detail > span.zone .small {
  font-size: 20px;
}
main.activity .link_detail > span.zone:before {
  position: absolute;
  background-image: url(../img/icon/triangle_black.svg);
  background-repeat: no-repeat;
  background-size: 11px 10px;
  width: 11px;
  height: 10px;
  content: "";
  top: calc((1.142em / 2) - 5px);
  left: -0.7em;
  border: none;
}
main.activity .link_detail > span:not([class]) {
  margin-left: auto;
  white-space: nowrap;
  padding-left: 42px;
}
@media screen and (min-width: 750px) {
  main.activity .link_detail:hover {
    background-color: var(--Color_SkyBlue);
    color: var(--Color_White);
  }
  main.activity .link_detail:hover > span.zone:before {
    position: absolute;
    background-image: url(../img/icon/triangle_white.svg);
    background-size: 11px 10px;
  }
}
main.activity .link_detail + .link_detail {
  border-top: 1px solid var(--Color_SkyBlue);
}
main .mb-0,
main .mb_0 {
  margin-bottom: 0 !important;
}
main h2 {
  background-color: var(--Color_Brown);
  color: var(--Color_White);
  font-size: 28px;
  font-weight: var(--FW_Regular);
  line-height: 1.14;
  overflow: hidden;
  padding: 8px 32px;
  min-height: 75px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
main .search_wrap {
  background-color: var(--Color_Yellow15);
  line-height: 1.389;
}
main label.fukaura {
  background-color: var(--Color_BG_Fukaura);
  border: 1px solid transparent;
  width: 265px;
}
main label.ajigasawa {
  background-color: var(--Color_BG_Ajigasawa);
  border: 1px solid transparent;
  width: 265px;
}
main label.nishimeya {
  background-color: var(--Color_BG_Nishimeya);
  border: 1px solid transparent;
  width: 265px;
}
main label.hirosaki {
  background-color: var(--Color_BG_Hirosaki);
  border: 1px solid transparent;
  width: 265px;
  color: var(--Color_White);
}
main .thanks .form-section h2 {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.14;
  margin: 0;
}
main .confirm .form-section,
main .confirmation .form-section {
  margin-bottom: 25px;
}
main .confirm .form-section h2,
main .confirmation .form-section h2 {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.14;
  margin: 0;
}
main .entry .form-section h2 {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.14;
  margin: 0;
}
main .entry .form-section .companion-block h3 {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.39;
  margin: 0;
}
main .form-label {
  display: inline-block;
  font-size: 18px;
}
@media screen and (min-width: 905px) {
  main .form-label {
    margin-bottom: 5px;
  }
}
main .form-label.required:before {
  content: "▲";
  color: #C1272D;
}
main .form-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
main select {
  width: min(265px,100%);
  background-color: #ffffff;
  border: 1px solid #999999;
  border-radius: 10px;
  padding: 8px 15px;
  font-size: 21px;
}
main select:placeholder {
  color: #B3B3B3;
}
main select.organizer {
  width: min(587px,100%);
}
main input {
  width: min(265px,100%);
  background-color: #ffffff;
  border: 1px solid #999999;
  border-radius: 10px;
  padding: 8px 15px;
  font-size: 21px;
}
main input:placeholder {
  color: #B3B3B3;
}
main input.narrow {
  width: min(132px,35vw);
}
main input[type="email"] {
  width: min(705px,100%);
}
main #address-line {
  width: min(705px,100%);
}
main #tel,
main #fax {
  width: min(390px,100%);
}
main input[type="radio"] {
  width: 1em;
  -webkit-transform: scale(1.4);
          transform: scale(1.4);
}
main input[type="checkbox"] {
  width: 1em;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  padding: 0;
  right: 0;
  bottom: 0;
  left: 13px;
  top: calc(50% - 9px);
  height: 18px;
  width: 18px;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  outline: none;
  border-radius: 0;
  border: 1px solid #1a1a1a;
}
@media screen and (min-width: 905px) {
  main input[type="checkbox"] {
    left: 25px;
  }
}
main input[type="checkbox"]:before {
  position: absolute;
  content: "";
  background: #fff;
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
}
main input[type="checkbox"]:after {
  position: absolute;
  content: "";
  background: #fff;
  right: 9px;
  bottom: 3px;
  width: 2px;
  height: 0;
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
}
main input[type="checkbox"]:checked:before {
  left: 2px;
  top: 10px;
  width: 6px;
  height: 2px;
  background: #1a1a1a;
}
main input[type="checkbox"]:checked:after {
  right: 5px;
  bottom: 1px;
  width: 2px;
  height: 15px;
  background: #1a1a1a;
}
main .checkbox-inline,
main .radio-inline {
  background-color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 10px;
  padding: 10px 40px 10px 20px;
  font-size: 21px;
  min-width: 215px;
}
main .checkbox-inline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  position: relative;
  padding: 10px 20px 10px 45px;
}
@media screen and (min-width: 905px) {
  main .checkbox-inline {
    padding-left: 60px;
  }
}
main .checkbox-inline.season {
  min-width: 217px;
}
main .checkbox-inline.timezone {
  width: min(357px,100%);
  padding-right: 10px;
}
main textarea {
  width: 100%;
  background-color: #ffffff;
  border: 1px solid #999999;
  border-radius: 10px;
  padding: 10px 15px;
  font-size: 21px;
}
main textarea:placeholder {
  color: #B3B3B3;
}
main button {
  background-color: #cccccc;
  border: 1px solid #808080;
  border-radius: 100px;
  padding: 25px 10px;
  color: #1a1a1a;
  font-size: 20px;
  cursor: pointer;
  width: min(312px,95%);
}
main button.btn-secondary {
  background-color: var(--Color_LightGray);
  border: 1px solid transparent;
}
main button.btn-primary {
  background-color: var(--Color_Yellow2);
  border: 1px solid transparent;
}
main .form-chk-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
}
main .form-chk-wrap + .form-chk-wrap {
  margin-top: 20px;
}
main .form-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
main legend {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
main textarea:has(+ .form-error),
main select:has(+ .form-error),
main input:has(+ .form-error) {
  background-color: rgba(192, 39, 45, 0.05);
  border: 1px solid rgba(192, 39, 45, 0.6);
}
main .form-chk-wrap:has(+ .form-error) {
  padding: 16.5px 10px;
  background-color: rgba(192, 39, 45, 0.05);
  border: 1px solid rgba(192, 39, 45, 0.6);
}
main label:has(:checked) {
  border: 1px solid #999999;
}
main .summary-list {
  border-bottom: 1px solid #999999;
}
main .summary-list > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0;
}
main .summary-list > div dt {
  border-top: 1px solid #999999;
  border-left: 1px solid #999999;
  border-right: 1px solid #999999;
  width: 100%;
  padding: 5px 15px;
  background-color: #F2F2F2;
}
@media screen and (min-width: 750px) {
  main .summary-list > div dt {
    padding: 16.5px 24px;
    width: 200px;
  }
}
main .summary-list > div dd {
  border-left: 1px solid #999999;
  border-right: 1px solid #999999;
  width: 100%;
  padding: 16.5px 24px;
}
@media screen and (min-width: 750px) {
  main .summary-list > div dd {
    width: calc(100% - 200px);
    border-top: 1px solid #999999;
    border-left: none;
    border-right: 1px solid #999999;
  }
}
main .summary-list + .summary-list {
  margin-top: 20px;
}
main .form-chk-wrap + .form-chk-wrap {
  padding-top: 0;
}
main .search_wrap {
  padding: 40px 0;
}
@media screen and (min-width: 905px) {
  main .search_wrap {
    padding: 40px;
  }
}
main .search_wrap .item-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #ADADAD;
  margin-bottom: 20px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 30px;
  gap: 13px 0;
}
@media screen and (min-width: 905px) {
  main .search_wrap .item-block {
    padding-bottom: 20px;
  }
}
main .search_wrap .item-block.last {
  border-bottom: none;
}
main .search_wrap .item-block > * {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 905px) {
  main .search_wrap .item-block > * {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  main .search_wrap .item-block > *:nth-child(1) {
    -ms-flex-preferred-size: 110px;
        flex-basis: 110px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
}
main .search_wrap .item-block.range > * {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 905px) {
  main .search_wrap .item-block.range > * {
    -ms-flex-preferred-size: 265px;
        flex-basis: 265px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  main .search_wrap .item-block.range > *:nth-child(1) {
    -ms-flex-preferred-size: 110px;
        flex-basis: 110px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  main .search_wrap .item-block.range > *:nth-child(3) {
    padding-left: 50px;
    -ms-flex-preferred-size: 150px;
        flex-basis: 150px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
}
main .search_wrap .item-block .form-label > span {
  display: inline-block;
}
@media screen and (min-width: 905px) {
  main .search_wrap .item-block .form-label > span {
    padding-top: 13px;
  }
}
aside.menu_btn {
  position: fixed;
  z-index: 99;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  padding-bottom: 23px;
  background-image: url(../img/common/menu_bg.svg);
  top: 27px;
  right: 31px;
  width: 88px;
  height: 77px;
  cursor: pointer;
}
aside.menu_btn span {
  position: relative;
  width: 27px;
  height: 3px;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
aside.menu_btn span:before {
  position: absolute;
  content: "";
  top: -4px;
  left: 0;
  width: 27px;
  height: 3px;
  background-color: var(--Color_DarkGreen);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
aside.menu_btn span:after {
  position: absolute;
  content: "";
  top: 4px;
  left: 0;
  width: 27px;
  height: 3px;
  background-color: var(--Color_DarkGreen);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
aside.menu_btn.active span {
  height: 0;
}
aside.menu_btn.active span:before {
  top: 0;
  -webkit-transform: rotate(155deg);
          transform: rotate(155deg);
}
aside.menu_btn.active span:after {
  top: 0;
  -webkit-transform: rotate(-155deg);
          transform: rotate(-155deg);
}
@media screen and (min-width: 785px) {
  aside.menu_btn:hover {
    background-image: url(../img/common/menu_bg_green.svg);
  }
  aside.menu_btn:hover span:before {
    background-color: var(--Color_White);
  }
  aside.menu_btn:hover span:after {
    background-color: var(--Color_White);
  }
}
aside.menu {
  background-color: var(--Color_SkyBlue89);
  position: fixed;
  top: 0;
  z-index: 95;
  width: 100%;
  top: 100vh;
  height: 100vh;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
aside.menu.active {
  position: fixed;
  top: 0;
}
aside.menu .wrap {
  overflow-y: auto;
  width: 100%;
  height: calc(100svh + 15px);
}
aside.menu .menu_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px 12px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 93%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 785px) {
  aside.menu .menu_btn {
    gap: 23px 20px;
    width: 745px;
  }
}
aside.menu .menu_btn .inner {
  width: calc((100% - 12px) / 2);
  min-height: 100px;
  line-height: 2;
}
aside.menu .menu_btn .inner.sp_w100 {
  width: 100%;
  min-height: inherit;
}
@media screen and (min-width: 785px) {
  aside.menu .menu_btn .inner {
    width: 235px;
  }
  aside.menu .menu_btn .inner.sp_w100 {
    width: 235px;
  }
}
aside.menu .menu_btn .inner a.panel_white {
  background-color: var(--Color_White);
  border-radius: 8.5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--Color_Black);
  height: 100%;
  width: 100%;
  font-size: 24px;
  padding: 5px;
  line-height: 1.3;
  text-align: center;
  background-position: center;
}
aside.menu .menu_btn .inner a.panel_white .small {
  font-size: 18px;
}
aside.menu .menu_btn .inner a.panel_white:hover {
  background-image: url(../img/common/panel_bg.svg);
  background-repeat: no-repeat;
  background-position: center;
}
aside.menu .menu_btn .inner a.triangle {
  position: relative;
  line-height: 1.45;
  font-size: 17px;
  color: var(--Color_White);
  padding-left: 0.8em;
}
aside.menu .menu_btn .inner a.triangle:before {
  position: absolute;
  background-image: url(../img/icon/triangle_white.svg);
  background-repeat: no-repeat;
  width: 7px;
  height: 6px;
  content: "";
  top: calc((1.45em / 2) - 2px);
  left: 0;
  border: none;
}
aside.menu .menu_btn .inner a.triangle:hover {
  color: var(--Color_PureYellow);
}
aside.menu .menu_btn .inner a.triangle:hover:before {
  background-image: url(../img/icon/triangle_yellow.svg);
}
aside.menu .menu_btn.full {
  margin-bottom: 10px;
}
@media screen and (min-width: 785px) {
  aside.menu .menu_btn.full {
    margin-bottom: 23px;
  }
}
aside.menu .menu_btn.full .inner {
  width: 100%;
}
aside.menu .menu_form {
  width: 93%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 785px) {
  aside.menu .menu_form {
    width: 745px;
  }
}
aside.menu .menu_form .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px 40px;
}
aside.menu .menu_form .flex .inner_full {
  width: 100%;
}
@media screen and (min-width: 785px) {
  aside.menu .menu_form .flex .inner_full {
    width: calc((100% - 40px) / 2);
  }
}
aside.menu .menu_form .flex .inner_full .btn-reservation_activity {
  width: 100%;
}
aside.menu .menu_form .flex .inner_full .btn-contact {
  width: 100%;
}
aside.menu .menu_comment {
  width: 93%;
  margin-left: auto;
  margin-right: auto;
  color: var(--Color_White);
  font-size: 15px;
  line-height: 1.4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 785px) {
  aside.menu .menu_comment {
    font-size: 14px;
    width: 745px;
  }
}
@media screen and (min-width: 785px) {
  aside.menu .menu_comment {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 20px;
  }
}
aside.menu .menu_img {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
aside.menu .menu_img img {
  width: min(292px, 70%);
}
@media screen and (min-width: 785px) {
  aside.menu .menu_img img {
    width: 283px;
  }
}
aside.menu .menu_dedicated {
  width: 93%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 785px) {
  aside.menu .menu_dedicated {
    width: 745px;
  }
}
aside.menu .menu_dedicated .dedicated {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0 50px;
  font-size: 16px;
  color: var(--Color_White);
  line-height: 1.8;
}
@media screen and (min-width: 785px) {
  aside.menu .menu_dedicated .dedicated {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
aside.menu .menu_dedicated .dedicated .btn-entry_activity,
aside.menu .menu_dedicated .dedicated .btn-modify_activity {
  font-size: 16px;
  line-height: 1.8;
  color: var(--Color_White);
}
aside.menu .menu_dedicated .dedicated .btn-entry_activity:before,
aside.menu .menu_dedicated .dedicated .btn-modify_activity:before {
  top: calc(0.8em - 3.5px);
  left: -0.7em;
}
@media screen and (max-width: 750px) {
  .photo-index > .inner > a {
    pointer-events: none;
  }
}
