@charset "UTF-8";
/* CSS Document */

/*reset
------------------------------------------------------------------------------*/
body{ font-family: "メイリオ", "ＭＳ Ｐゴシック", sans-serif; font-size:88%; line-height:180%; }
body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, ul {
margin: 0;
padding: 0;
}
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="date"],
input[type="passwprd"],
textarea{
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
select{
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
}
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 0;
	color: inherit;
	cursor: pointer;
	font: inherit;
	margin: 0;
	outline: none;
	padding: 0;
	vertical-align: middle;
}
img {
	border:0;
	max-width:100%;
	vertical-align: bottom;
}
/*------------------------------------------------------------------------------*/

*{
	box-sizing: border-box;
}

:root{
	--text-color: #232221;
	--bigtitle: 1.67vw;
	--bigtext: 0.94vw;
	--smalltitle: 1.15vw;
	--lightbrown:#F6F0EA;
	--lightgray:#F5F5F5;
	--brown: #6A3F15;
	--orange: #F06741;
}

body{
	font-family:"Noto Sans JP", "游ゴシック", "Yu Gothic", Yu Gothic, "游ゴシック体", "YuGothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	width:100%;
	font-style: normal;
	color: var(--text-color);
	background-color:var(--lightbrown);
	font-size: 0.83vw;
	line-height: 1.75;
	letter-spacing: 1px;
}

/*PC・スマフォで非表示
------------------------------------------------------------------------------*/
.pc_none {
	display: none;
}
.sp_none {
	display: block;
}


/*ここからcss設定
------------------------------------------------------------------------------*/


.flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
a{
	transition: opacity 0.2s;
	cursor: pointer;
}
a:hover{
	opacity: 0.7;
}
.a_reset{
	text-decoration: none;
	color: var(--text-color);
}
.listnone{
	list-style: none;
}
.inner{
	width:66.67vw;
	margin:0 auto;
}
.inner2{
	width: 52.08vw;
	margin:0 auto;
}


/* -------------------- */
/* header
/* -------------------- */
.header {
	height: 2.6vw;
	position: fixed;
	top: 2.6vw;
	right: 2.6vw;
}
.hamburger-menu {
	width: 7.81vw;
	height: 2.6vw;
	position: relative;
	border: none;
	border-radius: 0.26vw;
	appearance: none;
	padding: 0;
	cursor: pointer;
	background-color:var(--brown);
	color:#fff;
}
.hamburger-menu__bar {
	display: inline-block;
	width: 1.56vw;
	height: 2px;
	background: #fff;
	position: absolute;
	left: 1.04vw;
	top: 1.72vw;
	transition: .5s;
}
.hamburger-menu__bar:first-child {
	top: 0.89vw;
}
.hamburger-menu__bar:nth-child(2) {
	top: 1.3vw;
}
.hamburger-menu__bar:last-child {
	top: 1.72vw;
}
.hamburger-menu--open .hamburger-menu__bar {
	top: 50%;
}
.hamburger-menu--open .hamburger-menu__bar {
	transform: translateY(-50%) rotate(-45deg);
}
.hamburger-menu--open .hamburger-menu__bar:first-child {
	transform: translateY(-50%) rotate(45deg);
}
.hamburger-menu--open .hamburger-menu__bar:last-child {
	transform: translateY(-50%) rotate(-45deg);
}
.hamburger-menu--open .hamburger-menu__bar:nth-child(2) {
	display: none;
}
.hamburger-menu .hamburger-menu__text{
	display: inline-block;
	position: absolute;
	top: 0.63vw;
	left: 3.13vw;
	font-weight: 500;
}
.hamburger-menu .hamburger-menu__text:after{
	content: "メニュー";
}
.hamburger-menu.hamburger-menu--open .hamburger-menu__text:after{
	content: "クローズ";
}
.navigation {
	display: none;
	background-color:var(--brown);
	position: absolute;
	top: 2.86vw;
	right: 0;
	width: 21.61vw;
	z-index: 9999;
	border-radius: 0.26vw;
	padding: 1.56vw 2.6vw;
}
.navigation__list {
	list-style: none;
	padding: 0;
	margin: 0;
}
.navigation__list-item{
	
}
.navigation__list-item + .navigation__list-item{
	border-top: 1px solid #fff;
}
.navigation__link {
	color: #fff;
	padding: 1.04vw;
	font-weight: 500;
	display: block;
	transition: .5s;
	position: relative;
}
.navigation__link:after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 0.47vw solid transparent;
	border-bottom: 0.47vw solid transparent;
	border-left: 0.63vw solid #fff;
	border-right: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1.04vw;
	margin: auto 0;
	transition: .5s;
}
.navigation__link:hover:after{
	right: 0.78vw;
}

