@charset "UTF-8";
/*
#header 200
foot-ao 200
headbtmrightmenu 201
mimi 10001
topslider 100-
modal_block 12000
#lean_overlay 11999
open campus img 110, 111
*/

@font-face {
	font-family: 'webfontRegular';
	src: url("oswald-regular-webfont.eot");
	src: url("oswald-regular-webfont.eot?#iefix") format("embedded-opentype"), url("oswald-regular-webfont.woff") format("woff"), url("oswald-regular-webfont.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}

html {
	width: 100%;
	height: 100%;
	overflow: auto;
	font-size: 62.5%;
}

body {
	font-family: '-apple-system', 'BlinkMacSystemFont','Yu Gothic Medium', '游ゴシック Medium', YuGothic, 'Hiragino Sans','Hiragino Kaku Gothic ProN', '游ゴシック体',"segoe ui",'メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	font-size: 1.4rem;
	line-height: 1.6;
	position: relative;
	overflow: hidden;
	min-width: 1100px;
}


img {
	vertical-align: bottom;
}

.ctr {
	text-align: center;
}

.brsp {
	display: none;
}

.brpc {
	display: block;
}

.clearfix::after {
	content: "";
	clear: both;
	display: table;
}

.cautionclr {
	color: #f00;
}

.is-fixed {
	position: fixed !important;
	top: 0;
	left: 0;
	z-index: 200;
	width: 100%;
	background: #fff;
}

a {
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}


#header {
	background: #fff;
}

#header .headtop {
	padding: 12px 0;
	width: 100%;
}

#header .headtop .inner {
	margin: 0 auto;
	padding: 0 20px;
	font-size: 1.2rem;
}

#header .headtop .headtoprightmenu {
	float: right;
}
#header .headspmenu {
	display: none;
}
#header .headtop h1 {
	font-weight: normal;
	padding: 0;
	margin: 0;
	float: left;
}
#header .headtop ul {
	padding: 0;
	margin: 0;
}
#header .headtop ul li {
	float: left;
	margin-left: 30px;
}
#header .headbtm {
	position:relative;
	width: 100%;
	clear: both;
	box-shadow: 0px 3px 20px -10px rgba(0,0,0,0.6);
}
#header .headbtm .inner {
	padding-left: 20px;
	display: flex;
	justify-content: space-between;
}
#header .headbtm #logo {
	padding-top: 25px;
}
#header .headbtm .headbtmrightmenu>ul {
	padding: 0;
	margin: 0;
	font-size: 1.4rem;
	font-weight: bold;
	display: flex;
}
#header .headbtm .headbtmrightmenu>ul li a {
	display: block;
	list-style: none;
	padding: 30px 15px 0;
	height: 85px;
	box-sizing: border-box;
}
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(4) a {
	padding-right: 40px;
}
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(2) a,
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(3) a {
	padding: 0;
}
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(2) a img,
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(3) a img {
	width: 85px;
}

#header .headbtm .headbtmrightmenu>ul li:last-child {
	padding: 0;
	margin: 0;
	width: 85px;
}

.hamburger {
	width: 85px;
	height: 85px;
	background: #000;
	color: #fff;
	font-size: 1rem;
	font-weight: normal;
	padding: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	z-index: 999;
	text-align: center;
}
.hamburger:hover {
	cursor: pointer;
}
.hamburger span:nth-of-type(1),
.hamburger span:nth-of-type(2),
.hamburger span:nth-of-type(3) {
	background: #fff;
	width: 38px;
	height: 1px;
	position: absolute;
	transition: 0.3s ease-out;
}
.hamburger span:nth-of-type(4),
.hamburger span:nth-of-type(5) {
	position: absolute;
}

.hamburger span:nth-of-type(1) {
	top: 20px;
}
.hamburger span:nth-of-type(2) {
	top: 30px;
}
.hamburger span:nth-of-type(3) {
	top: 40px;
}
.hamburger span:nth-of-type(4) {
	bottom: 12px;
}
.hamburger span:nth-of-type(5) {
	bottom: 12px;
	opacity: 0;
}
/* ハンバーガーメニューにactiveクラスがついたときのスタイル */
.hamburger.active span:nth-of-type(1) {
	transform: translateY(10px) rotate(-45deg);
	transition: 0.3s ease-out;
}
.hamburger.active span:nth-of-type(2) {
	opacity: 0;
}
.hamburger.active span:nth-of-type(3) {
	transform: translateY(-10px) rotate(45deg);
	transition: 0.3s ease-out;
}
.hamburger.active span:nth-of-type(4) {
	opacity: 0;
}
.hamburger.active span:nth-of-type(5) {
	opacity: 1;
}



