@charset "utf-8";
/* CSS Document */
/* RESET & SETTING
----------------------------------------------- */
/*html, body, 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,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
}*/

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
	display: block;
}

html,
body {
	font-family: "メイリオ", "Hiragino Kaku Gothic ProN", sans-serif;
/*	font-size: 100%;
	text-align: center;*/
}
/*a { color: inherit; text-decoration: underline; }*/
br { letter-spacing: normal; }
img { vertical-align: top; }
ol, ul { list-style: none; }
table { border-collapse: collapse; border-spacing: 0; }

/**/
.mab40 { margin-bottom:40px!important; }
.mab80 { margin-bottom:80px;}
.pab40 { padding-bottom:40px;}

.fl { float: left; }
.fr { float: right; }
.bgW { background: #fff!important; }
.bgRB { background: #7098c3!important; color: #fff!important;}
.bgRRB { background: #a9bfd7!important; }
.bgpopplanH { background:#267fc5!important; }
.bgpopplan { background:#e1f2f7!important; }

.cb { clear: both; }

.taC { text-align: center;}
.taL { text-align: left;}
.taR { text-align: right;}
.pc { display: block;}
.sp { display: none;}
#Navtel a { color:#fff !important; font-weight:bold; display:inline !important;padding:0 !important; }

/* ----------------------- */

.bold { font-weight: bold!important;}
.fontRed { color: #ff9000!important; }
.fontS { font-size: 1.2rem!important; }
.fontL { font-size: 2rem!important;}

.bg_white2 h3 { background: #0034c7;
	/*-webkit-border-radius: 16px;
	-moz-border-radius: 16px;*/
	border-radius: 16px;
	color: #fff;
	display: inline-block;
	padding: 5px 20px 2px;
	margin-bottom: 20px;
}

.bg_blue h3 {
	color: #fff;
}

h3 { font-size: 2.5rem; margin-bottom: 2rem; font-weight:bold; }
/*p.txt { line-height: 1.6; padding-bottom: 25px; color: #333; }*/
/*p.bnr { padding-bottom: 60px; padding-top: 40px;}*/
/*p.bnr a:hover img { opacity: .5;}*/

/* ----------------------- */
div#mainArea {
	background-image:url(../images/main.jpg);
	background-position: center top, center top;
	background-size: cover ;
	position: relative;
	height: 570px;
}
#mainArea h2 { padding: 266px 0 0 0; overflow: hidden; line-height: 2.0; height: 0; width: 433px; /*margin: 0 auto; */background: url(../images/h1.png) no-repeat;/*margin-top:130px; margin-bottom:100px;*/position: absolute;top: 0; left: 0; right: 0; bottom: 0; margin: auto;height: 266px;}
#header2 { width: 100%;position: relative;/* height: 33px;*/}
/*
#mainArea .logo_ks { position:absolute; bottom:10px; right:10px; width:25%;}
#mainArea .logo_ks img {width:100%;}
*/
div#header2 { color: #fff; position: relative; /*position: fixed; */ width: 100%; /*z-index: 100;*/
	/*-webkit-transition: .2s linear;
	-moz-transition: .2s linear;*/
	transition: .2s linear;
}
#mainArea .logo_ks { padding-bottom:20px; margin-right:10px;}
div#header2 #logo { /*float:left; *//*padding-top: 5px;*/ text-align: left; margin-left: 20px; color:#fff; text-align: center;font-size:2rem; padding: .5rem;}
div#header2 #logo span { font-size: 10px; font-weight: normal; vertical-align: middle; padding-left: 10px;	 }
div#header2 #mainNav { /*float:right; */}

div#header2 #mainNav ul {}
div#header2 #mainNav ul li {
	display: inline-block;
	font-size: 15px;
	color: #fff;
	line-height: 1;
	vertical-align: middle;
}

div#header2 #mainNav ul li a {
	vertical-align: middle;
	display: block;
	color:#fff; !important;

}

div#header2 #mainNav ul li a:link,
div#header2 #mainNav ul li a:hover,
div#header2 #mainNav ul li a:active,
div#header2 #mainNav ul li a:visited { color: #fff; text-decoration: none; }

div#header2	{
	-webkit-transition: .2s linear;
	-moz-transition: .2s linear;
	transition: .2s linear;
	color: #333;
	background: rgba(37,37,37,0.95);
	box-shadow: 0 5px 5px rgba(0,0,0,0.2);
}
div#header2 #mainNav ul li {
	display: inline-block;
	font-size: 15px;
	color: #fff;
	line-height: 1;
	vertical-align: middle;
}

