@charset "utf-8";
/*
Theme Name: FMS2026（新デザイン検証）
Description: ファインモータースクール様用テーマ
Author: Kinabal.inc
Version: 1.0
*/

@font-face{
	src:url(./fonts/cae76507-fde0-48d2-8060-f95b67662772.eot?#iefix);
	src:url(./fonts/cae76507-fde0-48d2-8060-f95b67662772.eot?#iefix) format("eot"),
		url(./fonts/25516da4-2e65-456a-bc9c-cc6960f6c384.woff) format("woff"),
		url(./fonts/8c439ac8-83ef-4635-a477-df9c64f97b62.ttf) format("truetype"),
		url(./fonts/93d1f11a-903e-4293-a2f1-.svg#93d1f11a-903e-4293-a2f1-cd55b87b5087) format("svg");
	font-family:AxisStd-ExtraLight
}
@font-face{
	src:url(./fonts/aa7c9f5f-bd2d-4fbb-a4a5-82ba2cd0189c.eot?#iefix);
	src:url(./fonts/aa7c9f5f-bd2d-4fbb-a4a5-82ba2cd0189c.eot?#iefix) format("eot"),
		url(./fonts/18820f9e-d51e-43be-9d0f-e510d9d1878a.woff) format("woff"),
		url(./fonts/cb3a3886-7dec-420d-bf42-698737ce3561.ttf) format("truetype"),
		url(./fonts/9bdde1f9-7637-4fa1-994d-2f2ad4929b1f.svg#9bdde1f9-7637-4fa1-994d-2f2ad4929b1f) format("svg");
	font-family:AxisStd-Light
}
@font-face{
	src:url(./fonts/7e908add-1f72-4926-8e0d-33613fad3a87.eot?#iefix);
	src:url(./fonts/7e908add-1f72-4926-8e0d-33613fad3a87.eot?#iefix) format("eot"),
		url(./fonts/6e9eb620-9339-4b2e-bb9b-d514def96de7.woff) format("woff"),
		url(./fonts/a71ba532-858c-440c-8abd-e89a2ae8efea.ttf) format("truetype"),
		url(./fonts/5d948218-1de1-4508-b1a6-fe03ccced886.svg#5d948218-1de1-4508-b1a6-fe03ccced886) format("svg");
	font-family:AxisStd-Regular
}
@font-face{
	src:url(./fonts/724feca3-e632-4df0-811e-d0184d5e569c.eot?#iefix);
	src:url(./fonts/724feca3-e632-4df0-811e-d0184d5e569c.eot?#iefix) format("eot"),
		url(./fonts/2a67f3cb-4bfa-4ec5-9167-73e8c4e78635.woff) format("woff"),
		url(./fonts/f09ad952-d955-4c72-a632-1313427634d0.ttf) format("truetype"),
		url(./fonts/c60a0c5e-c39d-4513-b578-1a5858cbecde.svg#c60a0c5e-c39d-4513-b578-1a5858cbecde) format("svg");
	font-family:AxisStd-Medium
}


/* global
-----------------------------------------------------------*/
body,html{
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	font-size:15px;
	line-height:2;
	letter-spacing:0;
	color:#000;
	font-family:AxisStd-Regular,"游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}
body{
	opacity:0;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
body.loaded{
	opacity:1;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
*{box-sizing:border-box}

::-webkit-scrollbar{
	width:6px;
	height:6px;
}
::-webkit-scrollbar-track{
	background:#fff;
	border:none;
	border-radius:6px;
	box-shadow:inset 0 0 2px #777; 
}
::-webkit-scrollbar-thumb{
	background:#ccc;
	border-radius:6px;
	box-shadow:none;
}

.inner{
	width:calc(100% - 80px);
	max-width:1200px;
	margin:0 auto;
}

.left{float:left}
.right{float:right}
.pc{display:block}
.sp{display:none}
.clearfix:after,
.clr:after{
	display:block;
	content:"";
	clear:both;
}
img{
	max-width:100%;
	height:auto;
}
a{
	color:#000;
	text-decoration:none;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
a:hover, a:active, a:focus{
	color:#e56936;
	outline:none;
	text-decoration:none;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

b{
	font-weight:normal;
	color:#d96845;
}

ul.side{
	display:block;
	margin:0;
	padding:0;
	list-style:none;
}
ul.side:after{
	display:block;
	content:"";
	clear:both;
}
ul.side li{
	float:left;
	margin:0;
	padding:0;
}

ol{
	list-style:none;
	padding-left:30px;
}
ol li{
	position:relative;
}
ol li:before{
	display:block;
	content:"1.";
	color:#f59702;
	position:absolute;
	left:-28px;
	top:0;
}
ol li:nth-of-type(2):before{content:"2."}
ol li:nth-of-type(3):before{content:"3."}
ol li:nth-of-type(4):before{content:"4."}
ol li:nth-of-type(5):before{content:"5."}
ol li:nth-of-type(6):before{content:"6."}
ol li:nth-of-type(7):before{content:"7."}
ol li:nth-of-type(8):before{content:"8."}
ol li:nth-of-type(9):before{content:"9."}
ol li:nth-of-type(10):before{content:"10."}

table{
	width:100%;
	border-collapse:collapse;
}
th,td{
	padding:1.46em 0;
	border:2px #ddd solid;
	font-weight:normal;
	background:#fff;
}
th{
	background:#f7f7f7;
}
.bold {
	font-weight:bold;
}
.grad{
	position:relative;
	overflow:hidden;
}
.grad:before{
	display:block;
	content:"";
	width:100%;
	height:100%;
	background: #d96845;
	background: -moz-linear-gradient(left, #d96845 1%, #e19345 50%, #bf3675 100%);
	background: -webkit-linear-gradient(left, #d96845 1%,#e19345 50%,#bf3675 100%);
	background: linear-gradient(to right, #d96845 1%,#e19345 50%,#bf3675 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#bf3675',GradientType=1 );
	position:absolute;
	left:0;
	top:0;
	z-index:-1;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
.grad:hover:before{
	opacity:0;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
.grad:after{
	display:block;
	content:"";
	width:100%;
	height:100%;
	background: #bf3675;
	background: -moz-linear-gradient(left, #bf3675 1%, #e19345 50%, #d96845 100%);
	background: -webkit-linear-gradient(left, #bf3675 1%,#e19345 50%,#d96845 100%);
	background: linear-gradient(to right, #bf3675 1%,#e19345 50%,#d96845 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bf3675', endColorstr='#d96845',GradientType=1 );
	position:absolute;
	left:0;
	top:0;
	z-index:-2;
}

body.home .fadeInUp{
	opacity:0;
	transform:translateY(50px);
}
body.home .fadeInUp.active{
	opacity:1;
	transform:translateY(0);
		-webkit-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

/* breadcrumb
-----------------------------------------------------------*/
#breadcrumb{
	padding:16px 0;
	font-size:13px;
	border-top:1px #ddd solid;
	background:#fff;
}
/*#breadcrumb .inner{
	width:calc(100% - 96px);
	max-width:1008px;
}*/
#breadcrumb .inner a{
	color:#d96845;
}

/* pagenavi
-----------------------------------------------------------*/
.wp-pagenavi{
	text-align:center;
	padding-top:80px;
}
.wp-pagenavi a,
.wp-pagenavi span{
	display:inline-block;
	width:24px;
	height:24px;
	margin:0 8px;
	padding:0;
	background:transparent;
	line-height:24px;
	border-radius:12px;
	border:0;
	color:#d96845;
	font-size:13px;
}
.wp-pagenavi a.first,
.wp-pagenavi a.last{
	width:3em;
}
.wp-pagenavi span:not(.extend){
	color:#fff;
	background:#d96845;
}
.wp-pagenavi span.extend{
	border:0;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink{
	font-size:0;
	position:relative;
	vertical-align:middle;
}
.wp-pagenavi .previouspostslink:after{
	display:block;
	content:"";
	width:7px;
	height:7px;
	border-top:2px #d96845 solid;
	border-left:2px #d96845 solid;
	position:absolute;
	right:4px;
	top:7px;
	transform:rotate(-45deg);
}
.wp-pagenavi .nextpostslink:after{
	display:block;
	content:"";
	width:7px;
	height:7px;
	border-top:2px #d96845 solid;
	border-right:2px #d96845 solid;
	position:absolute;
	left:4px;
	top:7px;
	transform:rotate(45deg);
}

/* form
-----------------------------------------------------------*/
input[type=text],
input[type=tel],
input[type=email],
select{
	width:100%;
	height:48px;
	line-height:48px;
	padding:0 21px;
	border:1px #ddd solid;
	border-radius:3px;
	outline:none;
	font-size:16px;
}
select{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	background:transparent;
}
.selectbox{
	width:100%;
	background:#fff;
	position:relative;
}
.selectbox:after{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:6px #000 solid;
	border-left:5px transparent solid;
	border-right:5px transparent solid;
	position:absolute;
	top:22px;
	right:23px;
}
.mw_wp_form_confirm .selectbox:after{display:none}
textarea{
	width:100%;
	height:180px;
	padding:16px 21px;
	border:1px #ddd solid;
	border-radius:3px;
	outline:none;
	font-size:16px;
	line-height:1.3;
}
input[type=checkbox]{
	position:absolute;
	opacity:0;
	z-index:-1;
}
input[type=checkbox]+span{
	display:inline-block;
	margin:5px;
	padding-left:30px;
	letter-spacing:0;
	position:relative;
}
input[type=checkbox]+span:before{
	display:block;
	content:"";
	width:17px;
	height:17px;
	border:2px #555 solid;
	border-radius:4px;
	background:#fff;
	position:absolute;
	left:0;
	top:6px;
	cursor:pointer;
}
input[type=checkbox]:checked+span:before{border-color:#bf3675}
input[type=checkbox]:checked+span:after{
	display:block;
	content:"";
	width:6px;
	height:10px;
	border-bottom:3px #bf3675 solid;
	border-right:3px #bf3675 solid;
	position:absolute;
	left:6px;
	top:8px;
	transform:rotate(45deg);
	cursor:pointer;
}
input[type=radio]{
	position:absolute;
	opacity:0;
	z-index:-1;
}
input[type=radio]+span{
	display:inline-block;
	margin:5px;
	padding-left:30px;
	letter-spacing:0;
	position:relative;
}
input[type=radio]+span:before{
	display:block;
	content:"";
	width:16px;
	height:16px;
	border:2px #dedede solid;
	border-radius:100%;
	background:#fff;
	position:absolute;
	left:0;
	top:5px;
	cursor:pointer;
}
input[type=radio]:checked+span:before{border-color:#bf3675}
input[type=radio]:checked+span:after{
	display:block;
	content:"";
	width:12px;
	height:12px;
	border-radius:100%;
	background:#bf3675;
	position:absolute;
	left:4px;
	top:9px;
	cursor:pointer;
}
input[type=radio]:disabled+span:before{
	background:#f2f2f2;
	border-color:#d0d0d0;
	cursor:not-allowed;
}
input[type=radio]:disabled+span{
	color:#aaa;
	cursor:not-allowed;
}
.mw_wp_form .horizontal-item{margin-right:10px}
.mw_wp_form .horizontal-item + .horizontal-item{margin-left:0}

.mw_wp_form .error{
	margin-top:10px;
	margin-bottom:-14px;
	font-size:14px;
	color:#ff6473;
}
.mw_wp_form_confirm .agreebox{display:none}
.agreebox .error{
	margin-bottom:0;
	text-align:center;
}
label{cursor:pointer}
.mw_wp_form #zip1{
	display:inline-block;
	width:7em;
	margin:0 4px;
}
.mw_wp_form #zip2{
	display:inline-block;
	width:8em;
	margin:0 4px;
}
.mw_wp_form .error{
	font-size:15px;
}

/* button */
#buttonbox{
	padding:22px 0 0;
	text-align:center;
}
#buttonbox #sendBtnBox{
	width:280px;
	height:60px;
	margin:0 auto;
	background:#f59702;
	border:1px #f59702 solid;
	color:#fff;
	border-radius:4px;
	position:relative;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
/*#buttonbox #sendBtnBox:hover{
	background:#fff;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}*/
#buttonbox #sendBtnBox input{
	width:280px;
	height:60px;
	color:#fff;
	background:none;
	border:0;
	font-size:16px;
	cursor:pointer;
	position:absolute;
	top:0;
	left:0;
	z-index:2;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
	outline:none;
}
/*#buttonbox #sendBtnBox:hover input{
	color:#f59702;
		-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}*/
#buttonbox #backBtnBox input{
	margin-top:20px;
	background:none;
	border:0;
	font-size:12px;
	color:#555;
	text-decoration:underline;
	cursor:pointer;
	outline:none;
}
#zip2address{
	display:inline-block;
	margin-left:20px;
	padding:5px 15px;
	border-radius:20px;
	background:#000;
	color:#fff;
	cursor:pointer;
}

/* formbox */
.mw_wp_form .box{
	padding:54px 60px;
	background:#f7f7f7;
}
.mw_wp_form .box ul{
	margin:0;
	padding:0;
	list-style:none;
}
.mw_wp_form .box ul li{
	margin:0;
	padding:0 0 50px;
}
.mw_wp_form .box ul li:last-child{
	padding:0;
}
.mw_wp_form .box ul li .title{
	padding-bottom:8px;
}
.mw_wp_form .box ul li ins{
	display:inline-block;
	margin-left:10px;
	padding:0 8px;
	border-radius:3px;
	background:#bf3675;
	color:#fff;
	font-size:10px;
	text-decoration:none;
}
.mw_wp_form .box ul li .input:after{
	display:block;
	content:"";
	clear:both;
}
.mw_wp_form .notice{
	margin:50px 0;
	font-size:13px;
}
.mw_wp_form .notice a{
	color:#d96845;
	text-decoration:underline;
}
.mw_wp_form .agreeement{
	text-align:center;
}
.mw_wp_form .recaptchabox{
	text-align:center;
	margin-top: 40px;
}
.mw_wp_form .recaptchabox .g-recaptcha{
    display: flex;
    justify-content: center;
}
.mw_wp_form .buttonbox{
	margin-top:50px;
	text-align:center;
}
.mw_wp_form .buttonbox .submitbtn,
.mw_wp_form .buttonbox .backbtn{
	display:inline-block;
}
.mw_wp_form .buttonbox .submitbtn input{
	-webkit-appearance: none;
	appearance: none;
	padding:20px 79px;
	border:0;
	background:transparent;
	color:#fff;
	cursor:pointer;
}
.mw_wp_form .buttonbox .backbtn{
	background:#999;
	margin-top:20px;
}
.mw_wp_form .buttonbox .backbtn input{
	-webkit-appearance: none;
	appearance: none;
	padding:10px 39px;
	border:0;
	background:transparent;
	color:#fff;
	cursor:pointer;
}
.mw_wp_form #hide1,
.mw_wp_form #hide2,
.mw_wp_form #hide3{
	display:none;
}
/* input */
.mw_wp_form #sei,
.mw_wp_form #mei,
.mw_wp_form #ksei,
.mw_wp_form #kmei{
	float:left;
	width:calc(50% - 20px);
}
.mw_wp_form #mei,
.mw_wp_form #kmei{
	margin-left:40px;
}
.mw_wp_form .selectbox{
	display:inline-block;
}
.mw_wp_form .selectbox:nth-of-type(n+2){
	margin-left:1.8em;
}
.mw_wp_form .selectbox,
.mw_wp_form #birthyear,
.mw_wp_form #birthmonth,
.mw_wp_form #birthday{
	width:150px;
}


/* common
-----------------------------------------------------------*/
main{
	padding-top:135px;
}
body:not(.home) main{
	width:calc(100% - 120px);
	margin:0 auto;
	padding-bottom:200px;
}
main:after{
	display:block;
	content:"";
	clear:both;
}
#title{
	width:100%;
	height:300px;
	margin:0 0 130px;
	padding:0;
	background:url(img/common/titleBgPc.jpg) center center no-repeat;
	background-size:cover;
	position:relative;
}
#title.bg{
	height:400px;
	padding-top:140px;
	background-position:center center;
	background-size:cover;
}
#title>div{
	width:50%;
	margin:0;
	padding:40px 0 0;
	background:#fff;
	position:absolute;
	left:0;
	top:calc(100% - 100px);
}
#title h1,
#title .h1{
	float:right;
	width:560px;
	margin:0;
	padding:0;
	font-size:40px;
	font-weight:normal;
	position:relative;
}
#title h1:before,
#title .h1::before{
	display:block;
	content:"";
	width:451px;
	height:312px;
	background:url(img/common/futureTitle.png) center center no-repeat;
	background-size:contain;
	position:absolute;
	left:-160px;
	top:-226px;
}
#title h1 span,
#title .h1 span{
	display:block;
	font-size:18px;
	line-height:1.5;
}
main.withmv #title{
	display:none;
}
main.withmv #mv img{
	width:100%;
	height:31.25vw;
	background-size:cover;
}
body:not(.home) h2{
	margin:0 0 1em;
	padding:0 0 0 1em;
	font-size:24px;
	font-weight:normal;
	line-height:1.7;

	position:relative;
}
body:not(.home) h2:before{
	display:block;
	content:"";
	width:10px;
	height:100%;
	background: #d96845;
	background: -moz-linear-gradient(top, #d96845 0%, #e19345 50%, #bf3675 100%);
	background: -webkit-linear-gradient(top, #d96845 0%,#e19345 50%,#bf3675 100%);
	background: linear-gradient(to bottom, #d96845 0%,#e19345 50%,#bf3675 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#bf3675',GradientType=0 );
	position:absolute;
	left:0;
	top:0;
}
/* hlink */
.hlink{
	display:block;
}
.hlink .image{
	overflow:hidden;
}
.hlink .image img{
	vertical-align:bottom;
	transition:transform .4s ease-in-out;
}
.hlink:hover .image img{
	transform:scale(1.1);
	transition:transform .4s ease-in-out;
}
.hlink .text{
	color:#000;
	background-color:#fff;
	transition:all .4s ease-in-out;
}
.hlink:hover .text{
	color:#fff;
	background-color:#d96845;
	transition:all .4s ease-in-out;
}
.hlink .text .more{
	color:#000;
	background-color:#fff;
	transition:all .4s ease-in-out;
}
.hlink:hover .text .more{
	color:#fff;
	background-color:#d96845;
	transition:all .4s ease-in-out;
}
/* dotbg */
.dotbg{position:relative}
.dotbg:before{
	display:block;
	content:"";
	width:calc(50% + 400px);
	height:calc(100% - 90px);
	background:url(img/common/dot.png) left top repeat;
	position:absolute;
	left:calc(50% - 400px);
	top:90px;
	z-index:-1;
}
main.withmv.dotbg::before{
	width:calc(50% + 260px);
	top:calc(31.25vw + 248px);
	left:auto;
	right:-60px;
}

/* header
-----------------------------------------------------------*/
header{
	width:100%;
	height:135px;
	padding:30px 30px 24px;
	background:transparent;
	position:fixed;
	top:0;
	left:0;
	z-index:10;
	background:rgba(255,255,255,.96);
}
header .logo{
	float:left;
	display:block;
	margin:0;
	padding:10px 0 0;
}
header .logo img{
	display:block;
	width:280px;
}

header #menu{display:none}

header #hlink li+li{
	margin-left:30px;
}
header #hlink li a,
header #hlink li span{
	display:block;
	line-height:40px;
}
header #hlink li:nth-of-type(1){
	position:relative;
	padding-left:30px;
}
header #hlink li:nth-of-type(1) a{
	padding-left:26px;
	background:url(img/common/icon_note.svg) left center no-repeat;
	background-size:16px;
}
header #hlink li.reserve{
	position: relative;
}
header #hlink li.reserve span{
	padding-left:26px;
	background:url(img/common/icon_car.svg) left center no-repeat;
	background-size:20px;
}
header #hlink li.reserve.showmenu span{
	color:#d96845;
	transition: all .3s ease-in-out;
}
header #hlink li.reserve div{
	display:none;
	padding:10px 20px;
	background:#fff;
	white-space: nowrap;
	position: absolute;
	left:50%;
	top:100%;
	z-index: 1;
	transform: translateX(-50%);
	box-shadow:0 3px 30px rgb(0 0 0 / 16%);
}
header #hlink li.reserve div::before{
	display:block;
	content:"";
	width:100%;
	height:40px;
	position: absolute;
	left:0;
	bottom:100%;
	background:transparent;
}
header #hlink li.request a{
	width:180px;
	height:40px;
	text-align:center;
	color:#fff;
}
header #hlink li.rakueco a{
	width:130px;
	height:40px;
	text-align:center;
	line-height:40px;;
	border-radius:3px;
	background:#fda629;
	color:#fff;
	font-size:13px;
}
header #hlink li.line a{
	height:40px;
}
header #hlink li.line a img{
	height:40px;
}

header nav{
	display:block;
	width:calc(100% - 280px);
	margin-top:9px;
}
header nav ul li{
	position:relative;
}
header nav ul.side li+li{
	margin-left:56px;
}
header nav ul li a{
	display:block;
	font-size:16px;
	position:relative;
}
header nav ul li.subtop>span{
	transition:color .3s ease-in-out;
}
header nav ul li.subtop:hover>span{
	color:#e56936;
	transition:color .3s ease-in-out;
}
header nav ul li.subtop:hover:before{
	display:block;
	content:"";
	width:100%;
	height:4px;
	background: #d96845;
	background: -moz-linear-gradient(left, #d96845 1%, #e19345 50%, #bf3675 100%);
	background: -webkit-linear-gradient(left, #d96845 1%,#e19345 50%,#bf3675 100%);
	background: linear-gradient(to right, #d96845 1%,#e19345 50%,#bf3675 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#bf3675',GradientType=1 );
	position:absolute;
	left:0;
	bottom:-26px;
	z-index:11;
}
header nav ul li .submenu{
	display:none;
	width:100%;
	padding:80px 0;
	border-top:1px #ccc solid;
	box-shadow:0 15px 15px rgba(0,0,0,.15);
	background:#f8f6f5;
	position:fixed;
	left:0;
	top:135px;
	z-index:9;
}
header nav ul li.showmenu:after{
	display:block;
	content:"";
	width:100%;
	height:60px;
	background:transparent;
	position:absolute;
	left:0;
	top:0;
	z-index:2;
}
header nav ul li .submenu ul{
	max-width:1200px;
	margin:0 auto;
}
header nav ul li .submenu ul li{
	width:calc(25% - 30px);
	margin-left:40px;
	border-bottom:1px #ccc solid;
	text-align:left;
}
header nav ul li .submenu ul li:nth-of-type(4n+1){
	margin-left:0;
	clear:both;
}
header nav ul li .submenu ul li:nth-of-type(-n+4){
	border-top:1px #ccc solid;
}
.arrow,
.arrowimg,
header nav ul li .submenu ul li a{
	display:block;
	padding:26px 0;
	position:relative;
	text-decoration:none;
}
.arrow,
.arrowimg{
	padding:0;
}
.arrowimg{
	width:40px;
	height:40px;
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
}
.arrow:before,
header nav ul li .submenu ul li a:before{
	display:block;
	content:"";
	width:20px;
	height:20px;
	border-radius:100%;
	background: #d96845;
	background: -moz-linear-gradient(left, #d96845 0%, #e19345 100%);
	background: -webkit-linear-gradient(left, #d96845 0%,#e19345 100%);
	background: linear-gradient(to right, #d96845 0%,#e19345 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#e19345',GradientType=1 );
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
}
.arrow:after,
header nav ul li .submenu ul li a:after{
	display:block;
	content:"";
	width:5px;
	height:9px;
	background:url(img/common/arrow.svg) center center no-repeat;
	background-size:contain;
	position:absolute;
	right:7px;
	top:50%;
	transform:translateY(-50%);
}
header nav ul li .submenu>a{
	display:block;
	width:250px;
	height:60px;
	margin:50px auto 0;
	line-height:60px;
	color:#fff;
	text-align:center;
}

header nav ul li.course .flex{
	background:#F8F6F5;
	display:flex;
}
header nav ul li.course .flex>div{
	width:calc((100% - 120px) / 4);
	padding:90px 40px 16px;
	background:#fff url(img/course/course1.png) center 30px no-repeat;
}
header nav ul li.course .flex>div.midium_car{
	background-image:url(img/course/course2.png);
}
header nav ul li.course .flex>div.motorcycle{
	background-image:url(img/course/course3.png);
	background-position-y: 28px;
}
header nav ul li.course .flex>div.stepup{
	background-image:url(img/course/course4.png);
	background-position-y: 27px;
}
header nav ul li.course .flex>div+div{
	margin-left:40px;
}
header nav ul li.course .flex>div .arrow{
	padding:14px 0;
}
header nav ul li.course .flex>div .arrow+.arrow{
	border-top:1px #ddd solid;
}

/* fotNav
-----------------------------------------------------------*/
.fotNav{
	background:#f7f7f7;
	padding:70px 0;
}
.fotNav h3{
	margin:0 0 20px;
	font-weight:normal;
	font-size:20px;
}
.fotNav ul li{
	width:calc(100% / 3);
	border-right:2px #f7f7f7 solid;
	border-bottom:2px #f7f7f7 solid;
}
.fotNav ul li a{
	display:block;
	padding:32px 64px 32px 32px;
	background:#fff;
	font-size:20px;
}
.fotNav ul li a:before{
	right:20px;
}
.fotNav ul li a:after{
	right:27px;
}

.fotNav#course_footer{
	background:#F8F6F5;
	border-top:1px #ddd solid;
}
.fotNav#course_footer .clearfix>div{
	float:left;
	width:calc((100% - 120px) / 4);
	padding:90px 40px 16px;
	border:1px #ddd solid;
	background:#fff url(img/course/course1.png) center 30px no-repeat;
}
.fotNav#course_footer .clearfix>div.midium_car{
	background-image:url(img/course/course2.png);
}
.fotNav#course_footer .clearfix>div.motorcycle{
	background-image:url(img/course/course3.png);
	background-position-y: 28px;
}
.fotNav#course_footer .clearfix>div.stepup{
	background-image:url(img/course/course4.png);
	background-position-y: 27px;
}
.fotNav#course_footer .clearfix>div+div{
	margin-left:40px;
}
.fotNav#course_footer .clearfix>div .arrow{
	padding:14px 0;
}
.fotNav#course_footer .clearfix>div .arrow+.arrow{
	border-top:1px #ddd solid;
}


