@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');

body {
	/*明朝*/
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size:14px;
}


/* clearfix */
.clearfix:after {
    content:".";
    height:0;
    clear:both;
    display:block;
    visibility:hidden;
}

* html .clearfix { /* IE6にのみ適用 */
    height:1%;
}

*+html .clearfix { /* IE7にのみ適用 */
    display:inline-block;
}

/** 透過ロールオーバー
---------------------------------------------**/
a:hover img{
	filter: alpha(opacity=70);
	-ms-filter: alpha(opacity=70);
	opacity: 0.7;
}

img {
	vertical-align: bottom;
}

.sp {
	display: none;
}

header {
	padding:0;
}
header #h_border,
header .active #sp-h_border {
	width: 100%;
	height: 4px;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#cb9b0e+0,f0c500+15,f6e490+35,f6e490+50,f6e490+65,f0c500+85,cb9b0e+100 */
	background: rgb(203,155,14); /* Old browsers */
	background: -moz-linear-gradient(left, rgb(203,155,14) 0%, rgb(240,197,0) 15%, rgb(246,228,144) 35%, rgb(246,228,144) 50%, rgb(246,228,144) 65%, rgb(240,197,0) 85%, rgb(203,155,14) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgb(203,155,14) 0%,rgb(240,197,0) 15%,rgb(246,228,144) 35%,rgb(246,228,144) 50%,rgb(246,228,144) 65%,rgb(240,197,0) 85%,rgb(203,155,14) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgb(203,155,14) 0%,rgb(240,197,0) 15%,rgb(246,228,144) 35%,rgb(246,228,144) 50%,rgb(246,228,144) 65%,rgb(240,197,0) 85%,rgb(203,155,14) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cb9b0e', endColorstr='#cb9b0e',GradientType=1 ); /* IE6-9 */
}
header .bg_white {
	background: rgba(255,255,255,0.6);
	padding: 35px 0 0;
}
header .inner {
	position: relative;
	width: 1100px;
	height: 112px;
	margin: 0 auto 0;
}

header h1 {
	position: absolute;
	top: -4px;
	left: -5px;
}
header .h_tell {
	position: absolute;
	top: 0;
	right: 0;
}
header nav {
	position: absolute;
	left: 0;
	bottom: 10px;
	width: 100%;
	text-align: center;
}
header nav ul {
	display: flex;
	justify-content: space-around;
	font-size: 0.85rem;
}
header nav li {
	position: relative;
	display: block;
	border-right: none;
	vertical-align: bottom;
	text-align: center;
}
header nav li a {
	display: flex;
	align-items: center;
	background-repeat: no-repeat;
	width: max-content;
	height: 28px;
	color: #000;
	text-decoration: none;
	padding: 0 1.35em;
	border-right: 1px solid #231815;
	font-weight: bold;
	font-family: "Noto Serif JP", serif;
}
header nav li:first-of-type {
	border-left: 1px solid #231815;
}

header nav li.menu01 a,
header nav li.menu02 a,
header nav li.menu03,
header nav li.menu04,
header nav li.menu05 a,
header nav li.menu06 a,
header nav li.menu07 a,
header nav li.menu08 a,
header nav li.menu09 a {
	background-image: none !important;
}

header nav li.smenu01 a,
header nav li.smenu02 a,
header nav li.smenu03 a,
header nav li.smenu04 a,
header nav li.smenu05 a {
	background-image: none;
}


header nav li.menu01 a:hover,
header nav li.menu02 a:hover,
header nav li.menu03 a:hover,
header nav li.menu04 a:hover,
header nav li.menu05 a:hover,
header nav li.menu06 a:hover,
header nav li.menu07 a:hover,
header nav li.menu08 a:hover,
header nav li.menu09 a:hover,
header nav li.menu10 a:hover {
	background-image: none;
	color: #A71414;
}

header nav li.smenu01 a:hover,
header nav li.smenu02 a:hover,
header nav li.smenu03 a:hover,
header nav li.smenu04 a:hover,
header nav li.smenu05 a:hover {
	background-image: none;
}


