@charset "UTF-8";


/* -----------------------------------------------
 [Media Queries] PC
-------------------------------------------------- */
/*@media only screen and (min-width:1024px){*/

html {
	overflow-y:scroll; /*中央配置ズレ回避*/
}

table {
	font-size: inherit;
}

pre,code,kbd,samp,tt {
	font-family: monospace;
	line-height: 100%;
}

ul ol,
ol ul {
	font-size: 100% !important;
}

sup {
	vertical-align: top;
}

sub {
	vertical-align: baseline;
	font-size: 77%;
}

img {
	vertical-align: top;
}


.center,
.center-position{
	text-align: center;
}


.clear{
	clear: both;
}

.img_center{
	text-align: center;
	margin-bottom: 30px;
}


.img_right{
	float: right;
	margin: 0 0 40px 20px !important;
}

.img_left{
	float: left;
	margin: 0 40px 40px 0;
}


/* テキスト位置 */	
.t-aR{
	text-align:right;}

.t-aC{
	text-align:center;}

.t-aL{
	text-align:left;}
	


/* マージン設定 */
.mbSS{
	margin-bottom:0.5em !important;}

.mbS{
	margin-bottom:1em !important;}

.mbM{
	margin-bottom:2em !important;}

.mbL{
	margin-bottom:3em !important;}

.mbLL{
	margin-bottom:4em !important;}

.mtLL{
	margin-top:4em !important;}

.mtSS{
	margin-top:0.5em !important;}
	


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


/******** Basic XHTML */


body {
	font: 14px/1.231 "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Verdana, "小塚ゴシック Pro","メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align: center;
	line-height: 1.7;
	color: #221714;
	text-align: center;
	}
body#top {
	background: url(../images/bg_header2.png) repeat-x left 43px;
	}

a{
	color: #003399;
	text-decoration: none;
}

a:hover{
	color: #003399;
	text-decoration: underline;
}


.sp_img{
	display: none;
}


/* container */


.inner{
	max-width: 960px;
	margin: 0 auto;
	padding: 0 10px;
	overflow: hidden;
	text-align: left;
}


/* header */

#header{
	height: 183px;
	position: relative;
}
#header h1{
	position: absolute;
	top: 10px;
	z-index: 9999;
}
#hd_info{
	padding: 15px 0 0;
	text-align: right;
	float: right;
	font-size: 12px;
}
#hd_info p{
	margin: 0 0 10px;
}
.link{
	padding-left: 20px;
	background: url(../images/icon01.png) no-repeat left center;
}




#main_visual{
	position: relative;
}
#main_visual p img{
	display: none;
}
#main_visual p{
	height: 700px;
	background: url(../images/main3.png) no-repeat center top;
	background-size: contain; 
}





#main_visual ul{
	margin: -100px 0 50px;
}
#main_visual li{
	display: inline-block;
	margin: 0 10px 20px;
	text-align: center;
}




/* nav */

#nav{
	margin: 30px 0;
	padding: 35px 0 20px;
	background: #CFE0F0;
}
#nav ul{
	margin: 0 -15px 0 0;
}
#nav li{
	margin: 0 15px 15px 0;
	float: left;
}




h2{
	margin: 50px 0 0;
	padding: 50px 0;
	background: url(../images/bg_h2.png) repeat-x left top;
}
h2 span{
	padding: 53px 0 50px 120px;
	background: url(../images/h2.png) no-repeat left top;
}






/* merit */


#merit .column3{
	margin: 0 -20px 0 0;
	overflow: hidden;
}
#merit .column3 li{
	margin: 0 20px 0 0;
	float: left;
}

#comment{
	margin: 0 0 30px;
	padding: 70px 30px 30px;
	background: #C0D6EB url(../images/bg_fukidashi.png) no-repeat center top;
	border-radius: 10px;
}
#comment dt{
	text-align: center;
	color: #003399;
	font-size: 25px;
	font-weight: bold;
}
#comment dd{
	margin: 20px 0 0;
}




/* info */


.info{
	position: relative;
	margin: 50px 0;
	background: url(../images/bg_info.png) repeat-x left 20px;
}
.info li{
	margin: 0 10px;
	display: inline;
}
.info ul{
	position: relative;
}
.info li.contact{
	position: relative;
	top: -47px;
}





/* column2 */

.column2{
	margin: 0 0 20px;
	overflow: hidden;
	text-align: left;
}
.column2 .col{
	width: 50%;
	float: left;
}



/* flow */

#flow{
	font-size: 15px;
}
#flow .flow{
	padding: 40px 0 30px;
}
#flow h3{
	margin: 0 0 20px;
}
#flow ul{
	padding-top: 15px;
	float: left;
}
#flow li{
	display: inline;
}
#flow li:first-child{
	margin-right: 5px;
}
#flow .flow01{
	padding: 40px 0 20px;
	background: #FFEC00 url(../images/icon03.png) no-repeat center top;
}
#flow .flow02{
	padding: 40px 0 20px;
	background: #FFF url(../images/icon02.png) no-repeat center top;
}
#flow .flow_img{
	float: right;
	margin-left: 10px;
}





/* price */

#price dl{
	max-width: 950px;
	margin: 0px auto;
}
#price dd{
	padding: 30px 50px;
	text-align: left;
	overflow: hidden;
	background: url(../images/bg_price.png) no-repeat center bottom;
	font-size: 16px;
}
#price dd img{
	float: right;
	margin-left: 30px;
}



/* faq */

#faq dl{
	position: relative;
	margin: 20px 0 40px 20px;
	padding: 5px;
	background: #FFF;
	box-shadow: 0 0 10px #999;
	border-radius: 10px;
}

