@charset "utf-8";

/*=================================

school

=================================*/
.title { background-color:#fff; }
.title:before { content:none; }
.title h2 { padding:45px 0 60px; }
.title h2:after,
.title h2:before { bottom:30px; }

h3.sub_title { padding:30px; }
h3.sub_title span { color:#fff; font-size:154%; font-weight:600; }

#second_main_visual img { object-position:center 30%; }

#container #main { margin-top:-90px; padding:25px 25px 0; }

#school { display:flex; flex:0 0 100%; flex-wrap:wrap; justify-content:center; padding:0; position:relative; }
#school #school_cont { background-color:#fff; flex:0 0 100%; padding:0 50px 50px; }
#school #school_cont .lead { margin-bottom:30px; text-align:center; }
#school #school_cont .lead span { line-height:1.6; }

/*------------------------------------------------------------
method
------------------------------------------------------------*/
#method { margin-top:50px; }
#method #method_cont h4 { padding:50px 10px; position:relative; }
#method #method_cont h4 span { font-size:154%; font-weight:600; padding-left:20px; position:relative; }
#method #method_cont h4 span:before { background-color:#277FAF; content:" "; height:20px; position:absolute; left:0; top:50%; margin-bottom:-20px; width:5px; }
#method #method_cont h4 span:after { background-color:#6BEFD5; content:" "; height:20px; position:absolute; left:0; top:50%; margin-top:-20px; width:5px; }

#method #method_cont .list_table_a { margin-top:0; }
#method #method_cont #flow { margin-top:50px; }
#method #method_cont #flow #flow_cont { padding:0; }
#method #method_cont #flow #flow_cont h4 { padding:0 30px 50px; }
#method #method_cont #flow #flow_cont h4 span {}
#method #method_cont #flow #flow_cont ol { margin-top:30px; padding:30px; }
#method #method_cont #flow #flow_cont ol li { align-items:center; background-color:#fff; display:flex; justify-content:space-between; margin-top:60px; padding:0; position:relative; }
#method #method_cont #flow #flow_cont ol li:first-child { margin-top:0; }
#method #method_cont #flow #flow_cont ol li .cont { display:flex; flex:1; flex-wrap:wrap; justify-content:space-between; padding:30px 30px 30px 50px; }
#method #method_cont #flow #flow_cont ol li .cont dl { flex:1 1 auto; }
#method #method_cont #flow #flow_cont ol li .cont dl dt {}
#method #method_cont #flow #flow_cont ol li .cont dl dt span { color:rgba(0,71,156,1); font-size:154%; font-weight:600; }
#method #method_cont #flow #flow_cont ol li .cont dl dd { margin-top:20px; }
#method #method_cont #flow #flow_cont ol li .cont dl dd > span { color:#1a1a1a; font-size:125%; line-height:1.6; }
#method #method_cont #flow #flow_cont ol li .cont dl dd .note { margin-top:10px; }
#method #method_cont #flow #flow_cont ol li .btn_area { flex:1 1 auto; }
#method #method_cont #flow #flow_cont ol li .pic { background-color:#eee; flex:0 0 360px; }
#method #method_cont #flow #flow_cont ol li .pic img { height:200px; object-fit:cover; object-position:center 25%; width:100%; }

#method #method_cont #flow #flow_cont ol li:after { color:rgba(0,71,156,1); content: "\f078"; left:50%; top:-40px; font-size:131%; font-family: "Font Awesome 5 Free"; font-weight:600; margin-left:-10px; position: absolute; }
#method #method_cont #flow #flow_cont ol li:first-child:after { content:none; }

.image_title { border:1px solid #eee; display:flex; flex-wrap:wrap; position:relative; justify-content:space-between; }
.image_title:after { background: rgb(0, 0, 0); background: linear-gradient(90deg, rgba(255, 255, 255, 0) 16%, rgba(255, 255, 255, 0.1) 18%, rgba(255, 255, 255, 0.9) 23%, rgba(255, 255, 255, 1) 29%); position: absolute; left: 0; top: 0; height:100%; width:100%; z-index: 1; content: none; }
.image_title > img { position:absolute; width:320px; height:100%; object-fit:cover; }
.image_title dl { align-items:center; flex:0 0 100%; display:flex; justify-content:start; margin-left:0; padding:50px 30px 0 360px; position:relative; z-index:2; }
.image_title dl dt {}
.image_title dl dt span { border:2px solid #333; font-size:116%; font-weight:600; line-height:1; padding:5px 10px; }
.image_title dl dd { align-items:center; flex:1; display:flex; flex-wrap:wrap; justify-content:start; padding-left:30px; }
.image_title dl dd div { align-items:center; display:flex; flex-wrap:wrap; flex:0 0 100%; }
.image_title dl dd div span { color:#333; }
.image_title dl dd div span:first-child { font-size:116%; }
.image_title dl dd div span:nth-child(2) { font-size:184%; font-family:Roboto; font-weight:600; padding-left:10px; }
.image_title p { flex:0 0 100%; padding:20px 30px 50px 360px; position:relative; z-index:2; }
.image_title p span { color:#333; font-size:116%; }
.image_title p a { color:#3399cc; text-decoration:underline; }

/*------------------------------------------------------------
entrance_date
------------------------------------------------------------*/
#entrance_date { margin-top:50px; }
#entrance_date #entrance_date_cont .list_table_a { margin-top:30px; }
#entrance_date #entrance_date_cont #calendar { margin-top:50px; } 
#entrance_date #entrance_date_cont #calendar iframe { min-height:600px; width:100%; }

/*------------------------------------------------------------
calendar
------------------------------------------------------------*/
#calendar { margin-top:30px; }
#calendar iframe { min-height:600px; width:100%; }

/*------------------------------------------------------------
time_schedule
------------------------------------------------------------*/
#time_schedule { margin-top:50px; }