@charset "utf-8";

.locationMain {
    padding:215px 0px 75px 0px;
}


.locationMain h2 {
    color:#bea574;
    font-size:1.6rem;
    text-align:center;
    padding-bottom:2em;
}


.locationMain p {
    font-size:1.2rem;
    padding-bottom:1em;
    line-height:1.6em;
    color:#424242;
    text-align:center;
}


.locationMain p.copy {
    text-align:center;
    font-size:2.6rem;
}


.locationSlide {
    background-color:#fff;
    margin:0 auto 75px auto;
    height:100px;
}


.locationLocation {
    padding:75px 0;
    background-color:#fff;
}


.locationLocation .in {
    max-width:1200px;
    margin:0 auto;
    position:relative;
}


.locationLocation .in:after {
    content:"";
    display:block;
    clear:both;
}


.locationLocation h2 {
    text-align:center;
}


.locationLocation .locationLocationPh {
    width:52%;
    height:auto;
    margin:auto 0;
    position:absolute;
    top:140px;
    bottom:0;
    right:0;
}


.locationLocation .locationLocationTxt {
    float:left;
    width:50%;
    padding-top:75px;
}


.locationLocation .locationLocationTxt h3 {
    padding-bottom:30px;
    padding-left:15px;
}


.locationLocation .locationLocationTxt p {
    max-width:500px;
    font-size:1.4rem;
    line-height:2em;
    padding-bottom:30px;
    padding-left:15px;
}


.locationLocation .locationLocationTxt p a {
}

.photo_w_bnr {
    position: relative;
    width: 860px;
    height: 305px;
    margin: 100px auto 20px;
    background-image: url(../img/photo_bnr_pc.png);
    background-repeat: no-repeat;
    -webkit-background-size: contain;
         -o-background-size: contain;
            background-size: contain;
}
.photo_w_bnr a {
    position: absolute;
    bottom: 40px;
    left: 0;
    right: 0;
    margin: auto;
    width: 400px;
    height: 55px;
}

@media screen and (max-width:640px) {
	.comPageTit.type03 .tit img {
		height: 39px;
		height: 9.5vw;
	}
	.comPageTit.type03 .copy img {
		height: 39px;
		height: 9.5vw;
	}
    .photo_w_bnr {
        width: 100%;
        height: 0;
        padding-top: calc(385/580*100%);
        margin: 50px auto 20px;
        background-image: url(../img/photo_bnr_sp.png);
    }
    .photo_w_bnr a {
        bottom: 8%;
        left: 0;
        right: 0;
        margin: auto;
        width: 70%;
        height: 28px;
    }
    .photo_w_bnr a span {
        font-size: 12px;
    }

}


.locationPlan {
    margin-bottom:90px;
}


.locationPlan:after {
    content:"";
    clear:both;
    display:block;
}


.locationPlan .in {
    padding:70px 0 140px;
    margin:0 auto;
    background-color:#fff;
}


.locationPlan h2 {
    color:#bea574;
    font-size:1.6rem;
    text-align:center;
    padding-bottom:75px;
}


.locationPlanJp {
    position:relative;
    max-width:1460px;
    margin:0 auto;
    padding:0 70px 100px;
}


.locationPlanJp:after {
    content:"";
    display:block;
    clear:both;
}


.locationPlanEu {
    position:relative;
    text-align:right;
    max-width:1460px;
    margin:0 auto;
    padding:0 70px 100px;
}


.locationPlanEu:after {
    content:"";
    display:block;
    clear:both;
}


.locationPlanJp figure {
    float:right;
    position:static;
    max-width:732px;
    width:45%;
    margin:25px 0 0 0;
}


.locationPlanEu figure {
    position:static;
    left:0;
    top:-50px;
    width:30%;
    float:left;
}


.locationPlanJp figure img,
.locationPlanEu figure img {
    width:100%;
    height:auto;
}


.locationPlanJpBox {
    width:40%;
    max-width:600px;
    float:left;
    margin-left:4.8%;
}


.locationPlanEuBox {
    float:right;
    width:60%;
    padding-right:15px;
    text-align:left;
    display:inline-block;
    max-width:836px;
    margin-right:4.8%;
}


.locationPlanJpBox img,
.locationPlanEuBox img {
    max-width:100%;
    height:auto;
}


