@charset "UTF-8";
/* ------------------------------
		reset
------------------------------ */

a{
	color:#000000;
	text-decoration:none;
	outline:none;
}
a:hover {
	text-decoration:none;
}
html,body{	height:100%;}
html{
	font-size:62.5%;
    overflow-y: scroll;
}

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100%;
	list-style-type: none;
	font-style: normal;
	font-weight: normal;
	font-family: "メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	text-align: left;
	color:#000000;
}

textarea { font-size: 100%; }
img { vertical-align: bottom; }
.fl{float:left;}
.fr{float:right;}
.bold{font-weight:bold;}
.ac{text-align:center;}
.ar{text-align:right;}
.red{color:#ff4b4b;}
input{outline:none;}

/* ------------------------------
    base
------------------------------ */

body{
	font-size:1.0rem;
	min-width: 1000px;
}
p,table,dl,ol,li,h2,h3  {
	font-size: 1.4rem;
	line-height: 2.4rem;
	letter-spacing: 2px;
}
.wrap{
	width:960px;
	margin:0 auto;
}
.blue{color: #2266a6;}
.f13{font-size: 1.2rem;}
.bold{font-weight: bold;}


/* ------------------------------
    header
------------------------------ */

h1{display: none;}

#header{
	background: url(../img/header_bg.png) no-repeat center center;
	background-size: cover;
}
#header .wrap{
	width: 1000px;
	margin: auto;
}
.header_top{
	padding-top: 15px;
}
.header_top .btn{
	margin-left: 20px;
}
.mv_txt{
	padding: 95px 0 165px;
}



/* ------------------------------
    sec
------------------------------ */
#sec01{
	margin-top: 65px;
	margin-bottom: 70px;
}
#sec01 h2{
	width: 850px;
	margin-left: auto;
	position: relative;
}
#sec01 .hexagon01{
	position: absolute;
	top: 0;
	left: -260px;
}
#sec01 .img{
	position: absolute;
}
#sec01 .txt{
	width: 515px;
}
#sec01 .hexagon02{
	position: absolute;
	bottom: 0;
	left: -96px;
}
#sec01 .wrap > div{
	margin-top: 40px;
}


#sec02{
	padding: 70px 0;
	background: url(../img/sec02_bg.jpg) repeat-y center center;
	background-size: contain;
	overflow: hidden;
}
#sec02 .wrap{
	/*width: 1180px;
	margin: 0 0 0 auto;*/
	position: relative;
}
#sec02 h2{
	width: 627px;
}
#sec02 .txt{
	width: 515px;
	margin-top: 40px;
	color: #fff;
}
#sec02 .img{
	position: absolute;
	right: -200px;
	top: 0;
}
#sec02 .hexagon01{
	position: absolute;
	bottom: 0;
	left: -53px;
}


#sec03{
	margin: 65px 0;
}
#sec03 h2{
	margin-bottom: 40px;
	text-align: center;
}
#sec03 p{
	text-align: center;
}
#sec03 .img{
	margin-bottom: 40px;
}
#sec03 .txt{
	margin-bottom: 70px;
}


#sec04{
	padding: 70px 0;
	background: url(../img/sec04_bg.jpg) repeat-y center center;
	background-size: contain;
}
#sec04 .wrap{
	position: relative;
}
#sec04 .wrap > div{
	width: 483px;
	position: absolute;
	right: 0;
	top: 0;
}
#sec04 .txt{
	margin-top: 35px;
	color: #fff;
}
#sec04 .img{
	padding-top: 65px;
	margin-bottom: 60px;
}


#sec05{
	margin: 70px 0;
}
#sec05 h2{
	position: relative;
}
#sec05 .hexagon01{
	position: absolute;
	top: 0;
	right: -100px;
}
#sec05 .b_box{
	background-color: #e5f1ff;
	border-radius: 10px;
	padding: 70px 30px 40px;
	margin-top: 105px;
}
#sec05 .b_box > div{
	margin-top: 40px;
}
#sec05 .hukidashi{
	text-align: center;
	margin-top: -100px;
}
#sec05 .w_box{
	background-color: #fff;
	border-radius: 5px;
	padding: 15px 20px;
	box-sizing: border-box;
	width: 415px;
}
#sec05 .w_box + .w_box{
	margin-top: 10px;
}
#sec05 .w_box .ttl{
	background-color: #2459a6;
	border-radius: 25px;
	color: #fff;
	font-size: 2rem;
	text-align: center;
	padding: 5px 0 3px 12px;
	box-sizing: border-box;
	width: 240px;
	margin-bottom: 8px;
}
#sec05 .w_box .ttl02{
	width: 300px;
}
#sec05 .b_box02{
	margin-top: 80px;
	padding: 70px 60px 40px;
}
#sec05 .b_box02 div.cf > div{
	width: 390px;
	margin: auto;
}
#sec05 .b_box02 div.cf > div .txt{
	width: 370px;
	margin: 15px 0 0 25px;
}


