@charset "UTF-8";
/* CSS Document */

body {
}
.manrope400 {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.manrope700 {
  font-family: "Manrope", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}
.barlowRegular {
    font-family: "Barlow", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.barlowMedium {
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.barlowSemibold {
  font-family: "Barlow", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.barlowBold {
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.cWhite {
    color: #fff !important;
}
.cOrange {
    color: #e95504 !important;
}
.cUsedColor {
    color: #49a2ab !important;
}
.c4d4d4d {
    color: #4d4d4d !important;
}
.bgBlack {
    background-color: #000 !important;
}
.bgUsedColor {
    background-color: #49a2ab !important;
}
.bgf7f6f2 {
    background-color: #f7f6f2 !important;
}
.bgOrange {
    background-color: #f39800 !important;
}
.bgWhite {
    background-color: #fff !important;
}
.bgBlueLight {
    background-color: #e2f0f2 !important;
}
a.c46a5ae {
    color: #46a5ae !important;
}
img {
    vertical-align: bottom;
}
.mgnAuto {
    margin: auto;
}

/* 共通 */
.contWrap {
	width:94%;
	max-width:1100px;
	margin:0 auto;
}
.contBoxW800 {
    max-width: 800px;
    margin: auto;
}
@media(min-width: 768px){
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
}

/* ヘッダー */
header {
    position: relative;
}
@media(max-width: 1150px){
    header {
        position: sticky;
        z-index: 9999;
    }
}
.headFlex {
    display: flex;
    justify-content: space-between;
    background-color: #fff;
}
.logoWrap {
    gap: 20px;
    display: flex;
    align-items: center;
    padding: 20px 0 20px 30px;
}
.headLogo {
    width: 160px;
}
.h1 {
    font-size: 1.6rem;
}
@media(max-width: 480px){
    .logoWrap {
        gap: 4vw;
        padding: 3vw 0 3vw 2vw;
    }
    .headLogo {
        width: 30vw;
    }
    .h1 {
        font-size: calc(100vw * 14 / 400);
        line-height: 1.3;
    }
}
.resBtn a {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 0.25rem;
    height: 100%;
    padding: 0 1.5rem;
}
.icoResBtn {
    width: 30px;
}
@media(max-width: 1150px){
    .resBtn {
        display: none;
    }
}
.hamBtn {
    display:none;
}
@media screen and (max-width: 1150px) {
    .hamBtn {
        display:flex;
        align-items: center;
        z-index:151;
        order: 4;
        margin-left: auto;
        padding-right: 1rem;
    }
    .menuTrigger,
    .menuTrigger span {
      display: inline-block;
      transition: all .4s;
      box-sizing: border-box;
    }
    .menuTrigger {
      position: relative;
      width: 35px;
      height: 60px;
    }
    .menuTrigger span {
      position: absolute;
      left: 0;
      width: 34px;
      height: 2px;
      background-color: #000;
      border-radius: 3px;
    }
    .menuTrigger span:nth-of-type(1) {
      top: 20px;
    }
    .menuTrigger span:nth-of-type(2) {
      top: 30px;
    }
    .menuTrigger span:nth-of-type(3) {
      top: 40px;
    }
    .menuTrigger.active span:nth-of-type(1) {
      -webkit-transform: translateY(10px) rotate(-45deg);
      transform: translateY(10px) rotate(-45deg);
    }
    .menuTrigger.active span:nth-of-type(2) {
      opacity: 0;
    }
    .menuTrigger.active span:nth-of-type(3) {
      -webkit-transform: translateY(-10px) rotate(45deg);
      transform: translateY(-10px) rotate(45deg);
    }
    .menuTrigger::after {
      content: '';
      font-size: 0.9em;
      text-align: center;
      width: 100%;
      display: inline-block;
      position: absolute;
      bottom: 0px;
      left: 0;
      color: #000;
    }
    .hamBtn a:hover {
        filter: alpha(opacity=100);
        -moz-opacity: 1.0;
        opacity: 1.0;
    }
}
.headNavtenji {
    display: flex;
    margin: auto 2rem auto auto;
    position: relative;
}
.headNavtenji li::after {
    content: " ｜ ";
}
.headNavtenji li:last-child::after {
    content: none;
}
@media screen and (max-width: 1150px) {
    .headNavtenji {
        padding: 90px 0 0;
        position: fixed;
        top: 0;
        left: 0;
        transform: translateX(150%);
        transition: all 0.6s;
        width: 100%;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overflow-scrolling: touch;
        box-shadow: none;
    }
    .nav-open .headNavtenji {
        top: 0;
        transform: translateX(0%);
    }
    .headNavtenji {
        flex-direction: column;
        gap: 0;
        align-content: center;
        justify-content: space-between;
        z-index: -1;
        background-color: #f7f6f2;
    }
    .headNavtenji li {
        border-bottom: #000;
        text-align: center;
        width: 100%;
        display: flex;
        flex-direction: column;
    }
    .headNavtenji li::after {
        content: '';
        border-bottom: 1px solid #c9c9c9;
        width: 100%;
    }
    .headNavtenji a {
        padding: 2rem 0;
        display: block;
    }
}
@media screen and (max-width: 480px) {
    .headNavtenji {
        padding: 15vw 0 0;
    }
}

/*　サイド・フッタ　*/
.resNav {
    position: fixed;
    right: 0;
    top: 150px;
    z-index: 100;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    transform: translateX(200%);
    transition: all 0.6s;
}
.resNav.active {
	transform: translateX(0%);
}
.resNavBtn {
    display: flex;
    align-items: center;
    padding: 25px 15px;
}
.icoResNavBtn {
    width: 20px;
    height: 15px;
    margin-bottom: 10px;
}
.resNavBtn i {
    margin-top: 5px;
}
.resMin {
    background-color: #ffff00;
    padding: 10px 0;
    border-radius: 50px;
    display: inline;
    font-size: 1.2rem;
    position: absolute;
    top: -20px;
    left: -23px;
}
.resMin big {
    font-size: 150%;
}
.triangle {
    width: calc(8px / 2 * tan(60deg));
    height: 8px;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    background-color: #ffff00;
    position: absolute;
    right: calc(-8px / 2 * tan(60deg));
    bottom: 28px;
}
@media screen and (max-width: 1150px) {
    .resNav {
        display: none;
    }
    
}
@media screen and (max-width: 767px) {
    .resNavBtn {
        padding: 4vw 0;
        font-size: calc(100vw * 16 / 400);
    }
    .resMin {
        padding: 0 3vw;
        font-size: calc(100vw * 12 / 400);
    }
}

/* フッター */
footer  {
}
footer .headFlex {
    align-items: center;
    background-color: #000;
}
.copyRight {
    padding-right: 20px;
}

@media screen and (max-width: 1150px) {
    footer {
        display:none;
    }
}
.fNavTenji {
    display: none;
}
@media screen and (max-width: 1150px) {
    .fNavTenji {
        display: flex;
        position: sticky;
        bottom: 0;
        background-color: #f7f6f2;
        font-size: calc(100vw * 16 / 1200);
        text-align: center;
        line-height: 1.2;
    }
    .fNavTenji li.fNavTenjiW1 {
        width: 22%;
    }
    .fNavTenji li.fNavTenjiW2 {
        width: 25%;
    }
    .fNavTenji li.fAtag {
        display: flex;
        align-items: center;
        justify-content: center;
        border-right: 1px solid #c9c9c9;
    }
    .fNavTenji li.fAtag a {
        display: block;
        padding: 2vw 0;
        width: 100%;
    }
    .fResNav {
        width: 31%;
    }
    .fResNavBtn {
        gap: 0.5vw;
        display: flex;
        align-items: center;
        justify-content: center;
        align-content: center;
        height: 100%;
    }
    .icoResNavBtn {
        width: 5vw;
        height: auto;
        margin-bottom: 0;
    }
    .fResMin {
        padding: 1vw 3vw;
        font-size: calc(100vw * 12 / 1100);
        top: -4vw;
        left: 50%;
        transform: translateX(-50%);
        background-color: #ffff00;
        border-radius: 50px;
        display: inline;
        word-break: keep-all;
        position: absolute;
    }
    .fResMin big {
        font-size: 150%;
    }
    .fTriangle {
        height: calc(1.5vw / 2 * tan(60deg));
        width: 1.5vw;
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        left: 50%;
        transform: translateX(-180%);
        bottom: calc(-1.5vw / 2 * tan(60deg));
        background-color: #ffff00;
        position: absolute;
    }
}
@media screen and (max-width: 950px) {
    .fNavTenji {
        font-size: calc(100vw * 16 / 950);
        z-index: 1;
    }
    .fResMin {
        font-size: calc(100vw * 12 / 950);
    }
}
@media screen and (max-width: 768px) {
    .fNavTenji {
        font-size: calc(100vw * 16 / 768);
        z-index: 1;
    }
    .fResMin {
        font-size: calc(100vw * 12 / 700);
    }
}
@media screen and (max-width: 480px) {
    .fNavTenji {
        font-size: calc(100vw * 16 / 400);
        z-index: 1;
    }
    .fNavTenji li.fAtag a {
        padding: 3vw 0;
        font-size: 13px;
    }
    .fResMin {
        font-size: calc(100vw * 12 / 400);
    }
}

/* メインビジュアル */
.mainHead {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    background: linear-gradient(transparent 82%, #f7f6f2 82%);
}
@media(max-width: 1150px){
}
@media(max-width: 480px){
}
.mainInfo {
    margin-right: -800px;
    margin-bottom: -100px;
    z-index: 1;
}
.mainPic {
    width: 62.5%;
    flex-shrink: 0;
}
.h2main {
    font-size: 4.3rem;
    line-height: 1.0;
    display: inline-block;
    background-color: #fff;
    padding: 1rem 1.5rem 1rem 0;
}
.h2main small {
    font-size: 83%;
}
.mainTxt01 {
    font-size: 2.8rem;
    display: inline-block;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 1.5rem 0;
    line-height: 1.4;
    margin-bottom: 2rem;
}
.mainUl {
    display: flex;
    gap: 1rem;
    margin: 4rem 0 4rem;
    font-size: 1.6rem;
}
.mainUl li {
    padding: 0.25rem 1.5rem;
}
.txtKusatsu {
    width: 1230px;
}
@media(max-width: 1300px){
    .mainInfo {
        margin-right: -61vw;
        margin-bottom: -5vw;
    }
    .txtKusatsu {
        width: 95vw;
    }
}
@media(max-width: 1024px){
    .mainInfo {
        margin-right: -50vw;
        margin-bottom: -5vw;
    }
    .h2main {
        font-size: calc(100vw * 43 / 1050);
    }
    .mainTxt01 {
        font-size: calc(100vw * 28 / 1050);
        margin-bottom: 2.5vw;
    }
    .mainUl {
        margin: 3.5vw 0;
        font-size: calc(100vw * 16 / 1050);
    }
    .txtKusatsu {
        width: 84vw;
    }
}
@media(max-width: 767px){
    .mainBr {
        display: none;
    }
    .mainHead {
        align-items: flex-start;
        padding-top: 15vw;
        position: relative;
        background: linear-gradient(transparent 90%, #f7f6f2 90%);
    }
    .mainInfo {
        margin-top: -15vw;
        margin-right: -65vw;
        margin-bottom: auto;
    }
    .mainPic {
        width: 87.5%;
    }
    .mainPic img {
        aspect-ratio: 35 / 22;
        object-fit: cover;
        object-position: 0% -40%;
    }
    .h2main {
        font-size: calc(100vw * 32 / 550);
    }
    .mainTxt01 {
        font-size: calc(100vw * 18 / 550);
        margin-bottom: 1.5vw;
        padding: 1.0rem 0;
    }
    .mainUl {
        margin: 2.5vw 0;
        font-size: calc(100vw * 11 / 550);
    }
    .txtKusatsu {
        position: absolute;
        bottom: -3vw;
    }
}
@media(max-width: 480px){
    .mainInfo {
        margin-right: -73vw;
    }
    .h2main {
        font-size: calc(100vw * 26 / 400);
    }
    .mainTxt01 {
        font-size: calc(100vw * 17 / 400);
    }
    .mainUl {
        margin: 2.5vw 0;
        font-size: calc(100vw * 11 / 400);
    }
}
.mainTxtWrap {
    padding: 70px 0 100px;
}
.h3main {
    font-size: 3.2rem;
    line-height: 1.6;
}
.h3main small {
    font-size: 65.625%;
    display: block;
}
.mainTxt02 {
    text-align: center;
}
@media(max-width: 767px){
    .mainTxtWrap {
        padding: 7vw 0 10vw;
    }
    .mainTxt02 {
        text-align: left;
    }
    .mainTxt02 br{
        display: none;
    }
}
@media(max-width: 480px){
    .h3main {
        font-size: calc(100vw * 20 / 400);
    }
}

/* パンクズ */
.breadcrumbs {
    font-size: 1.2rem;
    padding: 35px 0 20px;
    max-width: 1100px;
}
@media screen and (max-width: 480px) {
    .breadcrumbs {
        display: block;
    }
}

/* イベント情報・お知らせ */
.eventInfoWrap {
    padding: 50px 0 100px 0;
}
.eventInfo {
    margin: 0 !important;
}
.h3event {
    font-size: 1.8rem;
}
.h3event big {
    font-size: 133%;
}
.brnInfolist {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.brnInfolist i {
    font-size: 145%;
    padding-left: 0.75rem;
}
@media(max-width: 767px){
    .eventInfoWrap {
        padding: 2vw 0 10vw 0;
    }
}
@media(max-width: 480px){
    .h3event {
        font-size: calc(100vw * 16 / 400);
        line-height: 1.5;
    }
    .h3event big {
        display: block
    }
}
.eventBnrFlex {
    display: flex;
    justify-content: space-between;
    /* justify-content: center; */
}
.eventBnr {
    width: calc((100% - 30px) / 2);
}
@media(max-width: 600px){
    .eventBnrFlex {
        flex-direction: column;
        gap: 4vw;
    }
    .eventBnr {
        width: 100%;
    }
}
    
/* 案内マップ */
.infomapWrap {
    padding: 100px 0 130px;
}
.infomapWrap .h3event big,
.base3Next .h3event big,
.aboutBaae3Wrap .h3event big,
.mh .h3event big {
    font-size: 177%;
}
.h4einfomap {
    font-size: 1.6rem;
}
.infomap {
    /*max-width: 660px;*/
    width: 100%;
    margin: auto;
}
.infomapFlex {
    display: flex;
    justify-content: space-between;
}
.infomapCont {
    width: 22%;
}
.h5infomap {
    font-size: 1.8rem;
    margin-top: 10px;
    line-height: 1.6;
}
@media(max-width: 1000px){
    .h4einfomap {
        font-size: calc(100vw * 16 / 1000);
    }

}
@media(max-width: 767px){
    .infomapWrap {
        padding: 10vw 0 13vw;
    }
    .h4einfomap {
        font-size: calc(100vw * 13 / 500);
    }
    .infomapFlex {
        flex-direction: column;
        gap: 4vw;
    }
    .infomapCont {
        width: 100%;
        display: flex;
        align-items: flex-start;
        gap: 4vw;
    }
    .infomapImg {
        width: 36%;
        flex-shrink: 0;
    }
    .h5infomap {
        font-size: calc(100vw * 16 / 500);
        margin-top: 0;
    }
}
@media(max-width: 480px){
    .h4einfomap {
        font-size: calc(100vw * 13 / 400);
    }
    .h5infomap {
        font-size: calc(100vw * 15 / 400);
    }
}
.swiperWrap {
    padding: 70px 0 0;
}
.h5slide {
    font-size: 1.6rem;
    margin-top: 10px;
}
.exaUl {
    line-height: 1.5;
}
.c808080 {
    color: #808080 !important;
}
@media(max-width: 767px){
    .swiperWrap {
        padding: 7vw 0 0;
    }
    .h5slide {
        font-size: calc(100vw * 15 / 500);
    }
}
@media(max-width: 480px){
    .h5slide {
        font-size: calc(100vw * 15 / 400);
    }
}
/* swiper */
.swiper-slide img {
    width: 100%;
}
/*.slideW1 {
    width: 39.3% !important;
    width: 555px !important;
}
.slideW2 {
    width: 17.5% !important;
    width: 247px !important;
}*/
.swiperWrap01,
.swiperWrap,
.swiperWrapMotenasie {
    position: relative;
}
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: -2.5rem;
    position: relative;
}
.swiper-pagination-bullet {
    background: #fff;
    opacity: 1;
    width: 10px;
    height: 10px;
    margin: 0 1rem!important;
}
.swiper-pagination-bullet-active {
    background: #000;
}
.swiperWrapMotenasie .swiper-pagination-bullet {
    background: #ccc;
}
.swiperWrapMotenasie .swiper-pagination-bullet-active {
    background: #000;
}
.swiper-button-next::after, .swiper-button-prev::after {
      content: none !important;
}
.swiper-button-prev,
.swiper-button-next {
	width: 45px;
	height: 45px;
    background-size: 100%;
    /*top: auto;*/
}
.swiper-button-next {
	background-image: url("img/top_v2/arw.png");
	transform: scale(-1, 1);
    right: 5%;
}
.swiper-button-prev {
	background-image: url("img/top_v2/arw.png");
    left: 5%;
}
@media screen and (max-width: 834px) {
    /*.slideW1 {
        width: 82.5% !important;
    }
    .slideW2 {
        width: 36.75% !important;
    }*/
}
@media screen and (max-width: 480px) {
    .swiper-horizontal > .swiper-pagination-bullets,
    .swiper-pagination-bullets.swiper-pagination-horizontal,
    .swiper-pagination-custom,
    .swiper-pagination-fraction {
        bottom: -1.5rem;
    }
    .swiper-button-prev,
    .swiper-button-next {
        width: 35px;
        height: 35px;
    }
    .swiper-button-next {
        right: 5%;
    }
    .swiper-button-prev {
        left: 5%;
    }
}

/* モデルハウス */
.base3Next {
    padding: 100px 0;
}
.h2base3next {
    font-size: 1.8rem;
    border-top: 1px solid #000;
        padding-top: 8rem;
    margin-top: 8rem;
}
.h2base3next big {
    font-size: 245%;
    display: block;
    line-height: 1.4;
}
.h2base3next big span {
    font-size: 75%;
    margin-left: 1rem;
}
.mhImgWrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 3vw;
}
.mhImg1 {
    width: 59.7%;
}
.mhImgRt {
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.base3nextBadge {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 130px;
    height: 130px;
    font-size: 2.1rem;
    line-height: 1.3;
    position: absolute;
    top: -105px;
    right: 60px;
}
.h2machimoku {
    margin-top: 4rem;
}
.machimokuBadge {
    right: 60px;
}
@media(max-width: 1000px){
    .base3nextBadge {
        top: -10.5vw;
        right: 1.5vw;
    }
}
@media screen and (max-width: 767px) {
    .h2base3next {
        margin-bottom: 5vw !important;
    }
    .base3Next {
        padding: 10vw 0;
    }
    .mhImgWrap {
        flex-direction: column;
        gap: 0.5vw;
    }
    .mhImg1 {
        width: 100%;
    }
    .mhImg2 {
        display: none;
    }
    .mhImgRt {
        width: 100%;
        gap: 0.5vw;
    }
    .base3nextBadge {
        top: -6vw;
        right: 1.5vw;
    }
}
@media screen and (max-width: 550px) {
    .h2base3next.h2fushimimomoyama big {
        font-size: 185%;
        display: block;
        line-height: 1.4;
    }
    .h2base3next.h2matsugasaki big {
        font-size: 200%;
        display: block;
        line-height: 1.4;
    }
}
@media screen and (max-width: 500px) {
    .h2base3next {
        font-size: calc(100vw * 16 / 400);
    }
    .mhImgWrap {
        margin-top: 7vw;
    }
    .base3nextBadge {
        width: 27.5vw;
        height: 27.5vw;
        font-size: calc(100vw * 20 / 400);
    }
}
.mhLT {
    position: absolute;
}
.mhLT1 {
    width: 195px;
    top: -130px;
    left: 10px;
}
.mhLT2 {
    width: 190px;
    top: -140px;
    left: 35px;
}
.mhLT3 {
    width: 185px;
    top: -130px;
    left: 15px;
}
.mhLT4 {
    width: 198px;
    top: -145px;
    left: 20px;
}
@media(max-width: 1000px){
    .mhLT1 {
        width: 19.5vw;
    }
    .mhLT2 {
        width: 19vw;
    }
    .mhLT3 {
        width: 18.5vw;
    }
    .mhLT4 {
        width: 19.8vw;
    }
}
@media(max-width: 767px){
    .mhLT {
        top: auto;
        left: 2vw;
        position: relative;
    }
    .mhLT1 {
        width: 30vw;
        margin-top: -22vw;
    }
    .mhLT2 {
        width: 34.5vw;
        margin-top: -30vw;
    }
    .mhLT3 {
        width: 34vw;
        margin-top: -26vw;
    }
    .mhLT4 {
        width: 27.5vw;
        margin-top: -22.5vw;
    }
}
.youtube {
    max-width: 630px;
    margin: auto;
    width: 100%;
    aspect-ratio: 16 / 9;
}
.youtube iframe {
    width: 100%;
    height: 100%;
}
.bgBorderYellow {
    background: linear-gradient(transparent 65%, #fff000 65%);
}
.modelhouseUl {
    display: flex;
    gap: 1rem;
        flex-flow: wrap;
}
.modelhouseUl li {
    padding: 0.5rem 1rem;
}
.btnHodelhouse {
    display: flex;
    justify-content: center;
    gap: 2rem;
    /*margin: 60px 0 0 0;*/
}
@media screen and (max-width: 660px) {
    .btnHodelhouse .btnStaffList {
        width: 49%;
    }
    .btnHodelhouse .btnStaffList a {
        width: 100%;
    }
}
@media screen and (max-width: 500px) {
    .modelhouseUl {
    }
    .btnHodelhouse {
        width: 100%;
        gap: 2%;
    }
    /*.btnHodelhouse .btnStaffList {
        width: 49%;
    }*/
}
/* ショールーム */
.showroomWrap {
    padding: 0 0 100px;
}
@media screen and (max-width: 767px) {
    .showroomWrap {
        padding: 10vw 0;
    }
}
.showroomFlex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.srImg {
    width: 44%;
}
.srDtl {
    width: 53%;
}
.h4sr {
    padding: 0.75rem 0;
}
@media screen and (max-width: 767px) {
    .showroomFlex {
        flex-direction: column;
        gap: 4vw;
    }
    .srImg {
        width: 100%;
    }
    .srDtl {
        width: 100%;
    }
}
.makerWrap {
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
    gap: 30px 0;
}
.showMaker {
    width: 48.5%;
    display: flex;
    gap: 20px;
    padding: 20px;
    border: 1px solid #e6e6e6;
    position: relative;
}

.showMaker dt a{
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    box-sizing: border-box;
    padding: 2.5rem 0 0 16.5rem;
    font-size: 18px;
    transition: 0.3s;
}

.showMaker dt a:hover{
    opacity: 1;
    color: #000;
}

.showMaker:hover{
    background: #EFEFEF;
    transition: 0.3s;
}


.showMaker dd {
    padding: 3.5rem 0 0 0;
}

.showMaker::after{
    content: "\f105";
    font: normal normal normal 14px / 1 FontAwesome;
    color: #49a2ab !important;
    position: absolute;
    right: 17px;
    top: 42%;
    font-size: 18px;
}
.makerImg {
    width: 125px;
    flex-shrink: 0;
}
.iFa {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 4%;
}
@media screen and (max-width: 834px) {
    .makerWrap {
        flex-direction: column;
        gap: 3vw 0;
    }
    .showMaker {
        width: 100%;
    }
    
}
@media screen and (max-width: 480px) {
    .makerWrap {
    }
    .showMaker {
        padding: 3vw;
        gap: 3vw;
    }

    .showMaker dt a {
        padding: 1.5rem 0 0 11.2rem;
    }

    .showMaker dd {
        padding: 3.5rem 0 0 0;
        line-height: 1.3;
        font-size: 12px;
    }
    .makerImg {
        width: 24vw;
    }
    .makerImg img {
        aspect-ratio: 95 / 83;
        object-fit: cover;
    }
    .iFa {
        right: 2%;
    }
}
.makerWrapBtm {
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
}
.srDl {
    width: 48.5%;
    display: flex;
    align-items: center;
    padding: 1rem 0;
    border-bottom: 1px solid #e6e6e6;
    line-height: 1.5;
}
.srDl.bdrTop {
    border-top: 1px solid #e6e6e6;
}
.srDl dt {
    width: 100px;
}
@media screen and (max-width: 834px) {
    .srDl {
        width: 100%;
    }
    .srDl.bdrTop.bdrTopNone {
        border-top: none;
    }
}

/* スタッフ紹介 */
.bge2f0f2 {
    background-color: #e2f0f2;
    padding: 100px 0;
}
.h2staff {
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 50px;
    padding: 5px 20px;
    width: fit-content;
    margin: auto;
    font-size: 1.8rem;
    margin-bottom: -25px;
    position: relative;
    z-index: 1;
}
.h2staff big {
    font-size: 133%;
}
@media screen and (max-width: 1000px) {
    .h2staff {
        font-size: calc(100vw * 18 / 1000);
    }
}
.staffWrap {
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 5vw 0;
}
@media screen and (max-width: 600px) {
    .h2staff {
        font-size: calc(100vw * 16 / 400);
        line-height: 1.2;
        padding: 10px 20px;
        margin-bottom: -8vw;
    }
    .h2staff big {
        font-size: 130%;
    }
    .h2staff .spOnlyCont {
        display: block !important;
    }
}
.staffDtlWrap {
    display: flex;
    justify-content: space-between;
}
.staffDtl {
    width: 60%;
    display: flex;
    flex-direction: column;
}
.staffImg {
    width: 35%;
    flex-shrink: 0;
}
.staffImg img {
    width: 100%;
    aspect-ratio: 35 / 40;
    object-fit: cover;
}
.dtlTxt1 {
    font-size: 1.3rem;
}
.dtlTxt2 {
    font-size: 2.4rem;
}
.dtlTxt2 small {
    font-size: 46%;
    line-height: 0.5;
    padding-left: 2rem;
}
.dtlTxt3 {
    font-size: 1.2rem;
}
.shikakuUl {
    display: flex;
    flex-flow: wrap;
    gap: 0.75rem;
    width: 50%;
}
.shikakuUl li {
    padding: 0rem 1rem;
}
.staffSp {
    display: none;
}
.btnStaffList {
    /*margin-top: auto;*/
}
.btnStaffList a {
    width: 300px;
    padding: 1.5rem 0;
    position: relative;
    display: block;
    background-color: #000;
    color: #fff;
}
.btnStaffList a i {
    position: absolute;
    top: 50%;
    right: 5%;
    transform: translateY(-50%);
    transition: all 0.3s;
    font-size: 140%;
}
.thanksWrap .btnStaffList a {
    width: 350px;
}
@media screen and (max-width: 1000px) {
    /*.dtlTxt1 {
        font-size: calc(100vw * 13 / 1000);
    }
    .dtlTxt2 {
        font-size: calc(100vw * 24 / 1000);
    }
    .dtlTxt3 {
        font-size: calc(100vw * 12 / 1000);
    }*/
    .shikakuUl {
        width: 100%;
    }
}
@media screen and (max-width: 600px) {
    .bge2f0f2 {
        padding: 10vw 0 9vw;
    }
    .staffWrap {
        padding: 12vw 0 7.5vw;
    }
    .staffDtl {
        padding-top: 14vw;
    }
    .staffDtlWrap {
        justify-content: flex-start;
        gap: 3vw;
        width: 100%;
    }
    .staffImg {
        width: 59%;
    }
    .dtlTxt1 {
        font-size: calc(100vw * 13 / 400);
    }
    .dtlTxt2 {
        font-size: calc(100vw * 22 / 400);
    }
    .dtlTxt2 small {
        display: block;
        line-height: 1;
        padding-left: 0;
        margin-bottom: 1vw;
    }
    .dtlTxt3 {
        font-size: calc(100vw * 12 / 400);
    }
    .staffPc {
        display: none;
    }
    .staffSp {
        display: block;
    }
    .staffSp br {
        display: none;
    }
    .btnStaffList a {
        width: 100%;
        padding: 1.5rem 2.5rem 1.5rem 0;
    }
    .thanksWrap .btnStaffList a {
        width: 100%;
    }
}

/* 施工事例 */
.exaWrap {
    padding: 100px 0;
}
.exaFlex {
    display: grid;
    justify-content: center;
    gap: 5% 0;
    grid-template-columns: repeat(4, 22%);
    justify-content: space-between;
    padding: 0 0 30px 0;
}
.exaCont {
    width: 100%;
}
.exaImg img {
    aspect-ratio: 1 / 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.vol79 .exaImg img {
    object-position: 100% 50%;
}
.vol78 .exaImg img {
    object-position: 15% 50%;
}
.exaUl {}
@media screen and (max-width: 767px) {
    .exaWrap {
        padding: 10vw 0;
    }
    .exaFlex {
        display: flex;
        flex-direction: column;
        gap: 4vw;
    }
    .exaCont {
        width: 100%;
        display: flex;
        align-items: flex-start;
        gap: 4vw;
    }
    .exaImg {
        width: 36%;
        flex-shrink: 0;
    }
}

/* コラム */
.columnWrap {
    padding: 100px 0;
}
.columnWrap .h2access big {
    display: block;
    line-height: 1.5;
}
.columnFlex {
    overflow: hidden;
    background-color: #fff;
}
.columnFlex .imgColumn {
    width: 30%;
    float: left;
}

.columnFlex .imgColumn a {
    display: block;
}

.columnFlex .imgColumn a img {
	width: 100%;
    aspect-ratio: 4 / 2.8;
    object-fit: cover;
}


.columnFlex .h5infomap{
    font-size: 2rem;
    margin-top: 20px;
    line-height: 1.4;
    float: right;
    width: 70%;
    padding: 0 3rem;
    box-sizing: border-box;
    height: 5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.columnFlex .h5infomap a{
    font-weight: 700;
}

.columnCont {
    padding: 1.4rem 3rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.btnColumn a {
    margin: auto;
    line-height: 1.6;
    width: 300px;
    display: flex;
    justify-content: center;
    padding: 1.5rem 3rem 1.5rem 0;
}



.columnCont .text{
    font-size: 13px;
    font-weight: 400;
    line-height: 1.8;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.columnCont .flex{
    display: flex;
}

.columnCont .date{
    font-size: 12px;
    margin: 0 10px 0 0;
}

.columnCont .tag{
    display: flex;
    font-size: 12px;
}

.columnCont .tag a{
    display: flex;
    margin: 0 10px 0 0;
}

.columnCont .tag a::before{
    content: '#';
    color: #49a2ab;
}
@media(max-width: 840px){
    .columnFlex .imgColumn a img {
        aspect-ratio: auto;
        object-fit: cover;
        height: 180px;
        max-height: 30vw;
    }
}

@media(max-width: 480px){

    .columnFlex .imgColumn {
        width: 33%;
        float: left;
    }

    .columnFlex .imgColumn a img {
        height: 90px;
        max-height: 26vw;
        width: 100%;
    }
    .columnFlex .h5infomap {
        font-size: 1.6rem;
        margin-top: 0px;
        line-height: 1.4;
        float: right;
        width: 67%;
        padding: 0 1.6rem;
        box-sizing: border-box;
        height: 9rem;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .columnFlex .h5infomap a{
        overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    }

.columnCont {
    padding: 1.2rem 1.4rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
}

.columnCont .text {
    line-height: 1.4;
}

.columnCont .flex {
    display: grid;
    grid-template-columns: 35% 65%;
    justify-content: space-between;
}

.columnCont .tag {
    flex-wrap: wrap;
}

}

/* アクセス */
.accessWrap {
    padding: 100px 0;
}
.ttlAccess {
    border-bottom: 1px solid #49a2ab;
    padding-bottom: 5px;
    width: fit-content;
    margin: auto;
}
.h2access {
    font-size: 1.8rem;
}
@media screen and (max-width: 480px) {
    .h2access {
        font-size: calc(100vw * 16 / 400);
    }
}
.h2access big {
    font-size: 177%;
}
.accessFlex {
    display: flex;
    justify-content: space-between;
}
.accessInfo {
    width: 43.5%;
}
.mapWrap {
    width: 51.5%;
}
.h3access {
    font-size: 2.4rem;
    border-bottom: 1px solid #000;
    padding-bottom: 0.5rem;
}
@media screen and (max-width: 480px) {
    .h3access {
        font-size: calc(100vw * 18 / 400);
    }
}
.addMap {
    padding: 2rem 0;
}
.accessInfoDl {
    display: flex;
    align-items: center;
    gap: 2rem;
    border-bottom: 1px solid #c9c9c9;
    padding: 2rem 0;
}
.accessInfoDl dt {
    width: 100px;
}
.accessInfoDl dt p {
    background-color: #f7f6f2;
    padding: 0.5rem 0;
}
.accessInfoDl.first {
    border-top: 1px solid #c9c9c9;
    flex-direction: column;
    align-items: flex-start;
}
dd.freedial {
    font-size: 2.8rem;
    line-height: 1;
}
.icoFreedial {
    width: 30px;
}
.spMap {
    display: none;
}
@media screen and (max-width: 767px) {
    .accessFlex {
        flex-direction: column-reverse;
        gap: 2vw
    }
    .accessInfo {
        width: 100%;
    }
    .addMap {
        padding: 2vw 0;
    }
    .accessInfoDl {
        padding: 4vw 0;
        gap: 1rem;
    }
    .mapWrap {
        width: 100%;
    }
    .pcMap {
        display: none;
    }
    .spMap {
        display: block;
    }
}
@media screen and (max-width: 480px) {
    .accessWrap {
        padding: 10vw 0;
    }
    .accessInfoDl {
        font-size: calc(100vw * 14 / 400);
    }
    .accessInfoDl dt {
        width: 25vw;
    }
    dd.freedial {
        font-size: calc(100vw * 27 / 400);
    }
}
.gBtn {
    font-size: 1.6rem;
}
.gBtn i {
    padding-left: 1rem;
}
@media screen and (max-width: 480px) {
    .gBtn {
        font-size: calc(100vw * 16 / 400);
    }
}
.instaWrap {
    padding: 100px 0 0;
}
.instaName {
    font-size: 2.4rem;
}
@media screen and (max-width: 767px) {
    .instaWrap {
        padding: 10vw 0 0;
    }
    .instaName {
        font-size: calc(100vw * 24 / 600);
    }
}
@media screen and (max-width: 480px) {
    .instaName {
        font-size: calc(100vw * 24 / 400);
    }
}
.google-maps {
    padding-bottom: 100px;
}
.google-maps iframe {
    aspect-ratio: 100 / 35;
    width: 100%;
    height: auto;
}
@media screen and (max-width: 767px) {
    .google-maps iframe {
        aspect-ratio: 100 / 75;
    }
}
@media screen and (max-width: 480px) {
    .google-maps {
        padding-bottom: 10vw;
    }
}
.google-maps iframe,
.google-maps object,
.google-maps embed {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-transition: all 0.7s ease;
  -moz-transition: all 0.7s ease;
  -o-transition: all 0.7s ease;
  transition: all  0.7s ease;
}

.google-maps iframe:hover,
.google-maps object:hover,
.google-maps embed:hover {
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  filter: grayscale(0%);
}

/* 来場予約 */
.reserveWrap {
	padding:70px 0 70px;
	background-color:#f7f6f2;
}
.reserveForm {
	padding:70px 100px;
	margin:70px auto;
	text-align:center;
	background-color:#fff;
}
.ttlReserve {
	font-size:25px;
	font-weight:bold;
	border-bottom:4px solid #000;
	padding-bottom:5px;
	display:inline-block;
}
.ttlReserve span {
    margin-left: 20px;
    font-weight: bold;
}
.reserveTxt01 {
	text-align:left;
	margin:70px auto 0;
}
.thanksPgHirakata .reserveTxt01 {
	text-align: center !important;
}

.btnStaffList.btnReserve {
    display: grid;
    grid-template-columns: 48% 48%;
    justify-content: space-between;
    width: 100%;
    margin: 0 auto;
    max-width: 700px;
}

@media screen and (max-width: 767px) {
    .reserveWrap {
        background-color:#fff;
        padding: 0 0 15vw;
    }
    .reserveWrap .titleBorder:before {
        width:140px;
    }
    .reserveForm {
        padding: 30px 0 0 0;
        margin: 0 auto;
    }
    .ttlReserve {
        font-size:4.3vw;
        border-bottom:none;
        padding-bottom:0;
    }
    .ttlReserve span {
        margin-left: 0;
        display: block;
    }
    .reserveTxt01 {
        margin:20px auto 0;
    }
    .thanksWrap .reserveWrap {
        padding: 15vw 0 15vw;
    }
}
@media screen and (max-width: 480px) {
    .thanksWrap .btnHodelhouse {
        flex-direction: column;
    }
    .thanksWrap .btnHodelhouse .btnStaffList {
        width: 100%;
    }
}

/*フォーム*/
table#form {
    width: 100%;
    margin-top: 70px;
}
table#form tr {
    border-top: 1px solid #CCC;
    /* padding: 20px 0; */
    width: 100%;
}
table#form th,table#form td{
	padding: 30px 0;
	text-align: left;
}
table#form th{
	width: 28%;
	font-weight: bold;
}
table#form td{
	width: 72%;
}
table#form input[type="text"],table#form textarea,table#form input[type="email"],table#form select{
	font-size: 16px;
	padding: 7px;
    box-sizing:border-box;
    -moz-box-sizing:border-box; /* Firefox */
    -webkit-box-sizing:border-box; /* Chrome, Safari */
}
table#form input[type="text"],table#form textarea,table#form input[type="email"]{
    width: 100%;
}
table#form input[type="text"].short {
    width: 80px;
}
input::placeholder {
  color: #CCC;
}
/* IE */
input:-ms-input-placeholder {
  color: #CCC;
}
/* Edge */
input::-ms-input-placeholder {
  color: #CCC;
}
span.att {
    color: red;
    font-size: 10px;
    margin: 0 0 0 7px;
}
p.errorMsg {
    color: red;
}
table#form td dl{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
table#form td dl dt{
	width: 20%;
	padding: 5px 0;
}
table#form td dl dd{
	width: 79%;
	padding: 5px 0;
}
table#form td p {
    padding: 10px 0;
}
table#form td span{
	font-size: 12px;
}
table#form td strong{
	font-weight: bold;
}
table#form td a{
	display: block;
	padding: 7px;
	background: #666;
	color: #FFF;
	font-size: 15px;
	width: max-content;
}
.reserve_date {
    line-height: 3.8;
    margin: 0 0 10px 0;
}
.btn_submit {
    background: #666;
    color: #FFF;
    padding: 15px;
    width: 250px;
    font-size: 16px;
    border: none;
    margin: 0 auto;
    display: block;
}
.btn_back {
    background: #CCC;
    color: #666;
    padding: 15px;
    width: 250px;
    font-size: 16px;
    border: none;
    margin: 0 auto;
    display: block;
}
.btn_area {
    display: flex;
    justify-content: center;
    margin-top: 80px;
}
p.topPgBtn a {
    background: #666;
    color: #FFF;
    padding: 20px;
    margin: 0 20px;
}
@media screen and (max-width: 767px) {
	table#form {
		width: 94%;
		overflow: hidden;
		margin: 20px auto 0;
	}
	table#form th,table#form td{
        padding: 10px 0;
        text-align: left;
    }
    table#form th {
        width: 100%;
        font-weight: bold;
        float: left;
    }
	table#form td {
        width: 100%;
        float: left;
    }
	table#form td dl{
        display: block;
    }
    table#form td dl dt{
        width: 100%;
        padding: 5px 0;
    }
    table#form td dl dd{
        width: 100%;
        padding: 5px 0;
    }
	table#form input[type="text"],table#form input[type="email"],table#form select{
        font-size: 16px;
        padding: 7px;
		width: 100%;
		box-sizing: border-box;
    }
    .btn_area {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        width: 100%;
        margin-top: 20px;
    }
    p.topPgBtn {
        width: 100%;
    }
    p.topPgBtn a {
        background: #666;
        color: #FFF;
        padding: 20px;
        margin: 13px auto;
        display: block;
        width: 100%;
    }
}