div#header2	#mainNav ul li a {
	vertical-align: middle;
	display: block;
	padding: 8px 16px;

}
div#header2	#mainNav ul li:last-child a{
	border: 1px solid #ff9000;
	background: #ff9000;
	color: #fff!important;
	font-weight:bold;
}

div#header2	#mainNav ul li:last-child a:hover{ background: rgba(255,178,77,1); }

div#header2	#mainNav ul li a:link,
div#header2	#mainNav ul li a:hover,
div#header2	#mainNav ul li a:active,
div#header2	#mainNav ul li a:visited { color: #333; text-decoration: none; }


#contentsArea a,#contentsArea a:link, #contentsArea a:hover, #contentsArea a:visited { color:#265a8b	}

a.btnCV {
	background: #ff9000;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	padding: 15px 0;
	color: #fff;
	text-decoration: none;
	line-height: 1;
	font-size: 2rem;
	text-align: center;
	/*font-size: 1.4rem;
	-webkit-transition: .2s linear;
	-moz-transition: .2s linear;*/
	transition: .2s linear;
	display: inline-block;
	vertical-align: middle;
	width: 100%;
	font-weight:bold;
}

a.btnCV:hover {
	-webkit-transition: .2s linear;
	-moz-transition: .2s linear;
	transition: .2s linear;
	background: rgba(255,178,77,1);
}

a.btnCV,
a.btnCV:link,
a.btnCV:hover,
a.btnCV:visited { color: #fff!important; }



/* ------ layout ------ */
.bg_white {
	background: url(../images/bg_white.png) repeat;
	padding: 50px 0;
	line-height:2.0em;
}


.bg_blue2 .obj01{ position: absolute; right:0; bottom:0;}
.bg_white2 .obj02{ position: absolute; left:-413px; bottom:0;}

.bg_white2 {
	background: url(../images/bg_white2.png) repeat;
	padding: 50px 0;
	line-height:2.0em;
	position:relative;
}
.bg_blue2 .rpOr {}
.bg_white2 .rpOr { padding-left:290px; max-width:760px;}

.bg_blue {
	background: url(../images/bg_blue.gif) repeat;
	padding: 58px 0;
	line-height:2;
	color:#fff;
}

.bg_blue2 {
	background: #a0d3ff;
	padding: 50px 0;
	line-height:2.0em;
	color:#012ba1;
	position:relative;
}

.bg_blue3 {
	background: #034588;
	padding: 50px 0;
	line-height:2.0em;
	color:#fff;
}


.rpOr { margin: 0 auto; max-width: 1280px; }


@media screen and (max-width: 1480px) { .rpOr { max-width: 980px; }

}

/* スマホの横向き - ブラウザ幅が最大750pxで高さよりも大きい場合 */
@media (max-width: 750px) and (orientation: landscape) {
#mainArea .logo_ks img {width:25%;}
}

@media screen and (max-width: 1040px) { #logo span { display: none; }
div#header2 #mainNav { float: none; }
div#header2 #mainNav ul {width:100%;}
#logo span,#logo { display: none; }
div#header2 #mainNav ul li:first-child{padding-top:10px;}
/*
#mainArea .logo_ks { position:absolute; bottom:0; right:10px; width:40%;}

div#header2 #mainNav ul li a { padding: 8px 5px;font-size:85%;}
*/
div#header2 {position: fixed; bottom:0 !important;width: 100%;background: url(../images/footer_bg_sp.gif) repeat;}

div#header2 #mainNav ul {width:100%;}
div#header2 #mainNav ul li{width:49%;}
div#header2 #mainNav ul li:first-child{ float:left; color:#fff;}
div#header2 #mainNav ul li:first-child .time{ display:none;}
div#header2 #mainNav ul li:last-child{ float:right; }



 }
@media screen and (max-width: 980px) {
	.rpOr { max-width: 768px; }

/*	div#header2 #mainNav ul li a { padding: 8px 5px;font-size:85%;}
*/


div#header2 #mainNav ul {width:100%;}
div#header2 #mainNav ul li{width:49%;}
div#header2 #mainNav ul li:first-child{ float:left; color:#fff;}
div#header2 #mainNav ul li:first-child .time{ display:none;}
div#header2 #mainNav ul li:last-child{ float:right; }
#headerSp { background:#333; color: #fff; width:100%; position: absolute; top:0 !important;text-align: center;}
	.pc { display:none;}
	.sp { display: block;}
}
@media screen and (max-width: 768px) {
div#mainArea {
	background-image:url(../images/main-sp.jpg);
	background-size: cover !important;
	position: relative;
	padding-bottom:150px;
	}
	.rpOr { width: 97%; }
div#header2 #mainNav ul{width:100% !important;}
div#header2 #mainNav ul li{width:49% !important; }
#mainArea h2 { padding: 200px 0 0 0;height: 0; width: 100%; margin: 0 auto; background: url(../images/h1.png) no-repeat center top; margin-top: 55px; background-size: contain; top: 0;bottom: 0;margin: auto;}
.bg_blue h3 { text-align:center;line-height: 1.4;}
	p.txt { text-align: left; }
	p.txt br { display: none; }
	.bg_white2 .rpOr { padding-left: 0; width:94%;}
#footer { margin-bottom:50px;}
#footer ul li:first-child { margin-right:300px; margin-bottom:10px;}
#footer ul li{ float:none;}

}
@media screen and (max-width: 640px) {
#logo span,	#logo { display: none; }
#mainArea { padding:50px 0 0 0;}
#mainArea .logo_ks { position:absolute; bottom:0; right:0; width:40%;}
#mainArea .logo_ks img {width:100%;}
/*
div#mainArea {
	background-image:url(../images/main-sp.jpg);
	background-size: cover !important;
	position: relative;
	padding-bottom:150px;
	}*/

	.header { width:100%;}
	.bg_white2 h3 {
		background: #0034c7;
		-webkit-border-radius: 16px;
		-moz-border-radius: 16px;
		border-radius: 16px;
		color: #fff;
		/*font-size: 1.2rem;*/
		display: inline-block;
		padding: 2px 20px 0;
		margin-bottom: 20px;
	}

	h3 { font-size: 2rem; margin-bottom: 2rem; }

	/*p.txt { font-size: 0.9rem; line-height: 1.6em; padding-bottom: 25px; color: #333; }*/
	.rpOr { width: 94%; }
/*
	div#header2 { height: 80px; }
	div#header2 #logo { margin: 0 auto 0 7px; }
	div#header2 #mainNav ul { padding: 5px 0 0 0; }
	div#header2 #mainNav ul li a { padding: 8px 10px; display: none; font-size:96%;}
	div#header2	#logo { display: none; }

*/

	#footer { padding: 20px 0;}
	#footer ul li:first-child { display: block; }
	#footer ul li img { margin-right: 0; margin-bottom: 15px; display: block; height: 20px; width: auto; }
	#footer p#copyright { font-size: 0.7rem; text-align: center; }

}


