@charset "utf-8";
@import url("root.css");


/* CSS Document */

/* ==========================================================================
   共通
   ========================================================================== */
   
/* ==========================================================================
   タイトル
   ========================================================================== */
   
#sec_title{
height: 400px;
margin: 80px auto 0;
display: flex;
justify-content: center;
align-items: center;
}

#sec_title h1{
  position: relative;
  font-size: 34px;
  font-weight: 200;
  padding:20px 100px;
  z-index: 1;
}

#sec_title h1::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.6) 30%, rgba(255,255,255,0.6) 70%, rgba(255,255,255,0) 100%);
  border-radius: 8px;
  z-index: -1;
}

#sec_title h1::first-letter {color: #ddcc99;}


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

#sec_title{
height: 25vh;
margin: 60px auto 0;
display: flex;
justify-content: center;
align-items: center;
width: 100%;
}

#sec_title h1{
  position: relative;
  font-size: 24px;
  padding:20px 10px;
  z-index: 1;
}

#sec_title h1::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.6) 30%, rgba(255,255,255,0.6) 70%, rgba(255,255,255,0) 100%);
  border-radius: 8px;
  z-index: -1;
}

#sec_title h1::first-letter {color: #ddcc99;}


}
/* ==========================================================================
   リンク
   ========================================================================== */

.ank_link{}

.ank_link ul{
display: flex;
  justify-content: flex-start;
flex-wrap: wrap;
}

.ank_link li{
  box-sizing: border-box;
  width:32%;
margin:0 2% 0 0;
}
.ank_link li:nth-child(3n){
margin:0 0 0 0;
}

.ank_link li a{
    display: block;
    width:100%;
    border: 1px solid #ddcc99;
    color: #333333;
    font-size: 16px;
    text-decoration: none;
    text-align: left;
    cursor: pointer;
    transition: opacity 0.3s ease-in-out;
    position: relative;
    padding: 20px 20px;
    margin: 0 auto 20px;
    line-height: 1;
    box-shadow: 2px 2px 20px rgba(250, 185, 182, 0.1);
    background-color: #ffffff;
    transition: background-color 0.5s ease, color 0.5s ease;
}

.ank_link li a::after {
  font-family: "Font Awesome 6 Free"; /* バージョンによって違う！ */
  font-weight: 700;
    content: "\f078";
    padding: 0;
    position: absolute;
    top: 33%;
    right:20px;
    color: #ddcc99;
    text-align: center;
    font-size: 20px;
    transition: opacity 0.3s ease-in-out;
}


.ank_link li a:hover {
  background-color: #ddcc99;  /* ← 通常の枠線と同じ色に */
  color: #ffffff;             /* ← 文字色を白に */
}

.ank_link li a:hover::after {
  color: #ffffff;             /* アイコンの色も反転 */
}


@media screen and (max-width: 979px) {
.ank_link{}
.ank_link ul{}

.ank_link li{width:100%;margin: 0 auto 10px;}

.ank_link li a{
    padding: 10px 10px;
    margin: 0 auto 0;
    line-height: 1;
	font-size: 14px;
}

.ank_link li a::after {
    top:30%;
    right:10px;
    font-size:14px;
}


.ank_link li a:hover {
  background-color: #ddcc99;  /* ← 通常の枠線と同じ色に */
  color: #ffffff;             /* ← 文字色を白に */
}

.ank_link li a:hover::after {
  color: #ffffff;             /* アイコンの色も反転 */
}

.ank_link li:nth-child(3n) {
    margin: 0 0 10px 0;
}
}

.img_radius_sec img{
    border-radius: 40px;

}

@media screen and (max-width: 979px) {
.img_radius_sec img{
    border-radius: 20px;

}
}

/* ==========================================================================
   テキストボックス
   ========================================================================== */

.txt_right{
margin: 0 0 0 40px;
}

.txt_left{
margin: 0 40px 0 0;
}

.txt_center{
text-align: center;
line-height: 2;
}


@media screen and (max-width: 979px) {
.txt_right{margin:0 auto;}
.txt_right p{font-size: 16px;}

.txt_left{margin:0 auto;}

.txt_center{
text-align:left;
line-height: 2;
}

}
/* ==========================================================================
   当スタジオについて
   ========================================================================== */
#concept .txt_center{
text-align: center;
padding: 10px 0 0 0;
margin: 0 auto 40px;
}

#concept h3{
font-size: 34px;
padding: 0 0 20px 0;
}

#concept .access_box{
margin: 40px auto 40px;
padding:0 0 40px 0;
}

#concept .access_box dl{
width: 780px;
font-size: 16px;
}

#concept .access_box dd{
width: 660px;
font-size: 16px;
}

#concept .row_box{
justify-content: flex-start;
	margin:40px auto 0;
}
@media screen and (max-width: 979px) {
#concept .txt_center{
text-align: center;
padding: 10px 0 0 0;
margin: 0 auto 0;
font-size: 14px;
}

#concept h3{
font-size:20px;
padding: 0 0 20px 0;
}

#concept .col_60{
padding: 0 0 20px 0;
}

#concept .col_40 img{
width: 90%;
margin: 0 auto;
text-align: center;
display: flex;
justify-content: center;
}

#concept .col_03 img{
width: 90%;
margin: 0 auto;
text-align: center;
display: flex;
justify-content: center;
}


#concept .access_box{
margin: 20px auto 20px;
padding: 0 0 0 0;
}

#concept .access_box dl{
width:100%;
font-size: 14px;
padding: 0 0 0 0;
}

#concept .access_box dd{
width:100%;
font-size: 14px;
}

#concept .access_box .col_30 img{
width:90%;
margin:0 auto;
display: flex;
justify-content: center;
}

}
/* ==========================================================================
   当スタジオについて　別館
   ========================================================================== */
#concept02 .txt_center{
text-align: center;
padding: 10px 0 0 0;
margin: 0 auto 40px;
}

#concept02 h3{
font-size: 34px;
padding: 0 0 20px 0;
}

#concept02 .access_box{
margin: 40px auto 40px;
padding:0 0 40px 0;
}

#concept02 .access_box dl{
width: 780px;
font-size: 16px;
}

#concept02 .access_box dd{
width: 660px;
font-size: 16px;
}

#concept02 .row_box{
justify-content: flex-start;
	margin:40px auto 0;
}
@media screen and (max-width: 979px) {
#concept02 .txt_center{
text-align: center;
padding: 10px 0 0 0;
margin: 0 auto 0;
font-size: 14px;
}

#concept02 h3{
font-size:20px;
padding: 0 0 20px 0;
}

#concept02 .col_60{
padding: 0 0 20px 0;
}

#concept02 .col_40 img{
width: 90%;
margin: 0 auto;
text-align: center;
display: flex;
justify-content: center;
}

#concept02 .col_03 img{
width: 90%;
margin: 0 auto;
text-align: center;
display: flex;
justify-content: center;
}


#concept02 .access_box{
margin: 20px auto 20px;
padding: 0 0 0 0;
}

#concept02 .access_box dl{
width:100%;
font-size: 14px;
padding: 0 0 0 0;
}

#concept02 .access_box dd{
width:100%;
font-size: 14px;
}

#concept02 .access_box .col_30 img{
width:90%;
margin:0 auto;
display: flex;
justify-content: center;
}

}

/* ==========================================================================
  初めての方へ
   ========================================================================== */
#trial-2 .flow_box{
    margin: 40px auto 0;
    padding: 40px 0 0 0;
}
#trial-2 dl{
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 0 auto 0;
width: 100%;
}


#trial-2 .dd_100{
width: 100px;
position:relative;
}

#trial-2 .dd_100_02{
width: 100px;
position:relative;
}

#trial-2 .dd_100:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 100%;
  background:#e8c3c3;
  z-index: 0;
}

#trial-2 .step{
  width: 100px;
  height: 100px;
  line-height: 80px;
  border-radius: 50%; /* 円形 */
  background: #e8c3c3; /* 背景色 */
  color:#ffffff;
  font-weight: bold;
  font-size: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; /* STEPと番号を縦並び */
  box-sizing: border-box;
  z-index: 3; /* 線の上に表示 */
  margin: 0 auto;
  position: absolute;
}

#trial-2 .step p{
font-family: "Oswald", sans-serif;
font-size: 48px;
font-weight: 400;
line-height: 1;
}
#trial-2 .step span{
font-size:12px;
line-height: 1;
}


#trial-2 .dd_500{width: 700px;padding: 0 70px 0 30px;}

#trial-2 dt{width: 400px;}
#trial-2 dt img{border-radius: 40px;box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);margin: 0 auto 50px;}
#trial-2 dt .imgsn{
  margin: 0 auto 0;
}

#trial-2 h3 {
    font-size: 24px;
    padding: 0 0 25px 0;
    margin: -5px auto 0;
    font-weight: 200;
    color:#333333;
	border-bottom: 0 solid #ddcc99;
}

#trial-2 .link_a {
width: 60%;
margin: 0 auto;
}


#trial-2 .heading-9 {
    position: relative;
    padding:15px 10px;
    border-radius: 50px;
    background-color: #ddcc99;
    color: #ffffff;
	font-size: 20px;
	font-weight: 400;
	text-align: center;
}

#trial-2 .heading-9::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    width: 0;
    height: 0;
    border: 11px solid transparent;
    border-top: 11px solid #ddcc99;
}
#trial-2 .heading-9 span {
font-size: 30px;
line-height: 1;
}

#trial-2 .row_box {
    margin: 40px auto 0;
}

#trial-2 .col {
width: 48%;
margin:0 4% 0 0;
}
#trial-2 .col:nth-child(2n) {margin:0 0 0 0;}



#trial-2 .row_trial {
width: 100%;
    display: flex;
    margin: 30px auto 40px;
    padding: 0 0;
    justify-content: flex-end;
    flex-wrap: wrap;
}

#trial-2 .trial_col01 {
width: 43%;
text-align: center;
font-size: 40px;
line-height: 1;
display: flex;
align-items: flex-end;
justify-content: center;
}

#trial-2 .trial_col02 {
font-size:30px;
color:#ddcc99;
line-height: 1;
width: 4%;

display: flex;
align-items:center;
justify-content: center;
}
#trial-2 .trial_col03 {
font-size: 45px;
color:#ddcc99;
line-height: 1;
width: 43%;
text-align: right;
font-weight: 500;
display: flex;
align-items: flex-end;
justify-content: center;
}

