@charset "UTF-8";



/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

当CSSには、TOPページを除く各ページごとのコンテンツを掲載・レイアウトするにあたって、使用する要素（見出し・リードコピー・本文テキスト・画像の掲載・トピックスボックス・
リスト表示・リンクリスト・リンクボタン・テーブルなど）の基本設定を記述してください

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/




h2.page-title{
	font-size: 24px;
	border-bottom: 1px solid #000;
	margin-bottom: 60px;
	
}
span.page-title__english{
	font-size: 18px;
	font-family: 'Muli', sans-serif
	margin:0 20px;
	display: inline-block;
}

.english-page-title{
	font-family: 'EB Garamond', serif;
	font-size: 24px;
	text-align: center;
}


.page-title__schoollife{
	font-family: 'Dawning of a New Day', cursive;
	font-size: 90px;
}



/* page-title */

h3.wl-title {
	border-top: 2px solid #000;
	border-bottom: 2px solid #000;
	padding:20px 10px;
	text-align: center;
	margin-bottom: 40px;
	font-size: 28px;
}

/* title */

h3.section-title {
	position: relative;
	padding: 40px 0 15px;
	border-bottom: 3px solid #dfdfde;
	margin-bottom: 30px;
	font-size: 24px;
	clear: both;
}

h3.section-title span {
	color: #00b9ef;
	display: inline-block;
	padding: 0 20px 10px;
	position: absolute;
	font-weight: bold;
	line-height:1.2;
	left: 0;
	bottom: -3px;
	border-bottom: 3px solid #00b9ef;
}
h3.section-title.hs-special span {
	color: rgba(0,128,203,1);
	display: inline-block;
	padding: 0 20px 10px;
	position: absolute;
	font-weight: bold;
	line-height:1.2;
	left: 0;
	bottom: -3px;
	border-bottom: 3px solid rgba(0,128,203,1);
}
h3.section-title.jhs span {
	color: rgba(100,192,172,1);
	display: inline-block;
	padding: 0 20px 10px;
	position: absolute;
	font-weight: bold;
	line-height:1.2;
	left: 0;
	bottom: -3px;
	border-bottom: 3px solid rgba(100,192,172,1);
}




h4.sub-title_underline {
	border-bottom: 2px solid #00b9ef;
	position:relative;
	padding: 5px 10px;
	font-weight: bold;
	font-size: 18px;
	margin: 20px 0;
}

h4.sub-title_bg{
	display: block;
	background: #ccf1fc;
	/*background: rgba(102,191,151,0.3);*/
	color: #00b9ef;
	padding: 5px 10px;
	font-weight: bold;
	font-size: 16px;
	margin: 20px 0;
}

 h4.sub-title_bg.ntnews {
	display: block;
	background: #ccf1fc;
	/*background: rgba(102,191,151,0.3);*/
	color: #00b9ef;
	padding: 5px 10px;
	font-weight: bold;
	font-size: 16px;
	margin: 20px 0 0 0;
}
h4.sub-title_bg.jhs{
	display: block;
	background: rgba(100,192,172,.3);
	/*background: rgba(102,191,151,0.3);*/
	color: rgba(100,192,172,1);
	padding: 5px 10px;
	font-weight: bold;
	font-size: 16px;
	margin: 20px 0;
}

h4.icon-square{
	padding-left: 20px;
	border-left: 5px solid #00b9ef;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
}
h4.icon-square.jhs{
	padding-left: 20px;
	border-left: 5px solid rgba(100,192,172,1);
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
}

h4.caption_bg{
	display: inline-block;
	color:#fff;
	background: #00b9ef;
	font-size: 16px;
	padding:5px 10px ;
	margin-bottom: 20px;
}


h4.line-square{
	color: #00b9ef;
	padding-left: 1.5em;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 20px;
	position: relative;
}
h4.line-square:before{
	content: "";
	border: 1px solid #00b9ef;
	width: 1em;
	height: 1em;
	position: absolute;
	left: 0;
	top: 0.2em;
	font-size: 1.1em;
}

.greeting-title{
	border-bottom: 8px solid #58A684;
	font-size: 32px;
	margin-bottom: 25px;
	padding-bottom: 25px;
}

.black-bar{
	background: #000;
	color:#fff;
	padding:10px 15px;
	font-size: 20px;
	margin-bottom: 20px;
	font-weight: bold;
}


h3.page-hd-title{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 20px;
}

h3.page-hd-title.light-color{
	color:#dfd7cb;
}




h3.page-hd-title span.english-title{
	font-family: 'Prompt', sans-serif;
	font-weight: 700;
	font-size: 48px;
	margin-right: 25px;
	line-height: 1;
}

