@charset "UTF-8";
/*ALL Settings*/
/*-----------------------------------------------*/
html,
body {
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN",
		"メイリオ", Meiryo, sans-serif;
	vertical-align: baseline;
	list-style: none;
	margin: 0;
	padding: 0;
}

body {
	line-height: 1;
}

div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN",
		"メイリオ", Meiryo, sans-serif;
	vertical-align: baseline;
	list-style: none;
	margin: 0;
	padding: 0;
}

/* HTML5 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* a */
/*--------------------------------------------------------*/
a {
	text-decoration: none;
	color: #000;
}
a.decoration {
	text-decoration: underline;
}
a.decoration:visited,
a.decoration:focus,
a.decoration:active {
	text-decoration: underline;
	outline: 0;
}
a:visited,
a:focus,
a:active {
	text-decoration: none;
	color: #000;
	outline: 0;
}

/* table */
/*--------------------------------------------------------*/
table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0px;
}

/* clearfix */
/*--------------------------------------------------------*/
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

* html .clearfix {
	zoom: 1;
}

/* IE6 */
*:first-child + html .clearfix {
	zoom: 1;
}

/* IE7 */
/*-----------------------------------------------*/
/*ALL Settings*/
html {
	font-size: 62.5%;
}

body {
	font-size: 14px;
	color: #333;
	-webkit-text-size-adjust: 100%;
}

#wrap {
	font-size: 14px;
}

