@charset "UTF-8";
/*========== web font ==========*/

@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600;700&display=swap");
/*@import url("https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz@6..96&display=swap");*/
/*@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital@0;1&display=swap');*/

@import url('https://fonts.googleapis.com/css2?family=Cinzel&display=swap');
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@4.0.0/dist/css/yakuhanmp.css");


table {
  font-size: inherit;
  font: 100%;
	line-height: 1.3em;
}



body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, dt, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

img {
	 margin: 0;
	 padding: 0;
	 border: 0;
	/*width: 100%;*/
	height: auto;
	vertical-align: bottom;
	/*backface-visibility: hidden;*/
  /*image-rendering: -webkit-optimize-contrast;*/
}

.hidden {
  display: none;
}

.mgnClear {
  margin: 0px;
}

li {
  list-style-type: none;
}

/*
 * Corrects `block` display not defined in IE6/7/8/9 & FF3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
}
.clearfix {
  zoom: 1;
}
.clearfix:before, .clearfix:after {
  display: block;
  height: 0;
  visibility: hidden;
  content: "\0020";
}
.clearfix:after {
  clear: both;
}

/*android chorome　文字サイズ　バグ対策*/
h1, h2, h3, dt, h5, p {
max-height: 100%;
}

#header #headerWrap ul#mNav li a, #okudukeBox, #contentsWrap div,#contentsWrap dl,#contentsWrap dt,#contentsWrap dd, *: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;
}


.engTxt {
	/*font-family: "Bodoni Moda", serif;
  letter-spacing: 0.1em;*/
	/*font-family: "EB Garamond", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;*/
	font-family: "Cinzel", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

/*.mincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;
}*/
.gothic {
  font-family: Verdana, Roboto, "Droid Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "游ゴシック", YuGothic, sans-serif;
}

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

body {
/*  animation: fadeIn 2s ease 1s forwards;
  -webkit-animation: fadeIn 2s ease 1s forwards;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif;*/
	font-family: YakuHanMP,"Noto Serif JP" ,"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  /*font-weight: lighter;
  font-feature-settings: "palt";*/
letter-spacing: 0.1em;
	font-weight: 400;
}

.forSp {
  display: none;
}
.forPc {
  display: block;
}
p, dd {
  text-align: justify;
}
div {
  width: 100%;
}
a.anchor{
    display: block;
    padding-top: 50px;
    margin-top: -50px;
}


@media screen and (max-width : 959px ){
  body {
    padding-bottom: 60px;

  }
	.forPc {
		display: none;
	}
	.forSp {
		display: block;
	}
	.nonSp {
		display: none;
	}
	#t_live_balloon {
		display: none !important;
	}
	#top {
		padding-top: 70px;
	}
}/*Close @media screen and (max-width: 959px)*/


@keyframes fadeIn {
 0% {opacity: 0}
 30% {opacity: 0}
 100% {opacity: 1}
}



/*-------------------------------------------*/
/*-----------------　common　--------------*/
/*---------------------------------------*/
*, *:before, *:after {
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
a {
	color: #555;
	text-decoration: none;
  transition: all 0.5s;
}
a:hover {
	opacity: 0.6;
}
img {
  width: 100%;
  height: auto;
	/*max-width: 100%;*/
}
#common_ftag {
	line-height: 0;
}
#common_ftag img {
	max-width: 0px;
}
html, body {
	width: 100%;
	overflow-x: hidden;
}
body {
	font-size: 13px;
	line-height: 1.6;
	background-color: #fff;
  color: #000;

}
body::after {
	content: "";
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	transition: 0.6s;
	z-index: 9999;
	pointer-events: none;
	opacity: 0;
}
body._load::after {
	opacity: 0;
	pointer-events: none;
}
h1, h2, h3, h4, h5 {
	font-size: 100%;
	font-weight: 500;
	line-height: 1.4;
	margin: 0;
}

p {
	text-align: justify;
}

.btnBase {
  padding: 2%;
  transition: all 0.3s;
}
.btnBase:hover {

  opacity: 0.6;
}
.btnBase > img {
  width: 95%;
}

