@charset "utf-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Open+Sans:600,700);

html{ height: 100%;}
body { margin: 0; padding: 0; font-size: 93.7%; font-family: 'Noto Sans Japanese', 'Open Sans' ,sans-serif, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック"; line-height: 1.7em; color: #444; height: 100%; position: relative; letter-spacing: 0.1em; top:0;}
header,main,article,section,nav,footer { display: block;}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { margin: 0; padding: 0; font-size: 100%;}
input {font-family: 'Open Sans' ,'Noto Sans Japanese', sans-serif, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック"; line-height: 1.7em; color: #444; position: relative; letter-spacing: 0.1em; word-break: break-all;}
table {	border-collapse: collapse; border-spacing: 0;}
fieldset,img { border: 0;}
address,caption,cite,code,dfn,th,var { font-style: normal; font-weight: normal;}
em { font-style: normal; font-weight: 500;}
ol,ul { list-style: none;}
caption{ text-align: left;}
h1,h2,h3,h4,h5,h6 { font-size: 100%; font-weight: normal;}
q:before,q:after { content:'';}
abbr,acronym { border:0;}
/* ↑ここまでリセットcss */

/* フォーム入力欄 */
::-webkit-input-placeholder { color: #ccc;}
::-moz-placeholder { color: #ccc; opacity: 1;}
:-ms-input-placeholder { color: #ccc;}
input:focus::-webkit-input-placeholder { color:transparent;}
input:focus:-moz-placeholder { color:transparent;}
input:focus::-moz-placeholder { color:transparent;}

.cf:after {
	content: "";
	clear: both;
	display: block;
}

section a { color: #E50012; text-decoration:none;}
section a:visited { color:#999999;}
section a:hover { text-decoration: underline;}
section a:hover img {
	opacity: 0.9;
	filter: alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
}
section a[target="_blank"] {
	background:url(/img/pre/popup_red.svg) no-repeat left top 8px;
	padding-left: 19px;
}
section a[href$=".pdf"] {
	background: url(img/common/icon-pdf.png) 0 center no-repeat;
	padding-left: 18px !important;
}
section a[href^="tel:"]{
	text-decoration:none;
	color:#333 !important;
	cursor:text;
}

/*-------------------------------------------------------------
	ページに関する指定
-------------------------------------------------------------*/
#nojs {
	width: 940px;
	background: #fff;
	color: #f00;
	padding: 25px;
	border: 5px solid #F00;
	text-align: center;
	margin: 20px auto;
}


/* ヘッダー */
header{
	position:fixed;
	z-index:1000;
	width:100%;
	transition:all 0.3s;
	top:0 !important;
}
#header_wrap{
	padding:37px 40px 0;
	transition:all 0.3s;
}
#logo{
	float:left;
	margin-top:9px;
	transition:all 0.3s;
}
#logo > h1 > a{
	color:#FFF !important;
	font-weight:bold;
	text-decoration:none;
	font-size:173.3%;
}
#logo > h1 > a > div#middle_logo{
	display:none;
}

#toggle{display:none;}

#menu{
	float:right;
}
#menu > #menu_wrap > ul{
	overflow:hidden;
	float:left;
}
#menu > #menu_wrap > ul > li{
	float:left;
	margin-left:13px;
}
#menu > #menu_wrap > ul > li > a, #menu > #menu_wrap > ul > li > a > img{
	display:block;
	transition:opacity 0.3s;
}
#menu > #menu_wrap > ul > li.head_bnr{
	margin-top:1px;
}
#menu > #menu_wrap > ul > li.head_bnr > a:hover{opacity:0.7;}

#menu > #menu_wrap > ul > li.head_btn > a{
	border:2px solid #FFF;
	color:#FFF;
	text-decoration:none;
	text-align:center;
	height:50px;
	position:relative;
	overflow:hidden;
	font-weight:bold;
	width:120px;
	line-height:1.2em;
	top:1px;
	transition:all 0.5s;
	display:flex;
	justify-content:center;
	align-items:center;
	box-sizing:border-box;
	padding-top:1px;
	flex-wrap:wrap;
}
#menu > #menu_wrap > ul > li.head_btn.head_oc > a{
	width:194px;
}
#menu > #menu_wrap > ul > li.head_btn > a span{
	background:url(/img/pre/popup.svg) no-repeat left top 4px;
	padding-left:18px;
}
#menu > #menu_wrap > ul > li.head_btn.head_oc > a span{
	background-position:top 11px left !important;
}
#menu > #menu_wrap > ul > li.head_btn > a:hover{
	color:#333;
}
#menu > #menu_wrap > ul > li.head_btn > a:hover span{
	background:url(/img/pre/popup_black.svg) no-repeat left top 5px;
}
#menu > #menu_wrap > ul > li.head_btn > a::before{
	position:absolute;
	width:100%;
	left:-100%;
	background:#FFF;
	height:100%;
	content:"";
	display:block;
	top:0;
	transition:all 0.5s;
	z-index:-10;
}
#menu > #menu_wrap > ul > li.head_btn > a:hover::before{
	left:0;
}

#lang_wrap{
	float:left;
	margin:12px 0 0 15px;
	position:relative;
}
#lang_wrap > a{
	color:#FFF;
	display:block;
	text-decoration:none;
	background:url(/img/pre/icon_language_white.svg) no-repeat left top 6px / 16px 16px;
	font-size:80%;
	letter-spacing:0.05em;
	padding:0 0 1px 24px;
	border-bottom:1px solid rgba(0,0,0,0);
	transition:border-bottom 0.3s;
}
#lang_wrap > a:hover{
	border-bottom:1px solid #FFF;
}
#lang_wrap > a.open{
	background:url(/img/pre/icon_close_white.svg) no-repeat scroll left top 7px / 14px 14px;
}
#lang_box{
	display:none;
	position:absolute;
	right:0;
	background:#333;
	color:#FFF;
	top:48px;
	padding:14px 11px 21px 22px;
}
#lang_box::before{
	content:"";
	display:block;
	position:absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 5px 8px 5px;
	border-color: transparent transparent #333 transparent;
	right:28px;
	top:-8px;
}
#lang_box > h2{
	font-size:106.7%;
	font-weight:bold;
}

/* 縮小ヘッダー */
.header_smaller , #page_haeder{
	background:#FFF;
	height:90px;
}
.header_smaller #header_wrap , #page_haeder #header_wrap{
	padding:19px 40px;
}
.header_smaller #logo , #page_haeder #logo{
	margin:1px 0 0 5px;
}
.header_smaller #logo > h1 > a , #page_haeder #logo > h1 > a{
	color:#333 !important;
	font-size:86.7%;
	font-weight:normal;
}

.header_smaller #logo > h1 > a > div#top_logo , #page_haeder #logo > h1 > a > div#top_logo{
	display:none;
}
.header_smaller #logo > h1 > a > div#middle_logo , #page_haeder #logo > h1 > a > div#middle_logo{
	display:block;
}
.header_smaller #logo > h1 > a > div#middle_logo >img ,
#page_haeder #logo > h1 > a > div#middle_logo > img{
	display:block;
	width:300px;
	height:50px;
	float:left;
}
.header_smaller #logo > h1 > a > div#middle_logo > span ,
#page_haeder #logo > h1 > a > div#middle_logo > span{
	float:left;
	display:flex;
	width:100px;
	height:50px;
	align-items:center;
	justify-content:center;
	text-align:center;
	line-height:1.3em;
	margin-left:22px;
	position:relative;
}
.header_smaller #logo > h1 > a > div#middle_logo > span::before ,
.header_smaller #logo > h1 > a > div#middle_logo > span::after ,
#page_haeder #logo > h1 > a > div#middle_logo > span::before ,
#page_haeder #logo > h1 > a > div#middle_logo > span::after{
	content:"";
	display:block;
	position:absolute;
	width:10px;
	height:100%;
	top:0;
}
.header_smaller #logo > h1 > a > div#middle_logo > span::before ,
#page_haeder #logo > h1 > a > div#middle_logo > span::before{
	border-left:1px solid #333;
	border-top:1px solid #333;
	border-bottom:1px solid #333;
	left:0;
}
.header_smaller #logo > h1 > a > div#middle_logo > span::after ,
#page_haeder #logo > h1 > a > div#middle_logo > span::after{
	border-right:1px solid #333;
	border-top:1px solid #333;
	border-bottom:1px solid #333;
	right:0;
}


.header_smaller #logo > h1 > a > img ,
#page_haeder #logo > h1 > a > img{display:none;}

.header_smaller #menu > #menu_wrap > ul > li.head_btn > a ,
#page_haeder #menu > #menu_wrap > ul > li.head_btn > a{
	border-color:#333;
	color:#333;
}
.header_smaller #menu > #menu_wrap > ul > li.head_btn > a span ,
#page_haeder #menu > #menu_wrap > ul > li.head_btn > a span{
	background:url(/img/pre/popup_black.svg) no-repeat left top 4px;
}