a {
	color: #333;
}
a:visited,
a:focus,
a:active {
	color: #333;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

/* common */
/*------------------------------------------------*/
.inner {
	width: 980px;
	margin-left: auto;
	margin-right: auto;
}
@media only screen and (max-width: 767px) {
	.inner {
		width: 94%;
	}
}

@media only screen and (min-width: 768px) {
	.flL {
		float: left;
	}

	.flR {
		float: right;
	}

	.hoverOpacity {
		-webkit-transition: opacity 0.3s ease 0s;
		-moz-transition: opacity 0.3s ease 0s;
		-o-transition: opacity 0.3s ease 0s;
		-ms-transition: opacity 0.3s ease 0s;
		transition: opacity 0.3s ease 0s;
	}
	.hoverOpacity:hover {
		opacity: 0.85;
		filter: alpha(opacity=85);
	}

	.pcH {
		display: none !important;
	}
}
@media only screen and (max-width: 768px) {
	.spTabH {
		display: none !important;
	}
}
@media only screen and (max-width: 767px) {
	.spH {
		display: none !important;
	}
}
.alignL {
	text-align: left;
}

.alignC {
	text-align: center;
}

.alignR {
	text-align: right;
}

/* font */
/* ------------------------------------------------- */
.required {
	color: #c00;
	font-size: 10px;
	font-weight: bold;
}

.bold {
	font-weight: bold;
}

/* list */
/* ------------------------------------------------- */
.listUl li {
	padding-left: 1em;
	margin-top: 10px;
	text-indent: -1em;
}
.listUl li:first-child {
	margin-top: 0;
}

.numberUl li {
	padding-left: 1.2em;
	margin-top: 10px;
	text-indent: -1.2em;
	list-style: decimal;
	list-style-position: inside;
}
.numberUl li:first-child {
	margin-top: 0;
}

/* tab */
/*------------------------------------------------*/
.tabBox {
	width: 100%;
	display: none;
}
.tabBox.active {
	display: block;
}

/* box */
/*------------------------------------------------*/
.column3Box {
	font-size: 0px;
}
.column3Box li {
	width: -webkit-calc((100% - (12px * 2)) / 3);
	width: calc((100% - (12px * 2)) / 3);
	margin-top: 12px;
	margin-left: 12px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align: middle;
	font-size: 14px;
}
.column3Box li:first-child {
	margin-top: 0;
	margin-left: 0;
}
.column3Box li:nth-child(2),
.column3Box li:nth-child(3) {
	margin-top: 0;
}
.column3Box li:nth-child(3n + 1) {
	margin-left: 0;
}

.column4Box {
	font-size: 0px;
}
.column4Box li {
	width: -webkit-calc((100% - (25px * 3)) / 4);
	width: calc((100% - (25px * 3)) / 4);
	margin-top: 25px;
	margin-left: 25px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align: middle;
	font-size: 14px;
}
.column4Box li:first-child {
	margin-top: 0;
	margin-left: 0;
}
.column4Box li:nth-child(2),
.column4Box li:nth-child(3),
.column4Box li:nth-child(4) {
	margin-top: 0;
}
.column4Box li:nth-child(4n + 1) {
	margin-left: 0;
}

/* spGlobalNav */
/*------------------------------------------------*/
@media only screen and (max-width: 767px) {
	.slidemenu {
		width: 240px;
		position: fixed;
		top: 0;
		visibility: hidden;
		z-index: -1;
	}
	.slidemenu .slidemenu-body {
		height: 100%;
		overflow: hidden;
		position: relative;
	}
	.slidemenu .slidemenu-content {
		position: relative;
	}
	.slidemenu.slidemenu-left {
		left: 0;
	}
	.slidemenu.slidemenu-right {
		right: 0;
	}
}
/* common */
/*------------------------------------------------*/
.clearfix01 {
	clear: both;
}

.small {
	font-size: 12px;
}

.leftBlock {
	float: left;
}
@media only screen and (max-width: 767px) {
	.leftBlock {
		float: none;
	}
}

.rightBlock {
	float: right;
}
@media only screen and (max-width: 767px) {
	.rightBlock {
		float: none;
	}
}

.inlineBlock {
	display: inline-block;
	vertical-align: middle;
}
@media only screen and (max-width: 767px) {
	.inlineBlock {
		display: block;
	}
}

.greenBtn a {
	color: #fff;
	background-color: #54b420;
	font-size: 15px;
	display: block;
	text-align: center;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
.greenBtn a:hover {
	background-color: #2b8200;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}

.toList {
	text-align: center;
}
.toList a {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	border: 1px solid #28302f;
	display: inline-block;
	font-size: 14px;
	padding: 15px 35px;
	font-weight: bold;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 767px) {
	.toList a {
		display: block;
	}
}
.toList a:hover {
	background-color: #e1e5e4;
	color: #2c3a38;
	border-color: #999f9e;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}

.imgArea {
	text-align: center;
}

.tableDl {
	display: table;
	width: 100%;
	border-collapse: collapse;
}
.tableDl dt,
.tableDl dd {
	display: table-cell;
	vertical-align: middle;
}

.sentence {
	font-size: 14px;
	line-height: 180%;
}

.yellowLink {
	background-color: #ebbc00;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
.yellowLink:hover {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	background-color: #cc9a00;
}

.greenLink {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	background-color: #54b420;
}
.greenLink:hover {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	background-color: #2b8200;
}

.blueLink {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	background-color: #478abe;
}
.blueLink:hover {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	background-color: #2f76ad;
}

.arrowList {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	border: 1px solid #ababab;
	overflow: hidden;
}
.arrowList li {
	border-top: 1px solid #ababab;
}
.arrowList li:first-child {
	border-top: none;
}
.arrowList li .title {
	width: auto;
}
.arrowList li a {
	padding: 20px;
	display: block;
	background-image: url("../images/icon/arrow.png");
	-webkit-background-size: 10px;
	-moz-background-size: 10px;
	-ms-background-size: 10px;
	-o-background-size: 10px;
	background-size: 10px;
	background-repeat: no-repeat;
	background-position: 98% center;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 767px) {
	.arrowList li a {
		background-position: 96% center;
	}
}
.arrowList li a:hover {
	background-color: #f5f5f5;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}

/* header */
/*------------------------------------------------*/
#headBlockWrap {
	z-index: 10;
	position: fixed;
	width: 100%;
}
@media only screen and (max-width: 767px) {
	#headBlockWrap {
		position: fixed;
		width: 100%;
		top: 0;
		left: 0;
	}
	#headBlockWrap #headBlock {
		position: relative;
	}
}

#headWrap {
	background-color: #28302f;
	width: 100%;
}
@media only screen and (max-width: 767px) {
	#headWrap {
		display: none;
		background-color: transparent;
		background-image: url("../images/header/spNavBg.png");
		position: absolute;
		top: 60px;
		left: 0;
		z-index: 100;
	}
}
#headWrap .leftBlock,
#headWrap .rightBlock {
	font-size: 0px;
}
#headWrap .leftBlock {
	padding: 19px 0 19px 20px;
}
@media only screen and (max-width: 767px) {
	#headWrap .leftBlock {
		display: none;
	}
}
#headWrap .leftBlock .language {
	border-right: 1px solid #fff;
	padding-right: 20px;
}
#headWrap .leftBlock .snsLink {
	margin-left: 20px;
}
@media only screen and (max-width: 767px) {
	#headWrap .rightBlock {
		width: 90%;
		margin: 0 auto;
		text-align: center;
		padding: 20px 0;
	}
}
#headWrap #headNav {
	padding: 19px 20px;
	font-size: 12px;
	color: #fff;
	display: inline-block;
}
#headWrap #headNav a {
	color: #fff;
}
#headWrap #headNav a:hover {
	text-decoration: underline;
}
@media only screen and (max-width: 767px) {
	#headWrap #headNav {
		padding: 20px 0;
		line-height: 270%;
	}
}
#headWrap .greenBtn a {
	padding: 17.5px 20px;
	text-align: center;
}
@media only screen and (max-width: 767px) {
	#headWrap .greenBtn a {
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		-ms-border-radius: 5px;
		-o-border-radius: 5px;
		border-radius: 5px;
	}
}
#headWrap #headAdbanner {
	background-color: #000;
	padding: 7px 10px;
}
@media only screen and (max-width: 767px) {
	#headWrap #headAdbanner {
		display: none;
	}
}

