/*全体セット*/

body {
	font-family:"メイリオ","ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
	margin:0;
	padding:0;
	letter-spacing:-.40em;
	text-align:center;
	background:url('image/body_bg.gif');
}
body * { box-sizing:border-box; }
a { color:#c00; text-decoration:none; }
a:hover { color:#c00; text-decoration:underline; }
a:visited { color:#993399; }

body > div.ContentsMother {
	width:100%;
	display:-ms-flex-box;
	display:-moz-flex;
	display:-webkit-box;
	display:flex;
	-ms-flex-pack:center;
	-webkit-box-pack:center;
	justify-content:center;
	margin:0 auto;
	padding:0;
}

div.Shadow {
	width:10px;
	margin:0;
	padding:0;
}
div.Shadow.Left { background:url('image/s_02.png') 0 0 repeat-y; }
div.Shadow.Right { background:url('image/s_01.png') 0 0 repeat-y; }
@media screen and (max-width: 767px) {
	div.Shadow {
		width:0px;
		margin:0;
		padding:0;
	}
}
div.MainColumn {
	position: relative;
	width: 100%;
	max-width:1200px;
	margin:0;
	padding:0;
	letter-spacing:normal;
}

/*ヘッダー*/
header {
	width:100%;
	margin:0;
	padding:10px 0 0;
	line-height:0;
	background:url('image/obj_hed.gif') 0 0 repeat-x;
	position: relative;
}
header h1 {
	width:100%;
	margin:0;
	padding:0;
	line-height:0;

	font-size: 82.5px;
	text-align: left;
}

header h1 img { 
	width:100%;
	height: auto;
}
header img {
	width:100%;
}
header h1 a{
	color: #222;
	font-family: serif;
}
header h1 a:hover{
	text-decoration: none;
	color: #222;
}
header h1 a:visited {
	color: #222;
}
.header_wrap{
	background-image: url(./image/header.jpg);
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	height: 561px;
	padding-top: 183px;
	padding-left: 10px;
}
.header_wrap_en{
	background-image: url(./image/header_en.jpg);
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	height: 561px;
	padding-top: 183px;
	padding-left: 10px;
}
.header_wrap_cn{
	background-image: url(./image/header_cn.jpg);
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	height: 561px;
	padding-top: 183px;
	padding-left: 10px;
}
.header_wrap_kr{
	background-image: url(./image/header_kr.jpg);
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	height: 561px;
	padding-top: 183px;
	padding-left: 10px;
}

.reservation_btn{
	width: 300px;
	height: 150px;
	background-image: linear-gradient(0deg, #ca0000 0%, #7a0101 100%);
	border: #ca0000 5px solid;
	color: #FFF !important;
	font-weight: bold;
	position: absolute;
	bottom: 350px;
	right: 16px;
	font-size: 1.85rem;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 10px;
	letter-spacing: 1px;
	line-height: 2.4rem;
	padding-top: 10px;
	box-shadow: 0 5px 0 #7a0101;
	transition: 0.5s ease;
	overflow: hidden;
}
.reservation_btn:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -100%;
  background-image: linear-gradient( 130deg, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 55%);
  animation: shine 3s infinite;
}
@keyframes shine {
  33% {
    left: 100%;
  }
  100% {
    left: 100%;
  }
}
.reservation_btn:hover{
	background-image: linear-gradient(0deg, #FFF 0%, #FFF 100%);
	color: #ca0000 !important;
	text-decoration: none;
	bottom: 348px;
	box-shadow: 0 2px 0 #7a0101;
}

@media screen and (max-width: 767px) {
	.reservation_btn{
		width: 160px;
		height: 80px;
		background-image: linear-gradient(0deg, #ca0000 0%, #7a0101 100%);
		border: #ca0000 5px solid;
		color: #FFF !important;
		font-weight: bold;
		position: absolute;
		bottom: 110px;
		right: 10px;
		font-size: 1.25rem;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 10px;
		letter-spacing: 1px;
		line-height: 1.5rem;
		padding-top: 10px;
		box-shadow: 0 5px 0 #7a0101;
		transition: 0.5s ease;
		overflow: hidden;
	}
	.reservation_btn:hover{
		background-image: linear-gradient(0deg, #FFF 0%, #FFF 100%);
		color: #ca0000 !important;
		text-decoration: none;
		bottom: 106px;
		box-shadow: 0 2px 0 #7a0101;
	}
}


@media screen and (max-width: 767px) {
	header {
		width:100%;
		height: auto;
		margin:0;
		padding:10px 0 0;
		line-height:0;
		background:url('image/obj_hed.gif') 0 0 repeat-x;
		background-color: #3476cf;
	}
	header h1 {
		width:100%;
		margin:0;
		padding:0;
		line-height:0;
		font-size: 32px;
		text-align: left;
	}
	header h1 img { 
		width:100%;
		height: auto;
	}
	header img {
		width:100%;
	}
	header h1 a{
		color: #222;
		font-family: serif;
	}

	.header_wrap{
		background-image: url(./image/header_sp.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		height: auto;
		min-height: 359px;
		/* height: 194px; */
		padding-top: 110px;
    padding-left: 10px;
	}
	.header_wrap_en{
		background-image: url(./image/header_en_sp.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		height: auto;
		min-height: 359px;
		/* height: 194px; */
		padding-top: 110px;
    padding-left: 10px;
	}
	.header_wrap_cn{
		background-image: url(./image/header_cn_sp.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		height: auto;
		min-height: 359px;
		/* height: 194px; */
		padding-top: 110px;
    padding-left: 10px;
	}
	.header_wrap_kr{
		background-image: url(./image/header_kr_sp.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		height: auto;
		min-height: 359px;
		/* height: 194px; */
		padding-top: 110px;
    padding-left: 10px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1290px) {
	header {
		width:100%;
		height: auto;
		margin:0;
		padding:10px 0 0;
		line-height:0;
		background:url('image/obj_hed.gif') 0 0 repeat-x;
		background-color: #3476cf;
	}
	header h1 {
		width:100%;
		margin:0;
		padding:0;
		line-height:0;
	
		font-size: 82.5px;
		text-align: left;
	}
	
	header h1 img { 
		/* max-width:100%; */
		width:100%;
		height: auto;
	}
	header img {
		width:100%;
	}
	header h1 a{
		color: #222;
		font-family: serif;
	}
	header h1 a:hover{
		text-decoration: none;
		color: #222;
	}
	header h1 a:visited {
		color: #222;
	}
	.header_wrap{
		background-image: url(./image/header.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		height: 561px;
		padding-top: 183px;
		padding-left: 10px;
	}
	.header_wrap_en{
		background-image: url(./image/header_en.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		height: 561px;
		padding-top: 183px;
		padding-left: 10px;
	}
	.header_wrap_cn{
		background-image: url(./image/header_cn.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		height: 561px;
		padding-top: 183px;
		padding-left: 10px;
	}
	.header_wrap_kr{
		background-image: url(./image/header_kr.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		width: 100%;
		height: 561px;
		padding-top: 183px;
		padding-left: 10px;
	}
}

/*メインカラム*/
.ContentsBloc {
	width: 100%;
	max-width:1200px;
	display:-ms-flex-box;
	display:-moz-flex;
	display:-webkit-box;
	display:flex;
	-ms-flex-pack:center;
	-webkit-box-pack:center;
	justify-content:center;
	margin:0 auto;
	padding:0;
	letter-spacing:-.40em;
	background-color: #FFF;
}
.ContentsBloc > * { letter-spacing:normal; }

.MainContent {
	width: 100%;
	max-width:890px;
	margin:0;
	padding:0px 0 3em;
	vertical-align:top;
	text-align:center;
	background:#fff;
}

.MainContent article {
	margin-bottom:3em;
	padding:0 2em;
	text-align:left;
}
@media screen and (max-width: 767px) {
	.MainContent article {
		margin-bottom:1.5em;
		padding:0 1em;
		text-align:left;
	}
}
.MainContent article:last-child { margin-bottom:0; }

.MainContent h1 {
	width:100%;
	margin:0 auto 1em;
	padding:0;
	line-height:1;
	position: relative;
}
.MainContent h1.headding01{
	border-bottom: #222 3px solid;
	font-size: 34px;
	line-height: 44px;
	display: flex;
	position: relative;
	font-family:serif;
	/* font-style: italic; */
}
.MainContent h1.headding01_nf{
	border-bottom: #222 3px solid;
	font-size: 34px;
	display: block;
	position: relative;
	font-family:serif;
	padding-left: 105px;
	/* font-style: italic; */
}
.MainContent h1.headding01::before{
	content: "";
	background-image: url(./image/top/icon_car.svg);
	background-repeat: no-repeat;
	background-position: center center;
	width: 96px;
	height: 44px;
	left: 0;
	margin-right: 15px;
}
.MainContent h1.headding01_nf::before{
	content: "";
	background-image: url(./image/top/icon_car.svg);
	background-repeat: no-repeat;
	width: 96px;
	height: 32px;
	left: 0;
	margin-right: 15px;
	position: absolute;
}
@media screen and (max-width: 767px) {
	.MainContent h1.headding01::before{
		content: "";
		background-image: url(./image/top/icon_car.svg);
		background-repeat: no-repeat;
		background-size: contain;
		width: 48px;
		height: 16px;
		left: 0;
		margin-right: 7px;
		position: absolute;
		bottom: 5px;
	}
	.MainContent h1.headding01_nf::before{
		content: "";
		background-image: url(./image/top/icon_car.svg);
		background-repeat: no-repeat;
		background-size: contain;
		width: 48px;
		height: 16px;
		left: 0;
		margin-right: 7px;
		position: absolute;
		bottom: 5px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1290px) {
	.MainContent h1.headding01::before{
		content: "";
		background-image: url(./image/top/icon_car.svg);
		background-repeat: no-repeat;
		background-size: contain;
		width: 48px;
		height: 16px;
		left: 0;
		margin-right: 7px;
		position: absolute;
		bottom: 5px;
	}
	.MainContent h1.headding01_nf::before{
		content: "";
		background-image: url(./image/top/icon_car.svg);
		background-repeat: no-repeat;
		background-size: contain;
		width: 48px;
		height: 16px;
		left: 0;
		margin-right: 7px;
		position: absolute;
		bottom: 5px;
	}
}

.MainContent h1.headding01 span{
	font-size: 20px;
	line-height: 44px;
	font-weight: normal;
	margin-right: 0;
	margin-left: auto;
	font-style: normal;
}
.MainContent h1.headding01_nf span{
	font-size: 20px;
	line-height: 44px;
	font-weight: normal;
	margin-right: 0;
	margin-left: auto;
	font-style: normal;
	display: block;
}

@media screen and (max-width: 767px) {
	.MainContent h1.headding01{
		border-bottom: #222 3px solid;
		font-size: 28px;
		display: flex;
		flex-direction: column;
		position: relative;
		font-family:serif;
		padding-left: 55px;
		/* font-style: italic; */
	}
	.MainContent h1.headding01_nf{
		border-bottom: #222 3px solid;
		font-size: 28px;
		display: flex;
		flex-direction: column;
		position: relative;
		font-family:serif;
		padding-left: 55px;
		/* font-style: italic; */
	}
	.MainContent h1.headding01 span{
		font-size: 15px;
		line-height: 20px;
		font-weight: normal;
		margin-right: auto;
		margin-left: 0;
		font-style: normal;
	}
	.MainContent h1.headding01_nf span{
		font-size: 15px;
		line-height: 20px;
		font-weight: normal;
		margin-right: auto;
		margin-left: 0;
		font-style: normal;
	}
}
@media screen and (min-width: 768px) and (max-width: 1290px) {
	.MainContent h1.headding01{
		border-bottom: #222 3px solid;
		font-size: 28px;
		display: flex;
		flex-direction: column;
		position: relative;
		font-family:serif;
		padding-left: 55px;
		/* font-style: italic; */
	}
	.MainContent h1.headding01_nf{
		border-bottom: #222 3px solid;
		font-size: 28px;
		display: flex;
		flex-direction: column;
		position: relative;
		font-family:serif;
		padding-left: 55px;
		/* font-style: italic; */
	}
	.MainContent h1.headding01 span{
		font-size: 15px;
		line-height: 20px;
		font-weight: normal;
		margin-right: auto;
		margin-left: 0;
		font-style: normal;
	}
	.MainContent h1.headding01_nf span{
		font-size: 15px;
		line-height: 20px;
		font-weight: normal;
		margin-right: auto;
		margin-left: 0;
		font-style: normal;
	}
}

.MainContent h2 {
	width:100%;
	margin:1em auto;
	padding:0.5em 11px;
	color:#fff;
	/* text-align:center; */
	text-align: left;
	font-size:1.25em;
	background:#0835bc;
}

.MainContent h3 {
	width:100%;
	margin:0.5em auto;
	padding:0;
	text-align:center;
}
.MainContent h3:before,
.MainContent h3:after {
	content:"■";
	color:#0835bc;
}

.MainContent h3.Blue:before,
.MainContent h3.Blue:after { color:#3399ff; }
.MainContent h3.Green:before,
.MainContent h3.Green:after { color:#41a271; }

.MainContent hr.Bloc {
	width:20%;
	margin:3em auto;
	padding:0;
	border:none;
	border-top:#ccc 20px dotted;
}

.MainContent ol.List {
	width: 100%;
	max-width:570px;
	margin:0 auto 1em;
	padding:15px;
	line-height:1;
	text-align:left;
	border:3px dotted;
}
.MainContent ol.Blue { border-color:#3399ff; }
.MainContent ol.Green { border-color:#41a271; }

.MainContent ol.List li {
	margin:0 0 0.5em 1.5em;
	padding:0;
}
.MainContent ol.List li:last-child { margin-bottom:0; }

.MainContent img { max-width:100%; }


.ichi { padding-left:16px; font-size:14px; }
p.bike_title {
	margin:0px;
	font-size:13px;
	font-weight:bold;
}
h1.add01{ font-size:14px; margin:0 0 5px; }
p.add01{
	font-size:12px;
	line-height:1.4em;
	margin:0 0 5px;
}

p.ObiBloc {
	width:100%;
	max-width:600px;
	margin:0 auto 1em;
	padding:0;
	line-height:0;
}

/*トップページ*/
.catch_copy {
	width: 100%;
	max-width:600px;
	font-size:13px;
	/*text-align:left;*/
	text-align:center;
	font-family:"メイリオ","ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
}
.catch_copy img {
	margin:0 auto 1em;
}
.catch_copy h2{
	margin:0;
	padding:0;
}

.catch_copy p {
	margin:0 0 1em;
	line-height:1.5em;
}

.text_area{
	padding-left: 12px;
	padding-right: 12px;
}

.map_wrap{
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
	.map_wrap{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		margin-bottom: 25px;
	}

	.map_wrap iframe{
		width: 100%;
	}
}
@media screen and (min-width: 768px) and (max-width: 1290px) {
	.map_wrap{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		margin-bottom: 25px;
	}

	.map_wrap iframe{
		width: 100%;
	}
}
.map_wrap h2{
	font-size: 18px;
	font-weight: bold;
	margin: 0em auto;
	padding: 0em 0px;
	background: none;
	color: #222;
	position: relative;
	/* border-bottom: #222 2px solid; */
}

.map_wrap h2::after{
	content: "";
	background-color: #222;
	height: 2px;
	width: 300px;
	position: absolute;
	bottom: -5px;
	left: 0;
}

.access_wrap{
	position: relative;
	width: 100%;
	max-width: 300px;
}
.access_wrap::after{ 
    content:'';
    width: 26px;
    height: 26px;
    position: absolute;
    display: inline-block;
}
.access_wrap::after{
    border-right: solid 1px #222;
    border-bottom: solid 1px #222;
    bottom:0;
    right: 0;
}

@media screen and (max-width: 767px) {
	.map_wrap h2::after{
		content: "";
		background-color: #222;
		height: 2px;
		width: 100%;
		position: absolute;
		bottom: -5px;
		left: 0;
	}
	
	.access_wrap{
		position: relative;
		width: 100%;
		max-width: none;
		margin-bottom: 25px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1290px) {
	.map_wrap h2::after{
		content: "";
		background-color: #222;
		height: 2px;
		width: 100%;
		position: absolute;
		bottom: -5px;
		left: 0;
	}
	
	.access_wrap{
		position: relative;
		width: 100%;
		max-width: none;
		margin-bottom: 25px;
	}
}

/*新着情報*/
.news_dl{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.news_dl dt{
	width: 15%;
	border-bottom: #b5b5b5 1px solid;
	padding: 20px 0;
}
.news_dl dd{
	width: 85%;
	margin-inline-start: 0px;
	border-bottom: #b5b5b5 1px solid;
	padding: 20px 0;
}
.news_dl dd a{
	color: #222;
}

@media screen and (max-width: 767px) {
	.news_dl{
		display: flex;
		justify-content: flex-start;
		flex-direction: column;
		flex-wrap: wrap;
	}
	.news_dl dt{
		width: 100%;
		border-bottom: none;
		padding: 10px 0 5px;
	}
	.news_dl dd{
		width: 100%;
		margin-inline-start: 0px;
		border-bottom: #b5b5b5 1px solid;
		padding: 0px 0 10px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1290px) {
	.news_dl{
		display: flex;
		justify-content: flex-start;
		flex-direction: column;
		flex-wrap: wrap;
	}
	.news_dl dt{
		width: 100%;
		border-bottom: none;
		padding: 10px 0 5px;
	}
	.news_dl dd{
		width: 100%;
		margin-inline-start: 0px;
		border-bottom: #b5b5b5 1px solid;
		padding: 0px 0 10px;
	}
}

/*左カラム*/

.LeftColumn {
	width:270px;
	margin:0 40px 0 0;
	padding:1px 1px 10px 1px;
	line-height:0;
	vertical-align:top;
	background:#666;
}
@media screen and (max-width: 767px) {
	.LeftColumn {
		display: none;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	.LeftColumn {
		display: none;
	}
}
.LeftColumn .SubNav {
	width:100%;
	margin:0 0 30px;
	margin-block-start: 0em;
	padding-inline-start: 0px;
	/* padding:1em 1em 1em 1.5em; */
	line-height:1;
	text-align:left;
	/* background:#ddd; */
}
.LeftColumn .SubNav li {
	margin:0 0 1px;
	list-style: none;
}
.LeftColumn .SubNav li a{
	background-color: #666666;
	color: #FFF;
	font-weight: bold;
	padding: 33px 26px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	position: relative;
	transition: 0.2s linear;
	border-bottom: #585858 1px solid;
}
.LeftColumn .SubNav li a::before{
	content: "";
	width: 2px;
	height: calc(100% - 2px);
	background-color: #FFF;
	position: absolute;
	left: 1px;
	top: 1px;
}
.LeftColumn .SubNav li a:hover,
.LeftColumn .SubNav li.current a{
	/* background-color: #D30000; */
	background-color: #0835bc;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
	padding: 33px 26px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	border-bottom: #4D0101 1px solid;
}
.link_title{
	/* background-color: #D30000; */
	background-color: #0835bc;
	color: #FFF;
	text-align: center;
	font-weight: bold;
	line-height: 29px;
	font-size: 22px;
	padding: 20px 0 15px;
}
.group_box{
	/* width: 268px; */
	width: 90%;
	/* background-color: #D30000; */
	background-color: #0835bc;
}
@media screen and (max-width: 767px) {
	.group_box{
		/* width: 268px; */
		width: 90%;
		/* background-color: #D30000; */
		background-color: #0835bc;
		border-top: #FFF 1px solid;
	}
	.link_title{
		/* background-color: #D30000; */
		background-color: #0835bc;
		color: #FFF;
		text-align: center;
		font-weight: bold;
		line-height: 25px;
		font-size: 18px;
		padding: 20px 0 15px;
	}
}

.group_wrap{
	/* width: 262px; */
	width: 95%;
	background-color: #FFF;
	padding: 20px 0;
}

/*フッター*/
footer {
	/* background:url('image/obj_bottom2.gif') 0 0 repeat-x; */
	/* background-color: #D30000; */
	background-color: #0835bc;
	padding: 5px 0;
}
footer font{
	letter-spacing: 0em;
}
/*--------------*/
/* リンクボタン */
/*--------------*/

a.LinkBtn {
	font-family:"メイリオ","ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
	width:30%;
	display:block;
	margin:1em auto;
	padding:0.5em 1em;
	color:#fff;
	text-align:center;
	text-decoration:none;
	font-size:1.25em;
	font-weight:bold;
	border:#0835bc 2px solid;
	border-radius:0.25em;
	box-shadow:3px 3px 7px rgba(50,50,50,0.45);
	background:#0835bc;
	-webkit-transition:0.25s ease;
	-moz-transition:0.25s ease;
	-ms-transition:0.25s ease;
	transition:0.25s ease;
}

a.LinkBtn:hover { color:#0835bc; background:#fff; }
a.LinkBtn::after { content:"　≫"; }

/* --------------- */
/*  Matrix & Flex  */
/* --------------- */

.MainContents table {
	margin:1em auto;
	padding:0;
	text-align:left;
	vertical-align:middle;
	border-collapse:collapse;
}
.Matrix th,
.Matrix td {
	padding:5px;
	border:#a67c52 dotted 1px;
	border-collapse:collapse;
}

dl.Matrix,
.FlexBlock {
	width:100%;
	display:-ms-flexbox;
	display:-moz-flex;
	display:-webkit-box;
	display:flex;
	
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-box-wrap:wrap;
	margin:1em auto 2em;
	padding:0;
	letter-spacing:-.40em;
	clear:both;
}
dl.Matrix { margin-top:0; }
.RecruitInfoArea dl.Matrix { margin:0.5em 0 0; }

.FlexBlock.Start { -ms-flex-pack:start; justify-content:flex-start; -webkit-box-pack:start;}
.FlexBlock.End { -ms-flex-pack:end; justify-content:flex-end; -webkit-box-pack:end; }
.FlexBlock.Center { -ms-flex-pack:center; justify-content:center; -webkit-box-pack:center; }
.FlexBlock.Distribute { -ms-flex-pack:distribute; justify-content:space-around; -webkit-box-pack:justify; }
.FlexBlock.Justify { -ms-flex-pack:justify; justify-content:space-between; -webkit-box-pack:justify; }

.FlexBlock.Middle { -ms-flex-align:center; align-items:center; -webkit-box-align:center; }

dl.Matrix > * {
	margin:0;
	padding:1em 1.75em;
	line-height:1.25;
	letter-spacing:normal;
}
dl.Matrix > dt { color:#b39536; }
dl.Matrix > dt span{ color:#666;/* font-size:0.8em;*/ }

dl.Matrix > dd { width:70%; }
dl.Matrix > dd strong{ color:#131f3a; }
dl.Matrix > dd > span{ color:#666;/* font-size:0.5em;*/ }
dl.Matrix.Contact > dd > span { font-size:1em; }
dl.Matrix.Contact > dd > span.mwform-checkbox-field { display:inline-block; margin:0 0.5em 0.5em 0; }
dl.Matrix.Contact > dd span.mwform-checkbox-field-text { color:#666; font-size:1em; }

dl.Matrix > dd > ul {
	margin:0;
	padding:0;
	list-style:none;
}
dl.Matrix > dd > ul > li {
	margin:0;
	padding:1em 0;
	border-bottom:#e6e6e6 1px solid;
}
dl.Matrix > dd > ul > li:first-child { padding-top:0; }
dl.Matrix > dd > ul > li:last-child { padding-bottom:0; border-bottom:none; }

.FlexBlock h2::after { margin-bottom:0.5em !important; }
.FlexBlock h3 { margin-bottom:1em; }

.FlexBlock > p,
.FlexBlock > a,
.FlexBlock > div {
	margin:0 0 1em;
	padding:0 5px;
	letter-spacing:normal;
}

.FlexBlock > * img { width:100%; }
.FlexBlock > * img.Auto { width:auto; max-width:100%; }
.FlexBlock > * .Img { margin-bottom:1em; }
.FlexBlock .Caption {
	width:auto;
	display:block;
	margin:0.75em auto 0;
	color:#a67c52;
	line-height:1.25;
	border:none;
}
.FlexBlock .Title {
	margin:0 0 0.75em;
	color:#a67c52;
	line-height:1.25;
	font-size:1.25em;
	font-weight:bold;
}
.FlexBlock > .Full { width:100%; }

.Border,
.FlexBlock > .Border {
	margin-left:1%;
	margin-right:1%;
	padding:1em;
	border:#82bffc 2px dotted;
	border-radius:10px;
}

@media screen and (max-width:767px) {
	.RecruitInfoArea dl.Matrix { display:none; }
	dl.Matrix.Recruit { margin-bottom:30px; } 
	dl.Matrix > dt { 
		width:100%;
		padding-bottom:0;
	}
	dl.Matrix > dd { width:100%; }
	dl.Matrix > dd:nth-child(4n),
	dl.Matrix > dt:nth-child(4n-1) { background:rgba(24,48,114,0.1); }
	dl.Matrix > .Third:nth-child(2n),
	dl.Matrix > .Quarter:nth-child(2n),
	dl.Matrix > .Full:nth-child(2n) { background:rgba(24,48,114,0.1); }
	.FlexBlock.RowReverse,
	.FlexBlock.Column { -ms-flex-direction:column; flex-direction:column; -webkit-box-orient:vertical; }
	.MainContents table { width:95%; }
	.FlexBlock > .Full,
	.FlexBlock > .Quarter,
	.FlexBlock > .Third,
	.FlexBlock > .Half,
	.FlexBlock > .QuarterThree,
	.FlexBlock > .ThirdDouble { width:95%; };
}
@media print,screen and (min-width:768px) {
	
	.FlexBlock.AlignCenter { -ms-flex-align:center; -webkit-align-items:center; align-items:center; }

	.FlexBlock.RowReverse { -ms-flex-direction:row-reverse; -webkit-flex-direction:row-reverse; flex-direction:row-reverse; }
	.FlexBlock.Column { -ms-flex-direction:column; -webkit-flex-direction:column; flex-direction:column; }
	.FlexBlock.ColumnReverse { -ms-flex-direction:column-reverse; -webkit-flex-direction:column-reverse; flex-direction:column-reverse; }

	.MainContents table { width:100%; }
	table.Matrix { border:#a67c52 dotted 1px; }
	dl.Matrix.Recruit { margin-bottom:50px; } 
	dl.Matrix > dt.Change + dd { width:30%; border-bottom:#e6e6e6 1px solid; }
	dl.Matrix > dt { width:30%; border-bottom:#d0d0d0 1px solid; }
	dl.Matrix.Contact > dt { width:30%; border-bottom:#d0d0d0 1px solid; }
	dl.Matrix > dt span{ color:#666;/* font-size:0.8em;*/ }
	dl.Matrix > dt.Change { width:70%; border-bottom:#d0d0d0 1px solid; }
	dl.Matrix > dd { width:70%; border-bottom:#d0d0d0 1px solid; }
	dl.Matrix.Contact > dd { width:70%; border-bottom:#d0d0d0 1px solid; }
	.Even dl.Matrix > dt.Change + dd,
	.Even dl.Matrix > dd { border-bottom:#bbb 1px solid; }
	dl.Matrix > dt.Min { width:10%; }
	dl.Matrix > dt.Min + dd { width:40%; }
	dl.Matrix dt.Min + dd + dt:nth-child(4n+1),
	dl.Matrix dt.Min + dd + dt:nth-child(4n+1) + dd,
	
	dl.Matrix > .Third:nth-child(4n),
	dl.Matrix > .Quarter:nth-child(4n) { background:#fff; }
	dl.Matrix > .Third:nth-child(3n) { width:34%; }
	dl.Matrix > .Full { width:100%; }
	dl.Matrix dt.Min + dd:nth-child(8n),
	dl.Matrix dt.Min:nth-child(8n-1),
	dl.Matrix > .Third:nth-child(6n),
	dl.Matrix > .Third:nth-child(6n-1),
	dl.Matrix > .Third:nth-child(6n-2),
	dl.Matrix > .Quarter:nth-child(8n),
	dl.Matrix > .Quarter:nth-child(8n-1),
	dl.Matrix > .Quarter:nth-child(8n-2),
	dl.Matrix > .Quarter:nth-child(8n-3),
	dl.Matrix > .Full:nth-child(2n) { background:rgba(24,48,114,0.1); }
	dl.Matrix > .Quarter {
		font-size:0.85em;
		padding:0.75em 1em;
	}
	
	.FlexBlock > .Full.Border { width:97%; }
	
	dl.Matrix > .Per54,
	.FlexBlock > .Per54 { width:54%; }
	dl.Matrix > .Per45,
	.FlexBlock > .Per45 { width:45%; }
	
	dl.Matrix > .Fifth,
	.FlexBlock > .Fifth { width:19%; }
	dl.Matrix > .Fifth2,
	.FlexBlock > .Fifth2 { width:39%; }
	dl.Matrix > .Fifth3,
	.FlexBlock > .Fifth3 { width:59%; }
	dl.Matrix > .Fifth4,
	.FlexBlock > .Fifth4 { width:79%; }
	dl.Matrix > .Quarter,
	.FlexBlock > .Quarter { width:24%; }
	.FlexBlock > .Quarter.Border { width:23%; }
	dl.Matrix > .QuarterThree,
	.FlexBlock > .QuarterThree { width:73%; }
	dl.Matrix > .Third,
	.FlexBlock > .Third { width:33%; }
	.FlexBlock > .Third.Border { width:31%; }
	dl.Matrix > .ThirdDouble,
	.FlexBlock > .ThirdDouble { width:66%; }
	.FlexBlock > .ThirdDouble { width:64%; }
	dl.Matrix > .Half,
	.FlexBlock > .Half { width:48%; }
	.FlexBlock > .Half.Border { width:46%; }
}
@media print,screen and (min-width:1024px) {
	
}
.table01{
	width: 100%;
}
.table01 , .td01, .th01 {
	border-left: 1px solid #E1E1E1;
	border-bottom: 1px solid #E1E1E1;
	border-collapse: collapse;
}
.td01, .th01 {
	padding: 1em;
}

@media screen and (max-width:767px) {
	.td01, .th01 {
		padding: 1em 0.5em;
	}
}

.th01 {
	background: #f0e6cc;
	border-left: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
}
.th01:nth-child(1) {
	min-width: 5em;
	border-left: 1px solid #FFF;
}
.th01:nth-child(3) {
	min-width: 7em;
}
.td01:nth-child(1) {
	border-left: 1px solid #FFF;
}
.even {
	background: #fbf8f0;
}
.odd {
	background: #fefcf9;
}




#g-nav,.openbtn{opacity: 0;display: none;}

@media screen and (max-width: 767px) {
	#g-nav,.openbtn{opacity: 1;display: block;}
	/*========= ナビゲーションのためのCSS ===============*/

	#g-nav{
		/*position:fixed;にし、z-indexの数値を大きくして前面へ*/
		position:fixed;
		z-index: 999;
		/*ナビのスタート位置と形状*/
		top:0;
		right: -120%;
		width:100%;
		height: 100vh;/*ナビの高さ*/
		background:#0835bc;
		/*動き*/
		transition: all 0.6s;
	}

	/*アクティブクラスがついたら位置を0に*/
	#g-nav.panelactive{
		right: 0;
	}

	/*ナビゲーションの縦スクロール*/
	#g-nav.panelactive #g-nav-list{
		/*ナビの数が増えた場合縦スクロール*/
		position: fixed;
		z-index: 999; 
		width: 100%;
		height: 100vh;/*表示する高さ*/
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}

	/*ナビゲーション*/
	#g-nav ul {
		/*ナビゲーション天地中央揃え*/
		position: absolute;
		z-index: 999;
		top:0%;
		left:50%;
		transform: translate(-50%,0%);
		padding-inline-start: 0px;
	}

	/*リストのレイアウト設定*/

	#g-nav li{
		color: #FFF;
		list-style: none;
		text-align: center;
		letter-spacing: 0.1em;
		font-weight: bold;
	}

	#g-nav li a{
		color: #FFF;
		text-decoration: none;
		padding:10px;
		display: block;
		text-transform: uppercase;
		letter-spacing: 0.1em;
		font-weight: bold;
	}

	#g-nav li .Label::after{
		content: "▼";
		position: relative;
		color: #FFF;
	}

	/*========= ボタンのためのCSS ===============*/
	.openbtn{
		position:fixed;
		z-index: 9999;/*ボタンを最前面に*/
		top:0px;
		right: 0px;
		cursor: pointer;
		width: 50px;
		height:50px;
		/* background-color: #D30000; */
		/* background-color: #0835bc; */
		background-color: #ca0000;
	}

	.openbtn::after{
		content: "MENU";
		z-index: 9999;
		position: absolute;
		top: 85%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
		width: 50px;
		height:50px;
		font-size: 9px;
		letter-spacing: 0.5px;
		color: #FFF;
		font-weight: bold;
	}
	.openbtn.active::after{
		content: "";
		display: none;
	}

	/*×に変化*/	
	.openbtn span{
		display: inline-block;
		transition: all .4s;
		position: absolute;
		left: 14px;
		height: 3px;
		border-radius: 2px;
		/* background-color: #FFF; */
		background-color: transparent;
		width: 45%;
	}
	.openbtn.active span{
		display: inline-block;
		transition: all .4s;
		position: absolute;
		left: 14px;
		height: 3px;
		border-radius: 2px;
		background-color: #FFF;
		width: 45%;
	}

	.openbtn span:nth-of-type(1) {
		top:15px;	
	}

	.openbtn span:nth-of-type(2) {
		top:23px;
	}

	.openbtn span:nth-of-type(3) {
		top:31px;
	}

	.openbtn.active span:nth-of-type(1) {
		top: 18px;
		left: 18px;
		transform: translateY(6px) rotate(-45deg);
		width: 30%;
	}

	.openbtn.active span:nth-of-type(2) {
	opacity: 0;
	}

	.openbtn.active span:nth-of-type(3){
		top: 30px;
		left: 18px;
		transform: translateY(-6px) rotate(45deg);
		width: 30%;
	}

}

@media screen and (min-width: 768px) and (max-width: 1024px) {
	#g-nav,.openbtn{opacity: 1;display: block;}
	/*========= ナビゲーションのためのCSS ===============*/

	#g-nav{
		/*position:fixed;にし、z-indexの数値を大きくして前面へ*/
		position:fixed;
		z-index: 999;
		/*ナビのスタート位置と形状*/
		top:0;
		right: -120%;
		width:100%;
		height: 100vh;/*ナビの高さ*/
		background:#0835bc;
		/*動き*/
		transition: all 0.6s;
	}

	/*アクティブクラスがついたら位置を0に*/
	#g-nav.panelactive{
		right: 0;
	}

	/*ナビゲーションの縦スクロール*/
	#g-nav.panelactive #g-nav-list{
		/*ナビの数が増えた場合縦スクロール*/
		position: fixed;
		z-index: 999; 
		width: 100%;
		height: 100vh;/*表示する高さ*/
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}

	/*ナビゲーション*/
	#g-nav ul {
		/*ナビゲーション天地中央揃え*/
		position: absolute;
		z-index: 999;
		top:50%;
		left:50%;
		transform: translate(-50%,-50%);
		padding-inline-start: 0px;
	}

	/*リストのレイアウト設定*/

	#g-nav li{
	list-style: none;
		text-align: center;
	}

	#g-nav li a{
	color: #FFF;
	text-decoration: none;
	padding:10px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
	}

	/*========= ボタンのためのCSS ===============*/
	.openbtn{
		position:fixed;
		z-index: 9999;/*ボタンを最前面に*/
		top:0px;
		right: 0px;
		cursor: pointer;
		width: 50px;
		height:50px;
		/* background-color: #D30000; */
		background-color: #0835bc;
	}

	/*×に変化*/	
	.openbtn span{
		display: inline-block;
		transition: all .4s;
		position: absolute;
		left: 14px;
		height: 3px;
		border-radius: 2px;
		background-color: #FFF;
		width: 45%;
	}

	.openbtn span:nth-of-type(1) {
		top:15px;	
	}

	.openbtn span:nth-of-type(2) {
		top:23px;
	}

	.openbtn span:nth-of-type(3) {
		top:31px;
	}

	.openbtn.active span:nth-of-type(1) {
		top: 18px;
		left: 18px;
		transform: translateY(6px) rotate(-45deg);
		width: 30%;
	}

	.openbtn.active span:nth-of-type(2) {
	opacity: 0;
	}

	.openbtn.active span:nth-of-type(3){
		top: 30px;
		left: 18px;
		transform: translateY(-6px) rotate(45deg);
		width: 30%;
	}
}

@media screen and (min-width: 1025px) and (max-width: 1290px) {
	#g-nav,.openbtn{opacity: 0;display: none;}
}

.dl_list dt{
	font-size: 1.125rem;
	font-weight: bold;
	padding-bottom: 5px;
	margin-bottom: 15px;
	border-bottom: #666 1px solid;
}
.dl_list dd{
	margin-inline-start: 0px;
	/* border-bottom: #666 1px solid; */
	padding-bottom: 15px;
	margin-bottom: 15px;
}


.language_list{
	position: absolute;
	top: 0;
	right: 10px;

	display: flex;
	justify-content: center;
	background-color: #0835bc;
	border-radius: 0 0 10px 10px;
	padding: 30px 15px;
	margin: 0;
	z-index: 1;
}
.language_list li{
	margin:0 14px;
	padding: 0 14px;
	list-style: none;
	position: relative;
}
.language_list li::after{
	content: "";
	width: 1px;
	height: 15px;
	background-color: #FFF;
	position: absolute;
	top: 7px;
	right: -14px;
}
.language_list li:first-child{
	margin:0 14px 0 0;
}
.language_list li:last-child{
	margin:0 0 0 14px;
}
.language_list li:last-child::after{
	display: none;
}
.language_list li a{
	color: #FFF;
	font-size: 20px;
	font-weight: bold;
}


@media screen and (max-width: 767px) {
	.language_list{
		position: absolute;
		top: 0;
		left: 10px;
	
		display: flex;
		justify-content: center;
		background-color: #0835bc;
		border-radius: 0 0 10px 10px;
		padding: 10px 0;
		margin: 0;
		max-width: 280px;
	}
	.language_list li{
		margin:0 4px;
		padding: 0 4px;
		list-style: none;
		position: relative;
	}

	.language_list li:nth-child(1)::after{
		content: "";
		width: 1px;
		height: 15px;
		background-color: #FFF;
		position: absolute;
		top: 4px;
		right: -10px;
	}
	.language_list li:nth-child(2)::after{
		content: "";
		width: 1px;
		height: 15px;
		background-color: #FFF;
		position: absolute;
		top: 4px;
		right: -6px;
	}

	.language_list li:nth-child(3)::after{
		content: "";
		width: 1px;
		height: 15px;
		background-color: #FFF;
		position: absolute;
		top: 4px;
		right: -9px;
	}

	.language_list li a{
		color: #FFF;
		font-weight: bold;
		font-size: 0.875rem;
	}
}

@media screen and (min-width: 768px) and (max-width: 1290px) {
	.language_list{
		position: absolute;
		top: 0;
		right: 55px;
	
		display: flex;
		justify-content: center;
		background-color: #0835bc;
		border-radius: 0 0 10px 10px;
		padding: 10px 0;
		margin: 0;
	}
}



/*ベース*/
.toggle {
	display: none;
}
.SubNav .Label {		/*タイトル*/
	background-color: #666666;
	color: #FFF;
	font-weight: bold;
	padding: 33px 26px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	position: relative;
	transition: 0.2s linear;
	border-bottom: #585858 1px solid;
	cursor: pointer;
	transition: transform 0.5s;
}

.SubNav .Label::before{
	content: "";
	width: 2px;
	height: calc(100% - 2px);
	background-color: #FFF;
	position: absolute;
	left: 1px;
	top: 1px;
}

.SubNav .Label::after{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
}
.SubNav .Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
}
.content {
  max-height: 0;
	height: 0;
  opacity: 0;
  visibility: hidden;
  transition: 0.5s;
  overflow: hidden;
}
/*クリックするとコンテンツ表示*/
input:checked ~ .content {
  max-height: 100vh;
	height: 100%;
  opacity: 1;
  visibility: visible;
}

.SubNav .toggle:checked + .Label + .content a{
	background-color: #7e7e7e;
}
.SubNav .toggle:checked + .Label + .content a:hover{
	background-color: #0835bc;
}

.SubNav .toggle:checked + .Label::after {
	transform: rotate(-45deg) !important;
}

.link_btn{
	width: 330px;
	height: 50px;
	text-align: center;
	background-image: linear-gradient(0deg, rgb(30, 0, 202) 0%, rgb(21, 1, 122) 100%);
	font-weight: bold;
	font-size: 1.25rem;
	position: relative;
	bottom: 0px;
	letter-spacing: 1px;
	line-height: 1.25rem;
	padding-top: 6px;
	box-shadow: rgb(1, 11, 122) 0px 5px 0px;
	color: rgb(255, 255, 255) !important;
	border-width: 3px;
	border-style: solid;
	border-color: rgb(20, 0, 202);
	border-image: initial;
	border-radius: 20px;
	transition: 0.5s;
	margin: 0 auto;
	overflow: hidden;
}
.link_btn:hover{
	width: 330px;
	height: 50px;
	background-image: linear-gradient(0deg, rgb(30, 0, 202) 0%, rgb(21, 1, 122) 100%);
	font-weight: bold;
	font-size: 1.25rem;
	text-align: center;
	position: relative;
	bottom: -4px;
	letter-spacing: 1px;
	line-height: 1.25rem;
	padding-top: 6px;
	box-shadow: rgb(1, 11, 122) 0px 1px 0px;
	color: rgb(255, 255, 255) !important;
	border-width: 3px;
	border-style: solid;
	border-color: rgb(20, 0, 202);
	border-image: initial;
	border-radius: 20px;
	transition: 0.5s;
	text-decoration: none !important;
	overflow: hidden;
}
.link_btn a{
	color: #FFF !important;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.link_btn:hover a{
	text-decoration: none !important;
}


.link_btn_red{
	width: 330px;
	height: 50px;
	text-align: center;
	background-image: linear-gradient(0deg, #ca0000 0%, #7a0101 100%);
	font-weight: bold;
	font-size: 1.25rem;
	position: relative;
	bottom: 0px;
	letter-spacing: 1px;
	line-height: 1.25rem;
	padding-top: 6px;
	box-shadow: #7a0101 0px 5px 0px;
	color: rgb(255, 255, 255) !important;
	border-width: 3px;
	border-style: solid;
	border-color: #ca0000;
	border-image: initial;
	border-radius: 20px;
	transition: 0.5s;
	margin: 0 auto;
	overflow: hidden;
}
.link_btn_red:hover{
	width: 330px;
	height: 50px;
	background-image: linear-gradient(0deg, #ca0000 0%, #7a0101 100%);
	font-weight: bold;
	font-size: 1.25rem;
	text-align: center;
	position: relative;
	bottom: -4px;
	letter-spacing: 1px;
	line-height: 1.25rem;
	padding-top: 6px;
	box-shadow: #7a0101 0px 1px 0px;
	color: rgb(255, 255, 255) !important;
	border-width: 3px;
	border-style: solid;
	border-color: #ca0000;
	border-image: initial;
	border-radius: 20px;
	transition: 0.5s;
	text-decoration: none !important;
	overflow: hidden;
}
.link_btn_red a{
	color: #FFF !important;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.link_btn_red:hover a{
	text-decoration: none !important;
}


.scroll-x{
	overflow-x: scroll;
}
.scroll-x .table01{
	width: 826px !important;
}

.MainContent .table01 Label {
	cursor: pointer;
	text-decoration: underline;
}
.MainContent .table01 Label:hover{
	text-decoration: none;
}
.MainContent .table01 .content img{
	width: 100%;
	max-width: 440px;
	height: auto;
}

.qr_code{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}

/*ベース*/
/* .toggle {
	display: none;
}
.Label {
	padding: 1em;
	display: block;
	color: #fff;
	background:#019ac6;
}
.Label::before{
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
}
.Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.content {
	height: 0;
	margin-bottom:10px;
	padding:0 20px;
	overflow: hidden;
}
.toggle:checked + .Label + .content {
	height: auto;
	padding:20px ;
	transition: all .3s;
}
.toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
} */