.header_smaller #menu > #menu_wrap > ul > li.head_btn > a::before ,
#page_haeder #menu > #menu_wrap > ul > li.head_btn > a::before{
	background:#333;
}
.header_smaller #menu > #menu_wrap > ul > li.head_btn > a:hover ,
#page_haeder #menu > #menu_wrap > ul > li.head_btn > a:hover{
	color:#FFF;
}
.header_smaller #menu > #menu_wrap > ul > li.head_btn > a:hover span ,
#page_haeder #menu > #menu_wrap > ul > li.head_btn > a:hover span{
	background:url(/img/pre/popup.svg) no-repeat left top 5px;
}
.header_smaller #menu > #menu_wrap > ul > li.head_btn.head_oc > a span{
	background-position:top 12px left !important;
}

.header_smaller #lang_wrap > a ,
#page_haeder #lang_wrap > a{
	color:#333;
	background:url(img/pre/icon_language_black.svg) no-repeat left top 6px / 16px 16px;
}
.header_smaller #lang_wrap > a:hover ,
#page_haeder #lang_wrap > a:hover{
	border-color:#333;
}
.header_smaller #lang_wrap > a.open ,
#page_haeder #lang_wrap > a.open{
	background:url(img/pre/icon_close_black.svg) no-repeat scroll left top 7px / 14px 14px;
}

body > .skiptranslate{display:none;}

/* フッター */
footer{
	padding:0 20px 20px;
}

#footer_t{
	background:#EB5C02;
	padding:25px 0;
}
#footer_t ul{
	display:flex;
}
#footer_t ul li{
	width:25%;
	text-align:center;
	border-left:1px dotted #FFF;
	padding:1px 0 3px;
}
#footer_t ul li:last-child{border-right:1px dotted #FFF;}
#footer_t ul li a{
	color:#FFF;
	text-decoration:none;
	padding-left:16px;
	background:url(/img/pre/popup.svg) no-repeat left center / 10px 10px;
	font-size:93.3%;
	transition:opacity 0.3s;
}
#footer_t ul li a:hover{opacity:0.7;}

#footer_m{
	background:#555;
	color:#FFF;
	font-size:93.3%;
	padding:28px 0 32px;
}
#footer_m .wrap_1000{
	overflow:hidden;
}
#footer_m .wrap_1000 p{margin:0 0 10px;}
address{
	float:left;
	line-height:1.6em;
}
.smp_br , .tab_br{display:none;}
address a{
	text-decoration:none;
	cursor:text;
	color:#FFF;
}
#footer_m .wrap_1000 div{
	float:right;
	margin-top:5px;
}
#footer_m .wrap_1000 div a{
	display:block;
	border:1px solid #FFF;
	color:#FFF;
	text-decoration:none;
	display:block;
	width:198px;
	height:48px;
	text-align:center;
	line-height:47px;
	position:relative;
	overflow:hidden;
	transition:all 0.5s;
}
#footer_m .wrap_1000 div a::before{
	content:"";
	display:block;
	position:absolute;
	left:-100%;
	width:100%;
	height:100%;
	top:0;
	background:#FFF;
	transition:all 0.5s;
}
#footer_m .wrap_1000 div a:hover{
	color:#333;
}
#footer_m .wrap_1000 div a:hover::before{
	left:0;
}
#footer_m .wrap_1000 div a span{
	background:url(/img/pre/icon_mail.svg) no-repeat left center / 18px 14px;
	padding-left:27px;
	padding-bottom:2px;
	position:relative;
}
#footer_m .wrap_1000 div a:hover span{
	background:url(/img/pre/icon_mail_black.svg) no-repeat left center / 18px 14px;
}

#footer_b{
	background:#333;
	color:#FFF;
	padding:9px 0 12px;
	font-size:80%;
}
#footer_b .wrap_1000{
	overflow:hidden;
}
#footer_b .wrap_1000 > a{
	float:left;
	color:#FFF;
}
#footer_b .wrap_1000 > a:hover{
	text-decoration:none;
}
#footer_b .wrap_1000 > small{
	float:right;
	font-size:100%;
}


#return{
	position:relative;
}
#return a {
    position: fixed;
	display:block;
	font-size:0;
	text-decoration:none;
	width:28px;
	height:21px;
	bottom:20px;
	right:30px;
	background:url(/img/pre/pagetop.svg) no-repeat center center;
	transition:opacity 0.3s;
	z-index:500;
}
#return a:hover {opacity:0.7;}


/* トップ */
#index_area{
	padding:0 20px;
}
#mv{
	box-sizing:border-box;
	padding:22px 0;
	height:100vh;
	position:relative;
	overflow:hidden;
}
#mv::after{
	content:"";
	position:absolute;
	top:0;
	right:-100%;
	display:block;
	background:#FFF;
	transition:all 0.5s ease-in-out 1s;
	width:100%;
	height:100%;
	z-index:5000;

}
#mv.load::after{right:0;}
#mv_movie{
	height:100%;
	position:relative;
	overflow:hidden;
}
#mv_movie video{
	position:absolute;
	right:0;
	bottom:0;
	min-width:100%;
	min-height:100%;
	width:auto;
	height:auto;
	z-index:-100;
	background-size:cover;
	z-index:10;
}
#mv_movie::before{
	position:absolute;
	z-index:15;
	display:block;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:url(/img/pre/dot.png) repeat left top;
	content:""
}

#mv_catch{
	position:absolute;
	text-align:center;
	top:0;
	bottom:0;
	margin:auto;
	width:100%;
	z-index:100;
	height:330px;
	box-sizing:border-box;
}
#mv_catch h1 img{
	display:block;
	margin:18px auto 0;
}
#mv_catch > p{
	color:#FFF;
	font-weight:bold;
	margin-top:23px;
	letter-spacing:0.2em;
	font-size:200%
}
.mv_p1{
	font-size:86.66%;
}
.mv_p2{
	display:inline-block;
	font-size:53.33%;
	letter-spacing:0.13em;
	margin-top:12px;
	margin-bottom:24px;
}

#scroll{
	bottom:22px;
	position:absolute;
	z-index:100;
	color:#FFF;
	font-size:80%;
	text-align:center;
	left:0;
	right:0;
	margin:auto;
	height:72px;
	width:70px;
	z-index:100;
	display:none;
}
#scroll_wrap{
	overflow:hidden;
	position:absolute;
	width:1px;
	height:40px;
	left:0;
	right:0;
	margin:auto;
	bottom:0;
	display:block;
}
#scroll_wrap::before{
	position:absolute;
	content:"";
	display:block;
	width:1px;
	height:40px;
	background:#FFF;
	left:0;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-name:scroll;
    animation-timing-function: linear;
}
@keyframes scroll {0%{top:-40px;}100%{top:40px;}}

.pdf_area{
	max-width:900px;
	margin:auto;
}
.pdf_btn{
	display:flex;
	width:100%;
	background:#E50012 url(/img/pre/icon_pdf.png) no-repeat right 21px center / 20px 20px;
	color:#FFF;
	text-decoration:none;
	font-weight:bold;
	font-size:133.3%;
	justify-content:center;
	align-items:center;
	margin:16px 0 20px;
	height:60px;
	box-sizing:border-box;
	padding:0 0 2px;
	text-align:center;
}
.pdf_btn > span:first-child{
	margin-right:15px;
}

#index_area h2{
	font-size:600%;
	color:#E50012;
	line-height:1em;
	font-weight:bold;
	letter-spacing:0.1em;
}
#index_area h2 span{
	color:#1F1F1F;
	font-size:20%;
	display:block;
	line-height:2em;
	letter-spacing:0.1em;
	margin-top:6px;
}
.wrap_1000{
	width:1000px;
	margin:0 auto;
}

#index_opencampus{
	border:3px solid #E50012;
	text-align:center;
	margin:17px 0 20px;
	padding:77px 20px 120px;
}
#index_area #index_opencampus h2{
	font-size:433.3%;
}
#index_area #index_opencampus h2 span{
	font-size:27.7%;
	line-height:1em;
	margin-top:25px;
}
.opencamput_wrap{
	width:715px;
	margin:41px auto 0;
	text-align:left;
}
.opencamput_wrap p{
	margin-bottom:24px;
}
.opencamput_wrap strong{
	font-size:133.3%;
}
.oc_column{
	display:flex;
	margin:5px 0 0;
}
.oc_date{width:105px;}
.oc_txt dl dd{padding-left:16px;}

.oc_tel{
	background:#F2F2F2;
	text-align:center;
	font-weight:bold;
	margin:20px 0 25px;
	padding:10px 0 13px;
}
.opencamput_wrap .oc_tel p{margin:0;}

