@charset "utf-8";

/* CSS Document */

/*------------------------------------------------------------------------------
　Inside Page
-------------------------------------------------------------------------------*/

#main { background:url(../images/share/main_bg.png) no-repeat left top;}

#main h2 {
 clear:both; margin:0 0 45px 0; padding:0 0 18px 0; font-size:26px; font-weight:normal;
 background:url(../images/share/h2_bg.png) no-repeat center bottom;}
#main h3 {
 clear:both; margin:0 0 20px 0; padding:16px 15px 13px 15px; font-size:18px; font-weight:normal; background:#77CDD3;}

#main p { margin:0 0 20px 0; padding:0;}
#main p:last-child { margin-bottom:0;}

#main table { width:100%; margin:0; padding:0; border-bottom:1px solid #666;}
#main table th, #main table td { margin:0; padding:14px 20px 12px 20px; vertical-align:top; line-height:1.7; border-top:1px solid #CCC;}
#main table th { text-align:center; font-weight:normal;}
#main table td { }
#main table tr:first-of-type th, #main table tr:first-of-type td { border-top:1px solid #666;}

#main ul { clear:both; margin:0; padding:0 15px;}
#main ul li { margin:0 0 8px 0; padding:0 0 0 23px; position:relative;}
#main ul li:before {
 width:16px; height:16px; display:inline-block; position:absolute; top:5px; left:0;
 content:""; border-radius:50%; background-color:#999;}
#main ul li:last-child { margin-bottom:0;}

#main .blockL { float:left; width:48%; margin:0; padding:0;}
#main .blockR { float:right; width:48%; margin:0; padding:0;}

#main .box { clear:both; margin:0; padding:0 0 40px 0; overflow:hidden;}
#main .box:last-of-type { padding-bottom:0;}

@media only screen and (max-width: 768px) {
#main h2 { margin-bottom:25px; padding-bottom:13px; font-size:22px;}
#main h3 { margin-bottom:20px; padding:13px 15px 11px 15px; font-size:16px;}
#main .blockL { clear:both; float:none; width:100%; margin-bottom:45px;}
#main .blockR { clear:both; float:none; width:100%;}
#main .box { padding-bottom:35px;}
#main ul li { padding-left:19px;}
#main ul li:before { width:14px; height:14px;}
}

@media only screen and (max-width: 468px) {
#main table th, #main table td { width:100%; padding:10px 10px 8px 10px; display:block;}
#main table th { text-align:left;}
#main table tr:first-of-type td { border-top:1px solid #CCC;}
}

/* Page Title
----------------------------------------------- */
#pageTitle {
 clear:both; min-height:169px; margin:0; padding:89px 0 0 0; overflow:hidden;
 background:#91D8DA url(../images/share/pagetitle_bg.png) no-repeat left top; background-color: #77CDD3;}
#pageTitle h1 {
 clear:both; min-height:80px; margin:0; padding:25px 0 0 0; text-align:center;
 color:#FFF; font-size:30px; font-weight:normal; background:rgba(51, 51, 51, 0.85);}

@media only screen and (max-width: 768px) {
#pageTitle { min-height:149px; padding-top:79px;}
#pageTitle h1 { min-height:70px; padding-top:23px; font-size:26px;}
}

/* Page Navi
----------------------------------------------- */
#pageNavi {
 clear:both; margin:0 0 80px 0; padding:20px 0 10px 0; text-align:center;
 background:rgba(204, 204, 204, 0.5);}
#pageNavi .innerBlock { clear:both; padding:0; overflow:hidden;}
#pageNavi ul { clear:both; margin:0; padding:0; display:inline-block; overflow:hidden;}
#pageNavi ul li { float:left; min-width:100px; margin:0 0 10px 0; padding:0; border-right:1px solid #999;}
#pageNavi ul li:first-child { border-left:1px solid #999;}
#pageNavi ul li:last-child { margin-bottom:10px;}
#pageNavi ul li:before { display:none;}
#pageNavi ul li a {
 width:100%; margin:0; padding:2px 30px 0 45px; display:block; color:#333; text-decoration:none;
 background:url(../images/share/icon_arrow.png) no-repeat 17px center;}
#pageNavi ul li a:hover { color:#333; text-decoration:underline;}

@media only screen and (min-width: 769px) {
#pageNavi .innerBlock{ padding-right:20px; padding-left:20px;}
}