/* footer
-----------------------------------------------------------*/
footer{
	clear:both;
}
footer nav{
	padding:100px 0 120px;
	background:#333;
}
footer nav .inner{
	display:flex;
	justify-content:space-between;
}
footer nav ul{
	margin:0;
	padding:0;
	list-style:none;
}
footer nav ul+ul{
	margin-top:30px;
}
footer nav ul li.sub{
	font-size:13px;
}
footer nav ul li,
footer nav ul li a{
	color:#fff;
}

/* authorization
-----------------------------------------------------------*/
#authorization .inner{
	padding:20px 0;
}
#authorization ul li{
	display:flex;
}
#authorization ul li+li{
	margin-left:50px;
}
#authorization ul li .image{
	width:70px;
	height:70px;
	background:url(img/common/icon_designation.png) no-repeat;
	background-size:cover;
	margin:auto;
	margin-right:10px
}
#authorization ul li:nth-of-type(2) .image{
	width:80px;
	height:60px;
	background-image:url(img/common/icon_fairtrade.png);
}

/* overview
-----------------------------------------------------------*/
#overview{
	border-top:1px #ccc solid;
	padding-bottom: 30px;
}
#overview p{
	padding:20px 60px;
	color:#7d7d7d;
}

/* copyright
-----------------------------------------------------------*/
#copyright{
	position:fixed;
	left:0;
	top:50%;
	width:60px;
	line-height:60px;
		-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size:12px;
	transform:translateY(-50%);
}
#copyright span{
	display:inline-block;
	transform:rotate(90deg) translateY(-9px);
}


/* fixed_nav
-----------------------------------------------------------*/
#fixed_nav{display:none}


/* line_sp
-----------------------------------------------------------*/
#line_sp{display:none}


/* home
-----------------------------------------------------------*/
/* slider */
body.home #slider_pc{
	max-width:calc(100% - 120px);
	margin:0 auto;
}
body.home #slider_pc a:hover{
	opacity:.8;
	transition: opacity 400ms;
}
body.home #slider_pc img{
	width:100%;
}
body.home #slider_pc .btn1,
body.home #slider_pc .btn2{
	display: block;
	position: absolute;
}
body.home #control_pc{
	text-align:center;
	margin-bottom:100px;
}
body.home #control_pc .slick-next,
body.home #control_pc .slick-prev,
body.home #control_pc .dots,
body.home #control_pc .slick-dots{
	display:inline-block;
	position:static;
	line-height:1;
	vertical-align:bottom;
}
body.home #control_pc .slick-prev,
body.home #control_pc .slick-next{
	width:14px;
	height:14px;
	transform:initial;
}
body.home #control_pc .slick-prev:before{
	display:block;
	content:"";
	width:7px;
	height:7px;
	border-top:2px #000 solid;
	border-left:2px #000 solid;
	transform:rotate(-45deg) translate(70%,60%);
}
body.home #control_pc .slick-next:before{
	display:block;
	content:"";
	width:7px;
	height:7px;
	border-top:2px #000 solid;
	border-right:2px #000 solid;
	transform:rotate(45deg) translate(30%,-30%);
}
body.home #control_pc .slick-dots li{
	margin:0 17px;
	width:14px;
	height:14px;
}
body.home #control_pc .slick-dots li button:after{
	display:block;
	content:"01";
	width:14px;
	height:14px;
	line-height:14px;
	text-align:center;
	font-size:12px;
	color:#ddd;
	position:absolute;
	left:0;
	top:0;
}
body.home #control_pc .slick-dots li:nth-of-type(2) button:after{content:"02"}
body.home #control_pc .slick-dots li:nth-of-type(3) button:after{content:"03"}
body.home #control_pc .slick-dots li:nth-of-type(4) button:after{content:"04"}
body.home #control_pc .slick-dots li:nth-of-type(5) button:after{content:"05"}
body.home #control_pc .slick-dots li:nth-of-type(6) button:after{content:"06"}
body.home #control_pc .slick-dots li:nth-of-type(7) button:after{content:"07"}
body.home #control_pc .slick-dots li:nth-of-type(8) button:after{content:"08"}
body.home #control_pc .slick-dots li:nth-of-type(9) button:after{content:"09"}
body.home #control_pc .slick-dots li:nth-of-type(10) button:after{content:"10"}
body.home #control_pc .slick-dots li button:before{
	content:"";
}
body.home #control_pc .slick-dots li.slick-active{
	margin-right:100px;
}
body.home #control_pc .slick-dots li.slick-active button:after{
	color:#000;
}
body.home #control_pc .slick-dots li.slick-active button:before{
	display:block;
	content:"";
	width:76px;
	height:2px;
	background: #d96845;
	background: -moz-linear-gradient(left, #d96845 0%, #d96845 42%, #dddddd 42%, #dddddd 100%);
	background: -webkit-linear-gradient(left, #d96845 0%,#d96845 42%,#dddddd 42%,#dddddd 100%);
	background: linear-gradient(to right, #d96845 0%,#d96845 42%,#dddddd 42%,#dddddd 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#dddddd',GradientType=1 );
	position:absolute;
	left:calc(100% + 18px);
	top:calc(50% - 1px);
}

/* introduction */
body.home #introduction{
	max-width:960px;
	position:relative;
	text-align:center;
	padding:0 0 70px;
}

/* information */
body.home #information{
	max-width:960px;
	position:relative;
}
body.home #information h2{
	margin:0;
	padding:0;
	font-size:30px;
	font-weight:normal;
	letter-spacing:0.5;
}
body.home #information #categorySelect{
	position:absolute;
	right:0;
	top:17px;
}
body.home #information #categorySelect span{
	display:inline-block;
	width:80px;
	height:30px;
	line-height:30px;
	background:#fff;
	color:#000;
	border-radius:5px;
	font-size:15px;
	text-align:center;
	cursor:pointer;
}
body.home #information #categorySelect span.current{
	background:#000;
	color:#fff;
	cursor:initial;
}
body.home #newsList{
	position:relative;
}
body.home #information ul{
	margin:0;
	padding:0;
	list-style:none;
	position:static;
	opacity:1;
	z-index:1;
	transition:all .5s ease-in-out;
}
body.home #information ul:not(.current){
	position:absolute;
	opacity:0;
	z-index:-1;
	transition:all .5s ease-in-out;
}
body.home #information ul li:first-child{
	border-top:1px #ccc dotted;
}
body.home #information ul li a{
	display:block;
	padding:15px 0;
	border-bottom:1px #ccc dotted;
	position:relative;
}
body.home #information ul li.fixed a{
	background:#d96845;
	color:#fff;
}
body.home #information ul li a:before{
	display:block;
	content:"";
	width:100%;
	height:1px;
	background:#d96845;
	position:absolute;
	left:0;
	top:100%;
	transform:scaleX(0);
	transform-origin:bottom left;
	transition:transform 0.3s ease-in-out;
}
body.home #information ul li a:hover:before{
	transform:scaleX(1);
	transition:transform 0.3s ease-in-out;
}
body.home #information ul li .date{
	display:block;
	float:left;
	width:260px;
	padding-left:0.5em;
	position:relative;
}
body.home #information ul li .date:after{
	display:block;
	content:"";
	width:100px;
	height:1px;
	background:#000;
	position:absolute;
	right:30px;
	top:50%;
}
body.home #information ul li.fixed .date:after{
	background:#fff;
}
body.home #information ul li .category{
	display:block;
	float:left;
	width:150px;
	height:30px;
	line-height:30px;
	text-align:center;
	border:1px #ccc solid;
}
body.home #information ul li.fixed .category{
	border-color:#fff;
}
body.home #information ul li .title{
	display:block;
	float:right;
	width:520px;
}
body.home #information .more{
	text-align:right;
}
body.home #information .more a{
	display:inline-block;
	margin:30px 0 0;
	padding:0 32px 0 0;
}

/* future */
body.home #future{
	margin-top:50px;
	padding:140px 0 90px;
	position:relative;
	z-index:1;
}
body.home #future h2,
body.aboutus #future h2{
	margin:0;
	padding:0;
	text-align:center;
}
body.aboutus #future h2:before{display:none}
body.home #future h2 span,
body.aboutus #future h2 span{
	position:relative;
	font-size:30px;
	font-weight:normal;
}
body.home #future h2 .imgtitle,
body.aboutus #future h2 .imgtitle{
	width:450px;
	position:absolute;
	left:0;
	bottom:-50px;
	transform:translateX(-50%);
}
body.home #future p,
body.aboutus #future p{
	margin:24px 0 42px;
	text-align:center;
	line-height:2;
}
body.home #future .first,
body.aboutus #future .first{
	width:calc(100% - 120px);
	max-width:1480px;
	margin:0 auto;
}
body.aboutus #future .first{
	width:100%;
}
body.home #future .first a,
body.aboutus #future .first a{
	display:block;
	float:left;
	width:50%;
	padding-bottom:60px;
	position:relative;
}
body.home #future .first a:first-child,
body.aboutus #future .first a:first-child{
	margin-top:70px;
}
body.home #future .first .text,
body.aboutus #future .first .text{
	width:calc(100% - 80px);
	max-width:460px;
	padding:30px 60px;
	position:absolute;
	left:50%;
	bottom:0;
	z-index:2;
	transform:translateX(-50%);
}
body.home #future .first .text{
	padding:30px 60px 40px;
}
body.home #future .first .text h3,
body.aboutus #future .first .text h2{
	margin:0 0 6px;
	padding:0;
	font-size:20px;
	font-weight:normal;
	text-align:center;
}
body.home #future .second,
body.aboutus #future .second{
	margin-top:8px;
}
body.home #future .second a,
body.aboutus #future .second a{
	display:block;
	float:left;
	width:calc((100% - 120px) / 3);
	text-decoration:none;
}
body.home #future .second a:first-child,
body.aboutus #future .second a:first-child{
	margin-top:100px;
}
body.home #future .second a:nth-of-type(2),
body.aboutus #future .second a:nth-of-type(2){
	margin-top:50px;
}
body.home #future .second a+a,
body.aboutus #future .second a+a{
	margin-left:60px;
}
body.home #future .second .hlink .text,
body.aboutus #future .second .hlink .text{
	background:transparent;
}
body.home #future .second .text h3,
body.aboutus #future .second .text h2{
	margin:1em 0;
	font-size:18px;
	font-weight:normal;
	text-align:left;
}
body.home #future .second .hlink:hover .text,
body.aboutus #future .second .hlink:hover .text{
	background:transparent;
	color:#d96845;
}

body.home #future .text .link,
body.aboutus #future .text .link,
body.access #future .text .link{
	margin-top:24px;
	text-align:right;
	position:relative;
}
body.home #future .text .link{
	margin-top:50px;
}
body.home #future .text .link .arrow,
body.aboutus #future .text .link .arrow,
body.access #future .text .link .arrow{
	display:inline-block;
	padding-left:24px;
	padding-right:32px;
	text-align:left;
}
body.home #future .text .link:before,
body.aboutus #future .text .link:before,
body.access #future .text .link:before{
	display:block;
	content:"";
	width:calc(100% - 146px);
	height:1px;
	background:#ccc;
	position:absolute;
	left:0;
	top:50%;
}
body.home #future .text .link:before{
	width:calc(100% - 70px);
}
body.home #future .more{
	display:block;
	width:250px;
	height:60px;
	margin:60px auto 0;
	line-height:60px;
	text-align:center;
	color:#fff;
	position:absolute;
	left:50%;
	bottom:0;
	z-index:1;
	transform:translate(-50%,50%);
}

/* course */
body.home #course{
	padding:130px 0 0 60px;
	position:relative;
}
body.home #course>img.pc{
	display:block;
	width:100%;
}
body.home #course .title{
	padding-top:90px;
	text-align:center;
	color:#fff;
	position:relative;
}
body.home #course .title:before{
	display:block;
	content:"";
	width:100%;
	height:500px;
	background: #d96845;
	background: -moz-linear-gradient(left, #d96845 1%, #e19345 50%, #bf3675 100%);
	background: -webkit-linear-gradient(left, #d96845 1%,#e19345 50%,#bf3675 100%);
	background: linear-gradient(to right, #d96845 1%,#e19345 50%,#bf3675 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#bf3675',GradientType=1 );
	position:absolute;
	left:0;
	top:0;
	z-index:-2;
}
body.home #course .title:after{
	display:block;
	content:"";
	width:100%;
	height:269px;
	background:url(img/top/courseTitle.png) center center no-repeat;
	background-size:1139px;
	position:absolute;
	left:0;
	top:-20px;
	z-index:-1;
}
body.home #course .title h2{
	margin:0 0 10px;
	font-size:30px;
	font-weight:normal;
}
body.home #course .title p{
	margin:1em 0 3em;
	line-height:2;
}
body.home #course .links{
	margin:0 auto;
	background:#fff;
	box-shadow:0 3px 30px rgba(0,0,0,.16);
}
body.home #course .links li{
	/*width:20%;*/
	width:25%;
}
body.home #course .links li+li{
	border-left:1px #ccc solid;
}
body.home #course .links li a{
	display:block;
	padding:0 20px 50px;
	transition:all .3s ease-in-out;
}
body.home #course .links li a:before,
body.home #course .links li a:after{
	display:none;
}
body.home #course .links li a:hover{
	background:#e56936;
	color:#fff;
	transition:all .3s ease-in-out;
}
body.home #course .links li .image{
	width:100%;
	height:0;
	padding-top:72%;
	background:url(img/course/course1.png) center 80px no-repeat;
	background-size:82px;
}
body.home #course .links li:nth-of-type(2) .image{
	background-image:url(img/course/course2.png);
	background-size:81px;
}
body.home #course .links li:nth-of-type(3) .image{
	background-image:url(img/course/course3.png);
	background-size:81px;
}
body.home #course .links li:nth-of-type(4) .image{
	background-image:url(img/course/course4.png);
	background-size:77px;
}
body.home #course .links li:nth-of-type(5) .image{
	background-image:url(img/course/course5.png);
	background-size:82px;
}
body.home #course .links li a:hover .image{
	background:url(img/course/course1w.png) center 80px no-repeat;
	background-size:82px;
}
body.home #course .links li:nth-of-type(2) a:hover .image{
	background-image:url(img/course/course2w.png);
	background-size:81px;
}
body.home #course .links li:nth-of-type(3) a:hover .image{
	background-image:url(img/course/course3w.png);
	background-size:81px;
}
body.home #course .links li:nth-of-type(4) a:hover .image{
	background-image:url(img/course/course4w.png);
	background-size:77px;
}
body.home #course .links li:nth-of-type(5) a:hover .image{
	background-image:url(img/course/course5w.png);
	background-size:82px;
}
body.home #course .links li h3{
	margin:0 0 10px;
	padding:0;
	text-align:center;
	font-size:18px;
	font-weight:normal;
}
body.home #course .links li p{
	line-height:2;
}

body.home #course .link{
	margin-top:54px;
	text-align:right;
	position:relative;
}
body.home #course .link .arrow{
	display:inline-block;
	padding-left:24px;
	padding-right:32px;
	text-align:left;
}
body.home #course .link:before{
	display:block;
	content:"";
	width:calc(100% - 70px);
	height:1px;
	background:#ccc;
	position:absolute;
	left:0;
	top:50%;
}

/* school */
body.home #school{
	margin:170px 60px 0 0;
	padding-bottom:105px;
	background:#f8f6f5;
}
body.home #school .inner{
	position:relative;
}
body.home #school h2{
	display:inline-block;
	margin:154px 0 0 80px;
	font-size:30px;
	font-weight:normal;
	position:relative;
}
body.home #school h2 img{
	max-width:none;
	position:absolute;
	left:-170px;
	top:-270px;
}
body.home #school .point{
	text-align:right;
	position:absolute;
	right:0;
	top:-20px;
}
body.home #school .point p{
	display:inline-block;
	margin:0;
	padding-left:90px;
	background:#000;
	color:#fff;
	font-size:28px;
	line-height:1.4;
}
body.home #school .point p:nth-of-type(2){
	margin:10px 0 36px;
}
body.home #school ul{
	margin-top:-32px;
}
body.home #school ul li{
	width:calc((100% - 120px) / 3);
	box-shadow:0 3px 30px rgba(0,0,0,.16);
}
body.home #school ul li+li{
	margin-left:60px;
}
body.home #school ul li:first-child{
	margin-top:100px;
}
body.home #school ul li:nth-of-type(2){
	margin-top:50px;
}
body.home #school ul li .image img{
	vertical-align:top;
}
body.home #school ul li .text{
	padding:40px;
}
body.home #school ul li .text h3{
	margin:0 0 6px;
	padding:0;
	font-size:18px;
	font-weight:normal;
}
body.home #school .text .link{
	margin-top:24px;
	text-align:right;
	position:relative;
}
body.home #school .text .link .arrow{
	display:inline-block;
	padding-left:24px;
	padding-right:32px;
	text-align:left;
}
body.home #school .text .link:before{
	display:block;
	content:"";
	width:calc(100% - 70px);
	height:1px;
	background:#ccc;
	position:absolute;
	left:0;
	top:50%;
}

/* company */
body.home #company{
	width:calc(100% - 120px);
	max-width:1480px;
	margin:100px auto;
}
body.home #company .left{
	width:50%;
}
body.home #company .right{
	max-width:500px;
	margin-right:110px;
}
body.home #company h2{
	margin:210px 0 50px;
	font-size:30px;
	font-weight:normal;
	position:relative;
}
body.home #company h2 img{
	max-width:none;
	position:absolute;
	left:-220px;
	top:-260px;
}
body.home #company h3{
	font-size:32px;
	font-weight:normal;
}
body.home #company ul{
	list-style:none;
	margin:74px 0 0;
	padding:0;
}
body.home #company ul li:first-child{
	border-top:1px #ccc solid;
}
body.home #company ul li a{
	display:block;
	padding:20px 0;
	border-bottom:1px #ccc solid;
	position:relative;
}
body.home #company ul li a ins{
	display:block;
	width:100%;
	height:1px;
	background:#d96845;
	position:absolute;
	left:0;
	top:100%;
	transform:scaleX(0);
	transform-origin:bottom left;
	transition:transform 0.3s ease-in-out;
}
body.home #company ul li a:hover ins{
	transform:scaleX(1);
	transition:transform 0.3s ease-in-out;
}

/* instagram */
body.home #instagram{
	width:calc(100% - 60px);
	margin-left:60px;
	padding:100px 0;
	background: #f7f7f7;
	background: -moz-linear-gradient(top, #f7f7f7 0%, #f7f7f7 64%, #ffffff 64%, #ffffff 100%);
	background: -webkit-linear-gradient(top, #f7f7f7 0%,#f7f7f7 64%,#ffffff 64%,#ffffff 100%);
	background: linear-gradient(to bottom, #f7f7f7 0%,#f7f7f7 64%,#ffffff 64%,#ffffff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#ffffff',GradientType=0 );
}
body.home #instagram .loading{
	display:block;
	width:60px;
	margin:0 auto;
}
body.home #instagram #instagram-box ul li{
	width:20%;
	height:0;
	padding-top:20%;
	position:relative;
	overflow:hidden;
}
body.home #instagram #instagram-box ul li a{
	display:block;
	width:100%;
	height:0;
	padding-top:100%;
	background-size:cover;
	background-position:center center;
	position:absolute;
	left:50%;
	top:50%;
	z-index:0;
	transform:translate(-50%,-50%);
	transition:all .3s ease-in-out;
}
body.home #instagram #instagram-box ul li a:hover{
	transform:translate(-50%,-50%) scale(1.1);
	transition:all .3s ease-in-out;
}
body.home #instagram .link{
	padding-top:24px;
	text-align:right;
}
body.home #instagram .link a img{
	vertical-align:-2px;
	margin-left:36px;
}

/* links */
body.home #links ul{
	background:#fff;
	border-top:1px #ccc solid;
}
body.home #links ul li{
	width:25%;
}
body.home #links ul li a{
	display:block;
	padding:0 20px 50px;
	transition:all .3s ease-in-out;
}
body.home #links ul li a:before,
body.home #links ul li a:after{
	display:none;
}
body.home #links ul li a:hover{
	background:#e56936;
	color:#fff;
	transition:all .3s ease-in-out;
}
body.home #links ul li+li{
	border-left:1px #ccc solid;
}
body.home #links ul li a div{
	max-width:220px;
	margin:0 auto;
}
body.home #links ul li .image{
	width:100%;
	height:174px;
	background:url(img/top/links1.png) center 64px no-repeat;
	background-size:77px;
}
body.home #links ul li:nth-of-type(2) .image{
	background-image:url(img/top/links2.png);
	background-size:99px;
}
body.home #links ul li:nth-of-type(3) .image{
	background-image:url(img/top/links3.png);
	background-size:58px;
}
body.home #links ul li:nth-of-type(4) .image{
	background-image:url(img/top/links4.png);
	background-size:83px;
}
body.home #links ul li a:hover .image{
	background:url(img/top/links1w.png) center 64px no-repeat;
	background-size:77px;
}
body.home #links ul li:nth-of-type(2) a:hover .image{
	background-image:url(img/top/links2w.png);
	background-size:99px;
}
body.home #links ul li:nth-of-type(3) a:hover .image{
	background-image:url(img/top/links3w.png);
	background-size:58px;
}
body.home #links ul li:nth-of-type(4) a:hover .image{
	background-image:url(img/top/links4w.png);
	background-size:83px;
}
body.home #links ul li h3{
	max-width:220px;
	margin:0 auto 10px;
	padding:0;
	text-align:center;
	font-size:18px;
	font-weight:normal;
}
body.home #links ul li p{
	max-width:220px;
	margin:1em auto;
	line-height:2;
}
body.home #links ul li .link{
	margin-top:24px;
	text-align:right;
	position:relative;
}
body.home #links ul li .link .arrow{
	display:inline-block;
	padding-left:24px;
	padding-right:32px;
	text-align:left;
}
body.home #links ul li .link:before{
	display:block;
	content:"";
	width:calc(100% - 70px);
	height:1px;
	background:#ccc;
	position:absolute;
	left:0;
	top:50%;
}


/* aboutus
-----------------------------------------------------------*/
body.aboutus #title{
	height:500px;
}
body.aboutus #title>div{
	width:calc(50% + 124px);
}
body.aboutus #title h1{
	width:684px;
}
body.aboutus #future:before{
	top:-50px;
	left:calc(50% - 340px);
	height:calc(100% - 290px);
}

/* aboutus - rakueco
-----------------------------------------------------------*/
body.rakueco .label{
	width:130px;
	height:40px;
	line-height:40px;
	text-align:center;
	color:#fff;
	background:#000;
}
body.rakueco #eco_drive{
	margin-top:100px;
}
body.rakueco h2{
	margin-top:20px;
	padding-left:0;
	font-size:33px;
}
body.rakueco h2:before{
	display:none;
}
body.rakueco section .left,
body.rakueco section .right{
	width:50%;
}
body.rakueco section .left{
	padding-right:20px;
}
body.rakueco section .right{
	padding-left:20px;
}
body.rakueco #ecodrive{
	position:relative;
}
body.rakueco #ecodrive:before{
	width:calc(50% + 140px);
	top:260px;
	left:calc(50% - 80px);
	height:calc(100% - 340px);
}
body.rakueco #eco_drive .right{
	padding-top:76px;
	text-align:center;
}
body.rakueco #learning{
	margin-top:212px;
}
body.rakueco #learning .left div{
	width:400px;
	height:130px;
	margin:72px auto 0;
	padding-top:64px;
	text-align:center;
	border-radius:10px;
	background:#fff;
	box-shadow:0 3px 30px rgba(0,0,0,.16);
	position:relative;
}
body.rakueco #learning .left div:after{
	display:block;
	content:"";
	width:80px;
	height:80px;
	background:url(img/aboutus/icon1.png) center center no-repeat;
	background-size:contain;
	position:absolute;
	left:50%;
	top:0;
	z-index:2;
	transform:translate(-50%,-50%);
}
body.rakueco #learning .left div+div{
	margin-top:84px;
}
body.rakueco #learning .left div+div:after{
	background-image:url(img/aboutus/icon2.png);
}
body.rakueco #learning .left div+div:before{
	display:block;
	content:"×";
	font-size:18px;
	font-weight:bold;
	position:absolute;
	left:50%;
	top:-77px;
	z-index:2;
	transform:translateX(-50%)
}

/* aboutus - point
-----------------------------------------------------------*/
body.point .label{
	width:130px;
	height:40px;
	line-height:40px;
	text-align:center;
	color:#fff;
	background:#000;
}
body.point #point .description{
	margin-bottom:130px;
}
body.point h2{
	margin:20px 0 80px;
	padding-left:0;
	font-size:33px;
}
body.point h2:before{
	display:none;
}
body.point #point .left,
body.point #point .right{
	width:calc(50% - 100px);
	background:url(img/aboutus/point01.png) right top no-repeat;
	background-size:202px;
}
body.point #point .clearfix>div:nth-of-type(2){background-image:url(img/aboutus/point02.png)}
body.point #point .clearfix>div:nth-of-type(3){background-image:url(img/aboutus/point03.png)}
body.point #point .clearfix>div:nth-of-type(4){background-image:url(img/aboutus/point04.png)}
body.point #point .clearfix>div:nth-of-type(5){background-image:url(img/aboutus/point05.png)}
body.point #point .clearfix>div:nth-of-type(6){background-image:url(img/aboutus/point06.png)}
body.point #point .clearfix>div:nth-of-type(7){background-image:url(img/aboutus/point07.png)}
body.point #point .clearfix>div:nth-of-type(8){background-image:url(img/aboutus/point08.png)}
body.point #point .clearfix>div:nth-of-type(9){background-image:url(img/aboutus/point09.png)}
body.point #point .clearfix>div:nth-of-type(10){background-image:url(img/aboutus/point10.png)}
body.point #point .left{
	clear:both;
}
body.point #point .clearfix>div:nth-of-type(n+3){
	margin-top:120px;
}
body.point #point .right ins{
	display:block;
	margin-top:40px;
	font-size:9px;
	text-decoration:none;
}

