@charset "UTF-8";
.ttl h2 {
  font-size:1.3rem;
}
.fv-inner {
  background:#EFEDE9;
}
.wrapper {
  width:100%;
  clip-path: ellipse(150% 100% at center top);
  position:relative;
  z-index:1;
}
.menu-bg--blue {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-position: top center;
  object-fit: cover;
}
/*----------------------------------------------------
  about
----------------------------------------------------*/
.about {
  width:calc(100% - 20px);
  height:auto;
  padding:100px 0 0 0;
  /*---
  clip-path: ellipse(130% 100% at center top);
  ---*/
  margin:0 auto;
  border-radius: 20px 20px 0 0;
  position:relative;
}
.menu-bg {
  width:30%;
  height:auto;
  position:absolute;
  top:0;
  right:0;
  mix-blend-mode:multiply;
  opacity: 0.5;
}
.about-body {
  width:90%;
  max-width:1280px;
  margin:0 auto;
  position:relative;
  z-index:1;
}
.about-col {
  width:100%;
  display:flex;
  justify-content:space-around;
  align-items:center;
  margin:0 auto 100px auto;
  position:relative;
}
.about-col__bg {
  width:40%;
  position:absolute;
  bottom:0;
  right:-5%;
}
.about-imgWrap {
  width:42.5%;
  position:relative;
  z-index:1;
}
.about-img {
  width:100%;
  overflow:hidden;
  clip-path: inset(0 0 round 0 25vh 0 25vh);
  position:relative;
  background:rgba(255,255,255,.4);
}
.about-img::after {
  display:block;
  content:'';
  width:100%;
  height:0;
  padding-top:100%;
}
.about-img > img {
  height:100%;
  position:absolute;
  top:0;
  left:0;
  object-fit:cover;
}
.about-inner {
  width:50%;
  position:relative;
  z-index:1;
}
.about-lead {
  width:100%;
  font-size:2.6rem;
  padding-bottom:10px;
  margin-bottom:20px;
  border-bottom: 1px solid #E7E7E7;
}
.about-lead > p br {
  display:none;
}
.about-txt {
  font-size:1.4rem;
}
.about-txt > p:not(:last-of-type) {
  margin-bottom:20px;
}
.about-txt > p > span {
  font-size:1rem;
}
.about-attention {
  font-size:1.2rem;
}
/*----------------------------------------------------
  case
----------------------------------------------------*/
.case {
  width:100%;
  height:auto;
  padding:0 0 200px 0;
  position:relative;
  z-index:1;
}
.case-body {
  width:90%;
  max-width:1280px;
  margin:0 auto;
  position:relative;
  z-index:1;
}
.case-ttl {
  text-align:center;
  margin-bottom:40px;
  position:relative;
}
.case-ttl > h2 {
  font-size:2.8rem;
  line-height:1.8;
  position:relative;
  z-index:1;
}
.case-ttl > span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: auto;
  height:auto;
  padding: 0 20px;
  font-size: 1.4rem;
  background: linear-gradient(45deg, #B6AC94, #B3B694);
  color: #fff;
  border-radius: 50vh 50vh 50vh 0;
  margin-bottom:5px;
}
.case-col {
  width:100%;
  height:auto;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
}
.case-item {
  width:19.5%;
  display:flex;
  flex-direction:column;
  background:rgba(255,255,255,.4);
  padding:40px 20px;
  box-sizing:border-box;
}
.case-item:nth-of-type(n+6) {
  margin-top:10px;
}
.case-item:nth-of-type(6) {
  margin-left:20.25%;
}
.case-item:last-of-type {
  margin-right:20.25%;
}
.case-item > img {
  width:70%;
  margin:0 auto 20px auto;
}
.case-item__inner {
  width:100%;
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.case-item__lead {
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.case-item__lead > span {
  font-size:1.6rem;
  color: #9F6D1E;
    background: linear-gradient(to right, #9F6D1E 0%, #FBEA82 25%, #EAD46E 50%, #C4A645 75%, #B9963A 88%, #9C6721 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.case-item__lead::before,
.case-item__lead::after {
  display:block;
  content:'';
  flex:1;
  border-top: 2px dotted #C7BCA2;
}
.case-item__lead::before {
  margin-right:10px;
}
.case-item__lead::after {
  margin-left:10px;
}
.case-item__inner > p {
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.6rem;
  font-family:"Shippori Mincho", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 400;
  font-style:normal;
  text-align:center;
  line-height:1.6;
}
/*----------------------------------------------------
  menu
----------------------------------------------------*/
.menu {
  width:100%;
  height:auto;
  padding:100px 0;
  position:relative;
}
.menu-bg2 {
  z-index:2;
}
.menu-body {
  width:90%;
  max-width:1100px;
  margin:0 auto;
  position:relative;
  z-index:2;
}
.menu-ttl {
  width:50%;
  margin:0 auto 30px auto;
}
.arrow-blink {
  width: 100%;
  height: 8px;
  margin-bottom:30px;
  position: relative;
}
.arrow-blink span {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width:16px;
  height:16px;
  border-top:16px solid #D4D1CA;
  border-right:16px solid transparent;
  border-left:16px solid transparent;
  border-bottom:16px solid transparent;
  -webkit-animation: blink 2s infinite;
  animation: blink 2s infinite;
  opacity: 0;
  box-sizing: border-box;
}
@keyframes blink {
  0% {opacity: 0;}
  50% {opacity: 1;}
  100% {opacity: 0;}
}
.menu-col {
  width:100%;
}
.menu-item {
  width:100%;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.menu-item:not(:last-of-type) {
  margin-bottom:60px;
}
.menu-img {
  width:40%;
  position:relative;
}
.menu-item2 .menu-img {
  order:2;
}
.menu-inner {
  width:55%;
}
.menu-item2 .menu-inner {
  order:1;
}
.menu-inner__lead {
  width:100%;
  display:flex;
  flex-direction:column-reverse;
  line-height:1.4;
}
.menu-inner__lead > p {
  font-size:3rem;
}
.menu-inner__sec {
  display:flex;
  align-items: center;
  font-size:1.2rem;
  color: #9F6D1E;
  background: linear-gradient(to right, #9F6D1E 0%, #FBEA82 25%, #EAD46E 50%, #C4A645 75%, #B9963A 88%, #9C6721 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin:0 auto 10px auto;
}
.menu-inner__sec::before {
  display: block;
  content: '';
  flex: 1;
  border-top: 2px dotted #C7BCA2;
  margin-right: 10px;
}
.menu-inner__txt {
  width:100%;
}
.menu-inner__txt > p:not(:last-of-type) {
  margin-bottom:20px;
}
@media screen and (max-width:1024px) {
  .about-img {
    width:100%;
    overflow:hidden;
    clip-path:inset(0 0 round 0 15vh 0 15vh);
  }
}
@media screen and (max-width:1024px) {
  /*---about---*/
  .about-col {
    width:80%;
    flex-direction:column;
  }
  .about-imgWrap {
    width:80%;
    margin:0 auto 40px auto;
  }
  .about-inner {
    width:100%;
  }
  .case-item {
    width:24.5%;
  }
  .case-item:nth-of-type(n+5) {
    margin-top:8px;
  }
  .case-item:nth-of-type(6) {
    margin-left:initial;
  }
  .case-item:last-of-type {
    margin-right:initial;
  }
}
@media screen and (max-width:896px) {
  .wrapper {
    width: 100%;
    clip-path: ellipse(210% 100% at center top);
    z-index:1;
  }
  /*---menu---*/
  .menu-body {
    width:70%;
  }
  .menu-ttl {
    width:90%;
  }
  .menu-item {
    flex-direction:column;
  }
  .menu-img {
    width:80%;
    margin-bottom:40px;
  }
  .menu-inner {
    width:100%;
  }
  .menu-item2 .menu-img {
    order:1;
  }
  .menu-item2 .menu-inner {
    order:2;
  }
  /*---case---*/
  .case-item {
    width:33%;
  }
  .case-item:nth-of-type(4) {
    margin-top:8px;
    margin-left:16.5%;
  }
  .case-item:nth-of-type(5) {
    margin-top:8px;
    margin-right:16.5%;
  }
}
@media screen and (max-width:786px) {
  /*---about---*/
  .about-imgWrap {
    width:100%;
  }
  /*---menu---*/
  .menu-body {
    width:80%;
  }
}
@media screen and (max-width:680px) {
  /*---menu---*/
  .menu-body {
    width:85%;
  }
  .case-item {
    padding:30px 10px;
  }
}
@media screen and (max-width:560px) {
  .menu-item__ttlWrap > img {
    width:60px;
  }
  .menu-item__ttl {
    width: calc(100% - 70px);
  }
}
@media screen and (max-width:480px) {
  .wrapper {
    width: 100%;
    clip-path: ellipse(320% 100% at center top);
  }
  .menu-bg {
    width: 70%;
    right:-5%;
  }
  .menu-bg2 {
    width:70%;
    height: auto;
    position: absolute;
    bottom:0;
    left: -20%;
    opacity:.5;
  }
  .about {
    padding:80px 0;
  }
  .about-ttl {
    margin-bottom:20px;
  }
  .about-col {
    width:100%;
    margin-bottom:0;
  }
  .about-imgWrap {
    width:80%;
    margin-bottom:30px;
  }
  .about-txt > p br {
    display:none;
  }
  .about-col__bg {
    width:75%;
    position:absolute;
    bottom:-10%;
    right:-10%;
  }
  .about-lead {
    font-size:2.2rem;
    text-align:center;
    line-height:1.8;
  }
  .about-lead > p br {
    display: block;
  }

  /*--case--*/
  .case {
    padding-bottom:100px;
  }
  .case-ttl {
    margin-bottom:30px;
  }
  .case-ttl > span {
    font-size:1.2rem;
  }
  .case-ttl > h2 {
    font-size:1.4rem;
    letter-spacing:0;
  }
  .case-item {
    width:49.5%;
  }
  .case-item:nth-of-type(n+3) {
    margin-top:8px;
  }
  .case-item:nth-of-type(4) {
    margin-top:8px;
    margin-left:initial;
  }
  .case-item:nth-of-type(5) {
    margin-top:8px;
    margin-right:initial;
  }
  .case-item__inner > p {
    font-size:1.3rem;
    letter-spacing:0;
  }
  /*---menu---*/
  .menu {
    margin-top:-100px;
    padding:160px 0 80px 0;
  }
  .menu-ttl {
    margin-bottom:14px;
  }
  .menu-col {
    margin-bottom:0;
  }
  .menu-img {
    width: 90%;
    margin-bottom:20px;
  }
  .menu-inner__lead > p {
    font-size:2.6rem;
  }
  .menu-inner__lead > h3 {
    font-size:1.6rem;
  }
  
  

}