h3.page-hd-title span.japan_sub{
	font-size: 16px;
}

/* -- Media query	768px以下の場合 スマートフォン設定-- */
@media screen and (max-width: 768px ) {
	.page-cmn-title>dt{
		font-size: 32px;
	}

	.page-cmn-title>dd{
		font-size: 16px;
	}


}

.paragraph{
	display: block;
	margin-bottom: 80px;
	font-size: 16px;
}

.paragraph_intro{
	display: block;
	padding:0 10px;
	margin-bottom: 40px;
	font-size: 20px;
	text-align:left;
}

.paragraph.white-text{
	color:#fff;
}

table.table_std {
	border-collapse:collapse;
	width:100%;
	margin-bottom: 20px;
	border-top: 3px solid #00b9ef;
	border-bottom: 3px solid #00b9ef;
	border-left: 1px solid #00b9ef;
}
table.table_std.hs-special {
	border-collapse:collapse;
	width:100%;
	margin-bottom: 20px;
	border-top: 3px solid rgba(0,128,203,1);
	border-bottom: 3px solid rgba(0,128,203,1);
	border-left: 1px solid rgba(0,128,203,1);
}

table.table_std th ,
table.table_std td {
	border-bottom:1px solid #00b9ef;
	padding:10px;
	font-size:14px;
	color:#000;
	text-align:left;
	vertical-align:middle;
	border-right:1px solid #00b9ef;
}

table.table_std.hs-special th ,
table.table_std.hs-special td {
	border-bottom:1px solid rgba(0,128,203,1);
	padding:10px;
	font-size:14px;
	color:#000;
	text-align:left;
	vertical-align:middle;
	border-right:1px solid rgba(0,128,203,1);
}

table.table_std.pd_adjust th ,
table.table_std.pd_adjust td {
	padding: 10px 5px;
}

table.table_std th{
	text-align: center;
	background: #ccf1fc;
	color:#000;
}

table.table_std.center td{
	text-align: center;
}

table.table_std th.al_left ,table.table_std td.al_left {
	text-align:left;
}
table.table_std th.al_center ,table.table_std td.al_center {
	text-align:center;
}
table.table_std th.al_center ,table.table_std td.al_center a.mk-link{
	text-decoration: underline;
}
table.table_std th.al_right ,table.table_std td.al_right {
	text-align:right;
}

table.table_std td.color_cell{
	background: #ccf1fc;
}

table.table_blue{
	border-collapse:collapse;
	width:100%;
	margin-bottom: 20px;
	border: 3px solid #93D0C8;
}
table.table_blue th ,table.table_blue td {
	border:1px solid #888;
	padding:10px;
	font-size:14px;
	color:#00b9ef;
	text-align:left;
	vertical-align:middle;
}
table.table_blue th.al_center ,table.table_blue td.al_center {
	text-align:left;
}
table.table_blue th.al_left ,table.table_blue td.al_left {
	text-align:left;
}

table.table_bb th{
	border-bottom: 1px solid #00b9ef;
	padding:20px 12px 12px;
}
table.table_bb td {
	border-bottom: 1px solid #dedede;
	padding:20px 15px 12px;
}


table.table_noborder th,
table.table_noborder td {
	border: none;
	padding: 0 1em 0 0;
}
table.table_noborder th.al_left ,table.table_noborder td.al_left {
	text-align:left;
}
table.table_noborder th.al_center ,table.table_noborder td.al_center {
	text-align:center;
}
table.table_noborder th.al_right ,table.table_noborder td.al_right {
	text-align:right;
}


/*関連リンク*/

a.link_btn {
	display:block;
	width:100%;
	min-height:60px;
	padding:17px 100px 0 40px;
	background: #ccf1fc;
	margin:30px 0 20px;
	position:relative;
	color: #00b9ef;
	text-decoration:underline;
	font-size:16px;
	font-weight: 600;
	box-shadow: 0px 2px 4px rgba(0,0,0,0.18);
}

a.link_btn span.bg-text{
	background: #f60;
	color:#fff;
	font-weight: bold;
	display: inline-block;
	padding:0 5px;
}

a.link_btn::after {
	content:'';
	display:block;
	width:65px;
	height:60px;
	background: url(../images/common/link_btn_icon.png) no-repeat center center #00b9ef;
	position:absolute;
	top:0px;
	right:0px;
}
a[target="_blank"].link_btn::after {
	content:'';
	display:block;
	width:65px;
	height:60px;
	background: url(../images/common/link_btn_icon_window.png) no-repeat center center #00b9ef;
	position:absolute;
	top:0px;
	right:0px;
}

