@charset "utf-8";
/*
	Last Update:2022/02/02
	Auther: iw
*/
/*===================================================================
	product entry
===================================================================*/
.entry a { color:#3C89DA; text-decoration:underline; }
body.pc a:hover { text-decoration:none; }

.entry h2,
.entry h4,
.entry h5 { font-weight:bold; line-height:130%; }
.entry h2 { font-size:1.75em; margin-bottom:10px; }
.entry h3 { margin-bottom:40px; font-weight:500; line-height:140%; }
.entry h4 { margin-bottom:20px; }
.entry h5 { font-size:1.15em; margin-bottom:10px; }
	@media (max-width: 575px){
		.entry h3 { font-size:1.5em; }
		.entry h4 { font-size:1.25em; }
	}
	@media (min-width: 576px){
		.entry h3 { font-size:1.75em; }
		.entry h4 { font-size:1.5em; }
	}

.entry * + h3 { margin-top:40px; }
.entry * + h4 { margin-top:30px; }
.entry * + h5 { margin-top:20px; }
.entry h2 + h3 { margin-top:0; }
.entry h3 + h4 { margin-top:0; }
.entry h4 + h5 { margin-top:0; }

.entry p + p { margin-top:10px; }

.entry * + ul,
.entry * + ol { margin-top:15px; }
.entry ul,
.entry ol { list-style:none; list-style-type:none; margin-bottom:20px; }
.entry ul > li,
.entry ol > li { position:relative; margin:0 0 5px 20px; }
.entry ul > li:before { color:#000077; content:"\025b6"; font-size:12px; position:absolute; top:4px; left:-18px; }
.entry ul > li > ul,
.entry ul > li > ol,
.entry ol > li > ul,
.entry ol > li > ol { margin-top:5px; }
.entry ul > li > ul > li:before { color:#225d7b; content:"●"; font-size:8px; top:8px; left:-16px; }
.entry ol { counter-reset:ol_li; }
.entry ol > li:before { color:#000077; counter-increment:ol_li; content:counter(ol_li)"."; position:absolute; top:1px; left:-20px; font-weight:bold; }
.entry ol > li > ol { margin-top:5px; margin-bottom:5px; }
.entry ol > li > ol > li:before { color:#225d7b; }

.entry * + table,
.entry * + .sp_table_wrap { margin-top:15px; }
.entry table:not(.tbl_form) { width:100%; margin-bottom:20px; }
.entry table:not(.tbl_form) th { font-weight:bold; }
.entry table:not(.tbl_form) th:not(:last-child)::after { position:absolute; display:flex; justify-content:center; align-items:center; content:"/"; top:50%; right:-30px; width:30px; height:30px; transform:translate(-50%, -50%); color:#BABABA; font-size:1.25em; z-index:10; }
.entry table:not(.tbl_form) tr > * { padding:15px; vertical-align:middle; text-align:center; z-index:10px; }
.entry table:not(.tbl_form) tr > * { position:relative; }
.entry table:not(.tbl_form) tbody > tr:nth-child(2n+1) { background:#FDFDFD; }
.entry table:not(.tbl_form) tbody > tr:nth-child(2n) { background:#FFF8F2; }
.entry table._blue:not(.tbl_form) tbody > tr:nth-child(2n) { background:#F4FCFF; }
@media (max-width:575px) {
	.entry table:not(.tbl_form) tr > * { padding:15px 10px; }

}

.entry .xxx-large { font-size:2em; }
.entry .xx-large  { font-size:1.75em; }
.entry .x-large   { font-size:1.5em; }
.entry .large     { font-size:1.25em; }
.entry .small     { font-size:0.9em; }
.entry .x-small   { font-size:0.8em; }
.entry .xx-small  { font-size:0.75em; }

.entry .image { position:relative; }
.entry .image > .image_inner { position:absolute; width:100%; line-height:normal; top:0; left:0; }

.entry .c_blue { color:#3680D6!important; }
.entry .c_orange { color:#FF8528!important; }
.entry .c_green { color:#00B050!important; }

/*===================================================================
	template
===================================================================*/
.feature_list {}
.feature_list .unit { margin-bottom:20px; }
.feature_list .unit .image_box { position:relative; background:#fff; width:100%; height:0; padding-bottom:100%; border-radius:12px; border:3px solid #3680D6; margin-bottom:10px; }
.feature_list._orange .unit .image_box { border-color:#FF8528; }
.feature_list .unit .image_box > .image { position:absolute; display:flex; justify-content:center; align-items:center; width:100%; height:100%; padding:20px; }
.feature_list .unit .text { text-align:center; display:flex; flex-direction:column; justify-content:center; }

.links_list { display:flex; flex-wrap:wrap; justify-content:center; width:calc(100% + 16px); margin:0 -8px; }
.links_list .unit { width:33.333%; text-align:center; padding:0 8px; margin-bottom:20px; }
.links_list dt a { display:block; background:#3680D6; padding:15px 0; color:#fff; text-decoration:none; margin-bottom:10px; }
.links_list._orange dt a { background:#FF8528; }
@media (max-width:991px) {
	.links_list .unit { width:50%; }
}
@media (max-width:575px) {
	.links_list .unit { width:100%; }
}

.schedule_unit { display:flex; background:#FFFEF4; border-top-left-radius:36px; border-bottom-right-radius:36px; overflow:hidden; }
.schedule_unit .text { width:55%; padding:60px 30px; display:flex; flex-direction:column; align-items:center; line-height:1.4; text-align:center; }
.schedule_unit .image { width:45%; }
@media (max-width:991px) {
	.schedule_unit { flex-direction:column-reverse; }
	.schedule_unit .text,
	.schedule_unit .image { width:100%; }
	.schedule_unit .text { padding:30px; }
	.schedule_unit .image { padding-bottom:40%; }
}

.solo-box { width:100%; max-width:480px; padding:40px 0; background:#fff; display:inline-block; border-top-left-radius:36px; border-bottom-right-radius:36px; box-shadow:0 0 12px rgba(54, 128, 214, 0.16); }

.transfer_list { display:inline-table; }
.transfer_list dl > * { display:table-cell; }
.transfer_list dl > dt { width:4.5em; text-align-last:justify; text-justify: inter-ideograph }
.transfer_list dl > dd { padding-left:20px; }

.transfer_note { margin-top:20px; }
.transfer_note li { list-style:none; margin-left:0!important; text-align:left; text-indent:-1em; padding-left:1em; }
.transfer_note li > span { font-weight:bold; }
.transfer_note li::before { display:none; }

.tel_number { display:inline-block; padding-left:45px; font-size:2em; background:url(../image/icon/tel.png) no-repeat center left / 40px auto; }

.attention { background:#FFFDE5; padding:30px 0; }
.attention .text { background:url(../image/icon/warning.png) no-repeat center left / 60px auto; padding-left:80px; }
@media (max-width:767px) {
	.attention .text { background-position:top center; padding-top:80px; padding-left:0; }
}

.entry_box { position:relative; position:relative; padding:60px 40px; background:#fff; box-shadow:0 0 8px rgba(0,0,0,0.16); border-top-left-radius:36px; border-bottom-right-radius:36px; }
.bg_l-blue .entry_box { box-shadow:0 0 8px rgba(54, 128, 214, 0.16); }
.bg_l-orange .entry_box { box-shadow:0 0 8px rgba(255, 133, 40, 0.16); }
@media (max-width:767px) {
	.entry_box { padding:60px 15px; }
}

.school_description p { padding:30px 0; }
.school_description .image { height:calc(100% + 80px); margin-top:-40px; margin-bottom:-40px; border-top-left-radius:36px; border-bottom-right-radius:36px; z-index:50; }
@media (max-width:991px) {
	.school_title_copy { margin-bottom:0!important; }
	.school_description .image { height:0; padding-bottom:50%; margin:0; }
}

.image-text_unit { display:flex; align-items:center; }
.image-text_unit .image { width:40%; border-top-left-radius:36px; border-bottom-right-radius:36px; overflow:hidden; }
.image-text_unit .image > img { width:100%; height:auto; }
.image-text_unit .text { padding-left:30px; }
@media (max-width:767px) {
	.image-text_unit { flex-direction:column; align-items:flex-start; }
	.image-text_unit .image { width:100%; margin-bottom:20px; }
	.image-text_unit .image > img { width:100%; }
	.image-text_unit .text { padding-left:0; }
}

.text-image_unit { display:flex; flex-direction:row-reverse; align-items:center; }
.text-image_unit .image { width:40%; border-top-left-radius:36px; border-bottom-right-radius:36px; overflow:hidden; }
.text-image_unit .image > img { width:100%; height:auto; }
.text-image_unit .text { padding-right:30px; }
@media (max-width:767px) {
	.text-image_unit { flex-direction:column; align-items:flex-start; }
	.text-image_unit .image { width:100%; margin-bottom:20px; }
	.text-image_unit .text { padding-left:0; }
}

.school_flow { display:flex; justify-content:space-between; }
.school_flow > * { width:calc( ( 100% - 50px ) / 3 ); }
.school_flow .unit { border:2px solid #FF8528; }
.school_flow._blue .unit { border-color:#3680D6; }
.school_flow .unit._1 { display:flex; flex-direction:column; }
.school_flow .unit._1 > * { padding:15px; }
.school_flow .unit._1 > .main { position:relative; background:#FF8528; color:#fff; }
.school_flow._blue .unit._1 > .main { background:#3680D6; }
.school_flow .unit._1 > .main::after { content:""; position:absolute; border-left:25px solid #FF8528; border-top:30px solid transparent; border-bottom:30px solid transparent; top:50%; right:-25px; transform:translate(2px, -50%); }
.school_flow._blue .unit._1 > .main::after { border-left-color:#3680D6; }
.school_flow .unit._1 > .main span { font-weight:bold; font-size:1.25em; }
.school_flow .unit._1 > .sub { background:#fff; }
.school_flow .unit_wrap { display:flex; flex-direction:column; justify-content:space-between; }
.school_flow .unit_wrap > * { position:relative; height:calc( ( 100% - 25px ) / 2 ); background:#fff; padding:15px; display:flex; align-items:center; font-weight:bold; font-size:1.1em; color:#FF8528; width:100%; }
.school_flow .unit_wrap > * > p { display:flex; align-items:center; height:100%; width:100%; }
.school_flow._blue .unit_wrap > * { color:#3680D6; }
.school_flow .unit_wrap > .unit._2::after { content:""; position:absolute; border-top:25px solid #FF8528; border-left:30px solid transparent; border-right:30px solid transparent; bottom:-25px; left:50%; transform:translate(-50%, 2px); }
.school_flow .unit_wrap > .unit._3::after { content:""; position:absolute; border-left:25px solid #FF8528; border-top:30px solid transparent; border-bottom:30px solid transparent; top:50%; right:-25px; transform:translate(2px, -50%); }
.school_flow._blue .unit_wrap > .unit._2::after { border-top-color:#3680D6; }
.school_flow._blue .unit_wrap > .unit._3::after { border-left-color:#3680D6; }
.school_flow .unit._4 { display:flex; align-items:center; background:#FF8528; color:#fff; padding:15px; }
.school_flow._blue .unit._4 { background:#3680D6; }
.school_flow .unit._4 p span { font-weight:bold; font-size:1.25em; }
@media (max-width:767px) {
	.school_flow { flex-direction:column; }
	.school_flow > * { width:100%; }
	.school_flow .unit { margin-bottom:25px; }
	.school_flow .unit._1 { position:relative; }
	.school_flow .unit._1::after,
	.school_flow .unit_wrap > .unit._3::after { content:""; position:absolute; border-top:25px solid #FF8528; border-left:30px solid transparent; border-right:30px solid transparent; bottom:-25px; left:50%; transform:translate(-50%, 2px); border-bottom:0; top:auto; right:auto;
	}
	.school_flow._blue .unit._1::after,
	.school_flow._blue .unit_wrap > .unit._3::after { border-top-color:#3680D6; border-left-color:transparent; }
	.school_flow .unit._1 > .main::after { display:none; }
}

.training_description { padding-bottom:20%; }
.training_description > img { display:none; }
.cke_editable .training_description > img { display:block; }
.training_description .text { background:rgba(255, 255, 255, 0.9); }
.training_description p { line-height:2; }

.training_appilication { text-align:center; }
.training_appilication .mail,
.training_appilication .tel { font-weight:bold; }
.training_appilication .tel { display:inline-block; padding-left:25px; background:url(../image/icon/tel_o.png) no-repeat center left / 25px auto; }

.blog_list { margin-bottom:40px; }
.blog_list .blog_unit { display:block; color:#333; text-decoration:none; margin-bottom:20px; }
.blog_list .blog_unit:hover { text-decoration:underline; }
.blog_list .blog_unit .image { margin-bottom:10px; }
.blog_list .blog_unit .text dt { color:#333; margin-bottom:10px; }
.blog_list .blog_unit .text dd.comment { margin-bottom:10px; }
.blog_list .blog_unit .text dd.date { color:#555; }

.blog_detail { margin-bottom:40px; }
.blog_detail .detail_head { display:flex; flex-direction:column; border-bottom:1px solid #333; padding-bottom:10px; margin-bottom:20px; }
.blog_detail .detail_head .date { font-size:16px; color:#333; }
.blog_detail .detail_head .date { font-size:16px; color:#333; }

/*===================================================================
	#top
===================================================================*/
#main_image_wrap { position:relative; background:url(../image/contents/top/main_back.jpg) no-repeat left bottom / 80vw auto; }
#main_image { position:relative; }
#main_visual { position:relative; }
#main_text { position:absolute; left:0; bottom:0; width:100%; background:rgba(255, 255, 255, 0.8); padding:20px; text-align:left; }
#main_text h2 { display:flex; flex-direction:column; font-size:1em; line-height:1.4; font-weight:normal; }
#main_text h2 .main { font-size:3em; line-height:1.8; }
#main_text h2 .sub { font-size:1.25em; }
	@media (max-width:767px) {
		#main_text h2 .main { font-size:1.5em; }
		#main_text h2 .sub { font-size:1em; }

	}
	@media(max-width: 575px){
		#main_image .unit .img_back { height:100vw; }
	}
	@media (min-width: 576px){
		#main_image_wrap { height:600px; }
		#main_image { height:550px; }
		#main_image .unit .img_back { height:550px; }
	}
	@media (min-width:1920px){
		#main_image { margin:0 300px 0 auto; }
	}

#top_service { position:relative; }
#top_service .service_bg { position:absolute; top:0; left:0; width:100%; height:0; padding-bottom:21.429%; }
#top_service h3 { font-size:1.5em; margin-bottom:80px; }
#top_service .service_unit { border-top-left-radius:36px; border-bottom-right-radius:36px; }
#top_service .service_unit .img_back { height:0; border-top-left-radius:36px; border-bottom-right-radius:36px; }
#top_service .service_unit .text { position:relative; margin:0 30px 30px; height:100%; }
#top_service .service_unit .text p { display:block; line-height:2; padding-bottom:60px; }
#top_service .service_unit .text .btn_wrap { position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:100%; }
#top_service .service_unit h4 { font-size:2.5em; margin-top:-30px; margin-bottom:10px; font-weight:normal; }
#top_service .service_unit._blue { background:#EBF9FF; margin-left:30px; margin-bottom:80px; }
#top_service .service_unit._blue .img_back { padding-bottom:54.545%; margin-left:-30px; margin-top:-30px; margin-bottom:30px; }
#top_service .service_unit._orange { background:#FFF8F2; margin-right:30px; }
#top_service .service_unit._orange .img_back { padding-bottom:72%; margin-right:-30px; margin-top:-30px; margin-bottom:30px; }
#top_location h3 { font-size:2.5em; margin-bottom:40px; }
#top_location .iframe_wrap { position:relative; width:100%; padding-bottom:25.714%; }
#top_location .iframe_wrap > iframe { position:absolute; top:0; left:0; }
@media (max-width:991px) {
	#top_service .service_unit .text { margin:0 15px 30px; }
}
@media (max-width:767px) {
	#top_service h3,
	#top_location h3 { font-size:1.2em; }
	#top_service .service_unit { margin-left:15px!important; margin-right:0!important; }
	#top_service .service_unit .text { padding-top:10px; }
	#top_service .service_unit .img_back { width:100%; margin:-30px 0 30px -15px !important; }
	#top_location .iframe_wrap { position:relative; width:100%; padding-bottom:60%; }
}

/*===================================================================
	parts
===================================================================*/
.hl_1 { position:relative; text-align:left; margin-bottom:40px; padding-bottom:20px; }
.hl_1::after { content:""; position:absolute; display:block; left:0; bottom:0; width:150px; height:3px; background:#333; }
.hl_1._blue::after { background:#3680D6; }
.hl_1._orange::after { background:#FF8528; }
.hl_1._green::after { background:#00B050; }


.button._type1 { display:inline-block; text-decoration:none; max-width:250px; width:100%; border-radius:50px; padding:15px 10px; background:#333; color:#fff; border:0; }
.button._type1._blue { background:#3680D6; }
.button._type1._orange { background:#FF8528; }
.button._type1._green { background:#00B050; }
.button._type1 > span { display:block; background:url(../image/icon/arrow_right.png) no-repeat right center / auto 25px; }
	@media(max-width: 575px){
	}

.tbl_form { width:100%; }
.tbl_form tr { background:none!important; }
.tbl_form tr > * { border:0!important; vertical-align:middle; padding-top:15px; padding-bottom:15px; }
.tbl_form tr > th { position:relative; width:240px; }
.tbl_form tr > td { padding-left:40px; }
.tbl_form tr > th .need { position:absolute; background:#DE0000; border-radius:0; right:0; }
@media (max-width:991px) {
	.tbl_form tr > * { display:block; padding-left:0!important; padding-right:0!important; }
	.tbl_form tr > th { padding-bottom:0; width:100%; }
}
.check_unit { padding:10px 15px; }

form p.c-red { display:block; margin:5px 0; padding:5px; background:#F8EAE8; color:#BC2F1C; font-weight:normal; }

/*===================================================================
	common
===================================================================*/
.c_ { color:#333 !important; }
.c_gray { color:#999 !important; }
.c_white { color:#fff !important; }
.c_pink { color:#FF004E !important; }

.bg_white { background-color:#fff !important; }
.bg_l-blue { background-color:#F4FCFF !important; }
.bg_l-orange { background-color:#FFF8F2 !important; }
.bg_gray { background-color:#F8F8F8 !important; }

._triangle { position:relative; padding-top:20px; }
._triangle::before { content:""; position:absolute; border-top:calc( 200px * 1.14142 / 2 ) solid #fff; border-left:calc( 200px * 1.14142 / 2 ) solid transparent; border-right:calc( 200px * 1.14142 / 2 ) solid transparent; display:block; top:0; left:50%; transform:translateX(-50%);  }
.bg_white + ._triangle::before { border-top-color:#fff; }
.bg_l-blue + ._triangle::before { border-top-color:#F4FCFF; }
.bg_l-orange + ._triangle::before { border-top-color:#FFF8F2; }

.back1 { background:url(../image/layout/back1.jpg) no-repeat center top / cover; }
.box { box-shadow:0 0 8px rgba(0,0,0,0.15); }

.mb0 { margin-bottom:0 !important; }
.mb10 { margin-bottom:10px !important; }
.mb20 { margin-bottom:20px !important; }
.mb30 { margin-bottom:30px !important; }
.mb40 { margin-bottom:40px !important; }
.mt10 { margin-top:10px !important; }
.p10 { padding:10px !important; }

.disp_b { display:block; }
.disp_ib { display:inline-block; }
.disp_tbl { display:table; width:100%; height:100%; }
.disp_td { display:table-cell; vertical-align:middle; }
