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

/* レイアウト */
*{
	margin: 0;
	padding: 0;
	text-decoration: none;
	list-style: none;
}

/* googleフォント */
body{
	margin-top: 38px;
	font-family:  "Noto Sans JP", "Noto Sans", "Hiragino Sans", "Hiragino Kaku Gothic ProN","Yu Gothic", "Meiryo", sans-serif;
	font-weight: 500;
	font-style: normal;
	letter-spacing: 1.2px;
}

/* ヘッダー */
header{
	margin: 0 auto;
	width: 1154px;
	height: 153px;
}

#header_inner{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#logo_{
	margin-top: 38px;
	display: flex;
	align-items: center;
}

h1{
	margin: 0;
}

nav ul{
	display: flex;
}

nav ul li{
	margin-left: 52px;
}

/* ナビ色変え */
.img1:hover{ 
	content:url("../images/icons/icon_nav_home_active_orange.png");
}

.img2:hover{
	content:url("../images/icons/icon_nav_shop_active_orange.png");
}

.img3:hover{
  	content:url("../images/icons/icon_nav_cart_active_orange.png");
}

/* メイン画像 */
.top_mainimage{
	margin: 0 auto;
	width: 1154px;
	height: 470px;
}

.popular{
  	padding-top: 144px;
	padding-bottom: 48px;
	text-align: center;
}

/* 人気商品 */
h2{
	text-align: center; 
  	margin: 0 auto 100px; 
  	width: 1154px;
	font-weight: 400;
	font-size: 40px;
}