.btnSiryo {
/*background: #E2CA65;
background: linear-gradient(90deg, rgba(226, 202, 101, 1) 0%, rgba(150, 134, 65, 1) 100%);*/
	background: #8d7d71;

}
.btnSiryo:hover {

}
.btnRaijo {
	background-color: rgba(164, 126, 0, 1);
  /*background: -moz-linear-gradient(bottom,  rgba(182,139,0,1) 0%, rgba(132,107,0,1) 100%);
  background: -webkit-linear-gradient(bottom,  rgba(182,139,0,1) 0%,rgba(132,107,0,1) 100%);
  background: linear-gradient(to top,  rgba(182,139,0,1) 0%,rgba(132,107,0,1) 100%);*/
}
.btnAccess {
background: -moz-linear-gradient(top,  rgba(0,99,185,1) 0%, rgba(0,32,102,1) 100%);
background: -webkit-linear-gradient(top,  rgba(0,99,185,1) 0%,rgba(0,32,102,1) 100%);
background: linear-gradient(to bottom,  rgba(0,99,185,1) 0%,rgba(0,32,102,1) 100%);
}
.btnBlog {
background: -moz-linear-gradient(top,  rgba(0,140,95,1) 0%, rgba(0,89,62,1) 100%);
background: -webkit-linear-gradient(top,  rgba(0,140,95,1) 0%,rgba(0,89,62,1) 100%);
background: linear-gradient(to bottom,  rgba(0,140,95,1) 0%,rgba(0,89,62,1) 100%);

}
.btnGaiyo {
  background-color: #ccc;
}


.wrapWidth {
	width: 100%;
	margin: 0 auto;
}
.boxWidth {
	width: 96%;
	max-width: 1200px;
	margin: 0 auto;
}

.caption {
	font-size: 12px;
	line-height: 1.4;
	padding: 1em 0;
}
#captionBox {
	text-align: center;
  /*padding: 15px 0;*/
	padding: 0;
	text-align: center;
	background-color: #e6e6e6;
	padding-top: 30px;
}
#captionBox .caption {
	display: inline-block;
	text-align: justify;
	letter-spacing: 0em;
}
#pageTop{
  padding-top: 150px;
}
br.brSp, br.brTab {
  display: none;
}
.capImg {
	position: relative;
}
.capImg::after {
	content: 'image';
	position: absolute;
	font-size: 10px;
	color: #fff;
	right: 0.5em;
	bottom: 0.1em;
	letter-spacing: 0em;
}
.capBk::after {
	color: #000;
}

@media screen and (max-width: 959px) {
  .boxWidth {
	  width: 90%;
  }
  #pageTop{
    padding-top: 60px;
  }
  br.brTab {
    display: inherit;
  }
}
@media screen and (max-width: 599px) {
	#captionBox {
    padding: 20px 0;
}
	#captionBox .caption span.non-Sp {
		display: none;
	}
  br.brSp {
    display: inherit;
  }

}


/*========== FLEX BOX ==========*/
.flex-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.flex-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.flex-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.flex-left {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.f-vh-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}







/*-------------------------------------------*/
/*-----------------　header　--------------*/
/*---------------------------------------*/
header {
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(255,255,255,0.9);
  z-index: 10;
}
header .flex-container {
  height: 100px;
  width: 100%;
  max-width: 2400px;
  -webkit-box-align: center;
     -ms-flex-align: center;
        align-items: center;
  transition: 0.3s;
}


header .flex-container #headLogo {
  width: 33%;
  max-width: 400px;
  margin-left: 2%;
  transition: 0.3s;
}


header .flex-container #rightBox {
  width: 60%;
  /*max-width: 900px;*/
	max-width: 700px;
  /*max-width: 640px;*/
}
header .flex-container #rightBox .telBox {
  flex: 1;

}

header.fixed .flex-container {
  height: 64px;
}

header.fixed .flex-container #headLogo {
  width: 28%;
  max-width: 250px;
  margin-left: 2%;
}
header.fixed .flex-container #rightBox {
  max-width: 700px;
  max-width: 620px;
}
header.fixed .flex-container #rightBox .telBox {
  flex: 1;
  /*width: 30%;*/
	/*padding-left: 7%;*/
}


