@charset "utf-8";
body {background:#000;}

@media screen and (max-width:1380px) {}
@media screen and (max-width:767px) {}

/*** ヘッダー ***/
header {position:absolute;}
header .translate{height: auto; display: inline-flex; position: fixed; top: 0; right: 0px;z-index: 2;}
header .translate li{display: flex;}
header .translate li a{display: block;padding-top: 0px;padding-right: 10px;padding-left: 10px;padding-bottom: 1px;margin-left: 10px;margin-right: 5px;border-radius: 0px 0px 2px 2px;line-height: 14px;color: #fff;background-color: #b7a97e85;z-index: 2;font-size: 10px;}
header h1 {width:320px; padding:0.3em 0 0 0.8em; position:fixed; left:0; top:0;}
header h1 img {width:100%; height:auto; filter:alpha(opacity=100); -ms-filter:"alpha(opacity=100)"; opacity:1;}
header h1 img:hover {filter:alpha(opacity=80); -ms-filter:"alpha(opacity=80)"; opacity:0.8;}
header nav {position:fixed; right:20px; top:20px; z-index: 1500;}
header nav li {display:inline-block; vertical-align:middle; font-size:12px;}
header nav a {display:block; line-height:1.4em; padding:0.8em 1.3em; text-decoration:none; letter-spacing:0.2em; position:relative;}
header nav p {display: none;}
#hbg_btn {display:none;}

#home header h1 {width:320px; padding:0.7em 0 0 0.8em; position:absolute; left:0; top:0;z-index: 2;}

@media screen and (max-width:767px) {
	header .translate{display: none;}
	header h1 {width:240px; }
	header nav a {padding:0.8em 0.8em; letter-spacing:0.15em;}
	header nav p {display: block;}
	header nav p a {display: block; padding-bottom: 10px;margin-top: 50px;margin-left: 18px;margin-right: 5px;width: 60px;float: left;font-weight: 100;text-align: center;border-radius: 4px 4px 4px 4px;color: #fff;background-color: #b7a97e85;z-index: 1000;font-size: 16px;letter-spacing: 0;font-family: 'source_sans_proregular';}
	#home header h1 {width:280px; padding-top:10px;}
	#hbg_btn {position:fixed; z-index:3000; top:0; right:0; background:#b6a97e; padding:1vh; cursor:pointer; display:block;}
	#hbg_btn img {}
 /**#hbg_btn img {height:20px; vertical-align:middle; display: block;}**/
	#slide_menu{
		position:fixed;
		top:0;
		left:-80%;
		width:80%;
		height:100%;
		background: rgb(77 73 60 / 88%);
		padding:5%;
		box-sizing:border-box;
	}
	#slide_menu ul {background:none;}
	#slide_menu li {
		position:relative;
		width:100%;
		float:none;
		margin:0;
		padding:0;
		text-align:center;
		border-bottom:1px solid #857c60;
		border-right:none;
	}
	#slide_menu li a {font-size:18px; padding:0.8em 0.5em; color:#FFFFFF;}
	#slide_menu::before {
		content:"MENU";
		color:#FFFFFF;
		font-size:16px;
	}
}

