@charset "utf-8";
/* Copyright 2022 FSFIELD All Rights Reserved. */

/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

PC、タブレット、スマートフォン共通

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/* ------------------------------------------------------------

プログラム紹介

------------------------------------------------------------ */
/* メインナビ アクティブ表示
---------------------------------------------- */
.nav_global>ul>li:nth-child(2)::before{
	display: block;
}
main{padding-bottom: 141px;}
.sec .heading{
	margin-bottom: 40px;
}
.sec .heading h3{
	font-size: 2.6rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	letter-spacing: .05em;
}
.sec p{
	font-size: 1.7rem;
	line-height: 2;
	letter-spacing: .05em;
	margin-bottom: 2em;
}
.sec *:last-child{margin-bottom: 0;}

.sec1{margin-bottom: 182px;}
.sec1 .text1{
	max-width: 800px;
	margin: 0 auto 51px;
}
.sec1 .text1 p{}

.wrap_timetable{
	max-width: 1600px;
	margin: 0 auto;
	padding: 40px 80px 0;
    box-sizing: content-box;
}
.wrap_timetable>.inner{
	display: flex;
	margin: 0 -40px;
}
.wrap_timetable .col{
	width: 50%;
	padding: 0 40px;
}
.wrap_timetable .col .heading{margin-bottom: 17px;}
.wrap_timetable .col .heading h4{
	font-size: 1.8rem;
	font-weight: bold;
}
.wrap_timetable .col .heading h4 span{
	display: inline-block;
	background: #20323D;
	color: #FFF;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1;
	padding: 9px 14px;
    margin-right: 0.8em;
    min-width: 76px;
    text-align: center;
}
.wrap_timetable .col .timetable {
	position: relative;
}
.wrap_timetable .col .timetable img{
	width: 100%;
}
.wrap_timetable .col1 .timetable::before {
	content: "";
	width: 60px;
	height: 13px;
	background: url(../img/overview/arrow01.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: -70px;
	margin-top: -6px;
}
.wrap_timetable>.text1{
	margin: 0;
    text-align: center;
    max-width: unset;
    padding-top: 19px;
}
.wrap_timetable>.text1 p{
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 2;
	text-align: center;
    background: linear-gradient(to top, #20323d 0%, #20323d 10%, transparent 10%, transparent 100%);
    display: inline;
    padding-bottom: 5px;
}
.wrap_timetable>.text2{
	max-width: 800px;
	margin: 0 auto;
	padding-top: 92px;
}

.sec2{padding: 0 80px;}
.sec2 .fig1{
	max-width: 1040px;
	margin: 0 auto;
}
.sec2 .fig1 img{
	width: 100%;
}

.sec2-1{
	max-width: 1040px;
	margin: 0 auto;
	padding: 112px 0 0;
	box-sizing: content-box;
	display: flex;
}
.sec2-1 .heading{
	width: 300px;
	padding-right: 40px;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: .05em;
	flex:none;
}
.sec2-1 .text{}
.sec2-1 .text p{}
.sec2-1 .text .philosophy{
	display: flex;
}
.sec2-1 .text .philosophy dl{
	width: 33.333%;
	padding: 0 10px;
	border-left: 1px solid #E5E5E5;
}
.sec2-1 .text .philosophy dl:last-child{
	border-right: 1px solid #E5E5E5;
}
.sec2-1 .text .philosophy dl dt{
	font-size: 1.7rem;
	font-weight: bold;
	letter-spacing: .05em;
}
.sec2-1 .text .philosophy dl dd{
	font-size: 1.5rem;
	line-height: 1.6;
}





@media only screen and (max-width:1200px){ /* 表示領域が1200px以下の場合に適用するスタイル */
	br.pc,br.sp{display: none;}
	br.tab{display: block;}

	.sec1{
		padding: 0 40px;
		margin-bottom: 132px;
	}
	.wrap_timetable{
		padding: 40px 0 0;
	}
	.wrap_timetable>.inner{
		display: block;
		margin: 0;
	}
	.wrap_timetable .col{
		width: 100%;
		max-width: 800px;
		box-sizing: content-box;
		margin: 0 auto;
		padding: 0;
		image-rendering: -webkit-optimize-contrast;
	}
	.wrap_timetable .col1 .timetable::before {
		background: url(../img/overview/arrow02.png) no-repeat;
		background-size: contain;
		width: 24px;
		height: 31px;
		right: unset;
		left: 50%;
		top: unset;
		bottom: -31px;
		margin-left: -12px;
	}
	.wrap_timetable .col2{
		padding-top: 50px;
	}

	.sec2{padding: 0 40px;}

	.sec2-1{
		padding: 84px 0 0;
		display: block;
		max-width: 800px;
	}
	.sec2-1 .heading{
		padding: 0;
		width: unset;
		margin-bottom: 0.66em;
		max-width: 800px;
	}


}/*--@media--*/


@media only screen and (max-width:1024px){ /* 表示領域が1024px以下の場合に適用するスタイル */

	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	タブレット

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/


}/*--@media--*/


@media only screen and (max-width:767px){ /* 表示領域が767px以下の場合に適用するスタイル */
	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	スマートフォン（iPhone,Android)

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

	main{padding-bottom: 63px;}
	br.pc,br.tab{display: none;}
	br.sp{display: block;}
	.sec .heading{
		margin-bottom: 30px;
	}
	.sec .heading h3{
		font-size: 5.733vw;
		letter-spacing: 0;
		text-align: left;
	}
	.sec p{
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	.sec1{
		padding: 0 6.4vw;
		margin-top: -7px;
		margin-bottom: 0;
	}
	.sec1 .text1{
		margin-bottom: 53px;
	}
	.wrap_timetable{
		padding: 0;
	}
	.wrap_timetable>.inner{
		margin:0 -6.4vw;
	}
	.wrap_timetable .col .heading{
		padding-left: 5px;
		margin-bottom: 5px;
	}
	.wrap_timetable .col .heading h4{
		font-size: 1.6rem;
	}
	.wrap_timetable .col .heading h4 span{
		font-size: 1.5rem;
		min-width: 71px;
		margin-right: .66em;
	}
	.wrap_timetable .col1 .timetable::before {
		width: 16px;
		height: 20.5px;
		background-size: contain;
		bottom: -20.5px;
		margin-left: -8px;
	}
	.wrap_timetable .col2{
		padding-top: 30px;
	}
	.wrap_timetable>.text1{
		margin-bottom: 0;
	}
	.wrap_timetable>.text1 p{
		font-size: 1.6rem;
	}
	.wrap_timetable>.text2{
		padding-top: 42px;
	}
	.sec2{
		padding: 62px 6.4vw 0;
	}
	.sec2 .fig1{
		margin: 0 calc(-6.4vw + 5px);
	}
	.sec2-1{
		padding: 52px 0 0;
	}
	.sec2-1 .heading{
		font-size: 1.8rem;
		margin-bottom: 14px;
	}
	.sec2-1 .text .philosophy{
		display: block;
	}
	.sec2-1 .text .philosophy dl{
		width: 100%;
		border: none;
		padding: 0;
		display: flex;
		margin-bottom: 2em;
	}
	.sec2-1 .text .philosophy dl:last-child{
		border: none;
		margin-bottom: 0;
	}
	.sec2-1 .text .philosophy dl dt{
		flex:none;
		font-size: 1.6rem;
		width: 66px;
	}
	.sec2-1 .text .philosophy dl dd{
		font-size: 1.4rem;
	    line-height: 2;
	}

}/*--@media--*/

