@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,500,700,900|Noto+Serif+JP:200,300,500,700,900|Questrial);
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */

button, hr, input {
	overflow: visible;
}

audio, canvas, progress, video {
	display: inline-block;
}

progress, sub, sup {
	vertical-align: baseline;
}

[type=checkbox], [type=radio], legend {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
}

html {
	line-height: 1.15;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section {
	display: block;
}

h1 {
	font-size: 2em;
	margin: .67em 0;
}

figure {
	margin: 1em 40px;
}

hr {
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
}

code, kbd, pre, samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

a {
	background-color: transparent;
	-webkit-text-decoration-skip: objects;
}

abbr[title] {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
	border-bottom: none;
}

b, strong {
	font-weight: bolder;
}

dfn {
	font-style: italic;
}

mark {
	color: #000;
	background-color: #ff0;
}

small {
	font-size: 80%;
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
}

sub {
	bottom: -.25em;
}

sup {
	top: -.5em;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

img {
	border-style: none;
}

svg:not(:root) {
	overflow: hidden;
}

button, input, optgroup, select, textarea {
	font-family: sans-serif;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button, select {
	text-transform: none;
}

[type=reset], [type=submit], button, html [type=button] {
	-webkit-appearance: button;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
	padding: 0;
	border-style: none;
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
	outline: ButtonText dotted 1px;
}

fieldset {
	padding: .35em .75em .625em;
}

legend {
	display: table;
	max-width: 100%;
	white-space: normal;
	color: inherit;
}

textarea {
	overflow: auto;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
	height: auto;
}

[type=search] {
	outline-offset: -2px;
	-webkit-appearance: textfield;
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	font: inherit;
	-webkit-appearance: button;
}

summary {
	display: list-item;
}

[hidden], template {
	display: none;
}

/*! Site Style */

body {
	font: 14px/1.6 'Meiryo UI', メイリオ, Meiryo, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', Osaka, 'MS PGothic', 'Segoe UI', Tahoma, Helvetica, sans-serif;
	position: relative;
	min-width: 320px;
	min-height: 480px;
	color: #000;
}

body:before {
	position: absolute;
	top: -200px;
	right: 0;
	left: 0;
	height: 200px;
	content: '';
	background-color: #fff;
}

article, figcaption, figure, footer, header, section {
	display: block;
	margin: 0;
}

body, html {
	height: 100%;
	background: #d5f4ff;
	scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 1em;
	font-weight: 700;
	margin: 0 0 1em;
}

table, td, th {
	/*min-width:60px;*/
	border-collapse: collapse;
	/*border:1px solid;*/
}

ol, ul {
	padding: 0;
}

li, p {
	margin: 0 0 1em;
}

canvas, img, svg {
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

video {
	background: #000;
}

a {
	text-decoration: none;
	color: inherit;
}

dd, dl, dt, ol, ul {
	margin: 0;
}

a, article, dd, div, dl, dt, figcaption, figure, footer, h1, h2, h3, h4, h5, h6, header, li, p, section, table, td, th {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

em {
	font-weight: 100;
}

small {
	font-size: 1em;
}

address, em {
	font-style: normal;
}

button {
	font-family: inherit;
}

input[type=text], textarea {
	font-size: 16px;
	padding: .8em;
	border: 1px solid #ddd;
	border-radius: 3px;
	outline: 0;
}

input[type=text]:focus, textarea:focus {
	border: 1px solid #3498db;
	-webkit-box-shadow: 0 0 7px #3498db;
	box-shadow: 0 0 7px #3498db;
}

textarea {
	/*max-width:300px;*/
}

input[type=text] {
	max-width: 200px;
	-webkit-transition: all .3s;
	transition: all .3s;
	-webkit-transition-property: width;
	transition-property: width;
}

input[type=text]:focus {
	max-width: 300px;
}

input.sysNextSubmit {
	padding: 10px 30px;
	color: #111;
	border: 1px solid #ddd;
	border-radius: 3px;
	background: #fff;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eee));
	background: -webkit-linear-gradient(top, #fff 0%, #eee 100%);
	background: linear-gradient(to bottom, #fff 0%, #eee 100%);
}

input.sysNextSubmit:hover {
	background: #efefef;
	background: -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#eee));
	background: -webkit-linear-gradient(top, #efefef 0%, #eee 100%);
	background: linear-gradient(to bottom, #efefef 0%, #eee 100%);
}

#footer .mod-contact-info .openingHours dd dl dd, .wbr, span[class*=ico-] {
	display: inline-block;
}

.fs-70 {
	font-size: 70%!important;
}

.fs-80 {
	font-size: 80%!important;
}

.fs-90 {
	font-size: 90%!important;
}

.fs-100 {
	font-size: 100%!important;
}

.fs-110 {
	font-size: 110%!important;
}

.fs-120 {
	font-size: 120%!important;
}

.fs-130 {
	font-size: 130%!important;
}

.fs-140 {
	font-size: 140%!important;
}

.fs-150 {
	font-size: 150%!important;
}

.m-0 {
	margin: 0!important;
}

.m-b-0 {
	margin-bottom: 0!important;
}

.m-l-0 {
	margin-left: 0!important;
}

.m-r-0 {
	margin-right: 0!important;
}

.m-t-0 {
	margin-top: 0!important;
}

.m-1 {
	margin: 1em!important;
}

.m-b-1 {
	margin-bottom: 1em!important;
}

.m-l-1 {
	margin-left: 1em!important;
}

.m-r-1 {
	margin-right: 1em!important;
}

.m-t-1 {
	margin-top: 1em!important;
}

.m-2 {
	margin: 2em!important;
}

.m-b-2 {
	margin-bottom: 2em!important;
}

.m-l-2 {
	margin-left: 2em!important;
}

.m-r-2 {
	margin-right: 2em!important;
}

.m-t-2 {
	margin-top: 2em!important;
}

.m-3 {
	margin: 3em!important;
}

.m-b-3 {
	margin-bottom: 3em!important;
}

.m-l-3 {
	margin-left: 3em!important;
}

.m-r-3 {
	margin-right: 3em!important;
}

.m-t-3 {
	margin-top: 3em!important;
}

.m-4 {
	margin: 4em!important;
}

.m-b-4 {
	margin-bottom: 4em!important;
}

.m-l-4 {
	margin-left: 4em!important;
}

.m-r-4 {
	margin-right: 4em!important;
}

.m-t-4 {
	margin-top: 4em!important;
}

.m-5 {
	margin: 5em!important;
}

.m-b-5 {
	margin-bottom: 5em!important;
}

.m-l-5 {
	margin-left: 5em!important;
}

.m-r-5 {
	margin-right: 5em!important;
}

.m-t-5 {
	margin-top: 5em!important;
}

.m-6 {
	margin: 6em!important;
}

.m-b-6 {
	margin-bottom: 6em!important;
}

.m-l-6 {
	margin-left: 6em!important;
}

.m-r-6 {
	margin-right: 6em!important;
}

.m-t-6 {
	margin-top: 6em!important;
}

.m-7 {
	margin: 7em!important;
}

.m-b-7 {
	margin-bottom: 7em!important;
}

.m-l-7 {
	margin-left: 7em!important;
}

.m-r-7 {
	margin-right: 7em!important;
}

.m-t-7 {
	margin-top: 7em!important;
}

.m-8 {
	margin: 8em!important;
}

.m-b-8 {
	margin-bottom: 8em!important;
}

.m-l-8 {
	margin-left: 8em!important;
}

.m-r-8 {
	margin-right: 8em!important;
}

.m-t-8 {
	margin-top: 8em!important;
}

.m-9 {
	margin: 9em!important;
}

.m-b-9 {
	margin-bottom: 9em!important;
}

.m-l-9 {
	margin-left: 9em!important;
}

.m-r-9 {
	margin-right: 9em!important;
}

.m-t-9 {
	margin-top: 9em!important;
}

.m-10 {
	margin: 10em!important;
}

.m-b-10 {
	margin-bottom: 10em!important;
}

.m-l-10 {
	margin-left: 10em!important;
}

.m-r-10 {
	margin-right: 10em!important;
}

.m-t-10 {
	margin-top: 10em!important;
}

.p-0 {
	padding: 0!important;
}

.p-t-0 {
	padding-top: 0!important;
}

.p-r-0 {
	padding-right: 0!important;
}

.p-b-0 {
	padding-bottom: 0!important;
}

.p-l-0 {
	padding-left: 0!important;
}

.p-1 {
	padding: 1em!important;
}

.p-t-1 {
	padding-top: 1em!important;
}

.p-r-1 {
	padding-right: 1em!important;
}

.p-b-1 {
	padding-bottom: 1em!important;
}

.p-l-1 {
	padding-left: 1em!important;
}

.p-2 {
	padding: 2em!important;
}

.p-t-2 {
	padding-top: 2em!important;
}

.p-r-2 {
	padding-right: 2em!important;
}

.p-b-2 {
	padding-bottom: 2em!important;
}

.p-l-2 {
	padding-left: 2em!important;
}

.p-3 {
	padding: 3em!important;
}

.p-t-3 {
	padding-top: 3em!important;
}

.p-r-3 {
	padding-right: 3em!important;
}

.p-b-3 {
	padding-bottom: 3em!important;
}

.p-l-3 {
	padding-left: 3em!important;
}

.w-0 {
	width: 0!important;
}

.w-1 {
	width: 1em!important;
}

.w-2 {
	width: 2em!important;
}

.w-3 {
	width: 3em!important;
}

.w-4 {
	width: 4em!important;
}

.w-5 {
	width: 5em!important;
}

.w-6 {
	width: 6em!important;
}

.w-7 {
	width: 7em!important;
}

.w-8 {
	width: 8em!important;
}

.w-9 {
	width: 9em!important;
}

.w-10 {
	width: 10em!important;
}

.right {
	text-align: right!important;
}

.left {
	text-align: left!important;
}

.center {
	text-align: center!important;
}

.pc {
	display: none;
}

span[class*=ico-] {
	font-size: 8px!important;
	position: relative;
	overflow: hidden;
	width: 3em;
	height: 3em;
}

span[class*=ico-] .ico {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	margin: auto;
	border: 0;
	outline: 0;
	background: 0 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

span.ico-arrow .ico {
	background-image: url(/img/svg/ico-arrow.svg);
}

#header {
	position: relative;
}

#commonHeader {
	line-height: 1;
	position: fixed;
	z-index: 11;
	top: 0;
	width: 100%;
	/*height: 92px;*/
	background: #fff;
}

#commonHeader p {
	margin: 0;
}

#commonHeader a {
	display: block;
}

#commonHeader .logo {
	width: 150px;
	max-width: 400px;
	margin-bottom: 0;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 10px;
}

#commonHeader .mod-link {
	top: 0;
	right: 10px;
	min-width: 45%;
	vertical-align: top;
}

#commonHeader .link-student {
	font-size: .929em;
	position: absolute;
	top: 3px;
	right: 60px;
	margin-bottom: 1em;
	vertical-align: top;
	text-shadow: 0 0 5px #fff;
}

#commonHeader .link-student a {
	font-size: .75em;
	margin-top: 10px;
	padding: .65em .3em;
	border: 1px solid;
	border-radius: .25em;
	background-color: #ff8a00;
	color: #fff;
}

#commonHeader .link-student .ico {
	display: inline-block;
	width: 1em;
	height: 1em;
}

#commonHeader .link-student .ico svg {
	fill: #fff;
}

#commonHeader .sns {
	font-size: 1.75em;
	position: absolute;
	top: 12px;
	right: 60px;
	display: none;
	letter-spacing: -.4em;
}

#commonHeader .sns [class*=link-] {
	line-height: 1;
	display: inline-block;
	margin-left: 4px;
	letter-spacing: 0;
}

#commonHeader .sns [class*=link-] .ico {
	display: block;
	overflow: hidden;
	width: 1em;
	height: 1em;
	border-radius: .1em;
}

#commonHeader .sns [class*=link-] .ico svg {
	fill: #666;
}

#commonHeader .sns .link-fb .ico svg {
	fill: #315096;
}

#commonHeader .sns .link-tw .ico svg {
	fill: #55acee;
}

#commonHeader .sns .link-li .ico svg {
	fill: #00c300;
}

#commonHeader .button {
	/*
	display: block;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	*/
	display: none;
	letter-spacing: -.4em;
}

#commonHeader .button [class*=link-] {
	display: inline-block;
	width: 50%;
	text-align: center;
	letter-spacing: 0;
	color: #fff;
}

#commonHeader .button a {
	line-height: 45px;
	position: relative;
	height: 40px;
	color: #fff;
}

#commonHeader .button a .ico {
	position: relative;
	top: -.15em;
	display: inline-block;
	width: 1.429em;
	height: 1.429em;
	margin-right: 2px;
}

#commonHeader .button a .ico svg {
	vertical-align: middle;
	fill: #fff;
}

#commonHeader .button a .txt {
	line-height: 1;
}

#commonHeader .button a .ico-bg {
	position: absolute;
	right: .3em;
	bottom: 0;
	width: 16px;
	height: 16px;
}

#commonHeader .button a .ico-bg svg {
	width: 1em;
	vertical-align: top;
	fill: #fff;
}

#commonHeader .button .link-application, #commonHeader .button .link-request, #commonHeader .button .link-lodge, #commonHeader .button .link-student-top {
	background-color: #666;
}

#commonHeader .button .link-request a {
	background-color: #00a0e9;
}

#commonHeader .button .link-application a {
	background-color: #fa436e;
}

#commonHeader .button .link-lodge a {
	background-color: #00cc00;
}

#commonHeader .button .link-student-top a {
	background-color: #ff8a00;

}

#commonHeader .telephone {
	display: none;
	margin-top: .75em;
	text-align: center;
}

#commonHeader .telephone .caption .wbr, .menu-open #commonHeader .telephone, [data-category=guide] #navigation li[data-class=guide]:after, [data-category=plans] #navigation li[data-class=plans]:after, [data-category=school] #navigation li[data-class=school]:after, [data-category=staff] #navigation li[data-class=staff]:after, [data-category=top] #navigation li[data-class=top]:after, [data-category=access] #navigation li[data-class=access]:after, [data-category=facility] #navigation li[data-class=facility]:after, [data-category=lodge] #navigation li[data-class=lodge]:after {
	display: block;
}

#commonHeader .telephone .link-telephone {
	font-size: 2.75em;
}

#commonHeader .telephone .caption {
	font-size: .857em;
	line-height: 1.314;
	display: inline-block;
	margin-top: .5em;
	padding-left: 1em;
	text-align: left;
	vertical-align: top;
}

#visual {
	max-height: 400px;
}

.menu-open #visual {
	-webkit-filter: blur(4px);
	filter: blur(4px);
}

#visual #creative {
	position: relative;
	height: 100%;
	min-height: 300px;
	margin-top: 20px;
	padding-top: 0;
	background-image: url(/img/school/img-creative.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

/*
@media (max-width:768px) {
	#visual #creative {
		background-image: url(/img/school/img-creative_sp.png);
		margin-top: 85px;
	}
}
*/

#visual #creative:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: '';
}

#visual #creative .wrap {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

#visual #creative .caption {
	position: relative;
	max-width: 425px;
	height: 0;
	margin: auto;
	padding-top: 300px;
}

#visual #creative .caption span {
	position: absolute;
	top: 70px;
	right: 0;
	bottom: 50px;
	overflow: hidden;
	width: 60%;
	height: calc(100% - 70px);
	max-height: 502px;
	margin: auto;
	-webkit-transition-duration: .4s;
	transition-duration: .4s;
	text-indent: -9999px;
	background-image: url(/img/school/copy-creative.svg);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}

.top-mv {
	margin-top: 55px;
    width: 100%;
    height: 28.57143vw;
    position: relative
}

.top-mv__title {
    position: absolute;
    top: 0;
    left: -100%;
    text-indent: -100%;
    opacity: 0
}

.top-mv__bg {
    width: 100%;
    height: auto
}

.top-mv__bg img {
    width: 100%;
    height: auto
}

.top-mv__text {
    position: absolute;
    top: 5vw;
    width: 26vw;
    left: 50%;
    transform: translateX(-50%)
}

@media (max-width:768px) {
    .top-mv {
        height: 80vw;
        margin-top: 10%;
    }

    .top-mv__button {
        line-height: 48px;
        font-size: 1em
    }

    .top-mv__text {
        top: 18.66667vw;
        width: 62.93333vw
    }
}

#navigation nav {
	position: fixed;
	z-index: 10;
	top: 0;
	right: 0;
	left: 0;
	color: #000;
	background: rgba(255, 255, 255, .9);
	text-shadow: 1px 1px 1px #fff;
}

#navigation h2 {
	font-size: 10px;
	position: fixed;
	z-index: 12;
	top: 10px;
	right: 10px;
	width: 4em;
	margin: 0;
	padding: 4px 0 0;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition-duration: .2s;
	transition-duration: .2s;
	text-align: center;
	border: solid #000 1px;
	border-radius: .3em;
	background: rgba(255, 255, 255, .8);
}

#navigation h2 .ico-menu {
	line-height: 2;
	display: block;
	width: auto;
	-webkit-transition-duration: .4s;
	transition-duration: .4s;
}

#navigation h2 button {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	cursor: pointer;
	-webkit-user-select: all;
	-moz-user-select: all;
	-ms-user-select: all;
	user-select: all;
	-webkit-transition-duration: .1s;
	transition-duration: .1s;
}

#navigation h2 button:focus, #navigation h2 button:hover {
	opacity: .7;
}

#navigation h2 button svg {
	width: 50%;
	height: 50%;
	margin-top: 1.8em;
	-webkit-transition-duration: 1s;
	transition-duration: 1s;
	fill: #00a0e9;
}

.menu-open #navigation h2 svg {
	-webkit-transform: rotate3d(1, 0, 0, 180deg);
	transform: rotate3d(1, 0, 0, 180deg);
	fill: #fa436e;
}

.menu-open #navigation h2 .ico-menu {
	line-height: 1;
}

.menu-open #navigation h2 .ico-menu:after {
	content: 'CLOSE';
	opacity: 1;
}

#navigation .wrap {
	height: 0;
	-webkit-transition-duration: .4s;
	transition-duration: .4s;
}

.menu-open #navigation .wrap {
	overflow: auto;
	height: calc(100vh - 20em);
	margin-top: 10em;
	padding: 1em 0;
}

#navigation ul {
	margin: auto;
	letter-spacing: -.4em;
}

#navigation ul svg[role=img] {
	width: 1em;
	height: 1em;
	vertical-align: top;
	fill: #46c5f4;
}

#navigation li {
	font-size: 1.143em;
	font-weight: 700;
	position: relative;
	display: block;
	margin-bottom: 0;
	padding: 0;
	list-style: none;
	letter-spacing: 0;
}

#navigation li a {
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 14px 2em 12px;
	color: #000;
	outline: 0;
}

#navigation li a .ico {
	font-size: 1.75em;
	display: inline-block;
	width: 1em;
	height: 1em;
	margin: 0 .5em .3em .3em;
	vertical-align: top;
}

#navigation li:after, #navigation li:before {
	position: absolute;
	top: 0;
	margin: auto;
	content: '';
}

#navigation li:after {
	bottom: 0;
	display: none;
	background: #00a0e9;
	right: auto;
	left: 5%;
	width: 10px;
	height: 100%;
}

#navigation li:before {
	right: 0;
	left: 0;
	width: 90%;
	height: 1px;
	border: dotted #666;
	border-width: 1px 0 0;
}

#navigation li:nth-child(1):before {
	display: none;
}

#footer {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	background: #d5f4ff;
}

.menu-open #footer {
	-webkit-transition-duration: .4s;
	transition-duration: .4s;
	-webkit-filter: blur(4px);
	filter: blur(4px);
}

#footer .contact {
	font-size: .875em;
}

#footer .copyright {
	font-size: .625em;
}

#footer #commonFooter {
	padding-top: 30px;
}

#footer #commonFooter ul {
	list-style: none;
}

#footer #commonFooter li {
	margin-bottom: .2em;
}

#footer #commonFooter .button a .ico {
	position: relative;
	top: -.15em;
	display: inline-block;
	width: 1.429em;
	height: 1.429em;
	margin-right: 10px;
}

#footer #commonFooter .button a .ico svg {
	vertical-align: middle;
	fill: #fff;
}

