@charset "utf-8";
/* CSS Document */


/* ---- chaseki_header ---- */

#chaseki_header {
  border-bottom: 2px solid #000;
}

#chaseki_header .inner_block {
	padding-bottom: 0;
}

#tab_navi {
	position: relative;
	padding: 25px 0 0 20px;
	overflow: hidden;
  margin-bottom: -2px;
}

#tab_navi::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #000;
	z-index: -1;
}

#tab_navi a {
	display: block;
	width: 356px;
	height: 84px;
	padding-left: 30px;
	margin: 0 20px 2px 0;
	background:#fff url(../../common/img/arrow_01_l.png) right 30px top 45% no-repeat;
	border: 2px solid #000;
	border-bottom: 0;
	color: #000;
	font-size: 30px;
	line-height: 84px;
	text-decoration: none;
	float: left;
}

#tab_navi a span {
	font-size: 22px;
}

#tab_navi .current {
	margin-bottom: 0;
	padding-bottom: 2px;
	_background: #fff !important;
	pointer-events: none;
}

#original,
#tohoku,
#kumamoto,
#ryuha{
  background: #fff;
}


/* ---- detail_list ---- */

.detail_list {
	position: relative;
}

.detail_list li {
	display: inline-block;
	vertical-align: top;
}

.detail_list .number.brown {
	background-color: #a48123;
}
.detail_list .number.green {
	background-color: #91c52b;
}
.detail_list .number.red {
	background-color: #df0025;
}
.detail_list .number.yellow {
	background-color: #a48123;
}

.detail_list .btn_detail {
	position: relative;
	width: 180px;
	height: 43px;
	margin: 0 auto 30px;
}

.detail_list .btn_detail a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	color: #000;
	text-align: center;
	text-decoration: none;
	line-height: 2.44;
	box-sizing: border-box;
  background: #fff;
}

.detail_list .btn_detail .b_open {
	border: 2px solid #000;
	transition: color 0.2s, border 0.2s;
	backface-visibility: hidden;
}

.detail_list .btn_detail .b_open span {
	padding: 0 6px 0 30px;
	background: url(../img/btn_arrow_down.png) 0 center no-repeat;
	transition: background 0.2s;
	backface-visibility: hidden;
}

.detail_list .btn_detail .b_open:hover {
	color: #ce2b30;
	border-color: #ce2b30;
}

.detail_list .btn_detail .b_open:hover span {
	background-image: url(../img/btn_arrow_down_on.png);
}

.detail_list .btn_detail .b_close {
	display: none;
	background-color: #000;
	border: 2px solid #000;
	color: #fff;
}

.detail_list .btn_detail .b_close span {
	padding: 0 6px 0 30px;
	background: url(../img/btn_close.png) 0 center no-repeat;
	background-size: 15px;
}


.detail_list .detail_box {
	visibility:hidden;
	position: absolute;
	left: 0;
	width: 100%;
	padding: 45px 45px 88px;
	background-color: #e6efcf;
	overflow: hidden;
	box-sizing: border-box;
	z-index: 100;
}

.detail_list .detail_box strong {
	font-weight: bold;
}

.detail_list .btn_detail_close {
	position: absolute;
	bottom: 20px;
	right: 20px;
	width: 48px;
	height: 48px;
	background: #000 url(../img/btn_close.png) center center no-repeat;
	text-indent: -9999px;
	overflow: hidden;
}

.detail_list .detail_txt {
	width: 275px;
	margin-top: -6px;
	float: left;
}

.detail_list .detail_txt .address {
	display: inline-block;
	text-indent: -3em;
	padding: 0 0 5px 3em;
	line-height: 1.4;
}

.detail_list .detail_txt .tell {
	display: inline-block;
	text-indent: -5em;
	padding: 0 0 5px 5em;
	line-height: 1.4;
}

.detail_list .detail_txt .url {
	display: inline-block;
	word-break: break-all;
	padding: 15px 0 5px;
	line-height: 1.4;
}

.detail_list .detail_txt .other {
	display: inline-block;
	line-height: 1.4;
}

.detail_list .detail_txt .kome_list {
	margin-top: 20px;
}

.detail_list .detail_txt .kome_list li {
	display: inline-block;
	width: auto;
	margin-bottom: 5px;
	font-size: 13px;
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.6;
}

.detail_list .detail_txt_small {
	padding-right: 100px;
	margin: 25px 0 -50px;
	font-size: 13px;
}

.detail_list .detail_map {
	width: 445px;
	float: right;
}

.detail_list .detail_map.wide {
	width: 100%;
	margin: 26px 0 0;
	float: none;
}

.detail_list .subtxt_photo_left {
	padding: 28px 0 5px;
	font-size: 15px;
	line-height: 1.6;
	overflow: hidden;
}