#sp_globalNav {
	display: none;
}
@media only screen and (max-width: 767px) {
	#sp_globalNav {
		display: block;
		margin-bottom: 10px;
	}
	#sp_globalNav ul li {
		margin-top: 5px;
	}
	#sp_globalNav ul li a {
		display: block;
		font-size: 14px;
		color: #f3f3f3;
		padding: 15px 0;
	}
	#sp_globalNav ul li:first-child {
		margin-top: 0;
	}
}

/* globalNav */
/*------------------------------------------------*/
#globalNavWrap {
	background-color: #fff;
	padding: 15px 20px;
}
@media only screen and (max-width: 767px) {
	#globalNavWrap {
		padding: 10px 3%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}
}
#globalNavWrap .leftBlock,
#globalNavWrap .rightBlock {
	font-size: 0px;
}
@media only screen and (min-width: 768px)and (max-width: 1200px) {
	#globalNavWrap .leftBlock,
	#globalNavWrap .rightBlock {
		float: inherit;
		text-align: center;
	}
}
#globalNavWrap #headLogoWrap {
	position: relative;
}
#globalNavWrap #headLogoWrap .headLogoParts {
	display: inline-block;
}
@media only screen and (max-width: 767px) {
	#globalNavWrap #headLogoWrap .headLogoParts {
		vertical-align: middle;
	}
}
#globalNavWrap #headLogoWrap #headEmblem {
	position: absolute;
	bottom: -5px;
	left: 0;
}
@media only screen and (max-width: 767px) {
	#globalNavWrap #headLogoWrap #headEmblem {
		position: static;
		width: 9%;
	}
}
@media only screen and (min-width: 768px) {
	#globalNavWrap #headLogoWrap #headEmblem a {
		display: block;
		position: relative;
		width: 78px;
	}
	#globalNavWrap #headLogoWrap #headEmblem a:hover:after {
		opacity: 1;
		filter: alpha(opacity=100);
	}
	#globalNavWrap #headLogoWrap #headEmblem a:after {
		width: 100%;
		height: 99px;
		content: "";
		background-image: url("../images/header/logo_emblem_white.png");
		background-repeat: no-repeat;
		background-position: left top;
		-webkit-background-size: contain;
		-moz-background-size: contain;
		-ms-background-size: contain;
		-o-background-size: contain;
		background-size: contain;
		opacity: 0;
		filter: alpha(opacity=0);
		-webkit-transition: all 0.3s ease 0s;
		-moz-transition: all 0.3s ease 0s;
		-o-transition: all 0.3s ease 0s;
		-ms-transition: all 0.3s ease 0s;
		transition: all 0.3s ease 0s;
		position: absolute;
		left: 0;
		top: 0;
	}
}
#globalNavWrap #headLogoWrap #headLogo {
	padding-top: 10px;
	/* padding-left: 120px; */
	width: 160px;
}
/* @media only screen and (min-width: 768px)and (max-width: 1290px) {
	#globalNavWrap #headLogoWrap #headLogo {
		padding-left: 0;
	}
} */
@media only screen and (max-width: 767px) {
	#globalNavWrap #headLogoWrap #headLogo {
		padding-bottom: 10px;
		padding-left: 3%;
		width: 88.62%;
	}
	#globalNavWrap #headLogoWrap #headLogo #headLogoInner {
		margin: 0 auto;
		margin-right: 27%;
		width: 38%;
	}
}
#globalNavWrap #headLogoWrap #navBtn {
	display: none;
}
@media only screen and (max-width: 767px) {
	#globalNavWrap #headLogoWrap #navBtn {
		display: inline-block;
		width: 8.38%;
	}
}
#globalNavWrap #globalNav {
	font-size: 0px;
}
@media only screen and (max-width: 767px) {
	#globalNavWrap #globalNav {
		display: none;
	}
}
#globalNavWrap #globalNav li {
	display: inline-block;
	margin-left: 30px;
}
#globalNavWrap #globalNav li:first-child {
	margin-left: 0;
}
#globalNavWrap #globalNav li a {
	font-size: 14px;
	font-weight: bold;
	display: block;
	color: #202020;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	padding: 15px 0;
}
#globalNavWrap #globalNav li a:hover {
	color: #54b420;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}