#footer .mod-sitemap {
	padding: 20px 4px;
	letter-spacing: -.4em;
}

#footer .mod-sitemap .item {
	display: inline-block;
	width: 100%;
	margin-bottom: .5em;
	padding: 0 4px;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0;
}

#footer .mod-sitemap .item .item-wrap {
	padding-left: 1em;
}

#footer .mod-sitemap h3 {
	font-weight: 100;
	padding: .5em .75em .4em;
	text-align: left;
	letter-spacing: .1em;
	color: #fff;
	border-radius: .3em;
	background-color: #00a0e9;
}

#footer .mod-sitemap h3:before, #footer .mod-sitemap li:before {
	content: '';
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
}

#footer .mod-sitemap h3:before {
	font-size: 1.143em;
	display: inline-block;
	margin-right: .5em;
	border-radius: 1em;
	position: relative;
	top: .16em;
	width: 1em;
	height: 1em;
	background-image: url(/img/svg/ico-check-outline.svg);
}

#footer .mod-sitemap li {
	position: relative;
	padding-left: 1em;
}

#footer .mod-sitemap li:before {
	position: absolute;
	top: .2em;
	left: 0;
	width: .429em;
	height: .857em;
	background-image: url(/img/svg/ico-triangle.svg);
}

#footer .mod-sitemap li li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: '・';
	background: 0 0;
}

#footer .mod-contact-info {
	padding: 20px 8px;
}

#footer .mod-contact-info .item {
	position: relative;
	padding: 2em .5em;
	border-radius: .5em;
	background: #fff;
}

#footer .mod-contact-info .item:before {
	position: absolute;
	z-index: -1;
	top: 6px;
	left: 6px;
	width: 100%;
	height: 100%;
	content: '';
	border-radius: .5em;
	background-color: #9bdcf3;
	background-image: url(/img/svg/bg-slash-2.svg);
	background-size: 18px;
}

#footer .mod-contact-info h2 {
	font-size: 2.5em;
	line-height: 1;
	position: relative;
	display: block;
	width: 7em;
	margin: 0 auto .3em;
	/*padding-left:1.125em;*/
}

#footer .mod-contact-info h2 img {
	height: .929em;
}

#footer .mod-contact-info .access [class*=link-] a:after, #footer .mod-contact-info h2:before {
	width: 1em;
	height: 1em;
	content: '';
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

#footer .mod-contact-info h2:before {
	/*
left:0;
position:absolute;
top:0;
background-image:url(/img/svg/logo-bioka-mark-1.svg);
*/
}

#footer .mod-contact-info address {
	margin-bottom: .75em;
}

#footer .mod-contact-info .access {
	margin-bottom: 2em;
	text-align: center;
	letter-spacing: -.4em;
}

#footer .mod-contact-info .access [class*=link-] {
	display: inline-block;
	width: 50%;
	max-width: 15em;
	letter-spacing: 0;
}

#footer .mod-contact-info .access [class*=link-] a {
	display: block;
	padding: .6em .5em .4em;
	color: #00a0e9;
	border: 2px solid;
	border-radius: .5em;
	background-color: #fff;
}

#footer .mod-contact-info .access [class*=link-] a:after {
	position: relative;
	top: -.1em;
	display: inline-block;
	margin-left: .3em;
	vertical-align: middle;
	border-radius: 1em;
	background-color: #00a0e9;
	background-image: url(/img/svg/ico-arrow-right.svg);
}

#footer .mod-contact-info .access [class*=link-]:nth-child(odd) {
	padding-right: .5em;
}

#footer .mod-contact-info .access [class*=link-]:nth-child(even) {
	padding-left: .5em;
}

#footer .mod-contact-info .button {
	font-size: 1.286em;
	margin-bottom: 1.75em;
}

#footer .mod-contact-info .button h3 {
	font-weight: 100;
	margin-bottom: .5em;
}

#footer .mod-contact-info .button h3:after, #footer .mod-contact-info .button h3:before {
	position: relative;
	top: .2em;
	left: -.5em;
	display: inline-block;
	width: 1px;
	height: 1.125em;
	content: '';
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	background: #000;
}

#footer .mod-contact-info .button h3:after {
	left: .5em;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#footer .mod-contact-info .button [class*=link-] {
	max-width: 24.222em;
	margin: 0 auto .75em;
}

#footer .mod-contact-info .button [class*=link-] a {
	display: block;
	padding: .5em;
	color: #fff;
	border-radius: .3em;
	background-color: #fa436e;
}

#footer .mod-contact-info .button .link-request a {
	background-color: #00a0e9;
}

#footer .mod-contact-info .button .link-application a {
	background-color: #fa436e;
}

#footer .mod-contact-info .button .link-lodge a {
	background-color: #00cc00;
}
#footer .mod-contact-info .button .link-line-attend a{
	background-color:#F58E7E;
}
#footer .mod-contact-info .button .link-line-lodge a{
	background-color:#8DCF3F;
}

#footer .mod-contact-info .telephone .link-telephone {
	font-size: 35px;
}

#footer .mod-contact-info .openingHours {
	margin-top: 1em;
}

#footer .mod-contact-info .openingHours dt {
	font-size: .857em;
	display: inline-block;
	padding: 0 .5em;
	vertical-align: top;
}

#footer .mod-contact-info .openingHours dd {
	display: inline-block;
	text-align: left;
	vertical-align: top;
}

#footer .mod-contact-info .openingHours dd dl dt {
	font-size: 1em;
	display: inline-block;
	width: 6em;
}

/*! page design */

.tagmanager {
	position: absolute;
	visibility: hidden;
	width: 1px;
	height: 1px;
}

#wrapper, .wrap {
	position: relative;
}

@media (max-width:767px) {
	#wrapper, .wrap {
		overflow: hidden;
	}
}

.wrap {
	width: 100%;
	max-width: 1024px;
	margin-right: auto;
	margin-left: auto;
}

#wrapper {
	background-color: #fff;
}

.ready #wrapper {
	display: block;
	overflow-x: hidden;
}

.menu-open #main, [data-link=telephone] {
	pointer-events: none;
}

.mobile-device [data-link=telephone] {
	pointer-events: auto!important;
}

#main {
	font-size: .875em;
	padding-top: 3em;
	padding-bottom: 5em;
}

.menu-open #main {
	-webkit-filter: blur(4px);
	filter: blur(4px);
	-ms-touch-action: none;
	touch-action: none;
}

#main .mod-article {
	margin-bottom: 3em;
}

#main .mod-article .wrap {
	position: relative;
	max-width: 95%;
}

#main .section {
	overflow: hidden;
	padding-bottom: 1em;
}

svg[role=img] {
	width: 100%;
	height: auto;
}

a.skip-main {
	position: absolute;
	z-index: -999;
	top: 0;
	left: -999px;
	overflow: hidden;
	width: 1px;
	height: 1px;
	outline: 0;
}

a.skip-main:active, a.skip-main:focus {
	font-size: 1.2em;
	z-index: 999;
	top: auto;
	left: auto;
	overflow: auto;
	width: 30%;
	height: auto;
	margin: 10px 35%;
	padding: 5px;
	text-align: center;
	color: #fff;
	border: 4px solid;
	border-radius: 15px;
	background-color: #000;
}

.btn-top {
	position: fixed;
	z-index: 9;
	right: 0;
	bottom: 2em;
	left: 0;
	display: none;
	width: 3em;
	height: 3em;
	margin: 0 1em 0 auto;
	-webkit-animation: fadeIn .4s ease-in 0s 1 alternate;
	animation: fadeIn .4s ease-in 0s 1 alternate;
}

.pagetop-show .btn-top {
	display: block;
}

.pagetop-fixed .btn-top {
	position: absolute;
	top: -1.5em;
	bottom: auto;
}

.scroll .btn-top {
	display: none;
}

.btn-top a {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	width: 100%;
	height: 0;
	padding-top: 100%;
	-webkit-transition-duration: .4s;
	transition-duration: .4s;
	border-radius: 10em;
	outline: 0;
	background-color: #00a0e9;
	background-image: url(/img/svg/ico-arrow-up.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.btn-top a:focus, .btn-top a:hover {
	background-color: #50c8ff;
}

#loading {
	position: fixed;
	z-index: 10000;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transition-duration: 1s;
	transition-duration: 1s;
	-webkit-transition-property: opacity;
	transition-property: opacity;
	background: #fff -webkit-radial-gradient(center, ellipse, #fff 50%, #e9f8ff 100%);
	background: #fff radial-gradient(ellipse at center, #fff 50%, #e9f8ff 100%);
}

.onload #loading {
	opacity: 0;
}

.ready #loading {
	display: none;
}

#loading #loading-center {
	position: relative;
	width: 100%;
	height: 100%;
}

#loading #loading-center-absolute {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 200px;
	height: 200px;
	margin-top: -100px;
	margin-left: -100px;
}

#loading #loading-center-absolute:before {
	width: 120px;
	height: 120px;
	margin: auto;
	content: '';
	-webkit-animation: rotateLeft 1s ease-in-out 0s infinite alternate;
	animation: rotateLeft 1s ease-in-out 0s infinite alternate;
	background-image: url(/img/svg/preload-1.svg);
}

#loading #loading-center-absolute:after, #loading #loading-center-absolute:before, .content-decorate {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

#loading #loading-center-absolute:after {
	width: 120px;
	height: 120px;
	margin: auto;
	content: '';
	-webkit-animation: rotateRight 1s ease-in-out -.5s infinite alternate;
	animation: rotateRight 1s ease-in-out -.5s infinite alternate;
	background-image: url(/img/svg/preload-2.svg);
}

#loading #loading-object {
	width: 80px;
	height: 80px;
	margin-top: 60px;
	margin-right: auto;
	margin-left: auto;
	-webkit-animation: pulse .5s ease-in-out 0s infinite;
	animation: pulse .5s ease-in-out 0s infinite;
	background: url(/img/svg/logo-bioka-mark-1.svg) no-repeat center;
	background-size: contain;
}

.telephone .link-telephone {
	font-weight: 900;
	line-height: 1;
	display: inline-block;
	margin-bottom: 0;
	white-space: nowrap;
}

.telephone .link-telephone a {
	position: relative;
	padding-left: 1em;
}

.telephone .link-telephone a .ico {
	font-size: .775em;
	position: absolute;
	top: .15em;
	left: 0;
	width: 1em;
	height: 1em;
	border-radius: 1em;
	background-color: #00a0e9;
}

.telephone .link-telephone a .ico svg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: .6em;
	margin: auto;
	fill: #fff;
}

.telephone .link-telephone a .txt {
	font-family: 'Questrial', 'Century Gothic', CenturyGothic, AppleGothic, sans-serif;
	display: inline-block;
	overflow: hidden;
	vertical-align: text-top;
	color: #333;
}

.telephone .link-telephone a .txt .kerning {
	letter-spacing: -.1em;
}

.content-decorate {
	display: none;
}

.content-decorate.content-decorate-1 {
	background-image: url(/img/bg-main-decorate-1.png);
}

.content-decorate.content-decorate-2 {
	background-image: url(/img/bg-main-decorate-2.png);
}

.sub {
	font-size: .75em;
}

/*! animation keyframe */

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@-webkit-keyframes fadeInRight_fadeOutLeft {
	0% {
		-webkit-transform: translateX(200%);
		transform: translateX(200%);
		opacity: 0;
	}
	10%, 90% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1;
	}
	to {
		-webkit-transform: translateX(-200%);
		transform: translateX(-200%);
		opacity: 0;
	}
}

@keyframes fadeInRight_fadeOutLeft {
	0% {
		-webkit-transform: translateX(200%);
		transform: translateX(200%);
		opacity: 0;
	}
	10%, 90% {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1;
	}
	to {
		-webkit-transform: translateX(-200%);
		transform: translateX(-200%);
		opacity: 0;
	}
}

@-webkit-keyframes downInFadeOut {
	0% {
		-webkit-transform: translateY(-200%);
		transform: translateY(-200%);
		opacity: 0;
	}
	10%, 90% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 0;
	}
}

@keyframes downInFadeOut {
	0% {
		-webkit-transform: translateY(-200%);
		transform: translateY(-200%);
		opacity: 0;
	}
	10%, 90% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 0;
	}
}

@-webkit-keyframes zoomInDown {
	0% {
		-webkit-transform: scale(.1) translateY(-200%);
		transform: scale(.1) translateY(-200%);
		-webkit-animation-timing-function: ease-in-out;
		animation-timing-function: ease-in-out;
		opacity: 0;
	}
	60% {
		-webkit-transform: scale(.475) translateY(0);
		transform: scale(.475) translateY(0);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		opacity: 1;
	}
}

@keyframes zoomInDown {
	0% {
		-webkit-transform: scale(.1) translateY(-200%);
		transform: scale(.1) translateY(-200%);
		-webkit-animation-timing-function: ease-in-out;
		animation-timing-function: ease-in-out;
		opacity: 0;
	}
	60% {
		-webkit-transform: scale(.475) translateY(0);
		transform: scale(.475) translateY(0);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		opacity: 1;
	}
}

@-webkit-keyframes fadeInDown {
	0% {
		-webkit-transform: translateY(-200%);
		transform: translateY(-200%);
		opacity: 0;
	}
	to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes fadeInDown {
	0% {
		-webkit-transform: translateY(-200%);
		transform: translateY(-200%);
		opacity: 0;
	}
	to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}

@-webkit-keyframes flip {
	0% {
		-webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
		transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	40% {
		-webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
		transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	50% {
		-webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	80% {
		-webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
		transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	to {
		-webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
		transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
}

@keyframes flip {
	0% {
		-webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
		transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	40% {
		-webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
		transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
	}
	50% {
		-webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	80% {
		-webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
		transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
	to {
		-webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
		transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
	}
}

@-webkit-keyframes carousel {
	0%, to {
		background-size: cover, 0, 0, 0, 0;
	}
	20% {
		background-size: 0, cover, 0, 0, 0;
	}
	40% {
		background-size: 0, 0, cover, 0, 0;
	}
	60% {
		background-size: 0, 0, 0, cover, 0;
	}
	80% {
		background-size: 0, 0, 0, 0, cover;
	}
}

@keyframes carousel {
	0%, to {
		background-size: cover, 0, 0, 0, 0;
	}
	20% {
		background-size: 0, cover, 0, 0, 0;
	}
	40% {
		background-size: 0, 0, cover, 0, 0;
	}
	60% {
		background-size: 0, 0, 0, cover, 0;
	}
	80% {
		background-size: 0, 0, 0, 0, cover;
	}
}

@-webkit-keyframes fadeInDownfaceOutUp {
	0%, 10.5%, to {
		-webkit-transform: translateY(-20px);
		transform: translateY(-20px);
		opacity: 0;
	}
	.5%, 10% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes fadeInDownfaceOutUp {
	0%, 10.5%, to {
		-webkit-transform: translateY(-20px);
		transform: translateY(-20px);
		opacity: 0;
	}
	.5%, 10% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}

@-webkit-keyframes fadeOut {
	0% {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}

@keyframes fadeOut {
	0% {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}

@-webkit-keyframes fadeInFadeOut {
	0%, to {
		opacity: 0;
	}
	10%, 90% {
		opacity: 1;
	}
}

@keyframes fadeInFadeOut {
	0%, to {
		opacity: 0;
	}
	10%, 90% {
		opacity: 1;
	}
}

@-webkit-keyframes fadeInLeft {
	0% {
		-webkit-transform: translateX(-2em);
		transform: translateX(-2em);
		opacity: 0;
	}
	to {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1;
	}
}

@keyframes fadeInLeft {
	0% {
		-webkit-transform: translateX(-2em);
		transform: translateX(-2em);
		opacity: 0;
	}
	to {
		-webkit-transform: translateX(0);
		transform: translateX(0);
		opacity: 1;
	}
}

@-webkit-keyframes preload {
	0% {
		-webkit-transform: perspective(160px) rotateX(0deg) rotateY(0deg);
		transform: perspective(160px) rotateX(0deg) rotateY(0deg);
	}
	25% {
		-webkit-transform: perspective(160px) rotateX(-180deg) rotateY(0deg);
		transform: perspective(160px) rotateX(-180deg) rotateY(0deg);
	}
	50% {
		-webkit-transform: perspective(160px) rotateX(-180deg) rotateY(-180deg);
		transform: perspective(160px) rotateX(-180deg) rotateY(-180deg);
	}
	75% {
		-webkit-transform: perspective(160px) rotateX(0deg) rotateY(-180deg);
		transform: perspective(160px) rotateX(0deg) rotateY(-180deg);
	}
}

@keyframes preload {
	0% {
		-webkit-transform: perspective(160px) rotateX(0deg) rotateY(0deg);
		transform: perspective(160px) rotateX(0deg) rotateY(0deg);
	}
	25% {
		-webkit-transform: perspective(160px) rotateX(-180deg) rotateY(0deg);
		transform: perspective(160px) rotateX(-180deg) rotateY(0deg);
	}
	50% {
		-webkit-transform: perspective(160px) rotateX(-180deg) rotateY(-180deg);
		transform: perspective(160px) rotateX(-180deg) rotateY(-180deg);
	}
	75% {
		-webkit-transform: perspective(160px) rotateX(0deg) rotateY(-180deg);
		transform: perspective(160px) rotateX(0deg) rotateY(-180deg);
	}
}

@-webkit-keyframes bounce {
	0%, 20%, 50%, 80%, to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	40% {
		-webkit-transform: translateY(-30px);
		transform: translateY(-30px);
	}
	60% {
		-webkit-transform: translateY(-15px);
		transform: translateY(-15px);
	}
}

@keyframes bounce {
	0%, 20%, 50%, 80%, to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	40% {
		-webkit-transform: translateY(-30px);
		transform: translateY(-30px);
	}
	60% {
		-webkit-transform: translateY(-15px);
		transform: translateY(-15px);
	}
}

@-webkit-keyframes modTitle {
	0% {
		width: 0;
	}
	to {
		width: 100%;
	}
}

@keyframes modTitle {
	0% {
		width: 0;
	}
	to {
		width: 100%;
	}
}

@-webkit-keyframes pulse {
	0%, 10%, 20%, to {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	15%, 25%, 5% {
		-webkit-transform: scale(1.1);
		transform: scale(1.1);
	}
}

@keyframes pulse {
	0%, 10%, 20%, to {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	15%, 25%, 5% {
		-webkit-transform: scale(1.1);
		transform: scale(1.1);
	}
}

@-webkit-keyframes rotateLeft {
	0% {
		-webkit-transform: rotate(-200deg);
		transform: rotate(-200deg);
		-webkit-transform-origin: center center;
		transform-origin: center center;
		opacity: 0;
	}
	to {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: center center;
		transform-origin: center center;
		opacity: .6;
	}
}

@keyframes rotateLeft {
	0% {
		-webkit-transform: rotate(-200deg);
		transform: rotate(-200deg);
		-webkit-transform-origin: center center;
		transform-origin: center center;
		opacity: 0;
	}
	to {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: center center;
		transform-origin: center center;
		opacity: .6;
	}
}

@-webkit-keyframes rotateRight {
	0% {
		-webkit-transform: rotate(200deg);
		transform: rotate(200deg);
		-webkit-transform-origin: center center;
		transform-origin: center center;
		opacity: 0;
	}
	to {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: center center;
		transform-origin: center center;
		opacity: .6;
	}
}

@keyframes rotateRight {
	0% {
		-webkit-transform: rotate(200deg);
		transform: rotate(200deg);
		-webkit-transform-origin: center center;
		transform-origin: center center;
		opacity: 0;
	}
	to {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: center center;
		transform-origin: center center;
		opacity: .6;
	}
}

#container-information .mod-information {
	position: relative;
	overflow: hidden;
	padding: 0 6px 6px;
}

#container-information .mod-information figure {
	position: relative;
	width: 90%;
	max-width: 994px;
	margin: 0 auto;
	padding: 2px;
	border-radius: .3em;
	background-color: #d5f4ff;
}

#container-information .mod-information figure:before {
	position: absolute;
	top: 6px;
	left: 6px;
	width: 100%;
	height: 100%;
	content: '';
	border-radius: .3em;
	background-color: #b7deec;
}

#container-information .mod-information figure .img {
	position: relative;
	z-index: 1;
	overflow: hidden;
	height: 0;
	padding-top: 39.59044%;
	border-radius: .3em .3em 0 0;
}

#container-information .mod-information figure .img img {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
}

#container-information .mod-information figure figcaption {
	position: relative;
	z-index: 2;
	overflow: hidden;
	padding: 2em;
	text-align: center;
	background-color: #d5f4ff;
}

#container-information .mod-information figure figcaption h3 {
	overflow: hidden;
	width: 100%;
	height: 0;
	padding-top: 38px;
	background-image: url(/img/svg/ttl-information-2.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

#container-information .mod-information figure figcaption p, .mod-banner-single .summary p {
	font-size: 1.143em;
	line-height: 1.8;
}

#container-thought {
	position: relative;
	padding: 30px 0;
	background: url(/img/svg/bg-slash-3.svg);
	background-size: 18px;
}

#container-thought:after, #container-thought:before {
	position: absolute;
	right: 0;
	left: 0;
	height: 12px;
	content: '';
	background: url(/img/svg/bg-thought.svg);
	background-size: 18px 12px;
}

#container-thought:before {
	top: -5px;
}

#container-thought:after {
	bottom: -5px;
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

#container-thought h2 {
	font-size: 4em;
	margin-bottom: 0;
	text-align: center;
}

#container-thought h2:before, #container-topics .mod-topics #switchView:after {
	display: inline-block;
	height: 1em;
	content: '';
	vertical-align: top;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

#container-thought h2:before {
	/*
font-size:1.4em;
position:relative;
top:-.1em;
width:1.194em;
background-image:url(/img/ttl-thought-mark.png);
*/
}

#container-thought .mod-thought {
	position: relative;
}

#container-thought .mod-thought .figure {
	position: relative;
	z-index: 5;
}

#container-thought .mod-thought .figure .frame {
	position: relative;
	z-index: 2;
	display: block;
	max-width: 55%;
	margin: 0 auto;
	border-radius: 50em;
}