header .flex-container #rightBox ul {
  /*width: 190px;*/
	width: 12em;
}
header .flex-container #rightBox li {
 /* display:  inline-block;*/
  padding-left: 1.5em;
  line-height: 1.4;
}
header .flex-container #rightBox li a {
  font-size: 12px;
  display: block;
	position: relative;
	letter-spacing: 0;
}
header .flex-container #rightBox li:nth-child(2) a {
	pointer-events: none;
	opacity: 0.5;
}
header .flex-container #rightBox li a::before {
content: '　';
width: 1em;
background-image: url("../img/try_bk.svg");
background-position: center center;
background-repeat: no-repeat;
background-size: 50%;
}
header .flex-container #rightBox li i {
  margin-right: 0.3em;
}
header .flex-container #rightBox .headBtns {
  /*height: 100%;
	flex: 1;*/
	width: 170px;
	 
  /*padding: 15px 20px;*/
	
}
header .flex-container #rightBox .headBtns a {
  flex: 1;
  height: 100%;
  padding: 0 2.5%
  
}
header .flex-container #rightBox .headBtns a.btnRaijo {
	display: none;
	
}

header .flex-container #rightBox .headBtns a img {
  width: 70%;
}

header .flex-container #rightBox .headBtns a.btnBlog{
  display: none;
}
header .flex-container #rightBox .headBtns a.btnGaiyo {
  /*display: none;*/
}


@media screen and (max-width: 959px) {
  header .flex-container {
    transition: 0s;
  }
  header .flex-container,
  header.fixed .flex-container {
    height: 60px;
  }
  header .flex-container #headLogo,
  header.fixed .flex-container #headLogo{
    max-width: inherit;
  }
  header .flex-container #headLogo #headLogoPc {

  }
   header .flex-container #headLogo,
  header.fixed .flex-container #headLogo {
     width: 280px;
     max-width: none;
     margin: 0 auto;
     
  }
  header .flex-container #headLogo #headLogoSp {
    display: block;
    width: 240px;
    padding-top: 5px;
    margin: 0 auto;
  }
  header .flex-container #rightBox .telBox {
    display: none;
  }
	
  header .flex-container #rightBox ul {
    display: none;
  }
  header .flex-container #rightBox {
    display: none;
  }
  header .flex-container #rightBox .headBtns {
    display: none;
  }
  header .flex-container #rightBox .btnSiryo {
    display: none;
    width: 100%;
    padding: 10px 0;
  }
  header .flex-container #rightBox ul.forSp {
    display: block;
    background-color: #333;
    width: 60px;
    height: 100%;
    position: relative;
    padding: 0;
  }
  header .flex-container #rightBox ul.forSp li {
    padding: 0;
    text-align: center;
  }
  header .flex-container #rightBox ul.forSp img {
    width: 85%;
    
  }
  
  

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


/*-------------------------------------------*/
/*-----------------　ナヴィ　--------------*/
/*---------------------------------------*/
nav {
  /*background-color: #4E4B4A;*/
	background-color: #4d4951;
  /*padding: 1em 0;*/

  
}
header nav ul.flex-container {
height: 50px;
  max-width: 1400px;
}
nav.navfoot ul.flex-container {
height: 50px;
  max-width: 1400px;
}
nav ul li {
height: 100%;
  text-align: center;
  display: inline-block;
  flex-grow: 1;
  position: relative;
}
nav ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 30%;
  width: 1px;
  height: 40%;
  background-color: #777;
}
nav ul li:last-child::after {
  content: '';
  position: absolute;
  right: 0;
  top: 30%;
  width: 1px;
  height: 40%;
  background-color: #777;
}
nav a {
  color: #fff;
  font-size: 0.8vw;
  font-size: clamp(12px, 1vw, 17px);
  display: block;
  width: 100%;
  height: 100%;
  display: flex;
justify-content: center;
align-items: center;
  
}
nav a:hover {
	background-color: #999;
	opacity: 1;
}



nav ul li a.soon{
  pointer-events: none;
  opacity: 0.3;
}