.ryuha_list li .detail_box p.subtxt_photo_left img {
	width: 200px;
	margin-right: 20px;
	float: left;
}

.detail_list .subtxt_photo_left .subtxt_h {
	display: block;
	margin-bottom: 3px;
	font-size: 17px;
}



/* animation */
.detail_list li {
	transition: padding 0.4s;
	backface-visibility: hidden;
}


/*  wagashi_list  */

.wagashi_list li {
	width: 280px;
	margin-bottom: 30px;
}

.wagashi_list li img {
	width: 280px;
}

.wagashi_list .shop {
	margin-bottom: 5px;
	font-size: 18px;
	text-align: center;
	line-height: 1.4;
}

.wagashi_list .name {
	margin-bottom: 4px;
	font-size: 26px;
	text-align: center;
	line-height: 1.4;
}

.wagashi_list .name .small {
	font-size: 16px;
	margin-left: 0.3em;
}

.wagashi_list .ryuha {
	margin-bottom: 13px;
	font-size: 18px;
	text-align: center;
}

.wagashi_list .ryuha .number {
	display: inline-block;
	width: 27px;
	height: 27px;
	margin-right: 10px;
	border-radius: 50%;
	color: #fff;
	font-size: 18px;
	line-height: 27px;
}

.txt_wagashi{
  padding: 0 0 50px;
  margin-left: 40px;
  font-size: 18px;
	text-indent: -1em;
	padding-left: 1em;
  font-weight: bold;
}


/* ryuha_list */

.ryuha_list {
}

.ryuha_list > li {
	width: 400px;
	padding: 70px 40px 30px 0;
	margin-bottom: 10px;
	border-top: 1px solid #cdcdcd;
}
.ryuha_list li:nth-child(2n){
	padding-right: 0;
}

.ryuha_list li:nth-child(1),
.ryuha_list li:nth-child(2) {
	padding-top: 0;
	border-top: 0;
}

.ryuha_list .ryuha_place {
	display: table;
	margin-bottom: 10px;
}

.ryuha_list h3 {
	display: table-cell;
	vertical-align: middle;
	padding-left: 33px;
  width: 120px;
}

.ryuha_list h3 img {
  width: 100%;
}

.ryuha_list .seki {
	display: table-cell;
	vertical-align: middle;
	padding-left: 30px;
}

.ryuha_list .seki li {
	width: 100%;
	margin: 0 0 8px 0;
}

.ryuha_list .seki li:last-child {
	margin-bottom: 0;
}

.ryuha_list .seki .number {
	display: inline-block;
	width: 27px;
	height: 27px;
	margin-right: 5px;
	border-radius: 50%;
	color: #fff;
	font-size: 18px;
	text-align: center;
	line-height: 27px;
}

.ryuha_list .desc {
	margin-bottom: 26px;
}

.ryuha_list li .detail_box p img {
  width: 390px;
  float: right;
  padding: 0 0 10px 20px;
}

.ryuha_list li .detail_box p img.img_l {
  width: 200px;
  float: left;
  padding: 10px 20px 26px 0;
}



/* ---- original ---- */

#original .inner_block {
	padding-top: 60px;
	padding-bottom: 60px;
}

#original h2 {
	margin-bottom: 30px;
	font-size: 30px;
	text-align: center;
	line-height: 1.4;
}

#original .txt_read {
	margin-bottom: 55px;
	font-size: 18px;
	text-align: center;
}


/* ---- original_matsuya ---- */

#original #original_matsuya {
	background-color: #e8f2d5;
  margin: 0 42px;
  padding: 30px 0 20px;
  border-radius: 10px;
  border: 2px dotted #669051;
  position: relative;
}

#original #original_matsuya p.original_matsuya_txt_main {
  padding: 0 20px 0 180px;
}

#original #original_matsuya p.original_matsuya_txt_main .txt_kome {
  display: block;
	font-size: 13px;
	text-indent: -1em;
	padding-left: 1em;
}

#original #original_matsuya p.original_matsuya_txt_main .txt_price {
  font-size: 18px;
  font-weight: bold;
  display: block;
  padding-top: 10px;
}


#original #original_matsuya img.logo {
  position: absolute;   
  width: 130px;
  top: 20px;
  left: 25px;
}

#original #original_matsuya img.main {
  width: 680px;
  padding: 30px 36px 20px;
}

#original #original_matsuya .original_matsuya_hanbai {
  border-top: 2px dotted #669051;
  padding: 20px 0 0;
  margin: 40px 30px 0;
  display:flex;
}

#original #original_matsuya .original_matsuya_hanbai li {
  width: 48%;
  padding-right: 4%;
}

