@charset "utf-8";
body{
	min-width:1000px;
	background:#333333;
}
/*--------------------------------------------------------------
			ヘッダー
--------------------------------------------------------------*/
header{
	background:#EBEBE3;
	padding:40px 0;
}
header .inner{
	width:960px;
	margin:0 auto;
	overflow:hidden;
}
header .head_right{
	float:right;
	width:475px;
	overflow:hidden;
	position:relative;
}
header .head_right .right_inner{
	float:right;
	width:315px;	
}
header .ttl_logo{
	text-indent:-9999px;
	background:url(../images/base/ttl_text.png) right 0 no-repeat;
	background-size:14px auto;
	width:126px;
	height:280px;
	overflow:hidden;
	margin:0 0 30px 0;
	float:right;
}
header .ttl_logo a{
	display:block;
	background:url(../images/base/ttl_logo.svg) 0 0 no-repeat;
	background-size:91px auto;
	width:91px;
	height:260px;
}
header .tel_box{
	width:315px;
	float:right;
	margin:0;
	/*-------englishある場合  
	margin:0 -15px 0 0;
	-------*/
}
header .tel{
	color:#774818;
	font-size:20px;
	font-weight:600;
	display:inline-block;
	vertical-align:middle;
	float:right;
}
header .en_btn{
	color:#EBEBE3;
	font-size:13px;
	background:#774818;
	display:inline-block;
	line-height:1;
	font-weight:400;
	padding:6px 30px 8px;
	border-radius:14px;
	margin:0 20px 0 0;
}
header .top_text{
	font-size:22px;
	color:#9A7A53;
	padding:0 0 232px 0;
	background:url(../images/home/top_img.svg) 0 95px no-repeat;
	background-size:475px auto;
	line-height:1.5;
}
header .top_text span{
	font-size:22px;
	color:#9A7A53;
	line-height:1.5;
	display:block;
	margin-left:45px;
}
.contact header{
	display:none;
}
/*------- ナビゲーション -------*/
header .pc_nav ul{
	overflow:hidden;
	width:315px;
	position:absolute;
	top:0;
	left:0;
}
header .pc_nav ul li{
	float:right;
	margin:0 22px 0 0;
}
header .pc_nav ul li:first-child{
	margin:0;	
}
header .pc_nav ul li a{
	color:#4D4D4D;
	font-size:20px;
	display:inline-block;
	text-align:center;
	width:20px;
}
header .pc_nav ul li a span{
	line-height:1.7;
}
header .pc_nav ul li a.active{
	color:#EA6000;
}
header .pc_nav ul li a.active span{
	color:#EA6000;
}
header .pc_nav ul li a:hover{
	text-decoration:none;
	color:#EA6000;	
}
.sp_nav{
	display:none;
}
.contact_logo{
	background:#F1EBDD;
	padding:15px 0;
	display:block;
}
.contact_logo img{
	width:200px;
	height:auto;
}
/*--------------------------------------------------------------
			フッター
--------------------------------------------------------------*/
footer .foot_top{
	width:100%;
	height:0;
	background:url(../images/base/foot_img.jpg) 0 center no-repeat;
	background-size:100% auto;
	text-indent:-9999px;
	padding:0 0 18.09% 0;
}
footer .foot_bottom{
	background:#333333;
	vertical-align:bottom;
	padding:40px 0 15px 0;	
}
footer .foot_bottom .inner{
	width:885px;
	margin:0 auto;
	overflow:hidden;
}
footer .foot_bottom .inner .foot_left{
	float:left;
}
footer .foot_logo{
	margin:0 0 40px 0;
}
footer .en_btn{
	color:#333333;
	font-size:13px;
	background:#BFBFBF;
	display:inline-block;
	line-height:1;
	font-weight:400;
	padding:6px 30px 8px;
	border-radius:14px;
	margin:0 20px 0 0;
}
footer .access_text{
	color:#fff;
	margin:20px 0 0 0;
	font-size:14px;
	line-height:1.4;
}
footer .access_text .tel{
	color:#fff;
}
footer .foot_nav{
	float:right;
}
footer .foot_nav ul{
	overflow:hidden;
}
footer .foot_nav ul li{
	float:right;
	margin:0 25px 0 0;
}
footer .foot_nav ul li:first-child{
	margin:0;	
}
footer .foot_nav ul li a{
	color:#fff;
	font-size:20px;
	display:inline-block;
	text-align:center;
	width:20px;
}
footer .foot_nav ul li a.active{
	color:#EA6000;
}
footer .foot_nav ul li a:hover{
	text-decoration:none;
	color:#EA6000;	
}
footer .sp_tel{
	display:none;
}
footer .copy{
	text-align:center;
	color:#fff;
	margin:30px 0 0 0;
	font-size:13px;
}
footer .ac_link{
	color:#fff;
	text-decoration:underline;
}
footer .ac_link:hover{
	text-decoration:none;
}
/*--------------------------------------------------------------
			共通パーツ
--------------------------------------------------------------*/
img{
	max-width:100%;
	height:auto;
}