ul.child {
	background:#FFF;
	display: none;
	position: absolute;
	z-index: 200;
	padding: 0;
	border-top: 1px solid #9FA0A0;
	border-right: 1px solid #9FA0A0;
	border-left: 1px solid #9FA0A0;
	width: 100%;
}
ul.child li {
	width: 100%; /* サブメニュー1項目の横幅 */
	height: 26px; /* サブメニュー1項目の高さ */
	text-align: center;
	border-right: none;
	border-bottom: 1px solid #9FA0A0;
}
ul.child li:first-of-type {
	border-left: none;
}
ul.child li:last-of-type {
}
ul.child li a {
	border-right: none;
	padding: 0;
	justify-content: center;
	width: 100%;
}
ul.child li a:hover {
}

/* 動画ボタン */
header .btn-movie {
	position: absolute;
	right: 285px;
	top: -9px;
}

@media screen and (max-width: 767px) {
	img {
		width: 100%;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}

	header {
		padding: 0;
	}
	header .bg_white {
		padding: 0;
	}
	header .inner {
		width: 100%;
		height: auto;
		padding: 3% 0 3%;
	}
	header h1 {
		position: relative;
		top: 0;
		left: 5%;
		width: 70%;
	}
	header .h_tell {
		display: none;
	}
	header nav {
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		z-index: 0;
	}
	header nav.active {
		display: block;
		position: fixed;
		top: 0;
		background: #FFF;
		height: 100vh;
		z-index: 300;
		overflow-y: scroll;
	}
	header nav .menu_logo {
		display: none;
	}
	header nav.active .menu_logo {
		display: block;
		margin: 0px 5%;
		padding: 3% 0 3%;
		width: 70%;
	}

	header nav .btn_menu {
		width: 12%;
		display: block;
		margin: 3% 5% 0 auto;
	}
	header nav.active .btn_menu {
		position: absolute;
		top: 0;
		right: 0;
	}
	header nav ul {
		display: none;
		margin: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	header nav.active ul {
		display: block;
		background-image: url(../sp-images/bg_menu.png);
		background-repeat: no-repeat;
		z-index: 300;
	}
	header nav.active ul.child {
		background: none;
		border: none;
	}
	header nav li {
		display: block;
		width: 80%;
		margin: 2% auto;
		border: 1px solid #FFF;
	}
	header nav li:first-of-type {
		border-left: 1px solid #FFF;
	}
	header nav li a {
		position: relative;
		width: 86%;
		height: auto;
		padding: 1.5% 7%;
		border-right: none;
		font-size: 1.1rem;
		color: #FFF;
		font-weight: 400;
	}

	header nav li a::before {
		content: "・";
	}
	header nav li a::after {
		content: "";
		background-image: url(../sp-images/arrow-white-sp.svg);
        background-size: 100%;
        background-repeat: no-repeat;
        background-position: center;
        width: 0.9rem;
        height: 0.9rem;
        display: block;
        position: absolute;
        right: 1.2rem;
        top: 0;
        bottom: 0;
        margin: auto 0;
	}
	header nav li.menu09 a::after {
		background-image: url(../sp-images/arrow-black-sp.svg);
	}
	header nav li.menu01 a,
	header nav li.menu02 a,
	header nav li.menu03,
	header nav li.menu03 a,
	header nav li.menu04,
	header nav li.menu04 a,
	header nav li.menu05 a,
	header nav li.menu06 a,
	header nav li.menu07 a,
	header nav li.menu08 a,
	header nav li.menu09 a,
	header nav li.menu01 a:hover,
	header nav li.menu02 a:hover,
	header nav li.menu03:hover,
	header nav li.smenu01 a:hover,
	header nav li.smenu02 a:hover,
	header nav li.menu04:hover,
	header nav li.smenu03 a:hover,
	header nav li.smenu04 a:hover,
	header nav li.smenu05 a:hover,
	header nav li.menu05 a:hover,
	header nav li.menu06 a:hover,
	header nav li.menu07 a:hover,
	header nav li.menu08 a:hover,
	header nav li.menu09 a:hover,
	header nav li.menu10 a:hover {
		background-image: none;
		color: #fff;
	}
	header nav li.menu09 a:hover {
		color: #000;
	}
	header nav ul.child {
		position: relative;
	}
	header nav ul.child li {
		width: 100%;
		height: auto;
		border:none;
		margin: 0 0 2%;
	}
	header nav ul.child li:first-of-type {

	}
	header nav ul.child li:last-of-type {
		margin-bottom: 0;
	}
	header nav li.menu03 > a ,
	header nav li.menu04 > a {
		display: none;
	}
	header nav ul.child li a {
        display: block;
        width: auto;
        text-align: left;
        padding: 1.5% 7%;
	}
	header nav li.menu09 {
		background: #FFF;
	}
	header nav li.menu09 a {
		color: #000;
	}


	/* 動画ボタン */
	header .btn-movie {
		position: relative;
		top: 0;
		right: 0;
		width: 28.125vw;
		margin: 2.8vw 0 0 5%;
	}
	header nav .btn-movie {
		display: none;
		margin-top: 0;
		margin-bottom: 3%;
	}
	header nav.active .btn-movie {
		display: block;
	}

 }

article .Wphoto {
	width: 100%;
}


footer {
	clear: both;
}
footer .inner {
	position: relative;
	width: 1100px;
	margin: 0 auto;
	padding: 65px 0 0;
}
footer #btn_page_top {
	position: absolute;
	top: -41px;
	right: 0;
}
footer h1 {
	text-align: center;
}
footer .f_box {
	width: 1000px;
	margin: 0 auto;
	padding: 45px 0 50px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
footer .addres-wrap {
	width: 430px;
	margin-bottom: 25px;
	line-height: 180%;
}
footer .addres-wrap h6 {
	font-weight: bold;
}
footer .addres-wrap p {
	font-size: 14px;
	margin-bottom: 0;
}
footer .addres-wrap p + h6 {
	margin-top:15px;
}
/* footer .address {
	display: inline-block;
	width: 430px;
	margin-bottom: 25px;
	font-size: 16px;
	line-height: 200%;
	vertical-align: top;
} */
footer nav,
footer .btn_online_shop {
	display: inline-block;
	width: 510px;
	margin: 0 0 15px 54px;
}
footer nav a {
	color: #231815;
	font-size: 14px;
	text-decoration: none;
}
footer nav ul {
	display: inline-block;
	margin-right: 25px;
	vertical-align: top;
}
footer nav li {
	background: url(../images/f_arrow.png) no-repeat left 4px;
	margin-bottom: 12px;
	padding-left: 16px;
}

footer .sns {
	display: flex;
    width: 100%;
    justify-content: flex-end;
    margin: 0 0 10px;
}
footer .sns li {
	max-width: 40px;
}
footer .sns li + li {
	margin-left: 20px;
}
footer .sns li img {
	width: 100%;
}

footer .f_tell {
	display: inline-block;
	width: 430px;
	text-align: right;
}
footer #copyright {
	padding: 20px 0;
	border-top: 1px solid #231815;
	text-align: center;
}

@media screen and (max-width: 767px) {
	footer .inner {
		width: 90%;
		margin: 0 auto;
		padding: 10% 0 0;
	}
	footer #btn_page_top {
		width: 20%;
	}
	footer .f_box,
	footer .address,
	footer .f_tell,
	footer .btn_online_shop {
		width: 100%;
		margin: 0;
		text-align: center;
	}

	footer .sns {
		justify-content: center;
		margin: 8% 0 3%;
	}
	footer .sns li + li {
		margin-left: 10%;
	}

	footer .f_box {
		padding: 4% 0;
		justify-content: center;
	}
	footer .addres-wrap {
		width: 100%;
		margin-bottom: 0;
	}
	footer .address span.sp {
		display: inline;
	}
	footer nav {
		display: none;
	}
	footer .f_tell {
		width: 80%;
		margin: 5% 0;
	}
	footer .btn_online_shop {
		width: 80%
	}
}