#container-thought .mod-thought .figure .frame .img {
	display: block;
	padding-top: 100%;
	border-radius: 50em;
	background-color: #fff!important;
	background-repeat: no-repeat!important;
	background-position: center!important;
	background-size: cover!important;
}

#container-thought .mod-thought .figure .frame:before {
	font-size: 2em;
	line-height: 1;
	position: absolute;
	top: 43%;
	left: 0;
	display: block;
	padding-top: 68%;
	padding-left: 55%;
	content: attr(title);
	-webkit-transform: rotate(-19.4deg);
	transform: rotate(-19.4deg);
	color: #97dbf3;
	background-image: url(/img/bg-elected-item.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: auto 97%;
}

#container-thought .mod-thought .figure .frame:after {
	position: absolute;
	z-index: -1;
	top: 6px;
	left: 6px;
	width: 100%;
	height: 100%;
	content: '';
	border-radius: 50em;
	background: #97dbf3;
}

#container-thought .mod-thought .summary {
	line-height: 1.8;
	padding: 5.429em .5em 2.143em;
}

#container-thought .mod-thought .summary h3 {
	font-size: 1.5em;
	font-weight: 100;
	position: relative;
	margin-bottom: 1em;
	padding-left: 5em;
	color: #fa436e;
	min-height: 3.5em;
}

#container-thought .mod-thought .summary h3 .txt {
	/*
line-height:1.2;
position:relative;
z-index:1;
display:inline-block;
*/
	position: relative;
	z-index: 1;
	line-height: 1;
	display: inline;
	background-image: linear-gradient(to right, #fff 50%, transparent 50%);
	background-repeat: no-repeat;
	background-position: 0 bottom;
	background-size: 200% 40%;
}

/*
#container-thought .mod-thought .summary h3 .txt:before{
position:absolute;
z-index:-1;
bottom:0;
width:100%;
height:.667em;
content:'';
background:#fff;

}
*/

#container-thought .mod-thought .summary h3 .ico {
	/*前のcss
font-size:1.067em;
line-height:2.6;
position:absolute;
top:-.5em;
left:0;
display:inline-block;
width:2.375em;
height:2.375em;
text-align:center;
color:#fff;
border-radius:10em;
background:#febec8;
*/
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 4.4em;
	height: 4.267em;
	padding-top: 2.1em;
	background-image: url(/img/ttl-elected-item.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	position: absolute;
	top: -.5em;
	left: 0;
	display: inline-block;
	text-align: center;
}

#container-thought .mod-thought .item {
	position: relative;
	z-index: 5;
	margin-bottom: 2em;
}

#container-topics h2 {
	margin-bottom: 1.5em;
}

#container-topics .mod-topics {
	position: relative;
	width: 98%;
	margin: 0 auto;
	padding-top: 10px;
}

#container-topics .mod-topics #switchView {
	font-size: .857em;
	line-height: 1;
	position: absolute;
	top: -26px;
	right: 0;
	padding: .75em 1em;
	vertical-align: middle;
	color: #fff;
	border: 0;
	border-radius: .3em;
	outline: 0;
	background: #00a0e9;
}

#container-topics .mod-topics #switchView:after {
	width: 1em;
	margin-left: .3em;
	border-radius: 10em;
	background-color: #fff;
	background-image: url(/img/svg/ico-arrow-right-inverted.svg);
}

#container-topics h2 {
	margin-bottom: 0.5em;
}

#container-topics .slide {
	padding: .5em 1em .5em 1em;
	background: #d5f4ff;
}

#container-topics .slide li {
	margin-bottom: 0;
	list-style: none;
	border-top: dotted 1px #34b4e2;
}

#container-topics .slide li:nth-child(1) {
	border: 0;
}

#container-topics .slide li {
	display: block;
	padding: 1.429em 1.429em 1.429em 1.429em;
	background-image: url(/img/svg/ico-triangle.svg);
	background-repeat: no-repeat;
	background-position: 0.5em 1.75em;
	background-size: 7px auto;
}

#container-topics .slide li dl {
	display: flex;
	flex-direction: column;
}

#container-topics .slide li dt {
	display: inline-block;
	letter-spacing: -.4em;
}

#container-topics .slide li dt .category[data-category=インフォメーション] {
	background-color: #16b701;
}

#container-topics .slide li dt .category[data-category=キャンペーン] {
	background-color: #ff8400;
}

#container-topics .slide li dt .category[data-category=イベント] {
	background-color: #fa436e;
}

#container-topics .slide li dt .category[data-category=お知らせ] {
	background-color: #a55b9a;
}

#container-topics .slide li dt .date {
	display: inline-block;
	width: 7em;
	letter-spacing: 0;
	vertical-align: top;
}

#container-topics .slide li dt .category {
	display: inline-block;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 8.5em;
	text-align: center;
	vertical-align: text-bottom;
	white-space: nowrap;
	letter-spacing: 0;
	text-overflow: ellipsis;
	border-radius: .2em;
	background-color: #00a0e9;
}

#container-topics .slide li dt .topic-image {
	display: flex;
	flex-direction: column;
}

#container-topics .slide li dt .topic-image img:not(:nth-child(1)) {
	margin-top: 1em;
}

#container-topics .slide li dt .category:before {
	font-size: .714em;
	content: attr(data-category);
	color: #fff;
}

#container-topics .slide li dd {
	display: inline-block;
	flex: 1;
	vertical-align: top;
}

#container-banner .item a {
	display: block;
	margin-bottom: 20px;
}

#container-banner .mod-banner {
	position: relative;
	padding-right: 40px;
	padding-left: 40px;
}

#container-banner .swiper-container {
	max-width: 900px;
	padding-bottom: 20px;
}

#container-banner .swiper-pagination {
	bottom: 0;
}

#container-banner .swiper-button-prev {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

#container-banner .swiper-button-next, #container-banner .swiper-button-prev {
	width: 25px;
	height: 25px;
	border-radius: 50em;
	outline: 0;
	background-color: rgba(181, 181, 181, .7);
	background-image: url(/img/svg/ico-arrow-right.svg);
}

#container-banner .swiper-pagination {
	right: 0;
	left: 0;
}

#container-banner .swiper-pagination-bullet {
	margin: 0 6px;
}

#container-banner .swiper-pagination-bullet-active {
	background: #00a0e9;
}

#container-interview {
	position: relative;
	padding: 53px .5em;
	text-align: center;
	color: #fff;
	background-color: #00aded;
	background-image: url(/img/svg/bg-slash-1.svg);
	background-size: 18px auto;
}

#container-interview:before {
	position: absolute;
	top: 8px;
	right: 0;
	bottom: 8px;
	left: 0;
	content: '';
	background-color: #00aded;
}

#container-interview h2 {
	font-size: 3em;
	display: inline-block;
	vertical-align: top;
}

#container-interview .button {
	position: relative;
	top: -1em;
	display: inline-block;
	margin-left: 2em;
	vertical-align: top;
}

#container-interview .button .link-detail {
	position: relative;
	width: 6.286em;
	height: 6.286em;
}

#container-interview .button .link-detail a {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	overflow: hidden;
	width: 100%;
	height: 0;
	padding-top: 6.286em;
	border-radius: 50px;
	outline: 0;
	background-color: #00aded;
	background-image: url(/img/svg/btn-interview.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

#container-interview .figure {
	float: left;
	width: 9em;
	margin: 0 1em 1em 0;
}

#container-interview .figure .img {
	position: relative;
	display: block;
	overflow: hidden;
	max-width: 100%;
	height: 0;
	padding-top: 100%;
	border-radius: 50em;
	background-color: #fff!important;
	background-repeat: no-repeat!important;
	background-position: center!important;
	background-size: cover!important;
}

#container-interview .summary dt {
	margin-left: 7em;
}

#container-interview .mod-interview {
	position: relative;
	padding: 0 20px;
}

#container-interview .item {
	display: inline-block;
	white-space: normal;
}

#container-interview .item dl {
	text-align: left;
}

#container-interview .item dt {
	font-size: 1.429em;
	font-weight: 700;
	margin-bottom: 1em;
	border-bottom: 1px dotted #fff;
}

#container-interview .item dd {
	line-height: 1.8;
}

#container-interview .item-figure {
	max-width: 900px;
}

#container-interview .swiper-container {
	padding-bottom: 50px;
}

#container-interview .swiper-button-prev {
	-webkit-transform: rotate(-180deg);
	transform: rotate(-180deg);
}

#container-interview .swiper-button-next, #container-interview .swiper-button-prev {
	top: auto;
	bottom: 0;
	width: 26px;
	height: 26px;
	border: 1px solid;
	border-radius: 50em;
	outline: 0;
	background-image: url(/img/svg/ico-chevron-right.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 60%;
}

#container-camp {
	padding-top: 10px;
}

#container-camp .mod-banner-camp {
	max-width: 1000px;
	margin: auto;
}

#container-camp .mod-banner-camp:hover {
	opacity: 0.7;
}

#container-camp .mod-banner-camp a {
	position: relative;
	display: block;
	overflow: hidden;
	height: 100px;
	max-height: 172px;
	text-align: center;
}

#container-camp .mod-banner-camp a img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	max-width: 1000px;
	height: 100%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.type_basic .contentWrap {
	padding-top: 3em;
}

#contentHeader {
	position: relative;
	margin-top: -3em;
	padding-top: 93px;
	background-repeat: repeat, no-repeat;
	background-position: center bottom;
	background-size: 3px, cover;
}

#contentHeader #breadCrumbs:before, #contentHeader .mod-title {
	background-image: url(/img/cover.gif), url(/img/bg_header.jpg);
	background-position: left bottom;
}

#contentHeader .mod-title, #contentHeader .mod-title h1 {
	width: 100%;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

#contentHeader .mod-title {
	font-size: 2em;
	position: relative;
	right: 0;
	bottom: 0;
	left: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background-size: 3px, auto 130%;
	height: 5.111em;
	margin: 0 auto;
}

#contentHeader .mod-title h1 {
	line-height: 1;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	height: 3.675em;
	margin: 0;
	text-align: center;
	text-shadow: 4px 2px 0 #fff;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

#contentHeader #breadCrumbs {
	position: relative;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 10px 8px;
	color: #fff;
}

#contentHeader #breadCrumbs:after, #contentHeader #breadCrumbs:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: '';
}

#contentHeader #breadCrumbs:before {
	z-index: 0;
	background-repeat: repeat, no-repeat;
	background-size: 3px, auto 381px;
}

#contentHeader #breadCrumbs:after {
	z-index: 1;
	background-color: rgba(109, 111, 111, .6);
}

#contentHeader #breadCrumbs .wrap {
	position: relative;
	z-index: 2;
}

#contentHeader #breadCrumbs ul {
	line-height: 1;
	letter-spacing: -.4em;
}

#contentHeader #breadCrumbs ul li {
	display: inline-block;
	margin-bottom: 0;
	letter-spacing: 0;
}

#contentHeader #breadCrumbs ul li:before {
	margin: 0 1em;
	content: '\03e';
}

#contentHeader #breadCrumbs ul li:nth-child(1):before {
	display: none;
}

#contentHeader #breadCrumbs ul li a svg[role=img] {
	width: 1em;
	height: 1em;
	vertical-align: top;
	fill: #fff;
}

#contentHeader #breadCrumbs ul li a .ico {
	font-size: 1.5em;
	width: 1em;
	height: 1em;
}

.mod-internalLink {
	font-size: .875em;
	max-width: 1024px;
	margin: 0 auto;
}

.mod-internalLink ul {
	text-align: center;
	letter-spacing: -.4em;
}

.mod-internalLink ul li {
	display: inline-block;
	width: 50%;
	max-width: 311px;
	padding: 0 .722em .3em;
	list-style: none;
	vertical-align: top;
	letter-spacing: 0;
}

.mod-internalLink ul li a {
	line-height: 1.2;
	display: block;
	padding: .66em;
	text-align: left;
	vertical-align: middle;
	border-radius: .3em;
	background: #d4f3fe;
	-webkit-box-shadow: 4px 4px 0 #7fd6f6;
	box-shadow: 4px 4px 0 #7fd6f6;
}