#header .headbtm #global001Contents, #header .headbtm #global002Contents,
#header .headbtm #global003Contents, #header .headbtm #global004Contents,
#header .headbtm #global005Contents, #header .headbtm #global006Contents {
	position: absolute;
	top: 85px;
	left: 0;
	width: 100%;
	background: rgba(26,26,26,.8);
	display: none;
	z-index: 200;
}
.headbtmrightmenu ul .megam.active {
	background: #ececec;
}
#header .headbtm #global006Contents.open {
	display: block;
}

#header .headbtm #global001Contents .inner, #header .headbtm #global002Contents .inner, #header .headbtm #global003Contents .inner,
#header .headbtm #global004Contents .inner, #header .headbtm #global005Contents .inner, #header .headbtm #global006Contents .inner {
	width: 1100px;
	margin: 0 auto;
	padding-left: 0;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}

#global001Contents .main, #global002Contents .main, #global003Contents .main,
#global004Contents .main, #global005Contents .main, #global006Contents .main {
	width: 500px;
	display: flex;
	flex-wrap: wrap;
}

#global001Contents .main li, #global002Contents .main li, #global003Contents .main li,
#global004Contents .main li, #global005Contents .main li, #global006Contents .main li {
	width: 250px;
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
}
#global001Contents .main li a, #global002Contents .main li a, #global003Contents .main li a,
#global004Contents .main li a, #global005Contents .main li a, #global006Contents .main li a {
	display: block;
	width: 250px;
	height: 207px;
	padding-top: 100px;
	box-sizing: border-box;
	color: #000;
}
#global001Contents .main li:first-child a, #global002Contents .main li:first-child a, #global003Contents .main li:first-child a,
#global004Contents .main li:first-child a, #global005Contents .main li:first-child a, #global006Contents .main li:first-child a {
	background: url(../../images/common/megabg01.jpg) no-repeat;
	height: 207px;
}
#global001Contents .main li:nth-child(2) a, #global002Contents .main li:nth-child(2) a, #global003Contents .main li:nth-child(2) a,
#global004Contents .main li:nth-child(2) a, #global005Contents .main li:nth-child(2) a, #global006Contents .main li:nth-child(2) a {
	background: url(../../images/common/megabg02.jpg) no-repeat;
	height: 207px;
}
#global001Contents .main li:nth-child(3) a, #global002Contents .main li:nth-child(3) a, #global003Contents .main li:nth-child(3) a,
#global004Contents .main li:nth-child(3) a, #global005Contents .main li:nth-child(3) a, #global006Contents .main li:nth-child(3) a {
	background: url(../../images/common/megabg03.jpg) no-repeat;
	height: 207px;
}
#global001Contents .main li:last-child a, #global002Contents .main li:last-child a, #global003Contents .main li:last-child a,
#global004Contents .main li:last-child a, #global005Contents .main li:last-child a, #global006Contents .main li:last-child a {
	background: url(../../images/common/megabg04.jpg) no-repeat;
	height: 207px;
}


#global001Contents .sub, #global004Contents .sub, #global005Contents .sub {
	width: 550px;
	margin-left: 50px;
	margin-top: 30px;
	color: #fff;
	display: flex;
	justify-content: flex-start;
	align-content:flex-start;
	flex-wrap: wrap;
}
#global002Contents .sub, #global003Contents .sub {
	width: 550px;
	margin-left: 50px;
	margin-top: 30px;
	color: #fff;
	display: flex;
	justify-content: flex-start;
	align-content:flex-start;
	flex-wrap: wrap;
}
#global006Contents .humbleftmenu {
	width: 550px;
	margin-top: 30px;
	color: #fff;
	display: flex;
	justify-content: flex-start;
	align-content:flex-start;
	flex-wrap: wrap;
}
#global006Contents .humbrightmenu {
	width: 500px;
	margin-top: 30px;
	color: #fff;
	display: flex;
	justify-content: flex-start;
	align-content:flex-start;
	flex-wrap: wrap;
}
#global001Contents .sub li:first-child, #global002Contents .sub li:first-child, #global003Contents .sub li:first-child,
#global004Contents .sub li:first-child, #global005Contents .sub li:first-child, #global006Contents .humbright .humbrightmenu li:first-child {
	font-size: 24px;
	font-weight: bold;
	border-bottom: 1px solid #fff;
	padding-bottom: 8px;
	margin-bottom: 25px;
	width: 100%;
}
#global001Contents .sub li, #global004Contents .sub li, #global005Contents .sub li, #global006Contents .humbleftmenu li {
	margin-bottom: 15px;
	width: 100%;
}
#global002Contents .sub li, #global003Contents .sub li, #global006Contents .humbleftmenu li {
	margin-bottom: 15px;
	width: 50%;
}
#global001Contents .sub a, #global002Contents .sub a, #global003Contents .sub a,
#global004Contents .sub a, #global005Contents .sub a, #global006Contents .humbleftmenu li a {
	color: #fff;
	font-size: 16px;
}
#global006Contents .humbleft {
	width: 550px;
	color: #fff;
	display: flex;
	justify-content: flex-start;
	align-content:flex-start;
	flex-wrap: wrap;
}
#global006Contents .humbright {
	width: 550px;
}
#global006Contents .humbleftmenu {
	margin-bottom: 15px;
	width: 100%;
}
#global006Contents .humbright li {
	margin-bottom: 15px;
	width: 50%;
}
#global006Contents .specialmenu {
	width: 100%;
	margin: 10px auto ;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#global006Contents .specialmenu li {
	width: 88px;
}