/*------- レイアウト -------*/
main{
	display:block;/*- ieの背景画像対応 -*/
}
.main_in{
	width:1000px;
	margin:0 auto;
}
.v_text{
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;	
}
.info_ttl{
	font-size:28px;
	color:#DE6100;
	text-align:center;
	margin:90px 0 40px 0;
}
.info_box{
	overflow:hidden;
	width:885px;	
	margin:0 auto;	
}
.info_box .left_box{
	float:left;
	width:535px;
	border-top:#A3A3A3 1px dashed;
	padding:25px 0 0 0;
}
.info_box .right_box{
	float:right;
	width:300px;
}
.info_box .time{
	color:#DE6100;
	font-size:15px;
	margin:0 0 10px 0;
}
.info_box .ttl{
	font-weight:500;
	margin:0 0 15px 0;
}
.info_box .text{
	font-size:14px;
}
/*-------　2階層共通 -------*/
.second header{
	width:100%;
	padding:40px 0 40px 0;	
}
.second .content_in{
	background-color:#F1EBDD;
	padding:0 0 100px 0;
}
.second .second_ttl{
	font-size:28px;
	background:#764C24;
	line-height:1;
	padding:17px 0 23px 0;
	text-align:center;
	color:#fff;
	margin:0 0 60px 0;
}
.second .second_logo{
	text-align:center;
}
.second .top_text01{
	font-size:28px;
	text-align:center;
	line-height:1.4;
	margin:40px 0 30px 0;
}
.second .top_text02{
	font-size:28px;
	color:#000;
	line-height:1.4;
	margin:40px 0 30px 0;
}
.second .text01{
	line-height:2;
}
.second .left_box01{
	float:left;
	width:480px;
}
.second .right_box01{
	float:right;
	width:480px;	
}
.second .three_wrap{
	font-size:0;
	width:1035px;
}
.second .three_box01{
	width:310px;
	display:inline-block;
	margin:0 35px 25px 0;
	vertical-align:top;
}
.second .s_ttl01{
	font-size:18px;
	margin:15px 0 5px 0;
	line-height:1.4;
}
.second .left_box02{
	float:left;
	width:310px;
}
.second .right_box02{
	width:620px;
	float:right;
}
.second .box01{
	width:310px;
}
.second .map{
	margin:50px 0 30px 0;
}
.second .date_table th{
	font-weight:normal;
	text-align:left;
	padding:10px 15px 10px 0;
}
.main_in02{
	width:885px;
	margin:0 auto;
}
main .ac_link{
	color:#42210B;
	text-decoration:underline;
}
main .ac_link:hover{
	text-decoration:none;
}
@media screen and (max-width: 768px){
body{
	min-width:0px;
}	
/*--------------------------------------------------------------
			ヘッダー
--------------------------------------------------------------*/
header{
	background:#EBEBE3;
	padding:20px 0;
}
header .inner{
	width:100%;
	padding:0 20px;
	box-sizing:border-box;
}
header .head_right{
	float:none;
	width:100%;
	position:static;
}
header .head_right .right_inner{
	float:none;
	width:100%;
}
header .ttl_logo{
	text-indent:0;
	background:none;
	width:215px;
	height:auto;
	overflow:hidden;
	margin:0 0 30px 0;
	float:none;
	font-size:10px;
	font-weight:600;
}	
header .ttl_logo a{
	display:block;
	background:url(../images/base/sp_ttl_logo.svg) 0 bottom no-repeat;
	background-size:100% auto;
	width:215px;
	height:50px;
	color:#2D261E;
	text-decoration:none;
}
header .ttl_logo a span{
	display:none;
}
header .tel_box{
	width:100%;
	float:none;
	margin:0;
}
header .tel{
	display:none;
}
header .en_btn{
	display:none;
}
header .top_text{
	font-size:17px;
	text-align:center;
	height:auto;
	padding:0 0 60% 20px;
	background:url(../images/home/top_img.svg) center 80px no-repeat;
	background-size:100% auto;
	margin:0 auto;
}
header .top_text span{
	font-size:17px;
	margin:0;
	padding-left:0px;
}
.contact header{
	display:none;
}
/*------- ナビゲーション -------*/
header .pc_nav{
	display:none;
}
.sp_nav{
	width:100%;
	position:static;
	display:block;	
}
.menu-btn {
    position: fixed;
    top: 25px;
    right: 25px;
    width: 32px;
    height: 36px;
    cursor: pointer;
	background:url(../images/base/sp_btn.svg);
	background-size:32px auto;
	background-repeat:no-repeat;
	background-position:0 0;
	z-index:999999;
}
.menu-btn span {
    color: #333;
	font-size:10px;
	display:block;
}
.menu-btn span:after {
    content: attr(data-txt-menu);
}

/* 開閉用ボタンがクリックされた時のスタイル */

.open header .ttl_logo a,.second.open header .ttl_logo a{
	background:url(../images/base/sp_ttl_logo02.svg) 0 bottom no-repeat;
	background-size:100% auto;
	width:215px;
	height:50px;
	color:#fff;
	position:fixed;
	z-index:99999;
	top:20px;
	left:20px;
}
.open .menu-btn{
	background:url(../images/base/sp_btn_on.svg);
	background-size:30px auto;
	background-position:center center;
	background-repeat:no-repeat;
	z-index:999999;	
}
.open .menu-btn span {
	display:none;
}
.menu {
    position: fixed;
    display: table;
    top: 0;
    left: 0;
    width: 100%;
	height:100%;
    background:#333;
    -webkit-transition: all .5s;
    transition: all .5s;
    visibility: hidden;
    opacity: 0;
	padding:80px 0 0 0;
	box-sizing:border-box;
	z-index:9999;
}
.contact .menu .ttl_logo a{
	background:url(../images/base/sp_ttl_logo02.svg) 0 bottom no-repeat;
	background-size:100% auto;
	width:215px;
	height:50px;
	color:#fff;
	position:absolute;
	z-index:99999;
	top:20px;
	left:20px;
	font-size:10px;
	text-decoration:none;	
}
.contact .menu .ttl_logo a span{
	display:none;
}
.menu ul {
	background:#333;
	padding:10px 0 15px 0;
	height:auto;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	
}
.menu li {
    text-align: center;
}
.menu li a {
    display: block;
    font-size: 18px;
    color: #fff;
	padding:16px 0 15px;
	border-bottom:#fff 1px dotted;
}
.menu li a:hover {
    color: #999;
}
.menu li a.nav_tel{
	font-size:28px;
	font-weight:600;
	text-decoration:none;
	padding:25px 0 25px 0;
}
.menu li a.fc_btn{
	border:none;
	background:url(../images/base/fc_btn.svg) 0 0 no-repeat;
	background-size:40px auto;
	display:inline-block;
	padding:0;
	width:40px;
	height:40px;
	text-indent:-9999px;
	margin:30px 20px 0 0;
	vertical-align:middle;
}
.menu li a.en_btn{
	border:none;
	display:inline-block;
	padding:0;
	width:180px;
	background:#fff;
	padding:10px 0;
	border-radius:25px;
	color:#333;
	text-decoration:none;
	font-size:20px;
	margin:30px 0 0 0;
	vertical-align:middle;	
}
.menu li:last-child{
	background:url(../images/home/bg.svg) center bottom no-repeat;
	background-size:300px auto;
	padding-bottom:170px;
}

/* 開閉用ボタンがクリックされた時のスタイル */
.sp_nav{
	display:block;
}
.open .menu {
    -webkit-transition: all .5s;
    transition: all .5s;
    visibility: visible;
    opacity: 1;
}
/*--------------------------------------------------------------
			フッター
--------------------------------------------------------------*/
footer .foot_top{
	display:none;
}
footer .foot_bottom{
	background:#333333;
	vertical-align:bottom;
	padding:30px 20px 60px 20px;	
}
footer .foot_bottom .inner{
	width:100%;
}
footer .foot_bottom .inner .foot_left{
	float:none;
}
footer .foot_logo{
	display:none;
}
footer .en_btn{
	display:none;
}
footer .access_text{
	margin:0;
	font-size:15px;
	line-height:1.5;
}
footer .access_text .tel{
	color:#fff;
}
footer .foot_nav{
	display:none;
}
footer .sp_tel{
	display:block;
	font-size:25px;
	color:#fff;
	font-weight:600;
	text-align:center;
	margin:30px 0 0 0;
}
footer .copy{
	font-size:12px;
	margin:50px 0 0 0;
}
/*--------------------------------------------------------------
			共通パーツ
--------------------------------------------------------------*/
/*------- レイアウト -------*/
.main_in{
	width:100%;
	padding:0 10px;
	box-sizing:border-box;
}
.v_text{
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;	
}
.info_ttl{
	font-size:21px;
	margin:45px 0 20px 0;
}
.info_box{
	width:100%;	
}
.info_box .left_box{
	float:none;
	width:100%;
	padding:25px 20px 0 20px;
	box-sizing:border-box;
}
.info_box .right_box{
	float:none;
	width:100%;
	text-align:center;
	margin:20px 0 0 0;
}
.info_box .time{
	font-size:13px;
	margin:0 0 10px 0;
}
.info_box .ttl{
	font-size:16px;
	font-weight:600;
	margin:0 0 10px 0;
}
.info_box .text{
	font-size:14px;
}
/*-------　2階層共通 -------*/
.second img{
	max-width:100%;
	height:auto;
}
.second header{
	width:100%;
	padding:17px 0 20px 0;	
}
.second header .inner{
	margin:0;
}
.second header .ttl_logo a{
	display:block;
	background:url(../images/base/sp_ttl_logo.svg) 0 bottom no-repeat;
	background-size:100% auto;
	width:215px;
	height:53px;
	color:#2D261E;
	text-decoration:none;
}
.second .content_in{
	padding:0 0 60px 0;
}
.second .second_ttl{
	font-size:21px;
	padding:12px 0 18px 0;
	margin:0 0 40px 0;
}
.second .second_logo{
	width:185px;
	margin:0 auto;
}
.second .second_logo img{
	width:100%;
	height:auto;
}
.second .top_text01{
	font-size:21px;
	margin:30px 0 20px 0;
}
.second .left_box01{
	float:none;
	width:100%;
}
.second .right_box01{
	float:none;
	width:100%;	
}
.second .three_wrap{
	font-size:0;
	width:100%;
}
.second .three_box01{
	width:100%;
	margin:0 0 30px 0;
}
.second .three_box01 img{
	display:block;
	margin:0 auto;
}
.second .s_ttl01{
	font-size:16px;
}
.second .left_box02{
	float:none;
	width:100%;
}
.second .right_box02{
	float:none;
	width:100%;
}
.second .box01{
	width:100%;
}
.second .map{
	margin:50px 0 30px 0;
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.second .map iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.second .date_table th{
	font-weight:normal;
	text-align:left;
	padding:10px 15px 10px 0;
	display:block;
}
.second .date_table td{
	display:block;
	padding:0 0 15px 0;
}
.main_in02{
	width:100%;
	padding:0 10px;
	box-sizing:border-box;
}
}