.locationPlanJpBox ul,
.locationPlanEuBox ul {
    margin-bottom:10px;
}


.locationPlanJpBox ul li,
.locationPlanEuBox ul li {
    border-bottom:solid 1px #d7d7d7;
    padding:30px 0px 10px 0px;
}


.locationPlanJpBox dt,
.locationPlanEuBox dt {
    display:inline-block;
    text-align:left;
    font-size:2.0rem;
    padding-bottom:10px;
}


.locationPlanJpBox dd,
.locationPlanEuBox dd {
    display:inline-block;
    float:right;
    font-size:2.0rem;
    padding-bottom:10px;
}


.locationPlanEuBox ul li p,
.locationPlanJpBox ul li p {
    font-size:13px;
    clear:both;
}


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


.locationPlanPrice {
    margin:0 auto;
    max-width:1350px;
    padding:0 50px;
}


.locationPlanPrice:after {
    display:block;
    clear:both;
    content:"";
}


.locationPlanPriceL {
    float:left;
}


.locationPlanPriceR {
    float:right;
}


.locationPlanPriceL,
.locationPlanPriceR {
    width:46%;
}


.locationPlanPriceL h3,
.locationPlanPriceR h3 {
    margin-bottom:30px;
    text-align:center;
    color:#bea574;
    font-size:0;
}


.locationPlanPriceL table,
.locationPlanPriceR table {
    width:100%;
}


.locationPlanPriceL table th,
.locationPlanPriceL table td,
.locationPlanPriceR table th,
.locationPlanPriceR table td {
    border:solid 1px #d7d7d7;
    text-align:left;
    padding:16px;
    font-size:1.8rem;
    font-weight:normal;
}


.locationPlanPriceL table th span,
.locationPlanPriceL table td span {
    font-size:1.5rem;
}


.locationPlanPriceR p {
    font-size:1.5rem;
    padding:10px 0 25px 20px;
}


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

/* レイアウト */

.locationMain {
    padding:215px 0px 75px 0px;
}

.locationMain h2 {
    color:#bea574;
    font-size:16px;
    font-size:1.6rem;
    text-align:center;
    padding-bottom:2em;
}

.locationMain p {
    font-size:12px;
    font-size:1.2rem;
    padding-bottom:1em;
    line-height:1.6em;
    color:#424242;
    text-align:center;
}

.locationMain p.copy {
    text-align:center;
    font-size:26px;
    font-size:2.6rem;
}

.locationSlide {
    background-color:#fff;
    margin:0 auto 75px auto;
    height:100px;
}

.locationLocation {
    padding:75px 0 150px;
    background-color:#fff;
}

.locationLocation .in {
    max-width:1200px;
    margin:0 auto;
    position:relative;
}

.locationLocation .in:after {
    content: "";
    display: block;
    clear: both;
}

.locationLocation h2 {
    text-align:center;
}

.locationLocation .locationLocationPh {
    width:52%;
    height:auto;
    margin:auto 0;
    position:absolute;
    top:140px;
    bottom:0;
    right:0;
}

.locationLocation .locationLocationTxt {
    float: left;
    width: 50%;
    padding-top: 75px;
}

.locationLocation .locationLocationTxt h3 {
    padding-bottom: 30px;
    padding-left: 15px;
}

.locationLocation .locationLocationTxt p {
    max-width: 500px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 20px;
    line-height: 2rem;
    padding-bottom: 30px;
    padding-left: 15px;
}

.locationLocation .locationLocationTxt p a {
}

