@charset "UTF-8";


/* 後から削除 */
#wpadminbar {
  display: none !important;
}

@media (max-width: 768px) {
  .g-pc {
    display: none !important;
  }
}

.g-sp {
  display: none;
}
@media (max-width: 768px) {
  .g-sp {
    display: block;
  }
}

/* header */
.p-header.g-header {
  height: 94px;
}
@media (max-width: 990px) {
  .p-header.g-header {
    height: 73px;
  }
}

.p-header__nav.js-slide-up .g-header__list{
  transform:scale(0.6);
}

.g-header__list {
  flex-direction: column;
  justify-content: center;
  transition: transform 0.5s ease;
}
@media (max-width: 990px) {
  .g-header__list {
    display: none;
  }
}

.g-header__tel-lead {
  font-size: 12px;
  font-weight: 500;
}

.g-header__tel {
  font-family: Inter;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  display: flex;
  align-items: center;
  gap: 8px;
  letter-spacing: 1px;
}
.g-header__tel img {
  width: 24px;
  height: 24px;
}

.g-header__tel-hours {
  font-size: 12px;
  font-weight: 500;
}

.g-header__btn a {
  background: #C62728;
}

.g-header__btn a img {
  margin-right: 8px;
}

.g-header-tab {
  display: none;
}
@media (max-width: 990px) {
  .g-header-tab {
    display: block;
  }
}

@media (max-width: 990px) {
  .p-header__btn.g-header-tab {
    padding: 0;
    margin-left: 18px;
    max-width: 112px;
    width: 100%;
  }
}

@media (max-width: 300px) {
  .p-header__btn.g-header-tab {
    margin-left: 10px;
  }
}

.p-header__btn.g-header-btn-pc {
  width: 168px;
  padding: 0;
  margin-left: 32px;
}
@media (max-width: 990px) {
  .p-header__btn.g-header-btn-pc {
      display: none;
    }
}

.p-header__btn.g-header-btn-pc a {
  width: 100%;
}

@media (max-width: 990px) {
  .p-header__btn.g-header__btn a {
    max-width: 112px;
    width: 100%;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    padding: 8px 14px;
  }
}
@media (max-width: 370px) {
  .p-header__btn.g-header__btn a {
    width: 90px;
    height: auto;
    font-size: 10px;
  }
}

@media (max-width: 990px) {
  .c-drawer-icon.g-drawer-icon {
    right: 22px;
    margin-left: 8px;
  }
}

@media (max-width: 370px) {
  .p-header__logo.g-header__logo img {
    width: 120px;
    height: auto;
  }
}

.p-header__sub-item.g-header__sub-item a {
  padding: 10px 10px 10px 0;
  font-size: 16px;
  font-weight: 700;
  flex-direction: column;
}

.p-header__sub-item.g-header__sub-item:first-of-type {
  border-top: 1px dashed #5287c1;
}

.p-header__sub-item.g-header__sub-item:last-of-type {
  border-bottom: 1px dashed #5287c1;
}

.p-header__sub-item.g-header__sub-item::after {
  width: 30px;
  height: 30px;
}

.p-header__sp-list.g-header__sp-list {
  padding: 30px 30px 0px 30px;
}

.p-header.g-header.active {
  box-shadow:none;
  transition: translate 0s
}

.g-sp-nav-small {
  font-size: 14px;
  font-weight: 500;
}

.g-sp-nav-btn1 .g-btn {
  font-size: 18px;
}

.g-sp-nav-btn1 .g-btn::before {
  right: 32px;
}

.g-sp-nav-btn2 {
  margin-top: 20px;
  margin-bottom: 50px;
}

.g-sp-nav-btn-wrap {
  display: none;
}

@media (max-width: 990px) {
  .p-header__nav.active .g-sp-nav-btn-wrap {
    display: block;
  }
  .g-sp-nav-btn-wrap {
    margin-top: 40px;
  }
}

.g-sp-nav-btn1 .g-btn,
.g-sp-nav-btn2 .g-btn {
  display: block;
  width: 294px;
}

.g-sp-nav-btn1 .mv-btn.g-btn {
  max-width: 294px;
  height: 59px;
  width: 100%;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 30px;
}

.g-btn.g-sp-tel-btn {
  display: flex;
  align-items: center;
  gap: 9px;
  border: 2px solid #333;
  cursor: pointer;
}

.g-sp-tel-btn__icon {
  width: 38px;
  height: 38px;
  flex-shrink: 0;
}

.g-sp-tel-btn__text {
  display: flex;
  flex-direction: column;
}

.g-sp-tel-btn .tel-number {
  font-family: Inter;
  font-size: 20px;
  font-weight: 900;
  letter-spacing: 1.4px;
}

.g-sp-tel-btn .tel-lead {
  font-size: 11px;
  font-weight: 700;
  line-height: 100%;
}

.g-sp-nav-btn2 .g-btn::before {
  display: none;
}

.g-btn.g-sp-tel-btn {
  position: relative;
  z-index: 1;
}




/* mv */
.p-mv.g-mv {
  height: 704px;
  top: 62px;
  position: relative;
}
@media (max-width: 990px) {
  .p-mv.g-mv {
    height: 727px;
    top: 27px;
  }
}

@media (max-width: 990px) {
  _::-webkit-full-page-media, _:future, :root .p-mv.g-mv {
    top: 72px;
  }
}

@-moz-document url-prefix() {
  @media (max-width: 990px) {
    .p-mv.g-mv {
      top: 72px;
    }
  }
}

@media (max-width: 782px) {
  .g-mv {
    height: 727px;
    top: 34px;
  }
}
@media (max-width: 768px) {
  .g-mv {
    height: 739px;
    top: 48px;
  }
}

.g-mv__main-wrap {
  display: flex;
  position: relative;
  width: 100%;
  height: 100%;
}
@media (max-width: 768px) {
  .g-mv__main-wrap {
    flex-direction: column;
    height: auto;
  }
}

.g-mv__main {
  width: 50%;
}
@media (max-width: 768px) {
  .g-mv__main {
  width: 100%;
  height: 294px;
}
}

.g-mv__main img {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  z-index: -1;
}

.g-mv__bottom img {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 45px;
  z-index: 2;
}
@media (max-width: 768px) {
  .g-mv__bottom img {
    height: 50px;
    bottom: -74px;
  }
}

.g-mv__contents-wrap {
  width: 50%;
  position: relative;
  background: #044B98;
}
@media (max-width: 768px) {
  .g-mv__contents-wrap {
    width: 100%;
    height: 506px;
  }
}

.p-mv__contents.g-mv__contents {
  gap: 0;
  top: 88px;
  padding-left: 24px;
}
@media (max-width: 1200px) {
  .p-mv__contents.g-mv__contents {
  padding-left: 0;
}
}
@media (max-width: 768px) {
  .p-mv__contents.g-mv__contents {
  top: 30px;
  padding-left: 0;
}
}

.p-mv__title.g-mv__title {
    margin-bottom: 0px;
    font-size: clamp(2.25rem, 0.821rem + 2.98vw, 3.5rem);
  }
@media (max-width: 768px) {
  .p-mv__title.g-mv__title {
    font-size: clamp(2rem, 1.357rem + 3.81vw, 2.25rem);
  }
}

.g-mv__title.p-mv__title .small {
  font-size: clamp(1.75rem, 0.321rem + 2.98vw, 3rem);
}

.p-mv__text.g-mv__text {
  font-size: clamp(1.125rem, 0.125rem + 2.08vw, 2rem);
  /* font-size: 32px; */
  color: #044B98;
  background: #fff;
  border-radius: 4px;
  text-shadow: none;
  line-height: 130%;
  padding: 4px 10px 9.5px 10px;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
}
@media (max-width: 768px) {
  .p-mv__text.g-mv__text {
    font-size: clamp(1rem, 0.3rem + 3.73vw, 1.175rem);
    /* font-size: 18.8px; */
    margin-bottom: 16px;
    padding: 2px 8px 4px 8px;
    justify-content: center;
  }
}

.g-mv__text .g-number {
  font-size: clamp(1.625rem, 0.339rem + 2.68vw, 2.75rem);
  font-family: Inter;
}
@media (max-width: 768px) {
  .g-mv__text .g-number {
  font-size: 25.9px;
}
}

