@charset "utf-8";

/***************************************************************************
*
* INDEX STYLE
*
***************************************************************************/


#main {
    position: relative;
    background: transparent;
    padding: 0;
}

#main:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    transform: translateY(100%);
    width: 100%;
    height: 100px;
    background: #1e94d2;
}

#main .inner {
    position: absolute;
    top: 54.7%;
    left: 52.1%;
    transform: translate(-50%, -50%);
}

#main .titleMain {
    width: 559px;
    margin: 0 auto;
}

#main .mainConsult {
    position: absolute;
    top: calc(100vh - 550px);
    right: 10px;
    width: 180px;
    height: 210px;
}

/*#main .mainConsult .btnConsult {
	position: absolute;
	bottom: 22px;
    left: 50%;
	transform: translateX(-50%);
}

#main .mainConsult .btnConsult a {
	display: block;
    background: #294670;
    color: #fff;
    font-size: 11px;
    font-weight: bold;
    padding: 4px 3px 5px;
    width: 100px;
    border-radius: 10px;
    text-align: center;
    transition: 250ms all linear;
}*/

#main .mainSlide img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

#main .slick-dots {
    bottom: -24px;
}

#main .slick-dots li {
    width: 8px;
    height: 8px;
    margin: 0 7px;
}

#main .slick-dots li button {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fff;
}

#main .slick-dots li.slick-active button {
    background: #f99d32;
}

#main .slick-dots li button:before,
#main .slick-dots li.slick-active button:before {
    content: none;
}

/*areaPickup*/
.areaPickup {
    position: relative;
    padding-top: 13px;
    margin-bottom: 68px;
}

.areaPickup .listPickup {
    position: relative;
    margin: 0 -15px;
}

.areaPickup .listPickup:before {
    content: "";
    position: absolute;
    top: -18px;
    left: 58px;
    transform: translateY(-100%);
    background: url(../images/index/pickup-before.svg) no-repeat center/cover;
    width: 172px;
    height: 95px;
}

.areaPickup .listPickup .itemPickup {
    position: relative;
    margin: 0 15px;
}

.areaPickup .listPickup .itemPickup:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    z-index: -1;
}

.areaPickup .listPickup .itemPickup a {
    display: block;
    border: 2px solid #f99d32;
    border-radius: 20px;
    overflow: hidden;
    height: 191px;
}

.areaPickup .listPickup .itemPickup a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.areaPickup .slick-next,
.areaPickup .slick-prev {
    background: #f99d32;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    transition: 250ms all linear;
    z-index: 2;
}

.areaPickup .slick-prev {
    left: -40px;
}

.areaPickup .slick-next {
    right: -40px;
}

.areaPickup .slick-next:before,
.areaPickup .slick-prev:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 47%;
    transform: translate(-50%, -50%);
    background: url(../images/index/pickup-arrows-left.svg) no-repeat center/cover;
    width: 11px;
    height: 16px;
}

.areaPickup .slick-next:before {
    transform: translate(-50%, -50%) rotate(180deg);
    left: 53%;
}

/*areaTitle*/
.areaTitle {
    text-align: center;
    margin-bottom: 30px;
}

.areaTitle .ttlEn {
    color: #1e94d2;
    font-size: 52px;
    line-height: 1.15;
}

.areaTitle .ttlJp {
    color: #2a4670;
    font-size: 18px;
}

/*END-areaTitle*/

.areaInfor {
    margin-bottom: 34px;
}

.areaInfor .inner {
    display: flex;
    justify-content: space-between;
}

.areaInfor .detailInfor {
    width: 546px;
}

.areaInfor .detailInfor .areaTitle {
    text-align: left;
    margin-bottom: 0;
}

.areaInfor .detailInfor .imageInfor {
    transform: translate(-38px, -6px);
}

.areaInfor .listNews {
    width: 600px;
    margin: -9px 0 37px;
}

.areaInfor .listNews li {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    padding: 18px 0 21px;
    border-bottom: 1px solid #2A4670;
    transition: all 0.4s;
    cursor: pointer;
}