.oc_form{
	margin-top:28px;
}
section .oc_form a{
	border:2px solid #333;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	color:#333;
	text-decoration:none;
	transition:color .5s;
	position:relative;
	overflow:hidden;
	font-weight:bold;
	height:60px;
	padding:0;
}
section .oc_form a::before{
	position:absolute;
	width:100%;
	left:-100%;
	background:#333;
	height:100%;
	content:"";
	display:block;
	top:0;
	transition:all 0.5s;
	z-index:-10;
}
section .oc_form a:hover{color:#FFF;}
section .oc_form a:hover::before{left:0;}
section .oc_form a[target="_blank"]{
	background:none;
	padding:0;
}
section .oc_form a[target="_blank"] span{
	background:url(/img/pre/popup_black.svg) no-repeat left center;
	padding:5px 0 7px 18px;
}
section .oc_form a[target="_blank"]:hover span{
	background:url(/img/pre/popup.svg) no-repeat left center;
}

#index_message{
	margin:17px 0 0;
	text-align:center;
}
#message_head{
	background:url(/img/pre/h2_message.jpg) no-repeat center center / cover;
	height:300px;
	width:100%;
}
#message_head img{display:none;}

#message_h2{
	margin:-30px auto 0;
	position:relative;
	z-index:10;
	width:700px;
}

#message_txt{
	font-size:106.7%;
	margin:50px auto 80px;
	width:700px;
}
#message_txt p{
	margin:25px 0;
}
#message_txt p strong{
	font-size:187.5%;
	font-weight:normal;
}

#message_seishin{
	background:url(/img/pre/bg_philosophy.png) no-repeat center center / cover;
	padding:100px 0;
}
#message_seishin .txt_slide{
	width:500px;
	margin:auto;
}
#message_seishin_box h3{
	background:#FFF;
	margin:auto;
	font-family:"游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	text-align:center;
	font-size:226.7%;
	line-height:1.5em;
	font-weight:bold;
}
#message_seishin_box h3 a{
	display:block;
	cursor:pointer;
	padding:50px 0 33px;
	background:url(/img/pre/icon_plus.svg) no-repeat right 20px center / 20px 20px;
	color:#333 !important;
	transition:opacity 0.3s;
}
#message_seishin_box h3 a:hover{
	text-decoration:none;
	opacity:0.7;
}
#message_seishin_box img{
	display:block;
	margin:0 auto 27px;
	width:120px;
	height:auto;
}

/* 精神モーダル */
#modal-content2{
	width:1000px;
	margin:auto;
	padding:10px 0;
	background:#fff;
	z-index:3000;
	position:fixed;
	height:479px;
	box-sizing:border-box;
	display:none;
	max-height:calc(100vh - 130px);
}
#modal_wrap2{
	overflow:auto;
	height:100%;
	padding:0 0 28px;
	box-sizing:border-box;
}

#modal_wrap2::-webkit-scrollbar {
	width: 5px;
}
#modal_wrap2::-webkit-scrollbar-track {
	border-radius: 5px;
	background: #eee;
}
#modal_wrap2::-webkit-scrollbar-thumb {
	border-radius: 5px;
	background: #888;
}
#modal_wrap2 h4{
	font-size:120%;
	font-weight:bold;
	border-bottom:1px solid #EEE;
	padding:23px 0 37px;
	margin:0 0 48px;
}
#modal_wrap2 p{
	text-align:left;
	margin:17px auto;
	width:700px;
}
.font_mincho{
	font-family:"游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	text-align:center !important;
	font-size:146.7%;
	margin:0 auto 40px !important;
}

#close_p2{
	position:absolute;
	top:-38px;
	right:0;
}
section #close_p2 a{
	color:#FFF !important;
	font-weight:bold;
	background:url(/img/pre/icon_close_white.svg) no-repeat left center / 14px 14px;
	padding:0 0 2px 19px;
	cursor:pointer;
}




#symbol{
	margin:48px 0 0;
}
#symbol > h3{
	width:431px;
	margin:auto;
}
#symbol > h3 > a{
	display:block;
	border:2px solid #CCC;
	background:url(/img/pre/symbol.png) no-repeat left 30px center / 40px 37px , url(/img/pre/icon_plus.svg) no-repeat right 20px center / 20px 20px;
	box-sizing:border-box;
	cursor:pointer;
	transition:all 0.3s;
	text-align:left;
	color:#1F1F1F;
	font-weight:bold;
	font-size:112.5%;
	height:100px;
	padding:0 60px 0 90px;
	line-height:95px;
	text-decoration:none;
}
#symbol > h3 > a:hover{
	border-color:#E50012;
}

/* モーダル */
#modal-content{
	width:1000px;
	margin:auto;
	padding:10px 0;
	background:#fff;
	z-index:3000;
	position:fixed;
	height:calc(100vh - 130px);
	box-sizing:border-box;
	display:none;
}
#modal_wrap{
	overflow:auto;
	height:100%;
}

#modal_wrap::-webkit-scrollbar {
	width: 5px;
}
#modal_wrap::-webkit-scrollbar-track {
	border-radius: 5px;
	background: #eee;
}
#modal_wrap::-webkit-scrollbar-thumb {
	border-radius: 5px;
	background: #888;
}


#message_txt p#close_p{
	position:absolute;
	top:-34px;
	right:0;
	margin:0;
}
#message_txt p#close_p a{
	color:#FFF;
	text-decoration:none;
	font-size:93.75%;
	background:url(/img/pre/icon_close_white.svg) no-repeat left center / 14px 14px;
	padding:0 0 2px 21px;
	cursor:pointer;
}
#message_txt p#close_p a:hover{
	text-decoration:underline;
}

#design h4{
	font-size:112.5%;
	font-weight:bold;
	border-bottom:1px solid #EEE;
	padding:27px 0 37px;
}

#design_2column{
	display:table;
	text-align:left;
	padding:0 20px;
	box-sizing:border-box;
	width:100%;
	font-size:87.5%;
	letter-spacing:0;
	margin:19px 0 0;
}
#design_2column > div{
	box-sizing:border-box;
	display:table-cell;
	width:50%;
}

#design_2column > div:first-child{
	vertical-align:middle;
	text-align:center;
	padding-right:30px;
}
#message_txt #design p{
	margin:20px 0;
}
#message_txt #design p strong{
	font-size:157.1%;
}

#color{
	background:#EEE;
	margin:30px 40px;
	padding:37px 20px 14px;
	font-size:87.5%;
}
#color > h4{
	font-size:128.6%;
	font-weight:bold;
}
#message_txt #color p{
	margin:22px 0;
}
#message_txt #color p strong{
	font-size:171.4%;
}
#color_circle{
	background:#E50012;
	display:inline-block;
	width:22px;
	height:22px;
	margin:0 2px;
	border-radius:25px;
	position:relative;
	top:2px;
}

#modal-overlay{
	z-index:2000;
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:120%;
	background-color:rgba(0,0,0,0.75);
}

/* モーダルここまで */


#index_about{
	background:url(/img/pre/bg_about.png) repeat center center;
	margin:20px 0 0;
	padding:0 0 85px;
}
#about_head{
	background:url(/img/pre/h2_about.jpg) no-repeat center center / cover;
	height:300px;
}
#about_head img{display:none;}
#about_h2{
	margin:-30px 0 0;
}
#index_area #about_h2 p{
	margin:10px 0 0 3px;
}
#about_cap{
	font-size:86.7%;
}

#about_txt ol{
	font-size:133.3%;
	margin:50px 0 0;
	padding:0 0 0 60px;
}

#about_txt ol li{
	position:relative;
	padding:23px 0 19px 92px;
	margin:0 0 48px;
	letter-spacing:0.15em;
}
#about_txt ol li:last-child{
	margin-bottom:19px;
}

#about_txt ol li .about_no{
	font-size:350%;
	line-height:1em;
	font-weight:bold;
	font-family:"Open Sans";
	color:#E60012;
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	margin:auto;
	height:1em;
}

#about_txt ol li strong{
	font-size:150%;
	font-weight:normal;
	color:#E50012;
}

#about_txt p a{
	text-decoration:underline;
}
#about_txt p a:hover{
	text-decoration:none;
}

#index_academics{
	background:#F3F3F3;
	padding-bottom:65px;
}
#academics_head{
	background:url(/img/pre/h2_academics.jpg) no-repeat center center / cover;
	height:300px;
}
#academics_head img{display:none;}

#academics_h2{
	text-align:right;
	margin:-29px -12px 0 0;
}
#index_area #academics_h2 h2 span{
	margin-right:10px;
}
#academics_cap{font-size:80%;}
#academics_h2 p{margin:8px 4px 0 0;}

#academics_txt{
	margin:44px 0 0;
}
.academics_box{
	padding-top:144px;
	position:relative;
	margin-bottom:60px;
}
.academics_box_img{
	width:740px;
	height:352px;
	position:absolute;
	top:0;
}
.img_l .academics_box_img{left:0;}
.img_r .academics_box_img{right:0;}

