@charset "utf-8";


/* CSS Document */


#wakoku_header,
#wakoku_main,
#wakoku_footer {
	font-size: 14px;
	line-height: 2;
}

#wakoku_header img,
#wakoku_main img,
#wakoku_footer img{
	max-width: 100%;
	height: auto;
}

/*========================================
headerの設定
==========================================*/

.wakoku_header{
	padding: 15px 0;
	color: #fff;
	background: #9b7b4e;
}

.wakoku_header_inbox{
	align-items: center;
	justify-content: space-between;
}

.wakoku_header_h1 {
	width: 145px;
}

.wakoku_header_nav_list li{
	font-size: 15px;
}

.wakoku_header_nav_list li:not(:last-child){
	margin-right: 30px;
}


/*========================================
footerの設定
==========================================*/

.wakoku_footer{
	color: #fff;
	background: #9b7b4e;
}

.wakoku_footer_inbox{
	padding: 45px 0;
	justify-content: space-between;
	align-items: center;
}

.wakoku_footer_logo{
	display: block;
	width: 190px;
}

.wakoku_footer_nav{
	font-size: 18px;
	line-height: 1;
}

.wakoku_footer_nav li:not(:last-child){
	margin-bottom: 30px;
}




/*========================================
メインビジュアルの設定
==========================================*/



/*========================================
TOPページ
==========================================*/

  /* ===== Global Loader Wrapper ===== */
  #loader {
    position: fixed;
    inset: 0; /* shorthand for top/right/bottom/left:0 */
    /* custom BG: decorative image + subtle gradient */
    background: url(../img/wakoku/common/loading_bg.png) no-repeat left -5px bottom -132px / 730px, linear-gradient(145deg, #ffffff 0%, #f5f5f5 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999; /* stay above everything */
  }

  /* ===== Inner Container ===== */
  .loader-inner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  /* ===== Logo ===== */
  .logo {
    width: 165px; /* tweak size as needed */
    max-width: 60vw;
    filter: drop-shadow(0 0 10px rgba(218, 165, 32, 0.25)); /* gentle golden glow */
  }

  /* ===== Pulsing Ring Animation ===== */
  .pulse {
    position: absolute;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    border: 2px solid rgba(218, 165, 32, 0.3); /* muted gold ring */
    animation: pulse 2.6s ease-out infinite;
  }

  @keyframes pulse {
    0%   { transform: scale(0.6); opacity: 1; }
    70%  { transform: scale(2.6); opacity: 0; }
    100% { transform: scale(2.6); opacity: 0; }
  }

/*---------------------
wakoku_top_about
----------------------*/

.wakoku_top_about{
	background: url(../img/wakoku/top/wakoku_top_about_deco.png) no-repeat left bottom min(-7.81vw, -130px) / min(47.48vw, 2000px),url(../img/wakoku/common/wakoku_washi_bg.png) no-repeat center / cover;
}

.wakoku_top_about_inbox{
	text-align: center;
	padding: 125px 0 230px;
}

.wakoku_top_about_logo{
	width: min(21.56vw, 833px);
	min-width: 300px;
	margin: 0 auto min(6.51vw, 250px);
}

.wakoku_top_about_ttl{
	color: #9b7b4e;
	font-weight: bold;
	font-size: 30px;
	margin: 0 0 60px;
}

.wakoku_top_about .wakoku_cmn_txt{
	margin-bottom: 100px;
	font-size: 18px;
}

.wakoku_top_intro_block{
	border-bottom: 5px solid #9b7b4e;
	background: linear-gradient(to top, rgb(234, 236, 236) 0%, rgb(247, 240, 236) 100%);
}

.wakoku_top_intro_block:first-child{
	border-top: 5px solid #9b7b4e;
}


.wakoku_top_intro_group{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
	width: 58%;
	padding: 50px 130px 50px 0;
}

.wakoku_top_intro_block:nth-child(even) .wakoku_top_intro_group{
	order: 2;
	align-items: flex-start;
}

.wakoku_top_intro_block:nth-child(even) .wakoku_top_intro_group{
	padding: 50px 0 50px 130px;
}

.wakoku_top_intro_block:nth-child(even) .wakoku_top_intro_group .wakoku_top_intro_box{
	text-align: right;
}

