  @charset "utf-8";

/*-----------------------------------------------------------
var
----------------------------------------------------------- */
:root {
  --font-family: "A1明朝", "A1 Mincho", "游明朝", YuMincho,"HGS明朝B", "ＭＳ Ｐ明朝","MS PMincho", "ＭＳ 明朝", serif;
  /*--font-family-go: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;*/
  --font-family-go: "A1ゴシック R", "A1 Gothic R", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  --font-family-en: "EB Garamond", serif;
  --font-family-en-go: "VibeMO Condensed Pro Light", sans-serif;
  --font-markup: 0.7;/*clampの縮小率*/
  --color-key01: #ecb5b5; /* ピンク */
  --color-key01-rgb: 236,181,181; /* ピンクRGB */
  --color-key02: #dd6710; /* オレンジ */
  --color-key02-rgb: 221,103,16; /* オレンジRGB */
  --color-key03: #d2a572; /* ベージュ */
  --color-key03-rgb: 210,165,114; /* ベージュRGB */ 
  --color-key04: #4f583b; /* 深緑 */
  --color-key04-rgb: 79,88,59; /* 深緑RGB */
  --color-key05: #7bb8ce;/* ブルー */
  --color-key05-rgb: 123,184,206;/* ブルーRGB */
  --color-white: #ffffff; /*白 */
  --color-white-rgb: 255,255,255; /* 白RGB */
  --color-def01: #585858; /* スミ */
  --color-def02: #414141; /* スミ濃い */
  --color-def03: #202124; /* スミとても濃い */
  --color-def04: #f4f3ef; /* とっても薄いベージュ */
  --color-def05: #fafaf5; /* とっても薄いベージュ2 */  
  --line-height-narrow: 1.4;/*narrow*/
  --line-height: 1.8;
  --line-height-wide01: 2.4;/*wide*/
  --line-height-wide02: 3.0;/*very heigh*/
  --bp: 767px;/*break point*/
  --bp-sp: 375px;
  --bp-sp-narrow: 320px;
  --bp-sp-wide: 414px;
  --vw-pc: 10.80;
  --vw-tb: 7.68;/*iPad縦*/
  --vw-sp: 3.75;
  --cont-width-pc: 1100px;/*1080*/
  --cont-width01-pc: 1020px;/*1000*/
  --cont-width-pc-narrow01: 920px;/*900*/
  --cont-width-pc-narrow02: 650px;/*630*/  
  --cont-width-nv-pc: 1080;/*数値のみ numerical value*/
  --cont-width01-nv-pc: 1000;/*数値のみ numerical value*/
  --cont-width-nv-pc-narrow01: 900;/*数値のみ numerical value*/
  --cont-width-nv-pc-narrow02: 630;/*数値のみ numerical value*/
  --cont-width-sp: 375px;
  --cont-width-nv-sp: 375;/*数値のみ numerical value*/
  --transition-duration01: .3s;
  --transition-duration02: .6s;
  --opacity01: 0.7;
}



/*-----------------------------------------------------------
base
----------------------------------------------------------- */
html{
	/*font-size: 62.5%;10px基準*/
}
header,footer{
	font-size: 100%;
}
body {
	-webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
  background: var(--color-def04);
	font-family: var(--font-family);
	/*font-weight: normal;*/
	color: var(--color-def01);
	letter-spacing: 0.05em;
	line-height: var(--line-height);
}
/*IE11*/
_:-ms-input-placeholder body, :root body {
	letter-spacing: 0.1em;
}
@media screen and (max-width: 769px){
	body {
		/*初期化*/
		/*min-width: initial;*/
	}
}
@media screen and (max-width:320px) {
	html{
		font-size: 50%;/*8px基準*/
	}
}
/* for tablet*/
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation:portrait) {
/*縦向きのみの記述*/
	/*body,html{
		min-width:1023px;
	}*/
}


h1,h2,h3,h4,h5,h6{
  font-weight: normal;
}

/*リンク 
*/
a:link{
	color: var(--color-def01);
	}
a:visited{
	color: var(--color-def01);
	}

a:active/*,
a:hover*/{
	color: var(--color-def01);
	}
a{
	transition: var(--transition-duration01);
}
a:hover{
	opacity: var(--opacity01);
	}
.disabled{
	cursor:default;
}

img {
	border:0;
	vertical-align:top;
	max-width: 100%;
	height: auto;
}
.img100{
	width:100%;
}

.relative{
	position:relative;
	}
.static{
	position:static !important;
	}
.hide{
	display:none;
	}

/*font*/
.fGo{
	font-family: var(--font-family-go);
	}
.normal{
	font-family: var(--font-family);
	font-weight: normal;
	font-weight: 400;
	}
.fEn{
	font-family: var(--font-family-en) !important;
  font-optical-sizing: auto;
  font-weight: 400;
	}
.fEnGo{
	font-family: var(--font-family-en-go) !important;
	}


/*main*/
main{
	/*font:13px/1.231; default */
	text-align: center;
}
/*main *:before, main *: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;
}*/


/*
font
*/

/*
font-size
*/

.taL{text-align:left !important;}
.taC{text-align:center !important;}
.taR{text-align:right !important;}

.txt10{font-size:1.0rem !important;}
.txt12{font-size:1.2rem !important;}
.txt14{font-size:1.4rem !important;}

/*左寄せ文字*/
.txtsl{font-size:1.0rem;line-height:1.6;text-align:left;}
.txtml{font-size:1.2rem;line-height:1.6;text-align:left;}
.txtll{font-size:1.4rem;line-height:1.6;text-align:left;}
.txtlll{font-size:1.6rem;line-height:1.6;text-align:left;}

