/* COMMON */
body { font-size: 16px; letter-spacing: .075em; line-height: 1.75; color: #000; background: #fff; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }
h1,h2,h3,h4,h5,h6,strong,b { font-weight: 600; }
.container-fluid { padding-left: 15px; padding-right: 15px; }
.container-fluid.inner { max-width: 1020px; }
.container-fluid .container-fluid { padding: 0; }
.full-width { width: 100vw; position: relative; left: 50%; margin-left: -50vw; }
.full-width .container-fluid.inner { padding: 0 15px; }
.mgb0 { margin-bottom: 0; }
.mgb10 { margin-bottom: 10px; }
.mgb20 { margin-bottom: 20px; }
.mgb30 { margin-bottom: 30px; }
.mgb40 { margin-bottom: 40px; }
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.row > *:not([class*="col"]) { width: 100%; }
.table_base{ margin: 10px 0;}
.table_base th{ background-color: #f8f8f8;}
.table_base th,
.table_base td{ border: 1px solid #ddd; padding: 15px 20px; text-align: center;}
.table_base{ width: 100%;}
.scroll-table { overflow: scroll;}
.scroll-table table { width: 100%;}
.scroll-table table th { padding: 10px; background: #f8f8f8; font-weight: normal; text-align: center;}
.scroll-table table .vat { vertical-align: top;}
.scroll-table + small { display: none; }
#topicpath { font-weight: normal; display: flex; justify-content: space-between; font-size: 16px; border-bottom: 1px solid #c5c5c5; padding: 0 0 5px; width: 100%; margin: 0 0 30px; border-top: none;}
#topicpath ol { padding: 0; border: none; }
#topicpath li { font-size: 120%; }
#topicpath li a { color: #000; font-weight: normal; }
#wrapper { overflow: hidden; }
#item_list .item_price { border-top: 1px solid #ccc; padding-top: 10px; margin-top: 10px; text-align: right; }
#item_list .item_price + .item_comment { color: #525263; font-size: 13px; margin-top: 10px; }
.relative_cat p { margin-bottom: 10px!important; }
.relative_cat ol { display: inline-block; }
.relative_cat ol li { display: none; }
.relative_cat ol li:last-child { display: block; }
.relative_cat li:after { display: none;}
#relative_category_box ol li a { color: #222222; display: inline-block; padding: 5px 8px; font-size: 13px; margin-bottom: 10px; margin-right: 5px; background: #EDEDED; border: 1px solid #EDEDED; transition: .3s;}
#relative_category_box ol li a:hover { border: 1px solid #222222; background: none; transition: .3s;}
.btn { font-size: 100%; padding: 7px 10px; }
.complete_message .heading01 { font-size: 160%; }
@media (max-width: 991px) {
	body { font-size: 14px; }
	.scroll-table .table_base { width: 850px; }
	.scroll-table + small { display: block; }
}
@media (max-width: 767px) {
	 .table_base th,
	 .table_base td { padding: 7px;}
	 #topicpath { margin-bottom: 30px; }
}
@media (max-width: 575px) {
	body { font-size: 12px; }
}


/* BLOCK */
section { margin-bottom: 40px; }
#header { position: static; top: 0; left: 0; width: 100%; background: none; height: 220px; padding-top: 0;}
#header .logo { text-align: center; padding-top: 70px;}
#header .logo img { width: 140px; }
#header .menu-trg-area { margin: auto; width: 50px; height: 10px;}
#header .menu-trigger,
#header .menu-trigger span { display: inline-block; transition: all .4s; box-sizing: border-box;}
#header .menu-trigger { position: relative; height: 10px; width: 100%; display: block;}
#header .menu-trigger span { position: absolute; left: 0; width: 100%; height: 1px; background-color: #000000;}
#header .menu-trigger span:nth-of-type(1) { top: 0;}
#header .menu-trigger span:nth-of-type(2) { display: none;}
#header .menu-trigger span:nth-of-type(3) { bottom: 0;}
body.toggle-menus #header .menu-trigger span:nth-of-type(1) { -webkit-transform: translateY(20px) rotate(-45deg); transform: translateY(20px) rotate(-45deg); top: -17px;}
body.toggle-menus #header .menu-trigger span:nth-of-type(3) { -webkit-transform: translateY(-20px) rotate(45deg); transform: translateY(-20px) rotate(45deg); bottom: -14px;}
#header .gnav { opacity: 0; visibility: hidden; transition: .3s; position: fixed; top: 0; left: -350px; width: 350px; height: 100%; background: #333; padding-top: 100px; padding: 150px 30px 20px; z-index: 998;}
#header .gnav a { color: #fff; font-size: 17px; letter-spacing: .1em; display: block; border-bottom: 1px solid rgba(255,255,255,.3); padding: 12px 0; }
#header .gnav-bg { opacity: 0; visibility: hidden; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,.4); z-index: 997; transition: .3s;}
#header .open-gnav { display: none; }
#page_homepage #header { position: absolute; }
#page_homepage #header .logo { display: none; }
#page_homepage #header .open-gnav { display: block; text-align: right; padding-right: 100px; padding-top: 20px; }
#page_homepage #header .open-gnav li { display: inline-block; text-align: center; margin-left: 40px;}
#page_homepage #header .open-gnav li a { color: #fff; }
#page_homepage #header .open-gnav li a .jp { font-size: 14px; }
#page_homepage #header .open-gnav li a .en { font-size: 16px; letter-spacing: .075em; }
body.toggle-menus #header .gnav { opacity: 1; visibility: visible; left: 0; overflow-y: auto;}
body.toggle-menus #header .gnav-bg { opacity: 1; visibility: visible; }
#header .fixed-menu { position: fixed; left: 0; top: 0; display: flex; z-index: 999;}
#header .cube-menu { width: 80px; height: 80px; display: flex; background: #fff; align-items: center; justify-content: center; flex-wrap: wrap; text-align: center; cursor: pointer; background: #ebebeb;}
#header .cube-menu .icon { width: 100%; position: relative; height: 40px; display: flex; align-items: center; justify-content: center; }
#header .cube-menu .title { width: 100%; font-size: 11px; letter-spacing: .075em;}
#header .cube-menu.is-cart { background: #1b1464; color: #acacac; }
#header .cube-menu.is-login { background: #2c3081; color: #ababab; }
#contents { padding-top: 0; }
#sec-fv .item { height: 100vh; position: relative; display: flex; align-items: center; justify-content: center; background-size: cover; background-position: center; }
#sec-product { margin-bottom: 120px; }
#sec-product .p1 p { margin-top: 0; }
#sec-product .p2 { text-align: right; }
#sec-product .p2 .v-rl { display: inline-block; font-size: 28px; margin: auto; }
#sec-product .product-list { display: flex; flex-wrap: wrap; margin: 0 -10px; }
#sec-product .product-list > li { width: 25%; padding: 0 10px 25px; position: relative;}
#sec-product .product-list > li a { display: block; position: relative; overflow: hidden;}
#sec-product .product-list > li a img { transform: scale(1); transition: .3s; }
#sec-product .product-list > li a:hover img { transform: scale(1.1); transition: .3s; }
#sec-product .product-list > li .product-catch { position: absolute; right: 12px; top: 15px; color: #929292; margin: 0; }
#sec-product .product-list > li .product-title { position: absolute; left: 8px; bottom: 14px; color: #000; margin: 0; font-size: 13px;}
#sec-access { margin-bottom: 60px; }
#sec-access .dl-map { display: flex; flex-wrap: wrap; }
#sec-access .dl-map dt { width: calc(100% - 310px); }
#sec-access .dl-map dt iframe { display: block; width: 100%; height: 100%; }
#sec-access .dl-map dd { width: 310px; padding: 15px; text-align: center; }
#sec-commitment h4 { font-size: 140%; font-weight: 600; line-height: 1.6; letter-spacing: .1em; margin: 0 0 20px;}
#sec-fish { background: #d5e5ee; position: relative; }
#sec-fish .s-top { display: block; width: 100%; pointer-events: none; position: relative; top: -1px;}
#sec-fish .s-bottom { display: block; width: 100%; pointer-events: none; position: relative; bottom: -1px;}
#sec-fish ul { display: flex; flex-wrap: wrap; padding: 30px 0 10px; margin: 0 -15px;}
#sec-fish ul li { width: 20%; padding: 0 15px; }
#sec-fish ul li .photo { margin-bottom: 10px; }
#sec-fish ul li .title { font-weight: 600; }
#sec-fish ul li p { margin-top: 0; }
#product_wrap { display: flex; flex-wrap: wrap; margin: 0 -10px; }
#product_wrap .content { width: calc(100% - 210px); padding: 0 10px; order: 2;}
#product_wrap .sidenav { width: 210px; padding: 0 10px;}
#product_wrap .sidenav .side_block { margin-bottom: 50px; }
#product_wrap .sidenav .side_block .title { font-size: 120%; border-bottom: 1px solid #ccc; margin-bottom: 15px; padding-bottom: 5px; }
#product_wrap .sidenav .side_block li { margin-bottom: 13px; }
#product_wrap .sidenav .side_block li a { color: #000; }
#product_wrap .sidenav .side_block li a:hover { text-decoration: underline; }
#product_wrap .lg-title { font-size: 160%; margin-bottom: 30px; }
#product_wrap #result_info_box__item_count { text-align: center; }
#footer { padding-top: 0; padding-bottom: 0; border: none; background: none; }
#footer .footer_area { display: flex; flex-wrap: wrap; align-items: flex-end; padding: 30px 0;}
#footer .footer_area .logos { width: 60%; }
#footer .footer_area .logos .logo { margin-bottom: 20px; }
#footer .footer_area .logos .copyright { margin-top: 0; }
#footer .footer_area .access { width: 40%; color: #929292;}
#footer .footer_area .access b { display: block; }
#footer .sns a img { height: 20px; }
#footer .logo img { height: 40px; }
@media (min-width: 768px) {
	#sec-product .product-list > li:nth-child(2n) a { position: absolute; left: 10px; width: calc(100% - 20px); top: 45px; }
}
@media (max-width: 767px) {
	#sec-product { margin-bottom: 60px; }
	#sec-product .product-list > li { width: 33.3333%; }
	#sec-product .product-list > li:nth-child(3n - 1) a { position: absolute; left: 10px; width: calc(100% - 20px); top: 45px; }
	#sec-fish ul { justify-content: center; flex-wrap: wrap; }
	#sec-fish ul li { width: 33.3333%; }
	#sec-access .dl-map dt { width: 100%; }
	#sec-access .dl-map dt iframe { height: 300px; }
	#sec-access .dl-map dd { width: 100%; }
	#product_wrap { display: block; }
	#product_wrap .content { width: 100%; margin-bottom: 50px; }
	#product_wrap .sidenav { width: 100%; }
	#footer .footer_area .logos { width: 100%; }
	#footer .footer_area .logos .logo { margin-bottom: 5px; text-align: center;}
	#footer .footer_area .logos .sns { text-align: center; }
	#footer .footer_area .access { width: 100%; }
	#footer .footer_area .access p { max-width: 100%; width: 360px; margin-left: auto; margin-right: auto; }
	#footer .footer_area .copyright { text-align: center; width: 100%; }
}
@media (max-width: 575px) {
	#header .gnav { width: 270px; padding-top: 85px; }
	#header .gnav a { font-size: 13px; }
	#header .cube-menu { height: 70px; width: 70px; }
	#header .cube-menu .icon { height: 30px; }
	#header .cube-menu .icon img { width: 25px; }
	#header .menu-trg-area { width: 35px; }
	#page_homepage #header .open-gnav { display: none; }
	#sec-product .p1 { text-align: center; }
	#sec-product .p2 { text-align: center; margin-bottom: 30px; }
	#sec-product .p2 .v-rl { font-size: 24px; }
	#sec-product .product-list > li { width: 50%; }
	#sec-product .product-list > li:nth-child(3n -1) a { position: relative; width: 100%; left: auto; top: auto; }
	#sec-commitment h4 { font-size: 120%; }
	#sec-commitment h4 > div { display: inline; text-align: left; }
	#sec-fish ul li { width: 100%; }
	#sec-fish ul li .photo { text-align: center; }
	#sec-fish ul li .photo img { width: 240px; }
	#sec-fish ul li p { margin-bottom: 30px; }
}


/* COLOR */
.color-white { color: #fff; }
.color-gray { color: #929292; }
.bg-gray { background: #d6d7d7; }
.bg-blue { background: #1b1464; }
.bg-yellow { background: #f4a93b; }


/* FONT */
.goth { font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; }
.v-rl { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; text-orientation: mixed; text-align: left;}
@media (min-width:768px) {
	.sm-v-rl { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; text-orientation: mixed; text-align: left;}
}
@media (max-width: 767px) {

}


/* TITLE */
.page-heading { font-weight: normal; display: flex; justify-content: space-between; font-size: 16px; border-bottom: 1px solid #c5c5c5; padding-bottom: 5px; margin-bottom: 40px; margin-left: 0; margin-right: 0; }
.sec-title { font-weight: normal; display: flex; justify-content: space-between; font-size: 16px; border-bottom: 1px solid #c5c5c5; padding-bottom: 5px; margin-bottom: 40px; }
.mini-hero { position: relative; margin-bottom: 40px;}
.mini-hero .text { position: absolute; right: 15px; top: 30px; color: #fff;}
.mini-hero .text strong { display: block; font-size: 21px; letter-spacing: .075em; line-height: 1.2;}
.mini-hero .text small { display: block; font-size: 16px; letter-spacing: .05em; line-height: 1.2;}
.large-hero { position: relative; margin-bottom: 40px;}
.large-hero img { border-radius: 0 0 0 2em; }
.large-hero .text { position: absolute; right: 15px; top: 30px; color: #fff;}
.large-hero .text strong { display: block; font-size: 21px; letter-spacing: .075em; line-height: 1.2;}
.large-hero .text small { display: block; font-size: 16px; letter-spacing: .05em; line-height: 1.2;}
.large-hero .logos { position: absolute; left: 30px; bottom: 30px; }
#item_detail_area .item_name { font-size: 140%; }
@media (max-width: 767px) {
	.sec-title { margin-bottom: 30px; }
	.mini-hero .text { -webkit-writing-mode: initial; -ms-writing-mode: initial; writing-mode: initial; text-orientation: initial; width: 100%; left: 0; top: 0; bottom: 0; text-align: center; display: flex; align-items: center; justify-content: center; flex-wrap: wrap;}
	.mini-hero .text strong,
	.mini-hero .text small { width: 100%; }
	.large-hero .text { right: 5px; top: 20px; }
	.large-hero .logos { width: 30%; bottom: 15px; left: 15px; }
}


/* PAGE */
#page-eat { background: #f0f9ff; }
#page-eat .img-title { text-align: center; margin-bottom: 60px;}
#page-eat .img-title small { display: block; font-size: 120%; letter-spacing: .025em; font-weight: normal; margin-top: 6px; }
#page-eat .p1 { text-align: center; margin-bottom: 40px; }
#page-eat .p1 .wrap { height: 100%; display: flex; align-items: center; justify-content: center; font-weight: normal; font-size: 17px; }
#page-eat .p1 .wrap h4 { font-weight: normal; }
#page-eat .p2 { max-width: 950px; margin: 0 auto 100px; }
#page-eat .p2 ul li { display: flex; align-items: center; margin: 0 -15px; flex-wrap: wrap;}
#page-eat .p2 ul li .photo { width: 43%; padding: 0 15px;}
#page-eat .p2 ul li .details { width: 57%; padding: 0 15px;}
#page-eat .p2 ul li .title { margin-bottom: 15px; }
#page-eat .p2 ul li .sub-title { font-weight: 600; font-size: 140%; letter-spacing: .1em; line-height: 1.45;}
#page-eat .p2 ul li p { margin-bottom: 0; }
#page-eat .p2 ul li:nth-child(odd) .photo { order: 2; }
#page-eat .p2 ul li:nth-child(odd) .details { padding-left: 50px; }
#page-eat .p3 ul { display: flex; flex-wrap: wrap; margin: 0 auto 40px; justify-content: space-between;}
#page-eat .p3 ul li { width: 43%; position: relative; padding-left: 15px; }
#page-eat .p3 ul li:before { content: ""; position: absolute; left: 0; top: 12px; bottom: 0; height: 3px; width: 3px; border-radius: 3px; background: #000; }
#page-eat .p3 ul li.none:before,
#page-eat .p3 ul li:last-child:before { display: none; }
#page-eat .p3 ul li:last-child { white-space: nowrap; }
#page-eat .p3 ul li dl { display: flex; justify-content: space-between; }
#page-eat .p3 .full-width { position: relative; padding-bottom: 40px;}
#page-eat .p3 .full-width:before { content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 60%; pointer-events: none; background: #ffd7cc; }
#page-eat .p3 .mini-title { font-weight: 600; }
#page-eat .p3 .wrap_2 { margin-bottom: 25px; }
#page-eat .p3 .wrap_3 { margin-bottom: 80px; }
#page-eat .left-dots { position: relative; padding-left: 15px; display: block; }
#page-eat .left-dots:before { content: ""; position: absolute; left: 0; top: 12px; bottom: 0; height: 3px; width: 3px; border-radius: 3px; background: #000; }
#page-eat .howto_eat { margin-bottom: 120px; margin-top: 40px; padding-top: 60px; border-top: 1px solid #c3c3c3; }
#page-eat .howto_eat .img-title { margin-bottom: 25px; }
#page-eat .howto_eat p { text-align: center; }
#page_product_detail .fixed-text { border: 1px solid #ccc; position: relative; font-size: 80%; padding: 1.3em 1em 1em; margin-top: 5rem;}
#page_product_detail .fixed-text b { display: block; background: #fff; position: absolute; left: 0; top: -10px; right: 0; width: 250px; margin: 0 auto; text-align: center;}
@media (max-width: 767px) {
	#page-eat .img-title { margin-bottom: 30px; }
	#page-eat .p1 .wrap h4 { margin-bottom: 40px; }
	#page-eat .p2 ul li { display: block; margin: 0 0 50px;}
	#page-eat .p2 ul li .photo { width: 100%; margin-bottom: 20px; text-align: center; padding: 0;}
	#page-eat .p2 ul li .photo img { width: 400px; max-width: 100%;}
	#page-eat .p2 ul li .details { max-width: 100%; width: 400px; margin: 0 auto; padding: 0; }
	#page-eat .p2 ul li:nth-child(odd) .details { padding-left: 0; }
	#page-eat .p2 ul li:last-child { margin-bottom: 0; }
	#page-eat .p3 ul li { width: 100%; }
	#page-eat .p3 ul li.sp-none { display: none; }
	#page-eat .p3 ul li:last-child { width: 100%; white-space: initial; margin-top: 10px;}
	#page-eat .p3 .wrap_3 { margin-bottom: 50px; }
}
@media (max-width: 575px) {
	#page-eat .p1 { margin-bottom: 50px; }
	#page-eat .p1 .wrap h4 { text-align: left; font-size: 14px; }
	#page-eat .p2 ul li .photo img { width: 300px; }
	#page-eat .p3 ul { margin-bottom: 20px; }
	#page-eat .p3 .wrap_2 { margin-bottom: 20px; }
	#page-eat .p3 .wrap_3 { margin-bottom: 30px; }
	#page-eat .p3 .full-width img { margin-bottom: 30px; }
}


#fixed-news { position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; background: rgba( 0, 0, 0, 0.70 ); z-index: 9999; display: -ms-flex; display: none; align-items: center; justify-content: center; transition: .3s; padding: 15px;}
#fixed-news.d-none { display: none; }
#fixed-news.is-view { display: flex; }
#fixed-news.is-fadeout { opacity: 0; visibility: hidden; }
#fixed-news .wrapper { background: #fff; max-width: 845px; position: relative; border-radius: .5rem; padding: 4rem 5rem; max-height: 85vh; overflow: scroll;}
#fixed-news .t_area h4 { font-size: 2.4rem; letter-spacing: .1em; padding-right: 2rem; margin-bottom: 2rem; font-weight: bold; margin-top: 0; color: #fb6a11;}
/*#fixed-news .t_area a { color: #5a8cff; display: inline-block; margin-top: 1rem; position: relative; padding-right: 2rem; }*/
/*#fixed-news .t_area a:after { content: ""; position: absolute; right: 0; top: 0; bottom: .02rem; margin-top: auto; margin-bottom: auto; border-top: 1px solid #5a8cff; border-right: 1px solid #5a8cff; transform: rotate(45deg); width: .8rem; height: .8rem; }*/
#fixed-news .n_close { position: absolute; right: 10px; top: 10px; background: #777; border: none; border-radius: 50%; color: #fff; font-size: 16px; display: block; line-height: 1; width: 30px; height: 30px; font-weight: bold; text-align: center; padding: 8px 0;}
#fixed-news .red-label { font-size: 2.4rem; letter-spacing: .12em; color: #fff; background: #b70f00; padding: 3px 10px; font-weight: bold; margin: 3rem 0 1rem; text-align: center; line-height: 1.7;}
#fixed-news .red-t { font-size: 1.7rem; font-weight: bold; color: #b70f00; }
#fixed-news .red-t strong { font-size: 2rem; font-weight: bold; }
#fixed-news h5 { font-size: 2.4rem; font-weight: bold; margin-bottom: 1.5rem;}
#fixed-news table { width: 100%; }
#fixed-news table th,
#fixed-news table td { border: 2px solid #000000; text-align: center; font-size: 1.6rem; padding: 1px 0; }
#fixed-news table td { font-weight: bold; color: #b70f00; }
#fixed-news table .not_cell { padding: 0; position: relative; }
#fixed-news table .not_cell img { width: 100%; height: 100%; position: absolute; left: 0; top: 0;}
#fixed-news .btm { margin-top: .5rem; font-size: 1.6rem; padding-bottom: 2rem;}
#fixed-news .btm .red { color: #b70f00; font-weight: normal;}
#fixed-news .sans { font-family: sans-serif; margin-bottom: 0; }
.iPhone #fixed-news .n_close { padding-top: 5px; }
@media (max-width: 767px) {
    #fixed-news .wrapper { padding: 20px 15px; }
    #fixed-news .t_area h4 { font-size: 1.6rem; }
    #fixed-news .red-label { font-size: 17px; }
    #fixed-news h5 { font-size: 17px; }
}


/* お届け日不可を非表示 */
/* .form-control [value*="12/21"],
.form-control [value*="12/22"],
.form-control [value*="12/23"],
.form-control [value*="12/24"],
.form-control [value*="12/25"],
.form-control [value*="12/26"],
.form-control [value*="12/27"],
.form-control [value*="12/28"],
.form-control [value*="12/29"],
.form-control [value*="12/30"],
.form-control [value*="12/31"],
.form-control [value*="01/01"],
.form-control [value*="01/02"],
.form-control [value*="01/03"],
.form-control [value*="01/04"],
.form-control [value*="01/05"] { display: none; } */

/* sumida 2023/6/9 */
.event_banner img {
	width: 100%;
	max-width: 500px;
	display: block;
	margin-top: 20px;
	margin-bottom: 20px;
}