@charset "UTF-8";


/*==================================================================================================

       リセット

===================================================================================================*/

        html, body, div, span, applet, object, iframe, strong,
        h1, h2, h3, h4, h5, h6, p, blockquote, pre,
        a, abbr, acronym, address, big, cite, code,
        del, dfn, em, font, img, ins, kbd, q, s, samp,
        small, strike, sub, sup, tt, var,
        dl, dt, dd, ol, ul, li,
        fieldset, form, legend, caption, 
        tbody, tfoot, thead, table, label, tr, th, td{
        margin: 0;
        padding: 0;
        border: 0;
        outline: 0;
        font-style: inherit;
        font-family: inherit;
        vertical-align: baseline;
        list-style:none;
        }
        ul { 
        letter-spacing: -1em;
        word-spacing: -1em;
        }
        :root ul {
        letter-spacing: -1px;
        word-spacing: -1px;
        }
        li { 
        letter-spacing: normal;
        word-spacing: normal;
        *display: inline;
        *zoom: 1;
        }
        figure { margin:0;}
        figure video { max-width: 100%;}
        img,iframe	{ vertical-align:bottom;}


/*==================================================================================================

       メイン/汎用

===================================================================================================*/

html { -webkit-text-size-adjust: 100%; }
html,body { width:100%; min-width: 320px; font-size:15px;
/*scroll-behavior: smooth;*/ }
        html,body.min200 { min-width: 200px; }/* iflame用 */
body {
  isolation: isolate;
        background:#D1CBB2;
        background-attachment: fixed; /* スマホ背景固定 */
        letter-spacing:0em;
        text-align:left;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        text-autospace:normal;
        line-height:200%;
        font-feature-settings: "palt" 1;
        overflow: inherit;
        z-index: 0;
	color: #352709;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400; /* 必要なウェイトに変更 */
  font-style: normal;
font-display: swap;
  opacity: 1;
/*  transition: opacity 0.8s ease;
*/        }
/*
body.loaded {
  opacity: 1;
}
*/







        @media screen and (min-width: 1025px) {
        body { overflow: inherit !important; }
        }





        
        
        body.hidden { overflow: hidden; }
        .wrapper    { overflow:hidden;}
        article		{ position:relative; width:100%; z-index: 0;}
        section		{ position:relative; }
        main        { display: block; position: relative; z-index: 1; overflow-x: hidden; }
img{
	width: 100%;
	vertical-align: bottom;
}





h1,h2,h3,h4{
  font-family: "EB Garamond", serif;
  font-optical-sizing: auto;
  font-weight: 500; /* 必要なウェイトに変更 */
  font-style: normal;
font-size: clamp(35px, calc(35px + (50 - 35) * ((100vw - 820px) / (1200 - 820))), 50px);
	color: #352709;
	letter-spacing: 0.15rem;
    line-height: 120%;
	font-display: block;
}

.h2_title{
    line-height: 80%;
	margin-bottom: 20px;
}


.sub_title{
  font-family: "Noto Sans JP", sans-serif;
	font-size: 14px!important;
}

.mini_title{
  font-family: "Noto Sans JP", sans-serif;
	font-size: 16px!important;
	margin-bottom: 20px;
}

.middle_title{
  font-family: "Noto Sans JP", sans-serif;
	font-size: 22px!important;
	margin-bottom: 20px;
}

.flex_half{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.flex_y_center{
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
}

.border_top_none{ 
	border-top: 0px solid rgba(53, 39, 9, 0.15)!important;}



.border_bottom_none{
    border-bottom: 0px solid rgba(53, 39, 9, 0.15)!important;
}




/*==================================================================================================

       トップページ

===================================================================================================*/



.index_message{
	display: flex;
    justify-content: flex-end;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
}


.index_message .message_box{
	width: 680px;
	margin: 10rem 0;
}


.index_pickup{
	padding: 50px 0;
}

.pickup_box{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}


.pickup_box .pickup_text{
width: 32%;
}



.pickup_box .pickup_img{
max-width: 840px;
width: 60%;
}


.area_instagram{
	margin-top: 100px;
	padding-top: 100px;
	border-top: 1px solid rgba(53, 39, 9, 0.15);

}





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

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

#index .index_message .message_box{
	width: 680px;
	margin: 5rem 0;
}
	
#index .pickup_box {
    display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: center;
}	
#index .pickup_box h2 {
	margin-bottom: 10px!important;
}	
#index .pickup_box a .view_more {
	margin-top: 5px!important;
	margin-bottom: 25px!important;
}
	
#index .pickup_box .pickup_text {
    width: 47%;
}	
#index .pickup_box .pickup_img {
    max-width: 840px;
    width: 50%;
}	
	
}



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


#index .index_message .message_box{
	width: 680px;
	margin: 5rem 0 2rem;
}
	
#index .pickup_box {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
#index .pickup_box .pickup_text {
    width: 100%;
}	
#index .pickup_box .pickup_img {
    max-width: 840px;
    width: 100%;
}	
	
    }



/*==================================================================================================

       Casa di acero

===================================================================================================*/