#trial-2 ul {
  list-style-type: disc; /* 点（●）を表示 */
    padding-left: 1.2em; /* デフォルトよりやや少なめ */
  margin-left: 0; /* 必要に応じてリセット */
  margin: 40px auto;
}



@media screen and (max-width: 979px) {
#trial-2 p{
font-size: 16px;
}

#trial-2 .flow_box {
    margin: 20px auto 0;
    padding: 0 0 0 0;
}

#trial-2 dl{
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 0 auto 0;
width: 90%;
}

#trial-2 .dd_100{
width: 100%;
position:static;
display: flex;
flex-wrap: wrap;
align-items: center;
height: 60px;
}

#trial-2 .dd_100_02{
width: 100%;
position:static;
display: flex;
flex-wrap: wrap;
align-items: center;
height: 60px;
}

#trial-2 .dd_100:before {
  content: "";
  position: relative;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width:0;
  height: 100%;
  background:#e8c3c3;
  z-index: 0;
}

#trial-2 .step{
  width: 60px;
  height: 60px;
  line-height: 60px;
  border-radius: 50%; /* 円形 */
  background: #e8c3c3; /* 背景色 */
  color:#ffffff;
  font-weight:200;
  font-size: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; /* STEPと番号を縦並び */
  box-sizing: border-box;
  z-index: 3; /* 線の上に表示 */
  margin: 0 auto;
  position: absolute;
}

#trial-2 .step p{
font-family: "Oswald", sans-serif;
font-size:30px;
font-weight: 200;
line-height: 1;
}
#trial-2 .step span{
font-size:10px;
line-height: 1;
}


#trial-2 .dd_500{width: 100%;padding:0 0 0 0;}
#trial-2 .dd_500 p{font-size: 16px;padding: 0 0 20px 0;}

#trial-2 dt{width: 400px;}
#trial-2 dt img{border-radius: 20px;margin: 20px auto 10px;}
#trial-2 dt .imgsn{margin: 20px auto 10px;}

#trial-2 dd .link_a a{margin:0 auto 20px;}
#trial-2 h3{font-size:18px;padding:0 0 0 65px;margin: 0;text-align: left;}

#trial-2 .heading-9 {
    position: relative;
    padding:10px 10px;
    border-radius: 50px;
    background-color: #ddcc99;
    color: #ffffff;
	font-size:14px;
	font-weight: 400;
	text-align: center;
	margin: 10px auto 0;
}

#trial-2 .heading-9::after {
    content: '';
    position: absolute;
    top: 99%;
    left: 50%;
    width: 0;
    height: 0;
    border: 11px solid transparent;
    border-top: 11px solid #ddcc99;
}

#trial-2 .heading-9 span {
font-size: 20px;
line-height: 1;
}

#trial-2 .row_box {
    margin: 20px auto 0;
}

#trial-2 .col {
width: 100%;
margin:20px auto 0;
}
#trial-2 .col:nth-child(2n) {margin:0 auto;}



#trial-2 .row_trial {
width: 100%;
margin: 20px auto 20px;
}

#trial-2 .trial_col01 {
width: 43%;
text-align: center;
font-size:20px;
line-height: 1;
display: flex;
align-items: flex-end;
justify-content: center;
}

#trial-2 .trial_col02 {
font-size:16px;
color:#ddcc99;
line-height: 1;
width: 4%;

display: flex;
align-items:center;
justify-content: center;
}
#trial-2 .trial_col03 {
font-size: 25px;
color:#ddcc99;
line-height: 1;
width: 43%;
text-align: right;
font-weight: 500;
display: flex;
align-items: flex-end;
justify-content: center;
}

#trial-2 ul {
  list-style-type: disc; /* 点（●）を表示 */
    padding-left: 1.2em; /* デフォルトよりやや少なめ */
  margin-left: 0; /* 必要に応じてリセット */
  margin: 20px auto 0;
}

#trial-2 .link_a {
    width: 100%;
    margin: 0 auto;

}

#trial-2 .link_a a {
font-size: 16px;

}

}

/* ==========================================================================
  レッスンについて
   ========================================================================== */

#lesson .col{
margin: 40px auto;
}

#lesson .link_a{
width: 80%;
margin: 0 0 0 auto;
}

#lesson h4{
font-size: 24px;
font-weight: 400;
color: #ddcc99;
margin: 0 auto 20px;
border-bottom: 2px solid #ddcc99;
padding: 0 0 10px 0;
}

#lesson h3{
color:#333333;
font-weight:200;
}
@media screen and (max-width: 979px) {
#lesson .col{
margin: 10px auto;
}

#lesson .link_a{
width: 80%;
margin: 0 0 20px auto;
}

#lesson h4{
font-size:18px;
font-weight: 400;
color: #ddcc99;
margin: 0 auto 20px;
border-bottom: 2px solid #ddcc99;
padding: 0 0 5px 0;
}
}


/* ==========================================================================
  マタニティピラティス
   ========================================================================== */

#maternity-pilates .row {
    margin: 100px auto 0;
}

#maternity-pilates .col {
    margin: 0 auto 40px;
}

#maternity-pilates ul {
  list-style-type: disc; /* 点（●）を表示 */
    padding-left: 1.2em; /* デフォルトよりやや少なめ */
  margin-left: 0; /* 必要に応じてリセット */
  margin: 20px auto;
  font-size: 16px;
  background-color: #fcfaf5;
  padding: 40px 40px 40px 60px;
  line-height: 2;
}

@media screen and (max-width: 979px) {
#maternity-pilates .row {
    margin: 20px auto 0;
}

#maternity-pilates .col {
    margin: 0 auto 20px;
}

#maternity-pilates ul {
  list-style-type: disc; /* 点（●）を表示 */
    padding-left: 1.2em; /* デフォルトよりやや少なめ */
  margin-left: 0; /* 必要に応じてリセット */
  margin: 20px auto 0;
  font-size: 16px;
  background-color: #fcfaf5;
  padding: 10px 10px 10px 40px;
  line-height: 2;
}

#maternity-pilates .txt_right p{
font-size: 14px;
}
#maternity-pilates .txt_left p{
font-size: 14px;
}


}

/* ==========================================================================
  産後ピラティス
   ========================================================================== */
#prenatal-postnatal .row {
    margin: 100px auto 0;
}

#prenatal-postnatal .col {
    margin: 0 auto 40px;
}

#prenatal-postnatal ul {
  list-style-type: disc; /* 点（●）を表示 */
    padding-left: 1.2em; /* デフォルトよりやや少なめ */
  padding: 20px 20px 20px 40px;
  line-height: 2;
  font-size: 16px;
}

#prenatal-postnatal dl {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
width: 100%;
margin: 0 auto 80px;
}

#prenatal-postnatal dt {
width: 30%;
    background-color: #ddcc99;
    color: #ffffff; 
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	font-weight: 500;
}

#prenatal-postnatal dd {
width: 70%;
background-color: #fcfaf5;
}

#prenatal-postnatal dd {
width: 70%;
background-color: #fcfaf5;
}

#prenatal-postnatal .info_box {
width: 100%;
background-color: #fcfaf5;
padding: 40px;
margin: 40px auto;
line-height: 2;
}



@media screen and (max-width: 979px) {
#prenatal-postnatal .row {
margin: 20px auto 0;
}

#prenatal-postnatal .col {
    margin: 0 auto 20px;
}



#prenatal-postnatal .txt_right p{
font-size: 14px;
}
#prenatal-postnatal .txt_left p{
font-size: 14px;
}


#prenatal-postnatal ul {
  list-style-type: disc; /* 点（●）を表示 */
    padding-left: 1.2em; /* デフォルトよりやや少なめ */
  padding: 20px 20px 20px 40px;
  line-height: 2;
  font-size: 16px;
}

#prenatal-postnatal dl {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
width: 100%;
margin: 0 auto 20px;
}

#prenatal-postnatal dt {
width: 100%;
font-size: 18px;
}

#prenatal-postnatal dd {
width: 100%;
}


#prenatal-postnatal .info_box {
width: 100%;
background-color: #fcfaf5;
padding: 20px;
margin: 20px auto;
line-height: 2;
}

}

/* ==========================================================================
STOTT PILATES®️について
   ========================================================================== */
#stott-pilates .stott_box{
background-color:#fcfaf5;
border-radius: 30px;
margin: 80px auto;
padding: 40px 20px;
text-align: center;
font-weight: 200;
font-size:24px;
}

#stott-pilates .stott_box p{
border-top: 3px solid #ddcc99;
text-align: center;
padding: 20px 0 0 0;
margin: 20px auto 0;
width:80%;
}

.stott_row {
    width: 100%;
    display: flex;
    margin: 40px auto 0;
    padding: 0 0;
justify-content: flex-start;
    flex-wrap: wrap;
}

#stott-pilates .col_stott{
width: 24%;
margin: 0 1% 4% 0;
border-radius: 40px;
text-align: center;
background-color: #ffffff;
border:1px solid #eeeeee;
box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);
padding: 20px;
}

#stott-pilates .col_stott:nth-child(4n){margin:0 0 4% 0;}

#stott-pilates .col_stott p{
padding: 40px 0 20px 0;
text-align: center;
}

#stott-pilates h3{
  font-size: 100px;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  background: linear-gradient(180deg, #f4e7d2 0%, #dcc396 100%);
  -webkit-background-clip: text; /* 文字として背景を切り取る */
  background-clip: text;
  color: transparent; /* 文字色を透明にして背景を見せる */
  display: inline-block; /* 必要に応じて */
  line-height:1;
  margin:0 auto 0;
    border-bottom: 0 solid #ddcc99;
    padding:0;
}

#stott-pilates .gradient-border {
  position: relative;
  display: inline-block;
}

#stott-pilates .gradient-border::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -20px;
  width: 100%;
  height: 4px;
  background: linear-gradient(to right, #dcc396, #f4e7d2);
}

@media screen and (max-width: 979px) {
#stott-pilates .stott_box{
margin: 20px auto;
padding: 20px 20px;
text-align: center;
font-size:14px;
}

#stott-pilates .stott_box p{
border-top: 2px solid #ddcc99;
text-align: center;
padding: 20px 0 0 0;
margin: 20px auto 0;
width:100%;
font-size:14px;
}

#stott-pilates .col_70{width: 100%;margin:0 0 20px 0;}

.stott_row {
    width: 100%;
    display: flex;
    margin: 20px auto 0;
    padding: 0 0;
    justify-content: space-around;
    flex-wrap: wrap;
}