@media only screen and (max-width: 768px) {
#pageNavi { margin-bottom:40px;}
#pageNavi .innerBlock{ padding-right:15px; padding-left:15px;}
#pageNavi ul li { min-width:initial; min-width:auto; border-right:none;}
#pageNavi ul li:first-child { border-left:none;}
#pageNavi ul li a { padding-left:38px; background-position:10px center;}
}

@media only screen and (max-width: 468px) {
#pageNavi .innerBlock{ padding-right:10px; padding-left:10px;}
}

/*------------------------------------------------------------------------------
　About Page
-------------------------------------------------------------------------------*/

#about table { margin-bottom:20px;}
#about table th, #about table td { padding:10px 10px 8px 10px;}

#about01 { clear:both; margin:0; padding:0; overflow:hidden;}
#about01 .blockL p .jp { font-size:22px; line-height:1.4;}
#about01 .blockL p .en { margin:5px 0 0 0; padding:0; display:inline-block; font-size:14px;}
#about01 .blockL table th, #about01 .blockL table td { padding:14px 10px 12px 10px;}
#about01 .blockL table th { width:26%; text-align:left;}
#about01 .blockL table td .en { margin:5px 0 0 0; padding:0; display:inline-block; font-size:14px; line-height:1.5;}
#about01 .blockL table td .add { margin:5px 0 0 0; padding:0; display:inline-block; font-size:14px; line-height:1.5;}
#about01 .blockR img:first-child { margin-bottom:12px;}

#greeting {
 clear:both; margin:0 0 80px 0; padding:60px 0; overflow:hidden;
 background:#6DA0D3 url(../images/about/greeting_bg_pc.jpg) no-repeat center top;}
#greeting .innerBlock { padding:40px 30px 40px 30px; background:rgba(255, 255, 255, 0.7);}
#greeting .blockL { width:76.33%;}
#greeting .blockR { width:16.07%; text-align:center;}
#greeting .blockR img { margin-bottom:10px;}

#education { clear:both; margin:0; padding:0; overflow:hidden;}
#education .blockL h3 { margin-bottom:30px; padding:20px 15px 16px 15px; font-size:20px;}
#education .blockL ul li { margin:0; padding:0 0 10px 23px; font-size:18px;}
#education .blockL ul li:before { top:7px;}
#education .blockR table th { width:18%; text-align:left;}
#education .blockR table td img { height:16px; margin:6px 0 0 0;}

@media all and (-ms-high-contrast: none) {
  #education .blockR table td img { height:16px; margin:2px 0 0 0;}
}

#access { clear:both; margin:-100px 0 80px 0; padding:100px 0 0 0; overflow:hidden;}
#access #map-canvas { clear:both; width:100%; height:450px; margin:0px auto; padding:0px; position:relative; overflow:hidden;}
#map-canvas iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%;}


#about02 { clear:both; margin:0; padding:0; overflow:hidden;}
#about02 .blockL table th, #about02 .blockL table td { width:50%;}
#about02 .blockL table td { text-align:center;}
#main table tr.total, #main table th.total, #main table td.total { border-top:1px solid #666!important;}
#about02 .blockR { text-align:center;}

#course { clear:both; margin:0; padding:0; overflow:hidden;}
#course .blockL { padding:20px 25px; overflow:hidden; background:#EEE;}
#course .blockL h3 { margin-bottom:15px; padding:0 0 10px 0; font-size:18px; border-bottom:1px solid #666; background:none;}
#course .blockL p { margin-bottom:0; font-size:14px;}
#course .blockL p span { white-space:nowrap;}
#course .blockL ol { margin:0; padding:0;}
#course .blockL ol li{ float:left; margin:0; padding:0 5px 0 0; font-size:14px;}

#course .blockR table th, #course .blockR table td { width:50%;}
#course .blockR table td { text-align:center;}

#situation01 { clear:both; margin:0; padding:0; overflow:hidden;}
#situation01 .innerBlock table th,.innerBlock table td { text-align:left;}
#situation01 .innerBlock table td { width:40%;}
#situation01 .innerBlock table .title { background: #FDECD0}


#about03 { clear:both; margin:0; padding:0; overflow:hidden; text-align:center;}
#about03 .innerBlock { max-width:1320px;}
#about03 ul {
 clear:both; width:100%; margin:0; padding:0; overflow:hidden;
 display:-webkit-box; display:-webkit-flex; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -webkit-justify-content:center; -ms-flex-pack:justify; justify-content:center;}