.g-mv__contents .p-mv__point-item {
  width: clamp(6.25rem, 3.393rem + 5.95vw, 8.75rem);
  height: clamp(6.25rem, 3.393rem + 5.95vw, 8.75rem);
}

.g-mv__contents .p-mv__point-text.--number1 {
  margin-top: clamp(0.25rem, 0.036rem + 0.45vw, 0.438rem);
}

.g-mv__contents .p-mv__point-text.--number1 .number {
  font-size: clamp(1.313rem, 0.455rem + 1.79vw, 2.063rem);
}

.g-mv__contents .p-mv__point-text.--number2 {
  font-size: clamp(0.75rem, 0.536rem + 0.45vw, 0.938rem);
}

.g-mv__contents .p-mv__point-text.--number2 .bottom {
  font-size: clamp(1rem, 0.357rem + 1.34vw, 1.563rem);
}

.g-mv__contents .p-mv__point-text.--number3 {
  font-size: clamp(0.875rem, 0.661rem + 0.45vw, 1.063rem);
}

.g-mv__contents .p-mv__point-text.--number3 .number {
  font-size: clamp(2.125rem, 1.554rem + 1.19vw, 2.625rem);
}

.g-mv__contents .p-mv__point-item::before {
  width: clamp(2rem, 1.286rem + 1.49vw, 2.625rem);
}

.g-mv__text .g-red {
  color: #C62728;
}

.g-mv__point-wrap {
  margin-top: 15px;
}

.g-mv-btn-wrap {
  display: flex;
  gap: 20px;
  margin-top: 8px;
}

@media (max-width: 1200px) {
  .g-mv-btn-wrap {
    flex-direction: column;
  }
}
@media (max-width: 768px) {
  .g-mv-btn-wrap {
    flex-direction: column;
    gap: 15px;
    margin-top: 18px;
    font-size: 18px;
  }
}

.g-btn {
  border-radius: 100px;
  display: flex;
  width: 254px;
  padding-block: 16px;
  padding: 14px 30px 14px 2px;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 150%;
  position: relative;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .g-btn {
    display: flex;
    width: 234px;
    height: 56px;
    padding-inline: 8px 36px;
    font-size: 14px;
  }
}
@media (any-hover: hover) {
  .g-btn:hover {
    opacity: 0.7;
  }
}

.g-btn::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 26px;
  width: 24px;
  height: 24px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media (max-width: 768px) {
  .g-btn::before {
    width: 24px;
    height: 24px;
    right: 12px;
  }
}

.g-btn::before {
  background-image: url(../images/groupe/groupe-arrow-red.svg);
}

.g-btn-blue::before {
  background-image: url(../images/groupe/groupe-arrow-blue.svg);
}

.g-btn.center {
  margin-inline: auto;
}

.mv-btn.g-btn {
  color: #fff;
  background: #C62728;
  border: 2px solid #C62728;
}

@media (max-width: 768px) {
  .mv-btn.g-btn {
    font-size: 18px;
    padding: 17.5px 44px 17.5px 10px;
    width: 254px;
  }
}
@media (max-width: 768px) {
  .mv-btn.g-btn:before {
    right: 30px;
  }
}

.mv-btn.g-btn-blue {
  color: #fff;
  background: #033266;
  border: 2px solid #fff;
}

.p-mv__scroll.g-mv__scroll {
  right: 48px;
    bottom: 88px;
  }

@media (max-width: 768px) {
  .p-mv__scroll.g-mv__scroll {
    bottom: 140px;
  }
}

@media (max-width: 768px) {
  .p-mv__scroll.g-mv__scroll::before {
    -webkit-animation: g-circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
    animation: g-circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
  }
}


@-webkit-keyframes g-circlemove {
  0% {
    bottom: -18px;
  }
  100% {
    bottom: -64px;
  }
}

@keyframes g-circlemove {
  0% {
    bottom: -18px;
  }
  100% {
    bottom: -64px;
  }
}

@media (max-width: 768px) {
  .p-mv__scroll.g-mv__scroll::after {
    height: 50px;
    bottom: -60px;
  }
}

@media (max-width: 768px) {
  .p-mv_bar.g-mv_bar {
    height: 0px;
    background: #fff;
  }
}

/* main */
.g-main {
  margin-top: 64px;
}
@media (max-width: 768px) {
  .g-main {
  margin-top: 102px;
}
}

@media (max-width: 768px) {
  _::-webkit-full-page-media, _:future, :root .g-main {
    margin-top: 145px;
  }
}


/* イントロ */
.g-intro {
  padding-bottom: 70px;
}
@media (max-width: 768px) {
  .g-intro {
  padding-bottom: 48px;
}
}

.g-intro__items {
  display: flex;
  gap: 4.4%;
}
@media (max-width: 1100px) {
  .g-intro__items {
    gap: 2%;
  }
}
@media (max-width: 768px) {
  .g-intro__items {
    flex-direction: column;
    align-items: center;
    gap: 30px;
  }
}

.g-intro__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  max-width: 328px;
  width: 100%;
  text-align: center;
}
@media (max-width: 768px) {
  .g-intro__item {
    flex-direction: row;
    gap: 20px;
    align-items: initial;
  }
}
@media (max-width: 350px) {
  .g-intro__item {
    gap: 10px;
  }
}

@media (max-width: 768px) {
  .g-intro__text-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
}

.g-intro__lead {
  font-size: clamp(0.75rem, 0.607rem + 0.3vw, 0.875rem);
  margin-top: 20px;
}
@media (max-width: 768px) {
  .g-intro__lead {
    font-size: clamp(0.625rem, -0.018rem + 3.81vw, 0.875rem);
  text-align: left;
  margin-top: 0;
}
}

@media (max-width: 768px) {
  .g-intro__lead--small {
    letter-spacing: -0.09em;
    margin-left: -8px;
  }
}

.g-intro__text {
  font-size: clamp(1rem, 0.857rem + 0.3vw, 1.125rem);
  font-weight: 700;
  line-height: 150%;
  margin-top: 8px;
}
@media (max-width: 768px) {
  .g-intro__text {
    font-size: 18px;
    text-align: left;
    margin-top: 2px;
}
}

/* こんなお悩みありませんか */
.g-problems {
  background: #EEE;
  padding-top: 100px;
  padding-bottom: 160px;
}
@media (max-width: 768px) {
  .g-problems {
    padding-top: 60px;
  padding-bottom: 140px;
}
}