/* aboutus - merit
-----------------------------------------------------------*/
body.merit #title{
	margin-bottom:150px;
}
body.merit #merit:before{
	width:calc(50% + 260px);
	height:calc(100% - 400px);
	top:-50px;
	left:calc(50% - 200px);
}
body.merit .label{
	width:130px;
	height:40px;
	line-height:40px;
	text-align:center;
	color:#fff;
	background:#000;
}
body.merit #safety,
body.merit #savings,
body.merit #friendly{
	position:relative;
	z-index:2;
}
body.merit #savings,
body.merit #friendly{
	margin-top:100px;
}
body.merit #safety:before,
body.merit #savings:before,
body.merit #friendly:before{
	display:block;
	content:"";
	width:calc(50% + 600px);
	height:calc(100% - 140px);
	background:#f8f6f5 url(img/aboutus/merit01.png) left bottom no-repeat;
	background-size:324px;
	position:absolute;
	left:0;
	bottom:0;
	z-index:-1;
}
body.merit #savings:before{
	height:calc(100% - 190px);
	background-image:url(img/aboutus/merit02.png);
	background-size:354px;
	background-position:right bottom;
	left:auto;
	right:0;
}
body.merit #friendly:before{
	background-image:url(img/aboutus/merit03.png);
	background-size:356px;
}
body.merit h2{
	margin-top:20px;
	padding-left:0;
	font-size:33px;
}
body.merit h2:before{
	display:none;
}
body.merit #safety .left,
body.merit #savings .right,
body.merit #friendly .left{
	width:calc(50% - 40px);
}
body.merit #safety .left>div,
body.merit #savings .right>div,
body.merit #friendly .left>div{
	width:calc(100% - 40px);
	max-width:500px;
	margin:50px auto 0;
	padding-bottom:146px;
}
body.merit #savings .right>div{
	margin-top:100px;
}
body.merit #safety .left>div ins,
body.merit #savings .right>div ins,
body.merit #friendly .left>div ins{
	display:block;
	margin-top:54px;
	text-decoration:none;
	font-size:13px;
}
body.merit #friendly .left>div ins{
	margin-top:1em;
}
body.merit #safety .right,
body.merit #savings .left,
body.merit #friendly .right{
	width:calc(50% + 40px);
}
body.merit #safety .right img,
body.merit #savings .left img,
body.merit #friendly .right img{
	width:100%;
}

/* aboutus - instructor
-----------------------------------------------------------*/
/* list */
body.instructor #list:before{
	width:calc(50% + 260px);
	height:calc(100% - 60px);
	top:-30px;
	left:calc(50% - 200px);
}
body.instructor #list .inner>div{
	margin-top:80px;
}

body.instructor #list .inner .left{
	width:700px;
}

body.instructor #list .inner .right{
	width:390px;
}

/* instructor */
body.instructor #instructor{
	margin:140px auto 0;
}
body.instructor #instructor .label{
	width:130px;
	height:40px;
	line-height:40px;
	text-align:center;
	color:#fff;
	background:#000;
}
body.instructor #instructor h2{
	margin-top:20px;
	padding-left:0;
}
body.instructor #instructor h2:before{
	display:none;
}
body.instructor #instructor .left,
body.instructor #instructor .right{
	width:50%;
}
body.instructor #instructor .left{
	padding-right:40px;
}
body.instructor #instructor .right{
	padding-left:40px;
	border-left:1px #ddd solid;
}
body.instructor #instructor h3{
	margin:0 0 1em;
	font-size:15px;
	font-weight:normal;
	color:#d96845;
}
body.instructor #instructor .left img,
body.instructor #instructor .right img{
	display:block;
	width:190px;
	margin:0 auto;
}
body.instructor #instructor .left .name,
body.instructor #instructor .right .name{
	display:block;
	width:190px;
	margin:20px auto 0;
}
body.instructor #instructor .staff{
	margin-top:40px;
	padding-top:40px;
	border-top:1px #ddd solid;
}
body.instructor #instructor .staff li{
	width:calc((100% - 222px) / 4);
	text-align:center;
}
body.instructor #instructor .staff li+li{
	margin-left:74px;
}
body.instructor #instructor .staff li img{
	display:block;
	width:190px;
	margin:0 auto 1em;
}

/* aboutus - csr
-----------------------------------------------------------*/
body.csr #csr:before{
	width:calc(50% + 260px);
	height:calc(100% - 370px);
	top:-30px;
	left:calc(50% - 200px);
}
body.csr .description h2,
body.csr #initiatives h2{
	padding-left:0;
	font-size:33px;
}
body.csr .description h2:before,
body.csr #initiatives h2:before{
	display:none;
}
body.csr #initiatives{
	margin-top:100px;
}
body.csr #initiatives .left{
	width:calc(100% -720px);
	padding-top:64px;
}
body.csr #initiatives .left img{
	width:360px;
}
body.csr #initiatives .right{
	width:720px;
}
body.csr #initiatives .right h2{
	margin-bottom:0;
}
body.csr #initiatives .right div+div{
	margin-top:64px;
}

body.csr #main{
	margin-top:100px;
}
body.csr #main h2{
	margin-bottom:60px;
}
body.csr #main li{
	width:calc((100% - 120px) / 3);
	margin:0 40px 40px 0;
}
body.csr #main li a{
	border:1px #ddd solid;
}
body.csr #main .link{
	margin-top:140px;
	text-align:center;
}
body.csr #main .link .arrow{
	display:inline-block;
	padding-right:40px;
}

/* aboutus - csr
-----------------------------------------------------------*/
body.prize.parent_aboutus #title{
	margin-bottom:180px;
}
body.prize.parent_aboutus #prize:before{
	width:calc(50% + 260px);
	height:calc(100% - 100px);
	top:-80px;
	left:calc(50% - 200px);
}
body.prize.parent_aboutus #main{
	padding:88px 100px 64px;
	box-shadow:0 3px 30px rgba(0,0,0,.16);
	background:#fff;
}
body.prize.parent_aboutus #main table th,
body.prize.parent_aboutus #main table td{
	padding:32px 0;
	border:none;
	border-top:1px #ddd solid;
}
body.prize.parent_aboutus #main table tr:nth-of-type(1) th,
body.prize.parent_aboutus #main table tr:nth-of-type(1) td{
	border-top:0;
}
body.prize.parent_aboutus #main table th{
	width:240px;
	font-weight:normal;
	text-align:left;
	vertical-align:top;
	background:transparent;
}
body.prize.parent_aboutus #main .link{
	margin-top:140px;
	text-align:center;
}
body.prize.parent_aboutus #main .link .arrow{
	display:inline-block;
	padding-right:40px;
}


/* course - common
-----------------------------------------------------------*/
body.courseFormat #title h1:before{
	background-image:url(img/common/courseTitle.png);
	width:386px;
	height:311px;
	left:-180px;
	top:-242px;
}
/* courseNav */
#courseNav:before{
	top:-50px;
	left:calc(50% - 200px);
	width:calc(50% + 260px);
	height:1600px;
}
#courseNav li{
	width:25%;
}
#courseNav li a{
	display:block;
	padding:30px 0;
	text-align:center;
	color:#d96845;
	background:#fff;
	border:1px #d96845 solid;
	text-decoration:none;
}
#courseNav li+li a,
#courseNav li+li div{
	border-left:0;
}
#courseNav li.current a{
	background:#d96845;
	color:#fff;
}
#courseNav li a:hover{
	background:#d96845;
	color:#fff;
}
#courseNav li .image{
	display:block;
	width:100%;
	height:56px;
	background:url(img/course/course1.png) center center no-repeat;
	background-size:82px;
}
#courseNav li a:hover .image,
#courseNav li.current a .image{
	background-image:url(img/course/course1w.png);
}
#courseNav li:nth-of-type(2) .image{
	background-image:url(img/course/course2.png);
	background-size:81px;
}
#courseNav li:nth-of-type(2) a:hover .image,
#courseNav li.current:nth-of-type(2) a .image{
	background-image:url(img/course/course2w.png);
}
#courseNav li:nth-of-type(3) .image{
	background-image:url(img/course/course3.png);
}
#courseNav li:nth-of-type(3) a:hover .image,
#courseNav li.current:nth-of-type(3) a .image{
	background-image:url(img/course/course3w.png);
}
#courseNav li:nth-of-type(4) .image{
	background-image:url(img/course/course4.png);
}
#courseNav li:nth-of-type(4) a:hover .image,
#courseNav li.current:nth-of-type(4) a .image{
	background-image:url(img/course/course4w.png);
}
#courseNav li a h3{
	margin:1em 0 0;
	font-size:15px;
	font-weight:normal;
}

/* description */
body.courseFormat #description{
	margin-top:70px;
}
body.courseFormat #description h1{
	margin:0;
	padding:0;
	font-size:40px;
	font-weight:normal;
}
body.courseFormat #description h1:before{
	display:none;
}

/* courseArticle */
body.courseFormat .courseArticle{
	margin-top:30px;
}
body.courseFormat .courseArticle .inner{
	padding:0 40px;
	border-radius:10px;
	box-shadow:0 3px 30px rgba(0,0,0,.16);
	background:#fff;
}

/* courseArticle - title */
body.courseFormat .courseArticle .title{
	padding:40px 0;
	position:relative;
	cursor:pointer;
}
body.courseFormat .courseArticle .title:before{
	display:block;
	content:"＋";
	width:50px;
	height:50px;
	line-height:50px;
	text-align:center;
	font-size:21px;
	color:#fff;
	border-radius:100%;
	background: #d96845;
	background: -moz-linear-gradient(left, #d96845 0%, #e19345 100%);
	background: -webkit-linear-gradient(left, #d96845 0%,#e19345 100%);
	background: linear-gradient(to right, #d96845 0%,#e19345 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#e19345',GradientType=1 );
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
}
body.courseFormat .courseArticle .title.show:before{
	content:"－";
}
body.courseFormat .courseArticle .title .left{
	width:300px;
}
body.courseFormat .courseArticle .title .left img{
	display:block;
	width:100%;
}
body.courseFormat .courseArticle .title .right{
	width:calc(100% - 340px);
	padding-right:32px;
}
body.courseFormat .courseArticle .title .right h3{
	margin:0;
	line-height:1.5;
	font-size:30px;
	font-weight:normal;
}
body.courseFormat .courseArticle .title .right h3.popular:after{
	display:inline-block;
	content:"人気";
	margin-left:80px;
	padding:5px 21px;
	border:1px #d96845 solid;
	color:#d96845;
	font-size:13px;
	vertical-align:6px;
}
body.courseFormat .courseArticle .title .right .school span{
	display:inline-block;
	padding:8px 15px;
	line-height:1;
	text-align:center;
	border:1px #ddd solid;
	font-size:13px;
}

/* courseArticle - article */
body.courseFormat .courseArticle .article{
	border-top:1px #ddd solid;
	padding-top:64px;
	display:none;
}
body.courseFormat .courseArticle .article table th,
body.courseFormat .courseArticle .article table td{
	width:calc(100% / 3);
	padding:22px;
	border:2px #ddd solid;
	text-align:center;
}
body.courseFormat .courseArticle .article table.scheduleTable th,
body.courseFormat .courseArticle .article table.scheduleTable td{
	width:10%;
}
body.courseFormat .courseArticle .article table th{
	background:#f7f7f7;
	font-weight:normal;
	vertical-align:middle;
}

body.courseFormat .courseArticle .article dl{
	display:block;
	float:left;
	display:block;
	width:50%;
	margin-top:40px;
}
body.courseFormat .courseArticle .article dl dt{
	display:block;
	padding:22px;
	border:2px #ddd solid;
	text-align:center;
	background:#f7f7f7;
}
body.courseFormat .courseArticle .article dl dd{
	display:block;
	margin:0;
	padding:22px 70px;
	border:2px #ddd solid;
	border-top:0;
	text-align:left;
}
body.courseFormat .courseArticle .article dl dd span{
	display:block;
	font-size: 12px;
}
body.courseFormat .courseArticle .article dl+dl dt,
body.courseFormat .courseArticle .article dl+dl dd{
	border-left:0;
}
body.courseFormat .courseArticle .article dl+dl dd{
	padding:22px 40px;
}
/* courseArticle - article - point */
body.courseFormat .courseArticle .article .point ul:not(.notice) li{
	padding-bottom:64px;
	background:#f8f6f5;
	position:relative;
}
body.courseFormat .courseArticle .article .point ul:not(.notice) li+li{
	border-left:2px #fff solid;
}
body.courseFormat .courseArticle .article .point .col2 li{
	width:50%;
}
body.courseFormat .courseArticle .article .point .col2 li:nth-of-type(n+3){
	border-top:2px #fff solid;
}
body.courseFormat .courseArticle .article .point .col3 li{
	width:calc(100% / 3);
}
body.courseFormat .courseArticle .article .point .col4 li{
	width:25%;
}
body.courseFormat .courseArticle .article .point .col5 li{
	width:calc(100% / 5);
}
body.courseFormat .courseArticle .article .point ul:not(.notice) li ins{
	display:block;
	padding:0 14px;
	text-align:center;
	background:#000;
	color:#fff;
	border-radius:15px;
	text-decoration:none;
	position:absolute;
	left:50%;
	top:0;
	z-index:2;
	transform:translate(-50%,-50%);
}
body.courseFormat .courseArticle .article .point h3{
	margin:0 0 50px;
	font-size:24px;
	font-weight:normal;
	text-align:center;
}
body.courseFormat .courseArticle .article .point ul:not(.notice) li h4{
	margin:42px 20px 26px;
	font-size:18px;
	font-weight:normal;
	text-align:center;
}
body.courseFormat .courseArticle .article .point ul:not(.notice) li p{
	margin:1em 1.3em;
}
body.courseFormat .courseArticle .article div.notice{
	margin:1em 0 0;
	text-align:right;
	font-size:13px;
}
body.courseFormat .courseArticle .article h5{
	margin:1em 0 .5em;
	font-size:15px;
	font-weight:normal;
}
body.courseFormat .courseArticle .article ul.notice{
	margin:0 0 60px;
	padding:0;
	list-style:none;
}
body.courseFormat .courseArticle .article ul.notice li{
	padding-left:1em;
	text-indent:-1em;
}
body.courseFormat .courseArticle .article ul.notice li:before{
	display:inline;
	content:"・";
}
/* courseArticle - article - price */
body.courseFormat .courseArticle .article .price{
	margin-top:50px;
}
/* courseArticle - article - voice */
body.courseFormat .courseArticle .article .voice{
	margin-top:50px;
}
body.courseFormat .courseArticle .article .voice ul{
	margin:0;
	padding:0 0 80px;
	list-style:none;
}
body.courseFormat .courseArticle .article .voice ul li+li{
	margin-top:30px;
}
body.courseFormat .courseArticle .article .voice .left{
	width:80px;
	text-align:center;
}
body.courseFormat .courseArticle .article .voice .left img{
	display:block;
	width:80px;
}
body.courseFormat .courseArticle .article .voice .right{
	width:calc(100% - 142px);
	min-height:180px;
	padding:40px;
	background:#f8f6f5;
	border-radius:10px;
	position:relative;
}
body.courseFormat .courseArticle .article .voice .right:before{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:10px transparent solid;
	border-bottom:10px transparent solid;
	border-left:30px transparent solid;
	border-right:30px #f8f6f5 solid;
	position:absolute;
	left:-60px;
	top:40px;
	z-index:-1;
}
body.courseFormat .courseArticle .article .voice .right .tag{
	margin-bottom:1em;
}
body.courseFormat .courseArticle .article .voice .right .tag span{
	display:inline-block;
	padding:1px 12px;
	background:#fff;
	border:1px #ddd solid;
	font-size:13px;
}
body.courseFormat .courseArticle .article .voice .right .tag span+span{
	margin-left:6px;
}
/* course_cv */
.course_cv{
	margin:0 -40px;
	padding:50px 40px;
	border-radius:0 0 10px 10px;
	text-align:center;
	color:#fff;
	z-index:2;
}
.course_cv.grad:hover:before{
	opacity:1;
}
.course_cv h3{
	font-size:18px;
	font-weight:normal;
}
.course_cv p{
	font-size:13px;
}
.course_cv ul{
	width:100%;
	max-width:790px;
	margin:28px auto;
}
.course_cv ul li{
	width:calc((100% - 40px) / 3);
	display: inline-block;
	float: none;
}
body.contact .course_cv ul li{
	width:calc((100% - 40px) / 2);
	float: left;
}
.course_cv ul li+li{
	margin-left:20px;
}
body.contact .course_cv ul li+li{
	margin-left:40px;
}
.course_cv ul li a{
	display:block;
	width:100%;
	height:60px;
	line-height:60px;
	border:1px #fff solid;
	color:#fff;
	text-decoration:none;
}
.course_cv ul li a img{
	display:inline-block;
	margin-right:6px;
	vertical-align:middle;
}
.course_cv .tel{
	display:block;
}
.course_cv .tel ins{
	display:inline-block;
	text-decoration:none;
}
.course_cv .tel ins+ins:before{
	display:inline-block;
	content:"/";
	margin:0 4px;
}

/* course_ordinary_car
-----------------------------------------------------------*/
body.course_ordinary_car #title{
	background-image:url(img/course/ordinary_carTitle.jpg);
	height:500px;
}
body.course_ordinary_car #title h1:before{
	width:577px;
	height:466px;
	left:-190px;
	top:-406px;
}
body.course_ordinary_car #myplanCourse .point h4,
body.course_ordinary_car #happyholidayCourse .point h4{
	font-size:14px;
}

/* course_medium_car
-----------------------------------------------------------*/
body.course_medium_car #title{
	background-image:url(img/course/medium_carTitle.png);
	height:500px;
}
body.course_medium_car #title h1:before{
	width:577px;
	height:466px;
	left:-190px;
	top:-406px;
}
body.courseFormat.course_medium_car .courseArticle .article table.scheduleTable th:nth-of-type(5),
body.courseFormat.course_medium_car .courseArticle .article table.scheduleTable td:nth-of-type(5){
	white-space:nowrap;
}

/* course_at_free
-----------------------------------------------------------*/
body.course_at_free #title{
	background-image:url(img/course/at_freeTitle.jpg);
}
body.course_at_free #at_free:before{
	top:-32px;
	height:calc(100% + 232px);
}
body.course_at_free #handling{
	margin:48px 0 12px;
}
body.course_at_free #handling span,
body.course_at_free #coniditions .overview span{
	display:inline-block;
	padding:8px 15px;
	line-height:1;
	text-align:center;
	border:1px #ddd solid;
	font-size:13px;
	background:#fff;
}
body.course_at_free #handling span+span,
body.course_at_free #coniditions .overview span+span{
	margin-left:10px;
}
body.course_at_free dl{
	margin:0;
}
body.course_at_free dt{
	float:left;
	width:108px;
	margin:36px 0 0;
	clear:both;
}
body.course_at_free dd{
	float:right;
	width:calc(100% - 108px);
	margin:36px 0 0;
}
/* at_free_cv */
body.courseFormat #at_free_cv{
	margin:130px 0 0;
	padding:60px 0;
	border-radius:10px;
	text-align:center;
	color:#fff;
}
body.courseFormat #at_free_cv.grad:hover:before{
	opacity:1;
}
body.courseFormat #at_free_cv .inner{
	max-width:780px;
}
body.courseFormat #at_free_cv h3{
	font-size:18px;
	font-weight:normal;
}
body.courseFormat #at_free_cv p{
	font-size:13px;
}
body.courseFormat #at_free_cv ul{
	width:100%;
	max-width:790px;
	margin:28px auto;
	text-align:center;
}
body.courseFormat #at_free_cv ul li{
	float:none;
	display:inline-block;
	width:calc((100% - 40px) / 2);
}
body.courseFormat #at_free_cv ul li+li{
	margin-left:20px;
}
body.courseFormat #at_free_cv ul li a{
	display:block;
	padding:20px 0;
	border:1px #fff solid;
	text-decoration:none;
}
body.courseFormat #at_free_cv hr{
	border:0;
	border-top:1px #fff solid;
	margin:40px 0 30px;
}
body.courseFormat #at_free_cv a{
	display:block;
	padding:20px 0;
	color:#fff;
	border:1px #fff solid;
	text-decoration:none;
}
body.courseFormat #at_free_cv a img{
	margin-right:6px;
	vertical-align:-2px;
}

/* course_benefit
-----------------------------------------------------------*/
body.course_benefit #title{
	background-image:url(img/course/medium_carTitle.png);
}
body.course_benefit section+section .inner{
	margin-top:80px;
	padding-top:80px;
	border-top:1px #ddd solid;
}
/* handling */
body.course_benefit #handling:before{
	top:-32px;
	height:2000px;
}
body.course_benefit #handling .inner{
	margin-top:130px;
	padding:0;
	border:0;
}
body.course_benefit #handling span{
	display:inline-block;
	padding:8px 15px;
	line-height:1;
	text-align:center;
	border:1px #ddd solid;
	font-size:13px;
	background:#fff;
}
body.course_benefit #handling span+span{
	margin-left:4px;
}
/* about */
body.course_benefit #about .inner{
	padding-top:0;
	border:0;
}
body.course_benefit #about .left{
	width:690px;
}
body.course_benefit #about .right{
	width:390px;
}
/* target, payment */
body.course_benefit #target h3,
body.course_benefit #payment h3{
	margin:1em 0 0;
	font-size:20px;
	font-weight:normal;
}
body.course_benefit #target h3 ins,
body.course_benefit #payment h3 ins{
	display:inline-block;
	width:20px;
	height:20px;
	margin-right:3px;
	border-radius:100%;
	font-size:18px;
	line-height:20px;
	text-align:center;
	color:#fff;
	background:#000;
	text-decoration:none;
}
body.course_benefit #target p,
body.course_benefit #payment p{
	margin:0;
	padding-left:1em;
}
body.course_benefit #payment span{
	display:inline-block;
	margin:2em 0 0 -1em;
}
/* flow */
body.course_benefit #flow .box{
	padding:90px 74px;
	background:#fff;
	border-radius:10px;
	box-shadow:0 3px 30px rgba(0,0,0,.16);
}
body.course_benefit #flow .clearfix{
	position:relative;
}
body.course_benefit #flow .clearfix+.clearfix{
	margin-top:80px;
}
body.course_benefit #flow .clearfix+.clearfix:before{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:22px #f9e9da solid;
	border-left:15px transparent solid;
	border-right:15px transparent solid;
	position:absolute;
	left:50%;
	top:-48px;
	transform:translateX(-50%);
	z-index:2;
}
body.course_benefit #flow .clearfix .left{
	width:800px;
}
body.course_benefit #flow .clearfix .left h3{
	margin:0 0 .5em;
	font-size:20px;
	font-weight:normal;
}
body.course_benefit #flow .clearfix .left h3 ins{
	display:inline-block;
	width:20px;
	height:20px;
	margin-right:3px;
	border-radius:100%;
	font-size:18px;
	line-height:20px;
	text-align:center;
	color:#fff;
	background:#d96845;
	text-decoration:none;
}
body.course_benefit #flow .clearfix .left small{
	display:block;
	font-size:13px;
}
body.course_benefit #flow .clearfix .right{
	width:214px;
}
/* list */
body.course_benefit .list .tag{
	margin:20px 0;
}
body.course_benefit .list .tag span+span{
	margin-left:40px;
}
body.course_benefit .list .tag ins{
	display:inline-block;
	margin-right:20px;
	padding:8px 15px;
	line-height:1;
	text-align:center;
	border:1px #ddd solid;
	font-size:13px;
	text-decoration:none;
}
body.course_benefit .list .article{
	margin-bottom:42px;
}
body.course_benefit .list table{
	float:left;
}
body.course_benefit .list table th,
body.course_benefit .list table td{
	width:calc(100% / 6);
	padding:22px 10px;
	font-weight:normal;
	border:1px #ddd solid;
	text-align:center;
}
body.course_benefit .list table th{
	background:#f7f7f7;
}
body.course_benefit .list table td.twoline{
	padding:10px;
	line-height:1.5;
}
body.course_benefit .list table th.pc,
body.course_benefit .list table td.pc{
	display:table-cell;
}
body.course_benefit .list .notice{
	font-size:13px;
}
body.course_benefit .list .notice p{
	margin:1em 0;
	font-size:15px;
}
/* contact */
body.course_benefit #contact a{
	display:block;
	width:250px;
	height:60px;
	margin:140px auto 0;
	line-height:60px;
	text-align:center;
	color:#fff;
	text-decoration:none;
}
body.course_benefit #contact a img{
	margin-right:6px;
	vertical-align:-4px;
}

/* course_corporateservices
-----------------------------------------------------------*/
body.course_corporateservices #title{
	background-image:url(img/course/corporateservicesTitle.jpg);
	height:500px;
}
body.course_corporateservices #title h1:before{
	width:577px;
	height:466px;
	left:-190px;
	top:-406px;
}
body.course_corporateservices #description .left{
	width:calc(50% - 20px);
}
body.course_corporateservices #description .left img{
	display:block;
	margin:50px auto 0;
}
body.course_corporateservices #description .right{
	width:calc(50% + 20px);
}
body.course_corporateservices #description .right ul{
	margin:0;
	padding:0;
	list-style:none;
}
body.course_corporateservices #description .right ul li{
	margin:0;
	padding-left:18px;
	position:relative;
}
body.course_corporateservices #description .right ul li:before{
	display:block;
	content:"";
	width:10px;
	height:10px;
	border:1px #666 solid;
	position:absolute;
	left:0;
	top:9px;
}
body.course_corporateservices #description .right ul li:after{
	display:block;
	content:"";
	width:4px;
	height:12px;
	border-right:2px #d96845 solid;
	border-bottom:2px #d96845 solid;
	position:absolute;
	left:5px;
	top:4px;
	transform:rotate(30deg);
}
/* plan */
body.course_corporateservices #plan .inner{
	margin-top:54px;
	padding-top:74px;
	border-top:1px #ddd solid;
}
body.course_corporateservices #plan .label{
	width:170px;
	height:40px;
	line-height:40px;
	text-align:center;
	background:#000;
	color:#fff;
}
body.course_corporateservices #plan .plan .left,
body.course_corporateservices #plan .plan .right{
	width:calc(50% - 20px);
}
body.course_corporateservices #plan .plan h3{
	margin:16px 0 24px;
	font-size:33px;
	font-weight:normal;
}
body.course_corporateservices #plan .box{
	margin-top:100px;
	padding:40px;
	border-radius:10px;
	box-shadow:0 3px 30px rgba(0,0,0,.16);
	background:#fff;
}
body.course_corporateservices #plan .box h2{
	margin-bottom:40px;
}
body.course_corporateservices #plan .box .left{
	width:400px;
}
body.course_corporateservices #plan .box .left+.left{
	margin-left:76px;
}
body.course_corporateservices #plan .box .left h3{
	margin:0;
	font-size:33px;
	font-weight:normal;
}
body.course_corporateservices #plan .box .left ins{
	display:inline-block;
	padding:1px 14px;
	border:1px #ddd solid;
	font-size:13px;
	background:#fff;
	text-decoration:none;
}
body.course_corporateservices #plan .box .left ins+ins{
	margin-left:10px;
}
body.course_corporateservices #plan .box table{
	margin-top:40px;
}
body.course_corporateservices #plan .box table th,
body.course_corporateservices #plan .box table td{
	width:calc(100% / 3);
	padding:22px 10px;
	font-weight:normal;
	border:1px #ddd solid;
	text-align:center;
}
body.course_corporateservices #plan .box table th{
	background:#f7f7f7;
}
body.course_corporateservices #plan .box .notice{
	margin:16px 0 32px;
	text-align:right;
}
body.course_corporateservices #plan .box table.flowTable{
	width:960px;
	margin:0 auto 62px;
	position:relative;
}
body.course_corporateservices #plan .box table.flowTable+.flowTable:before{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:22px #f9e9da solid;
	border-left:15px transparent solid;
	border-right:15px transparent solid;
	position:absolute;
	left:calc(50% - 15px);
	top:-40px;
	z-index:2;
}
body.course_corporateservices #plan .box table.flowTable th{
	width:230px;
	border:0;
	text-align:left;
}
body.course_corporateservices #plan .box table.flowTable td{
	width:calc(100% - 230px);
	border:0;
	background:#f7f7f7;
	text-align:left;
}
/* contact */
body.course_corporateservices #contact .course_cv{
	width:100%;
	margin:140px auto 0;
	border-radius:10px;
}
body.course_corporateservices #contact .course_cv a{
	display: block;
	max-width: 780px;
	height: 60px;
	margin:0 auto;
	line-height: 60px;
	border: 1px #fff solid;
	color: #fff;
	text-decoration: none;
}
body.course_corporateservices #contact .course_cv a img{
	margin-right:6px;
	vertical-align:-4px;
}

