html {
  overflow-y: scroll;
  font-size: 62.5%;
}

:root {
  --MainColor: rgba(0, 98, 152, 1);
  --SecondColor: rgba(215, 241, 252, 1);
  --BaseFontSizePc: 1.6rem;
  --BaseFontSizeSp: 4.2666vw;
}

body {
  font-family:
    'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo',
    'HG丸ｺﾞｼｯｸM-PRO', 'HGMaruGothicMPRO', 'verdana', sans-serif;
  width: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  margin: 0;
  position: relative;
}

@media (max-width: 768px) {
  body.l {
    display: none;
  }
}

a {
  text-decoration: none;
  transition: all 0.2s ease-out;
  text-decoration: none;
  cursor: pointer;
}

.l a:hover {
  transition: all 0.2s ease-out;
  opacity: 0.7;
}

ol,
ul,
li {
  list-style: none;
  padding: 0;
}

img {
  max-width: 100%;
  width: 100%;
  height: auto;
}

.l ._pc {
  display: block;
}

._pc {
  display: none;
}

.l ._sp {
  display: none;
}

._sp {
  display: block;
}

/* ================================
        Layout
================================ */
.Center {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2.6666vw;
  padding-right: 2.6666vw;
  max-width: 1020px;
  position: relative;
}

.l .Center {
  padding-left: 20px;
  padding-right: 20px;
}

.CommonList li {
  font-size: 3.2vw;
  padding-bottom: 1.06vw;
}

.l .CommonList li {
  font-size: 1.4rem;
  padding-bottom: 10px;
}

/* ================================
        Button
================================ */
.CommonBtn {
  max-width: 64vw;
  margin-inline: auto;
}

.l .CommonBtn {
  max-width: 342px;
}

/* ================================
        Mv
================================ */
.Mv {
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 1) 0%,
    rgba(255, 255, 255, 1) 70%,
    rgba(215, 241, 252, 1) 70%,
    rgba(215, 241, 252, 1) 100%
  );
  position: relative;
}

.MvKey {
  width: 100%;
  aspect-ratio: 750 / 970;
  background-image: url(../img/mv-key.png?r2);
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
}

.l .MvKey {
  width: 100%;
  aspect-ratio: 1440 / 740;
  background-image: url(../img/mv-key-pc.png?r2);
}

.Mv h1 {
  max-width: 100vw;
  padding-top: 1.6vw;
}

.l .Mv h1 {
  width: clamp(585px, 34.896px + 71.535vw, 1065px);
  margin: 0 auto;
  padding-top: 0;
}

.MvCopy {
  width: 100%;
  aspect-ratio: 750 / 460;
  background-image: url(../img/mv-copy-bg.png);
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  flex-direction: column;
}

.l .MvCopy {
  width: 100%;
  aspect-ratio: 1440 / 408;
  background-image: url(../img/mv-copy-bg-pc.png);
}

.MvCopyMain {
  max-width: 80vw;
  padding-bottom: 4vw;
}

.l .MvCopyMain {
  max-width: 53vw;
  margin: 0 auto;
  padding-bottom: max(10px, 0.6944vw);
}

.MvCopySub {
  color: var(--MainColor);
  font-size: 7.466vw;
  font-style: italic;
  font-weight: 900;
  padding-bottom: 3.7333vw;
  text-align: center;
  line-height: 1.2;
}

.l .MvCopySub {
  font-size: max(4.5rem, 3.125vw);
  padding-bottom: min(100px, 6.944vw);
}

.MvCopySub span {
  position: relative;
  display: inline-block;
}

.MvCopySub span::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 92vw;
  height: 15.2vw;
  background: url(../img/mv-sub-before.png) center no-repeat;
  background-size: 100%;
}

.l .MvCopySub span::before {
  width: max(552px, 38.333vw);
  height: max(91px, 6.3194vw);
  margin-top: 10px;
}

.MvPurchase {
  max-width: 30vw;
  position: fixed;
  bottom: 5.333vw;
  right: 2.1333vw;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.5s ease,
    visibility 0.5s ease;
}

.l .MvPurchase {
  width: clamp(180px, 160.678px + 2.513vw, 225px);
  bottom: 30px;
  right: 6.25vw;
}

.MvPurchase.is-show {
  opacity: 1;
  visibility: visible;
}

