@charset "utf-8";
/* CSS Document */
*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"
}
header{
	background: #001393;
	padding: 1em 0;
}
header p{
	color: #fff;
	display: inline-block;
}
.text_area{
	background: url(images/yellow_bg.jpg) 0 0 ;
	font-size: 0;
}


@media screen and (min-width: 769px) {
	body{
		overflow-x: hidden;
	}
	.nopc{
		display: none;
	}
	.w1200{
		margin: 0 auto;
		width: 1200px;
	}
	header img{
		margin-left: 0;
		margin-right: 1em;
	}
	header p{
		top:-5px;
		position: relative;
	}
	.main_image{
		display: block;
		margin: 0 auto;
		width: 100%;
		/*max-width: 1400px;*/
	}
	.text_area .w1200{
		background: url(images/top_bg.png) right 130px no-repeat;
		padding: 100px 0 100px 100px;
	}
	.text_area h2{
		font-size: 59px;
	}
	.text_area p{
		font-size: 46px;
		font-weight: bold;
	}
	.qa{
		background: #D1EDF9;
		padding-bottom: 30px;
	}
	.qa .w1200{
		background: url(images/pc_qa_bg.png) right 70px no-repeat;
	}
	.qa .w1200 h3{
		font-size: 22px;
		border-left: 18px solid #001393;
		margin-left: 22px;
		margin-bottom: 65px;
		padding: 70px 0 0 20px;
		line-height: 2em;
	}
	.qa .w1200 .question{}
	.qa .w1200 .question h4{
		font-size: 55px;
		color: #001393;
		display: inline-block;
		margin-left: 40px;
		margin-right: 20px;
	}
	.qa .w1200 .question p{
		display: inline-block;
		font-size: 23px;
		font-weight: bold;
	}
	.qa .w1200 .answer{
		background: #fff;
		border: 1px solid #FCCA21;
		width: 1040px;
		margin: 30px auto;
		position: relative;
		padding: 20px 40px 40px 130px;
	}
	.qa .w1200 .answer h4{
		color:#FCCA21;
		font-size: 47px;
		position: absolute;
		top:25px;
		left: 35px;
	}
	.qa .w1200 .answer h5,
	.qa .w1200 .answer p{
		font-size: 16px;
	}
	.qa .w1200 .answer h5{
		color: #001393;
		margin-top: 2em;
	}
	.qa .w1200 .answer p{}
	.contact{
		background: url(images/pc_contact_bg.png) center 0 no-repeat;
		text-align: center;
		padding-top: 40px;
	}
	.contact h3{
		font-size: 37px;
	}
	.contact > p{
		font-size: 18px;
		padding: 15px 0 100px;
	}
	footer{
		width: 1200px;
		margin: 0 auto 40px;
	}
	.wrap{
		display: flex;
		justify-content: space-between;
		padding-bottom: 35px;
	}
	.wrap dl{
		border-left: 10px solid #F08700;
		background: #FDCF00;
		text-align: center;
		padding-top: 30px;
		padding-bottom: 15px;
	}
	.wrap dl:nth-child(2){
		border-left: 10px solid #33C6B1;
	}
	.wrap dl:nth-child(3){
		border-left: 10px solid #94D400;
	}
	.wrap h5{
		font-size: 22px;
		margin-top: 10px;
		color: #001393;
	}
	.wrap img{
		width: 80%;
	}
	.wrap p{
		font-size: 16px;
	}
	footer table{
		display: inline-block;
		font-size: 12px;
		margin-left: 30px;
	}
	footer table th{
		font-weight: normal;
		padding: 4px 10px;
	}
	.copy{
		color: #fff;
		background: #001393;
		text-align: center;
		padding: 1em;
		font-size: 10px;
	}
	
	form{
		width: 1000px;
		margin: 0 auto 50px;
		background: #FFF7DD;
		padding: 45px 0;
	}
	form h4{
		font-size: 30px;
		color: #001393;
	}
	
	form dl{
		text-align: left;
		width: 800px;
		margin: 50px auto 20px;
	}
	form dt{
		float: left;
		clear: both;
		padding: 15px 0;
		font-size: 16px;
		display: flex;
		align-items: center;
	}
	form dt span{
		color: #fff;
		background: red;
		font-size: 11px;
		margin-left: 10px;
		padding: 0 5px;
	}
	form dd{
		padding: 15px 0;
		padding-left: 230px;
	}
	form .text{
		width: 100%;
	}
	form dd span{
		margin-right: 20px;
	}
	textarea{
		height: 100px;
	}
	.button{
		width: 270px;
		background: #001393;
		color: #fff;
		border:none;
		font-size: 18px;
		padding: 0.5em;
	}
	#page-top {
		position: fixed;
		bottom: 40px;
		right: 50%;
		margin-right: -530px;
		font-size: 180%;
		z-index: 100;
	}
	#page-top a {
		display: block;
		background: #FCD121;
		color: #000;
		width: 50px;
		height: 50px;
		padding: 9% 0;
		text-align: center;
		text-decoration: none;
		border-radius: 50px;
	}
	.im_wrap{
		width: 1200px;
		margin: 0 auto;
		text-align: center;
		position: relative
	}
	.im_wrap img{
		width: 1920px;
		position: relative;
		left: 50%;
		margin-left: -1200px;
	}
}