#stott-pilates .col_stott{
width:100%;
margin: 0 0 4% 0;
border-radius: 20px;
text-align: center;
background-color: #ffffff;
border:1px solid #eeeeee;
box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);
padding: 10px 10px;
}

#stott-pilates .col_stott:nth-child(2n){margin:0 0 4% 0;}
#stott-pilates .col_stott:nth-child(4n){margin:0 0 4% 0;}

#stott-pilates .col_stott p{
padding: 0 0 0 0;
text-align: center;
font-size: 14px;
	width:65%;
}

#stott-pilates h3{
  font-size: 60px;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  background: linear-gradient(180deg, #f4e7d2 0%, #dcc396 100%);
  -webkit-background-clip: text; /* 文字として背景を切り取る */
  background-clip: text;
  color: transparent; /* 文字色を透明にして背景を見せる */
  display: inline-block; /* 必要に応じて */
  line-height:1;
  margin:-5px auto 0;
	width:35%;
	padding:0 20px;
}

#stott-pilates .gradient-border {
  position: relative;
  display: inline-block;
}
	
#stott-pilates .col_stott{
	display:flex;
justify-content: space-around;
	align-items:center;
}
	
	
#stott-pilates .gradient-border::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -10px;
  width: 100%;
  height: 0;
  background: linear-gradient(to right, #dcc396, #f4e7d2);
}

}

/* ==========================================================================
マタニティー・産後ピラティスのご案内
   ========================================================================== */
#prenatal-postnatal-info h3{
text-align: center;
width: 80%;
margin: 40px auto;
}

#prenatal-postnatal-info .link_a{
text-align: center;
width: 80%;
margin: 40px auto;
}
@media screen and (max-width: 979px) {
#prenatal-postnatal-info h3{
text-align: center;
width: 100%;
margin: 20px auto;
}

#prenatal-postnatal-info .link_a{
text-align: center;
width: 100%;
margin: 20px auto;
}

#prenatal-postnatal-info .col img{
margin: 20px auto;
}

#prenatal-postnatal-info .link_a a {
display: block;
width: 100%;
  border-radius: 50px;
  border:1px solid #ddcc99;
  color:#333333; /* 文字色 */
  font-size:18px;
  text-decoration: none; /* 下線を消す */
  text-align:left;
  cursor: pointer;
  transition: opacity 0.3s ease-in-out;
  position: relative;
  padding: 15px 40px;
  margin: 20px auto 0;
  line-height: 1.6;
  box-shadow: 2px 2px 20px rgba(250, 185, 182, 0.1);
  background-color: #ffffff;
    transition: background-color 0.5s ease, color 0.5s ease; /* 色変化をゆっくり */
}

#prenatal-postnatal-info .link_a a:hover {
  border:1px solid #ddcc99;
  color:#ffffff; /* 文字色 */
  background-color: #ddcc99;
}
#prenatal-postnatal-info .link_a a::after {
content: "→";
        padding: 0;
        position: absolute;
        top: 24%;
        right: 13px;
        color: #ddcc99;
        text-align: center;
        font-size: 27px;
        transition: opacity 0.3s ease-in-out;
}


}

/* ==========================================================================
マタニティー・産後ピラティスのご案内
   ========================================================================== */
#lesson_scene .col p {
padding:0 0 10px 0;
}
@media screen and (max-width: 979px) {
#lesson_scene .col img {
margin: 10px auto 20px;
}

#lesson_scene .col p {
font-size: 14px;
}

#lesson_scene .txt_box {
margin: 0 auto 40px;
}

}

/* ==========================================================================
採用情報
   ========================================================================== */
#recruit .row_recruit{
    width: 60%;
    display: flex;
    margin: 40px auto 0;
    padding: 0 0;
    justify-content: space-around;
    flex-wrap: wrap;
}
#recruit{
	overflow: hidden;
}
#recruit .recruit_box{
    width: 100%;
    margin: 0 auto 0;
    padding: 50px 100px;

}

#recruit .recruit_box dl{
display: flex;
flex-wrap: wrap;
width: 100%;
justify-content: space-between;
align-items:flex-start;

}

#recruit .recruit_box dt{
width: 20%;
background-color: #ddcc99;
color: #ffffff;
text-align: center;
font-weight: 400;
margin: 0 auto 20px;
padding:3px 0;
font-size: 16px;
}

#recruit .recruit_box dd{
width: 80%;
padding: 3px 0 0 40px;
margin: 0 auto 20px;

}
#recruit .recruit_box p{
font-size: 16px;
}

#recruit .recruit_box ul{
  list-style-type: disc; /* 点（●）を表示 */
    padding-left: 1.2em; /* デフォルトよりやや少なめ */
  margin-left: 0; /* 必要に応じてリセット */
  margin: 0 auto;
  font-size: 16px;
}




#recruit .youtube {
position: relative;
width:70%;
  padding-top: 39.375%;  /* 70% × (9 ÷ 16) = 高さ比率 */
height: 0;
overflow: hidden;
margin:20px auto;
}

#recruit .youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#recruit .youtube iframe {
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
}

#recruit h3 {
font-size: 40px;
color: #ddcc99;
margin:100px auto 50px;
text-align:center;
border-bottom:0px;
}

#recruit .dt_box01{
padding:0 0 100px 0;
}

#recruit .dt_box01 dl {
background-color: #fcfaf5;
display:flex;
flex-wrap:wrap;
justify-content: space-around;
align-items:center;
margin:0 auto 20px;
}

#recruit .dt_box01 dt{
width:30%;
}

#recruit .dt_box01 dd{
width:70%;
padding:40px 40px;
}

#recruit .dt_box01 .row{margin:0 auto 0;}
#recruit .dt_box01 .col{margin: 0 4% 0 0;}
#recruit .dt_box01 .col:nth-child(2n) {margin: 0 0 0 0;}

#recruit .dt_box01 p{
font-size:16px;
}

#recruit .dt_box01 .txt_sp{
padding:0 0 20px 0;
}

#recruit h4{
font-size: 24px;
font-weight: 400;
color: #ddcc99;
margin:0 auto 10px;
}

.text-overlay {
  position: relative;
  display:block;
  padding: 40px 20px;
  text-align: center;
	margin:0 auto;

}

.background-text {
  font-size: 64px;
  color:#ffffff;
  font-weight: bold;
line-height:1;
	
}

.foreground-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #ddcc99;
  font-size: 24px;
  font-weight: bold;
  width: 100%;
  text-align: center;
}

.full-width-child {
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
  box-sizing: border-box;
  overflow: hidden; /* ← 念のため内側のはみ出し防止 */
background-color:#fcfaf5;
padding:100px 0;

}

#recruit .full-width-child h3{
margin:0 auto;
padding:0 0 50px 0;

}

#recruit .box_w{
background-color:#ffffff;
padding:40px;
width:1200px;
margin:20px auto;
}

#recruit .full-width-child dl{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin: 0 auto;
}

#recruit .full-width-child dt{width:60%;padding:0 40px 0 0;}
#recruit .full-width-child dd{width:40%;}
.message-box { position: relative;}

.number {
display: inline-block;
transform: rotate(-10deg); /* ←ここで斜めに傾ける */
color:#ddcc99;
font-size:40px;
font-family: 'Caveat', cursive;
}

#recruit .full-width-child h4{margin:-20px 0 0 20px;color:#333333;line-height:1.4;}
#recruit .full-width-child p{margin:20px 0 0 20px;font-size:16px;}


#recruit .img_box{
margin:0 auto;
padding:0 0 100px 0;
text-align:center;
}

#recruit .sup_box dl{
	width:1200px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin:20px auto;

}

#recruit .sup_box dt{
width:30%;
padding:40px;
position: relative;
background-color: #ddcc99;

}

#recruit .sup_box span{
font-size:16px;
color: #ffffff;
}

#recruit .sup_box h4{
font-size:30px;
color: #ffffff;
font-weight:500;
margin:0;
}

#recruit .sup_box dd{
width:70%;
background-color: #ffffff;
padding:40px;
display: flex;
flex-wrap: wrap;
justify-content: space-around;
}



#recruit .sup_box_img{
width:30%;
}

#recruit .sup_box_img dd picture{
width:100%;
}

#recruit .sup_box p{
width:70%;
padding:0 40px 0 0;
margin:0;
}

#recruit .sup_box dt::after{
  content: '';
  position: absolute;
  top: 50%;
  right: -13px; /* 三角がはみ出す分 */
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
  border-left: 15px solid #ddcc99; /* 三角の色を左カラムと揃える */
}

#recruit .col_03{padding:0 0 100px 0;}


#recruit .col_03 p{
padding:10px 0;
font-size:16px;
}

.message-box02 { position: relative;}
.message-box02 img {padding:0 0 20px 0;}
.number02 {
display: inline-block;
transform: rotate(-10deg); /* ←ここで斜めに傾ける */
color:#333333;
font-size:20px;
font-family: 'Caveat', cursive;
margin:-10px 0 0 0;
}
.message-box02 h4{
margin:-10px 0 0 0;
}

.message-box03 { position: relative;}
.message-box03 img {padding:0 0 20px 0;}
.number03 {
display: inline-block;
transform: rotate(-10deg); /* ←ここで斜めに傾ける */
color:#ddcc99;
font-size:40px;
font-family: 'Caveat', cursive;
margin:-10px 0 0 0;
}
#recruit .message-box03 h4{
margin:-10px 0 0 0;
padding:0 0 40px 0;
font-size:34px
}

#recruit .col_70 p{
margin:0;
font-size: 16px;
}

#recruit .box_w .row{
margin: 0 auto 0;
}

#recruit .flow_b{}

#recruit .flow_b dl{
	width:1200px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin:80px auto 0;
}

#recruit .flow_b dt{
width:22%;
padding:40px 20px 20px 20px;
position: relative;
background-color:#fcfaf5;
}

#recruit .flow_b dt::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -15px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 15px solid #fcfaf5;
}

#recruit .flow_b dd{
width: 22%;
padding:40px 20px 20px 20px;
position: relative;
background-color:#fcfaf5;
}

#recruit .flow_b h4{
font-size:24px;
line-height:1.6;
height:80px;
text-align:center;
}

#recruit .flow_b p{
font-size:16px;
}

#recruit .flow_b img{
width:80%;
padding:20px 0;
margin:0 auto;
display: flex;
flex-wrap: wrap;
justify-content:center;
}



/* 丸と番号（共通） */
#recruit .flow_b dt::before,
#recruit .flow_b dd::before {
  content: attr(data-step);
  position: absolute;