/* 200727 追加 */
.informationWrap {
    margin-top: 70px;
    text-align: left;
}
@media screen and (max-width: 767px) {
    .informationWrap {
        margin-top: 20px;
    }
}
.headerWrap.pgThanks {
    background: none;
}
.headerWrap.pgThanks .header {
    background-color: rgba(0,0,0,.3);
}
.headerWrap.pgThanks .logoWrap {
    padding-bottom: 7px;
}
@media screen and (max-width: 767px) {
    .headerWrap.pgThanks .logoWrap {
        padding-bottom: 0;
    }
    .headerWrap.pgThanks .header {
        background-color: rgba(0,0,0,.4);
    }
}



/* モデルハウス詳細 */
/* ヘッダー */
@media(max-width: 1150px){
    .mh .resBtn {
        display: none;
    }
}
@media screen and (max-width: 1150px) {
    .mh .hamBtn {
        display:flex;
        align-items: center;
        z-index:151;
        order: 4;
        margin-left: auto;
        padding-right: 1rem;
    }
    .mh .menuTrigger,
    .mh .menuTrigger span {
      display: inline-block;
      transition: all .4s;
      box-sizing: border-box;
    }
    .mh .menuTrigger {
      position: relative;
      width: 35px;
      height: 60px;
    }
    .mh .menuTrigger span {
      position: absolute;
      left: 0;
      width: 34px;
      height: 2px;
      background-color: #000;
      border-radius: 3px;
    }
    .mh .menuTrigger span:nth-of-type(1) {
      top: 20px;
    }
    .mh .menuTrigger span:nth-of-type(2) {
      top: 30px;
    }
    .mh .menuTrigger span:nth-of-type(3) {
      top: 40px;
    }
    .mh .menuTrigger.active span:nth-of-type(1) {
      -webkit-transform: translateY(10px) rotate(-45deg);
      transform: translateY(10px) rotate(-45deg);
    }
    .mh .menuTrigger.active span:nth-of-type(2) {
      opacity: 0;
    }
    .mh .menuTrigger.active span:nth-of-type(3) {
      -webkit-transform: translateY(-10px) rotate(45deg);
      transform: translateY(-10px) rotate(45deg);
    }
    .mh .menuTrigger::after {
      content: '';
      font-size: 0.9em;
      text-align: center;
      width: 100%;
      display: inline-block;
      position: absolute;
      bottom: 0px;
      left: 0;
      color: #000;
    }
    .mh .hamBtn a:hover {
        filter: alpha(opacity=100);
        -moz-opacity: 1.0;
        opacity: 1.0;
    }
}
.mh .headNavtenji {
    display: flex;
    margin: auto 2rem auto auto;
    position: relative;
}
.mh .headNavtenji li::after {
    content: " ｜ ";
}
.mh .headNavtenji li:last-child::after {
    content: none;
}
@media screen and (max-width: 1150px) {
    .mh .headNavtenji {
        padding: 90px 0 0;
        position: fixed;
        top: 0;
        left: 0;
        transform: translateX(150%);
        transition: all 0.6s;
        width: 100%;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overflow-scrolling: touch;
        box-shadow: none;
    }
    .mh .nav-open .headNavtenji {
        top: 0;
        transform: translateX(0%);
    }
    .mh .headNavtenji {
        flex-direction: column;
        gap: 0;
        align-content: center;
        justify-content: space-between;
        z-index: -1;
        background-color: #f7f6f2;
    }
    .mh .headNavtenji li {
        border-bottom: #000;
        text-align: center;
        width: 100%;
        display: flex;
        flex-direction: column;
    }
    .mh .headNavtenji li::after {
        content: '';
        border-bottom: 1px solid #c9c9c9;
        width: 100%;
    }
    .mh .headNavtenji a {
        padding: 2rem 0;
        display: block;
    }
}
@media screen and (max-width: 480px) {
    .mh .headNavtenji {
        padding: 15vw 0 0;
    }
}