/* breadcrumb */
/*------------------------------------------------*/
#breadcrumbWrap {
	background-color: #f5f5f5;
	padding: 20px 0;
}
#breadcrumbWrap #breadcrumb ul {
	font-size: 0px;
}
#breadcrumbWrap #breadcrumb ul li {
	font-size: 12px;
	display: inline;
	line-height: 140%;
}
#breadcrumbWrap #breadcrumb ul li a {
	color: #3399cc;
	font-size: 12px;
}
#breadcrumbWrap #breadcrumb ul li a:hover {
	text-decoration: underline;
}

/* main */
/*------------------------------------------------*/
@media only screen and (min-width: 768px) {
	#mainWrap {
		margin-top: 0 !important;
		padding-top: 120px;
	}
}
#mainWrap #contentsWrap {
	background-color: #fff;
	padding: 50px 0;
}
@media only screen and (max-width: 767px) {
	#mainWrap #contentsWrap {
		padding: 10px 0 40px;
	}
}
#mainWrap #contentsWrap .contBox {
	margin-top: 60px;
}
@media only screen and (max-width: 767px) {
	#mainWrap #contentsWrap .contBox {
		margin-top: 40px;
	}
}
#mainWrap #contentsWrap .contBox:first-child {
	margin-top: 0;
}
#mainWrap #contentsWrap .contBox .contTitle {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
	#mainWrap #contentsWrap .contBox .contTitle {
		font-size: 23px;
		font-weight: normal;
		margin-bottom: 30px;
	}
}

/*map*/
/*----------------------------*/
#mapArea {
	background-color: #d6e9ed;
	padding: 60px;
	background-image: url("../images/top/map/map.png");
	background-repeat: no-repeat;
	background-position: center center;
}
@media only screen and (max-width: 767px) {
	#mapArea {
		background-color: transparent;
		padding: 0;
		background-image: none;
	}
}
#mapArea .titleWrap {
	background-color: #fff;
	padding: 25px;
	margin-bottom: 25px;
}
#mapArea .titleWrap .contTitle {
	margin-bottom: 20px !important;
}
@media only screen and (max-width: 767px) {
	#mapArea .titleWrap {
		text-align: center;
		padding: 0;
	}
	#mapArea .titleWrap .contTitle {
		margin-bottom: 10px !important;
	}
}
#mapArea .textWrap {
	text-align: left;
}
#mapArea .textWrap .small {
	margin-top: 10px;
	font-size: 12px;
}
#mapArea .rightBlock {
	margin-top: -10px;
}
@media only screen and (max-width: 767px) {
	#mapArea .rightBlock {
		margin-top: 0;
	}
}
#mapArea .areaBlock {
	width: 160px;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock {
		width: 100%;
	}
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
	#mapArea .areaBlock {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
		border-top: 1px solid #ababab;
		border-left: 1px solid #ababab;
		border-right: 1px solid #ababab;
	}
}