#about03 ul li { width:17.27%; margin:0 10px 40px 10px; padding:0; text-align:center;}
#about03 ul li:nth-child(11), #about03 ul li:nth-child(12) { width:47.72%;}
#about03 ul li:nth-child(11) { text-align:right;}
#about03 ul li:nth-child(12) { text-align:left;}
#about03 ul li:nth-child(6), #about03 ul li:nth-child(11) { clear:left;}
#about03 ul li.empty { height:0; margin-top:0; margin-bottom:0; padding:0;}
#about03 ul li:before { display:none;}
#about03 ul li img { max-width:200px;}

#about03 .fileLink {
 clear:both; width:100%; margin:0; padding:60px 0 30px 0; overflow:hidden; text-align:center;}
#about03 .fileLink a {
 clear:both; margin:0 auto; padding:16px 70px 12px 30px;
 display:inline-block; text-align:center; color:#FFF; font-size:18px; text-decoration:none;
 background:#1AAEB2 url(../images/share/icon_pdf.png) no-repeat right 20px center;
 background-size:30px 33px; transition:opacity .3s;}
#about03 .fileLink a:hover { opacity:0.7;}

@media only screen and (min-width: 1921px) {
#greeting { background-size:100% auto;}
}

@media only screen and (min-width: 769px) {
#greeting { padding-right:20px; padding-left:20px;}
}

@media only screen and (max-width: 1320px) {
#about03 .pageList { padding-right:0; padding-left:0;}
#about03 ul {
 -webkit-box-pack:center; -webkit-justify-content:center; -ms-flex-pack:center; justify-content:center;}
#about03 ul li, #about03 ul li:nth-child(11), #about03 ul li:nth-child(12) {
 width:46.59%; max-width:200px; margin-right:15px; margin-left:15px;}
#about03 ul li:nth-child(11), #about03 ul li:nth-child(12) { text-align:center;}
#about03 ul li:nth-child(6), #about03 ul li:nth-child(11) { clear:none;}
#about03 ul li:nth-child(1).empty, #about03 ul li:nth-child(5).empty { display:none;}
#about03 ul li img { max-width:100%;}
}

@media only screen and (max-width: 768px) {
#about01 .blockL p .jp { font-size:18px;}
#about01 .blockL p .en { font-size:12px;}
#about01 .blockL table td .en { font-size:12px;}
#about01 .blockL table td .add { font-size:12px;}
#about01 .blockR img { margin:0 auto; display:block;}
#about01 .blockR img:first-child { margin-bottom:12px;}
#greeting {
 margin-bottom:45px; padding:30px 15px;
 background:#6DA0D3 url(../images/about/greeting_bg_sp.jpg) no-repeat center top;}
#greeting .innerBlock { padding:25px 20px 20px 20px;}
#greeting .blockL { width:100%;}
#greeting .blockR { width:100%;}
#greeting .blockR img { margin:0 auto 10px auto; display:block;}
#education .blockL h3 { margin-bottom:20px; padding:15px 15px 12px 15px; font-size:18px;}
#education .blockL ul li { font-size:16px;}
#education .blockL ul li:before { width:16px; height:16px; top:5px;}
#education .blockR table td img { height:14px; margin:5px 0 0 0;}
#access { margin-bottom:45px;}
#access .mapCanvas { height:400px;}
#course .blockL { padding:20px 15px 15px 15px;}
#course .blockL h3 { margin-bottom:15px; font-size:16px;}
#course .blockL p { font-size:12px;}
#about03 ul { margin-bottom:15px;}
#about03 ul li, #about03 ul li:nth-child(11), #about03 ul li:nth-child(12) {
 width:44.09%; max-width:100%; margin:0 10px 30px 10px;}
#about03 .fileLink { margin-bottom:0;}
#about03 .fileLink a {
 padding:16px 60px 12px 20px; font-size:16px;
 background:#1AAEB2 url(../images/share/icon_pdf.png) no-repeat right 15px center;
 background-size:30px 33px;}
}

@media only screen and (max-width: 705px) {
#about03 ul li.empty { display:none;}
}

@media only screen and (max-width: 468px) {
#about01 .blockL table th, #education .blockR table th,
#about02 .blockL table th, #about02 .blockL table td,
#course .blockR table th, #course .blockR table td { width:100%!important; text-align:left;}
#greeting { padding:15px;}
#situation01 .innerBlock table td { width:100%;}
#situation02 .innerBlock table td { width:100%;}
}

/*------------------------------------------------------------------------------
　Campuslife Page
-------------------------------------------------------------------------------*/