.areaInfor .listNews li:after {
    content: "";
    position: absolute;
    background: url('../images/index/infor-arrows-icon.svg') no-repeat;
    background-size: 100%;
    width: 30px;
    height: 30px;
    top: 49%;
    transform: translateY(-50%);
    right: 0;
    transition: all 0.3s;
}

.areaInfor .listNews li:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #F99D33;
    width: 100%;
    height: 1px;
    bottom: -1px;
    left: 0;
    opacity: 0;
    transition: all 0.3s;
}

.areaInfor .listNews .newsPhoto {
    width: 85px;
    margin-right: 10px;
}

.areaInfor .listNews .wrapNews {
    width: calc(100% - 130px);
}

.areaInfor .listNews .wrapNews .boxNews {
    display: flex;
    align-items: baseline;
    margin-bottom: 7px;
}

.areaInfor .listNews .wrapNews .boxNews .wrapEvent {
    display: flex;
    flex-wrap: wrap;
    margin-right: 4px;
    width: min-content;
}

.areaInfor .listNews .wrapNews .boxNews .event a {
    display: inline-block;
    width: 100px;
    background-color: #2195D2;
    font-size: 12px;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    letter-spacing: 1px;
    border-radius: 10px;
    padding: 3.5px 5px;
    margin: 0 8px 5px 0;
    transition: all 150ms linear;
}

.areaInfor .listNews .wrapNews .boxNews .dayEvent {
    font-size: 12px;
    color: #2A4670;
    font-weight: bold;
}

.areaInfor .listNews .wrapNews .titleNews a {
    font-size: 14px;
    color: #2A4670;
    font-weight: bold;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    transition: all 150ms linear;
}

.areaInfor .btnNews {
    text-align: right;
}

.areaInfor .btnNews a {
    position: relative;
    display: inline-block;
    color: #294670;
    font-size: 16px;
    font-weight: bold;
    padding-right: 44px;
    letter-spacing: 0.9px;
    transition: 250ms all linear;
}

.areaInfor .btnNews a:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background: url(../images/news/icon-arrow.svg) no-repeat center/cover;
    width: 30px;
    height: 30px;
    transition: 250ms all linear;
}

/*areaService*/
.areaService {
    background: #e5e4e4;
    padding: 37px 0 50px;
}

.areaService .areaTitle {
    margin-bottom: 47px;
}

.areaService .listService {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.areaService .listService li {
    width: calc(100% / 2 - 20px);
    margin-top: 39px;
}

.areaService .listService li .titleService {
    position: relative;
    background: #fff;
    color: #294670;
    font-size: 24px;
    font-weight: 900;
    padding: 31px 5px 32px;
    text-align: center;
    border: solid #294670;
    border-width: 1px 0;
    /*transition: all 0.4s;*/
}

.areaService .listService li .titleService:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    background: url(../images/index/infor-arrows-icon.svg) no-repeat center/cover;
    width: 30px;
    height: 30px;
    /*transition: all 0.4s;*/
}


/*areaWork*/
.areaWorks {
    padding-top: 62px;
    margin-bottom: 30px;
}

.areaWorks .topWorks {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 38px;
}

.areaWorks .topWorks .areaTitle {
    display: flex;
    align-items: center;
    margin-bottom: 0;
}

.areaWorks .topWorks .areaTitle .ttlJp {
    margin-left: 14px;
}

.areaWorks .btnSeemore {
    margin-bottom: 13px;
}

.areaWorks .btnSeemore a {
    position: relative;
    display: block;
    color: #294670;
    font-size: 16px;
    font-weight: bold;
    padding-right: 45px;
    letter-spacing: -1.3px;
    transition: 250ms all linear;
}

.areaWorks .btnSeemore a:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background: url(../images/news/icon-arrow.svg) no-repeat center/cover;
    width: 30px;
    height: 30px;
    transition: 250ms all linear;
}

.areaWorks .listWorks {
    display: flex;
    flex-wrap: wrap;
}

.areaWorks .listWorks li {
    width: 380px;
    margin: 0 30px 47px 0;
    display: flex;
    flex-direction: column;
}