#mapArea .areaBlock .areaName {
	-moz-border-radius-topleft: 5px;
	-webkit-border-top-left-radius: 5px;
	border-top-left-radius: 5px;
	-moz-border-radius-topright: 5px;
	-webkit-border-top-right-radius: 5px;
	border-top-right-radius: 5px;
	background-color: #199a44;
	font-weight: bold;
	text-align: center;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .areaName {
		-moz-border-radius-topleft: 0;
		-webkit-border-top-left-radius: 0;
		border-top-left-radius: 0;
		-moz-border-radius-topright: 0;
		-webkit-border-top-right-radius: 0;
		border-top-right-radius: 0;
		background-color: transparent;
		font-weight: normal;
		text-align: left;
	}
}
#mapArea .areaBlock .areaName a {
	color: #fff;
	font-size: 14px;
	padding: 10px 0;
	display: block;
	cursor: text;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .areaName a {
		color: #202020;
		padding: 20px 15px;
		background-image: url("../images/icon/plus.png");
		background-repeat: no-repeat;
		background-position: 96% center;
		background-size: 11px;
	}
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .areaName a.active {
		background-color: #deedd6;
		background-image: url("../images/icon/minus.png");
	}
}
#mapArea .areaBlock .prefBlock {
	-moz-border-radius-bottomleft: 5px;
	-webkit-border-bottom-left-radius: 5px;
	border-bottom-left-radius: 5px;
	-moz-border-radius-bottomright: 5px;
	-webkit-border-bottom-right-radius: 5px;
	border-bottom-right-radius: 5px;
	overflow: hidden;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .prefBlock {
		-moz-border-radius-bottomleft: 0;
		-webkit-border-bottom-left-radius: 0;
		border-bottom-left-radius: 0;
		-moz-border-radius-bottomright: 0;
		-webkit-border-bottom-right-radius: 0;
		border-bottom-right-radius: 0;
		display: none;
		border-bottom: none;
	}
}
#mapArea .areaBlock .prefBlock ul {
	font-size: 0px;
	text-align: left;
}
#mapArea .areaBlock .prefBlock ul li {
	display: inline-block;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	width: 50%;
	border-top: 1px solid #ddd;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .prefBlock ul li {
		width: 100%;
		border-color: #ababab;
	}
}
@media only screen and (min-width: 768px) {
	#mapArea .areaBlock .prefBlock ul li:nth-child(-n + 2) {
		border-top: none;
	}
}
#mapArea .areaBlock .prefBlock ul li:nth-child(2n) {
	border-left: 1px solid #ddd;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .prefBlock ul li:nth-child(2n) {
		border-left: none;
	}
}
#mapArea .areaBlock .prefBlock ul li a {
	display: block;
	font-size: 14px;
	text-align: center;
	font-weight: bold;
	padding: 13px 0;
	background-color: #fff;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .prefBlock ul li a {
		font-weight: normal;
		text-align: left;
		cursor: text;
		padding: 20px 15px;
		background-color: transparent;
	}
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .prefBlock ul > li {
		display: table;
	}
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .prefBlock ul > li .prefName {
		display: table-cell;
		width: 25%;
		background-color: #f5f5f5;
		border-right: 1px solid #ababab;
		vertical-align: top;
	}
	#mapArea .areaBlock .prefBlock ul > li .prefName.last {
		-moz-border-radius-bottomleft: 5px;
		-webkit-border-bottom-left-radius: 5px;
		border-bottom-left-radius: 5px;
	}
}
#mapArea .areaBlock .prefBlock ul > li .prefName a {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
#mapArea .areaBlock .prefBlock ul > li .prefName a:hover {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	background-color: #e1e5e4;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .prefBlock ul > li .prefName a:hover {
		cursor: text;
		background-color: transparent;
	}
}
#mapArea .areaBlock .prefBlock ul .schoolNameWrap {
	display: none;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock .prefBlock ul .schoolNameWrap {
		display: table-cell;
		width: 75%;
	}
	#mapArea .areaBlock .prefBlock ul .schoolNameWrap .schoolName li:first-child {
		border-top: none;
	}
	#mapArea .areaBlock .prefBlock ul .schoolNameWrap .schoolName li a {
		cursor: pointer;
		background-color: #fff;
		background-image: url("../images/icon/arrow.png");
		background-repeat: no-repeat;
		background-position: 96% center;
		background-size: 11px;
	}
}
#mapArea .areaBlock.oneBlock {
	width: 80px;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock.oneBlock {
		width: 100%;
	}
}
#mapArea .areaBlock.oneBlock .prefBlock ul li {
	width: 100%;
	border-top: 1px solid #ddd;
}
@media only screen and (max-width: 767px) {
	#mapArea .areaBlock.oneBlock .prefBlock ul li {
		border-color: #ababab;
	}
}
@media only screen and (min-width: 768px) {
	#mapArea .areaBlock.oneBlock .prefBlock ul li:first-child {
		border-top: none;
	}
}
#mapArea .areaBlock.oneBlock .prefBlock ul li:nth-child(2n) {
	border-left: none;
}
#mapArea .rightBlock {
	text-align: right;
}
#mapArea #area01,
#mapArea #area02 {
	display: inline-block;
	margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
	#mapArea #area01,
	#mapArea #area02 {
		display: block;
		margin-bottom: 0;
	}
}
@media only screen and (max-width: 767px) {
	#mapArea #area01 {
		-moz-border-radius-topleft: 5px;
		-webkit-border-top-left-radius: 5px;
		border-top-left-radius: 5px;
		-moz-border-radius-topright: 5px;
		-webkit-border-top-right-radius: 5px;
		border-top-right-radius: 5px;
	}
	#mapArea #area01 .areaName a {
		-moz-border-radius-topleft: 5px;
		-webkit-border-top-left-radius: 5px;
		border-top-left-radius: 5px;
		-moz-border-radius-topright: 5px;
		-webkit-border-top-right-radius: 5px;
		border-top-right-radius: 5px;
	}
}
#mapArea #areaWrap03 {
	text-align: left;
}
#mapArea #areaWrap03 .areaBlock {
	float: right;
}
@media only screen and (max-width: 767px) {
	#mapArea #areaWrap03 .areaBlock {
		float: none;
	}
}
#mapArea #areaWrap03 #area03 {
	margin-left: 15px;
}
@media only screen and (max-width: 767px) {
	#mapArea #areaWrap03 #area03 {
		margin-left: 0;
	}
}
#mapArea .leftBlock .areaBlockWrap {
	float: right;
	margin-right: 15px;
}
@media only screen and (max-width: 767px) {
	#mapArea .leftBlock .areaBlockWrap {
		float: none;
		margin-right: 0;
	}
}
#mapArea .leftBlock .areaBlockWrap:first-child {
	margin-right: 0;
}
#mapArea .leftBlock .areaBlockWrap .areaBlock {
	margin-top: 15px;
}
@media only screen and (max-width: 767px) {
	#mapArea .leftBlock .areaBlockWrap .areaBlock {
		margin-top: 0;
	}
}
#mapArea .leftBlock .areaBlockWrap .areaBlock:first-child {
	margin-top: 0;
}
@media only screen and (max-width: 767px) {
	#mapArea .leftBlock #areaWrap08 #area09 {
		-moz-border-radius-bottomleft: 5px;
		-webkit-border-bottom-left-radius: 5px;
		border-bottom-left-radius: 5px;
		-moz-border-radius-bottomright: 5px;
		-webkit-border-bottom-right-radius: 5px;
		border-bottom-right-radius: 5px;
		border-bottom: 1px solid #ababab;
	}
}