.mod-internalLink ul li a:before {
	font-size: 1.125em;
	position: relative;
	top: .15em;
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .25em;
	content: '';
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	border-radius: 10em;
	background-image: url(/img/svg/ico-arrow-right-outline.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.mod-internalLink2 {
	font-size: .875em;
	max-width: 1024px;
	margin: 0 auto;
}

.mod-internalLink2 ul {
	text-align: center;
	letter-spacing: -.4em;
}

.mod-internalLink2 ul li {
	display: inline-block;
	width: 50%;
	max-width: 311px;
	padding: 0 .722em .3em;
	list-style: none;
	vertical-align: top;
	letter-spacing: 0;
}

.mod-internalLink2 ul li a {
	line-height: 1.2;
	display: block;
	padding: .66em;
	text-align: left;
	vertical-align: middle;
	border-radius: .3em;
	background: #d4f3fe;
	-webkit-box-shadow: 4px 4px 0 #7fd6f6;
	box-shadow: 4px 4px 0 #7fd6f6;
}

.mod-internalLink2 ul li a:before {
	font-size: 1.125em;
	position: relative;
	top: .15em;
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .25em;
	content: '';
	/*-webkit-transform:rotate(90deg);
transform:rotate(90deg);*/
	border-radius: 10em;
	background-image: url(/img/svg/ico-arrow-right-outline.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

/*
.ttl-step-num{
font-size:1.857em;
font-weight:100;
text-align:center;
color:#03a2dd;

}
.ttl-ribbon:before,.ttl-step-num .ico{
position:relative;
display:inline-block;
overflow:hidden;
vertical-align:top;
border-radius:10em;

}
.ttl-step-num .ico{
font-size:1em;
line-height:1.3;
text-align:center;
color:#fff;
background:#03a2dd;
top:.1em;
width:1.25em;
height:1.25em;
margin-right:.3em;

}
.ttl-ribbon{
font-size:1.571em;
font-weight:100;
padding:.3em .5em;
letter-spacing:.05em;
color:#fff;
border-radius:.25em;
background:#11A0E5;

}
.ttl-ribbon:before{
top:.25em;
width:1em;
height:1em;
margin-right:.35em;
content:'';
background-image:url(/img/svg/ico-check-outline.svg);
background-repeat:no-repeat;
background-position:center;
background-size:cover;
}
*/

.mod-dl-flex, [class*=mod-ul-] {
	margin-bottom: 1em;
}

[class*=mod-ul-].mod-ul-asterisk, [class*=mod-ul-].mod-ul-attent, [class*=mod-ul-].mod-ul-color, [class*=mod-ul-].mod-ul-plain {
	list-style: none;
}

[class*=mod-ul-].mod-ul-color li, [class*=mod-ul-].mod-ul-plain li {
	position: relative;
	margin-bottom: .1em;
	padding-left: 1em;
}

[class*=mod-ul-].mod-ul-color li:before {
	position: absolute;
	top: 8px;
	left: 0;
	width: 8px;
	height: 8px;
	margin-right: .3em;
	content: '';
	vertical-align: top;
	background: #6accf0;
}

[class*=mod-ul-].mod-ul-plain li:before {
	line-height: 1;
	position: absolute;
	top: 6px;
	left: 0;
	width: 9px;
	height: 9px;
	margin-right: .3em;
	content: '';
	vertical-align: top;
	border-radius: 100em;
	background: #000;
}

[class*=mod-ul-].mod-ul-attent li {
	color: #c00;
}

[class*=mod-ul-].mod-ul-asterisk li:before, [class*=mod-ul-].mod-ul-attent li:before {
	position: absolute;
	top: 0;
	left: 0;
	margin-right: .3em;
	content: '※';
	vertical-align: top;
}

[class*=mod-ul-].mod-ul-asterisk li, [class*=mod-ul-].mod-ul-attent li {
	position: relative;
	margin-bottom: .1em;
	padding-left: 1em;
}

.mod-dl-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.mod-dl-flex dt {
	font-weight: 700;
}

/*
.btn-accordion{
display:block;
text-align:center;

}
.btn-accordion button,[class*=btn-link] a{
line-height:1;
position:relative;
display:inline-block;
color:#fff;
border:0;

}
.btn-accordion button{
font-size:1.286em;
min-width:284px;
height:2.666em;
white-space:nowrap;
letter-spacing:.05em;
background:#00aded;
padding:.3em 3.5em;
border-radius:10em;

}
.btn-accordion button:before{
position:absolute;
top:calc(50% - .5em);
left:1.85em;
width:1em;
height:1em;
-webkit-transition-duration:.4s;
transition-duration:.4s;
background-image:url(/img/svg/ico-chevron-bottom-w.svg);
background-size:contain;

}
.btn-accordion button:after,.btn-accordion button:before,[class*=btn-link] a:after{
display:inline-block;
content:'';
vertical-align:middle;
background-repeat:no-repeat;
background-position:center;

}
.btn-accordion button:after{
position:absolute;
top:calc(50% - .6em);
right:1.5em;
-webkit-transition-duration:.4s;
transition-duration:.4s;
width:1.222em;
height:1.222em;
background-image:url(/img/svg/ico-minus.svg),url(/img/svg/ico-plus.svg);
background-size:0,contain;

}
.btn-accordion button .txt:before{
content:'続きを読む';

}
.mod-accordion.open .btn-accordion button{
background:#ccc;

}
.mod-accordion.open .btn-accordion button:before{
-webkit-transform:rotate3d(1,0,0,180deg);
transform:rotate3d(1,0,0,180deg);

}
.mod-accordion.open .btn-accordion button:after{
background-size:contain,0;

}
.mod-accordion.open .btn-accordion button .txt:before{
content:'閉じる';

}
*/

.btn-group {
	max-width: 768px;
	margin: 0 auto 1em;
	text-align: center;
	letter-spacing: -.4em;
}

.btn-group [class*=btn-link] {
	display: inline-block;
	min-width: 50%;
	padding: 0 1.5em;
	letter-spacing: 0;
}

.btn-group [class*=btn-link] a, [class*=mod-tbl] td .notes {
	display: block;
}

[class*=btn-link] {
	font-size: 1.571em;
	text-align: center;
}

[class*=btn-link] a {
	padding: 1em;
	vertical-align: middle;
	border-radius: .3em;
	outline: 0;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #1db8ff), color-stop(50%, #00a0e9));
	background: -webkit-linear-gradient(top, #1db8ff 50%, #00a0e9 50%);
	background: linear-gradient(to bottom, #1db8ff 50%, #00a0e9 50%);
	-webkit-box-shadow: 3px 3px 0 #007db6;
	box-shadow: 3px 3px 0 #007db6;
}

[class*=btn-link] a:after {
	width: 1em;
	height: 1em;
	margin-left: .3em;
	border-radius: 10em;
	background-image: url(/img/svg/ico-arrow-right-outline-i.svg);
	background-size: contain;
}

[class*=btn-link].btn-link-orange a {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #ffab33), color-stop(50%, #ff9600));
	background: -webkit-linear-gradient(top, #ffab33 50%, #ff9600 50%);
	background: linear-gradient(to bottom, #ffab33 50%, #ff9600 50%);
	-webkit-box-shadow: 3px 3px 0 #cc7800;
	box-shadow: 3px 3px 0 #cc7800;
}

[class*=btn-link].btn-link-pink a {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #fb7594), color-stop(50%, #fa436e));
	background: -webkit-linear-gradient(top, #fb7594 50%, #fa436e 50%);
	background: linear-gradient(to bottom, #fb7594 50%, #fa436e 50%);
	-webkit-box-shadow: 3px 3px 0 #f91148;
	box-shadow: 3px 3px 0 #f91148;
}

.type_basic #main .section {
	padding-bottom: 1.3em;
}

.type_basic #main em {
	color: #c00;
}

.type_basic #main ul {
	float: none;
	clear: both;
}

.type_basic #main h4 .num, .type_basic #main h5 .num {
	font-size: 1.125em;
	color: #00a0e9;
}

.mod-float-wrap {
	margin-bottom: 1em;
}

.mod-float-wrap:after, .mod-photo-frame:after {
	position: absolute;
	display: block;
	clear: both;
	content: '';
}

.mod-float-wrap .figure-float {
	width: 25%;
	padding-bottom: 1em;
}

.mod-float-wrap.float-left .figure-float {
	float: left;
	padding-right: 1em;
}

.mod-float-wrap.float-right .figure-float {
	float: right;
	padding-left: 1em;
}

.img-circle {
	position: relative;
	overflow: hidden;
	height: 0;
	padding-top: 100%;
	border-radius: 100em;
	background: red;
}

.img-circle img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	min-width: 100%;
	max-width: 200%;
	height: auto;
	min-height: 100%;
	max-height: 200%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

[class*=mod-tbl] {
	width: 100%;
	margin: 0 auto 1em;
	border-collapse: collapse;
	border: 0;
}

[class*=mod-tbl] td, [class*=mod-tbl] th {
	font-weight: 100;
	padding: .5em;
	text-align: center;
	vertical-align: middle;
	border: solid #fff;
	border-width: 0 0 2px;
}

[class*=mod-tbl] thead th {
	color: #fff;
	background: #7b6c05;
}

[class*=mod-tbl] thead th:nth-child(2) {
	background: #948206;
}

[class*=mod-tbl] thead th:nth-child(3) {
	background: #ac9707;
}

[class*=mod-tbl] thead th:nth-child(4) {
	background: #c5ad08;
}

[class*=mod-tbl] thead th:nth-child(5) {
	background: #ddc209;
}

[class*=mod-tbl] tbody tr th {
	background: #c7c091;
}

[class*=mod-tbl] tbody tr td {
	background: #edead9;
}

[class*=mod-tbl] tbody tr:nth-child(even) th, [class*=mod-tbl].mod-tbl-timetable tbody tr:nth-child(even) th {
	background: #b0b06f;
}

[class*=mod-tbl] tbody tr:nth-child(even) td, [class*=mod-tbl].mod-tbl-timetable tbody tr:nth-child(even) td {
	background: #eae5c4;
}

[class*=mod-tbl].mod-tbl-timetable {
	max-width: 768px;
}

[class*=mod-tbl].mod-tbl-timetable .sub {
	font-weight: 700;
}

[class*=mod-tbl].mod-tbl-timetable tbody th {
	color: #fff;
}

[class*=mod-tbl].mod-tbl-timetable tbody tr th {
	background: #c7c091;
}

[class*=mod-tbl].mod-tbl-timetable tbody tr td {
	background: #edead9;
}

[class*=mod-tbl] [class*=btn-link] {
	font-size: 1em;
	margin: 0;
}

[class*=mod-tbl] .notes {
	font-size: .913em;
	display: inline-block;
}

.mod-qa {
	/*font-family:'Noto Sans JP',sans-serif;
font-size:1.143em;*/
	margin: 10px 0;
}

.mod-qa dd, .mod-qa dt {
	position: relative;
	margin-bottom: 1em;
	padding-top: .4em;
	padding-bottom: .4em;
	padding-left: 3.125em;
}

.mod-qa dd:before, .mod-qa dt:before {
	/*font-size:1.375em;*/
	line-height: 1.727;
	position: absolute;
	top: 0;
	left: 0;
	width: 1.727em;
	height: 1.727em;
	text-align: center;
	color: #fff;
	border-radius: 100px;
}

.mod-qa dt:before {
	background: #fa436e;
	content: 'Ｑ';
}

.mod-qa dd:before {
	content: 'A';
	background: #6accf0;
}

.mod-photo-frame .figure {
	position: relative;
	width: 300px;
	margin: 0 auto 1em;
	padding-top: 120px;
}

.mod-photo-frame .figure:after {
	position: absolute;
	top: 0;
	left: 84%;
	width: 16%;
	height: 0;
	padding-top: 16%;
	content: '';
	background: url(/img/bg-photoframe.png) no-repeat center;
	background-size: contain;
}

.mod-photo-frame .figure img {
	position: absolute;
	top: 0;
	left: 5%;
	width: 50.5%;
	border: 5px solid #fff;
	-webkit-box-shadow: 1px 1px 5px rgba(0, 0, 0, .5);
	box-shadow: 1px 1px 5px rgba(0, 0, 0, .5);
}

.mod-photo-frame .figure img:nth-child(2) {
	top: 11%;
	left: 51%;
	width: 40%;
	-webkit-transform: rotate(12.4deg);
	transform: rotate(12.4deg);
}

.mod-photo-frame h3 {
	font-size: 1.143em;
	color: #f90;
}

.mod-banner-single {
	position: relative;
	max-width: 320px;
	margin: 0 auto 1em;
	padding: 0;
}

.mod-banner-single:before {
	position: absolute;
	top: 6px;
	left: 6px;
	overflow: hidden;
	width: 100%;
	height: 100%;
	content: '';
	border-radius: .3em;
	background: url(/img/bg-bnr-single.png);
}

.mod-banner-single a {
	position: relative;
	z-index: 1;
	display: block;
	overflow: hidden;
	border-radius: 6px;
	background: #6accf0;
}

.mod-banner-single a:hover {
	opacity: 0.8;
}

.mod-banner-single .figure {
	z-index: 3;
	overflow: hidden;
}

.mod-banner-single .figure .img {
	overflow: hidden;
	background: #333;
}

.mod-banner-single .summary {
	position: relative;
	z-index: 2;
	overflow: hidden;
	text-align: center;
}

.mod-visual-min {
	position: relative;
	overflow: hidden;
	width: 90%;
	max-width: 610px;
	height: 0;
	margin: 0 auto 3em;
	padding-top: 29.18033%;
	border-radius: 8px;
	background: #fff;
}

.mod-visual-min .bg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: .6;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	-webkit-filter: blur(2px);
	filter: blur(2px);
}

.mod-visual-min .figure, .mod-visual-min .figure img {
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
}

.mod-visual-min .figure {
	position: absolute;
	z-index: 1;
	overflow: hidden;
	height: 0;
	margin: 0 auto;
	padding-top: 50.4918%;
	border-radius: 500px;
	width: 50.4918%;
	max-width: 308px;
}

.mod-category-link [class*=category-] .bg, .mod-visual-min .figure img {
	position: absolute;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.mod-visual-min .figure img {
	width: 120%;
	max-width: 150%;
}

.mod-category-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	overflow: hidden;
	height: 400px;
	border-radius: 8px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
}

.mod-category-link [class*=category-] {
	font-size: 1.286em;
	position: relative;
	list-style: none;
	-webkit-transition: -webkit-box-flex .4s ease-out;
	transition: flex .4s ease-out;
	transition: flex .4s ease-out, -webkit-box-flex .4s ease-out, -ms-flex .4s ease-out;
	text-align: center;
	outline: 0;
	background-size: 100% 100%;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.mod-category-link [class*=category-] .bg {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	opacity: .3;
}

.mod-category-link [class*=category-] .ttl {
	font-size: 1.333em;
	position: relative;
	z-index: 2;
	margin: 1em auto 0;
	-webkit-transition-duration: .4s;
	transition-duration: .4s;
	opacity: 0;
	color: #fff;
	text-shadow: 2px 2px 2px rgba(8, 7, 7, .4);
}

.mod-category-link [class*=category-] ul {
	position: relative;
	z-index: 3;
	display: none;
	/*padding:.556em;*/
	text-align: left;
	letter-spacing: -.4em;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

.mod-category-link [class*=category-] ul li {
	width: 50%;
	margin-bottom: .556em;
	padding: 0 .278em;
	list-style: none;
	vertical-align: top;
	letter-spacing: 0;
}

.mod-category-link [class*=category-] ul a {
	display: block;
	height: 100%;
	padding: 6px 10px;
	text-align: center;
	color: #000;
	border-radius: 6px;
	background-color: #fff;
}

.mod-category-link [class*=category-] ul a .ico {
	display: block;
	margin: 0 auto;
}

.mod-category-link [class*=category-] .ico {
	line-height: 1;
	position: relative;
	top: .1em;
	display: inline-block;
	overflow: hidden;
	width: 1em;
	height: 1em;
	-webkit-transform: rotate3d(1, 0, 0, 180deg);
	transform: rotate3d(1, 0, 0, 180deg);
	border-radius: 10em;
}

.mod-category-link [class*=category-] .ico svg, .mod-category-link [class*=category-] .ttl-cat .txt .ico svg {
	fill: #fff;
}

.mod-category-link [class*=category-] .ttl-cat {
	font-size: 1.333em;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	overflow: hidden;
	width: 100%;
	border: 0;
	background: 0 0;
}

.mod-category-link [class*=category-] .ttl-cat .txt {
	line-height: 1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1em;
	margin: auto;
	-webkit-transition-duration: .4s;
	transition-duration: .4s;
	vertical-align: middle;
	color: #fff;
	text-shadow: 2px 2px 2px rgba(8, 7, 7, .4);
}

.mod-category-link [class*=category-]:active, .mod-category-link [class*=category-]:focus, .mod-category-link [class*=category-]:hover {
	color: #fff;
	-webkit-box-flex: 3;
	-ms-flex: 3;
	flex: 3;
}

.mod-category-link [class*=category-]:active .ttl, .mod-category-link [class*=category-]:focus .ttl, .mod-category-link [class*=category-]:hover .ttl {
	opacity: 1;
}

.mod-category-link [class*=category-]:active ul, .mod-category-link [class*=category-]:focus ul, .mod-category-link [class*=category-]:hover ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.mod-category-link [class*=category-]:active .ttl-cat .txt, .mod-category-link [class*=category-]:focus .ttl-cat .txt, .mod-category-link [class*=category-]:hover .ttl-cat .txt {
	opacity: 0;
}

.mod-category-link [class*=category-].category-item-1 {
	background-color: #ef43a9;
}

.mod-category-link [class*=category-].category-item-1 .bg {
	background-image: url(/img/bg-btn-category-1.png);
}

.mod-category-link [class*=category-].category-item-1 ul svg {
	fill: #ef43a9;
}

.mod-category-link [class*=category-].category-item-1 a.link-nest:hover {
	background-color: #ffd6ef;
}

.mod-category-link [class*=category-].category-item-2 {
	background-color: #ff9000;
}

.mod-category-link [class*=category-].category-item-2 .bg {
	background-image: url(/img/bg-btn-category-2.png);
}

.mod-category-link [class*=category-].category-item-2 ul svg {
	fill: #ff9000;
}

.mod-category-link [class*=category-].category-item-2 a.link-nest:hover {
	background-color: #ffe6c5;
}

.mod-category-link [class*=category-].category-item-3 {
	background-color: #1ab157;
}

.mod-category-link [class*=category-].category-item-3 .bg {
	background-image: url(/img/bg-btn-category-3.png);
}

.mod-category-link [class*=category-].category-item-3 ul svg {
	fill: #1ab157;
}

.mod-category-link [class*=category-].category-item-3 a.link-nest:hover {
	background-color: #baffd6;
}

.mod-category-link [class*=category-].category-item-4 {
	background-color: #4b70e4;
}

.mod-category-link [class*=category-].category-item-4 .bg {
	background-image: url(/img/bg-btn-category-4.png);
}

.mod-category-link [class*=category-].category-item-4 ul svg {
	fill: #4b70e4;
}

.mod-category-link [class*=category-].category-item-4 a.link-nest:hover {
	background-color: #ccd9ff;
}

.mod-accordion {
	position: relative;
	/*background:#EDEDED;*/
}

.mod-accordion .ttl-accordion {
	font-size: 1.571em;
	font-weight: 100;
	position: relative;
	padding-left: 1.3em;
}

.mod-accordion .ttl-accordion:before {
	position: absolute;
	top: .1em;
	left: 0;
	width: 1.182em;
	height: 1.182em;
	content: '';
	background-image: url(/img/svg/ico-accordion.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.mod-accordion .ttl-accordion .btn-toggle {
	position: absolute;
	right: 0;
	width: 1.571em;
	height: 1.571em;
	border: 0;
	outline: 0;
	background: 0 0;
}

.mod-accordion .ttl-accordion .btn-toggle svg[role=img] {
	width: 1em;
	height: 1em;
	-webkit-transition-duration: .4s;
	transition-duration: .4s;
	fill: #6accf0;
}

.mod-accordion .mod-accordion-wrap {
	overflow: hidden;
	max-height: 10em;
	margin-bottom: 5em;
	padding-bottom: 0;
	-webkit-transition-duration: 1s;
	transition-duration: 1s;
}

.mod-accordion .btn-accordion {
	position: absolute;
	z-index: 5;
	right: 0;
	bottom: -4px;
	left: 0;
	margin: auto;
	padding-top: 6em;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(#fff));
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, #fff 100%);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #fff 100%);
}

.mod-accordion .btn-accordion button {
	z-index: 1;
	outline: 0;
}

.mod-accordion.open .mod-accordion-wrap {
	max-height: 100vh!important;
	padding-bottom: 5em;
}

.mod-accordion.open .ttl-accordion .btn-toggle svg[role=img] {
	-webkit-transform: rotate3d(1, 0, 0, 180deg);
	transform: rotate3d(1, 0, 0, 180deg);
	fill: #ccc;
}

.mod-accordion.close .mod-accordion-wrap {
	max-height: 0;
	margin-bottom: 0;
	padding-bottom: 1px;
}

.mod-accordion.close .btn-accordion {
	display: none;
	opacity: 0;
}

.mod-optional .ttl-optional {
	font-size: 1.143em;
	line-height: 1.563;
	margin-bottom: 1em;
	text-align: center;
	color: #00aded;
	background: #e0f4fb;
}

.mod-optional .mod-optional-item {
	margin-bottom: 3em;
}

.mod-optional .mod-optional-item .ttl-optional-item {
	font-size: 1.286em;
	font-weight: 100;
	line-height: 1;
	display: inline-block;
	margin-right: .5em;
	padding: .3em .5em;
	color: #fff;
	border-radius: 4px;
	background: #00aded;
}

.mod-optional .mod-optional-item .strength {
	display: inline-block;
}

.mod-optional .mod-optional-item .price em {
	font-size: 1.286em;
	color: #00aded!important;
}

.mod-optional .mod-optional-item .deals li {
	position: relative;
	display: inline-block;
	padding-left: 1em;
}

.mod-optional .mod-optional-item .deals li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: '◆';
}

.mod-optional .mod-optional-item .discount dt {
	font-size: 1.286em;
	font-weight: 100;
	line-height: 1;
	display: inline-block;
	margin-right: .5em;
	padding: .3em .5em;
	color: #fff;
	border-radius: 4px;
	background: #ff8400;
}

.mod-optional .mod-optional-item .discount dd {
	display: inline-block;
	color: #ff8400;
}

@media (min-width:360px) {
	#commonHeader .logo {
		width: 200px;
		padding-top: 10px;
		padding-bottom: 11px;
	}
	#footer .mod-contact-info h2 {
		font-size: 3em;
	}
	#container-thought h2 {
		font-size: 5em;
	}
	#container-interview h2 {
		font-size: 3.5em;
	}
}

@media (min-width:425px) {
	#commonHeader .link-student {
		right: 134px;
	}
	#commonHeader .link-student a {
		padding: .55em;
	}
	#commonHeader .link-student .ico {
		width: 1.25em;
		height: 1.25em;
	}
	#commonHeader .sns {
		font-size: 2em;
		display: inline-block;
		vertical-align: top;
	}
	#commonHeader .sns [class*=link-] {
		margin-right: 4px;
		margin-left: 4px;
	}
	#navigation li a {
		padding-left: 2.5em;
	}
	#navigation li a .ico {
		font-size: 1.5em;
		margin: 0 .5em .3em;
	}
	#footer .mod-sitemap .item-1 .item-wrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	#footer .mod-sitemap .item-1 .item-wrap ul, #footer .mod-sitemap .item-2, #footer .mod-sitemap .item-3 {
		width: 50%;
	}
	#footer .mod-contact-info h2 {
		font-size: 3.5em;
	}
	#container-thought .mod-thought .figure .frame {
		max-width: 250px;
	}
	#container-thought .mod-thought .summary h3 {
		font-size: 1.813em;
	}
	#container-topics h2 {
		margin-bottom: 1.5em;
	}
	#container-topics .slide li {
		padding: 1.429em 1.429em 1.429em 2.5em;
		background-position: 1.5em 1.75em;
	}
	#container-topics .slide li dl {
		flex-direction: row;
	}
	#container-topics .slide li dt {
		width: 15.7em;
	}
	#container-topics .slide li dd {
		margin-left: 1em;
	}
	#container-interview h2 {
		font-size: 3.929em;
	}
	#container-camp .mod-banner-camp a {
		height: 0;
		padding-top: 17.2%;
	}
	#contentHeader {
		height: auto;
		min-height: 240px;
	}
	#contentHeader .mod-title {
		font-size: 2.5em;
	}
	.mod-internalLink {
		font-size: 1em;
	}
	[class*=mod-tbl] {
		font-size: 1.125em;
	}
	.mod-photo-frame .figure {
		float: right;
		width: 50%;
		padding-top: 20%;
	}
	.mod-photo-frame .summary {
		padding-right: 1em;
	}
	.mod-category-link [class*=category-] .bg {
		width: 180px;
		margin-left: 0;
	}
}

@media (min-width:600px) {
	.mod-visual-min {
		height: 178px;
		padding-top: 0;
	}
}

@media (min-width:678px) {
	#contentHeader {
		min-height: 381px;
		margin-top: -1em;
		padding-top: 108px;
		background-image: url(/img/cover.gif), url(/img/bg_header.jpg);
	}
	#contentHeader .mod-title {
		font-size: 3.382em;
		background: 0 0;
	}
	#contentHeader #breadCrumbs {
		position: absolute;
	}
	#contentHeader #breadCrumbs:before {
		display: none;
		background: 0 0;
	}
}