top:-10%;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 50px;
  background-color: #ddcc99; /* 丸の色 */
  color: #fff;
  border-radius: 50%;
  font-size: 20px;
  font-weight: bold;
  line-height: 50px;
  text-align: center;
  z-index: 1;
}

#recruit .inbuts_box{
width: 1200px;
display: flex;
justify-content: space-around;
flex-wrap: wrap;
margin:0 auto;
}

#recruit .inbuts_col{
width:48%;
border-radius: 80px;
text-align: center;
background-color: #ffffff;
border:1px solid #eeeeee;
box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);
margin: 0 4% 4% 0;
padding: 50px;
}

#recruit .inbuts_col:nth-child(2n) {
    margin: 0 0 4% 0;
}


#recruit .inbuts_box h3{
  font-size: 100px;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  background: linear-gradient(180deg, #f4e7d2 0%, #dcc396 100%);
  -webkit-background-clip: text; /* 文字として背景を切り取る */
  background-clip: text;
  color: transparent; /* 文字色を透明にして背景を見せる */
  display: inline-block; /* 必要に応じて */
  line-height:1;
  margin:0 auto 0;
	border:0px;
}

#recruit .gradient-border {
  position: relative;
  display: inline-block;
}

#recruit .gradient-border::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -20px;
  width: 100%;
  height: 4px;
  background: linear-gradient(to right, #dcc396, #f4e7d2);
}

#recruit .inbuts_box p{
font-size: 28px;
text-align: center;
padding: 50px 0 0 0;
}

@media screen and (max-width: 979px) {
#recruit .youtube {
width:100%;
padding-top: 56.25%;
}
#recruit .youtube iframe {}

#recruit .youtube iframe {}
	
#recruit .row_recruit{
    width: 100%;
}


#recruit .recruit_box{
margin: 0 auto 40px;
padding:0;
}

#recruit .recruit_box dl{}

#recruit .recruit_box dt{
width: 100%;
margin: 0 auto 10px;
}

#recruit .recruit_box dd{
width: 100%;
padding: 10px;
margin: 0 auto 10px;
}

#recruit .recruit_box p{
font-size: 16px;
}

#recruit .recruit_box ul{
  list-style-type: disc; /* 点（●）を表示 */
  padding-left: 1.2em; /* デフォルトよりやや少なめ */
  margin-left: 0; /* 必要に応じてリセット */
  margin: 0 auto;
  font-size: 16px;
}
	
	
#recruit h3 {
font-size:20px;
margin:40px auto 20px;
}

#recruit .dt_box01{
padding:0 0 20px 0;
}

#recruit .dt_box01 dl {
}

#recruit .dt_box01 dt{
width:100%;
}

#recruit .dt_box01 dd{
width:100%;
padding:15px;
}

#recruit .dt_box01 .row{margin:0 auto 0;}
#recruit .dt_box01 .col{margin: 0 4% 0 0;}
#recruit .dt_box01 .col:nth-child(2n) {margin: 0 0 0 0;}

#recruit .dt_box01 p{font-size:14px;}
#recruit .dt_box01 .txt_sp{}
#recruit h4{font-size:18px;}

.text-overlay {padding: 30px 10px;}
.background-text {font-size:44px;}
.foreground-text {line-height:1.2;}
.full-width-child {
left: auto;
right: auto;
margin-left: 0;
margin-right: 0;
width: 100%;
padding:20px 0 0 0;
}

#recruit .full-width-child h3{padding: 0 0 20px 0;}

#recruit .box_w{
padding:15px;
width:90%;
margin:0 auto 20px;
}

#recruit .full-width-child dl{}

#recruit .full-width-child dt{
width:100%;
padding:0;}

#recruit .full-width-child dd{width:100%;}
.message-box { position: relative;}

.number {font-size:24px;}

#recruit .full-width-child h4{margin:0 0 0 0;color:#333333;line-height:1.4;}
#recruit .full-width-child p{margin:20px 0 20px 0;font-size:14px;}


#recruit .img_box{
padding:0 0 20px 0;
}

#recruit .sup_box dl{width:90%;}
#recruit .sup_box dt{
width:100%;
padding:15px;
}

#recruit .sup_box span{}

#recruit .sup_box h4{
font-size:20px;
margin:0;
color:#ffffff;
}

#recruit .sup_box dd{
width:100%;
padding:15px;
}

#recruit .sup_box_img{width:100%;}
#recruit .sup_box_img dd picture{width:100%;}
#recruit .sup_box p{width:100%;padding:0 0 2px 0;margin:0;}

#recruit .sup_box dt::after{
content: '';
position: absolute;
top:auto;
left:auto;
bottom: -25px;
left:50%;
transform: translateX(-50%);
width: 0;
height: 0;
border-left: 15px solid transparent;
border-right: 15px solid transparent;
border-top: 15px solid #ddcc99;  /* ← 下向きに見せるには top に色をつける */
}

#recruit .row{
justify-content: flex-start;
}
	
#recruit .col_03{padding:0 0 40px 0;}


#recruit .col_03 p{
padding:10px 0;
font-size:14px;
}

.message-box02 { position: relative;}
.message-box02 img {padding:0 0 20px 0;}
.number02 {
display: inline-block;
transform: rotate(-10deg); /* ←ここで斜めに傾ける */
color:#333333;
font-size:20px;
font-family: 'Caveat', cursive;
margin:-10px 0 0 0;
}
.message-box02 h4{
margin:-10px 0 0 0;
}

.message-box03 { position: relative;}
.message-box03 img {padding:0 0 20px 0;}
.number03 {
display: inline-block;
transform: rotate(-10deg); /* ←ここで斜めに傾ける */
color:#ddcc99;
font-size:40px;
font-family: 'Caveat', cursive;
margin:-10px 0 0 0;
}
#recruit .message-box03 h4{
margin:-10px 0 0 0;
padding:0 0 20px 0;
font-size:20px
}

#recruit .col_70 p{
margin:0;
font-size: 14px;
}

#recruit .box_w .row{
margin: 0 auto 0;
}

#recruit .flow_b{}

#recruit .flow_b dl{
	width:90%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin:40px auto 0;
}

#recruit .flow_b dt{
width:100%;
padding:40px 10px 10px 10px;
position: relative;
background-color:#fcfaf5;
margin:0 auto 40px;
}

#recruit .flow_b dt::after {
content: '';
position: absolute;
top:auto;
right:44%;
bottom:-40px;
transform: translateY(-50%);
width: 0;
height: 0;
border-left: 15px solid transparent;
border-right: 15px solid transparent;
border-top: 15px solid #fcfaf5;  /* ← 三角の色はここで指定 */
}

#recruit .flow_b dd{
width:100%;
padding:40px 20px 20px 20px;
position: relative;
background-color:#fcfaf5;
}

#recruit .flow_b h4{
font-size:24px;
line-height:1.6;
height:80px;
text-align:center;
}

#recruit .flow_b p{
font-size:16px;
}

#recruit .flow_b img{
width:80%;
padding:20px 0;
margin:0 auto;
display: flex;
flex-wrap: wrap;
justify-content:center;
}



/* 丸と番号（共通） */
#recruit .flow_b dt::before,
#recruit .flow_b dd::before {
  content: attr(data-step);
  position: absolute;
top:-4%;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 50px;
  background-color: #ddcc99; /* 丸の色 */
  color: #fff;
  border-radius: 50%;
  font-size: 20px;
  font-weight: bold;
  line-height: 50px;
  text-align: center;
  z-index: 1;
}
	
#recruit .inbuts_box{width:100%;}
#recruit .inbuts_col{
width: 100%;
border-radius: 20px;
text-align: left;
box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);
margin: 0 20px 10px 20px;
padding: 15px;
display: flex;
flex-wrap: wrap;
align-items:center;
}

#recruit .inbuts_col:nth-child(2n) {
margin: 0 20px 10px 20px;
}

#recruit .inbuts_box h3{
font-size: 50px;
font-weight: 300;
margin: 0 auto 0;
width: 20%;
line-height: 0.8;
text-align: center;
}

#recruit .gradient-border {
  position: relative;
  display: inline-block;
}

#recruit .gradient-border::after {
  content: '';
  position: absolute;
  left: 0;
  bottom:0;
  width: 100%;
  height: 4px;
  background: linear-gradient(to right, #dcc396, #f4e7d2);
}

#recruit .inbuts_box p{
font-size: 14px;
text-align: left;
padding: 0 0 0 10px;
width: 80%;
margin:0;
}
}

/* ==========================================================================
託児所
   ========================================================================== */
#nursery-info h3{
margin: 40px auto 20px;
}

#nursery-info .nursery-info_box{
    background-color: #fcfaf5;
    border-radius: 30px;
    margin: 20px auto;
    padding: 40px 20px;
    text-align: center;
    font-weight: 400;
    color: #ddcc99;
    font-size: 24px;
	width: 80%;
}


#nursery-info .col_70 h3{
margin: 0 auto 20px;
}

#nursery-info .col_30 img{
border: 10px solid #fcfaf5;
width: 90%;
padding: 10px;
	margin:0 auto;
}

#nursery-info .row{
width:90%;
padding: 0;
margin:40px auto 20px;
}

#nursery-info .col{
width: 40%;
padding: 0;
margin:0 10% 0 0;
}
#nursery-info .col:nth-child(2) {
width: 40%;
padding: 0;
margin:0 0 0 0;
}
#nursery-info .col h3{
    font-size: 20px;
    font-weight: 400;
	background-color: #ddcc99;
    color: #ffffff;
	text-align:center;
	margin: 0 auto 10px;
	padding:0 0 5px 0;
}
#nursery-info .col p{
	text-align:center;
}

#nursery-info .col img{
border: 10px solid #fcfaf5;
width:100%;
padding: 10px;
}

#nursery-info .link_a a {
    display: block;
    width: 100%;
    border-radius: 50px;
    border: 1px solid #ddcc99;
    color: #333333;
    font-size:20px;
    text-decoration: none;
    text-align: left;
    cursor: pointer;
    transition: opacity 0.3s ease-in-out;
    position: relative;
    padding: 20px 40px;
    margin: 10px auto 0;
    line-height: 1;
    box-shadow: 2px 2px 20px rgba(250, 185, 182, 0.1);
    background-color: #ffffff;
    transition: background-color 0.5s ease, color 0.5s ease;
}