#toppage nav ul li:nth-of-type(1) a,
#concept nav ul li:nth-of-type(2) a,
#location nav ul li:nth-of-type(3) a,
#planning nav ul li:nth-of-type(4) a,
#design nav ul li:nth-of-type(5) a,
#roomplan nav ul li:nth-of-type(6) a,
#modelroom nav ul li:nth-of-type(7) a,
#zeh-m nav ul li:nth-of-type(8) a,
#equipment nav ul li:nth-of-type(9) a,
#structure nav ul li:nth-of-type(10) a,
#brand nav ul li:nth-of-type(11) a{
  background-color: #e2ca65;
  color: #000;
}
#toppage nav ul li:nth-of-type(1)::before,
#concept nav ul li:nth-of-type(2)::before,
#location nav ul li:nth-of-type(3)::before,
#planning nav ul li:nth-of-type(4)::before,
#design nav ul li:nth-of-type(5)::before,
#roomplan nav ul li:nth-of-type(6)::before,
#modelroom nav ul li:nth-of-type(7)::before,
#zeh-m nav ul li:nth-of-type(8)::before,
#equipment nav ul li:nth-of-type(9)::before,
#structure nav ul li:nth-of-type(10)::before,
#brand nav ul li:nth-of-type(11)::before{
  display: none;
}




nav ul a.new:after
{
content: '';
position: absolute;
left: calc(50% - 35px);
top: -14%;
width: 70px;
height: 16px;
text-align: center;
color: #fff;
background-image: url("../img/icon-new.svg");
background-position: center center;
background-repeat: no-repeat;
background-size: 80%;
}
/*nav {
  height: 41px;
  background-color: #E6E6E6;
  transition: all 0.3s;
  left: 0;
  top:100px;
  z-index: 11;
}

nav.fixed {
  position: fixed;
  top: 0;
  z-index: 100;
}
nav ul{
  width: 98%;
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 6px;

}

nav ul li{
  border-right: #fff solid 1px;
  position: relative;
  flex-grow: 1;
}
nav ul li:nth-of-type(1){
  border-left: #fff solid 1px;
  width: 20.2%;
}

*/
nav.fixed {
  position: fixed;
  top: 0;
  z-index: 100;
}
header.fixed nav {
  height: 32px;
  padding: 0;
}
header.fixed nav ul {
  /*padding-top:1px;*/
}
header.fixed nav a {
  height: 32px;
}

header.fixed nav ul.flex-container {
  height: 32px;
}
header.fixed nav ul.flex-container a {
  font-size: clamp(12px, 0.9vw, 14px);
}
header.fixed nav ul.flex-container a:after {
	top: -20%;
	width: 50px;
	left: calc(50% - 25px);
}






@media screen and (max-width: 959px) {
  nav {
    display: none;
  }
}


/*-------------------------------------------*/
/*-----------------　yokoku　--------------*/
/*---------------------------------------*/
.bottomBtn {
	padding-top: 60px;
}

#yokokuWrap {
  display: none;
}


#toppage #yokokuWrap,
#outline #yokokuWrap{
  padding-bottom: 50px;
  display: block;

}
#toppage #yokokuWrap{
	background-color: #f2ede3;
}
#yokokuWrap dl {
  text-align: center;
  padding: 0 0 10px 0;
}
#yokokuWrap dt {
  font-size: 24px;
}
#yokokuWrap dd {
  text-align: center;
  padding-top: 1em;
  font-size: 12px;
	letter-spacing: 0em;
}
#yokokuWrap .captionAdd {
  text-align: center;
}
@media screen and (max-width : 599px ){
	#yokokuWrap dt {
		font-size: 18px;
	}
	#yokokuWrap dd {
    padding-top: 1em;
    font-size: 12px;
		letter-spacing: 0em;
	}
}


/*-------------------------------------------*/
/*-----------------　footer　--------------*/
/*---------------------------------------*/

.captionBox {
  text-align: center;
  margin-bottom: 30px;
}
.captionBox p {
  display: inline-block;
}

footer {
  background-color: #fff;
}
footer .flex01 {
  max-width: 1600px;
  padding: 20px 0;
  align-items: center;
}
footer .flex02 {
width:50%;
  max-width: 600px;
  align-items: stretch;
}
footer .flex02 h5 {
  width: 100%;
  background-color: #000;
  text-align: center;
  padding: 0.3em 0;
  margin-bottom: 5px;
}
footer .flex02 h5 img {
  width: 95%;
  max-width: 400px;
  vertical-align: middle;
}
footer .flex02 .logo01 {
  width: 54%;
}
footer .flex02 .logo01 p,footer .flex02 .logo02 p {
  font-size: 1.2vw;
	font-size: clamp(12px, 1.2vw, 13px);
	padding-bottom: 0.5em;
}
footer .flex02 .logo02 {
  width: 40%;
}
footer .flex02 .logo02 p {
	padding-bottom: 1.5em;
}
footer .flex02 .logo03 {
  width: 25%;
}
footer .risBox {
  width: 17%;
}