#totopOutside #toTop a {
	display: block;
	color: #fff;
	background-color: #4d5554;
	font-size: 13px;
	text-align: center;
	padding: 20px 0;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
#totopOutside #toTop a:hover {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	background-color: #2f3a39;
}
#totopOutside #toTop a span {
	background-image: url("../images/footer/pageTop.png");
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 20px;
}
@media only screen and (max-width: 767px) {
	#totopOutside #toTop a {
		font-size: 12px;
	}
}

#footBannerArea,#footWhiteBannerArea {
	padding: 40px 0;
}
/* @media only screen and (max-width: 767px) {
	#footBannerArea {
		display: none;
	}
} */
#footBannerArea {
	background-color: #f3f3f3;
}
#footBannerArea .contTitle {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
	#footBannerArea .contTitle {
		font-size: 23px;
		font-weight: normal;
		margin-bottom: 30px;
	}
}
#footBannerArea ul, #footWhiteBannerArea ul {
	font-size: 0px;
	text-align: center;
}
#footBannerArea ul li, #footWhiteBannerArea ul li {
	display: inline-block;
	vertical-align: middle;
	margin-left: -webkit-calc(44px / 2);
	margin-left: calc(44px / 2);
}
#footBannerArea ul li:first-child, #footWhiteBannerArea ul li:first-child{
	margin-left: 0;
}
#footBannerArea ul li:nth-child(n + 5), #footWhiteBannerArea ul li:nth-child(n + 5) {
	margin-top: 15px;
}
#footBannerArea ul li a, #footWhiteBannerArea ul li a {
	display: block;
}