.areaWorks .listWorks .wrapStoried {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.areaWorks .listWorks .house {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.areaWorks .listWorks li:nth-child(3n) {
    margin-right: 0;
}

.areaWorks .listWorks .worksPhoto {
    margin-bottom: 21px;
}

.areaWorks .listWorks .worksPhoto img {
    width: 100%;
    border-radius: 20px;
    aspect-ratio: 380/ 250;
}

.areaWorks .listWorks .boxStoried {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 7px;
}

.areaWorks .listWorks .storied a {
    display: inline-block;
    width: 102px;
    background-color: #2195D2;
    font-size: 12px;
    color: #ffffff;
    font-weight: bold;
    border-radius: 10px;
    text-align: center;
    letter-spacing: 1px;
    padding: 3px 5px;
    margin: 0 8px 5px 0;
    /*border: 1px solid #2195D2;*/
    transition: all 150ms linear;
}

.areaWorks .listWorks .storied:nth-child(3n) {
    margin-right: 0;
}

.areaWorks .listWorks .heart a {
    font-size: 12px;
    color: #2A4670;
    letter-spacing: 1.3px;
    margin-bottom: 6px;
    transition: all 150ms linear;
}

.areaWorks .listWorks .titleHouse {
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    height: 100%;
}

.areaWorks .listWorks .titleHouse a {
    display: block;
    font-size: 18px;
    color: #2A4670;
    font-weight: bold;
    letter-spacing: -1.5px;
    transition: all 150ms linear;
}

/*areaAccess*/
.areaAccess {
    background: #e5e4e4;
    padding: 40px 0 81px;
}

.areaAccess .areaTitle {
    margin-bottom: 47px;
}

.areaAccess .boxAccess {
    background: #fff;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 80px 100px 67px;
}

.areaAccess .boxAccess .detailAccess {
    width: 450px;
}

.areaAccess .boxAccess .detailAccess .titleAccess {
    color: #294670;
    font-size: 18px;
    font-weight: 900;
    letter-spacing: 0.5px;
    margin-bottom: 21px;
}

.areaAccess .boxAccess .detailAccess .listAccess {
    width: 100%;
    color: #294670;
    font-size: 14px;
    font-weight: bold;
}

.areaAccess .boxAccess .detailAccess .listAccess li {
    display: flex;
    padding: 15px 0 14px;
    border-bottom: 1px solid #294670;
}

.areaAccess .boxAccess .detailAccess .listAccess li:last-child {
    border-bottom: none;
}

.areaAccess .boxAccess .detailAccess .listAccess li .listTitle {
    width: 76px;
    margin-right: 10px;
}

.areaAccess .boxAccess .detailAccess .listAccess li .listSub a {
    color: #294670;
}

.areaAccess .boxAccess .imageAccess {
    width: 425px;
    box-shadow: 0 0 0 3px #f99d32;
    border-radius: 20px;
    margin-top: 7px;
    margin-right: 2px;
    overflow: hidden;
}

.areaAccess .boxAccess .imageAccess img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.areaAccess .mapAccess {
    height: 450px;
}


/*areaSocial*/
.areaSocial {
    padding-top: 67px;
    margin-bottom: 148px;
}

.areaSocial .boxSocial {
    display: flex;
    justify-content: space-between;
}

.areaSocial .boxSocial .itemSocial {
    width: calc(100% / 2 - 20px);
}

.areaSocial .boxSocial .itemSocial .areaTitle {
    text-align: left;
    margin-bottom: 29px;
}

.areaSocial .boxSocial .itemSocial .showSocial {
    position: relative;
    border: 2px solid #1e94d2;
    border-radius: 20px;
    background: #e5e4e4;
    text-align: center;
    height: 100%;
    max-height: 764px;
}

.areaSocial .boxSocial .itemSocial .showSocial:before {
    content: "";
    position: absolute;
    top: -3px;
    right: 28px;
    transform: translateY(-50%);
    background: url(../images/index/social-face-before.png) no-repeat center/cover;
    width: 230px;
    height: 230px;
    z-index: -1;
}

.areaSocial .boxSocial .itemSocial.instaSocial .areaTitle .ttlEn {
    color: #f99d32;
}

.areaSocial .boxSocial .itemSocial.instaSocial .showSocial {
    border-color: #f99d32;
}

.areaSocial .boxSocial .itemSocial .showSocial .social {
    width: 100%;
    height: 100%;
    max-height: 764px;
    border-radius: 20px;
    overflow: hidden;
}

.areaSocial .boxSocial .itemSocial.instaSocial .showSocial:before {
    background-image: url(../images/index/social-insta-before.png);
}


@media(max-width: 1330px) and (min-width: 769px) {
    #main .inner {
        top: 50%;
        left: 50%;
    }

    #main:before {
        bottom: 1px;
    }

    .areaPickup .listPickup {
        margin: 0;
        padding: 0 20px;
    }

    .areaPickup .slick-prev {
        left: -10px;
    }

    .areaPickup .slick-next {
        right: -10px;
    }

    .areaPickup .listPickup .itemPickup a {
        height: auto;
    }

    .areaInfor .detailInfor .imageInfor {
        transform: translate(-20px, -6px);
    }

}

