@charset "utf-8";

/*------------------------------------------------------------------
/
/	STYLE:PC
/
/-----------------------------------------------------------------*/

@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

html {}
body {
  height: 100%;
  width: 100%;
	margin: 0 auto;
	font-size:1.2em;
	color: #000;
	line-height: 1.6;
	background:#fff;
}
a {
	color: #777;
	text-decoration: none;
}
a:hover {}
a:visited {}
a:hover {}

* a, * a img{
	transition-property: all;
  transition: 0.1s linear;
}
* a:hover, * a:hover img{
	opacity: 0.85;
}
* header:after, * footer:after, * main, * section:after, * article:after, * div:after, * ul:after, * ol:after, * dl:after{
	content: "";
	clear: both;
	display: block;
}
*, *:before, *:after {
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

 
.mt20{
	margin-top:20px;
}

.fleft{
	float:left;
	width:65%;
}


.fright{
	float:right;
	  width:30%;
	  text-align:right;
}


/* common
-------------------------------------------------------*/
.sp {
	display: none !important;
}
.area{
	width:100%;
}
.area_in{
	width: 100%;
	max-width:1000px;/* 任意の幅 */
	margin: 0 auto;
}
.text_center{
	text-align: center;
}
.text_left{
	text-align: left;
}
.text_right{
	text-align: right;
}
.text_small{
	font-size: 0.8em;
}
.text_mark{
	font-weight: 700;
}
/* header
-------------------------------------------------------*/
#header {
	width: 100%;
	min-height: 77px;
	padding: 10px 0;
	background: #fff;
	border-bottom: 1px solid #ccc;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 9999;
}
#header .in{
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	display: table;
}
#header .in .branding{
	display: table;
}
#header .in .branding .logo,
#header .in .branding h1{
	display: table-cell;
	vertical-align: middle;
}
#header .in .branding h1{
	padding-left: 5px;
}
@media screen and (min-width: 768px) and (max-width: 1000px) {
	#header{
		padding: 10px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#header .in .branding h1{
		display: block;
	}
	#header .in .branding h1{
		padding-left: 0;
	}
}
#header .in .branding,
#header .in .contact{
	display: table-cell;
	vertical-align: middle;
}
#header .in .contact{
	float: right;
}
#header .in .contact ul li{
	display: table-cell;
	vertical-align: middle;
	padding-right: 10px;
}
#header .in .contact ul li img{
	width: 100%;
}
#header .in .contact ul li:last-of-type{
	padding-right: 5px;
}

/* footer
-------------------------------------------------------*/
#footer{
	margin-top: 70px;
	padding: 50px 0 140px 0;
	text-align: center;
	border-top: 1px solid #ccc;
}
#footer p.logo{
	margin-bottom: 20px;
}
#footer p#copy{
	font-size: 0.625em;
}


/*=======================================================
	以下コンテンツのセクションごと
=======================================================*/