.casadiacero_message{
	display: flex;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
}


.casadiacero_message .message_box{
	width: 48%;
	max-width: 580px;
	margin: 10rem 0;
}


.casadiacero_message .message_img{
	width: 50%;
	max-width: 680px;
	margin: 10rem 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.casadiacero_message .message_img .inimage{
	width: 48%;
}


.casadiacero_message .message_img .inimage:nth-child(1n){
	padding-top: 100px;
	
}
.casadiacero_message .message_img .inimage:nth-child(2n){
	padding-top: 0px;
	
}


.casa_half_box{
	width: 48%;
}
.casa_half_box02{
	width: 45%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
}

.casa_half_box h3 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
}
.casa_half_box h3::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
	padding-right: 10px;
    background-image: url(../img/parts/icon_arrow_bottom.svg);
    background-size: contain;
    background-repeat: no-repeat;
}





.casa_amenity{
	padding-bottom: 100px;
	padding-top: 100px;
	border-top: 1px solid rgba(53, 39, 9, 0.15);
	border-bottom: 1px solid rgba(53, 39, 9, 0.15);

}



@media screen and (max-width:525px) {
	
#casa .casadiacero_message .message_box {
    width: 100%;
    max-width: 580px;
    margin: 5rem 0 0;
}
#casa .casadiacero_message .message_img {
    width: 100%;
    max-width: 680px;
    margin: 2rem 0 5rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}
#casa .casa_amenity {
    padding-bottom: 20px;
    padding-top: 70px;
}	
#casa .casa_amenity .casa_half_box {
        width: 100%;
        margin-bottom: 50px;
    }
	
	
	
#casa .casa_half_box{
	width: 100%;
	margin-bottom: 25px;
}	
	
	
	
	
	
	
	
#casa .casa_half_box02 {
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
	margin-bottom: 20px;
}	
	
#casa .flex_half.mt100 {
	margin-top: 50px!important;
}
	
	
	
	
}










/*==================================================================================================

       アクセス

===================================================================================================*/



.access_root{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
	
}


.access_root .root_l{
	display: flex;
    flex-direction: row;
    width: 30%;
}

.access_root .root_r{
    width: 68%;
}

.access_root .root_l .prefecture{
    width: 100%;
    max-width: 150px;
    min-width: 100px;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    border: #a2997f 1px solid;
    margin-right: 20px;
    color: #352709;
    font-weight: 500;
    line-height: 130%;
    align-self: flex-start;
    display: flex;
    justify-content: center;
    align-items: center;
	text-align: center;
    background-color: #c1baa1;
	
}


.spa_box {
    background-color: #dad5c1;
border-radius: 20px;
    border: #a2997f 1px solid;
    padding: 50px 25px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    align-items: center;
    margin-top: 100px;
}



.casa_third_box{
	width: 32%;
	margin-bottom: 75px;
}
.casa_third_box02{
	width: 45%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
}

.casa_third_box h3 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
	font-family: "Noto Sans JP", sans-serif;    
}
.casa_third_box h3::before {
    content: "";
}
.sightseeing_title{
	margin: 20px 0 15px;
}
.map_tb{
	margin-top: 100px;
}
.sightseeing_tb{
	margin-top: 100px;
	margin-bottom: 200px;
}



@media screen and (max-width:820px) {
	
#access .pickup_box {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
	
#access .pickup_box .pickup_img {
    max-width: 840px;
    width: 100%;
}	
#access .pickup_box .pickup_text {
    width: 100%;
    display: flex;
    order: 2;
	margin-top: 25px;
}
#access .pickup_box .pickup_text .h2_title{
    line-height: 80%;
    margin-bottom: 20px;
    margin-right: 30px;
        display: flex;
        flex-direction: column;
        justify-content: center;
}
	
	
	
	
#access .access_root {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
}
#access .access_root .root_l {
    display: flex;
    flex-direction: row;
        width: 100%;
        justify-content: center;
}
.access_root .root_l .prefecture {
    margin-right: 0px;
}
	
	
	
#access .access_root .root_r {
    width: 100%;
    margin-top: 25px;
}
	
#access .casa_third_box {
    width: 48%;
    margin-bottom: 75px;
}	
	
	
}


@media screen and (max-width:525px) {
	
#access .flex_half {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: space-between;
}	
#access .casa_half_box {
    width: 100%;
}
#access .access_root {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: center;
    }
#access .access_root .root_l .prefecture {
    width: 100%;
    margin-right: 0px;
}
	
#access .access_root .root_l {
        display: flex;
        flex-direction: row;
        width: 50%;
        justify-content: center;
    }
#access .flex_half .casa_half_box:first-child {
margin-bottom: 50px;
}
	
#access .pickup_box .pickup_text {
        width: 100%;
        display: flex;
        order: 2;
        margin-top: 25px;
        flex-direction: column;
    }
#access .casa_third_box {
        width: 100%;
        margin-bottom: 75px;
    }
	

.sightseeing_tb{
	margin-top: 0px;
	margin-bottom: 50px;
}	
	
	
.map_tb{
	margin-top: 50px;
}
}