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


/*--------------------------------
  Main Layout 
--------------------------------*/

#main_area{
	width:100%;
	height:450px;
    overflow: hidden;
    background:url('image/image.jpg') no-repeat left top;
    background-size:cover;
	
}
#main_area .copy_block{
	width:80%;
    margin:0 auto;
    padding-top:200px;
    
    display:flex;
    align-items:flex-start;
}
#main_area .copy_block h2{
	display:block;
    text-align:center;
    font-family: "Cormorant Garamond", system-ui;
    font-weight: 300;
    font-style: normal;
	font-size: clamp(2rem, -0.729rem + 13.65vw, 7.8rem);
    
    letter-spacing:0.3rem;
    line-height:1.3;
    
    color:#FFF;
    text-shadow: 2px 1px 2px rgba(0,0,0,0.8);
	
}
#main_area .copy_block h2 span{
    display:block;
    text-align:center;
    font-family: "Shippori Mincho", system-ui;
    font-weight: 400;
    font-style: normal;
    font-size:clamp(1.4rem, 0.929rem + 2.35vw, 2.4rem);
    text-shadow: none!important;
    letter-spacing:0!important;
}



@media screen and (max-width:767px) {
    #main_area{
        width:100%;
        height:40vh;
        overflow: hidden;
        background:url('image/image.jpg') no-repeat right -160px top;
        background-size:cover;

    }
    #main_area .copy_block{
        width:80%;
        margin:0 auto;
        padding-top:20vh;

        display:flex;
        align-items:flex-start;
    }
    #main_area .copy_block h2{
        
    }
    #main_area .copy_block h2 span{
        
    }
        
}


/*--------------------------------
  Gaiyou Layout 
--------------------------------*/

.grey_bk{
    background:url("/common/image/bk.jpg") repeat-x;
    background-position:left top 61.538vw!important;
    background-size:100%;
    overflow:hidden;
}
.contents_block{
    width:100%;
}

.contents_block .cont_01,
.contents_block .cont_02{
	width:77%;
    margin:0 auto!important;
}
.contents_block .cont_02{
	margin:3.846vw 0;
    display:flex;
    align-items:stretch;
    justify-content: space-between;
    
}
@media screen and (max-width:767px) {
    .grey_bk{
        background-position:left bottom!important;
        background-size:120%;
    }
    .contents_block{
    }

    .contents_block .cont_01{
        width:100%;
        margin:0 auto;
    }
    .contents_block .cont_02{
        width:90%;
        margin:0 auto;
        flex-wrap:wrap;
    }

}

/*--------------------------------
  Gaiyou Layout 
--------------------------------*/
.contents_block .cont_01 .map_box{
    margin:4.615vw 0 3.077vw 0;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 43.75%;    /*16:9の比率にしたい場合、9/16=56.25%*/
}
.contents_block .cont_01 .map_box iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


@media screen and (max-width:767px) {
	.contents_block .cont_01 .map_box{
        padding-top: 50vh;    /*16:9の比率にしたい場合、9/16=56.25%*/
    }
}

/*--------------------------------
  Service Layout 
--------------------------------*/
.contents_block .cont_02 .photo_box{
    width:45%;
    display:flex;
    align-items:flex-end;
}
.contents_block .cont_02 .spec_box{
    width:50%;
    display:flex;
    flex-direction: column;
    justify-content: flex-end;
    
    font-weight: 300;
    font-style: normal;
    font-size:clamp(0.8rem, 0.545rem + 1.27vw, 1.5rem);
    color:#000;
    line-height:1.7;
}
.contents_block .cont_02 .spec_box h3{
    font-family: "Noto Serif JP", system-ui;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
    font-size:clamp(1.4rem, 0.964rem + 2.18vw, 2.6rem);
    color:#000;
    line-height:1.0;
    
    display:block;
    margin-bottom:1.538vw;
}
.contents_block .cont_02 .spec_box .links{
	width:58%;
    margin:1.538vw auto 1.538vw 0;
	
	display:block;
	
	font-size:clamp(0.7rem, 0.439rem + 1.31vw, 1.5rem);
	
	text-align:center;
}
.contents_block .cont_02 .spec_box .links a{
	display:block;
	padding:0.615vw 0;
	
	color:#FFF;
	
	background-color: var(--subcolor);
}
.contents_block .cont_02 .spec_box .links a:hover{
	text-decoration: none;
}

@media screen and (max-width:767px) {
    .contents_block .cont_02 .photo_box{
        width:100%;
        margin-bottom:6.51vw;
        order:2;
    }
    .contents_block .cont_02 .spec_box{
        width:100%;
        letter-spacing:initial;        
        order:1;
    }
    .contents_block .cont_02 .spec_box h3{
        margin-bottom:2.604vw;
    }
    .contents_block .cont_02 .spec_box .links{
        width:70%;
        margin:1.538vw auto 2.604vw 0;
    }
    .contents_block .cont_02 .spec_box .links a{
        padding:1.953vw 0;
    }
    .contents_block .cont_02 .spec_box .links a:hover{
    }
    
}