@media screen and (max-width: 768px) {
	input[type="submit"],
	input[type="button"] {
	  border-radius: 0;
	  -webkit-box-sizing: content-box;
	  -webkit-appearance: button;
	  appearance: button;
	  border: none;
	  box-sizing: border-box;
	  cursor: pointer;
	}
	input[type="submit"]::-webkit-search-decoration,
	input[type="button"]::-webkit-search-decoration {
	  display: none;
	}
	input[type="submit"]::focus,
	input[type="button"]::focus {
	  outline-offset: -2px;
	}
	.nosp{
		display: none;
	}
	body{
		font-size: 0;
	}
	img{
		max-width: 100%;
	}
	header{
		font-size: 3vw;
	}
	header img{
		width: 37vw;
		margin: 0 2vw;
	}
	.text_area .w1200{
		background: url(images/top_bg.png) right 3vw no-repeat;
		padding: 3vw 0;
		text-align: center;
		background-size: 25vw;
	}
	.text_area h2{
		font-size: 7vw;
	}
	.text_area p{
		font-size: 6vw;
		font-weight: bold;
	}
	section,
	footer{
		font-size: 3vw;
	}
	.qa{
		background: #D1EDF9;
		padding-bottom: 5vw;
	}
	.qa .w1200{
		background: url(images/sp_qa_bg.png) right 6vw no-repeat;
		background-size: 40vw;
	}
	.qa .w1200 h3{
		font-size: 3vw;
		font-weight: normal;
		border-left: 9px solid #001393;
		margin-left: 5%;
		margin-bottom: 8vw;
		padding: 6vw 0 0 5vw;
		line-height: 2em;
	}
	.qa .w1200 .question h4{
		font-size: 7vw;
		color: #001393;
		display: inline-block;
		margin-left: 5%;
	}
	.qa .w1200 .question p{
		display: inline-block;
		font-size: 3.5vw;
	}
	.qa .w1200 .question:nth-child(2) p,
	.qa .w1200 .question:nth-child(18) p{
		position: relative;
		bottom: -1.5em;
		margin-bottom: 5vw;
	}
	.qa .w1200 .answer{
		background: #fff;
		border: 1px solid #FCCA21;
		width: 86%;
		margin: 5vw auto;
		position: relative;
		padding: 5vw 3vw 3vw 13vw;
	}
	.qa .w1200 .answer h4{
		color:#FCCA21;
		font-size: 7vw;
		position: absolute;
		top:1vw;
		left: 2vw;
	}
	.qa .w1200 .answer h5{
		color: #001393;
		font-size: 3.2vw;
	}
	.qa .w1200 .answer:last-child h4{
		font-size: 5vw;
	}
	.contact{
		background: #FFF7DD url(images/sp_contact_bg.png) center 0 no-repeat;
		text-align: center;
		background-size: contain;
		padding-top: 6vw;
	}
	.contact h3{
		font-size: 5.2vw;
	}
	.contact > p{
		padding-bottom: 10vw;
	}
	.wrap dl{
		border-left: 2vw solid #F08700;
		background: #FDCF00;
		text-align: center;
		padding-top: 5vw;
		padding-bottom: 1vw;
		width: 70%;
		margin: 7vw auto 0;
	}
	.wrap dl:nth-child(2){
		border-left: 2vw solid #33C6B1;
	}
	.wrap dl:nth-child(3){
		border-left: 2vw solid #94D400;
	}
	.wrap h5{
		font-size: 5vw;
		margin-top: 2vw;
		color: #001393;
	}
	.wrap img{
		width: 80%;
	}
	fotter{}
	footer > img{
		width:45%;
		display: block;
		margin-top: 10vw;
		margin-left: 6vw;
	}
	footer table{
		font-size: 2.5vw;
		margin-left: 6vw;
	}
	footer table th{
		vertical-align: top;
	}
	
	.copy{
		color: #fff;
		background: #001393;
		text-align: center;
		padding: 0.5em;
		font-size: 2vw;
	}
	form{
		padding: 0 6% 10vw;
		text-align: left;
	}
	form h4{
		font-size: 5vw;
		text-align: center;
		color: #001393;
		margin-top: 3vw;
	}
	form dt{
		margin-top: 1em;
		display: flex;
		align-items: center;
	}
	form dt span{
		color: #fff;
		background: red;
		font-size: 2vw;
		margin-left: 1em;
		padding: 0 1em;
	}
	form dd{
		display: flex;
		align-items: center;
	}
	form dd span{
		margin-right: 2em;
	}
	form .text{
		width: 100%;
	}
	.btn{
		text-align: center;
	}
	.button{
		width: 60%;
		background: #001393;
		color: #fff;
		border:none;
		font-size: 3vw;
		padding: 0.5em;
		margin: 8vw auto 0;
	}
	#page-top {
		position: fixed;
		bottom: 20px;
		right: 2%;
		z-index: 10000;
		margin-right: 0;
	}
	#page-top a {
		display: block;
		background: #FCD121;
		color: #000;
		width: 50px;
		height: 50px;
		padding: 5px 0;
		text-align: center;
		text-decoration: none;
		border-radius: 50px;
		font-size: 30px;
	}
}