/*右寄せ文字*/
.txtsr{font-size:1.0rem;line-height:1.6;text-align:right;}
.txtmr{font-size:1.2rem;line-height:1.6;text-align:right;}
.txtlr{font-size:1.4rem;line-height:1.6;text-align:right;}
.txtllr{font-size:1.6rem;line-height:1.6;text-align:right;}

/*中央寄せ文字*/
.txtsc{font-size:1.0rem;line-height:1.6;text-align:center;}
.txtmc{font-size:1.2rem;line-height:1.6;text-align:center;}
.txtlc{font-size:1.4rem;line-height:1.6;text-align:center;}
.txtllc{font-size:1.6rem;line-height:1.6;text-align:center;}

/*行間高め*/
/*左寄せ文字*/
.txtslLH{font-size:77%;line-height:2;text-align:left;}
.txtmlLH{font-size:93%;line-height:2;text-align:left;}
.txtllLH{font-size:108%;line-height:2;text-align:left;}
.txtlllLH{font-size:124%;line-height:2;text-align:left;}

/*右寄せ文字*/
.txtsrLH{font-size:77%;line-height:2;text-align:right;}
.txtmrLH{font-size:93%;line-height:2;text-align:right;}
.txtlrLH{font-size:108%;line-height:2;text-align:right;}
.txtllrLH{font-size:124%;line-height:2;text-align:right;}

/*中央寄せ文字*/
.txtscLH{font-size:77%;line-height:2;text-align:center;}
.txtmcLH{font-size:93%;line-height:2;text-align:center;}
.txtlcLH{font-size:108%;line-height:2;text-align:center;}
.txtllcLH{font-size:124%;line-height:2;text-align:center;}



/*画像関係 [
----------------------------------------------------------- */
.vaT{
	vertical-align:top;
	}
.vaM{
	vertical-align:middle;
	}
.vaBL{
	vertical-align:baseline;
	}
.vaB{
	vertical-align:bottom;
	}
/*マージン関係 [
----------------------------------------------------------- */
.marT00{/*上マージン0px*/
	margin-top:0px  !important;
	}
.marT03{/*上マージン3px*/
	margin-top:3px  !important;
	}
.marT05{/*上マージン5px*/
	margin-top:5px  !important;
	}
.marT10{/*上マージン10px*/
	margin-top:10px  !important;
	}
.marT15{/*上マージン15px*/
	margin-top:15px  !important;
	}
.marT20{/*上マージン20px*/
	margin-top:20px  !important;
	}
.marT25{/*上マージン5px*/
	margin-top:25px  !important;
	}
.marT30{/*上マージン30px*/
	margin-top:30px  !important;
	}
.marT35{/*上マージン35px*/
	margin-top:35px  !important;
	}
.marT40{/*上マージン40px*/
	margin-top:40px  !important;
	}
.marT45{/*上マージン45px*/
	margin-top:45px  !important;
	}
.marT50{/*上マージン50px*/
	margin-top:50px  !important;
	}
.marT60{/*上マージン60px*/
	margin-top:60px  !important;
	}
.marT70{/*上マージン70px*/
	margin-top:70px  !important;
	}
.marT100{/*上マージン100px*/
	margin-top:100px  !important;
	}

.marB00{/*下マージン0px*/
	margin-bottom:0px  !important;
	}
.marB03{/*下マージン3px*/
	margin-bottom:3px  !important;
	}
.marB05{/*下マージン5px*/
	margin-bottom:5px  !important;
	}
.marB10{/*下マージン10px*/
	margin-bottom:10px  !important;
	}
.marB15{/*下マージン15px*/
	margin-bottom:15px  !important;
	}
.marB20{/*下マージン20px*/
	margin-bottom:20px  !important;
	}
.marB25{/*下マージン5px*/
	margin-bottom:25px  !important;
	}
.marB30{/*下マージン30px*/
	margin-bottom:30px  !important;
	}
.marB35{/*下マージン35px*/
	margin-bottom:35px  !important;
	}
.marB40{/*下マージン40px*/
	margin-bottom:40px  !important;
	}
.marB45{/*下マージン45px*/
	margin-bottom:45px  !important;
	}
.marB50{/*下マージン50px*/
	margin-bottom:50px  !important;
	}
.marB60{/*下マージン60px*/
	margin-bottom:60px  !important;
	}
.marB70{/*下マージン70px*/
	margin-bottom:70px  !important;
	}
.marB100{/*下マージン100px*/
	margin-bottom:100px  !important;
	}

.marL00{/*左マージン0px*/
	margin-left:0px  !important;
	}
.marL03{/*左マージン3px*/
	margin-left:3px  !important;
	}
.marL05{/*左マージン5px*/
	margin-left:5px  !important;
	}
.marL10{/*左マージン10px*/
	margin-left:10px  !important;
	}
.marL15{/*左マージン15px*/
	margin-left:15px  !important;
	}
.marL20{/*左マージン20px*/
	margin-left:20px  !important;
	}
.marL25{/*左マージン5px*/
	margin-left:25px  !important;
	}
.marL30{/*左マージン30px*/
	margin-left:30px  !important;
	}
.marL35{/*左マージン35px*/
	margin-left:35px  !important;
	}
.marL40{/*左マージン40px*/
	margin-left:40px  !important;
	}
.marL45{/*左マージン45px*/
	margin-left:45px  !important;
	}
.marL50{/*左マージン50px*/
	margin-left:50px  !important;
	}
.marL60{/*左マージン60px*/
	margin-left:60px  !important;
	}
.marL70{/*左マージン70px*/
	margin-left:70px  !important;
	}
.marL100{/*左マージン100px*/
	margin-left:100px  !important;
	}