.academics_box_img img{
	display:none;
}
.academics_box_img div{
	position:absolute;
	bottom:0;
	z-index:5;
	height:6px;
	width:100%;
	bottom:0;
	left:0;
	display:block;
}
#academics_img_1{background:url(/img/pre/pic_academics_1.jpg) no-repeat center center / cover;}
#academics_img_1 div{background:#C272A4;}
#academics_img_2{background:url(/img/pre/pic_academics_2.jpg) no-repeat center center / cover;}
#academics_img_2 div{background:#1F9A5C;}
#academics_img_3{background:url(/img/pre/pic_academics_3.jpg) no-repeat center center / cover;}
#academics_img_3 div{background:#00A4C5;}
#academics_img_4{background:url(/img/pre/pic_academics_4.jpg) no-repeat center center / cover;}
#academics_img_4 div{background:#E07A0E;}

.academics_box_txt{
	width:450px;
	padding-left:23px;
	position:relative;
	z-index:10;
}
.academics_box_txt > div{
	background:#FFF;
	padding:43px 39px 20px;
	box-sizing:border-box;
	min-height:280px;
	position:relative;
	z-index:1;
}
.img_l .academics_box_txt{
	margin:0 0 0 auto;
}
.img_r .academics_box_txt{
	margin:0 auto 0 -23px;
}

.academics_box_txt h3{
	font-weight:bold;
	font-size:120%;
	margin-bottom:13px;
	line-height:1.7em;
}
.academics_box_txt p{
	line-height:2em;
}

.academics_box_txt::before{
	content:"";
	display:block;
	position:absolute;
	width:50px;
	height:1px;
	left:0;
	top:59px;
	z-index:2;
}
#academics_txt_1.academics_box_txt::before{background:#C272A4;}
#academics_txt_2.academics_box_txt::before{background:#1F9A5C;}
#academics_txt_3.academics_box_txt::before{background:#00A4C5;}
#academics_txt_4.academics_box_txt::before{background:#E07A0E;}

.academics_box_txt p.teiin{
	position:absolute;
	top:45px;
	right:40px;
	background:#C272A4;
	color:#FFF;
	font-weight:bold;
	font-size:86.7%;
	height:30px;
	padding:0 9px 0 10px;
	letter-spacing:0;
	line-height:29px;
}
#academics_txt_2.academics_box_txt p.teiin{background:#1F9A5C;}
#academics_txt_3.academics_box_txt p.teiin{background:#00A4C5;}
#academics_txt_4.academics_box_txt p.teiin{background:#E07A0E; top:60px;}

#index_campus{
	background:url(/img/pre/bg_campus.jpg) no-repeat center center / cover;
	margin:20px 0 0;
	padding:54px 0 60px;
	overflow:hidden;
	position:relative;
}

#campus_h2{
	text-align:center;
	width:1000px;
	margin:auto;
}
#index_area #campus_h2 h2{
	color:#0066D0;
}
#index_area #campus_h2 h2 span{
	color:#0059B2;
}
#campus_h2 p{
	margin:-1px 0 0;
}
#campus_cap{
	font-size:80%;
}
#campus_txt ul{
	display:flex;
	margin:15px 0 0;
	justify-content:center;
}
#campus_txt ul li{
	/*width:31%;*/
	width:310px;
	margin-right:3.5%;
	padding-top:30px;
}
#campus_txt ul li:last-child{margin-right:0;}
#campus_txt ul li div{
	background:#FFF;
	position:relative;
	box-sizing:border-box;
	padding:79px 40px 20px;
	min-height:310px;
}
#campus_txt ul li div::before{
	content:"";
	position:absolute;
	width:46px;
	height:50px;
	left:0;
	right:0;
	margin:auto;
	display:block;
	top:-27px;
}
#campus_txt ul li#shichikuyama div::before{
	background:url(/img/pre/icon_clip_1.svg) no-repeat center center / 46px 50px;
}
#campus_txt ul li#yoneyama div::before{
	background:url(/img/pre/icon_clip_2.svg) no-repeat center center / 46px 50px;
}
#campus_txt ul li#furumachi div::before{
	background:url(/img/pre/icon_clip_3.svg) no-repeat center center / 46px 50px;
}

#campus_txt ul li h3{
	font-weight:bold;
	text-align:center;
	font-size:146.7%;
	margin-bottom:25px;
}
#campus_txt ul li#shichikuyama h3{color:#0046D8;}
#campus_txt ul li#yoneyama h3{color:#006CD8;}
#campus_txt ul li#furumachi h3{color:#0086D8;}
#campus_txt ul li p{
	letter-spacing:0.08em;
	margin:8px 0;
}
.address{
	font-size:86.7%;
	display:inline-block;
	line-height:1.6em;
}

#index_cta{
	background:url(/img/pre/bg_shiryo.jpg) no-repeat center center / cover;
	color:#FFF;
	text-align:center;
	margin:20px 0 0;
	padding:133px 0 88px;
}
#index_cta p{
	font-size:173.3%;
	font-style:italic;
	font-weight:bold;
	line-height:1.59em;
}

#index_cta p a{
	display:flex;
	border:3px solid #FFF;
	width:354px;
	height:76px;
	text-decoration:none;
	color:#FFF;
	margin:auto;
	margin:51px auto 0;
	font-size:92.3%;
	position:relative;
	transition:all 0.5s;
	top:0;
	overflow:hidden;
	align-items:center;
	justify-content:center;
}
#index_cta p a span{
	position:relative;
	z-index:10;
	background:url(/img/pre/popup.svg) no-repeat left top 14px / 15px 15px;
	padding-left:22px;
}
.small_txt{
	display:block;
	font-size:75%;
	margin-top:-7px;
}
#index_cta p a:hover{color:#333;}
#index_cta p a:hover span{
	background:url(/img/pre/popup_black.svg) no-repeat left top 14px / 15px 15px;
}
#index_cta p a::before{
	display:block;
	content:"";
	background:#FFF;
	position:absolute;
	left:-100%;
	width:100%;
	top:0;
	height:100%;
	transition:all 0.5s;
	z-index:5;
}
#index_cta p a:hover::before{
	left:0;
}

#index_cta p.cta_s_txt{
	font-size:100%;
	margin-top:47px;
	font-style:normal;
}

#sns{
	display:table;
	margin:35px auto 31px;
}
#sns > *{
	display:table-cell;
	vertical-align:middle;
}
#sns > h2{
	font-size:133.3%;
	padding-right:57px;
	border-right:1px solid #CACACA;
}
#sns > ul{
	overflow:hidden;
	padding-left:60px;
}
#sns > ul > li{
	float:left;
	margin-right:40px;
}
#sns > ul > li:last-child{margin-right:0;}
#sns a, #sns a img{
	display:block;
	transition:all 0.3s;
}
#sns a:hover{opacity:0.7;}

/* アニメーション */
.img_slide , .txt_slide{
	overflow:hidden;
	position:relative;
}
.academics_box_img , .academics_box_txt{
	overflow:hidden;
}

.img_slide::before, .img_slide::after ,
.academics_box_img::before, .academics_box_img::after{
	content:"";
	display:block;
	height:100%;
	left:0;
	position:absolute;
	top:0;
	width:100%;
	z-index:10;
}
.img_slide::before , .academics_box_img::before{
	background:#FFF;
	transform: translateX(0px);
    transform-origin: left center 0;
    transition: transform 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.3s;
}
.img_slide.on::before , .on .academics_box_img::before{
	transform:translateX(101%);
}
.img_slide::after , .academics_box_img::after {
	background-color:#E50012;
	transform: scaleX(0) translateX(0px);
	transform-origin: left center 0;
	transition: transform 1s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0s;
}
.img_slide.on::after , .on .academics_box_img::after{
	transform:scaleX(1) translateX(101%);
}
.academics_box_img::before{background:#F3F3F3;}
#academics_img_1.academics_box_img::after{background-color:#C272A4;}
#academics_img_2.academics_box_img::after{background-color:#1F9A5C;}
#academics_img_3.academics_box_img::after{background-color:#00A4C5;}
#academics_img_4.academics_box_img::after{background-color:#E07A0E;}


.academics_box_txt::after{
	content:"";
	display:block;
	height:100%;
	left:0;
	position:absolute;
	top:0;
	width:100%;
	z-index:50;
	background:#f3f3f3;
	transform: translateX(0px);
    transform-origin: left center 0;
    transition: transform 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.3s;
}
.on .academics_box_txt::after{
	transform:translateX(101%);
}

.txt_slide::after{
	content:"";
	display:block;
	height:100%;
	left:0;
	position:absolute;
	top:0;
	width:100%;
	z-index:10;
	background:#FFF;
	transform: translateX(0px);
    transform-origin: left center 0;
    transition: transform 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.3s;
}
.txt_slide.on::after{
	transform:translateX(101%);
}

#message_seishin .txt_slide::after{background:#E9E9E9;}
#academics_h2.txt_slide::after{background:#F3F3F3;}
#campus_h2.txt_slide::after{background:#DAECFA;}


#index_campus::before, #index_campus::after{
	content:"";
	display:block;
	height:100%;
	left:0;
	position:absolute;
	top:0;
	width:100%;
	z-index:10;
}
#index_campus::before{
	background:#FFF;
	transform: translateX(0px);
    transform-origin: left center 0;
    transition: transform 0.5s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0.3s;
}
#index_campus.on::before{
	transform:translateX(101%);
}
#index_campus::after{
	background-color:#0066D0;
	transform: scaleX(0) translateX(0px);
	transform-origin: left center 0;
	transition: transform 1s cubic-bezier(0.55, 0.085, 0.68, 0.53) 0s;
}
#index_campus.on::after{
	transform:scaleX(1) translateX(101%);
}