.main{
	padding: 5.21vw;
}


.logo_header{
	text-align: center;
}
.section_title{
	width: 40.1vw;
	width: 32.29vw;
	margin: 0 auto;
}
.logo_header img{
	width: 100%;
}
.login_form{
	margin-top: 5.21vw;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.login_form_in{
	width: 18.23vw;
	margin-top: 2.6vw;
}
.login_form_in input[type="text"],
.login_form_in input[type="password"]{
	width:100%;
	background-color: #fff;
	padding: 0.78vw;
	font-size: 0.83vw;
	border-radius: 0.26vw;
	border: 1px solid #ddd;
}
.login_form_in button[type="submit"]{
	max-width: 18.23vw;
	width: 100%;
	background-color: var(--orange);
	color: #fff;
	padding: 1vw;
	padding: 0.63vw;
	border-radius: 0.26vw;
	position: relative;
	margin-top: 0.52vw;
}
.login_form_in button[type="submit"]:after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 0.47vw solid transparent;
	border-bottom: 0.47vw solid transparent;
	border-left: 0.63vw solid #fff;
	border-right: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0.63vw;
	margin: auto 0;
	transition: .5s;
}
.login_form_in label{
	font-weight: 500;
}
.signin_con + .signin_con{
	margin-top: 1.3vw;
}

.footer{
	text-align: center;
	padding: 1.56vw;
}
.footer_ul{
	justify-content: center;
}
.footer_li{
	font-size: 0.73vw;
	margin-left: 1.56vw;
}
.footer_li a{
	position: relative;
	padding-right: 0.9vw;
}
.footer_li a:after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 0.3vw solid transparent;
	border-bottom: 0.3vw solid transparent;
	border-left: 0.5vw solid var(--text-color);
	border-right: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto 0;
	transition: .5s;
}
.footer_copy{
	font-size: 0.73vw;
	padding-top: 0.78vw;
	text-align: center;
}

.page_in{
	width: 52.08vw;
	margin: 0 auto;
	margin-top: 5.21vw;
	padding: 4.17vw 3.13vw;
	background-color: #fff;
	border-radius: 0.52vw
}
.page_title{
	margin-bottom: 0.52vw;
}

.page_content{
	margin-top: 1.56vw;
}
.page_dl{
	padding-top: 1.56vw;
	border-top: 1px solid #ddd;
}
.page_dt{
	font-size: 1.04vw;
	font-weight: bold;
	margin-bottom: 0.52vw;
}
.page_dl + .page_dl{
	margin-top: 1.56vw;
}
.page_con + .page_con{
	margin-top: 1.56vw;
}
.page_con h3{
	font-size: 1.04vw;
	font-weight: bold;
	margin-bottom: 0.52vw;
}
.page_con ul{
	margin-left: 1.5em;
	margin-top: 0.52vw;
}
.textri{
	text-align: right;
}
.page_in p + p{
	margin-top: 0.52vw;
}

.law_th,
.law_td{
	padding: 0.63vw;
}
.law_th{
	width: 10.42vw;
	background-color: var(--lightgray);
}

.product_list_wrap_head{
	text-align: center;
	margin-top: 5.21vw;
}
.product_list_wrap_head .section_title{
	margin-bottom: 0.52vw;
}
.product_list_wrap_head > p{
	font-size: 0.94vw;
}
.product_list_ul{
	display: flex;
	flex-wrap: wrap;
	gap: 2.6vw;
	margin-top: 5.21vw;
}
.product_list_li{
	width:calc(100% / 2 - 1.3vw);
	padding: 1.56vw;
	background-color: #fff;
	border-radius: 0.52vw;
}
.product_list_li_img a{
	display: block;
	text-align: center;
	background-color: var(--lightgray);
}
.product_list_li_img a img{
	max-width: 28.91vw;
	max-height: 20.57vw;
	margin: 0 auto;
}
.product_list_li_head{
	margin-top: 1.04vw;
}
.name_item{
	font-size: 1.35vw;
	line-height: 1.4;
	font-weight: 500;
}
.product_list_li_detail{
	margin-top: 0.78vw;
}
.product_list_li_btn{
	margin-top: 1.56vw;
}
.product_list_li_btn a{
	display: block;
	max-width: 18.23vw;
	width: 100%;
	background-color: var(--orange);
	color: #fff;
	padding: 1vw;
	padding: 0.63vw;
	border-radius: 0.26vw;
	position: relative;
	text-align: center;
	margin: 0 auto;
}
.product_list_li_btn a:after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 0.47vw solid transparent;
	border-bottom: 0.47vw solid transparent;
	border-left: 0.63vw solid #fff;
	border-right: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0.63vw;
	margin: auto 0;
	transition: .5s;
}


