@charset "UTF-8";

/* item
---------------------------------------------------------*/
.p-first #item ul{
	width: 80%;
	max-width: 776px;
	margin: 0 auto;
	display: flex;
    justify-content: space-between;
}
.p-first #item ul li{
	width: 48%;
	max-width: 352px;
}
.p-first #item ul li dl{
	font: var(--font-min);
	text-align: center;
	margin-top: var(--gap-20);
}
.p-first #item ul li dl dt{
	font-size:var(--fs-22);
	line-height: 1.5em;
}
.p-first #item ul li dl dt small,
.p-first #item ul li dl dd{
	font-size:var(--fs-17);
}
.p-first #item ul li dl dd{
	line-height: 1.6em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.p-first #item ul{
	width: 100%;
	max-width: 100%;
	display: block;
}
.p-first #item ul li{
	width: 100%;
	max-width: 100%;
	margin-bottom: 10%;
}
.p-first #item ul li:last-child{
	margin-bottom: 0;
}
.p-first #item ul li div{
	width: 70%;
	margin: 0 auto;
}
}





/* time
---------------------------------------------------------*/
.p-first #time .c-timetable{
	position: relative;
	width: 80%;
	max-width: 800px;
	padding-bottom: var(--gap-50);
	margin: 0 auto var(--gap-50);
}
.p-first #time .c-timetable::before{
	position: absolute;
	display: block;
	content: "";
	background: #d1d1d1;
	background-size: 100% auto;
	width: 100%;
	max-width: 640px;
	height: 1px;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.p-first #time .c-timetable table {
	font-size: var(--fs-24);	/*基準：曜日サイズ*/
}
.p-first #time .c-timetable table tbody tr:nth-child(1) th,
.p-first #time .c-timetable table tbody tr:nth-child(1) td{
	background: #f9f9fa;
}
.p-first #time .c-timetable table tbody tr:nth-child(2) th,
.p-first #time .c-timetable table tbody tr:nth-child(2) td{
	background: #f3f3f4;
}
.p-first #time .c-timetable__memo{
	text-align: center;
	font-size: var(--fs-17);
}
.p-first #time .c-timetable__memo p{
	display: inline-block;
	margin-right: 1em;
}
.p-first #time .c-timetable__memo p:last-child{
	margin-right: 0;
}
.p-first #time .p-time-memo{
	text-align: center;
	margin-top: .5em;
}
.p-first #time .p-time-memo p{
	display: inline-block;
	font-size: var(--fs-15);
	margin-right: 1em;
}
.p-first #time .p-time-memo p:last-child{
	margin-right: 0;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.p-first #time .c-timetable{
	width: 100%;
	max-width:100%;
}
.p-first #time .c-timetable table {
	font-size: var(--fs-18);	/*基準：曜日サイズ*/
}

.p-first #time .c-counseling__contact-tel .c-tel {
	font-size: 200%;
}
.c-counseling__contact-cta .c-web a {
	font-size: 1.8rem;
}
}






/* flow
---------------------------------------------------------*/
.p-first #flow .p-flow-bg{
	background: #fbfbfc;
	padding: var(--gap-120) 0 var(--gap-150);
}
.p-first #flow .p-flow-index{
	text-align: center;
	margin-bottom: var(--gap-70);
	color: var(--color-navy);
}
.p-first #flow .p-flow-index h2{
	font: var(--font-min);
	font-size:var(--fs-22);
}

.p-first #flow .p-flow-list-memo{
	text-align: right;
	font: var(--font-min);
	font-size:var(--fs-14);
	margin-bottom: 1em;
}
.p-first #flow .p-flow-list > li{
	position: relative;
	border-top:1px solid #d1d1d1;
	padding: var(--gap-100) 0;
}
.p-first #flow .p-flow-list > li:last-child{
	padding-bottom: 0;
}
.p-first #flow .p-flow-list > li::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/first/img_arrow.svg")no-repeat bottom center;
	background-size: 100% auto;
	width: 6em;
	aspect-ratio: 1 / 1;
	bottom: -3em;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 5;
	mix-blend-mode: multiply;
}
.p-first #flow .p-flow-list > li::after{
	position: absolute;
	display: block;
	content: "";
	background: #fbfbfc;
	background-size: 100% auto;
	width: 25%;
	height: 6em;
	bottom: -3em;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 4;
}
.p-first #flow .p-flow-list > li:last-child::before,
.p-first #flow .p-flow-list > li:last-child::after{
	display: none;
}
.p-first #flow .p-flow-list > li > div{
	max-width: 960px;
	margin: 0 auto;
}
.p-first #flow .p-flow-list-flex{
	display: flex;
    justify-content: space-between;
}
.p-first #flow .p-flow-list-flex__img{
	width: 45%;
}
.p-first #flow .p-flow-list-flex__txt{
	width: 50%;
}
.p-first #flow .p-flow-list-flex__txt h3{
	font: var(--font-en);
	background: var(--color-navy);
	color: #fff;
	max-width: 220px;
	position: relative;
	text-align: center;
	font-size:var(--fs-17);
	line-height: 1em;
	padding: 1em 0;
	margin-bottom: 2em;
}
.p-first #flow .p-flow-list-flex__txt h3::before{
	position: absolute;
	display: block;
	content: "";
	background: url("../images/first/img_serif.png")no-repeat top left;
	background-size: 100% auto;
	width: 1em;
	aspect-ratio: 1 / 1;
	top:100%;
	left: 0;
}
.p-first #flow .p-flow-list-flex__txt h4{
	font: var(--font-min);
	font-size:var(--fs-29);
	color: var(--color-navy);
}
.p-first #flow .p-flow-list-flex:has(+ .c-catch-fs17){
	margin-bottom: var(--gap-30);
}
.p-first #flow .p-flow-list .c-catch-fs17{
	text-align: left!important;
}