#campuslife01 { clear:both; margin:0; padding:0; overflow:hidden; text-align:center;}
#campuslife01 .innerBlock { padding-bottom:60px;}
#campuslife01 .stateList {
 clear:both; width:100%; margin:0; padding:0; overflow:hidden;
 display:-webkit-box; display:-webkit-flex; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -webkit-justify-content:space-between; -ms-flex-pack:justify; justify-content:space-between;}
#campuslife01 .stateList .stateBox {
 width:31.25%; max-width:350px; margin:0 0 20px 0; padding:0; text-align:center;}
#campuslife01 .stateList .stateBox img { margin-bottom:7px;}

#campuslife02 { clear:both; margin:0 0 80px 0; padding:0; overflow:hidden; background:#E3F5F7;}
#campuslife02 .innerBlock { padding-top:80px; padding-bottom:60px;}
#campuslife02 .eventBox {
 clear:both; margin:0 0 20px 0; padding:10px; overflow:hidden; background:#FFF;
 display:-webkit-box; display:-webkit-flex; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -webkit-justify-content:space-between; -ms-flex-pack:justify; justify-content:space-between;}
#campuslife02 .eventBox .month {
 width:8%; margin:0; padding:0; text-align:center; font-size:24px; font-weight:normal; word-break:break-all;
 -ms-flex-item-align:center; -webkit-align-self:center; align-self:center;}
#campuslife02 .eventBox table { width:43%; margin-bottom:0; border-top:none; border-bottom:none;}
#campuslife02 .eventBox table td { width:50%; padding:8px 0 7px 0;}
#campuslife02 .eventBox table tr:first-of-type td { border-top:none!important;}

#campuslife02 .eventBox table td.test { color:#FF7F00;}
#campuslife02 .eventBox table td.holiday { color:#19ACB2;}
#campuslife02 .eventBox .photoL { width:20%; min-width:220px; margin:0; padding:0;}
#campuslife02 .eventBox .photoR { width:20%; min-width:220px; margin:0; padding:0;}

#campuslife03 { clear:both; margin:0; padding:0; overflow:hidden;}
#campuslife03 .innerBlock { padding-bottom:;}
#campuslife03 .messageBox { clear:both; margin:-100px 0 50px 0; padding:120px 0 0 0; overflow:hidden;}
#campuslife03 .messageBox .voice {
 clear:both; width:77.2%; margin:0; padding:20px 25px; position:relative;
 border:5px solid #F9D392; background:#FFF;}
#campuslife03 .messageBox .voice.wide { width:70%;}
#campuslife03 .messageBox:nth-of-type(odd) .voice { float:right; margin-left:45px;}
#campuslife03 .messageBox:nth-of-type(odd) .voice:after,
#campuslife03 .messageBox:nth-of-type(odd) .voice:before {
 width:0; height:0; position:absolute; top:80px; right:100%; content:""; border:solid transparent;}
#campuslife03 .messageBox:nth-of-type(odd) .voice.wide:after,
#campuslife03 .messageBox:nth-of-type(odd) .voice.wide:before { top:70px;}
#campuslife03 .messageBox:nth-of-type(odd) .voice:after {
 margin-top:-36px; border-width:36px; border-color:transparent; border-right-color:#FFF;}
#campuslife03 .messageBox:nth-of-type(odd) .voice:before {
 margin-top:-43px; border-width:43px; border-color:transparent; border-right-color:#F9D392;}
#campuslife03 .messageBox:nth-of-type(even) .voice { float:left; margin-right:45px;}
#campuslife03 .messageBox:nth-of-type(even) .voice:after,
#campuslife03 .messageBox:nth-of-type(even) .voice:before {
 width:0; height:0; position:absolute; top:80px; left:100%; content:""; border:solid transparent;}
#campuslife03 .messageBox:nth-of-type(even) .voice.wide:after,
#campuslife03 .messageBox:nth-of-type(even) .voice.wide:before { top:70px;}
#campuslife03 .messageBox:nth-of-type(even) .voice:after {
 margin-top:-36px; border-color:transparent; border-width:36px; border-left-color:#FFF;}
#campuslife03 .messageBox:nth-of-type(even) .voice:before {
 margin-top:-43px; border-color:transparent; border-width:43px; border-left-color:#F9D392;}
