@charset "utf-8";
/* CSS Document */
/*=================== モバイルファースト ==================*/
/**************************************************
* 共通（レイアウト・テキスト・見出し・ボタン・ヘッダー・フッター・ぱんくず・その他)
***************************************************/
/*------------------------------
 googlefont ※変更不可
------------------------------*/
body {
  font-family: "Noto Sans JP", sans-serif;
}
/*英字用フォント　schibsted-grotesk*/
.en-font-schibsted-grotesk {
  font-family: "Schibsted Grotesk", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}
/*------------------------------
 変数設定 ※変更不可
------------------------------*/
/*
:root{
	--main-black:#1F1F1F;
	--main-yellow:#FCE62F;
	--main-orange:#FAAC2D;
	--main-gray:#959595;
	--main-light-gray:#F5F5F5;
	--main-gradation: linear-gradient(135deg, var(--main-yellow) 0%, var(--main-orange) 100%) fixed;
}
*/
/*------------------------------
カラー ※変更不可
------------------------------*/
html, #container {
  background-color: #F5F5F5;
}
.bg-color--main-yellow {
  background-color: #FCE62F;
}
.bg-color--main-orange {
  background-color: #FAAC2D;
}
.bg-color--white {
  background: #fff;
}
.bg-color--black {
  background-color: #1F1F1F;
}
.bg-color--gray {
  background-color: #959595;
}
.bg-color--light-gray {
  background-color: #F5F5F5;
}
.bg-color--light-gray02 {
  background-color: #EAEAEA;
}
.text-color--main-yellow {
  color: #FCE62F;
}
.text-color--main-orange {
  color: #FAAC2D;
}
.text-color--white {
  color: #fff;
}
.text-color--black {
  color: #1F1F1F;
}
.text-color--gray {
  color: #959595;
}
.text-color--light-gray {
  color: #F5F5F5;
}
.text-color--red {
  color: #FF6767;
}
.text-color--red02 {
  color: #F85151
}
/*------------------------------
レイアウト ※変更不可
------------------------------*/
.sp {
  display: block;
}
.tb {
  display: none;
}
.pc {
  display: none;
}
#container {
  margin: 0;
  padding: 0;
}
/*内容が少ないページの時のfooterの高さ保持
#containerにfonnterを内包*/
#container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
#footer {
  margin-top: auto;
}
/*footerの高さ保持ここまで*/
/*wrap共通*/
.wrap-inner--l, .wrap-inner--m, .wrap-inner--s {
  margin: 0 auto;
}
.wrap-inner {
  margin-bottom: 50px;
}
.wrap-inner--l {
  width: 100%;
}
.wrap-inner--m {
  width: 92%;
  max-width: 1300px;
}
.wrap-inner--s {
  width: 82%;
  max-width: 1000px;
}
.max-width-760 {
  max-width: 760px;
  margin: auto;
}
.flex-box {
  display: flex;
  flex-wrap: wrap;
}
.mb-xxlarge {
  margin-bottom: 50px;
}
.mb-xlarge {
  margin-bottom: 40px;
}
.mb-large {
  margin-bottom: 30px;
}
.mb-medium {
  margin-bottom: 20px;
}
.mb-small {
  margin-bottom: 10px;
}
.mb-ss {
  margin-bottom: 10px;
} /*SP,PC10px*/
.mt-xxlarge {
  margin-top: 50px;
}
.mt-xlarge {
  margin-top: 40px;
}
.mt-medium {
  margin-top: 20px;
}
.mt-small {
  margin-top: 10px;
}
.ml-0 {
  margin-left: 0 !important;
}
/*------------------------------
見出し h1-h6 ※変更不可
------------------------------*/
h1, h2, h3, h4, h5, h6 {
  line-height: 1.7;
  font-weight: normal;
}
h1 {
  font-size: 3.6rem;
}
h2 {
  font-size: 2.8rem;
}
h3 {
  font-size: 2.6rem;
}
h4 {
  font-size: 2.4rem;
}
h5 {
  font-size: 2.2rem;
}
h6 {
  font-size: 2rem;
}
/*------------------------------
テキスト ※変更不可
------------------------------*/
p, a, li, th, td, dt, dd {
  font-size: 1.6rem;
  line-height: 1.7;
}
.font--l {
  font-size: 2rem;
}
.font--m {
  font-size: 1.8rem;
}
.font--s {
  font-size: 1.4rem;
}
.note {
  font-size: 1.1rem;
}
/*文字太さ*/
.font-weight--bold {
  font-weight: bold;
}
.font-weight--even-thicker {
  font-weight: 900;
}
.font-weight--thick {
  font-weight: 600;
}
.font-weight--medium-thick {
  font-weight: 500;
}
.note {
  padding-left: 1em;
  text-indent: -1em;
}
.note::before {
  content: "※";
}
.text-center {
  text-align: center;
}
/*------------------------------
見出し (TOP・下層) ※変更不可
------------------------------*/
.heading-ttl__even-bigger {
  font-size: 2.6rem;
}
.heading-ttl__bigger {
  font-size: 2.4rem;
}
.heading-ttl__large {
  font-size: 2rem;
}
.heading-ttl__midium {
  font-size: 1.9rem;
}
.heading-ttl__small {
  font-size: 1.4rem;
}
.heading-ttl__even-smaller {
  font-size: 1.2rem;
}
/*------------------------------
装飾 ※変更不可
------------------------------*/
/*水平ライン*/
.horizontal-line {}
/*右側にライン*/
.right-side-line {
  display: flex;
  align-items: center;
  margin-left: 4%;
  line-height: 1.2;
}
.right-side-line::after {
  margin-left: 12px;
}
.right-side-line::after {
  background-color: #959595;
  content: "";
  flex-grow: 1;
  height: 1px;
}
.ttl-border {
  padding: 40px 0;
  border-bottom: 1px solid #EAEAEA;
}
/*テキスト強調*/
.text-emphasis--black {
  color: #fff;
  background: #1F1F1F;
  padding: 0 3px;
}
.text-emphasis--white {
  background: #FFF;
  padding: 0 3px;
}
.text-emphasis--yellow {
  background: #FCE62F;
  padding: 0 3px;
}
/*デカ英字*/
.en-heading {
  font-size: 1.6rem;
  position: relative;
  display: inline-block;
  padding-left: 1.3em;
}
.en-heading::before {
  content: '';
  position: absolute;
  top: 6px;
  left: 0px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #FCE62F;
}
.en-heading::after {
  display: block;
  content: attr(en-heading);
  font-weight: 900;
  font-family: "Schibsted Grotesk", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-size: 4rem;
  line-height: 1;
  margin-left: -23px;
}
/*------------------------------
ボタン  ※変更不可
------------------------------*/
/* 共通 */
.btn a,
.p-area-search .btn button{
  transition: 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-area-search .btn button{
  border: none;
  width: 140px;
  font-size: 1.6rem;
  line-height: 1.7;
}
.btn-size--l {
  max-width: 260px;
  padding: 6px 20px;
}
.btn-size--m {
  max-width: 200px;
  padding: 6px 20px;
}
.btn-size--s {
  max-width: 140px;
  padding: 6px 20px;
}
.btn--gray {
  color: #1F1F1F;
  background-color: #F5F5F5;
  border: 1px solid #1F1F1F;
  transition: 0.3s;
}
.btn--gray:hover {
  color: #fff;
  background-color: #1F1F1F;
  border: 1px solid #1F1F1F;
  opacity: 1;
}
.btn--yellow {
  color: #1F1F1F;
  background-color: #fff;
  border: 1px solid #1F1F1F;
  transition: 0.3s;
}
.btn--yellow:hover {
  color: #1F1F1F;
  background-color: #FCE62F;
  border: solid 1px #FCE62F;
  border: 1px solid #1F1F1F;
  opacity: 1;
}
.btn--white {
  color: #1F1F1F;
  background-color: #FCE62F;
  cursor: pointer;
  transition: 0.3s;
}
.btn--white:hover {
  color: #1F1F1F;
  background-color: #fff;
  border: 1px solid #1F1F1F;
  opacity: 1;
}
.btn--white2 {
  color: #1F1F1F;
  background-color: #FFF;
  border: 1px solid #1F1F1F;
  cursor: pointer;
  transition: 0.3s;
}
.btn--white2:hover {
  background-color: #FCE62F;
  opacity: 1;
}
.btn--gradation {
  color: #1F1F1F;
  background-image: linear-gradient(120deg, #FCE62F, #EADA58 32.45%, #FAAC2D);
  border: 1px solid #FCE62F;
}
.btn--gradation:hover {
  opacity: 0.7;
}
.btn--radius {
  border-radius: 100vh;
}
.btn--center {
  margin: auto;
}
.btn--border-top {
  border-top: solid 1px #959595;
  padding-top: 4rem;
}
/* 店舗詳細　店舗情報のマップ用 */
.btn--map {
  position: relative;
  display: block;
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  background-color: #FCE62F;
  border: 2px solid #FCE62F;
  border-radius: 100vh;
  padding: 8px 10px;
  transition: .3s;
  opacity: 1 !important;
}
.btn--map:hover {
  background-color: #F5F5F5;
  transition: .3s;
}
.btn--map::before {
  content: '';
  display: inline-block;
  width: 25px;
  height: 25px;
  margin-right: 5px;
}
.btn--map-keiro::before {
  background-image: url("../images/common/icon-map-keiro.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.btn--map-large::before {
  background-image: url("../images/common/icon-map-large.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.learn-more {
  position: relative;
}
.learn-more {
  /* width: 13rem;*/
  width: 9rem;
  height: auto;
  display: block;
  margin-left: auto;
}
.learn-more .circle {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: relative;
  display: block;
  margin: 0;
  width: 3rem;
  height: 3rem;
  background: #FCE62F;
  border-radius: 1.625rem;
}
.learn-more .circle .icon {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background: #1F1F1F;
}
.learn-more .circle .icon.arrow {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  left: 0.625rem;
  width: 1.125rem;
  height: 0.125rem;
  background: none;
}
.learn-more .circle .icon.arrow::before {
  position: absolute;
  content: "";
  top: -0.29rem;
  right: 0.0625rem;
  width: 0.625rem;
  height: 0.625rem;
  border-top: 0.125rem solid #1F1F1F;
  border-right: 0.125rem solid #1F1F1F;
  transform: rotate(45deg);
}
.learn-more .button-text {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 50%;
  left: 20px;
  right: 0;
  transform: translateY(-50%);
  /* padding: 0.8rem 0;*/
  /*  margin: 0 0 0 .8rem;*/
  text-align: center;
  text-transform: uppercase;
}
.learn-more:hover .circle {
  width: 100%;
}
.learn-more:hover .circle .icon.arrow {
  /*  background: #1F1F1F;*/
  transform: translate(1rem, 0);
}
.learn-more:hover .button-text {
  color: #1F1F1F;
}
/* 画像ホバー時 */
.hover-range-extension-parent:hover .learn-more .circle {
  width: 100%;
}
.hover-range-extension-parent:hover .learn-more .circle .icon.arrow {
  /*  background: #1F1F1F;*/
  transform: translate(1rem, 0);
}

/* 枠線黒 */
.learn-more--black {
  width: 83%;
  border: 1px solid #1F1F1F;
  border-radius: 100vh;
  max-width: 330px;
  padding: 10px 10px;
  margin: auto;
}
@media screen and (max-width: 375px) {
  .btn--map {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 320px) {
  .btn--map {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .btn--map::before {
    width: 18px;
    height: 18px;
  }
}
/*------------------------------
Loopテキスト
------------------------------*/
.loop {
  overflow: hidden;
}
.loop-wrap {
  display: flex;
  width: 100%;
  transform: translateX(100%);
  animation: loop 16s linear infinite;
}
.loop-wrap__item {
  display: flex;
  margin-right: 6px;
}
@keyframes loop {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
.loop-wrap__item img {
  max-width: 400px;
  display: inline-block;
}
/*------------------------------
.card
------------------------------*/
.card__item {
  background: #fff;
  border-radius: 8px;
  padding: 12px 16px;
  display: flex;
  flex-direction: column;
}
.card__item-point {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.5em;
}
.card__item-ttl {
  text-align: center;
  margin: .8em auto;
}
.card__item-text-box {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}
.card__item-text {
  flex: 1 auto;
  margin-bottom: .5em;
}
.card__item {
  height: 100%;
}
.card__item:hover .card__item-btn .circle {
  width: 100%;
}
.card__item:hover .card__item-btn .circle .icon.arrow {
  /*  background: #1F1F1F;*/
  transform: translate(1rem, 0);
}


/**************************************************
* ※付きのテキスト
***************************************************/
.kome-text {
  position: relative;
  margin-left: 20px;
}
.kome-text:before {
  content: "※";
  position: relative;
  display: inline-block;
  margin-left: -14px;
}
/*------------------------------
swiper-scrollbar
------------------------------*/
.swiper-scrollbar {
  background-color: #D8D8D8;
  height: 3px;
  width: 100%;
}
.swiper-scrollbar-drag {
  background-color: #959595;
  height: 3px;
}
/*------------------------------
マイゴルAPP　.mygol-app-wrap
------------------------------*/
.mygol-app-wrap__ttl span {
  background: #FAAC2D;
  color: #fff;
  padding: 0 5px;
}
.mygol-app-wrap__logo {
  max-width: 300px;
  width: 70%;
  margin: 1em 0;
}
.mygol-app-wrap__ttl {
  font-size: 2rem;
}
.mygol-app-wrap__read {
  font-size: 2.2rem;
  margin-bottom: 1em;
}
.mygol-app-wrap__text {
  color: #959595;
  font-size: 1.4rem;
}
.mygol-app-wrap__swiper .swiper {
  padding: 2em;
}
/*
.swiper-pagination{
	margin: 1em auto;	
}
*/
/* ページネーションの余白 */
.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  margin: 0 0 0 10px;
  background: #333;
}
.swiper-pagination-bullet:first-child {
  margin: 0;
}
/*------------------------------
アプリボタン .app-link
------------------------------*/
.app-link__item {
  padding: 1em 12px;
}
.app-link__item--apple {
  width: 45%;
}
.app-link__item--google {
  width: 53%;
}
/*=================== 共通 /ヘッダー/フッター 320用 ==================*/
@media screen and (max-width: 320px) {}
/**************************************************
* TOP
***************************************************/
/*------------------------------
共通レイアウト 
------------------------------*/
/*見出しの左位置ずらし*/
.heading-txt-block {
  margin-left: 5%;
  margin-top: 20px;
  margin-bottom: 40px;
}
.heading-txt-block--bottom-s {
  margin-bottom: 20px;
}
.heading-txt-block p {
  margin-top: 10px;
}
/*コンテンツの余白*/
.about-mygol {
  padding-top: 2em;
  padding-bottom: 1em;
}
.service, .video, .faq, .column, .top-merit, .features {
  padding-top: 3em;
  padding-bottom: 1em;
}
.news {
  padding-bottom: 1em;
  border-bottom: #fff 5em solid;
}
.column-wrap, .news-wrap {
  margin-bottom: 1.5em;
}
/*------------------------------
.first-view
------------------------------*/
.first-view {
  position: relative;
}
.first-view__catch-copy {
  font-size: 3rem;
  font-weight: 600;
  line-height: 1.3;
}
/*文字反転*/
.text-inversion {
  color: rgb(255, 255, 255);
  position: absolute;
  top: -57px;
  left: 7px;
  z-index: 2;
  mix-blend-mode: difference;
}
.first-view--slider {
  margin-top: 70px;
}
/*------------------------------
about-mygol
------------------------------*/
.about-mygol-wrap {
  justify-content: space-between;
}
/* 一つ目 */
.about-mygol-wrap {
  margin-bottom: 45px;
}
.about-mygol-wrap--first .about-mygol-wrap__text-main {
  font-size: 3rem;
}
.about-mygol-wrap--first .about-mygol-wrap__text-main .text-emphasis--white {
  padding: 0 0 0 10px;
}
/* 二つ目 */
.about-mygol-wrap--second .about-mygol-wrap__text {
  position: relative;
  width: 97%;
  padding: 15px 10px;
  margin: -25px auto auto;
  z-index: 1;
}
.about-mygol-wrap--second .about-mygol-wrap__text-main {
  font-size: 2.4rem;
}
/*------------------------------
マイゴルが選ばれる3つの理由 メリット・デメリット
------------------------------*/
/* タイトル */
.top-merit__title, .top-merit__lead {
  margin-bottom: 30px;
}
.top-merit__title .subttl {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 5px 4% 0;
}

/* アイテム */
.top-merit-list {
  margin-bottom: 50px;
}
.top-merit-list__item {
  margin-bottom: 50px;
}
.top-merit-list__item:last-child {
  margin-bottom: 0;
}
.top-merit-list__item-text {
  margin-bottom: 30px;
}
/* テキスト部分 */
.top-merit-list__title {
  position: relative;
  margin-bottom: 20px;
  line-height: 1.3;
}
.top-merit-list__title .text {
  font-size: 2rem;
  padding: 3px 7px;
}
.top-merit-list__title .no {
  position: relative;
  display: block;
  font-size: 3rem;
  bottom: -4px;
}
/* ポイント */
.top-merit-point__item {
  align-items: center;
  font-size: 1.4rem;
  margin-bottom: 10px;
}
.top-merit-point__item::before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 12px;
  background-image: url(../images/top/con04-point.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin-right: 10px;
}
.top-merit-point__item:last-child {
  margin-bottom: 0;
}
.top-merit-point__item span {
  padding: 3px;
}
.top-merit__link {
  margin-bottom: 60px;
}
.top-merit__link .learn-more .button-text {
  left: 30px;
}

.top-merit-start {
  max-width: 930px;
  justify-content: space-between;
  align-items: center;
  margin: auto;
}
.top-merit-start__img {
  width: 50%;
  margin-left: -1em;
}
.top-merit-start__text {
  width: 50%;
}
/* 

.top-merit-month__img {
  width: 20%;
  max-width: 90px;
}
.top-merit-month__text {
  flex: 1;
}
.top-merit-month-detail__text-lead,
.top-merit-month-detail__text-title {
  font-size: 14px;
} */
/*------------------------------
はじめてのマイゴル
------------------------------*/
.features-wrap {
  width: 95%;
  margin-left: auto;
}
.features-wrap .card {
  display: flex;
}
.features-wrap .card .swiper-slide {
  height: auto;
  margin-bottom: 1.5em;
}
.features-wrap .swiper-scrollbar {
  width: 96%;
}
/*------------------------------
サービスメニュー
------------------------------*/
.service .lead {
  margin-left: 5%;
  margin-top: -20px;
  margin-bottom: 40px;
}

.service-menu__item-ttl {
  margin-top: .8em;
  flex-grow: 1;
  font-size: 1.5rem;
}
.service-menu .flex-box {
  justify-content: space-between;
}
.service-menu__item {
  width: calc(100% / 2 - 10px);
}
.service-menu__item:nth-child(-n+2) {
  margin-bottom: 1.5em;
}
.service-menu__item {
  display: flex;
  flex-direction: column;
}
.service-menu__item .learn-more {
  margin-top: auto;
}
.service-menu__item:hover .service-menu__btn .circle {
  width: 100%;
}
.card__item:hover .service-menu__btn .circle .icon.arrow {
  /*  background: #1F1F1F;*/
  transform: translate(1rem, 0);
}
/*------------------------------
動画
------------------------------*/
.video-box {
  position: relative;
  height: 0;
  width: 100%;
  padding-top: 56%;
}
.video-box video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  /*  height: 100%;*/
}
.video-box02 {
  aspect-ratio: 16 / 9;
  max-width: 800px;
}
.video-box02 video {
  width: 100%;
  height: 100%;
}
/*------------------------------
店舗検索
------------------------------*/
.shop-search {
  position: relative;
}
.shop-search__bg {
  background-image: url("../images/common/shop-search-bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 70px 0px;
  position: relative;
}
.shop-search__bg:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.7);
}
.shop-search__wrap {
  position: relative;
  color: #fff;
}
.shop-search__margin-top {
  margin-top: 2em;
}
.shop-search__btn {
  margin-left: 2%;
}
.shop-search__btn .learn-more {
  margin: inherit;
  margin-right: auto;
  width: 22rem;
  border: 1px solid #fff;
  border-radius: 100vh;
  max-width: 330px;
  padding: 10px 10px;
}
.shop-search__btn .learn-more .button-text {
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  /* padding: 0.8rem 0;*/
  margin: 0 0 0 2rem;
  text-align: center;
  text-transform: uppercase;
}
/*------------------------------
アコーディオン JS
------------------------------*/
/* 必須 */
.acMenu dd {
  display: none;
}
.acMenu dt {
  background-color: #1F1F1F;
  padding: 12px 45px 10px 20px;
  margin: 10px 0 0;
  transition: background .3s ease;
  cursor: pointer;
  position: relative;
  color: #fff;
}
.acMenu dt::before, .acMenu dt::after {
  position: absolute;
  content: '';
  top: 1px;
  right: 20px;
  bottom: 0;
  width: 12px;
  height: 2px;
  margin: auto;
  background: #fff;
}
.acMenu dt::after {
  transform: rotate(-90deg);
  transition: transform 0.3s;
}
.acMenu dt.active::after {
  transform: rotate(0deg);
}
.acMenu dd {
  background-color: #FFF;
  padding: 12px 20px 10px;
}
.acMenu dt span, .acMenu dd span {
  padding-left: 25px;
  position: relative;
}
.acMenu dt span::before {
  position: absolute;
  content: "Q";
  top: 2px;
  left: 0;
  color: #F5F5F5;
  font-size: 17px;
}
.acMenu dd span::before {
  position: absolute;
  content: "A";
  top: 3px;
  left: 0;
  color: #1F1F1F;
  font-size: 17px;
}
/* hover */
.acMenu dt:hover {
  /*  background-color: #959595;*/
  background-color: #E6CE06;
  color: #1F1F1F;
}
/*------------------------------
コラム
------------------------------*/
.column-wrap__list {
  padding: 12px 0;
  transition: background .3s ease;
}
.column-wrap__list dt {
  font-size: 1.3rem;
}
.column-wrap__list:hover {
  background-color: #E6CE06;
}
/*------------------------------
お知らせ
------------------------------*/
.news-wrap__list {
  padding: 10px 8px;
  transition: background .3s ease;
  border-bottom: solid 1px #D9D9D9;
}
.news-wrap__list dt {
  font-size: 1.3rem;
}
.news-wrap__list:hover {
  background-color: #E6CE06;
}


.news-wrap-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.news-wrap-inner dl {
  flex: 1;
}
.news-wrap-inner div {
  width: 65px;
  margin-left: 10px;
}

/*------------------------------
お知らせ　詳細
------------------------------*/
.pagenav {
  width: 100%;
  max-width: 400px;
  display: flex;
  justify-content: space-between;
  margin: 30px auto 72px;
}

.article-wrap .pagenav a {
	color: unset;
	text-decoration: none;
}


/* 関連記事 */
.relation-post {
  border-top: solid 1px #000;
  padding-top: 20px;
}
.relation-post-wrap {
  margin: 0 10px;
}
.relation-post__title {
  color: #212020;
  font-size: 14px;
  margin-bottom: 30px;
}
.relation-post-list {
  list-style: none !important;
  padding-inline-start: 0 !important;
}

.relation-post-list__date,
.relation-post-list__title {
  font-size: 14px;
}

.relation-post-list__date {
  color: #4C4C4C;
  margin-bottom: 10px;
}
.relation-post-list__title {
  font-weight: bold;
  display: -webkit-box; /* 必須 */
  -webkit-box-orient: vertical; /* 必須 */
  -webkit-line-clamp: 3; /* 行数を制限 */
  overflow: hidden; /* はみ出た部分を非表示 */
}


/*------------------------------
お知らせ、コラム　カテゴリーリスト
------------------------------*/
.cat-list {
  justify-content: flex-start;
  margin-bottom: 45px;
}

.cat-list__item.is-current a.btn--white,
.cat-list__item.is-current a.btn--white:hover {
  background-color: #1F1F1F !important;
  color: #FFF !important;
  border: none !important;
  pointer-events: none;
}

.cat-list__item a {
  font-size: 1.4rem;
}
.cat-list__item a.btn--white {
  border: solid 1px #FCE636;
  max-width: unset;
}

.cat-list__item:hover a {
  background-color: #FCE636;
  border: none;
}

.cat-list__item {
  word-break: keep-all;
  min-width: 150px;
  margin-bottom: 15px;
  text-align: center;
  margin-right: 15px;
  font-size: 1.4rem;
}
.cat-list__item a.btn--white {
  display: block;
  width: 100%;
}

.cat-list__item:last-child {
  margin-bottom: 0;
}

/*------------------------------
監修者
------------------------------*/
.article-wrap .post-supervisor p {
  margin: 0;
}
.article-wrap .post-supervisor ul {
  list-style: none;
  padding-inline-start: 0;
}

.post-supervisor-head {
  width: fit-content;
  background-color: #E6CE06;
  font-size: 1.6rem;
  font-weight: 600;
  text-align: center;
  padding: 5px 5%;
}
.post-supervisor-wrap {
  position: relative;
  border: 1px solid #E6CE06;
  padding: 30px 5%;
}
.post-supervisor-image {
  max-width: 280px;
  max-height: 280px;
  padding: 0 20px;
  margin: auto auto 20px;
}


.post-supervisor-name {
  margin-bottom: 15px;
}
.post-supervisor-name .position {
  margin-bottom: 5px;
}
.post-supervisor-name .name {
  font-size: 2rem;
}
.post-supervisor-profile {
  font-size: 1.8rem;
}


/*------------------------------
下層first-view  .page-first-view
------------------------------*/
.page-first-view {
  padding-bottom: 3em;
}
.page-first-view--shop {
  padding-bottom: 2em;
}
.page-first-view__text {
  margin-top: 2em;
  margin-bottom: 2em;
}
.page-first-view__ttl {
  margin-bottom: 1em;
  font-size: 2.2rem;
}
.page-first-view__read p {
  font-size: 1.8rem;
}
/*レイアウトが横並びでないページ用*/
.page-first-view__magn-top {
  margin-top: 2em;
}
/*------------------------------
下層page-content  .page-content
------------------------------*/
/*余白*/
.page-content-wrap {
  padding-top: 3em;
  padding-bottom: 3em;
}
.page-content-wrap--padding-bottom0 {
  padding-bottom: 0;
}
.page-content-wrap__margin-bottom--l {
  /*  margin-bottom: 1.5em;*/
}
.page-content-wrap__margin-bottom--m {
  margin-bottom: 1.5em;
}
.page-content-wrap__margin-bottom--sm {
  margin-bottom: 1em;
}
.page-content-wrap__margin-bottom--s {
  margin-bottom: .5em;
}
.page-content-wrap__margin-top--l {
  /*  margin-bottom: 1.5em;*/
}
.page-content-wrap__margin-top--m {
  margin-top: 1.5em;
}
.page-content-wrap__margin-top--sm {
  margin-top: 1em;
}
.page-content-wrap__margin-top--s {
  margin-top: .5em;
}
.page-content__ttl {
  margin-bottom: 1em;
}
.page-content__text {
  margin-bottom: 2.5em;
}
.page-content__text, .page-content__img {
  width: 100%;
}
.page-content-box:first-child {
  margin-bottom: 2.5em;
}
.page-content-box__ttl--center {
  text-align: center;
}
/*------------------------------
無料体験のご利用方法  #freetrial .freetrial
------------------------------*/
.freetrial-wrap__btn {
  margin-top: 1.5em;
  margin-bottom: 1.6em;
}
.freetrial-wrap__btn a {
  margin: auto;
}
.freetrial-wrap__round-bg {
  background: #FCE62F;
  height: 300px;
  width: 300px;
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  position: relative;
  margin: 0 auto;
}
.freetrial-wrap__img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
}
.freetrial-wrap__img--vertical {
  max-height: 300px;
  width: auto;
}

/* LINE友達追加 */
.freetrial-wrap .heading-ttl__sub {
  margin: 15px 4% 0;
  font-size: 1.8rem;
  font-weight: bold;
}


.freetrial-line__item {
  margin-bottom: 35px;
}

.freetrial-line__title {
  font-weight: bold;
  margin-bottom: 35px;
}
.freetrial-line__img {
  width: 60%;
  margin: auto auto 40px;
}

.freetrial-lead {
  margin-bottom: 35px;
}


.item {
  display: inline-block;
  background: #F5F5F5;
  white-space: nowrap;
  padding: 6px 10px;
  margin-bottom: 8px;
}
.sep {
  display: inline-block;
  margin: 0 8px;
  user-select: none;
}





/*------------------------------
マイゴルのサービスの特徴  #features .features
------------------------------*/
.features-wrap-01__item {
  width: 70%;
  margin: 0 auto 2em;
}
.features-wrap-01__text {
  color: #959595;
}
.features-wrap-03-flex {
  position: relative;
  margin-top: 3em;
}
.features-wrap-03-flex .flex-box {
  position: relative;
  z-index: 1;
}
.features-wrap-03-flex .bg-color--light-gray--left {
  position: absolute;
  width: 90%;
  height: 340px;
  left: 0;
  z-index: 0;
}
.features-wrap-03-flex .bg-color--light-gray--right {
  position: absolute;
  width: 86%;
  height: 340px;
  right: 0;
  z-index: 0;
}
.features-wrap-03-flex .page-content__text {
  margin-top: 1em;
}
/*------------------------------
  シミュレーターの楽しみ方
------------------------------*/
#simulator .page-first-view .flex-box {
  display: block;
}
/*------------------------------
 プロのレッスンプログラム #pro-lesson

※個別指定用にプロ名ごとのクラス名を作成
.horikawa-pro

------------------------------*/
#pro-lesson .page-first-view .flex-box {
  display: block;
}
.profile-text {
  font-size: 1.4rem;
}
.profile-name, .profile-img {
  margin-bottom: .5em;
}
.profile__list {
  padding: 2em;
}
.profile__list {
  display: flex;
  margin-bottom: .5em;
  flex-wrap: wrap;
}
.profile__list .profile__list-ttl, .profile__list .profile__list-text {
  font-size: 1.3rem;
  margin-bottom: .5em;
  padding: 3px 3px 3px 10px;
}
.profile__list-ttl {
  background-color: #1F1F1F;
  color: #fff;
  width: 30%;
  max-width: 160px;
}
.profile__list-ttl.profile__list-ttl--l {
  width: 100%;
  margin-bottom: .2em;
}
.profile__list .profile__list-text {
  width: 68%;
}
.profile__list .profile__list-text:nth-last-child(-n+3) {
  width: 100%;
}
/*------------------------------
無料体験 .free-trial
------------------------------*/
.free-trial {
  position: relative;
}
.free-trial .flex-box {
  position: relative;
  z-index: 1;
}
.free-trial .bg-color--light-gray {
  position: absolute;
  width: 100%;
  height: 320px;
  left: 0;
  right: 0;
  z-index: 0;
  top: 1em;
}
.free-trial {
  padding: 4em 2em;
}
.free-trial__text {
  margin-bottom: 2.5em;
}
/**************************************************
店舗一覧
***************************************************/
#shop .anchor {
  justify-content: flex-start;
}
#shop .anchor li {
  margin-right: 20px;
}
/* map */
/* #shop #map{
  margin:50px auto 0;
  width:100%;
  height:calc(100vh - 20pc);
}
#shop #map span+div img{
  width:40px!important;
}

#shop #map .shop-data{
  color:#333;
  max-width:300px;
  line-height: 1.2;
}
#shop #map .shop-data img{
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:cover;
  margin-bottom: 10px;
}
#shop #map .shop-data em{
  font-weight:600;
  font-size:1.4rem;
}
#shop #map .shop-data a{
  font-size:1.2rem;
} */
/* エリアから探す */
.p-area-search-list-wrap {
  width: 92%;
  max-width: 1000px;
  /* margin: 0 auto; */
  margin-left: auto;
  margin-right: auto;
}
.p-area-search-list__item {
  position: relative;
  width: calc(50% - 6px);
  margin-right: 12px;
  margin-bottom: 10px;
  background: #D8D8D8;
  font-weight: bold;
  padding: 10px 30px 10px 10px;
  cursor: pointer;
}
.p-area-search-list__item:nth-child(2n) {
  margin-right: 0;
}
.p-area-search-list__item.is-open {
  background: #FCE62F;
}
.p-area-search-detail {
  display: none;
  flex-wrap: wrap;
  background: #FFF;
  padding: 40px 20px;
}
.p-area-search-detail.is-active {
  display: flex;
  /* animationプロパティ設定 */
  animation-name: fadeIn;
  animation-fill-mode: forwards;
  animation-duration: 1s;
}
/*フェードインアニメ*/
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.p-area-search-detail__item {
  width: calc(33.33333333333333% - 4px);
  margin-right: 6px;
  margin-bottom: 6px;
  text-align: center;
  background: #F5F5F5;
  border: solid 1px #9F9F9F;
  border-radius: 5px;
  padding: 2px 10px;
  cursor: pointer;
  transition: .3s;
}
.p-area-search-detail__item:nth-child(3n) {
  margin-right: 0;
}
.p-area-search-detail__item.is-active {
  background: #1F1F1F;
  color: #FFF;
  transition: .3s;
}
/* 設備で絞り込み */
.p-area-search-filter__ttl {
  margin: 30px auto 20px;
}
.p-area-search-filter-box {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
.p-area-search-filter-box select{
  margin-top: 16px;
  width: 60%;
  height: 40px;
  font-size: 15px;
  border-radius: 0;
  border: 1px solid #000;
  background-color: #fff;
  text-indent: 0.2em;
  color: #000;
}
.p-area-search-filter-box__item {
  display: flex;
  align-items: center;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1;
  margin-right: 20px;
}
.p-area-search-filter-box__item:last-child {
  margin-right: 0;
}
.p-area-search-filter-box__item:hover {
  cursor: pointer;
}
.p-area-search-filter-box__item input {
  display: none;
}
.p-area-search-filter-box__item .dummy {
  width: 12px;
  height: 12px;
  border: 2px solid #3D3D3D;
  border-radius: 15%;
  display: inline-flex;
  vertical-align: text-top;
  margin-right: 5px;
}
.p-area-search-filter-box__item input:checked + .dummy:after {
  content: '';
  width: 85%;
  height: 40%;
  border-left: 2px solid #3D3D3D;
  border-bottom: 2px solid #3D3D3D;
  transform: rotate(-45deg);
  margin-top: 2px;
}
.p-area-search-filter-box__item-txt {
  margin-right: 5px;
  line-height: 1.6;
}
.p-area-search-filter__btn {
  margin: auto;
}
/* アコーディオン用 */
.p-area-search-list__item:before {
  position: absolute;
  content: "";
  top: 50%;
  right: 10px;
  height: 2px;
  width: 15px;
  background: #343434;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.p-area-search-list__item:after {
  position: absolute;
  content: "";
  top: 50%;
  right: 10px;
  height: 2px;
  width: 15px;
  background: #343434;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.p-area-search-list__item.is-open:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.p-area-search-list__item.is-open:after {
  opacity: 0;
}
/* 店舗一覧　店舗パネル */
.p-shop-pref.is-inactive {
  display: none;
}
.p-shop-pref.is-active {
  display: block !important;
}
.p-shop-pref.is-inactive, .p-shop-pref.is-active, .p-shop-pref-list__item.is-inactive, .p-shop-pref-list__item.is-active, .p-shop-attention, .p-shop-attention.is-active {
  /* animationプロパティ設定 */
  animation-name: fadeIn;
  animation-fill-mode: forwards;
  animation-duration: 1s;
}
.p-shop-pref__ttl {
  margin: 50px 20px 20px;
}
.p-shop-pref-list__item {
  position: relative;
  color: #757575;
  border-top: solid 1px #E2E2E2;
  padding: 20px 35px 20px 20px;
  transition: .3s;
}
.p-shop-pref-list__item:last-child {
  border-bottom: solid 1px #E2E2E2;
}
.p-shop-pref-list__item::after {
  content: "\f105";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  font-size: 18px;
  font-size: 1.8rem;
  color: #F4A11C;
}
.p-shop-pref-list__item:hover {
  background: #F5F5F5;
  transition: .3s;
}
.p-shop-pref-list__item.is-inactive {
  display: none;
}
.p-shop-pref-list__item.is-active {
  display: block;
}
.p-shop-pref-list__item-name {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 600;
  color: #F4A11C;
  margin-bottom: 10px;
}
.p-shop-pref-list__item-equipments {
  display: flex;
  margin-top: 20px;
}
.p-shop-pref-list__item-equipments-icon {
  width: 30px !important;
  margin-right: 10px;
}
.p-shop-pref-list__item-equipments-icon span {
  font-size: 20px !important;
  font-size: 2rem !important;
}
/* 設備アイコン */
.p-area-search-icon {
  position: relative;
  background: #3D3D3D;
  border-radius: 3px;
  width: 18px;
}
.p-area-search-icon span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  font-size: 12px;
  font-size: 1.2rem;
  color: #FFF;
}
.p-area-search-icon::before {
  content: "";
  padding-top: 100%;
  display: block;
}
.p-shop-attention {
  display: none;
}
.p-shop-attention.is-active {
  display: block;
}
/**************************************************
選ばれる理由
***************************************************/
.good-list {
  padding: 15px;
}
.good-list-detail {
  padding: 0 9px;
  margin: auto;
}
.good-list__item dt {
  position: relative;
  margin-left: 20px;
}
.good-list__item dt::before {
  content: "";
  position: relative;
  top: 11%;
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../images/common/icon-good01.png");
  background-repeat: no-repeat;
  background-size: contain;
  margin-left: -20px;
  padding-right: 25px;
}
.good-list__item dd {
  margin-left: 25px;
}
/* メリット */
.merit-contents__read {
  margin-bottom: 2.5em;
}
.merit-contents__read.sp {
  display: block;
}
/* 〇〇のメリット
********************/
.merit-list {
  margin-bottom: 1.5em;
}
.merit-list__title {
  max-width: 425px;
  position: relative;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  border-radius: 25px;
  padding: 15px 0 15px 30px;
  margin: 0 auto 1em;
}
.merit-list__title::before {
  content: "";
  position: absolute;
  left: 20px;
  display: inline-block;
  width: 30px;
  height: 30px;
  background-image: url("../images/common/icon-good02.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.merit-contents {
  margin-bottom: 2.5em;
}
.merit-contents__img-main {
  margin-bottom: 0.5em;
}
.merit-list-detail__item dt {
  display: flex;
  width: 100%;
}
.merit-list-detail__item dd {
  width: 100%;
  margin-bottom: 0.8em;
}
.merit-list-detail__item:last-child dd {
  margin-bottom: 0;
}
/* 〇〇のポイント
********************/
.merit-comfortable {
  max-width: 500px;
  border: solid 1px #EFD43B;
  padding: 15px 17px;
  margin: auto;
}
.merit-comfortable__title {
  font-size: 2rem;
}
.merit-comfortable-list {
  justify-content: space-between;
  align-items: stretch;
  gap: 20px;
}
.merit-comfortable-list__item {
  display: flex;
  flex-direction: column;
  flex: 0 0 calc(50% - 10px);
}
.merit-comfortable-list__item-title {
  display: flex;
  align-items: center;
  justify-content: center;
}
.merit-comfortable-list__item-title--height {
  min-height: 55px;
}
.merit-comfortable__banner {
  display: none;
}
/* 比較表
********************/
.merit-compare {
  overflow-x: auto;
  max-width: 100%;
}
.merit-compare-table {
  display: none;
}
.merit-compare-sp {
  display: block;
  width: 100%;
  max-width: 341px;
    margin: 0 auto;
}
/* マイゴルのデメリット
********************/
.merit-contents-drawback__item {
  margin-bottom: 2.5em;
}
.merit-contents-drawback__item:last-child {
  margin-bottom: 0;
}
.merit-contents-drawback__worry {
  position: relative;
  width: 65%;
  margin: 0 auto 0.5em;
}
.merit-contents-drawback__worry-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  width: 100%;
}
.merit-contents-drawback__item:nth-child(2) .merit-contents-drawback__worry-text, .merit-contents-drawback__item:nth-child(3) .merit-contents-drawback__worry-text {
  top: 55%;
}
.merit-contents-drawback__answer {
  justify-content: center;
  border: solid 1px #EFD43B;
  padding: 20px;
}
.merit-contents-drawback__answer-img {
  margin-bottom: 0.5em;
}
.merit-contents-drawback__answer-title {
  margin-bottom: 1em;
}
.drawback__lead {
  margin-bottom: 2em;
}
@media screen and (max-width: 375px) {
  .merit-comfortable {
    padding: 15px 10px;
  }
  .merit-comfortable-list {
    gap: 10px;
  }
  .merit-comfortable-list__item {
    flex: 0 0 calc(50% - 5px);
  }
  .merit-comfortable-list__item-title, .merit-comfortable-list__item-text {
    font-size: 1.5rem;
  }
}
/**************************************************
サイトマップ
***************************************************/
#sitemap .sitemap-nav li {
  margin-bottom: 1em;
  padding-left: 50px;
}
#sitemap .sitemap-nav li a {
  position: relative;
}
#sitemap .sitemap-nav li a::before {
  display: block;
  content: "";
  position: absolute;
  left: -50px;
  margin: 0;
  width: 3rem;
  height: 3rem;
  background: #FCE62F;
  border-radius: 1.625rem;
  transition: all 0.45s cubic-bezier(0.65, 0, 0.076, 1);
}
#sitemap .sitemap-nav li a .arrow {
  position: absolute;
  content: "";
  top: 10px;
  left: -40px;
  width: 0.625rem;
  height: 0.625rem;
  border-top: 0.125rem solid #1F1F1F;
  border-right: 0.125rem solid #1F1F1F;
  transform: rotate(45deg);
  transition-duration: 500ms;
}
#sitemap .sitemap-nav li a:hover .arrow {
  left: -35px;
}
/*------------------------------
フェーズ2用　FAQ
------------------------------*/
.faq-wrap__list {
  padding: 12px 8px;
  margin-top: 10px;
}
/**************************************************
* 店舗詳細
***************************************************/
#shop-detail-cta.fixed {
  display: flex;
  justify-content: space-around;
  align-items: center;
  position: fixed;
  bottom: 0px;
  right: 0px;
  width: 100%;
  background: #E6CE06;
  padding: 0 10px;
  box-sizing: border-box;
  z-index: 3;
}
/* フッター-cta */
#shop-detail-cta.fixed .cta__btn {
  position: relative;
  top: -15px;
  width: 47%;
  max-width: 280px;
  font-weight: 600;
  text-align: center;
  border-radius: 25px;
  padding: 3px 0;
}
#shop-detail-cta.fixed .cta__btn a {
  font-size: 14px;
}
#shop-detail-cta.fixed .reservation {
  background-image: linear-gradient(120deg, #FCE62F, #EADA58 32.45%, #FAAC2D);
}
#shop-detail-cta.fixed .tel {
  background-color: #FFF;
  border: solid 1px #212020;
}
#shop-detail-cta.fixed .tel a {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}
#shop-detail-cta.fixed .tel i {
  font-size: 13px;
  margin-top: 2px;
  margin-right: 5px;
}
#shop-detail .heading-s {
  font-size: 1.4rem;
}
#shop-detail .heading-l {
  font-size: 2rem;
}
#shop-detail .eyecatch {
  width: 100vw;
  height: 100vw;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  margin-top: 1em;
}
/*page-navigation*/
#shop-detail .page-navigation > .list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
#shop-detail .page-navigation > .list > .item {
  /* width: 33.333%; */
  width: 50%;
  text-align: center;
}
#shop-detail .page-navigation > .list > .item.item-l {
  width: 50%;
}
#shop-detail .page-navigation > .list > .item a {
  display: block;
  border-top: 1px solid #FAAC2D;
  width: 80%;
  max-width: 150px;
  margin: 0 auto 20px;
  height: 50px;
  padding: 10px 0;
}
#shop-detail .page-navigation > .list > .item.item-l a {
  width: 90%;
}
#shop-detail .page-navigation > .list > .item .arrow {
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  fill: #FAAC2D;
  transform: rotate(90deg);
  margin: .3125rem auto 0;
}
/*swiper*/
#shop-detail .swiper-button-prev, #shop-detail .swiper-button-next {
  color: #FFF !important;
}
#shop-detail .swiper-pagination-bullet {
  background: #FFFFFF;
  opacity: 1;
}
#shop-detail .swiper-pagination-bullet-active {
  background: #FCE62F;
}
#shop-detail .youtube, #shop-detail .campaign-banner {
  position: relative;
  z-index: 2;
}
/* キャンペーン2 */
#shop-detail .campaign2 {
  max-width: 1000px;
  margin: auto;
}
#shop-detail .campaign2__item {
  margin-bottom: 30px;
}
#shop-detail .campaign2__item:last-child {
  margin-bottom: 0;
}
#shop-detail .campaign2__item-file video {
  max-width: 100%;
}
/* .campaign2__item-file {
  max-width: 780px;
  margin: auto;
} */
/*free-trial*/
#shop-detail .free-trial {
  padding: 40px 0 0;
}
#shop-detail .free-trial > .copy {
  text-align: center;
  font-weight: 700;
  font-size: 4.0rem;
  line-height: 1.5em;
  color: #FAAC2D;
  z-index: 1;
  position: relative;
}
#shop-detail .free-trial > .copy > .zero {
  font-size: 7rem;
}
#shop-detail .free-trial > .image {
  display: block;
  margin-top: -40vw;
  width: 100vw;
}
#shop-detail .free-trial > .button {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 350px;
  height: 50px;
  line-height: 50px;
  border-radius: 25px;
  margin: 40px auto;
  background: linear-gradient(120deg, #FCE42E 0.5%, #FAB12D 70%, #FAAE2D 100%);
  text-align: center;
  font-weight: 700;
}
/*contact*/
/* #shop-detail .contact>.text {
  font-weight:  700;
  font-size: 1.8rem;
  text-align: center;
  color: #000000;
  margin:0 auto;
  line-height: 1.8;
}

#shop-detail .contact>.tel,
#shop-detail .contact>.tel a{
  font-weight: 700;
  font-size: 4.5rem;
  line-height: 1.5em;
  text-align: center;
  color: #FAAC2D;
}

#shop-detail .contact>.reception-time {
  font-size: 1.2rem;
  line-height: 1.5em;
  text-align: center;
} */
#shop-detail .shop-cta {
  border: solid 5px #FAAC2D;
}
/*prices*/
#shop-detail .prices > .fee > .admission, #shop-detail .prices > .fee > .registration {
  font-weight: 700;
}
#shop-detail .prices > .plan-box {
  width: 100%;
  display: block;
  margin: 2rem auto 0;
  padding: 2rem;
  box-sizing: border-box;
  background: #fff;
  position: relative;
}
#shop-detail .prices > .plan-box > .type > .title {
  font-size: 1.8rem;
  line-height: 1.5em;
  text-align: center;
  color: #FAAC2D;
}
#shop-detail .prices > .plan-box > .type > .sub-title {
  font-size: 1.4rem;
  line-height: 1.8em;
  text-align: center;
}
#shop-detail .prices > .plan-box > .price-box > .tax-excluded, #shop-detail .prices > .plan-box > .price-box > .price {
  width: 100%;
}
#shop-detail .prices > .plan-box > .price-box > .price {
  font-weight: 700;
  font-size: 3.5rem;
  text-align: center;
  padding-top: 10px;
}
#shop-detail .prices > .plan-box > .price-box > .tax-excluded {
  text-align: center;
  padding-bottom: 10px;
}
#shop-detail .prices > .plan-box > .price .off {
  color: #333;
  font-size: 1rem;
  display: block;
  line-height: 1.2;
  padding: 0 0 20px;
  position: relative;
}
#shop-detail .prices > .plan-box > .price .off::after {
  content: "";
  width: 0;
  height: 0;
  border: solid 6px transparent;
  border-top: solid 8px #333;
  position: absolute;
  bottom: -5px;
  left: 50%;
}
#shop-detail .prices > .plan-box > .price .off b {
  position: relative;
  font-size: 1.6rem;
}
#shop-detail .prices > .plan-box > .price .off b::before {
  content: "";
  width: 70px;
  height: 2px;
  background: #b80000;
  transform: rotate(170deg);
  position: absolute;
  top: 20px;
  left: 0;
}
#shop-detail .prices > .plan-box > .price .off em {
  font-size: 1.4rem;
}
#shop-detail .prices > .plan-box > .price-box > .price > .unit {
  font-size: 60%;
}
#shop-detail .prices > .plan-box > .detail {
  width: 100%;
  margin-top: 10px;
  border-top: 1px solid #FAAC2D;
  padding-top: 20px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
}
#shop-detail .prices > .plan-box .stamp {
  position: absolute;
  top: 50%;
  left: 52%;
  transform: translateX(-50%) rotate(-10deg) translateY(-50%);
  color: #f85151;
  border: 6px solid #f85151;
  border-radius: 15px;
  padding: 5px 30px;
  font-weight: bold;
  font-family: serif;
  font-size: 3rem;
  text-align: center;
  width: 65%;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5);
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5), 1px 1px 5px rgba(0, 0, 0, 0.5) inset;
}
/* #shop-detail .prices>.hint p { */
#shop-detail .hint {
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  color: #959595;
  padding-top: 10px;
}
#shop-detail .explain {
  margin-top: 25px;
}
#shop-detail .prices > .fee.off > .admission, .prices > .fee.off > .registration {
  position: relative;
}
#shop-detail .prices > .fee.off > .admission::after, .prices > .fee.off > .registration::after {
  content: "";
  width: 41%;
  height: 3px;
  background: #f85151;
  display: flex;
  position: absolute;
  top: 50%;
  left: 0;
}
#shop-detail .prices > .fee.off + .price {
  text-align: center;
  font-size: 2rem;
  color: #f85151;
}
/*equipments*/
#shop-detail .equipments > .list, #shop-detail .facility > .list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
}
#shop-detail .equipments > .list > .item, #shop-detail .facility > .list > .item {
  background: #F5F5F5;
  width: 95px;
  width: calc(33.333333333333333333333333333% - 4px);
  height: auto;
  padding: 3px;
  margin: 2px;
}
#shop-detail .facility > .list > .item {
  background: #fff;
}
#shop-detail .equipments > .list > .item > .icon, #shop-detail .facility > .list > .item > .icon {
  display: block;
  width: 85px;
  height: 85px;
  margin: -10px auto;
  filter: brightness(0) saturate(100%) invert(65%) sepia(49%) saturate(697%) hue-rotate(351deg) brightness(104%) contrast(96%);
}
#shop-detail .equipments > .list > .item.disabled > .icon, #shop-detail .facility > .list > .item.disabled > .icon {
  fill: rgba(0, 0, 0, 0.5);
}
#shop-detail .equipments > .list > .item > .type, #shop-detail .facility > .list > .item > .type {
  font-size: 0.8rem;
  line-height: 1.5em;
  text-align: center;
}
#shop-detail .equipments > .list > .item.disabled > .type, #shop-detail .facility > .list > .item.disabled > .type {
  color: rgba(0, 0, 0, 0.5);
}
#shop-detail .equipments > .list > .item > .value, #shop-detail .facility > .list > .item > .value {
  font-size: 1.2rem;
  line-height: 1.5em;
  text-align: center;
  color: #FAAC2D;
}
#shop-detail .equipments > .list > .item.disabled > .value, #shop-detail .facility > .list > .item.disabled > .value {
  color: rgba(0, 0, 0, 0.5);
}
/*simulator*/
#shop-detail .simulator > .model > .name {
  font-weight: 700;
  font-size: 3.0rem;
  text-align: center;
  color: #FAAC2D;
  margin-bottom: 1.0rem;
}
#shop-detail .simulator > .model > .explanation {
  font-size: 1.8rem;
  text-align: center;
}
#shop-detail .simulator > .model > .explanation span {
  font-size: 1.7rem;
  display: block;
  font-weight: normal;
  margin: 10px 0 0;
}
#shop-detail .simulator > .model > .feature {
  position: relative;
  margin-top: 3rem;
}
#shop-detail .simulator > .model > .feature::before {
  position: absolute;
  top: -5px;
  left: -40px;
  z-index: 1;
  content: "";
  width: 100%;
  height: 70%;
  background-color: #F5F5F5;
}
#shop-detail .simulator > .model > .feature:nth-of-type(3n-1)::before {
  background-color: #fff;
}
#shop-detail .simulator > .model > .feature:nth-of-type(3n)::before {
  left: 40px;
}
#shop-detail .simulator > .model > .feature > .wrap {
  position: relative;
  z-index: 2;
}
#shop-detail .simulator > .model > .feature > .wrap > .text > .title {
  font-weight: 700;
  font-size: 2.0rem;
  padding: 1.0rem 0 0.5rem;
}
#shop-detail .simulator > .model > .feature > .wrap > .text > .detail {
  margin-bottom: 1rem;
}
#shop-detail .simulator > .model > .feature > .wrap > .image {
  display: block;
  width: 100%;
  max-width: 400px;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}