footer .flex01 .telNum {
  width: 30%;
  max-width: 360px;
}
footer .flex01 .telNum a {
  pointer-events: none;
}
footer .cRight {
  background-color: #4f4c4b;
  text-align: center;
  color: #fff;
  font-size: 10px;
  padding: 1em 0;
}


#goPageTop {
	position: fixed;
	right: 0px;
	z-index: 8;
	bottom: 7px;/*margin-left: 600px;*/
	width: 40px;
  opacity: 0;
}
#goPageTop a {
	height: 30px;
	width: 30px;
	border-radius: 50%;
	background-color: #fff;
	display: block;
	text-align: center;
	padding-top: 0px;
  opacity: 0.6;
  transition: all 0.3s;
}
#goPageTop a img {
	width: 100%;
}
#goPageTop a:hover {
	opacity: 0.9;
}




@media screen and (max-width : 959px ){
  #goPageTop {
	  bottom: 80px;
  }
  footer .flex01 {
    max-width: 420px;
    padding: 20px 0;
  }
  footer .flex02 {
    width: 100%;
		max-width: 100%;
  }
  footer .flex02 .logo01 {
    width: 80%;
    margin: 0 auto;
    padding: 5px 0 15px;
  }
	footer .flex02 .logo01 p {
		text-align: center;
}
  footer .flex02 .logo02 {
   width: 70%;
    margin: 0 auto;
    padding: 10px 0 20px;
  }
	footer .flex02 .logo02 p {
		text-align: center;
	padding-bottom: 0.5em;
}
  footer .flex02 .logo03 {
    width: 66%;
    margin: 10px auto;
    padding: 5px 0;
    border-top: #999 solid 1px;
    border-bottom: #999 solid 1px;
  }
  footer .risBox {
    width: 64%;
    margin: 0 auto;
  }
  footer .flex01 .telNum {
    width: 100%;
    max-width: inherit;
    padding: 3% 0;
  }
  footer .flex01 .telNum a {
    pointer-events: inherit;
  }

}
footer .flex02 .logo03Sp {
  display: block;
}


@media screen and (max-width : 599px ){
  footer .flex-container .logo {
    width: 70%;
    max-width: 300px;
    margin: 0 auto;
  }
  footer .flex-container .telNum {
    margin: 0 auto;
    padding-top: 20px;
  }
	footer .flex02 .logo01 {
		width: 90%;
		max-width: 300px;
	}
	footer .cRight {
		font-size: 10px;
		font-size: clamp(8px, 2.6vw, 10px);
	}



 
}


/*========================================*/
/*=============== SpMenu ==================*/
/*=========================================*/

#navBtnSpWrap {
  display: none;
}
@media screen and (max-width : 959px ){
  #navBtnSpWrap {
    display: block;
    position: fixed;
    width: 100%;
    left: 0;
    bottom: 0;
    z-index: 12;
    background-color: #000;
  }
  #navBtnSpWrap #navBtnSpBox {
    padding: 0;
    border-top: #ccc solid 1px;
  }
  #navBtnSpWrap #navBtnSpBox li {
    /*width: calc(100% / 4);*/
		width: calc(100% / 3);
    border: none;
    border-right: #ccc solid 1px;
    background-color: #fff;
  }
  /*#navBtnSpWrap #navBtnSpBox li:nth-last-child(3){
     display: none;
  }*/
   #navBtnSpWrap #navBtnSpBox li:last-child {
     border: none;
  }
  /*#navBtnSpWrap #navBtnSpBox li:nth-of-type(3) {
    opacity: 0.3;
    pointer-events: none;
  }*/
  #navBtnSpWrap #navBtnSpBox li a {
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
    height: 60px;
    /*padding-top: 3px;*/
display: flex;
justify-content: center;
align-items: center;

  }
  #navBtnSpWrap #navBtnSpBox li a:hover {
    opacity: 1;
  }
    #navBtnSpWrap #navBtnSpBox li:nth-of-type(1) a {
      /*background-color: #b4a150;*/
			    background: #8b7d71;

  }
  #navBtnSpWrap #navBtnSpBox li:nth-of-type(2) a {
   /*     background: #E83828;
    background: linear-gradient(90deg, rgba(232, 56, 40, 1) 0%, rgba(164, 0, 0, 1) 43%);*/
		background: #C71D15;