#campuslife03 .messageBox .author { width:16.07%; margin:0; padding:0; text-align:center;}
#campuslife03 .messageBox .author.wide { width:23.31%;}
#campuslife03 .messageBox:nth-of-type(odd) .author { float:left;}
#campuslife03 .messageBox:nth-of-type(even) .author { float:right;}
#campuslife03 .messageBox .author .photo { clear:both; margin:0 0 10px 0; padding:0;}
#campuslife03 .messageBox .author .name { clear:both; margin:0 0 5px 0; padding:8px 0;}
#campuslife03 .messageBox .author .country { clear:both; margin:0; padding:0; font-size:14px;}
#campuslife03 .messageBox .author .country img { clear:both; margin:0 0 5px 0; padding:0;}

@media only screen and (max-width: 968px) {
#campuslife02 .eventBox {
 -webkit-box-pack:center; -webkit-justify-content:center; -ms-flex-pack:center; justify-content:center;}
#campuslife02 .eventBox .month {
 width:100%; margin-bottom:10px; -ms-flex-order:1; -webkit-order:1; order:1;
 -webkit-box-original-group:1; -moz-box-original-group:1;}
#campuslife02 .eventBox table {
 width:100%; margin-bottom:15px; -ms-flex-order:2; -webkit-order:2; order:2;
 -webkit-box-original-group:2; -moz-box-original-group:2;}
#campuslife02 .eventBox table tr.blank { display:none;}
#campuslife02 .eventBox .photoL {
 width:220px; margin-right:15px; -ms-flex-order:3; -webkit-order:3; order:3;
 -webkit-box-original-group:3; -moz-box-original-group:3;}
#campuslife02 .eventBox .photoR {
 width:220px; margin-left:0; -ms-flex-order:4; -webkit-order:4; order:4;
 -webkit-box-original-group:4; -moz-box-original-group:4;}
#campuslife03 .messageBox .voice { width:100%; padding:15px;}
#campuslife03 .messageBox .voice.wide { width:100%;}
#campuslife03 .messageBox:nth-of-type(odd) .voice,
#campuslife03 .messageBox:nth-of-type(even) .voice { clear:both; float:none; margin:0 0 60px 0;}
#campuslife03 .messageBox:nth-of-type(odd) .voice:after,
#campuslife03 .messageBox:nth-of-type(odd) .voice:before,
#campuslife03 .messageBox:nth-of-type(odd) .voice.wide:after,
#campuslife03 .messageBox:nth-of-type(odd) .voice.wide:before { position:static;}
#campuslife03 .messageBox:nth-of-type(odd) .voice:after,
#campuslife03 .messageBox:nth-of-type(odd) .voice:before { margin-top:0; border-right:none;}
#campuslife03 .messageBox:nth-of-type(even) .voice:after,
#campuslife03 .messageBox:nth-of-type(even) .voice:before,
#campuslife03 .messageBox:nth-of-type(even) .voice.wide:after,
#campuslife03 .messageBox:nth-of-type(even) .voice.wide:before { position:static;}
#campuslife03 .messageBox:nth-of-type(even) .voice:after,
#campuslife03 .messageBox:nth-of-type(even) .voice:before { margin-top:0; border-left:none;}
#campuslife03 .messageBox:nth-of-type(odd) .voice:after,
#campuslife03 .messageBox:nth-of-type(odd) .voice:before,
#campuslife03 .messageBox:nth-of-type(odd) .voice.wide:after,
#campuslife03 .messageBox:nth-of-type(odd) .voice.wide:before,
#campuslife03 .messageBox:nth-of-type(even) .voice:after,
#campuslife03 .messageBox:nth-of-type(even) .voice:before,
#campuslife03 .messageBox:nth-of-type(even) .voice.wide:after,
#campuslife03 .messageBox:nth-of-type(even) .voice.wide:before {
 width:0; height:0; position:absolute; top:100%; left:50%; content:" "; border:solid transparent;}
#campuslife03 .messageBox:nth-of-type(odd) .voice:after,
#campuslife03 .messageBox:nth-of-type(odd) .voice.wide:after,
#campuslife03 .messageBox:nth-of-type(even) .voice:after,
#campuslife03 .messageBox:nth-of-type(even) .voice.wide:after {
 margin-left:-40px; border-color:transparent; border-width:40px; border-top-color:#FFF;}
#campuslife03 .messageBox:nth-of-type(odd) .voice:before,
#campuslife03 .messageBox:nth-of-type(odd) .voice.wide:before,
#campuslife03 .messageBox:nth-of-type(even) .voice:before,
#campuslife03 .messageBox:nth-of-type(even) .voice.wide:before {
 margin-left:-47px; border-color:transparent; border-width:47px; border-top-color:#F9D392;}