/* footer */
/*------------------------------------------------*/
#footer {
	background-color: #28302f;
	padding: 60px 0 30px;
}
@media only screen and (max-width: 767px) {
	#footer {
		padding: 0;
	}
}
#footer a {
	color: #f3f3f3;
}
#footer a:hover {
	text-decoration: underline;
}
@media only screen and (max-width: 767px) {
	#footer a:hover {
		text-decoration: none;
	}
}
@media only screen and (max-width: 767px) {
	#footer #footerInner {
		width: 100%;
	}
}
#footer #footerInner h3 a,
#footer #footerInner h4 a {
	font-size: 16px;
	font-weight: bold;
}
@media only screen and (max-width: 767px) {
	#footer #footerInner h3 a,
	#footer #footerInner h4 a {
		font-weight: normal;
		font-size: 11px;
	}
}
@media only screen and (max-width: 767px) {
	#footer #footerInner .footerNavWrap {
		border-bottom: 1px solid #6d7170;
		display: table;
		width: 100%;
	}
}
#footer #footerInner .footerNavi01,
#footer #footerInner .footerNavi02 {
	width: 200px;
	margin-right: 40px;
}
@media only screen and (min-width: 768px) {
	#footer #footerInner .footerNavi01,
	#footer #footerInner .footerNavi02 {
		float: left;
	}
}
@media only screen and (max-width: 767px) {
	#footer #footerInner .footerNavi01:first-child,
	#footer #footerInner .footerNavi02:first-child {
		border-right: 1px solid #6d7170;
	}
}
@media only screen and (max-width: 767px) {
	#footer #footerInner .footerNavi01,
	#footer #footerInner .footerNavi02 {
		margin-right: 0;
		width: 50%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
		display: table-cell;
	}
	#footer #footerInner .footerNavi01 a,
	#footer #footerInner .footerNavi02 a {
		display: block;
		padding: 9% 7%;
	}
	/* #footer #footerInner .footerNavi02.clearfix01 a {
		padding: 4.65% 3.5%;
	} */
}
#footer #footerInner .footerNavi01 h3 {
	margin-bottom: 40px;
}
#footer #footerInner .footerNavi01 h4 {
	margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
	#footer #footerInner .footerNavi01 h3,
	#footer #footerInner .footerNavi01 h4 {
		margin-bottom: 0;
	}
}
#footer #footerInner .footerNavi01 ul li {
	line-height: 150%;
	margin-top: 10px;
}
#footer #footerInner .footerNavi01 ul li:first-child {
	margin-top: 0;
}
@media only screen and (max-width: 767px) {
	#footer #footerInner .footerNavi01 ul {
		display: none;
	}
}
#footer #footerInner .footerNavi02 {
	margin-top: 40px;
}
@media only screen and (max-width: 767px) {
	#footer #footerInner .footerNavi02 {
		margin-top: 0;
	}
}
#footer #footerInner .emptyBlock h3 a {
	color: transparent;
}
#footer #footerLinks {
	margin-top: 60px;
}
@media only screen and (max-width: 767px) {
	#footer #footerLinks {
		margin-top: 0;
		padding: 20px 0;
		line-height: 200%;
		border-bottom: 1px solid #6d7170;
	}
}
#footer #footerLinks #footerLinksinner p {
	color: #f3f3f3;
	font-size: 11px;
}

#copyWrap {
	color: #fff;
	padding: 20px 0;
	background-color: #202020;
}
#copyWrap .inner {
	position: relative;
	padding: 10px 0;
	font-size: 0px;
}
/* #copyWrap #footerLogo {
	width: 12%;
} */
@media only screen and (max-width: 767px) {
	#copyWrap {
		padding: 20px 0 76px;
	}
	/* #copyWrap #footerLogo {
		width: 100%;
		text-align: center;
		margin-bottom: 15px;
	}
	#copyWrap #footerLogo img {
		width: 28.125%;
	} */
}
#copyWrap #copy {
	margin: 0 auto;
	font-size: 10px;
	text-align: center;
	width: 100%;
	line-height: 140%;
}
@media only screen and (max-width: 767px) {
	#copyWrap #copy {
		width: 100%;
		text-align: center;
	}
}
#copyWrap #footerAdbanner {
	position: absolute;
	top: 50%;
	right: 0;
	width: 20%;
	transform: translateY(-50%);
}
#copyWrap #footerAdbanner .abBannerParts {
	display: inline-block;
	vertical-align: middle;
	margin-left: 15px;
}
#copyWrap #footerAdbanner .abBannerParts:first-child {
	margin-left: 0;
}