/* course_motorcycle
-----------------------------------------------------------*/
body.course_motorcycle #title{
	background-image:url(img/course/motorcycleTitle.jpg);
	height:500px;
}
body.course_medium_car #title h1:before{
	width:577px;
	height:466px;
	left:-190px;
	top:-406px;
}
body.courseFormat.course_motorcycle .courseArticle .article table.scheduleTable th:nth-of-type(5),
body.courseFormat.course_motorcycle .courseArticle .article table.scheduleTable td:nth-of-type(5){
	white-space:nowrap;
}
body.courseFormat .courseArticle .article .reserveBox{
	margin-bottom:50px;
}
body.courseFormat .courseArticle .article table.reserveTable th,
body.courseFormat .courseArticle .article table.reserveTable td{
	width:110px;
	padding:20px 0;
}
body.courseFormat .courseArticle .article table.reserveTable td.on{
	background:#e19345;
}
body.courseFormat .courseArticle .article table.reserveTable th+th,
body.courseFormat .courseArticle .article table.reserveTable td+td{
	width:84px;
}

/* coursemotorcycle_at_free
-----------------------------------------------------------*/
body.parent_course_motorcycle.at_free #title{
	background-image:url(img/course/motorcycleTitle.jpg);
}
body.parent_course_motorcycle.at_free #coniditions h2{
	margin-top:2.5em;
}
body.parent_course_motorcycle.at_free #coniditions a{
	color:#d96845;
}

/* course_stepup
-----------------------------------------------------------*/
body.course_stepup #title{
	background-image:url(img/course/stepupTitle.jpg);
	height:500px;
}
body.course_stepup #title h1:before{
	width:577px;
	height:466px;
	left:-190px;
	top:-406px;
}
body.courseFormat.course_stepup .courseArticle .article table.scheduleTable th{
	width:30%;
}
body.courseFormat.course_stepup .courseArticle .article table.scheduleTable td{
	width:70%;
	text-align: left;
	padding: 5px;
}
body.courseFormat.course_stepup .courseArticle .article table.priceTable th,
body.courseFormat.course_stepup .courseArticle .article table.priceTable td{
	width:20%;
}
body.courseFormat.course_stepup .course_cv h3,
body.courseFormat.course_stepup .course_cv h3+p{
	display:none;
}
body.courseFormat.course_stepup .course_cv ul{
	max-width:520px;
}
/*
body.courseFormat.course_stepup .course_cv ul li:nth-of-type(2){
	display:none;
}
*/
body.courseFormat.course_stepup .course_cv ul li{
	width:calc(50% - 10px);
}

/* step
-----------------------------------------------------------*/
body.step #title{
	background-image:url(img/step/stepTitle.jpg);
	height:500px;
}
body.step #title h1:before{
	background-image:url(img/common/stepTitle.png);
	width:336px;
	height:269px;
	left:-158px;
	top:-186px;
}
body.step .stepArticle{
	margin-top:30px;
}
body.step .stepArticle .inner{
	padding:0 40px;
	border-radius:10px;
	box-shadow:0 3px 30px rgb(0 0 0 / 16%);
	background:#fff;
}
body.step .stepArticle div:not(.course_cv) a,
body.step .stepArticle div:not(.course_cv) a:hover{
	text-decoration:underline;
}
/* title */
body.step .stepArticle .title{
	padding:40px 0;
	position:relative;
	cursor:pointer;
}
body.step .stepArticle .title:before{
	display:block;
	content:"＋";
	width:50px;
	height:50px;
	line-height:50px;
	text-align:center;
	font-size:21px;
	color:#fff;
	border-radius:100%;
	background:#d96845;
	background:-moz-linear-gradient(left, #d96845 0%, #e19345 100%);
	background:-webkit-linear-gradient(left, #d96845 0%,#e19345 100%);
	background:linear-gradient(to right, #d96845 0%,#e19345 100%);
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#e19345',GradientType=1 );
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
}
body.step .stepArticle .title.show:before{
	content:"－";
}
body.step .stepArticle .title .left{
	width:300px;
}
body.step .stepArticle .title .right{
	width:calc(100% - 340px);
	padding-right:32px;
}
body.step .stepArticle .title .right img{
	display:block;
}
body.step .stepArticle .title .right h3{
	margin:58px 0 0;
	line-height:1.5;
	font-size:30px;
	font-weight:normal;
}
/* article */
body.step .stepArticle .article{
	border-top:1px #ddd solid;
	padding-top:40px;
	display:none;
}
body.step .stepArticle .article div:not(.time) h2{
	margin-top:50px;
}
body.step .stepArticle .article .place ul{
	list-style:none;
	margin:0;
	padding:0;
}
body.step .stepArticle .article .place ul li{
	margin:0;
	padding:40px 0;
}
body.step .stepArticle .article .place ul li+li{
	border-top:1px #ddd solid;
}
body.step .stepArticle .article .place ul li b{
	display:inline-block;
	width:110px;
	vertical-align:middle;
}
body.step .stepArticle .article .place ul li b span{
	display:block;
	font-size:11px;
}
body.step .stepArticle .article .place ul li .address{
	display:inline-block;
	width:400px;
	vertical-align:middle;
}
body.step .stepArticle .article .place ul li .tel{
	display:inline-block;
	width:260px;
	vertical-align:middle;
}
body.step .stepArticle .article .place ul li a{
	display:inline-block;
	padding:9px 50px 9px 20px;
	border-radius:5px;
	border:1px #ddd solid;
	text-decoration:none;
}
body.step .stepArticle .article .place ul li a:before{
	right:13px;
}
body.step .stepArticle .article .place ul li a:after{
	right:20px;
}
/* dl */
body.step .stepArticle .article dl dt{
	margin-top:50px;
	padding-bottom:10px;
	color:#d96845;
}
body.step .stepArticle .article dl dt:first-child{
	margin-top:32px;
}
body.step .stepArticle .article dl dd{
	margin:0;
	padding-top:10px;
	border-top:1px #ddd solid;
}
body.step .stepArticle .article dl dd img{
	display:block;
	width:560px;
	margin-top:24px;
}
/* flow */
body.step .flowTable{
	width:960px;
	margin:0 auto 62px;
	position:relative;
}
body.step .flowTable+.flowTable:before,
body.step .flowTable th.test div span+span:before{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:22px #f9e9da solid;
	border-left:15px transparent solid;
	border-right:15px transparent solid;
	position:absolute;
	left:calc(50% - 15px);
	top:-40px;
	z-index:2;
}
body.step .flowTable th,
body.step .flowTable td{
	width:230px;
	height:90px;
	background:#f7f7f7;
	border:0;
	font-weight:normal;
	text-align:left;
}
body.step .flowTable th{
	padding-left:40px;
	/*text-align:center;*/
}
body.step .flowTable td{
	width:calc(100% - 230px);
	/*text-align:center;*/
}
body.step .flowTable th.test{
	background:#efefef;
	height:auto;
	padding:40px;
}
body.step .flowTable th.test div{
	margin-top:20px;
	padding:40px;
	background:#fff;
}
body.step .flowTable th.test div span{
	display:block;
	height:90px;
	line-height:90px;
	padding-left:40px;
	background:#f7f7f7;
}
body.step .flowTable th.test div span+span{
	margin-top:58px;
	position:relative;
}
/* link */
body.step .stepArticle .article .link{
	width:960px;
	margin:-50px auto 50px;
	text-align:right;
}
body.step .stepArticle .article .link a{
	display:inline-block;
	padding-right:32px;
	text-decoration:none;
}

/* step - fee
-----------------------------------------------------------*/
body.fee #title{
	background-image:url(img/step/stepTitle.jpg);
}
body.fee #title h1:before{
	background-image:url(img/common/stepTitle.png);
	width:336px;
	height:269px;
	left:-158px;
	top:-186px;
}
body.fee #description:before{
	top:-50px;
	left:calc(50% - 200px);
	width:calc(50% + 260px);
	height:1600px;
}
body.fee main a{
	text-decoration:underline;
}
body.fee section+section{
	margin-top:100px;
}
body.fee #list .left,
body.fee #list .right{
	width:calc(50% - 60px);
	margin-bottom:50px;
}
body.fee #list .right+.left{
	clear:both;
}
body.fee #list .ttl{
	padding-bottom:10px;
	border-bottom:1px #ddd solid;
}
body.fee #list img{
	width:300px;
}
body.fee #credit span{
	display:inline-block;
	vertical-align:middle;
}
body.fee #credit img{
	display:inline-block;
	width:105px;
	margin:0 16px 0 40px;
	vertical-align:middle;
}
body.fee #cv .course_cv{
	border-radius:0;
}

/* step - schedule
-----------------------------------------------------------*/
body.schedule #title{
	background-image:url(img/step/stepTitle.jpg);
}
body.schedule #title h1:before{
	background-image:url(img/common/stepTitle.png);
	width:336px;
	height:269px;
	left:-158px;
	top:-186px;
}
/* items */
body.schedule #items table{
	margin-top:30px;
}
body.schedule #items table th,
body.schedule #items table td{
	padding:22px 40px;
	border:2px #ddd solid;
	background:#fff;
	text-align:left;
}
body.schedule #items table th{
	background:#f7f7f7;
	font-weight:normal;
	vertical-align:top;
}
/* schedule */
body.schedule #schedule{
	margin-top:60px;
}
body.schedule #schedule .session,
body.schedule #schedule .inspection,
body.schedule #schedule .subject{
	display:block;
	width:69px;
	height:69px;
	line-height:68px;
	text-align:center;
	background:#d96845;
	color:#fff;
}
body.schedule #schedule .inspection{
	background:#cad600;
}
body.schedule #schedule .subject{
	background:#e19345;
}
body.schedule #schedule ul .session,
body.schedule #schedule ul .inspection,
body.schedule #schedule ul .subject{
	display:inline-block;
	width:24px;
	height:24px;
	line-height:24px;
}
body.schedule #schedule #scheduleTableDiv ul li+li{
	/*margin-left:25px;*/
	margin-left:20px;
}
body.schedule #schedule .monthSelect{
	height:100px;
	margin-top:30px;
	border:1px #ddd solid;
	border-bottom:0;
	text-align:center;
	position:relative;
}
body.schedule #schedule .monthSelect .month{
	width:160px;
	margin:26px auto;
	position:relative;
}
body.schedule #schedule .monthSelect .month select{
	border:0;
}
body.schedule #schedule .monthSelect .month:before{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:8px #000 solid;
	border-left:8px transparent solid;
	border-right:8px transparent solid;
	position:absolute;
	right:20px;
	top:calc(50% - 4px);
}
body.schedule #schedule .monthSelect .prev,
body.schedule #schedule .monthSelect .next{
	padding:9px 24px 9px 49px;
	border:1px #ddd solid;
	border-radius:5px;
	position:absolute;
	top:20px;
	cursor:pointer;
}
body.schedule #schedule .monthSelect .prev{
	left:20px;
}
body.schedule #schedule .monthSelect .next{
	padding:9px 49px 9px 24px;
	right:20px;
}
body.schedule #schedule .monthSelect .prev:before,
body.schedule #schedule .monthSelect .next:before{
	display:block;
	content:"";
	width:20px;
	height:20px;
	border-radius:100%;
	background: #d96845;
	background: -moz-linear-gradient(left, #d96845 0%, #e19345 100%);
	background: -webkit-linear-gradient(left, #d96845 0%,#e19345 100%);
	background: linear-gradient(to right, #d96845 0%,#e19345 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#e19345',GradientType=1 );
	position:absolute;
	left:13px;
	top:50%;
	transform:translateY(-50%);
}
body.schedule #schedule .monthSelect .next:before{
	left:auto;
	right:13px;
}
body.schedule #schedule .monthSelect .prev:after,
body.schedule #schedule .monthSelect .next:after{
	display:block;
	content:"";
	width:5px;
	height:9px;
	background:url(img/common/arrow.svg) center center no-repeat;
	background-size:contain;
	position:absolute;
	left:20px;
	top:50%;
	transform:translateY(-50%);
}
body.schedule #schedule .monthSelect .prev:after{
	transform:rotate(180deg) translateY(4px);
}
body.schedule #schedule .monthSelect .next:after{
	left:auto;
	right:20px;
}
/* scheduleTable */
body.schedule #schedule #scheduleTableDiv,
body.schedule #schedule #scheduleTableAgeo,
body.schedule #schedule #scheduleTableSashiougi{
	display:none;
}
body.schedule #schedule .scheduleTable{
	width:100%;
	height:auto;
	overflow-x:scroll;
	border-right:1px #ddd solid;
}
body.schedule #schedule .scheduleTable.hide{
	opacity:0;
	position:absolute;
	z-index:-1;
	width:0;
	height:0;
}
body.schedule #schedule table th{
	padding:0;
	border:1px #ddd solid;
}
body.schedule #schedule table th span{
	display:block;
	float:left;
	width:219px;
	height:69px;
	line-height:68px;
	text-align:center;
	font-weight:normal;
	background:#f7f7f7;
}
body.schedule #schedule table tr:first-child th span{
	background:#fff;
}
body.schedule #schedule table td{
	padding:0;
	border:1px #ddd solid;
	vertical-align:middle;
	text-align:center;
	position:relative;
}
body.schedule #schedule table tr:first-child td span{
	display:block;
	float:left;
	width:69px;
	height:69px;
	padding-top:16px;
	line-height:1.4;
	text-align:center;
}
body.schedule #schedule table th.fixcol{
	position:-webkit-sticky;
	position:sticky;
	left:0;
	z-index:1;
}
body.schedule #schedule table th.fixcol:before{
	display:block;
	content:"";
	width:1px;
	height:100%;
	background:#ddd;
	position:absolute;
	left:-1px;
	top:0;
}
body.schedule #schedule table td.sat{
	background:#f2f7fb;
}
body.schedule #schedule table td.sun{
	background:#fcf4f8;
}
body.schedule #schedule table td.close:after{
	display:block;
	content:"休校日";
	width:69px;
	height:699px;
	line-height:699px;
	background:#f1f1f1;
	position:absolute;
	left:0;
	top:calc(100% + 1px);
	z-index:1;
}
body.schedule #schedule table td.sat.close:after{
	background:#f2f7fb;
}
body.schedule #schedule table td.sun.close:after{
	background:#fcf4f8;
}
/* cv */
body.courseFormat.schedule .course_cv{
	margin:100px 0 0;
	border-radius:0;
}

/* access - common
-----------------------------------------------------------*/
body.access section+section{
	padding-top:50px;
}
/* title */
body.access #title>div{
	width:368px;
}
body.access #title h1{
	width:194px;
}
body.access #title h1:before{
	background-image:url(img/common/schoolTitle.png);
	width:439px;
	height:298px;
	left:-178px;
	top:-256px;
}
/* news */
body.access #news:before{
	width:calc(50% + 260px);
	height:1650px;
	left:calc(50% - 200px);
	top:0;
}
body.access #news ul{
	margin:0;
	padding:0;
	list-style:none;
}
body.access #news ul li{
	padding:16px 20px;
	border-bottom:1px #ddd dotted;
	background:#fff;
}
body.access #news ul li:nth-of-type(1){
	border-top:1px #ddd dotted;
}
body.access #news ul li a{
	display:block;
	float:left;
	width:calc(100% - 540px);
}
body.access #news ul li a:hover,
body.access #news ul li a:hover span{
	text-decoration:underline;
	color:#000;
}
body.access #news ul li span{
	display:block;
	float:left;
}
body.access #news ul li .date{
	width:260px;
	position:relative;
}
body.access #news ul li .date:after{
	display:block;
	content:"";
	width:100px;
	height:1px;
	background:#000;
	position:absolute;
	right:30px;
	top:50%;
}
body.access #news ul li .category{
	display:block;
	float:left;
	width:150px;
	height:30px;
	line-height:30px;
	text-align:center;
	border:1px #ccc solid;
}
body.access #news ul li .title{
	margin:0 26px;
}
body.access #news ul li .arrow{
	display:block;
	float:left;
	width:130px;
	padding:0;
}
/* slide */
body.access #slide{
	padding:60px 0;
	position:relative;
	z-index:2;
}
body.access #slide:before{
	display:block;
	content:"";
	width:calc(50% + 600px);
	height:calc(100% - 253px);
	background:#f8f6f5;
	position:absolute;
	bottom:0;
	right:0;
	z-index:-1;
}
body.access #slide .inner{
	max-width:1400px;
}
body.access #slide .left{
	width:calc(50% + 20px);
}
body.access #slide .left .slider.sp{
	display: none;
}
body.access #slide .left .topslider{
	position:relative;
}
body.access #slide .left .topslider .btn1,
body.access #slide .left .topslider .btn2{
	position:absolute;
	display:block;
	transition: opacity 400ms;
}
body.access #slide .left .topslider .btn1:hover,
body.access #slide .left .topslider .btn2:hover{
	opacity:.8;
	transition: opacity 400ms;
}
body.access #slide .left .slick-dots{
	bottom:-50px;
}
body.access #slide .left .slick-dots li{
	width:18px;
	margin:0;
	vertical-align:top;
}
body.access #slide .left .slick-dots li button{
	width:8px;
	height:8px;
	margin:6px auto;
	padding:0;
	background:#ddd;
	border-radius:4px;
}
body.access #slide .left .slick-dots li.slick-active button{
	height:20px;
	margin:0 auto;
	background:#d96845;
}
body.access #slide .left .slick-dots li button:before{
	display:none;
}
body.access #slide .right{
	width:calc(50% - 70px);
	padding-top:105px;
}
body.access #slide .right h3{
	margin:0;
	font-size:40px;
	font-weight:normal;
	line-height:1.5;
}
body.access #slide .right p{
	margin:32px 0 24px 20px;
}
body.access #slide .right a{
	display:inline-block;
	margin:0 0 0 20px;
	padding:15px 72px;
	color:#fff;
	vertical-align:bottom;
}
/* future */
body.access #future .first,
body.access #future .second{
	display:flex;
	flex-wrap:wrap;
}
body.access #future .second{
	padding-top:40px;
}
body.access #future .first a{
	width:calc(50% - 20px);
}
body.access #future .first a+a,
body.access #future .second a+a{
	margin-left:40px;
}
body.access #future .second a{
	width:calc((100% - 80px) / 3);
}
body.access #future .hlink .text{
	padding:10px 0;
	background:transparent;
}
body.access #future .hlink:hover .text{
	color:#e56936;
	background:transparent;
}
/* info */
body.access table.text th,
body.access table.text td{
	padding:22px;
	border:2px #ddd solid;
	background:#fff;
}
body.access table.text th{
	width:300px;
	background:#f7f7f7;
	text-align:left;
	vertical-align:top;
	font-weight:normal;
}
/* course */
body.access #course li{
	width:20%;
	border:1px #ddd solid;
	background:#fff;
}
body.access #course li+li{
	border-left:0;
}
body.access #course li a{
	display:block;
	padding:0 20px 50px;
	transition:all .3s ease-in-out;
}
body.access #course li a:before,
body.access #course li a:after{
	display:none;
}
body.access #course li a:hover{
	background:#e56936;
	color:#fff;
	transition:all .3s ease-in-out;
}
body.access #course li .image{
	width:100%;
	height:0;
	padding-top:85%;
	background:url(img/course/course1.png) center 80px no-repeat;
	background-size:82px;
}
body.access #course li:nth-of-type(2) .image{
	background-image:url(img/course/course2.png);
	background-size:81px;
}
body.access #course li:nth-of-type(3) .image{
	background-image:url(img/course/course3.png);
	background-size:81px;
}
body.access #course li:nth-of-type(4) .image{
	background-image:url(img/course/course4.png);
	background-size:77px;
}
body.access #course li:nth-of-type(5) .image{
	background-image:url(img/course/course5.png);
	background-size:82px;
}
body.access #course li a:hover .image{
	background:url(img/course/course1w.png) center 80px no-repeat;
	background-size:82px;
}
body.access #course li:nth-of-type(2) a:hover .image{
	background-image:url(img/course/course2w.png);
	background-size:81px;
}
body.access #course li:nth-of-type(3) a:hover .image{
	background-image:url(img/course/course3w.png);
	background-size:81px;
}
body.access #course li:nth-of-type(4) a:hover .image{
	background-image:url(img/course/course4w.png);
	background-size:77px;
}
body.access #course li:nth-of-type(5) a:hover .image{
	background-image:url(img/course/course5w.png);
	background-size:82px;
}
body.access #course li h3{
	margin:0 0 10px;
	padding:0;
	text-align:center;
	font-size:18px;
	font-weight:normal;
}
body.access #course li p{
	line-height:2;
}
body.access #course .link{
	text-align:right;
	position:relative;
}
body.access #course .link .arrow{
	display:inline-block;
	padding-left:24px;
	padding-right:32px;
	text-align:left;
}
body.access #course .link:before{
	display:block;
	content:"";
	width:calc(100% - 146px);
	height:1px;
	background:#ccc;
	position:absolute;
	left:0;
	top:50%;
}
/* contact */
body.access #contact a{
	display:inline-block;
	padding-right: 30px;
}
/* access */
body.access #access .gmap{
	width:100%;
	height:0;
	padding-top:50%;
	position:relative;
}
body.access #access .gmap iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
body.access #access .link{
	text-align:right;
}
body.access #access .link a{
	display:inline-block;
	padding:5px 24px 0 0;
	background:url(img/common/tb.svg) right center no-repeat;
	background-size:21px;
}
body.access #access table{
	margin-top:50px;
}
body.access #access table.transportTable{
	margin-top:20px;
}
body.access #access table th,
body.access #access table td{
	padding:40px;
	background:#f8f6f5;
}
body.access #access table th{
	width:230px;
	border-radius:10px 0 0 10px;
	font-weight:normal;
}
body.access #access table th img{
	width:24px;
	margin-right:8px;
	vertical-align:-4px;
}
body.access #access table td{
	border-radius:0 10px 10px 0;
	border-left:1px #ddd dotted;
}
body.access #access table td .arrow{
	width:13em;
	min-width:130px;
	margin-left:22px;
	padding:0;
}
body.access .course_cv{
	width:100%;
	margin:100px 0 0;
	border-radius:0;
}
body.access .course_cv h3{
	position:relative;
}
body.access .course_cv h3:before{
	display:block;
	content:"";
	width:604px;
	height:132px;
	background:url(img/common/contact.png) center center no-repeat;
	background-size:contain;
	opacity:.1;
	position:absolute;
	left:calc(50% - 302px);
	top:-70px;
}
body.access #area table p{
	margin:0;
	/*display:flex;*/
}
body.access #area table p+p{
	margin-top:1.8em;
}
body.access #area table p span{
	display:block;
}
body.access #area table p span:first-child{
	white-space:nowrap;
	padding-right:1em;
}

/* access_omiya
-----------------------------------------------------------*/
body.access_omiya #title{
	background-image:url(img/access/omiyaTitle.jpg);
	height:500px;
}

/* access_nishiomiya
-----------------------------------------------------------*/
body.access_nishiomiya #title{
	background-image:url(img/access/sashiougiTitle.jpg);
	height:500px;
}

/* access_ageo
-----------------------------------------------------------*/
body.access_ageo #title{
	background-image:url(img/access/ageoTitle.jpg);
	height:500px;
}

/* bus - common
-----------------------------------------------------------*/
body.busFormat section+section{
	margin-top:140px;
}
/* title */
body.busFormat #title{
	background-image:url(img/bus/busTitle.jpg);
}
body.busFormat #title>div{
	width:470px;
}
body.busFormat #title h1{
	width:290px;
}
body.busFormat #title h1:before{
	background-image:url(img/common/busTitle.png);
	width:348px;
	height:306px;
	left:-219px;
	top:-218px;
}
body.busFormat .dotbg:before{
	width:calc(50% + 260px);
	height:1600px;
	top:0;
	left:calc(50% - 200px);
}
body.busFormat section .inner{
	max-width:960px;
}
body.busFormat section h2 small{
	margin-left:1em;
	font-size:13px;
}
body.busFormat .gmap{
	width:100%;
	height:0;
	padding-top:74.68%;
	position:relative;
}
body.busFormat .gmap iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
body.busFormat section .link{
	text-align:right;
}
body.busFormat section .link a{
	display:inline-block;
	margin-top:26px;
	padding:0 48px 0 0;
	background-size:21px;
}
body.busFormat section h3{
	margin-top:46px;
	font-size:15px;
	font-weight:normal;
}
body.busFormat section ul{
	margin:10px 0 20px;
	border-bottom:1px #d96845 solid;
}
body.busFormat section ul li{
	width:280px;
	height:40px;
	line-height:40px;
	text-align:center;
	border:1px #d96845 solid;
	border-bottom:0;
	background:#fff;
	color:#d96845;
	cursor:pointer;
	transition:all .3s ease-in-out;
}
body.busFormat section ul li.current{
	background:#d96845;
	color:#fff;
	cursor:initial;
	transition:all .3s ease-in-out;
}
body.busFormat section ul li+li{
	margin-left:30px;
}
body.busFormat section .timetable{
	position:relative;
}
body.busFormat section .timetable .box{
	transition:all .3s ease-in-out;
}
body.busFormat section .timetable .box:not(.current){
	position:absolute;
	left:0;
	top:0;
	z-index:-1;
	opacity:0;
	transition:all .3s ease-in-out;
}
body.busFormat section table .box{
	margin-bottom:10px;
}
body.busFormat section table{
	table-layout:fixed;
}
body.busFormat section th,
body.busFormat section td{
	padding:10px;
	border:1px #ddd solid;
	background:#f7f7f7;
	font-weight:normal;
	text-align:center;
	vertical-align:middle;
}
body.busFormat section td{
	padding:14px 10px;
	background:#fff;
}

