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

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline;}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
body {line-height: 1;}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none;}
table {border-collapse: collapse; border-spacing: 0;}

/*//////////////////////////////////////////////   ここまでがCSSリセット   //////////////////////////////////////////////*/


*{margin:0; padding:0; outline:0;}
body{
	font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
/*	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;*/
	word-break:break-all;
	-webkit-font-smoothing: subpixel-antialiased;
	background-color:#fff;
}

p{
	font-size:16px;
	line-height:2.1em;
	text-align:justify;
}

@media(min-width:601px){
html,body{
	min-height:100%;
	height:100%;
	min-width:1000px;
}

/*//////////////////////////////////////////////   topヘッダー   //////////////////////////////////////////////*/

header{
/*	position:sticky;
	top:0;*/
	position:fixed;
	width:100%;
	background-color:#231815;
	z-index:1000;
}

.hd_in{
	min-width:1100px;
	height:107px;
	margin:0 auto;
	padding:0 40px;
	display: flex;
	align-items:center;
	justify-content: space-between;
	box-sizing:border-box;
}
	
.hd_in img{width:164px; height:auto;}
	
.hd_in ul{
	display: flex;
	column-gap: 16px;
	font-family: "Kumbh Sans", sans-serif;
}
.hd_in a{
	display:inline-block;
	position: relative;
	text-decoration:none;
	color:#fff;
	font-size:14px;
	letter-spacing:.1em;
	padding:10px 5px;
}

.hd_in a::after {
    content: '';
    /*絶対配置で線の位置を決める*/
    position: absolute;
    bottom: 0;
    left: 0;
    /*線の形状*/
    width:100%;
    height: 2px;
    background:#fff;
    /*アニメーションの指定*/
    transition: all .2s;
    transform: scale(0, 1);/*X方向0、Y方向1*/
    transform-origin: center top;/*左上基点*/
}

/*現在地とhoverの設定*/
.hd_in li.current a::after,.hd_in li.pcsty a::after,
.hd_in a:hover::after {
    transform: scale(1, 1);/*X方向にスケール拡大*/
}

.hd_in ul li:nth-child(9){border-left:solid 2px #fff; padding-left:16px;}
.hd_in ul li:nth-child(9):before {
    content: url("img/lang.svg");  /*画像のURL*/
 	vertical-align:middle;
}

.mb{display:none;}

/*//////////////////////////////////////////////   main   //////////////////////////////////////////////*/


main{
	min-width:1000px;
	margin:0 auto;
	padding-top:60px;
}

.fade-in {
    opacity: 1;
}
	
	
	
	

/*お試し*/


.slant-bg {
    width: 100%;
    padding: 100px 0;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 10%), 0 calc(100% - 27%));
    background-color: #3e3a39;
	color:#fff;
}

.slant-bg > div{ width: 920px; margin:0 auto 50px;} 
.slant-bg h3{
	font-family: "Noto Serif JP", serif;
	font-weight:200;
	color:#c89f62;
	text-align:right;
	font-size:50px;
    margin: 0 auto;
	letter-spacing: 0.2rem;
	line-height:.3;
}
.slant-bg h3 span{font-size:25px; font-weight:200;letter-spacing: 0.4rem;}
.slant-bg h3 img{margin:0 10px; vertical-align: middle; padding-bottom:10px;}

.slant-bg p {
    width: 920px;
    margin: 0 auto;
}


.slant-bg_02 {
    width: 920px;
    margin: 0 auto;
	padding-top:200px;
}


.slant-bg_03 {
    height: 300px;
    margin: 0 auto;
}


.slant-bg_04 {
    height: 100px;
    margin: 0 auto;
}


.main_01{
    width:920px;
    margin: 20px auto;
}

.main_02{
    width:720px;
    margin: 40px 100px;
}


.kukka_01{
   width: 920px;
    margin: 0 auto;
}