background: linear-gradient(90deg, rgba(199, 29, 21, 1) 0%, rgba(143, 0, 0, 1) 70%);
		
		
  }
  #navBtnSpWrap #navBtnSpBox li:nth-of-type(3) a {

  }
    #navBtnSpWrap #navBtnSpBox li:nth-of-type(4) a {


  }
	 #navBtnSpWrap #navBtnSpBox li:nth-of-type(2) {
    display: none;
  }

    #navBtnSpWrap #navBtnSpBox li a > img {
      width: 70%;
      max-width: 70px;
  }
  
/*  #navBtnSpWrap #navBtnSpBox li:nth-of-type(4) a #lineBox {
    background-color: aliceblue;
    position: absolute;
    left: 0;
    right: 0;
    top: 25%;
    margin: auto;
    width: 35%;
    max-width: 35px;
    height: 30%;
    max-height: 20px;
  }
  #navBtnSpWrap #navBtnSpBox li:nth-of-type(4) a #lineBox span {
    width: 100%;
    height: 2px;
    background-color: #555;
    position: absolute;
    left: 0;
    right: 0;
    top:0;
    bottom: 0;
    margin: auto;
  }
  #navBtnSpWrap #navBtnSpBox li:nth-of-type(4) a #lineBox:before {
    content: '';
    width: 100%;
    height: 2px;
    background-color: #555;
    position: absolute;
    left: 0;
    right: 0;
    top:0;
    margin: auto;
    transform:rotate(45deg);
    transform-origin:left top;
    
  }
  #navBtnSpWrap #navBtnSpBox li:nth-of-type(4) a #lineBox:after {
    content: '';
    width: 100%;
    height: 2px;
    background-color: #555;
    position: absolute;
    left: 0;
    right: 0;
    bottom:0;
    margin: auto;
    
  }*/
  
  #navBtnSpWrap #navBtnSpBox {
  }
  
  
}
/*=============================
.btn-trigger
=============================*/
.btn-trigger {
  position: absolute;
left: 0;
    right: 0;
    top: 20%;
    margin: auto;
    width: 55%;
/*    max-width: 35px;*/
    height: 20px;
  cursor: pointer;
}
.btn-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #fff;
  border-radius: 4px;
}
.btn-trigger, .btn-trigger span {
  display: inline-block;
  transition: all .5s;
  box-sizing: border-box;
}
.btn-trigger span:nth-of-type(1) {
  top: 0;
}
.btn-trigger span:nth-of-type(2) {
  top: 8px;
}
.btn-trigger span:nth-of-type(3) {
  bottom: 0;
}




/*========================================*/
/*=============== MenuSp ==================*/
/*=========================================*/
#menuSp {
  display: none;
  
}
@media screen and (max-width : 959px ){
  #menuSp {
    display: block;
    position: fixed;
    width: 100%;
    bottom: -100vh;
    left: 0;
    transition: all 0.5s;
    /*z-index: 10;*/
    
    z-index: 9;
    max-height: calc(100% - 120px);
    overflow-y: auto;

    height: calc(100% - 120px);
    overflow-y: auto;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    background-color: rgba(0,0,0,0.5);
  }
  #menuSp.active {
    bottom: 60px;
  }
  #menuSp ul {
    background-color: #333;
    width: 100%;
  }
  #menuSp li {
    width: 50%;
    border-bottom:#555 solid 1px;
  }
  
  #menuSp li a {
    display: block;
    width: 100%;
    text-align: center;
    color: #fff;
    padding: 0;
    background-color: #333;
    /*border-top:#555 solid 1px;*/
    position: relative;
    line-height: 1.2;
    height: 4em;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  /*#menuSp li:last-child {
    width: 100%;
    border-bottom:#555 solid 1px;
    padding: 8px;
    display: none;
  }*/