/* bus
-----------------------------------------------------------*/
/* title */
body.bus #title{
	height:500px;
}
body.bus #title>div{
	width:650px;
}
body.bus #title h1{
	width:470px;
}
/* area */
body.bus #area .notice{
	text-align:right;
}
body.bus #area .notice span{
	display:inline-block;
	margin-left:16px;
}
body.bus #area .notice span:before{
	display:inline-block;
	content:"";
	width:40px;
	height:18px;
	margin-right:4px;
	background:#feecd2;
	vertical-align:-2px;
}
body.bus #area .notice span:nth-of-type(2):before{
	background:#fadcea;
}
body.bus #area .notice span:nth-of-type(3):before{
	background:#fadcea;
}
body.bus #timetable dt{
	display:block;
	margin:30px 0 0;
	padding:40px 0 0;
	border-top:1px #ddd solid;
}
body.bus #timetable dd{
	margin:10px 0 0;
}
body.bus #timetable dd a{
	display:block;
	padding:0 0 0 32px;
}
body.bus #timetable dd a:before{
	left:0;
	right:auto;
	top:16px;
}
body.bus #timetable dd a:after{
	left:7px;
	right:auto;
	top:16px;
}
body.bus #timetable dd .left{
	width:198px;
	margin:0;
}
body.bus #timetable dd .right{
	display:block;
	width:calc(100% - 198px);
	margin:0;
	padding:0;
	text-align:left;
}

/* voice - common
-----------------------------------------------------------*/
body.voice main .inner{
	max-width:960px;
}
/* title */
body.voice #title{
	background-image:url(img/voice/voiceTitle.jpg);
}
body.voice #title>div{
	width:460px;
}
body.voice #title h1{
	width:280px;
}
body.voice #title h1:before{
	background-image:url(img/common/voiceTitle.png);
	width:479px;
	height:370px;
	left:-179px;
	top:-292px;
}
/* voicelist */
body.voice #voicelist{
	padding-top:60px;
}
body.voice #voicelist:before{
	width:calc(50% + 260px);
	height:1600px;
	top:-60px;
	left:calc(50% - 200px)
}
body.voice .voicelist{
	margin:0;
	padding:0;
	list-style:none;
}
body.voice .voicelist li+li{
	margin-top:80px;
	padding-top:80px;
	border-top:1px #ddd solid;
}
body.voice .voicelist .left{
	width:80px;
	text-align:center;
}
body.voice .voicelist .left img{
	display:block;
	width:80px;
}
body.voice .voicelist .left .date{
	font-size:10px;
}
body.voice .voicelist .right{
	width:calc(100% - 142px);
	min-height:180px;
	padding:40px;
	background:#f8f6f5;
	border-radius:10px;
	position:relative;
}
body.voice .voicelist .right:before{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:10px transparent solid;
	border-bottom:10px transparent solid;
	border-left:30px transparent solid;
	border-right:30px #f8f6f5 solid;
	position:absolute;
	left:-60px;
	top:40px;
	z-index:-1;
}
body.voice .voicelist .right .tag{
	margin-bottom:1em;
}
body.voice .voicelist .right .tag span{
	display:inline-block;
	padding:1px 12px;
	background:#fff;
	border:1px #ddd solid;
	font-size:13px;
}
body.voice .voicelist .right .tag span+span{
	margin-left:6px;
}

/* voice - archive
-----------------------------------------------------------*/
/* title */
body.post-type-archive-voice #title{
	height:500px;
}
body.post-type-archive-voice .dotbg:before{
	width:calc(50% + 260px);
	height:1600px;
	top:-60px;
	left:calc(50% - 200px)
}
body.post-type-archive-voice section:not(#voicelist_ordinary_car) .inner{
	margin-top:80px;
	padding-top:80px;
	border-top:1px #ddd solid;
}
body.post-type-archive-voice h2 a{
	display:block;
	float:right;
	padding:0 46px 0 0;
	font-size:15px;
}
body.post-type-archive-voice .voicelist li+li{
	margin-top:60px;
	padding-top:0;
	border:0;
}

/* company - common
-----------------------------------------------------------*/
/* title */
body.company #title{
	background-image:url(img/company/companyTitle.jpg);
}
body.companyFormat #title>div{
	width:440px;
}
body.companyFormat #title h1{
	width:260px;
}
body.companyFormat #title h1:before{
	background-image:url(img/common/companyTitle.png);
	width:590px;
	height:312px;
	left:-179px;
	top:-228px;
}

body.companyFormat .dotbg:before{
	width:calc(50% + 260px);
	height:984px;
	top:-50px;
	left:calc(50% - 200px);
}

/* company
-----------------------------------------------------------*/
/* title */
body.company #title{
	height:500px;
}
body.company #title h1:before{
	top:-292px;
}
/* company */
body.company #company p{
	margin:24px 0 42px;
	text-align:center;
	line-height:2;
}
body.company #company h2{
	padding-left:0;
}
body.company #company h2:before{
	display:none;
}
body.company #company .first{
	width:100%;
	max-width:1480px;
	margin:0 auto;
}
body.company #company .first a{
	display:block;
	float:left;
	/*width:calc(100% / 3);*/
	width:calc(100% / 2);
	padding-bottom:100px;
	position:relative;
}
body.company #company .first a:nth-of-type(1){
	margin-top:120px;
}
body.company #company .first a:nth-of-type(2){
	margin-top:60px;
}
body.company #company .first .image img{
	width:100%;
}
body.company #company .first .text{
	width:calc(100% - 80px);
	max-width:460px;
	padding:18px 36px 30px;
	position:absolute;
	left:50%;
	bottom:0;
	z-index:1;
	transform:translateX(-50%);
}
body.company #company .first .text h2{
	margin:0 0 6px;
	padding:0;
	font-size:20px;
	font-weight:normal;
	text-align:center;
}
body.company #company .second{
	margin-top:8px;
}
body.company #company .second a{
	display:block;
	float:left;
	width:calc((100% - 120px) / 3);
	text-decoration:none;
}
body.company #company .second a:first-child{
	margin-top:100px;
}
body.company #company .second a:nth-of-type(2){
	margin-top:50px;
}
body.company #company .second a+a{
	margin-left:60px;
}
body.company #company .second .hlink .text{
	background:transparent;
}
body.company #company .second .text h2{
	margin:1em 0;
	font-size:18px;
	font-weight:normal;
	text-align:left;
}
body.company #company .second .hlink:hover .text{
	background:transparent;
	color:#d96845;
}
body.company #company .text .link{
	text-align:right;
	position:relative;
}
body.company #company .text .link .arrow{
	display:inline-block;
	padding-left:24px;
	padding-right:32px;
	text-align:left;
}
body.company #company .text .link:before{
	display:block;
	content:"";
	width:calc(100% - 146px);
	height:1px;
	background:#ccc;
	position:absolute;
	left:0;
	top:50%;
}

/* company - message
-----------------------------------------------------------*/
/* title */
body.message #title{
	background-image:url(img/company/messageTitle.jpg);
}
/* message */
body.message main .inner{
	max-width:960px;
}
body.companyFormat.message .dotbg:before{
	top:173px;
	height:500px;
}
body.message .signature{
	margin-top:138px;
	text-align:right;
}

/* company - history
-----------------------------------------------------------*/
/* title */
body.history #title{
	background-image:url(img/company/historyTitle.jpg);
}
/* history */
body.history main .inner{
	max-width:960px;
}
body.history table{
	width:calc(100% - 230px);
	border-top:1px #ddd solid;
}
body.history table th,
body.history table td{
	padding:20px 0;
	border:none;
	border-bottom:1px #ddd solid;
	background:transparent;
	position:relative;
}
body.history table th{
	width:174px;
	font-weight:normal;
	text-align:left;
	vertical-align:top;
}
body.history table td img{
	width:190px;
	position:absolute;
	left:calc(100% + 40px);
	top:0;
}

/* company - overview
-----------------------------------------------------------*/
/* title */
body.overview #title{
	background-image:url(img/company/overviewTitle.jpg);
}
/* history */
body.overview main section+section{
	margin-top:80px;
}
body.overview main .inner{
	max-width:960px;
}
body.overview table th,
body.overview table td{
	padding:20px 40px;
	border:1px #ddd solid;
	background:#fff;
}
body.overview table th{
	width:190px;
	font-weight:normal;
	background:#f7f7f7;
}

/* company - prize
-----------------------------------------------------------*/
/* title */
body.prize.companyFormat #title,
body.parent_prize #title{
	background-image:url(img/company/prizeTitle.jpg);
}
/* prize */
body.prize.companyFormat main .inner{
	max-width:960px;
}
body.prize.companyFormat table{
	width:100%;
	border-top:1px #ddd solid;
}
body.prize.companyFormat table th,
body.prize.companyFormat table td{
	padding:20px 0;
	border:none;
	border-bottom:1px #ddd solid;
	background:transparent;
}
body.prize.companyFormat table th{
	width:190px;
	font-weight:normal;
	text-align:left;
	vertical-align:top;
}
body.prize.companyFormat table td a{
	color:#d96845;
	text-decoration:underline;
}

/* company - prize - coolchoice_2019
--------------------------------------------------*/
body.coolchoice_2019 main .inner{
	max-width:740px;
}
body.coolchoice_2019 article{
	box-sizing:border-box;
	margin:0 auto 32px;
}
body.coolchoice_2019 article:after{
	display:block;
	content:"";
	clear:both;
}
body.coolchoice_2019 main ul{
	margin:10px 0 24px;
	padding:0;
	list-style:none;
}
body.coolchoice_2019 main ul:after{
	display:block;
	content:"";
	clear:both;
}
body.coolchoice_2019 main li{
	float:left;
}
body.coolchoice_2019 main .box1{
	width:calc(100% - 72px);
	padding:34px;
	border:2px #e7eac4 solid;
	background:url(img/company/bg.png) 0 0 repeat;
	color:#7f5c2e;
	font-size:14px;
}
body.coolchoice_2019 main .box1.title1{padding-top:15px}
body.coolchoice_2019 main .box1.title1 img{margin-bottom:35px}
body.coolchoice_2019 main .box1.title2 iframe{
	width:100%;
	height:376px;
	margin:30px 0 40px 0;
}
body.coolchoice_2019 main .box1.title3{margin-bottom:30px}
body.coolchoice_2019 main .box1.title3 #title{
	font-weight:bold;
	margin:40px 0;
	font-size:20px;
	letter-spacing:1px;
}
body.coolchoice_2019 main h3 img{
	width:100%;
	vertical-align:bottom;
}
body.coolchoice_2019 main .box1 li+li{margin-left:35px}
body.coolchoice_2019 main .box1 .clearfix{margin:20px 0}
body.coolchoice_2019 main .box1 .clearfix:after{
	display:block;
	content:"";
	clear:both;
}
body.coolchoice_2019 main .box1 .clearfix img{
	float:left;
	width:278px;
}
body.coolchoice_2019 main .box1 .clearfix p{
	display:block;
	float:right;
	width:calc(100% - 288px);
}

body.coolchoice_2019 main h4{
	font-size:20px;
	line-height:1.5;
	min-height:18px;
	margin:0 0 6px;
	letter-spacing:0;
	text-align:center;
}
body.coolchoice_2019 main h4.line2{line-height:33px}
body.coolchoice_2019 main h4.long{margin:0 -37px 6px}

body.coolchoice_2019 main .box2{
	background:#f7f4c9;
	border:2px #04abfb solid;
	border-radius:8px;
	padding:28px 37px 36px;
}
body.coolchoice_2019 main .box2 li+li{margin-left:14px}
body.coolchoice_2019 main .box2 p+p,
body.coolchoice_2019 main .nobox p+p{margin-top:22px}

body.coolchoice_2019 main .nobox{
	width:calc(100% - 60px);
	padding:50px 28px;
	color:#7f5c2e;
	font-size:14px;
}
body.coolchoice_2019 main .nobox img{
	display:block;
	margin:0 auto 40px auto;
}

body.coolchoice_2019 main .col2{
	float:left;
	width:calc(50% - 16px);
}
body.coolchoice_2019 main .col2+.col2{margin-left:32px}
body.coolchoice_2019 main .col2 img{margin-bottom:20px}
body.coolchoice_2019 main .more{
	margin-top:10px;
	text-align:right;
}
body.coolchoice_2019 main .more+.more{
	margin-top:0;
}
body.coolchoice_2019 main .more a{
	text-decoration:underline;
	font-size:14px;
	cursor:pointer;
}

body.coolchoice_2019 main #topimage{
	width:100%;
	margin:0;
	padding:0;
	box-shadow:0 0 3px rgba(0,0,0,0.2);
}

body.coolchoice_2019 main #theme{
	margin-top:50px;
	padding:74px 40px 30px;
	background:#f0e6d0;
	border-radius:16px;
	position:relative;
}
body.coolchoice_2019 main #theme h3{
	position:absolute;
	left:50%;
	top:-42px;
	transform:translateX(-50%);
}
body.coolchoice_2019 main #theme h4{
	margin:0 0 6px;
	padding:0;
	color:#00479d;
	font-size:30px;
	font-weight:bold;
	font-family: "Sawarabi Gothic";
	text-decoration:underline;
	text-decoration-color:#04abfb;
	text-underline-offset:.2em;
	line-height:1.8;
}
body.coolchoice_2019 main #theme h4 span:nth-of-type(3){
	margin:0 -5px 8px;
}
body.coolchoice_2019 main #theme .left{
	width:340px;
	margin-top:14px;
}
body.coolchoice_2019 main #theme .right img{
	margin-top:70px;
	box-shadow:0 0 3px 1px rgba(0,0,0,.3);
}

body.coolchoice_2019 main #about{
	margin-top:35px;
	padding:30px 40px 34px;
	background:url(img/company/bg.gif) left top repeat;
	border-radius:16px;
}
body.coolchoice_2019 main #about h4{
	margin:0 -8px 8px;
	padding:0;
	font-size:50px;
	color:#00479d;
	font-family:sans-serif;
	line-height:1.2;
}
body.coolchoice_2019 main #about h4 span{
	font-size:40px;
}
body.coolchoice_2019 main #about h5{
	height:44px;
	line-height:45px;
	margin:16px 0 32px;
	font-size:22px;
	font-weight:bold;
	text-align:center;
	background:#04abfa;
	color:#fff;
	border-radius:22px;
}
body.coolchoice_2019 main #about ins{
	display:block;
	margin:10px 0 4px;
	text-align:center;
	font-size:14px;
	text-decoration:none;
}
body.coolchoice_2019 main #about .pv{
	box-sizing:border-box;
	margin-top:36px;
	padding:20px 40px 32px;
}
body.coolchoice_2019 main #about h6{
	margin:0 0 3px;
	font-size:20px;
	font-weight:bold;
	color:#04abfb;
	text-align:center;
}
body.coolchoice_2019 main #about .pv ul{
	margin:0;
	padding:0;
}
body.coolchoice_2019 main #about .pv iframe{
	margin-top:12px;
	width:100%;
	height:323px;
}
body.coolchoice_2019 main #about .allabout{
	margin-top:30px;
	padding:20px 40px 40px;
	background:#fff;
	border:2px #04abfb solid;
	border-radius:8px;
	letter-spacing:0;
}
body.coolchoice_2019 main #about .allabout ins{
	margin:18px 0 4px;
	color:#04abfb;
}

body.coolchoice_2019 main #think{
	margin-top:60px;
	padding:20px 38px 30px;
}
body.coolchoice_2019 main #think h4{
	padding:0;
	margin:0 0 20px;
}
body.coolchoice_2019 main #think h4 ins,
body.coolchoice_2019 main #approach h4 ins{
	display:inline-block;
	font-size:22px;
	font-weight:bold;
	color:#04abfb;
	text-decoration:none;
	letter-spacing:1px;
	line-height:2.2;
	position:relative;
}
body.coolchoice_2019 main #think h4 ins:after,
body.coolchoice_2019 main #approach h4 ins:after{
	display:block;
	content:"";
	width:100%;
	height:1px;
	background:url(img/company/line.png) left bottom repeat;
	position:absolute;
	left:0;
	bottom:0;
}
body.coolchoice_2019 main #approach{
	width:100%;
	margin-top:-16px;
	padding:0;
}
body.coolchoice_2019 main #approach h4{
	margin:0 0 16px;
}
body.coolchoice_2019 main #approach .box2 h4{
	font-size:20px;
	line-height:1;
}
body.coolchoice_2019 main #approach .box2 ul{
	margin:0 0 24px;
}

body.coolchoice_2019 main #project h4{
	margin:0 -8px 6px;
}

/* company - prize - award_2015
--------------------------------------------------*/
body.award_2015 #content .inner{
	max-width:740px;
}
body.award_2015 #content article:after{
	display:block;
	content:"";
	clear:both;
}
body.award_2015 #content article+article{margin-top:20px}
body.award_2015 #content ul{
	margin:40px 0;
	padding:0;
	list-style:none;
}
body.award_2015 #content ul:after{
	display:block;
	content:"";
	clear:both;
}
body.award_2015 #content li{
	float:left;
}
body.award_2015 #content li img{
	display:block;
	box-shadow:2px 2px 10px rgba(0,0,0,0.4);
}
body.award_2015 #content li.noshadow img{box-shadow:none}
body.award_2015 #content h1{
	font-size:22px;
	color:#f5649e;
}
body.award_2015 #content .box1{
	padding:34px;
	border:2px #e7eac4 solid;
	background:url(img/company/award2015_bg.png) 0 0 repeat;
	color:#7f5c2e;
	font-size:14px;
}
body.award_2015 #content .box1.title1{padding-top:15px}
body.award_2015 #content .box1.title1 h3{background:none}
body.award_2015 #content .box1.title1 img{margin-bottom:35px}
body.award_2015 #content .box1.title2 iframe{
	width:100%;
	height:376px;
	margin:30px 0 40px 0;
}
body.award_2015 #content .box1.title3{margin-bottom:30px}
body.award_2015 #content .box1.title3 .title{
	font-weight:bold;
	margin:40px 0;
	font-size:20px;
	letter-spacing:1px;
}
body.award_2015 #content h2 img{width:100%}
body.award_2015 #content .box1 li+li{margin-left:35px}
body.award_2015 #content .box1 .clearfix{margin:20px 0}
body.award_2015 #content .box1 .clearfix:after{
	display:block;
	content:"";
	clear:both;
}
body.award_2015 #content .box1 .clearfix img{
	float:left;
	width:278px;
}
body.award_2015 #content .box1 .clearfix p{
	display:block;
	float:right;
	width:calc(100% - 288px);
}

body.award_2015 #content h3{
	font-size:18px;
	line-height:42px;
	min-height:42px;
	padding-left:30px;
	background:url(img/company/point.png) left center no-repeat;
	margin-bottom:20px;
	letter-spacing:0;
}
body.award_2015 #content h3.line2{line-height:22px}

body.award_2015 #content .box2{
	padding:27px;
	background:#f5f7e2;
	border:3px #ebe5d4 solid;
	color:#7f5c2e;
	font-size:14px;
}
body.award_2015 #content .box2 li+li{margin-left:23px}
body.award_2015 #content .box2 p+p,
body.award_2015 #content .nobox p+p{margin-top:22px}

body.award_2015 #content .nobox{
	width:calc(100% - 60px);
	padding:50px 28px;
	color:#7f5c2e;
	font-size:14px;
}
body.award_2015 #content .nobox img{
	display:block;
	margin:0 auto 40px auto;
}

body.award_2015 #content .title{
	text-align:center;
	color:#009944;
	font-size:18px;
	font-weight:bold;
	margin-bottom:10px;
}

body.award_2015 #content .flex{
	flex-wrap:wrap;
	display:flex;
}
body.award_2015 #content .col2{
	float:left;
	width:calc((100% - 20px) / 2);
	/*height:530px;*/
	padding:20px 20px 40px;
	position:relative;
}
body.award_2015 #content .col2+.col2{margin-left:20px}
body.award_2015 #content .col2 img{
	width:100%;
	margin-bottom:20px;
}
body.award_2015 #content .more{
	margin-top:10px;
	text-align:right;
}
body.award_2015 #content .col2 .more{
	width:calc(100% - 50px);
	position:absolute;
	bottom:20px;
}
body.award_2015 #content .more a{
	text-decoration:underline;
	color:#7f5c2e;
	cursor:pointer
}

body.award_2015 #content #detail{
	margin:15px 0;
}
body.award_2015 #content #detail a{
	display:block;
	margin-top:10px;
	font-size:13px;
	padding-left:30px;
}
body.award_2015 #content #detail a:before{
	right:auto;
	left:0;
}
body.award_2015 #content #detail a:after{
	right:auto;
	left:8px;
}
body.award_2015 #content #detail a:hover{
	text-decoration:underline;
}

/* company - prize - award_2014
--------------------------------------------------*/
body.award_2014 #content .inner{
	max-width:740px;
}
body.award_2014 #content #award_2014 h3{
	margin:0;
}
body.award_2014 #content #award_2014 {
  width: 640px !important;
  font-size: 13px;
  zoom: 1.158;
}
body.award_2014 #content #award_2014 h3+.clearfix{
  background: url(img/company/award2014_bg.gif) no-repeat left bottom;
}
body.award_2014 #content #award_2014 .text_01 {
  float: left;
  margin:0;
  padding: 20px 40px 0px 50px;
  width: 390px;
  line-height: 1.8;
  letter-spacing: 0.2em;
}
body.award_2014 #content #award_2014 .text_01+.image{
	float:left;
	width:calc(100% - 440px);
}
body.award_2014 #content #award_2014 h4 {
  margin-top: 45px;
  height: 30px;
  line-height: 30px;
  margin-left: 20px;
  padding: 0px 0px 0px 15px;
  font-size: 1.2em;
  color: #fff;
  background:#22ad47;
  border-radius:15px;
  font-weight: bold;
}
body.award_2014 #content #award_2014 .text_02 {
  padding: 15px 35px 0px 35px;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
body.award_2014 #content #award_2014 ul{
	padding:15px 35px 0px 35px;
}
body.award_2014 #content #award_2014 ul li{
	width:calc((100% - 30px) /3);
}
body.award_2014 #content #award_2014 ul li+li{
	margin-left:15px;
}
body.award_2014 #content #award_2014 a{
	margin-top:20px;
	padding:0 0 0 30px;
}
body.award_2014 #content #award_2014 a:before{
	right:auto;
	left:0;
}
body.award_2014 #content #award_2014 a:after{
	right:auto;
	left:8px;
}
body.award_2014 #content #award_2014 a:hover{
	text-decoration:underline;
}

/* company - prize - award
--------------------------------------------------*/
body.award #content .inner{
	max-width:740px;
	color:#7f5b2e;
}
body.award #content #award h3{
	margin:0;
}
body.award #content #award {
  width: 640px !important;
  font-size: 13px;
  zoom: 1.158;
}
body.award #content #award h3 img{
	display:block;
}
body.award #content #award h3+.clearfix{
  background: url(img/company/award_bg.gif) no-repeat left top;
  background-size: contain;
}
body.award #content #award .clearfix .text {
  float: left;
  margin:0;
  padding:120px 0 20px 20px;
  width: 290px;
  line-height: 1.8;
  letter-spacing: 0.2em;
}
body.award #content #award .clearfix .text+.image{
	float:left;
	width:calc(100% - 320px);
	margin:120px 0 0 30px;
}
body.award #content #award h4 {
  margin-top: 45px;
  height: 30px;
  line-height: 30px;
  margin-left: 20px;
  padding: 0px 0px 0px 15px;
  font-size: 1.2em;
  background:#dfd7ba;
  border-radius:15px;
  font-weight: bold;
}
body.award #content #award h4+.text{
  padding: 15px 35px 0px 35px;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
body.award #content #award ul{
	padding:15px 35px 0px 35px;
}
body.award #content #award ul li{
	width:calc((100% - 30px) /3);
}
body.award #content #award ul li+li{
	margin-left:15px;
}
body.award #content #award a{
	margin-top:20px;
	padding:0 0 0 30px;
}
body.award #content #award a:before{
	right:auto;
	left:0;
}
body.award #content #award a:after{
	right:auto;
	left:8px;
}
body.award #content #award a:hover{
	text-decoration:underline;
}