@media (min-width:768px) {
	body, html {
		scroll-behavior: auto;
	}
	a:focus, a:hover {
		color: #2769f6;
	}
	.pc {
		display: inherit;
	}
	#navigation h2, .sp {
		display: none;
	}
	#commonHeader {
		height: 73px;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #fff), to(rgba(255, 255, 255, 0)));
		background: -webkit-linear-gradient(top, #fff 50%, rgba(255, 255, 255, 0) 100%);
		background: linear-gradient(to bottom, #fff 50%, rgba(255, 255, 255, 0) 100%);
	}
	#commonHeader:before {
		position: absolute;
		z-index: -1;
		top: 0;
		right: 0;
		left: 0;
		height: 40px;
		content: '';
		-webkit-transition-duration: 1s;
		transition-duration: 1s;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, #fff), color-stop(60%, rgba(255, 255, 255, .7)));
		background: -webkit-linear-gradient(top, #fff 40%, rgba(255, 255, 255, .7) 60%);
		background: linear-gradient(to bottom, #fff 40%, rgba(255, 255, 255, .7) 60%);
	}
	.menu-fixed #commonHeader {
		-webkit-transition-duration: .4s;
		transition-duration: .4s;
		background: 0 0;
	}
	.menu-fixed #commonHeader:before {
		position: absolute;
		height: 162px;
		content: '';
	}
	#commonHeader .logo {
		width: 40%;
		padding-top: 1.286em;
		padding-bottom: 0;
		padding-left: .857em;
	}
	#commonHeader .logo a:focus, #commonHeader .logo a:hover {
		opacity: .8;
	}
	#commonHeader .mod-link {
		position: absolute;
		right: .857em;
		text-align: right;
		padding-top: 15px;
	}
	#commonHeader .link-student {
		position: relative;
		right: 0;
		/*display: inline-block;*/
		display: none;
		margin-bottom: 0;
	}
	#commonHeader .link-student a {
		font-size: 1em;
		margin-top: 1.3em;
		padding: 0;
		border: 0;
		border-radius: 0;
	}
	#commonHeader .link-student .ico {
		width: 1em;
		height: 1em;
	}
	#commonHeader .sns [class*=link-] .ico svg {
		/*fill:#666;*/
	}
	#commonHeader .link-student a:focus .ico svg, #commonHeader .link-student a:hover .ico svg, #commonHeader .sns [class*=link-] a:focus .ico svg, #commonHeader .sns [class*=link-] a:hover .ico svg {
		fill: #2769f6;
	}
	#commonHeader .sns .link-fb a:focus .ico svg, #commonHeader .sns .link-fb a:hover .ico svg {
		fill: #315096;
	}
	#commonHeader .sns .link-tw a:focus .ico svg, #commonHeader .sns .link-tw a:hover .ico svg {
		fill: #55acee;
	}
	#commonHeader .sns .link-li a:focus .ico svg, #commonHeader .sns .link-li a:hover .ico svg {
		fill: #00c300;
	}
	#commonHeader .sns {
		font-size: 1.571em;
		position: relative;
		top: .6em;
		right: 0;
	}
	#commonHeader .button {
		display: inline-block;
		margin-bottom: 0;
		vertical-align: top;
	}
	#commonHeader .button [class*=link-] {
		width: 141px;
		margin-left: 1px;
	}
	#commonHeader .button a {
		line-height: 35px;
		width: 141px;
		height: 35px;
	}
	#commonHeader .button a .ico-bg {
		right: .3em;
		bottom: .3em;
		width: 8px;
		height: 8px;
	}
	#commonHeader .button a:focus, #commonHeader .button a:hover, #contentHeader #breadCrumbs ul li a:focus, #contentHeader #breadCrumbs ul li a:hover {
		color: #2d2d2d;
	}
	#commonHeader .button a:focus svg, #commonHeader .button a:hover svg, #contentHeader #breadCrumbs ul li a:focus svg, #contentHeader #breadCrumbs ul li a:hover svg {
		fill: #2d2d2d;
	}
	#commonHeader .button .link-request a:focus, #commonHeader .button .link-request a:hover {
		background-color: #1db8ff;
	}
	#commonHeader .button .link-application a:focus, #commonHeader .button .link-application a:hover {
		background-color: #fb7594;
	}
	#commonHeader .button .link-lodge a:focus, #commonHeader .button .link-lodge a:hover {
		background-color: #66cc00;
	}
	#commonHeader .telephone {
		display: block;
		text-align: right;
		text-shadow: 0 0 5px #fff;
	}
	#visual {
		height: 100vh;
		max-height: 100vh;
	}
	#visual #creative {
		margin-top: 0;
	}
	#visual #creative .caption {
		max-width: 100%;
		padding-top: calc(100vh - 42px);
	}
	#visual #creative .caption span {
		top: 50px;
		bottom: 70px;
		width: 40%;
		height: calc(100% - 120px);
	}
	#navigation nav {
		position: absolute;
		top: auto;
		bottom: 0;
		background: rgba(255, 255, 255, .8);
	}
	.menu-fixed #navigation nav {
		position: fixed;
		z-index: 11;
		top: 82px;
		bottom: auto;
		-webkit-transition-duration: .4s;
		transition-duration: .4s;
		background: 0 0;
	}
	#navigation .wrap {
		height: auto!important;
	}
	#navigation ul[data-length='5'] li {
		width: 20%;
	}
	#navigation ul[data-length='6'] li {
		width: 16.66667%;
	}
	#navigation ul[data-length='7'] li {
		width: 14.28571%;
	}
	#navigation li {
		display: inline-block;
		text-align: center;
	}
	#navigation li a {
		padding: 14px .1em 12px;
	}
	#navigation li a:focus, #navigation li a:hover {
		background: -webkit-radial-gradient(center, ellipse, rgba(0, 160, 233, .3) 0%, rgba(255, 255, 255, .6) 100%);
		background: radial-gradient(ellipse at center, rgba(0, 160, 233, .3) 0%, rgba(255, 255, 255, .6) 100%);
	}
	#navigation li a .ico {
		display: block;
		margin: 0 auto .2em;
	}
	#navigation li:after {
		top: auto;
		right: 0;
		bottom: 0;
		left: 0;
		width: 60%;
		height: 3px;
	}
	#navigation li:before {
		top: 0;
		right: auto;
		bottom: 0;
		width: 1px;
		height: 60%;
		border-width: 0 0 0 1px;
	}
	#footer #commonFooter {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	#footer .mod-sitemap {
		width: 50%;
		padding: 20px 10px;
	}
	#footer .mod-sitemap .item {
		padding: 0 10px;
	}
	#footer .mod-sitemap .item .item-wrap {
		padding-left: 0;
	}
	#footer .mod-sitemap a:focus, #footer .mod-sitemap a:hover {
		text-decoration: underline;
	}
	#footer .mod-contact-info {
		width: 50%;
		padding: 20px;
	}
	#footer .mod-contact-info .item {
		padding: 2em 1em;
	}
	#footer .mod-contact-info .telephone .link-telephone, #footer .mod-contact-info h2 {
		font-size: 3em;
	}
	#footer .mod-contact-info .access [class*=link-] a:focus, #footer .mod-contact-info .access [class*=link-] a:hover {
		opacity: 0.5;
	}
	#footer .mod-contact-info .access [class*=link-] a:focus:after, #footer .mod-contact-info .access [class*=link-] a:hover:after {
		opacity: 0.5;
	}
	#footer .mod-contact-info .button [class*=link-] a:focus, #footer .mod-contact-info .button [class*=link-] a:hover {
		opacity: 0.7;
	}
	#main {
		font-size: 1em;
	}
	#main:before {
		position: fixed;
		z-index: -1;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100%;
		padding-bottom: 108px;
		content: '';
		opacity: .5;
		background: no-repeat center 60vh;
		background-size: auto 20em;
	}
	.telephone .link-telephone a:focus, .telephone .link-telephone a:hover {
		color: #fa436e;
	}
	.telephone .link-telephone a:focus svg, .telephone .link-telephone a:hover svg {
		fill: #fa436e;
	}
	.content-decorate {
		display: block;
	}
	.sub {
		font-size: .5em;
	}
	#container-information .mod-information figure {
		width: 100%;
		padding: 0;
		border-radius: 0;
	}
	#container-information .mod-information figure:before {
		border-radius: 0;
	}
	#container-information .mod-information figure .img {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		height: 100%;
		padding-top: 0;
		border-radius: 0;
	}
	#container-information .mod-information figure .img img {
		position: relative;
		width: auto;
		height: 100%;
	}
	#container-information .mod-information figure figcaption {
		width: 51.91147%;
		height: 100%;
		margin: auto 0 auto auto;
		padding: 2.286em 1.571em 1.571em 2.286em;
		background: 0 0;
	}
	#container-information .mod-information figure figcaption:before {
		position: absolute;
		z-index: -1;
		top: -46%;
		right: 0;
		width: 100%;
		height: 200%;
		content: '';
		border-radius: 50em 0 0 50em;
		background-color: #d5f4ff;
	}
	#container-thought .mod-thought .figure .frame {
		max-width: 77.6%;
	}
	#container-thought .mod-thought .summary {
		padding: 5.429em .5em 2.143em;
	}
	#container-thought .mod-thought .summary h3 {
		font-size: 2em;
	}
	#container-thought .mod-thought .item-figure {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 40.2% 1fr;
		grid-template-columns: 40.2% 1fr;
		-ms-grid-rows: 1fr;
		grid-template-rows: 1fr;
		grid-template-areas: 'img-1 summary-1';
	}
	#container-thought .mod-thought .item-figure .figure {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
		grid-area: img-1;
	}
	#container-thought .mod-thought .item-figure .summary {
		-ms-grid-row: 1;
		-ms-grid-column: 2;
		grid-area: summary-1;
	}
	#container-thought .mod-thought #item-figure-2, #container-thought .mod-thought #item-figure-4, #container-thought .mod-thought #item-figure-6 {
		-ms-grid-columns: 1fr 40.2%;
		grid-template-columns: 1fr 40.2%;
		grid-template-areas: 'summary-2 img-2';
	}
	#container-thought .mod-thought #item-figure-2 .frame:before, #container-thought .mod-thought #item-figure-4 .frame:before, #container-thought .mod-thought #item-figure-6 .frame:before {
		left: 34%;
		-webkit-transform: rotate(-78.4deg);
		transform: rotate(-78.4deg);
		background-size: auto 97%;
	}
	#container-thought .mod-thought #item-figure-2 .figure, #container-thought .mod-thought #item-figure-4 .figure, #container-thought .mod-thought #item-figure-6 .figure {
		-ms-grid-row: 1;
		-ms-grid-column: 2;
		grid-area: img-2;
	}
	#container-thought .mod-thought #item-figure-2 .summary, #container-thought .mod-thought #item-figure-4 .summary, #container-thought .mod-thought #item-figure-6 .summary {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
		grid-area: summary-2;
	}
	#container-topics .mod-topics #switchView:focus, #container-topics .mod-topics #switchView:hover {
		background: #50c8ff;
	}
	#container-topics .slide .slide-inner {
		overflow: auto;
		/*height:13.65em;*/
	}
	#container-topics .slide .slide-inner::-webkit-scrollbar {
		width: 13px;
	}
	#container-topics .slide .slide-inner::-webkit-scrollbar-track {
		background: #fff;
	}
	#container-topics .slide .slide-inner::-webkit-scrollbar-thumb {
		background: #b0dceb;
	}
	#container-banner .swiper-button-next:focus, #container-banner .swiper-button-next:hover, #container-banner .swiper-button-prev:focus, #container-banner .swiper-button-prev:hover {
		opacity: .7;
	}
	#container-interview h2:before {
		position: relative;
		top: -.5em;
		display: inline-block;
		width: 2.3273em;
		height: 1.818em;
		margin-right: .3em;
		content: '';
		vertical-align: top;
		background-image: url(/img/bg-ttl-interview.png);
		background-repeat: no-repeat;
		background-size: contain;
	}
	#container-interview .button .link-detail a:focus, #container-interview .button .link-detail a:hover {
		background-color: #21c3ff;
	}
	#container-interview .figure {
		float: none;
		width: auto;
		margin: 0;
	}
	#container-interview .figure .img {
		max-width: 82.10227%;
		padding-top: 82.10227%;
	}
	#container-interview .summary dt {
		margin-left: 0;
	}
	#container-interview .mod-interview {
		padding: 0 50px;
	}
	#container-interview .item-figure {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 39.11111% 1fr;
		grid-template-columns: 39.11111% 1fr;
		-ms-grid-rows: 1fr;
		grid-template-rows: 1fr;
		grid-template-areas: 'intImg intSummary';
	}
	#container-interview .item-figure .figure {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
		grid-area: intImg;
	}
	#container-interview .item-figure .summary {
		-ms-grid-row: 1;
		-ms-grid-column: 2;
		grid-area: intSummary;
	}
	#container-interview .swiper-container {
		padding-bottom: 0;
	}
	#container-interview .swiper-button-next, #container-interview .swiper-button-prev {
		top: 50%;
		bottom: auto;
		height: 51px;
		border: 0;
		border-radius: 0;
		background-size: contain;
	}
	#container-interview .swiper-button-next:focus, #container-interview .swiper-button-next:hover, #container-interview .swiper-button-prev:focus, #container-interview .swiper-button-prev:hover {
		opacity: .7;
	}
	#container-camp .mod-banner-camp a {
		height: auto;
		padding-top: 0;
	}
	#container-camp .mod-banner-camp a img {
		position: relative;
		top: 0;
		left: 0;
		width: 100%;
		height: auto;
		-webkit-transform: none;
		transform: none;
	}
	.mod-internalLink ul li {
		width: 33%;
	}
	.mod-internalLink ul li a {
		text-align: center;
	}
	.mod-internalLink ul li a:hover {
		opacity: 0.8;
	}
	.mod-internalLink2 ul li {
		width: 33%;
	}
	.mod-internalLink2 ul li a {
		text-align: center;
	}
	.mod-internalLink2 ul li a:hover {
		opacity: 0.8;
	}
	.btn-accordion button:focus, .btn-accordion button:hover {
		background: #21c3ff;
	}
	[class*=btn-link] a:focus, [class*=btn-link] a:hover {
		color: #fff;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #37c0ff), color-stop(50%, #04b0ff));
		background: -webkit-linear-gradient(top, #37c0ff 50%, #04b0ff 50%);
		background: linear-gradient(to bottom, #37c0ff 50%, #04b0ff 50%);
	}
	[class*=btn-link].btn-link-orange a:focus, [class*=btn-link].btn-link-orange a:hover {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #ffb64d), color-stop(50%, #ffa11a));
		background: -webkit-linear-gradient(top, #ffb64d 50%, #ffa11a 50%);
		background: linear-gradient(to bottom, #ffb64d 50%, #ffa11a 50%);
	}
	[class*=btn-link].btn-link-pink a:focus, [class*=btn-link].btn-link-pink a:hover {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #fc8ea7), color-stop(50%, #fb5c81));
		background: -webkit-linear-gradient(top, #fc8ea7 50%, #fb5c81 50%);
		background: linear-gradient(to bottom, #fc8ea7 50%, #fb5c81 50%);
	}
	.type_basic #main .mod-article {
		margin-bottom: 5em;
	}
	.mod-float-wrap .figure-float {
		width: 35%;
	}
	[class*=mod-tbl] {
		font-size: 1.429em;
	}
	.mod-banner-single {
		max-width: 620px;
	}
	.mod-banner-single .figure {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		width: 45%;
		height: 100%;
	}
	.mod-banner-single .figure .img {
		position: absolute;
		top: 50%;
		left: 50%;
		min-width: 100%;
		max-width: 200%;
		min-height: 100%;
		max-height: 200%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		border-radius: 0 60% 60% 0;
	}
	.mod-banner-single .summary {
		width: 60%;
		height: 100%;
		margin: auto 0 auto auto;
		padding: 4px 0;
	}
	.mod-banner-single .summary h3 {
		width: 90%;
		margin: 0 0 0 auto;
	}
	.mod-category-link {
		height: 255px;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-flow: row;
		flex-flow: row;
	}
	.mod-category-link [class*=category-] .bg {
		width: 100%;
		margin-left: auto;
	}
	.mod-category-link [class*=category-] ul {
		margin: 0 5%;
	}
}

.mod-category-link [class*=category-] ul a .ico {
	display: inline-block;
	margin: 0;
}

@media (min-width:900px) {
	#container-topics h2 {
		margin-bottom: .5em;
	}
	#container-topics .mod-topics #switchView {
		top: -45px
	}
	.mod-internalLink {
		font-size: 1.286em;
	}
}

@media (min-width:1024px) {
	#footer .mod-contact-info h2 {
		font-size: 4em;
	}
	#footer .mod-contact-info .access [class*=link-]:nth-child(odd) {
		padding-right: 1em;
	}
	#footer .mod-contact-info .access [class*=link-]:nth-child(even) {
		padding-left: 1em;
	}
	#footer .mod-contact-info .telephone .link-telephone {
		font-size: 3.6em;
	}
	.wrap {
		max-width: 1024px;
	}
	#main .mod-article .wrap {
		max-width: 1000px;
	}
	#container-thought .mod-thought .summary h3 {
		font-size: 2.143em;
	}
	#container-topics .mod-topics {
		width: 100%;
		padding-top: 0;
	}
}

/* 合宿
---------------------------------------------- */

#main .mod-article-lodge {
	margin-bottom: 5em;
}

.pc_lodge {
	display: block;
}

.smart_lodge {
	display: none;
}

.mod-slash-container {
	position: relative;
	z-index: 1;
	padding: 30px 0;
	background: url(/img/svg/bg-slash-3.svg);
	background-size: 18px;
}

.mod-slash-container:after, .mod-slash-container:before {
	position: absolute;
	right: 0;
	left: 0;
	height: 12px;
	content: '';
	background: url(/img/svg/bg-thought.svg);
	background-size: 18px 12px;
}

.mod-slash-container:before {
	top: -5px;
}

