/* ===============================
   共通
================================ */

.container {

}

.common_container {
   padding: 80px 0;
}

img {
   max-width: 100%;
   height: auto;
}

header img {
  max-width: none;
}

a {
   text-decoration: none;
}

.yusei-magic-regular {
  font-family: "Yusei Magic", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.nyuukai-list-spacer {
   padding-bottom: 20px;
}

.pc-text {
   display: block;
}

.sp-text {
   display: none;
}

/* ===============================
   コンテンツ１
================================ */

.content1 {
 text-align: center;
}

.common_container:first-of-type {
  /* padding-top: 0; */
}

.spacer {
   display: block;
   padding-top: 10px;
}

.main-visual {
   display: block;
   max-width: 1200px;
   width: 100%;
   margin: 0 auto;
}

.main-visual img {
   width: 100%;
}

.content-title span {
   font-size: 40px;
   display: inline-block;
   text-decoration: underline;
   text-decoration-thickness: 6px;
   text-decoration-color: #54BAC2;
   text-underline-offset: 4px;
}

.content-desc {
   font-size: 24px;
   font-weight: bolder;
   text-align: center;
   padding-top: 8px;
   padding-bottom: 20px;
}



.nyuukai-list {
   display: flex;
   gap: 40px;
   max-width: 1280px;
   justify-content: center;
   padding-top: 60px;
}

.nyuukai-wrap {
   width: 389px;
}

.nyuukai-wrap img {
   width: 100%;
   height: auto;
}

.contact-form-wrap {

}

.contact-form-wrap img {
   box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25);
}

.gojokai_contact_area_r {
   /* width: 504px;
   padding: 30px 60px 0 ; */
}

#content1 .gojokai_contact_area_r,
#content3 .gojokai_contact_area_r,
#content4 .gojokai_contact_area_r,
#content5 .gojokai_contact_area_r {
   width: 389px;
   padding: 30px 60px 0;
   border-radius: 15px;
   /* box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25); */
}

.gojokai_drf_text {

}

#content1 .common_grn_btn,
#content3 .common_grn_btn,
#content4 .common_grn_btn,
#content5 .common_grn_btn {
   display: flex;
   justify-content: center;
   align-items: center;
   padding: 24px 10px !important;
}

#content1 .common_grn_btn a {
   
}

.manga-cta {
   /* margin-inline: auto; */
   text-align: center;
}

.common_container {

}

.section-line {
   padding: 80px 0 0;
}

.section-line-02 {
   padding-top: 80px;
}

.section-title {
   padding-bottom: 48px;
}

/* button-cardセクション見出し全体 */
.section-title {
  position: relative;
 text-align: center;
 color: #333;
 font-weight: bold;
 margin: 60px auto;
 width: fit-content;
 padding: 0 80px; /* 左右の線スペース */
}
/* 左右の斜線（疑似要素） */
.section-title::before,
.section-title::after {
 content: "";
 position: absolute;
 top: 60%;
 width: 2px;
 height: 140px;
 background: #222;
}
/* 左線 */
.section-title::before {
 left: 20px;
 transform: translateY(-50%) rotate(-22deg);
}
/* 右線 */
.section-title::after {
 right: 20px;
 transform: translateY(-50%) rotate(22deg);
}
/* 上段 */
.section-title-strong {
 position: relative;
 display: inline-block;
 font-size: 40px;
 /* line-height: 1.1; */
 letter-spacing: 0.08em;
}
/* 黄色マーカー（疑似要素） */
.section-title-strong::after {
 content: "";
 position: absolute;
 left: -2%;
 bottom: 12px;
 width: 102%;
 height: 20px;
 background: #ffff8e;
 z-index: -1;
}
/* 下段 */
.bottom {
 display: block;
 margin-top: 10px;
 font-size: 40px;
 letter-spacing: 0.08em;
}

.section-title-strong {
   
}

.manga-cta-wrap {
   display: flex;
   gap: 64px;
   flex-wrap: wrap;
   justify-content: center;
}

