html,body{
	font-family: "YakuHanJP", "Yu Gothic", "游ゴシック体", sans-serif;
	font-size:1.1em;
	font-weight:500;
	line-height:1.6em;
	color:#6a3906;
	text-align:justify;
	letter-spacing:0.2em;
	box-sizing: border-box;
	font-feature-settings:"palt";
	margin:0;
	padding:0;
	position:relative;}

body	{
	overflow-x:hidden;
	opacity: 0;
	animation: fadeIn 2s ease-in-out forwards;}

@keyframes fadeIn {
	from {
		opacity: 0;}
	to {
		opacity: 1;
	}
}

*	{margin:0;padding:0;list-style:none;box-sizing:border-box;text-align:justify;}

h1,h2,h3,h4
	{font-size: 1em;margin:0;padding:0;}

h2	{font-size:2.0em;line-height:1.5em;letter-spacing:0.2em;position:relative;}

@media screen and (max-width:640px){
h2	{font-size:1.6em;line-height:1.5em;letter-spacing:0.1em;}
}

.t_mms	{font-size: 0.5em;line-height:1.2em !important;}
.t_ms	{font-size: 0.8em;}
.t_em	{font-size: 1.0em;}
.t_s	{font-size: 1.1em;}
.t_m	{font-size: 1.2em;}
.t_l	{font-size: 1.5em;}
.t_ll	{font-size: 1.625em;}
.t_xl	{font-size: 1.875em;}
.t_xxl	{font-size: 3.0em;line-height:1.0em !important;}

.txt_l	{font-weight: 200;}
.txt_r	{font-weight: 400;}
.txt_b	{font-weight: 600;}
.txt_eb	{font-weight: 800;}

.indent	{text-indent:-1em;padding-left:1em;}
.indent2{text-indent:-2em;padding-left:2em;}
.indent3{text-indent:-3em;padding-left:3em;}

.t_left		{text-align:left;}
.t_right	{text-align:right;}
.t_center	{text-align:center;}