.p-first #flow .p-flow-list-h5{
	position: relative;
	font: var(--font-min);
	font-size:var(--fs-20);
	color: var(--color-blue);
	padding-left: 1em;
	box-sizing: border-box;
	margin-top: var(--gap-30);
	margin-bottom: 1em;
}
.p-first #flow .p-flow-list-h5::before{
	position: absolute;
	display: block;
	content: "";
	background: var(--color-blue);
	background-size: 100% auto;
	width: 3px;
	height: 1em;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.p-first #flow .p-flow-list-col3{
	display: flex;
    justify-content: space-between;
}
.p-first #flow .p-flow-list-col3 li{
	width: 32%;
	max-width: 288px;
}
.p-first #flow .p-flow-list-col3 li .c-catch-fs17{
	color: var(--color-blue);
	margin: .8em 0 .3em;
}

.p-first #flow .p-flow-list-attention{
	position: relative;
	font-weight: bold;
	color: var(--color-red);
	margin-top: 1em;
	padding-left: 1em;
}
.p-first #flow .p-flow-list-attention::before{
	position: absolute;
	display: block;
	content: "※";
	top:0;
	left: 0;
}

.p-first #flow .p-flow-list-movie{
	max-width: 880px;
	margin: 0 auto;
	display: flex;
    justify-content: space-between;
}
.p-first #flow .p-flow-list-movie li{
	width: 48%;
	max-width: 400px;
}
.p-first #flow .p-flow-list-movie div{
	aspect-ratio:400 / 251!important;
}
.p-first #flow .p-flow-list-movie .c-catch-fs17.u-fw-bold{
	color: var(--color-blue);
	margin-top: 1em;
	text-align: center!important;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.p-first #flow .p-flow-list-memo{
	margin-bottom: .5em;
}
.p-first #flow .p-flow-list > li::before{
	width: 4em;
	bottom: -2em;
}
.p-first #flow .p-flow-list > li::after{
	width:7em;
	height: 4em;
	bottom: -2em;
}
.p-first #flow .p-flow-list-flex{
	display: block;
}
.p-first #flow .p-flow-list-flex__img{
	width: 80%;
	margin: 0 auto;
}
.p-first #flow .p-flow-list-flex__txt{
	width: 100%;
	margin-top: -1em;
}
.p-first #flow .p-flow-list-flex__txt h3{
	max-width: 10em;
	padding: .7em 0;
	margin-bottom: .6em;
}
.p-first #flow .p-flow-list-flex__txt h3::before{
	width: .8em;
}
.p-first #flow .p-flow-list-flex:has(+ .c-catch-fs17){
	margin-bottom: .4em;
}

.p-first #flow .p-flow-list-h5{
	margin-bottom: .5em;
}

.p-first #flow .p-flow-list-col3{
	display: block;
}
.p-first #flow .p-flow-list-col3 li{
	width:100%;
	max-width:100%;
	margin-bottom: 8%;
}
.p-first #flow .p-flow-list-col3 li:last-child{
	margin-bottom: 0;
}
.p-first #flow .p-flow-list-col3 li div{
	width: 60%;
	margin: 0 auto;
}
.p-first #flow .p-flow-list-col3 li .c-catch-fs17.u-fw-bold{
	text-align: center!important;
	margin: .5em 0 .1em;
}

.p-first #flow .p-flow-list-movie{
	display: block;
}
.p-first #flow .p-flow-list-movie li{
	width: 100%;
	max-width: 100%;
	margin-bottom: 10%;
}
.p-first #flow .p-flow-list-movie li:last-child{
	margin-bottom: 0;
}
.p-first #flow .p-flow-list-movie .c-catch-fs17.u-fw-bold{
	margin-top:.8em;
	line-height: 1.5em;
}
}