/*coaches*/
#shop-detail .coaches .coach .photo {
  margin-bottom: 10px;
}
#shop-detail .coaches .coach .affiliation, #shop-detail .coaches .coach .name {
  text-align: center;
}
#shop-detail .coaches .coach .name {
  margin-bottom: 20px;
}
#shop-detail .coaches .coach .message {
  margin-bottom: 20px;
}
#shop-detail .coaches .price-box {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  max-width: 550px;
  border: 1px solid #FAAC2D;
  padding: 10px 0;
  margin: 0 auto 20px;
}
#shop-detail .coaches .price-box .title {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  width: 40%;
  font-size: 16px;
  line-height: 1.6;
  text-align: center;
  border-right: .0625rem solid #FAAC2D;
}
#shop-detail .coaches .price-box .title .time {
  position: relative;
  display: inline-block;
  line-height: 1.6;
  color: #FAAC2D;
}
#shop-detail .coaches .price-box .title .time .icon {
  filter: brightness(0) saturate(100%) invert(65%) sepia(49%) saturate(697%) hue-rotate(351deg) brightness(104%) contrast(96%);
  position: absolute;
  width: 38px;
  height: 38px;
  left: -30px;
  bottom: -5px;
}
#shop-detail .coaches .price-box .time .unit {
  font-weight: 700;
}
#shop-detail .coaches .price-box .price {
  width: 60%;
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1;
  color: #FAAC2D;
  text-align: center;
}
#shop-detail .coaches .lesson .copy, #shop-detail .coaches .lesson .detail, #shop-detail .coaches .lesson .photo {
  margin-bottom: 20px;
}
/*search-shop*/
#shop-detail .search-shop .title01 {
  font-size: 2.0rem;
  font-weight: 700;
  margin-bottom: 20px;
}
#shop-detail .search-shop .shop-name {
  font-size: 1.8rem;
  margin: 10px 0;
}
#shop-detail .search-shop .swiper-slide {
  font-weight: normal;
  margin-right: 10px;
}
#shop-detail .search-shop .swiper-button-prev, #shop-detail .search-shop .swiper-button-next {
  top: 25%;
  padding: 20px;
}
/*information*/
#shop-detail .information .detail {
  margin-bottom: 20px;
}
#shop-detail .information .name {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 20px;
}
#shop-detail .information .detail dl {
  margin-bottom: 8px;
}
#shop-detail .information .list dt {
  font-weight: 600;
}
#shop-detail .information .list dt, #shop-detail .information .list dd, #shop-detail .information .list dd p, #shop-detail .information .list dd a {
  font-size: 14px;
  font-size: 1.4rem;
}
#shop-detail .information .access .image, #shop-detail .information .access .map {
  width: 100%;
}
#shop-detail .information .access .image {
  margin-bottom: 20px;
}
#shop-detail .information .shop-url a {
  color: #FAAC2D;
  border-bottom: solid 1px #FAAC2D;
}
#shop-detail .map-btn {
  max-width: 360px;
  justify-content: space-around;
}
#shop-detail .map-btn .btn {
  width: 48%;
  display: flex;
  align-items: center;
}
#shop-detail .list .parking dd p {
  display: inline-block;
}
#shop-detail .list .parking dd .parking-link {
  border-bottom: solid 1px #212020;
}