/*　サイド・フッタ　*/
@media screen and (max-width: 1150px) {
    .mh .resNav {
        display: none;
    }
    
}

/* フッター */
@media screen and (max-width: 1150px) {
    .mh footer {
        display:none;
    }
}
.mh .fNavTenji {
    display: none;
}
@media screen and (max-width: 1150px) {
    .mh .fNavTenji {
        display: flex;
        position: sticky;
        bottom: 0;
        background-color: #f7f6f2;
        font-size: calc(100vw * 16 / 600);
        text-align: center;
        line-height: 1.2;
    }
    .mh .fNavTenji li.fNavTenjiW2 {
        width: 50%;
    }
    .mh .fNavTenji li.fAtag {
        display: flex;
        align-items: center;
        justify-content: center;
        border-right: 1px solid #c9c9c9;
    }
    .mh .fNavTenji li.fAtag a {
        display: block;
        padding: 3.5vw 0;
        width: 100%;
    }
    .mh .fResNav {
        width: 50%;
    }
    .mh .fResNavBtn {
        gap: 0.5vw;
        display: flex;
        align-items: center;
        justify-content: center;
        align-content: center;
        height: 100%;
    }
    .mh .icoResNavBtn {
        width: 5vw;
        height: auto;
        margin-bottom: 0;
    }
    .mh .fResMin {
        padding: 1vw 3vw;
        font-size: calc(100vw * 12 / 600);
        top: -4vw;
        left: 50%;
        transform: translateX(-50%);
        background-color: #ffff00;
        border-radius: 50px;
        display: inline;
        word-break: keep-all;
        position: absolute;
    }
    .mh .fResMin big {
        font-size: 150%;
    }
    .mh .fTriangle {
        height: calc(1.5vw / 2 * tan(60deg));
        width: 1.5vw;
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        left: 50%;
        transform: translateX(-180%);
        bottom: calc(-1.5vw / 2 * tan(60deg));
        background-color: #ffff00;
        position: absolute;
    }
}
@media screen and (max-width: 480px) {
    .mh .fNavTenji {
        font-size: calc(100vw * 16 / 400);
    }
    .mh .fNavTenji li.fAtag a {
        padding: 5.25vw 0;
    }
    .mh .fResMin {
        font-size: calc(100vw * 12 / 400);
    }
}