/* visual
-------------------------------------------------------*/
#visual{
	padding: 130px 0 50px 0;
	background: url(../images/bg.jpg) no-repeat center top;
	-webkit-background-size: auto 100%;
  -moz-background-size: auto 100%;
	background-size: auto 100%;
	text-align: left;
	background-color: #daecfa;
	width: 100%;
	display: block;
	overflow:hidden;
}
#visual h2,
#visual .v_cta{
	text-align: left;
	max-width: 1000px;
	margin: 0 auto;
}
#visual .v_cta{
	position: relative;
}
#visual .v_cta a{
	position: absolute;
	top:110px;
	left: 50px;
}
#visual .v_cta a:hover{
	opacity: 1;
}
/* banner
-------------------------------------------------------*/
aside .banner{
	padding: 50px;
	background: url(../images/item_book.png) no-repeat right bottom,url(../images/bar01.png) repeat;
	text-align: center;
	background-color: #003A6F;
}
@media screen and (min-width: 320px) and (max-width: 1000px) {
	aside .banner{
		padding: 30px;
		background: url(../images/bar01.png) repeat;
		background-color: #003A6F;
	}
}
.banner{
	text-align: center;
}
.banner .v_cta a{
	display: inline-block;
	text-align: center;
	background-color: #e11607;
	line-height: 1.5;
	padding: 20px 10%;
	color: #fff;
	font-size: 1.5em;
	font-weight: 900;
	letter-spacing: 5px;
	text-shadow: 1px 1px 3px rgba(0,0,0,0.3);
	box-shadow:1px 2px 5px rgba(0,0,0,0.5),-1px -1px 1px rgba(255,255,255,0.3);
	-webkit-box-shadow:1px 2px 3px rgba(0,0,0,0.5),-1px -1px 1px rgba(255,255,255,0.3);
	-moz-box-shadow:1px 2px 3px rgba(0,0,0,0.5),-1px -1px 1px rgba(255,255,255,0.3);
	border-radius: 7px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.banner .v_cta a:hover{
	background-color: #c10d00;
	opacity: 1;
}
.banner .v_cta a span{
	font-weight: 900;
	font-size: 0.8em;
}
/* title
-------------------------------------------------------*/
.title01{
	position: relative;
	text-align: center;
	padding: 30px 20px;
	color: #fff;
	font-family: 'Noto Sans Japanese', sans-serif;
	margin-bottom: 50px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.title01_blue{
	background: #2A93D4;
	color: #fff;
}
.title01_green{
	background: #317722;
	color: #fff;
}
.title01 h3{
	font-family: 'Noto Sans Japanese', sans-serif;
	letter-spacing: 5px;
	font-size: 2.25em;
	font-weight: 900;
}
.title01 h3 br{
	display: none;
}
.title02{
	color: #333;
	font-size: 1.5em;
	line-height: 1.4;
	font-weight: 700;
	padding: 15px 0 40px 0;
	display: block;
	text-align: center;
}
.title02 br{
	display: none;
}
@media screen and (min-width: 768px) and (max-width: 1000px) {
	.title01 h3{
		font-size: 1.9em;
		letter-spacing: 1px;
	}
	.title02{
		font-size: 1.3em;
	}
}
.text_red{
	color: #C30;
	font-weight: 900;
}
.title03{
	font-size: 1.3em;
	line-height: 1.3;
	font-weight: 500;
	color: #333;
	position: relative;
	padding: 10px;
}
.area .title04{
	font-size: 1.75em;
	font-weight: 500;
	color: #333;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 20px;
}
/* #area01
-------------------------------------------------------*/
#area01{
	padding-bottom: 70px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
@media screen and (min-width: 640px) and (max-width: 1000px) {
	#area01{
		padding: 0 10px 50px 10px;
	}
}
#area01 p > img{
	width: 100%;
	max-width: 1000px;
	position: relative;
	top:-30px;
}
/* #area02
-------------------------------------------------------*/
#area02{
	padding-top: 20px;
	background: #367db2;
}
#area02 .title01{
	margin-bottom: 0;
}
#area02 h4.title03{
	font-weight: 700;
	color: #fff;
	padding: 20px 0 10px 0;
	text-align: center;
	position: relative;
	letter-spacing: 2px;
	font-size: 1.5em;
}
#area02 h4.title03::after{
	content: "▼";
	color: #367db2;
	display: block;
	position: absolute;
	width: 100%;
	font-size: 50px;
	top:30px;
}
#area02 h5.title02 strong{
	font-weight: 700;
	display: inline-block;
	position: relative;
	border-bottom: 1px solid #d04500;
	color: #d04500;
}

.area .box02{
	background: #fff;
	padding:15px 10px 15px 10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 70px;
}
.area .column{
	margin-bottom: 10px;
}
.area .column .img{
	width: 49%;
}
.area .column .text{
	width: 48%;
}
.area .column .img img{
	width: 100%;
}
.area .column .img.left{
	float: left;
}
.area .column .img.right{
	float: right;
}
.area .column .text.left{
	float: left;
}
.area .column .text.right{
	float: right;
}
/*-------*/
@media screen and (min-width: 768px) and (max-width: 1000px) {
	#area02 .area_in{
		padding: 20px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#area02 h4.title03{
		font-size: 1.3em;
	}
}
/*-------*/

