@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Bellefair&family=Cormorant+Infant:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Noto+Serif+JP&family=Qwitcher+Grypen:wght@400;700&family=Zen+Old+Mincho&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bellefair&family=Cormorant+Infant:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Noto+Serif+JP&family=Qwitcher+Grypen:wght@400;700&display=swap');

/*============================
	html5 base style
============================*/

/* 要素 フォントサイズ・マージン・パディングをリセット */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  font-weight: normal;
  vertical-align:baseline;
  background:transparent;
}

/* 新規追加要素をブロック要素化 */
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

/* 行の高=フォントサイズ */
body {line-height:1;}

/* ulのマーカー非表示 */
ol, ul {list-style: none;}

/* フォントサイズ　リセット フォントの縦方向 ベースライン揃え 点線削除 */
a {margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;outline: none;}
img,svg,video {width: 100%;vertical-align: bottom;}

/* 画像を縦に並べた時に余白0 */
img {vertical-align: top;font-size: 0;line-height: 0;}

table {border-collapse: collapse;border-spacing: 0;}

/*box-sizingを全ブラウザに対応*/
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }
  
.clearfix:after {
    overflow: hidden;
    visibility: hidden;
    height: 0;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
}

br {line-height: inherit;}

input,select {vertical-align: middle;}

input,select,button {border: 0; -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; appearance: none;}
input:focus,select:focus,button:focus {outline: 0;}