#faq dt img{
	position: absolute;
	left: -20px;
	top: -20px;
}
#faq dt{
	padding: 10px 0 10px 50px;
	font-size: 22px;
	font-weight: bold;
}
#faq dd{
	padding: 15px 20px 15px 80px;
	font-size: 18px;
	background: #FFEC00 url(../images/icon_a.png) no-repeat 20px center;
	border-radius: 0 0 10px 10px;
}





/* footer */

#footer{
	font-size: 12px;
	padding: 35px 0;
	background: #003399;
}
#copy{
	color: #FFFFFF;
	float: left;
}
#footer p{
	float: right;
}
#footer p a{
	color: #FFFFFF;
}






/* contact */

#contact{
	margin: 0 0 50px;
}

#contact h3{
	padding: 15px 0;
	font-size: 16px;
	font-weight: bold;
}
#contact h4{
	font-weight: bold;
}
#contact p{
	margin: 0 0 20px;
}

#contact table{
	width: 100%;
	margin: 0 0 20px;
}
#contact th{
	width: 25%;
	padding: 15px 10px;
	vertical-align: top;
	background: #99CAE8;
	border-right: 1px #FFFFFF solid;
	border-bottom: 1px #FFFFFF solid;
	line-height: 2.0;
}
#contact th span{
	display: block;
	background: url(../images/required.png) no-repeat right top;
}
#contact th em{
	font-style: normal;
	color: #D51523;
	display: block;
}
#contact td{
	padding: 15px;
	background: #CCE5F4;
	line-height: 2.0;
	border-bottom: 1px #FFFFFF solid;
}
#contact td span{
	color: #D51523;
}
#contact td input,
#contact td textarea{
	padding: 5px;
	width: 80%;
}
#contact td select{
	font-size: 1.2em;
}
#contact td li{
	width: 17%;
	display: inline-block;
}
#contact td li input{
	width: auto !important;
}


/*エラーメッセージ用*/
label.error{
	width: 80%;
	display:block;
	font-size:90%;
	color:#F00;
	margin: 5px 0 0;
	background:#FF9;
	padding:2px 5px;
}

#formWrap h3{
	padding: 15px 0;
	font-size: 18px;
	font-weight: bold;
}











/*}*//*@mediaEnd*/




/* -----------------------------------------------
[Media Queries] ipad
-------------------------------------------------- */

@media only screen and 
(min-device-width : 768px) and 
(max-device-width : 1024px) and 
(orientation : portrait) {
	
body#top {
	background: none;
	}

}



/* -----------------------------------------------
[Media Queries] smart phone
-------------------------------------------------- */

@media only screen and (min-width:1px) and (max-width:480px){

body#top {
	background: none;
	}

img{
  max-width: 100%;
  height: auto;
}
.pc_img{
	display: none;
}
.sp_img{
	display: block;
}


#main_visual p{
	height: 350px;
}

/* header */

#header{
	height: 300px;
}
#hd_info{
	padding: 150px 0 0;
	text-align: center;
	float: none;
	font-size: 12px;
}


#main_visual{
	min-height: inherit;
	position: relative;
}

#main_visual ul{
	position: relative;
	top: inherit;
	left: inherit;
	margin-left: 0;
}
#main_visual li{
	width: 80%;
	margin: 0px auto 20px;
	float: none;
	text-align: center;
}








#nav ul{
	margin: 0;
}
#nav li{
	margin: 0 0 15px;
	float: none;
	text-align: center;
}




h2{
	margin: 50px 0 30px;
	padding: 15px 0 10px;
	text-align: left;
}
h2 span{
	display: block;
	padding: 33px 0 5px 70px;
	background: url(../images/h2.png) no-repeat 10px top;
	background-size: 50px;
}
h2 span img{
	height: 15px;
}


/* merit */


#merit .column3{
	width: 100%;
	margin: 0;
}
#merit .column3 li{
	margin: 0 1%;
	width: 30%;
}

#comment{
	margin: 0 0 30px;
	padding: 50px 30px 30px;
	background-size: contain;
}



/* info */


.info{
	overflow: hidden;
	position: relative;
	padding-bottom: 20px;
}
.info li{
	width: 70%;
	margin: 0 auto 10px;
	display: block;
}
.info li.contact{
	top: -10px;
}



/* column2 */

.column2 .col{
	width: 100%;
	float: none;
}


/* flow */

#flow h3 img{
	height: 50px;
}

#flow ul{
	padding-top: 15px;
	float: none;
	text-align: center;
}
#flow li{
	display: block;
}
#flow .flow_img{
	float: none;
	margin: 0px;
	text-align: center;
}



#price dl{
	max-width: 320px;
	margin: 0px auto;
}

#price dd{
	padding: 30px 20px;
	text-align: left;
	overflow: hidden;
	background: url(../images/bg_price.png) no-repeat center bottom;
	background-size: 316px;
	font-size: 16px;
}
#price dd img{
	float: none;
	margin: 0 0 10px;
	text-align: center;
}




/* footer */

#copy{
	width: 60%;
}








/* contact */


#contact h2{
	margin: 0 0 30px;
	padding: 10px 20px;
	background-color: #003399;
}

#contact table{
	width: 95%;
	margin: 0 0 20px;
}
#contact th{
	width: 100%;
	display: block;
	padding: 10px;
}
#contact td{
	width: 100%;
	display: block;
	padding: 10px;
}


#contact p input{
  max-width: 100%;
  height: auto;
}


	/* ----------------------------------------------- */


}/*@mediaEnd*/