/* #area03
-------------------------------------------------------*/
#area03 p strong{
	font-weight: 700;
	display: inline-block;
	margin-bottom: 10px;
}
#area03 .area03_banner{
	display: block;
	text-align: center;
	width: 100%;
	background: url(../images/bar01.png) repeat;
}
#area03 .area03_banner a{
	display: block;
	width: 100%;
	text-align: center;
	overflow: hidden;
}
#area03 .area03_banner a img{
	width: 100%;
	max-width: 700px;
}
#area03 .banner .v_cta a{
	background-color: #307f20;
	color: #fff;
	font-size: 1.3em;
	line-height: 1;
	padding: 15px 50px;
}
#area03 .title03{
	font-weight: 700;
	color:#315829;
	font-size: 1.5em;
	border-bottom: 1px solid #315829;
	background-color: #efefef;
	padding-left: 20px;
	padding-top: 15px;
}
#area03 .title04{
	font-size: 1.6em;
	line-height: 1.5;
	color: #333;
	margin-bottom: 50px;
	font-weight: 700;
}
#area03 .img100 img{
	width: 100%;
}
/*-------*/
@media screen and (min-width: 768px) and (max-width: 1000px) {
	#area03 .area_in{
		padding: 0 20px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#area03 .title03{
		font-size: 1.3em;
	}
	#area03 .title04{
		font-size: 1.2em;
	}
}

/* #area04
-------------------------------------------------------*/
#area04{
	background-color: #efefef;
	padding-bottom: 50px;
}
#area04 p{
	margin-bottom: 30px;
}
#area04 p.btn{
	margin-bottom: 0;
}
#area04 .title01{
	background-color: #96acd4;
}
#area04 .title02{
	border: 1px solid #ccc;
	padding: 15px;
	color: #fff;
	background-color: #013a63;
}
@media screen and (min-width: 768px) and (max-width: 1000px){
	#area04 p.text_center{
		padding: 0 20px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
}
#area04 p.text {
	clear: both;
}
#area04 p.text img{
	display: block;
	float: left;
	max-width: 130px;
	margin-right: 5px;
}
#area04 .table01{
	display: table;
	width: 48%;
	float: right;
}
#area04 .table01 dl{
	width: 100%;
	display: table-cell;
	vertical-align: top;
	text-align: center;
}
#area04 .table01 dl dt,
#area04 .table01 dl dd{
	display: table;
	width: 100%;
	padding: 17px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-bottom: 1px solid #fff;
}
#area04 .table01 dl dt{
	font-size: 1.2em;
	font-weight: 900;
	color: #013a63;
	background: #fff;
	line-height: 1.4;
}
#area04 .table01 dl dd:last-of-type{
	border-bottom: none;
}
#area04 .table01 dl dd{
	font-size: 15px;
	line-height: 1.4;
	background: #fff;
}
#area04 .table01 dl dd:nth-child(odd){
	background: #efefef;
}
#area04 .table01 strong{
	font-weight: 700;
	line-height: 1.5;
	color: #013a63;
}
#area04 .ex_image img{
	width: 100%;
}
@media screen and (min-width: 768px) and (max-width: 1000px) {
	#area04 .title01{
		margin-bottom: 0;
	}
}
/* #area05
-------------------------------------------------------*/

/* #area06
-------------------------------------------------------*/

/* #area07
-------------------------------------------------------*/

/* #area08
-------------------------------------------------------*/

/* #area09
-------------------------------------------------------*/


.wrap_btn02{
	width:100%;
	background:#eee;
	padding-top:8px;
	padding-bottom:8px;
	border:#CCC solid 1px;
	text-align:center;
}

.pagetop {
  position: fixed;
  bottom: 84px !important;
  z-index: 2;
  width: 100%;
}