#campuslife03 .messageBox .author { width:100%; margin:0; padding:0; text-align:center;}
#campuslife03 .messageBox .author.wide { width:100%;}
#campuslife03 .messageBox:nth-of-type(odd) .author,
#campuslife03 .messageBox:nth-of-type(even) .author { clear:both; float:none;}
}

@media only screen and (max-width: 768px) {
#campuslife01 .innerBlock { padding-bottom:25px;}
#campuslife01 .stateList .stateBox { width:48%;}
#campuslife02 { margin-bottom:45px;}
#campuslife02 .innerBlock { padding-top:45px; padding-bottom:25px;}
#campuslife02 .eventBox .month { font-size:22px;}
#campuslife03 .innerBlock { padding-bottom:15px;}
#campuslife03 .messageBox { margin-bottom:30px;}
#campuslife03 .messageBox .author .name { font-size:18px;}
#campuslife03 .messageBox .author .country { font-size:12px;}
}

@media only screen and (max-width: 568px) {
#campuslife02 .eventBox .photoL {
 width:48.5%; min-width:initial; min-width:auto; max-width:100%; margin:0 3% 0 0;}
#campuslife02 .eventBox .photoR {
 width:48.5%; min-width:initial; min-width:auto; max-width:100%; margin-left:0;}
}

@media only screen and (max-width: 468px) {
#campuslife01 .stateList .stateBox { width:100%; max-width:100%;}
#campuslife02 .eventBox table td { display:table-cell;}
#campuslife02 .eventBox .photoL { width:100%; margin:0 0 10px 0;}
#campuslife02 .eventBox .photoR { width:100%;}
#campuslife02 .eventBox .photoL img,
#campuslife02 .eventBox .photoR img { margin:0 auto; display:block;}
}

/*------------------------------------------------------------------------------
　Japaneselife Page
-------------------------------------------------------------------------------*/

#japaneselife01 { clear:both; margin:0; padding:0; overflow:hidden;}
#japaneselife01 .innerBlock { margin-bottom:80px; border-bottom:1px solid #666;}
#japaneselife01 p { margin-right:20px; margin-left:20px;}

#oneday { clear:both; margin:0; padding:0; overflow:hidden;}
#oneday .innerBlock { margin-bottom:80px; border-bottom:1px solid #666;}
#oneday p { margin-right:20px; margin-left:20px;}
#oneday .blockL, #oneday .blockR { margin-top:50px; text-align:center;}

#japaneselife02 { clear:both; margin:0; padding:0; overflow:hidden;}
#japaneselife02 .innerBlock { margin-bottom:80px; padding-bottom:60px; border-bottom:1px solid #666;}
#japaneselife02 p { margin-right:20px; margin-left:20px;}
#japaneselife02 .dormitoryList {
 clear:both; width:100%; margin:0; padding:20px 0 0 0; overflow:hidden;
 display:-webkit-box; display:-webkit-flex; display:-ms-flexbox; display:flex;
 -webkit-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap;
 -webkit-box-pack:justify; -webkit-justify-content:space-between; -ms-flex-pack:justify; justify-content:space-between;}
#japaneselife02 .dormitoryList .dormitoryBox {
 width:31.25%; max-width:350px; margin:0 0 20px 0; padding:0; text-align:center;}
#japaneselife02 .dormitoryList .dormitoryBox:last-child { width:65.55%; max-width:735px; text-align:left;}
#japaneselife02 .dormitoryList .dormitoryBox h3 {
 margin-bottom:20px; padding:0 0 10px 0; font-size:18px; border-bottom:1px solid #666; background:none;}
#japaneselife02 .dormitoryList .dormitoryBox img { margin-bottom:7px;}
#japaneselife02 .dormitoryList .dormitoryBox ul { margin-bottom:0; padding:0;}
#japaneselife02 .dormitoryList .dormitoryBox ul li { float:left; width:29%;}
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(2),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(5),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(8),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(11) { width:42%;}
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(1),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(4),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(7),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(10) { clear:left;}

#japaneselife03 { clear:both; margin:0; padding:0; overflow:hidden;}
#japaneselife03 h3 { margin-bottom:20px; padding:0 0 10px 0; font-size:18px; border-bottom:1px solid #666; background:none;}
#japaneselife03 h4 {
 clear:both; margin:0 0 20px 0; padding:16px 15px 13px 15px; font-size:18px; font-weight:normal; background:#77CDD3;}