a[href$=".pdf"].link_btn::after {
	content:'';
	display:block;
	width:65px;
	height:60px;
	background: url(../images/common/link_btn_icon_pdf.png) no-repeat center center #00b9ef;
	position:absolute;
	top:0px;
	right:0px;
}
a[href$=".docx"].link_btn::after {
	content:'';
	display:block;
	width:65px;
	height:60px;
	background: url(../images/common/link_btn_icon_docx.png) no-repeat center center #00b9ef;
	position:absolute;
	top:0px;
	right:0px;
}
a[href$=".doc"].link_btn::after {
	content:'';
	display:block;
	width:65px;
	height:60px;
	background: url(../images/common/link_btn_icon_docx.png) no-repeat center center #00b9ef;
	position:absolute;
	top:0px;
	right:0px;
}
a[href$=".xlsx"].link_btn::after {
	content:'';
	display:block;
	width:65px;
	height:60px;
	background: url(../images/common/link_btn_icon_xlsx.png) no-repeat center center #00b9ef;
	position:absolute;
	top:0px;
	right:0px;
}
a[href$=".xls"].link_btn::after {
	content:'';
	display:block;
	width:65px;
	height:60px;
	background: url(../images/common/link_btn_icon_xlsx.png) no-repeat center center #00b9ef;
	position:absolute;
	top:0px;
	right:0px;
}

a[href$=".mp3"].link_btn::after {
	content:'';
	display:block;
	width:65px;
	height:60px;
	background: url(../images/common/link_btn_icon_music.png) no-repeat center center #00b9ef;
	background-size: 35px;
	position:absolute;
	top:0px;
	right:0px;
}