/* 一部の店舗用 */
#shop-detail .page-first-view .shop-name-mb {
  margin-bottom: 20px;
}


#shop-detail .view3d {
  max-width: 760px;
  margin: auto;
}

/* 詳細ページのみのフッター店舗リスト */
.footer-shop-wrap {
  width: 92%;
  max-width: 1000px;
  padding: 35px 0;
  margin: 0 auto;
}
.footer-shop__item {
  margin-bottom: 5px;
}
.footer-shop__area {
  font-size: 16px;
  font-size: 1.6rem;
  color: #1F1F1F;
  border-bottom: solid 1px #959595;
  margin-bottom: 15px;
}
.footer-shop__area span {
  font-size: 12px;
  font-size: 1.2rem;
  margin-left: 20px;
}
.footer-shop-list {
  display: flex;
  flex-wrap: wrap;
}
.footer-shop-list__item {
  font-size: 12px;
  font-size: 1.2rem;
  width: calc(50% - 10px);
  margin-right: 20px;
  margin-bottom: 15px;
}
.footer-shop-list__item:nth-child(2n) {
  margin-right: 0;
}
/* 店舗詳細ページ　リニューアル
/* --------------------------- */
/* 店舗詳細ページトップ
******************/
.shop-block {
  padding: 3em 0;
}
/* MVスライダー */
.swiper-pagination.swiper-pagination--shop-top {
  position: relative;
  bottom: 0 !important;
  margin-top: 20px;
}
.shop-mv-slider__item-wrap {
  position: relative;
}
.page-first-view__ttl--shop-detail {
  font-size: 18px;
  font-size: 1.8rem;
}
/* 料金 */
.shop-price-list {
  justify-content: center;
  max-width: 600px;
  margin: auto auto 30px;
}
.shop-price-list__item {
  width: 50%;
  border-right: solid 2px #C0C0C0;
}
.shop-price-list__item:first-child {
  padding-right: 6px;
}
.shop-price-list__item:last-child {
  margin-right: 0;
  padding-left: 6px;
  border-right: none;
}
.shop-price-list__item-title {
  display: inline-block;
  font-size: 13px;
  font-size: 1.3rem;
  padding: 0 3px;
  background-image: linear-gradient(120deg, #FCE62F, #EADA58 32.45%, #FAAC2D);
}
.shop-price-list__item-price {
  color: #FAAC2D;
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: bold;
}
.shop-price-list__item-price span {
  color: #212020;
  font-size: 13px;
  font-size: 1.3rem;
}
.shop-price-list__item-tax {
  font-size: 8px;
  font-size: 0.8rem;
}
.shop-price__attention {
  display: flex;
  justify-content: center;
}
.shop-price__attention p {
  font-size: 13px;
  font-size: 1.3rem;
}
/* 設備 */
.equipment-list__item .right-side-line {
  width: 100%;
}
/* 特徴 */
.feature__sub-ttl {
  font-size: 16px;
  font-size: 1.6rem;
}
.feature-img__item:last-child {
  margin-bottom: 0;
}
/* 料金ページ
******************/
/* お支払い方法 */
.payment-wrap__text, .payment-wrap__img {
  width: 100%;
}
.payment-brand {
  max-width: 600px;
  flex-wrap: nowrap;
  justify-content: space-between;
  border-top: solid 2px #FFF;
  border-bottom: solid 2px #FFF;
  padding: 20px 0;
}
.payment-brand__item {
  width: 16%;
}


/* 回遊リンク
******************/
.excursion-link {
  display: flex;
  flex-wrap: wrap;
  /* justify-content: space-between; */
  padding-left: 1.3rem;
  margin-bottom: 20px;
}

.excursion-link__item {
  display: flex;
  align-items: center;
  width: 24.5%;
  margin: 0 0.5% 0 0;
}

.excursion-link__item:last-child {
  margin-right: 0;
}
.excursion-link__item .circle {
  width: 2.5rem;
  height: 2.5rem;
}
.excursion-link__item .circle .icon.arrow::before {
  right: 0.3rem;
}

.excursion-link__item .circle:hover {
  width: 105%;
}

.excursion-link__item .button-text {
  font-size: 12px;
  word-break: keep-all;
  margin-top: -1px;
}

/* 店舗トップへ */
.excursion-link__item--top {
  position: relative;
  height: auto;
}
.excursion-link__item--top .circle {
  position: relative;
  display: flex;
  align-items: center;
  width: fit-content !important;
  height: 3rem;
  background: #FFF;
  border-radius: 1.625rem;
  padding: 0 6px;
}
.excursion-link__item--top .button-text {
  position: relative;
  text-align: center;
  word-break: keep-all;
  padding: 0;
}
.excursion-link__item--top .button-text::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 15px;
  background-image: url("../images/common/icon-back.png");
  background-repeat: no-repeat;
  background-size: contain;
  margin-bottom: -2px;
}