.wakoku_top_intro_group_ttl{
	color: #9b7b4e;
	font-size: 23px;
	font-weight: bold;
	margin-bottom: 30px;
}

.wakoku_top_intro_img{
	width: 42%;
}

#wakoku_main .wakoku_top_intro_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*---------------------
wakoku_top_product
----------------------*/

.wakoku_top_product .wakoku_cmn_ttl{
	padding: 160px 0;
	margin-bottom: 0;
}

.wakoku_top_product_block{
	position: relative;
	z-index: 0;
	overflow: hidden;
}

.wakoku_top_product_block::before{
	content: '';
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	transition: .4s;
	z-index: -1;
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(../img/wakoku/top/wakoku_top_product_block_bg01.jpg) no-repeat center / cover;
}

.wakoku_top_product_block.is-hover::before{
	transform: translate(-50%,-50%) scale(1.2);
}

.wakoku_top_product_block_inbox{
	align-items: center;
	justify-content: center;
	color: #fff;
	padding: 80px 0;
}

.wakoku_top_product_group{
	margin-right: 240px;
}

.wakoku_top_product_img{
	width: 144px
}

.wakoku_top_product_group_ttl{
	font-size: 30px;
	margin-bottom: 18px;
}

.wakoku_top_product_group_txt{
	font-size: 18px;
	margin-bottom: 35px;
}

.wakoku_top_product_link{
	display: inline-block;
	border: 1px solid #fff;
	font-size: 18px;
	line-height: 1;
	padding: 18px 130px;
}

/*---------------------
wakoku_top_kumesen
----------------------*/

.wakoku_top_kumesen_inbox{
	padding: 90px 100px;
	border-bottom: 1px solid #9b7b4e;
	text-align: center;
}

.wakoku_top_kumesen .wakoku_cmn_txt{
	font-size: 18px;
	margin-bottom: 80px;
}

/*---------------------
wakoku_top_contact
----------------------*/

.wakoku_top_contact_inbox{
	padding: 80px 0 110px;
	text-align: center;
}

.wakoku_top_contact_inbox .wakoku_cmn_txt{
	font-size: 18px;
	margin-bottom: 80px;
}


/*========================================
下層メインビジュアルの設定
==========================================*/

.wakoku_sub_hero{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 650px;
	background-size: cover;
}

.wakoku_sub_hero h2{
	font-size: 44px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.2em;
}

/*========================================
wakoku58
==========================================*/

/*---------------------
wakoku58_product
----------------------*/

.wakoku58_product{
	background: url(../img/wakoku/common/wakoku_washi_bg.png) no-repeat center / cover;
}

.wakoku58_product_inbox{
	align-items: center;
	justify-content: space-between;
	padding: 140px 125px;
}

.wakoku58_product_group{
	margin-top: -35px;
}

.wakoku58_product_group_ttl{
	font-size: 26px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1;
	margin-bottom: 20px;
}

.wakoku58_product_group_txt{
	font-size: 18px;
}

.wakoku58_product_img{
	width: 117px;
}

/*---------------------
wakoku58_tasting
----------------------*/

.wakoku58_tasting{
	background: #ece8df;
}

.wakoku58_tasting_inbox{
	padding: 120px 0 100px;
}

.wakoku58_tasting_ttl{
	margin-bottom: 75px;
}

.wakoku58_tasting_txt{
	font-size: 18px;
	text-align: center;
	margin-bottom: 80px;
}

.wakoku58_tasting_block{
	background: #fff;
	margin-bottom: 10px;
}

.wakoku58_tasting_img{
	width: 31%;
}

.wakoku58_tasting_group{
	width: 69%;
	padding: 20px 40px 0;
}

.wakoku58_tasting_info{
	margin-bottom: 20px;
}

.wakoku58_tasting_info dl{
	display: flex;
	border-bottom: 1px solid;
}

.wakoku58_tasting_info dt,
.wakoku58_tasting_info dd{
	padding: 10px 10px 5px;
	letter-spacing: 0;
}

.wakoku58_tasting_info dt{
	width: 15%;
	font-weight: bold;
}

.wakoku58_tasting_info dd{
	width: 85%;
	padding-right: 40px;
}

.wakoku58_tasting_group_detail{
	font-size: 12px;
	letter-spacing: 0;
	text-align: center;
}