/* 【共通】パーツ 
----------------------------------------------------------------*/
/* リンク */
a,
a * {
	-webkit-transition: opacity 0.7s ease;
	-moz-transition: opacity 0.7s ease;
	-o-transition: opacity 0.7s ease;
	transition: opacity  0.7s ease;
	text-decoration: none;
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
	font-family: inherit;
	-webkit-backface-visibility: hidden; /* 追加 */
	backface-visibility: hidden; /* 追加 */
}
a:hover, a:active {text-decoration:none;opacity: 0.7;filter: alpha(opacity=70);color: #111;}
img {max-width: 100%;height: auto;}


/*基本設定
----------------------------------------------------------------*/

body {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: .075em;
	line-height:1.5;
	background: #fff;
	color: #101010;
	font-family: "Yu Gothic", YuGothic, "游ゴシック", "メイリオ", sans-serif;
	margin: auto;
	overflow-x: hidden;
	position: relative;
	min-width: auto;
	opacity: 0;
	animation: bodyAppear .3s .3s forwards;
	background: #eee;
}

@media screen and (max-width: 1024px) {
	body {font-size: 15px;}
}
@media screen and (max-width: 768px) {
	body {font-size: 14px;}
}

@keyframes bodyAppear {
	0% {
			opacity: 0;
	}

	100% {
			opacity: 1;
	}
}

/* html {scroll-behavior:smooth;} */


/*  配置  */
.flex-nml {display:-webkit-box;	display:-ms-flexbox;display:flex;flex-wrap:wrap;}
.flex-btw {display:-webkit-box;display:-ms-flexbox;	display:flex;flex-wrap:wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;	justify-content:space-between;}
.flex-cnt {display:-webkit-box;	display:-ms-flexbox;display:flex;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;}
.flex-end {display:-webkit-box;	display:-ms-flexbox;display:flex;flex-wrap:wrap;-webkit-box-pack:end;-ms-flex-pack:end;	justify-content:flex-end;}

.row-reverse {-webkit-flex-direction: row-reverse;	flex-direction: row-reverse;}
.item-cen{-webkit-align-items: center;	align-items: center;}
.items-start {-webkit-align-items: flex-start;	align-items: flex-start;}
.items-end {-webkit-align-items: flex-end;	align-items: flex-end;}

.top_access p{line-height: 2;border-bottom: 1px solid #eee;font-size: 15px;}

/*----------------------------
  layout
-----------------------------*/
.tategaki {writing-mode: vertical-rl; -ms-writing-mode: tb-rl; -webkit-writing-mode: vertical-rl;}
.sp {display: none!important;}
.pc {display: block!important;}

@media screen and (max-width: 768px) {
    .sp {display: block!important;}
	.pc {display: none!important;}
}

/* margin */
.mb20 {margin-bottom: 20px;}
.mb30 {margin-bottom: 30px;}
.mb40 {margin-bottom: 40px;}
.mb50 {margin-bottom: 50px;}
.mb60 {margin-bottom: 60px;}
.mb70 {margin-bottom: 70px;}
.mb80 {margin-bottom: 80px;}
.mb100 {margin-bottom: 100px;}
.mb130 {margin-bottom: 130px;}

@media screen and (max-width: 1024px) {
	.mb20 {margin-bottom: 15px;}
	.mb30 {margin-bottom: 20px;}
	.mb40 {margin-bottom: 30px;}
	.mb50 {margin-bottom: 35px;}
	.mb60 {margin-bottom: 45px;}
	.mb70 {margin-bottom: 50px;}
	.mb80 {margin-bottom: 60px;}
	.mb100 {margin-bottom: 70px;}
	.mb130 {margin-bottom: 100px;}
}

@media screen and (max-width: 768px) {
	.mb20 {margin-bottom: 10px;}
	.mb30 {margin-bottom: 20px;}
	.mb40 {margin-bottom: 25px;}
	.mb50 {margin-bottom: 30px;}
	.mb60 {margin-bottom: 30px;}
	.mb70 {margin-bottom: 40px;}
	.mb80 {margin-bottom: 40px;}
	.mb100 {margin-bottom: 50px;}
	.mb130 {margin-bottom: 70px;}
}


/*============================
    setting
============================*/

/* ------ inner ------ */
.inner{max-width: 1200px;padding-top: 100px;padding-bottom: 100px;width: 96%;margin: 0 auto;}
.inner__large{max-width: 1280px;width: 94%;	margin-inline: auto;}

@media screen and (max-width: 1024px) {
	.inner{width: 94%;padding-top: 50px;padding-bottom: 50px;}
	.inner__large{width: 93%;}
}
@media screen and (max-width: 768px) {
	.inner{width: 92%;}
	.inner__large{width: 92%;}
}
@media screen and (max-width: 425px) {
  .inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 2%;
}
}


/* ------ font ------ */
.font-en {font-family: "Cormorant Infant", serif;}
.font-jp {font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', '游明朝体', 'YuMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'MS Ｐ明朝', 'MS PMincho', serif;}


/* .font-min {
    font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', '游明朝体', 'YuMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'MS Ｐ明朝', 'MS PMincho', serif;
}
.font-ex {
    font-family: 'Zen Kaku Gothic New', sans-serif;
} */
.indent {padding-left: 1em; text-indent: -1em;}

/* -------color setting------- */
.color01{color:#eeeeee;}

.bg{background-color:#fff;}
.bg02{background-color:#f0e9da;}
.link {text-decoration-line: underline;}

/* -------text setting------- */
.lh{line-height: 2;}
.ta-c{text-align: -webkit-center;}
.ta-r{text-align: right;}
.ta-bold{font-weight: bold;}


/*----------------------------
  position
-----------------------------*/
.ps-r {position: relative;}
.ps-a {position: absolute;}


/*----------------------------
  list
-----------------------------*/
.list-style {list-style: disc;}


/*----------------------------
  animation
-----------------------------*/
.scale {transition: 0.5s;}
.scale:hover {transform: scale(1.1);transition: 0.5s;}

/* hover zoom */
/*　画像の拡大　*/

.zoomIn img {
	transform: scale(1);
	transition: .5s ease-in-out;
	/*移り変わる速さを変更したい場合はこの数値を変更*/
}
.zoomIn:hover img {
	/*hoverした時の変化*/
	transform: scale(1.05);
	/*拡大の値を変更したい場合はこの数値を変更*/
}
.mask {
	display: block;
	line-height: 0;
	/*行の高さを0にする*/
	overflow: hidden;
	/*拡大してはみ出る要素を隠す*/
}
.wow {animation-duration: 1s;}


/*============================
	index 共通
============================*/
.title_cmn{letter-spacing: .07em;padding-left: 90px;}
.title_cmn .font-en{font-size: 70px;position: relative;}
.title_cmn .font-en::before{content: "";background: #101010;width: 70px;height: 1px;position: absolute;left: -6rem;top: 50%;}
.title_cmn .font-jp{font-size: 18px;}

.title_cmn02{text-align: center;}
.title_cmn02 .font-en::before {content: none;}

.menu_title{position: relative;text-align: center;}
.menu_title::before{
	content: "";
    background: url(../img/ttl_deco.png) no-repeat;
    width: 110px;
    height: 45px;
    background-size: contain;
    display: block;
    position: absolute;
    top: -39%;
    left: 45%;
}
.menu_title .font-en{font-size: 40px;}


@media screen and (max-width: 1280px) {
	.title_cmn{font-size:48px;}
}
@media screen and (max-width: 1024px) {
	.title_cmn{font-size: 40px;}
}
@media screen and (max-width: 768px) {
	.title_cmn{font-size:30px;padding-left: 7%;}
	.title_cmn .font-en::before{left: -20%;}
}
@media screen and (max-width:425px) {
	.title_cmn{font-size:28px;padding-left: 10%;}
	.title_cmn .font-en::before{left: -4rem;}
}
@media screen and (max-width:375px) {
	.title_cmn .font-en::before{width: 47px;}
}

/* ------  arrow付きbtn ------ */
.btn01{text-align: -webkit-center;}
.btn01 .btn_link {background-color: #fff; color: #111; width: 247px;position: relative; border-radius: 6px;padding: 15px;text-align: center;}
.btn01 .btn_link::before {
	content: "";
    background: url(../images/btn_blk02.png) no-repeat;
    background-size: contain;
    width: 28px;
    height: 15px;
    position: absolute;
    top: 55%;
    right: 13px;
    transform: translateY(-50%);
    transition: right 0.3s ease;
}
.btn01 .btn_link:hover::before {right: 10px;}
.btn01 a p{font-size: 16px;}
.btn01 a p:hover{color: #111;}




.btn02{}
.btn02 .btn_link {background-color: #736b62; color: #fff; width: 247px;position: relative; border-radius: 6px;padding: 15px;text-align: center;}
.btn02 .btn_link::before {
	content: "";
    background: url(../images/btn_blk.png) no-repeat;
    background-size: contain;
    width: 28px;
    height: 15px;
    position: absolute;
    top: 55%;
    right: 13px;
    transform: translateY(-50%);
    transition: right 0.3s ease;
}
.btn02 .btn_link:hover::before {right: 10px;}
.btn02 a p{font-size: 16px;}
.btn02 a p:hover{color: #fff;}

.btn02.btn02_flex {
  width: fit-content;
}


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

}


/*============================================
    タブ
=========================*/
.anker__items {
  column-gap: 2%;
  row-gap: 20px;
}
.anker__item {
  width: 23%;
  max-width: 280px;
  height: 50px;
  border-radius: 6px;
}
.anker__item a {
  display: block;
  color: #fff;
  line-height: 50px;
  text-align: center;
  transition: .3s ease-out;
}

.bg_gra01{background: linear-gradient(to right, #977d66, #a28d75, #6e5439);}
.bg_gra02{background: linear-gradient(to right, #797260 ,#a29f8e);}


/*============================================
    mouse_stkr
=========================*/
#stkr {
  position:fixed;
  top:0px;left:0px;
  width:26px;height:26px;
  background:rgba(0,0,0,1);
  border-radius:50%;
  transition:.5s;
  transition-timing-function:ease-out;
  pointer-events:none;
  mix-blend-mode:overlay;
  z-index:1000;
}

@media screen and (max-width:480px){
    #stkr{
    display:none;
  }
}