/* ゴルフ設備 */
.excursion-link__item--equipments .button-text {
  left: 23px;
}

/* カレント */
/* .excursion-link__item--current.learn-more .circle {
  width: 100%;
}
.excursion-link__item--current.learn-more .circle .icon {
  display: none;
}
.excursion-link__item--current.learn-more .button-text {
  left: 0;
  margin-left: 0;
} */


/* リニューアル
/* --------------------------- */
/* よくある質問固定ページ
******************/
#faq p.faq-txt {
  margin-bottom: 10px;
}
#faq .acMenu dt {
  margin: 40px 0 0;
}
#faq .wp-pagenavi {
  margin-top: 20px;
}


/*=================== 405ここから==================*/
@media screen and (max-width: 405px) {
  /* 回遊リンク
  ******************/
  .excursion-link__item {
    width: calc(24.5%);
    margin-right: 0.6%;
  }
  .excursion-link__item .circle {
    width: 2rem;
    height: 2rem;
  }
  .excursion-link__item .circle .icon.arrow::before {
    right: 0.5rem;
  }

  .excursion-link__item .button-text {
    font-size: 11px;
    margin-bottom: -1px;
  }
  /* 店舗トップへ */
  .excursion-link__item--top .circle {
    padding: 0 8px;
  }
  .excursion-link__item--top .button-text::before {
    width: 15px;
    height: 10px;
    margin-bottom: -1px;
  }
  .excursion-link__item--top .button-text,
  .excursion-link__item--current .button-text {
    left: 0;
  }


}
/*=================== 405ここまで==================*/


