@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
----------------------------------------------------*/
html{
	scroll-padding-top: 80px;
}

body {
	font-size:3.4vw;
}

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


/*header
----------------------------------------------------*/
header{
	height:80vw;
	margin-top:46px;
}

header .header{
	height:80px;
	padding:10px 0;
}

header h1 a{
	width:30vw;
	height: 30vw;
	border-radius: 15vw;
}

header h1 img{
	width: 20vw;
	padding: 4.0vw 0 0 0;
}

header h1 span{
	padding: 0 6vw;
	background: url("../img/bg_ttl.png") no-repeat center center / contain;
	font-size: 3.4vw;
}

header h2 img{
	width: 60%;
}

header.fixed h2 a {
  width: 100px!important;
}

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

header.fixed #triggerBox{
	top:18px;
}

/*navigation
-------------------------------------------------*/
#headIn{
	overflow: auto;
	position: fixed;
	height:100%;
	left: 0px;
	top: 0px;
	right: 0px;
    background: rgba(0,0,0,.85);
	background-size:100% 100%;
    -webkit-overflow-scrolling: touch;
    z-index: 10000;
}

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

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


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

h2 span{
	font-size:4vw;
}

.ph_left,
.ph_right{
	display: block;
}

.ph_left .contents,
.ph_right .contents{
	width: 90%;
	padding: 8vw 0 0 0!important;
}

.ph_left .ph{
	width: 100%;
	height: 60vw;
	background: url("../img/bg_ph_left.jpg") no-repeat left center / cover;	
}

.ph_right .ph{
	width: 100%;
	height: 60vw;
	background: url("../img/bg_ph_left.jpg") no-repeat right center / cover;
}


/*sec01
----------------------------------------------------*/
.sec01 h2{
	font-size:4.7vw;
}


/*sec02
----------------------------------------------------*/
.bg_sec02{
	padding:12vw 0;
	display:block;
}

.sec02 h2{
	position:relative;
	float:none;
	width:100%;
	height:auto;
	margin:0 auto 6vw auto;
	text-align:center;
}

/*.sec02 .box_right{
	float:none;
	width:100%;
	padding:0 8vw;
}*/


#slider {
    width:100%;
	height:auto;
}

#sliderInner {
    left:50%;
    width:300%;
    margin-left:-150%;
}

#sliderInner li {
    /*width:100%;*/
	width:100vw;
	height:auto;
}
.bx-wrapper .bx-pager {
    width:100%;
}

.bx-wrapper .bx-prev,
.bx-wrapper .bx-next{
	display:none;
}

.bx-wrapper .bx-controls-direction a {
    top:140px;
}


/*sec03
----------------------------------------------------*/
.sec03 h2{
	font-size: 6vw;
}

.sec03 h3{
	margin-top:8vw;
	margin-bottom:6vw;
	font-size:4.7vw;
}

.sec03 .ph_left h2{
	font-size: 4.4vw;
	text-align: left;
}

.sec03 ul li{
	float:left;
	width:48%;
	margin:0 4% 8% 0;
}

.sec03 ul li:nth-of-type(3){
	float: none;
	margin:0 auto 8% auto;
}

.sec03 ul li:nth-of-type(2n){
	margin-right:0;
}

.sec03 dl{
	margin-bottom: 4vw;
}

.sec03 dl dt{
	width: 6vw;
	height: 6vw;
	margin-right: 4vw;
	border-radius: 3vw;
	line-height: 6vw;
}

.sec03 dl dd{
	width: calc(100% - 4vw);
}

.bg_wood{
	margin-bottom: 6vw;
	background: url("../img/bg_wood.jpg") no-repeat center left / cover;
	font-size: 3.7vw;
	display: flex;
	align-items: center;
	justify-content: right;
}

.bg_wood p{
	width: 60%;
	padding: 3vw 5vw;
	background: rgba(255, 255, 255, .85);
	line-height: 1.4;
}


/*sec04
----------------------------------------------------*/
.sec04{
	padding-bottom: 12vw;
}

.sec04 h2{
	float:none;
	width:100%;
	text-align:center;
}

.sec04 h3{
	margin-bottom:3vw;
	padding-bottom:1vw;
}

.sec04 .ph_left {
	display: block;
}

.sec04 .box_right{
	float:none;
	width:100%;
}

.sec04 table{
	margin-bottom: 0;
	padding-bottom:6vw;
}

.sec04 table th,
.sec04 table td{
	padding:3vw 0 2.4vw 0;
}

.sec04 table th{
	width:70%;
	min-width:70%;
}

.sec04 table th span{
	width: 8vw;
	height: 8vw;
	margin-top: -0.2em;
	border-radius: 4vw;
	line-height: 8vw;
}

.sec04 table td{
	font-size: 1.6em;
}

.sec04 .kakomi{
	padding:2vw;
	border:1px solid #999;
}


/*sec05
----------------------------------------------------*/
.sec05 h2{
	float:none;
	width:100%;
	text-align:center;
}

.sec05 .box_right{
	float:none;
	width:100%;
	display: block;
}

.sec05 .box_right ul{
	margin-bottom:2em;
}

.sec05 .box_right .tel{
	padding:4vw 0;
	text-align:center;
}

.sec05 .box_right p span{
	font-size:8vw;
}

.sec05 .box_right dl{
	background:#EEE;
}

#map{
	height:80vw;
}


/*sec06
----------------------------------------------------*/
.sec06{
	margin-top: 0;
	padding: 15vw 8vw;
	background:url("../img/bg_custom.jpg") no-repeat center center / cover;
}

.sec06 .contents{
	width: 100%;
	margin: 0;
	padding: 6vw;
}

.sec06 h2,
.sec06 h3{
	margin-bottom: 4vw;
	line-height: 1.4;
}

.sec06 h3{
	margin-bottom: 2vw;
	font-size: 1.4em;
}


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

footer .box_left{
	float:none;
	width:100%;
	margin-bottom:8vw;
}
footer .box_right{
	float:none;
	width:320px;
	margin:0 auto 2vw auto;
	overflow:hidden;
}

footer h2{
	width:100%;
	margin:0 auto 3vw auto;
	text-align: center;
}

footer h2 small{
	display: block;
}

footer .box_left p{
	text-align: center;
}

footer .box_left .tel{
	padding:2vw 0;
	text-align:center;
}

footer .box_left p span{
	font-size:8vw;
}

footer .box_left dl{
	margin-bottom:0.5em;
	background:#333;
}

footer .box_left dl dt{
	float:left;
	width:6em;
	padding:10px 0;
	background:#FFF;
	font-size:1.4rem;
	text-align:center;
	color:#000;
}

footer .box_left dl dd{
	float:left;
	padding-left:1em;
	color: #FFF;
}

footer .box_left p a{
	padding:0.5em 0;
	color:#FFF;
	text-decoration:underline;
	display:inline-block;
}

footer .tel a{
	text-decoration:none!important;
	color: #000!important;
}

footer .sp{
	padding:40px 0;
	font-size:3.0vw;
	text-align:center;
}

footer .sp a{
	padding:0.5em 0;
	color:#FFF;
	text-decoration:underline;
	display:inline-block;
}

footer .copyright{
	font-size: 3.0vw;
	text-align: center;
}


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

}