.t_gold		{color:#8f713c;}
.t_silver	{color:#9fa0a0;}
.t_red		{color:#e61911;}
.t_dred		{color:#c42a15;}
.t_blue		{color:#1d2088;}
.t_color	{color:#231815;}
.t_skyblue	{color:#00afec;}
.t_white	{color:#fff;}

/*
.bg_red		{background-color:#e23014;}
.bg_blue	{background-color:#0060b0;}
.bg_gold	{background-color:#c5b254;}
*/

a	{text-decoration:none;color:#cf2c16;-webkit-text-decoration-skip: none;}
a:hover,
a:focus	{text-decoration:underline;opacity:0.5;transition:0.5s;}

a.other	{
	background-image:url(../img/icon_otherlink.png);
	background-position:right 10px top 50%;
	background-repeat:no-repeat;}

a.other_w{
	background-image:url(../img/icon_otherlink_w.png);
	background-position:right 10px top 50%;
	background-repeat:no-repeat;}

a.other_txt	{
	padding-right:18px;
	background-image:url(../img/icon_otherlink.png);
	background-position:right 0 top 50%;
	background-repeat:no-repeat;}

img	{vertical-align:bottom;}
img.w	{width: 100%;}
img.w30	{width: 30%;}

@media screen and (max-width:640px){
a	{-webkit-text-decoration-skip: none;}
}

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

.pc	{display:inline;}
.sp	{display:none;}
.br9	{display:none;}

@media screen and (max-width:900px){
.br9	{display:inline;}
}

@media screen and (max-width:640px){
.pc	{display:none;}
.sp	{display:inline;}
}

/* scroll fade */
/* 基本のフェードイン */
.fade-in,
.fade-in3{
	opacity: 0;
	transition: opacity 2.0s;}

.fade-in.active,
.fade-in3.active{
	opacity: 1;}

/* 左からフェードイン */
.fade-in-left{
	opacity: 0;
	transform: translateX(-100px);
 	transition: opacity 1.5s, transform 1.5s;}

.fade-in-left3{
	opacity: 0;
	transform: translateX(-500px);
 	transition: opacity 1.5s, transform 1.5s;}

.fade-in-left.active,
.fade-in-left3.active{
	opacity: 1;
	transform: translateX(0);}

/* 右からフェードイン */
.fade-in-right{
	opacity: 0;
	transform: translateX(100px);
 	transition: opacity 1.5s, transform 1.5s;}

.fade-in-right3{
	opacity: 0;
	transform: translateX(500px);
 	transition: opacity 1.5s, transform 1.5s;}

.fade-in-right.active,
.fade-in-right3.active{
	opacity: 1;
	transform: translateX(0);}

/* 上からフェードイン */
.fade-in-up{
	opacity: 0;
	transform: translateY(-100px);
 	transition: opacity 1.5s, transform 1.5s;}

.fade-in-up3{
	opacity: 0;
	transform: translateY(-500px);
 	transition: opacity 1.5s, transform 1.5s;}

.fade-in-up.active,
.fade-in-up3.active{
	opacity: 1;
	transform: translateY(0);}

/* 下からフェードイン */
.fade-in-down{
	opacity: 0;
	transform: translateY(100px);
 	transition: opacity 1.5s, transform 1.5s;}

.fade-in-down3{
	opacity: 0;
	transform: translateY(500px);
 	transition: opacity 1.5s, transform 1.5s;}

.fade-in-down.active,
.fade-in-down3.active{
	opacity: 1;
	transform: translateY(0);}

@media screen and (max-width:500px){
/* scroll fade */

/* 左からフェードイン */
.fade-in-left,
.fade-in-left3{
 	transition: opacity 1.5s, transform 1.5s;}

/* 右からフェードイン */
.fade-in-right,
.fade-in-right3{
 	transition: opacity 1.5s, transform 1.5s;}

/* 上からフェードイン */
.fade-in-up,
.fade-in-up3{
 	transition: opacity 1.5s, transform 1.5s;}

/* 下からフェードイン */
.fade-in-down,
.fade-in-down3{
 	transition: opacity 1.5s, transform 1.5s;}
}

/* 並びのフェードイン */
.fade-in-item {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1.5s ease-out, transform 1.5s ease-out;
}

.fade-in-item.active {
  opacity: 1;
  transform: translateY(0);
}



header section .copy{
	margin:0 20px;
	box-sizing:border-box;}

header section .copy img{
	max-width:508px;
	width:100%;}

@media screen and (max-width:640px){
header{
	margin-bottom:50px;}

header section h1{
	text-align:center;}
}



article{
	width:1280px;
	margin:0 auto;
	overflow-x:hidden;}

@media screen and (max-width:1295px){
article{
	width:100%;
	margin:0 auto;}
}



/* roll */
article section.roll{
	width:1165px;
	margin-left:115px;
	margin-bottom:100px;}

article section.roll .box{
	display:flex;
	justify-content:space-between;
	margin-bottom:50px;}

article section.roll .box.btm{
	flex-direction:row;}

article section.roll .box .photo{
	width:740px;}

article section.roll .box .photo img{
	width:100%;}

article section.roll .box .logo img{
	margin:0 20px;}

article section.roll .box .text {
	width:1165px;
	display:flex;
	flex-direction:row;
	justify-content:space-between;}

article section.roll .box .text p{
	width:49%;
	padding-bottom:1em;}

article section.roll .box .text .subphoto{
	width:49%;}

article section.roll .box .text .subphoto img{
	width:100%;}

@media screen and (max-width:1295px){
article section.roll{
	width:91%;
	margin-left:9%;
	margin-bottom:100px;}

article section.roll .box .photo{
	width:63.5%;}

article section.roll .box .logo{
	width:21%;}

article section.roll .box .logo img{
	width:100%;}
}

@media screen and (max-width:640px){
article section.roll{
	width:100%;
	margin-left:0;
	margin-bottom:50px;}

article section.roll .box .photo{
	width:100%;}

article section.roll .box .logo{
	display:none;}

article section.roll .text{
	width:calc(100% - 40px);
	margin:0 auto;}

article section.roll .box{
	width:100%;
	flex-direction:column;
	gap:20px;
	margin-bottom:20px;}

article section.roll .box.btm{
	width:91%;
	margin:0 auto 50px;}

article section.roll .box .photo{
	width:100%;
	background:none;}

article section.roll .box .text {
	width:100%;
	font-size:1.0rem;
	display:flex;
	flex-direction:column;
	gap:20px;}

article section.roll .box .text p{
	width:100%;
	padding-bottom:0;}

article section.roll .box .text .subphoto{
	width:100%;}
}



/* azuki */
article section.azuki{
	width:1210px;
	margin-left:70px;
	margin-bottom:100px;}

article section.azuki h2{
	margin-left:45px;
	margin-bottom:50px;
	box-sizing:border-box;
	word-break: break-word;}

article section.azuki h2 span{
	background:#fff;}

article section.azuki h2::after{
	content:'';
	position:absolute;
	bottom:0.75em;
	left:0;
	height:2px;
	width:100vw;
	background:#6a3906;
	z-index:-1;}

article section.azuki .box{
	width:1135px;
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	margin-bottom:50px;}

article section.azuki .box .photo{
	width:560px;
	background-image:url(../img/azuki_01.jpg);
	background-position:center center;
	background-size:cover;}

article section.azuki .box .photo img{
	width:100%;}

article section.azuki .box .text {
	width:555px;
	display:flex;
	flex-direction:column;
	justify-content:space-between;}

article section.azuki .box .text p{
	padding-bottom:1em;}

article section.azuki .box .text .subphoto{
	display:flex;
	justify-content:space-between;}

article section.azuki .box .text .subphoto .left{
	width:53%;}

article section.azuki .box .text .subphoto .right{
	width:44%;}

@media screen and (max-width:1295px){
article section.azuki{
	width:95%;
	margin-left:5%;
	margin-bottom:100px;}

article section.azuki .box{
	width:93%;}

article section.azuki .box .photo{
	width:49%;}

article section.azuki .box .text {
	width:49%;}
}

@media screen and (max-width:900px){
article section.azuki h2{
	margin-left:0;
	margin-bottom:50px;
	box-sizing:border-box;}
}

@media screen and (max-width:640px){
article section.azuki{
	width:calc(100% - 40px);
	margin:0 auto 50px;}

article section.azuki h2{
	margin-bottom:20px;}

article section.azuki .box{
	width:100%;
	flex-direction:column;
	gap:20px;
	margin-bottom:50px;}

article section.azuki .box .photo{
	width:100%;
	background:none;}

article section.azuki .box .text {
	width:100%;
	font-size:1.0rem;}
}



/* nakagawa */
article section.nakagawa{
	width:100%;
	margin-bottom:100px;}

article section.nakagawa h2{
	text-align:right;
	width:100%;
	margin-left:auto;
	padding-right:60px;
	margin-bottom:50px;
	box-sizing:border-box;
	display: inline-block;
	position: relative;
	word-break: break-word;}

article section.nakagawa h2 span{
	background:#fff;
	padding-left:10px;}

article section.nakagawa h2::after{
	content:'';
	position:absolute;
	bottom:0.75em;
	right:60px;
	height:2px;
	width:100vw;
	background:#6a3906;
	z-index:-1;}

article section.nakagawa .box{
	width:1065px;
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	margin:0 75px 30px 140px;}

article section.nakagawa .box .area{
	width:400px;
	display:flex;
	justify-content:center;
	align-items:center;}

article section.nakagawa .box .photo1{
	width:610px;
	height:340px;
	background-image:url(../img/nakagawa_02.jpg);
	background-position:center center;
	background-size:cover;}

article section.nakagawa .box .photo1 img{
	width:100%;}

article section.nakagawa .box .photo2{
	width:400px;
	height:300px;
	background-image:url(../img/nakagawa_03.jpg);
	background-position:center center;
	background-size:cover;}

article section.nakagawa .box .photo2 img{
	width:100%;}

article section.nakagawa .box .text {
	width:610px;
	display:flex;
	align-items:center;}

article section.nakagawa .box .text p{
	font-size:1.0rem;
	padding-bottom:0;}

@media screen and (max-width:1295px){

article section.nakagawa .box{
	width:83%;
	margin:0 6% 30px 11%;}

article section.nakagawa .box .area{
	width:38%;}

article section.nakagawa .box .area img{
	width:100%;
	max-width:357px;}

article section.nakagawa .box .photo1{
	width:57%;
	height:340px;}

article section.nakagawa .box .photo2{
	width:38%;
	height:300px;}

article section.nakagawa .box .text {
	width:57%;}
}

@media screen and (max-width:900px){
article section.nakagawa h2{
	padding-right:6%;
	margin-bottom:50px;}
}

@media screen and (max-width:640px){
article section.nakagawa{
	margin-bottom:50px;}

article section.nakagawa h2{
	padding-right:20px;
	margin-bottom:20px;}

article section.nakagawa .box{
	width:100%;
	flex-direction:column;
	gap:20px;
	margin:0 0 20px;}

article section.nakagawa .box.btm{
	flex-direction:column-reverse;
	margin:0;}

article section.nakagawa .box .area{
	width:100%;
	display:flex;
	justify-content:center;
	align-items:center;}

article section.nakagawa .box .photo1{
	width:100%;
	height:auto;
	background-image:none;}

article section.nakagawa .box .photo2{
	width:calc(100% - 40px);
	height:auto;
	margin:0 auto;}

article section.nakagawa .box .text{
	width:calc(100% - 40px);
	height:auto;
	margin:0 auto;}
}



/* toraya */
article section.toraya{
	width:1210px;
	margin-left:70px;
	margin-bottom:100px;}

article section.toraya h2{
	margin-bottom:50px;
	box-sizing:border-box;
	display: inline-block;
	position: relative;
	word-break: break-word;}

article section.toraya h2 span{
	background:#fff;}

article section.toraya h2::after{
	content:'';
	position:absolute;
	bottom:0.75em;
	left:0;
	height:2px;
	width:100vw;
	background:#6a3906;
	z-index:-1;}

article section.toraya .box{
	width:1135px;
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	margin-bottom:50px;}

article section.toraya .box .photo{
	width:560px;}

article section.toraya .box .photo img{
	width:100%;}

article section.toraya .box .photo p{
	font-size:1.0rem;
	padding-top:20px;}

article section.toraya .box .text {
	width:540px;
	display:flex;
	flex-direction:column;
	justify-content:space-between;}

article section.toraya .box .text p{
	padding-bottom:1em;}

article section.toraya .box .text .subphoto{
	display:flex;
	justify-content:space-between;}

article section.toraya .box .text .subphoto img{
	width:100%;}

@media screen and (max-width:1295px){
article section.toraya{
	width:95%;
	margin-left:5%;
	margin-bottom:100px;}

article section.toraya .box{
	width:93%;}

article section.toraya .box .photo{
	width:49%;}

article section.toraya .box .text {
	width:48%;}
}

@media screen and (max-width:900px){
article section.azuki h2{
	margin-left:0;
	margin-bottom:50px;
	box-sizing:border-box;}
}

@media screen and (max-width:640px){
article section.toraya{
	width:calc(100% - 40px);
	margin:0 auto 50px;}

article section.toraya h2{
	margin-bottom:20px;}

article section.toraya .box{
	width:100%;
	flex-direction:column;
	gap:20px;
	margin-bottom:50px;}

article section.toraya .box .photo{
	width:100%;
	background:none;}

article section.toraya .box .text {
	width:100%;
	font-size:1.0rem;}
}



/* shop */
article section.shop{
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	width:1020px;
	border:2px solid #6a3906;
	margin:0 auto 50px;
	padding:50px;
	padding-top:calc(50px + 0.7em);
	box-sizing:border-box;
	text-align:center;}

article section.shop h2{
	position:absolute;
	display:inline-block;
	width: max-content;
	text-align:center;
	font-size:1.4em;
	line-height:1.5em;
	top:-0.7em;
	left: 50%;
	transform: translateX(-50%);
	padding:0 10px;
	background:#fff;}

article section.shop .text {
	display: inline-block;
	width: max-content;
	text-align: left;}

article section.shop .text p {
	display: block;
	text-align:left;
	font-size: 1.1em;
	line-height: 1.6em;
	text-indent: -1.2em;
	padding-left: 1.2em;}

@media screen and (max-width:1085px){
article section.shop{
	width:calc(100% - 40px);
	margin:0 20px;}
}

@media screen and (max-width:640px){
article section.shop{
	width:calc(100% - 40px);
	margin:0 20px;
	padding:50px 20px 20px;
	padding-top:calc(50px + 1.4em);}

article section.shop .text p {
	font-size: 1.0em;}
}


footer{
	position:relative;}

footer img{
	width:100%;}

footer .copy{
	width:auto;
	white-space:nowrap;
	display:inline-block;
	position: absolute;
	left:50%;
	bottom:20px;
	transform: translateX(-50%);
	font-size:1em;
	line-height:1em;
	letter-spacing:0;
	background:rgba(255,255,255,1);
	border-radius:10px;
	padding:8px 15px;}
