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

/*--------------------------------------------------------
　基本設定
--------------------------------------------------------*/


/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 641px){
	
	div#page_title {
		background: url("../images/about/page_title_bg_pc.jpg") no-repeat;
		background-size: cover;
		background-position: center;
	}
	
	div#wapper {
		padding-bottom: 0;
	}
	
	section div.section_inner{
		width: 90%;
		max-width: 1220px;
		margin: 0 auto;
	}
	
	section div.section_inner div.block01,
	section div.section_inner div.block02{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	
	section div.section_inner div.block01 figure.photo01{
		width: 57.38%;
		margin-left: -5.6%;
		line-height: 0;
		position: relative;
	}
	
	/*section div.section_inner div.block01 figure.photo01:before{
		content: "";
		width: 50vw;
		height: 100%;
		background: #E83820;
		position: absolute;
		top: 0;
		left: -49vw;
	}*/
	
	section div.section_inner div.block01 div.text_block{
		width: 43.6%;
	}
	
	section div.section_inner div.block01 div.text_block h3{
		font-size: 20px;
		font-size: clamp(2.0rem,2.0vw,2.8rem);
		font-family: "Inter", sans-serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-variation-settings:"slnt" 0;
		color: #E83820;
		letter-spacing: 0.2em;
		line-height: 1;
		margin-bottom: 44px;
	}
	
	section div.section_inner div.block01 div.text_block h4{
		font-size: 21px;
		font-size: clamp(2.1rem,2.1vw,3.0rem);
		font-weight: 700;
		line-height: 1;
		padding-bottom: 30px;
		margin-bottom: 35px;
		position: relative;
	}
	
	section div.section_inner div.block01 div.text_block h4 small{
		font-size: 12px;
		font-size: clamp(1.2rem,1.2vw,1.7rem);
		font-family: "Inter", sans-serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-variation-settings:"slnt" 0;
		letter-spacing: 0.17em;
	}
	
	section div.section_inner div.block01 div.text_block h4::after{
		content: "";
		width: 29%;
		max-width: 154px;
		height: 3px;
		background: #E83820;
		position: absolute;
		bottom: 0;
		left: -10.6%;
	}
	
	section div.section_inner div.block01 div.text_block h5{
		font-size: 19px;
		font-size: clamp(1.9rem,1.9vw,2.7rem);
		font-weight: 600;
		line-height: 1.6;
		letter-spacing: 0.2em;
		padding-bottom: 15px;
	}
	
	section div.section_inner div.block01 div.text_block h5 + p{
		font-size: 12px;
		font-size: clamp(1.2rem,1.2vw,1.6rem);
		line-height: 1.9;
		letter-spacing: 0.15em;
	}
	
	section div.section_inner div.block01 div.text_block dl.histry{
		width: 88.3%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 20px 0;
		font-size: 12px;
		font-size: clamp(1.2rem,1.2vw,1.6rem);
		line-height: 1.9;
		letter-spacing: 0.08em;
	}
	
	section div.section_inner div.block01 div.text_block dl.histry dt{
		width: 18.6%;
	}
	
	section div.section_inner div.block01 div.text_block dl.histry dd{
		width: 81%;
	}
	
	section div.section_inner div.block01 div.text_block div.profile {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 15px;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text {
		width: 61.6%;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text p {
		font-size: 12px;
		font-size: clamp(1.2rem,1.2vw,1.6rem);
		line-height: 1.9;
		letter-spacing: 0.1em;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text div{
		border: 1px solid #9FA0A0;
		border-width: 1px 0;
		padding: 25px 0;
		margin-bottom: 20px;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text div h6{
		font-size: 15px;
		font-size: clamp(1.5rem,1.5vw,2.0rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.25em;
		margin-bottom: 12px;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text div h6 + p{
		font-size: 12px;
		font-size: clamp(1.2rem,1.2vw,1.6rem);
		letter-spacing: 0.1em;
		line-height: 1;
	}
	
	section div.section_inner div.block01 div.text_block div.profile figure{
		width: 32.8%;
	}
	
	section#philosophy {
		margin-top: 70px;
	}
	
	section#philosophy div.section_inner div.block02{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	
	section#philosophy div.section_inner div.block02 figure.photo02{
		width: 57.38%;
		margin-right: -5.6%;
		line-height: 0;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block{
		width: 45.4%;
		padding-left: 4.9%;
		position: relative;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block::after{
		content: "";
		width: -webkit-calc(90% + 50vw);
        width: -moz-calc(90% + 50vw);
        width: calc(90% + 50vw);
		height: -webkit-calc(100% + 180px);
        height: -moz-calc(100% + 180px);
        height: calc(100% + 180px);
		position: absolute;
		z-index: -1;
		left: -50vw;
		top: -90px;
		background: #F5EFEA;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block h2{
		text-align: left;
		margin-bottom: 25px;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block h3{
		font-size: 27px;
		font-size: clamp(2.7rem,2.7vw,3.7rem);
		font-weight: 600;
		letter-spacing: 0.2em;
		line-height: 1.6;
		color: #E83820;
		margin-bottom: 25px;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block h3 + p{
		font-size: 12px;
		font-size: clamp(1.2rem,1.2vw,1.6rem);
		letter-spacing: 0.1em;
		line-height: 1.9;
		text-align: justify;
	}
	
	section#facility {
		max-width: 100%;
		margin-top: 200px;
	}
	
	section#facility div.section_inner h2{
		margin-bottom: 30px;
	}
	
	div.slider_block {
		width: 100%;
		padding: 60px 0 180px;
		background: #EFEFEF;
	}
	
	div.slider_block div.slider .slick-prev, div.slider_block div.slider .slick-next {
        font-size: 0;
        line-height: 0;
        position: absolute;
        top: 50%;
        display: block;
        width: 90px;
        height: 90px;
		box-shadow: 0px 0px 10px rgba(0,0,0,.5);
        padding: 0;
        -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        transform: translate(0, -50%);
        cursor: pointer;
        color: transparent;
        border: none;
        outline: none;
        background: #E83820;
		z-index: 10;
    }
	
	div.slider_block div.slider .slick-prev {
		left: 0;
	}
	
	div.slider_block div.slider .slick-next {
		right: 0;
	}
	
	div.slider_block div.slider .slick-prev::before, div.slider_block div.slider .slick-next::before {
		content: "";
		width: 15px;
		height: 28px;
		display: inline-block;
		opacity: 1;
    }
	
	div.slider_block div.slider .slick-prev::before {
		content: "";
		background: url("../images/common/arrow_left_w.svg") no-repeat;
		background-size: contain;
    }
	
	div.slider_block div.slider .slick-next::before {
		content: "";
		background: url("../images/common/arrow_right_w.svg") no-repeat;
		background-size: contain;
    }
	
	div.slider_block div.slider div.slick-img{
		padding: 0 4.6%;
	}
	
	div.slider_block div.thumbnail {
		width: 90%;
		max-width: 1078px;
		margin: 50px auto 0;
	}
	
	div.slider_block div.thumbnail div.slick-slide{
		line-height: 0;
		padding: 0 0.45%;
	}
	
	div.slider_block div.thumbnail div.thumbnail-img{
		position: relative;
		cursor: pointer;
	}
	
	div.slider_block div.thumbnail div.thumbnail-img::before{
		content: "";
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,1);
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0.5;
		transition-duration: 0.5s;
		transition-property: opacity, color;
	}
	
	div.slider_block div.thumbnail div.slick-current div.thumbnail-img::before{
		content: "";
		opacity: 0;
	}
}

/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media screen and (max-width: 640px){
	
	div#page_title {
		background: url("../images/about/page_title_bg_sp.jpg") no-repeat;
		background-size: cover;
		background-position: center;
	}
	
	div#wapper {
		padding-bottom: 0;
	}
	
	section div.section_inner{
		width: 90%;
		margin: 0 auto;
	}
	
	section div.section_inner div.block01,
	section div.section_inner div.block02{
		display: block;
	}
	
	section div.section_inner div.block01 figure.photo01{
		width: 94vw;
		margin-left: -5vw;
		line-height: 0;
		position: relative;
		margin-bottom: 50px;
	}
	
	/*section div.section_inner div.block01 figure.photo01:before{
		content: "";
		width: 50vw;
		height: 100%;
		background: #E83820;
		position: absolute;
		top: 0;
		left: -49vw;
	}*/
	
	section div.section_inner div.block01 div.text_block{
		width: 100%;
	}
	
	section div.section_inner div.block01 div.text_block h3{
		font-size: 16px;
		font-size: clamp(1.6rem,4.44vw,1.9rem);
		font-family: "Inter", sans-serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-variation-settings:"slnt" 0;
		color: #E83820;
		letter-spacing: 0.2em;
		line-height: 1;
		margin-bottom: 18px;
	}
	
	section div.section_inner div.block01 div.text_block h4{
		font-size: 28px;
		font-size: clamp(2.8rem,7.77vw,3.4rem);
		font-weight: 700;
		line-height: 1;
		padding-bottom: 30px;
		margin-bottom: 35px;
		position: relative;
	}
	
	section div.section_inner div.block01 div.text_block h4 small{
		font-size: 16px;
		font-size: clamp(1.6rem,4.44vw,1.9rem);
		font-family: "Inter", sans-serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-variation-settings:"slnt" 0;
		letter-spacing: 0.17em;
	}
	
	section div.section_inner div.block01 div.text_block h4::after{
		content: "";
		width: 36.4%;
		height: 3px;
		background: #E83820;
		position: absolute;
		bottom: 0;
		left: -8vw;
	}
	
	section div.section_inner div.block01 div.text_block h5{
		font-size: 24px;
		font-size: clamp(2.4rem,6.66vw,2.8rem);
		font-weight: 600;
		line-height: 1.5;
		letter-spacing: 0.2em;
		padding-bottom: 30px;
	}
	
	section div.section_inner div.block01 div.text_block h5 + p{
		font-size: 15px;
		font-size: clamp(1.5rem,4.16vw,1.8rem);
		line-height: 1.9;
		letter-spacing: 0.15em;
	}
	
	section div.section_inner div.block01 div.text_block dl.histry{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 30px 0;
		font-size: 15px;
		font-size: clamp(1.5rem,4.16vw,1.8rem);
		line-height: 1.9;
		letter-spacing: 0.1em;
	}
	
	section div.section_inner div.block01 div.text_block dl.histry dt{
		width: 28%;
	}
	
	section div.section_inner div.block01 div.text_block dl.histry dd{
		width: 70%;
		letter-spacing: 0.125em;
	}
	
	section div.section_inner div.block01 div.text_block div.profile {
		display: block;
		margin-top: 15px;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text {
		width: 100%;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text p {
		font-size: 15px;
		font-size: clamp(1.5rem,4.16vw,1.8rem);
		line-height: 1.9;
		letter-spacing: 0.1em;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text div{
		border: 1px solid #9FA0A0;
		border-width: 1px 0;
		padding: 25px 0;
		margin-bottom: 20px;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text div h6{
		font-size: 19px;
		font-size: clamp(1.9rem,5.27vw,2.3rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.25em;
		margin-bottom: 12px;
	}
	
	section div.section_inner div.block01 div.text_block div.profile div.profile_text div h6 + p{
		font-size: 15px;
		font-size: clamp(1.5rem,4.16vw,1.8rem);
		letter-spacing: 0.1em;
		line-height: 1;
	}
	
	section div.section_inner div.block01 div.text_block div.profile figure{
		width: 52%;
		margin: 25px auto 80px;
	}
	
	section#philosophy {
		padding-top: 40px;
	}
	
	section#philosophy div.section_inner div.block02{
		display: block;
	}
	
	section#philosophy div.section_inner div.block02 figure.photo02{
		width: 100%;
		line-height: 0;
		margin-top: 35px;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block{
		width: 100%;
		position: relative;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block::after{
		content: "";
		width: 72vw;
		height: -webkit-calc(100% + 140px);
        height: -moz-calc(100% + 140px);
        height: calc(100% + 140px);
		position: absolute;
		z-index: -1;
		left: -5vw;
		top: -40px;
		background: #F5EFEA;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block h2{
		margin-bottom: 25px;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block h2 small{
		display: block;
		margin-top: 15px;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block h3{
		font-size: 29px;
		font-size: clamp(2.9rem,8.05vw,3.4rem);
		font-weight: 600;
		letter-spacing: 0.2em;
		line-height: 1.5;
		color: #E83820;
		margin-bottom: 25px;
	}
	
	section#philosophy div.section_inner div.block02 div.text_block h3 + p{
		font-size: 15px;
		font-size: clamp(1.5rem,4.16vw,1.8rem);
		letter-spacing: 0.1em;
		line-height: 1.9;
		text-align: justify;
	}
	
	section#facility {
		max-width: 100%;
		margin-top: 100px;
		background: #EFEFEF;
		padding-top: 50px;
	}
	
	section#facility div.section_inner h2{
		margin-bottom: 30px;
	}
	
	div.slider_block {
		width: 100%;
		padding: 0 0 150px;
		background: #EFEFEF;
	}
	
	div.slider_block div.slider .slick-prev, div.slider_block div.slider .slick-next {
        font-size: 0;
        line-height: 0;
        position: absolute;
        top: 50%;
        display: block;
        width: 50px;
        height: 50px;
		box-shadow: 0px 0px 10px rgba(0,0,0,.5);
        padding: 0;
        -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        transform: translate(0, -50%);
        cursor: pointer;
        color: transparent;
        border: none;
        outline: none;
        background: #E83820;
		z-index: 10;
    }
	
	div.slider_block div.slider .slick-prev {
		left: 0;
	}
	
	div.slider_block div.slider .slick-next {
		right: 0;
	}
	
	div.slider_block div.slider .slick-prev::before, div.slider_block div.slider .slick-next::before {
		content: "";
		width: 9px;
		height: 15px;
		display: inline-block;
		opacity: 1;
    }
	
	div.slider_block div.slider .slick-prev::before {
		content: "";
		background: url("../images/common/arrow_left_w.svg") no-repeat;
		background-size: contain;
    }
	
	div.slider_block div.slider .slick-next::before {
		content: "";
		background: url("../images/common/arrow_right_w.svg") no-repeat;
		background-size: contain;
    }
	
	div.slider_block div.slider div.slick-img{
		padding: 0;
	}
	
	div.slider_block div.thumbnail {
		display: none;
	}
}

	