/*** 共通 ***/
.ac {color:#e84783;}
.ac2 {color:#ffffff;}
.unl {position:relative; display:block;}
.unl::after {content:""; position:absolute; width:55px; height:2px; bottom:0; margin-left:20px;
    background:#bbbbbb;}
.unl2 {position:relative; display:block; color: #555555;}
.subtit_top {display:block; font-size:70px; padding-bottom:1em;}
.subtit {display:block; font-size:24px; padding-bottom:1em;}
.ctit {font-size: 28px;}
.sec_title {text-align:center;}
@media screen and (max-width:767px) {
	.subtit {font-size: 22px; margin-bottom: 20px;}
	.subtit_top {display:block; font-size:40px; padding-bottom:1em;}
}
.gaming {
    /* アニメーションの長さ */
    animation: gaming 20s linear infinite;}
		@keyframes gaming {
	 /* 色の指定 */
	 0% { background-color: #b17676; }
	 20% { background-color: #acb177; }
	 40% { background-color: #78b1b0; }
	 60% { background-color: #9779b1; }
	 80% { background-color: #b1798f; }
	 100% { background-color: #b17979; }
 }

/*** 共通：ボタン ***/
.btn {display:inline-block; background:#b6a97e; width:100%; padding:2.5% 1%; color:#fff; font-size:17px; letter-spacing:0.6em; vertical-align:middle;
	-webkit-transform:perspective(1px) translateZ(0);
	transform:perspective(1px) translateZ(0);
	position:relative;
	transition:0.5s;
	text-align:center;
}
.btn:before {content:""; position:absolute; z-index:-1; top:0; left:0; right:0; bottom:0;
	background:#d078a6;
	-webkit-transform:scaleX(0);
	transform:scaleX(0);
	-webkit-transform-origin:0 50%;
	transform-origin:0 50%;
	-webkit-transition-property:transform;
	transition-property:transform;
	transition:0.5s;
	-webkit-transition-timing-function:ease-out;
	transition-timing-function:ease-out;
}
.btn:hover:before, .btn:focus:before, .btn:active:before {-webkit-transform:scaleX(1); transform:scaleX(1);}
.btn:hover {letter-spacing:0.8em; color:#FFFFFF;}
@media screen and (max-width:767px) {
	.btn {padding:4% 1%; letter-spacing:0.3em;font-size: 18px;}
	.btn:hover {letter-spacing:0.5em;}
}

/*** 共通：レイアウト ***/
.flex3 {display:-webkit-flex; display:flex; -webkit-justify-content:flex-start; justify-content:flex-start; -webkit-flex-wrap:wrap; flex-wrap:wrap;}
.flex3 li {width:33.33%; -webkit-box-sizing:border-box; box-sizing:border-box;}

.flex6 {display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-wrap: wrap; flex-wrap: wrap;}
.flex6 li {width:16.66%; -webkit-box-sizing:border-box; box-sizing:border-box;}

.flex2 {display:-webkit-flex; display:flex; -webkit-justify-content:flex-start; justify-content:flex-start; -webkit-flex-wrap:wrap; flex-wrap:wrap;}
.flex2 li {width:50%; -webkit-box-sizing:border-box; box-sizing:border-box;}
.kouji img {width: 40%;}
@media screen and (max-width:767px) {
.flex3 {display:flex;}
.flex3 li {width:100%; border-bottom: solid 1px #636363; background-color: #201f38;}
}

/*** TOP：メイン ***/
.top_main {height:100%; width:100%; position:relative;}
.top_main_tx {position:absolute; z-index:2; bottom:0; left:0; background:#990000; padding:2% 3.8% 3% 4%;}
.top_main_tx * {display:block; color:#fff;}
.top_main_tx strong {font-size:35px; padding-bottom:25px; position:relative; letter-spacing:0.1em;}
.top_main_tx em {font-size:22px; line-height:1.8em; padding-top:15px; letter-spacing:0.15em;}
.top_main_tx strong::after {background:#f4f3ef; left:0;}
.top_coment img {position: absolute; top: 7%; left:35%; width: 29%; z-index:9; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; font-size: 300%; color:#ffffff; filter: drop-shadow(0px 0px 5px rgba(160, 160, 160, 0.7)); }
/*** TOP：イメージ ***/
@media screen and (max-width:767px) {
#mainVideo{}
.player{}
.top_coment img {position: absolute; top: 7%; left:10%; width: 80%; z-index:9; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; font-size: 300%; color:#ffffff; filter: drop-shadow(0px 0px 5px rgba(160, 160, 160, 0.7)); }
}
.mbYTP_wrapper {width:76% !important; height:80% !important; top:50px !important; left:220px !important; right:auto !important; bottom:auto !important; position:relative;}
.mbYTP_wrapper::before {content:""; width:100%; height:7%; background:#000000; position:absolute; z-index:1000;}
@media screen and (max-width:767px) {
	.top_main {height:70%; width:100%;}
	.top_main_tx {padding:3% 0% 2% 3%;}
	.top_main_tx strong {font-size: 24px; padding-bottom:0px;}
	.top_main_tx strong::after {display: none;}
	.top_main_tx em {font-size:20px; padding-top:0px;}
	.top_main_tx em br {display: none;}
	.mbYTP_wrapper {display:none;}
}
@media screen and (max-height:812px) {
	.top_main {height:60%; width:100%;}
}
@media screen and (max-height:811px) {
	.top_main {height:70%; width:100%;}
}

/*** TOP：スライド ***/
.slider_wrap {display:none;}
@media screen and (max-width:767px) {
	.slider_wrap {display:block; position:absolute; bottom:15%; height:70%; width:100%;}
	.slider{width:100%; height:100%; margin:0 auto; position:relative; display:block;}
	.slider ul li{width:100%; height:100%; position:absolute; top:0; left:0; animation-iteration-count:infinite; animation-duration:24s; overflow:hidden;}
	.slider ul li div {position:relative; display:block; height:100%;}
	.slider ul li img {width:100%; position:absolute; bottom:0;}
	.slider ul li:nth-child(1){animation-name:slider; animation-delay:-3s;}
	.slider ul li:nth-child(2){animation-name:slider; animation-delay:5s; opacity:0;}
	.slider ul li:nth-child(3){animation-name:slider; animation-delay:13s; opacity:0;}
}
@keyframes slider{
	0%{opacity:0;}
	20.83%{opacity:1;}
	33.33%{opacity:1;}
	45.83%{opacity:0;}
	100%{opacity:0;}
}

/*** TOP：PHILOSOPHY ***/
.top_phi {background:#f4f3ef; padding:190px 5%; text-align:center; position:relative;}
.top_phi strong {display:block; font-size:27px; line-height:1.5em; padding-bottom:30px; margin-bottom:25px; position:relative;}
.top_phi strong::after {left:0; right:0; margin:auto;}
.top_phi p {line-height:2.4em; padding-bottom:1.5em;}
.top_phi figure {position:absolute; right:7%; bottom:0; text-align:right; max-width:15%; pointer-events:none;}
.top_phi .btn {margin-top:40px;}
@media screen and (max-width:1380px) {
	.top_phi figure {right:6.5%; max-width:15%;}
}
@media screen and (max-width:767px) {
	.top_phi {padding:50px 5%;}
	.top_phi strong {display:block; font-size:18px; line-height:1.7em; padding-bottom:40px; margin-bottom:60px;}
	.top_phi strong br {display:none;}
	.top_phi p {line-height:2em; padding-bottom:1.5em; font-size:16px; text-align:left;}
	.top_phi p br {display:none;}
	.top_phi .btn {margin-top:10px;}
}
/*** TOP：SERVICE ***/
.top_ser {padding:180px 0; text-align:center;
	/* アニメーションの長さ */
	animation: top_ser 20s linear infinite;}
	@keyframes top_ser {
	/* 色の指定 */
	0% { background-color: #458faa; }
	25% { background-color: #8357a4; }
	50% { background-color: #a64e6f; }
	75% { background-color: #4141b1; }
	100% { background-color: #458faa; }
}

.top_ser .subtit {padding-bottom:1em;}
.top_ser a {display:block;}
.top_ser p {text-align:left; padding:3% 4% 0 4%; color:#ffffff; font-size:14px; margin-bottom: 30px; line-height: 130%;}
.top_ser figure {position:relative;}
.top_ser figcaption {position:absolute; left:0; bottom:10%; text-align:left;}
.top_ser figcaption * {display:inline-block; background:#545454; color:#FFFFFF; white-space:nowrap; transition:0.8s;}
.top_ser figcaption em {font-size:18px; padding:2% 5% 0 8%;}
.top_ser figcaption strong {font-size:110%; padding:1% 5% 3% 8%;}
.top_ser a:hover figcaption * {background:#000000;}
@media screen and (max-width:767px) {
	.top_ser {padding:100px 0;}
	.top_ser p {padding:5% 4% 0 6%; line-height:1.9em;}
	.top_ser figcaption {bottom:5%;}
	.top_ser figcaption em {font-size:15px; padding:0 40 0 20;}
	.top_ser figcaption strong {font-size:16px; padding:0 50 2 20;}
	#home .flex3 li {background-color: inherit;padding: 20px;border-bottom: inherit;}
	.top_ser {padding:50px 0 25px;}
	.top_ser p {text-align:left; padding:7% 4% 10% 6%; color:#bbb8ac; font-size:16px;background-color: #1b1b1b;}
	.top_ser figcaption {bottom:0;}
}
.newspic {padding: 50px; background-color: #eaeaea; font-size: 100;}
.newspic table th {width: 20%; border-bottom: solid; padding-bottom: 40px;}
.newspic table td {width: 80%; padding-left: 100px; padding-right: 100px; border-bottom: solid;}
.newspic a {color: #7C4D9B; text-decoration: underline;}
@media screen and (max-width:767px) {
.newspic {padding: 10px; background-color: #eaeaea; font-size: 100;}
.newspic table th {}
.newspic table td {width: 80%; padding-left: 10px; padding-right: 10px; border-bottom: solid;}
.newspic a {color: #7C4D9B; text-decoration: underline;}

}
/*** TOP：MESSAGE ***/
.top_message {background:url(../images/index/message_bg.jpg) no-repeat #4d4c4d; background-size:100%; border:8px solid #fff; border-bottom:none; padding:380px 0 0 0;}
.top_message section {
	background:-webkit-linear-gradient(left, rgba(244,243,239,0) 0%,rgba(244,243,239,0) 50%,rgba(244,243,239,1) 50%,rgba(244,243,239,1) 100%);
	background:linear-gradient(to right, rgba(244,243,239,0) 0%,rgba(244,243,239,0) 50%,rgba(244,243,239,1) 50%,rgba(244,243,239,1) 100%);
}
.tm_wrap {max-width:1050px; width:100%; margin:0 auto; padding:100px 18% 70px 5%; position:relative; background:#f4f3ef;}
.tm_wrap figure {position:absolute; right:0; top:0; padding:100px 0 0 0;}
.tm_wrap figcaption img {margin-left:auto;}
.tm_wrap * {display:block;}
.tm_wrap em {padding-bottom:10px;}
.tm_wrap strong {font-size:27px; line-height:1.6em; padding-bottom:30px; margin-bottom:30px;}
.tm_wrap p {padding-bottom:30px; line-height:2.3em;}
.tm_wrap .unl::after {left:0;}
.top_message .btn_wrap {padding:5%; background:#FFFFFF;}

@media screen and (max-width:1380px) {
	.tm_wrap {padding:100px 23% 70px 5%;}
}
@media screen and (max-width:767px) {
	.top_message {padding:200px 0 0 0; background-color:#f4f3ef;}
	.tm_wrap {padding:80px 35% 70px 4%;}
	.tm_wrap figure {width:30%; padding:80px 5% 0 0;}
}
@media screen and (max-width:767px) {
	.top_message {padding:0;}
	.tm_wrap {padding:30px 5% 30px 5%;}
	.tm_wrap figure {width:30%; padding:0; margin:0 auto; position:static;}
	.tm_wrap em {padding:10px 0 0 0; text-align:center;}
	.tm_wrap strong {font-size:22px; line-height:1.7em; padding-bottom:40px; margin-bottom:60px; text-align:center;}
	.tm_wrap strong br {display:none;}
	.tm_wrap p {line-height:2em; padding-bottom:1.5em; font-size:16px; text-align:left;}
	.tm_wrap figcaption img {width: 40%;}
	.tm_wrap .unl::after {left:0; right:0; margin:auto;}
}

/*** TOP：外観 ***/
.bg_dream {height:530px; background:url("../images/index/bg.jpg") no-repeat center center; background-size:cover; background-attachment:fixed; z-index:3;background-size: 100%;}

@media screen and (max-width:767px) {
	.bg_dream {height:400px; background:url("../images/index/bg.jpg") no-repeat center center; background-size:auto 100%; background-attachment:auto;}
}

/*** フッター ***/
footer {
	display:-webkit-flex;
	display:flex;
	-webkit-justify-content:flex-start;
	justify-content:flex-start;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}
.foot_contact {width:100%;
	animation: foot_contact 20s linear infinite;}
	@keyframes foot_contact {
	0% { background-color: #458faa; }
	25% { background-color: #8357a4; }
	50% { background-color: #a64e6f; }
	75% { background-color: #4141b1; }
	100% { background-color: #458faa; }
	 padding:4% 3%; color:#FFFFFF;}
.foot_contact img {width:30%; padding-bottom:10px; padding-left:20px; margin-top: 50px;}
.foot_contact em {padding-bottom:15px; padding-left:20px; margin-bottom:15px; color: #fff;}
.foot_contact .unl::after {left:0; }
.foot_contact p {font-size:13px; padding-bottom:50px; padding-left:20px; color:#ffffff; }
.foot_contact .btn {background:#0000; padding:5% 2%; color:#cccc66;}
.foot_contact .btn:before {background:#000;}
.foot_map {width:65%; overflow:hidden;}
.foot_map iframe {width:100%; height:100%; border:0;}

footer .content_contact {width:100%; background:#b6a97e; color:#FFFFFF;}
footer .content_contact img {max-width:60%; width: 300px; padding-bottom:10px;}
footer .content_contact em {padding-bottom:15px; margin-bottom:15px;}
footer .content_contact .unl::after {left:0; background:#dcd6bc;}
footer .content_contact p {font-size:13px; padding-bottom:25px;}
footer .content_contact .btn {background:#FFFFFF; padding:2.5% 1%; color:#b6a97e;}

.foot_map iframe {
	filter:url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
	filter:gray;
	-webkit-filter:grayscale(100%);
	-webkit-backface-visibility:hidden;
}
.black{background-color: #000;}
.sns {margin-left: auto;
    margin-right: auto;
    display: flex;
    padding-top: 50px;
    padding-bottom: 20px;
}
.sns li {list-style: none;
	margin: 20px;
    display: inline-block;}
.sns li img {width: 60%; height: 100%;clear: both; background: #FFFFFF; border-radius: 10px;}
.copy {background:#000000; text-align:center; color:#b6a97e; padding:15px; font-size:12px; letter-spacing:0.2em;}
#home .copy {padding:40px;}

@media screen and (max-width:1488px) {
.sns {margin-left: auto; margin-right: auto; margin-left: 25%;}
.sns li {}
.sns li a {width: 50px;height: 50px;clear: both;}
}

@media screen and (max-width:1380px) {
	.foot_contact {width:100%;}
}

@media screen and (max-width:767px) {
	.black{}
	.sns {width: 100%; height: auto; padding: 10px; margin: 0; margin-top: 40px;}
	.sns li {padding: 10px;}
	.sns li img {width: 100%; }
	.sns li a {display: block; width: 120%; height: 50px; }
	.foot_contact {width:100%; padding:7% 5%;}
	.foot_contact img {width:80%;}
	.foot_contact p {line-height:1.6em;font-size:13px; padding-bottom:15px;}
	.foot_contact p br {display:none;}
	.foot_contact p span {display:block; padding-bottom:8px;}
	footer {display:block;}
	footer .content_contact {padding: 5% 5%;}
	.copy {display: block; padding:15px;font-size: 14px;letter-spacing: 0;line-height: 1.5;font-weight: 100;}
}

/*** コンテンツページ共通 ***/
.cont_bg {position: fixed; bottom: 0; left: 0; width: 100%; height: 88%; margin-top: 12%; background: #3E3E3E; z-index: -1;}
.cont_wrap {margin-top:13%; margin-bottom:15%; position: relative; text-align: center;}
.cont_bg_black {background: rgba(0,0,0,0.95); padding: 5%; z-index:500; margin-top:5%; text-align: left;}
.cont_bg_white {background: rgba(255,255,255,0.85); padding: 5%; z-index:500; margin-top:5%; text-align: left;}
.title {padding:5% 30%; display:inline-block; margin: 0 auto;}
.title h2 {font-size: 26px; padding:8px 8px 10px 8px; background: #fff; mix-blend-mode:normal; width: auto;}
.title span {mix-blend-mode:normal; border-bottom: 1px solid #ccc; display: block; text-align: center;background: #fff; padding-left: 15px; padding-right: 15px;}
@media screen and (max-width:767px) {
	.cont_wrap {margin-top:40%; margin-bottom:30%; position: relative; text-align: center;}
	.title {padding: 2% 5%; width: 70%; margin-bottom: 70px;}
	.title h2 {font-size: 16px;}
	.title span {font-size: 20px; line-height: 1.8em;}
	h3.white {font-size: 20px; padding-top: 6vh;}
}
@media screen and (max-width:1580px) {
	.cont_bg_black .profile_main {width:39%; margin-right:5%;}
	.cont_bg_white .profile_main {bottom:7%; width:38%; margin-left:5%; z-index:10;}
}
@media screen and (max-width:1400px) {
}
@media screen and (max-width:767px) {
	.cont_bg_black .profile_main {position:static; right:0; width:70%; margin:0 auto;}
	.cont_bg_white .profile_main {position:static; width:70%; margin:0 auto;}
}
/*** 歴史 ***/
.bg_history {background: url(../images/outline/bg.jpg) no-repeat center center; background-size: cover;}
.history_wrap {}
.history_wrap .title {}
.history_wrap .cont_bg_black {padding-left: 10%; width: 60%; margin-bottom: 5%;}
.history_li {}
.history_li li {padding:0.8% 2%; border-bottom: 1px solid #333; color: #93928C; font-size: 15px;}
.history_li li::after {content:"."; display:block; clear:both; height:0; visibility:hidden;}
.history_li span {display:block; float:left; width: 18%; color: #b6a97e;}
.history_li p {float:right; width: 82%;}
.history_since {width:400px; max-width:90%; padding-bottom: 3em; display: block;}
.cont_bg_black .history_main {position: absolute; right:0; width:34%; margin-right:10%; z-index:10;}
.history_main figcaption {background: #FFFFFF; padding: 4%; font-size: 13px; width: 60%; margin:3% 0 0 auto; line-height: 1.8em;}
.history_main figcaption em {font-size: 14px; font-weight: 600; display: block; padding-bottom: 0.3em;}
.history_main figcaption p {letter-spacing: 0.05em;}
.history_wrap .cont_bg_white {padding-right:10%; width: 60%; margin: 0 0 10% auto;}
.history_point strong {color: #987f2b; margin-bottom: 1.2em; display: inline-block; font-size: 19px; font-weight: 500;}
.history_point h3 {font-size: 26px; padding-bottom:5%;}
.history_point h5 {font-size: 110%; padding-bottom:2%; font-weight: 600; color: #575757; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";}
.history_point p {padding:0 0 2em 0.1em;}
.cont_bg_white .history_main {position: absolute; left:0; bottom:7%; width:33%; margin-left:10%; z-index:10;}

.signific {margin:0% 7% 10% 7%; padding:50px 50px 50px 50px; background: rgba(255,255,255,0.95);}
.signific img {width:50vh; }
.signific h4 {margin-bottom: 40px; text-align: left; letter-spacing: 0em; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; font-weight: 500;}
.signific h5 {margin-bottom: 20px; text-align: left; font-size: 110%; font-weight: 500; color: #C2138A;}
.signific p {margin-bottom:20px; text-align: left; letter-spacing: 0.1em;}
.program {margin:0% 7% 0% 7%; padding:50px 50px 50px 50px; background: rgba(255,255,255,0.95);}
.program h4 {margin-bottom: 40px; text-align: left; letter-spacing: 0em; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; font-weight: 500; font-size: 120%;}
.program h5 {margin-bottom: 20px; text-align: left; font-size: 110%; font-weight: 500; color: #C2138A;}
.program .pro_img {float: right; padding:0px 0px 30px 40px; }
.program p {margin-bottom:20px ; text-align: left; letter-spacing: 0.1em;}
.dream_vision {margin:0% 7% 0% 7%; padding:50px 50px 50px 50px; background: rgba(255,255,255,0.95);}
.plan_details {margin-bottom: 40px; text-align: left; letter-spacing: 0em; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; font-weight: 500; font-size: 120%;}
.dreamtable_v1 {width:546%; margin-left: -223%; margin-right: auto; margin-top: 5%; margin-bottom: 5%;}
@media screen and (max-width:1580px) {
	.cont_bg_black .history_main {width:39%; margin-right:5%;}
	.cont_bg_white .history_main {bottom:7%; width:38%; margin-left:5%; z-index:10;}
}
@media screen and (max-width:1400px) {
	.history_wrap .cont_bg_black {padding-left:5%; width: 60%;}
	.history_wrap .cont_bg_white {padding-right:5%; width: 65%; margin-top: 5%;}
	.history_wrap .all_bg_w {padding:10%; width: 90%; margin-top: 1%; margin-left: auto; margin-right: auto; clear:both; text-align: left; background: #fff;}
}
@media screen and (max-width:767px) {
	.history_wrap .cont_bg_black {padding:5%; width:80%; margin: 0 auto;}
	.history_wrap .cont_bg_white {padding:5%; width:86%; margin: 0 auto;}
	.cont_bg_black .history_main {position:static; right:0; width:70%; margin:0 auto;}
	.history_main figcaption {display: none;}
	.history_since {width:100%; max-width:100%; padding:20px 0; display: block; text-align: center;}
	.history_since img {width: 30%;}
	.history_since {padding:10px 0;}
	.history_since img {width: 60%;}
	.history_li li {font-size:13px; padding: 5% 2%; line-height: 1.8em;}
	.history_li span {float:none; width:100%;}
	.history_li p {float:none; width:100%;}
	.history_point strong {font-size: 24px; text-align: center;letter-spacing: 0;}
	.cont_bg_white .history_main {position:static; width:70%; margin:0 auto;}
	.history_point h3 {font-size:140%; padding-bottom:40px; letter-spacing: 0.05em;}
	.history_point h5 {font-size:130%; margin-bottom: 20px;}
	.history_point p {padding:0 0 50px 0.1em; letter-spacing: 0.05em; line-height: 2.1em;}
	.signific {}
	.signific img {margin-bottom: 50px;}
	.signific p { margin-bottom:50px;}
	.signific h4 {font-size: 110%; margin-bottom: 20px;}
	.signific h5 {font-size: 100%; margin-bottom: 20px;}
	.program {font-size: 130%;}
	.program .pro_img { margin-right:auto; margin-left: auto; margin-bottom: 50px; float: none; padding: 0 0 0 0;}
	.program h4 {font-size: 110%; margin-bottom: 20px;}
	.program h5 {font-size: 100%; margin-bottom: 20px;}
	.program p { margin-bottom:50px;}
	.kouji img {width: 300%; margin-left:0px;}
}
/*** お問い合わせ ***/
.bg_inq {background: url("../images/inq/bg.jpg") no-repeat center center; background-size: cover;}
#inqs .title {
    background-size: 600% 600%;
    -webkit-animation: AnimationName 4s ease infinite;
    -moz-animation: AnimationName 4s ease infinite;
    animation: AnimationName 4s ease infinite;
}

@-webkit-keyframes AnimationName {
    0%{background-position:35% 0%}
    50%{background-position:66% 100%}
    100%{background-position:35% 0%}
}
@-moz-keyframes AnimationName {
    0%{background-position:35% 0%}
    50%{background-position:66% 100%}
    100%{background-position:35% 0%}
}
@keyframes AnimationName {
    0%{background-position:35% 0%}
    50%{background-position:66% 100%}
    100%{background-position:35% 0%}
}
.inq_con {background-color: #fff; width: 80%; margin-left: auto; margin-right: auto; margin-bottom:50px; clear:both; padding:30px; border-radius:4px;}
.inq_con .inqbox {width: 130%; height: 2400px; margin-left: auto; margin-right: auto; clear: both;}
.inq_con h2 {margin: 0px 20px 20px 20px; font-size: 120%; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }
.inq_con h3 {margin: 0px 20px 20px 20px; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }
.inq_con p {margin: 0px 40px 40px 40px;}
@media screen and (max-width:767px) {
	#inqs .title {background-color:#b6a97e;; margin-bottom: 50px; width: 70%;}
	.inq_con {width: 90%;}
	.inq_con .inqbox {height: 1200px; width: 100%;}
}

/*** 採用 ***/
.bg_recruit {background: url(../images/recruit/bg.jpg) no-repeat center center; background-size: cover;}
.recruit_wrap .rec_info {background:url("../images/recruit/recruit.svg") no-repeat center bottom #fafafac2; background-size: 60%; margin:5% auto 0 auto; padding:5% 5% 3% 5%; width:80%;  text-align: center;}
.rec_cat {font-size: 24px; padding-bottom: 1.2em; margin-bottom: 1em;}
.rec_cat:after {left:0; right:0; margin:auto;}
.rec_info p {padding-bottom: 1em; line-height: 2.4em;text-align: left;}/*** 採用 ***/
.rec_button {width: 100%; margin-left: auto; margin-right: auto; margin-bottom: 70px;}

/*** 採用：グラフ ***/
.rec_data {margin:0 auto; padding:6% 4% 5% 4%; width:80%; background: #FFFFFF;}
.rec_data_tit_wrap {text-align: center; padding-bottom:3.5em;}
.rec_data_tit {position: relative; line-height: 1.4; padding:0.25em 1em; display:inline-block; top:0; font-size: 25px; font-weight: 500;}
.rec_data_tit:before,.rec_data_tit:after{
	position: absolute;
	top: 0;
	content:'';
	width: 10px;
	height: 100%;
	display: inline-block;
}
.rec_data_tit:before{border: solid 3px #b6a97e; border-right: none; left: 0;}
.rec_data_tit:after{content:''; border: solid 3px #b6a97e; border-left: none; right: 0;}
.rec_graph {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.graph_box {
    width:50%;
	padding: 1% 1% 4% 1%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	text-align: center;
}
.graph_box span {font-size: 30px; display: block; font-weight: 500; color: #b6a97e;}
.graph_box em {display: block; padding-bottom: 0.8em;}

/*** 採用：部署長 ***/
.rec_busho {background: #000000; padding:7% 3%;}
.rec_busho .ctit {color: #bdbbb4;}
.rec_busho .subtit {font-size: 20px;}
.rec_busho .sec_title {padding-bottom:2em;}
.rec_busho .flex6 li {margin:1.5%; width:17%; background:#1E1E1E;}
.rec_busho .flex6 a {display:block; position:relative; color:#f4f1e8;}
.rec_busho .flex6 strong {display:block; padding:0 2% 0 7%; position: absolute; z-index:100;  bottom: 3%; left: 0; font-size: 14px; letter-spacing: 0.1em;}
.rec_busho .flex6 figure {background:#000;}

.rec_busho .flex6 a::after {content:""; width:100%; height:2px; position:absolute; bottom:0; background:#b6a97e; transition:0.3s;}
.rec_busho .flex6 a:hover::after {content:""; width:100%; height:15%; position:absolute; bottom:0; background:#b6a97e; z-index:50;}

.modals {display: none;}
.modaal-wrapper strong {font-size: 33px; text-align: center; display: block; padding-bottom:0.8em; color: #b6a97e;}
.modaal-wrapper em {display: block; background: #1f1e19; text-align: center; border-radius: 3px; margin-bottom: 0.5em; font-size: 18px; padding: 0.4em;}
.modaal-wrapper p {padding:0 0.5em 1em 0.5em; color:#bdbbb4;}


/*** 採用：スタッフ ***/
.staff_title {padding-top: 7%;}
.staff_list li {width: 30.33%; margin: 1.5%;}
.staff_list li img {width: 100%;}
.staff_list li a {position: relative; display: block; overflow: inherit;}
.staff_list li a div {position: absolute; right:-4%; bottom:-7%; width: 60%; background:rgba(182,169,126,0.88); padding:3% 5%; color: #FFFFFF;}
.staff_list li a div strong {display: block; font-size: 22px; font-weight: 500; padding-bottom: 5px;}
.staff_list li a div span {font-size: 14px; display: block; line-height: 1.8em;}

/*** 採用：募集要項 ***/
.recruit_wrap .rec_youko {background:#f4f3ef; margin:5% auto 200px auto; padding:6% 5% 7% 5%; width:80%;}
.youko_tab {border-collapse: collapse; width: 100%;}
.youko_tab th,
.youko_tab td {padding:1% 3%; text-align:left; font-weight:500; font-size: 16px;}
.youko_tab th {border-bottom:1px solid #b6a97e; width:25%; text-align: right;}
.youko_tab td {border-bottom:1px solid #ccc; text-align: left;}
.youko_tab td a{color:#2A2F73;font-weight: bold;}
.staff_h {padding-top: 200px; clear: both;}
.recruit_wrap .staff_box {background:#f4f3ef; margin:5% auto 0 auto; padding:3% 3% 7% 3%; width:80%;}
.staff_box {clear: both;}
.st_one {display: inline-block; width: 32%; padding: 2% 3% 4% 3%; vertical-align: top;}
.st_one img {}
.st_one h3 { margin-bottom: 10px; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";}
.st_one ul {}
.st_one li {text-align: left; letter-spacing: 0.02em; line-height: 1.5em; margin-bottom: 20px;}

@media screen and (max-width:767px) {
.rec_button {width: inherit;}
.rec_button img {width: 100%;}
.rec_cat {font-size: 18px;padding-bottom: 2.2em;}
.rec_info p {line-height: 2em; letter-spacing: 0.05em; text-align: left;}
.recruit_wrap .rec_info {background:url("../images/recruit/recruit.svg") no-repeat center bottom #fafafac2; background-size: 100%; margin:5% auto 0 auto; padding:5% 5% 3% 5%; width:80%;  text-align: center;}
.youko_tab th, .youko_tab td {font-size: 10px;}
.st_one {display: inline-block; width: 100%; padding: 2% 3% 30% 3%; vertical-align: top;}
}
/*** 活動情報 ***/
.bg_ivent {background: url(../images/ivent/bg.jpg) no-repeat center center; background-size: cover;}
.ivent_wrap .ivent_info {background:url("../images/ivent/ivent.svg") no-repeat center bottom #f4f3ef; background-size: 60%; margin:5% auto 0 auto; padding:2% 2% 2% 2%; width:80%;  text-align: center;}
.ivent_wrap .ivent_box {background: rgb(245, 245, 245, 1); margin:5% auto 0 auto; padding:6% 5% 7% 5%; width:80%;}
.ivent_tab {border-collapse: collapse; width: 100%;}
.ivent_tab th,
.ivent_tab td {padding:1% 3%; text-align:left; font-weight:500; font-size: 16px;}
.ivent_tab th {border-bottom:1px solid #b6a97e; width:25%; text-align: right;}
.ivent_tab td {border-bottom:1px solid #ccc; text-align: left;}
.ivent_tab td a{color:#2A2F73;font-weight: bold;}
.lecture {width: 90%; margin-left: auto; margin-right: auto; margin-bottom:100px; padding-top: 50px; clear: both;}
.lecture .right_img {float: right; margin: 20px; width: 450px;}
.lecture .left_img {float: left; margin: 20px; width: 450px;}
.lecture p {padding-top: 20px; padding-bottom: 20px; letter-spacing: 0.1em;}
.lecture .lecture_le {clear: left;}
.lecture .lecture_ri {clear: right;}
@media screen and (max-width:767px) {
.ivent_button {width: inherit;}
.ivent_button img {width: 50%;}
.ivent_cat {font-size: 19px;padding-bottom: 1.2em; float: left; }
.ivent_wrap .ivent_info p {text-align: left; margin-bottom: 30px;margin-left: 10px; margin-right: 10px; letter-spacing: 0;}
.ivent_tab th {font-weight: 800; letter-spacing: 0; font-size: 80%;}
.ivent_tab td {font-size: 80%;}
.ivent_box .lecture h3.announce{font-size:16px;}
.lecture .right_img {text-align: center; float: none; margin: 0;}
.lecture .left_img {text-align: center; float: none; margin: 0;}
}
/*** スケジュール ***/
.bg_sch {background: url(../images/schedule/bg.jpg) no-repeat center center; background-size: cover;}
.sch_wrap {padding:2% 2% 2% 2%; margin-bottom: 60px;}
.sch_wrap .sch_box {background: rgb(245, 245, 245, 1); margin:-10% auto 0 auto; padding:6% 5% 7% 5%; width:80%;}
.sch_button2 {width: 200%; margin-bottom: 20px}
.sch_tab {border-collapse: collapse; width: 100%; margin-top: 30px; margin-bottom: 40px;}
.sch_tab th,
.sch_tab td {padding:1% 3%; text-align:left; font-weight:500; font-size: 15px;}
.sch_tab th {border-bottom:1px solid #b6a97e; width:40%; text-align: left;}
.sch_tab td {border-bottom:1px solid #ccc; text-align: left; letter-spacing: 0.02em;}
.sch_tab td a{color:#2A2F73;font-weight: bold;}
.sch_tab ul li {list-style: disc; font-size: 90%; letter-spacing: 0.02em;}
.planbox {width: 90%; margin-left: auto; margin-right: auto; margin-bottom:100px; padding-top: 50px; clear: both;}
.planbox .right_img {float: right; margin: 20px; width: 450px;}
.planbox .left_img {float: left; margin: 20px; width: 450px;}
.planbox p {padding-top: 20px; padding-bottom: 20px; letter-spacing: 0.1em;}
.planbox .planbox_le {clear: left;}
.planbox .planbox_ri {clear: right;}
@media screen and (max-width:767px) {
.sch_button {width: inherit;}
.sch_button img {width: 50%;}
.sch_button2 {width: 450%;}
.sch_cat {font-size: 15px;padding-bottom: 2.2em;margin-bottom: 40px;}
.sch_info p {font-size: 19px;text-align: left;}
}

/*** ローディング ***/
.loadingWrap {display:none;}
.loadingWrap {width:100%; height:100%; background:#000; position:fixed; top:0; left:0; z-index:15000; display:block;}
.loadingWrap img {
position:absolute;
width:60px;
height:60px;
margin:auto;
top:0;
bottom:0;
left:-20px;
right:0;
-webkit-animation:spin 1.6s linear infinite;
-moz-animation:spin 1.6s linear infinite;
-ms-animation:spin 1.6s linear infinite;
-o-animation:spin 1.6s linear infinite;
animation:spin 1.6s linear infinite;
}

@-webkit-keyframes spin {
0% {-webkit-transform:rotate(0deg);}
100% {-webkit-transform:rotate(360deg);}
}
@-moz-keyframes spin {
0% {-moz-transform:rotate(0deg);}
100% {-moz-transform:rotate(360deg);}
}
@-ms-keyframes spin {
0% {-ms-transform:rotate(0deg);}
100% {-ms-transform:rotate(360deg);}
}
@-o-keyframes spin {
0% {-o-transform:rotate(0deg);}
100% {-o-transform:rotate(360deg);}
}
@keyframes spin {
0% {transform:rotate(0deg);}
100% {transform:rotate(360deg);}
}