.popular .card_3col{
	gap: 27px;
	width: 1154px;
	max-width: 90%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

.card{
	padding-top: 22px;
	list-style: none;
	display: block; 
	margin: 0 13px 27px;
	width: 310px;
	border: 1px solid #e6e6e6;
	border-radius: 12px;
	box-shadow: -1px -1px 2px rgba(0,0,0,0.03),3px 6px 10px rgba(0,0,0,0.15);
}

.card_link{
	color: #000;
	text-decoration: none;
}

.rank1{
	counter-reset: rank;
}

.rank1 .card{
	position: relative;
	counter-increment: rank;
}

/* ランキングラベル */
.rank1 .card::before{
	content: "No."counter(rank);
	position: absolute;
	top: 0;
	left: -10px;
	transform: translate(12px, -130%); /* 枠の上に出す */
	font-size: 25px;
	font-weight: 500;
	color: #000;
}

/* 画像 */
.card_img{	
	padding-top: 17px;
	padding-bottom: 15px;
	max-width: 100%;
	height: auto;
}

h3{
	margin-bottom:  8px;
	font-weight: 500;
	font-size: 28px;
}

p{
	font-weight: 400;
	font-size: 19px;
}

.card_text{
	padding: 16px;
}

.desc{
	margin-bottom: 8px;
}

/* ラインナップを見るCTAボタン */
.btn_wrap{
	margin-top: 40px;	
	text-align: center;
}

.btn{
	display: inline-block;
	font-size: 23px;
	padding: 10px 32px;
	background-color: #ff9c00;
	border-radius: 60px;
	color: #fff;
	text-decoration: none;
	border: 2px solid #ff9c00;
}

.btn:hover{
	background-color: #fff;
	color: #ff9c00;
	}

/* クラフトビール商品*/
.card_4col{
	text-align: center;
	margin: 0;
	padding: 0;
}

.card_4col .card{
	display: inline-block;
	width: 240px;
	margin: 0 10px 24px; 
	vertical-align: top;
}

.craft{
	margin-top: 144px;
}

/* 詳しく見るCTAボタン */
.feature{
	margin-top: 144px;
	text-align: center;
}

.feature_box{
	max-width: 1154px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	gap: 48px;
	align-items: flex-start;
}

.feature_body{
	flex: 1;
	width: auto;
	text-align: left;
}

.feature_body p{
	padding-top: 32px;
	line-height: 1.6;
}

.feature_photo {
	margin-left: 100px;
	flex: 0 0 600px;
}

.feature_photo img{
	width: 100%;
	display: block;
}

.feature_btn{
	margin-top: 40px;	
	margin-left: 50px;
	text-align: center;
	font-size: 23px;
	display: inline-block;
	padding: 10px 32px;
	background-color: #ff9c00;
	color: #FFFFFF;
	border-radius: 60px;
	border: 2px solid #ff9c00;
}

.feature_btn:hover{
	background-color: #fff;
	color: #ff9c00;
}

/* お知らせ */
.news{
	text-align: center;
	margin-top: 144px;
}

.news_list{
	list-style: none;
	padding: 0;
	margin: 0 auto;
	display: inline-block; 
	text-align: left;      
}

.news_list_item{
  border-bottom: 1px solid #e5e5e5;
}

.news_link{
	display: flex;
	gap: 32px;
	align-items: baseline;
	padding: 10px 0;
	color: #000;
	text-decoration: none;
}

.news_date{
	display: inline-block;
	width: 90px;  
	font-size: 19px;
}

.news_text{
	font-size: 19px;
	line-height: 1.4;
}

.news_link:hover,.news_link:active{
	opacity: 0.7;
}

.news_btn{
	margin-top: 64px;	
	text-align: center;
}

/* フッター */
.footer {
	margin-top: 240px;
}

.footer_nav {
	gap: 80px;
	padding: 0 24px;
	box-sizing: border-box;
	align-items: flex-start;
	display: flex;
	justify-content: center;
}

.footer_sns{
	text-align: left;
}

.sns{
	font-weight: 600;
}

.footer_navList {
	text-decoration: none;
	margin: 0;
	padding: 0;
	font-size: 18px;
	font-weight: bold;
}

.footer_navList a{
	color: #000;
	text-decoration: none;
}

.footer_navList a:hover{
	border-bottom: 2px solid #000;
}

.footer_logo img{
	max-width: none;
	object-fit: contain;
	align-items: center;
}

.footer_navList li{
	font-size: 19px;
	margin-bottom: 16px;
}

.sns_icons{
	margin-top: 24px;
	display: flex;
	gap: 24px;
}

.sns_icons a:hover{
	border-bottom: none;
	opacity: 0.7;
}

.footer_notice{
	font-size: 16px;
	margin-top: 24px;
}

.copyright{
	margin-top: 24px;
	margin-bottom: 56px;
	display: flex;
	flex-direction: column;
}

/* ここから商品一覧 */
.pankuzu{
	width: 1154px;
	margin: 0 auto;
}

.pankuzu ol{
	display: flex;
	list-style: none;
	margin-top: -50px;
	font-size: 20px;
}

.pankuzu a{
	color: #616161;
}

.pankuzu li{
	margin-right: 8px;
}

.pankuzu li a:hover{
	color: #000;
}

.pankuzu ol li:not(:last-child)::after{
	color: #616161;
	content: ">";
}

.pankuzu .current{
	margin-bottom: 20px;
	border-bottom: 2px solid #616161;
	padding-bottom: 4px;
	color: #616161;
}

.popular .card_popular{
	width: 1154px;
	margin: 0 auto;
}

.card_popular h1{
	font-size: 45px;
	font-weight: 400;
}

.popular .card_wrap{
	width: 1154px;
	max-width: 100%;
	margin: 0 auto;
	padding: 56px;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 28px;
}

.card_wrap{
	margin-top: 56px;
}

.popular .card{
	width: 325px;
	margin: 0;
	display: block;
}

.menu_mainimage{
	border-radius: 16px;
	margin: 0 auto;
	width: 1154px;
	height: 440px;
}

.menu .card{
    margin: 0 ;
}

.card_img_wrap{
	position: relative;
}

.alcohol{
	position: absolute;
	right: 22px;
	bottom: 3px;
	text-align: center;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 20px;
	padding: 4px 10px;
}

.alc_btn{
	margin-top: 22px;
	display: inline-block;
	font-size: 20px;
	padding: 10px 10px;
	background-color: #ff9c00;
	border-radius: 60px;
	color: #fff;
	text-decoration: none;
	border: 2px solid #ff9c00;
}

.alc_btn:hover{
	background-color: #fff;
	color: #ff9c00;
	}


/* ここから商品詳細 */
.md{
	width: 1154px;
	margin: 0 auto;
	display: flex;
	gap: 88px;
}

.md_left{ 
	width: 600px; 
}


h1{
	margin-bottom: 0;
	margin-top: 0;
	line-height: 1.4;
	font-size: 45px;
	font-weight: 500;
}

.md_text{
	margin-top: 33px;
	margin-bottom: 33px;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.4;
}

.md_price{
	display: flex;
	justify-content: flex-end;
	align-items: baseline;
	gap: 12px;
}

.md_price_main{
	font-size: 40px;
	font-weight: 400;
}

.md_price_tax{
	font-size: 16px;
	font-weight: 400;
	color: #111111;
}

.md_actions{
	margin-top: 37px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 24px;
}

.md_qty_label{
	display: flex;
	align-items: center;
	gap: 16px;
	font-size: 20px;
	font-weight: 400;
}

.md_qty_select{
	padding: 6px 13px;
}

.md_btn_cart{
	font-size: 23px;
	padding: 14px 18px;
	border-radius: 60px;
	color: #000;
	text-decoration: none;
	border: 2px solid #000;
}

.md_btn_cart:hover{
	color: #424242;
	border-color: #424242;
}

/* メイン画像 */
.md_main{
	width: auto;
	height: auto;
	overflow: hidden;
	margin-bottom: 10px;
}

.md_main img{
	width: 100%;
	height: 100%;
}

/* サブ画像 */
.md_thumbs{
	display: flex;
	gap: 10px;
}

.md_thumbs img{
	width: auto;
	height: auto;
	object-fit: cover;
}

/* SHARE */
.share{
	text-align: center;
	padding: 120px 0;
}

.share_title{
	font-size: 32px;
	font-weight: 400;
	text-align: center;
}

/* アイコン3つ */
.share_icons{
	margin: 0 0 16px;
	display: flex;
	justify-content: center;
	gap: 37px;
}

.share_link{
	display: block;
}

.share_link img{
	width: 28px;
	height: 28px;
	display: block;
}

.share_text a{
	text-underline-offset: 4px;
	color: #000;
	text-decoration: underline;
}

.share_text a:hover{
	opacity: 0.7;
}

/* SHAREテキスト */
.share_text{
	font-size: 22px;
	font-weight: 400;
	line-height: 1.8;
	margin: 0;
}

.share_link:hover{
	opacity: 0.7;
}

/* 商品情報 */
.md_product_info{
	margin-top: 80px;
}

.md_product_info h2{
	
	font-size: 43px;
	font-weight: 400;
	margin-bottom: 24px;
}

/* オレンジ外枠 */
.md_info_box{
	min-height: 311px;/* 最小の高さ指定 */
	width: 897px;
	margin: 0 auto;
	border: 2px solid #ff9c00;
	border-radius: 16px;
	display: flex;
	align-items: center;
	gap: 140px;
}

/* 画像 */
.md_info_img img{
	padding-left: 140px;
	width: 160px;
	display: block;
}

/* テキスト */
.md_info_text h3{
	font-size: 30px;
	font-weight: 500;
	margin-bottom: 8px;
}

.md_info_text p{
	font-size: 20px;
	font-weight: 400;
	line-height: 1.4;
}

/* レビュー */
.review_sec{
	padding: 40px 0;
}

.review_inner{
	max-width: 90%;
	margin: 0 auto;
}

.review_ttl{
	padding-left: 105px;
	text-align: left;
	font-size: 30px;
	font-weight: 500;
	margin-top: 80px;
}

.review_wrap{
	justify-content: center;
	display: flex;
	gap: 48px;
}

.review_summary{
	text-align: left;
	margin-bottom: 14px;
}

.review_score{
	margin: 0 0 6px;
	font-size: 16px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.score_num{
	font-size: 22px;	
	font-weight: 500;
}

.review_count{
	margin: 0;
	font-size: 16px;
	font-weight: 500;	
}

.review_score{
	display:flex;
	align-items:center;
	gap:12px;
}

.rate{
	position: relative;
	display:inline-block;
	width:150px;
	height:30px;
	font-size:30px;
	line-height:1;
}

.rate::before{
	content:"★★★★★";
	color:#dcdcdc;
}

.rate::after{
	content:"★★★★★";
	position:absolute;
	left:0;
	top:0;
	width:calc(var(--score) * 31.5px);
	overflow:hidden;
	white-space:nowrap;
	color:#FFDD00;
}

.score_num{
	font-size:20px;
	font-weight:700;
}

/* 件数 */
.review_count{
	margin:8px 0 40px;
	font-size:14px;
}

/* メーター */
.review_meter{
	list-style:none;
	padding:0;
	margin:0;
}

.review_meter li{
	display:flex;
	align-items:center;
	gap:10px;
	margin-bottom:6px;
	font-size:14px;
}

.meter_label{
	width:28px;
}

.meter_bar{
	width:180px;
	height:6px;
	background:#e5e5e5;
	border-radius:999px;
	overflow:hidden;
}

.meter_fill{
	display:block;
	height:100%;
	width:var(--p);
	background:#FFDD00;
}

.meter_num{
	width:16px;
	text-align:right;
}
.review_meter{
	margin: 16px 0 18px;
	padding: 0;
}

.review_meter span{
	font-size: 16px;
}

.review_meter li{
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 8px;
	font-size: 12px;
}

.meter_label{
	width: 32px;
}

.meter_bar{
	width: 240px;
	height: 6px;
	background: #e6e6e6;
	border-radius: 999px;
	overflow: hidden;
}

.meter_fill{
	display: block;
	height: 100%;
	background: #FFDD00;
}

.meter_num{
	width: 40px;
}

/* レビューを書くボタン */
.review_btn_wrap{
	text-align: center;
	margin-top: 37px;
}

.review_btn{
	display: inline-block;
	padding: 10px 18px;
	border: 1px solid #000;
	border-radius: 999px;
	text-decoration: none;
	color: #000;
	font-size:18px;
}

.review_btn:hover{
	opacity: 0.7;
}

.review_card{
	padding: 30px 44px;
	border: 2px solid #bdbdbd;
	border-radius: 4px;
}

.review_card_head{
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
}

.review_avatar{
	background-image: url("../images/icons/icon_user_review_female.jpeg");
	background-size: cover;
	background-repeat: no-repeat;
	width: 55px;
	height: 55px;
	border-radius: 50%;
	border: 1px solid #bdbdbd;
}

.review_meta{
	display: flex;
	align-items: baseline;
	gap: 12px;
}

/* レビュー日付 */
.review_date{
	margin: 0;
	font-size: 17px;
	font-weight: 300;
}

.review_text{
	text-align: left;
	margin: 0;
	font-size: 22px;
	font-weight: 300;
	line-height: 1.4;
}

/* 絞り込み、新しい順ボタン */
.review_links{
	margin-top: 37px;
	display: flex;
	gap: 16px;
}

.review_link{
	display: inline-block;
	padding: 10px 16px 10px 42px;
	border: 1px solid #000;
	border-radius: 24px;
	background-repeat: no-repeat;
	background-position: 16px center;
	background-size: 16px;
	color: #000;
}

.review_link:hover{
	opacity: 0.7;
}

.review_link.filter{
	background-image: url("../images/icons/icon_filter.png");
}

.review_link.sort{
	background-image: url("../images/icons/icon_sort_new.png");
}

.review_star{
	color: #FFDD00;
	font-size: 20px;	
}

.review{
	gap: 6px;
	font-size: 18px;
	font-weight: 400;
	color: #000;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.review:hover{
	opacity: 0.7;
}

.star{
	margin-top: 33px;
	color: #FFDD00;
	font-size: 22px;
}

.star_score{
	color: #000;
}


/* ここからカート */
.cart_title{
	text-align: left;
	margin-bottom: 80px;
	font-size: 37px;
	font-weight: bold;
}

.cart_container{
	width: 1154px;
	max-width: 90%;
	margin: 0 auto;
}

/* メイン */
.cart_main{
	padding: 36px 0 60px;
}

.cart_wrap{
	display: flex;
	align-items: flex-start;
	gap: 28px;
}

/* レフト */
.cart_item{
	padding: 40px 0;
	border-top: 2px solid #e6e6e6;
	border-bottom: 2px solid #e6e6e6;
	width: calc(100% + 120px);
	display: flex;
	gap: 18px;
}

.item_img{
	width: 90px;
	margin-left: 80px;
}

.item_info{
	flex: 1;
	margin-left: 102px;
}

.item_name{
	margin: 0 0 6px;
	font-size: 30px;
	font-weight: 500;
}

.item_price{
	margin: 0 0 12px;
	font-size: 30px;
}

.item_price span{
	font-size: 17px;
	margin-left: 6px;
}

.item_actions{
	margin-top: 72px;
	display: flex;
	align-items: center;
	gap: 12px;
}

.qty_label{
	font-size: 17px;
	font-weight: 500;
}

.qty_select{
	margin-left: 8px;
	padding: 4px 8px;
}

.remove{
	font-size: 17px;
	font-weight: 400;
	color: #555;
	text-decoration: underline;
}

/* ライト */
.cart_summary{
	width: 479px;
	margin-left: auto;
	text-align: center;
}

.summary_box{
	border: 1.5px solid #000;
	padding: 36px 24px;
	border-radius: 4px;
}

.summary_note{
	margin-bottom: 36px;
	font-size: 20px;
	font-weight: 300;
}

.summary_total{
	border-top: 2px solid #e6e6e6;
	border-bottom: 2px solid #e6e6e6;
	padding: 24px 0;
	display: flex;
	align-items: baseline;
	gap: 16px;
	justify-content: flex-end;
}

.total_price{
	font-size: 36px;
	font-weight: 500;
}

.total_price span{
	font-size: 17px;
	font-weight: 300;
	margin-right: 36px;
	margin-left: 6px;
}

/* 購入へ進むCTAボタン */
.btn_primary{
	margin-top: 40px;
	margin-bottom: 8px;
	display: inline-block;
	font-size: 23px;
	padding: 10px 32px;
	border-radius: 60px;
	color: #000;
	text-decoration: none;
	border: 2px solid #000;
}

.btn_primary:hover{
	color: #424242;
	border-color: #424242;
}

/* お買い物を続けるCTAボタン */
.btn_outline{
	margin-top: 64px;
 	display: inline-block;
	font-size: 23px;
	padding: 10px 32px;
	background-color: #ff9c00;
	border-radius: 60px;
	color: #fff;
	text-decoration: none;
	border: 2px solid #ff9c00;
}

.btn_outline:hover{
	background-color: #fff;
	color: #ff9c00;
}