.button-card {
   display: flex;
   flex-direction: column;
   padding: 20px 10px;
   border-radius: 15px;
   box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25);
}

.button-card a {
   text-decoration: none;
}

.button-card a:hover {
   /* opacity: 0.6; */
}

.button-card {
  background-color: #fff;
  transition: 0.3s;
}

.button-card:hover {
  opacity: 0.6;
  background-color: #f0f8ff;
}

.button-card span {
   display: block;
}

.button-card-text01 {
   
}

.button-card-text02 {
   font-size: 22px;
   font-weight: bold;
}

.button-img {

}

.button-img span {
   font-size: 14px;
}

.manga-cta-wrap-top {

}

.manga-cta-wrap-bottom {

}

/* ===============================
   コンテンツ２
================================ */

.content2 {
   text-align: center;
   background-color: #F7FFFE;
}


.manga-title-inner {
  position: relative;
  display: inline-block; /* ←これが超重要 */
}

.manga-title-inner::after {
  content: "";
  position: absolute;
  left: -10px;
  bottom: -2px;
  width: 100%; /* ←テキスト幅にピッタリ */
  height: 15px;
  background: #ffff8e;
  z-index: -1;
  box-shadow: 0px 4px 4px rgba(188, 227, 239, 0.25);

}



.manga-title {
   font-family: 'Yusei Magic';
   font-weight: normal;
   padding: 0px 0 60px;
   font-size: 24px;
   letter-spacing: 0.5em;
   position: relative;
   z-index: 0;

}

/* 黄色マーカー（疑似要素）
.manga-title::after {
 content: "";
 position: absolute;
 left: 26%;
 bottom: 56px;
 width: 46%;
 height: 20px;
 background: #ffff8e;
 z-index: 0;
 /* box-shadow: 0px 4px 4px rgba(188, 227, 239, 0.25); */

 */

/* #content2 .manga-title-inner::after,
#content4 .manga-title-inner::after {
  box-shadow: 0px 4px 4px rgba(188, 227, 239, 0.25);
} */

.manga-title-strong {
   font-size: 32px;
}

.section-title-img {
   max-width: 1440px;
   padding-bottom: 60px;
}

.section-title-img img {
   width: 100%;
}

.text-hide {
   display: none;
}

.caption-text {
   font-size: 24px;
   margin-bottom: 48px;
}

.manga-img {
   /* padding-bottom: 20px; */
   max-width: 274px;
   margin-inline: auto;
}

.manga-img img {
   width: 100%;
}

.manga-img span {
   display: inline-block;
   font-size: 12px;
   text-align: left;
   padding-top: 25px;
}

/* ===============================
   コンテンツ３
================================ */

.content3 {
   text-align: center;

}

/* ===============================
   コンテンツ４
================================ */

.content4 {
   text-align: center;
   background-color: #F7FFFE;
}

.important-text {
   font-size: 12px;
}

/* ===============================
   コンテンツ５
================================ */

.content5 {
   text-align: center;

}

#content5 .manga-img {
  display: flex;
  gap: 80px;
  justify-content: center;
  padding-bottom: 25px;
}

.important-text02 {
   font-size: 12px;
   display: inline-block;
   text-align: left;
}

.cta-section {

}

.cta-banner-wrap {
   background-color: #B4D6CF;
   /* width: 1920px; */
   width: 100%;
   padding: 80px 0;
   /* margin-bottom: 30px; */
}

.cta-banner-wrap .banner-list01 {
  display: grid;
  grid-template-columns: repeat(3, 400px);
  justify-content: center;
  /* align-items: center; */
  gap: 32px;
}

.banner-list01 img,
.banner-list02 img {
   box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25);
}

.cta-banner-wrap .banner-list02 {
  display: grid;
  grid-template-columns: repeat(2, 400px);
  justify-content: center;
  /* align-items: center; */
  gap: 32px;
  padding-top: 32px;
}

.cta-banner-wrap img {
   /* width: 400px; */
   width: 100%;
  height: auto;
}

