/* [ SLIDER ]
_________________________________________________ */
.slick-slider {
	position: relative;
	display: block;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-ms-touch-action: none;
	-webkit-tap-highlight-color: transparent;
}
	.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }
	.slick-list:focus { outline: none; }
	.slick-loading .slick-list {  }
	.slick-list.dragging { cursor: pointer; cursor: hand; }

	.slick-slider .slick-list, .slick-track, .slick-slide, .slick-slide img { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

	.slick-track { position: relative; left: 0; top: 0; display: block; zoom: 1; }
	.slick-track:before, .slick-track:after { content: ""; display: table; }
	.slick-track:after { clear: both; }
	.slick-loading .slick-track { visibility: hidden; }

	.slick-slide {
		float: left;
		height: 100%;
		min-height: 1px;
		display: none;
	}
	.slick-slide > a img { /*display: block;*/ width: 100%; }
	.slick-slide.slick-loading img { display: none; }
	.slick-slide.dragging img { pointer-events: none; }
	.slick-initialized .slick-slide { display: block; }
	.slick-loading .slick-slide { visibility: hidden; }
	.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

	.slick-prev, .slick-next {
		z-index: 99999;
		position: absolute;
		display: block;
		line-height: 0;
		font-size: 0;
		cursor: pointer;
		background: rgba(0,0,0,0.5);
		background: transparent;
		color: transparent;
		outline: none;

		width: 60px;
		height: 100%;

		border: none;
		top: 0;
		bottom: 0;
		text-align: center;
		-webkit-transition: all .3s ease-in-out;
		-moz-transition: all .3s ease-in-out;
		transition: all .3s ease-in-out;
	}
		.slick-prev { left: 0; }
		.slick-next { right: 0; }

		.slick-prev:hover, .slick-prev:focus,
		.slick-next:hover, .slick-next:focus {
			outline: none;
			/*background: rgba(0,0,0,0.25);*/
		}
		.slick-prev:before,
		.slick-next:before {
			font-family: 'hokuto7';
			font-size: 80px;
			color: rgba(255,255,255,0.3);
			line-height: 1;
			position: absolute;
			top: 50%;
			margin: -.5em 0 0 0;
			-webkit-font-smoothing: antialiased;
			-moz-osx-font-smoothing: grayscale;
			-webkit-transition: all .3s ease-in-out;
			-moz-transition: all .3s ease-in-out;
			transition: all .3s ease-in-out;
		}
		.slick-prev:before { content: "\e813"; right: .25em; }
		.slick-next:before { content: "\e814"; left: .25em; }

		.slick-prev:hover:before,/* .slick-prev:focus:before,*/
		.slick-next:hover:before/*, .slick-next:focus:before*/ {
			color: rgba(255,255,255,1);
		}
.slick-dots {
	z-index: 1000;
	position: absolute;
	top: 16px;
	left: 50%;
	margin-left: -95px;
	padding: 0;
	list-style: none;
	text-align: left;
	display: block;
}

	.slick-dots li {
		position: relative;
		display: inline-block;
		width: 20px;
		height: 20px;
		margin: 0 3px;
		padding: 0;

		cursor: pointer;
		background: rgba(2,109,213,.4);
		border-radius: 50%;
		box-shadow: 0 0 6px rgba(255,255,255,1);
	}
	.slick-dots li button {
		position: absolute;
		top: 0;
		font-size: 0;
		line-height: 0;
		display: block;
		cursor: pointer;
		width: 20px;
		height: 20px;
		padding: 0px;
		color: transparent;
		border: 0;
		outline: none;
		background: transparent;
	}
	.slick-dots li button:hover,
	.slick-dots li button:focus {
		outline: none;
	}
	.slick-dots li:hover,
	.slick-dots li.slick-active {
		background: rgba(255,255,255,.4);
		box-shadow: 0 0 5px rgba(2,109,213,.8);
	}
		.slick-dots li:hover:before,
		.slick-dots li.slick-active:before {

		}


.wrap {
	margin-top: 90px;
}
.columnWrap {
	width: 100%;
	max-width: 1000px;
	margin: 20px auto 0 auto;
	overflow: hidden;
	position: relative;
	letter-spacing: -.4em;
	text-align: center;
}
	.column {
		width: 100%;
		display: inline-block;
		vertical-align: top;
		letter-spacing: 0;
		text-align: left;
	}
	.main .section {
		width: 100%;
		position: relative;
		margin-top: 20px;
	}
	.section:not(:first-of-type) {
		margin-top: 60px;
	}

	.main .sectionHeadline {
		font-size: 150%;
		font-weight: 400;
		width: 100%;
		z-index: 0;
		line-height: 1;
		margin-bottom: .75em;
		border-bottom: 1px solid #999;
		box-shadow: 0 4px 0 rgba(0,0,0,.05);
		padding: 0 0 .7em .5em;
		text-shadow: 1px 1px 0 rgba(0,0,0,.2);
	}
	.main .sectionHeadline + .btn {
		position: absolute;
		right: 0;
		top: 0;
	}


	.main .sectionSubHeadline {
		font-size: 81.3%;
		color: #666;
		font-weight: 400;
		margin-bottom: 2em;
		padding-left: 1em;
	}

	.main .sectionMidHeadline {
		color: rgba(2,109,213,1.0);
		font-weight: 400;
		font-size: 125%;
		line-height: 1;
		margin-top: 2em;
		margin-bottom: 1em;
		padding-left: 1.5em;
	}
		.main .section .sectionMidHeadline:first-of-type {
			margin-top: 1em;
		}
		.main .section .sectionMidHeadline:before {
			font-family: 'hokuto7';
			content: '\e81d';
			margin-left: 2px;
			margin-right: .3em;
			margin-left: -1.3em;
		}


		.main .section * .sectionMidHeadline {
			color: #986f18;
		}
		.main .section * .sectionMidHeadline:before {
			content: '\e805';
		}



	figure {
		padding-bottom: 1em;
	}
	figure figcaption,
	.main .section > p {
		padding-bottom: 1.5em;
		line-height: 1.4;
		color: #444;
		font-size: 87.5%;
	}


	.main .sectionHeadline + p,
	.main .sectionHeadline + .btn + p {
		line-height: 1.7;
	}

	.main img {
		max-width: 100%;
	}
@media screen and (max-width: 999px) {
	.wrap {
		margin-top: 44px;
	}
	.main .sectionSubHeadline {
		width: 98%;
		margin: auto;
		margin-bottom: 2em;
	}
	.sectionInner {
		width: 95%;
		margin: auto;
	}
	.sectionInner p {
		font-size: 87.5%;
	}
}

/* INDEX INFORMATION
________________________________________________ */
.info {
	margin-top: 40px;
}
	.infoList {
		width: 100%;
	}
	@media screen and (max-width: 999px) {
		.infoList {
			width: 98%;
			margin: auto;
		}
	}
	.infoList li {
		width: 100%;
		text-align: left;
		clear: both;
		border-bottom: 1px dotted #ccc;
		padding: .5em 0 1em 1em;
	}
	.infoList li time {
		margin-right: 1em;
		display: inline-block;
		white-space: nowrap;
		color: #644504;
		text-align: left;
		overflow: hidden;
		font-size: 87.5%;
		line-height: 1;
		vertical-align: bottom;
	}

	.infoList li > .catLabel {
		display: inline-block;
		line-height: 1;
		font-size: 81.3%;
		vertical-align: bottom;
	}
		.infoList li > .catLabel a {
			color: #986f18;
			text-decoration: none;
		}

	.infoList li > a {
		width: 100%;
		text-decoration: underline!important;
		color: #0069a6;
		font-size: 87.5%;
		line-height: 1.2;
		display: inline-block;
		text-decoration: none;
		padding-top: .5em;
		letter-spacing: .1em;
	}
	.infoList li > a:hover {
		color: #005180;
		text-decoration: none!important;
	}
		.role li:nth-child(1) { background: #003959!important; }
		.role li:nth-child(2) { background: #005180!important; }
		.role li:nth-child(3) { background: #0069a6!important; }
		.role li:nth-child(4) { background: #007ac1!important; }

/* GLOBAL HEADER
________________________________________________ */
#gnavBtn { display: none!important;}
@media screen and (min-width: 1000px) {
	.globalHeader {
		box-shadow: none;
	}
		.globalHeaderfunction .contactus {
			display: inline-block;
			/*float: right;*/
			text-align: left;
		}
		.globalHeaderfunction .contactus dl {
			display: table;
		}
		.globalHeaderfunction .contactus dl dt,
		.globalHeaderfunction .contactus dl dd {
			display: table-cell;
			vertical-align: middle;
		}
		.globalHeaderfunction .contactus dl dt {
			color: #000;
			width: 66px;
			text-align: center;
			border-radius: 3px;
		}
		.globalHeaderfunction .contactus dl dd {
			padding-left: 5px;
			font-size: 81.3%;
				line-height: 1.7;
		}
		.globalHeaderfunction .contactus dl dd span {
			background: #333;
			color: #fff;
			text-decoration: none;
			padding: .35em 0 .3em 0;
			width: 9em;
			text-align: center;
			letter-spacing: .1em;
			display: inline-block;
			line-height: 1;
			border-radius: 3px;
			margin-right: .5em;
		}
		.globalHeaderfunction .contactus dl dd.access {
			padding-left: 1em;
		}
		.globalHeaderfunction .contactus dl dd.tel {
			color: rgba(2,109,213,1);
			font-weight: 700;
			font-size: 150%;
			padding-left: 1em;
		}
}
@media screen and (max-width: 767px) {
	/*
	#localNavBtn {
		display: block;
		position: absolute;
		right: 16px;
		top: 10px;
		cursor: pointer;
		width: 21px;
		height: 21px;
	}
	#localNavBtn span {
		display: block;
		position: absolute;
		top: 50%;
		margin-top: -1px;
		width: 21px;
		height: 2px;
		background: #1a1919;
		border-radius: 1px;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	#localNavBtn span:before,
	#localNavBtn span:after {
		content: "";
		position: absolute;
		display: block;
		width: 21px;
		height: 2px;
		background: #1a1919;
		border-radius: 1px;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	#localNavBtn span:before { top: -7px; }
	#localNavBtn span:after { top: 7px; }
	#localNavBtn.sidrOpen span {
		background: transparent;
	}
		#localNavBtn.sidrOpen span:before,
		#localNavBtn.sidrOpen span:after {
			width: 24px;
			top: 0;
			bottom: 0;
		}
		#localNavBtn.sidrOpen span:before {
			-webkit-transform: rotate(405deg);
			-ms-transform: rotate(405deg);
			transform: rotate(405deg);
		}
		#localNavBtn.sidrOpen span:after {
			-webkit-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}

	.lnavsidr {
		background: #036dd5;
		padding-top: 40px;
		width: 80vw;
		height: 100vh;
		position: fixed;
		top: 0;
		right: -80vw;
		z-index: 999;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.lnavsidr .lnavsidrInner {
		padding: 0 0 2em 0;
	}
	.lnavsidr ul {
		padding: 0;
		width: 100%;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.lnavsidr ul li a {
		display: block;
		padding: 1em 1.2em 1em 10px;
		line-height: 1;
		font-size: 93.8%;
		color: #fff;
		text-decoration: none;
		border-left: none;
		border-right: none;
		border-bottom: 1px solid #0035bc;
		border-top: solid 1px #1e90ff;
		*zoom: 1;
		opacity: 0.8;
		border-radius: 0;
		position: relative;
	}
	.lnavsidr ul li a:after {
		font-family: 'hokuto7';
		content: "\e811";
		position: absolute;
		top: 50%;
		right: 1.5em;
		margin-top: -.5em;
		font-size: 62.5%;
	}
	.lnavsidr ul li.current a,
	.lnavsidr ul li a:hover {
		opacity: 1;
		background: #00509d;
		color: #fff;
	}
	.lnavsidr li.child a {
		padding-left: 1.5em;
		font-size: 87.5%;
	}
	.lnavsidr ul.homeGnav {
		display: none;
	}
	*/
	/*
	#localNavBtn {
		display: inline-block;
		background: #036dd5;
		background: linear-gradient(to bottom, #036dd5, #2790f6);
		color: #fff;
		cursor: pointer;
		height: 30px;
		line-height: 30px;
		margin-left: 10px;
		margin-bottom: 1em;
		font-size: 87.5%;
		border-radius: 2px;
		float: right;
		position: fixed;
		z-index: 999999;
		right: 10px;
		top: 7px;
	}
	#localNavBtn:before {
		font-family: 'hokuto7';
		content: '法人北斗MENU';
		padding: 0.65em 0.5em 0 0.5em;
		line-height: 0.9;
		text-align: center;
		width: 4em;
		display: block;
		color: #fff;
		font-size: 81.3%;
	}
	*/
}

/* WELCOME
________________________________________________ */
@media screen and (min-width: 1000px) {
	.welcome {
		background: #eaeaea;
	}

	.index .welcome {
		width: 100%;
		min-height: 20px;
		overflow: hidden;
		position: relative;
		background: url(../../img/index/bg-needleHole.png);
	}
	.index .welcome {
		height: 432px;
	}
		.welcome > img {
			z-index: 1000;
			position: absolute;
			top: 50%;
			margin-top: -190px;
			left: 50%;
			margin-left: -328px;
		}
		.welcome .welcomeImgs {
			z-index: 0;
			display: block;
			margin: 0 auto;
			max-width: 1000px;
			position: relative;
		}
		.welcome .welcomeImgs dl {
			border-bottom: 1px solid #000;
			position: absolute;
			z-index: 1;
			line-height: 1;
			right: 0;
			bottom: 0;
			width: 100%;
			background: linear-gradient( to right, rgba(255,255,255,0) 40%, rgba(255,255,255,.8));
			text-shadow: 1px 1px 0 rgba(255,255,255,0.6),
						0 0 3px rgba(0,0,0,0.2);
		}

		.welcome .welcomeImgs dt {
			font-size: 28px;
			text-align: right;
			padding: .5em 40px .5em 0;
		}
		.welcome .welcomeImgs .address {
			font-size: 16px;
			text-align: right;
			padding: 0 46px 0 0;
		}
		.welcome .welcomeImgs .tel {
			font-size: 24px;
			text-align: right;
			padding: .3em 46px .5em 0;
		}
}
@media screen and (max-width: 999px) {
	.welcome > img {
		max-width: 100%;
		display: block;
		margin: 0 auto 20px auto;
	}
	.welcome .welcomeImgs {
		z-index: 0;
		display: block;
		margin: 0 auto;
		position: relative;
		width: 100%;
	}
	.welcome .welcomeImgs dl {
		z-index: 1;
		line-height: 1;
		right: 0;
		bottom: 0;
		width: 100%;
		min-height: 9em;
		color: #fff;
		background: url(../../img/index/bg-needleHole.png);
		text-shadow: 0 0 3px rgba(0,0,0,0.2);
	}
	.welcome .welcomeImgs dt {
		font-size: 24px;
		font-family: 'Reimin Y10 Medium JIS2004', serif;
		padding: .8em 0 .8em 0;
		text-align: center;
		white-space: nowrap;
	}
		.welcome .welcomeImgs dt img {
			max-width: 90%;
		}

	.welcome .welcomeImgs .address {
		font-size: 16px;
		padding: 0 0 .5em 0;
		text-align: center;
	}
	.welcome .welcomeImgs .tel {
		font-size: 24px;
		padding: 0 0 .5em 0;
		text-align: center;
	}
}
@media screen and (max-width: 767px) {
	.welcome {
		padding-top: 20px;
	}
	.welcome .welcomeImgs {
		border-top: 1px solid #000;
	}
	.welcome .welcomeImgs dl {
		z-index: 1;
		line-height: 1;
		right: 0;
		bottom: 0;
		width: 100%;
		min-height: 7.5em;
		color: #fff;
		background: url(../../img/index/bg-needleHole.png);
		text-shadow: 0 0 3px rgba(0,0,0,0.2);
	}
	.welcome .welcomeImgs dt {
		font-size: 14px;
		font-family: 'Reimin Y10 Medium JIS2004', serif;
		padding: .8em 0 .8em 0;
		text-align: center;
		white-space: nowrap;
	}
	.welcome .welcomeImgs .address {
		font-size: 14px;
		padding: 0 0 .5em 0;
		text-align: center;
	}
	.welcome .welcomeImgs .tel {
		font-size: 20px;
		padding: 0 0 .5em 0;
		text-align: center;
	}
}

/* GNAV
________________________________________________ */
@media screen and (min-width: 1000px) {
	.globalNav {
		width: 1000px;
		margin: 0 auto;
	}
		.globalNav ul {
			width: 100%;
			letter-spacing: -.4em;
			border-left: 1px solid #eaeaea;
		}
		.globalNav ul li {
			letter-spacing: 0;
			font-size: 87.5%;
			display: inline-block;
			vertical-align: top;
			text-align: center;
			position: relative;
			border-right: 1px solid #eaeaea;
			width: -webkit-calc( 100% / 6 );
			width: calc( 100% / 6 );
		}
		.globalNav ul li a {
			text-decoration: none;
			color: #000;
			display: block;
			width: 100%;
			height: 100%;
			padding: 1.5em 0;
			border-bottom: 1px solid #eaeaea;
			text-shadow: 1px 1px 0 rgba(0,0,0,.2);
		}
		.globalNav ul li a:hover,
		.globalNav ul li.current a {
			box-shadow: inset 0 0 10px rgba(0,0,0,0.05);
		}

		.globalNav ul li:hover:before,
		.globalNav ul li:hover:after,
		.globalNav ul li.current:before,
		.globalNav ul li.current:after {
			content: "";
			height: 0;
			position: absolute;
			width: 0;
			border: 12px solid transparent;
			left: 50%;
			margin-left: -12px;
		}
		.globalNav ul li:hover:before,
		.globalNav ul li.current:before {
			border-top-color: #ddd;
			top: 100%;
			z-index: 10000;
		}
		.globalNav ul li:hover:after,
		.globalNav ul li.current:after {
			border-top-color: #f8f8f8;
			top: 98%;
			z-index: 20000;
		}
		.index .globalNav ul li:hover:before,
		.index .globalNav ul li.current:before,
		.index .globalNav ul li:hover:after,
		.index .globalNav ul li.current:after {
			display: none;
		}
}
@media screen and (max-width: 999px) {
	.globalNav {
		width: 100%;
		margin: 0 auto;
	}
		.globalNav ul {
			width: 100%;
			letter-spacing: -.4em;
			border-left: 1px solid #eaeaea;
		}
		.globalNav ul li {
			letter-spacing: 0;
			font-size: 87.5%;
			display: inline-block;
			vertical-align: top;
			text-align: center;
			border-right: 1px solid #eaeaea;
			width: -webkit-calc( 100% / 3 );
			width: calc( 100% / 3 );
			position: relative;
		}

			.globalNav ul li:nth-child(4).current:before,
			.globalNav ul li:nth-child(6).current:before {
				content: "";
				height: 0;
				position: absolute;
				width: 0;
				border: 12px solid transparent;
				border-top-color: #ddd;
				top: 100%;
				left: 50%;
				margin-left: -12px;
				z-index: 10000;
			}
			.globalNav ul li:nth-child(4).current:after,
			.globalNav ul li:nth-child(6).current:after {
				content: "";
				height: 0;
				position: absolute;
				width: 0;
				border: 12px solid transparent;
				border-top-color: #f7f7f7;
				top: 98%;
				left: 50%;
				margin-left: -12px;
				z-index: 20000;
			}

		.globalNav ul li a {
			text-decoration: none;
			color: #000;
			display: block;
			width: 100%;
			height: 100%;
			padding: 1.5em 0;
			border-bottom: 1px solid #eaeaea;
			text-shadow: 1px 1px 0 rgba(0,0,0,.2);
		}
		.globalNav ul li a:hover,
		.globalNav ul li.current a {
			box-shadow: inset 0 0 10px rgba(0,0,0,0.05);
		}
}
@media screen and (max-width: 767px) {
	.globalNav {
		display: none;
	}
	.gnavsidr.global ul:nth-of-type(1) li:not(.home) {
		display: none;
	}
}

/* RELATED FACILITIES
________________________________________________ */
.relatedFacilities > ul {
	width: 100%;
	letter-spacing: -.4em;
}
	.relatedFacilities > ul > li {
		letter-spacing: 0;
		font-size: 87.5%;
		display: inline-block;
		vertical-align: top;
		margin-right: 10px;
		margin-bottom: 10px;
		border: 1px solid #eaeaea;
		width: 100%;
		height: 86px;
		cursor: pointer;
		position: relative;
		padding: 3px;
	}
	.relatedFacilities > ul > li:hover {
		box-shadow: inset 0 0 16px rgba(0,0,0,0.1);
	}
.relatedFacilities > ul > li > img {
	height: 100%;
	float: left;
	margin-right: 10px;
}
.relatedFacilities > ul > li .role {
	letter-spacing: -.4em;
	display: inline-block;
	margin-top: 3px;
}
	.index .relatedFacilities > ul > li .role {
		margin-top: 10px;
	}

	.relatedFacilities > ul > li .role li {
		letter-spacing: 0;
		display: inline-block;
		float: left;
		margin-right: 2px;
		padding: 0.3em 6px 0.3em 6px;
		font-size: 10px;
		letter-spacing: 0;
		line-height: 1;
		color: #fff;
		text-align: center;
		vertical-align: middle;
		background: #036dd5;
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
	}
	.role li:nth-child(1) { background: #003959!important; }
	.role li:nth-child(2) { background: #005180!important; }
	.role li:nth-child(3) { background: #0069a6!important; }
	.role li:nth-child(4) { background: #007ac1!important; }
.relatedFacilities > ul > li a {
	line-height: 1;
	font-size: 93.8%;
	color: #333;
	text-decoration: none;
	display: block;
	margin: -1em 0 0 0;
}
	.relatedFacilities > ul li a span {
		font-size: 11px;
		color: rgba(2,109,213,1.0);
		display: block;
		margin-bottom: .5em;
		font-family: 'Century Gothic';
	}

@media screen and (min-width: 1000px) {
	.index .relatedFacilities {
		width: 1000px;
		display: block;
		margin: 0 auto;
		margin-top: 24px;
		margin-bottom: 20px;
	}
		.index .relatedFacilities > ul > li {
			height: 108px;
			width: -webkit-calc( 100% / 3 - 7px );
			width: calc( 100% / 3 - 7px );
		}
		.index .relatedFacilities > ul > li:nth-of-type(3n) {
			margin-right: 0;
			width: -webkit-calc( 100% / 3 - 6px );
			width: calc( 100% / 3 - 6px );
		}
}
@media screen and (max-width: 999px) {
	.index .relatedFacilities {
		width: 100%;
		display: block;
		padding: 0 10px;
		margin: 0 auto;
		margin-top: 16px;
		margin-bottom: 20px;
	}
		.relatedFacilities > ul > li {
			margin-right: 10px;
			margin-bottom: 10px;
		}

	.index .relatedFacilities > ul > li {
		height: 108px;
		width: -webkit-calc( 100% / 2 - 10px );
		width: calc( 100% / 2 - 10px );
	}
	.index .relatedFacilities > ul > li:nth-of-type(even) {
		margin-right: 0;
	}
}
@media screen and (max-width: 767px) {
	.index .relatedFacilities > ul > li {
		height: 108px;
		width: 100%;
	}
	.relatedFacilities > ul > li a {
		line-height: 1;
		font-size: 93.8%;
		color: #333;
		text-decoration: none;
		display: block;
		margin: 0 0 0 0;
	}
}


/* LAYOUT
________________________________________________ */
@media screen and (min-width: 1000px) {
	.column.main {
		width: 70%;
		padding-right: 20px;
	}
	.column.sub {
		width: 30%;
	}
}
@media screen and (max-width: 767px) {
	.column.main {
		width: 100%;
	}
	.column.sub {
		width: 100%;
	}
}

/* RECRUIT INFO
________________________________________________ */
.recruitInfo {
		background: rgba(2,109,213,1.0);
		padding: 4px;
		margin-bottom: 10px;
	}
		.recruitHeadline {
			color: #fff;
			text-align: center;
			font-weight: 400;
			font-size: 175%;
			padding: .85em 0;
			line-height: 1;
		}
		.recruitInfo li {
			display: block;
			margin-bottom: 2em;
		}
			.recruitInfo a img {
				width: 100%;
			}
			.recruitInfo p {
				padding: .5em .8em 0 .8em;
				color: #fff;
				font-size: 81.3%;
				line-height: 1.4;
			}
@media screen and (max-width: 999px) {
	.recruitInfo {
		background: rgba(2,109,213,1.0);
		padding: 4px;
		margin-bottom: 10px;
	}
		.recruitInfo ul {
			letter-spacing: -.4em;
		}
		.recruitInfo li {
			display: inline-block;
			vertical-align: top;
			width: calc( 100% / 3 );
			letter-spacing: 0;
			margin-bottom: .5em;
			padding: 4px;
		}
			.recruitInfo a img {
				width: 100%;
			}
			.recruitInfo p {
				padding: .5em .8em 0 .8em;
				color: #fff;
				font-size: 81.3%;
				line-height: 1.4;
			}
}
@media screen and (max-width: 767px) {
	.recruitInfo {
		background: rgba(2,109,213,1.0);
		padding: 4px;
		margin-bottom: 10px;
	}
		.recruitInfo ul {
			letter-spacing: 0;
		}
		.recruitInfo li {
			display: block;
			width: 100%;
			margin-bottom: .5em;
		}
			.recruitInfo a img {
				width: 100%;
			}
			.recruitInfo p {
				padding: .5em .8em 0 .8em;
				color: #fff;
				font-size: 81.3%;
				line-height: 1.4;
			}
}

/* MESSAGE
________________________________________________ */
@media screen and (min-width: 1000px) {
	.section.message {
		/*
		background-image: url(../../img/index/bg-message.jpg),
		linear-gradient( to bottom, #fff 1%, #fef4e4);
		background-repeat: no-repeat;
		background-position: center bottom;
		background-size: 100%;
		*/
		/*min-height: 1100px;*/
		position: relative;
		padding: 0;
	}
		.section.message .photo {
			/*
			position: absolute;
			top: 20px;
			right: 16px;
			*/
			float: right;
			width: 200px;
			text-align: center;
			margin-left: 1em;
			margin-bottom: 1em;
		}
			.section.message .photo img {
				width: 100%;
			}

		.section.message .sectionInner {
			font-size: 87.5%;
			letter-spacing: 0;
			width: 100%;
			padding: 1em;
			border-radius: 8px;
		}
		.section.message .sectionInner .text {
			padding-top: 1em;
			padding-bottom: 1em;
			width: 100%;
			text-shadow: 1px 1px 0 rgba(255,255,255,.7);
		}
		.section.message .sectionInner .text.alpha {
			padding-top: 0;
		}
		.section.message .sectionInner .text.delta {
			padding-top: 0;
		}
		.section.message .sectionInner .text.delta {
			/*padding-left: 36%;*/
		}
		.section.message .sectionInner .text.epsi {
			/*padding-left: 50%;*/
		}
}
@media screen and (max-width: 999px) {
	.section.message .sectionInner .photo {
		display: block;
		text-align: center;
		margin: 2em auto;
	}
	.section.message .sectionInner .text {
		padding-bottom: 1em;
		font-size: 87.5%;
	}
}

/* POLICY
________________________________________________ */
dl.policy {
	margin-bottom: 60px;
}
.policyCircle {
	background: #036dd5;
	/*
	box-shadow: inset 0 0 10px rgba(0,0,0,0.05);
	border: 1px solid #ddd;
	*/
	color: #fff;
	font-weight: 400;
	text-align: center;
	display: block;
	margin: 0 auto;
	margin-top: 40px;
	letter-spacing: .8em;
	padding: 1.5em 0 1.5em .9em;
	width: 12em;
	line-height: 1;
	border-radius: 50%;
	position: relative;
	font-size: 125%;
	/*text-shadow: 0 0 3px rgba(0,0,0,0.4);*/
}
	.policyCircle:before,
	.policyCircle:after {
		content: '';
		height: 0;
		position: absolute;
		width: 0;
		border: 11px solid transparent;
		left: 50%;
		margin-left: -11px;
		z-index: 100;
	}
	.policyCircle:before {
		top: 98%;
		border-top-color: #036dd5;
	}
	/*
	.policyCircle:after {
		top: 99%;
		border-top-color: #f8f8f8;
	}
	*/

	dl.policy dd {
		text-align: center;
	}
	dl.policy.idea dd {
		font-size: 275%;
		line-height: 1.2;
		margin-top: 20px;
		margin-bottom: 40px;
		color: #986f18;
		font-weight: 700;
		font-family: "游明朝", serif;
		text-shadow: rgba(233,200,168,1) 1px 1px 0;
	}
	dl.policy dd dl dt {
		margin-top: 20px;
		font-size: 150%;
		font-weight: 700;
		color: #986f18;
		font-family: "游明朝", serif;
		text-shadow: rgba(233,200,168,1) 1px 1px 0;
	}
	dl.policy dd dl dd {
		text-align: left;
		color: #666;
		width: 78%;
		margin: 0 auto;
	}
	dl.policy dd dl dd:not(:last-of-type):after {
		display: block;
		margin: .5em auto 0 auto;
		content: '●';
		color: #ccc;
		font-size: 28px;
		line-height: 1;
		width: 100%;
		text-align: center;
	}

@media screen and (max-width: 999px) {
	dl.policy dd {
		width: 98%;
		margin: auto;
	}
	dl.policy.idea dd {
		font-size: 1.5rem;
	}
	dl.policy dd dl dt {
		font-size: 1.5rem;
	}
	dl.policy dd dl dd {
		font-size: 87.5%;
		width: 100%;
	}
}

/* GBNET
________________________________________________ */
.gbGuideTab {
	width: 100%;
	letter-spacing: -.4em;
	border-bottom: none;
	display: table;
	height: 5em;
}
	.gbGuideTab .tab {
		width: 50%;
		letter-spacing: 0;
		display: table-cell;
		text-align: center;
		border-bottom: 1px solid #ccc;
		cursor: pointer;
		color: #999;
		vertical-align: middle;
	}
		.tab span {
			display: inline-block;
			/*background: #f8f8f8;*/
		box-shadow: inset 0 0 16px rgba(0,0,0,0.1);
		border: 1px solid #ddd;
			width: 94%;
			padding: 1.2em 0;
			border-radius: 5px;
		}
		.gbGuideTab .tab.current {
			border: 1px solid #ddd;
			border-bottom: 1px solid #fff;
			color: #000;
			cursor: default;
		}

		.tab.current span {
			background: #fff;
			border: none;
			box-shadow: none;
		}

		.gbGuideTab .tab:hover {
			color: #444;
		}
		.gbGuideTab .tab.current:hover {
			color: #000;
		}
.gbGuideContentWrap {
	border: 1px solid #ddd;
	border-top: none;
	border-radius: 0 0 10px 10px;
}
	.gbGuideContent {
		padding: 2em 1em 1em 1em;
	}
	.gbGuideContent p {
		font-size: 87.5%;
	}

.joining > dd {
	padding-top: 0!important;
}
.joining > dd > dl {
	border: 1px solid #ddd;
	margin-bottom: 5px;
}
	.joining > dd > dl > dt {
		padding: 1em 1em 0.8em 1em;
		position: relative;
		cursor: pointer;
		text-shadow: 0 0 3px rgba(0,0,0,0.2);
	}


		.joining > dd > dl > dt:hover,
		.joining > dd > dl > dt.open {
			text-shadow: none;
			box-shadow: inset 0 0 16px rgba(0,0,0,0.1);
		}
		.joining > dd > dl > dt.open {
			border-bottom: 1px solid #ddd;
		}






		.joining > dd > dl > dt:after {
			content: '\e80f';
			font-family: 'hokuto7';
			position: absolute;
			right: 20px;
			color: #ccc;
			text-shadow: none;
			transition: transform .2s linear;
		}
		.joining > dd > dl > dt.open:after {
			/*content: '\e812';*/
			transform: rotate3d(1,0,0,180deg);
			color: #666;
		}

	.joining > dd > dl > dd {
		background: #fff;
		padding: 1em;
		display: none;
	}
	.joining > dd > dl > dd dl {
		letter-spacing: -.4em;
		margin-bottom: 1.5em;
	}
	.joining > dd > dl > dd dl dt {
		letter-spacing: 0;
		display: inline-block;
		width: 20%;
		vertical-align: top;
		font-weight: 700;
	}
	.joining > dd > dl > dd dl dd {
		letter-spacing: 0;
		display: inline-block;
		width: 80%;
		margin-bottom: .5em;
	}
	.joining > dd > dl > dd iframe {
		width: 100%;
		height: 300px;
	}

	.joining > dd > dl > dd iframe + img {
		display: block;
		margin: 1em auto;
		border: 1px solid #ccc;
	}
	.joining > dd > dl > dd iframe + img + p {
		text-align: center;
		line-height: 1;
		margin-bottom: 1em;
		font-weight: 700;
	}
	.docProf {
		border-radius: 10px;
		padding: 1em;
		/*background: #f5f5f5;*/
		box-shadow: inset 0 0 5em rgba(0,0,0,0.1);
		border: 1px solid #ddd;
	}

@media screen and (max-width: 999px) {
	.gbGuide {
		width: 98%;
		margin-right: auto;
		margin-left: auto;
	}

	.joining > dd {
		padding: .5em 1em!important;
	}
}
@media screen and (max-width: 767px) {
	.joining > dd > dl > dd dl dt {
		display: block;
		width: 100%;
		background: #eee;
		padding: .2em 1em;
	}
	.joining > dd > dl > dd dl dd {
		display: block;
		width: 100%;
		padding: .2em 1em;
	}
}

.sub .section {
	width: 100%;
	margin-bottom: 10px;
	border: 1px solid #eee;
	display: block;
	vertical-align: top;
	position: relative;
}
	.sub .section .sectionHeadline {
		position: relative;
		font-weight: 400;
		height: 58px;
		line-height: 58px;
		text-align: center;
		width: 100%;
		color: #000;
		text-shadow: 0 0 3px rgba(0,0,0,0.4);
	}
	.sub .section.localNav {
		box-shadow: inset 0 0 5em rgba(0,0,0,0.05);
		border-top: 1px solid #00509d;
	}
		.sub .section.localNav ul {
			padding: 0 3px;
		}
		.sub .section.localNav ul li {
			display: table;
			height: 41px;
			min-height: 41px;
			width: 100%;
			border: 1px solid #eee;
			margin-bottom: 3px;
		}
		.sub .section.localNav ul li a {
			background: #fff;
			display: table-cell;
			width: 100%;
			vertical-align: middle;
			text-decoration: none;
			font-size: 81.3%;
			padding: .3em 1.5em .3em 1.5em;
			line-height: 1.1;
			color: #4c4c4c;
			position: relative;
		}
		.sub .section.localNav ul li a:after {
			font-family: 'hokuto7';
			content: '\e814';
			position: absolute;
			right: 1em;
			top: 50%;
			margin-top: -.5em;
		}
			.sub .section.localNav ul li.current a,
			.sub .section.localNav ul li a:hover {
				background: #0069cd;
				background-image: linear-gradient( to bottom, #00509d, #0069cd);
				color: #fff;
				transition: all .5s;
				text-shadow: 1px 1px 0 rgba(0,0,0,1)
			}

@media screen and (max-width: 999px) {
	.localNav {
		width: 100%;
		margin: 0 auto;
	}
		.localNav ul {
			width: 100%;
			letter-spacing: -.4em;
			border-left: 1px solid #eaeaea;
		}
		.localNav ul li {
			letter-spacing: 0;
			font-size: 87.5%;
			display: inline-block;
			vertical-align: top;
			text-align: center;
			padding: 3px;
			width: -webkit-calc( 100% / 3 );
			width: calc( 100% / 3 );
		}
		.localNav ul li a {
			text-decoration: none;
			color: #000;
			display: block;
			width: 100%;
			height: 100%;
			padding: 1em;

			border: 1px solid #eaeaea;
		}
		.localNav ul li a:hover,
		.localNav ul li.current a {
			box-shadow: inset 0 0 10px rgba(0,0,0,0.05);
		}
}
@media screen and (max-width: 767px) {
	.localNav ul li {
		width: -webkit-calc( 100% / 2 );
		width: calc( 100% / 2 );
		font-size: 75%;
		display: table;
		float: left;
		min-height: 4em;
	}
	.localNav ul li a {
		padding: 0;
		line-height: 1.2;
		display: table-cell;
		vertical-align: middle;
	}
}


/* LIST FUNCTIONS
________________________________________________ */
.listContent,
.defineList {
	width: 100%;
	letter-spacing: -.4em;
	margin-bottom: 30px;
	font-size: 87.5%;
	margin-top: 1em;
}
.defineList > dt,
.defineList > dd {
	letter-spacing: 0;
	display: inline-block;
	margin-bottom: 1em;
	vertical-align: top;
}
.listContent li {
	margin-bottom: .7em;
	text-indent: -1em;
	padding-left: 1.5em;
	line-height: 1.3;
}
	.listContent li:before {
		font-family: 'hokuto7';
		content: '\e814';
		margin-left: .5em;
		margin-right: .5em;
	}
	.listContent li a {
		color: #555;
		text-decoration: none;
		border-bottom: 1px solid #555;
	}
	.listContent li a:hover {
		color: #986f18;
		border-bottom: none;
	}

@media screen and (min-width: 1000px) {
	.defineList > dt {
		width: 24%;
		font-weight: 400;
		/*background: #eee;*/
		box-shadow: inset 0 0 16px rgba(0,0,0,0.1);
		border: 1px solid #ddd;
		padding: .5em 1em .5em 1em;
	}
	.defineList > dd {
		width: 76%;
		line-height: 1.7;
		padding-left: 1em;
		padding: .5em 0 1em 1em;
	}
	.defineList.regional > dt {
		width: 15%;
	}
	.defineList.regional > dd {
		width: 85%;
	}
}
@media screen and (max-width: 999px) {
	.defineList > dt {
		width: 100%;
		font-weight: 400;
		background: #eee;
		padding: .5em 1em .5em 1em;
	}
	.defineList > dd {
		width: 100%;
		line-height: 1.7;
		padding-left: 1em;
		padding: .5em 0 1em 1em;
	}
}

.defineList > dt:empty {
	width: 0;
	height: 0;
	padding: 0;
	position: absolute;
}
.defineList > dt:empty + dd {
	width: 100%;
}
.defineList > dd > ul {
	margin-left: 1.5em;
}
	.defineList > dd > ul > li:before {
		content: '\0030fb ';
		font-size: 200%;
		line-height: 1;
		vertical-align: -.2em;
		margin-left: -1em;
	}
.defineList > dd ul li > ul {
	margin-bottom: 1.5em;
	margin-left: 1em;
}
	.defineList > dd ul li > ul li {
		line-height: 1.4;
	}
	.defineList > dd ul li > ul li:before {
		content: '- ';
		font-size: 150%;
		margin-left: -.6em;
	}
.defineList > dd ol {
	margin-left: 1.3em;
}
	.defineList > dd ol > li {
		padding-bottom: .3em;
		list-style-type: none;
	}
	.defineList > dd ol li:before {
		margin-left: -1.3em;
		margin-right: .3em;
		font-size: 125%;
	}
	.defineList > dd ol > li:nth-of-type(1):before { content: '\002460'; }
	.defineList > dd ol > li:nth-of-type(2):before { content: '\002461'; }
	.defineList > dd ol > li:nth-of-type(3):before { content: '\002462'; }
	.defineList > dd ol > li:nth-of-type(4):before { content: '\002463'; }
	.defineList > dd ol > li:nth-of-type(5):before { content: '\002464'; }
	.defineList > dd ol > li:nth-of-type(6):before { content: '\002465'; }
	.defineList > dd ol > li:nth-of-type(7):before { content: '\002466'; }
	.defineList > dd ol > li:nth-of-type(8):before { content: '\002467'; }
	.defineList > dd ol > li:nth-of-type(9):before { content: '\002468'; }
	.defineList > dd ol > li:nth-of-type(10):before { content: '\002469'; }

	.defineList > dd ol > li > ol {
		margin-left: 1.5em;
		margin-top: .5em;
	}
	.defineList > dd ol > li > ol > li {
		padding-bottom: 0;
		list-style-type: decimal;
	}
	.defineList > dd ol > li > ol > li:before { content: ''; display:none;}

/* [ TABLE ]
________________________________________________ */
table {
	width: 100%;
	margin-bottom: 1em;
}
	table caption {
		text-align: left;
		padding: .2em 0;
		color: #333;
		font-size: 125%;
	}
		table caption a {
			color: #333;
			text-decoration: none;
			border-bottom: 1px solid #333;
			font-weight: 400;
		}
		table caption p {
			padding-bottom: 0!important;
			white-space: nowrap;
			text-align: right;
			float: right;
		}
			table caption p .label {
				font-size: 11px;
				padding: .3em 1em;
				border-radius: 0;
				margin: 0 0 0 .1em;
				background: #f9f9f9;
				background: linear-gradient( to bottom, #f5f5f5, #f9f9f9);
				color: #222;
				border: 1px solid #e2e2e2;
				box-shadow: inset 0 0 2px #fff;
			}
	table caption time {
		font-size: 12px;

	}

	table th,
	table td {
		border: 1px solid #ddd;
		text-align: center;
		vertical-align: middle;
	}
	table th {
		padding: .2em .5em;
		font-size: 87.5%;
	}
	table td {
		min-width: 4em;
		padding: 1em 1em;
		text-align: left;
		font-size: 87.5%;
	}
	table.cellCenter td {
		text-align: center;
	}
	table tr:nth-of-type(1) td.th,
	table tr:nth-of-type(1) th,
	table th:nth-of-type(1) {
		background: #f5f5f5;
		font-weight: 400;
	}

.formTable th {
	width: 20%;
}
.formTable td {
	width: 70%;
	background: #fff;
}
.formTable th,
.formTable td {
	padding: 1em 1em;
}

.formTable.to {
	border: 3px solid Orange;
}
.formTable caption {
	color: #000;
	padding-top: 1em;
}
.formTable.to caption {
	color: #ba7900;
}
	.withForm input[type="text"],
	.withForm input[type="email"],
	.withForm input[type="tel"],
	.withForm input[type="number"],
	.withForm textarea {
		font-size: 16px;
		padding: .5em;
		font-family: 'Lato','Meiryo';
	}
	.withForm textarea {
		vertical-align: middle;
		width: 100%!important;
	}
	.withForm textarea#message {
		height: 240px;
	}
	.withForm textarea#other {
		height: 70px;
	}
	.withForm .require input[type="text"],
	.withForm .require input[type="email"],
	.withForm .require input[type="tel"],
	.withForm .require textarea {
		width: 88%;
	}

	.withForm td div {
		text-align: left;
		display: block;
		vertical-align: middle;
	}

	#inquiry { height: 300px; }

	#room { width: 8em; }
	label input[type="radio"] {
		vertical-align: -2px;
	}
	#year { width: 5em;}
	#month { width: 4em;}
	#day { width: 4em;}
	#zip,#zip2 { width: 10em; margin-bottom: .5em;}
	#address, #address2 { width: 88.5%;}

	.withForm .require.radio div {
		text-align: left;
		display: inline-block;
		vertical-align: middle;
	}
	.require.radio label {
		display: block;
	}

@media screen and (max-width: 767px) {
	.formTable th,
	.formTable td {
		width: 100%;
		display: block;
	}
	.formtable th {
		margin-top: .1em;
	}
	.formtable td {
		border-top: none;
	}
	.formtable thead {
		display: none;
	}
}

.label.req {
	background: #ff0000;
	border-radius: 3px;
	color: #fff;
	line-height: 1;
	padding: .2em .5em .1em .5em;
	margin-right: 1em;
	display: inline-block;
	font-size: 87.5%;
	vertical-align: middle;
}

.error {
	color: Crimson;
	float: left;
	padding-top: 0.5em;
	margin-right: 1em;
}
input,
textarea {
	border: 1px solid rgba(0,0,0, .2);
}
input:focus,
textarea:focus {
	outline: 0;
	outline: thin dotted \9;
	border: 1px solid rgba(82, 168, 236, 0.8);
	-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
	-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
	box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
	background: #fff!important;
}

label.warning,
input.warning,
textarea.warning {
	background: #f2dede;
	border:1px solid #cc5200!important;
}

input.warning:focus,
textarea.warning:focus {
	-webkit-box-shadow: 0 0 6px #ffa366;
	-moz-box-shadow: 0 0 6px #ffa366;
	box-shadow: 0 0 6px #ffa366;
}

@media screen and (min-width: 1000px) {
	.sp { display:none!important; }
}
@media screen and (max-width: 999px) {
	.pc { display:none!important; }
}








@media screen and (max-width: 999px) {

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

}