.product_page_detail{
	padding: 3.13vw;
	background-color: #fff;
	border-radius: 0.52vw;
	margin-top: 5.21vw;
}
.product_img_slider{
	margin-top: 1.56vw;
}
.product_img_slider img{
	width: 100%;
	height: auto;
}
.product_page_text_wrap{
	margin-top: 2.6vw;
}
.product_page_text + .product_page_text{
	margin-top: 1em;
}
.product_page_con{
	margin-top: 2.6vw;
}
.product_page_con_title{
	font-weight: 500;
}
.product_page_con_text{
	margin-top: 0.26vw;
}
.product_table{
	margin-top: 1.04vw;
}
.product_page_form{
	padding: 2.6vw;
	background-color: var(--lightgray);
	border-radius: 0.52vw;
	margin-top: 1.04vw;
}
.product_page_form label{
	font-weight: 500;
	width: 100%;
	display: block;
	margin-bottom: 0.26vw;
}
.product_page_form input[type="text"],
.product_page_form input[type="tel"],
.product_page_form input[type="email"],
.product_page_form textarea{
	width: 100%;
	background-color: #fff;
	padding: 0.78vw;
	font-size: 0.83vw;
	border-radius: 0.26vw;
	border: 1px solid #ddd;
}
.product_page_form input[type="date"],
.product_page_form select{
	width: 100%;
	background-color: #fff;
	color: var(--text-color);
	padding: 0.78vw;
	font-size: 0.83vw;
	border-radius: 0.26vw;
	border: 1px solid #ddd;
	height: 3.2em;
}
.product_page_form button[type="submit"]{
	max-width: 18.23vw;
	width: 100%;
	background-color: var(--orange);
	color: #fff;
	padding: 1vw;
	padding: 0.63vw;
	border-radius: 0.26vw;
	position: relative;
}
.product_page_form button[type="submit"]:after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 0.47vw solid transparent;
	border-bottom: 0.47vw solid transparent;
	border-left: 0.63vw solid #fff;
	border-right: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0.63vw;
	margin: auto 0;
}
.signin_con_date{
	position: relative;
	text-align: left;
}
.signin_con_date input[type="date"]::-webkit-calendar-picker-indicator {
	/* display: none; */
	opacity: 0;
}
.signin_con_date input[type="date"]{
	position: relative;
	text-align: left;
}
.signin_con_date input[type="date"]:before{
	content:"";
	width: 0.83vw;
	height: 0.83vw;
	background-image: url(../img/calendar_icon.png);
	background-size: cover;
	vertical-align: middle;
	position: absolute;
	top: 0.94vw;
	right: 0.78vw;
}
.signin_con a{
	color: var(--text-color);
}
.note{
	font-size: 0.73vw;
	color: var(--orange);
	margin-left: 0.78vw;
}
.signin_con_wrap.flex{
	gap: 1.04vw;
}
.signin_con_left,
.signin_con_right{
	width:50%;
}

.signin_con.signin_submit{
	text-align: center;
	margin-top: 2.6vw;
}
.thumbnail{
	padding: 0.52vw 0;
	background-color: var(--lightgray);
}
.thumbnail .slick-track {
	transform: unset !important;
	display: flex;
	gap: 0.52vw;
}
.thumbnail .slick-slide{
	background-color: #000;
	opacity: 0.5;
}
.thumbnail .slick-slide img{
	aspect-ratio: 43 / 30;
	object-fit: cover;
}
.thumbnail .slick-current{
	opacity: 1;
}