.g-section-title {
  font-size: 32px;
  font-weight: 700;
  line-height: 170%;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
@media (max-width: 768px) {
  .g-section-title {
  font-size: 24px;
  line-height: normal;
}
}

.g-section-title::before {
  content: "";
  width: 40px;
  height: 40px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.g-problems-title {
  font-size: 32px;
  font-weight: 700;
  line-height: 170%;
  text-align: center;
}
@media (max-width: 768px) {
  .g-problems-title {
    font-size: clamp(1.25rem, 0.25rem + 5.33vw, 1.5rem);
}
}

.g-problems__items {
  display: flex;
  gap: 5.5%;
  margin-top: 50px;
}
@media (max-width: 768px) {
  .g-problems__items {
    margin-top: 60px;
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }
}

.g-problems__item {
  max-width: 320px;
  width: 100%;
}

.g-problems__content {
  margin-top: 20px;
}

.g-problems__lead {
  font-size: clamp(1.125rem, 0.696rem + 0.89vw, 1.5rem);
  font-weight: 700;
  line-height: 150%;
  text-align: center;
}

.g-problems__text {
  font-size: clamp(0.875rem, 0.732rem + 0.3vw, 1rem);
  font-weight: 400;
  line-height: 170%;
  margin-top: 16px;
}
@media (max-width: 768px) {
  .g-problems__text {
    font-size: 16px;
  }
}

.g-problems__message {
  text-align: center;
  margin-top: 50px;
}
@media (max-width: 768px) {
  .g-problems__message {
    margin-top: 58px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
  }
}

.g-problems__message span {
  display: inline-block;
  font-size: clamp(1.25rem, 0.393rem + 1.79vw, 2rem);
  color: #fff;
  font-weight: 700;
  line-height: 170%;
  text-align: center;
  padding: 0 10px;
  z-index: 0;
  position: relative;
}
@media (max-width: 768px) {
  .g-problems__message span {
    font-size: clamp(1rem, 5.33vw, 1.25rem);
    letter-spacing: -1.3px;
    line-height: 150%;
    display: inline-block;
    width: fit-content;
  }
}

.g-problems__message span:nth-child(1),
.g-problems__message span:nth-child(3) {
  padding-right: 0;
}
@media (max-width: 768px) {
  .g-problems__message span:nth-child(1),
.g-problems__message span:nth-child(3) {
  padding-right: 10px;
}
}
@media (max-width: 768px) {
  .g-problems__message span:nth-child(2),
.g-problems__message span:nth-child(5) {
  padding-right: 0px;
}
}

.g-problems__message span::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1.5em;
  background: #044B98;
  border-radius: 4px;
  z-index: -1;
}

.g-highlight {
  background-color: #F4F98B;
}

/* フォトギャラリースライダー */
.g-about__splide {
  margin-top: -100px;
  padding-block: 0px;
}

.g-about__splide .splide__slide:nth-child(even) {
  width: 400px !important;
}
@media (max-width: 768px) {
  .g-about__splide .splide__slide:nth-child(even) {
    width: 197px !important;
  }
}

.g-about__splide .splide__slide:nth-child(odd) {
  width: 320px !important;
}
@media (max-width: 768px) {
  .g-about__splide .splide__slide:nth-child(odd) {
    width: 158px !important;
  }
}

.g-about__splide .splide__slide {
  display: flex !important;
  justify-content: center;
  align-items: center;
}

/* profile */
.g-profile {
  padding-top: 120px;
  padding-bottom: 116px;
}
@media (max-width: 768px) {
  .g-profile {
  padding-top: 160px;
  padding-bottom: 60px;
}
}

.g-profile__wrap {
  display: flex;
  gap: 48px;
}
@media (max-width: 768px) {
  .g-profile__wrap {
  flex-direction: column;
  margin-top: 20px;
  gap: 20px;
}
}

.g-profile__image {
  width: 37%;
  height: 100%;
}
@media (max-width: 768px) {
  .g-profile__image {
  width: 100%;
}
}

.g-profile__image {
  aspect-ratio: 400 / 400;
  overflow: hidden;
}
@media (max-width: 768px) {
  .g-profile__image {
    max-width: 200px;
    max-height: 200px;
    margin-inline: auto;
  }
}

.g-profile__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.g-profile__content {
  width: 58.6%;
  padding-top: 41.5px;
  padding-bottom: 41.5px;
}
@media (max-width: 768px) {
  .g-profile__content {
  width: 100%;
  padding-top: 0px;
  padding-bottom: 0px;
}
}

.g-profile__title-wrap {
  padding-left: 50px;
  position: relative;
}
@media (max-width: 768px) {
  .g-profile__title-wrap {
  padding-left: 0px;
  text-align: center;
}
}

.g-profile__title-wrap::before {
  background-image: url(../images/groupe/groupe-icon-mongol.png);
  width: 40px;
  height: 40px;
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media (max-width: 768px) {
  .g-profile__title-wrap::before {
    left: 50%;
    top: -50px;
    transform: translateX(-50%);
  }
}

.g-profile__lead {
  font-size: 18px;
  font-weight: 700;
  line-height: 110%;
}
@media (max-width: 768px) {
  .g-profile__lead {
    font-size: 16px;
    line-height: 150%;
  }
}

.g-profile__title {
  font-size: 32px;
  font-weight: 700;
  line-height: 110%;
}
@media (max-width: 768px) {
  .g-profile__title {
    font-size: 24px;
    line-height: 150%;
    margin-top: 4px;
}
}

.g-profile__position {
  font-size: 14px;
  color: #044B98;
  font-weight: 500;
  line-height: 200%;
  margin-top: 24px;
}
@media (max-width: 768px) {
  .g-profile__position {
    text-align: center;
    margin-top: 0;
  }
}

.g-profile__name {
  font-size: 24px;
  font-weight: 700;
  line-height: 150%;
  display: flex;
  align-items: center;
}
@media (max-width: 768px) {
  .g-profile__name {
    justify-content: center;
  }
}

.g-profile__name--english {
  font-size: 16px;
  color: #757575;
  font-weight: 500;
  line-height: 200%;
  padding-left: 16px;
}

.g-profile__text {
  padding: 20px;
  border-radius: 20px;
  background: #F5FAFF;
  line-height: 170%;
  margin-top: 24px;
}
@media (max-width: 768px) {
  .g-profile__text {
    font-size: 16px;
    margin-top: 20px;
  }
}

.g-profile__bottom {
  display: flex;
  gap: 48px;
  margin-top: 30px;
}
@media (max-width: 768px) {
  .g-profile__bottom {
    flex-direction: column;
    gap: 28px;
  }
}

.g-profile__career {
  flex: 1;
}

.g-profile__bottom__title {
  font-size: 20px;
  font-weight: 700;
  line-height: 150%;
}

.g-profile__bottom__text-wrap {
  margin-top: 8px;
}

.g-profile__bottom__text {
  line-height: 170%;
  padding-left: 12px;
  position: relative;
}
@media (max-width: 768px) {
  .g-profile__bottom__text {
    font-size: 16px;
  }
}

.g-profile__bottom__text::before {
  content: "";
  width: 4px;
  height: 100%;
  background: #9FC3EA;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.g-profile__bottom__text + .g-profile__bottom__text {
  margin-top: 16px;
}

.g-profile__lecture {
  flex: 1;
}

/* ツォクトが選ばれる理由 */
.g-reason {
  margin-bottom: 120px;
  overflow: hidden;
}

@media (max-width: 768px) {
  .g-reason {
  margin-bottom: 60px;
  padding-left: 20px;
  padding-right: 20px;
}
}

.g-reason__title__wrap {
  text-align: center;
}

@media (max-width: 768px) {
  .g-section-title.g-reason__title {
    font-size: clamp(1.125rem, 0.02rem + 6.32vw, 1.5rem);
  }
}

.g-reason__title::before {
  background-image: url(../images/groupe/groupe-icon-star.png);
}

.g-reason__items {
  display: flex;
  justify-content: space-between;
  gap: 4.369%;
  margin-top: 50px;

  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding-left: calc(50vw - 50%);
  position: relative;
}
@media (max-width: 768px) {
  .g-reason__items {
    gap: 20px;

    width: auto;
    margin-left: 0;
    padding-left: 0;
  }
}

.g-reason__item {
  background: #FDFFC5;
  border-radius: 20px;
}

.g-reason__content {
  padding: 0 16px 16px 16px;
}

.g-reason__lead {
  font-size: clamp(1.125rem, 0.625rem + 2.67vw, 1.25rem);
  /* font-size: 20px; */
  font-weight: 700;
  line-height: 150%;
}

.g-fix-indent {
  margin-left: -0.5em;
}

.g-reason__text {
  line-height: 170%;
  margin-top: 8px;
}
@media (max-width: 768px) {
  .g-reason__text {
    font-size: 16px;
    margin-top: 12px;
  }
}

.g-reason__items {
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
}

.g-reason__item {
  max-width: 328px;
  width: 100%;
  background: #FDFFC5;
  border-radius: 20px;
}

  .g-reason__wrap {
    position: relative;
    padding-top: 44px;
    padding-left: 12.6%;
  }
  @media (max-width: 768px) {
    .g-reason__wrap {
      padding-left: 0;
      padding-top: 24px;
    }
}

.g-reason__splide {
  padding-bottom: 62px;
}
@media (max-width: 768px) {
  .g-reason__splide {
    padding-bottom: 40px;
  }
}

.g-reason__splide,
.g-reason__slide,
.g-reason__slide .splide__track {
  /* position: static !important; */
  position: relative;
  z-index: 1;
}

.g-reason__splide .splide__pagination {
  bottom: 0;
  width: 100%;
  justify-content: center;
  gap: 16px;
  display: flex;
  position: absolute;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
}

.g-reason__splide .splide__pagination__page {
  width: 10px;
  height: 10px;
  min-width: auto;
  margin: 0;
  opacity: 1;
}

.g-reason__splide .splide__pagination__page.is-active {
  background-color: #044b98;
  transform: scale(1);
}

.g-reason__splide .splide__arrows {
  position: absolute;
  top: 47%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  /* width: 112%; */
  height: 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 10;
}

.g-reason__splide .button {
  background-color: transparent;
  height: 48px;
  transition: 0.2s;
  width: 48px;
  min-width: 48px;
  box-shadow: none;
  opacity: 1;
}

.g-reason__splide .splide__arrow--next {
  right: 0;
}

.g-reason__splide .splide__arrow--prev {
  left: 0;
}

.g-reason__splide .button::before {
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: "";
  height: 48px;
  left: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 48px;
}
@media (max-width: 768px) {
  .g-reason__splide .button::before {
    bottom: 16px;
    left: 1px;
  }
}

.g-reason .prev::before {
  background-image: url(../images/groupe/groupe-prev-arrow.png);
  width: 40px;
  height: 40px;
  left: -10px;
}

/* 次の矢印 */
.g-reason .next::before {
  background-image: url(../images/groupe/groupe-next-arrow.png);
  width: 40px;
  height: 40px;
  right: -20px;
}

.g-reason__splide .splide__arrow:focus {
  outline: none;
}

/* cta */
.g-cta {
  padding-top: 50px;
  padding-bottom: 50px;
  background: #044B98;
  position: relative;
}
@media (max-width: 768px) {
  .g-cta {
    padding-top: 100px;
    padding-bottom: 100px;
    padding-left: 40px;
    padding-right: 40px;
  }
}

.g-cta::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -7px;
  width: 391px;
  height: 162px;
  background-image: url(../images/groupe/groupe-cta1.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media (max-width: 768px) {
  .g-cta::before {
    background-image: url(../images/groupe/groupe-cta1-sp.png);
    width: 135px;
    height: 89px;
    left: 0;
  }
}

.g-cta::after {
  content: "";
  position: absolute;
  top: -7px;
  right: 85px;
  width: 249px;
  height: 184px;
  background-image: url(../images/groupe/groupe-cta2.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media (max-width: 768px) {
  .g-cta::after {
    background-image: url(../images/groupe/groupe-cta2-sp.png);
    width: 139px;
    height: 76px;
    right: 0;
  }
}

@media (max-width: 768px) {
  .g-cta__content {
    max-width: 375px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

}

.g-cta-title {
  color: #fff;
  font-size: 32px;
  font-weight: 700;
  line-height: 170%;
  text-align: center;
  z-index: 3;
  position: relative;
}
@media (max-width: 768px) {
  .g-cta-title {
    font-size: clamp(1.25rem, 0.25rem + 5.33vw, 1.5rem);
    text-align: left;
  }
}

.g-cta__text {
  color: #fff;
  line-height: 170%;
  text-align: center;
  margin-top: 20px;
  z-index: 3;
  position: relative;
}
@media (max-width: 768px) {
  .g-cta__text {
    font-size: 16px;
    text-align: left;
  }
}

.g-cta__btn-wrap {
  display: flex;
  gap: 20px;
  justify-content: center;
  margin-top: 26px;
}
@media (max-width: 768px) {
  .g-cta__btn-wrap {
    flex-direction: column;
    margin-top: 28px;
  }
}

.g-btn.g-cta-btn {
  width: 272px;
  font-size: 20px;
  color: #C62728;
  border: 2px solid #fff;
  background: #fff;
}
@media (max-width: 768px) {
  .g-btn.g-cta-btn {
    width: 100%;
    font-size: 18px;
    padding-top: 16px;
    padding-bottom: 16px;
    height: 59px;
  }
}

.g-cta-btn::before {
  background-image: url(../images/groupe/groupe-arrow-red-bg.svg);
}
@media (max-width: 768px) {
  .g-cta-btn::before {
    right: 46px;
  }
}
@media (max-width: 360px) {
  .g-cta-btn::before {
    right: 20px;
  }
}

.g-cta-tel-btn {
  font-family: Inter;
  color: #fff;
  background: #044B98;
  border: 2px solid #fff;
  border-radius: 100px;
  display: flex;
  width: 250px;
  padding-block: 16px;
  padding-left: 18px;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  line-height: 150%;
  position: relative;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .g-cta__btn-wrap .g-cta-tel-btn {
    display: flex;
    width: 100%;
    height: 62px;
    padding-inline: 8px 36px;
    font-size: 20px;
    padding-left: 52px;
    pointer-events: auto;
    cursor: pointer;
  }
}
@media (max-width: 360px) {
  .g-cta__btn-wrap .g-cta-tel-btn {
    padding-inline: 8px 10px;
    padding-left: 40px;
  }
}
@media (any-hover: hover) {
  .g-cta-tel-btn:hover {
    opacity: 0.7;
  }
}

.g-cta-tel-btn::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 30px;
  width: 19px;
  height: 24px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../images/groupe/groupe_tel-icon-white.svg);

}
@media (max-width: 768px) {
  .g-cta-tel-btn::before {
    width: 24px;
    height: 24px;
    left: 46px;
  }
}
@media (max-width: 360px) {
  .g-cta-tel-btn::before {
    left: 30px;
  }
}

/* 団体旅行の開催事例 */
.g-case {
  margin-top: 116px;
  margin-bottom: 120px;
}
@media (max-width: 768px) {
  .g-case {
    margin-top: 60px;
    margin-bottom: 58px;
  }
}

.g-case__title__wrap {
  text-align: center;
}

.g-case__title::before {
  background-image: url(../images/groupe/groupe-icon-pop.png);
}

.g-case__items {
  margin-top: 44px;
}
@media (max-width: 768px) {
  .g-case__items  {
    margin-top: 24px;
  }
}

.g-case__item {
  border-radius: 20px 20px 0 0;
  border-top: 2px solid #9FC3EA;
  border-right: 2px solid #9FC3EA;
  border-left: 2px solid #9FC3EA;
  border-radius: 20px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .g-case__item {
    border-radius: 10px;
  }
}

.g-case__item + .g-case__item {
  margin-top: 40px;
}
@media (max-width: 768px) {
  .g-case__item + .g-case__item {
    margin-top: 38px;
  }
}

.g-case-summary__wrap {
  display: flex;
  flex-direction: column;
}

.g-case-summary__wrap-sp {
    display: flex;
  }

@media (max-width: 768px) {
  .g-case-summary__wrap-sp {
    flex-direction: column-reverse;
  }
}

.g-case-summary__content {
  width: 69.6296%;
  padding: 24px;
}
@media (max-width: 768px) {
  .g-case-summary__content {
    width: 100%;
    padding: 12px 16px;
  }
}

.c-tour__tag.g-tour__tag {
  font-size: 14px;
  padding-inline: 0;
  padding: 6px 10px 6px 20px;
}

.c-tour__tag.g-tour__tag.--summary{
  padding: 6px 10px 6px 10px;
}

.g-case-summary__content .c-tour__tag.g-tour__tag:hover {
  background-color: inherit;
    color: #044b98;
}

.g-case-summary__content .c-tour__tag::before {
  display: none;
}

.g-case-summary__title {
  font-size: clamp(1.25rem, 0.964rem + 0.6vw, 1.5rem);
  font-weight: 700;
  line-height: 150%;
  margin-top: 4px;
}
@media (max-width: 768px) {
  .g-case-summary__title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

.g-case__info {
  display: flex;
  gap: clamp(0.625rem, -0.804rem + 2.98vw, 1.875rem);
  margin-top: 10px;
}
@media (max-width: 768px) {
  .g-case__info {
    flex-direction: column;
    gap: 6px;
    margin-top: 6px;
  }
}

@media (max-width: 768px) {
  .g-case__name-wrap {
    display: flex;
    justify-content: space-between;
  }
}
@media (max-width: 768px) {
  .g-case__name-wrap .c-tour__tag {
    min-width: 108px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

.g-case__name {
  color: #044B98;
  font-size: 18px;
  font-weight: 700;
  line-height: 150%;
}

.g-case__guests {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
@media (max-width: 768px) {
  .g-case__guests {
    justify-content: start;
  }
}

.g-case__guest {
  font-weight: 500;
  line-height: 170%;
}

.g-cat {
  border-radius: 4px;
  background: #EEE;
  padding: 0 10px;
  }
  @media (max-width: 768px) {
  .g-cat {
    font-size: 14px;
    font-weight: 500;
    line-height: 170%;
  }
}

.g-case__guest-number {
  line-height: 170%;
}
@media (max-width: 768px) {
  .g-case__guest-number {
    font-size: 16px;
  }
}

.g-case__schedules {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
@media (max-width: 768px) {
  .g-case__schedules {
    font-size: 16px;
    justify-content: start;
  }
}

.g-case__schedule {
  font-weight: 500;
  line-height: 170%;
}

.g-case__schedule-day {
  line-height: 170%;
}

.g-case__schedule-day span {
  padding-left: 12px;
}

.g-case-summary__text {
  font-size: clamp(0.75rem, 0.464rem + 0.6vw, 1rem);
  line-height: 170%;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .g-case-summary__text {
    font-size: 16px;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 6px;
  }
}

@media (max-width: 768px) {
  .g-case__item.is-open .g-case-summary__text {
    display: block;
  -webkit-line-clamp: unset;
  -webkit-box-orient: unset;
  overflow: visible;
  text-overflow: unset;
  }
}

.g-case-summary__image-wrap-pc {
  width: 30.3703%;
}

.g-case-summary__image {
  aspect-ratio: 328 / 309;
}
@media (max-width: 768px) {
  .g-case-summary__image {
    width: 100%;
  }
}

.g-case-summary__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.g-case-more {
  color: #fff;
  text-align: center;
  background: #044B98;
  border-radius: 0 0 10px 10px;
  padding: 20px 32px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s;
}
@media (max-width: 768px) {
  .g-case-more {
    font-size: 16px;
    padding: 13px 32px;
    border-radius: 0 0 10px 10px;
  }
}

.g-case-more:hover {
  opacity: 0.7;
}

.g-case-more__icon {
  width: 24px;
  height: 24px;
  padding-left: 28px;
}

.g-case__details {
  display: none;
}

.g-case-details__wrapper {
  display: flex;
  min-height: 842px;
}

.g-case-details__wrap {
  width: 69.888%;
  padding: 0 24px 24px 24px;
}
@media (max-width: 768px) {
  .g-case-details__wrap {
    width: 100%;
  }
}

.g-case-details__title {
  font-size: 18px;
  font-weight: 700;
  line-height: 160%;
  padding-left: 28px;
  margin-top: 20px;
  position: relative;
}

.g-mt-none {
  margin-top: 0;
}

.g-case-details__title::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 24px;
  height: 24px;
  background-image: url(../images/front/voice-head.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.g-case-details__text {
  line-height: 170%;
}

.g-case-details__image {
  width: 30.48%;
  display: flex;
  flex-direction: column;
}
@media (max-width: 768px) {
  .g-case-details__image {
    display: none;
  }
}

.g-case-close {
  color: #fff;
  text-align: center;
  background: #044B98;
  border-radius: 0 0 10px 10px;
  padding: 20px 32px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s;
}

.g-case-close:hover {
  opacity: 0.7;
}

.g-case-close__icon {
  width: 24px;
  height: 24px;
  padding-left: 24px;
}

.g-case__comment {
  border-radius: 10px;
  background: #F5FAFF;
  padding: 20px;
  display: flex;
  gap: 18px;
  margin-top: 20px;
}
@media (max-width: 768px) {
  .g-case__comment {
    flex-direction: column-reverse;
  }
}


.g-case-comment__image-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 15.06%;
}
@media (max-width: 768px) {
  .g-case-comment__image-wrap {
    flex-direction: row;
    align-items: center;
    width: 100%;
  }
}

@media (max-width: 768px) {
  .g-case-comment__image img {
    width: 40px;
  }
}

.g-case-comment__image-name {
  color: #044B98;
  line-height: 120%;
  text-align: center;
}
@media (max-width: 768px) {
  .g-case-comment__image-name {
    font-size: 16px;
  }
}

.g-case-comment__content {
  width: 81.92%;
  letter-spacing: -0.1px;
}
@media (max-width: 768px) {
  .g-case-comment__content {
    width: 100%;
  }
}


.g-case-comment__title {
  font-size: 18px;
  font-weight: 700;
  line-height: 160%;
  padding-left: 28px;
  position: relative;
}

.g-case-comment__title::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 24px;
  height: 24px;
  background-image: url(../images/groupe/groupe-voice-head-red.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.g-case-comment__text {
  line-height: 170%;
}

.g-btn.g-case-btn {
  font-size: 16px;
  width: 270px;
  height: 46px;
  color:#044B98;
  font-weight: 700;
  line-height: 150%;
  border-radius: 100px;
  border: 1px solid #044B98;
  padding: 8px 10px 8px 20px;
  margin-top: 20px;
  margin-left: auto;
  justify-content: normal;
}

@media (max-width: 768px) {
  .g-btn.g-case-btn {
    font-size: clamp(0.875rem, 0.375rem + 2.67vw, 1rem);
    width: clamp(15.625rem, 10.625rem + 26.67vw, 16.875rem);
  }
}

.g-btn.g-case-btn::before {
    background-image: url(../images/groupe/groupe-case-arrow.svg);
    right: 10px;
}

.g-case__item.is-open {
  position: relative;
}

.g-case__item.is-open .g-case-details__image {
  position: absolute;
  top: 0;
  right: 0;
}


.g-case__splide .splide__pagination {
  bottom: 12px;
  width: 100%;
  justify-content: center;
  gap: 16px;
  display: flex;
  position: absolute;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
}
@media (max-width: 768px) {
  .g-case__splide .splide__pagination {
    bottom: 9px;
    gap: 8px;
  }
}

.g-case__splide .splide__pagination__page {
  width: 10px;
  height: 10px;
  min-width: auto;
  margin: 0;
  opacity: 1;
}
@media (max-width: 768px) {
  .g-case__splide .splide__pagination__page {
    width: 6px;
    height: 6px;
  }
}

.g-case__splide .splide__pagination__page.is-active {
  background-color: #044b98;
  transform: scale(1);
}

.g-case__splide .splide__slide {
  border-radius: 20px 20px 0 0;
  overflow: hidden;
}
@media (max-width: 768px) {
  .g-case__splide .splide__slide {
    aspect-ratio: 335 / 200;
    border-radius: 0;
  }
}

.g-case__splide-item .g-case__image {
  aspect-ratio: 335 / 200;
  overflow: hidden;
}

.g-case__splide-item .g-case__image img {
  border-radius: 20px 20px 0 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 768px) {
  .g-case__splide-item .g-case__image img {
    border-radius: 0;
  }
}

/* ご希望の予算で実現できるモンゴルツアーの具体例 */
.g-example {
  padding-top: 98px;
  padding-bottom: 100px;
  background: #eee;
}
@media (max-width: 768px) {
  .g-example {
    padding-top: 60px;
    width: 100%;
    overflow: hidden;
  }
}
@media (max-width: 768px) {
  .g-example .l-inner {
    padding-right: 0;
  }
}

.g-example__title__wrap {
  text-align: center;
}

.g-section-title.g-example__title {
  font-size: clamp(1.75rem, 1.464rem + 0.6vw, 2rem);
}

@media (max-width: 768px) {
  .g-section-title.g-example__title {
    flex-direction: column;
    font-size: clamp(1.25rem, 0.25rem + 5.33vw, 1.5rem);
  }
}

.g-example__title::before {
  background-image: url(../images/groupe/groupe-icon-flow.png);
}

.g-example__content-wrapper {
  position: relative;
  max-height: 956px;
  overflow: hidden;
  margin-top: 44px;
}
@media (max-width: 768px) {
  .g-example__content-wrapper {
    position: relative;
    max-height: 934px;
    margin-top: 40px;
    /* width: 100vw; */
    /* margin-left: calc(50% - 50vw); */
    /* padding-left: calc(50vw - 50%); */
    position: relative;
  }
}


@media (max-width: 768px) {
  .g-example__content {
    position: relative;
  }
}

.g-example__items {
  display: flex;
  gap: 4.583%;
}
@media (max-width: 768px) {
  .g-example__items {
    padding-left: 27px;
  }
}

.g-example__item {
  max-width: 327px;
  width: 100%;
}
@media (max-width: 768px) {
  .g-example__item {
  max-width: 84.4%;
}
}

.g-example__image-wrap {
  position: relative;
}

.g-example__image {
  aspect-ratio: 327 / 214;
  width: 100%;
  height: auto;
}

.g-example__image img {
    border-radius: 10px;
    overflow: hidden;
  }

.g-example__pop {
  max-width: 304px;
  width: 100%;
  display: flex;
  padding: 8px 16px;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  border-radius: 100px;
  background: #044B98;
  color: #fff;
  font-weight: 500;
  text-align: center;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -20px;
  z-index: 2;
}
@media (max-width: 768px) {
  .g-example__pop {
    max-width: 256px;
  }
}

.g-example__pop::after {
  content: "";
  position: absolute;
  bottom: -11px;
  left: 50%;
  transform: translateX(-50%);
  width: 16px;
  height: 12px;
  background: #044B98;
  clip-path: polygon(0% 0%, 100% 0%, 0% 100%);
}

.g-example-plan__title {
  font-size: 24px;
  font-weight: 700;
  line-height: 150%;
  text-align: center;
  margin-top: 41px;
}

.g-example-plan__lead {
  font-size: clamp(0.875rem, 0.732rem + 0.3vw, 1rem);
  line-height: 170%;
  text-align: center;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .g-example-plan__lead {
    font-size: 16px;
    text-align: left;
  }
}

.g-example-plan__infos {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 10px;
}

.g-example-plan__info {
  display: flex;
  gap: clamp(0.5rem, 0.071rem + 0.89vw, 0.875rem);
}

.g-example-plan__number {
  display: flex;
  width: clamp(4.125rem, 2.411rem + 3.57vw, 5.625rem);
  padding: 4px 8px;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  background:#757575;
  font-family: Inter;
  color: #fff;
  font-size: clamp(0.875rem, 0.589rem + 0.6vw, 1.125rem);
  font-style: normal;
  font-weight: 500;
  line-height: 18.293px;
}

@media (max-width: 1200px) {
  .g-example-plan__number {
    padding: 4px 2px;
  }
}
@media (max-width: 768px) {
  .g-example-plan__number {
    padding: 4px 8px;
    width: 90px;
  }
}

.g-example-plan__number span {
  font-family: "Noto Sans JP";
  font-size: 14px;
}

.p-tour__price.g-example-plan__price {
  justify-content: flex-start;
  font-size: clamp(1.25rem, 0.964rem + 0.6vw, 1.5rem);
}
@media (max-width: 768px) {
  .p-tour__price.g-example-plan__price {
    font-size: 24px;
  }
}

.p-tour__price.g-example-plan__price span {
  font-size: 16px;
}

.g-example__day-item {
  margin-top: 10px;
}

.g-example__day {
  font-family: Inter;
  font-size: 24px;
  font-weight: 700;
}

.g-example__day span {
  font-family: "Noto Sans JP";
  font-size: 20px;
  padding-left: 6px;
}

.g-example__descriptions-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.g-example__descriptions {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 8px;
}

.g-cat-blue {
  font-size: clamp(0.875rem, 0.732rem + 0.3vw, 1rem);
  width: fit-content;
  display: flex;
  padding: 4px 10px;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  line-height: 100%;
  color: #044B98;
  border-radius: 4px;
  background: var(--primary-light, #E5EDF5);
}
/* @media (max-width: 1200px) {
  .g-cat-blue {
    padding: 4px 8px;
  }
} */
@media (max-width: 768px) {
  .g-cat-blue {
    font-size: 16px;
  }
}
/* @media (max-width: 375px) {
  .g-cat-blue {
    padding: 4px 2px;
  }
} */

.g-example__description {
  font-size: clamp(0.875rem, 0.732rem + 0.3vw, 1rem);
  font-weight: 500;
  line-height: 12px;
}
@media (max-width: 768px) {
  .g-example__description {
    font-size: 16px;
  }
}

.g-example__program {
  display: flex;
  padding: 10px 12px;
  align-items: start;
  gap: 10px;
  align-self: stretch;
  margin-top: 10px;
  border-radius: 10px;
  background: #FFF;
}
@media (max-width: 768px) {
  .g-example__program {
    font-size: 16px;
  }
}

.g-example__time {
  width: 70px;
  font-weight: 700;
  line-height: 170%;
}

.g-example__service {
  width: calc(100% - 70px - 10px);
  line-height: 150%;
}

.g-example__fade {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 130px;
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(
    to bottom,
    rgba(238, 238, 238, 0) 0%,
    rgba(238, 238, 238, 0.8) 50%,
    rgba(238, 238, 238, 1) 100%
  );
}

.g-example__toggle-btn {
  width: 240px;
  min-width: 0;
  height: 62px;
  font-size: 20px;
  position: absolute;
  bottom: 0px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  padding: 16px 20px 16px 20px;
  cursor: pointer;
}
@media (max-width: 768px) {
  .g-example__toggle-btn {
    font-size: 18px;
  }
}

/* 開いた状態 */
.g-example.is-open .g-example__content-wrapper {
  max-height: none;
  margin-bottom: 80px;
}

.g-example.is-open .g-example__content-wrapper .g-example__content {
  padding-bottom: 50px;
}

.g-example.is-open .g-example__fade {
  display: none;
}

.g-example.is-open .g-example__toggle-btn {
  bottom: -70px;
}

.g-example__icon {
  width: 24px;
  height: 24px;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}

.g-example.is-open .g-example__icon {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
}

@media (max-width: 768px) {
.g-example__splide {
  /* position: static !important; */
  position: relative;
  z-index: 1;
}

.g-example__splide .splide__arrows {
  position: absolute;
  top: 4%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 10;
}
@media (max-width: 470px) {
  .g-example__splide .splide__arrows {
    top: 3.4%;
  }
}
@media (max-width: 375px) {
  .g-example__splide .splide__arrows {
    top: 4%;
  }
}
@media (max-width: 330px) {
  .g-example__splide .splide__arrows {
    top: 3.4%;
  }
}

.g-example__splide .button {
  background-color: transparent;
  height: 48px;
  transition: 0.2s;
  width: 48px;
  min-width: 48px;
  box-shadow: none;
  opacity: 1;
}

.g-example__splide .splide__arrow--prev {
  left: 0px;
}

.g-example__splide .button::before {
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: "";
  height: 48px;
  left: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 48px;
  left: 0px;
}

@media (max-width: 375px) {
  .g-example__splide .button::before {
    bottom: 26px;
  }
}

.g-example .prev::before {
  background-image: url(../images/groupe/groupe-prev-arrow.png);
  width: 40px;
  height: 40px;
}

.g-example .next::before {
  background-image: url(../images/groupe/groupe-next-arrow.png);
  width: 40px;
  height: 40px;
  left: -20px;
}
@media (max-width: 375px) {
  .g-example .next::before {
    left: 0px;
  }
}

.g-example__splide .splide__arrow:focus {
  outline: none;
}
}

/* モンゴル団体旅行を成功に導くための必読記事 */
.g-must {
  padding-top: 114px;
  padding-bottom: 112px;
}
@media (max-width: 768px) {
.g-must {
  padding-top: 60px;
  padding-bottom: 60px;
}
}

.g-must__title__wrap {
  text-align: center;
}

@media (max-width: 768px) {
  .g-section-title.g-must__title {
    flex-direction: column;
    gap: 12px;
  }
}

.g-must__title::before {
  background-image: url(../images/groupe/groupe-icon-must.png);
}
@media (max-width: 768px) {
  .g-must__title::before {
    width: 34px;
    height: 34px;
  }
}

@media (max-width: 768px) {
  .g-must__splide {
    margin-top: 30px;
  }
}

.g-must__items {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  margin-top: 46px;
}

.g-must__item {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.g-must__img {
  aspect-ratio: 247 / 164;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.g-must__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}

@media (max-width: 768px) {
  .g-must__img {
  aspect-ratio: 268 / 178;
}
}

.p-blog__meta.g-blog__meta {
  display: flex;
  justify-content: space-between;
}

.g-cat-blue.g-cat-blue--small {
  font-size: 14px;
}

.g-date {
  color:#757575;
  font-family: Inter;
  font-size: 12px;
}

.g-must__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.g-must__body-title {
  font-size: 20px;
  font-weight: 700;
  line-height: 150%;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.g-must__text {
  line-height: 170%;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 768px) {
  .g-must__text {
    -webkit-line-clamp: 3;
    font-size: 16px;
  }
}

.g-must__info {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

@media (max-width: 768px) {
  .g-must__info .g-tour__tag {
    font-size: 12px;
    padding: 4px 10px 4px 20px;
  }
}

@media (max-width: 768px) {
.g-must__splide {
  padding-bottom: 17px;
}

.g-must__splide .splide__pagination {
  bottom: 0;
  width: 100%;
  justify-content: center;
  gap: 16px;
  display: flex;
  position: absolute;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
}

.g-must__splide .splide__pagination__page {
  width: 10px;
  height: 10px;
  min-width: auto;
  margin: 0;
  opacity: 1;
}

.g-must__splide .splide__pagination__page.is-active {
  background-color: #044b98;
  transform: scale(1);
}

.g-must__splide .splide__arrows {
  position: absolute;
  top: 18%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  /* width: 112%; */
  height: 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 1;
}

.g-must__splide .button {
  background-color: transparent;
  height: 48px;
  transition: 0.2s;
  width: 48px;
  min-width: 48px;
  box-shadow: none;
  opacity: 1;
}

.g-must__splide .splide__arrow--next {
  /* right: 40px; */
}

.g-must__splide .splide__arrow--prev {
  /* left: 40px; */
}

.g-must__splide .button::before {
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: "";
  height: 48px;
  left: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 48px;
}

.g-must .prev::before {
  background-image: url(../images/groupe/groupe-prev-arrow.png);
  width: 40px;
  height: 40px;
}

/* 次の矢印 */
.g-must .next::before {
  background-image: url(../images/groupe/groupe-next-arrow.png);
  width: 40px;
  height: 40px;
}

.g-must__splide .splide__arrow:focus {
  outline: none;
}
}

/* お問い合わせからご旅行当日までの流れ */
.g-flow {
  margin-top: 114px;
  margin-bottom: 118px;
}
@media (max-width: 768px) {
  .g-flow {
  margin-top: 60px;
  margin-bottom: 60px;
}
}

.g-flow__title__wrap {
  text-align: center;
}

@media (max-width: 768px) {
  .g-section-title.g-flow__title {
    flex-direction: column;
  }
}

.g-flow__title::before {
  background-image: url(../images/groupe/groupe-icon-memo.png);
}

.g-flow__items {
  margin-top: 46px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 626px;
  margin-inline: auto;
  padding-left: 11px;
  position: relative;
}
@media (max-width: 768px) {
  .g-flow__items {
    margin-top: 40px;
    padding-left: 0;
  }
}

.g-flow__items::before {
  content: "";
  width: 2px;
  height: calc(100% - 50px);
  background: #044B98;
  position: absolute;
  top: 0;
  left: 41px;
  z-index: -1;
}
@media (max-width: 768px) {
  .g-flow__items::before {
    left: 24px;
    height: calc(100% - 80px);
  }
}
@media (max-width: 310px) {
  .g-flow__items::before {
    left: 24px;
    height: calc(100% - 100px);
  }
}

.g-flow__item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}
@media (max-width: 768px) {
  .g-flow__item {
    gap: 10px;
  }
}

.g-flow__number {
  display: flex;
  width: 64px;
  height: 64px;
  padding: 10px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  background: #044B98;
  color: #FFF;
  text-align: center;
  font-family: Inter;
  font-size: 32px;
  font-weight: 700;
  line-height: 100%;
}
@media (max-width: 768px) {
  .g-flow__number {
    width: 48px;
    height: 48px;
    padding: 7.5px;
  }
}

.g-flow__content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-top: 14px;
  padding-bottom: 14px;
}
@media (max-width: 768px) {
  .g-flow__content {
    width: calc(100% - 48px - 10px);
    padding-top: 6px;
    padding-bottom: 6px;
    gap: 8px;
  }
}

.g-flow__item-title {
  font-size: 24px;
  color: #044B98;
  font-weight: 700;
  line-height: 150%;
}
@media (max-width: 768px) {
  .g-flow__item-title {
    font-size: 22px;
  }
}

.g-flow__text {
  line-height: 170%;
}
@media (max-width: 768px) {
  .g-flow__text {
    font-size: 16px;
  }
}

/* よくある質問 */
@media (max-width: 768px) {
  .g-faq .c-title.--icon02::before {
    left: -50px;
  }
}

@media (max-width: 768px) {
  .g-faq .c-title.--icon02 {
    padding-left: 0;
  }
}

.p-faq__contents.g-faq__contents {
  margin-top: 60px;
  max-width: 1080px;
  gap: 20px;
}
@media (max-width: 768px) {
  .p-faq__contents.g-faq__contents {
  margin-top: 42px;
  gap: 24px;
}
}

.p-faq__item.g-faq__item {
  padding: 24px 30px 26px 30px;
  background: #F5FAFF;
}
@media (max-width: 768px) {
  .p-faq__item.g-faq__item {
  padding: 16px 12px;
}
}

.p-faq__question.g-faq__question {
  font-size: 20px;
  color: #044B98;
  font-weight: 700;
  padding-left: 50px;
}
@media (max-width: 768px) {
  .p-faq__question.g-faq__question {
    font-size: 18px;
  }
}

.p-faq__question.g-faq__question::before {
  width: 40px;
  height: 40px;
  background-image: url(../images/groupe/groupe-question.png);
}
@media (max-width: 768px) {
  .p-faq__question.g-faq__question::before {
    top: 16px;
  }
}

.p-faq__question.g-faq__question::after {
  right: 8px;
  width: 18px;
  height: 19px;
}
@media (max-width: 768px) {
  .p-faq__question.g-faq__question::after {
    top: 14px;
  }
}

.p-faq__answer.g-faq__answer {
  font-weight: 500;
  padding-top: 28px;
  padding-left: 50px;
}

.p-faq__answer.g-faq__answer::before {
  width: 40px;
  height: 40px;
  background-image: url(../images/groupe/groupe-answer.png);
  top: 20px;
}

.g-faq__link {
  color: #044B98;
  font-weight: 500;
  line-height: 150%;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

/* Instagram */
.g-instagram {
  margin-top: 116px;
  margin-bottom: 88px;
}
@media (max-width: 768px) {
  .g-instagram {
  margin-top: 62px;
  margin-bottom: 40px;
}
}

.g-instagram__title__wrap {
  text-align: center;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .g-instagram__title__wrap {
  margin-bottom: 12px;
}
}

.g-instagram__title::before {
  background-image: url(../images/groupe/groupe-icon-instagram.png);
}

/* お問い合わせ */
.g-contactForm {
  padding-top: 100px;
  padding-bottom: 41px;
  background: #FAFAFA;
}
@media (max-width: 768px) {
  .g-contactForm {
    padding-top: 60px;
    padding-bottom: 60px;
    margin-bottom: 60px;
  }
}

.g-contact__link {
  margin-top: 64px;
  max-width: 892px;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .p-contact__link.g-contact__link {
  margin-top: 40px;
  max-width: 375px;
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
  align-items: center;
  gap: 14px;
}
}

.g-contactForm__wrap {
  margin-top: 46px;
}
@media (max-width: 768px) {
  .g-contactForm__wrap {
  margin-top: 30px;
}
}

@media (max-width: 768px) {
  .g-contactForm .p-contactForm__row-date.flex {
    display: block;
  }
}

@media (max-width: 768px) {
  .g-contactForm .p-contactForm__row-head {
    font-size: 16px;
  }
}

.g-contact-name {
  width: 344px;
}
@media (max-width: 400px) {
  .g-contact-name {
  width: 100%;
}
}

.p-contactForm.g-contactForm input[type=text],
input[type=email],
.p-contactForm.g-contactForm input[type=tel],
.p-contactForm.g-contactForm input[type=date],
.p-contactForm.g-contactForm input[type=number],
.p-contactForm.g-contactForm textarea {
  padding: 14px 20px;
  background: #fff;
}
@media (max-width: 768px) {
  .p-contactForm.g-contactForm input[type=text],
input[type=email],
.p-contactForm.g-contactForm input[type=tel],
.p-contactForm.g-contactForm input[type=date],
.p-contactForm.g-contactForm input[type=number],
.p-contactForm.g-contactForm textarea {
  font-size: 16px;
}
}

@media (max-width: 768px) {
  .g-contactForm .p-contactForm__row-date.flex.number {
    display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding-right: 35px;
  gap: 0 24px;
}
}

.g-contactForm .p-contactForm__row-date.flex.number label {
  margin-top: 8px;
}
@media (max-width: 768px) {
  .g-contactForm .p-contactForm__row-date.flex.number label {
    justify-content: space-between;
    margin-bottom: 0;
}
}
@media (max-width: 768px) {
  .g-contactForm .p-contactForm__row-date.flex.number label span {
    font-size: 16px;
}
}

.p-contactForm.g-contactForm .p-contactForm__row.g-contactForm__row input[type=text] {
  font-size: 20px;
  padding: 12px 10px;
  font-family: Inter;
  text-align: center;
  width: 56px;
  height: 48px;
}

.g-contactForm__row-notice {
  color:#757575;
  padding-top: 16px;
  padding-bottom: 26px;
}
@media (max-width: 768px) {
  .g-contactForm__row-notice {
    font-size: 16px;
    padding-top: 14px;
    padding-bottom: 30px;
    line-height: 120%;
  }
}

.p-contactForm__row.g-contactForm__row-radio {
  margin-top: 22px;
}
@media (max-width: 768px) {
  .p-contactForm__row.g-contactForm__row-radio {
    margin-top: 32px;
  }
}

.g-contactForm__check {
  margin-top: 10px;
}

.g-contactForm .g-contactForm__row-check {
  margin-top: 40px;
  margin-bottom: 40px;
}

.p-contactForm__check.g-contactForm__check label input[type=checkbox],
.p-contactForm__check.g-contactForm__check label input[type=radio] {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
}

.p-contactForm__check.g-contactForm__check label {
  position: relative;
/*   padding-left: 24px; */
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}
@media (max-width: 768px) {
  .p-contactForm__check.g-contactForm__check label {
/*     padding-left: 32px; */
  }
}

@media (max-width: 375px) {
  .p-contactForm__check.g-contactForm__check
  .wpcf7-list-item.last label {
    padding-left: 0;
    display: block;
  }
}

@media (max-width: 485px) {
  .p-contactForm__check.g-contactForm__check .wpcf7-list-item:nth-child(2) label {
    padding-left: 0;
  }
}

@media (max-width: 768px) {
  .p-contactForm__check.g-contactForm__check label span {
    font-size: clamp(0.875rem, 0.375rem + 2.67vw, 1rem);
  }
}

@media (max-width: 768px) {
  .g-contactForm .p-contactForm__check a {
    font-size: 14px;
  }
}

.p-contactForm__check.g-contactForm__check input[type="radio"] + .wpcf7-list-item-label::after {
  border-bottom: 2px solid #044b98;
  border-left: 2px solid #044b98;
  content: "";
  height: 6px;
  width: 10px;
  position: absolute;
  left: 4px;
  top: 7px;
  transform: rotate(-45deg);
  opacity: 0;
  transition: all 0.3s ease;
}

.p-contactForm__check.g-contactForm__check input[type="radio"]:checked + .wpcf7-list-item-label::after {
  opacity: 1;
}

.g-contactForm .wpcf7-list-item::before,
.g-contactForm .wpcf7-list-item::after {
  pointer-events: none;
}

.g-contactForm .wpcf7-list-item input[type="checkbox"] + span::before,
.g-contactForm .wpcf7-list-item input[type="checkbox"] + span::after {
  pointer-events: none;
} 


.p-contactForm__check.g-contactForm__check label:hover::before {
  border: 1px solid #044b98;
}

.p-contactForm__check.g-contactForm__check-bottom .wpcf7-list-item input[type="checkbox"] {
  opacity: 0;
  margin: 0;
  cursor: pointer;
}

.p-contactForm__check.g-contactForm__check .wpcf7-list-item.first label {
  padding-left: 0;
}

.p-contactForm__check.g-contactForm__check-bottom span.wpcf7-list-item {
  position: relative;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  border: 2px solid red;
  width: 17px;
  height: 17px;
  border-radius: 2px;
border: 1px solid #BDBDBD;
background: #FFF;
}

.p-contactForm__check.g-contactForm__check-bottom span.wpcf7-list-item::before {
  border-bottom: 2px solid #044b98;
  border-left: 2px solid #044b98;
  content: "";
  height: 6px;
  width: 10px;
  position: absolute;
  left: 4px;
  top: 7px;
  transform: rotate(-45deg);
  opacity: 0;
  transition: all 0.3s ease;
}

.p-contactForm__check.g-contactForm__check-bottom input[type="radio"]:checked + .wpcf7-list-item-label::after {
  opacity: 1;
}

.p-contactForm__check.g-contactForm__check-bottom
span.wpcf7-list-item:has(input:checked)::after {
opacity: 1;
}

.p-contactForm__check.g-contactForm__check-bottom span.wpcf7-list-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #bdbdbd;
  border-radius: 2px;
  background: #fafafa;
}

.p-contactForm__check.g-contactForm__check-bottom span.wpcf7-list-item::after {
  content: "";
  position: absolute;
  left: 2px;
  top: -1px;
  width: 16px;
  height: 8px;
  border-left: 2px solid #044b98;
  border-bottom: 2px solid #044b98;
  transform: rotate(-45deg);
  opacity: 0;
  transition: all 0.2s ease;
}

.p-contactForm__check.g-contactForm__check-bottom span.wpcf7-list-item.checked::after {
  opacity: 1;
}

.p-contactForm__check.g-contactForm__check label span::before {
  background: #fff;
}

.p-contactForm__check.g-contactForm__check-bottom .p-contactForm__row-date {
  position: relative;
}

.p-contactForm__row-date.g-contactForm__check-bottom span {
  top: 4px;
  
}

.p-contactForm__row-date.g-contactForm__check-bottom {
  text-align: center;
  margin-top: 9px;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .p-contactForm__row-date.g-contactForm__check-bottom {
    font-size: 14px;
  }
}

.g-contactForm .p-contactForm__row + .p-contactForm__row.p-contactForm__submit {
  margin-top: 0;
}
@media (max-width: 768px) {
  .g-contactForm .p-contactForm__row + .p-contactForm__row.p-contactForm__submit {
    max-width: 335px;
    width: 100%;
  }
}

@media (max-width: 768px) {
  #groupe_page .p-footer {
    border-top: none;
  }
}
@media (max-width: 768px) {
  .g-contactForm__wrap #js-submit {
    font-size: 16px;
  }
}

@media (max-width: 768px) {
    .g-contactForm__wrap .p-contactForm__submit::after {
      width: 30px;
      height: 30px;
    }
  }

.g-contactForm__wrap #js-submit:disabled {
  background-color: #BDBDBD;
  cursor: not-allowed;
  opacity: 1;
}

.g-contactForm__wrap #js-submit.enabled {
  background-color: #044B98;
  cursor: pointer;
}

.g-contactForm__wrap #js-submit.enabled:hover {
  opacity: 0.8;
}

.screen-reader-response,.wpcf7-response-output{
  display: none !important;
}

.g-contactForm__wrap .wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 32px;
}
.g-contactForm__wrap .wpcf7-radio .wpcf7-list-item{
  margin-left: 0;
}

.g-contactForm__wrap .wpcf7-radio .wpcf7-list-item label{
  padding-left: 0;
}

/* インスタグラムの各投稿の枠を事前に確保する */
#sb_instagram #sbi_images .sbi_item {
  aspect-ratio: 3 / 4 !important; /* ソースの3:4に合わせる */
  background-color: #f0f0f0;    /* 読み込み中の背景色 */
  overflow: hidden;
}

/* 画像自体のガタつきを抑える */
#sb_instagram #sbi_images .sbi_item img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}