/* company - recruit
-----------------------------------------------------------*/
/* title */
body.recruit #title{
	background-image:url(img/company/recruitTitle.jpg);
}
/* company */
body.recruit #company p{
	margin:24px 0 42px;
	text-align:center;
	line-height:2;
}
body.recruit #company h2{
	padding-left:0;
}
body.recruit #company h2:before{
	display:none;
}
body.recruit #company .first{
	width:100%;
	max-width:1480px;
	margin:0 auto;
}
body.recruit #company .first .hlink{
	display:block;
	float:left;
	width:calc(100% / 3);
	padding-bottom:100px;
	position:relative;
}
body.recruit #company .first a.hlink:nth-of-type(1){
	margin-top:120px;
}
body.recruit #company .first div.hlink{
	margin-top:60px;
}
body.recruit #company .first .text{
	width:calc(100% - 80px);
	max-width:460px;
	padding:18px 36px 30px;
	position:absolute;
	left:50%;
	bottom:0;
	z-index:2;
	transform:translateX(-50%);
}
body.recruit #company .first .text h2{
	margin:0 0 6px;
	padding:0;
	font-size:20px;
	font-weight:normal;
	text-align:center;
}
body.recruit #company .first div.hlink .text a{
	display:block;
	float:left;
	width:calc(50% - 10px);
	margin-top:10px;
}
body.recruit #company .first div.hlink .text a:nth-of-type(2){
	margin-left:20px;
}
body.recruit #company .first div.hlink:hover .text a{
	color:#fff;
}
body.recruit #company .first div.hlink:hover .text a:hover{
	background:#fff;
	color:#d96845;
}
body.recruit #company .text .link{
	margin-top:40px;
	text-align:right;
	position:relative;
}
body.recruit #company .text .link .arrow{
	display:inline-block;
	padding:0 24px 0 32px;
	text-align:left;
}
body.recruit #company .text .link:before{
	display:block;
	content:"";
	width:calc(100% - 146px);
	height:1px;
	background:#ccc;
	position:absolute;
	left:0;
	top:50%;
}
body.recruit #link,
body.instructor #link{
	margin-top:64px;
	text-align:center;
}
body.recruit #link .inner,
body.instructor #link .inner{
	max-width:740px;
}
body.recruit #link ul,
body.instructor #link ul{
	margin-bottom:30px;
}
body.recruit #link li+li{
	margin-left:20px;
}
body.recruit #link li,
body.instructor #link li{
	width:100%;
	text-align:center;
}
body.recruit #link li a,
body.instructor #link li a{
	display:block;
	width:290px;
	margin:0 auto;
}

/*body.recruit #link li:nth-of-type(1) a{width:215px}
body.recruit #link li:nth-of-type(2) a{width:194px}
body.recruit #link li:nth-of-type(3) a{width:290px}*/
body.recruit #link li a img,
body.instructor #link li a img{
	display:block;
	vertical-align:bottom;
}

/* company - recruit - recruitFormat
-----------------------------------------------------------*/
/* detail */
body.recruitFormat #detail h3{
	margin:0;
	font-size:18px;
	font-weight:normal;
}
body.recruitFormat #detail p{
	margin:0 0 1em;
}
body.recruitFormat #detail th{
	width:190px;
	padding:22px 40px;
	text-align:left;
	vertical-align:top;
}
body.recruitFormat #detail td{
	padding:22px 40px;
}
/* flow */
body.recruitFormat .flowTable{
	width:960px;
	margin:0 auto 62px;
	position:relative;
}
body.recruitFormat .flowTable+.flowTable:before,
body.recruitFormat .flowTable th.test div span+span:before{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:22px #f9e9da solid;
	border-left:15px transparent solid;
	border-right:15px transparent solid;
	position:absolute;
	left:calc(50% - 15px);
	top:-40px;
	z-index:2;
}
body.recruitFormat .flowTable th,
body.recruitFormat .flowTable td{
	width:230px;
	height:90px;
	background:#f7f7f7;
	border:0;
	font-weight:normal;
	text-align:left;
}
body.recruitFormat .flowTable th{
	padding-left:40px;
}
body.recruitFormat .flowTable td{
	width:calc(100% - 230px);
}
body.recruitFormat .flowTable th.test{
	background:#efefef;
	height:auto;
	padding:40px;
}
body.recruitFormat .flowTable th.test div{
	margin-top:20px;
	padding:40px;
	background:#fff;
}
body.recruitFormat .flowTable th.test div span{
	display:block;
	height:90px;
	line-height:90px;
	padding-left:40px;
	background:#f7f7f7;
}
body.recruitFormat .flowTable th.test div span+span{
	margin-top:58px;
	position:relative;
}
/* about */
body.recruitFormat #about dl{
	margin:0;
}
body.recruitFormat #about dt{
	margin:0;
	padding-bottom:12px;
	border-bottom:1px #ddd solid;
}
body.recruitFormat #about dd{
	margin:0;
	padding-top:18px;
}
body.recruitFormat #about dd+dt{
	margin-top:64px;
}
body.recruitFormat #about dd a{
	text-decoration:underline;
	color:#d96845;
}
/* contact */
body.recruitFormat #contact .link{
	margin-top:140px;
	text-align:center;
}
body.recruitFormat #contact .link a{
	display:inline-block;
	padding:15px 40px;
	color:#fff;
}
body.recruitFormat #contact .link a img{
	width:17px;
	margin-right:24px;
	vertical-align:-4px;
}

/* company - recruit - instructor
-----------------------------------------------------------*/
body.parent_recruit.instructor section+section{
	margin-top:120px;
}
/* title */
body.parent_recruit.instructor #title{
	background-image:url(img/company/recruitTitle.jpg);
}

/* company - recruit - reception
-----------------------------------------------------------*/
body.reception section+section{
	margin-top:120px;
}
/* title */
body.reception #title{
	background-image:url(img/company/recruitTitle.jpg);
}

/* company - recruit - driver
-----------------------------------------------------------*/
body.driver section+section{
	margin-top:120px;
}
/* title */
body.driver #title{
	background-image:url(img/company/recruitTitle.jpg);
}

/* company - recruit - person
-----------------------------------------------------------*/
/* title */
body.person #title{
	background-image:url(img/company/personTitle.jpg);
}
body.person #title>div{
	width:600px;
}
body.person #title h1{
	width:420px;
}
/* content */
body.person section+section{
	margin-top:160px;
}
body.person section .inner{
	max-width:960px;
}
body.person article+article{
	margin-top:60px;
}
body.person .title .left,
body.person .title .right{
	width:460px;
}
body.person .label{
	display:inline-block;
	padding:5px 23px;
	text-align:center;
	background:#000;
	color:#fff;
}
body.person .text{
	font-size:24px;
}
body.person .text ins{
	display:block;
	margin-bottom:50px;
	font-size:15px;
	text-decoration:none;
}
body.person .rewarding .left{
	width:570px;
}
body.person .rewarding .right{
	width:360px;
}

/* company - recruit - recruitform
-----------------------------------------------------------*/
/* title */
body.recruitform #title{
	background-image:url(img/company/recruitformTitle.jpg);
}
body.recruitform #title>div{
	width:630px;
}
body.recruitform #title h1{
	width:450px;
}
body.recruitform #title h1:before{
	background-image:url(img/common/recruitformTitle.png);
	width:439px;
	height:280px;
	left:-164px;
	top:-203px;
}
/* recruitform */
body.recruitform #recruitform .inner{
	max-width:960px;
}

/* company - recruit - recruitform - confirm
-----------------------------------------------------------*/
body.recruitform.confirm #recruitform .selectbox{
	width:auto;
	background:transparent;
}
body.recruitform.confirm #recruitform .selectbox:nth-of-type(n+2){
	margin-left:0;
}

/* company - csr
-----------------------------------------------------------*/
/* title */
body.csr.parent_company #title,
body.parent_csr #title{
	background-image:url(img/company/companyTitle.jpg);
}
body.csr.parent_company main h1{
	font-size:34px;
	font-weight:normal;
	margin:1.5em 0 0.5em;
}
body.csr.parent_company article{
	margin-bottom:40px;
	padding-bottom:40px;
	border-bottom:1px #ddd solid;
}
body.csr.parent_company article .left{
	width:690px;
}
body.csr.parent_company article .left a{
	display:inline-block;
	margin-top:50px;
	padding-right:60px;
}
body.csr.parent_company article .right{
	width:390px;
}
/* description */
body.csr.parent_company #description .left{
	width:768px;
}
body.csr.parent_company #description .left big{
	display:block;
	margin:0.3em 0;
	font-size:33px;
}
body.csr.parent_company #description .right{
	width:360px;
	margin-right:40px;
}

/* company - csr - festival
-----------------------------------------------------------*/
body.festival.parent_csr #festival .inner{
	max-width:740px;
}
body.festival.parent_csr #festival .inner .content{
	background:url(img/company/festival_bg.png) left top repeat;
}
body.festival.parent_csr #festival img{
	vertical-align:bottom;
}
body.festival.parent_csr #festival dd {
	margin:0;
}
body.festival.parent_csr #festival h2+img{
	margin-bottom:45px;
}
body.festival.parent_csr #festival .event li{
	float:left;
}
body.festival.parent_csr #festival .inner h3,
body.festival.parent_csr #festival .inner h4 {
	width: 660px;
	margin: 0 auto;
}
body.festival.parent_csr #festival .inner h3 {
	margin-top:32px;
}

body.festival.parent_csr #festival .eventContents {
	width: 660px;
	background:#fff;
	position: relative;
	margin: 0 auto;
	padding-bottom:25px;
}
body.festival.parent_csr #festival .eventContents dl {
	width: 420px;
	margin:0;
	padding-left:23px;
	padding-top: 20px;
	line-height: 1.8;
	font-size: 14px;
	color:#231815;
}
body.festival.parent_csr #festival .eventContents dl.pleasure,
body.festival.parent_csr #festival .eventContents dl.support {
	width: 100%;
}
body.festival.parent_csr #festival .eventContents dt {
	font-weight: bold;
}

body.festival.parent_csr #festival .eventContents .photo {
	position: absolute;
	top: 24px;
	right: 24px;
}

body.festival.parent_csr #festival .eventContents dl.ticket {
	width: 408px;
	padding-left:23px;
	padding-top: 20px;
	line-height: 1.8;
	font-size: 14px;
	color:#231815;
}
body.festival.parent_csr #festival .eventContents dl.ticket dt {
	background:#e8342f;
	text-align:center;
	line-height:32px;
	color:#fff;
}
body.festival.parent_csr #festival .eventContents dl.ticket dd {
	border-bottom:3px solid #e9e7e7;
	border-left:3px solid #e9e7e7;
	border-right:3px solid #e9e7e7;
	padding:15px 20px;
	font-size: 12px;
	line-height:1.66em;
}

body.festival.parent_csr #festival .eventAccess {
	width: 660px;
	background:#6c696c;
	-webkit-border-bottom-right-radius: 5px; 
	-webkit-border-bottom-left-radius: 5px; 
	-moz-border-radius-bottomright: 5px; 
	-moz-border-radius-bottomleft: 5px; 
	position: relative;
	margin: 0 auto;
	padding-top:20px;
	padding-bottom:30px;
}
body.festival.parent_csr #festival .eventAccess .map {
	float:left;
	width:294px;
	height:170px;
	margin-left:24px;
	margin-right:26px;
}
body.festival.parent_csr #festival .eventAccess dl{
	float:left;
	color:#fff;
}
body.festival.parent_csr #festival .eventAccess dl.sashiougi {
	margin-top:28px;
}
body.festival.parent_csr #festival .eventAccess dl.omiya {
	margin-top:40px;
}
body.festival.parent_csr #festival .eventAccess dt {
	background: url(img/common/icn-freedial.png) 0 center no-repeat;
	margin-bottom:10px;
	padding-left:52px;
	font-size:32px;
	line-height:1em;
}
body.festival.parent_csr #festival .eventAccess dd {
	font-size:14px;
	line-height:1.72em;
}
body.festival.parent_csr #festival .eventAccess dl.ageo dd.bus{
	background: url(/company/csr/img/festival/ageo-line.png) left top no-repeat;
	margin-top:10px;
	padding-top:10px;
	font-size:18px;
}
body.festival.parent_csr #festival .eventAccess .img {
	padding-top:24px;
	margin-left:24px;
	clear:both;
}

/* company - csr - forest
-----------------------------------------------------------*/
body.forest.parent_csr #forest .inner{
	max-width:740px;
}
body.forest.parent_csr #forest .inner table{
	margin-top:40px;
}
body.forest.parent_csr #forest .inner table th{
	width:180px;
	text-align:left;
	padding:1.46em 1em;
	vertical-align:top;
}
body.forest.parent_csr #forest .inner table td{
	padding:1.46em 1em;
}
body.forest.parent_csr #forest ul{
	margin:32px 0 54px;
}
body.forest.parent_csr #forest ul li{
	width:calc(100% / 3);
}
body.forest.parent_csr #forest ul li:nth-of-type(3n+1){
	clear:both;
}
body.forest.parent_csr #forest p + img{
	display:block;
	width:500px;
	margin:30px auto;
}
body.forest.parent_csr section.contact .inner{
	max-width:740px;
	margin-top:72px;
	padding-top:72px;
	text-align:center;
	border-top:1px #ddd solid;
}
body.forest.parent_csr section.contact+.contact .inner{
	margin-top:36px;
	padding-top:36px;
}
body.forest.parent_csr section.contact .inner h3{
	margin:0 0 1em;
	font-weight:normal;
	font-size:18px;
}
body.forest.parent_csr section.contact .inner a{
	display:block;
	width:520px;
	height:60px;
	margin:0 auto;
	line-height:60px;
	border:1px #000 solid;
}
body.forest.parent_csr section.contact .inner a+p{
	display:block;
	width:520px;
	margin:10px auto 0;
	font-size:13px;
	text-align:left;
}
body.forest.parent_csr section.contact .inner p{
	font-size:13px;
}
body.forest.parent_csr section.contact .inner ins{
	display:block;
	text-decoration:none;
	font-size:18px;
}

/* company - csr - finecup
-----------------------------------------------------------*/
body.finecup.parent_csr #finecup .inner{
	max-width:740px;
}
body.finecup.parent_csr #finecup .inner .box{
	padding:20px;
	background:#ff0;
}
body.finecup.parent_csr #finecup .inner .box h3{
	height:60px;
	line-height:60px;
	border-radius:30px;
	text-align:center;
	background: #f98500;
	background: -moz-linear-gradient(top,  #f98500 0%, #ea120e 100%);
	background: -webkit-linear-gradient(top,  #f98500 0%,#ea120e 100%);
	background: linear-gradient(to bottom,  #f98500 0%,#ea120e 100%);
	font-size:30px;
	color:#fff;
}
body.finecup.parent_csr #finecup .inner .box table th{
	width:150px;
	padding:1em;
	text-align:left;
	vertical-align:top;
	background:#f3fddb;
}
body.finecup.parent_csr #finecup .inner .box table td{
	padding:1em;
}
body.finecup.parent_csr #finecup .inner .box table table th{
	background:#f7f7f7;
	width:66px;
	text-align:center;
}
body.finecup.parent_csr #finecup .inner .box ul li{
	width:calc((100% - 40px) / 3);
	margin-top:20px;
	margin-left:20px;
}
body.finecup.parent_csr #finecup .inner .box ul li:nth-of-type(3n+1){
	clear:both;
	margin-left:0;
}
body.finecup.parent_csr #finecup .inner .box ul li img{
	width:100%;
	display:block;
}

/* company - csr - marubai
-----------------------------------------------------------*/
body.marubai.parent_csr #marubai .inner{
	max-width:740px;
}
body.marubai.parent_csr #marubai{
	background-color:#fff;
}
body.marubai.parent_csr #marubai ul{
	padding:10px 0;
	font-size:13px;
}
body.marubai.parent_csr #marubai ul li{
	float:left;
	width:calc((100% - 60px) / 2);
	position:relative;
}
body.marubai.parent_csr #marubai ul li:nth-child(2n){margin-left:60px}
body.marubai.parent_csr #marubai ul li:nth-child(2n+1){ clear:both;}
body.marubai.parent_csr #marubai ul li:nth-child(n+3){margin-top:40px}
body.marubai.parent_csr #marubai ul li p{
	margin:0 0 15px;
	font-size:28px;
	font-weight:bold;
	line-height:1.3;
}
body.marubai.parent_csr #marubai ul li p span{
	display:block;
	font-size:27px;
}
body.marubai.parent_csr #marubai ul li img{
	display:block;
	margin:10px 0;
}
body.marubai.parent_csr #marubai ul li span{
	display:block;
	text-indent:-1em;
	padding-left:1em;
}
body.marubai.parent_csr #marubai ul li span.comment{
	text-indent:0;
	padding-left:0;
	font-size:18px;
}
body.marubai.parent_csr #marubai ul li div.mark{
	position:absolute;
	bottom:40px;
	right:15px;
	width:80px;
	height:80px;
	background:#fff100;
	color:#e50011;
	font-size:24px;
	font-weight:bold;
	text-align:center;
	line-height:76px;
	border-radius:80px;
	border:3px #fff solid;
}
body.marubai.parent_csr #marubai ul li:first-child img:nth-of-type(2){
	margin-top:7px;
	margin-left:10px;
}
body.marubai.parent_csr #marubai ul li:first-child img:nth-of-type(3){
	position:absolute;
	left:-18px;
	bottom:92px;
}
body.marubai.parent_csr #marubai ul li:first-child img:nth-of-type(4){
	position:absolute;
	left:0;
	bottom:-27px;
}
body.marubai.parent_csr #marubai ul li:first-child p{
	line-height:1.28;
}
body.marubai.parent_csr #marubai ul li:first-child p span{
	font-size:33px;
	transform: scale(1, 1.1);
	letter-spacing:-0.1em;
}
body.marubai.parent_csr #marubai ul li:first-child div.rider{
	margin:0 0 0 130px;
	color:#fb0360;
	text-shadow:#fff 1px 1px 0px,#fff -1px 1px 0px,#fff 1px -1px 0px,#fff -1px -1px 0px;
	text-align:left;
	font-size:22px;
	font-weight:bold;
	line-height:33px;
}
body.marubai.parent_csr #marubai ul li:first-child div.rider span{
	text-indent:0;
	padding-left:0;
	font-size:16px;
	line-height:24px;
}
body.marubai.parent_csr #marubai ul li p{
	line-height:1.2;
}
body.marubai.parent_csr #marubai ul li:nth-child(2) .image{
	position:relative;
}
body.marubai.parent_csr #marubai ul li:nth-child(2) div.text-shadow{
	position:absolute;
	bottom:51px;
	right:-24px;
	padding:0;
	margin:0;
	background:transparent;
	color:#fb0360;
	text-shadow:#fff 1px 1px 0px,#fff -1px 1px 0px,#fff 1px -1px 0px,#fff -1px -1px 0px;
	text-align:left;
	font-size:20px;
	line-height:30px;
}
body.marubai.parent_csr #marubai ul li:nth-child(2) div.mark{
	bottom:-30px;
	right:0;
}
body.marubai.parent_csr #marubai ul li:nth-child(3) .comment{
	position: relative;
}
body.marubai.parent_csr #marubai ul li:nth-child(3) .comment img+span{
	display:block;
	position:absolute;
	top:135px;
	right:-10px;
	color:#fb0360;
	text-shadow:#fff 1px 1px 0px,#fff -1px 1px 0px,#fff 1px -1px 0px,#fff -1px -1px 0px;
	font-size:18px;
	font-weight:bold;
	text-indent:0;
	padding-left:0;
}
body.marubai.parent_csr #marubai ul li:nth-child(3) .image{
	position:relative;
}
body.marubai.parent_csr #marubai ul li:nth-child(3) div.mark{
	bottom:-17px;
	right:-14px;
}
body.marubai.parent_csr #marubai ul li:nth-child(3) div.mark span{
	display:inline;
	font-size:23px;
	padding-left:0;
}
body.marubai.parent_csr #marubai ul li:nth-child(4) .comment{
	position:relative;
}
body.marubai.parent_csr #marubai ul li:nth-child(4) .comment span{
	font-size:18px;
	text-indent:0;
	padding-left:0;
}
body.marubai.parent_csr #marubai ul li:nth-child(4) div.mark{bottom:50px;right:-14px;}
body.marubai.parent_csr #marubai ul li:nth-child(5){
	line-height:1.5;
}
body.marubai.parent_csr #marubai ul li:nth-child(5) p{margin-bottom:22px;line-height:1.4;letter-spacing:-0.05em;}
body.marubai.parent_csr #marubai ul li:nth-child(5) p span{ display:block; font-size:24px; letter-spacing:-0.05em; text-indent:-0.5em; padding:0;}
body.marubai.parent_csr #marubai ul li:nth-child(5) p span + span{display:block;font-size:18px; letter-spacing:0em; text-indent:0; padding-top:5px;font-weight:normal;}
body.marubai.parent_csr #marubai ul li:nth-child(5) .image{
	position:relative;
}
body.marubai.parent_csr #marubai ul li:nth-child(5) div.mark{
	width:90px;
	height:90px;
	padding:7px 0;
	line-height:1.2;
	font-size:14px;
	bottom:0;
	right:-14px;
}
body.marubai.parent_csr #marubai ul li:nth-child(5) div.mark span{
	display:inline;
	font-size:22px;
	margin:0;
	padding:0;
}
body.marubai.parent_csr #marubai ul li:nth-child(6){
	font-size:18px;
}
body.marubai.parent_csr #marubai ul li:nth-child(6) p{font-size:26px; line-height:1.4; letter-spacing:-0.05em;}

body.marubai.parent_csr #marubai .meta{
	margin:45px auto 0;
	padding-bottom:30px;
}
body.marubai.parent_csr #marubai .meta h2{
	margin:0 0 16px;
}
body.marubai.parent_csr #marubai .meta iframe{
	width:740px;
	height:416px;
}
body.marubai.parent_csr #marubai .meta iframe+p{
	display:block;
	margin:0 0 60px;
	padding-bottom:60px;
	border-bottom:1px #ddd solid;
}
body.marubai.parent_csr #marubai .meta table th{
	width:180px;
	vertical-align:top;
	text-align:left;
	padding:1.46em 1em;
}
body.marubai.parent_csr #marubai .meta table td{
	padding:1.46em 1em;
}
body.marubai.parent_csr #marubai .meta table td img{
	max-width:370px;
}
body.marubai.parent_csr #marubai .meta table td a{
	text-decoration:underline;
}

/* company - csr - athletesupport
-----------------------------------------------------------*/
body.athletesupport.parent_csr section .inner{
	max-width:740px;
}
body.athletesupport.parent_csr #athletesupport{
	padding:0 0 34px;
	background:#2a3c70;
	color:#fff;
}
body.athletesupport.parent_csr #athletesupport h2{
	padding-left:0;
}
body.athletesupport.parent_csr #athletesupport h2:before{
	display:none;
}
body.athletesupport.parent_csr #athletesupport a{
	color:#fff;
	text-decoration:underline;
}
body.athletesupport.parent_csr #athletesupport .black{color:#000}
body.athletesupport.parent_csr #athletesupport .red{color:#e50000}
body.athletesupport.parent_csr #athletesupport table th,
body.athletesupport.parent_csr #athletesupport table td{
	border:0;
	background:transparent;
}
/* topimage */
body.athletesupport.parent_csr #athletesupport #topimage{
	height:623px;
	background:url(img/company/athletesupport.jpg) left top no-repeat;
	background-size:cover;
	position:relative;
}
body.athletesupport.parent_csr #athletesupport #topimage h1{
	margin:0;
	padding:0;
	font-size:62px;
	font-weight:bold;
	line-height:1;
	transform:skewX(-10deg) rotate(-6deg);
	position:absolute;
	left:22px;
	top:34px;
}
body.athletesupport.parent_csr #athletesupport #topimage h1 span{
	font-size:50px;
}
body.athletesupport.parent_csr #athletesupport #topimage p{
	display:block;
	/*width:calc(100% - 80px);*/
	padding:10px 40px;
	font-size:18px;
	font-weight:bold;
	position:absolute;
	left:0;
	bottom:0;
}
/* about */
body.athletesupport.parent_csr #athletesupport #about{
	margin:40px 0 0;
	padding-bottom:111px;
	position:relative;
}
body.athletesupport.parent_csr #athletesupport #about:after{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:370px #2a3c70 solid;
	border-left:370px #2a3c70 solid;
	border-right:370px #f28300 solid;
	border-bottom:370px #f28300 solid;
	transform:scaleY(0.15);
	transform-origin:bottom;
	position:absolute;
	bottom:0;
	left:0;
}
body.athletesupport.parent_csr #athletesupport #about h2{
	margin:0 40px 0 5px;
	padding:0 0 12px 40px;
	border-bottom:2px #00a0e9 solid;
	font-size:36px;
	font-weight:bold;
	font-weight:900;
	letter-spacing:3px;
	line-height:1;
	transform:skewX(-10deg);
}
body.athletesupport.parent_csr #athletesupport #about h2 span+span{
	display:inline-block;
	margin-left:6px;
}
body.athletesupport.parent_csr #athletesupport #about h3{
	margin:12px 40px 7px;
	font-size:18px;
	font-weight:normal;
}
body.athletesupport.parent_csr #athletesupport #about p{
	margin:0 40px;
	font-size:14px;
}
/* license */
body.athletesupport.parent_csr #athletesupport #license{
	margin:0;
	padding:0 40px 141px;
	background:#f28300;
	position:relative;
}
body.athletesupport.parent_csr #athletesupport #license:after{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:370px #f28300 solid;
	border-left:370px #f28300 solid;
	border-right:370px #2a3c70 solid;
	border-bottom:370px #2a3c70 solid;
	transform:scaleY(0.15);
	transform-origin:bottom;
	position:absolute;
	bottom:0;
	left:0;
}
body.athletesupport.parent_csr #athletesupport #license h2{
	margin:0 0 14px;
	font-size:48px;
	font-weight:bold;
	line-height:1;
	transform:skewX(-10deg);
}
body.athletesupport.parent_csr #athletesupport #license .athlete{
	margin:0;
	padding:20px 0 30px;
	background:#2a3c70;
	position:relative;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .inner{
	position:relative;
}
body.athletesupport.parent_csr #athletesupport #license .athlete>img{
	position:absolute;
	right:-23px;
	top:20px;
}
body.athletesupport.parent_csr #athletesupport #license .athlete+.athlete .bike{
	right:-33px;
}
body.athletesupport.parent_csr #athletesupport #license .athlete+.athlete{
	margin-top:37px;
	position:relative;
}
body.athletesupport.parent_csr #athletesupport #license .athlete h3{
	display:inline-block;
	margin:0;
	padding:0 0 8px 34px;
	border-bottom:1px #00a0e9 solid;
	font-size:28px;
	font-weight:normal;
	line-height:1;
	font-family:游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}