#global006Contents .specialmenu li img {
	width: 100%;
}
.experience, .holidays, .weekday_night, .weekday_daytime,
.public_holiday, .online, .limited, .kouni {
	color: #fff;
}
.experience {background: #bcd729;}
.holidays {background: #ff0019;}
.weekday_night {background: #0020f9;}
.weekday_daytime {background: #f2512f;}
.public_holiday {background: #ff0019;}
.online {background: #58b2ff;}
.limited {background: #ffae00;}
.kouni {background: #ff77fa;}








#footersns {
	text-align: center;
	display: flex;
	justify-content: center;
	border-top: 1px solid #000;
}
#footersns li {
	padding: 50px 25px;
}

#footernavi {
	width: 1100px;
	margin: 0 auto;
	padding: 100px 0 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	line-height: 1;
}
#footernavi ul {
	width: 275px;
	padding-bottom: 65px;
}
#footernavi li:first-child {
	font-size: 1.5rem;
	font-weight: bold;
}
#footernavi li {
	font-size: 1.3rem;
	list-style: none;
	padding-bottom: 25px;
}
#footernavi .zokutitle {
	display: block;
	padding-top: 30px;
	font-size: 1.5rem;
	font-weight: bold;
}

#footernavisub {
	background: #b3b3b3;
	padding: 40px 0;
}
#footernavisub ul {
	width: 1100px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}
#footernavisub li {
	display: inline-flex;
	list-style: none;
	font-size: 1.4rem;
	padding: 10px 20px;
}

#groupbox {
	padding: 35px 0;
	text-align: center;
}
#groupbox p {
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 20px;
}
#groupbox ul {
	width: 1100px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
#groupbox li {
	display: inline-flex;
	list-style: none;
	font-size: 1.4rem;
}

#pagetopsp {
	display: none;
}

#footer {
	background: #b3b3b3;
	text-align: center;
	font-size: 1.2rem;
	padding: 10px;
}

#covmessage {
	background: url(../../images/application/mainbg_pc.gif);
	text-align: center;
	padding: 14px 0;
	border-top: 1px solid #000;
}
#covmessage img {
	width: 460px;
}

#indexmenubox {
	padding: 100px 0 120px;
	font-size: 2rem;
	background: #ececec;
}
#indexmenubox .title {
	font-size: 3rem;
	font-weight: bold;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	width: 1100px;
	margin: 0 auto .5em auto;
}
#indexmenubox .indexmenu {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 1100px;
	margin: 0 auto .5em auto;
	padding: 10px 0;
}
.indexmenu::after{
	content:"";
	display: block;
	width: 350px;
}
#indexmenubox .indexmenu span {
	display: block;
	padding: .5em 0;
	width: 350px;
	box-sizing: border-box;
	border-bottom: 1px solid #000;
}
#indexmenubox a {
	color: #000;
}

#zoku {
	margin: 50px auto;
	font-size: 2.2rem;
	padding-bottom: 60px;
}
#zoku .inner {
	width: 1100px;
	margin: 0 auto;
}
#zoku h2 {
	font-size: 3rem;
	margin-bottom: 40px;
}
#zoku ul {
	display: flex;
	justify-content: space-between;
}
#zoku li {
	position: relative;
	width: 350px;
}
#zoku li img {
	width: 100%;
}
#zoku a span {
	position: absolute;
	text-align: center;
	top: 50%;
	left: 50%;
	width: 100%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	font-size: 2.2rem;
	line-height: 1.4;
	letter-spacing: .4rem;
	z-index: 2;
	color: #000;
}
#zoku li a:hover {
	text-decoration: none;
}
#zoku a span em {
	background: rgba(255,255,255,0.4);
}