/* メインビジュアル */
.mainMhWrap {
    height: 610px;
}
.mainMh {
    height: 100%;
}
.mainMh img {
    width: 100%;
    height: 100%;
    aspect-ratio: 140 / 61;
    object-fit: cover;
}

.motenashie .mainMhWrap {
    height: auto;
    max-height: 600px;
}

.motenashie .mainMh {
    height: 100%;
        background-color: #d3d5cc;
}
.motenashie .mainMh img {
    width: 100%;
    height: auto;
    aspect-ratio: unset;
    object-fit: contain;
    max-height: 600px;
}

.mainCopyMh {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background-color: rgba(0,0,0,.6);
    padding: 2.5rem;
    white-space: nowrap;
}
.subCopyMh {
    font-size: 1.8rem;
}
.h2mh {
    font-size: 4.8rem;
    line-height: 1.2;
}
@media screen and (max-width: 1000px) {
    .subCopyMh {
        font-size: calc(100vw * 18 / 1000);
    }
    .h2mh {
        font-size: calc(100vw * 48 / 1000);
    } 
}
@media screen and (max-width: 767px) {
    .subCopyMh {
        font-size: calc(100vw * 18 / 650);
    }
    .h2mh {
        font-size: calc(100vw * 48 / 650);
    } 
}
@media screen and (max-width: 480px) {
    .mainMhWrap {
        height: 66vw;
    }
    .mainCopyMh {
        padding: 1rem 3rem;
    }
    .subCopyMh {
        font-size: calc(100vw * 14 / 400);
        line-height: 1.5;
    }
    .h2mh {
        font-size: calc(100vw * 28 / 400);
        line-height: 1.5;
    } 
}

