@charset "utf-8";

@-ms-viewport {
  width: device-width;
}

@viewport {
  width: device-width;
}


@media screen and (max-width:768px){

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
	
.pc{display:none!important;}
.sp{display:block!important;}	


/*common
----------------------------------------------------*/
body {
	font-size:4vw;
}

.contents{
	width:90%;
	padding:12vw 0;
}

.box_form h3 span{
	padding:0;
}


/*header
----------------------------------------------------*/
header{
	height:44vw;
	background:url(../img/bg_main2.jpg) no-repeat center top / cover;
}

header .header{
	height:66px;
	padding:20px 3%;
}

header h1{
	width:80%;
	/*height:26px;*/
}

header h1 img{
	width:100%;
	height:auto;
	margin:0 auto;
	display:block;
}


/*sp button
-------------------------------------------------*/
#triggerBox{
    right: 10px;
}


/*navigation
-------------------------------------------------*/
header #headIn nav ul{
	position:absolute;
	top:0;
	bottom:0;
	margin:auto;
	height:96vw;
}

header #headIn nav ul li a{
    font-size: 5.4vw;
}

#headIn nav ul li a span{
	font-size:3.0vw;
}


/*navigation PC
-------------------------------------------------*/
.nav_pc{
	display:none;
}



/*common
----------------------------------------------------*/
h2{
	margin-bottom:14vw;
	font-size:8vw;
}

h3{
	font-size:5.5vw;
}

h4{
	font-size:4.6vw;
	line-height:1.6;
}

ol{
	margin-top:1.5em;
	margin-left:1em;
}

.btn a{
	width:100%;
	padding:2vw;
	font-size:4.2vw;
}

.box_form{
	margin:26vw auto 0 auto;
	padding:4vw;
}

.box_form dl{
	margin-bottom:4vw;
	padding-bottom:4vw;
}

.box_form dl dt{
	margin-bottom:3vw;
}

.box_form dl dt span{
	padding:0.8vw 2vw;
}

.box_form input,
.box_form select{
	padding:3vw;
}

.box_form .btn,
.box_thanks button{
	padding:3vw;
	border-radius:6vw;
}

.box_thanks{
	height:100vh;
	padding:30vh 6vw 0 6vw;
	font-size:3.4vw;
}

.box_thanks p{
	margin-bottom:4vw;
}

.box_thanks button{
	width:16em;
	margin:0 auto;
	padding:3vw;
}

.kakomi{
	padding:2vw 4vw;
}


/*about
----------------------------------------------------*/
#about .kakomi{
	padding:4vw;
}

#about .kakomi h2{
	width:calc(100% + 8vw);
	margin:-4vw auto 8vw -4vw;
	padding:4vw 0;
	font-size:1.1em;
}

#about .kakomi h4{
	position:relative;
	margin-top:2.0em;
	padding-left:3.8em;
	text-indent:0;
	background:none;
	border-bottom:12px solid #EEDEFC;
	font-size:1.1em;
	font-weight:normal;
	line-height:1.4;
}

#about .kakomi h4:nth-of-type(9){
	margin-top:1.2em;
}

#about .kakomi h4 span{
	position:absolute;
	bottom:0;
	left:0;
	width:13.5vw;
	padding-bottom:0.2em;
	background:url(../img/bg_ttl2.png) no-repeat left bottom / contain;
	font-size:2em;
	font-weight:bold;
	text-align:center;
	color:#FFF;
	/*color:rgba(20, 75, 151, 0.2);*/
	z-index:0;
}

#about .kakomi h4 i{
	position:relative;
	z-index:1;
}

#about .kakomi .kakomi{
	padding:2vw 4vw;
	border:0;
	background:#DEF7FC;
}


/*footer
----------------------------------------------------*/
footer .contents{
	padding-bottom:18vw;
}

footer h2,
footer .center h2{
	width:60%;
	margin:0 auto 3vw auto;
}

footer .center h2.w20per{
	width:30%!important;
}

footer .copyright{
	font-size:2.8vw;
}


/*page top
----------------------------------------------------*/
#page-top a{
	width:40px;
	height:40px;
}

}