.l .MvPurchase a {
  display: inline-block;
  transition: 0.5s;
}

.l .MvPurchase a:hover {
  opacity: 1;
  transform: scale(1.2);
}

/* ================================
        Lead
================================ */
.Lead {
  padding: 8vw 4vw 21.333vw;
  background: var(--SecondColor);
  font-size: 3.733vw;
}

.l .Lead {
  padding: min(80px, 5.555vw) min(85px, 5.9vw) min(156px, 10.83vw);
  font-size: 2.4rem;
}

.Lead h2 {
  width: 100%;
  max-width: 93.866vw;
  margin: 0 auto;
  padding-bottom: 10.666vw;
}

.Lead h2 {
  max-width: 821px;
  padding-bottom: min(75px, 5.2083vw);
}

.LeadText {
  font-weight: 500;
  text-align: justify;
  letter-spacing: -0.2px;
  text-align: center;
  line-height: 1.9;
}

.LeadText ._blue {
  color: var(--MainColor);
}

.LeadText ._large {
  font-size: 4.8vw;
}

.l .LeadText ._large {
  font-size: 3.2rem;
}

.LeadPop {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  height: 18vw;
  margin: 8vw 0;
}

.l .LeadPop {
  height: auto;
  margin: 80px 0 min(80px, 5.555vw);
}

.LeadPop li {
  max-width: 48.8vw;
}

.l .LeadPop li {
  max-width: 421px;
}

.LeadPop li:nth-of-type(1) {
  transform: translate(2.6666vw, -5.3333vw);
  z-index: 2;
  margin-left: -3vw;
}

.l .LeadPop li:nth-of-type(1) {
  transform: translate(18px, -40px);
  margin-left: -18px;
}

.LeadPop li:nth-of-type(2) {
  transform: translateX(-2.6666vw);
  z-index: 1;
  margin-right: -3vw;
}

.l .LeadPop li:nth-of-type(2) {
  transform: translateX(-18px);
  margin-right: -18px;
}

.Lead h3 {
  text-align: center;
  color: var(--MainColor);
  font-size: 5.6vw;
  font-weight: 900;
  padding-bottom: 3.7333vw;
}

.l .Lead h3 {
  font-size: 3.6rem;
  padding-bottom: 20px;
}

.Lead h3 span {
  position: relative;
  display: inline-block;
}

.Lead h3 span::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto;
  width: 38.266vw;
  height: 7.066vw;
  background: url(../img/lead-h3-before.png) center no-repeat;
  background-size: 100%;
}

.l .Lead h3 span::before {
  width: 250px;
  height: 47px;
}

.LeadSale {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 2.4vw;
}

.l .LeadSale {
  gap: 40px;
}

.LeadSale li {
  max-width: 31.733vw;
}

.l .LeadSale li {
  max-width: 237px;
}

/* ================================
        Point
================================ */
.Point {
  padding: 16vw 0 23.333vw;
  font-size: 3.733vw;
  position: relative;
}

.l .Point {
  padding: 110px 0 145px;
  font-size: 1.8rem;
}

.Point h2 {
  width: 100%;
  max-width: 93.866vw;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -45%);
}

.l .Point h2 {
  max-width: 821px;
}

.PointInner {
  padding: 0 4.8vw;
}

.l .PointInner {
  padding: 0 60px;
}

.PointBg {
  background: var(--SecondColor);
  padding: 6.666vw 5.3333vw 8vw 5.3333vw;
}

.l .PointBg {
  padding: 56px 25px 80px 25px;
}

.PointItem {
  padding-bottom: 13.333vw;
}

.l .PointItem {
  padding-bottom: min(110px, 7.638vw);
}

.PointItem._fourth {
  padding-bottom: 0;
}

.PointItem h3 {
  font-size: 5.866vw;
  font-weight: 700;
  color: var(--MainColor);
  font-style: italic;
  line-height: 1.4;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 4vw;
}

.l .PointItem h3 {
  font-size: 4rem;
  gap: 20px;
  padding-bottom: 25px;
}

.PointItem h3 span {
  font-size: 5.066vw;
}

.l .PointItem h3 span {
  font-size: 3.4rem;
}

.PointItem h3 > div {
  flex: 1;
}

.PointItem h3 p {
  max-width: 18.93vw;
}