/*縦書き__settings*/
.vertical-writing{
	line-height: 1.8;
	letter-spacing: 0.03em;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.vertical-writing ruby {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

.max-image-box{
	margin-bottom: 40px;
}
.max-image-box img {
max-width: 100%;
}


/* カラムレイアウト用 （レスポンシブ時1カラムへ）________________*/
.two_column {
	width:49% !important;
	float:left;
	margin: auto .5% !important;
}
.three_column {
	width:32% !important;
	float:left;
	margin:auto .6% !important;
}
/* -- Media query	768px以下の場合 スマートフォン設定-- */
@media only screen and (max-width: 768px ) {
	.two_column {
		width:100% !important;
		float:none;
		margin: auto;
		margin-bottom: 1em !important;
	}
	.three_column {
		width:100% !important;
		float:none;
		margin: auto;
		margin-bottom: 1em !important;
	}
	.two_column:last-child,
	.three_column:last-child {
		margin-bottom: 0 !important;
	}

	table.table_std th,
	table.table_std td {
		padding:10px 5px;
	}
}



.img_left {
	float:left;
	margin-right:15px;
	max-width:280px;
height:auto;
}
.img_left_s {
	float:left;
	margin-right:15px;
	max-width:150px;
}
.img_left_l {
	float:left;
	margin-right:15px;
	max-width:450px;
}
.img_right {
	float:right;
	margin-left:15px;
	max-width:280px;
}
.img_right_s {
	float:right;
	margin-left:15px;
	max-width:150px;
}
.img_right_l {
	float:right;
	margin-left:15px;
	max-width:450px;
}
.img_center {
	width:100%;
	overflow: hidden;
	text-align: center;
	margin:10px auto 20px;
}


.img_center img , .img_left img , .img_right img , .img_left_s img , .img_right_s img {
	display: block;
	margin:0 auto;
	max-width:100%;
}

.img_center figcaption , .img_left figcaption , .img_right figcaption , .img_left_s figcaption , .img_right_s figcaption {
	width:100%;
	padding:4px 10px;
	font-size:12px;
	margin-top:2px;
	text-align:center;
	background-color:#EDEDED;
}
.img_center figcaption span , .img_left figcaption span , .img_right figcaption span , .img_left_s figcaption span , .img_right_s figcaption span {
	font-size:14px;
	margin-top:4px;
}

.img_center div.caption {
	display:inline-block;
	margin-bottom: 20px;
	width:auto;
}

.img_center:after,
.img_left:after,
.img_right:after,
.img_left_s:after,
.img_right_s:after,
.img_left_l:after,
.img_right_l:after {
	clear:both;
	content:"";
	height: 0;
	display: block;
	visibility: hidden;
}

.table_res {
	width: auto;
}


/*写真設定*/

.photo-booth-cover{
	position: relative;
	height: 300px;
}

.photo-booth-cover img {
	position: absolute;
	top: 0;
	left: 0;
	width: auto;
	height: auto;
	min-width: 100%;
	min-height: 100%;
	max-width: inherit;
}




/* -- Media query	768px以下の場合 スマートフォン設定-- */
@media screen and (max-width: 768px ) {
	.img_left,
	.img_right,
	.img_left_s,
	.img_right_s,
	.img_left_l,
	.img_right_l,{
		float:none;
		margin:0 auto 20px;
		width:70%;
		display: block;
	}
	.table_res {
		overflow-x:auto;
		width:100%;
	}
}

.photo_list2 li {
	width:48%;
	margin-right:4%;
	float: left;
}

.photo_list3 , .photo_list4 , .photo_list3_circle , .photo_list4_circle {
	margin-bottom: 20px;
}

.photo_list3 li , .photo_list3_circle li {
	width:30%;
	margin-right:5%;
	float: left;
}

.photo_list4 li , .photo_list4_circle li {
	width:21.25%;
	margin-right:5%;
	float: left;

}


.photo_list2 li img , .photo_list3 li img , .photo_list4 li img {
	width: 100%;
}

.photo_list2.default li img {
	width: auto;
	height:auto;
	display: block;
	}

.photo_list3_circle li img , .photo_list4_circle li img {
	width: 50%;
	height:auto;
	border-radius:50%;
	margin:0 auto;
	display: block;
}


.photo_list2 li:last-child , .photo_list3 li:last-child , .photo_list4 li:last-child , .photo_list3_circle li:last-child , .photo_list4_circle li:last-child{
	margin-right: 0;
}

.photo_list_caption {
	margin-top: 10px;
}

.photo_list_caption__title {
	font-size: 16px;
	font-weight: bold;
	min-height:40px;
	margin-bottom: 15px;
	text-align: center;
}

.photo_list_caption_small {
	font-size: 12px;
	font-weight: normal;
	display: block;
}

.photo_list_caption__text {
	font-size: 14px;
	font-weight: normal;
	min-height:40px;
}
.photo_list_caption__text_title {
	font-weight: bold;
	margin-bottom: 5px;
}

/* -- Media query	768px以下の場合 スマートフォン設定-- */
@media only screen and (max-width: 768px ) {
	.photo_list2 li {
		width:100%;
		margin-right:0;
		float: none;
		margin-bottom: 10px;
	}
	.photo_list3 li , .photo_list3_circle li {
		width:100%;
		margin-right:0;
		float: none;
		margin-bottom: 10px;
	}
	.photo_list4 li , .photo_list4_circle li {
		width:100%;
		margin-right:0;
		float: none;
		margin-bottom: 10px;
	}

}


/*半角英数_settings*/

.break-word {
word-wrap: break-word;
}

/*未入稿用*/
.dummy_area {
	width:100%;
	height:140px;
	text-align:center;
	background-color:#BEBEBE;
	color:#FFF;
	font-weight: bold;
	padding-top:60px;
}

.dummy_text , .alerts_box ,.comming_soon {
	position:relative;
	display: block;
	pointer-events:none;
}

.dummy_text:before {
	content:"DUMMY";
	color:#fff;
	background: rgba(0,0,0,.4);
	width: 100px;
	height:25px;
	text-align: center;
	position:absolute;
	top:50%;
	left:50%;
	bottom:0;
	margin:-13px 0 0 -50px;
	display: block;
}

.alerts_box:before {
	content:"未入稿";
	color:#fff;
	background: #f00;
	width: 100px;
	height:25px;
	text-align: center;
	position:absolute;
	top:50%;
	left:50%;
	bottom:0;
	margin:-13px 0 0 -50px;
	display: block;
}
	
.comming_soon:before {
	content:"COMING SOON";
	color:#fff;
	background: rgba(0,0,0,.4);
	width: 180px;
	height:25px;
	text-align: center;
	position:absolute;
	top:50%;
	left:50%;
	bottom:0;
	margin:-13px 0 0 -90px;
	display: block;
}

.code_sample_title {
	font-weight: bold;
	font-size: 18px;
}
.no-link {
	pointer-events:none;
}


.notes {
	position: relative;
	padding-left: 1.2em;
}
.notes::before {
	content:"※";
	width: 1em;
	height: 1em;

	position: absolute;
	left: 0;
	top: 0;
}


/* 

Material icons__settings

 */



/*********************************

■material icons

**********************************/


/* -- Media query	768px以下の場合 スマートフォン設定-- */
@media only screen and (max-width: 768px ) {

a.link_btn {
	font-size: 15px;
	}
.paragraph{
	margin-bottom: 20px;

}


}