body.athletesupport.parent_csr #athletesupport #license .athlete h3 ins{
	display:inline-block;
	margin-left:12px;
	text-decoration:none;
	font-size:16px;
	font-family:'Roboto Condensed', sans-serif;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .intro{
	margin:30px 40px 20px;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .intro:after{
	display:block;
	content:"";
	clear:both;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .intro img{
	float:left;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .intro table{
	float:left;
	width:calc(100% - 240px);
	margin-left:50px;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .intro table th,
body.athletesupport.parent_csr #athletesupport #license .athlete .intro table td{
	font-size:14px;
	font-weight:normal;
	text-align:left;
	padding:3px 0;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .intro table th{
	width:100px;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .text,
body.athletesupport.parent_csr #athletesupport #license .athlete .record,
body.athletesupport.parent_csr #athletesupport #license .athlete .comment{
	margin:0 40px;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .record h4{
	margin:30px 0 10px;
	font-size:14px;
	font-weight:normal;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .record table th,
body.athletesupport.parent_csr #athletesupport #license .athlete .record table td,
body.athletesupport.parent_csr #athletesupport #license .athlete .comment table th,
body.athletesupport.parent_csr #athletesupport #license .athlete .comment table td{
	padding:0;
	font-size:12px;
	font-weight:normal;
	text-align:left;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .record table th,
body.athletesupport.parent_csr #athletesupport #license .athlete .comment table th{
	width:162px;
}
body.athletesupport.parent_csr #athletesupport #license .athlete .comment h4{
	margin:30px 0 10px;
	font-size:12px;
	font-weight:normal;
}
/* trial */
body.athletesupport.parent_csr #athletesupport #trial h2{
	margin:0 40px 0 5px;
	padding:0 0 12px 40px;
	border-bottom:2px #00a0e9 solid;
	font-size:48px;
	font-weight:bold;
	font-weight:900;
	letter-spacing:3px;
	line-height:1;
	transform:skewX(-10deg);
}
body.athletesupport.parent_csr #athletesupport #trial h3{
	margin:20px 40px 0;
	font-size:28px;
	font-weight:bold;
	font-weight:900;
	letter-spacing:3px;
	line-height:1.5;
	transform:skewX(-10deg);
}
body.athletesupport.parent_csr #athletesupport #trial h3 span{
	font-size:36px;
}
body.athletesupport.parent_csr #athletesupport #trial table{
	width:calc(100% - 80px);
	margin:10px 40px;
	border-collapse:collapse;
}
body.athletesupport.parent_csr #athletesupport #trial table th,
body.athletesupport.parent_csr #athletesupport #trial table td{
	padding:3px 16px;
	border:1px #fff solid;
	font-size:16px;
	font-weight:normal;
	text-align:center;
}
body.athletesupport.parent_csr #athletesupport #trial table td.l{text-align:left}
body.athletesupport.parent_csr #athletesupport #trial table td.r{text-align:right}
body.athletesupport.parent_csr #athletesupport #trial p{
	margin:16px 40px 0;
	font-size:14px;
}

/* company - csr - marukuru
-----------------------------------------------------------*/
body.marukuru.parent_csr #marukuru .inner{
	max-width:740px;
}
body.marukuru.parent_csr #marukuru #content{
  position: relative;
  font-size: 13px;
  background: url(img/company/marukuru/background_01.jpg) no-repeat center top #ffffff;
  background-size:contain;
  zoom: 1.158;
  line-height: 1.4;
}

body.marukuru.parent_csr #marukuru ul.cosponsor_01 {
  width: 370px;
  height: 32px;
  margin: 5px auto 0;
  padding: 0px;
  text-align: center;
}

body.marukuru.parent_csr #marukuru ul.cosponsor_02 {
  width: 370px;
  height: 12px;
  margin: 0 auto;
  padding: 0px;
  text-align: center;
}

body.marukuru.parent_csr #marukuru .cosponsor_01 li,
body.marukuru.parent_csr #marukuru .cosponsor_02 li {
  float: left;
  padding: 0px 10px !important;
  line-height: 10px !important;
}

body.marukuru.parent_csr #marukuru .cosponsor_01 li.logo_01 {
  line-height: 28px !important;
}

body.marukuru.parent_csr #marukuru .cosponsor_01 li.logo_02 {
  line-height: 23px !important;
}

body.marukuru.parent_csr #marukuru .marukuru_contents {
  padding: 885px 0px 0px 0px;
}

body.marukuru.parent_csr #marukuru .marukuru_contents h2 {
  font-size: 195%;
  text-align: center;
  padding:0;
}
body.marukuru.parent_csr #marukuru .marukuru_contents h2:before{
	display:none;
}

body.marukuru.parent_csr #marukuru .marukuru_contents .privilege {
  width: 380px;
  height: 80px;
  margin: 10px auto;
  padding: 5px 0px 0px 90px;
}

body.marukuru.parent_csr #marukuru .marukuru_contents .priv01 {
  background: url(img/company/marukuru/privilege_01.png) no-repeat left top !important;
}

body.marukuru.parent_csr #marukuru .marukuru_contents .priv02 {
  background: url(img//company/marukuru/privilege_02.png) no-repeat left top;
}

body.marukuru.parent_csr #marukuru .marukuru_contents .privilege dt {
  font-weight: bold;
  font-size: 150%;
  color: #e85377;
}

body.marukuru.parent_csr #marukuru .marukuru_contents .privilege dd {
  padding-top: 5px;
}

body.marukuru.parent_csr #marukuru .btn {
	margin: 15px auto 0;
	text-align: center;
}

body.marukuru.parent_csr #marukuru .content {
  width: 640px;
  height: 639px;
  background: url(img/company/marukuru/background_02.jpg) no-repeat center 65px;
}

body.marukuru.parent_csr #marukuru .content h3 {
  width: 530px;
  margin: 40px 50px 20px 60px;
  font-weight: bold;
  font-size: 200%;
  text-align: center;
  color: #e85377;
  padding: 3px 0px;
  border-top: solid 1px #e85377;
  border-bottom: solid 1px #e85377;
}

body.marukuru.parent_csr #marukuru .content .cont_01,
body.marukuru.parent_csr #marukuru .content .cont_02{
	max-width:530px;
	margin:0 auto;
}
body.marukuru.parent_csr #marukuru .content .cont_01 div{
	width:calc(50% - 5px);
}
body.marukuru.parent_csr #marukuru .content .cont_01 .right{
	margin-left:10px;
}
body.marukuru.parent_csr #marukuru .content .cont_02 div{
	width:calc(50% - 5px);
}
body.marukuru.parent_csr #marukuru .content .cont_02 .left{
	position:relative;
}
body.marukuru.parent_csr #marukuru .content .cont_02 .left a{
	display:block;
	width:170px;
	height:16px;
	position:absolute;
	left:10px;
	top:95px;
}
body.marukuru.parent_csr #marukuru .content .cont_02 .right{
	margin-left:10px;
}
body.marukuru.parent_csr #marukuru .content_02{
	clear:both;
	padding:35px 0 70px;
	background: url(img/company/marukuru/background_03.jpg) no-repeat center bottom;
	background-size: contain;
}
body.marukuru.parent_csr #marukuru .content_02 h3 {
	width:530px;
	margin:0 auto;
	padding: 5px;
	font-weight: bold;
	font-size: 120%;
	color:#fff;
	background-color: #e85377;
}

body.marukuru.parent_csr #marukuru .content_02 dl {
  width: 255px;
  border-bottom: dotted 2px #e85377;
  position: relative;
}

body.marukuru.parent_csr #marukuru .content_02 dl.left {
  margin: 10px 0px 0px 55px;
}

body.marukuru.parent_csr #marukuru .content_02 dl.right {
  margin: 10px 55px 0px 0px;
}

body.marukuru.parent_csr #marukuru .content_02 dt {
  margin-top: 5px;
}

body.marukuru.parent_csr #marukuru .content_02 dd {
	margin:0;
  font-size: 150%;
  font-weight: bold;
  padding: 3px 0px 10px 0px;
}

body.marukuru.parent_csr #marukuru .content_02 .img_01 img{
  position: absolute;
  height: 97px;
  width: 66px;
  top: 0px;
  right: 0px;
}

body.marukuru.parent_csr #marukuru .content_02 .img_02 img{
  position: absolute;
  height: 65px;
  width: 77px;
  bottom: 10px;
  right: 0px;
}

body.marukuru.parent_csr #marukuru .content_02 .img_04 img{
  position: absolute;
  height: 40px;
  width: 57px;
  bottom: 10px;
  right: 20px;
}

body.marukuru.parent_csr #marukuru .content_02 dl.none{
	border:0;
}
body.marukuru.parent_csr #marukuru .content_02 dl.none img{
  border-bottom: none;
}

body.marukuru.parent_csr #marukuru .content_03 {
  width: 640px;
  margin-top: -30px;
  background: url(img/company//marukuru/finepic_back.png) no-repeat 445px top;
}

body.marukuru.parent_csr #marukuru .content_03 .finepic {
	margin:0 0 0 55px;
	position: relative;
}
body.marukuru.parent_csr #marukuru .content_03 .finepic:before{
	display:block;
	content:"";
	width:140px;
	height:54px;
	border-radius:0 6px 6px 0;
	background:#e95377;
	position:absolute;
	left:100%;
	top:26px;
}

body.marukuru.parent_csr #marukuru .content_03 .finepic_01 {
  margin: 0px 0px 0px 60px;
}

body.marukuru.parent_csr #marukuru .content_03 .jouken {
  padding-left: 53px;
  width: 380px;
}

body.marukuru.parent_csr #marukuru .content_03 .jouken span {
  font-size: 90%;
  display: block;
  padding: 5px 0px 0px 1em;
  text-indent: -1em;
}

body.marukuru.parent_csr #marukuru .content_03 .pos{
	position:absolute;
	right:0;
}
body.marukuru.parent_csr #marukuru .content_03 .syumoku {
  width: 115px;
  margin: 40px 75px 0px 0px;
  text-align: center;
  padding: 1px 0px;
  color: #ffffff;
  background-color: #000000;
}

body.marukuru.parent_csr #marukuru .content_03 .syumoku p {
  text-align: left;
  font-size: 90%;
  color: #000000;
  padding: 5px;
  border: solid 2px #000000;
  background-color: #ffffff;
}

/* company - csr - 50thevent
-----------------------------------------------------------*/
body.event50th.parent_csr section .inner{
	max-width:740px;
}

/* company - csr - youpure
--------------------------------------------------*/
body.youpure.parent_csr section .inner{
	max-width:740px;
}
body.youpure.parent_csr section a{
	text-decoration:underline;
}
body.youpure.parent_csr section h3{
	margin:20px 0;
	font-size:20px;
	font-weight:normal;
}
body.youpure.parent_csr section h3+p{
	margin:2em 0;
}
body.youpure.parent_csr section .box{
	margin:54px 0;
	padding:40px;
	border-radius:10px;
	background:#fff;
	box-shadow:0 3px 30px rgb(0 0 0 / 16%);
}
body.youpure.parent_csr section .box .left{
	width:400px;
}
body.youpure.parent_csr section .box h3{
	margin:0 0 1em;
	font-size:18px;
}
body.youpure.parent_csr section .box p{
	margin-top:3em;
}
body.youpure.parent_csr section .box p a+a{
	margin-left:1.5em;
}
body.youpure.parent_csr section .box .right{
	width:230px;
	text-align:center;
}
body.youpure.parent_csr #backnumber ul li{
	width:calc((100% - 216px) / 4);
	margin-left:72px;
}
body.youpure.parent_csr #backnumber ul li:nth-of-type(4n+1){
	clear:both;
	margin-left:0;
}
body.youpure.parent_csr #backnumber ul li:nth-of-type(n+5){
	margin-top:36px;
}
body.youpure.parent_csr #backnumber ul li p{
	margin:0;
}

/* student
-----------------------------------------------------------*/
body.student section+section{
	margin-top:120px;
}
body.student  .school_link li{
	width:calc((100% - 120px) / 2);
}
body.student  .school_link li+li{
	margin-left:60px;
}
body.student  .school_link li a{
	display:block;
	padding:35px 0;
	text-align:center;
	box-shadow:0 3px 30px rgb(0 0 0 / 16%);
	font-size:20px;
	font-weight:bold;
}
body.student  .school_link li a:before{
	right:20px;
}
body.student  .school_link li a:after{
	right:27px;
}
/* title */
body.student #title{
	background-image:url(img/student/studentTitle.jpg);
	height:500px;
}
body.student #title>div{
	width:440px;
}
body.student #title h1{
	width:256px;
}
body.student #title h1:before{
	background-image:url(img/common/studentTitle.png);
	width:584px;
	height:437px;
	left:-196px;
	top:-348px;
}
/* student_menu */
body.student #student_menu h1{
	margin:0 0 20px;
	font-size:40px;
	font-weight:normal;
}
body.student #student_menu h2{
	margin-bottom:54px;
}
/* instructor */
body.student #instructor #tab{
	border-bottom:1px #d96845 solid;
}
body.student #instructor #tab li{
	width:280px;
	padding:4px 0;
	border:1px #d96845 solid;
	border-bottom:0;
	background:#fff;
	color:#d96845;
	text-align:center;
	cursor:pointer;
}
body.student #instructor #tab li.current{
	background:#d96845;
	color:#fff;
	cursor:initial;
}
body.student #instructor #tab li+li{
	margin-left:10px;
}
body.student #instructor #tab_contents{
	margin-top:32px;
	position:relative;
}
body.student #instructor #tab_contents ul{
	position:absolute;
	left:0;
	top:0;
	z-index:-1;
	opacity:0;
	transition:all .3s ease-in-out;
}
body.student #instructor #tab_contents ul.current{
	position:static;
	z-index:2;
	opacity:1;
	transition:all .3s ease-in-out;
}
body.student #instructor #tab_contents li{
	width:calc((100% - 108px) / 3);
	margin-left:54px;
}
body.student #instructor #tab_contents li:nth-of-type(3n+1){
	margin-left:0;
	clear:both;
}
body.student #instructor #tab_contents li:nth-of-type(n+4){
	margin-top:50px;
}
body.student #instructor #tab_contents li .left{
	width:110px;
}
body.student #instructor #tab_contents li .right{
	width:calc(100% - 126px);
	font-size:13px;
}
body.student #instructor #tab_contents li .right h3{
	font-size:15px;
	font-weight:normal;
	margin:0;
}
/* service */
body.student #service .notice{
	margin-bottom:36px;
	font-size:13px;
}
body.student #service dl{
	max-width:800px;
	margin:80px 0 0 0;
}
body.student #service dl dt{
	margin-bottom:15px;
	padding-bottom:6px;
	border-bottom:1px #ddd solid;
}
body.student #service dl dd+dt{
	margin-top:40px;
}
body.student #service dl dd{
	margin:0;
}
body.student #service dl dd:nth-of-type(1) img{
	width:600px;
}
body.student #service dl dd .left{
	width:190px;
}
body.student #service dl dd .right{
	width:calc(100% - 220px);
}

/* student - school
-----------------------------------------------------------*/
/* title */
body.parent_student #title{
	background-image:url(img/student/studentTitle.jpg);
}
body.parent_student #title>div{
	width:364px;
}
body.parent_student #title h1{
	width:184px;
}
body.parent_student #title h1:before{
	background-image:url(img/common/studentTitle.png);
	width:375px;
	height:280px;
	left:-146px;
	top:-222px;
}
/* schedule */
body.parent_student section+section{
	margin-top:60px;
}
body.parent_student .stage1,
body.parent_student .stage2,
body.parent_student .graduation,
body.parent_student .completion{
	display:block;
	width:69px;
	height:69px;
	line-height:68px;
	text-align:center;
	background:#e19345;
	color:#fff;
}
body.parent_student .stage1,
body.parent_student .stage2{
	font-size:22px;
}
body.parent_student .stage2{
	background:#bf3675;
}
body.parent_student .graduation{
	background:#d96845;
}
body.parent_student .completion{
	background:#0f67a5;
}
body.parent_student .monthSelect{
	height:100px;
	margin-top:30px;
	border:1px #ddd solid;
	border-bottom:0;
	text-align:center;
	position:relative;
}
body.parent_student .monthSelect .month{
	width:160px;
	margin:26px auto;
	position:relative;
}
body.parent_student .monthSelect .month select{
	border:0;
}
body.parent_student .monthSelect .month:before{
	display:block;
	content:"";
	width:0;
	height:0;
	border-top:8px #000 solid;
	border-left:8px transparent solid;
	border-right:8px transparent solid;
	position:absolute;
	right:20px;
	top:calc(50% - 4px);
	z-index:-1;
}
body.parent_student .monthSelect .prev,
body.parent_student .monthSelect .next{
	border-radius:5px;
	position:absolute;
	top:0;
	height:100%;
	cursor:pointer;
}
body.parent_student .monthSelect .prev{
	left:20px;
}
body.parent_student .monthSelect .next{
	/*padding:9px 49px 9px 24px;*/
	right:20px;
}
body.parent_student .monthSelect .prev:before,
body.parent_student .monthSelect .next:before{
	display:block;
	content:"";
	width:20px;
	height:20px;
	border-radius:100%;
	background: #d96845;
	background: -moz-linear-gradient(left, #d96845 0%, #e19345 100%);
	background: -webkit-linear-gradient(left, #d96845 0%,#e19345 100%);
	background: linear-gradient(to right, #d96845 0%,#e19345 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d96845', endColorstr='#e19345',GradientType=1 );
	position:absolute;
	left:13px;
	top:50%;
	transform:translateY(-50%);
}
body.parent_student .monthSelect .next:before{
	left:auto;
	right:13px;
}
body.parent_student .monthSelect .prev:after,
body.parent_student .monthSelect .next:after{
	display:block;
	content:"";
	width:5px;
	height:9px;
	background:url(img/common/arrow.svg) center center no-repeat;
	background-size:contain;
	position:absolute;
	left:20px;
	top:50%;
	transform:translateY(-50%);
}
body.parent_student .monthSelect .prev:after{
	transform:rotate(180deg) translateY(4px);
}
body.parent_student .monthSelect .next:after{
	left:auto;
	right:20px;
}
/* scheduleTable */
body.parent_student main .scheduleTable{
	width:100%;
	height:auto;
	overflow-x:scroll;
	border-right:1px #ddd solid;
}
body.parent_student main .scheduleTable.hide{
	opacity:0;
	position:absolute;
	z-index:-1;
	width:0;
	height:0;
}
body.parent_student main .scheduleTable table{
	width:auto;
}
body.parent_student main table th{
	padding:0;
	border:1px #ddd solid;
}
body.parent_student main table th span{
	display:block;
	float:left;
	width:219px;
	height:69px;
	line-height:68px;
	text-align:center;
	font-weight:normal;
	background:#f7f7f7;
}
body.parent_student main table tr:first-child th span{
	background:#fff;
}
body.parent_student main table td{
	padding:0;
	border:1px #ddd solid;
	vertical-align:middle;
	text-align:center;
}
body.parent_student main table tr:first-child td span{
	display:block;
	float:left;
	width:69px;
	height:69px;
	padding-top:16px;
	line-height:1.4;
	text-align:center;
}
body.parent_student main table th.fixcol{
	position:-webkit-sticky;
	position:sticky;
	left:0;
	z-index:3;
}
body.parent_student main table th.fixcol:before{
	display:block;
	content:"";
	width:1px;
	height:100%;
	background:#ddd;
	position:absolute;
	left:-1px;
	top:0;
	z-index:2;
}
body.parent_student main table th.fixcol:after{
	display:block;
	content:"";
	width:100%;
	height:1px;
	background:#ddd;
	position:absolute;
	left:0;
	top:-1px;
	z-index:2;
}
body.parent_student main table td.sat{
	background:#f2f7fb;
}
body.parent_student main table td.sun{
	background:#fcf4f8;
}
body.parent_student main table td.gray{
	background:#eee;
}
body.parent_student main table td.close{
	position:relative;
}
body.parent_student main table td.close:after{
	display:block;
	content:"休校日";
	width:100%;
	height:699px;
	background:#f1f1f1;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	letter-spacing:16px;
	line-height:67px;
	position:absolute;
	top:calc(100% + 1px);
	left:0;
	z-index:1;
}
body.parent_student main #schedule3 table td.close:after{
	height:139px;
}
body.parent_student main .notice{
	margin-top:20px;
	text-align:right;
}

/* news - archive
-----------------------------------------------------------*/
/* title */
body.post-type-archive-news #title{
	background-image:url(img/news/newsTitle.jpg);
	height:500px;
}
body.post-type-archive-news #title>div{
	width:575px;
}
body.post-type-archive-news #title h1,
body.post-type-archive-news #title .h1{
	width:396px;
}
body.post-type-archive-news #title h1:before,
body.post-type-archive-news #title .h1:before{
	background-image:url(img/common/newsTitle.png);
	width:402px;
	height:319px;
	left:-200px;
	top:-270px;
}
/* news */
body.post-type-archive-news #news .nav li{
	width:20%;
}
body.post-type-archive-news #news .nav li a{
	display:block;
	width:100%;
	height:80px;
	line-height:80px;
	text-align:center;
}
body.post-type-archive-news #news .nav li.current a{
	color:#fff;
	background:#d96845;
}
body.post-type-archive-news #news .list{
	margin-top:80px;
}
body.post-type-archive-news #news .list li{
	width:calc((100% - 60px) / 3);
	margin-left:30px;
}
body.post-type-archive-news #news .list li:nth-of-type(3n+1){
	margin-left:0;
	clear:both;
}
body.post-type-archive-news #news .list li:nth-of-type(n+4){
	margin-top:74px;
}
body.post-type-archive-news #news .list .image{
	width:100%;
	height:226px;
}
body.post-type-archive-news #news .list .image img{
	width:100%;
}
body.post-type-archive-news #news .list .text{
	width:calc(100% - 50px);
	margin:-38px auto 0;
	padding:12px 18px 24px;
	box-shadow:0 3px 30px rgb(0 0 0 / 16%);
	position:relative;
}
body.post-type-archive-news #news .list .text .date{
	display:inline-block;
	margin:0 1.5em;
	font-size:13px;
}
body.post-type-archive-news #news .list .text .category{
	display:inline-block;
	padding:1px 8px;
	font-size:13px;
	border:1px #ddd solid;
}
body.post-type-archive-news #news .list .text .new{
	display:inline-block;
	margin-left:8px;
	color:#d96845;
	transition:color .3s ease-in-out;
}
body.post-type-archive-news #news .list a:hover .text .new{
	color:#fff;
	transition:color .3s ease-in-out;
}
body.post-type-archive-news #news .list .text .title{
	margin-top:1em;
}

/* news - single
-----------------------------------------------------------*/
/* title */
body.single-news main{
	font-size:19px;
}
body.single-news #title{
	background-image:url(img/news/newsTitle.jpg);
}
body.single-news #title>div{
	width:575px;
}
body.single-news #title .h1{
	width:396px;
}
body.single-news #title .h1:before{
	background-image:url(img/common/newsTitle.png);
	width:402px;
	height:319px;
	left:-200px;
	top:-230px;
}
/* news */
body.single-news main .inner{
	max-width:960px;
}
body.single-news main h1{
	margin:0;
	padding:0;
	font-size:30px;
	font-weight:normal;
}
body.single-news main .meta{
	
}
body.single-news main .meta .date{
	display:inline-block;
	margin:0 1.5em;
	font-size:13px;
}
body.single-news main .meta .category{
	display:inline-block;
	padding:1px 8px;
	font-size:13px;
	border:1px #ddd solid;
}
body.single-news main .sns{
	margin-bottom:50px;
}
body.single-news #news article h2{
	margin:1em 0;
}
body.single-news #news .link{
	margin-top:90px;
	text-align:right;
}
body.single-news #news .link a{
	display:inline-block;
	padding-right:36px;
}
body.single-news #news .toc,
body.single-news #news #ez-toc-container{
	padding: 0.5em 2em;
	margin: 2em 0;
	border: solid 1px #000000;
	border-radius: 5px;
	color: orange;
}
body.single-news #news .toc h3{
	margin:0 0 .5em;
	color:#000;
	font-size:22px;
}
body.single-news #news .toc br{
	display:none;
}
body.single-news #news .toc p,
body.single-news #news #ez-toc-container nav{
	margin:0;
}
body.single-news #news .toc a{
	display:block;
	margin-bottom:.5em;
	padding-left:1em;
	font-weight:bold;
	font-size: 20px;
	color: #000;
}
body.single-news #news .toc a::before{
	display:inline-block;
	content:"";
	width:5px;
	height:5px;
	margin-right:.5em;
	background:#d96845;
	border-radius: 100%;
	vertical-align: 2px;
}
body.single-news #news #ez-toc-container .ez-toc-title-container{
	margin:0 0 1em;
}
body.single-news #news #ez-toc-container .ez-toc-title{
	color:#000;
	font-size:22px;
}
body.single-news #news #ez-toc-container nav li{
	display:block;
	margin-bottom:1em;
	padding-left:1em;
}
body.single-news #news #ez-toc-container nav a{
	font-weight:bold;
	font-size: 20px;
	color: #000;
	text-decoration:none;
}
body.single-news #news #ez-toc-container nav li::before{
	display:inline-block;
	content:"";
	width:5px;
	height:5px;
	margin-right:0.5em;
	background:#d96845;
	border-radius: 100%;
	vertical-align: 2px;
}
/* 202304 */
body.single-news main .tag img{
	width:52px;
	vertical-align:middle;
	margin-right:10px;
}
body.single-news main .tag a{
	color:#707070;
	border-radius:3px;
	border:1px #707070 solid;
	padding:3px 5px;
	font-size: 13px;
	margin-right:10px;
}
/* column_cv */
.column_cv{
	padding:10px 40px;
	text-align:center;
	color:#dc7347;
	background-color:#f4f1ea;
	font-weight:bold;
	z-index:2;
}
.column_cv h3{
	letter-spacing:0.15em;
	margin:10px 0;
	font-size:24px;
}
.column_cv a{
	color:#dc7347;
}
.column_cv p{
	font-size:12px;
}
.column_cv ul{
	width:100%;
	max-width:790px;
	margin:20px auto;
}
.column_cv ul li{
	width:calc((100% - 40px) / 3);
}
.column_cv ul li+li{
	margin-left:20px;
}
.column_cv ul li a{
	display:block;
	width:100%;
	height:100px;
	line-height:100px;
	background-color:#fff;
	text-decoration:none;
	font-size:22px;
}
.column_cv ul li a:hover img,
.column_cv ul li a:hover span{
	opacity:0.7;
}
.column_cv ul li a img{
	display:inline-block;
	margin-right:20px;
	vertical-align:text-bottom;
	width:37px;
}
.column_cv dl{
	position:relative;
	display:flex;
	flex-flow:row wrap;
	margin:0 auto;
	font-size:20px;
	font-weight:bold;
	width:40%;
	letter-spacing:0.1em;
}
.column_cv dt{
	width:30%;
}
.column_cv dd{
	margin-left:20px;
	text-align:left;
}
.column_cv dl img{
	display:inline-block;
	vertical-align:text-bottom;
	width:27px;
}
.column_cv dt span{
	display:block;
	font-size:11px;
	margin-top:-10px;
}