.mode {ime-mode: disabled;}
.un-mode {ime-mode: active !important;}


/* 下層 */
#page_area{
	padding:90px 20px 0;
}

#h1_bg{
	background:#F3F3F3;
	height:200px;
	display:flex;
	justify-content:center;
	align-items:center;
	position:relative;
	margin:0 0 55px;
}
#h1_bg::after{
	content:"";
	display:block;
	height:2px;
	position:absolute;
	width:50px;
	background:#E60012;
	bottom:-1px;
	left:0;
	right:0;
	margin:auto;
}
#h1_bg h1{
	font-weight:bold;
	text-align:center;
	font-size:173.3%;
}


#page_area h2{
	font-size:133.3%;
	position:relative;
	font-weight:bold;
	margin:76px 0 21px;
}
#page_area h2::before{
	content:"";
	display:block;
	width:30px;
	height:2px;
	background:#E60012;
	left:-44px;
	position:absolute;
	top:13px;
}
#page_area h3{
	font-weight:bold;
	font-size:106.7%;
	border-bottom:1px solid #CCC;
	margin:40px 0 19px;
	padding-bottom:9px;
}
#page_area h4{
	font-weight:bold;
	margin:30px 0 13px;
}

#page_area p{
	margin:10px 0;
}

#page_area ol{
	list-style:decimal;
	padding-left:2.3em;
	margin:10px 0;
}


#page_area #pankuzu ol{
	list-style:none;
	margin:56px 0 10px;
	padding:0;
	overflow:hidden;
	font-size:80%;
}
#page_area #pankuzu ol li{
	float:left;
	margin-right:15px;
}
#page_area #pankuzu ol li a{
	color:#333 !important;
	margin-right:13px;
}

/* カリキュラム追加 */
.modal-open{
	display:flex;
	box-sizing:border-box;
	width:260px;
	height:50px;
	border:2px solid #CCC;
	border-radius:50px;
	color:#333;
	background:url(/img/pre/icon_plus.svg) no-repeat right 19px center / 20px 20px;
	transition:border-color 0.3s;
	cursor:pointer;
	margin:22px 0 20px;
	align-items:center;
	padding:0 40px 0 29px;
	line-height:1em;
}
.modal-open:hover{
	border-color:#E50012;
	text-decoration:none;
}

.modal-content {
	position:fixed;
	display:none;
	z-index:3000;
	height:calc(100vh - 130px);
	box-sizing:border-box;
	width:1000px;
	margin:0;
	padding:10px 0;
	background:#fff;
}
.modal_content_wrap{
	overflow:auto;
	height:100%;
}
.modal_content_area{
	padding:30px 40px 0;
}
.modal_head{
	overflow:hidden;
}
.modal_content_wrap .modal_head h4{
	font-size:114.3%;
	font-weight:bold;
	float:left;
}
.modal_content_wrap h4 span{
	font-size:187.5%;
	letter-spacing:0.12em;
	display:inline-block;
	border-bottom:2px solid #DDD;
	padding:0 0 20px;
	margin-bottom:11px;
}

.modal_head p{
	background:#C272A4;
	color:#FFF;
	float:left;
	text-align:center;
	height:80px;
	border-radius:100px;
	width:80px;
	margin-left:43px;
	display:flex;
	align-items:center;
	justify-content:center;
	line-height:1.3em;
	letter-spacing:0.1em;
}
#kanko .modal_head p{background:#1F9A5C;}
#joho .modal_head p{background:#00A4C5;}
#anime .modal_head p{background:#E07A0E;}

.modal_column{
	display:flex;
	margin:46px 0 34px;
}
.modal_column > div{
	width:47.5%;
	margin-right:5%;
}
.modal_column > div:nth-child(2n){
	margin-right:0;
}
.modal_column > div img{
	display:block;
	width:100%;
	height:auto;
	margin-top:7px;
}

.curriculum_p_pc{
	display:table;
	margin:auto;
	background:url(/img/pre/icon_mouse.svg) no-repeat left center;
	font-size:80%;
	padding:10px 0 12px 62px;
}
.curriculum_p_smp{display:none;}

.curriculum_head{
	display:block;
	max-width:721px;
	width:100%;
	height:auto;
	margin-top:24px;
}

.curriculum_box{
	display:flex;
	width:100%;
}
.curriculum_box > div > img{
	height:628px !important;
	width:auto !important;
	max-width:none !important;
}
.dragscroll{
	overflow:auto;
	cursor:w-resize;
	position:relative;
	padding-bottom:1px;
}
.dragscroll:active{
	cursor:w-resize;
}

.small_p{
	font-size:93.3%;
}

.modal_close_p{
	position:absolute;
	top:-38px;
	right:0;
	
}
.modal-close{
	color:#FFF;
	text-decoration:none;
	cursor:pointer;
	background:url(/img/pre/icon_close_white.svg) no-repeat left center / 14px 14px;
	font-weight:bold;
	padding:0 0 2px 19px;
}

section a.curriculum_btn[target="_blank"]{
	background:url(/img/pre/popup_red.svg) no-repeat right 15px center;
	display:flex;
	box-sizing:border-box;
	border:1px solid #BBB;
	color:#333;
	text-decoration:none;
	font-size:80%;
	align-items:center;
	line-height:1em;
	width:209px;
	height:40px;
	border-radius:40px;
	transition:border-color 0.3s;
	padding:0 25px 0 17px;
	margin:20px 0 34px;
}
section a.curriculum_btn[target="_blank"]:hover{
	border-color:#E50012;
	text-decoration:none;
}

.about_box{
	margin:11px auto 0;
	max-width:800px;
	font-size:93.3%;
}

.about_box strong{
	font-size:114.3%;
}

.color_h5{
	background:#C272A4;
	color:#FFF;
	position:relative;
	font-weight:bold;
	margin:23px 0 20px;
	padding:6px 25px 7px;
}
.color_h5::before{
	display:block;
	content:"";
	background:#FFF;
	width:12px;
	height:12px;
	position:absolute;
	left:10px;
	top:13px;
	border-radius:20px;
}

.about_list{
	display:flex;
}
.about_list li{
	width:31.25%;
	margin-right:3.125%;
	border-top:2px solid #BF6BA0;
	border-bottom:2px solid #BF6BA0;
	font-size:114.3%;
	font-weight:bold;
	color:#BE6A9F;
	text-align:center;
	padding:10px 0;
	letter-spacing:0;
}
.about_list li:nth-child(3n){
	margin-right:0;
}
.color{
	color:#BF6B9F;
	font-weight:bold;
	text-align:right;
}

.border_box{
	border:#E7C9DC 2px solid;
	margin:10px 0 36px;
	padding:24px 26px 32px;
}
.border_box h5{
	font-weight:bold;
	color:#BE6A9F;
	position:relative;
	padding:0 0 0 14px;
}
.border_box h5::before{
	display:block;
	content:"";
	position:absolute;
	width:0;
	height:0;
	border-style:solid;
	border-width:6.5px 0 6.5px 11px;
	border-color:transparent transparent transparent #BE6A9F;
	left:0;
	top:8px;
}
.border_box ul{
	list-style:disc;
	padding-left:18px;
}


/* 各カリキュラムカラー*/
#kanko .color_h5{
	background:#1F9A5C;
}
#kanko .about_list li{
	border-color:#1F9A5C;
	color:#1F9A5C;	
}
#kanko .color{
	color:#1F9A5C;
}
#kanko .border_box{
	border-color:#BBE1CE;
}
#kanko .border_box h5{
	color:#1F9A5C;
}
#kanko .border_box h5::before{
	border-color:transparent transparent transparent #1F9A5C;
}

#joho .color_h5{
	background:#00A4C5;
}
#joho .about_list li{
	border-color:#00A4C5;
	color:#00A4C5;	
}
#joho .color{
	color:#00A4C5;
}
#joho .border_box{
	border-color:#B2E4ED;
}
#joho .border_box h5{
	color:#00A4C5;
}
#joho .border_box h5::before{
	border-color:transparent transparent transparent #00A4C5;
}

#anime .color_h5{
	background:#E07A0E;
}
#anime .about_list li{
	border-color:#E07A0E;
	color:#E07A0E;	
}
#anime .color{
	color:#E07A0E;
}
#anime .border_box{
	border-color:#F6D7B6;
}
#anime .border_box h5{
	color:#E07A0E;
}
#anime .border_box h5::before{
	border-color:transparent transparent transparent #E07A0E;
}



.txt_right{text-align:right;}

/* js無し */
.nojs header{position:absolute; top:auto !important;}
.nojs #mv::after{display:none;}
.nojs #scroll{display:block;}