.mod-slash-container:after {
	bottom: -5px;
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.mod-slash-container .wrap {
	z-index: 2;
}

.mod-graph h5 {
	line-height: 1.4;
	position: relative;
	margin: 0 6px 3em;
	padding: 1em;
	text-align: center;
	border-radius: 6px;
	background-color: #d5f4ff;
	-webkit-box-shadow: 3px 3px 0 #73c9e9;
	box-shadow: 3px 3px 0 #73c9e9;
}

.mod-graph h5:after, .mod-graph h5:before {
	position: absolute;
	top: auto;
	right: 0;
	bottom: -17px;
	left: 0;
	width: 0;
	height: 0;
	margin: auto;
	content: '';
	border-width: 17px 11px 0;
	border-style: solid;
	border-color: #73c9e9 transparent transparent;
}

.mod-graph h5:before {
	z-index: 1;
	bottom: -13px;
	border-color: #d5f4ff transparent transparent;
}

.mod-flow, .mod-graph .mod-graph-wrap {
	letter-spacing: -.4em;
}

.mod-graph .mod-graph-wrap [class*=mod-graph-item] {
	position: relative;
	overflow: hidden;
	width: 300px;
	margin: auto;
	padding-top: 300px;
	vertical-align: top;
	letter-spacing: 0;
}

.mod-graph .mod-graph-wrap [class*=mod-graph-item] dl {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 95%;
	height: 95%;
	margin: auto;
	padding: 10% 8%;
	text-align: center;
	border-radius: 1000px;
	background-image: url(/img/svg/bg-slash-4.svg);
	background-size: 14px auto;
}

.mod-graph .mod-graph-wrap [class*=mod-graph-item] dl:after {
	position: absolute;
	right: 0;
	bottom: 5%;
	left: 0;
	width: 29.86667%;
	height: 30px;
	margin: auto;
	padding-top: 21.86667%;
	content: '';
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.mod-graph .mod-graph-wrap [class*=mod-graph-item] dl dt {
	font-size: 1.25em;
	position: relative;
	z-index: 1;
	display: block;
	width: 70%;
	margin: 0 auto 1em;
	padding: .3em;
	border-radius: 4px;
	background: #fff;
	-webkit-box-shadow: 3px 3px 0 #ded05b;
	box-shadow: 3px 3px 0 #ded05b;
}

.mod-graph .mod-graph-wrap [class*=mod-graph-item] dl dd {
	position: relative;
	z-index: 1;
}

.mod-graph .mod-graph-wrap [class*=mod-graph-item] dl .summary, .mod-topics .slide li .topic-item dl {
	min-height: 3em;
}

.mod-graph .mod-graph-wrap [class*=mod-graph-item] dl .price em {
	font-size: 1.75em;
	color: #c00;
}

.mod-graph .mod-graph-wrap [class*=mod-graph-item].mod-graph-item-1 dl:after {
	background-image: url(/img/bg-graph-1.png);
}

.mod-graph .mod-graph-wrap [class*=mod-graph-item].mod-graph-item-2 dl:after {
	background-image: url(/img/bg-graph-2.png);
}

.mod-flow {
	width: 95%;
	margin: 1em auto 3em;
}

.mod-flow .mod-flow-item {
	position: relative;
	display: inline-block;
	width: 100%;
	margin-top: 40px;
	padding: .7em;
	letter-spacing: 0;
	border-radius: 1em .3em .3em .3em;
	background-color: #fcf5bb;
	background-image: url(/img/bg-dot.png);
	background-size: 17px auto;
	-webkit-box-shadow: 4px 4px 0 #e9dd78;
	box-shadow: 4px 4px 0 #e9dd78;
}

.mod-flow .mod-flow-item:nth-child(1) {
	margin-top: 0;
}

.mod-flow .mod-flow-item:before {
	position: absolute;
	top: -40px;
	left: 0;
	width: 100%;
	height: 40px;
	content: '';
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	background-image: url(/img/arrow.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 50%;
}

.mod-flow .mod-flow-item .summary {
	display: -ms-grid;
	display: grid;
	padding: .5em 0;
	-ms-grid-columns: 45% 1fr;
	grid-template-columns: 45% 1fr;
	-ms-grid-rows: 1fr;
	grid-template-rows: 1fr;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.mod-flow .mod-flow-item h4 {
	font-size: 1.176em;
	font-weight: 400;
	line-height: 1;
	position: relative;
	margin-bottom: .5em;
	padding: .4em .3em .3em 2em;
	text-align: center;
	color: #77ceee;
	background: #fff;
}

.mod-flow .mod-flow-item h4 .num {
	font-size: 1em!important;
	line-height: 2.8;
	position: absolute;
	top: -.7em;
	left: -1em;
	width: 2.65em;
	height: 2.65em;
	color: #fff!important;
	border-radius: 100px;
	background: #77ceee;
}

.mod-flow .mod-flow-item .img {
	margin-bottom: 0;
	text-align: center;
}

.mod-flow .mod-flow-item .img img {
	width: 70%;
}

.mod-flow .mod-flow-item .txt {
	margin-bottom: 0;
}

.mod-contact {
	text-align: center;
}

.mod-contact .telephone {
	position: relative;
	width: 90%;
	max-width: 574px;
	margin: 1em auto;
	border-radius: 8px;
	background-image: url(/img/svg/bg-slash-5.svg);
	background-size: 14px auto;
}

.mod-contact .telephone:before {
	position: absolute;
	top: 6px;
	right: 6px;
	bottom: 6px;
	left: 6px;
	margin: auto;
	padding: 1em;
	content: '';
	border-radius: 8px;
	background: #fff;
}

.mod-contact .telephone h4 {
	font-size: 1em;
	position: relative;
	top: 8px;
	margin-bottom: .3em;
	text-align: center;
	color: #f7144a;
}

.mod-contact .telephone h4:after, .mod-contact .telephone h4:before {
	position: relative;
	top: .2em;
	left: -.5em;
	display: inline-block;
	width: 1px;
	height: 1.125em;
	content: '';
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	background: #f7144a;
}

.mod-contact .telephone h4:after {
	left: .5em;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.mod-contact .telephone .link-telephone {
	font-size: 2.5em;
	position: relative;
	z-index: 1;
}

.mod-contact .telephone .link-telephone .ico {
	background: #fa5f84;
}

#banner-corse:after, #banner-corse:before, #container-elected:after, #container-elected:before {
	display: none;
}

#banner-corse .banner-wrap {
	position: relative;
	max-width: 608px;
	min-height: 20em;
	margin: 0 auto;
}

#banner-corse .banner-wrap h2 {
	position: relative;
	z-index: 1;
	width: 100%;
	margin: 0 auto 2em;
}

#banner-corse .banner-wrap h2 .txt img {
	height: auto;
}

#banner-corse .banner-wrap .badge {
	position: absolute;
	z-index: 1;
	top: -1.5em;
	left: -1.125em;
	width: 23.19079%;
	padding-top: 17.43421%;
}

#banner-corse .banner-wrap .badge img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
}

#banner-corse .banner-wrap [class*=banner-corse-] {
	line-height: 1;
	position: absolute;
	bottom: 0;
	width: 16.44737%;
	padding-top: 16.44737%;
	border-radius: 500px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-1 {
	z-index: 1;
	left: 0;
}

#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-2 {
	z-index: 2;
	right: 0;
	-webkit-animation-duration: 11s;
	animation-duration: 11s;
	-webkit-animation-delay: -1s;
	animation-delay: -1s;
}

#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-3 {
	z-index: 2;
	-webkit-animation-duration: 13s;
	animation-duration: 13s;
	-webkit-animation-delay: -3s;
	animation-delay: -3s;
}

#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-4 {
	z-index: 1;
	-webkit-animation-duration: 20s;
	animation-duration: 20s;
	-webkit-animation-delay: -3s;
	animation-delay: -3s;
}

#banner-corse .mod-text {
	font-size: 1.125em;
	line-height: 1.8;
	position: relative;
	z-index: 3;
	padding-bottom: 4em;
	text-align: center;
}

#banner-corse .mod-text em {
	color: #00a0e9;
}

#banner-corse .mod-text:after, .mod-topics #switchView:after {
	content: '';
	background-repeat: no-repeat;
	background-size: contain;
}

#banner-corse .mod-text:after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	padding-top: 35px;
	width: 53.125%;
	background-image: url(/img/txt-bioka-safety.png);
	background-position: center bottom;
}

.mod-topics {
	position: relative;
	width: 98%;
	margin: 0 auto;
	padding-top: 10px;
}

.mod-topics #switchView {
	font-size: .857em;
	line-height: 1;
	position: absolute;
	top: -26px;
	right: 0;
	padding: .75em 1em;
	vertical-align: middle;
	color: #fff;
	border: 0;
	border-radius: .3em;
	outline: 0;
	background: #00a0e9;
}

.mod-topics #switchView:after {
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-left: .3em;
	vertical-align: top;
	border-radius: 10em;
	background-color: #fff;
	background-image: url(/img/svg/ico-arrow-right-inverted.svg);
	background-position: center;
}

.mod-topics .slide {
	padding: .5em 10px .5em 0;
	background: #d5f4ff;
}

.mod-topics .slide ul {
	padding-right: 10px;
}

.mod-topics .slide li {
	margin-bottom: 0;
	list-style: none;
	border-top: dotted 1px #34b4e2;
}

.mod-topics .slide li:nth-child(1) {
	border: 0;
}

.mod-topics .slide li .topic-item {
	display: block;
	padding: 1.429em 1.429em 1.429em 2.5em;
	background-image: url(/img/svg/ico-circle.svg);
	background-repeat: no-repeat;
	background-position: 1.35em 1.65em;
	background-size: 12px auto;
}

.mod-topics .slide li .topic-item dt {
	position: relative;
	top: -.5em;
	float: left;
	width: 8.5em;
	letter-spacing: -.4em;
}

.mod-topics .slide li .topic-item dd {
	margin-left: 9.5em;
}

.mod-topics .slide li a.topic-item {
	background-image: url(/img/svg/ico-triangle.svg);
	background-position: 1.5em 1.65em;
	background-size: 7px auto;
}

.mod-topics .slide li .category, .mod-topics .slide li .date {
	display: inline-block;
	width: 7em;
	letter-spacing: 0;
}

.mod-topics .slide li .category {
	overflow: hidden;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 8.5em;
	text-align: center;
	vertical-align: text-bottom;
	white-space: nowrap;
	text-overflow: ellipsis;
	border-radius: .2em;
	background-color: #00a0e9;
}

.mod-topics .slide li .category:before {
	font-size: .714em;
	content: attr(data-category);
	color: #fff;
}

.mod-topics .slide li .category[data-category=インフォメーション] {
	background-color: #16b701;
}

.mod-topics .slide li .category[data-category=キャンペーン] {
	background-color: #ff8400;
}

.mod-topics .slide li .category[data-category=イベント], [data-category=lodge] #container-interview .button .link-detail a, [data-category=lodge] #container-interview:before {
	background-color: #fa436e;
}

.mod-topics .slide li .category[data-category=お知らせ] {
	background-color: #a55b9a;
}

.mod-banner {
	position: relative;
	padding-right: 40px;
	padding-left: 40px;
}

.mod-banner .swiper-container {
	max-width: 900px;
	padding-bottom: 20px;
}

.mod-banner .swiper-pagination {
	bottom: 0;
}

.mod-banner .swiper-button-prev {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.mod-banner .swiper-button-next, .mod-banner .swiper-button-prev {
	width: 25px;
	height: 25px;
	border-radius: 50em;
	outline: 0;
	background-color: rgba(181, 181, 181, .7);
	background-image: url(/img/svg/ico-arrow-right.svg);
}

.mod-banner .swiper-pagination {
	right: 0;
	left: 0;
}

.mod-banner .swiper-pagination-bullet {
	margin: 0 6px;
}

.mod-banner .swiper-pagination-bullet-active {
	background: #00a0e9;
}

.mod-banner .item a {
	display: block;
	margin-bottom: 20px;
}

.mod-interview {
	position: relative;
	padding: 0 20px;
}

.mod-interview .figure {
	float: left;
	width: 9em;
	margin: 0 1em 1em 0;
}

.mod-interview .figure .img {
	position: relative;
	display: block;
	overflow: hidden;
	max-width: 100%;
	height: 0;
	padding-top: 100%;
	border-radius: 50em;
	background-color: #fff!important;
	background-repeat: no-repeat!important;
	background-position: center!important;
	background-size: cover!important;
}

.mod-interview .summary dt {
	margin-left: 7em;
}

.mod-interview .item {
	display: inline-block;
	white-space: normal;
}

.mod-interview .item dl {
	text-align: left;
}

.mod-interview .item dt {
	font-size: 1.429em;
	font-weight: 700;
	margin-bottom: 1em;
	border-bottom: 1px dotted #fff;
}

.mod-interview .item dd {
	line-height: 1.8;
}

.mod-interview .item-figure {
	max-width: 900px;
}

.mod-interview .swiper-container {
	padding-bottom: 50px;
}

.mod-interview .swiper-button-prev {
	top: auto;
	width: 26px;
	height: 26px;
	-webkit-transform: rotate(-180deg);
	transform: rotate(-180deg);
	border: 1px solid;
	border-radius: 50em;
	outline: 0;
	background-image: url(/img/svg/ico-chevron-right.svg);
	background-size: auto 60%;
}

.content-decorate, .mod-interview .swiper-button-next, .mod-interview .swiper-button-prev {
	bottom: 0;
	background-repeat: no-repeat;
	background-position: center;
}

.mod-interview .swiper-button-next {
	width: 26px;
	height: 26px;
	border: 1px solid;
	border-radius: 50em;
	outline: 0;
	background-image: url(/img/svg/ico-chevron-right.svg);
	top: auto;
	background-size: auto 60%;
}

.mod-banner-camp {
	max-width: 1000px;
	margin: auto;
}

.mod-banner-camp a {
	position: relative;
	display: block;
	overflow: hidden;
	height: 100px;
	max-height: 172px;
	text-align: center;
}

.mod-banner-camp a img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	max-width: 1000px;
	height: 100%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.mod-tie .mod-tie-content {
	position: relative;
}

.mod-tie .mod-tie-content .figure {
	position: relative;
	z-index: 5;
}

.mod-tie .mod-tie-content .figure .frame {
	position: relative;
	z-index: 2;
	display: block;
	max-width: 55%;
	margin: 0 auto;
	border-radius: 50em;
}

.mod-tie .mod-tie-content .figure .frame .img {
	display: block;
	padding-top: 100%;
	border-radius: 50em;
	background-color: #fff!important;
	background-repeat: no-repeat!important;
	background-position: center!important;
	background-size: cover!important;
}

.mod-tie .mod-tie-content .figure .frame:before {
	font-size: 2em;
	line-height: 1;
	position: absolute;
	top: 43%;
	left: 0;
	display: block;
	padding-top: 68%;
	padding-left: 55%;
	content: attr(title);
	-webkit-transform: rotate(-19.4deg);
	transform: rotate(-19.4deg);
	color: #97dbf3;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: auto 97%;
}

.mod-tie .mod-tie-content .figure .frame:after {
	position: absolute;
	z-index: -1;
	top: 6px;
	left: 6px;
	width: 100%;
	height: 100%;
	content: '';
	border-radius: 50em;
	background: #97dbf3;
}

.mod-tie .mod-tie-content .summary {
	line-height: 1.8;
	padding: 5.429em .5em 2.143em;
}

.mod-tie .mod-tie-content .summary h3 {
	font-size: 1.5em;
	font-weight: 100;
	position: relative;
	margin-bottom: 1em;
	padding-left: 3.267em;
	color: #fa436e;
}

#container-elected .mod-tie-content .summary h3 .ico {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 4.4em;
	height: 4.267em;
	padding-top: 2.1em;
	background-image: url(/img/ttl-elected-item.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.mod-tie .mod-tie-content .summary h3 .txt {
	line-height: 1;
	position: relative;
	z-index: 1;
	display: inline;
	background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #fff), color-stop(50%, transparent));
	background-image: -webkit-linear-gradient(left, #fff 50%, transparent 50%);
	background-image: linear-gradient(to right, #fff 50%, transparent 50%);
	background-repeat: no-repeat;
	background-position: 0 bottom;
	background-size: 200% 40%;
}

.mod-tie .mod-tie-content .summary h3 .ico {
	position: absolute;
	top: -.5em;
	left: 0;
	display: inline-block;
	text-align: center;
}

.mod-tie .mod-tie-content .mod-tie-item {
	position: relative;
	z-index: 5;
	margin-bottom: 2em;
}

.mod-tie .mod-tie-content .aos-animate .summary h3 .txt {
	-webkit-animation: lineMarker 1s ease-out 0s 1 forwards;
	animation: lineMarker 1s ease-out 0s 1 forwards;
}

[data-category=lodge] #visual #creative {
	background-image: url(/img/school/bg_lodge.jpg);
}

[data-category=lodge] #visual #creative .caption span {
	top: 70px;
	right: 0;
	bottom: 50px;
	left: 0;
	width: 100%;
	height: calc(100% - 70px);
	max-height: 502px;
	margin: auto;
	background-image: url(/img/img-lodge-header.png);
	background-position: center;
}

[data-category=lodge] #container-interview {
	margin-bottom: 0;
	background-color: #fa436e;
	background-image: url(/img/svg/bg-slash-7.svg);
}

#container-elected {
	margin-top: -3em;
	/*padding-top:5em;*/
	background-image: url(/img/svg/bg-slash-6.svg);
}

#container-elected h2 {
	font-size: 4em;
	margin-bottom: 0;
	text-align: center;
}

#container-elected h2::before, #container-thought h2::before {
	/*
    font-size: 1.4em;
    position: relative;
    top: -.1em;
    display: inline-block;
    width: 1.194em;
    height: 1em;
    content: '';
    vertical-align: top;
    background-image: url(/img/ttl-thought-mark.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
*/
}

#container-elected h2 .txt {
	font-size: .875em;
}

#container-elected .mod-tie-content .figure .frame:before {
	font-size: 1.25em;
	font-weight: 400;
	line-height: 1;
	top: 38%;
	left: 0;
	display: block;
	padding-top: 78.5%;
	padding-bottom: 1.9%;
	padding-left: 55.5%;
	color: #97dbf3;
	background-image: url(/img/bg-elected-item_l.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: auto 97%;
}

#container-elected .mod-tie-content .summary h3 {
	min-height: 3.5em;
	padding-top: .5em;
	padding-left: 4.6em;
}

#container-elected .mod-tie-content .summary h3 .txt {
	line-height: 1.2;
}

#container-elected .mod-tie-content .summary h3 .ico {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 4.4em;
	height: 4.267em;
	padding-top: 2.1em;
	background-image: url(/img/ttl-elected-item.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

#container-lodge-timeline {
	margin-bottom: 0!important;
	padding-top: 3.571em;
	background-image: url(/img/bg-lodge-tl-2.png), url(/img/bg-lodge-tl-1.gif);
	background-repeat: repeat-x, repeat;
	background-position: top;
	background-size: auto 23px, 64px;
}

#container-lodge-timeline h2[role=banner] {
	font-size: 1.571em;
	font-weight: 400;
	position: relative;
	margin-bottom: .1em;
	text-align: center;
	color: #fa436e;
}

#container-lodge-timeline h2[role=banner] .txt:after, #container-lodge-timeline h2[role=banner] .txt:before {
	position: relative;
	top: .2em;
	left: -.5em;
	display: inline-block;
	width: 1px;
	height: 1.125em;
	content: '';
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	background: #fa436e;
}

#container-lodge-timeline h2[role=banner] .txt:after {
	left: .5em;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#container-lodge-timeline h3.ttl-mt {
	position: relative;
	padding: 1.5em .5em;
	background-image: url(/img/bg-mt-2.png), url(/img/bg-mt-1.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 100% 100%, 100% 100%;
}

#container-lodge-timeline h3.ttl-mt span {
	position: relative;
	z-index: 3;
	display: block;
}

#container-lodge-timeline h3.ttl-mt .img {
	position: absolute;
	top: -4%;
	left: 3%;
	width: 16.3%;
	-webkit-transform: rotate(-8deg);
	transform: rotate(-8deg);
	background: #fff;
	-webkit-box-shadow: .1em .1em .3em rgba(0, 0, 0, .1);
	box-shadow: .1em .1em .3em rgba(0, 0, 0, .1);
}

#container-lodge-timeline h3.ttl-mt .img:after {
	position: absolute;
	top: -10%;
	left: 10%;
	width: 17.17791%;
	height: 0;
	padding-top: 33.74233%;
	content: '';
	background-image: url(/img/dec-clip.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
}

#container-lodge-timeline h3.ttl-mt .img img {
	border: .3em solid #fff;
}

#container-lodge-timeline h3.ttl-mt .txt {
	width: 45%;
	margin: auto;
}

#container-lodge-timeline h3.ttl-mt .balloon {
	position: absolute;
	top: -4%;
	right: 6%;
	width: 16%;
}

#container-lodge-timeline.aos-animate h3.ttl-mt {
	-webkit-animation: tape-1 1s ease-in 0s 1;
	animation: tape-1 1s ease-in 0s 1;
}

#container-lodge-timeline .mod-timeline {
	margin-bottom: 0;
}

.mod-timeline {
	width: 90%;
	max-width: 750px;
	margin: 3em auto;
}

.mod-timeline .timeline-item {
	position: relative;
	display: -ms-grid;
	display: grid;
	width: 100%;
	margin: 0;
	grid-template-areas: 't-data t-content';
	-ms-grid-columns: 3em 1fr;
	grid-template-columns: 3em 1fr;
	-ms-grid-rows: 1fr;
	grid-template-rows: 1fr;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

.mod-timeline .timeline-item:last-child .timeline-date {
	background: 0 0;
}

.mod-timeline .timeline-date {
	font-weight: 700;
	position: relative;
	padding: .5em .1em;
	text-align: center;
	background-image: url(/img/bg-tl-arrow.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 60% auto;
	-ms-grid-row: 1;
	-ms-grid-column: 1;
	grid-area: t-data;
}

.mod-timeline .timeline-date:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 10px;
	padding-top: 100%;
	content: '';
	background-image: url(/img/bg-lodge-tl-1.gif);
	background-size: 64px;
}

.mod-timeline .timeline-date .clock {
	top: 0;
	right: 0;
	left: 0;
	display: block;
	width: 76%;
	height: 0;
	margin: auto;
	padding-top: 76%;
	background-image: url(/img/bg-tl-clock.png);
}

.mod-timeline .timeline-date .clock:before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	background-image: url(/img/bg-tl-clock-h.png);
}