#japaneselife03 table { margin-bottom:20px; border-right:1px solid #666; border-bottom:none;}
#japaneselife03 table th, #japaneselife03 table td {
 width:25%; padding:10px 10px 8px 10px; text-align:center; border-right:1px solid #CCC;}
#japaneselife03 table tr th:first-child, #japaneselife03 table tr td:first-child { border-left:1px solid #666;}
#japaneselife03 table tr th:last-child, #japaneselife03 table tr td:last-child { border-right:none;}
#main #japaneselife03 table thead th { font-weight:bold; border-bottom:1px solid #666; background:#EEE;}
#japaneselife03 table thead th.average { background:#FAD18D;}
#japaneselife03 table tbody td.average { background:#FDECD0;}
#japaneselife03 table tbody td.total { border-top:1px solid #666!important; border-right:none;}
#japaneselife03 table tbody td.total:first-child { border-left:none;}
#japaneselife03 table tbody td.total.average { border-bottom:1px solid #666!important; border-left:1px solid #666;}

@media only screen and (max-width: 768px) {
#japaneselife01 .innerBlock, #oneday .innerBlock, #japaneselife02 .innerBlock { margin-bottom:45px;}
#japaneselife02 .innerBlock { padding-bottom:15px;}
#japaneselife01 p, #oneday p, #japaneselife02 p { margin-right:0; margin-left:0;}
#japaneselife02 .dormitoryList { padding-top:0;}
#japaneselife02 .dormitoryList .dormitoryBox { width:48%;}
#japaneselife02 .dormitoryList .dormitoryBox:last-child { width:100%; max-width:100%;}
#japaneselife02 .dormitoryList .dormitoryBox h3 { font-size:16px;}
#japaneselife03 h3 { font-size:16px;}
#japaneselife03 h4 { padding:13px 15px 11px 15px; font-size:16px;}
}

@media only screen and (max-width: 568px) {
#japaneselife02 .dormitoryList .dormitoryBox ul li { width:48%;}
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(2),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(5),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(8),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(11) { width:48%;}
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(1),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(4),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(7),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(1),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(4),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(7),
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(10) { clear:none;}
#japaneselife02 .dormitoryList .dormitoryBox ul li:nth-child(odd) { clear:left; padding-right:25px;}
}

@media only screen and (max-width: 468px) {
#japaneselife02 .dormitoryList .dormitoryBox { width:100%; max-width:100%;}
#japaneselife03 table th, #japaneselife03 table td { display:table-cell;}
}

/*------------------------------------------------------------------------------
　Entry Page
-------------------------------------------------------------------------------*/

#entry h4 {
 margin-bottom:20px; padding:0 0 10px 0; font-size:18px; font-weight:normal; border-bottom:1px solid #666;}

#entry dl {
 clear:both; width:100%; margin:0; padding:0; overflow:hidden; text-align:center; border-bottom:1px solid #666;}
#entry dl dt, #entry dl dd {
 float:left; width:50%; margin:0; padding:13px 10px 10px 10px; border-top:1px solid #CCC;}
#entry dl dt { clear:left;}
#entry dl dd {}
#entry dl>dt:first-of-type, #entry dl>dd:first-of-type { padding-top:0; border-top:none;}

#entry01 { clear:both; margin:0; padding:0; overflow:hidden;}
#entry01 .innerBlock { margin-bottom:80px; border-bottom:1px solid #666;}
#entry01 dl { margin-bottom:40px;}
#entry01 .capacity { clear:both; padding:20px 25px; overflow:hidden; background:#EEE;}
#entry01 .capacity h4 {
 margin-bottom:15px; padding:0 0 10px 0; font-size:18px; font-weight:normal; border-bottom:1px solid #666;}
#entry01 .capacity h4 span { font-size:12px;}
#entry01 .capacity .num { font-size:18px; font-weight:bold;}

#entry02 { clear:both; margin:0; padding:0; overflow:hidden;}
#entry02 .innerBlock { margin-bottom:80px; border-bottom:1px solid #666;}
#entry02 .blockL ul li strong { padding-bottom:10px; display:inline-block;}
#entry02 .blockL ul.qualification li { padding-bottom:40px;}
#entry02 .blockL dl { margin-bottom:10px;}
#entry02 .blockR ul { padding-bottom:40px;}
#entry02 .blockR dl { text-align:left; border-bottom:none;}
#entry02 .blockR dl dt, #entry02 .blockR dl dd {
 clear:both; float:none; width:100%; border-top:none;}