.kukka_01 h4{
	font-family: "Baskervville", serif;
	font-size:38px;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: italic;
	text-align:center;
	border-bottom:solid 2px #c89f62;
	color:#c89f62;
	padding-bottom:15px;
}
.fl_box{
	display:flex;
	justify-content: space-between;
	align-items:flex-end;
	margin-top:60px;
}
.bfsc_l{
	font-family: "Noto Serif JP", serif;
}
.bfsc_l h5{
	font-size:17px;
	position:relative;
	margin-bottom:15px;
}
.bfsc_l h5:before {
    content: url("img/kukka_kazari.svg");  /*画像のURL*/
    margin-right:10px;  /*画像右の余白*/
}
.bfsc_l p{
	font-size:15px;
	line-height:1.7;
	margin-bottom:45px;
}
.bfsc_r{text-align:right; font-size:12px;}
.bfsc_r img{width:405px; margin-top:10px;}
.kukka_items{
	font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:18px;
}
.kukka_items img{width:320px;}
.kukka_items p{
	font-size:13px;
	line-height:1.7;
	margin:10px 0 20px;
}

.kukka_02{
    width: 100%;
	min-width:1000px;
	position: absolute;	/*上にかぶせる*/
    margin-top: -310px;
}

.kukka_02 p {
    width: 920px;
    margin: 0 auto;
}

.gift{
	width:920px;
	margin:0 auto;
	display:flex;
	align-items:flex-start;
	justify-content: flex-end;
}
.gift p{
	font-family: "Noto Serif JP", serif;
	font-weight:200;
	color:#000;
	font-size:24px;
	line-height:2.4;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	letter-spacing: 0.2rem;
	white-space: nowrap;
}
.gift img{
	width:650px;
	margin-left:70px;
}




/*//////////////////////////////////////////////   ボタン   //////////////////////////////////////////////*/




.btn{
	display:block;
	text-decoration:none;
	text-align:center;
	width:180px;
	line-height:48px;
	font-size:16px;
	font-family: "Kumbh Sans", sans-serif;
	color:#fff;
	background-color:#231815;
	border:solid 1px #231815;
	position: relative;
	transition: all 0.3s 0s ease;
	text-indent:-1em;
}

/* 矢印 */  
.btn::after{
    content: '';
    width: 8px;
    height: 8px;
    margin-top: -5px;
    border-top: solid 1px #fff;   /* 好みで色を変えてください */  
    border-right: solid 1px #fff;   /* 好みで色を変えてください */  
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 15px;
	transition: all 0.3s 0s ease;
}
/* 矢印_END */



/* マウスオーバー */  
.btn:hover{
	color:#231815;
	background-color:#fff;
}
/* マウスオーバー_END */



/* 矢印マウスオーバー */  
.btn:hover::after{
    border-top: solid 1px #231815;   /* 好みで色を変えてください */  
    border-right: solid 1px #231815;   /* 好みで色を変えてください */  
}
/* 矢印マウスオーバー_END */  




section{
	width:920px;
	margin:0 auto;
	    opacity: 0;
    transition: opacity 1s;
}
.clctn_btn{
	display:flex;
	justify-content: center;
	margin:30px 0 150px;
}




/*//////////////////////////////////////////////   ボタン_END   //////////////////////////////////////////////*/




/*//////////////////////////////////////////////   topへ戻る   //////////////////////////////////////////////*/

#js-pageTop {
  z-index: 100;
  position: fixed;
  right: 30px;
  bottom: 30px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background:#fff;
  cursor: pointer;
  border: solid 2px #000;
  opacity:.3;
}
#js-pageTop:hover{opacity:.5;}
#js-pageTop a:before {
  position: absolute;
  width: 20px;
  height: 20px;
  transform: translate(-50%, -50%);
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: translateY(20%) rotate(-45deg);
  content: "";
  top: 25%;
  left: 25%;
  display: inline-block;
  background-color: #fff;
}

/*//////////////////////////////////////////////   footer   //////////////////////////////////////////////*/

footer{
	width:100%;
	min-width:1000px;
	position:sticky;
	top:100vh;
	top:100dvh;
	background-color:#231815;
	padding-top:75px;
}
.ft_in{
	min-width:920px;
	margin:0 40px;
	display: flex;
	justify-content: space-between;
	position:relative;
}
.ft_in img{width:248px;}
.ft_in ul{
	display: flex;
	flex-wrap: wrap;
	gap:20px 30px;
	font-family: "Kumbh Sans", sans-serif;
	width:533px;
}
.ft_in a{
	text-decoration:none;
	color:#fff;
	font-size:14px;
}
.ft_in a:hover{opacity:.6;}
.ft_insta{
	position:absolute;
	right:0;
	bottom:0;
}
.ft_insta img{width:25px; margin-bottom:-6px;}