.marR00{/*右マージン0px*/
	margin-right:0px  !important;
	}
.marR03{/*右マージン3px*/
	margin-right:3px  !important;
	}
.marR05{/*右マージン5px*/
	margin-right:5px  !important;
	}
.marR10{/*右マージン10px*/
	margin-right:10px  !important;
	}
.marR15{/*右マージン15px*/
	margin-right:15px  !important;
	}
.marR20{/*右マージン20px*/
	margin-right:20px  !important;
	}
.marR25{/*右マージン5px*/
	margin-right:25px  !important;
	}
.marR30{/*右マージン30px*/
	margin-right:30px  !important;
	}
.marR35{/*右マージン35px*/
	margin-right:35px  !important;
	}
.marR40{/*右マージン40px*/
	margin-right:40px  !important;
	}
.marR45{/*右マージン45px*/
	margin-right:45px  !important;
	}
.marR50{/*右マージン50px*/
	margin-right:50px  !important;
	}
.marR60{/*右マージン60px*/
	margin-right:60px  !important;
	}
.marR70{/*右マージン70px*/
	margin-right:70px  !important;
	}
.marR100{/*右マージン100px*/
	margin-right:100px  !important;
	}
	
/*パディング関係 [
----------------------------------------------------------- */
.padT00{/*上パディング0px*/
	padding-top:0px  !important;
	}
.padT03{/*上パディング3px*/
	padding-top:3px  !important;
	}
.padT05{/*上パディング5px*/
	padding-top:5px  !important;
	}
.padT10{/*上パディング10px*/
	padding-top:10px  !important;
	}
.padT15{/*上パディング15px*/
	padding-top:15px  !important;
	}
.padT20{/*上パディング20px*/
	padding-top:20px  !important;
	}
.padT25{/*上パディング5px*/
	padding-top:25px  !important;
	}
.padT30{/*上パディング30px*/
	padding-top:30px  !important;
	}
.padT35{/*上パディング35px*/
	padding-top:35px  !important;
	}
.padT40{/*上パディング40px*/
	padding-top:40px  !important;
	}
.padT45{/*上パディング45px*/
	padding-top:45px  !important;
	}
.padT50{/*上パディング50px*/
	padding-top:50px  !important;
	}
.padT60{/*上パディング60px*/
	padding-top:60px  !important;
	}
.padT70{/*上パディング70px*/
	padding-top:70px  !important;
	}
.padT100{/*上パディング100px*/
	padding-top:100px  !important;
	}

.padB00{/*下パディング0px*/
	padding-bottom:0px  !important;
	}
.padB03{/*下パディング3px*/
	padding-bottom:3px  !important;
	}
.padB05{/*下パディング5px*/
	padding-bottom:5px  !important;
	}
.padB10{/*下パディング10px*/
	padding-bottom:10px  !important;
	}
.padB15{/*下パディング15px*/
	padding-bottom:15px  !important;
	}
.padB20{/*下パディング20px*/
	padding-bottom:20px  !important;
	}
.padB25{/*下パディング5px*/
	padding-bottom:25px  !important;
	}
.padB30{/*下パディング30px*/
	padding-bottom:30px  !important;
	}
.padB35{/*下パディング35px*/
	padding-bottom:35px  !important;
	}
.padB40{/*下パディング40px*/
	padding-bottom:40px  !important;
	}
.padB45{/*下パディング45px*/
	padding-bottom:45px  !important;
	}
.padB50{/*下パディング50px*/
	padding-bottom:50px  !important;
	}
.padB60{/*下パディング60px*/
	padding-bottom:60px  !important;
	}
.padB70{/*下パディング70px*/
	padding-bottom:70px  !important;
	}
.padB100{/*下パディング100px*/
	padding-bottom:100px  !important;
	}

.padL00{/*左パディング0px*/
	padding-left:0px  !important;
	}
.padL03{/*左パディング3px*/
	padding-left:3px  !important;
	}
.padL05{/*左パディング5px*/
	padding-left:5px  !important;
	}
.padL10{/*左パディング10px*/
	padding-left:10px  !important;
	}
.padL15{/*左パディング15px*/
	padding-left:15px  !important;
	}
.padL20{/*左パディング20px*/
	padding-left:20px  !important;
	}
.padL25{/*左パディング5px*/
	padding-left:25px  !important;
	}
.padL30{/*左パディング30px*/
	padding-left:30px  !important;
	}
.padL35{/*左パディング35px*/
	padding-left:35px  !important;
	}
.padL40{/*左パディング40px*/
	padding-left:40px  !important;
	}
.padL45{/*左パディング45px*/
	padding-left:45px  !important;
	}
.padL50{/*左パディング50px*/
	padding-left:50px  !important;
	}
.padL60{/*左パディング60px*/
	padding-left:60px  !important;
	}
.padL70{/*左パディング70px*/
	padding-left:70px  !important;
	}
.padL100{/*左パディング100px*/
	padding-left:100px  !important;
	}

.padR00{/*右パディング0px*/
	padding-right:0px  !important;
	}
.padR03{/*右パディング3px*/
	padding-right:3px  !important;
	}
.padR05{/*右パディング5px*/
	padding-right:5px  !important;
	}
.padR10{/*右パディング10px*/
	padding-right:10px  !important;
	}
.padR15{/*右パディング15px*/
	padding-right:15px  !important;
	}
.padR20{/*右パディング20px*/
	padding-right:20px  !important;
	}
.padR25{/*右パディング5px*/
	padding-right:25px  !important;
	}
.padR30{/*右パディング30px*/
	padding-right:30px  !important;
	}