@media(max-width: 1300px) and (min-width: 769px) {
    .areaWorks .listWorks li {
        width: calc(100%/3 - 20px);
    }

    .areaWorks .listWorks .storied a {
        width: 90px;
        padding: 3px 3px 3px;
        margin-right: 7px;
        transition: all 0.4s;
    }

    .areaWorks .listWorks .titleHouse a {
        letter-spacing: 0;
    }

    .areaInfor .newsInfor {
        margin-left: 30px;
    }

    .areaInfor .listNews {
        width: 500px;
    }

    .MacOS .areaService .listService li .titleService {
        margin-top: -1px;
    }
}

@media(max-width: 1270px) and (min-width: 769px) {

    .areaWorks .listWorks {
        margin-bottom: 100px;
        transition: all 0.4s;
    }

    .areaInfor .listNews {
        transition: all 0.4s;
    }

    .areaInfor .listNews .wrapNews .boxNews .event a {
        margin-bottom: 6px;
        transition: all 0.4s;
    }

    .areaPickup {
        padding-top: 25px;
    }

    .areaPickup .listPickup .itemPickup {
        margin: 0 10px;
    }

    .areaPickup .slick-prev {
        left: -20px;
    }

    .areaPickup .slick-next {
        right: -20px;
    }

    .areaAccess .boxAccess {
        padding: 50px 70px;
    }

    .areaAccess .boxAccess .imageAccess {
        width: 370px;
        margin: 10px 0 0 20px;
    }

    .areaSocial .boxSocial .itemSocial {
        width: calc(100% / 2 - 10px);
    }
}

@media(max-width: 1050px) and (min-width: 769px) {

    .areaSocial .boxSocial .itemSocial .showSocial:before {
        width: 180px;
        height: 180px;
        right: 20px;
    }
}

@media(max-width: 1000px) and (min-width: 769px) {

    #main .titleMain {
        width: 450px;
    }

    #main .mainConsult {
        right: 30px;
        width: 150px;
        height: 175px;
    }

    #main .mainConsult .btnConsult {
        bottom: 23px;
        left: 40%;
    }

    #main .mainConsult .btnConsult a {
        font-size: 10px;
        width: 90px;
    }

    .areaInfor .detailInfor {
        width: 393px;
    }

    .areaInfor .newsInfor {
        width: calc(100% - 393px);
    }

    .areaInfor .listNews {
        width: 100%;
    }

    .areaInfor .listNews .wrapNews {
        width: calc(100% - 130px);
    }

    .areaPickup .listPickup .itemPickup {
        margin: 0 5px;
    }

    .areaAccess .boxAccess {
        padding: 30px 40px;
    }
}

@media (max-width: 900px) and (min-width: 769px) {
    .areaInfor .detailInfor {
        width: 350px;
    }

    .areaInfor .newsInfor {
        width: calc(100% - 380px);
    }

    .areaService .listService li {
        width: calc(100% / 2 - 10px);
        margin-top: 20px;
    }

    .areaService .listService li .titleService {
        font-size: 20px;
        padding: 25px 5px 26px;
    }

    .areaAccess .boxAccess {
        padding: 30px 20px;
    }

    .areaAccess .boxAccess .detailAccess .titleAccess {
        margin-bottom: 10px;
    }

    .areaAccess .boxAccess .detailAccess .listAccess li .listTitle {
        width: 65px;
    }

    .areaAccess .boxAccess .imageAccess {
        margin-left: 10px;
        width: 320px;
    }

    .areaSocial .boxSocial .itemSocial .showSocial:before {
        width: 150px;
        height: 150px;
    }
}