.l .PointItem h3 p {
  max-width: 142px;
}

.PointItem._first h3 p {
  max-width: 16vw;
}

.l .PointItem._first h3 p {
  max-width: 110px;
}

.PointItem._first h3,
.PointItem._third h3 {
  transform: translateX(-8.82vw);
}

.l .PointItem._first h3,
.l .PointItem._third h3 {
  transform: translateX(-80px);
}

.PointItem._second h3,
.PointItem._fourth h3 {
  transform: translateX(8.82vw);
}

.l .PointItem._second h3,
.l .PointItem._fourth h3 {
  transform: translateX(80px);
}

.PointItem._second h3 > div {
  margin-left: -12vw;
  text-align: right;
}

.l .PointItem._second h3 > div {
  margin-left: -160px;
}

.PointItem._fourth h3 > div {
  margin-left: -13vw;
  text-align: right;
}

.PointInfo {
  display: contents;
}

.l .PointInfo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.PointImg {
  padding: 4vw 0;
  margin: 0 -8.82vw;
}

.l .PointImg {
  padding: 0;
  margin: 0 -40px;
  flex: 0 1 480px;
}

.l .PointItem._first .PointImg,
.l .PointItem._third .PointImg {
  order: 2;
  transform: translateX(40px);
}

.l .PointItem._second .PointImg,
.l .PointItem._fourth .PointImg {
  order: 1;
  transform: translateX(-40px);
}

.PointText {
  font-weight: 500;
  text-align: justify;
  letter-spacing: -0.2px;
}

.l .PointText {
  flex: 0 1 360px;
  line-height: 1.8;
}

.l .PointItem._first .PointText,
.l .PointItem._third .PointText {
  order: 1;
}

.l .PointItem._second .PointText,
.l .PointItem._fourth .PointText {
  order: 2;
}

.PointText span {
  color: var(--MainColor);
}

/* ================================
        SpotGuide
================================ */
.SpotGuide {
  padding: 11.2vw 0 20vw;
  background: var(--SecondColor);
  position: relative;
}

.l .SpotGuide {
  padding: 100px 0 170px;
}

.SpotGuide h2 {
  width: 100%;
  max-width: 93.866vw;
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  transform: translate(-50%, -65%);
}

.l .SpotGuide h2 {
  max-width: 827px;
}

.SpotGuide h3 {
  margin: 0 auto;
  padding-bottom: 5.3333vw;
}

.l .SpotGuide h3 {
  padding-bottom: 48px;
}

.SpotGuideLead {
  font-size: var(--BaseFontSizeSp);
  color: var(--MainColor);
  font-weight: 700;
  text-align: center;
  position: relative;
  margin-bottom: 8vw;
}

.l .SpotGuideLead {
  font-size: 2.4rem;
  margin-bottom: min(80px, 5.555vw);
}

.SpotGuideLead::before {
  content: '';
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  aspect-ratio: 750 / 83;
  background: url(../img/spotguide-lead.png) 0 no-repeat;
  background-size: 100%;
}

.l .SpotGuideLead::before {
  max-width: 815px;
  aspect-ratio: 1631 / 162;
  background: url(../img/spotguide-lead-pc.png) 0 no-repeat;
  background-size: 100%;
}

.SpotGuideArea {
  padding-bottom: 10vw;
  text-align: center;
}

.l .SpotGuideArea {
  padding-bottom: 80px;
  max-width: 1485px;
  margin: 0 auto;
}

.SpotGuideArea._entrance {
  padding-bottom: 0;
}

.SpotGuideArea._gourmet h3 {
  max-width: 22vw;
}

.l .SpotGuideArea._gourmet h3 {
  max-width: 133px;
}

.SpotGuideArea._standingarea h3 {
  max-width: 55vw;
}

.l .SpotGuideArea._standingarea h3 {
  max-width: 353px;
}

.SpotGuideArea._activity h3 {
  max-width: 50.93vw;
}

.l .SpotGuideArea._activity h3 {
  max-width: 305px;
}

.SpotGuideArea._entrance h3 {
  max-width: 36.09vw;
  padding-bottom: 0;
}

.l .SpotGuideArea._entrance h3 {
  max-width: 221.5px;
}