.ft_cpy{
	width:100%;
	margin-top:75px;
	color:#fff;
	font-size:12px;
	font-family: "Kumbh Sans", sans-serif;
	text-align:center;
	border-top:solid 1px #fff;
	padding:30px 0;
}

}

/*////////////////////////////////////////////////////////////////////////////////////////////   pc_end   ////////////////////////////////////////////////////////////////////////////////////////////*/
/*////////////////////////////////////////////////////////////////////////////////////////////   pc_end   ////////////////////////////////////////////////////////////////////////////////////////////*/
/*////////////////////////////////////////////////////////////////////////////////////////////   pc_end   ////////////////////////////////////////////////////////////////////////////////////////////*/


@media(max-width:600px){

html,body{
	min-height:100%;
	height:100%;
}

/*//////////////////////////////////////////////   ヘッダ   //////////////////////////////////////////////*/


/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	top:20px;
	right: 20px;
	cursor: pointer;
    width: 50px;
    height:50px;
	background-color:#231815;
	border-radius:5px;
}
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
	background-color: #fff;
  	width: 45%;
  }
.openbtn span:nth-of-type(1) {top:15px;}
.openbtn span:nth-of-type(2) {top:23px;}
.openbtn span:nth-of-type(3) {top:31px;}
.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}
.openbtn.active span:nth-of-type(2) {opacity: 0;}
.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}
/*========= ボタンのためのCSS ===============*/

.hdbox{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 8999;
    /*ナビのスタート位置と形状*/
	top:0;
    right: -120%;
	width:90%;
    height: 100vh;/*ナビの高さ*/
	background-color:rgba(35,24,21,0.9);
    /*動き*/
	transition: all 0.4s;
}

/*アクティブクラスがついたら位置を0に*/
.hdbox.panelactive{right: 0;}


/*ナビゲーション*/
.hdbox>ul{
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
}

/*リストのレイアウト設定*/

.hdbox>ul li{text-align: center;}

.hdbox>ul li a{
	color: #fff;
	text-decoration: none;
	padding:15px 18px;
	font-size:18px;
	display: block;
/*	text-transform: uppercase;*/
	letter-spacing: 0.1em;
	white-space: nowrap;
	font-family: "Kumbh Sans", sans-serif;
}
.hdbox>ul li.pcsty a{ font-weight:bold; color:#d0b286; text-indent:-1em;}
.hdbox>ul li.pcsty a::before {
	content: "▶︎ ";
}
.hdbox li:nth-child(2),.hdbox li:nth-child(8){border-top:solid 1px #fff; margin-top:12px; padding-top:12px;}

.hd_in ul li:nth-child(9) a{position:relative;}
.hd_in ul li:nth-child(9) a:before {
    content: url("img/lang.svg");  /*画像のURL*/
	vertical-align:middle;
	position:absolute;
	top:30%;
	left:25px;
}


header{
	width:100%;
	background-color:#231815;
	padding:20px 0;
}

.hd_in img{height:50px; margin-left:20px; margin-top:10px;}


/*//////////////////////////////////////////////   main   //////////////////////////////////////////////*/

#main{
	min-width:1000px;
	margin:0 auto;
	padding-top:107px;
}


/*お試し*/


.slant-bg {
    width: 100%;
    padding: 40px 0 10px;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 20vw));
    background-color: #3e3a39;
	color:#fff;
}

.slant-bg > div{ width:90%; margin:0 auto 30px;} 
.slant-bg h3{
	font-family: "Noto Serif JP", serif;
	font-weight:200;
	color:#c89f62;
	text-align:right;
	font-size:8.5vw;
	letter-spacing: 0.2rem;
	line-height:1;
}
.slant-bg h3 span{font-size:5.5vw; font-weight:200; line-height:1.4; display:inline-block; padding-top:15px;/*letter-spacing: 0.4rem;*/}
.slant-bg h3 img{margin:0 10px; vertical-align: middle; width:8.5vw;}

.slant-bg p {
    width: 90%;
    margin: 0 auto;
}


.slant-bg_02 {
    margin: 0 auto;
	padding-top:40px;
}

.kukka_01{
   width: 90%;
    margin: 0 auto 150px;
}