#caccess h2 {
	font-size: 3rem;
	width: 1100px;
	margin: 0 auto 25px;
}

#caccess .map {
	position: relative;
	width: 100%;
	height: 650px;
}

#caccess .spmap {
	display: none;
}
#caccess p {
	text-align: center;
	font-size: 1.5rem;
	padding: 25px 0;
}

.slidemes {
	display: none;
}

h3#capen {
	font-size: 1.8rem;
	text-align: center;
	padding: 50px 0;
}


.topswiper2 {
	position: relative;
	height: auto;
}
.topswiper2 .swiper-wrapper {
	width: 100%;
	padding-bottom: 100px;
	align-items: stretch !important;
}
.topswiper2 .swiper-slide {
	width: 100%;
	height: auto;
	text-align: center;
	box-sizing: border-box;
}
.topswiper2 .swiper-slide a {
	display: block;
	position: relative;
	background: #ececec;
	border-radius: 10px;
	transition: all .2s ease-in-out;
	overflow: hidden;
	color: #000;
	height: 100%;
}
.topswiper2 .swiper-slide a:hover {
	margin-top: -10px;
	box-shadow: 0 4px 10px 0px #ccc;
	text-decoration: none;
}








/*/////////////////// SP ///////////////////*/
/*/////////////////// SP ///////////////////*/
/*/////////////////// SP ///////////////////*/
/*/////////////////// SP ///////////////////*/
/*/////////////////// SP ///////////////////*/
@media screen and (max-width: 768px) {


html.drawer-fixed,
html.drawer-fixed body {
	height: 100%;
	overflow: hidden;
}


body {
	min-width: 100%;
}

.brsp {
	display: block;
}
.brpc {
	display: none;
}
img {
	width: 100%;
	height: auto;
}


#header .headbtm {
	position: fixed;
	top: 0;
	background: rgba(255,255,255,.5);
	height: 50px;
	z-index: 200;
}

#header .headbtm .inner {
	padding-left: 1%;
	width: 100%;
}
#header .headbtm #logo {
	padding: 2.8889% 0 0 1%;
	width: 46.9333%;
	box-sizing: border-box;
}
#header .headspmenu {
	display: block;
	width: auto;
}

#header .headspmenu .headmenu {
	display: flex;
}
#header .headspmenu .headmenu li:first-child {
	padding-top: 10%;
}
#header .headspmenu .headmenu li:last-child {
	width: 45px;
}

.hamburgersp {
	width: 45px;
	height: 50px;
	color: #000;
	font-size: 1rem;
	font-weight: normal;
	padding: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	z-index: 999;
	text-align: center;
}
.hamburgersp span:nth-of-type(1),
.hamburgersp span:nth-of-type(2),
.hamburgersp span:nth-of-type(3) {
	background: #000;
	width: 20px;
	height: 1px;
	position: absolute;
	transition: 0.3s ease-out;
}

.hamburgersp span:nth-of-type(1) {
	top: 12px;
}
.hamburgersp span:nth-of-type(2) {
	top: 20px;
}
.hamburgersp span:nth-of-type(3) {
	top: 28px;
}
/* ハンバーガーメニューにactiveクラスがついたときのスタイル */
.hamburgersp.active span:nth-of-type(1) {
	transform: translateY(9px) rotate(-45deg);
	transition: 0.3s ease-out;
}
.hamburgersp.active span:nth-of-type(2) {
	opacity: 0;
}
.hamburgersp.active span:nth-of-type(3) {
	transform: translateY(-7px) rotate(45deg);
	transition: 0.3s ease-out;
}