.SpotGuideArea._entrance p {
  font-size: 3.7333vw;
  font-size: 3.7333vw;
  padding-bottom: 5.3333vw;
  padding-top: 2.6666vw;
}

.l .SpotGuideArea._entrance p {
  font-size: 1.7rem;
  padding-bottom: 48px;
  padding-top: 15px;
}

.SpotGuideBoxText {
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  margin: 0 -8.6666vw;
}

.l .SpotGuideBoxText {
  margin: 0 -212px;
}

.SpotGuideBoxText h4 {
  color: var(--MainColor);
  font-size: var(--BaseFontSizeSp);
  font-weight: 700;
  padding-bottom: 2.6666vw;
  padding-top: 5.3333vw;
  text-align: center;
}

.l .SpotGuideBoxText h4 {
  font-size: 2.4rem;
  padding-bottom: 20px;
  padding-top: 40px;
}

.SpotGuideBoxTextArea {
  color: rgba(0, 0, 0, 1);
  background-color: rgba(235, 248, 254, 1);
  padding: 2.6666vw;
  font-size: 3.7333vw;
  font-weight: 400;
  min-height: 121px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.l .SpotGuideBoxTextArea {
  padding: 30px;
  font-size: 1.7rem;
  letter-spacing: -0.2px;
  min-height: 142px;
}

/* ----------
Slider
---------- */
.JsSlider {
  position: relative;
}

.JsSlider.swiper .swiper-slide {
  height: auto !important;
}

.JsSlider .swiper-wrapper {
  display: flex;
  will-change: transform;
  align-items: flex-start;
}

.JsSliderItem {
  width: 77.333vw;
  flex-shrink: 0;
}

.l .JsSliderItem {
  width: 465px;
}

.JsSliderImage {
  position: relative;
}

/* ナビゲーション */
.JsSlider .swiper-button-prev,
.JsSlider .swiper-button-next {
  position: absolute;
  z-index: 2;
  background: none;
  border: none;
  padding: 0;
}

/* .JsSlider .swiper-button-prev img,
.JsSlider .swiper-button-next img {
	width: 9.333vw;
	height: 9.333vw;
	cursor: pointer;
}

.l .JsSlider .swiper-button-prev img,
.l .JsSlider .swiper-button-next img {
	width: 55px;
	height: 55px;
} */

.swiper-button-prev,
.swiper-button-next {
  width: 9.333vw;
  height: 9.333vw;
}

.l .JsSlider .swiper-button-prev,
.l .JsSlider .swiper-button-next {
  width: 55px;
  height: 55px;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  content: none;
}

.swiper-button-prev,
.swiper-button-next {
  transform: translateX(-50%);
}

/* ----------
Accordion
---------- */
.SpotGuideAccordion {
  margin-inline: auto;
  margin-block: 5.333vw;
}

.l .SpotGuideAccordion {
  max-width: 810px;
  margin-block: 30px;
}

.SpotGuideAccordion > li {
  display: block;
  font-size: var(--BaseFontSizeSp);
  box-shadow: 0 8px 14px rgba(53, 53, 53, 0.12);
}

.SpotGuideAccordionTitle {
  font-size: 4.266vw;
  background-color: var(--MainColor);
  color: rgba(255, 255, 255, 1);
  position: relative;
  padding: 5.3333vw 4vw;
  font-weight: 700;
  display: flex;
  align-items: center;
}

.l .SpotGuideAccordionTitle {
  font-size: 2.4rem;
  padding: 22px 36px;
  line-height: 1.2;
}

.l .SpotGuideAccordionTitle:hover {
  cursor: pointer;
}

.SpotGuideAccordionTitle::after {
  border-right: solid 2px rgba(255, 255, 255, 1);
  border-top: solid 2px rgba(255, 255, 255, 1);
  content: '';
  display: block;
  position: absolute;
  right: 4vw;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 2.6666vw;
  width: 2.6666vw;
  transform: rotate(135deg);
  transition:
    transform 0.3s ease-in-out,
    top 0.3s ease-in-out;
  line-height: 1;
}

.l .SpotGuideAccordionTitle::after {
  border-right: solid 3px rgba(255, 255, 255, 1);
  border-top: solid 3px rgba(255, 255, 255, 1);
  right: 40px;
  height: 15px;
  width: 15px;
}

.SpotGuideAccordionTitle._open::after {
  transform: rotate(-45deg);
}

.SpotGuideAccordionContent {
  display: none;
}

.SpotGuideAccordionContentInner {
  text-align: left;
  gap: 3.466vw;
  padding: 5.33vw 4vw 6vw;
  font-size: 3.733vw;
  font-weight: 400;
  background: rgba(255, 255, 255, 1);
}

.l .SpotGuideAccordionContentInner {
  padding: 40px 32px;
  font-size: var(--BaseFontSizePc);
}

.SpotGuidePrice {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 2.533vw;
  margin-bottom: 4.8vw;
}

.l .SpotGuidePrice {
  flex-direction: row;
  gap: 23px;
  margin-bottom: 30px;
}

.SpotGuidePrice li {
  border: 1px solid var(--MainColor);
  border-radius: 5px;
  font-size: 3.73vw;
  text-align: center;
  flex: none;
  width: 100%;
}

.l .SpotGuidePrice li {
  font-size: clamp(16px, 13.71px + 0.2981vw, 18px);
  flex: 0 1 360px;
}

.SpotGuidePrice li span {
  font-size: clamp(13px, 11.85px + 0.149vw, 14px);
}

.SpotGuidePriceTitle {
  background-color: var(--MainColor);
  color: rgba(255, 255, 255, 1);
  padding: 1.06vw;
}

.l .SpotGuidePriceTitle {
  padding: 10px;
}

.SpotGuidePriceInfo {
  background-color: rgba(235, 248, 254, 1);
  border-radius: 5px;
  padding: 20px 10px;
}

.SpotGuideTextLink a {
  display: inline-block;
  font-size: 3.73vw;
  color: var(--MainColor);
  position: relative;
  padding-right: 20px;
  border-bottom: 2px solid var(--MainColor);
  margin-top: 4vw;
}

.l .SpotGuideTextLink a {
  font-size: 1.8rem;
  margin-top: 5px;
}

.SpotGuideTextLink a:after {
  content: '';
  width: 2.4vw;
  height: 2.4vw;
  border-top: 2px solid var(--MainColor);
  border-right: 2px solid var(--MainColor);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 2px;
  transform: translateY(-52%) rotate(45deg);
}

.l .SpotGuideTextLink a:after {
  width: 8px;
  height: 8px;
}

.SpotGuideTextLink a:hover {
  opacity: 1;
  border-bottom: none;
}

/* ----------
Table
---------- */

.CommonTable {
  width: 100%;
  margin-inline: auto;
  background: rgba(255, 255, 255, 1);
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  font-size: 3.2vw;
  border-collapse: collapse;
  border-spacing: 0;
  text-align: left;
}

.l .CommonTable {
  max-width: 810px;
  font-size: clamp(16px, 13.71px + 0.2981vw, 18px);
}

.CommonTable tr > * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 3.2vw 2.4vw;
  vertical-align: middle;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
}

