@charset "UTF-8";
* { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
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, 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, section, summary, time, mark, audio, video { margin: 0; padding: 0; font: inherit; word-wrap: break-word; border: 0; vertical-align: baseline; outline: none; }
body { padding: 0; margin: 0; color: #615c61; font-size: 3.4vw; font-family: 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; font-weight: 400; font-style: normal; line-height: 1; -webkit-text-size-adjust: 100%; }
_:-ms-lang(x)::-ms-backdrop, body { font-family: "メイリオ", Meiryo, sans-serif; }
article, aside, canvas, details, figcaption, figure, header, footer, hgroup, main, menu, nav, section, summary { display: block; }
blockquote, q { quotes: none; }
strong, b { font-weight: bold; }
ul, ol, li { list-style: none; }
table { border-spacing: 0; border-collapse: collapse; }
img, video, object { height: auto; border: none; display: block; }
ins { background: none; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
hr { height: 1px; padding: 0; margin: 1em 0; border: 0; border-top: 1px solid #ccc; display: block; }
*:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; -moz-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
a {color: var(--brown01);text-decoration: none;display: block;-moz-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97);-o-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97);-webkit-transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97);transition: all 0.4s cubic-bezier(0.05, 0.05, 0.31, 0.97);}
a:hover { opacity: 0.6; }
.clearfix:after { content: ''; display: block; clear: both; }
.pc { display: none; }
.sp { display: block; }
img {max-width:100%;}

.top-greeting-crown-items li:nth-child(2) { -moz-transition-delay: 0.2s; -o-transition-delay: 0.2s; -webkit-transition-delay: 0.2s; transition-delay: 0.2s; }
.top-greeting-crown-items li:nth-child(3) { -moz-transition-delay: 0.4s; -o-transition-delay: 0.4s; -webkit-transition-delay: 0.4s; transition-delay: 0.4s; }


/* midashi
----------------------------------------------- */
.midashi01 {margin: 0;text-align: center;color: #584e43;letter-spacing: 0.1vw;}
.midashi01 .en {display:block;font-size: 10vw;line-height: 1.28;font-family: "Cormorant Infant";}
.midashi01 .jp {display:block;line-height: 1.2;}



/* root
----------------------------------------------- */
:root {
--mincho: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", serif;
--gothic: "Noto Sans", 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
--orange01: #e48202;
--brown01: #663a1c;
}


/* fade
----------------------------------------------- */
.fade { opacity: 0; -moz-transition: 1.2s; -o-transition: 1.2s; -webkit-transition: 1.2s; transition: 1.2s; }
.fade-left { -moz-transform: translateX(-10px); -ms-transform: translateX(-10px); -webkit-transform: translateX(-10px); transform: translateX(-10px); }
.fade-right { -moz-transform: translateX(10px); -ms-transform: translateX(10px); -webkit-transform: translateX(10px); transform: translateX(10px); }
.fade-bottom { -moz-transform: translateY(10px); -ms-transform: translateY(10px); -webkit-transform: translateY(10px); transform: translateY(10px); }
.fade-active { opacity: 1; -moz-transform: translate(0); -ms-transform: translate(0); -webkit-transform: translate(0); transform: translate(0); }



/* cv
----------------------------------------------- */
.cv{width: 80%; margin: 0 auto;}



/* sp
----------------------------------------------- */

.header{width: 100%;position: fixed;z-index: 3;background-color: rgba(255, 255, 255, 0.9);}
.header .inner{padding: 2vw;display: -webkit-flex;display: flex;-webkit-justify-content: space-between;justify-content: space-between;-webkit-align-items: center;align-items: center;}
.header .logo{width: 42%;}
.header .tel{width: 10%;}
.header.active {background-color: rgba(255, 255, 255, 0.9);}

.hero{background: url(../images/hero.jpg)no-repeat top center;background-size: cover;padding: 62vw 0;}

.intro{position: relative;background: url(../images/intro.jpg)no-repeat top center;background-size: cover;padding: 25vw;}
.intro a{position: absolute;transform: translateX(-50%);top: 28vw;left: 50%;width: 75%;}

.slider{background: #fbf0d2;padding: 8vw 0 2vw;}
.slider .inner{margin-bottom: 5vw;}
.slider .slid-items img{width: auto;height: 50vw;margin: 0 1.5vw;}
.slider .slick-slider{margin-top: 0;}
.slider .tit{width: 95%;margin: 0 auto;}


.twostyles{background: url(../images/twostyles.jpg)no-repeat top center;background-size: cover;padding: 55.1vw 0;}
.flat{background: url(../images/flat.jpg)no-repeat top center;background-size: cover;padding: 123.4vw 0;}
.farm{background: url(../images/farm.jpg)no-repeat top center;background-size: 260%;padding: 134vw 0;}

.concept{position: relative;background: url(../images/concept.jpg)no-repeat top center;background-size: cover;padding: 99vw 0;}
.concept a{position: absolute;transform: translateX(-50%);top: 82%;left: 50%;width: 75%;}

.point01{background: url(../images/point01.jpg)no-repeat top center;background-size: cover;padding: 91vw 0;}
.point02{position: relative;background: url(../images/point02.jpg)no-repeat top center;background-size: cover;padding: 116vw 0;}
.point02 a{position: absolute;transform: translateX(-50%);top: 88%;left: 49%;width: 75%;}

.media{position: relative;background: url(../images/media.jpg)no-repeat top center;background-size: cover;padding: 79vw 0;margin-top: -5vw;}

.flow{position: relative;background: url("../images/flow_bg.jpg") no-repeat top center;background-size: 262%;padding:178vw 0;}
.flow .flow-ex{width: 62%;position: absolute;top: 247px;left: 92px;}
.flow .flow-ex dd{line-height: 1.4;text-align: justify;color: var(--brown01);margin-bottom: 6vw;}
.flow .flow-ex dd a{display: inline; font-weight: 600;border-bottom: 1px solid var(--brown01);}
.flow .flow-ex dd span{display: block;font-size:6vw;font-weight: 600; color: var(--orange01);margin: 1vw 0;}
.flow a.flow-cv{position: absolute;transform: translateX(-50%);top: 92%;left: 50%;width: 75%;}

.review{position: relative;background: url("../images/review.jpg")no-repeat top center;background-size: cover;padding: 38vw 0;}
.reviewimg {width: 83vw;margin: 0;}
.review a{position: absolute;transform: translateX(-50%);top: 86%;left: 50%;width: 75%;}

.faq-list {margin: 0 auto;padding: 12vw 5vw;background: #fbf1d2;}
.faq-list img{width: 35%;margin: 0 auto 10vw;}
.faq-list dl {margin: 0 auto 8%;}
.faq-list dt {position: relative;background: #fff;padding: 1.8% 4%;font-weight: bold;}
.faq-list dt p:before{content: "";background: url(../images/q.png)no-repeat center center;background-size: 100%;padding: 1vw 2.5vw;margin-right: 2vw;}
.faq-list dt p {margin-bottom: 0;line-height: 1.2;font-size: 4vw;color: var(--brown01);position: relative;}
.faq-list dd {padding-top: 1vw;}
.faq-list dd p:last-child {margin-bottom: 0;font-size: 3.4vw;line-height: 1.8;color: var(--brown01);}
.faq-list dd p span { font-weight: bold; }

.access{background: url("../images/access_bg.jpg")no-repeat top center;background-size: cover;padding: 15vw 5vw;margin-bottom: 12vw;}
.access img{width: 50%;margin: 0 auto 10vw;}
.access ul {margin: 0 auto;position:relative !important;font-size: 3.4vw;}
.access li{display: -webkit-flex;display: flex;-webkit-justify-content: flex-start;justify-content: flex-start;-webkit-align-items: flex-start;align-items: flex-start;margin-bottom: 3vw;padding-bottom: 3vw;border-bottom: 1px solid #bcb7b1;}
.access .tit,.access p {letter-spacing: 0.02em;text-align: justify;font-size: 3.4vw;color: var(--brown01);padding: 2vw 3vw;}
.access .tit {width: 30%;background: var(--orange01);color: #fff;font-weight: bold;text-align: center;padding: 2vw;}
.access .tit span{text-align:center;color: #fff;font-weight: 600;background: var(--orange01);}
.access p span{display: inline-block;margin-bottom: 2vw;}
.access p .off{padding-left: 5.1em;text-indent: -5.1em;line-height: 1.8;}
.access p .tel{font-size: 120%;font-weight: bold;margin-bottom: 3vw;}
.access p .tel a:before {margin-right: 2px;font-family:icon;content:'\f095';color: var(--brown01);}
.access li:last-child {margin: 0;padding: 0;border: none;}
.access .map{height: 60vw;}

.contact{padding: 5vw;}
.contact img{width: 65%;margin: 0 auto 8vw;}
.contact .menu{display: -webkit-flex;display: flex;-webkit-justify-content: center;justify-content: center;}
.contact .menu li{border-left: 1px solid #000;}
.contact .menu li:first-of-type{border: none;}
.contact li a{padding: 0 3vw;}
.formbox .contact-att {font-size: 3.2vw;line-height: 1.5;font-feature-settings: "palt" 1;letter-spacing:0.02em;text-align: left;margin-bottom: 0;}
.formbox .contact-att a{margin-left: 0!important;display: inline-block;}
.formbox .contact-att a:after {content: "\f08e";margin: 0 4px;font-family:icon;display: inline-block; }
.formbox .contact-att span.bold { display: block; font-weight: bold; }
.formbox .contact-att span.red {background: #f5ece6;padding: 1px 2px;font-weight: bold;}

.fixe .cvitems{width: 100%;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;margin: 0 auto;}
.fixe .cvitems li{width: calc(100% / 3);}
.fixe{position: fixed;z-index: 25;bottom: 0;}
.fix{opacity: 0;visibility: hidden;-moz-transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1);-o-transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1);-webkit-transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1);transition: all 0.4s cubic-bezier(0.76, 0, 0.24, 1);}
.fix.active {opacity: 1;visibility: visible;}


.footer{background: var(--orange01);padding: 3vw 0 20vw;}
.second-warp .footer{padding: 3vw 0;}
.footer .copy{text-align:center;font-size: 3vw;color: #fff;line-height: 1.2;letter-spacing: 0.1em;}



/* from
----------------------------------------------- */
.formbox{padding: 5% 0;}
.formintor{margin: 0 auto 8vw;text-align:justify;text-justify:inter-ideograph;}
.formintor p{margin: 0 auto 3vw;line-height: 1.8;font-size: 3.4vw;}


/* thanks
----------------------------------------------- */

.second-hero {background: #fbf0d2;padding: 25vw 6vw 12vw;width: 100%;}
.second-hero-title {width: 100%;text-align: center;font-size: 8vw;font-weight: 300;letter-spacing: 0.04em;display: block;}

.second{min-height: 100vw;padding: 6vw 5vw;}
.second-text{max-width: 760px;margin: 0 auto;line-height: 1.7;text-align: center;}
.second-text p:first-child{margin-bottom: 6vw;}
.second-text .more01{background: var(--orange01);margin: 15% auto 0;text-align: center;color: #fff;padding: 3% 0;font-size: 4vw;font-weight: bold;border-radius: 70px;position: relative;}

/* =============================================
pc-size
================================================*/
@media screen and (min-width: 736px) { 
body{font-size: 16px;}

/* midashi
----------------------------------------------- */
.midashi01 {margin: 0; text-align: center;}
.midashi01 .en {font-size: 48px;letter-spacing: 1px;}
.midashi01 .jp {font-size: 18px;}

#top{max-width: 2000px; margin: 0 auto;}

.header{max-width: 2000px;width: 100%;}
.header .inner{max-width: 760px;padding: 15px;margin: 0 auto;}
.header .tel{width: auto;}

.hero{background-size: 2000px;padding: 470px;}

.intro{background-size: 2000px;padding: 190px;}
.intro a{top: 210px;width: 600px;}


.slider{padding: 60px 0 20px;}
.slider .inner{margin-bottom: 30px;}
.slider .slid-items img{width: auto;height: 360px;margin: 0 10px;}
.slider .slick-slider{margin-top: 0;}
.slider .tit{width: 700px;}

.twostyles{background-size: 2000px;padding: 419px 0;}
.flat{background-size: 2000px;padding: 939px 0;}
.farm{background-size: 2000px;padding: 1010px 0;}

.concept{background-size: 2000px;padding: 731px 0;}
.concept a{top: 1222px;width: 600px;}
.point01{background-size: 2000px;padding: 665px 0;}
.point02{background-size: 2000px;padding: 848px 0;}
.point02 a{top: 1490px;width: 600px;}

.media{background-size: 2000px;padding: 600px 0;margin: 0;}
	
.flow{background-size:2000px;padding:1360px 0;}
.flow .flow-ex{width: 474px;top: 506px;left: 50%;transform: translateX(-194px);}
.flow .flow-ex dd{margin-bottom: 76px;font-size: 20px;}
.flow .flow-ex dd span{font-size: 28px;margin: 10px 0;}
.flow a.flow-cv{bottom: 91020px;width: 600px;}

.review{background-size: 2000px;padding: 290px 0 270px;}
.reviewimg {width: 650px;}
.review a{top: 1240px;width: 600px;}

.faq-list {width: 100%;max-width: 2000px;padding: 100px 0 70px;}
.faq-list img{margin-bottom: 60px;width: 220px;}
.faq-list dl {margin: 0 auto 35px;max-width: 760px;width: 90%;}
.faq-list dt {padding: 15px 25px;font-size: 16px;}
.faq-list dt p {font-size: 30px;}
.faq-list dt p:before{margin-right: 10px;padding: 2px 16px;}
.faq-list dd {font-size: 27px;padding: 10px 0 15px;}
.faq-list dd p:last-child {font-size: 24px;}

.access{background-size: 2000px;padding: 130px 0 130px;margin-bottom: 40px;}
.access img{margin-bottom: 60px;width: 350px;}
.access ul {max-width: 760px;width: 90%;font-size: 14px;margin: 0 auto 15px;}
.access ul:before {width: 200px;}
.access li{margin-bottom: 20px;padding-bottom: 20px;}
.access .tit,.access p {font-size: 24px;padding: 15px 25px;}
.access p span{margin-bottom: 12px;}
.access p .tel{margin-bottom: 20px;}
.access .tit {text-align:center;font-size: 26px;width: 26%;padding: 8px;}
.access .map{max-width: 760px;width: 90%;height: 420px;margin: 0 auto;}

.contact{max-width: 760px;margin: 0 auto;width: 90%;padding: 100px 0 50px;}
.contact img{width: 450px;margin-bottom: 30px;}
.contact li a{padding: 0 20px;font-size: 24px;}

.conjunction .cv{bottom: 55px;}

.contact01 .cv{bottom: 75px;}
.formbox .contact-att {font-size: 18px;line-height: 1.8;margin-bottom: 0;}

.closing .cv{bottom: 45px;}

.fixe .cvitems{width: 100%;}
.fixe .cvitems li{width: calc(100% / 3);}
.fixe{position: fixed;z-index: 25;bottom: 0;}

.second-warp .footer{padding: 30px;}
.second-warp p{font-size: 24px;}
.footer{padding: 20px 100px;}
.copy{font-size: 18px;text-align:center;}
.footer .copy{font-size: 16px;}
.fixe .cvitems{width: 570px;}


/* from
----------------------------------------------- */
.formintor{margin: 0px auto 40px;}
.formintor p{margin: 0 auto 10px;font-size: 24px;}

/* thanks
----------------------------------------------- */
.second{min-height: 65vh;padding: 100px 50px;}
.second-hero{padding: 200px 50px 150px;height: 20vh;}
.second-hero-title {margin-bottom: 10px;font-size: 55px;letter-spacing: 4px;}

.second-text p:first-child{margin-bottom: 60px;}
.second-text .more01{padding: 15px 0;width: 400px;font-size: 24px;margin-top: 110px;}

#lpo01 p {
  font-size: 16px;
  margin-bottom: 1.85em;
  line-height: 1.8em;
}
  
}

/* =============================================
retina-size
================================================*/
@media screen and (min-width: 736px) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 736px) and (min-resolution: 2dppx) {
.hero{background-image: url(../images/hero@2x.jpg);}
.intro{background-image: url(../images/intro@2x.jpg);}
.twostyles{background-image: url(../images/twostyles@2x.jpg);}
.flat{background-image: url(../images/flat@2x.jpg);}
.farm{background-image: url(../images/farm@2x.jpg);}
.concept{background-image: url(../images/concept@2x.jpg);}
.point01{background-image: url(../images/point01@2x.jpg);}
.point02{background-image: url(../images/point02@2x.jpg);}
.media{background-image: url(../images/media@2x.jpg);}
.flow{background-image: url(../images/flow_bg@2x.jpg);}
.review{background-image: url(../images/review@2x.jpg);}
.faq-list dt p:before{background-image: url(../images/q@2x.png);}
.access{background-image: url(../images/access_bg@2x.jpg);}
.second-hero {background-image: url(../images/second-hero-bg@2x.jpg);}
}


.checkbox04-parts::before,
.checkbox04-parts::after {
    transition: none !important;
}

/* ハンバーガーメニュー位置修正 */
#menu-toggle {
  position: relative !important;
  right: auto !important;
  left: auto !important;
  width: 65px !important;
  height: 65px !important;
  margin: -40px 0 0 10px !important;
  background-color: transparent !important;
  flex-shrink: 0 !important;
}

/* ヘッダーレイアウト修正 */
header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

/* button修正 */

.box02-btn a {
  background: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

/* コンタクトセクション修正 */
#contact {
  background-color: #fff !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 50px 0 50px 0 !important;
  margin-top: -60px !important;
}

#contact .formbox,
#contact .formintor,
#contact form {
  max-width: 760px !important;
  margin: 0 auto !important;
  padding: 0 5% !important;
}

.f-logo {
  padding-top: 50px !important;
}

.f-logo dt img {
  margin: 0 auto !important;
}


/* footer修正 */

/* mfpオーバーレイ対策 */
[id*="mfp"],
[class*="mfp"] {
  z-index: 99998 !important;
}

/* 既存の4ボタンを非表示 */
.sp-contact-buttons,
.sp-contact-buttons.show {
  display: none !important;
  visibility: hidden !important;
  transform: translateY(110%) !important;
  transition: none !important;
}

/* オレンジボタンを下固定（スマホのみ） */
@media screen and (max-width: 735px) {
  .box02-btn-fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: inherit !important;
    z-index: 999999;
    padding: 10px 15px;
    text-align: center;
  }
  .box02-btn-fixed a {
    display: inline-block;
    width: auto;
  }
  .box02-btn-fixed img {
    width: auto;
    max-width: 90%;
    margin: 0 auto;
  }
  #page_lp {
    padding-bottom: 80px;
  }
}


/* キラキラアニメーション */
@keyframes sparkleEffect {
  0%, 100% {
    filter: drop-shadow(0 0 3px rgba(244, 156, 18, 0.6));
  }
  50% {
    filter: drop-shadow(0 0 10px rgba(241, 196, 15, 0.9));
  }
}

.box02-btn img {
  animation: sparkleEffect 1.5s ease-in-out infinite;
}

form#mailformpro .mailadd li:nth-child(3) span,
form#mailformpro .mailadd li:nth-child(4) span {
  padding-left: 40px !important;
}

/* サンクスページ */
.second-warp .header .logo {
  width: auto !important;
}

.second-warp .header .inner {
  gap: 300px;
}

@media screen and (max-width: 735px) {
  .second-warp .header .inner {
    gap: 130px;
  }
}