.wakoku58_tasting_name{
	font-size: 12px;
	letter-spacing: 0;
	margin-bottom: 80px;
}

/*---------------------
wakoku58_intro
----------------------*/

.wakoku58_intro_card:first-child{
	border-top: 5px solid #9b7b4e;
}


.wakoku58_intro_card{
	border-bottom: 5px solid #9b7b4e;
}

.wakoku58_intro_img{
	width: 45%;
	height: 100%;
}

.wakoku58_intro_card:nth-child(even) .wakoku58_intro_img{
	order: 2;
}

.wakoku58_intro_img img{
	width: 100%!important;
	height: 100%!important;
	object-fit: cover;
	object-position: right center;
}

.wakoku58_intro_card:nth-child(even) .wakoku58_intro_img img{
	object-position: left center;
}

.wakoku58_intro_block{
	display: flex;
	align-items: center;
	position: relative;
	overflow: hidden;
	height: 380px;
	text-align: center;
	margin-left: auto;
}

.wakoku58_intro_card:nth-child(even) .wakoku58_intro_block{
	justify-content: flex-end;
}

.wakoku58_intro_group{
	margin-left: 80px;
}

.wakoku58_intro_card:nth-child(even) .wakoku58_intro_group{
	margin: 0 80px 0 0;
}

.wakoku58_intro_ttl{
	font-size: 21px;
	font-weight: bold;
	letter-spacing: 0;
	margin-bottom: 20px;
}

.wakoku58_intro_txt{
	letter-spacing: 0;
}

/*---------------------
wakoku58_competition
----------------------*/

.wakoku58_competition{
	background: #ece8df;
}

.wakoku58_competition_inbox{
	padding: 120px 0 150px;
}

.wakoku58_competition_subttl{
	font-size: 36px;
	letter-spacing: 0;
	text-align: center;
	margin-bottom: 40px;
}

.wakoku58_competition_subttl span{
	display: block;
	font-size: 23px;
}

.wakoku58_competition_gallery{
	position: relative;
	justify-content: center;
	align-items: center;
	z-index: 0;
	margin-bottom: 70px;
}

.wakoku58_competition_gallery::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 598px;
	height: 660px;
	background: url(../img/wakoku/wakoku58/wakoku58_competition_gallery_bg.png) no-repeat right center / contain;
}

.wakoku58_competition_img{
	width: 152px;
}

.wakoku58_competition_img:nth-child(2){
	width: 196px;
}

.wakoku58_competition_img:not(:last-child){
	margin-right: 50px;
}

.wakoku58_competition_txt{
	letter-spacing: 0;
	text-align: center;
}

/*---------------------
wakoku58_design
----------------------*/

.wakoku58_design_inbox{
	padding: 100px 0 160px;
}

.wakoku58_design_txt{
	text-align: center;
	margin-bottom: 90px;
}

.wakoku58_design_gallery{
	justify-content: space-between;
}

.wakoku58_design_gallery_img{
	width: 300px;
	overflow: hidden;
}

.wakoku58_design_gallery_img:nth-last-child(n+4){
	margin-bottom: 30px;
}

.wakoku58_design_gallery_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .4s;
}

.wakoku58_design_gallery_img a:hover img{
	transform: scale(1.15);
}

/*---------------------
wakoku58_thoughts
----------------------*/

.wakoku58_thoughts_bg{
	width: 100%;
	height: 300px;
}

.wakoku58_thoughts_bg img{
	width: 100%!important;
	height: 100%!important;
	object-fit: cover;
}

.wakoku58_thoughts_ttl{
	padding: 165px 0;
}

.wakoku58_thoughts_wrap{
	padding: 1px 0 165px 0;
	background: #ece8df;
}

.wakoku58_thoughts_inbox{
	margin-top: -65px;
	margin-bottom: 130px;
}

.wakoku58_thoughts_card{
	justify-content: space-between;
	align-items: center;
}

.wakoku58_thoughts_card:not(:last-child){
	margin-bottom: 50px;
}

.wakoku58_thoughts_img{
	width: 345px;
}

.wakoku58_thoughts_card:nth-child(odd) .wakoku58_thoughts_img{
	order: 2;
}

.wakoku_cmn_txt{
	letter-spacing: 0;
}




















/*========================================
下層ページ名
==========================================*/

/*---------------------
セクション名
----------------------*/