.nojs .img_slide::before, .nojs .img_slide::after, .nojs .academics_box_img::before, .nojs .academics_box_img::after{display:none;}
.nojs .txt_slide::after , .nojs .academics_box_txt::after{display:none;}
.nojs #index_campus::before, .nojs #index_campus::after{display:none;}

.fixed{
	position:fixed !important;
	width:100%;
	height:100%;
}

/*-------------------------------------------------------------
	ページに関する指定(tab)
-------------------------------------------------------------*/
@media screen and (min-width: 768px) and (max-width: 1140px) {
#page_area h2{
	padding:0 0 0 40px;
}
#page_area h2::before{
	left:0;
}

}
@media screen and (min-width: 768px) and (max-width: 1080px) {

/* ヘッダー */
.header_smaller #logo > h1 > a ,
#page_haeder #logo > h1 > a{
	background-size:290px 42px;
	width:290px;
	height:42px;
}



/* フッター */
#footer_t ul{
	flex-wrap:wrap;
}
#footer_t ul li{
	width:50%;
	box-sizing:border-box;
	margin-bottom:10px;
}
#footer_t ul li:nth-child(2){
	border-right:1px dotted #FFF;
}
#footer_t ul li:nth-last-child(-n+2){
	margin-bottom:0;
}

/* トップページ */

#mv_catch h1 img{width:620px;}
#mv_catch > p img{width:500px;}

.wrap_1000{
	width:auto;
	padding:0 20px;
}

#about_txt ol li{
	line-height:1.6em;
}

.academics_box_img{
	width:630px;
}

#campus_h2{
	width:auto;
}
#campus_txt ul li div{
	padding:50px 20px 20px;
	min-height:280px;
}
#campus_txt ul li h3{
	font-size:133.3%;
}


}


@media screen and (min-width: 768px) and (max-width: 1040px) {

#modal-content{
	width:calc(100% - 40px);
	height:calc(100% - 120px);
	top:60px !important;
}
#modal-content2{
	width:calc(100% - 40px);
	height:570px;
}
#modal_wrap2 p{
	width:600px;
}

.modal-content{
	width:calc(100% - 40px);
	height:calc(100% - 120px);
	top: 60px !important;
}

.tab_br{display:inline;}

}
@media screen and (min-width: 768px) and (max-width: 1024px) {

.curriculum_p_pc{display:none;}
.curriculum_p_smp{
	display:table;
	margin:auto;
	background:url(/img/pre/icon_table.svg) no-repeat left center;
	font-size:80%;
	padding:10px 0 12px 62px;

}

}
@media screen and (min-width: 768px) and (max-width: 940px) {
.header_smaller #logo, #page_haeder #logo{
	margin:9px 0 0 5px;
}
.header_smaller #logo > h1 > a, #page_haeder #logo > h1 > a{
	font-size:80%;
}
.header_smaller #logo > h1 > a > div#middle_logo > img, #page_haeder #logo > h1 > a > div#middle_logo > img{
	height:35px;
	width:210px;
}
.header_smaller #logo > h1 > a > div#middle_logo > span, #page_haeder #logo > h1 > a > div#middle_logo > span{
	width:88px;
	height:35px;
	margin-left:15px;
}
}
@media screen and (min-width: 768px) and (max-width: 890px) {
.pdf_btn{
	height:80px;
	flex-wrap:wrap;
	padding:10px 0 12px;
}
.pdf_btn > span:first-child{
	width:100%;
	margin-right:0;
}

}
@media screen and (min-width: 768px) and (max-width: 801px) {

.opencamput_wrap{width:auto;}

}

@media screen and (max-width: 960px) {
	
#header_wrap{
	padding:30px 40px 0;
}
#logo{
	margin:4px 0 0 5px;
}
#logo > h1 > a, #logo > h1 > a > img{
	width:171px;
}

#toggle{
	display:block;
	margin:7px 5px 0 0;
	transition:all 0.3s;
}
#toggle > a{
	display:block;
	font-size:0;
	text-decoration:none;
	height:22px;
	width:25px;
	position:relative;
}
#toggle > a::before,
#toggle > a::after,
#toggle > a > span{
	display:block;
	content:"";
	background:#FFF;
	width:25px;
	height:2px;
	position:absolute;
	transition:all 0.3s;
}
#toggle > a::before{top:0;}
#toggle > a > span{top:10px;}
#toggle > a::after{bottom:0;}

#toggle > a.open::before{
  -webkit-transform: translateY(10px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
}
#toggle > a.open > span{
  opacity: 0;
}
#toggle > a.open::after{
  -webkit-transform: translateY(-10px) rotate(45deg);
  transform: translateY(-10px) rotate(45deg);
}
#menu_wrap{
	position:absolute;
	top:80px;
	left:0;
	background:#FFF;
	width:100%;
	overflow:hidden;
	display:none;
	box-sizing:border-box;
	padding:20px;
	box-shadow:0 10px 10px 0 rgba(0,0,0,0.1);
	border-top:1px solid #DDD;
	transition:top .3s;
}
#menu > #menu_wrap > ul{
	float:none;
	border-bottom:1px dotted #333;
	padding-bottom:23px;
}
#menu > #menu_wrap > ul > li{
	/*float:none;*/
	margin-right:2%;
	margin-left:0;
	width:49%;
}
#menu > #menu_wrap > ul > li:last-child{margin-right:0;}
#menu > #menu_wrap > ul > li.head_bnr{
	margin:0 0 15px;
	width:100%;
}
#menu > #menu_wrap > ul > li.head_bnr > a{
	border:2px solid #EB5C02;
	height:50px;
	width:100%;
	box-sizing:border-box;
	background:url(/img/pre/bnr_nsg_2.png) no-repeat center center;
}
#menu > #menu_wrap > ul > li.head_bnr > a > img{
	display:none;
}
#menu > #menu_wrap > ul > li.head_btn > a{
	transition:all 0.3s;
	width:100% !important;
	border-color:#333;
	box-sizing:border-box;
	color:#333;
	height:50px;
}
.head_btn span{
	margin-top:1px;
}

#lang_wrap{
	float:none;
	margin:0;
}
#lang_wrap > a{
	display:none;
}
#lang_box{
	position:static;
	display:block;
	background:none;
	color:#333;
	padding:12px 0 0;
}
#lang_box::before{
	display:none;
}

#lang_box > h2{
	margin-bottom:4px;
}

.white #header_wrap{
	padding:30px 40px 0;
}


/* 縮小ヘッダー */
.white{
	height:80px;
	background:#FFF;
}
.header_smaller , #page_haeder{
	height:60px;
	background:#FFF;
}
.header_smaller #header_wrap , #page_haeder #header_wrap{
	padding:13px 15px 15px;
}
.header_smaller #logo , .white #logo , #page_haeder #logo{
	margin:4px 0 0 5px;
}
.header_smaller #logo > h1 > a , .white #logo > h1 > a , #page_haeder #logo > h1 > a{
	display:block;
	width:auto;
}

.header_smaller #logo > h1 > a > div#middle_logo > img, #page_haeder #logo > h1 > a > div#middle_logo > img{
	width:171px;
	height:auto;
}
.header_smaller #logo > h1 > a > div#middle_logo > span, #page_haeder #logo > h1 > a > div#middle_logo > span{
	width:73px;
	height:28px;
	margin-left:15px;
	font-size:83.3%;
}
.header_smaller #logo > h1 > a > div#middle_logo > span::before, .header_smaller #logo > h1 > a > div#middle_logo > span::after, #page_haeder #logo > h1 > a > div#middle_logo > span::before, #page_haeder #logo > h1 > a > div#middle_logo > span::after{
	width:7px;
}
.header_smaller #toggle , .white #toggle , #page_haeder #toggle{
	margin:7px 5px 0 0;
}
.header_smaller #toggle > a::before,
.header_smaller #toggle > a::after,
.header_smaller #toggle > a > span,
.white #toggle > a::before,
.white #toggle > a::after,
.white #toggle > a > span,
#page_haeder #toggle > a::before,
#page_haeder #toggle > a::after,
#page_haeder #toggle > a > span{
	background:#333;
}
.header_smaller #menu > #menu_wrap > ul > li.head_btn > a , .white #menu > #menu_wrap > ul > li.head_btn > a , #page_haeder #menu > #menu_wrap > ul > li.head_btn > a{
	color:#333 !important;
}
.header_smaller #menu > #menu_wrap > ul > li.head_btn > a span , .white #menu > #menu_wrap > ul > li.head_btn > a span , #page_haeder #menu > #menu_wrap > ul > li.head_btn > a span{
	background:url(/img/pre/popup_black.svg) no-repeat left top 4px;
}
.header_smaller #menu_wrap{
	top:60px;
}

}