#nursery-info .dl_box_title {
    font-size: 24px;
    padding: 0 0 25px 0;
    margin: -5px auto 0;
}
#nursery-info .link_a a::after {
    content: "→";
    padding: 0;
    position: absolute;
    top: 18px;
    right: 20px;
    color: #ddcc99;
    text-align: center;
    font-size: 24px;
    transition: opacity 0.3s ease-in-out;
}
@media screen and (max-width: 979px) {

#nursery-info h3{
margin: 20px auto 10px;
}

#nursery-info .nursery-info_box{
    background-color: #fcfaf5;
    border-radius: 20px;
    margin: 20px auto;
    padding: 20px 10px;
    text-align: center;
    font-weight: 400;
    color: #ddcc99;
    font-size:16px;
	width: 100%;
}

#nursery-info .col_70 h3{
margin: 0 auto 20px;
}

#nursery-info .col_30 img{
border: 10px solid #fcfaf5;
width: 100%;
padding: 10px;
margin: 0 auto 10px;
}
	
#nursery-info .row{
width:90%;
padding: 0;
margin:20px auto 20px;
}

#nursery-info .col{
width: 100%;
padding: 0;
margin:4% 0 4% 0;
}
#nursery-info .col:nth-child(2) {
width: 100%;
padding: 0;
margin:0 0 0 0;
}
#nursery-info .col h3{
    font-size: 20px;
    font-weight: 400;
	background-color: #ddcc99;
    color: #ffffff;
	text-align:center;
	margin: 0 auto 10px;
	padding:0 0 5px 0;
}
#nursery-info .col p{
	text-align:center;
	font-size:14px;
}
#nursery-info .link_a a {

    display: block;
    width: 100%;
    border-radius: 50px;
    border: 1px solid #ddcc99;
    color: #333333;
    font-size:16px;
    text-decoration: none;
    text-align: left;
    cursor: pointer;
    transition: opacity 0.3s ease-in-out;
    position: relative;
padding:10px 20px;
    margin: 10px auto 20px;
    line-height: 1;
    box-shadow: 2px 2px 20px rgba(250, 185, 182, 0.1);
    background-color: #ffffff;
    transition: background-color 0.5s ease, color 0.5s ease;
}
#nursery-info .link_a a::after {
    content: "→";
    padding: 0;
    position: absolute;
    top: 5px;
    right: 10px;
    color: #ddcc99;
    text-align: center;
    font-size: 24px;
    transition: opacity 0.3s ease-in-out;
}
	
#nursery-info .dl_box_title {
        font-size: 18px;
        padding: 0 0 0 70px;
        margin: 0;
        text-align: left;
}
}


#nursery-info .dl_box{
margin:100px auto 0;
}


#nursery-info dl{
display: flex;
flex-wrap: wrap;
justify-content: center;
margin:0 auto 0;
}

#nursery-info .dd_100{
width: 100px;
position:relative;
}

#nursery-info .dd_100_02{
width: 100px;
position:relative;
}

#nursery-info .dd_100:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 100%;
  background:#e8c3c3;
  z-index: 0;
}

#nursery-info .step{
  width: 100px;
  height: 100px;
  line-height: 80px;
  border-radius: 50%; /* 円形 */
  background: #e8c3c3; /* 背景色 */
  color:#ffffff;
  font-weight: bold;
  font-size: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; /* STEPと番号を縦並び */
  box-sizing: border-box;
  z-index: 3; /* 線の上に表示 */
  margin: 0 auto;
  position: absolute;
}

#nursery-info .step p{
font-family: "Oswald", sans-serif;
font-size: 48px;
font-weight: 400;
line-height: 1;
}
#nursery-info .step span{
font-size:12px;
line-height: 1;
}


#nursery-info .dd_500{width: 500px;padding: 0 70px 0 30px;}

#nursery-info dt{width: 400px;}
#nursery-info dt img{border-radius: 40px;box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);margin: 0 auto 50px;}
#nursery-info dt .imgsn{
margin: 0 auto 0;
}

#nursery-info dd .link_a a{margin: 30px auto 0;}
#nursery-info h4{font-size: 24px;padding: 0 0 25px 0;margin: -5px auto 0;}


@media screen and (max-width: 979px) {
#nursery-info .dl_box{
margin:20px auto 0;
}

#nursery-info dl{
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 0 auto 0;
width: 90%;
}

#nursery-info .dd_100{
width: 100%;
position:static;
display: flex;
flex-wrap: wrap;
align-items: center;
height: 60px;
}

#nursery-info .dd_100_02{
width: 100%;
position:static;
display: flex;
flex-wrap: wrap;
align-items: center;
height: 60px;
}

#nursery-info .dd_100:before {
  content: "";
  position: relative;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width:0;
  height: 100%;
  background:#e8c3c3;
  z-index: 0;
}

#nursery-info .step{
  width: 60px;
  height: 60px;
  line-height: 60px;
  border-radius: 50%; /* 円形 */
  background: #e8c3c3; /* 背景色 */
  color:#ffffff;
  font-weight:200;
  font-size: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; /* STEPと番号を縦並び */
  box-sizing: border-box;
  z-index: 3; /* 線の上に表示 */
  margin: 0 auto;
  position: absolute;
}

#nursery-info .step p{
font-family: "Oswald", sans-serif;
font-size:30px;
font-weight: 200;
line-height: 1;
}
#nursery-info .step span{
font-size:10px;
line-height: 1;
}


#nursery-info .dd_500{width: 100%;padding:0 0 0 0;}
#nursery-info .dd_500 p{font-size: 16px;padding: 0 0 20px 0;}

#nursery-info dt{width: 400px;}
#nursery-info dt img{border-radius: 20px;margin: 20px auto 10px;}
#nursery-info dt .imgsn{margin: 20px auto 10px;}

#nursery-info dd .link_a a{margin:0 auto 20px;}
#nursery-info h4{font-size:18px;padding:0 0 0 70px;margin: 0;text-align: left;}

#nursery-info .col_03 p{font-size:14px;}
}

/* ==========================================================================
料金表
   ========================================================================== */
#pricelist dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 40px auto;
}

#pricelist dt{
width: 33.3333%;
background-color: #fcfaf5;
color:#ddcc99;
font-weight: 400;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
border-left: 1px solid #ddcc99;
border-bottom: 1px solid #ddcc99;
border-right: 1px solid #ddcc99;
padding: 10px 0;
border-radius: 0;
}

#pricelist dd{
width: 33.3333%;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
padding: 10px 0;
border-bottom: 1px solid #ddcc99;
border-right: 1px solid #ddcc99;
}

#pricelist .pri_01{}
#pricelist .pri_02{}
#pricelist .pri_02_top{
border-top: 1px solid #ddcc99;
}
#pricelist .pri_03{
width: 66.666%;
}


#price span.must {
width: 48px;
font-size: 16px;
text-align: center;
background: #e2dede;
color: #333333;
font-weight:400;
margin-left:15px;
padding:5px 8px;
border-radius:5px;
}


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

#pricelist dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 20px auto;
width: 100%;
line-height: 1.4;
}

#pricelist dt{font-size: 14px;}

#pricelist dd{
font-size: 14px;
}

#pricelist .pri_01{}
#pricelist .pri_02{}
#pricelist .pri_02_top{
border-top: 1px solid #ddcc99;
}
#pricelist .pri_03{
width: 66.666%;
}
	
#price span.must {
width: 48px;
font-size:16px;
text-align: center;
background: #e2dede;
color: #333333;
font-weight:400;
margin-left:15px;
padding:2px 8px;
border-radius:5px;
}


}

/* ==========================================================================
料金表
   ========================================================================== */
#price .heading-9 {
    position: relative;
    padding:5px 10px;
    background-color: #ddcc99;
    color: #ffffff;
	font-size: 20px;
	font-weight: 400;
	width: 80%;
}

#price .heading-9::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    width: 0;
    height: 0;
    border: 11px solid transparent;
    border-top: 11px solid #ddcc99;
}

@media screen and (max-width: 979px) {
#price .heading-9 {
    position: relative;
    padding:10px 10px;
    border-radius: 50px;
    background-color: #ddcc99;
    color: #ffffff;
	font-size:18px;
	font-weight: 400;
	text-align: center;
	margin: 10px auto 0;
}

#price .heading-9::after {
    content: '';
    position: absolute;
    top: 99%;
    left: 50%;
    width: 0;
    height: 0;
    border: 11px solid transparent;
    border-top: 11px solid #ddcc99;
}
}


#price .row_price {
width: 80%;
    display: flex;
    margin: 20px auto 10px;
    padding: 0 0;
    justify-content:center;
    flex-wrap: wrap;
}

#price .price_col01 {
width: 33%;
text-align: center;
font-size: 30px;
line-height: 1;
display: flex;
align-items:center;
justify-content: center;
}

#price .price_col02 {
font-size:30px;
color:#ddcc99;
line-height: 1;
width: 4%;
display: flex;
align-items:center;
justify-content: center;
}
#price .price_col03 {
font-size:30px;
color:#ddcc99;
line-height:1.8;
width: 53%;
text-align: right;
font-weight: 500;
display: flex;
align-items:center;
justify-content: center;
}


#price h3{
margin: 60px auto 20px;
padding:0 0 10px 0;
border-bottom: 2px solid #ddcc99;
text-align:left;
color:#ddcc99;
font-size: 24px;
}


#price .txt_box{
margin: 20px auto;
padding: 0;
}


#price .txt_box p{
line-height: 1.8;
text-align: left;
}

#price ul{
margin: 20px auto 60px;
list-style-type: disc;
    padding-left: 1.2em;
}


@media screen and (max-width: 979px) {
#price .row_price {
width: 90%;
    display: flex;
    margin: 20px auto 10px;
    padding: 0 0;
    justify-content:center;
    flex-wrap: wrap;
}

#price .price_col01 {
width: 36%;
text-align: center;
font-size: 20px;
line-height: 1;
display: flex;
align-items:center;
justify-content: center;
}

#price .price_col02 {
font-size:20px;
color:#ddcc99;
line-height: 1;
width: 8%;
display: flex;
align-items:center;
justify-content: center;
}
#price .price_col03 {
font-size:20px;
color:#ddcc99;
line-height:1.8;
width: 56%;
text-align: right;
font-weight: 500;
display: flex;
align-items:center;
justify-content: center;
}


#price h3{
margin:20px auto 20px;
padding:0 0 5px 0;
border-bottom: 2px solid #ddcc99;
text-align:left;
color:#ddcc99;
font-size:18px;
}

#price .txt_box{
margin: 20px auto;
padding: 0;
}


#price .txt_box p{
line-height: 1.8;
text-align: left;
}