/*@media screen and (min-width: 480px) {
div#mainArea {
	background-image:url(../images/main.jpg);
	background-size: cover !important;
	}
#mainArea .logo_ks { text-align:right;}

	}*/

.breadcrumb{font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",HelveticaNeue,"Segoe UI","游ゴシック体",YuGothic,"Yu Gothic M","游ゴシック Medium","Yu Gothic Medium","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;}
.ballon{
	width: 100%;
	max-width: 1024px;
	height: 70%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.ballon p{
	width: 100%;
	position: absolute;
	padding: .5rem;
	color: #2ccbf5;
	background: #002ec2;
	border-radius: 3px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}
.ballon p::after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: -8px;
	margin: auto auto 0;
	width: 0;
	height: 0;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 8px solid #002ec2;
}
.ballon p:nth-child(1){
	top: 5rem;
	left: 1vw;
	max-width: 185px;
}
.ballon p:nth-child(2){
	max-width: 185px;
	top: 23rem;
	left: 0;
}
.ballon p:nth-child(3){
	max-width: 205px;
	left: 5vw;
	bottom: 0;
}
.ballon p:nth-child(4){
	left: 0;
	right: 0;
	margin: auto;
	max-width: 175px;
}
.ballon p:nth-child(5){
	top: 2rem;
	right: 0;
	max-width: 210px;
}
.ballon p:nth-child(6){
	top: 16rem;
	right: 0;
	margin: auto;
	max-width: 240px;
}
.ballon p:nth-child(7){
	right: 5vw;
	bottom: 0;
	max-width: 165px;
}

@media screen and (max-width: 1024px) {
	.ballon p:nth-child(1){
		top: 5vw;
	}
	.ballon p:nth-child(2){
		top: 18vw;
	}
	.ballon p:nth-child(3){
		left: 5vw;
	}
	.ballon p:nth-child(5){
		top: 3vw;
	}
	.ballon p:nth-child(6){
		top: 10vw;
	}
}
@media screen and (max-width: 768px) {
	.ballon{ display: none;}
}