@media (max-width: 850px) and (min-width: 769px) {

    .areaInfor {
        margin-bottom: 50px;
    }

    .areaInfor .inner {
        flex-wrap: wrap;
    }

    .areaInfor .detailInfor {
        width: 100%;
    }

    .areaInfor .newsInfor {
        width: 100%;
    }

    .areaInfor .detailInfor .areaTitle {
        margin-bottom: 30px;
    }

    .areaInfor .detailInfor .imageInfor {
        transform: none;
        margin-bottom: 30px;
    }


    .dummyShow {
        height: 500px;
    }

}

@media (max-width: 800px) and (min-width: 769px) {
    .areaInfor .detailInfor {
        width: 350px;
    }

    .areaInfor .newsInfor {
        width: 343px;
        margin-left: 15px;
    }

    .areaAccess .boxAccess {
        flex-wrap: wrap;
    }

    .areaAccess .boxAccess .detailAccess {
        width: 100%;
    }

    .areaAccess .boxAccess .imageAccess {
        margin-left: 0;
        margin-top: 30px;
        width: 100%;
    }

    .areaSocial .boxSocial .itemSocial .areaTitle {
        text-align: left;
        margin-bottom: 20px;
    }

    .areaSocial .boxSocial .itemSocial .areaTitle .ttlEn {
        font-size: 45px;
    }

    .areaSocial .boxSocial .itemSocial .areaTitle .ttlJp {
        font-size: 16px;
    }

    .areaSocial .boxSocial .itemSocial .showSocial:before {
        width: 130px;
        height: 130px;
    }
}

@media(min-width: 769px) {

    #main .mainConsult .btnConsult a:hover {
        background: #f99d33;
    }

    .areaPickup .listPickup .itemPickup a {
        -webkit-transition: opacity 0.4s ease;
        transition: opacity 0.4s ease;
    }

    .areaPickup .listPickup .itemPickup a:hover {
        opacity: 0.8;
    }

    /*.areaPickup .slick-prev:focus,*/
    .areaPickup .slick-prev:hover {
        background: #2195D2;
        opacity: 0.8;
    }

    /*.areaPickup .slick-next:focus,*/
    .areaPickup .slick-next:hover {
        background: #2195D2;
        opacity: 0.8;
    }

    .areaInfor .listNews a:hover .wrapNews .titleNews {
        color: #F99D33;
    }

    .areaInfor .listNews li:hover:before {
        opacity: 1;
    }

    .areaInfor .listNews li:hover:after {
        background-image: url(../images/news/icon-arrow.svg);
    }

    .areaInfor .listNews .wrapNews .boxNews .event a:hover {
        background: #F99D33;
    }

    .areaInfor .listNews .wrapNews .titleNews a:hover {
        color: #F99D33;
    }

    .areaInfor .btnNews a:hover,
    .areaWorks .btnSeemore a:hover {
        color: #2195D2;
    }

    .areaWorks .btnSeemore a:hover:before,
    .areaInfor .btnNews a:hover:before {
        background-image: url(../images/index/infor-arrows-icon.svg);
    }

    .areaService .listService li a .imageService {
        -webkit-transition: opacity 0.4s ease;
        transition: opacity 0.4s ease;
    }

    .areaService .listService li a:hover .imageService {
        opacity: 0.8;
    }

    .areaService .listService li:nth-child(-n+2) {
        margin-top: 0;
    }

    .areaService .listService li a:hover .titleService {
        color: #F99D33;
    }

    .areaService .listService li a:hover .titleService:before {
        background-image: url(../images/news/icon-arrow.svg);
    }

    .areaAccess .boxAccess .detailAccess .listAccess li .listSub a {
        pointer-events: none;
    }

    .areaWorks .listWorks .storied a:hover {
        background: #f99d33;
    }

    .areaWorks .listWorks .titleHouse a:hover,
    .areaWorks .listWorks .heart a:hover {
        color: #f99d33;
    }
}