/*  #menuSp li:last-child a {
background: linear-gradient(to right,  rgba(216,194,112,1) 0%,rgba(239,232,177,1) 50%,rgba(216,194,112,1) 100%);
    color: #000;
    font-size: 14px;

  }*/
   #menuSp li:nth-child(odd) {
    border-right:#555 solid 1px;
  }
 /* #menuSp li:nth-child(odd) a {
    border-right:#555 solid 1px;
  }*/

 
		#menuSp li a.new:after
  {
    content: '';
    position: absolute;
    right: 0px;
    top: 0;
    width: 60px;
    height: 15px;
    text-align: center;
    color: #fff;
    background-image: url("../img/icon-new.svg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
  }
  
  #menuSp li a:hover {
    background-color: #555;
  }



	#menuSp li a.soon {
  	pointer-events: none;
  	opacity: 0.3;
  }
}






/*========================================*/
/*=============== ページ下部ボタン ==================*/
/*=========================================*/
#btnswrap {
  background-color: #e6e6e6;
  color: #555;
  padding: 50px 0;
}
#btnswrap #btnsBox {
  /*width: 80%;
  max-width: 560px;*/
  width: 40%;
  max-width: 300px;
}
#btnswrap #btnsBox a {
  transition: 0.3s all;
  padding: 8% 10%;
  /*width: 49%;*/
  width: 100%;
}
#btnswrap #btnsBox a:nth-child(2) {
  display: none;
}
#btnswrap #btnsBox a img {
  width: 75%;
}
#btnswrap #btnsBox a:hover {
  opacity: 0.5;
}
#btnswrap #captionBox {
  padding: 30px 0 0;
}
#btnswrap #captionBox p {
  color: #555;
}

.btnsBox a.try{
  position: relative;
}
.btnsBox a.try::after{
  content: '';
  position: absolute;
  right: 5%;
  width: 5.4%;
  height: 100%;
  background-image: url("../img/try.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100%;
  
}

.btnsBox {
  max-width: 600px;
	/*max-width: 300px;*/
}
.btnsBox a {
  /*width: 49%;*/
  width: 100%;
  max-width: 340px;
  height: 66px;
  margin: 10px auto;
}
.btnsBox a:last-child {
  display: none;
}

.btnsBox a  img{
  width: 70%;
}

@media screen and (max-width: 959px) {}
@media screen and (max-width: 599px) {
  #btnswrap {
    padding: 0;
  }
  #btnswrap .btnsBox {
      display: none;
    }
  #btnswrap #captionBox {
      padding: 0;
  }
}


/*========================================*/
/*=============== 第二階層 ==================*/
/*=========================================*/

#pageTit {
/*	background: #FFFFFF;
background: linear-gradient(270deg, rgba(255, 255, 255, 1) 0%, rgba(180, 162, 80, 1) 100%);*/
	background: #f3eee3;
	padding: 2em;
}
#pageTit h2 {
	text-align: center;
	font-size: 28px;
	color: #000;
}
#headImg {
  position: relative;
  display: block;
}
#headImg h2 {
  position: absolute;
  width: 32%;
  max-width: 320px;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
z-index: 1;
	  width: 50%;
  max-width: 460px;
  
}
#headImg img {
  width: 100%;
}

#pageTitle {

  padding: 60px 0;
}
#pageTitle h2 {
  text-align: center;
color: #BCAD7C;
  font-size: 30px;
  letter-spacing: 0.2em;
	padding-left: 0.2em;
}
#pageTitle h2 span {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 14px;
}
/*#yokokuBox {
  padding: 30px 0 60px;
  text-align: center;
  border-top: #ccc solid 1px;
}
#yokokuBox dt {
  display: inline-block;
  padding: 0 0.5em;
  margin: 15px auto;
  text-align: center;
  font-size: 24px;
  letter-spacing: 0.2em;
  border-left: #555 solid 1px;
  border-right: #555 solid 1px;
}
#yokokuBox dd {
  text-align: center;
  font-size: 12px;
}*/


@media screen and (max-width: 959px) {
}
@media screen and (max-width: 599px) {
	#pageTit {
		padding: 0.8em;
	}
	#pageTit h2 {
		font-size: 5.1vw;
    font-size: clamp(18px, 5.1vw, 20px);
	}
  #headImg h2 {
   width: 100%;
max-width: 400px;

  }
  #pageTitle {
    padding: 10px 0;
  }
  #pageTitle h2 {
    padding-top: 1em;
    font-size: 21px;
  }
  #pageTitle h2 span {
    font-size: 12px;
  }
  /*#yokokuBox dt {
    font-size: 18px;
  }
  #yokokuBox dd {
    font-size: 10px;
    text-align: justify;
  }*/
}