.cta-section-titile {
   font-size: 24px;
   font-weight: bold;
   text-decoration: underline;
   text-decoration-thickness: 10px;
   text-decoration-color: #FDF77E;
   text-underline-offset: 5px;
   padding-bottom: 40px;
   text-align: center;
}


/* ===============================
             SP
================================ */


@media screen and (max-width: 768px) {

/* ===============================
             共通
================================ */
.main {
   padding: 0 40px;
}

.common_container {
   padding: 40px 0;
}

.caption-text {
   text-align: left;
}

.pc-text {
   display: none;
}

.sp-text {
   display: block;
   font-size: 14px;
}

.spacer {
   padding: 12.5px 0 0;
}

.nyuukai-list-spacer {
   padding-bottom: 0;
}

.manga-title-inner {
  position: relative;
  display: inline-block;
}

.manga-title-inner::after {
  content: "";
  position: absolute;
  left: -5px;
  bottom: 0px;
  width: 100%;
  height: 10px;
  background: #ffff8e;
  z-index: -1;
  box-shadow: 0px 4px 4px rgba(188, 227, 239, 0.25);

}

.section-line {
   padding: 40px 0 0;
}

.section-line-02 {
   padding-top: 40px;
}

/* ===============================
   SP・コンテンツ１
================================ */

.content1 {
 text-align: center;
 padding: 0 10px;
}

.contaner {
   padding: 40px 0;
}

.main-visual {
   display: block;
   /* max-width: 390px; */
   width: 100%;
   margin: 0 auto;
}

.main-visual img {
   width: 100%;
}

.content-title {
   padding: 40px 0 20px;
}

.content-title span {
   font-size: 24px;
   display: inline-block;
   text-decoration: underline;
   text-decoration-thickness: 6px;
   text-decoration-color: #54BAC2;
   text-underline-offset: 4px;
}

.content-desc {
   font-size: 14px;
   font-weight: bolder;
   text-align: center;
   /* padding-top: 20px; */
   padding: 20px 0 0 0;
   /* padding-bottom: 20px; */
}



.nyuukai-list {
   flex-direction: column;
   /* justify-content: center; */
   align-items: center;
   width: 100%;
   padding-top: 40px;
   gap: 25px 0;
}

.content3 .nyuukai-list,
.content5 .nyuukai-list {
   padding-bottom: 40px;
}

.nyuukai-wrap {
   width: 100%;
   max-width: 305px;
}

.nyuukai-wrap img {
   width: 100%;
   height: auto;
}

.contact-form-wrap {

}

.contact-form-wrap img {
   box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25);
}

.gojokai_contact_area_r {
   /* width: 504px;
   padding: 30px 60px 0 ; */
}

#content1 .gojokai_contact_area_r,
#content3 .gojokai_contact_area_r,
#content4 .gojokai_contact_area_r,
#content5 .gojokai_contact_area_r {
   width: 100%;
   max-width: 286px;
   /* padding: 30px 60px 0; */
   padding: 18px 20px !important;
   margin: 0;
   border-radius: 15px;
   /* box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25); */
}

.gojokai_drf_text {
   font-size: 16px;
}

#content1 .common_grn_btn,
#content3 .common_grn_btn,
#content4 .common_grn_btn,
#content5 .common_grn_btn {
   display: flex;
   justify-content: center;
   align-items: center;
   padding: 24px 10px !important;
   margin-top: 10px;
}

#content1 .common_grn_btn a {
   
}

.manga-cta {
   /* margin-inline: auto; */
   text-align: center;
}

.common_container {

}

.section-line {
   max-width: 388px;
}

.section-line img {
   width: 100%;
}

.section-title {
   padding-bottom: 48px;
}

.section-title-strong {
   
}

