/*link*/
.linkset .class_schedule, .linkset .class_list { opacity: 1;}
.linkset .class_schedule a, .linkset .class_list a { width: 100%; height: 100%; position: absolute; top: 0; left: 0; display: block;}
.linkset .class_schedule:hover, .linkset .class_list:hover { opacity: .75;}

/*contents*/
#classes { padding: 0;}
#classes .kc_sp { box-sizing: border-box; width: 100%; max-width: 880px; margin: 0 auto 1em auto; border-radius: 10px; padding: 1em; box-shadow: 0 0 rgba(121, 72, 66, 0); position: relative;}
#classes .kc_sp h3 { display: block; margin: 0 auto .5em auto;}
/*for_W1000-*/
@media all and (min-width: 1000px) {
#classes { width: 100%; flex-wrap: nowrap; font-size: 90%;}
#classes .kc_sp { width: 100%; flex-basis: 100%;}
#classes .kc_sp .catchset { font-size: 130%; padding: 1em;}
}

/*info*/
.info_sp { box-sizing: border-box; width: 100%; margin: 0 auto .5em auto; padding: 1em 0; background-color: rgba(255, 255, 255, 1);}

/*con*/
.contxt { box-sizing: border-box; width: 92%; margin: 0 auto; padding: .5em 0; line-height: 160%; letter-spacing: .05em;}
.contxt .photo { width: 100%; max-width: 800px;}

/*sub*/
.subtxt { box-sizing: border-box; width: 92%; margin: .5em auto 0 auto; padding: 1.5em .5em 1em .5em; text-align: center; font-size: 95%; background-color: rgba(245, 245, 245, .75);}
.subtxt dt { text-align: center; padding-bottom: 1em;}
.subtxt dt:before { content: '【 ';}
.subtxt dt:after { content: ' 】';}
.subtxt dd { font-size: 95%; text-align: left; line-height: 140%;}
.subtxt dd li { padding-bottom: .5em;}
.subtxt dd ul.maru li { margin-left: 1em; list-style-type: disc;}

/*subred*/
.subredtxt { box-sizing: border-box; width: 92%; margin: .5em auto 0 auto; padding: 1.5em 0 1em 0; text-align: center; color: rgba(173, 65, 65, 1);}
.subredtxt dt { text-align: center; padding-bottom: 1em;}
.subredtxt dt:before { content: '─ ';}
.subredtxt dt:after { content: ' ─';}
.subredtxt dd { font-size: 95%; text-align: left; line-height: 140%;}
.subredtxt dd li { padding-bottom: .5em;}
.subredtxt dd ul.kome li { margin-left: 1em;}
.subredtxt dd ul.kome li:before { content: '※ '; margin-left: -1em;}
.subredtxt dd li a { color: rgba(173, 65, 65, 1); border-bottom: 1px solid rgba(173, 65, 65, .75);}
.subredtxt dd li a:hover { color: rgba(173, 65, 65, .75); border-bottom: 1px dashed rgba(173, 65, 65, .75);}

/*form_btn*/
.fm_btn { width: 84%; max-width: 400px; min-height: 80px; margin: 1em auto; position: relative;}
.fm_btn a { display: block; box-sizing: border-box; width: 100%; padding: 1.5em 0; text-align: center; border-radius: 10px; background: rgba(255, 240, 1, 1); color: rgba(205, 83, 67, 1); font-size: 130%; font-weight: bold; box-shadow: 6px 6px rgba(255, 240, 1, .4); position: absolute; top: 0; left: 0;}
.fm_btn a:hover { background: rgba(255, 240, 1, .75); box-shadow: 0 0 rgba(255, 240, 1, .4); position: absolute; top: 2px; left: 2px;}
.fm_finish { padding: 1em 0 1.5em 0; text-align: center; letter-spacing: .1em;}

/*deadline*/
.deadline_t { text-align: center; color: rgba(255, 0, 0, 1); padding: 3em 0;}
.deadline_t .udl { padding: 0 .15em .5em .15em; border-bottom: 3px dotted rgba(255, 0, 0, 1);}