/*--------------------------------------------------------------------------------------------------------------------
	ページに関する指定(SP)
--------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 767px) {
input[type="button"],input[type="submit"] {
	-webkit-appearance: none;
}
body {
    -webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
input,
textarea,
select {
    font-size: 16px;
}
body {
	background: #fff;
	width: auto;
	font-size:75%;
}
img {
	width: auto;
	height: auto !important;
	max-width: 100%;
}

section a[target="_blank"]{
	background-position:left top 4px;
	padding-left:16px;
}

#nojs {
	width: auto;
	background: #fff;
	color: #f00;
	padding: 10px;
	border: 5px solid #F00;
	text-align: center;
	margin: 10px auto;
}

/* ヘッダー */
#header_wrap{
	padding:13px 15px 0;
}
#logo{
	margin:4px 0 0 5px;
}
#logo > h1 > a, #logo > h1 > a > img{
	width:171px;
	font-size:150%;
}

#toggle{
	display:block;
	margin:7px 5px 0 0;
	transition:all 0.3s;
}
#toggle > a{
	display:block;
	font-size:0;
	text-decoration:none;
	height:22px;
	width:25px;
	position:relative;
}
#toggle > a::before,
#toggle > a::after,
#toggle > a > span{
	display:block;
	content:"";
	background:#FFF;
	width:25px;
	height:2px;
	position:absolute;
	transition:all 0.3s;
}
#toggle > a::before{top:0;}
#toggle > a > span{top:10px;}
#toggle > a::after{bottom:0;}

#toggle > a.open::before{
  -webkit-transform: translateY(10px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
}
#toggle > a.open > span{
  opacity: 0;
}
#toggle > a.open::after{
  -webkit-transform: translateY(-10px) rotate(45deg);
  transform: translateY(-10px) rotate(45deg);
}
#menu_wrap{
	position:absolute;
	top:60px;
	left:0;
	background:#FFF;
	width:100%;
	overflow:hidden;
	display:none;
	box-sizing:border-box;
	padding:20px;
	box-shadow:0 10px 10px 0 rgba(0,0,0,0.1);
	border-top:1px solid #DDD;
}
#menu > #menu_wrap > ul{
	float:none;
	border-bottom:1px dotted #333;
	padding-bottom:23px;
}
#menu > #menu_wrap > ul > li{
	/*float:none;*/
	margin-left:0;
	width:49%;
}
#menu > #menu_wrap > ul > li.head_bnr{
	margin-right:2%;
}
#menu > #menu_wrap > ul > li.head_bnr > a{
	border:2px solid #EB5C02;
	height:50px;
	width:100%;
	box-sizing:border-box;
	background:url(/img/pre/bnr_nsg_2.png) no-repeat center center;
}
#menu > #menu_wrap > ul > li.head_bnr > a > img{
	display:none;
}
#menu > #menu_wrap > ul > li.head_btn > a{
	transition:all 0.3s;
	width:100%;
	border-color:#333;
	box-sizing:border-box;
	color:#333;
	font-size:100%;
	height:50px;
}
.head_btn span{
	margin-top:1px;
}

#lang_wrap{
	float:none;
	margin:0;
}
#lang_wrap > a{
	display:none;
}
#lang_box{
	position:static;
	display:block;
	background:none;
	color:#333;
	padding:12px 0 0;
}
#lang_box::before{
	display:none;
}

#lang_box > h2{
	font-size:100%;
	margin-bottom:4px;
}

/* 縮小ヘッダー */
.header_smaller , .white , #page_haeder{
	height:60px;
	background:#FFF;
}
.header_smaller #header_wrap , .white #header_wrap, #page_haeder #header_wrap{
	padding:13px 15px 15px;
}
.header_smaller #logo , .white #logo , #page_haeder #logo{
	margin:4px 0 0 5px;
}
.header_smaller #logo > h1 > a , .white #logo > h1 > a , #page_haeder #logo > h1 > a{
	display:block;
	font-size:83.3%;
	width:auto;
}

.header_smaller #logo > h1 > a > div#middle_logo > img, #page_haeder #logo > h1 > a > div#middle_logo > img{
	width:171px;
	height:auto;
}
.header_smaller #logo > h1 > a > div#middle_logo > span, #page_haeder #logo > h1 > a > div#middle_logo > span{
	width:73px;
	height:28px;
	margin-left:15px;
}
.header_smaller #logo > h1 > a > div#middle_logo > span::before, .header_smaller #logo > h1 > a > div#middle_logo > span::after, #page_haeder #logo > h1 > a > div#middle_logo > span::before, #page_haeder #logo > h1 > a > div#middle_logo > span::after{
	width:7px;
}
.header_smaller #toggle , .white #toggle , #page_haeder #toggle{
	margin:7px 5px 0 0;
}
.header_smaller #toggle > a::before,
.header_smaller #toggle > a::after,
.header_smaller #toggle > a > span,
.white #toggle > a::before,
.white #toggle > a::after,
.white #toggle > a > span,
#page_haeder #toggle > a::before,
#page_haeder #toggle > a::after,
#page_haeder #toggle > a > span{
	background:#333;
}
.header_smaller #menu > #menu_wrap > ul > li.head_btn > a , .white #menu > #menu_wrap > ul > li.head_btn > a , #page_haeder #menu > #menu_wrap > ul > li.head_btn > a{
	color:#333 !important;
}
.header_smaller #menu > #menu_wrap > ul > li.head_btn > a span , .white #menu > #menu_wrap > ul > li.head_btn > a span , #page_haeder #menu > #menu_wrap > ul > li.head_btn > a span{
	background:url(/img/pre/popup_black.svg) no-repeat left top 7px;
	padding-top:5px;
	padding-bottom:5px;
}
#menu > #menu_wrap > ul > li.head_btn.head_oc > a span{
	background-position:top 13px left !important;
}

/* フッター */
#return a{
	background-size:22px 17px;
	height:17px;
	width:22px;
}

footer{
	padding:0 5px 5px;
}
#footer_t{
	padding:28px 0 27px;
}
#footer_t ul{
	flex-wrap:wrap;
}
#footer_t ul li{
	width:100%;
	border-left:none;
	border-top:1px dotted rgba(255,255,255,0.6);
	padding:11px 0 8px;
}
#footer_t ul li:last-child{
	border-right:none;
	border-bottom:1px dotted rgba(255,255,255,0.6);
}
#footer_t ul li a{
	font-size:100%;
}

#footer_m{
	font-size:100%;
	padding:16px 0 17px;
}
address{
	float:none;
}
.smp_br{display:inline;}
#footer_m .wrap_1000 div{
	float:none;
	margin-top:16px;
}
#footer_m .wrap_1000 div a{
	margin:auto;
	width:178px;
	height:43px;
	font-size:108.3%;
	line-height:43px;
}
#footer_m .wrap_1000 div a span{
	background-size:14px 11px;
	padding-left:19px;
}

#footer_b{
	font-size:83.3%;
	padding:10px 0;
}


/* トップ */
#index_area{
	padding:0 5px;
}
#mv{
	padding:5px 0;
}
#mv_catch{
	height:190px;
	top:12px;
}
#mv_catch > p img{width:270px;}
#mv_catch h1 img{
	width:270px;
	margin-top:15px;
}
#mv_catch > p{
	font-size:116.6%;
	font-weight:normal;
	margin-top:11px;
}
.mv_p1{
	font-size:92.8%;
}
.mv_p2{
	font-size:78.6%;
	margin-bottom:16px;
}
#scroll{
	bottom:5px;
	font-size:83.3%;
	height:58px;
}
#scroll_wrap , #scroll_wrap::before{
	height:30px;
}

.pdf_btn{
	font-size:100%;
	text-align:center;
	background-size:15px 15px;
	background-position:right 10px center;
	padding:10px 20px;
	height:auto;
	flex-wrap:wrap;
}
.pdf_btn > span{
	width:100%;
}
.pdf_btn > span:first-child{
	margin-right:0;
}

#index_area h2{
	font-size:333.3%;
}
#index_area h2 span{
	font-size:32.5%;
	margin-top:7px;
}
.wrap_1000{
	padding:0 15px;
	width:auto;
}

#index_opencampus{
	margin:5px 0;
	padding:35px 20px 20px;
}
#index_area #index_opencampus h2{
	font-size:183.3%;
	letter-spacing:0;
}
#index_area #index_opencampus h2 span{
	font-size:59.1%;
	margin-top:20px;
}
.opencamput_wrap{
	width:auto;
	margin:30px auto 0;
}
.opencamput_wrap p{
	margin-bottom:10px;
}
.opencamput_wrap strong{
	font-size:116.7%;
}

.oc_tel{font-size:108.3%; margin:15px 0 0; padding:15px 0 16px;}
.oc_column{display:block;}
.oc_date{width:auto;}
.opencamput_wrap .oc_date p{margin:0 0 4px;}

.oc_form{
	margin-top:8px;
}

#index_message{
	margin:5px 0 0;
}
#message_head{
	height:150px;
}
#message_h2{
	width:auto;
	margin:-15px auto 0;
}
#message_txt{
	font-size:100%;
	width:auto;
	margin:5px auto 40px;
	padding:0 15px;
}
#message_txt p{
	text-align:left;
}
#message_txt p strong{
	display:block;
	font-size:133.3%;
	text-align:center;
}
#message_txt p br{display:none;}