.kukka_01 h4{
	font-family: "Baskervville", serif;
	font-size:8vw;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: italic;
	text-align:center;
	word-break:keep-all;
	border-bottom:solid 2px #c89f62;
	color:#c89f62;
	padding-bottom:10px;
}
.fl_box{
	display:flex;
	flex-direction:column;
	margin-top:40px;
}
.bfsc_l{
	font-family: "Noto Serif JP", serif;
}
.bfsc_l h5{
	font-size:17px;
	position:relative;
	margin-bottom:15px;
}
.bfsc_l h5:before {
    content: url("img/kukka_kazari.svg");  /*画像のURL*/
    margin-right:10px;  /*画像右の余白*/
}
.bfsc_l p{
	font-size:15px;
	line-height:1.7;
	margin-bottom:50px;
}
.bfsc_r{text-align:right; font-size:12px; margin-top:50px;}
.bfsc_r img{width:100%; margin-top:10px;}

.kukka_items{
	font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:18px;
}
.kukka_items img{width:100%;}
.kukka_items p{
	font-size:13px;
	line-height:1.7;
	margin:10px 0 20px;
	word-break:keep-all;
}

.pc{display:none;}
.slant-bg_03{
    height: 100vw;
    margin: 0 auto;
}

.kukka_02{
    width: 100%;
	position: absolute;	/*上にかぶせる*/
	margin-top: -70px;
}

/*.kukka_02 p {
    width: 90%;
    margin: 0 auto;
}*/


.gift{
	width:90%;
	margin:0 auto;
	display:flex;
	flex-direction:column-reverse;
}
.gift p{
	font-family: "Noto Serif JP", serif;
	font-weight:200;
	color:#000;
	font-size:4.2vw;
	line-height:2;
	letter-spacing: 0.2rem;
	margin-top:20px;
}
.gift img{
	width:100%;
}

/*お試し終わり*/


.main_01{
    width:100%;
    margin: 10px auto;
}

.main_02{
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding:20px 0;}

	
.bg1{
	min-width:1000px;
	margin:0 auto;
	padding-top:107px;
	background-color: #e8e6e6; 
	padding:175px 0;}
	
.bg2{background-color: #e8e6e6; padding:75px 0;}




/*//////////////////////////////////////////////   ボタン_END   //////////////////////////////////////////////*/




.btn{
	display:block;
	text-decoration:none;
	text-align:center;
	width:100%;
	line-height:48px;
	font-size:16px;
	font-family: "Kumbh Sans", sans-serif;
	color:#fff;
	background-color:#231815;
	border:solid 1px #231815;
	position: relative;
	transition: all 0.3s 0s ease;
	text-indent:-1em;
}


.btn::after{
    content: '';
    width: 8px;
    height: 8px;
    margin-top: -5px;
    border-top: solid 1px #fff;   /* 好みで色を変えてください */  
    border-right: solid 1px #fff;   /* 好みで色を変えてください */  
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 15px;
	transition: all 0.3s 0s ease;
}


.clctn_btn{
	display:flex;
	justify-content: center;
	margin:50px 0 100px;
}




/*//////////////////////////////////////////////   ボタン_END   //////////////////////////////////////////////*/




/*//////////////////////////////////////////////   topへ戻る   //////////////////////////////////////////////*/


#js-pageTop {
  z-index: 1000;
  position: fixed;
  right: 20px;
  bottom: 50px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background:#fff;
  cursor: pointer;
  border: solid 2px #000;
  opacity:.3;
}
#js-pageTop a:before {
  position: absolute;
  width: 20px;
  height: 20px;
  transform: translate(-50%, -50%);
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: translateY(20%) rotate(-45deg);
  content: "";
  top: 25%;
  left: 25%;
  display: inline-block;
  background-color: #fff;
}


/*//////////////////////////////////////////////   フッタ   //////////////////////////////////////////////*/


footer{
	width:100%;
	position:sticky;
	top:100vh;
	top:100dvh;
	background-color:#231815;
	padding-top:50px;
	box-sizing:border-box;
}
.ft_in{
	width:90%;
	margin:0 auto;
	display: flex;
	position:relative;
}
.ft_in img{height:50px;}
.ft_in ul{
	display:none;
}
.ft_in a{
	text-decoration:none;
	color:#fff;
	font-size:14px;
}
.ft_insta{
	position:absolute;
	right:0;
	top:0;
}
.ft_insta img{width:30px; margin-bottom:-6px;}

.ft_cpy{
	width:100%;
	margin-top:50px;
	color:#fff;
	font-size:12px;
	font-family: "Kumbh Sans", sans-serif;
	text-align:center;
	border-top:solid 1px #fff;
	padding:30px 0;
}


}