.snsList{
	display:flex;
	line-height:1;
	justify-content: center;
	margin: 50px 0;
}
.snsList .snsItem:not(:last-child){
	margin-right:8px;
}
.snsList .snsItem.hatena iframe{
	width:20px !important;
	height:20px !important;
}
.relativePosts h3{
	background:#f4f2ec;
	text-align: center;
	letter-spacing: 2px;
	font-size:24px;
	font-weight:bold;
	margin:50px 0 40px;
}
.relativePosts .flex{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
}
.relativePosts .flex a{
	display:block;
	width:calc((100% - 80px) / 3);
	padding:10px;
	border-radius:10px;
	box-shadow:0px 1px 10px 3px rgba(0, 0, 0, 0.2);
	background:#fff;
}
/*
.relativePosts .flex a:nth-of-type(4){
	display:none;
}
*/
.relativePosts .flex a+a{
	margin-left:40px;
}
.relativePosts .flex a:nth-of-type(n+4){
	margin-top:40px;
}
.relativePosts .flex a:nth-of-type(4n){
	margin-left:0;
}
.relativePosts .flex a .image{
	display:block;
	width:100%;
	height:0;
	margin-bottom:8px;
	padding-top:74.42%;
	background-size:cover;
	background-position:center center;
	background-color:#dbdbdb;
}
.relativePosts .flex a .title{
	display:block;
	line-height:1.7;
}

/* faq - cv
-----------------------------------------------------------*/
.faq_cv{
	max-width:800px;
	margin:100px auto 0;
	text-align:center;
}
.faq_cv h3{
	margin:1em 0;
	font-size:18px;
	font-weight:normal;
}
.faq_cv a{
	display:block;
	max-width:400px;
	margin:0 auto;
	padding:20px 0;
	border:1px #000 solid;
}
.faq_cv hr{
	border:0;
	border-top:1px #ddd solid;
	margin:50px 0;
}
.faq_cv .tel{
	margin:0;
}
.faq_cv .tel ins{
	display:inline-block;
	text-decoration:none;
}
.faq_cv .tel ins+ins:before{
	display:inline-block;
	content:"/";
	margin:0 4px;
}
.faq_cv span{
	display:block;
	font-size:13px;
}

/* faq - faqbox
-----------------------------------------------------------*/
.faqbox{
	padding-bottom:32px;
	margin-bottom:45px;
	border-bottom:1px #ddd solid;
}
.faqbox h3{
	font-size:18px;
	font-weight:normal;
	margin-bottom:22px;
}
.faqbox div{
	display:block;
	max-height:52px;
	margin:0;
	font-size:15px;
	position:relative;
	overflow:hidden;
}
.faqbox div::after{
	display:block;
	content:"";
	width:100%;
	height:32px;
	position:absolute;
	left:0;
	bottom:0;
	background:rgba(255,255,255,.8);
	background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
}
.faqbox a{
	display:block;
	margin-top:26px;
	text-align:center;
	color:#D96845;
}

/* faq - archive
-----------------------------------------------------------*/
/* title */
body.post-type-archive-faq #title{
	background-image:url(img/faq/faqTitle.jpg);
	height:500px;
}
body.post-type-archive-faq #title>div{
	width:495px;
}
body.post-type-archive-faq #title h1{
	width:314px;
}
body.post-type-archive-faq #title h1:before{
	background-image:url(img/common/faqTitle.png);
	width:329px;
	height:270px;
	left:-163px;
	top:-226px;
}
body.post-type-archive-faq .dotbg:before{
	width:calc(50% + 260px);
	height:680px;
	top:-50px;
	left:calc(50% - 200px);
}
/* category */
body.post-type-archive-faq #category .inner{
	max-width:960px;
}
body.post-type-archive-faq #category ul{
	margin-bottom:128px;
}
body.post-type-archive-faq #category ul li{
	margin:0 10px 15px 0;
}
body.post-type-archive-faq #category ul li a{
	display:block;
	height:45px;
	line-height:45px;
	padding:0 25px;
	font-size:15px;
	background:#fff;
	border:1px #D96845 solid;
	border-radius:23px;
	color:#D96845;
}
body.post-type-archive-faq #category ul li a.current,
body.post-type-archive-faq #category ul li a:hover,
body.post-type-archive-faq #category ul li a:active{
	color:#fff;
	background:#d96845;
}

/* faq - single
-----------------------------------------------------------*/
/* title */
body.single-faq #title{
	background-image:url(img/faq/faqTitle.jpg);
}
body.single-faq #title>div{
	width:495px;
}
body.single-faq #title h1{
	width:314px;
}
body.single-faq #title h1:before{
	background-image:url(img/common/faqTitle.png);
	width:329px;
	height:270px;
	left:-163px;
	top:-226px;
}
body.single-faq .dotbg:before{
	width:calc(50% + 260px);
	height:1200px;
	top:-50px;
	left:calc(50% - 200px);
}
/* faq */
body.single-faq #faq .inner{
	max-width:960px;
}
body.single-faq #faq h1{
	font-size:18px;
	font-weight:normal;
	margin:0 0 8px;
	padding:22px 0 0;
}
body.single-faq #faq .catbox a{
	display:block;
	height:26px;
	line-height:25px;
	font-size:10px;
	padding:0 10px;
	color:#D96845;
	border:1px #D96845 solid;
	border-radius:26px;
}
body.single-faq #faq article{
	margin-top:32px;
}
body.single-faq #faq .link{
	margin-top:90px;
	text-align:center;
}
body.single-faq #faq .link a{
	display:inline-block;
	font-size:13px;
}
body.single-faq #relative{
	margin-top:136px;
}
body.single-faq #relative h2{
	padding:0;
	font-size:18px;
	font-weight:normal;
	text-align:center;
}
body.single-faq #relative h2::before{
	display:none;
}
body.single-faq #relative .relative_box{
	max-width:1312px;
	margin:20px auto;
	padding:50px;
	border:50px #F7F7F7 solid;
}
body.single-faq #relative .relative_box .faqbox:last-child{
	border-bottom:0;
}

/* form
-----------------------------------------------------------*/
body.formFormat main .inner{
	max-width:960px;
}
/* title */
body.formFormat #title{
	background:url(img/form/requestTitle.jpg);
}
body.formFormat #title>div{
	width:calc(50% + 60px);
}
body.formFormat #title h1{
	width:620px;
}
body.formFormat #title h1::before{
	background-image:url(img/common/requestTitle.png);
	width:543px;
	height:340px;
	left:-166px;
	top:-257px;
}
body.formFormat .dotbg:before{
	width:calc(50% + 260px);
	min-height:900px;
	top:-40px;
	left:calc(50% - 200px);
}

/* register
-----------------------------------------------------------*/
/* title */
body.register #title>div,
body.parent_register #title>div{
	width:574px;
}
body.register #title h1,
body.parent_register #title h1{
	width:394px;
}
/* description */
body.register #description p+p{
	margin:32px 0;
	padding:32px 0 64px;
	border-top:1px #ddd solid;
	border-bottom:1px #ddd solid;
}
body.register #description p+p b{
	margin:0 2em 0 0.5em;
}
body.register #description p+p a{
	/* color:#d9684	5; */
	color:red;
}
/* register */
body.register #register .sup{
	margin-top:10px;
	color:#bf3675;
}
body.register #register .selectbox{
	margin:0;
	width:400px;
}
body.register #register #cartype_box{
	display:none;
}
body.register #register #address1,
body.parent_register #register #address1{
	margin:20px 0;
}
body.register #register .str+.selectbox,
body.parent_register #register .str+.selectbox{
	margin:10px 0;
}
body.register #register #job_other,
body.register #register #yotei_other,
body.parent_register #register #job_other,
body.parent_register #register #yotei_other{
	margin-top:20px;
}
body.register #register #additional h3,
body.parent_register #register #additional h3{
	font-size:15px;
	font-weight:500;
	margin:40px 0 20px;
}
/* confirm */
body.parent_register .selectbox{
	width:auto;
	margin-right:1em;
	background:transparent;
}
body.parent_register #zip2address{
	display:none;
}

/* catalog
-----------------------------------------------------------*/
/* title */
body.catalog #title>div,
body.parent_catalog #title>div{
	width:574px;
}
body.catalog #title h1,
body.parent_catalog #title h1{
	width:394px;
}
/* description */
body.catalog #description .line{
	text-align:center;
	padding-bottom:20px;
	border-bottom:1px #ccc solid;
}
body.catalog #description .line a{
	display:inline-block;
	margin-top:10px;
}
body.catalog #description .line a img{
	width:200px;
}
/* catalog */
body.catalog #catalog .sup{
	margin-top:10px;
	color:#bf3675;
}
body.catalog #catalog .selectbox{
	margin:0;
	width:400px;
}
body.catalog #catalog #cartype_box{
	display:none;
}
body.catalog #catalog #address1,
body.parent_catalog #catalog #address1{
	margin:20px 0;
}
body.catalog #catalog .str+.selectbox,
body.parent_catalog #catalog .str+.selectbox{
	margin:10px 0;
}
body.catalog #catalog #job_other,
body.catalog #catalog #yotei_other,
body.parent_catalog #catalog #job_other,
body.parent_catalog #catalog #yotei_other{
	margin-top:20px;
}
/* confirm */
body.parent_register .selectbox{
	width:auto;
	margin-right:1em;
	background:transparent;
}
body.parent_register #zip2address{
	display:none;
}

/* contact
-----------------------------------------------------------*/
/* title */
body.contact #title>div,
body.parent_contact #title>div{
	width:490px;
}
body.contact #title h1,
body.parent_contact #title h1{
	width:310px;
}
/* description */
body.contact #description{
	text-align:center;
}
body.contact #description .line{
	padding-bottom:20px;
	border-bottom:1px #ccc solid;
}
body.contact #description .line a{
	display:inline-block;
	margin-top:10px;
}
body.contact #description .line a img{
	width:200px;
}
body.contact #description .course_cv{
	margin:50px 0;
	padding:32px 40px;
	border-radius:10px;
}
body.contact #description .course_cv ul li a{
    height:initial;
    padding:20px 0;
	line-height:2;
}
/* contact */
body.contact #contact .selectbox{
	margin:0;
	width:400px;
}
body.contact #contact #address1,
body.parent_contact #contact #address1{
	margin:20px 0;
}
/* confirm */
body.parent_contact .selectbox{
	width:auto;
	margin-right:1em;
	background:transparent;
}
body.parent_contact #zip2address{
	display:none;
}

/* at_freeform
-----------------------------------------------------------*/
/* description */
body.at_freeform #description dl{
	margin:32px 0 0;
	padding:16px 0 64px;
	border-top:1px #ddd solid;
	border-bottom:1px #ddd solid;
}
body.at_freeform #description dl dt{
	float:left;
	width:110px;
	margin:0;
	padding:16px 0;
}
body.at_freeform #description dl dd{
	float:left;
	width:calc(100% - 110px);
	margin:0;
	padding:16px 0;
}
body.at_freeform #description .course_cv{
	margin:50px 0;
	padding:32px 40px;
	border-radius:10px;
}
/* at_freeform */
body.at_freeform #at_freeform .cartype_select>span:nth-of-type(3) label:after{
	display:inline;
	content:"（上尾校のみ）";
}
body.at_freeform #at_freeform .selectbox{
	margin:0;
	width:400px;
}
body.at_freeform #at_freeform #address1,
body.parent_at_freeform #at_freeform #address1{
	margin:20px 0;
}
body.at_freeform #at_freeform .str+.selectbox,
body.parent_at_freeform #at_freeform .str+.selectbox{
	margin:10px 0;
}
body.at_freeform #at_freeform .day_select+.str,
body.parent_at_freeform #at_freeform .day_select+.str{
	margin-top:1em;
}
body.at_freeform #at_freeform .day_select>span:nth-of-type(3) label{
	position:relative;
}
body.at_freeform #at_freeform .day_select>span:nth-of-type(3) label:after{
	display:block;
	content:"※二輪車は日曜日は開催しておりません";
	width:22em;
	position:absolute;
	left:calc(100% + 1em);
	top:50%;
	transform:translateY(-50%);
}
/* confirm */
body.parent_at_freeform .selectbox{
	width:auto;
	margin-right:1em;
	background:transparent;
}
body.parent_at_freeform #zip2address{
	display:none;
}

/* houjin
-----------------------------------------------------------*/
/* title */
body.houjin #title>div,
body.parent_houjin #title>div{
	width:940px;
}
body.houjin #title h1,
body.parent_houjin #title h1{
	width:760px;
}
/* houjin */
body.houjin #houjin .license>span:nth-of-type(7) label:after{
	display:inline;
	content:"※複数の免許をお持ちの方は、全てご入力ください";
	margin-left:1em;
	font-size:13px;
}
body.houjin #houjin .title small{
	margin-left:2em;
	font-size:13px;
}
body.houjin #houjin .selectbox{
	margin:0;
	width:400px;
}
body.houjin #houjin #address1,
body.parent_houjin #houjin #address1{
	margin:20px 0;
}
/* confirm */
body.parent_houjin .selectbox{
	width:auto;
	margin-right:1em;
	background:transparent;
}
body.parent_houjin #zip2address{
	display:none;
}




/* company - privacy
-----------------------------------------------------------*/
/* title */
body.privacy #title{
	background-image:url(img/company/privacyTitle.jpg);
}
body.privacy #title>div{
	width:440px;
}
body.privacy #title h1{
	width:260px;
}

body.privacy #title h1:before{
	background-image:url(img/common/privacyTitle.png);
	width:590px;
	height:312px;
	left:-179px;
	top:-228px;
}
body.privacy .dotbg:before{
	width:calc(50% + 260px);
	height:984px;
	top:-50px;
	left:calc(50% - 200px);
}












/* elderlytraining */
#elderlytraining img{vertical-align:top}
#elderlytraining{
	color:#333;
	font-size:16px;
}
#elderlytraining #topimage{
	width:100%;
	height:0;
	padding-top:54.05%;
	background:url(img/elderlytraining/topimage.jpg) center center no-repeat;
	background-size:cover;
}
#elderlytraining #s12{margin-top:52px}
#elderlytraining #s12 div{
	clear:both;
	padding:16px 0 8px;
	font-size:14px;
}
.test #elderlytraining .right{margin-top:20px}
#elderlytraining #course{padding-top:72px}
#elderlytraining #course h2{
	margin-bottom:32px;
	padding:0 0 16px;
	font-size:30px;
	color:#ea536f;
	border-bottom:1px #ea536f solid;
	font-family:"ヒラギノ角ゴ Pro W4","Hiragino Kaku Gothic Pro","Osaka","メイリオ","ＭＳ Ｐゴシック","Helvetica",arial,sans-serif;
}
#elderlytraining #course dl{
	margin-top:20px;
	font-size:18px;
}
#elderlytraining #course dt{color:#ea536f}
#elderlytraining #course dd{
	float:left;
	width:calc((100% - 30px) / 3);
	margin-left:10px;
	display:block;
	color:#65bf97;
}
#elderlytraining #course dd:nth-child(1){color:#90c31f}
#elderlytraining #course dd:nth-child(2){color:#f39800}
#elderlytraining #course dd:nth-child(3){color:#ea536f}
#elderlytraining #course dd:nth-child(4){color:#796caf}
#elderlytraining #course dd:nth-child(5){color:#1fb8df}
#elderlytraining #course .notice1{
	margin-top:20px;
	font-size:14px;
}
#elderlytraining #course .red{color:#ea536f}
#elderlytraining #course .notice2{
	margin:30px 0 38px;
	padding:16px;
	font-size:14px;
	background:#eeeceb;
}
#elderlytraining #course .notice2 h3{
	margin:0;
	padding:0;
	font-weight:bold;
	font-size:14px;
}
#elderlytraining #course .need{
	padding:12px 16px;
	border:1px #ea536f solid;
	font-size:14px;
}
#elderlytraining #course .need h3{
	color:#ea536f;
	font-size:14px;
	font-weight:bold;
}
#elderlytraining section.faq{
	margin-top:100px;
	padding:50px 36px;
	border-radius:6px;
	border:2px #ea536f dashed;
	position:relative;
}
#elderlytraining section.faq h3{
	width:80%;
	margin:0;
	padding:10px 32px;
	background:#fff;
	font-size:20px;
	position:absolute;
	left:50%;
	top:-23px;
	transform:translateX(-50%);
}
#elderlytraining section.faq h3 img{
	display:inline-block;
	margin:0 16px;
	vertical-align:middle;
}
#elderlytraining section.faq .q,
#elderlytraining section.faq .a{
	padding:16px 0 16px 52px;
	color:#ea536f;
	font-size:18px;
	font-weight:bold;
	background:url(img/elderlytraining/q.png) left center no-repeat;
}
#elderlytraining section.faq .a{
	border-top:1px #6f603e dotted;
	color:#333;
	font-weight:normal;
	background-image:url(img/elderlytraining/a.png);
}
#elderlytraining section.faq .a+.q{margin-top:42px}
#elderlytraining #o2021{
	margin-top:80px;
}
#elderlytraining #o2021 .image{
	width:100%;
	height:0;
	padding-top:56.75%;
	background:url(img/elderlytraining/2021image.jpg) center center no-repeat;
	background-size:cover;
}
#elderlytraining #o2021 h2{
	margin:56px 0 32px;
	padding-bottom:22px;
	color:#ea536f;
	font-size:38px;
	line-height:1.6;
	border-bottom:1px #ea536f solid;
	font-family:"ヒラギノ角ゴ Pro W4","Hiragino Kaku Gothic Pro","Osaka","メイリオ","ＭＳ Ｐゴシック","Helvetica",arial,sans-serif;
	position:relative;
}
#elderlytraining #o2021 h2:before{
	display:block;
	content:"";
	width:97px;
	height:147px;
	background:url(img/elderlytraining/2021.png) center center no-repeat;
	position:absolute;
	right:70px;
	bottom:70px;
	z-index:-1;
}
#elderlytraining #o2021 div{
	font-size:18px;
	font-weight:bold;
}
/*#elderlytraining #s5 h2,
#elderlytraining #s6 h2,
#elderlytraining #s7 h2{
	margin:70px 0 32px;
	padding:0 0 16px 60px;
	font-size:30px;
	color:#ea536f;
	background:url(img/elderlytraining/h2.png) left 5px no-repeat;
	font-family:"ヒラギノ角ゴ Pro W4","Hiragino Kaku Gothic Pro","Osaka","メイリオ","ＭＳ Ｐゴシック","Helvetica",arial,sans-serif;
	border-bottom:1px #ea536f solid;
}*/
#elderlytraining #s5 q,
#elderlytraining #s6 q,
#elderlytraining #s7 q{
	display:block;
	font-size:14px;
	color:#555;
}
#elderlytraining #s5 .left{width:calc(100% - 420px)}
#elderlytraining #s6 .left{width:calc(100% - 424px)}
#elderlytraining #s7 .left{width:calc(100% - 240px)}
#elderlytraining #s7 .description{
	clear:both;
	margin:40px 0;
	padding:16px 20px;
	border:2px #8fc320 solid;
}
#elderlytraining #s7 .description h3{
	margin:0;
	padding:0;
	font-size:20px;
	font-weight:bold;
}
#elderlytraining #s7 .description ul{
	margin:0;
	padding:0;
	list-style:none;
}
#elderlytraining #s7 .description ul li{
	padding-left:18px;
	position:relative;
}
#elderlytraining #s7 .description ul li:before{
	display:block;
	content:"";
	width:14px;
	height:14px;
	border-radius:100%;
	background:#8fc320;
	position:absolute;
	left:0;
	top:6px;
}
#elderlytraining #s7 .description q{
	font-size:14px;
	color:#555;
}






@media screen and (max-width: 680px) {
	#elderlytraining .left, #elderlytraining .right{float:none}
	#elderlytraining #topimage{
		width:284px;
		height:0;
		padding-top:115.625%;
		background-image:url(img/elderlytraining/topimage_sp.jpg);
	}
	#elderlytraining #s12{margin-top:20px}
	#elderlytraining #s12 .right,
	#elderlytraining #s34 .right{margin-top:20px}

	#elderlytraining #course h2{
		margin-bottom:20px;
		font-size:20px;
		background:transparent;
	}

	#elderlytraining #course dd{width:100%}
	#elderlytraining #course .notice1 br{display:none}
	#elderlytraining #course .notice1 span{
		display:block;
		margin-top:10px;
	}

	#elderlytraining section.faq{
		margin-top:80px;
		padding:56px 16px 32px;
	}
	#elderlytraining section.faq h3{
		padding:0 10px;
		font-size:20px;
		top:-40px;
	}
	#elderlytraining section.faq h3 img{
		margin:0 8px;
		width:30px;
		height:30px;
	}
	#elderlytraining section.faq .q,
	#elderlytraining section.faq .a{
		padding:10px 0 10px 36px;
		font-size:16px;
		background-size:30px 30px;
	}
	#elderlytraining section.faq .a+.q{margin-top:22px}

	#elderlytraining #o2021{margin-top:60px}
	#elderlytraining #o2021 .image{
		width:100%;
		height:0;
		padding-top:115.625%;
		background-image:url(img/elderlytraining/2021image_sp.jpg);
	}
	#elderlytraining #o2021 h2{
		margin-bottom:20px;
		padding:0 0 16px;
		font-size:20px;
		background:transparent;
	}
	#elderlytraining #o2021 h2 br{display:none}
	#elderlytraining #o2021 div{font-size:16px}

/*	#elderlytraining #s5 h2,
	#elderlytraining #s6 h2,
	#elderlytraining #s7 h2{
		margin-bottom:20px;
		padding:6px 0 10px 36px;
		font-size:20px;
		background:transparent url(img/elderlytraining/h2.png) left 5px no-repeat;
		background-size:30px;
	}*/
	#elderlytraining #s5 .left,
	#elderlytraining #s6 .left,
	#elderlytraining #s7 .left{
		width:100%;
	}
	#elderlytraining #s5 .right,
	#elderlytraining #s6 .right,
	#elderlytraining #s7 .right{
		display:block;
		margin:10px auto;
	}

}

/* LP向け
----------------------------------------------------------*/
header.lp{
	background:transparent;
}

/* reserve_ageo / reserve_nishiomiya
-----------------------------------------------------------*/
/* title */
body.parent_student #title{
	background:url(img/form/requestTitle.jpg);
}
body.parent_student #title>div{
	width:584px;
}
body.parent_student #title h1{
	width:384px;
}
body.parent_student #title h1::before{
	background-image:url(img/common/requestTitle.png);
	width:543px;
	height:340px;
	left:-166px;
	top:-257px;
}
body.parent_student.reserve_nishiomiya #title h1 .span_right,
body.parent_student.reservation #title h1 .span_right{
	margin-left: 215px;
}
/* info */
body.parent_student #info table{
	width:600px;
	margin:14px 0;
}
body.parent_student #info table th,
body.parent_student #info table td{
	padding:14px 40px;
	text-align: left;
	white-space: nowrap;
}
/* schedule */
body.parent_student .notice.flex{
	display:flex;
}
body.parent_student .notice.flex div{
	padding-right:26px;
}
body.parent_student .scheduleTable td{
	position:relative;
}
body.parent_student .scheduleTable td .postRequest,
body.parent_student .scheduleTable td .setDate{
	cursor:pointer;
}
body.parent_student i{
	font-weight: bold;
	font-style: normal;
}
body.parent_student i.circle{
	color:#BF3675;
}
body.parent_student i.triangle{
	color:#0F67A5;
}
body.parent_student i.cross{
	color:#909090;
}
body.parent_student .reserve_list{
	border:2px #d96845 solid;
	border-radius:5px;
	padding:10px;
	white-space: nowrap;
	background:#fff;
	position:absolute;
	left:50%;
	top:50%;
	transform: translate(-50%,-50%);
	z-index:5;
	display:none;
}
body.parent_student .reserve_list a{
	display:block;
	line-height:2;
}
body.parent_student .reserve_list.show{
	display:block;
}
body.parent_student.parent_student main table td.close:after{
	/*height:1399px;*/
	height:1469px;
}


/* request
-----------------------------------------------------------*/
/* title */
body.request #title>div,
body.parent_request #title>div{
	width:584px;
}
body.request #title h1,
body.parent_request #title h1{
	width:404px;
}
/* request */
body.request #request .selectbox{
	margin:0;
	width:400px;
}
body.request #request .sup{
	margin-left: 2em;
	color:#bf3675;
}
body.request .have_select,
body.register .have_select{
	display:flex;
	flex-wrap: wrap;
}
body.request .have_select div,
body.register .have_select div{
	width:280px;
}
body.request .have_select div:nth-of-type(2n),
body.register .have_select div:nth-of-type(2n){
	width:calc(100% - 280px);
}
body.request .selectbox+input{
	margin-top:10px;
}
body.request #request .birthday_select .selectbox,
body.request #request .birthday_select .selectbox select,
body.register #register .birthday_select .selectbox,
body.register #register .birthday_select .selectbox select{
	width:110px;
}
body.request #request .birthday_select .selectbox:nth-of-type(1),
body.request #request .birthday_select .selectbox:nth-of-type(1) select,
body.register #register .birthday_select .selectbox:nth-of-type(1),
body.register #register .birthday_select .selectbox:nth-of-type(1) select{
	width:132px;
}
body.request #age,
body.register #age{
	width:80px;
	margin:0 10px 0 80px;
	background:#fff;
}
body.request #tel{
	width:400px;
}
body.request #request .payment_select+.sup{
	margin-left: 0;
}
body.request #request .reserve_date .changeDate,
body.rconfirm #register .changeDate{
	margin-left: 2em;
	color:#bf3675;
	cursor: pointer;
}
body.request #friend_name{
	width:calc(100% - 100px);
	max-width:300px;
}
/* edit / delete */
#request .edit{
	margin-bottom:30px;
	text-align: center;
}
#request .edit h3{
	font-size:22px;
	margin:0 0 8px;
}
#request .edit.delete + .box{
	position:relative;
}
#request .edit.delete + .box::after{
	display: block;
	content:"";
	width:100%;
	height:100%;
	background:rgba(0,0,0,.3);
	position: absolute;
	left:0;
	top:0;
	z-index:2;
}
/* confirm */
body.parent_request .selectbox{
	width:auto;
	margin-right:1em;
	background:transparent;
}
body.parent_request #zip2address{
	display:none;
}