@charset "utf-8";

html,body {
    color: #333;
	font-family:  "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0;
    font-size: 14px;
    line-height: 1.7em;
}

body {
	-webkit-font-smoothing: antialiased;
}

a:hover img{
	filter:alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
a{
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	text-decoration: none;
}

a {color: #e89207;}
a:hover {color: #ddd; text-decoration: none;}

/** {-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;}*/

.mobile{display: none;}
.pc{display: inherit;}
@media screen and (min-width:737px) and (max-width:1060px) {
    .pconly{display:none;}
}
.wf-min-jp{font-family: "MatisseProN-M";}
.wf-min-en{font-family: "ACaslonPro-Regular";}

.inner{
	width: 1100px;
	margin: 0 auto;
}
@media screen and (min-width:737px) and (max-width:1099px) {
	.inner{
		width: 90%;
	}
}
.inner_min{
	width: 900px;
	margin: 0 auto;
}

.min-w{min-width: 1280px;}

.dflex{
    display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.wrap{flex-wrap:wrap;}
.j-center{justify-content: center;}

.bg-triangle{
    background-image: url(..//images/service_ttl_bgl.png), url(..//images/service_ttl_bgr.png);
    background-position: left bottom, right bottom;
    background-repeat: no-repeat, no-repeat;
    background-size: 120px, 120px;
}
.bg-triangle_s{
    background-size: 70px, 70px;
}

.animated.lowspeed{
-webkit-animation-duration: 3s;
animation-duration: 3s;
}

.object-fit-img{
    object-fit: cover;
    font-family: 'object-fit: cover;'
}

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

header

---------*/
header{
	background:#000;
}
header .header_txt{
	font-size:12px;
	display:block;
	line-height:1;
	padding-top:10px;
	color:#fff;
}
.header_inner{
	padding:10px 0;
	justify-content: space-between;
	align-items:flex-end;
	color:#fff;
}
header h1 {
	line-height:1;
}
header h1 img{
	width:50%;
	margin-top:15px;
}

.header_info {
	text-align:right;
}

.header_info .tel{
	font-size:20px;
	margin-top:5px;
}

.header_info .tel span{
	font-size:35px;
	font-family:Century Gothic,arial,sans-serif;
	font-weight:bold;
	letter-spacing:1px;
}

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

main_img

---------*/
.slide .swiper-container{
	width:100%;
}
.slide .swiper-container{
	width:100%;
}
.swiper-slide img{
	max-width:100%;
}
.swiper-slide{
	background-repeat: no-repeat;
	width: 1600px;
	height: 37vw;
	background-size: cover;
	background-position: center center;
}
.swiper-wrapper .slide01{
    background-image: url(..//images/slide_img01.jpg);
	width: 100%;
}

.swiper-wrapper .slide02{
    background-image: url(..//images/slide_img02.jpg);
	width: 100%;
}

.swiper-wrapper .slide03{
    background-image: url(..//images/slide_img03.jpg);
	width: 100%;
}

.swiper-wrapper .slide04{
    background-image: url(..//images/slide_img04.jpg);
	width: 100%;
}

.swiper-wrapper .slide05{
    background-image: url(..//images/slide_img05.jpg);
	width: 100%;
}

.swiper-wrapper .slide06{
    background-image: url(..//images/slide_img06.jpg);
	width: 100%;
}

.swiper-button-prev{
    background-image: url(..//images/swiper_btn--prev.jpg);
    width: 58px;
    height: 58px;
    background-size: contain;
    left: 0;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
.swiper-button-next{
    background-image: url(..//images/swiper_btn--next.jpg);
    width: 58px;
    height: 58px;
    background-size: contain;
    right: 0;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
  
/*----------

service

---------*/
.service_inner{
	margin:50px 0;
	padding: 10px 15px;
	box-sizing: border-box;
	border: 10px solid #000;
}
.service_ttl{
	padding: 50px;
	box-sizing: border-box;
	border: 5px solid #000;
	text-align:center;
}
.service_ttl h2{
	font-size: 43px;
	font-weight:bold;
	line-height:1;
	padding-bottom:10px;
	border-bottom:5px solid #000;
	margin: 0 auto 50px;
	letter-spacing: 0.05em;
	max-width:820px
}
.service_ttl p{
	font-size: 22px;
	line-height:1.8;
}
.service_content{
	color:#fff;
    align-items: center;
    min-height: 526px;
    text-shadow: 0px 0px 5px #000000;
	width:100%;
	background-position:center center;
	background-repeat:no-repeat;
}
.service_content h3{
	font-size: 40px;
    line-height: 1;
    border-bottom: 1px solid #fff;
    margin: 40px 0 30px;
    padding-bottom: 30px;
    max-width: 610px;
	width:37.5vw;
}
.service_content03 h3{
    border-bottom: 1px solid #000;
}
.service_content p{
	line-height:1.8;
}

.service_content01{
	background-image: url("..//images/service_content_bg01.png") ;
	background-color:#000;
}
@media screen and (min-width:1600px) {
	.service_content01{
		background-position:right center;
	}
}
.service_content02{
	background-image: url("..//images/service_content_bg02.png");
	background-color:#000;
}
.service_content03{
	background-image: url("..//images/service_content_bg03.png") ;
	color:#000;
    text-shadow: 0px 0px 5px #fff;
}
.service_content04{
	background-image: url("..//images/service_content_bg04.png") ;
    min-height: 240px;
	border-bottom:5px solid #b3b3b3;	
	border-top:5px solid #b3b3b3;	
}

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

news

---------*/
.news{
	background-color:#f2f2f2;
	padding: 70px 0;
}
.news_inner{
    padding: 30px 0;
    box-sizing: border-box;
    border: 10px solid #000;
	background-color:#fff;
}
.news_ttl{
	box-sizing: border-box;
    border-top: 5px solid #000;
    border-bottom: 5px solid #000;
	margin-bottom:50px;
}

.news_ttl h2{
	font-size: 30px;
    font-weight: bold;
    letter-spacing: 0.05em;
    text-align: center;
    color: #fff;
    background: #000;
    line-height: 1;
    padding: 1em;
    border-top: 5px solid #fff;
    border-bottom: 5px solid #fff;
}
.news_ttl h2 span{
    display: block;
    font-size: 12px;
    padding-top: 8px;
}
.news_sns {
	padding: 0 30px;
    justify-content: space-between;
}
.news_sns li{
	width: 48%;
	max-width: 485px;
}
.news_logo{
	text-align: center;
    padding-bottom: 15px;
}
.news_timeline{
    border: 1px solid #000;
	overflow-y:auto;
	max-height:600px;
}

.news_timeline.fb .fb-page{
   width: 100%;
	height: 600px;
}

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

お問い合わせ

---------*/
.contact{
	padding: 70px 0;
	background: url("..//images/contact_bg.png") center top no-repeat;
	background-size:cover;
}
.contact_contents{
}
.contact_ttlarea{
	border: 10px solid #000;
    box-sizing: border-box;
    padding: 10px 15px;
    margin-bottom: 70px;
	background-color:#fff;
}
.contact_ttl{
	padding: 20px;
    box-sizing: border-box;
    border: 5px solid #000;
    text-align: center;
}
.contact_ttl h2{
	font-size: 30px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.1em;
}
.contact_ttl h2 span{
	font-size:12px;
    display: block;
    padding-top: 8px;
}
.contact .cation{font-size: 14px; text-align:right;}

.redtext{
	color: #cb2348;
}
.contact_contents table tr{
	border-bottom:1px solid #666666;
	border-top:1px solid #666666;
}
.contact_contents table{width:100%;}
.contact_contents table tr th,
.contact_contents table tr td{
	box-sizing: border-box;
	vertical-align: top;
	text-align: left;
	font-size:14px;
}

.contact_contents table tr th{width:22%;  padding: 20px 30px;}
.contact_contents table tr td{width:78%; padding: 20px; position: relative !important;}

.contact_contents table tr td input.w90,
.contact_contents table tr td textarea{width: 95%;}
.contact_contents table tr td input.w30{width: 35%;}

.contact_contents table tr td input:focus,
.contact_contents table tr td textarea:focus{background-color:#fff5de;}

.contact_contents table tr td input,
.contact_contents table tr td select,
.contact_contents table tr td textarea{
	padding: 10px;
	box-sizing: border-box;
	font-size: 14px;
}

.contact_contents table tr td select{
	background-color: #ffff;
	color: #333;
}

.contact_contents table tr td li{
	margin-bottom:5px;
}
.contact_contents table tr td li:last-child{
	margin-bottom:0;
}
.contact_contents table tr td input[type=checkbox] {
  -ms-transform: scale(1.5, 1.5);
  -webkit-transform: scale(1.5, 1.5);
  transform: scale(1.5, 1.5);
}
.contact_contents .policy{margin:30px 0;}
.contact_contents .policy h3{font-size:16px; font-weight:550;  margin-bottom:15px;}
.contact_contents .policy a{
	text-decoration: underline;
	color:#d7c7a3;
}
.contact_contents .policy a:hover{
	color: #666;
	text-decoration: none;
}

.submitbtn{margin: 30px auto; width: 30%;}
.submitbtn input#submitbtn{
	background: #F7931E;
    border: 1px solid #F7931E;
    color: #fff;
    padding: 15px 0;
    text-align: center;
    cursor: pointer;
    width: 100%;
    font-size: 15px;;
}

.submitbtn input#submitbtn:hover{
	background-color: #fff;
	color: #F7931E;
}

.formError{
    position: absolute;
    left: 10% !important;
	font-size: 14px !important;
}

.thanks.contact{padding: 120px 0 50px;background:none;}
/*.thanks.contact .contact_ttl{padding-top: 20px;}*/
.thanks.contact .contact_contents h3{
	font-size: 35px;
	font-weight: bold;
    text-align: center;
	margin-bottom:30px;
}
.thanks.contact .contact_contents p{margin-bottom: 30px;text-align:center;}

.thanks.contact .contact_contents .btn{margin: 30px auto; width: 30%;}

.thanks.contact .contact_contents a{
	background: #F7931E;
    border: 1px solid #F7931E;
    color: #fff;
    padding: 15px 0;
    text-align: center;
    cursor: pointer;
    width: 100%;
    font-size: 15px;;
	display:block;
}

.thanks.contact .contact_contents a:hover{
	background-color: #fff;
	color: #F7931E;
}

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

shop

---------*/
.shop {
	padding: 70px 0;
}
.shop_ttlarea{
	border: 10px solid #000;
    box-sizing: border-box;
    padding: 10px 15px;
    margin-bottom: 70px;
	background-color:#fff;

}
.shop_ttl{
	padding: 20px;
    box-sizing: border-box;
    border: 5px solid #000;
    text-align: center;
}
.shop_ttl h2{
	font-size: 30px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.1em;
}
.shop_ttl h2 span{
	font-size:12px;
    display: block;
    padding-top: 8px;
}

.shop div.shop_contents table{width: 100%; margin-bottom:100px; }
.shop div.shop_contents table tr {
	border-bottom: 1px solid #ccc;
}

.shop div.shop_contents table tr th,
.shop div.shop_contents table tr td{
	box-sizing: border-box;
	vertical-align: middle;
}
.shop div.shop_contents table tr th{
	text-align: left;
    background: #000;
    color: #fff;
    padding: 15px 0 15px 40px;
	display:block;
	margin:10px 0;
}
.shop div.shop_contents table tr th.p30{
    padding: 30px 0 30px 40px;
}

.shop div.shop_contents table tr td{
   padding:10px 0 10px 50px;
}
.shop div.shop_contents table tr td ul{
	padding-left: 2em;
}

.shop  h3{
	font-size: 35px;
    font-weight: bold;
    text-align: center;
}
.shop .ggmap{margin: 30px 0 0;}
/*----------

footer

---------*/
footer {text-align: center;}

footer h2,
footer .footer_info{margin-bottom:25px;}

footer .footer_info{
	font-size: 18px;
    line-height: 1.4;
}
footer .footer_info p.tel{
	font-size: 26px;
}
footer .subtxt{
	margin-bottom: 20px;
}
.copy{
	text-align: center;
    font-size: 11px;
    padding: 25px 0;
    color: #fff;
    background: #000;
}