#price ul{
margin: 20px auto 60px;
list-style-type: disc;
    padding-left: 1.2em;
}

#price p{
text-align: left;
width: 100%;
}



}
/* ==========================================================================
料金表
   ========================================================================== */
#price_list dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 40px auto 20px;
border-bottom: 1px solid #ddcc99;
width: 100%;
}

#price_list dt{
width: 33.3333%;
background-color: #fcfaf5;
color:#ddcc99;
font-weight: 400;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
border-left: 1px solid #ddcc99;

border-right: 1px solid #ddcc99;
padding: 20px 0;
border-radius: 0;
}

#price_list dd{
width: 33.3333%;
text-align: center;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
padding: 20px 0;
border-right: 1px solid #ddcc99;
}

#price_list span{
font-size: 16px;
font-weight: 400;
color: #ddcc99;
margin: 0 10px 0 0;
}

#price_list .pri_01{}
#price_list .pri_02{}
#price_list .pri_02_top{
border-top: 1px solid #ddcc99;
}
#price_list .pri_03{
width: 66.666%;
}


#price_list_02 dl{
display: flex;
flex-wrap: wrap;
justify-content:flex-start;
margin: 40px auto;
border-top: 1px solid #ddcc99;
width: 100%;

}
#price_list_02 dt{
width: 20%;
background-color: #fcfaf5;
color:#ddcc99;
font-weight: 400;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
border-left: 1px solid #ddcc99;
border-bottom: 1px solid #ddcc99;
padding: 20px 0;
border-radius: 0;
}

#price_list_02 dd{
width: 30%;
font-weight: 400;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
border-left: 1px solid #ddcc99;
border-bottom: 1px solid #ddcc99;
padding: 20px 0;
border-radius: 0;
}
#price_list_02 .end_dd{
border-right: 1px solid #ddcc99;
}

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

#price_list dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 20px auto;
width: 100%;
line-height: 1.4;
border-left: 1px solid #ddcc99;
}

#price_list dt{
width: 100%;
font-size: 14px;
border-left: 0 solid #ddcc99;
padding: 10px 0;
}

#price_list dd{
width: 100%;
font-size: 14px;
padding: 10px 0;
}
	

#price_list30 dt{
width: 33.333%;
font-size: 12px;
border-left: 0 solid #ddcc99;
padding: 10px 0;
}

#price_list30 dd{
width: 33.333%;
font-size: 14px;
padding: 10px 0;
}

#price_list span{
font-size: 12px;
}

	
#price_list .pri_01{}
#price_list .pri_02{}
#price_list .pri_02_top{
border-top: 1px solid #ddcc99;
}
#price_list .pri_03{
width: 100%;
}

#price_list_02 dl{
display: flex;
flex-wrap: wrap;
justify-content:flex-start;
margin: 20px auto;
border-top: 1px solid #ddcc99;
width: 100%;

}
#price_list_02 dt{
width: 50%;
background-color: #fcfaf5;
color:#ddcc99;
font-weight: 400;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
border-left: 1px solid #ddcc99;
border-bottom: 1px solid #ddcc99;
padding: 20px 0;
border-radius: 0;

}

#price_list_02 dd{
width: 50%;
font-weight: 400;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
border-right: 1px solid #ddcc99;

border-bottom: 1px solid #ddcc99;
padding: 20px 0;
border-radius: 0;
}
#price_list_02 .end_dd{
border-right: 1px solid #ddcc99;
}



}


/* ==========================================================================
サイトマップ
   ========================================================================== */
#sitemap h2 {
margin: 40px auto 20px;
}

@media screen and (max-width: 979px) {
#sitemap h2 {
margin: 20px auto 10px;
}


}


/* ==========================================================================
よくある質問
   ========================================================================== */
#faq h2 {
margin: 40px auto 20px;
}

#faq .h2_title_b{
margin: 80px auto 20px;
}

#faq .h2_title_f{
margin: 0px auto 20px;
}

#faq .faq_box{
width: 1200px;
margin: 40px auto 0;
    padding: 25px;
    border-radius: 20px;
    background-color: #ffffff;
    box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);
	padding:40px 40px;
	border:1px solid #ddcc99;
}


#faq .faq_box dl{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin:  0 auto 20px;
width: 100%;
}

#faq .faq_box dt{
width: 50px;
}


#faq .faq_box dd{
width: 1040px;
}


#faq .faq_a{
font-size: 24px;
padding: 0 0 0 0;
}

#faq .faq_box p{padding: 0 0 0 0;}



#faq .q_icom{
width: 50px;
height: 50px;
border-radius: 12px;
background-color: #ddcc99;
color: #ffffff;
font-size: 24px;
font-weight: 700;
display: flex;
justify-content: center;
align-items: center;
}
#faq .a_icom{
width: 50px;
height: 50px;
border-radius: 12px;
background-color: #e8c3c3;
color: #ffffff;
font-size: 24px;
font-weight: 700;
display: flex;
justify-content: center;
align-items: center;
}

#faq .link_a a{
margin:50px auto -20px;
width:50%;
}

@media screen and (max-width: 979px) {
#faq .h2_title_a{margin: 0 auto 20px;}


.faq_bg{}


#faq .faq_box{
width: 100%;
margin: 0 auto 20px;
padding:20px 20px 0 20px;
}

#faq .faq_box dl{margin:0 auto 0;padding: 0 0 20px 0;}

#faq .faq_box dt{width:20%;}

#faq .faq_box dd{
width:80%;
padding: 0 0 0 0;
}

#faq .faq_a{font-size:16px;font-weight: 400;line-height: 1.6;}
#faq .faq_box p{font-size: 16px;line-height: 1.6;}

#faq .q_icom{
width: 40px;
height: 40px;
border-radius:10px;
font-size: 20px;
}
#faq .a_icom{
width: 40px;
height: 40px;
border-radius:10px;
font-size: 20px;
}


#faq .h2_title_b {
    margin: 0 auto 20px;
}

#faq .h2_title_f{
margin: 0px auto 0px;
}


#faq ul {
    margin: 20px auto 20px;
}

#faq .link_a a{
margin:20px auto 0;
width:100%;
}

}


/* ==========================================================================
インストラクター
   ========================================================================== */



#staff h2 {
    font-size: 24px;
    text-align:left;
    padding: 5px 0 0 0;
    margin: 5px auto 5px;
    border-bottom: 0px;
	font-weight: 200;
    line-height:1.6;
}
#staff span {
font-size:16px;
padding:0 0 0 20px;
}

#staff .row {
justify-content: flex-start; /* 左寄せ */
margin:0 auto 0;
 
}

#staff .col_04 {
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 40px;
  box-sizing: border-box;
}

#staff .col_04:nth-child(4n) {
  margin-right: 0;
}


#staff .col_04 dl {
width: 100%;
display: flex;
margin: 0 auto 0;
padding: 0 0;
justify-content: space-around;
align-items: flex-start;
flex-wrap: wrap;
}

#staff .col_04 dt {
width: 100%;
display: flex;
justify-content: space-around;
align-items:center;
flex-wrap: wrap;
}

#staff .col_04 dd {
width:100%;
padding:0 20px;
display: flex;
align-items: flex-start;
flex-wrap: wrap;
}

#staff .col_04 img {
width: 100%;
aspect-ratio: 3 / 4;
object-fit: cover;
border-radius: 20px;
display: block;
}

#staff .bg-box {
background-size: contain;
background-position: center;
background-repeat: no-repeat;
background-color:#f6f6f6;
height:100%;
}


#staff h3 {
    font-size: 16px;
	text-align: center;
    padding: 5px 0 0 0;
	margin:5px auto 5px;
	border-bottom: 0px;
}

#staff .staff_box p{
font-size: 14px;
padding: 10px 0 0 0;
}

#staff .span_box{
display:block;
text-align: center;
display: flex;
flex-wrap:wrap;
justify-content: center;
font-size: 12px;
padding: 0;
width:100%;
}

#staff .link_a {
display: block;
width: 80%;
margin:0 auto;
}

#staff .link_a a {
display: block;
width: 100%;
border-radius: 50px;
border: 1px solid #ddcc99;
color: #333333;
font-size:16px;
text-decoration: none;
text-align: left;
cursor: pointer;
transition: opacity 0.3s ease-in-out;
position: relative;
padding: 10px 20px;
margin: 10px auto 0;
line-height: 1;
box-shadow: 2px 2px 20px rgba(250, 185, 182, 0.1);
background-color: #ffffff;
transition: background-color 0.5s ease, color 0.5s ease;
}

#staff .link_a a::after {
content: "→";
padding: 0;
position: absolute;
top:9px;
right: 15px;
color: #ddcc99;
text-align: center;
font-size: 20px;
transition: opacity 0.3s ease-in-out;
}


#staff .h2_title_b{
margin: 0 auto 20px;
color: #ddcc99;
font-weight: 400;
font-size: 28px;
padding: 0 0 10px 0;
}

#staff .h2_title_b span{
font-size: 16px;
font-weight: 200;
line-height: 1;
margin: 0 0 0 10px;
}


#staff .section-title {
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
  color: #ddcc99; /* 文字色はグレー系（画像参照） */
  border: none;
width:100%;
}

#staff .staff_col_txt h2{
font-size:20px;
text-align:left;
margin:0 auto 10px;
}
#staff .staff_col_txt h3{
  font-size: 16px;
}

.section-title::after {
  content: "";
  flex-grow: 1;
  height: 1px;
  background-color: #ddcc99; /* 線の色 */
  margin-left: 10px; /* テキストとの間隔 */
}

#staff .staff_txt02 {
font-size:14px;
margin:5px auto 5px;
text-align:left;
width:100%;
}

#staff .staff_txt03 {
font-size:14px;
margin:0 auto 10px;
text-align:left;
width:100%;
}

#staff .staff_col_txt{
width:50%;
background-color: #fcfaf5;
padding:40px;
}
#staff .staff_col_img{
width:50%;
margin:0 0 0 0;
background-color:#f6f6f6;
}

#staff .staff_col_img img {
width: 100%;
aspect-ratio: 3.5 / 4;
object-fit: cover;
display: block;
}


#staff .staff_txt {
background-color: #f8f2f1;
margin:0 auto;
padding:40px;
}


@media screen and (max-width: 979px) {
#staff h2 {
        font-size: 14px;
        text-align: center;
        padding: 0;
        margin: 0 auto 0;
        border-bottom: 0px;
}


#staff .row {
justify-content: flex-start;
margin:0 auto 0;
}