#appmenu {
	position: fixed;
	display: none;
	top: 50px;
	left: 0;
	background: rgba(26,26,26,.8);
	width: 100%;
	height: 100%;
	height: calc(100%-50px);
	font-size: 1.8rem;
	color: #fff;
}
#appmenu.open {
	display: block;
}
#appmenu p {
	position: relative;
}
#appmenu p:after {
	position: absolute;
	right: 0;
	font-family: FontAwesome;
	content: '>';
}
#appmenu p.arrowunder:after {
	position: absolute;
	right: 0;
	font-weight: 400;
	font-family: FontAwesome;
	content: '\f107';
}
#appmenu ul {
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	height: 100%;
}
#appmenu ul li.bottombnr1, #appmenu ul li.bottombnr2,
#appmenu ul li.bottombnr3, #appmenu ul li.bottombnr4 {
	border: none;
	padding: 0;
}
#appmenu ul li.bottombnr1 {border-top: 1px solid #fff; padding-top: 40px;}
#appmenu ul li.bottombnr1 a, #appmenu ul li.bottombnr2 a,
#appmenu ul li.bottombnr3 a, #appmenu ul li.bottombnr4 a {
	position: relative;
	width: 250px;
	height: 206px;
	color: #000;
	font-size: 1.8rem;
	margin: 0 auto 10% auto;
}
#appmenu ul li.bottombnr1 a span, #appmenu ul li.bottombnr2 a span,
#appmenu ul li.bottombnr3 a span, #appmenu ul li.bottombnr4 a span {
	position: absolute;
	display: block;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: 100%;
}
#appmenu ul li.bottombnr1 a {	background: url(../../images/common/megabg01.jpg) no-repeat;}
#appmenu ul li.bottombnr2 a {	background: url(../../images/common/megabg02.jpg) no-repeat;}
#appmenu ul li.bottombnr3 a {	background: url(../../images/common/megabg03.jpg) no-repeat;}
#appmenu ul li.bottombnr4 a {	background: url(../../images/common/megabg04.jpg) no-repeat;}
#appmenu ul li.bottombnr4 {
	margin-bottom:80px;
}
#appmenu li {
	width: 86.6667%;
	margin: 0 auto;
	text-align: center;
	border-top: 1px solid #fff;
	padding: 20px 0;
}
#appmenu li:first-child {
	border-top: none;
}

#appmenu li a {
	display: block;
	color: #fff;
}

#appmenu .sub {
	display: none;
	margin-bottom: 0;
}

#appmenu .sub li {
	width: 100%;
	border-top: 1px dotted #999;
}

#appmenu .sub li:first-child {
	margin-top: 20px;
}

#appmenu .specialbox {
	margin-top: 20px;
}

#appmenu .specialbox li {
	border: none;
	width: 50%;
	float: left;
	padding: 0 5px 10px 5px;
	text-align: center;
	box-sizing: border-box;
}
#appmenu .specialbox li:first-child {
	margin-top: 0;
}

#header .headtop, #footernavi, #groupbox, #footernavisub {
	display: none;
}
#header .headbtm .headbtmrightmenu {
	margin-left: auto;
}
#header .headbtm .headbtmrightmenu>ul li {
	display: none;
}
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(2),
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(3) {
	display: block;
}
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(2) a,
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(3) a {
	height: 50px;
}
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(2) a img,
#header .headbtm .headbtmrightmenu>ul li:nth-last-child(3) a img {
	width: 50px;
	height: 50px;
}

#footersns li {
	padding: 40px 15px;
}
#covmessage img {
	width: 90%;
}


#indexmenubox {
	padding: 50px 0 0 0;
}
#indexmenubox .title {
	border-top: none;
	width: 100%;
	padding-left: .5em;
}
#indexmenubox .indexmenu {
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 10px 0 0 0;
}

#indexmenubox .indexmenu span {
	display: block;
	padding: 0;
	padding: .5em 1em .5em .5em;
	width: 100%;
}
#indexmenubox a {
	display: block;
}

#zoku {
	width: 100%;
	margin: 25px auto;
	font-size: 2.4rem;
	border-bottom: none;
}
#zoku .inner {
	width: 100%;
}
#zoku h2 {
	padding-left: .5em;
}
#zoku ul {
	display: block;
}
#zoku li {
	width: 100%;
	margin-bottom: 10px;
}


#caccess {
	border-top: 1px solid #000;
	padding-top: 60px;
}
#caccess h2 {
	display: none;
}
#caccess .map {
	display: none;
}

#caccess .spmap {
	display: block;
	width: 95%;
	margin: 0 auto;
}

#caccess .spmap a {
	display: block;
	text-align: center;
	font-size: 3rem;
	font-weight: bold;
	color: #000;
	background: #fff;
	border: 1px solid #000;
	border-radius: 30px;
	padding: 0 10px;
	width: 100%;
	display: inline-block;
	box-sizing: border-box;
}




.slidemes {
	display: block;
	text-align: center;
	padding: 10px;
}

.slidemes p:after {
	content: '→';
}
.slidemes p {
	display: inline-block;
	background: #dcdcdc;
	color: #000;
	font-size: 1.4rem;
	border-radius: 10px;
	padding: 2px 6px;
}


h3#capen {
	font-size: 1.5rem;
}

#zoku h2 {
	text-align: center;
}

}