@media screen and (max-width:1024px) {
	.pc_none {
		display: block;
	}
	.sp_none {
		display: none;
	}
	
	body{
		font-size: 4.1vw;
	}
	.main{
		padding: 30.77vw 0 25.64vw 0;
	}
	.inner,
	.inner2{
		width: calc(100% - 8vw);
	}
	
	
	.header{
		height: 12.82vw;
		top: 2.56vw;
		right: 2.56vw;
		z-index: 990;
	}
	.burger_btn {
		display: block;
		height: 39px;
		position: relative;
		width: 39px;
		z-index: 3;
		/* codepenの挙動のため */
		background-color: transparent;
		border: none;
	}
	.bar {
		background-color: #000;
		display: block;
		height: 1px;
		left: 50%;
		position: absolute;
		transform: translateX(-50%);
		width: 20px;
	}
	.bar_top {
		top: 10px;
	}
	.bar_mid {
		top: 50%;
		transform: translate(-50%,-50%);
	}
	.bar_bottom {
		bottom: 10px;
	}
	.burger_btn.close .bar_top {
		transform: translate(-50%,10px) rotate(45deg);
		transition: transform .3s;
	}
	.burger_btn.close .bar_mid {
		opacity: 0;
		transition: opacity .3s;
	}
	.burger_btn.close .bar_bottom {
		transform: translate(-50%,-8px) rotate(-45deg);
		transition: transform .3s;
	}
	.noscroll{
		overflow: hidden;
	}
	
	.nav_wrapper {
		visibility: hidden;
		height: 100vh;
		left: 0;
		position: fixed;
		top: 0;
		width: 100vw;
		opacity: 0;
		transition: opacity .5s;
		z-index: 2;
	}
	
	.header_nav {
		background-color: #1b1310;
		height: 100%;
		width: 100%;
		z-index: 2;
	}
	.nav_list {
		display: block;
		left: 50%;
		position: absolute;
		text-align: center;
		top: 50%;
		transform: translate(-50%,-50%);
	}
	.nav_item {
		margin-bottom: 40px;
		margin-right: 0;
	}
	
	
	.nav_wrapper.fade {
		opacity: 1;
		visibility: visible;
	}
	
	
	.hamburger-menu{
		width: 35.9vw;
		height: 12.82vw;
		border-radius: 1.28vw;
	}
	.hamburger-menu .hamburger-menu__text{
		font-size: 4.1vw;
		top: 2.82vw;
		left: 15.38vw;
	}
	.hamburger-menu__bar{
		width: 7.69vw;
		left: 5.13vw;
		top: 8.46vw;
	}
	.hamburger-menu__bar:first-child{
		top: 4.36vw;
	}
	.hamburger-menu__bar:nth-child(2){
		top: 6.41vw;
	}
	.hamburger-menu--open .hamburger-menu__bar{
		top: 50%;
	}
	.navigation{
		top: 14.1vw;
		width: 94.87vw;
		border-radius: 1.28vw;
		padding: 7.69vw 12.82vw;
		font-size: 4.62vw;
	}
	.navigation__link{
		padding: 5.13vw 0;
	}
	.navigation__link:after{
		border-top: 2vw solid transparent;
		border-bottom: 2vw solid transparent;
		border-left: 3vw solid #fff;
	}
	
	.login_form{
		margin-top: 17.95vw;
	}
	.login_form_in{
		width: calc(100% - 8vw);
		margin-top: 7.69vw;
	}
	.login_form_in input[type="text"],
	.login_form_in input[type="password"]{
		font-size: 4.1vw;
		border-radius: 1.28vw;
		padding: 3.85vw;
	}
	.signin_con + .signin_con{
		margin-top: 5.13vw;
	}
	.login_form_in button[type="submit"]{
		margin-top: 2.56vw;
		max-width: 100%;
		border-radius: 1.28vw;
		padding: 3.85vw;
	}
	.login_form_in button[type="submit"]:after{
		border-top: 1.5vw solid transparent;
		border-bottom: 1.5vw solid transparent;
		border-left: 2vw solid #fff;
		right: 3.85vw;
	}
	
	
	.page_in{
		width:100%;
		margin-top: 17.95vw;
		border-radius: 1.28vw;
		padding: 7.69vw 5.13vw;
	}
	.section_title{
		width: 76.92vw;
	}
	.page_title{
		font-size: 5.64vw;
		margin-bottom: 1.28vw;
	}
	
	.page_dl{
		padding-top: 7.69vw;
	}
	.page_dt{
		font-size: 4.62vw;
		margin-bottom: 3.85vw;
	}
	.page_content{
		margin-top: 7.96vw;
	}
	.page_dl + .page_dl{
		margin-top: 7.69vw;
	}
	
	
	.footer{
		padding: 0 0 7.69vw 0;
	}
	.footer_ul{
		align-items: flex-start;
		flex-direction: column;
	}
	.footer_li{
		font-size: 3.59vw;
		margin-left:0;
	}
	.footer_li + .footer_li{
		margin-top: 2vw;
	}
	.footer_li a{
		padding-right: 4vw;
	}
	.footer_li a:after{
		border-top: 1.5vw solid transparent;
		border-bottom: 1.5vw solid transparent;
		border-left: 2vw solid var(--text-color);
	}
	.footer_copy{
		font-size: 3.08vw;
		padding-top: 12.82vw;
	}
	
	
	.page_con h3{
		font-size: 4.62vw;
		margin-bottom: 3.85vw;
	}
	.page_con,
	.page_con + .page_con {
		margin-top: 12.82vw;
	}
	.page_con ul{
		margin-top: 3.85vw;
	}
	.page_in p,
	.page_in p + p{
		margin-top: 5.13vw;
	}
	
	.law_th,
	.law_td{
		width: 100%;
		display: block;
		padding: 2.56vw;
		text-align: left;
	}
	.law_td{
		padding-bottom: 5.13vw;
		overflow-wrap: anywhere;
	}
	
	.product_list_wrap_head{
		margin-top: 12.82vw;
	}
	.product_list_wrap_head .section_title{
		margin-bottom: 2.56vw;
	}
	.product_list_wrap_head > p{
		font-size: 4.1vw;
	}
	.product_list_ul{
		gap: 10.26vw;
		margin-top: 12.82vw;
	}
	.product_list_li{
		width:100%;
		padding: 5.13vw;
		border-radius: 1.28vw;
	}
	.product_list_li_img a img{
		max-width: 82.05vw;
		max-height: 57.69vw;
	}
	.product_list_li_head{
		margin-top: 2.56vw;
	}
	.name_shop{
		font-size: 3.59vw;
	}
	.name_item{
		font-size: 4.62vw;
	}
	.product_list_li_detail{
		margin-top: 2.56vw;
	}
	.product_list_li_btn{
		margin-top: 5.13vw;
	}
	.product_list_li_btn a{
		margin-top: 2.56vw;
		max-width: 100%;
		border-radius: 1.28vw;
		padding: 3.85vw;
	}
	.product_list_li_btn a:after{
		border-top: 1.5vw solid transparent;
		border-bottom: 1.5vw solid transparent;
		border-left: 2vw solid #fff;
		right: 3.85vw;
	}
	
	.product_page_detail{
		margin-top: 12.82vw;
		padding: 5.13vw;
		border-radius: 1.28vw;
	}
	.product_img_slider{
		margin-top: 2.56vw;
	}
	.product_page_text_wrap{
		margin-top: 12.82vw;
	}
	.product_page_con{
		margin-top: 12.82vw;
	}
	.product_page_form{
		padding: 5.13vw;
		border-radius: 1.28vw;
	}
	.product_page_form label{
		margin-bottom: 1.28vw;
	}
	.product_page_form input[type="text"],
	.product_page_form input[type="tel"],
	.product_page_form input[type="email"],
	.product_page_form textarea{
		font-size: 3.59vw;
		border-radius: 1.28vw;
		padding: 3.85vw;
	}
	.product_page_form input[type="date"],
	.product_page_form select{
		font-size: 3.59vw;
		border-radius: 1.28vw;
		padding: 3.85vw;
		height: 3.3em;
	}
	.note{
		font-size: 3.08vw;
		margin-left: 2.56vw;
	}
	.product_page_form button[type="submit"]{
		margin-top: 2.56vw;
		max-width: 100%;
		border-radius: 1.28vw;
		padding: 3.85vw;
	}
	.product_page_form button[type="submit"]:after{
		border-top: 1.5vw solid transparent;
		border-bottom: 1.5vw solid transparent;
		border-left: 2vw solid #fff;
		right: 3.85vw;
	}
	.signin_con_date input[type="date"]:before{
		width: 3.08vw;
		height: 3.08vw;
		top: 4vw;
		right: 1.2vw;
	}
	
}


/*kimi追加
------------------------------------------------------------------------------*/
.error-txt {color: #e55;}