/*=================== 375ここから==================*/
@media screen and (max-width: 375px) {
  #shop-detail .price h1 .heading-l .br375 {
    display: none;
  }
}
/*=================== 375ここまで==================*/

/*=================== 320ここから==================*/
@media screen and (max-width: 320px) {
  /* 料金 */
  .shop-price-list__item-title {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .shop-price-list__item-price span {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .shop-price-list__item-tax {
    font-size: 13px;
    font-size: 1.3rem;
  }

  /* 回遊リンク
  ******************/
  .excursion-link__item {
    width: calc(31% - 5px);
    margin-left: 0px;
    margin-right: 10px;
    margin-bottom: 10px;
  }
  .excursion-link__item--top {
    margin-bottom: 0;
  }


}
/*=================== 320ここまで==================*/
/*=================== TBここから ==================*/
@media screen and (min-width: 600px) {
  /* 料金 */
  .shop-price-list__item-title {
    font-size: 20px;
    font-size: 2rem;
  }
  .shop-price-list__item-price {
    font-size: 50px;
    font-size: 5rem;
  }
  .shop-price-list__item-price span {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .shop-price-list__item-tax {
    font-size: 14px;
    font-size: 1.4rem;
  }
  /* 設備 */
  .equipment-list__item {
    width: calc(50% - 15px);
    margin: 0 30px 0 0;
  }
  .equipment-list__item:last-child {
    margin-right: 0;
  }
  .equipment-list__item-detail {
    width: 80%;
    margin-left: auto;
  }
  /* 特徴 */
  .feature__sub-ttl {
    font-size: 26px;
    font-size: 2.6rem;
  }
  .feature-img__item {
    width: calc(33.3333333333333333333% - 7px);
    margin-right: 10px;
    margin-bottom: 0;
  }
  .feature-img__item:last-child {
    margin-right: 0;
  }

  /* 回遊リンク
  ******************/
  .excursion-link {
    max-width: 600px;
    padding-left: 1.5em;
  }
  .excursion-link__item .circle {
    width: 3rem;
    height: 3rem;
  }
  .excursion-link__item .circle .icon.arrow::before{
    right: 0.0625rem;
  }

  .excursion-link__item .button-text {
    font-size: 14px;
  }

  /* 店舗トップへ */
  .excursion-link__item--top .circle {
    position: relative;
    display: flex;
    align-items: center;
    width: fit-content;
    min-width: 8rem;
  }
  .excursion-link__item--top .button-text {
    padding: 0 15px 0 10px;
  }

  /* 料金ページ
  ******************/
  /* お支払い方法 */
  .payment-brand__item {
    width: calc(33% - 10px);
    margin-right: 10px;
  }
}
/*=================== TBここまで ==================*/
/*=================== PCここから ==================*/
@media screen and (min-width: 1024px) {
  .shop-block {
    padding: 5em 0;
  }
  .equipment-list__item-detail {
    width: 70%;
  }

    /* 回遊リンク
  ******************/
  .excursion-link {
    max-width: unset;
  }
  .excursion-link__item {
    width: 8em;
    margin-right: 20px;
  }
  /* ゴルフ設備 */
  .excursion-link__item.learn-more {
    width: 13.5rem !important;
  }
  .excursion-link__item .button-text {
    top: 45% !important;
  }
  
  /* 店舗トップへ */
  .excursion-link__item--top .button-text {
    top: 0 !important;
  }
  /* ゴルフ設備 */
  .excursion-link__item--equipments .button-text {
    margin-left: 1.8em;
  }

  /* 料金ページ
  ******************/
  #shop-detail .price h1 .heading-l .br375 {
    display: none;
  }
  /* お支払い方法 */
  .payment-wrap__text, .payment-wrap__img {
    width: calc(50% - 10px);
  }
  .payment-wrap__text {
    margin-right: 20px;
    margin-bottom: 0;
  }
}
/*=================== PCここまで ==================*/
/*------------------------------
フッター固定CTA　SPのみ
------------------------------*/
.footer-cta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  bottom: 0px;
  right: 0px;
  width: 100%;
  max-width: 599px;
  background: #E6CE06;
  background-color: rgba(119, 119, 119, 0.8);
  padding: 10px 6px;
  box-sizing: border-box;
  z-index: 3;
  gap: 5px; 
}
/* 下部固定CTA SPのみ */
.footer-cta__btn {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  background-color: #FFF;
  font-weight: 600;
  border-radius: 5px;
  padding: 7px 4px;
  flex: 1 1 calc(33.333% - 21px);
}
.footer-cta__btn:before {
  content: "";
  display: inline-block;
  width: 28px;
  height: 28px;
  margin-right: 5px;
}
.footer-cta__btn--reserve::before {
  background-image: url("../images/common/icon-reserve.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.footer-cta__btn--tel::before {
  background-image: url("../images/common/icon-tel.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.footer-cta__btn--line::before {
  background-image: url("../images/common/icon-line.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.footer-cta__btn-text {
  flex: 1;
}
.footer-cta__btn-text p {
  line-height: 1;
}
.footer-cta__btn-text-main {
  font-size: 12px;
  font-size: 1.2rem;
  margin-bottom: 5px;
}
.footer-cta__btn-text-main span {
  font-size: 12px;
  font-size: 1.1rem;
}
.footer-cta__btn-text-sub {
  font-size: 10px;
  font-size: 1.0rem;
  color: #BEBEBE;
}
.footer-cta__btn i {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #FAAC2E;
}
.footer-cta .tel a {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}


/* ボタンが2つ */
.footer-cta--two {
  justify-content: center;
}
.footer-cta--two li {
  flex: 0.4; 
}
.footer-cta--two .footer-cta__btn-text-main {
  font-size: 1.3rem;
}
.footer-cta--two .footer-cta__btn-text-sub {
  font-size: 1.2rem;
}
.footer-cta--two .footer-cta__btn i {
  font-size: 1.4rem;
}
.footer-cta--two .footer-cta__btn:before {
  width: 30px;
  height: 30px;
  margin-right: 10px;
}


@media screen and (max-width: 375px) {
.footer-cta {
  gap: 3px;
  padding: 10px 3px;
	}	
.footer-cta__btn {
  flex: 1 1 calc(33.333% - 10px);
  padding: 7px 2px;
}
.footer-cta__btn:before {
  width: 25px;
  height: 25px;
  margin-right: 5px;
}

  .footer-cta__btn-text-main {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .footer-cta__btn-text-main span, .footer-cta__btn-text-sub {
    font-size: 10px;
    font-size: 1rem;
  }

}
@media screen and (max-width: 320px) {
  .footer-cta__btn:before {
    width: 20px;
    height: 20px;
  }
  .footer-cta__btn-text-main {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .footer-cta__btn-text-main span, .footer-cta__btn-text-sub {
    font-size: 9px;
    font-size: 0.9rem;
  }
}
/*=================== TBここから ==================*/
@media screen and (min-width: 600px) {
  .footer-cta {
    display: none;
  }
}
/*=================== TBここまで ==================*/


