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

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

section#page_title {
    background: none!important;
}

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

@media print, screen and (min-width: 961px){
	
	section#page_title {
        padding-bottom: 0;
    }
	
	section + section {
		margin-top: 5.4vw;
	}
	
	section div.section_inner {
		width: 86%;
		margin: 0 auto;
    }
	
	section div.section_inner h2{
		font-size: 2.8rem;
		font-size: clamp(1.88rem, 1.95vw, 2.8rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.12em;
		padding-bottom: 0.5em;
		border-bottom: 1px solid #000;
		margin-bottom: 2em;
		position: relative;
		padding-top: 2em;
    }
	
	section div.section_inner h2 span{
		font-family: "acumin-variable", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-variation-settings: 'wght' 100, 'wdth' 115, 'slnt' -12;
		font-size: 7.0rem;
		font-size: clamp(4.7rem, 4.895vw, 7.0rem);
		line-height: 1;
		letter-spacing: 0.06em;
		color: #ff0000;
		display: inline-block;
		position: absolute;
		bottom: 0.09em;
		right: 0;
    }
	
	section#message div.section_inner div.block {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	
	section#message div.section_inner div.block div.text_block{
		width: 46.3%;
		
	}
	
	section#message div.section_inner div.block div.text_block span.box{
		display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}
	
	section#message div.section_inner div.block div.text_block h3{
		font-size: 2.4rem;
		font-size: clamp(1.61rem, 1.678vw, 2.4rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.02em;
		color: #3f3c3c;
		margin-top: 1.5em;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	
	section#message div.section_inner div.block div.text_block h3 span{
		display: inline-block;
	}
	
	section#message div.section_inner div.block div.text_block h3 span small{
		font-size: 1.8rem;
		font-size: clamp(1.2rem, 1.258vw, 1.8rem);
		font-weight: 400;
		display: block;
		margin-bottom: 1em;
	}
	
	section#message div.section_inner div.block div.text_block h4{
		font-size: 1.8rem;
		font-size: clamp(1.2rem, 1.258vw, 1.8rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.3em;
		margin-bottom: 2em;
	}
	
	section#message div.section_inner div.block div.text_block h5{
		font-size: 2.4rem;
		font-size: clamp(1.61rem, 1.678vw, 2.4rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.02em;
		color: #3f3c3c;
		margin-bottom: 1.5em;
	}
	
	section#message div.section_inner div.block div.text_block p{
		font-size: 1.6rem;
		font-size: clamp(1.07rem, 1.118vw, 1.6rem);
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.04em;
	}
	
	section#message div.section_inner div.block div.text_block p + p{
		margin-top: 1em;
	}
	
	section#message div.section_inner div.block div.text_block p strong{
		font-size: 115%;
		line-height: 2.2;
	}
	
	section#message div.section_inner div.block div.photo{
		width: 50%;
		line-height: 0;
	}
	
	section#message div.section_inner div.block div.photo div{
		overflow: hidden;
		border-radius: 24px;
	}
	
	section#message div.section_inner div.block + div.block{
		flex-direction: row;
		margin-top: 2vw;
	}
	
	section#message div.section_inner div.block div.text_block.block2{
		width: 73.2%;
	}
	
	section#message div.section_inner div.block div.photo2{
		width: 13.5%;
		margin-right: 3.25%;
	}
	
	section#company div.section_inner h3{
		font-size: 1.8rem;
		font-size: clamp(1.2rem, 1.258vw, 1.8rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.3em;
		margin-bottom: 2em;
		margin-top: 5em;
	}
	
	section#company div.section_inner h3:first-of-type{
		margin-top: 0;
	}
	
	section#company div.section_inner h5{
		font-size: 2.4rem;
		font-size: clamp(1.61rem, 1.678vw, 2.4rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.02em;
		color: #3f3c3c;
		margin-bottom: 1.5em;
	}
	
	section#company div.section_inner h6{
		font-size: 1.8rem;
		font-size: clamp(1.2rem, 1.258vw, 1.8rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.2em;
		border-bottom: 1px solid #000;
		padding-bottom: 0.75em;
		margin-bottom: 1em;
	}
	
	section#company div.section_inner span + h6{
		margin-top: 4em;
	}
	
	section#company div.section_inner dl.philosophy dt{
		font-size: 1.8rem;
		font-size: clamp(1.2rem, 1.258vw, 1.8rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.06em;
		margin-bottom: 1em;
	}
	
	section#company div.section_inner dl.philosophy dd{
		font-size: 1.6rem;
		font-size: clamp(1.07rem, 1.118vw, 1.6rem);
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.06em;
	}
	
	section#company div.section_inner dl.philosophy dd + dt {
		margin-top: 2.5em;
	}
	
	section#company div.section_inner ul.activities {
		
	}
	
	section#company div.section_inner ul.activities li{
		font-size: 1.8rem;
		font-size: clamp(1.2rem, 1.258vw, 1.8rem);
		font-weight: 700;
		line-height: 1.5;
		letter-spacing: 0.2em;
	}
	
	section#company div.section_inner ul.activities li + li{
		margin-top: 0.755em;
	}
	
	section#company div.section_inner dl.outline{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		border-bottom: 1px solid #cccccc;
	}
	
	section#company div.section_inner dl.outline dt,
	section#company div.section_inner dl.outline dd{
		font-size: 1.6rem;
		font-size: clamp(1.07rem, 1.118vw, 1.6rem);
		font-weight: 500;
		line-height: 1.5;
		letter-spacing: 0.1em;
		padding: 0.5em 0;
	}
	
	section#company div.section_inner dl.outline dt {
		width: 15.4%;
	}
	
	section#company div.section_inner dl.outline dd {
		width: 84.6%;
	}
	
	section#company div.section_inner dl.outline dd a{
		color: #000;
	}
	
	section#company div.section_inner ul.partner {
		width: 60%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section#company div.section_inner ul.partner li{
		width: 41.2%;
		font-size: 1.6rem;
		font-size: clamp(1.07rem, 1.118vw, 1.6rem);
		font-weight: 500;
		line-height: 2.2;
		letter-spacing: 0.1em;
	}
	
	section#company div.section_inner ul.partner li:nth-child(even){
		width: 58.8%;
		padding-left: 2em;
	}
	
}
	
	

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