/* インフォメーション */
.infoWrap {
	padding:15px 0 100px 0;
	background-color:#f7f6f2;
}
.infoBtm {
	/*max-width:820px;*/
	margin:50px auto 0;
}
.infoBtm h2 {
	font-size:33px;
	letter-spacing:0.1em;
	margin-bottom:20px;
	text-align:center;
}

.infoBtm h2 span{
    font-size: 26px;
    margin: 0 0 0 10px;
}
.ttlTop {
}
.ttlTop img {
    width: 60%;
}
@media screen and (max-width: 767px) {
    .infoWrap {
        padding:0 0 50px 0;
    }
    .infoBtm {
        width:96%;
        margin:0px auto 0;
    }
    .infoBtm h2 {
        font-size:6.3vw;
        margin-bottom:20px;
        line-height: 1.4;
    }

    .infoBtm h2 span{
    font-size: 20px;
    margin: 0 0 0 10px;
}
    .ttlTop {
    }
    .ttlTop img {
        width: 80%;
    }
}
.base3GrandOpenTxt01 {
    font-size: 26px;
    line-height: 1.8;
    text-align: center;
    margin-top: 10px;
}
.base3GrandOpenTxt01 span {
  background: linear-gradient(transparent 65%, #fff100 65%);
  line-height: 1.0;
  font-weight: bold;
}
.base3GrandOpenTxt02 {
    font-size: 22px;
    text-align: center;
}
@media screen and (max-width: 600px) {
    .base3GrandOpenTxt01 {
        font-size: 19px;
    }
    .base3GrandOpenTxt01.ls03,
    .base3GrandOpenTxt02.ls03 {
        letter-spacing: normal;
    }
    .base3GrandOpenTxt02 {
        font-size: 18px;
    }
}
.infoData {
    width: 1050px;
    margin: 70px auto 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start;
}
.infoData .photo {
   width: 500px;
    text-align: center;
}
.infoData .photo img {
    width: auto;
    height: auto;
    max-height: 560px;
    max-width: 500px;
}
.infoData .data {
    width: 500px;
    display: flex;
    flex-wrap: wrap;
}
.infoData .data h3 {
    width: 100px;
    color: #333;
    font-size: 16px;
    font-weight: bold;
}
/*.infoData .data p {
    width: 400px;
    font-size: 16px;
    line-height: 1.8;
    border-bottom: 1px dotted #CCC;
    padding: 5px 0;
    margin: 0 0 20px 0;
}*/
.infoData .data dl {
    width: 400px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 0 20px 0;
    font-size: 16px;
    line-height: 1.8; 
}
.infoData .data dt {
    width: 200px;
    font-weight: bold;
    border-bottom: 1px dotted #CCC;
    padding: 5px 0;
}
.infoData .data dd {
    width: 200px;
    border-bottom: 1px dotted #CCC;
    padding: 5px 0;
}
@media screen and (max-width: 1024px) {
    .infoData {
        width: 100%;
    }
    .infoData .photo {
        width: 56%;
    }
    .infoData .data {
        width: 43%;
    }
}
@media screen and (max-width: 950px) {
    .infoData {
        margin: 50px auto 0;
    }
    .infoData .photo {
        width: 100%;
        text-align: center;
    }
    .infoData .photo img {
        width: auto;
        height: auto;
        max-height: auto;
        max-width: 100%;
    }
    .infoData .data {
        width: 88%;
        margin: 25px auto 0;
    }
    .infoData .data p {
        width: 100%;
        font-size: 14px;
    }
    .infoData .data dl {
        width: 100%;
        font-size: 14px;
    }
    .infoData .data dt {
        width: 43%;
    }
    .infoData .data dd {
        width: 57%;
    }
    .infoData .data .type dt {
        width: 100%;
    }
    .infoData .data .type dd {
        width: 0%;
    }
}
.layoutWrap {
    padding: 100px 0;
}
.areaFlex {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    gap: 0.5rem 0;
    margin-top: 3rem;
}
.areaCont {
    width: calc(100% / 3);
    border-right: 1px dashed #000;
}
.areaCont dl {
    display: flex;
    justify-content: flex-start;
    margin: 0.5rem 0;
}
.areaCont dt {
    padding-left: 3.5rem;
    width: 40%;
}
.areaCont dd {
    padding-right: 3.5rem;
}
.layoutTxt01 {
    margin: 1rem auto 0;
    color: #f39800;
    font-size: 12px;
    padding-left: 3.5rem;
}
.bdn {
    border: none;
}
@media screen and (max-width: 900px) {
    .areaCont dt {
        padding-left: 1rem;
    }
    .areaCont dd {
        padding-right: 1rem;
    }
    .layoutTxt01 {
        padding-left: 1rem;
    }
}
@media screen and (max-width: 767px) {
    .layoutWrap {
        padding: 10vw 0;
    }
    .areaFlex {
        gap: 0;
        margin: 2rem auto 0;
        width: 90%;
    }
    .areaCont {
        width: 100%;
        border-right: none;
    }
    .areaCont dl {
        margin: 0 0 1rem;
        padding-bottom: 0.5rem;
        border-bottom: 1px dashed #000;
        justify-content: space-between;
    }
    .areaCont dt {
        padding-left: 0;
    }
    .areaCont dd {
        padding-right: 0;
    }
    .layoutTxt01 {
        text-align: center;
        margin: 0 auto 0;
        padding-left: 0;
    }
}
.base3g2Wrap {
    max-width: 700px;
    margin: auto;
    background-color: #f8e5dc;
    border: 1px solid #e85514;
    border-radius: 15px;
    padding: 35px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .base3g2Wrap {
        padding: 4vw;
        text-align: left;
    }
}
.marginAuto {
    margin: auto;
}
.detailWrap {
    padding: 100px 0;
}
.mrCont {
	display:flex;
	margin-top:150px;
}
.mrImg {
	width:52%;
	min-height:715px;
}
.mrTxt01 {
	font-size:20px;
	color:#231815;
	letter-spacing:0.1em;
}
.mrTxt02 {
	font-size:36px;
	color:#231815;
	letter-spacing:0.05em;
}
.mrTxt03 {
	font-size:14px;
	letter-spacing:0.1em;
    line-height: 2.0;
}
.mrTxt05 {
	color:#231815;
    font-size: 20px;
    font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","MS Pゴシック","Yu Gothic Medium","游ゴシック Medium",YuGothic,"游ゴシック体",Arial,sans-serif;
}
.mrTxt05 span {
    background: linear-gradient(transparent 60%, #FFDD00 60%);
    font-size: 140%;
    line-height: 1.0;
    font-weight: bold;
}
.mrTxt05 span small {
    font-size: 70%;
}
.model-flex{
    align-items: center;
    justify-content: space-between !important;
}
.mrData {
    width: 48%;
    padding:0 60px;
    box-sizing: border-box;
}
.mr_top02 .mrImg,
.mr_top04 .mrImg,
.mr_top06 .mrImg,
.mr_top08 .mrImg,
.mr_top10 .mrImg {
	order: 2;
}
.mr_top02 .mrData,
.mr_top04 .mrData,
.mr_top06 .mrData,
.mr_top08 .mrData,
.mr_top10 .mrData {
	order: 1;
}
.familyhouse .mr_top01 .mrImg {
	background:url(img/familyhouse/image01.jpg) no-repeat center center;
	background-size:cover;
}
.familyhouse .mr_top02 .mrImg {
	background:url(img/familyhouse/image02.jpg) no-repeat center center;
	background-size:cover;
}
.familyhouse .mr_top03 .mrImg {
	background:url(img/familyhouse/image03.jpg) no-repeat center center;
	background-size:cover;
}
.familyhouse .mr_top04 .mrImg {
	background:url(img/familyhouse/image04.jpg) no-repeat center center;
	background-size:cover;
}
.familyhouse .mr_top05 .mrImg {
	background:url(img/familyhouse/image05.jpg) no-repeat center center;
	background-size:cover;
}
.familyhouse .mr_top06 .mrImg {
	background:url(img/familyhouse/image06.jpg) no-repeat center center;
	background-size:cover;
}


.motenashie .mr_top01 .mrImg {
	background:url(img/motenashie/image01.jpg) no-repeat center center;
	background-size:cover;
}
.motenashie .mr_top02 .mrImg {
	background:url(img/motenashie/image02.jpg) no-repeat center center;
	background-size:cover;
}
.motenashie .mr_top03 .mrImg {
	background:url(img/motenashie/image03.jpg) no-repeat center center;
	background-size:cover;
}
.motenashie .mr_top04 .mrImg {
	background:url(img/motenashie/image04.jpg) no-repeat center center;
	background-size:cover;
}
.motenashie .mr_top05 .mrImg {
	background:url(img/motenashie/image05.jpg) no-repeat center center;
	background-size:cover;
}
.motenashie .mr_top06 .mrImg {
	background:url(img/motenashie/image06.jpg) no-repeat center center;
	background-size:cover;
}

.motenashie .mr_top07 .mrImg {
	background:url(img/motenashie/image07.jpg) no-repeat center center;
	background-size:cover;
}

.motenashie .mr_top08 .mrImg {
	background:url(img/motenashie/image10.jpg) no-repeat center center;
	background-size:cover;
}

.motenashie .mr_top09 .mrImg {
	background:url(img/motenashie/image08.jpg) no-repeat center center;
	background-size:cover;
}

.motenashie .mr_top10 .mrImg {
	background:url(img/motenashie/image09.jpg) no-repeat center center;
	background-size:cover;
}

@media screen and (max-width: 767px) {
    .detailWrap {
        padding: 10vw 0;
    }
    .mrCont {
        flex-wrap:wrap;
        width:100%;
        margin:10vw auto 0;
    }
    .mrImg {
        width:100%;
        min-height:358px;
    }
    .mrInfo {
        width:94%;
        padding-top:20px;
        margin:0 auto;
    }
    .mrTxt01 {
        font-size:4vw;
    }
    .mrTxt02 {
        font-size:5.5vw;
        margin:10px auto;
        line-height: 1.4;
    }
    .mrTxt03 {
        font-size:3.5vw;
        line-height: 1.8;
    }
    .mrTxt05 {
        font-size: 4.5vw;
    }
    .mrTxt05 span {
        font-size: 160%;
    }
    .mrTxt05 span small {
    }
    .mrData {
        width: 100%;
        padding: 25px;
        box-sizing: border-box;
        margin: 0 auto;
    } 
    .mr_top02 .mrImg,
    .mr_top04 .mrImg,
    .mr_top06 .mrImg,
    .mr_top08 .mrImg,
    .mr_top10 .mrImg {
        order: 1;
    }
    .mr_top02 .mrData,
    .mr_top04 .mrData,
    .mr_top06 .mrData,
    .mr_top08 .mrData,
    .mr_top10 .mrData {
        order: 2;
    }
}
.dtlTribridWrap {
    padding-top: 50px;
    margin-top: 100px;
    border-top: 1px solid red;
    border-image: linear-gradient(to right, #bfdda3 0%, #6fc3b8 50%, #5dbde6 100%) 10%;
    display: flex;
    justify-content: space-between;
}
.dtlTribridCont {
    width: 47.5%;
}
.h4tribrid {
    background: linear-gradient(to right, #bfdda3 0%, #6fc3b8 50%, #5dbde6 100%);
    border-radius: 50px;
    padding: 15px 0 15px 30px;
    font-size: 18px;
    line-height: 1.1;
}
.h4tribrid big {
    font-size: 177%;
    display: block;
}
@media screen and (max-width: 600px) {
    .dtlTribridWrap {
        padding-top: 7vw;
        margin-top: 5vw;
        flex-direction: column;
        gap: 10vw;
    }
    .dtlTribridCont {
        width: 100%;
    }
    .h4tribrid {
        padding: 2vw 0 2vw 6vw;
        font-size: calc(100vw * 16 / 400);
    }
}
/* 3Dモデルハウス */
.model3dWrap {
    padding: 100px 0;
}
.model3dFlex {
    display: flex;
    align-items: center;
    gap: 3rem;
}
.model3dImg {
    width: 50%;
    flex-shrink: 0;
}
.model3dInfo {}
.ttl3dModel {
	font-size: 2.4rem;
}
.mh3dTxt {
    line-height: 2.0;
}
@media screen and (max-width: 767px) {
    .model3dWrap {
        padding: 10vw 0;
    }
    .model3dFlex {
        flex-direction: column;
        gap: 2rem;
    }
    .model3dImg {
        width: 100%;
    }
}
@media screen and (max-width: 400px) {
    .ttl3dModel {
        font-size: calc(100vw * 24 / 400);
    }
}
/* インスタグラム */
.galleryWrap {
	padding: 100px 0;
	background-color:#f7f6f2;
}
.galleryWrap ul {
    display: flex;
    flex-wrap: wrap;
	margin-top:50px;
}
.galleryWrap ul li {
    width: 18%;
    margin: 20px 2.5% 20px 0;
}
.galleryWrap ul li:nth-child(5n) {
    margin: 20px 0 20px 0;
}
.galleryWrap ul li img {
    aspect-ratio: 1 / 1;
    width: 100%;
    height: auto;
    object-fit: cover;
}
@media screen and (max-width: 767px) {
      .galleryWrap {
          padding: 10vw 0;
      }
      .galleryWrap .titleBorder:before {
          width:190px;
      }
      .galleryWrap ul {
          margin-top:30px;
          justify-content: space-between;
      }
      .galleryWrap ul li {
          width: 30%;
          margin: 10px 0;
      }
      .galleryWrap ul li:nth-child(5n) {
          margin: 10px 0;
      }
      .galleryWrap ul li:last-child {
          display:none;
      }
      .galleryWrap ul li img {
      }
      .galleryWrap ul::after {
          display: block;
          content:"";
          width: 30%;
      }
}
.imgHide {
    display: none;
	transition: 0.3s;
}
.imgHide.imgShow {
    display: block;
}
.imgHideSp {
    display: none;
}
/*.imgMore {
    border: 1px solid #000;
    color: #666;
    padding: 1rem 1rem;
    cursor: pointer;
    display: flex;
    justify-content: center;
    width: 350px;
    align-items: center;
    position: relative;
    line-height: 1.0;
    background-color: #fff;
    margin: auto;
    font-size: 18px;
    margin-top: 30px;
}*/
.imgMore {
    cursor: pointer;
    width: 300px;
    padding: 1.5rem 0;
    position: relative;
    display: block;
    color: #000 !important;
    border: 1px solid #000;
    margin: auto;
    background-color: #fff;
    text-align: center;
}
.imgMore i {
    position: absolute;
    top: 50%;
    right: 5%;
    transform: translateY(-50%);
    transition: all 0.3s;
    font-size: 140%;
}
.imgMore::before {
    content: 'もっと見たい方はコチラ';
}
.imgMore.on::before {
    content: '施工事例を戻す';
}
.imgMore span {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) ;
    right: 5%;
}
.imgMore span::before {
    content: '+';
    font-size: 20px;
}
.imgMore.on span::before {
    content: '-';
    font-size: 20px;
}
.instaWrap .sbi {
    margin-top: 50px !important;
}
.bgInsta {
    background-color: #fff;
}
@media screen and (max-width: 767px) {
    .imgHideSp {
        display: block;
    }
    .instaWrap .sbi {
        margin-top:30px !important;
    }
    .imgMore::before {
    }
    .imgMore.on::before {
    }
    .imgMore span::before {
        font-size: 18px;
    }
    .imgMore.on span::before {
        font-size: 18px;
    }
    .imgMore {
        width: 100%;
        padding: 1.5rem 0;
    }
}
.btnReserve a {
    margin: auto;
}




.aboutBaae3Wrap {
    padding: 100px 0;
    background: url("img/motenashie/bg_about_base3.png") repeat 50% 50% #50a135;
    background-size: 100% auto;
}
.aboutBaae3Wrap .h3event big {
    display: block;
}

.aboutBaae3Wrap .mt30{
    text-align: center;
}

.aboutBaae3Wrap .image{
    width: 80%;
    max-width: 800px;
    margin: 45px auto 0;
    background-color: #f8e5dc;
    border: 2px solid #e85514;
    border-radius: 15px;
    padding:35px 45px;
    box-sizing: border-box;
}

.aboutBaae3Wrap .image p{
    font-size: 14px;
    padding: 15px 0 0 0;
}

.aboutBaae3Wrap .image p span{
    color:#e85514;
}


.aboutBaae3Wrap .image + p.att{
    font-size: 12px;
    color: #FFF;
    width: 80%;
    max-width: 800px;
    margin: 20px auto 0;
}

.aboutBaae3flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    background-color: #fff;
    padding: 2% 3%;
}
.aboutBaae3 {
    width: 32%;
}
.h4aboutBase3 {
    font-size: 1.8rem;
    padding: 1rem 0;
    background: #50a135 url("img/motenashie/bg_h4base3.png") repeat center center;
}
.btn3dModel a {
    color: #000 !important;
    border: 1px solid #000;
    margin: auto;
}

@media screen and (max-width: 600px) {
    .aboutBaae3Wrap {
        padding: 10vw 0;
    }
    .h4aboutBase3 {
        font-size: calc(100vw * 18 / 600);
        padding: 0.25rem 0;
    }

    .aboutBaae3Wrap .image {
    width: 100%;
    margin: 45px auto 0;
    padding: 16px 18px;
    box-sizing: border-box;
}
.aboutBaae3Wrap .image p {
    font-size: 12px;
    line-height: 1.5;
}

}



/* BASE3 まちなか */
.bgBase3 {
    background-color: #0075c1;
    padding: 100px 0 150px;
}
.bgBase3 .titleBorder {
  color: #fff;
}
.bgBase3 .titleBorder span {
  border-top: 4px solid #fff;
}
.bgBase3txt01 {
    font-size: 33px;
    font-weight: bold;
    color: #fff;
}
.base3Flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 100px;
}
.baseCont {
    width: 55%;
}
.imgBase3 {
    width: 40%;
}
.imgBase3 img {
    max-width: 100%;
}
.base3Flex.Odd .baseCont {
    order: 2;
}
.base3Flex.Odd .imgBase3 {
    order: 1;
}
.base3Ttl {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #fff;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}
.base3H3 {
    font-size: 26px;
    font-weight: bold;
    color: #fff;
}
.base3H3 span {
    background-color: #fff100;
    font-weight: bold;
    color: #0075c1;
    border-radius: 50px;
    padding: 3px 6px;
    margin-right: 1rem;
}
.bgBase3txt02 {
    font-size: 18px;
    padding: 2px 10px;
    background-color: #fff;
}
.bgBase3txt02 big {
    font-weight: bold;
}
.bgBase3txt03 {
    font-size: 18px;
    color: #fff;
    line-height: 1.8;
}
.bgBase3txt03 small {
    font-size: 84%;
    padding-top: 1rem;
    display: block;
}
.bgBase3 .h3img {
    width: 345px;
}
@media screen and (max-width: 768px) {
    .base3Wrap {
    }
    .bgBase3 {
        padding: 60px 0;
    }
    .bgBase3txt01 {
        font-size: 28px;
    }
    .base3Flex {
        flex-direction: column;
        margin-top: 60px;
    }
    .baseCont {
        width: 100%;
    }
    .imgBase3 {
        width: 100%;
        text-align: center;
        margin-top: 2rem;
    }
    .base3Flex.Odd .baseCont {
        order: 1;
    }
    .base3Flex.Odd .imgBase3 {
        order: 2;
    }
    .base3H3 span {
        padding: 10px 6px;
    }
}
@media screen and (max-width: 600px) {
    .bgBase3 {
        padding: 60px 0;
    }
    .bgBase3txt01 {
        font-size: 20px;
    }
    .base3H3 {
        font-size: 22px;
    }
    .bgBase3txt02 {
        font-size: 16px;
    }
    .bgBase3txt03 {
        font-size: 16px;
    }
    .base3Flex {
        flex-direction: column;
        margin-top: 40px;
    }
    .bgBase3 .h3img {
        width: 70%;
    }
}
.machinakaFlex {
    display: flex;
    justify-content: center;
    gap: 2rem;
}
.machinakaValue {
    color: #fff;
    width: 200px;
    line-height: 1.0;
    text-align: center;
    font-size: 28px;
    padding: 1.5rem 0;
}
@media screen and (max-width: 600px) {
    .machinakaFlex {
        gap: 1rem;
        margin-top: 1rem;
    }
    .machinakaValue {
        width: 150px;
        font-size: 22px;
    }
}
.lh14 {
	line-height: 1.4;
}
.lh15 {
	line-height: 1.5;
}
.lh16 {
	line-height: 1.6;
}
.lh17 {
	line-height: 1.7;
}
.lh18 {
	line-height: 1.8;
}
.lh19 {
	line-height: 1.9;
}
.lh20 {
	line-height: 2.0;
}

.ttlMediaMotenasie {
	font-size: 1.8rem;
	color: #034da0;
}
.mediaMotenasie {}
.mediaMotenasie a {
	font-size: 1.6rem;
	color: #034da0;
	border-bottom: 1px dashed;
}
@media screen and (max-width: 600px) {
    .ttlMediaMotenasie {
        font-size: 1.6rem;
    }
    .mediaMotenasie.ls03 {
		letter-spacing: normal !important;
	}
    .mediaMotenasie a {
        font-size: 1.4rem;
    }
}


