.mod-timeline .timeline-content h3 .date, .mod-timeline .timeline-date .clock, .mod-timeline .timeline-date .clock:after, .mod-timeline .timeline-date .clock:before {
	position: absolute;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.mod-timeline .timeline-date .clock:after {
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(/img/bg-tl-clock-m.png);
}

.mod-timeline .timeline-date .clock[data-hour='8'][data-min='0']:before {
	-webkit-transform: rotate(240deg);
	transform: rotate(240deg);
}

.mod-timeline .timeline-date .clock[data-hour='8'][data-min='10']:before {
	-webkit-transform: rotate(245deg);
	transform: rotate(245deg);
}

.mod-timeline .timeline-date .clock[data-hour='8'][data-min='20']:before {
	-webkit-transform: rotate(250deg);
	transform: rotate(250deg);
}

.mod-timeline .timeline-date .clock[data-hour='8'][data-min='30']:before {
	-webkit-transform: rotate(255deg);
	transform: rotate(255deg);
}

.mod-timeline .timeline-date .clock[data-hour='8'][data-min='40']:before {
	-webkit-transform: rotate(260deg);
	transform: rotate(260deg);
}

.mod-timeline .timeline-date .clock[data-hour='8'][data-min='50']:before {
	-webkit-transform: rotate(265deg);
	transform: rotate(265deg);
}

.mod-timeline .timeline-date .clock[data-hour='9'][data-min='0']:before {
	-webkit-transform: rotate(270deg);
	transform: rotate(270deg);
}

.mod-timeline .timeline-date .clock[data-hour='9'][data-min='10']:before {
	-webkit-transform: rotate(275deg);
	transform: rotate(275deg);
}

.mod-timeline .timeline-date .clock[data-hour='9'][data-min='20']:before {
	-webkit-transform: rotate(280deg);
	transform: rotate(280deg);
}

.mod-timeline .timeline-date .clock[data-hour='9'][data-min='30']:before {
	-webkit-transform: rotate(285deg);
	transform: rotate(285deg);
}

.mod-timeline .timeline-date .clock[data-hour='9'][data-min='40']:before {
	-webkit-transform: rotate(290deg);
	transform: rotate(290deg);
}

.mod-timeline .timeline-date .clock[data-hour='9'][data-min='50']:before {
	-webkit-transform: rotate(295deg);
	transform: rotate(295deg);
}

.mod-timeline .timeline-date .clock[data-hour='10'][data-min='0']:before {
	-webkit-transform: rotate(300deg);
	transform: rotate(300deg);
}

.mod-timeline .timeline-date .clock[data-hour='10'][data-min='10']:before {
	-webkit-transform: rotate(305deg);
	transform: rotate(305deg);
}

.mod-timeline .timeline-date .clock[data-hour='10'][data-min='20']:before {
	-webkit-transform: rotate(310deg);
	transform: rotate(310deg);
}

.mod-timeline .timeline-date .clock[data-hour='10'][data-min='30']:before {
	-webkit-transform: rotate(315deg);
	transform: rotate(315deg);
}

.mod-timeline .timeline-date .clock[data-hour='10'][data-min='40']:before {
	-webkit-transform: rotate(320deg);
	transform: rotate(320deg);
}

.mod-timeline .timeline-date .clock[data-hour='10'][data-min='50']:before {
	-webkit-transform: rotate(325deg);
	transform: rotate(325deg);
}

.mod-timeline .timeline-date .clock[data-hour='11'][data-min='0']:before {
	-webkit-transform: rotate(330deg);
	transform: rotate(330deg);
}

.mod-timeline .timeline-date .clock[data-hour='11'][data-min='10']:before {
	-webkit-transform: rotate(335deg);
	transform: rotate(335deg);
}

.mod-timeline .timeline-date .clock[data-hour='11'][data-min='20']:before {
	-webkit-transform: rotate(340deg);
	transform: rotate(340deg);
}

.mod-timeline .timeline-date .clock[data-hour='11'][data-min='30']:before {
	-webkit-transform: rotate(345deg);
	transform: rotate(345deg);
}

.mod-timeline .timeline-date .clock[data-hour='11'][data-min='40']:before {
	-webkit-transform: rotate(350deg);
	transform: rotate(350deg);
}

.mod-timeline .timeline-date .clock[data-hour='11'][data-min='50']:before {
	-webkit-transform: rotate(355deg);
	transform: rotate(355deg);
}

.mod-timeline .timeline-date .clock[data-hour='12'][data-min='0']:before {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}

.mod-timeline .timeline-date .clock[data-hour='12'][data-min='10']:before {
	-webkit-transform: rotate(365deg);
	transform: rotate(365deg);
}

.mod-timeline .timeline-date .clock[data-hour='12'][data-min='20']:before {
	-webkit-transform: rotate(370deg);
	transform: rotate(370deg);
}

.mod-timeline .timeline-date .clock[data-hour='12'][data-min='30']:before {
	-webkit-transform: rotate(375deg);
	transform: rotate(375deg);
}

.mod-timeline .timeline-date .clock[data-hour='12'][data-min='40']:before {
	-webkit-transform: rotate(380deg);
	transform: rotate(380deg);
}

.mod-timeline .timeline-date .clock[data-hour='12'][data-min='50']:before {
	-webkit-transform: rotate(385deg);
	transform: rotate(385deg);
}

.mod-timeline .timeline-date .clock[data-hour='13'][data-min='0']:before {
	-webkit-transform: rotate(390deg);
	transform: rotate(390deg);
}

.mod-timeline .timeline-date .clock[data-hour='13'][data-min='10']:before {
	-webkit-transform: rotate(395deg);
	transform: rotate(395deg);
}

.mod-timeline .timeline-date .clock[data-hour='13'][data-min='20']:before {
	-webkit-transform: rotate(400deg);
	transform: rotate(400deg);
}

.mod-timeline .timeline-date .clock[data-hour='13'][data-min='30']:before {
	-webkit-transform: rotate(405deg);
	transform: rotate(405deg);
}

.mod-timeline .timeline-date .clock[data-hour='13'][data-min='40']:before {
	-webkit-transform: rotate(410deg);
	transform: rotate(410deg);
}

.mod-timeline .timeline-date .clock[data-hour='13'][data-min='50']:before {
	-webkit-transform: rotate(415deg);
	transform: rotate(415deg);
}

.mod-timeline .timeline-date .clock[data-hour='14'][data-min='0']:before {
	-webkit-transform: rotate(420deg);
	transform: rotate(420deg);
}

.mod-timeline .timeline-date .clock[data-hour='14'][data-min='10']:before {
	-webkit-transform: rotate(425deg);
	transform: rotate(425deg);
}

.mod-timeline .timeline-date .clock[data-hour='14'][data-min='20']:before {
	-webkit-transform: rotate(430deg);
	transform: rotate(430deg);
}

.mod-timeline .timeline-date .clock[data-hour='14'][data-min='30']:before {
	-webkit-transform: rotate(435deg);
	transform: rotate(435deg);
}

.mod-timeline .timeline-date .clock[data-hour='14'][data-min='40']:before {
	-webkit-transform: rotate(440deg);
	transform: rotate(440deg);
}

.mod-timeline .timeline-date .clock[data-hour='14'][data-min='50']:before {
	-webkit-transform: rotate(445deg);
	transform: rotate(445deg);
}

.mod-timeline .timeline-date .clock[data-hour='15'][data-min='0']:before {
	-webkit-transform: rotate(450deg);
	transform: rotate(450deg);
}

.mod-timeline .timeline-date .clock[data-hour='15'][data-min='10']:before {
	-webkit-transform: rotate(455deg);
	transform: rotate(455deg);
}

.mod-timeline .timeline-date .clock[data-hour='15'][data-min='20']:before {
	-webkit-transform: rotate(460deg);
	transform: rotate(460deg);
}

.mod-timeline .timeline-date .clock[data-hour='15'][data-min='30']:before {
	-webkit-transform: rotate(465deg);
	transform: rotate(465deg);
}

.mod-timeline .timeline-date .clock[data-hour='15'][data-min='40']:before {
	-webkit-transform: rotate(470deg);
	transform: rotate(470deg);
}

.mod-timeline .timeline-date .clock[data-hour='15'][data-min='50']:before {
	-webkit-transform: rotate(475deg);
	transform: rotate(475deg);
}

.mod-timeline .timeline-date .clock[data-hour='16'][data-min='0']:before {
	-webkit-transform: rotate(480deg);
	transform: rotate(480deg);
}

.mod-timeline .timeline-date .clock[data-hour='16'][data-min='10']:before {
	-webkit-transform: rotate(485deg);
	transform: rotate(485deg);
}

.mod-timeline .timeline-date .clock[data-hour='16'][data-min='20']:before {
	-webkit-transform: rotate(490deg);
	transform: rotate(490deg);
}

.mod-timeline .timeline-date .clock[data-hour='16'][data-min='30']:before {
	-webkit-transform: rotate(495deg);
	transform: rotate(495deg);
}

.mod-timeline .timeline-date .clock[data-hour='16'][data-min='40']:before {
	-webkit-transform: rotate(500deg);
	transform: rotate(500deg);
}

.mod-timeline .timeline-date .clock[data-hour='16'][data-min='50']:before {
	-webkit-transform: rotate(505deg);
	transform: rotate(505deg);
}

.mod-timeline .timeline-date .clock[data-hour='17'][data-min='0']:before {
	-webkit-transform: rotate(510deg);
	transform: rotate(510deg);
}

.mod-timeline .timeline-date .clock[data-hour='17'][data-min='10']:before {
	-webkit-transform: rotate(515deg);
	transform: rotate(515deg);
}

.mod-timeline .timeline-date .clock[data-hour='17'][data-min='20']:before {
	-webkit-transform: rotate(520deg);
	transform: rotate(520deg);
}

.mod-timeline .timeline-date .clock[data-hour='17'][data-min='30']:before {
	-webkit-transform: rotate(525deg);
	transform: rotate(525deg);
}

.mod-timeline .timeline-date .clock[data-hour='17'][data-min='40']:before {
	-webkit-transform: rotate(530deg);
	transform: rotate(530deg);
}

.mod-timeline .timeline-date .clock[data-hour='17'][data-min='50']:before {
	-webkit-transform: rotate(535deg);
	transform: rotate(535deg);
}

.mod-timeline .timeline-date .clock[data-min='0']:after {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

.mod-timeline .timeline-date .clock[data-min='10']:after {
	-webkit-transform: rotate(60deg);
	transform: rotate(60deg);
}

.mod-timeline .timeline-date .clock[data-min='20']:after {
	-webkit-transform: rotate(120deg);
	transform: rotate(120deg);
}

.mod-timeline .timeline-date .clock[data-min='30']:after {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.mod-timeline .timeline-date .clock[data-min='40']:after {
	-webkit-transform: rotate(240deg);
	transform: rotate(240deg);
}

.mod-timeline .timeline-date .clock[data-min='50']:after {
	-webkit-transform: rotate(300deg);
	transform: rotate(300deg);
}

.mod-timeline .timeline-content {
	position: relative;
	padding: 0 0 2em 1em;
	-ms-grid-row: 1;
	-ms-grid-column: 2;
	grid-area: t-content;
}

.mod-timeline .timeline-content h3 {
	font-size: 1.25em;
	font-weight: 400;
	position: relative;
	margin-top: -.3em;
	margin-bottom: 1em;
	padding: 1em .5em .5em 5.5em;
	background-image: url(/img/bg-mt-3.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 100% 100%;
}

.mod-timeline .timeline-content h3 .date {
	font-size: .667em;
	line-height: 2;
	top: 1.5em;
	left: 1em;
	display: inline-block;
	width: 7em;
	height: 2em;
	text-align: center;
	color: #00a0e9;
	background-image: url(/img/bg-fill-1.png);
}

.mod-timeline .timeline-content:before {
	position: absolute;
	top: 1em;
	left: -7px;
	width: 12px;
	height: 12px;
	content: '';
	border-radius: 100%;
}

.mod-timeline [class*=figure-] {
	width: 100%;
	-ms-grid-rows: 1fr;
	grid-template-rows: 1fr;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

.mod-timeline .figure-right {
	grid-template-areas: 't-summary t-figure';
	-ms-grid-columns: 1fr 35%;
	grid-template-columns: 1fr 35%;
}

.mod-timeline .figure-left {
	grid-template-areas: 't-figure t-summary';
	-ms-grid-columns: 35% 1fr;
	grid-template-columns: 35% 1fr;
}

.mod-timeline .figure {
	padding: 0 .2em;
	-ms-grid-row: 1;
	-ms-grid-column: 1;
	grid-area: t-figure;
}

.mod-timeline .summary {
	-ms-grid-row: 1;
	-ms-grid-column: 2;
	grid-area: t-summary;
}

.mod-timeline .img {
	position: relative;
	display: block;
	margin: 0 auto 1em;
	padding: .3em;
	background: #fff;
	-webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, .1);
	box-shadow: 0 3px 6px rgba(0, 0, 0, .1);
}

.mod-timeline .img:after {
	position: absolute;
	top: -2.5%;
	right: 0;
	left: 0;
	width: 10%;
	height: 0;
	margin: auto;
	padding-top: 5%;
	content: '';
	background-color: rgba(0, 160, 233, .7);
}

.mod-timeline .img.aos-animate {
	-webkit-animation: wobble 1.5s ease-in 0s 1 forwards;
	animation: wobble 1.5s ease-in 0s 1 forwards;
}

@media (min-width:360px) {
	#container-elected h2 {
		font-size: 5em;
	}
}

@media (min-width:425px) {
	.mod-contact .telephone h4 {
		font-size: 1.314em;
	}
	.mod-contact .telephone .link-telephone {
		font-size: 3em;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-3 {
		left: 4em;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-4 {
		right: 4em;
	}
	#banner-corse .mod-text {
		font-size: 1.5em;
		padding-bottom: 5em;
	}
	.mod-topics .slide li .topic-item dl {
		min-height: 1em;
	}
	.mod-topics .slide li .topic-item dt {
		top: 0;
		width: 15.7em;
	}
	.mod-topics .slide li .topic-item dd {
		margin-left: 16.5em;
	}
	.mod-banner-camp a {
		height: 0;
		padding-top: 17.2%;
	}
	.mod-tie .mod-tie-content .figure .frame {
		max-width: 250px;
	}
	.mod-tie .mod-tie-content .summary h3 {
		font-size: 1.813em;
	}
	.mod-timeline .timeline-item {
		-ms-grid-columns: 4em 1fr;
		grid-template-columns: 4em 1fr;
	}
	.mod-timeline [class*=figure-] {
		display: -ms-grid;
		display: grid;
	}
}

@media (min-width:768px) {
	.mod-banner-single figure {
		width: 100%;
		padding: 0;
		border-radius: 0;
	}
	.mod-banner-single figure:before {
		border-radius: 0;
	}
	.mod-banner-single figure .img {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		height: 100%;
		padding-top: 0;
		border-radius: 0;
	}
	.mod-banner-single figure .img img {
		position: relative;
		width: auto;
		height: 100%;
	}
	.mod-banner-single figure figcaption {
		width: 51.91147%;
		height: 100%;
		margin: auto 0 auto auto;
		padding: 2.286em 1.571em 1.571em 2.286em;
		background: 0 0;
	}
	.mod-banner-single figure figcaption:before {
		position: absolute;
		z-index: -1;
		top: -46%;
		right: 0;
		width: 100%;
		height: 200%;
		content: '';
		border-radius: 50em 0 0 50em;
		background-color: #d5f4ff;
	}
	#container-interview .button {
		width: auto;
	}
	#container-interview .button .link-detail a:focus, #container-interview .button .link-detail a:hover {
		background-color: #21c3ff;
	}
	.mod-graph .mod-graph-wrap [class*=mod-graph-item] {
		display: inline-block;
		width: 50%;
		padding-top: 50%;
	}
	.mod-graph .mod-graph-wrap [class*=mod-graph-item] dl {
		font-size: 1.143em;
	}
	.mod-flow {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 100%;
		padding: 0 4px;
	}
	.mod-flow .mod-flow-item {
		width: 28.4%;
		margin-top: 0;
		margin-left: 7%;
	}
	.mod-flow .mod-flow-item:nth-child(1) {
		margin-left: 6px;
	}
	.mod-flow .mod-flow-item:before {
		top: 0;
		bottom: 0;
		left: -23.94366%;
		width: 23.94366%;
		height: 100%;
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
		background-size: 40% auto;
	}
	.mod-flow .mod-flow-item .summary {
		display: block;
		padding: 0;
	}
	.mod-flow .mod-flow-item .txt {
		font-size: .824em;
	}
	.mod-contact .telephone h4 {
		margin-bottom: 0;
	}
	.mod-contact .telephone .link-telephone {
		font-size: 4em;
	}
	#banner-corse .banner-wrap {
		width: 60.8%;
	}
	#banner-corse .banner-wrap .badge {
		top: -1.5em;
		left: -2em;
	}
	#banner-corse .banner-wrap [class*=banner-corse-] {
		bottom: auto;
		-webkit-animation: float 10s ease-in-out 0s infinite;
		animation: float 10s ease-in-out 0s infinite;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-1 {
		top: 0;
		left: -10em;
		width: 29.60526%;
		padding-top: 29.60526%;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-2 {
		top: 0;
		right: -10em;
		width: 28.61842%;
		padding-top: 28.61842%;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-3 {
		top: 8em;
		left: -8em;
		display: block;
		width: 28.61842%;
		padding-top: 28.61842%;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-4 {
		top: 8em;
		right: -8em;
		display: block;
		width: 29.60526%;
		padding-top: 29.60526%;
	}
	#banner-corse .mod-text {
		padding-bottom: 3em;
	}
	.mod-topics #switchView:focus, .mod-topics #switchView:hover {
		background: #50c8ff;
	}
	.mod-topics .slide .slide-inner {
		overflow: auto;
		/*height:13.65em;*/
	}
	.mod-topics .slide .slide-inner::-webkit-scrollbar {
		width: 13px;
	}
	.mod-topics .slide .slide-inner::-webkit-scrollbar-track {
		background: #fff;
	}
	.mod-topics .slide .slide-inner::-webkit-scrollbar-thumb {
		background: #b0dceb;
	}
	.mod-banner .swiper-button-next:focus, .mod-banner .swiper-button-next:hover, .mod-banner .swiper-button-prev:focus, .mod-banner .swiper-button-prev:hover {
		opacity: .7;
	}
	.mod-interview .figure {
		float: none;
		width: auto;
		margin: 0;
	}
	.mod-interview .figure .img {
		max-width: 82.10227%;
		padding-top: 82.10227%;
	}
	.mod-interview .summary dt {
		margin-left: 0;
	}
	.mod-interview {
		padding: 0 50px;
	}
	.mod-interview .item-figure {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 39.11111% 1fr;
		grid-template-columns: 39.11111% 1fr;
		-ms-grid-rows: 1fr;
		grid-template-rows: 1fr;
		grid-template-areas: 'intImg intSummary';
	}
	.mod-interview .item-figure .figure {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
		grid-area: intImg;
	}
	.mod-interview .item-figure .summary {
		-ms-grid-row: 1;
		-ms-grid-column: 2;
		grid-area: intSummary;
	}
	.mod-interview .swiper-container {
		padding-bottom: 0;
	}
	.mod-interview .swiper-button-next, .mod-interview .swiper-button-prev {
		top: 50%;
		bottom: auto;
		height: 51px;
		border: 0;
		border-radius: 0;
		background-size: contain;
	}
	.mod-interview .swiper-button-next:focus, .mod-interview .swiper-button-next:hover, .mod-interview .swiper-button-prev:focus, .mod-interview .swiper-button-prev:hover {
		opacity: .7;
	}
	.content-decorate {
		display: block;
	}
	.mod-tie .mod-tie-content .figure .frame {
		max-width: 77.6%;
	}
	.mod-tie .mod-tie-content .summary {
		padding: 5.429em .5em 2.143em;
	}
	.mod-tie .mod-tie-content .summary h3 {
		font-size: 2em;
	}
	.mod-tie .mod-tie-content .item-figure {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 40.2% 1fr;
		grid-template-columns: 40.2% 1fr;
		-ms-grid-rows: 1fr;
		grid-template-rows: 1fr;
		grid-template-areas: 'img-1 summary-1';
	}
	.mod-tie .mod-tie-content .item-figure .figure {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
		grid-area: img-1;
	}
	.mod-tie .mod-tie-content .item-figure .summary {
		-ms-grid-row: 1;
		-ms-grid-column: 2;
		grid-area: summary-1;
	}
	.mod-tie .mod-tie-content #item-figure-2, .mod-tie .mod-tie-content #item-figure-4 {
		-ms-grid-columns: 1fr 40.2%;
		grid-template-columns: 1fr 40.2%;
		grid-template-areas: 'summary-2 img-2';
	}
	.mod-tie .mod-tie-content #item-figure-2 .frame:before, .mod-tie .mod-tie-content #item-figure-4 .frame:before {
		left: 34%;
		-webkit-transform: rotate(-78.4deg);
		transform: rotate(-78.4deg);
		background-size: auto 97%;
	}
	.mod-tie .mod-tie-content #item-figure-2 .figure, .mod-tie .mod-tie-content #item-figure-4 .figure {
		-ms-grid-row: 1;
		-ms-grid-column: 2;
		grid-area: img-2;
	}
	.mod-tie .mod-tie-content #item-figure-2 .summary, .mod-tie .mod-tie-content #item-figure-4 .summary {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
		grid-area: summary-2;
	}
	[data-category=lodge] #visual #creative .caption span {
		top: 50px;
		bottom: 70px;
		width: 100%;
		height: calc(100% - 120px);
	}
	#container-elected .mod-tie-content .figure:nth-child(even) {
		-webkit-transform: rotate(-81.4deg);
		transform: rotate(-81.4deg);
	}
	.mod-timeline .timeline-item {
		-ms-grid-columns: 5em 1fr;
		grid-template-columns: 5em 1fr;
	}
	.mod-timeline .timeline-content h3 {
		font-size: 1.412em;
	}
	.mod-timeline .figure-right {
		-ms-grid-columns: 1fr 45%;
		grid-template-columns: 1fr 45%;
	}
	.mod-timeline .figure-left {
		-ms-grid-columns: 45% 1fr;
		grid-template-columns: 45% 1fr;
	}
}