#sec06{
	padding: 70px 0;
	background: url(../img/sec04_bg.jpg) repeat-y center center;
	background-size: contain;
}
#sec06 .wrap{
	position: relative;
}
#sec06 h2{
	position: absolute;
	top: 0;
	right: 0;
}
#sec06 .hexagon01{
	position: absolute;
	top: 157px;
	right: -164px;
}
#sec06 .hexagon02{
	position: absolute;
	bottom: 0px;
	left: -22px;
}
#sec06 .ttl{
	font-size: 2.4rem;
	line-height: 3.6rem;
	color: #fff;
	position: relative;
	left: 56px;
	top: -40px;
}
#sec06 .ttl02{
	left: 68px;
	top: -25px;
}
#sec06 .txt{
	color: #fff;
	font-size:1.3rem;
}
#sec06 .txt.mini{
	font-size:1.2rem;
}
#sec06 .first{
	width: 250px;
	position: absolute;
	top: 109px;
	left: 122px;
}
#sec06 .second{
	width: 250px;
	position: absolute;
	top: 333px;
	right: 222px;
}
#sec06 .third{
	width: 250px;
	position: absolute;
	top: 527px;
	left: 125px;
}
#sec06 .forth{
	width: 250px;
	position: absolute;
	top: 769px;
	right: 221px;
}



#sec07{
	margin: 55px 0;
}
#sec07 h2{
	text-align: center;
	margin-bottom: 60px;
}
#sec07 h2 + p{
	margin-bottom: 80px;
}
#sec07 .circle_area:nth-of-type(2){
	margin-left: 175px;
}
#sec07 .circle_area +.circle_area{
	margin-top: 100px;
}
#sec07 .circle + .circle{
	margin-left: 41px;
}
#sec07 .circle .ttl{
	background: url(../img/sec07_03.png) no-repeat center center;
	width: 126px;
	padding: 52px 0;
	text-align: center;
	color: #fff;
	font-size: 2.2rem;
	position: absolute;
	top: -55px;
	left: -22px;
}
#sec07 .circle .ttl_02{
	font-size: 2.6rem;
	letter-spacing: 3px;
}
#sec07 .circle .ttl_03{
	letter-spacing: -1px;
}
#sec07 .circle .txt{
	font-size: 1.8rem;
	color: #245aa6;
	text-align: center;
	margin-bottom: 15px;
	line-height:1.6
}
#sec07 .circle .txt02{
	text-align: center;
	letter-spacing: 0;
}
#sec07 .circle .txt02_02{
	line-height: 2.2rem;
}
#sec07 .circle{
	border-radius: 50%;
	border: 1px solid #306bab;
	width: 285px;
	position: relative;
	padding: 99px 0 0;
	display: inline-block;
	height: 290px;
	box-sizing: border-box;
	vertical-align: bottom;
}
#sec07 .txt small{
	letter-spacing: 1px;
}
.ls03{
	letter-spacing: -3px;
}
.ls09{
	letter-spacing: -9px;
}


#sec08{
	padding: 70px 0;
	background: url(../img/sec02_bg.jpg) repeat-y center center;
	background-size: contain;
}
#sec08 h2{
	text-align: center;
	margin-bottom: 85px;
}
#sec08 .box{
	padding:30px;
	border:1px #ffffff solid;
}
#sec08 .txt {
	color: #fff;
}
#sec08 .txt + .txt{
	margin-top: 25px;
}


#sec09{
	margin-top: -40px;
}
#sec09 .wrap div{
	position: relative;
}
#sec09 .btn{
	position: absolute;
	top: 150px;
	right: 50px;
}


#sec10{
	padding: 65px 0;
	background: url(../img/sec04_bg.jpg) repeat-y center center;
	background-size: contain;
}
#sec10 h2{
	font-size: 3.2rem;
	color: #fff;
	padding-bottom: 25px;
	border-bottom: 1px solid #fff;
	margin-bottom: 40px;
	letter-spacing:3px;
}
#sec10 .cf{
	margin-left: 25px;
	margin-right: 25px;
}
#sec10 dt,#sec10 dd{
	color: #fff;
	display: inline-block;
}
#sec10 dt{
	width: 105px;
}
#sec10 dd{
	width: 315px;
}
#sec10 dd span{
	letter-spacing: 0;
}
#sec10 dl{
	border-bottom: 1px dotted #fff;
	padding: 15px 0;
}
#sec10 dl:first-child{
	padding-top: 0;
}
#sec10 .fl p{
	position: relative;
	margin-top: 35px;
}
#sec10 .hexagon01{
	position: absolute;
	bottom: 0;
	left: -253px;
}
#sec10 .fr{
	border: 1px solid #fff;
	width: 460px;
	box-sizing: border-box;
	padding: 25px 25px 45px 30px;
}
#sec10 .fr p{
	color: #fff;
}
#sec10 .fr p + p{
	margin-top: 25px;
}
#sec10 .fr p:nth-child(2){
	margin-top: 10px;
}

#footer{
	border-bottom: 1px solid #2459a6;
	position: relative;
}
#footer .logo{
	margin-top: 18px;
}
#footer .logo a{
	display: block;
}
#footer .copyright{
	color: #2459a6;
	text-align: center;
	position: absolute;
	top: 35px;
	left: 0;
	right: 0;
	margin: auto;
}

/* ------------------------------
    clearfix
------------------------------ */

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

.cf {display: inline-block;}

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */


.mobile body {
	-webkit-text-size-adjust: 100%;
}

.android h2,
.android h3,
.android ul,
.android dl dt,
.android dl dd,
.android p{
	max-height: 999999px;
}