#staff .col_04 {
width: 48%;
margin: 0 4% 0 0;
padding: 0 4% 0 4%;
}
	
#staff .col_04:nth-child(2n) {margin: 0 0 4% 0;}
#staff .col_04:nth-child(4n) {margin: 0 0 4% 0;}

#staff .col_04 dl {
}

#staff .col_04 dt {
width: 90%;
}

#staff .col_04 dd {
width:100%;
padding:0;
}
	
#staff .col_04 img {
width: 100%;
aspect-ratio: 1 / 1;
object-fit: cover;
border-radius: 20px;
display: block;
margin:15px auto 0;
}
	
#staff .bg-box {
background-size: cover;
height:50vh;
width:100%;
}


#staff .link_a {
display: block;
width:100%;
margin:0 auto 0;
}	
	
	
#staff .staff_box img {
  width: 80%;
  height:250px;
  object-fit: cover;      /* ← トリミング効果 */
  object-position: center;
  display: block;

}

#staff h3 {
    font-size:14px;
	text-align: center;
    padding:0;
	margin: 0 auto 0;
	border-bottom: 0px;
}

#staff p{
font-size: 12px;
padding: 10px 0 0 0;
line-height: 1.4;
}

#staff .span_box{
line-height: 1.4;
padding:0 0 5px 0;
display: block;
font-size: 10px;
}

#staff .h2_title_b{
font-size:20px;
padding: 0 0 5px 0;
margin: 0 auto 10px;
}

#staff .h2_title_b span{
font-size: 14px;
}

#staff .col img{
margin: 0 auto 20px;
}

#staff .txt_box_02{
margin: 0 auto 5px;
padding: 0;
}

	
.section-title {
display: flex;
align-items: center;
font-size: 12px;
font-weight: bold;
color: #ddcc99; /* 文字色はグレー系（画像参照） */
border: none;
width:100%;
}

.section-title::after {
content: "";
flex-grow: 1;
height: 1px;
background-color: #ddcc99; /* 線の色 */
margin-left: 10px; /* テキストとの間隔 */
}

#staff .link_a a {
display: block;
width: 100%;
border-radius: 50px;
border: 1px solid #ddcc99;
color: #333333;
font-size:12px;
text-decoration: none;
text-align: left;
cursor: pointer;
transition: opacity 0.3s ease-in-out;
position: relative;
padding: 10px 10px;
margin: 5px auto 0;
line-height: 1;
box-shadow: 2px 2px 20px rgba(250, 185, 182, 0.1);
background-color: #ffffff;
transition: background-color 0.5s ease, color 0.5s ease;
}

#staff .link_a a::after {
content: "→";
padding: 0;
position: absolute;
top:20%;
right: 10px;
color: #ddcc99;
text-align: center;
font-size: 20px;
transition: opacity 0.3s ease-in-out;
}
	

#staff .staff_col_img{
width:100%;
margin:0 auto;

}
	
#staff .staff_col_img img {
aspect-ratio: 3.5 / 4;
display: block;
}
	

#staff .staff_col_txt{
width: 100%;
padding:30px 20px 20px 20px;
background-color: #fcfaf5;
border-top-left-radius: 100% 130px;
border-top-right-radius: 100% 130px;
margin: -60px auto 0;
box-sizing: border-box;
overflow: hidden;
}


	
#staff .staff_txt03 {
font-size: 14px;
padding:10px 0;
}

#staff span {
font-size: 12px;
padding: 0 0 0 20px;
}

#staff .staff_txt02 {
font-size:12px;
margin:5px auto 5px;
text-align:left;
width:100%;
}

#staff .staff_txt03 {
font-size:12px;
margin:0 auto 10px;
text-align:left;
width:100%;
}
	
#staff .staff_col_txt_02{
margin:20px 0 0 0;
width:94%;

}
#staff .staff_col_txt h2 {
text-align:center;

}
#staff .staff_txt {
background-color: #f8f2f1;
margin:0 auto;
padding:20px;
}

}

/* ==========================================================================
お客様の声
   ========================================================================== */
#voice {}

#voice .h2_title_a h2{
line-height: 1.6;
}

#voice .row {
align-items: stretch;
justify-content: flex-start;
}
#voice .v_box {
width: 30%;
margin: 0 5% 5% 0;
    background-color: #ffffff;
    border-radius: 20px;
    box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);
    padding: 40px 40px;
	border:1px solid #ddcc99;
}

#voice .v_box h3{
font-size: 24px;
margin: -5px auto 0;
font-weight: 200;
color: #333333;
border-bottom: 0px solid #ddcc99;
padding: 0;	
}

#voice .v_box p{
font-size: 16px;
}

#voice .v_box:nth-child(3n){margin: 0 0 5% 0;}

#voice .v_box dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 10px auto;
}


#voice .v_box dt{
width: 50%;
color: #ffc800;
text-align:left;
}

#voice .v_box dd{
width: 50%;
text-align: right;
}
@media screen and (max-width: 979px) {

#voice {}

#voice .h2_title_a h2{
line-height: 1.6;
}

#voice .row {
align-items: stretch;
justify-content: flex-start;
margin: 40px auto;
}
#voice .v_box {
width:100%;
margin:0 auto 20px;
    background-color: #ffffff;
    border-radius: 20px;
    box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);
    padding: 20px 20px;
	border:1px solid #ddcc99;
}

#voice .v_box h3{
font-size: 18px;
margin: -5px auto 0;
}

#voice .v_box p{font-size: 14px;}
#voice .v_box:nth-child(3n){margin:0 auto 20px;}

#voice .v_box dl{}
#voice .v_box dt{}
#voice .v_box dd{}
}


/* ==========================================================================
メディア掲載
   ========================================================================== */

#media-info {}
#media-info .row{
width: 100%;
    display: flex;
    margin: auto 20px;
    padding: 0 0;
    justify-content:flex-start;
    flex-wrap: wrap;
}


#media-info h3{
font-size: 20px;
    font-weight: 400;
    color: #ddcc99;
    margin: 0 auto 0;
    border-bottom: 0 solid #ddcc99;
    padding: 0 0 10px 0;
}

#media-info .media_box{
    background-color: #fcfaf5;
    border-radius: 30px;
    margin: 20px auto 80px;
    padding: 40px 20px;
    text-align: center;
    font-weight: 400;
    color: #ddcc99;
    font-size: 24px;
    width: 80%;
}

#media-info .media_box h3{
    font-size: 24px;
}

#media-info dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
border-bottom: 1px dotted #ddcc99;
padding: 40px 0;
}
#media-info dt{
width: 30%;
}
#media-info dd{
width: 70%;
padding: 0 0 0 40px;
}

#media-info dd h3{
width: 100%;
border-bottom: 2px solid #ddcc99;
}

#media-info dt a{
font-size: 16px;
color: #ddcc99;
padding: 10px 0 0 0;
text-align: right;
font-weight: 400;
display: block;
width: 100%;
}



@media screen and (max-width: 979px) {
#media-info {}
#media-info .row{
margin:0;
}


#media-info .col_03{
width: 100%;
margin: 0 auto 20px;
}


#media-info h3{
font-size: 16px;
}

#media-info .media_box {
        background-color: #fcfaf5;
        border-radius: 20px;
        margin: 20px auto;
        padding: 20px 10px;
        text-align: center;
        font-weight: 400;
        color: #ddcc99;
        font-size: 16px;
        width: 100%;
    }
	
#media-info .media_box h3{
    font-size:18px;
}

#media-info dl{
padding: 10px 0;
}
#media-info dt{
width: 100%;
}
#media-info dd{
width: 100%;
padding:10px 0;
}

#media-info dd h3{
width: 100%;
border-bottom: 0 solid #ddcc99;
margin: 0 auto 10px;
background-color: #fcfaf5;
border-radius: 5px;
padding: 10px;
}

#media-info dt a{
font-size: 14px;

}

}	


/* ==========================================================================
   新着情報
   ========================================================================== */
#news .news_row{
display: flex;
justify-content:flex-start;
flex-wrap: wrap;
padding: 100px 0;
width: 1000px;
margin: 0 auto;
}
#news .news_col{
width: 302px;
margin: 0 47px 0 0;
}

#news .news_col:nth-child(3n){margin: 0 0 0 0;}

#news .news_col img{
  aspect-ratio: 1 / 1;
  width: 100%; /* 必要に応じてサイズ指定 */
  object-fit: cover; /* 画像をトリミングして埋める */
  border-radius: 15px; /* 任意：丸みをつけたい場合 */
  border:1px solid #eeeeee;
  
}
#news .news_col p{font-size: 16px;padding:0 0 20px 0;}



#news .news_col dl{
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
margin: 15px auto;
}

#news .news_col dt{
width: 75%;
font-weight: 700;
color: #ffffff;
border-radius:50px;
background-color:#ddcc99;
text-align: center;
line-height: 1.8;
font-size: 14px;
padding: 0 20px;
}


#news .news_col dt a{
font-weight: 400;
color: #ffffff;
}

#news .news_col dd{
width: 25%;
text-align: right;
font-size: 14px;
}


#news .news_single{
width: 100%;
}



#news .news_single dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 20px auto 0;
border-bottom: 0 solid #ddcc99;
padding: 0 0 20px 0;
}

#news .news_single dt{
width: 50%;
}

#news .news_single span{
width: 50%;
font-weight: 700;
color: #ffffff;
border-radius:50px;
background-color:#ddcc99;
text-align: center;
line-height: 1.8;
font-size: 16px;
padding: 10px 20px;
}

#news .news_single span a{
color: #ffffff;
font-weight:200;
}


#news .news_single dd{
width: 50%;
text-align: right;
font-size:16px;

}


#news .txt_box{
margin: 40px auto;
padding: 0;
}

#news .eye_img img{
    aspect-ratio: 3 / 1;
    width: 100%;
    object-fit: cover;
    border-radius: 15px;
}


@media screen and (max-width: 979px) {
#news .news_row{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
padding:0 0;
width: 90%;
margin:20px auto;
}
#news .news_col{
width:100%;
margin: 0 0 4% 0;
}

#news .news_col:nth-child(3n){margin: 0 0 4% 0;}
#news .news_col:nth-child(2n){margin: 0 0 4% 0;}

#news .news_col img{
  aspect-ratio: 1 / 1;
  width: 100%; /* 必要に応じてサイズ指定 */
  object-fit: cover; /* 画像をトリミングして埋める */
  border-radius: 15px; /* 任意：丸みをつけたい場合 */
  border:1px solid #eeeeee;
  
}
#news .news_col p{font-size: 14px;}