@media (min-width:1024px) {
	#main {
		font-size: 1.25em;
	}
	.mod-flow .mod-flow-item h4 {
		font-size: 1.176em;
	}
	#banner-corse .banner-wrap .badge {
		top: -1.3em;
		left: -3.7em;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-1 {
		top: -5em;
		left: -18em;
		width: 36.84211%;
		padding-top: 36.84211%;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-2 {
		top: 0;
		right: -14em;
		width: 28.61842%;
		padding-top: 28.61842%;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-3 {
		top: 8em;
		left: -11em;
	}
	#banner-corse .banner-wrap [class*=banner-corse-].banner-corse-4 {
		top: 9em;
		right: -13em;
		width: 36.84211%;
		padding-top: 36.84211%;
	}
	.mod-topics {
		width: 100%;
		padding-top: 0;
	}
	.mod-tie .mod-tie-content .summary h3 {
		font-size: 2.143em;
	}
	.mod-timeline .timeline-item {
		-ms-grid-columns: 6em 1fr;
		grid-template-columns: 6em 1fr;
	}
}

/****  20190613追加　新ヘッダー電話番号  ****/

.telephone2 {
	display: inline-block;
	/* インラインブロック要素にする */
	padding: 5px;
	/* 余白指定 */
	height: 50px;
	/* 高さ指定 */
	/*width: 230px;*/
	/* 幅指定 */
	text-align: right;
}

.telephone2 .txt {
	font-size: .857em;
}

.hdr_tel {
	text-align: right;
	/* 子要素を左右中央揃えにする */
	padding: 0px;
	/* 余白指定 */
	display: none;
}

.tel_num {
	font-size: 2.05em;
	font-weight: bold;
	font-family: 'Questrial', 'Century Gothic', CenturyGothic, AppleGothic, sans-serif;
	display: inline-block;
	overflow: hidden;
	vertical-align: text-top;
	color: #333;
}

@media (max-width:767px) {
	#commonHeader .hdr_tel {
		display: none;
		margin-top: .75em;
		text-align: center;
	}
	.menu-open #commonHeader .hdr_tel {
		display: block;
	}
	.telephone2 {
		width: 100%;
		/* 幅指定 */
		text-align: center;
	}
}

@media screen and (max-width: 640px) {
	.feeMain {
		font-size: 1.429em;
	}
}

@media (max-width:424px) {
	#commonHeader .sns {
		font-size: 1.75em;
		position: absolute;
		top: 50px;
		left: 42%;
		letter-spacing: -.4em;
		display: block;
	}
	#commonHeader .sns [class*=link-]+[class*=link-] {
		margin-left: 15px;
	}
	#commonHeader .telephone {
		margin-top: 2.5em;
		text-align: center;
	}
	#commonHeader .hdr_tel {
		margin-top: 2.5em;
		text-align: center;
	}
}

.box {
	margin: 0 0 2em 0;
	background: #f1f1f1;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}

.box .box-title {
	font-size: 1.2em;
	background: #5fc2f5;
	padding: 4px;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	letter-spacing: 0.05em;
}

.box p {
	padding: 15px 20px;
	margin: 0;
}

#container-camp .mod-banner-recruit:hover {
	opacity: 0.7;
}

#section1 {
	transform: none;
}

@media print, screen and (min-width: 751px) {
    .plan-research .sp {
        display: none !important;
    }
    .plan-research .plan-research-box {
        background: #f0f0f0;
        border-radius: 20px;
        padding: 40px 60px;
    }
}

@media print, screen and (max-width: 750px) {
    .plan-research .pc {
        display: none !important;
    }
	.plan-research .plan-research-box {
        background: #f0f0f0;
        border-radius: 10px;
        padding: 25px;
    }
}

.plan-research .top-search-plan-01 {
	background: #fff;
	border-radius: 10px;
	padding: 30px;
	margin-top: 30px;
}
@media screen and (min-width: 769px) {
	.plan-research .top-search-plan-01 {
		border-radius: 20px;
		padding: 40px 60px;
	}
}

.plan-research .top-search-plan-01 .box-form-01 {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 15px 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

@media screen and (min-width: 769px) {
	.plan-research .top-search-plan-01 .box-form-01 {
		gap: 40px;
	}
}

.plan-research .top-search-plan-01 .box-form-01 .form-text {
    position: relative;
    z-index: 0;
}

.plan-research .top-search-plan-01 .box-form-01 .form-text.calendar {
    margin: 0;
}

.plan-research .top-search-plan-01 .box-form-01 .form-text input[type=text] {
	background: none;
    border: 1px solid #e4e4e4;
    border-radius: 5px;
    color: #333;
    font-size: 1rem;
	box-sizing: border-box;
    width: 100%;
    height: 60px;
	max-width: 100%;
    padding: 5px 18px 5px 15px;
    cursor: pointer;
}

.plan-research .top-search-plan-01 .box-form-01 .form-text::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
    border-top: 5px solid #333;
    border-bottom: 0;
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: -1;
}

.plan-research .top-search-plan-01 .box-form-01 .form-text.calendar::before {
    content: url(/img/common/icon_calendar.png);
    border: 0;
    width: auto;
    height: auto;
}

.plan-research .top-search-plan-01 .box-form-01 .form-text:not(:first-child)::after {
	content: url(/img/common/icon_batsu.png);
	display: none;
	position: absolute;
	top: 50%;
	left: -26px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media screen and (min-width: 769px) {
    .plan-research .top-search-plan-01 .box-form-01 .form-text:not(:first-child)::after {
        display: block;
    }
}

.plan-research .top-search-plan-01 .box-form-01-modal {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 100;
}
.plan-research .top-search-plan-01 .box-form-01-modal.is-show {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal {
	width: calc(100% - 50px);
	background: #fff;
	display: none;
}
@media screen and (min-width: 769px) {
	.plan-research .top-search-plan-01 .box-form-01-modal .modal {
		max-width: 1100px;
		width: 100%;
	}
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-title {
	background: #333;
	color: #fff;
	font-size: 1.6rem;
	line-height: 1.5;
	text-align: center;
	padding: 8px;
	margin: 0;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-list {
	display: -ms-grid;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	font-size: 1.6rem;
	line-height: 1.5;
	text-align: center;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-list .list {
	cursor: pointer;
	border-bottom: 1px solid #e4e4e4;
	padding: 13px 5px;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-list .list.checked {
	background: #f8e5e5;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-list .list:nth-child(2n-1) {
	border-right: 1px solid #e4e4e4;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-list .list input[type=checkbox],
.plan-research .top-search-plan-01 .box-form-01-modal .modal-list .list input[type=radio] {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
    cursor: pointer;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-list .list input[type=radio] {
	position: absolute;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-list .list p {
	margin: 0;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-datepicker {
	height: 20em;
}
.plan-research .top-search-plan-01 .box-form-01-modal .modal-datepicker .ui-datepicker {
	margin: auto;
	border: none;
}
.plan-research .top-search-plan-01 .box-form-01-modal-wrap {
	max-width: 1100px;
	width: 100%;
	position: relative;
	left: 25px;
}
@media screen and (min-width: 769px) {
	.plan-research .top-search-plan-01 .box-form-01-modal-wrap {
		left: 0;
	}
}
.plan-research .top-search-plan-01 .box-form-01-modal-wrap .modal-close-button {
	width: 50px;
	height: 50px;
	position: absolute;
	bottom: 100%;
	right: 30px;
	z-index: -1;
}
@media screen and (min-width: 769px) {
	.plan-research .top-search-plan-01 .box-form-01-modal-wrap .modal-close-button {
		right: -15px;
	}
}
.plan-research .top-search-plan-01 .box-form-01-modal-wrap .modal-close-button::before {
	content: url(/img/common/icon_close.png);
	font-size: 1.8rem;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
			transform: translateX(-50%) translateY(-50%);
	z-index: 0;
}
.plan-research .top-search-plan-01 .box-form-01-modal-wrap .modal-close-button::after {
	content: "";
	display: block;
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}

.plan-research .top-search-plan-01 .submit-btn {
	text-align: center;
	margin-top: 15px;
}
@media screen and (min-width: 769px) {
	.plan-research .top-search-plan-01 .submit-btn {
		margin-top: 30px;
	}
}
.plan-research .top-search-plan-01 .submit-btn .btn {
	display: inline-block;
	background: #c12322;
	border: 2px solid #c12322;
	border-radius: 30px;
	font-weight: 500;
	line-height: 1.5;
	position: relative;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	z-index: 0;
}

@media screen and (max-width: 361px) {
	.plan-research .top-search-plan-01 .submit-btn .btn {
		font-size: 1.5rem;
	}
}

@media screen and (min-width: 769px) {
	.plan-research .top-search-plan-01 .submit-btn .btn {
		font-size: 2rem;
		min-width: 300px;
	}
}
.plan-research .top-search-plan-01 .submit-btn .btn::before {
	content: '';
	background-image: url(/img/common/icon_search_white.png);
	background-size: 100%;
	background-repeat: no-repeat;
	width: 16px;
	height: 16px;
	position: absolute;
	top: calc(50% + 1px);
	left: 40px;
	-webkit-transform: translateY(-50%);
			transform: translateY(-50%);
	-webkit-transition: 0.5s;
	transition: 0.5s;
	z-index: -1;
}

@media screen and (min-width: 769px) {
	.plan-research .top-search-plan-01 .submit-btn .btn::before {
		width: 20px;
		height: 20px;
	}
}

@media screen and (max-width: 361px) {
	.plan-research .top-search-plan-01 .submit-btn .btn::before {
		left: 20px;
	}
}

.plan-research .top-search-plan-01 .submit-btn .btn:hover {
	background: #fff;
	opacity: 1;
}
.plan-research .top-search-plan-01 .submit-btn .btn:hover::before {
	color: #c12322;
	background-image: url(/img/common/icon_search_red.png);
}
.plan-research .top-search-plan-01 .submit-btn .btn:hover input[type=submit] {
	color: #c12322;
}
.plan-research .top-search-plan-01 .submit-btn input[type=submit] {
	background: none;
	border-radius: 30px;
	color: #fff;
	font-size: 1.5rem;
	padding: 13px 30px 13px 60px;
	width: 100%;
	height: 100%;
	-webkit-transition: 0.5s;
	transition: 0.5s;
}

@media print, screen and (max-width: 750px) {
	.plan-research .top-search-plan-01 .box-form-01-modal .modal-title {
		font-size: 1rem;
	}
	.plan-research .top-search-plan-01 .box-form-01-modal .modal-list .list p {
		font-size: 1rem;
	}
    .plan-research .plan-research-box .top-search-plan-01 .submit-btn input[type=submit] {
        font-size: 16px;
        margin-left: 3px;
    }
}

@media screen and (max-width: 361px) {
	.plan-research .top-search-plan-01 .submit-btn input[type=submit] {
		padding: 13px 30px 13px 40px;
	}
}

@media print, screen and (min-width: 751px) {
	.plan-research .plan-research-box .calender-arrow {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-top: 40px;
	}
	.plan-research .plan-research-box .calender-arrow img {
		width: 14px;
		display: inline;
	}
	.plan-research .plan-research-box .calender-arrow .calender-prev img {
		margin-right: 10px;
		margin-bottom: 5px;
	}
	.plan-research .plan-research-box .calender-arrow .calender-select img {
		margin-bottom: 7px;
	}
	.plan-research .plan-research-box .calender-arrow .calender-next img {
		margin-left: 10px;
		margin-bottom: 5px;
	}
	.plan-research .plan-research-box .calender {
		display: flex;
		align-items: stretch;
		justify-content: space-between;
		margin: 15px 0 10px;
	}
	.plan-research .plan-research-box .calender li {
		display: flex;
		flex-direction: column;
		width: 138px;
		text-align: center;
		border-radius: 10px;
	}
	.plan-research .plan-research-box .calender li .date {
		background: #333333;
		color: white;
		padding: 3px 0;
		border-radius: 10px 10px 0 0;
	}
	.plan-research .plan-research-box .calender li .date .day {
		font-weight: 700;
		font-family: "Albert Sans";
	}
	.plan-research .plan-research-box .calender li .date .week {
		font-size: 11px;
	}
	.plan-research .plan-research-box .calender li .detail {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 15px 0;
		flex-grow: 1;
		background: white;
	}
	.plan-research .plan-research-box .calender li .detail .price {
		font-weight: 700;
		font-family: "Albert Sans";
		font-size: 20px;
		color: #c12322;
		line-height: 1.3;
	}
	.plan-research .plan-research-box .calender li .detail .graduation {
		color: #808080;
		font-size: 11px;
		margin-bottom: 5px;
	}
	.plan-research .plan-research-box .calender li .detail .space-block {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		gap: 5px;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn {
		width: 100px;
		border-radius: 20px;
		color: white;
		background: #f7607f;
		border: 1px solid #f7607f;
		font-size: 12px;
		padding: 2px 0;
		font-weight: 500;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn.plan-detail {
		background:#109CD1;
		border: 1px solid #109CD1;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn:hover {
		color: #f7607f;
		background: white;
		transition: all 0.3s linear;
		border: 1px solid #f7607f;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn.plan-detail:hover {
		color:#109CD1;
		border: 1px solid #109CD1;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn.booked {
		background: #e4e4e4;
		color: #c12322;
		border: 1px solid #e4e4e4;
	}
	.plan-research .plan-research-box .calender li .detail .available {
		font-size: 12px;
		color: #808080;
	}
	.plan-research .plan-research-box .calender li:nth-child(6) .date {
		background: #dbf5f5;
		color: #333333;
	}
	.plan-research .plan-research-box .calender li:last-child .date {
		background: #f8e5e5;
		color: #333333;
	}
}

@media print, screen and (max-width: 750px) {
    .plan-research .plan-research-box .calender-arrow {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-top: 40px;
        font-size: 16px;
    }
    .plan-research .plan-research-box .calender-arrow img {
        width: 14px;
        display: inline;
    }
    .plan-research .plan-research-box .calender-arrow .calender-prev img {
        margin-right: 10px;
        margin-bottom: 6px;
    }
    .plan-research .plan-research-box .calender-arrow .calender-select img {
        margin-bottom: 6px;
    }
    .plan-research .plan-research-box .calender-arrow .calender-next img {
        margin-left: 10px;
        margin-bottom: 6px;
    }
    .plan-research .plan-research-box .calender {
        margin: 15px 0 10px;
    }
    .plan-research .plan-research-box .calender li {
        /*min-height: 70px;*/
        text-align: center;
        border-radius: 10px;
        margin-bottom: 5px;
        display: flex;
        border-radius: 5px 0 0 5px;
	}
	.plan-research .plan-research-box .calender li .date {
		display: flex;
		flex-direction: column;
		justify-content: center;
		background: #333333;
		color: white;
		width: 25%;
		border-radius: 5px 0 0 5px;
		line-height: 1;
	}
	.plan-research .plan-research-box .calender li .date .day {
		font-weight: 700;
		font-family: "Albert Sans";
		font-size: 16px;
	}
	.plan-research .plan-research-box .calender li .date .week {
		font-size: 11px;
	}
	.plan-research .plan-research-box .calender li .detail {
		width: 75%;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 10px 3px;
		background: white;
		border-radius: 0 5px 5px 0;
	}
	.plan-research .plan-research-box .calender li .detail .detail-inner {
		width: 90%;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.plan-research .plan-research-box .calender li .detail .price {
		font-weight: 700;
		font-family: "Albert Sans";
		font-size: 20px;
		color: #c12322;
		line-height: 1.3;
	}
	.plan-research .plan-research-box .calender li .detail .graduation {
		color: #808080;
		font-size: 11px;
		margin-bottom: 5px;
	}
	.plan-research .plan-research-box .calender li .detail .space-block {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		gap: 5px;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn {
		width: 75px;
		border-radius: 20px;
		color: white;
		background: #f7607f;
		border: 1px solid #f7607f;
		font-size: 12px;
		padding: 5px 0;
		font-weight: 500;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn.plan-detail {
		background:#109CD1;
		border: 1px solid #109CD1;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn:hover {
		color: #f7607f;
		background: white;
		transition: all 0.3s linear;
		border: 1px solid #f7607f;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn.plan-detail:hover {
		color:#109CD1;
		border: 1px solid #109CD1;
	}
	.plan-research .plan-research-box .calender li .detail .space-btn.booked {
		background: #e4e4e4;
		color: #c12322;
		border: 1px solid #e4e4e4;
	}
	.plan-research .plan-research-box .calender li .detail .available {
		font-size: 12px;
		color: #808080;
	}
	.plan-research .plan-research-box .calender li:nth-child(6) .date {
		background: #dbf5f5;
		color: #333333;
	}
	.plan-research .plan-research-box .calender li:last-child .date {
		background: #f8e5e5;
		color: #333333;
	}
}

/* ------------------------------
	datepicker
------------------------------ */
.ui-datepicker th:nth-child(1) {
	color: red;
}
.ui-datepicker th:nth-child(7) {
	color: blue;
}
.ui-datepicker .red .ui-state-default {
	color: red;
}
.ui-datepicker .blue .ui-state-default {
	color: blue;
}



.plan-research .plan-research-box .priceTbl {
	margin-top: 20px;
}

.plan-research .plan-research-box .priceTbl td {
	text-align: center;
	vertical-align: middle;
	border-left: 1px solid #fff069;
	border-bottom: 1px solid #fff069;
	border-right: 1px solid #fff069;
	font-weight: bold;
	background: #ffface;
	font-size: 20px;
	padding: 20px;
}

.plan-research .plan-research-box .priceTbl td p {
	margin: 0;
	padding: 0;
}

.txtSchoolBox p,
.txtSchoolBox span,
.txtSchoolBox div,
.txtSchoolBox font {
    font-size: 16px !important;
    /*font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif !important;*/
	font-weight: 300 !important;
}

.txtSchoolBox h4 {
	background: none !important;
}

.txtSchoolBox h4:after {
	border: none !important;
}

@media only screen and (max-width: 799px) {
    .plan-research .plan-research-box .priceTbl {
        display: table;
    }
}

@media print, screen and (max-width: 750px) {
	.plan-research .plan-research-box .priceTbl thead {
        display: block;
        float: left;
        width: 40%;
    }

	.plan-research .plan-research-box .priceTbl tbody {
        display: block;
        float: left;
        width: 60%;
    }

    .plan-research .plan-research-box .priceTbl tr td, .plan-research .plan-research-box .priceTbl tr th {
        border-left: none;
        display: block;
        height: 60px;
    }

	.plan-research .plan-research-box .priceTbl thead tr {
		display: block;
        width: 100%;
    }

	.plan-research .plan-research-box .priceTbl th {
        border-left: 1px solid #ccc;
        border-top: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
        border-right: 1px solid #ccc;
        padding: 10px 15px;
        background: #eee;
        font-size: 14px;
        font-weight: bold;
    }

	.plan-research .plan-research-box .priceTbl td {
		font-size: 12px;
	}
}