#sp_foot_fixed_btn {
	display: none;
}
@media only screen and (max-width: 767px) {
	#sp_foot_fixed_btn {
		display: block;
		background-color: rgba(31, 32, 37, 0.8);
		padding: 8px;
		position: fixed;
		bottom: 0;
		width: 100%;
		box-sizing: border-box;
		z-index: 100;
	}
	#sp_foot_fixed_btn a {
		display: block;
		width: 100%;
		background-color: #54b420;
		text-align: center;
		color: #fff;
		padding: 13px 0;
		border-radius: 6px;
	}

	/* 20170629 ADD Start */
	#sp_foot_fixed_btn > ul {
		font-size: 0;
	}
	#sp_foot_fixed_btn > ul > li {
		width: 48%;
		margin-left: 4%;
		display: inline-block;
		vertical-align: middle;
		font-size: 14px;
	}
	#sp_foot_fixed_btn > ul > li:first-child {
		margin-left: 0;
	}
	/* 20170629 ADD End */
}

/* 20170629 ADD Start */
#exprience_fix2 {
	position: fixed;
	right: 0;
	top: 200px;
	z-index: 1000;
}
#exprience_fix2.bnr_2 {
	top: 350px;
}
@media only screen and (max-width: 767px) {
	#exprience_fix2 {
		display: none;
	}
}

/* 20170629 ADD End */

/* 20171004 ADD Start */
#staff_recruit {
	font-size: 0;
}
#staff_recruit .item {
	width: 32%;
	margin-left: 2%;
	display: inline-block;
	margin-bottom: 20px;
	vertical-align: top;
}
@media only screen and (max-width: 767px) {
	#staff_recruit .item {
		width: 100%;
		margin-left: 0%;
		display: inline-block;
		margin-bottom: 20px;
		vertical-align: top;
	}
}
#staff_recruit .item:nth-of-type(3n + 1) {
	margin-left: 0;
}
#staff_recruit .item a {
	display: inline-block;
	font-size: 14px;
	padding: 20px;
	box-sizing: border-box;
	background-color: #f5f5f5;
	border-radius: 5px;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	-ms-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
#staff_recruit .item a:hover {
	background-color: #d5d5d5;
}

#staff_recruit .item h2 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 8px;
}
#staff_recruit .item div {
	margin-top: 10px;
	line-height: 1.6;
}
#staff_recruit .item div .heading {
	font-weight: bold;
	color: #54b420;
}
/* 20171004 ADD End */

/* 20180125 ADD Start*/
#newProgram .flex {
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
}
#newProgram .flex a {
	width: calc((100% - 30px) / 4);
	border-radius: 6px;
	overflow: hidden;
}
@media only screen and (max-width: 767px) {
	#newProgram .flex {
		display: flex;
		-webkit-flex-direction: column; /* Safari */
		flex-direction: column;
	}
	#newProgram .flex a {
		margin-top: 1.5%;
		width: 100%;
	}
	#newProgram .flex a img {
		width: 100%;
	}
}
/* 20180125 ADD End*/

/* 20210405 ADD Start*/
#headWrap #header .snsLinkBlock {
	display: none;
	margin-top: 30px;
}
@media only screen and (max-width: 767px) {
	#headWrap #header .snsLinkBlock {
		display: block;
	}
}
#headWrap #header .snsLinkBlock .snsLinkList {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
#headWrap #header .snsLinkBlock .snsLinkList .snsLink {
	margin-right: 15px;
	height: 14px;
}
#headWrap #header .snsLinkBlock .snsLinkList .snsLink:last-of-type {
	margin-right: 0;
}
#headWrap #header .snsLinkBlock .snsLinkList .snsLink img {
	width: auto;
	height: 100%;
}

/* 20210405 ADD End*/

/* 20220713 ADD Start*/
table th,
table td {
	padding: 20px;
	border: 1px solid #d1d8ce;
}
/* 20220713 ADD End*/

/* 20230213 ADD Start*/
#footBannerArea .contTitle {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
	#footBannerArea .contTitle {
		font-size: 23px;
		font-weight: normal;
		margin-bottom: 30px;
	}
}
/* 20230213 ADD End*/