#message_seishin{
	padding:35px 15px;
}
#message_seishin .txt_slide{
	width:auto;
}
#message_seishin_box{
	width:auto;
	padding:35px 0 40px;
}
#message_seishin_box img{
	width:80px;
	margin:0 auto 20px;
}
#message_seishin_box img#seishin_logo{
	width:60px;
}
#message_seishin_box h3{
	font-size:200%;
}

/* 精神モーダル */
#modal-content2{
	width:calc(100% - 20px);
	height:calc(100% - 110px);
	top:55px !important;
	max-height:none;
}
#modal_wrap2 p{
	width:auto;
	padding:0 20px;
}
.font_mincho{
	font-size:133.3%;
}

#symbol{
	margin:30px 0 0;
}
#symbol > h3{
	width:100%;
}
#symbol > h3 > a{
	font-size:108.3%;
	padding:0 30px 0 70px;
	height:60px;
	line-height:58px;
	background:url(/img/pre/symbol.png) no-repeat left 20px center / 40px 37px, url(/img/pre/icon_plus.svg) no-repeat scroll right 20px center / 20px 20px;
}

/* モーダル */
#modal-content{
	width:calc(100% - 20px);
	height:calc(100% - 110px);
	top:55px !important;
}

#design h4{
	font-size:108.3%;
}
#design_2column{
	font-size:100%;
	display:block;
}
#design_2column > div{
	display:block;
	width:auto;
}
#design_2column > div:first-child{
	padding:0;
}
#design_2column img{
	display:block;
	width:160px;
	height:auto;
	margin:auto;
}
#message_txt #design p strong{
	font-size:133.3%;
}

#color{
	margin:30px 20px;
	font-size:100%;
}
#color > h4{
	font-size:108.3%;
}
#message_txt #color p strong{
	font-size:133.3%;
}
#color_circle{
	width:17px;
	height:17px;
}


/* モーダルここまで */


#index_about{
	margin:5px 0 0;
	padding:0 0 20px;
}
#about_head{
	height:150px;
}
#about_h2{
	margin:-16px 0 0;
}
#index_area #about_h2 p{
	margin:13px 0 0;
}
#about_cap{
	font-size:83.3%;
}

#about_txt ol{
	margin:25px 0 0;
	padding:0;
	font-size:108.3%;
}

#about_txt ol li{
	line-height:2.37em;
	padding:0 0 0 48px;
	margin:0 0 16px;
}
#about_txt ol li .about_no{
	font-size:307.7%;
	margin:0;
	top:-3px;
	left:7px;
}
#about_txt ol li strong{
	font-size:123.1%;
}


#index_academics{
	padding-bottom:47px;
}
#academics_head{
	height:150px;
}
#academics_h2{
	margin:-16px -5px 0 0;
}
#academics_h2 p{
	margin:13px 0 0;
}
#academics_txt{
	margin:26px 0 0;
}

.academics_box{
	padding-top:115px;
	margin-bottom:32px;
}
.academics_box_img{
	height:133px;
	width:100%;
}
.academics_box_img div{display:none;}
.academics_box_txt{
	padding:0 10px;
}
.academics_box_txt{
	width:auto;
	padding:0 10px;
}
.academics_box_txt::before{display:none;}
.academics_box_txt > div{
	padding:20px 19px 22px;
	height:auto;
	min-height:0;
}
#academics_txt_1.academics_box_txt > div{border-top:4px solid #C272A4;}
#academics_txt_2.academics_box_txt > div{border-top:4px solid #1F9A5C;}
#academics_txt_3.academics_box_txt > div{border-top:4px solid #00A4C5;}
#academics_txt_4.academics_box_txt > div{border-top:4px solid #E07A0E;}

.academics_box_txt h3{
	font-size:108.3%;
	margin-bottom:8px;
}
.academics_box_txt h3 br{display:none;}
.img_r .academics_box_txt{
	margin:auto;
}

.academics_box_txt p.teiin{
	position:static;
	display:inline-block;
	font-size:100%;
	height:26px;
	line-height:26px;
	margin-bottom:7px;
}

#index_campus{
	margin:5px 0 0;
	padding:35px 0 29px;
}
#campus_h2{
	width:auto;
	padding:0 20px;
}
#campus_h2 p{
	margin:10px 0 0;
}
#campus_cap{
	font-size:83.3%;
}
#campus_txt ul{
	flex-wrap:wrap;
	margin:37px 0 0;
}
#campus_txt ul li{
	margin-right:0;
	width:100%;
	padding-top:0;
	margin-bottom:38px;
}
#campus_txt ul li div::before{
	height:35px;
	width:32px;
	top:-18px;
}
#campus_txt ul li#shichikuyama div::before , #campus_txt ul li#yoneyama div::before , #campus_txt ul li#furumachi div::before{
	background-size:32px 35px;
}
#campus_txt ul li div{
	padding:36px 27px 20px;
	min-height:180px;
}
#campus_txt ul li h3{
	font-size:133.3%;
}
#campus_txt ul li p{
	font-size:108.3%;
}
.address{
	font-size:92.3%;
}
#shichikuyama br{display:none;}

#index_cta{
	margin:5px 0 0;
	padding:67px 0 69px;
}
#index_cta p{
	font-size:150%;
}
#index_cta p a{
	width:234px;
	font-size:100%;
	margin-top:33px;
	height:48px;
}
#index_cta p a span{
	background:url(/img/pre/popup.svg) no-repeat left top 10px / 11px 11px;
	padding-left:17px;
}
#index_cta p a:hover span{
	background:url(/img/pre/popup_black.svg) no-repeat left top 10px / 11px 11px;
}
.small_txt{
	margin-top:-13px;
}

#sns{
	display:block;
	margin:27px auto 22px;
	text-align:center;
}
#sns > *{
	display:block;
}
#sns > h2{
	padding-right:0;
	margin-bottom:24px;
}
#sns > ul{
	padding-left:0;
	display:inline-block;
}
#sns > ul > li{
	margin-right:26px;
}
#sns a, #sns a img{
	height:42px;
	width:42px;
}

/* 下層 */
#page_area{
	padding:60px 5px 0;
}

#h1_bg{
	height:120px;
	margin:0 0 50px;
}
#h1_bg h1{
	font-size:150%;
}

#page_area h2{
	padding:0 0 0 16px;
	margin:50px 0 20px;
}
#page_area h2::before{
	width:10px;
	height:2px;
	left:0;
	top:10px;
}
#page_area h3{
	font-size:116.7%;
	margin:30px 0 19px;
	padding-bottom:6px;
}
#page_area h4{
	font-size:108.3%;
}

#page_area ol{
	padding-left:1.5em;
}


#page_area #pankuzu ol{
	font-size:83.3%;
}


/* カリキュラムモーダル */
.modal-open{
	width:220px;
}

.curriculum_p_pc{display:none;}
.curriculum_p_smp{
	display:table;
	margin:auto;
	background:url(/img/pre/icon_table.svg) no-repeat left center;
	font-size:80%;
	padding:10px 0 12px 45px;

}
.modal-content{
	width:calc(100% - 20px);
	height:calc(100% - 110px);
	top:55px !important;
}
.modal_content_area{
	padding:0 20px;
}
.modal_content_wrap h4{
	font-size:108.3%;
}
section a.curriculum_btn[target="_blank"]{
	margin:20px 0;
}

.color_h5::before{
	width:10px;
	height:10px;
	left:10px;
	top:12px;

}
.modal_content_wrap h4{
	letter-spacing:0;
}
.modal_content_wrap h4 span{
	font-size:148.5%;
	padding:0 0 10px;
	margin-bottom:8px;
	letter-spacing:0;
}

.modal_head p{
	height:70px;
	width:70px;
	margin-left:15px;
}

.modal_column{
	display:block;
	margin:25px 0 30px
}
.modal_column > div{
	width:100%;
	margin:0;
}

.about_list{
	display:block;
}
.about_list li{
	width:100%;
	margin:0 0 15px;
}
.about_list li:nth-child(3n){
	margin-bottom:0;
}

.border_box{
	padding:15px;
}
.border_box h5::before{
	border-width:5.5px 0 5.5px 8px;
	top:5px;
}
.border_box ul{
	margin:0 0 15px;
}

}

@media screen and (max-width: 370px) {
.header_smaller #logo > h1 > a > div#middle_logo > span, #page_haeder #logo > h1 > a > div#middle_logo > span{
	margin-left:10px;
}
.header_smaller #logo > h1 > a > div#middle_logo > img, #page_haeder #logo > h1 > a > div#middle_logo > img{
	width:155px;
	margin-top:3px;
}
}

@media print{
header{position:absolute;}
#mv::after{display:none;}
#scroll{display:block;}
.img_slide::before, .img_slide::after, .academics_box_img::before, .academics_box_img::after{display:none;}
.txt_slide::after , .academics_box_txt::after{display:none;}
#index_campus::before, #index_campus::after{display:none;}

}