@media(max-width: 768px) {

    #main .inner {
        width: 100%;
        top: 45%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    #main .titleMain {
        width: 100%;
        max-width: 400px;
    }

    #main .mainConsult {
        top: auto;
        bottom: 0;
        right: 30px;
        width: 150px;
        height: 175px;
    }

    /*#main .mainConsult .btnConsult {
	    bottom: 23px;
	    left: 40%;
	}

	#main .mainConsult .btnConsult a {
		font-size: 10px;
		width: 90px;
	}*/

    #main .mainSlide .itemSlide {
        overflow: hidden;
    }

    #main .mainSlide .itemSlide img {
        width: -webkit-fill-available;
        /*max-width: 180%;*/
        height: auto;
        object-fit: cover;
    }


    /*areaPickup*/
    .areaPickup {
        padding-top: 25px;
        margin-bottom: 50px;
    }

    .areaPickup .listPickup {
        margin: 0;
        padding: 0 20px;
    }

    .areaPickup .listPickup:before {
        left: 35px;
        width: 130px;
        height: 72px;
    }

    .areaPickup .listPickup .itemPickup {
        margin: 0 10px;
    }

    .areaPickup .listPickup .itemPickup a {
        height: auto;
    }

    .areaPickup .slick-prev {
        left: -20px;
    }

    .areaPickup .slick-next {
        right: -20px;
    }

    .areaTitle .ttlEn {
        font-size: 35px;
    }

    .areaTitle .ttlJp {
        font-size: 16px;
    }

    /*areaInfor*/
    .areaInfor {
        margin-bottom: 50px;
    }

    .areaInfor .inner {
        flex-wrap: wrap;
    }

    .areaInfor .detailInfor {
        width: 100%;
    }

    .areaInfor .detailInfor .areaTitle {
        margin-bottom: 30px;
    }

    .areaInfor .newsInfor {
        width: 100%;
    }

    .areaInfor .listNews {
        width: 100%;
    }

    .areaInfor .listNews .wrapNews {
        width: calc(100% - 130px);
    }

    .areaInfor .detailInfor .imageInfor {
        width: 100%;
        transform: none;
        margin-bottom: 30px;
    }

    .areaInfor .listNews .wrapNews .titleNews {
        font-size: 16px;
        -webkit-line-clamp: 2;
    }

    .areaInfor .listNews .wrapNews .boxNews .event a {
        padding: 3px 5px 3px;
    }

    .areaInfor .btnNews a {
        font-size: 14px;
    }

    /*areaService*/
    .areaService {
        padding: 30px 0 50px;
    }

    .areaService .areaTitle {
        margin-bottom: 30px;
    }

    .areaService .listService li {
        width: calc(100% / 2 - 10px);
        margin-top: 20px;
    }

    .areaService .listService li .titleService {
        font-size: 18px;
    }

    .areaService .listService li .titleService {
        font-size: 18px;
        padding: 22px 5px;
    }

    /*areaWorks*/
    .areaWorks {
        padding-top: 30px;
        margin-bottom: 60px;
    }

    .areaWorks .topWorks {
        display: block;
        margin-bottom: 30px;
    }

    .areaWorks .topWorks .areaTitle {
        margin-bottom: 0;
    }

    .areaWorks .btnSeemore {
        text-align: right;
        margin-bottom: 0;
    }

    .areaWorks .btnSeemore a {
        display: inline-block;
        font-size: 14px;
    }

    .areaWorks .listWorks {
        margin-bottom: 30px;
    }

    .areaWorks .listWorks li {
        width: 47%;
        margin: 0 6% 4% 0;
    }

    .areaWorks .listWorks li:last-child {
        margin: 0 6% 4% 0;
    }

    .areaWorks .listWorks li:nth-child(3n) {
        margin-right: 6%;
    }

    .areaWorks .listWorks li:nth-child(2n) {
        margin-right: 0;
    }

    .areaWorks .listWorks .storied a {
        /*width: calc(100%/3 - 8px);*/
    }

    .areaWorks .listWorks .heart {
        margin-bottom: 3px;
    }

    .areaWorks .listWorks .titleHouse {
        -webkit-line-clamp: 2;
        min-height: 48px;
    }

    .areaWorks .listWorks .titleHouse a {
        font-size: 16px;
        letter-spacing: 0;
    }

    /*areaAccess*/
    .areaAccess {
        padding-bottom: 50px;
    }

    .areaAccess .areaTitle {
        margin-bottom: 30px;
    }

    .areaAccess .boxAccess {
        flex-wrap: wrap;
        padding: 30px 40px 40px;
    }

    .areaAccess .boxAccess .detailAccess {
        width: 100%;
    }

    .areaAccess .boxAccess .imageAccess {
        margin-left: 0;
        margin-top: 30px;
        width: 100%;
    }

    .areaAccess .mapAccess {
        height: 250px;
    }

    /*areaSocial*/
    .areaSocial {
        padding-top: 40px;
        margin-bottom: 70px;
    }

    .areaSocial .boxSocial .itemSocial .areaTitle {
        margin-bottom: 15px;
    }

    .areaSocial .boxSocial .itemSocial {
        width: calc(100% / 2 - 5px);
    }

    .areaSocial .boxSocial .itemSocial .showSocial:before {
        width: 130px;
        height: 130px;
    }

    .areaSocial .boxSocial .itemSocial .showSocial {
        height: auto;
        max-height: inherit;
    }

    .areaSocial .boxSocial .itemSocial.instaSocial .showSocial .social {
        overflow-y: auto;
    }

    .fb_iframe_widget iframe {
        border-radius: 18px;
    }
}