.l .CommonTable tr > * {
  padding: 15px 20px;
}

.CommonTable th {
  background: var(--MainColor);
  color: rgba(255, 255, 255, 1);
  font-weight: 400;
}

.CommonTable td {
  text-align: center;
}

.CommonTable th:nth-child(1),
.CommonTable td:nth-child(1) {
  width: 40%;
}

.CommonTable th:nth-child(2),
.CommonTable td:nth-child(2) {
  width: 30%;
  text-align: center;
}

.CommonTable th:nth-child(3),
.CommonTable td:nth-child(3) {
  width: 30%;
  text-align: center;
}

/* ================================
        Faq
================================ */
.Faq {
  padding: 18.66vw 0 16vw;
}

.l .Faq {
  padding: min(110px, 14.3vw) 0;
}

.Faq h2 {
  width: 100%;
  max-width: 93.866vw;
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  transform: translate(-50%, -100%);
  padding-bottom: 10.666vw;
}

.l .Faq h2 {
  max-width: 821px;
  padding-bottom: 66px;
}

.l .FaqAccordion {
  padding: 0 min(85px, 5.9vw);
}

.FaqAccordion li {
  margin-bottom: 4vw;
  display: block;
  font-size: var(--BaseFontSizeSp);
  box-shadow: 0 8px 14px rgba(53, 53, 53, 0.12);
}

.l .FaqAccordion li {
  margin-bottom: 20px;
}