/*course_select*/
.zgset { width: 100%; margin: .5em auto;}
.zgset ul { width: 100%; display: -webkit-flex; display: flex; flex-wrap: wrap; justify-content: space-between;}
.zg_sp { width: 49%; flex-basis: 49%;}
.zg00 { background-color: rgba(255, 255, 255, .35);}
.zg0 { background-color: rgba(255, 255, 255, .75);}
.zg0 a { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0; border-radius: 10px;}
.zg0 a:hover { background-color: rgba(255, 255, 255, .75);}
.zg span { width: 100%; text-align: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit- transform: translate(-50%, -50%); font-size: 110%;}
/*for_W1000-*/
@media all and (min-width: 1000px) {
.zgset { width: 50%; margin: .5em auto;}
}

/*news*/
#news_txt { box-sizing: border-box; width: 100%; margin: 0 auto .5em auto; padding: 1em; background-color: rgba(255, 255, 255, .9); text-align: center; color: rgba(0, 0, 0, 1); font-size: 110%;}
#news_sp { width: 100%; max-width: 500px; margin: 1em auto 0 auto;}
#news_sp a { width: 100%; height: 100%; display: block;}
#news_sp a:hover { opacity: .8;}
/*for_W1000-*/
@media all and (min-width: 1000px) {
#news_txt { padding: 2em;}
}

/*ctg*/
.ancset { width: 100%; margin: 0 auto .5em auto;}
.ancset ul { width: 100%; display: -webkit-flex; display: flex; flex-wrap: wrap; justify-content: space-between;}
.ancset li { box-sizing: border-box; width: 33.3%; flex-basis: 33.3%; padding: .5em 0; border-right: 1px solid rgba(0, 0, 0, .5); text-align: center; font-size: 110%; font-weight: bold;}
.ancset li:last-child { border: 0;}
.ancset li a { font-size: 82%; font-weight: ligher;}
#overview .ancset li a:before { content: '▼ ';}
#curriculum .ancset li:first-child a:before { content: '▲ ';}
#curriculum .ancset li:last-child a:before { content: '▼ ';}
#schedule .ancset li a:before { content: '▲ ';}

/*curriculum*/
#curriculum .ancset { margin: 0 auto 1.5em auto;}
#curriculum .icn_sp { width: 90%; max-width: 500px; margin: 0 auto;}

/*koe*/
#koe ul { width: 90%; margin: 0 auto 1em auto;}

/*table*/
#scd_table { width: 92%; margin: 1em auto; font-size: 105%;}
#scd_table th { vertical-align: top; white-space: nowrap; color: rgba(125, 125, 125, 1); padding-top: 1.1em; font-size: 90%;}
#scd_table td { vertical-align: top; line-height: 140%; padding-top: .75em;}
#scd_table td .tbl th:first-letter { font-size: 120%; font-weight: bold;}
#scd_table td .tbl td.dlst { border-right: 0; color: rgba(255, 0, 0, 1); font-size: 92%;}

/*head_btn*/
#fix_sp { position: fixed; right: 45px; top: 9px; z-index: 6000;}
#fix_sp .btn_sp { display: inline-block; background: rgba(255, 240, 0, 1); border-radius: 10px; padding: .75em; font-size: 78%;}
#fix_sp .btn_sp .ya { width: 16px; float: right; margin-left: .5em;}
#fix_sp .btn_sp .ya_img { display: block; width: 100%; height: 0; pading-top: 84.090909090909091%; padding-top: calc(74 / 88 * 100%); background-repeat: no-repeat; -webkit-background-size: contain; background-size: contain;}
#fix_sp a { width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0;}
#fix_sp a:hover { opacity: .85;}
/*for_W640-*/
@media all and (min-width: 640px) {
#fix_sp { right: 80px; top: 15px;}
#fix_sp .btn_sp { padding: 1em; font-size: 84%;}
}