@media all and (device-width: 768px) and (device-height: 1024px) and (orientation:portrait) {
    .areaSocial .boxSocial .itemSocial .showSocial {
        height: 100%;
        max-height: 764px;
    }
}

@media all and (device-width: 1024px) and (device-height: 768px) and (orientation:landscape) {}

@media(max-width: 700px) {

    .areaSocial .boxSocial {
        flex-wrap: wrap;
    }

    .areaSocial .boxSocial .itemSocial {
        width: 100%;
    }

    .areaSocial .boxSocial .itemSocial+.itemSocial {
        margin-top: 50px;
    }

    .areaSocial .boxSocial .itemSocial .showSocial:before {
        width: 180px;
        height: 180px;
    }
}

@media(max-width: 600px) {

    .areaPickup .inner {
        padding: 0;
    }

    .areaPickup .listPickup {
        padding: 0;
    }

    .areaPickup .listPickup:before {
        width: 110px;
        height: 61px;
        left: 25px;
    }

    .areaPickup .slick-prev {
        left: 12px;
    }

    .areaPickup .slick-next {
        right: 12px;
    }

    .areaService .listService li {
        width: 100%;
        margin-top: 30px;
    }

    .areaService .listService li:first-child {
        margin-top: 0;
    }
}
@media(max-width: 430px) {

    #main .mainConsult {
        right: 10px;
        width: 90px;
        height: 105px;
    }
}

@media(max-width: 414px) {

    #main .mainSlide .itemSlide img {
        width: -webkit-fill-available;
        /*max-width: 200%;*/
        object-fit: cover;
    }

    #main .mainConsult .btnConsult {
        bottom: 16px;
        left: 31%;
    }

    #main .mainConsult .btnConsult a {
        font-size: 10px;
        width: 85px;
    }

    /*areaWorks*/
    .areaWorks .listWorks li {
        width: 100%;
        margin: 0 0 40px 0;
    }

    .areaWorks .listWorks .titleHouse {
        min-height: auto;
    }

    .areaWorks .listWorks li:nth-child(3n) {
        margin-right: 0;
    }

    .areaWorks .listWorks li:last-child {
        margin: 0;
    }

    .areaAccess .boxAccess {
        flex-wrap: wrap;
        padding: 30px 25px 40px;
    }

    .areaAccess .boxAccess .detailAccess .titleAccess {
        margin-bottom: 20px;
    }

    .areaAccess .boxAccess .detailAccess .listAccess li {
        padding: 13px 0;
    }

    /*areaSocial*/
    .areaSocial .boxSocial .itemSocial+.itemSocial {
        margin-top: 30px;
    }

    .areaSocial .boxSocial .itemSocial .showSocial:before {
        width: 130px;
        height: 130px;
    }




}