#original #original_matsuya .original_matsuya_hanbai li:last-child {
  padding-right: 0;
}

#original #original_matsuya .original_matsuya_hanbai h3 {
  font-size: 18px;
  font-weight: bold;
  padding: 0 20px;
}

#original #original_matsuya .original_matsuya_hanbai h4 {
  font-size: 16px;
  font-weight: bold;
  padding: 0 20px;
}

#original #original_matsuya .original_matsuya_hanbai p {
  font-size: 14px;
  padding: 0 20px 10px;
}

#original #original_matsuya p.txt_correction {
  font-size: 14px;
  margin: 20px 50px 10px;
}

#original #original_matsuya p.txt_correction span {
  font-weight: bold;
}


/* ---- ryuha ---- */

#ryuha .inner_block {
	padding-top: 60px;
	padding-bottom: 0px;
}


/* ==== Smart phone ==== */

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

/* ---- chaseki_header ---- */
  
  #chaseki_header {
  border-bottom: none;
  }

#tab_navi {
	margin: 0 -5.17%;
	padding: 4.3% 0 0 15px;
}

#tab_navi::after {
	height: 1px;
}

#tab_navi a {
	display: block;
	width: calc(50% - 25px);
	height: auto;
	padding: 8px 5px 6px;
	margin: 0 10px 1px 0;
	background-position: right 5px top 45%;
	background-size: 15px;
	border-width: 1px;
	font-size: calc(100vw / ( 320 / 15 ));
	text-align: center;
	line-height: 1.3;
}

#tab_navi a span {
	display: block;
	font-size: calc(100vw / ( 320 / 12 ));
}

#tab_navi .current {
	margin-bottom: 0;
	padding-bottom: 7px;
}



/* ---- detail_list ---- */

.detail_list .btn_detail {
	height: 0;
	margin: 0 auto 12px;
	font-size: calc(100vw / ( 320 / 12 ));
}

.detail_list .btn_detail a {
	text-decoration: none;
	line-height: 2.04;
}

.detail_list .btn_detail .b_open {
	border-width: 1px;
}

.detail_list .btn_detail .b_open span {
	padding: 0 0 0 14%;
	background-size: 12%;
}

.detail_list .btn_detail .b_open:hover {
	color: #000;
	border-color: #000;
}

.detail_list .btn_detail .b_open:hover span {
	background-image: url(../img/btn_arrow_down.png);
}

.detail_list .btn_detail .b_close {
	border-width: 1px;
}

.detail_list .btn_detail .b_close span {
	padding: 0 0 0 12%;
	background-size: 14%;
}


.detail_list .detail_box {
	visibility:hidden;
	position: absolute;
	left: 0;
	width: 100%;
	padding: 4.2% 5.2% 16.9%;
}

.detail_list .btn_detail_close {
	position: absolute;
	bottom: 0;
	right: 3.4%;
	margin-bottom: 3.4%;
	width: 10%;
	height: 0;
	padding-bottom: 10%;
	background-size: 46%;
}

.detail_list .detail_txt {
	width: 100%;
	margin-top: 0;
	font-size: calc(100vw / ( 320 / 13 ));
	float: none;
}

.detail_list .detail_txt .address {
	display: block;
	padding-bottom: 2px;
}

.detail_list .detail_txt .tell {
	display: block;
	padding-bottom: 2px;
}

.detail_list .detail_txt .url {
	display: block;
	padding: 10px 0 2px;
}

.detail_list .detail_txt .other {
	display: block;
	padding-bottom: 2px;
}

.detail_list .detail_txt .kome_list {
	margin-top: 15px;
}

.detail_list .detail_txt .kome_list li {
	width: auto;
	margin-bottom: 5px;
	font-size: calc(100vw / ( 320 / 11 ));
}

.detail_list .detail_txt_small {
	padding-right: 0;
	margin: 5.8% 0 0;
	font-size: calc(100vw / ( 320 / 10 ));
}

.detail_list .detail_txt_small span {
	display: inline-block;
}

.detail_list .detail_map {
	position: relative;
	width: auto;
	height: 0;
	padding-bottom: 100%;
	margin-top: 5.2%;
	float: none;
}

.detail_list .detail_map.wide {
	width: 100%;
	margin: 5.8% 0 0;
	float: none;
}

.detail_list .subtxt_photo_left {
	padding: 25px 0 10px;
	font-size: calc(100vw / ( 320 / 11 ));
}

.ryuha_list li .detail_box p.subtxt_photo_left img {
	width: 100px;
	margin-right: 15px;
}

.detail_list .subtxt_photo_left .subtxt_h {
	font-size: calc(100vw / ( 320 / 13 ));
}



/* wagashi_list */