.padR35{/*右パディング35px*/
	padding-right:35px  !important;
	}
.padR40{/*右パディング40px*/
	padding-right:40px  !important;
	}
.padR45{/*右パディング45px*/
	padding-right:45px  !important;
	}
.padR50{/*右パディング50px*/
	padding-right:50px  !important;
	}
.padR60{/*右パディング60px*/
	padding-right:60px  !important;
	}
.padR70{/*右パディング70px*/
	padding-right:70px  !important;
	}
.padR100{/*右パディング100px*/
	padding-right:100px  !important;
	}


.clearfix::after{
	content: "";
	display: block;
	clear: both;
}
.clrb{
	clear: both;
}



/*------------------------------------------------------------------------------
コンテンツcommon
------------------------------------------------------------------------------*/
main{
  display: block;
}
main .conPC,
aside .conPC{
	max-width:var(--cont-width-pc);/*1080px*/
	width: auto !important;
	width: var(--cont-width-pc);
	margin-left:auto !important;
	margin-right:auto !important;
	padding-left:10px;
	padding-right:10px;
}
main .conPCS,
aside .conPCS{
	max-width:var(--cont-width-pc-narrow01);/*900px*/
	width: auto !important;
	width: var(--cont-width-pc-narrow01);
	margin-left:auto !important;
	margin-right:auto !important;
	padding-left:10px;
	padding-right:10px;
}
main .conPCSS,
aside .conPCSS{
	max-width:var(--cont-width-pc-narrow02);/*630px*/
	width: auto !important;
	width: var(--cont-width-pc-narrow02);
	margin-left:auto !important;
	margin-right:auto !important;
	padding-left:10px;
	padding-right:10px;
}
@media screen and (max-width: 767px) {
	main .conPC,
  aside .conPC{
		max-width:initial;
		padding-left:0;
		padding-right:0;
	}
	main .conSP,
  aside .conSP{
		margin-left: 20px !important;
		margin-right: 20px !important;
	}
	main .conPCS,
  aside .conPCS,
	main .conPCSS,
  aside .conPCSS{
		padding-left: 0;
		padding-right: 0;
	}
	main .conSP .conPCS,
  aside .conSP .conPCS,
  main .conSP .conPCSS,
  aside .conSP .conPCSS{
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

main .pcOnly{
	display: block;
}
main .spOnly{
	display: none;
}

@media screen and (max-width: 767px) {
	main .pcOnly{
	display: none !important;
	}
	main .spOnly{
		display: block;
	}

}


/*pjContents*/
.pjContents{
  position: relative;
}
.conBody{
  position: relative;
  z-index: 10;
}


/*セクション*/
.sec01{
	margin-bottom: 80px !important;
}
.sec02{
	margin-bottom: 50px !important;
}

.br{
  display: inline-block;
}


/*キャプション*/
.caption{
	padding: 60px 0;
}
.cap{
	font-size: 10px;
	line-height: 1.6;
	letter-spacing: normal;
}
.cap02{
	font-size: 12px;
	line-height: 1.6;
	letter-spacing: normal;
}
.cap.-type01{
  position: absolute !important;
  right: 5px;
  bottom: 2px;
}
.cap.-type02{
  position: absolute !important;
  right: 10px;
  bottom: 2px;
}
.cap.-type03{
  position: absolute !important;
  left: 5px;
  bottom: 2px;
}


.hensai{
	margin: 0 0 20px 0;
	padding: 2em;
	border: 1px solid #ccc;
}
.hensai p{
	margin-bottom: 10px;
	font-size: 1.1rem;
	text-align: left;
	letter-spacing: normal;
	line-height: 1.6;
}

/*-------------------
    SP
*/
@media screen and (max-width: 767px) {
	/*pjContents*/
	.pjContents{}
  /*.pjContents::before{
    height: 200px;
  }*/
  .conBody{
    /*padding: 40px 0 0 0;*/
  }

	
	
	/*セクション*/
	.sec01{
    margin-bottom: 60px !important;
  }
	.sec02{
		margin-bottom: 40px !important;
	}

	
	/*キャプション*/
	.caption{
		padding: 15px 0;
	}
	.cap{}
  
  .cap02{
    font-size: 11px;
  }
  .cap.-type01{
    right: 2px
  }
  .cap.-type02{
    right: 4px;
  }
	.hensai{
		padding: 1em;
	}
	.hensai p{}
	
}


/*タイトル?テキスト関連*/
.pageH{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0 0 80px 0;
  padding: 70px 0 0 0;
}
/*.pageH::before{
  content: "";
  display: block;
  width: 120px;
  height: 26px;
  background-image: url("/bunjyo/yaogi/img/cmn/con_txt_col01.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}*/
.pageH::after{
  content: "";
  display: block;
  width: 200px;
  height: 24px;
  background-color: transparent;  
  background-image: radial-gradient(circle, var(--color-key01) 1.5px, transparent 1.5px), radial-gradient(circle, var(--color-key01) 1.5px, transparent 1.5px);
  background-position: 0 3px, 4.5px 9px;
  background-size: 9px 12px;
}
.pageTtl{
  padding: 20px 0 30px 0.1em;
  text-align: center;
  font-size: clamp(calc(60px * var(--font-markup)), calc(60vw / var(--vw-pc)), 60px);/*60 / 42*/
  letter-spacing: 0.1em;
  line-height: 1.0;
  font-weight: 400;
}
.ttlEn{
  padding: 0 0 0 0.1em;
  font-size: clamp(calc(50px * var(--font-markup)), calc(50vw / var(--vw-pc)), 50px);/*50 / 36*/
  letter-spacing: 0.1em;
  line-height: 1.2;
}

.ttlEn.-type01{
  margin: 0 0 70px 0;
}
.ttlEn.-type02{
  margin: 0 0 50px 0;
}



.ttlEn02{
  padding: 0 0 0 0.1em;
  font-size: clamp(calc(60px * var(--font-markup)), calc(60vw / var(--vw-pc)), 60px);/*60 / 42*/
  letter-spacing: 0.1em;
  line-height: 1.0;
  text-align: center;
}
.ttlEn02 .fJa{
  display: block;
  padding: 10px 0 0 0.15em;
  font-size: clamp(calc(16px * var(--font-markup)), calc(16vw / var(--vw-pc)), 16px);/*16 / 14*/
  letter-spacing: 0.15em;
  line-height: 1.0;
  text-align: center;
}


/*コピー文章*/
.copy01{
	margin: 0 0 40px 0;
	font-size: clamp(calc(28px * var(--font-markup)), calc(28vw / var(--vw-pc)), 28px);/*28 / 20*/
	font-weight: normal;
	font-weight: 400;
	text-align: center;
  letter-spacing: 0.15em;
  padding-left: 0.15em;
  font-feature-settings: "palt";
}
.copy02{
	margin: 0 0 40px 0;
	font-size: clamp(calc(23px * var(--font-markup)), calc(23vw / var(--vw-pc)), 23px);/*23 / 18*/
	font-weight: normal;
	font-weight: 400;
	text-align: center;
  letter-spacing: 0.15em;
  padding-left: 0.15em;
	line-height: 1.8;
  font-feature-settings: "palt";
}
.copy03{
	font-size: clamp(calc(18px * var(--font-markup)), calc(18vw / var(--vw-pc)), 18px);/*18 / 16*/
  letter-spacing: 0.15em;
  padding-left: 0.15em;
  font-feature-settings: "palt";
}

/*リード文章*/
.lead01{
  font-size: clamp(calc(16px * var(--font-markup)), calc(16vw / var(--vw-pc)), 16px);/*16 / 15*/
}
.lead02{
	font-size: clamp(calc(15px * var(--font-markup)), calc(15vw / var(--vw-pc)), 15px);/*15 / 14*/
}
.lead03{
  font-size: clamp(calc(14px * var(--font-markup)), calc(14vw / var(--vw-pc)), 14px);/*14 / 13*/
}
.lead04{
	font-size: clamp(calc(13px * var(--font-markup)), calc(13vw / var(--vw-pc)), 13px);/*13 / 12*/
}




/*コピーの下のリード文章は下マージンあり main lead*/
.lead01.ml,
.lead02.ml,
.lead03.ml,
.lead04.ml{
	margin-bottom: 2em;
}






/*-------------------
    SP
*/
@media screen and (max-width: 767px) {
  .pageH{
    margin: 0 0 40px 0;
    padding: 30px 0 0 0;
  }
  .pageH::before{
    width: 96px;
    height: 21px;
  }
  .pageH::after{
    width: 160px;
    height: 20px;
  }
  .pageTtl{
    padding: 15px 0 20px 0.1em;
    text-align: center;
    font-size: clamp(calc(42px * var(--font-markup)), calc(42vw / var(--vw-sp)), 42px);/*60 / 42*/
  }
	
  .ttlEn{
    font-size: clamp(calc(36px * var(--font-markup)), calc(36vw / var(--vw-sp)), 36px);/*50 / 36*/
  }
  .ttlEn.-type01{
    margin: 0 0 40px 0;
  }
  .ttlEn.-type02{
    margin: 0 0 20px 0;
  }
  
  
  .ttlEn02{
    font-size: clamp(calc(42px * var(--font-markup)), calc(42vw / var(--vw-sp)), 42px);/*60 / 42*/
  }
  .ttlEn02 .fJa{
    font-size: clamp(calc(14px * var(--font-markup)), calc(14vw / var(--vw-sp)), 14px);/*16 / 14*/
  }
  
	
	/*コピー文章*/
	.copy01{
	  margin: 0 0 30px 0;
		font-size: clamp(calc(20px * var(--font-markup)), calc(20vw / var(--vw-sp)), 20px);/*28 / 20*/
	}
  .copy02{
	  margin: 0 0 30px 0;
		font-size: clamp(calc(18px * var(--font-markup)), calc(18vw / var(--vw-sp)), 18px);/*23 / 18*/
	}
	.copy03{
    font-size: clamp(calc(16px * var(--font-markup)), calc(16vw / var(--vw-sp)), 16px);/*18 / 16*/
	}
  

	/*リード文章*/
	.lead01{
    font-size: clamp(calc(15px * var(--font-markup)), calc(15vw / var(--vw-sp)), 15px);/*16 / 15*/
  }
  .lead02{
    font-size: clamp(calc(14px * var(--font-markup)), calc(14vw / var(--vw-sp)), 14px);/*15 / 14*/
  }
  .lead03{
    font-size: clamp(calc(13px * var(--font-markup)), calc(13vw / var(--vw-sp)), 13px);/*14 / 13*/
  }
  .lead04{
    font-size: clamp(calc(12px * var(--font-markup)), calc(12vw / var(--vw-sp)), 12px);/*13 / 12*/
  }
}


/*pankuzu*/
.pankuzu{}
.pankuzu ul{
  /*max-width: 1080px;*/
  max-width: 1200px;
  padding: 0 10px;
  margin: 0 auto;
  text-align: right;
}
.pankuzu ul li{
  padding: 10px 0 0 0;
  display: inline-block;
  font-size: 12px;
  text-align: right;
  line-height: 1.2;
}
.pankuzu ul li + li::before{
  content: ">";
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px;
}

/*for sp*/
@media screen and (max-width: 767px) {
  .pankuzu{}
  .pankuzu ul li{
    padding: 5px 0;
    font-size: 10px;
  }
}

/*→*/

/*btn*/


.btnList{
  display: flex;
  justify-content: center;
	/*margin: 100px 0 0 0;*/
}
.btnList .btn{
  /*width: calc((340 / 700) * 100%);
	font-size: clamp(calc(16px * 0.7), calc(16vw / 11.00), 16px);*/
  line-height: 1.0;
	text-align: center;
	vertical-align: top;
}
.btnList .btn > *{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  /*height: 70px;
  background: #cdc8be;
  color: #fff;*/
  text-decoration: none;
  cursor: pointer;
}
.btnList .btn > *::after{
  content: "";
  position: absolute;
  right: 30px;
  top: 50%;
  display: block;
  width: 30px;
  height: 7px;
  background: url("/bunjyo/yaogi/img/cmn/ico_arrow_wh.svg") no-repeat right center;
  background-size: cover;
  transform: translate(0,-50%);
  transition: var(--transition-duration01);
}
.btnList .btn > *:hover{
  /*background: var(--color-def01);*/
}
.btnList .btn > *:hover::after{
  transform: translate(5px,-50%);
}


/* for PC*/
@media print, screen and (max-width:767px) {	
  .btnList{
    display: block;
    /*width: 80%;
    margin: 40px auto 0 auto;*/
    margin-left: auto;
    margin-right: auto;
  }
  .btnList .btn{
    width:100%;
  }
  .btnList .btn + .btn{
    margin-top: 10px;
  }
  .btnList .btn > *{
    height: 50px;
    cursor: default;
  }
  .btnList .btn > *::after{
    right: 10px;
    width: 24px;
    height: 6px;
  }
  .btnList .btn > *:hover{}
  .btnList .btn > *:hover::after{}
}




/*btnCV [
----------------------------------------------------------- */
.btnCV{}

.btnReq{}


/* for sp*/
@media screen and (max-width:767px) {
  .btnCV{}
  
}






/* for SP landscape*/
@media screen and (max-width:767px) and (orientation: landscape) {}


/*planBtns
--------------------------------- */
.planList{
  padding: 150px 0;
  background: var(--color-white);
}

.planBtns{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  /*justify-content: center;*/  
  /*gap: 40px; */
  gap: 40px 0;
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
}
.planBtns::after{
  content: "";
  display: block;
  width: calc((450 / 950) * 100%);
  height: 1px;
}
.planBtns .btn{
  position: relative;
  width: calc((450 / 950) * 100%);
  /*margin-top: 40px;*/
  box-shadow: 1px 1px 2px rgba(0,0,0,0.4);
  font-family: var(--font-family-go);
}
/*.planBtns .btn:nth-of-type(-n+2){
  margin-top: 0;
}*/
.planBtns .btn > div{
  position: relative;
  background: var(--color-def04);
}
/*.planBtns .btn > div::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 10px;
  height: 100%;
  background-color: transparent;  
  background-image: radial-gradient(circle, var(--color-key01) 1.2px, transparent 1.2px), radial-gradient(circle, var(--color-key01) 1.2px, transparent 1.2px);
  background-position: 0 2.4px, 3.6px 7.2px;
  background-size: 7.2px 9.6px;
}*/
.planBtns .btn a{
  display: block;
  text-decoration: none;
  border-radius: inherit;
  overflow: auto;
  transition: var(--transition-duration01);
}


.planBtns .btn > div .unitH{
  position: relative;
  width: calc((7 / 9) * 100%);/*350/450*/
  margin: 0 auto;
}

.planBtns .btn .plaNo{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  margin: -20px auto 0 auto;
  padding: 5px 0 0 0;
  background: var(--color-key01);
  color: var(--color-white);
}
.planBtns .btn .plaNo span{
  font-size: clamp(calc(52px * var(--font-markup)), calc(52vw / var(--vw-pc)), 52px);/*52 / 46*/
}
.planBtns .btn .plaNo span::before{
  content: "No.";
  padding-left: 0.2em;
  font-size: calc((28 / 55) * 100%);
}

.planBtns .btn .plaTxt{
  position: relative;
  min-height: 52px;
  margin: 30px 0 0 0;
  font-size: clamp(calc(16px * var(--font-markup)), calc(16vw / var(--vw-pc)), 16px);/*16 / 16*/
  text-align: center;
  line-height: 1.6;
}
.planBtns .btn.btn03 .plaTxt::before,
.planBtns .btn.btn16 .plaTxt::before{
  content: "MODEL HOUSE";
  position: absolute;
  left: 50%;
  top: -1.2em;
  display: block;
  color: var(--color-key01);
  font-family: var(--font-family-en-go);
  font-size: clamp(calc(16px * var(--font-markup)), calc(16vw / var(--vw-pc)), 16px);/*12 / 11*/
  text-align: center;
  line-height: 1.0;
  transform: translate(-50%,0);
}
/*.planBtns .btn .plaTxt::after{
  content: "";
  display: block;
  width: 130px;
  height: 3px;
  margin: 25px auto 0 0;
  background: var(--color-key01);
  transition: var(--transition-duration01);
}*/


.planBtns .btn .area{
  display: flex;
  justify-content: center;
  text-align: left;
  margin: 35px 0 0 0;
}
.planBtns .btn .area li{
  position: relative;
  display:flex;
	align-items: flex-end;
  text-align: left;
  line-height: 1.0;
  font-size: clamp(calc(13px * var(--font-markup)), calc(13vw / var(--vw-pc)), 13px);/*13 / 12*/
  letter-spacing: 0.05em;
}
.planBtns .btn .area li strong{
  margin: 0 0 0 0.5em;
  font-size: clamp(calc(25px * var(--font-markup)), calc(25vw / var(--vw-pc)), 25px);/*25 / 20*/
  font-weight: normal;
  line-height: 0.8;
}
.planBtns .btn .area li span{
  font-size: calc((20 / 13) * 100%);
}

.planBtns .btn .area li + li::before{
  content: "／";
  display: inline-block;
  margin: 0 10px;
}

.planBtns .btn figure{
  position: relative;
  width: calc((420 / 450) * 100%);
  aspect-ratio: 21/11;/*420/220*/
  margin: 15px auto 0 auto;
  color: var(--color-white);
  overflow: hidden;
}
.planBtns .btn figure img{
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: var(--transition-duration01);
}
  
.planBtns .btn .more{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc((350 / 450) * 100%);
  height: 60px;
  margin: 25px auto 0 auto;
  background-color: var(--color-key01);
  border-radius: 10px 10px 0 0;
  font-size: clamp(calc(15px * var(--font-markup)), calc(15vw / var(--vw-pc)), 15px);/*15 / 15*/
  text-align: right;
  letter-spacing: 0.2em;
  transition: var(--transition-duration01);
}
.planBtns .btn .more::after{
  content: "";
  position: absolute;
  right: 15px;
  top: 50%;
  display: block;
  width: 18px;
  height: 18px;
  background-color: var(--color-def03);
  background-image: url("/bunjyo/yaogi/img/cmn/ico_arrow_wh_s.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 10px 4px;
  border-radius: 50%;
  transform: translate(0,-50%);
  transition: var(--transition-duration01);
}

@media screen and (min-width: 768px) {
  .planBtns .btn a:hover{
    opacity: 1;
    /*color: var(--color-key01);*/
  }
  /*.planBtns .btn a:hover .plaTxt::after{
    width: calc((420 / 450) * 100%);
  }*/
  .planBtns .btn a:hover figure img{
    transform: scale(1.05);
  }
  /*.planBtns .btn a:hover .more{
    margin-left: 10px;
  }*/
  .planBtns .btn a:hover .more::after{
    right: 10px;
  }
  
}

.plan01 .planBtns .btn01,
.plan02 .planBtns .btn02,
.plan03 .planBtns .btn03,
.plan04 .planBtns .btn04,
.plan05 .planBtns .btn05,
.plan06 .planBtns .btn06,
.plan07 .planBtns .btn07,
.plan08 .planBtns .btn08,
.plan09 .planBtns .btn09,
.plan10 .planBtns .btn10,
.plan11 .planBtns .btn11,
.plan12 .planBtns .btn12,
.plan13 .planBtns .btn13,
.plan14 .planBtns .btn14,
.plan15 .planBtns .btn15,
.plan16 .planBtns .btn16,
.plan17 .planBtns .btn17{
  display: none;
}

/*NEW*/
/*3,5,16*/
.planBtns .btn03::after,
.planBtns .btn05::after,
.planBtns .btn16::after,
.planBtns .btn17::after{
  content: "";
  position: absolute;
  right: 0;
  top: 35px;
  display: block;
  width: 60px;
  height: 30px;
  background: url("/bunjyo/yaogi/img/cmn/ico_plan_new02.svg") no-repeat center center;
  background-size: cover;
  /*content: "NEW";
  position: absolute;
  right: 0;
  top: 0;
  padding: 5px;
  background: var(--color-key02);
  color: var(--color-white);
  font-size: clamp(calc(12px * var(--font-markup)), calc(12vw / var(--vw-pc)), 12px);
  line-height: 1.0;*/
}
/* for sp*/
@media screen and (max-width: 767px) {
  /*.planBtns .btn03::after,
  .planBtns .btn05::after,
  .planBtns .btn16::after,
  .planBtns .btn17::after{
    font-size: 10px;
  }*/
}


/* for sp*/
@media screen and (max-width: 767px) {
  .planList{
    padding: 80px 0;
  }
  .planBtns{
    display: block;
    padding-bottom: 40px;
  }
  .planBtns .btn{
    width: 100%;
  }
  .planBtns .btn:nth-of-type(-n+2){
    margin-top: unset;
  }
  .planBtns .btn:nth-of-type(1){
    margin-top: 0;
  }
  .planBtns .btn + .btn{
    margin-top: 40px;
  }
  .planBtns .btn > div{}
  .planBtns .btn a{}

  .planBtns .btn > div .unitH{
    width: calc(100% - 20px);
  }

  .planBtns .btn .plaNo{
    width: 80px;
    height: 80px;
  }
  .planBtns .btn .plaNo span{
    font-size: clamp(calc(43px * var(--font-markup)), calc(43vw / var(--vw-sp)), 43px);/*52 / 43*/
  }
  /*.planBtns .btn .plaNo span::before{
    margin-top: 15px;
  }*/
  .planBtns .btn .plaTxt{
    min-height: initial;
    margin-top: 25px;
    font-size: clamp(calc(16px * var(--font-markup)), calc(16vw / var(--vw-sp)), 16px);/*16 / 16*/
    line-height: 1.6;
    letter-spacing: normal;
  }
  /*.planBtns .btn .plaTxt::after{
    margin-top: 15px;
  }*/
  
  

  .planBtns .btn .area{
    margin-top: 15px;
  }
  .planBtns .btn .area li{
    font-size: clamp(calc(12px * var(--font-markup)), calc(12vw / var(--vw-sp)), 12px);/*13 / 12*/
    letter-spacing: normal;
  }
  .planBtns .btn .area li strong{
    font-size: clamp(calc(21px * var(--font-markup)), calc(21vw / var(--vw-sp)), 21px);/*25 / 21*/
  }
  .planBtns .btn .area li + li::before{
    margin: 0 2px;
  }

  

  .planBtns .btn figure{
    width: calc(100% - 20px);
  }
  .planBtns .btn figure img{}

  .planBtns .btn .more{
    width: calc(100% - 20px);
    height: 50px;
    font-size: clamp(calc(15px * var(--font-markup)), calc(15vw / var(--vw-sp)), 15px);/*15 / 15*/
    letter-spacing: 0.1em;
  }
  .planBtns .btn a:active .more::after{
    right: 5px;
  }


}









.holiday{
  margin: 20px 0 0 0;
  font-size: 1.2rem;
  line-height: 1.4;
  font-feature-settings: "palt";
  text-align: center;
  color: #fff;
  }

.holiday br{
display: block;
}
	@media screen and (min-width:768px) {
	.holiday{
		font-size: 1.3rem;
		}
  .holiday br{
    display: none;
  }
}










/*set aos
--------------------------------- */
/*custom animation*/
* [data-aos="ca-slideup"] {
	transform: translateY(60px);
}
* [data-aos="ca-slideup"].aos-animate {
	transform: translateY(0);
}
* [data-aos="ca-slideleft"] {
	transform: translateX(30px);
}
* [data-aos="ca-slideleft"].aos-animate {
	transform: translateY(0);
}

* [data-aos="ca-slideright"] {
	transform: translateX(-30px);
}
* [data-aos="ca-slideright"].aos-animate {
	transform: translateY(0);
}

* [data-aos="ca-fade"] {
  opacity: 0;
}
* [data-aos="ca-fade"].aos-animate {
  opacity: 1;
}

* [data-aos="ca-fadeup"] {
	transform: translateY(60px);
  opacity: 0;
}
* [data-aos="ca-fadeup"].aos-animate {
	transform: translateY(0);
  opacity: 1;
}

/*ca-fadeup02*/
* [data-aos="ca-fadeup02"] {
	transform: translateY(60px);
}
* [data-aos="ca-fadeup02"].aos-animate {
	transform: translateY(0);
}
* [data-aos="ca-fadeup02"] img {
	 opacity: 0;
  transition-duration: .6s;
}
* [data-aos="ca-fadeup02"].aos-animate img {
	opacity: 1;
}

* [data-aos="ca-faderight"] {
	transform: translateX(-30px);
  opacity: 0;
}
* [data-aos="ca-faderight"].aos-animate {
	transform: translateX(0);
  opacity: 1;
}

* [data-aos="ca-fadeleft"] {
	transform: translateX(30px);
  opacity: 0;
}
* [data-aos="ca-fadeleft"].aos-animate {
	transform: translateX(0);
  opacity: 1;
}


/* for sp*/
@media screen and (max-width: 767px) {
	/*custom animation*/
	* [data-aos="ca-slideup"] {
		transform: translateY(30px);
	}
  * [data-aos="ca-fadeup"] {
    transform: translateY(30px);
  }
  * [data-aos="ca-fadeup02"] {
    transform: translateY(30px);
  }
  * [data-aos="ca-slideleft"] {
    transform: translateX(60px);
  }

  * [data-aos="ca-slideright"] {
    transform: translateX(-60px);
  }
  
  
  * [data-aos="ca-fadeleft"] {
    transform: translateX(60px);
  }
  * [data-aos="ca-faderight"] {
    transform: translateX(-60px);
  }


}


/*光るボタン*/
@keyframes shiny {
    0% { left: -20%; }
    10% { left: 120%; }
    100% { left: 120%; }
}

.shiny {
    position: relative;
    display: block;
    width: 100%;
    /*height: 40px;
    line-height: 40px;*/
    text-align: center;
    text-decoration: none;
    color: #ffffff;
    background-color: #384878;
    overflow: hidden;
}

.shiny::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 40px;
    height: 100%;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
    
    /* アニメーション */
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}




/*movie関連 [
----------------------------------------------------------- */
.bnrMovie{
  position: relative;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  background: #fff;
}
.bnrMovie figure{
  position: relative;
}
.bnrMovie figure figcaption{
  position: absolute;
  right: 4px;
  bottom: 4px;
  color: #fff;
  font-size: 1.0rem;
  text-align: right;
  line-height: 1.0;
}

/* モーダルを開くボタン */
body.open{
  overflow-y:hidden;
}


/* モーダル */

/* モーダルと背景の指定 */
      
      /* スクロール禁止 */
body.top.is-active,
body.planDtl.is-active{
  overflow: hidden;
}
body.top.is-active main,
body.planDtl.is-active main{
  position: relative;
  z-index: 30000;
}

      
.movieModal{
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  text-align: center;
  background: rgba(0,0,0,50%);
  padding: 20px 0;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
  z-index: 30000;
}

/* モーダルの擬似要素の指定 */
.movieModal:before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  margin-left: -0.2em;
}

/* クラスが追加された時の指定 */
.movieModal.is-active{
  opacity: 1;
  visibility: visible;
}

/* モーダル内側の指定 */
.movieModal-container{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 1200px;
  width: 95%;
}

/* モーダルを閉じるボタンの指定 */
.movieModal-close{
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -50px;
  right: 0;
  width: 40px;
  height: 40px;
  color: #fff;
  background: #000;
  border-radius: 50%;
  cursor: pointer;
  z-index: 40000;
}

/* モーダルのコンテンツ部分の指定 */
.movieModal-content{
  background: #fff;
  text-align: left;
  line-height: 1.8;
  padding: 2px;
}