.FaqAccordion li:last-child {
  margin-bottom: 0;
}

.FaqAccordion span {
  font-size: 7.466vw;
  font-weight: 700;
  font-family: 'Roboto';
}

.l .FaqAccordion span {
  font-size: 3.2rem;
}

.FaqAccordionTitle {
  font-size: 4.266vw;
  background-color: var(--MainColor);
  color: rgba(255, 255, 255, 1);
  position: relative;
  padding: 5.3333vw 10vw 5.3333vw 4vw;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 3.466vw;
}

.l .FaqAccordionTitle {
  font-size: 2rem;
  padding: 15px 80px 15px 40px;
  gap: 28px;
  line-height: 1.4;
}

.l .FaqAccordionTitle:hover {
  cursor: pointer;
}

.FaqAccordionTitle::after {
  border-right: solid 2px rgba(255, 255, 255, 1);
  border-top: solid 2px rgba(255, 255, 255, 1);
  content: '';
  display: block;
  position: absolute;
  right: 4vw;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 2.6666vw;
  width: 2.6666vw;
  transform: rotate(135deg);
  transition:
    transform 0.3s ease-in-out,
    top 0.3s ease-in-out;
  line-height: 1;
}

.l .FaqAccordionTitle::after {
  border-right: solid 3px rgba(255, 255, 255, 1);
  border-top: solid 3px rgba(255, 255, 255, 1);
  right: 40px;
  height: 15px;
  width: 15px;
}

.FaqAccordionTitle._open::after {
  transform: rotate(-45deg);
}

.FaqAccordionContent {
  display: none;
}

.FaqAccordionContentInner {
  display: flex;
  align-items: center;
  gap: 3.466vw;
  padding: 2.6666vw 4vw;
  color: var(--MainColor);
  font-size: 3.733vw;
  font-weight: 400;
}

.l .FaqAccordionContentInner {
  gap: 28px;
  padding: 15px 40px;
  font-size: var(--BaseFontSizePc);
}

.FaqAccordionContentInner a {
  text-decoration: underline;
  color: inherit;
}

.FaqAccordionContentInner a:hover {
  text-decoration: none;
  opacity: 1;
}

/* ================================
        Footer
================================ */
.Footer {
  background: rgba(0, 0, 0, 1);
  color: rgba(255, 255, 255, 1);
  font-family: Arial, Helvetica, sans-serif;
  padding: 5.866vw 0 17.333vw;
  text-align: center;
}

.l .Footer {
  padding: 40px 0 25px;
}

.FooterShareInner {
  display: contents;
}

.l .FooterShareInner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding-bottom: 40px;
}

.Footer h2 {
  font-family: 'Teko', sans-serif;
  font-weight: 400;
  font-size: 12vw;
  padding-bottom: 5.3333vw;
  line-height: 1;
}

.l .Footer h2 {
  font-size: 5.1rem;
  padding-bottom: 0;
}

.Footer ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2.6666vw;
}

.l .Footer ul {
  gap: 10px;
}

.FooterShareArea {
  padding-bottom: 5.866vw;
}

.l .FooterShareArea {
  padding-bottom: 0;
}

.FooterShare li:nth-of-type(1) {
  font-size: 4.2666vw;
}

.l .FooterShare li:nth-of-type(1) {
  font-size: 2.2rem;
}

.FooterShare li:nth-of-type(2),
.FooterShare li:nth-of-type(3) {
  max-width: 10.666vw;
}

.l .FooterShare li:nth-of-type(2),
.l .FooterShare li:nth-of-type(3) {
  max-width: 55px;
}

.FooterSNSArea {
  background: rgba(255, 255, 255, 1);
  padding: 2vw 0;
}

.l .FooterSNSArea {
  padding: 20px 0;
}

.FooterSNS li {
  max-width: 9.333vw;
}

.l .FooterSNS li {
  max-width: 50px;
}

.FooterLogoArea {
  padding-top: 5.3333vw;
  font-size: 1.866vw;
}

.l .FooterLogoArea {
  padding-top: 40px;
  font-size: 1.4rem;
}

.FooterLogoArea div {
  max-width: 35.733vw;
  margin: 0 auto;
  padding-bottom: 2.6666vw;
}

.l .FooterLogoArea div {
  max-width: 260px;
  padding-bottom: 30px;
}