@media screen and (max-width:640px) {
	.imgslideArea01.type02 {
		margin-bottom: 15%;
	}
    .locationMain {
        padding:0px 0px 0px 0px;
    }

    .locationMain h2 {
        color:#bea574;
        font-size:16px;
        font-size:1.6rem;
        text-align:center;
        padding-bottom:2em;
    }

    .locationMain p {
        font-size:12px;
        font-size:1.2rem;
        padding-bottom:1em;
        line-height:1.6em;
        color:#424242;
        text-align:center;
    }

    .locationMain p.copy {
        text-align:center;
        font-size:26px;
        font-size:2.6rem;
    }

    .locationSlide {
        background-color:#fff;
        margin:0 auto 0 auto;
        height:auto;
    }

    .locationLocation {
        padding:0;
        background-color:#fff;
    }

    .locationLocation .in {
        margin:0 auto;
    }

    .locationLocation .in:after {
        content: "";
        clear: both;
    }

    .locationLocation {
        padding:8% 0 10%;
    }
    .locationLocation h2 {
        margin-bottom:5%;
        text-align:center;
    }
    .locationLocation h2 img {
        width:auto;
		height: 42px;
        height:13vw;
    }

    .locationLocation .locationLocationPh {
        margin:0 auto;
        width:90%;
        float:none;
    }

    .locationLocation .locationLocationPh img {
        width: 100%;
        height: auto;
    }

    .locationLocation .locationLocationTxt {
        float:none;
        width:100%;
        padding-top:5%;
    }

    .locationLocation .locationLocationTxt h3 {
        padding:0 0 5%;
    }
    .locationLocation .locationLocationTxt h3 img {
		width: auto;
		height: 58px;
		height: 18vw;
    }

    .locationLocation .locationLocationTxt p {
        padding:0 0 5%;
		font-size: .9rem;
		line-height: 1.7rem;
    }
    .locationLocation .locationLocationTxt p a {
        font-size:0;
        display:block;
        margin:0 auto;
    }
    .locationLocation .locationLocationPh {
        width:100%;
        position:static;
    }
}

.locationPlan {
    margin-bottom:90px;
}

.locationPlan:after {
    content: "";
    clear: both;
    display: block;
}

.locationPlan .in {
    padding:70px 0 140px;
    margin: 0 auto;
    background-color: #fff;
}

.locationPlan h2 {
    color: #bea574;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
    padding-bottom: 75px;
}

.locationPlanJp {
    position: relative;
    max-width: 1460px;
    margin: 0 auto;
    padding: 0 70px 100px;
}
.locationPlanJp:after {
    content:"";
    display:block;
    clear:both;
}

.locationPlanEu {
    position: relative;
    text-align: right;
    max-width: 1460px;
    margin: 0 auto;
    padding: 0 70px 100px;
}
.locationPlanEu:after {
    content:"";
    display:block;
    clear:both;
}

.locationPlanJp figure {
    float:right;
    position:static;
    max-width:732px;
    width: 45%;
    margin:25px 0 0 0;
}

.locationPlanEu figure {
    position: static;
    left: 0; 
    top: -50px;
    width: 30%;
    float: left;;
}

.locationPlanJp figure img,
.locationPlanEu figure img {
    width: 100%;
    height: auto;
}

.locationPlanJpBox {
    width: 40%;
    max-width: 600px;
    float:left;
    margin-left: 4.8%;
}

.locationPlanEuBox {
    float:right;
    width: 60%;
    padding-right: 15px;
    text-align: left;
    display: inline-block;
    max-width: 836px;
    margin-right: 4.8%;
}

.locationPlanJpBox img,
.locationPlanEuBox img {
    max-width:100%;
    height:auto;
}
.locationPlanJpBox ul,
.locationPlanEuBox ul {
    margin-bottom: 10px;
}

.locationPlanJpBox ul li,
.locationPlanEuBox ul li {
    border-bottom: solid 1px #d7d7d7;
    padding: 30px 0px 10px 0px;
}

.locationPlanJpBox dt,
.locationPlanEuBox dt {
    display: inline-block;
    text-align: left;
    font-size: 20px;
    font-size: 2.0rem;
    padding-bottom: 10px;
	line-height: 1.3;
}

.locationPlanJpBox dd,
.locationPlanEuBox dd {
    display: inline-block;
    float: right;
    font-size: 20px;
    font-size: 2.0rem;
    padding-bottom: 10px;
}