/* button-cardセクション見出し全体 */
.section-title {
  position: relative;
 text-align: center;
 color: #333;
 font-weight: bold;
 margin: 60px auto;
 width: fit-content;
 padding: 0 70px; /* 左右の線スペース */
 font-size: 22px;
}
/* 左右の斜線（疑似要素） */
.section-title::before,
.section-title::after {
 content: "";
 position: absolute;
 top: 60%;
 width: 2px;
 height: 140px;
 background: #222;
}
/* 左線 */
.section-title::before {
 left: 20px;
 transform: translateY(-50%) rotate(-22deg);
}
/* 右線 */
.section-title::after {
 right: 20px;
 transform: translateY(-50%) rotate(22deg);
}
/* 上段 */
.section-title-strong {
 position: relative;
 display: inline-block;
 font-size: 32px;
 /* line-height: 1.1; */
 letter-spacing: 0.08em;
}
/* 黄色マーカー（疑似要素） */
.section-title-strong::after {
 content: "";
 position: absolute;
 left: -2%;
 bottom: 10px;
 width: 102%;
 height: 14px;
 background: #ffff8e;
 z-index: -1;
}

.manga-cta-wrap {
   display: flex;
   gap: 24px;
   flex-wrap: wrap;
   justify-content: center;
   width: 100%;
}

.button-card {
   display: flex;
   flex-direction: column;
   border-radius: 15px;
   box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.25);
   width: 100%;
   max-width: 330px;
}

.button-card img {
   width: 100%;
}

.button-card span {
   display: block;
}

.button-card-text01 {
   
}

.button-card-text02 {
   font-size: 22px;
   font-weight: bold;
}

.button-img {

}

.button-img span {
   font-size: 14px;
}

#content2 .manga-title,
#content4 .manga-title {
   padding: 0 0 25px;
}

.manga-cta-wrap-top {

}

.manga-cta-wrap-bottom {

}

/* ===============================
   SP・コンテンツ２
================================ */

.content2 {
   text-align: center;
   padding: 0 10px;
}

.manga-title {
   font-family: 'Yusei Magic';
   font-weight: normal;
   padding: 40px 0 25px;
   font-size: 16px;
   letter-spacing: 0.5em;
}

.manga-title-strong {
   font-size: 24px;
}

.section-title {
   max-width: 388px;
}

.section-title-img {
   padding-bottom: 25px;
   /* width: 100%; */
   max-width: 388px;
}

.section-title-img img {
   width: 100%;
}

.button-section-title {
   width: 388px;
}

.text-hide {
   display: none;
}

.caption-text {
   font-size: 14px;
   margin-bottom: 25px;
}

.manga-img {
   max-width: 274px;
   margin-inline: auto;
}

.manga-img img {
   width: 100%;
}

.manga-img span {
   display: inline-block;
   font-size: 12px;
   text-align: left;
   padding-top: 25px;
}

/* ===============================
   SP・コンテンツ３
================================ */

.content3 {
   text-align: center;
   padding: 0 10px;
}

#content3 .manga-title {
   font-family: 'Yusei Magic';
   /* font-weight: normal; */
   padding: 40px 0 25px;
   font-size: 14px;
   letter-spacing: 0.1em;
}

#content3 .manga-title-strong {
   font-size: 22px;
}

/* ===============================
   SP・コンテンツ４
================================ */

.content4 {
   text-align: center;
   padding: 0 10px;

}

.important-text {
   font-size: 12px;
}

/* ===============================
   SP・コンテンツ５
================================ */

.content5 {
   text-align: center;
   padding: 0 10px;

}

.important-text02 {
   font-size: 12px;
}

#content5 .manga-img {
  flex-direction: column;
  gap: 0;
}

.cta-section {

}

.cta-banner-wrap {
   padding: 40px 0;
}

.cta-banner-wrap .banner-list01,
  .cta-banner-wrap .banner-list02 {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 16px;
}

.cta-banner-wrap .banner-list02 {
  padding-top: 16px;
}

  .cta-banner-wrap img {
    width: 310px;
    max-width: 100%;
    height: auto;
    display: block;
  }

.cta-section-titile {
   font-size: 24px;
   font-weight: bold;
   text-decoration: underline;
   text-decoration-thickness: 10px;
   text-decoration-color: #FDF77E;
   text-underline-offset: 5px;
   padding-bottom: 40px;
   text-align: center;
}

}