#news .news_col dl{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin: 10px auto;

}

#news .news_col dt{
width:100%;
font-weight: 700;
text-align: center;
line-height: 1.6;
font-size: 14px;
}
	


#news .news_col dd{
width:100%;
text-align: right;
font-size: 14px;
}

#news .news_single dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 10px auto 0;
border-bottom: 0 solid #ddcc99;
padding: 0 0 10px 0;
}

#news .news_single dt{
width: 100%;

}

#news .news_single span{
width: 100%;
font-weight: 700;
color: #ffffff;
border-radius:50px;
background-color:#ddcc99;
text-align: center;
line-height: 1.8;
font-size: 16px;
padding: 5px 20px;
}


#news .news_single dd{
width: 100%;
text-align: right;
font-size:16px;
}


#news .txt_box{
margin: 20px auto;
padding: 0;
font-size: 14px;
}

#news .eye_img img{
    aspect-ratio: 3 / 2;
    width: 100%;
    object-fit: cover;
    border-radius: 15px;
}

}

/* ==========================================================================
   キャンペーン
   ========================================================================== */
#campaign .news_row{
display: flex;
justify-content:flex-start;
flex-wrap: wrap;
padding: 100px 0;
width: 1000px;
margin: 0 auto;
}
#campaign .news_col{
width: 48%;
margin: 0 4% 4% 0;
}

#campaign .news_col:nth-child(2n){margin: 0 0 4% 0;}

#campaign .news_col img{
aspect-ratio: 2 / 1;
width: 100%;
object-fit: cover;
border-radius: 15px;
border:1px solid #eeeeee;
margin:0 auto;
}
#campaign .news_col p{font-size: 16px;}


#campaign .news_col dl{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin: 15px auto;
}

#campaign .news_single{
width: 100%;
}

#campaign .news_single dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 20px auto 0;
border-bottom: 1px solid #ddcc99;
padding: 0 0 20px 0;
}

#campaign .news_single dt{
width: 50%;
}

#campaign .news_single span{
width: 50%;
font-weight: 700;
color: #ffffff;
border-radius:50px;
background-color:#ddcc99;
text-align: center;
line-height: 1.8;
font-size: 16px;
padding: 10px 20px;
}


#campaign .news_single dd{
width: 50%;
text-align: right;
font-size:16px;
}


#campaign .txt_box{
margin: 40px auto;
padding: 0;
}

#campaign .eye_img img{
    aspect-ratio: 3 / 1;
    width: 100%;
    object-fit: cover;
    border-radius: 15px;
}


@media screen and (max-width: 979px) {
#campaign .news_row{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
padding:0 0;
width: 90%;
margin:20px auto;
}
#campaign .news_col{
width:48%;
margin: 0 4% 4% 0;
}

#campaign .news_col:nth-child(3n){margin: 0 4% 4% 0;}
#campaign .news_col:nth-child(2n){margin: 0 0 4% 0;}

#campaign .news_col img{
  aspect-ratio: 1 / 1;
  width: 100%; /* 必要に応じてサイズ指定 */
  object-fit: cover; /* 画像をトリミングして埋める */
  border-radius: 15px; /* 任意：丸みをつけたい場合 */
  border:1px solid #eeeeee;
  
}
#campaign .news_col p{font-size: 14px;}


#campaign .news_col dl{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin: 10px auto;
}

#campaign .news_col dt{
width:40%;
font-weight: 700;
text-align: center;
line-height: 1.6;
font-size: 14px;
}

#campaign .news_col dd{
width:60%;
text-align: right;
font-size: 14px;
}

#campaign .news_single dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 10px auto 0;
border-bottom: 1px solid #ddcc99;
padding: 0 0 10px 0;
}

#campaign .news_single dt{
width: 100%;

}

#campaign .news_single span{
width: 100%;
font-weight: 700;
color: #ffffff;
border-radius:50px;
background-color:#ddcc99;
text-align: center;
line-height: 1.8;
font-size: 16px;
padding: 5px 20px;
}


#campaign .news_single dd{
width: 100%;
text-align: right;
font-size:16px;
}


#campaign .txt_box{
margin: 20px auto;
padding: 0;
font-size: 14px;
}

#campaign .eye_img img{
    aspect-ratio: 3 / 2;
    width: 100%;
    object-fit: cover;
    border-radius: 15px;
}

}


/* ==========================================================================
   アクセス
   ========================================================================== */

#access .txt_box{
    width: 100%;
    margin: 0 auto 0;
    padding: 0 0 0 0;
}


#access .map-container {
  position: relative;
  width: 100%;
  padding-top: 28.125%; /* ← 高さ半分：56.25%（16:9）→ 半分に */
  border-radius: 12px;   /* ← お好みの角丸に調整可 */
  overflow: hidden;
margin:40px auto 0;
}

#access .map-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 12px; /* iframeにも角丸を適用 */
}

#access .map_sp {
margin:40px auto 100px;
}


#access a{
color:#333333;
text-decoration: underline !important;
}

#access h3{color:#333333;font-weight:200;border-bottom: 0px;text-align:center;}

#access dl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: baseline;
width: 100%;
margin: 20px 0 0 0;
}

#access dt {
width: 100%;
padding: 0 0 0 0;
margin: 0 auto 10px;
border-bottom: 2px solid #ddcc99;
}

#access span{color:#ddcc99;font-size:90%;padding:0 5px 0 0;}

#access dd {
width: 100%;
padding: 0 0 10px 0;
margin: 0 auto 0;
font-size:16px;
}


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


#access .txt_box{
    width: 100%;
    margin: 0 auto 0;
    padding: 0 0 0 0;
}
	
	
#access .access_box	{
    width: 100%;
	max-width: 100%;
	margin:0 auto;

}

	
	
#access .map-container {
position: relative;
width: 100%;
padding-top:56.25%;
border-radius: 12px;
overflow:hidden;
margin:20px auto 20px;
}
	
#access .map_sp {
margin:20px auto 40px;
}
	
#access dl{}
#access dt {
padding: 0 0 5px 0;
border-bottom:1px solid #ddcc99;
}
#access dd{font-size:14px;}
#access span{color:#ddcc99;font-size:90%;padding:0 5px 0 0;}
}


#specialized .link_a{
width:80%;
margin:0 auto;
}


#specialized .stott_row {
    width: 100%;
    display: flex;
    margin: 40px auto 0;
    padding: 0 0;
    justify-content: space-around;
    flex-wrap: wrap;
}

#specialized .col_stott{
width: 24%;
margin: 0 1% 4% 0;
border-radius: 40px;
text-align: center;
background-color: #ffffff;
border:1px solid #eeeeee;
box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);
padding: 20px;
}

#specialized .col_stott:nth-child(4n){margin:0 0 4% 0;}

#specialized .col_stott p{
padding: 40px 0 20px 0;
text-align: center;
}

#specialized h3{
  font-size: 100px;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  background: linear-gradient(180deg, #f4e7d2 0%, #dcc396 100%);
  -webkit-background-clip: text; /* 文字として背景を切り取る */
  background-clip: text;
  color: transparent; /* 文字色を透明にして背景を見せる */
  display: inline-block; /* 必要に応じて */
  line-height:1;
  margin:0 auto 0;
border-bottom: 0px;
padding:0;
}

#specialized .gradient-border {
  position: relative;
  display: inline-block;
}

#specialized .gradient-border::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -20px;
  width: 100%;
  height: 4px;
  background: linear-gradient(to right, #dcc396, #f4e7d2);
}


@media screen and (max-width: 979px) {
#specialized .link_a{
width:100%;
margin:0 auto;
}
	
#specialized .link_a a{
font-size:16px;
line-height:1.6;
}
#specialized .link_a a::after {
top:24%;
}
	
	
#specialized .stott_row {
    width: 100%;
    display: flex;
    margin: 20px auto 0;
    padding: 0 0;
    justify-content: space-around;
    flex-wrap: wrap;
}

#specialized .col_stott{
width:100%;
margin: 0 0 4% 0;
border-radius: 20px;
text-align: center;
background-color: #ffffff;
border:1px solid #eeeeee;
box-shadow: -1.41px 1.41px 20px rgba(250, 185, 182, 0.1);
padding: 10px 10px;
}

#specialized .col_stott:nth-child(2n){margin:0 0 4% 0;}
#specialized .col_stott:nth-child(4n){margin:0 0 4% 0;}

#specialized .col_stott p{
padding: 0 0 0 0;
text-align: center;
font-size: 14px;
	width:65%;
}

#specialized h3{
  font-size: 60px;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  background: linear-gradient(180deg, #f4e7d2 0%, #dcc396 100%);
  -webkit-background-clip: text; /* 文字として背景を切り取る */
  background-clip: text;
  color: transparent; /* 文字色を透明にして背景を見せる */
  display: inline-block; /* 必要に応じて */
  line-height:1;
  margin:-5px auto 0;
	width:35%;
	padding:0 20px;
}

#specialized .gradient-border {
  position: relative;
  display: inline-block;
}
	
#specialized .col_stott{
	display:flex;
justify-content: space-around;
	align-items:center;
}
	
	
#specialized .gradient-border::after {
content: '';
position: absolute;
left: 0;
bottom: -10px;
width: 100%;
height: 0;
background: linear-gradient(to right, #dcc396, #f4e7d2);
}

}

#contact1 .link_a{
width:100%;
margin:0 auto;
padding:0 0 80px 0;
}

#contact1 .ank_link ul{
margin:0 auto 0;
}
#contact1 .ank_link li{width:48%;}
#contact1 .ank_link{margin:0 auto 40px;}
#contact1 .ank_link p{
font-weight: bold;
color: #ddcc99;
font-size:24px;
text-align:center;
}

@media screen and (max-width: 979px) {
#contact1 .link_a{
width:100%;
margin:0 auto;
padding:0 0 40px 0;
}

#contact1 .link_a a{
font-size:16px;
line-height:1.4;
}

.link_a a::after {top: 25%;}
	
#contact1 .ank_link ul{
margin:0 auto 0;
}
#contact1 .ank_link li{width:100%;}
#contact1 .ank_link{margin:0 auto 10px;}
#contact1 .ank_link p{
font-weight: bold;
color: #ddcc99;
font-size:14px;
text-align:center;
}
}


/* ==========================================================================
   プライバシーポリシー
   ========================================================================== */

#privacy-policy p{
padding:0 0 40px 0;
}