.locationPlanEuBox ul li p,
.locationPlanJpBox ul li p {
    font-size: 13px;
    clear: both;
}
@media screen and (max-width:640px) {
    .locationPlan .in {
        padding:8% 0 12%;
    }
    .locationPlan h2 {
        padding-bottom:3%;
    }
    .locationPlan h2 img {
		height: 42px;
        height:13vw;
        width:auto;
    }
    .locationPlanJp,
    .locationPlanEu {
        padding:0 3% 12%;
    }
    .locationPlanJp > *,
    .locationPlanEu > * {
        width:100% !important;
        float:none !important;
    }
    .locationPlanJp > figure,
    .locationPlanEu > figure {
        margin-bottom:10%;
    }
    .locationPlanJp > .locationPlanJpBox,
    .locationPlanEu > .locationPlanEuBox {
        margin:0;
    }
	.locationPlanJpBox dt,
	.locationPlanEuBox dt {
		font-size: 1.3rem;
	}
	.locationPlanEuBox ul li p,
	.locationPlanJpBox ul li p {
		font-size: .9rem;
		line-height: 1.7rem;
	}
	.locationPlanEuBox ul li p,
	.locationPlanJpBox ul li p {
		font-size: 1rem;
		line-height: 1.6rem;
	}
	.locationPlanJpBox dd, .locationPlanEuBox dd {
		font-size: 1.8rem;
	}
}

.locationPlanPrice {
    margin:0 auto;
    max-width:1350px;
    padding:0 50px;
}

.locationPlanPrice:after {
    display: block;
    clear: both;
    content: "";
}

.locationPlanPriceL {
    float: left;
}

.locationPlanPriceR {
    float: right;
}

.locationPlanPriceL,
.locationPlanPriceR {
    width: 46%;
}

.locationPlanPriceL h3,
.locationPlanPriceR h3 {
    margin-bottom:30px;
    text-align: center;
    color: #bea574; 
    font-size:0;
}

.locationPlanPriceL table,
.locationPlanPriceR table {
    width: 100%;
}

.locationPlanPriceL table th,
.locationPlanPriceL table td,
.locationPlanPriceR table th,
.locationPlanPriceR table td {
    border: solid 1px #d7d7d7;
    text-align: left;
    padding: 16px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: normal;
}

.locationPlanPriceL table th span,
.locationPlanPriceL table td span {
    font-size: 15px;
    font-size: 1.5rem;
}

.locationPlanPriceR p {
    font-size: 15px;
    font-size: 1.5rem;
    padding: 10px 0 25px 20px;
}
.locationPlanPrice .anno {
    text-align:right;
}

@media screen and (max-width:640px) {
    .locationPlanPrice {
        padding:0 3%;
    }
    .locationPlanPriceL,
    .locationPlanPriceR {
        width:100%;
        float:none;
    }
    .locationPlanPriceL {
        margin-bottom:10%;
    }
    .locationPlanPriceL table,
    .locationPlanPriceR table,
    .locationPlanPriceL table tbody,
    .locationPlanPriceR table tbody,
    .locationPlanPriceL table tr,
    .locationPlanPriceR table tr,
    .locationPlanPriceL table tr th,
    .locationPlanPriceR table tr th,
    .locationPlanPriceL table tr td,
    .locationPlanPriceR table tr td {
        display:block;
    }
    .locationPlanPriceL table tr th,
    .locationPlanPriceR table tr th {
        border-bottom:0;
        padding-bottom:0;
    }
    .locationPlanPriceL table tr td,
    .locationPlanPriceR table tr td {
        border-top:0;
        text-align:right;
    }
	.locationPlanPriceL h3 img,
	.locationPlanPriceR h3 img {
		width: auto;
		height: 22px;
		height: 7vw;
	}
	.locationPlanPriceL table th, .locationPlanPriceL table td, .locationPlanPriceR table th, .locationPlanPriceR table td {
		padding: 3%;
		line-height: 1.3;
		font-size: 1.3rem;
	}
	.locationPlanPriceR p {
		font-size: 11px;
		font-size: 1.1rem;
		padding-left: 0;
	}
	.locationPlanPrice .anno {
		font-size: 10px;
		font-size: 1.0rem;
	}
}

.imgslideArea01.type02 {
	margin-top: 0;
	margin-bottom: 80px;
}
.anno {
    line-height:20px;
    font-size:13px;
    clear:both;
}
@media screen and (max-width:640px) {
	.anno {
		font-size: .9rem;
		line-height: 1.7rem;
	}
	.locationPlanPriceL table th span, .locationPlanPriceL table td span {
		font-size: 1.0rem;
	}
}

.locationPlanPriceR table th .hosoku{
    font-size: 1.5rem;
}
.priceHosoku{
    text-align: center;
    font-size: 1.5rem;
    padding-top: 80px;
    line-height: 2;
}
@media screen and (max-width:640px) {
    .priceHosoku{
        font-size: 1.1rem;
        padding-top: 50px;
    }
}