#entry02 .blockR dl dt { padding:0 0 1px 0; font-weight:bold;}
#entry02 .blockR dl dd { padding:0 0 25px 17px;}
#entry02 .blockR dl>dd:last-of-type { padding-bottom:0;}

#entry03 { clear:both; margin:0; padding:0; overflow:hidden;}
#entry03 p { margin-bottom:17px;}
#entry03 p .price { background:#FDECD0;}
#entry03 table { margin-bottom:20px; border-right:1px solid #666; border-left:1px solid #666;}
#entry03 table th, #entry03 table td {
 width:33%; padding:10px 10px 8px 10px; text-align:center; border-right:1px solid #CCC;}
#entry03 table tr th:last-child, #entry03 table tr td:last-child { border-right:none;}
#entry03 table th { font-weight:bold; border-bottom:1px solid #666; background:#EEE;}
#entry03 table th:first-child { width:33%; border-left:none;}
#entry03 table td.total { font-weight:bold; border-top:1px solid #666;}
#entry03 table td.total:first-child { border-left:none;}
#entry03 table td.contribution { background:#FDECD0;}
#entry03 ul { padding:0;}
#entry03 dl { margin-bottom:40px; border-bottom:none;}
#entry03 dl dt { width:67%; padding:10px 10px 8px 10px!important; text-align:right;}
#entry03 dl dd { width:33%; padding:10px 10px 8px 10px!important; font-weight:bold; border:1px solid #666!important;}

#entry01 .class-table {
	clear: both;
	padding-top: 50px;
}

#entry01 .class-table table {
	border-top: 1px solid #666;
	border-left: 1px solid #666;
}

#entry01 .class-table table th,
#entry01 .class-table table td {
	border-right: 1px solid #CCC;
}

#entry01 .class-table table th {
	background: #EEE;
	font-weight: bold;
}

#entry01 .class-table table th:first-of-type {
	width: 7em;
	padding-inline: 5px;
}

#entry01 .class-table table th,
#entry01 .class-table table tr:nth-of-type(7n) td {
	border-bottom: 1px solid #666;
}

#entry01 .class-table table td {
	border-right: 1px solid #CCC;
}

#entry01 .class-table table tbody tr td:first-of-type {
	width: 11em;
	text-align: center;
	padding-inline: 5px;
}

#entry01 .class-table table thead th:last-of-type,
#entry01 .class-table table tbody td:last-of-type {
	border-right: 1px solid #666;
}

@media only screen and (max-width: 768px) {
#entry h4 { font-size:16px;}
#entry01 .innerBlock, #entry02 .innerBlock { margin-bottom:50px;}
#entry01 .capacity h4 { margin-bottom:10px; font-size:16px;}
#entry01 .capacity { padding:20px 15px 15px 15px;}
#entry01 .capacity .num { font-size:16px;}
}

@media only screen and (max-width: 468px) {
#entry03 table th, #entry03 table td { display:table-cell;}
#entry03 dl { margin-bottom:20px;}
	
	#entry01 .class-table table thead th {
		padding-inline: 5px;
	}

	#entry01 .class-table table th,
	#entry01 .class-table table td {
		display: table-cell;
		width: auto;
		text-align: center;
	}
	
	#entry01 .class-table table th:first-of-type {
		width: 6em;
	}
	
	#entry01 .class-table table tbody tr td:first-of-type {
		width: 6em;
	}
	
	#entry01 .class-table table tbody tr td:last-of-type {
		text-align: left;
	}
}

/*------------------------------------------------------------------------------
　Recruit Page
-------------------------------------------------------------------------------*/

#recruit .innerBlock { max-width:900px;}

#recruit01 { clear:both; margin:0; padding:0; overflow:hidden;}
#recruit01 table { margin-bottom:20px;}
#recruit01 table th { width:27%; font-weight:bold;}
#recruit01 .terms { margin:5px 0 10px 0; padding:9px 7px 7px 7px; background:#EEE;}

#recruit02 { clear:both; margin:0; padding:0; overflow:hidden;}
#recruit02 p { margin-bottom:40px; padding:0 5px;}
#recruit02 p:last-child { margin-bottom:0;}
#recruit02 h3.title {
 margin:0 0 20px 0; padding:10px 5px 7px 5px; font-size:18px; line-height:1.4; border-bottom:2px solid #77CDD3; background:none;}

@media only screen and (max-width: 768px) {
#recruit02 h3.title { margin-bottom:15px; font-size:16px;}
}

@media only screen and (max-width: 468px) {
#recruit01 table th { width:100%;}
}