.wagashi_list li {
	width: 50%;
	margin-bottom: 4%;
}

.wagashi_list li img {
	width: 100%;
}

.wagashi_list .shop {
	margin-bottom: 5px;
	font-size: calc(100vw / ( 320 / 9 ));
}

.wagashi_list .name {
	margin-bottom: 4px;
	font-size: calc(100vw / ( 320 / 13 ));
}

.wagashi_list .name .small {
	font-size: calc(100vw / ( 320 / 9 ));
}

.wagashi_list .ryuha {
	margin-bottom: 10px;
	font-size: calc(100vw / ( 320 / 9 ));
	text-align: center;
}

.wagashi_list .ryuha .number {
	width: 9.4%;
	height: auto;
	margin-right: 5px;
	font-size: calc(100vw / ( 320 / 9 ));
	line-height: 1.6;
}

.wagashi_list .btn_detail {
	width: 69%;
	padding-bottom: 18.3%;
}

.txt_wagashi{
  padding: 10px 4.7% 30px 4.7%;
  margin-left: 0;
  font-size: 15px
}

/* ryuha_list */

.ryuha_list {
	padding-bottom: 7.8%;
}

.ryuha_list > li {
	position: relative;
	width: auto;
	padding: 10.3% 0 0;
	margin: 7.8% 0 0;
	border: none;
}

.ryuha_list > li:nth-child(2) {
	padding-top: 10.3%;
}

.ryuha_list > li::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: -5.17%;
	width: 110.34%;
	height: 1px;
	background-color: #cdcdcd;
}

.ryuha_list > li:first-child::after {
	display: none;
}

.ryuha_list .ryuha_place {
	margin-bottom: 10px;
}

.ryuha_list h3 {
	width: 24.8%;
	padding-left: 0;
}

.ryuha_list .seki {
	padding-left: 4.1%;
	padding-bottom: 0;
}

.ryuha_list .seki li {
	width: 100%;
	margin: 0 0 5px 0;
	font-size: calc(100vw / ( 320 / 12 ));
	line-height: 1;
}

.ryuha_list .seki li:last-child {
	margin-bottom: 0;
}

.ryuha_list .seki .number {
	width: 19px;
	height: 19px;
	margin: 0 6px 0 -3px;
	border-radius: 50%;
	font-size: 11px;
	line-height: 19px;
}

.ryuha_list .desc {
	margin-bottom: 4.8%;
}

.ryuha_list .btn_detail {
	width: 44%;
	padding-bottom: 9.1%;
}

.ryuha_list li .detail_box p img {
  width: 100%;
  float: none;
  padding: 5px 0 15px 0;
}

.ryuha_list li .detail_box p img.img_l {
    padding: 10px 20px 10px 0;
}

/* ---- original ---- */

#original .inner_block {
	padding-top: 8.4%;
	padding-bottom: 5.4%;
}

#original h2 {
	margin-bottom: 4%;
	font-size: calc(100vw / ( 320 / 18 ));
}

#original .txt_read {
	margin-bottom: 9.7%;
	font-size: calc(100vw / ( 320 / 13 ));
	text-align: left;
}


/* ---- original_matsuya ---- */

#original #original_matsuya {
  margin: 10px 0 30px;
  padding: 15px 0;
  border-radius: 10px;
  border: 2px dotted #669051;
}

#original #original_matsuya p.original_matsuya_txt_main {
  padding: 0 15px;
}

#original #original_matsuya img.logo {
  position: relative;
  width: 25%;
  float: left;
  padding: 0 15px;
  box-sizing: content-box;
  top: 0;
  left: 0;
}

#original #original_matsuya img.main {
  width: 100%;
  padding: 20px 0 0;
}

#original #original_matsuya .original_matsuya_hanbai {
  border-top: 2px dotted #669051;
  padding: 20px 0 0;
  margin: 30px 15px 0;
  flex-wrap:wrap;
  row-gap:15px;
}

#original #original_matsuya .original_matsuya_hanbai li {
  width: 100%;
  padding-right: 0;
}

#original #original_matsuya .original_matsuya_hanbai h3 {
  font-size: calc(100vw / ( 320 / 14 ));
  padding: 0 0 5px;
}

#original #original_matsuya .original_matsuya_hanbai h4 {
  font-size: calc(100vw / ( 320 / 14 ));
  padding: 0;
}

#original #original_matsuya .original_matsuya_hanbai p {
  font-size: calc(100vw / ( 320 / 13 ));
  padding: 0 0 10px;
}

#original #original_matsuya p.txt_correction {
  margin: 20px 15px 5px;
}
  
  

/* ---- ryuha ---- */

#ryuha .inner_block {
	padding-top: 0;
	padding-bottom: 0;
}

}