@media screen and (max-width: 960px){
	
	section#page_title {
        padding-bottom: 0;
		margin-bottom: 5vw;
    }
	
	section + section {
		margin-top: 12vw;
	}
	
	section div.section_inner {
		width: 88%;
		margin: 0 auto;
    }
	
	section div.section_inner h2{
		font-size: 1.6rem;
		font-size: clamp(1.6rem, 4.43vw, 4.256rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.12em;
		padding-bottom: 0.5em;
		border-bottom: 1px solid #000;
		margin-bottom: 2em;
		position: relative;
		padding-top: 2em;
    }
	
	section div.section_inner h2 span{
		font-family: "acumin-variable", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-variation-settings: 'wght' 100, 'wdth' 115, 'slnt' -12;
		font-size: 2.1rem;
		font-size: clamp(2.1rem, 5.81vw, 5.58rem);
		line-height: 1;
		letter-spacing: 0.06em;
		color: #ff0000;
		display: inline-block;
		position: absolute;
		bottom: 0.2em;
		right: 0;
    }
	
	section#message div.section_inner div.block {
		display: block;
		position: relative;
	}
	
	section#message div.section_inner div.block div.text_block{
		width: 100%;
	}
	
	section#message div.section_inner div.block div.text_block span.box{
		display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}
	
	section#message div.section_inner div.block div.text_block h3{
		font-size: 1.6rem;
		font-size: clamp(1.6rem, 4.43vw, 4.256rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.02em;
		color: #3f3c3c;
		margin-top: 1.5em;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	
	section#message div.section_inner div.block div.text_block h3 span{
		display: inline-block;
	}
	
	section#message div.section_inner div.block div.text_block h3 span small{
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		font-weight: 400;
		display: block;
		margin-bottom: 1em;
	}
	
	section#message div.section_inner div.block div.text_block h4{
		font-size: 1.4rem;
		font-size: clamp(1.4rem, 3.87vw, 3.724rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.3em;
		margin-bottom: 1.5em;
	}
	
	section#message div.section_inner div.block div.text_block h5{
		font-size: 1.6rem;
		font-size: clamp(1.6rem, 4.43vw, 4.256rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.02em;
		color: #3f3c3c;
		margin-bottom: 1.5em;
	}
	
	section#message div.section_inner div.block div.text_block p{
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.02em;
	}
	
	section#message div.section_inner div.block div.text_block p + p{
		margin-top: 1em;
	}
	
	section#message div.section_inner div.block div.text_block p strong{
		font-size: 115%;
		line-height: 2.2;
	}
	
	section#message div.section_inner div.block div.photo{
		width: 100%;
		margin: 10vw auto 0;
		line-height: 0;
		overflow: hidden;
		border-radius: 4.8vw;
	}
	
	section#message div.section_inner div.block + div.block{
		margin-top: 12vw;
	}
	
	section#message div.section_inner div.block div.text_block.block2{
		width: 100%;
	}
	
	section#message div.section_inner div.block div.photo2{
		width: 30%;
		margin: 5vw auto 0;
	}
	
	section#company div.section_inner h3{
		font-size: 1.4rem;
		font-size: clamp(1.4rem, 3.87vw, 3.724rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.3em;
		margin-bottom: 2em;
		margin-top: 5em;
	}
	
	section#company div.section_inner h3:first-of-type{
		margin-top: 0;
	}
	
	section#company div.section_inner h5{
		font-size: 1.6rem;
		font-size: clamp(1.6rem, 4.43vw, 4.256rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.02em;
		color: #3f3c3c;
		margin-bottom: 1.5em;
	}
	
	section#company div.section_inner h6{
		font-size: 1.4rem;
		font-size: clamp(1.4rem, 3.87vw, 3.724rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.2em;
		border-bottom: 1px solid #000;
		padding-bottom: 0.75em;
		margin-bottom: 1em;
	}
	
	section#company div.section_inner span + h6{
		margin-top: 4em;
	}
	
	section#company div.section_inner dl.philosophy dt{
		font-size: 1.4rem;
		font-size: clamp(1.4rem, 3.87vw, 3.724rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.06em;
		margin-bottom: 1em;
	}
	
	section#company div.section_inner dl.philosophy dd{
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		font-weight: 400;
		line-height: 1.8;
		letter-spacing: 0.06em;
	}
	
	section#company div.section_inner dl.philosophy dd + dt {
		margin-top: 2.5em;
	}
	
	section#company div.section_inner ul.activities {
		
	}
	
	section#company div.section_inner ul.activities li{
		font-size: 1.4rem;
		font-size: clamp(1.4rem, 3.87vw, 3.724rem);
		font-weight: 700;
		line-height: 1.5;
		letter-spacing: 0.2em;
	}
	
	section#company div.section_inner ul.activities li + li{
		margin-top: 0.755em;
	}
	
	section#company div.section_inner dl.outline{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		border-bottom: 1px solid #cccccc;
	}
	
	section#company div.section_inner dl.outline dt,
	section#company div.section_inner dl.outline dd{
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		font-weight: 500;
		line-height: 1.5;
		letter-spacing: 0.1em;
	}
	
	section#company div.section_inner dl.outline dt {
		width: 100%;
		padding-top: 0.5em;
		padding-bottom: 0.25em;
	}
	
	section#company div.section_inner dl.outline dd {
		width: 100%;
		padding-bottom: 0.5em;
	}
	
	section#company div.section_inner dl.outline dd a{
		color: #000;
	}
	
	section#company div.section_inner ul.partner {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section#company div.section_inner ul.partner li{
		width: 100%;
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		font-weight: 500;
		line-height: 2.2;
		letter-spacing: 0.1em;
	}
}