@charset "utf-8";

/*-------------------------------
	EXCEED 共通
-------------------------------*/

.kome {
	font-size:1.4rem;
	position:relative;
	padding-left:1.15em;
	line-height: calc(2.4 / 1.4);
}

.kome::before {
	content:"※";
	display: block;
	width:1em;
	height:1em;
	position:absolute;
	left:0;
	top:0;
}

/*-------------------------------
	EXCEED Keyvisual
-------------------------------*/


.EXCEED_key {
	/*padding:9rem 0 10rem;*/
	padding:9rem 0 15rem;
	background:var(--black-ordermade);
}

.EXCEED_key .maru_title,
.EXCEED_key .maru_title span {
	color:#fff;
}
.EXCEED_key .maru_title{
	font-size: 3.2rem;
}
.EXCEED_key .maru_title span{
	/*padding-left: 0;*/
}
.EXCEED_key .maru_title span:before {
	/*display: none;*/
	background: #fff;
}
.EXCEED_key .maru_title span.exceed__key_EN{
	font-size: 4rem;
	font-family: var(--mincho);
	padding-top: 0.35em;
    padding-bottom: 0.4em;
}
.EXCEED_key .maru_title span.exceed__key_JP{
	font-size: 2.8rem;
	font-family: var(--mincho);
    padding-bottom: 0;
}
/*-------------------------------
	Exceed
-------------------------------*/

.Exceed {
	height:78vw;
	min-height:86rem;
	padding-top:clamp(9rem,10.84vw,13rem);
}

.Exceed_flex {
	display: flex;
	justify-content: flex-end;
}

.Exceed_name h2 {
	font-size:2rem;
	font-weight:700;
	color:#fff;
	margin-bottom:1em;
	line-height:1.25;
	letter-spacing: 0.05em;
}

.Exceed_name h2 span {
	display: block;
	font-size:4rem;
	font-family: var(--no);
	font-weight:500;
	line-height:1.25;
	padding-bottom:0.1em;
	letter-spacing: 0.05em;
}

.Exceed_name h2 span span {
	display: inline-block;
	font-size:2.8rem;
	padding-bottom:0;
	padding-left:0.5em;
}

.Exceed_name p {
	color:#fff;
}

/*-------------------------------
	sec gray
-------------------------------*/

.sec_gray {
	background:#8F9AA5;
	padding:14rem 0 19rem;
}

.gray_wrap {
	align-items: flex-start;
}

.gray_title {
	width:47.5rem;
	display: flex;
	flex-wrap:nowrap;
	align-items: center;
	justify-content: flex-start;
}

.gray_title h3 {
	color:#fff;
	font-size:3rem;
	font-weight:600;
	font-family: var(--mincho);
	padding-right:1em;
}

.percent {
	display: flex;
	align-items: center;
	justify-content: center;
	width:9.5rem;
	height:9.5rem;
	border-radius:50%;
	background:#fff;
}

.percent h4 {
	font-size:1.4rem;
	font-weight:600;
	text-align: center;
	line-height:1;
	font-family: var(--mincho);
}

.percent h4 span {
	font-size:4rem;
	font-weight:600;
	font-style: italic;
	font-family: var(--no);
	position:relative;
	line-height:1;
}

.percent h4 span::after {
	content:"%";
	display: inline-block;
	font-size:2.8rem;
	font-weight:600;
	font-style: italic;
	font-family: var(--no);
	line-height:1;
}

.gray_txt {
	width:calc(100% - 47.5rem);
	margin-top:2.5rem;
}

.gray_txt p {
	color:#fff;
}

/*-------------------------------
	sec pf
-------------------------------*/

.sec_pf {
	background:#fff;
	padding:0;
}

.sec_pf .sec__inner {
	position:relative;
	padding-top:15rem;
	padding-bottom:15rem;
}

.sec_pf .sec__inner::before {
	content:"";
	display: block;
	width:calc(100% - 10rem);
	height:.1rem;
	background: var(--blackcolor);
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
}

.pf_wrap {
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
	align-items: flex-start;
}

.pf_txt {
	width:48.2%;
	max-width:53rem;
}

.pf_txt p:not(:last-of-type) {
	margin-bottom:2em;
}

.pf_img {
	width:44.2%;
	max-width:47.5rem;
}

.pf_img figure {
	width:100%;
}

.pf_img figure img {
	width:100%;
	height:100%;
	object-fit: contain;
}

.pf_img figure.img_border {
	border:.1rem solid #707070;
}

.pf_img figure:not(:last-of-type) {
	margin-bottom:2rem;
}

.pf_img figure figcaption {
	display: block;
	text-align: right;
	line-height:1.25;
	padding:0.5em 0;
}

.pf_txt .bar_title {
	margin-bottom:5rem;
}

.pf_txt .bar_title::before {
	display: none;
}

.pf_txt .bar_title span {
	font-size:1.8rem;
	font-weight:600;
	font-family: var(--mincho);
	display: block;
	line-height:0.8;
	padding-bottom:0.25em;
}

.pf_features {
	margin-top:-4rem;
	border-radius: 3rem 3rem 0 0;
}

.pf_features .sec__inner::before {
	display:none;
}

.pf_features .pf_img {
	max-width:38rem;
}


/*-------------------------------
	ramen wrap
-------------------------------*/

.ramen_wrap {
	background:#F8F8F8;
	margin-top:4rem;
	padding:4rem 5.5rem;
	border-radius: 1rem;
}

.ramen_block:not(:last-of-type) {
	margin-bottom:5.5rem;
	padding-bottom:5.5rem;
	border-bottom:.2rem dotted var(--blackcolor);
}

.ramen_title {
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom:2rem;
}

.ramen_txt {
	width:calc(100% - 24rem );
	padding-right:3rem;
}

.ramen_txt h3 {
	margin-bottom: 1.5rem;
}

.ramen_txt h3 span {
	display: inline-block;
	min-width:15rem;
	line-height:1.5;
	font-size:1.8rem;
	padding:0.175em 0.5em;
	font-weight:700;
	text-align: center;
	border:.1rem solid var(--blackcolor);
}

.ramen_title figure {
	width:24rem;
}

.ramen_title figure img {
	width:100%;
	height:100%;
	object-fit: contain;
}

.ramen_list figure,
.ramen_list_child {
	width:31.4%;
	max-width:31rem;
}

.ramen_list_child figure {
	width:100%;
	max-width:100%;
}

.ramen_list figure figcaption {
	display: block;
	text-align: center;
	line-height:1.25;
	padding:0.5em 0;
}

/*-------------------------------
	pf add
-------------------------------*/

.pf_add_wrap {
	background:#F8F8F8;
	margin-top:7rem;
	padding:6rem 5.5rem;
	border-radius: 1rem;
}

.pf_add_wrap h3 {
	font-size:2.4rem;
	font-weight:700;
	line-height:1.5;
	padding:0.35em 0.5em;
	border:.1rem solid var(--blackcolor);
	text-align: center;
	margin-bottom:5rem;
}

.pf_add_txt h4 {
	font-size:1.8rem;
	margin-bottom:0.75em;
	font-weight:700;
	line-height:1.5;
}

.pf_add_txt p:not(:last-of-type) {
	margin-bottom:1em;
}

/*-------------------------------
	other link
-------------------------------*/

.other_link {
	width:50%;
	height:48.5rem;
	position:relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.other_link::before {
	content:"";
	display: block;
	width:100%;
	height:100%;
	background:#1D2126;
	opacity:.5;
	position:absolute;
	left:0;
	top:0;
}

.other_link_exceed_s {
	background:url(../images/exceed_rc/bg_otherlink_exceed_s.jpg) no-repeat center / cover;
}

.other_link_exceed_rc {
	background:url(../images/exceed_s/bg_otherlink_exceed_rc.jpg) no-repeat center / cover;
}

.other_link_wood {
	background:url(../images/exceed_rc/bg_otherlink_wood.jpg) no-repeat center / cover;
}

.link_inner {
	width:100%;
	position: relative;
}

.other_link h3 {
	font-size:3rem;
	line-height:2.25;
	font-weight:600;
	text-align: center;
	/* margin-bottom:2rem; */
	/* margin-bottom: 4.5rem; */
	margin-bottom: 2rem;
	color:#fff;
	font-family: var(--mincho);
}

.other_link h3::before {
	content:attr(data-en);
	font-size:1.2rem;
	font-weight:500;
	font-family: var(--en);
	display: block;
	text-align: center;
}

.other_link .C-Button {
	margin:0 auto;
}

.other_link p {
	color:#fff;
	text-align: center;
	margin-bottom:4rem;
	display: none;
}
.other_link p.link_inner__exceed-txt{
	display: block;
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 0.1em;
	margin-bottom: 5rem;
    font-family: var(--mincho);
}
.link_exceed h3 {
	font-size:1.4rem;
	font-weight:500;
	line-height:1.25;
	letter-spacing: 0.1em;
}

.link_exceed h3 span {
	font-size:4rem;
	font-family: var(--no);
	line-height:1.25;
	display: block;
	letter-spacing: 0.05em;
}

.other_link .C-Button a:hover{
	color: var(--blackcolor);
	border-color: #ffd23c;
	background: #ffd23c;
}
.other_link .C-Button a:hover::after{
	background-image: url(../images/common/icon_arrow-black-naked.svg);
}

/*-------------------------------
	EXCEED 個別設定
-------------------------------*/

/*-------------------------------
	EXCEED-RC == main タグID
-------------------------------*/

.style_S {
	background:url(../images/exceed_rc/bg_exceed_S.jpg) no-repeat center / cover;
}

.style_E {
	background:url(../images/exceed_rc/bg_exceed_E.jpg) no-repeat center / cover;
}

.ramen_rc01 .ramen_title figure {
	max-width:22.6rem;
}

.ramen_rc02 .ramen_title figure {
	max-width:20.8rem;
}

/*-------------------------------
	EXCEED-S == main タグID
-------------------------------*/

#EXCEED-S .Exceed_name {
	max-width:57rem;
}

.type_flat {
	background:url(../images/exceed_s/bg_exceed_flat.jpg) no-repeat center / cover;
}

.type_maisonette {
	background:url(../images/exceed_s/bg_exceed_maisonette.jpg) no-repeat center / cover;
}

.type_maisonette .Exceed_flex {
	justify-content: flex-start;
}

.type_mansion {
	background:url(../images/exceed_s/bg_exceed_mansion.jpg) no-repeat center / cover;
}

.ramen_s01 .ramen_title figure {
	max-width:23.5rem;
}

.ramen_s02 .ramen_title figure {
	max-width:24.1rem;
}

#EXCEED-S .pf_fire .pf_add {
	justify-content: space-between;
	position:relative;
}

#EXCEED-S .pf_fire .pf_add::before {
	content:"";
	display: block;
	width:.1rem;
	height:calc(100% - 4rem);
	background:var(--blackcolor);
	position:absolute;
	left:50%;
	top:0;
	transform:translateX(-50%);
}

#EXCEED-S .pf_fire .pf_add:last-of-type::before {
	height:100%;
}

#EXCEED-S .pf_fire .pf_add_block {
	width:48%;
	padding-right:6.8%;
	padding-top:2rem;
}

#EXCEED-S .pf_fire .pf_add_block:last-of-type {
	padding-right:0;
	padding-left:6.8%;
}

#EXCEED-S .pf_fire .pf_add:not(:last-of-type) .pf_add_block {
	margin-bottom:2rem;
	padding-bottom:2rem;
	border-bottom:.1rem solid var(--blackcolor);
}

#EXCEED-S .pf_fire .pf_add:first-of-type .pf_add_block {
	padding-top:0;
}

#EXCEED-S .pf_sound_insulation .pf_add_block {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap:wrap;
}

#EXCEED-S .pf_sound_insulation .pf_add_block:not(:last-of-type) {
	padding-bottom:5rem;
	margin-bottom:5rem;
	border-bottom:.1rem solid var(--blackcolor);
}

#EXCEED-S .pf_sound_insulation .pf_add_txt {
	width:48%;
	max-width:42rem;
}

#EXCEED-S .pf_sound_insulation .pf_add_img {
	width:46%;
	max-width:42rem;
}

/*-------------------------------
	WOODEN == main タグID
-------------------------------*/

.order_wooden {
	height:56vw;
	min-height:60rem;
	background:url(../images/wooden/bg_wooden.jpg) no-repeat center / cover;
}

.pf_method .ramen_wrap {
	padding-top:6rem;
	padding-bottom:6rem;
}

.ramen_w01 .ramen_txt h3 span,
.ramen_w02 .ramen_txt h3 span {
	padding:0.175em 1.5em;
}

.ramen_w01 .ramen_title figure,
.ramen_w02 .ramen_title figure {
	margin-top:2rem;
	border-radius:2rem;
	overflow: hidden;
}

.pf_method .ramen_list figure {
	width:48%;
	max-width:47.5rem;
}

.pf_wooden {
	background:#F8F8F8;
	margin-top:6.5rem;
	padding:7rem 2.5rem;
	border-radius: 1rem;
}

.pf_wooden_flex {
	display: flex;
	flex-wrap:wrap;
}

.pf_wooden_line {
	width:calc(100% / 3);
	padding:0 3rem 1rem;
}

.pf_wooden_line:not(:last-of-type) {
	border-right:.1rem solid var(--blackcolor);
}

.pf_wooden h3 {
	margin-bottom:6rem;
}

.pf_wooden h3 span {
	display: inline-block;
	min-width:15rem;
	line-height:1.5;
	font-size:1.8rem;
	padding:0.175em 0.5em;
	font-weight:700;
	text-align: center;
	border:.1rem solid var(--blackcolor);
	margin-left:2.5rem;
}

.pf_wooden_line h4 {
	font-size:2rem;
	font-weight:700;
	text-align: center;
	color:var(--maincolor);
	padding-top:1em;
	margin-bottom:3rem;
	line-height:1.65;
	margin-top:-1.5rem;
}

.pf_wooden_line h4 span {
	display: block;
    text-align: center;
    font-family: var(--no);
    font-size: 8rem;
    font-weight: 600;
    font-style: italic;
    -webkit-text-stroke-width: 0.1rem;
    -webkit-text-stroke-color: var(--maincolor);
    color: transparent;
    line-height: 0.5;
}

.pf_wooden_line h4 span::after {
	content:"";
	display: block;
	width:0.8rem;
	height:0.8rem;
	border-radius: 50%;
	background:var(--maincolor);
	margin:1.7rem auto 1rem;
}



/*-------------------------------

-------------------------------*/


/*-------------------------------

-------------------------------*/


/*-------------------------------

-------------------------------*/


/*-------------------------------
	responsive
-------------------------------*/

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

.gray_title {
	width:100%;
}

.gray_txt {
	width:100%;
}

.ramen_list figure figcaption {
	font-size:1.2rem;
}

/*-------------------------------
	木 造
-------------------------------*/

.pf_wooden {
	padding:7rem 5.5rem;
}

.pf_wooden h3 span {
	margin-left:0;
}

.pf_wooden_line {
	width:100%;
	padding:0 3rem 3rem;
}

.pf_wooden_line:not(:last-of-type) {
	border-right:none;
	border-bottom:.1rem solid var(--blackcolor);
	margin-bottom:3rem;
}

} /* end 960px */


/*-------------------------------
	ver sp
-------------------------------*/

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


/*-------------------------------
	EXCEED 共通
-------------------------------*/

/*-------------------------------
	EXCEED Keyvisual
-------------------------------*/


.EXCEED_key {
	/*padding:26rem 0 15rem;*/
	padding:26rem 0 20rem;
}
.EXCEED_key .maru_title{
	font-size: 4rem;
}
.EXCEED_key .maru_title span.exceed__key_EN{
	font-size: 4.8rem;
}
.EXCEED_key .maru_title span.exceed__key_JP{
	font-size: 3.6rem;
}

/*-------------------------------
	Exceed
-------------------------------*/

.Exceed {
	height:75rem;
	height:83.4rem;
	min-height:auto;
	padding-top:7rem;
}

.Exceed_flex {
	display: flex;
	justify-content: flex-start;
}

.Exceed_name h2 {
	font-size:2.8rem;
}

.Exceed_name h2 span {
	font-size:5.6rem;
}

.Exceed_name h2 span span {
	font-size:3.8rem;
}

/*-------------------------------
	sec gray
-------------------------------*/

.sec_gray {
	padding:12rem 0 15rem;
}

.gray_title {
	width:100%;
}

.gray_title h3 {
	font-size:4rem;
	font-weight:600;
	font-family: var(--mincho);
	padding-right:1em;
}

.percent {
	width:15rem;
	height:15rem;
}

.percent h4 {
	font-size:2.2rem;
}

.percent h4 span {
	font-size:6rem;
}

.percent h4 span::after {
	font-size:2.8rem;
}

.gray_txt {
	width:100%;
	margin-top:4rem;
}

/*-------------------------------
	sec pf
-------------------------------*/

.sec_pf .sec__inner::before {
	width:calc(100% - 12rem);
	height:.2rem;
}

.pf_txt {
	width:100%;
	max-width:100%;
	margin-bottom:10rem;
}

.pf_img {
	width:100%;
	max-width:100%;
}

.pf_img figure.img_border {
	border:.2rem solid #707070;
}

.pf_img figure:not(:last-of-type) {
	margin-bottom:4rem;
}

.pf_img figure figcaption {
	padding:0.5em 0;
	text-align: center;
}

.pf_txt .bar_title {
	margin-bottom:7rem;
}

.pf_txt .bar_title span {
	font-size:2.8rem;
}

.pf_features {
	margin-top:-4rem;
	border-radius: 3rem 3rem 0 0;
}

.pf_features .sec__inner::before {
	display:none;
}

.pf_features .pf_img {
	max-width:100%;
}

/*-------------------------------
	ramen wrap
-------------------------------*/

.ramen_wrap {
	margin-top:0rem;
	padding:7rem 6rem;
}

.ramen_block:not(:last-of-type) {
	margin-bottom:12rem;
	padding-bottom:12rem;
	border-bottom:.4rem dotted var(--blackcolor);
}

.ramen_title {
	margin-bottom:10rem;
}

.ramen_txt {
	width:100%;
	padding-right:0;
}

.ramen_txt h3 {
	margin-bottom:3rem;
}

.ramen_txt h3 span {
	display:block;
	min-width:auto;
	line-height:1.65;
	font-size:3rem;
	padding:0.2em 0.5em;
	border:.2rem solid var(--blackcolor);
}

.ramen_title figure {
	width:100%;
	margin-top:4rem;
}

.ramen_title figure img {
	width:100%;
	height:100%;
	object-fit: contain;
}

.ramen_list figure,
.ramen_list_child {
	width:100%;
	max-width:100%;
}

.ramen_list_child {
	margin-top:4rem;
}

.ramen_list figure:not(:last-of-type) {
	margin-bottom:4rem;
}

.ramen_list figure figcaption {
	font-size:2.8rem;
}

/*-------------------------------
	pf add
-------------------------------*/

.pf_add_wrap {
	margin-top:10rem;
	padding:7rem 6rem;
}

.pf_add_wrap h3 {
	font-size:3rem;
	padding:0.2em 0.5em;
	border:.2rem solid var(--blackcolor);
	margin-bottom:7rem;
}

.pf_add_txt h4 {
	font-size:2.8rem;
}

/*-------------------------------
	other link
-------------------------------*/

.other_link {
	width:100%;
	height:56.3rem;
}

.other_link h3 {
	font-size:4rem;
	margin-bottom:6rem;
}

.other_link h3::before {
	font-size:2rem;
}

.other_link p {
	margin-bottom:4rem;
}
.other_link p.link_inner__exceed-txt{
	display: block;
    font-size: 3rem;
	margin-bottom: 7rem;
}

.link_exceed h3 {
	font-size:2.8rem;
}

.link_exceed h3 span {
	font-size:6rem;
}


/*-------------------------------
	EXCEED 個別設定
-------------------------------*/

/*-------------------------------
	EXCEED-RC == main タグID
-------------------------------*/

.style_S {
	background:url(../images/exceed_rc/bg_exceed_S_sp.jpg) no-repeat center / cover;
}

.style_E {
	background:url(../images/exceed_rc/bg_exceed_E_sp.jpg) no-repeat center / cover;
}

.ramen_rc01 .ramen_title figure {
	max-width:100%;
}

.ramen_rc02 .ramen_title figure {
	max-width:100%;
}

/*-------------------------------
	EXCEED-S == main タグID
-------------------------------*/

#EXCEED-S .Exceed_name {
	max-width:100%;
}

.type_flat {
	background:url(../images/exceed_s/bg_exceed_flat_sp.jpg) no-repeat center / cover;
}

.type_maisonette {
	background:url(../images/exceed_s/bg_exceed_maisonette_sp.jpg) no-repeat center / cover;
}

.type_mansion {
	background:url(../images/exceed_s/bg_exceed_mansion_sp.jpg) no-repeat center / cover;
}

.ramen_s01 .ramen_title figure {
	max-width:100%;
}

.ramen_s02 .ramen_title figure {
	max-width:100%;
}

#EXCEED-S .pf_fire .pf_add::before {
	display: none;
}

#EXCEED-S .pf_fire .pf_add:last-of-type::before {
	height:100%;
}

#EXCEED-S .pf_fire .pf_add_block {
	width:100%;
	padding-right:0;
	padding-top:0rem;
}

#EXCEED-S .pf_fire .pf_add_block:last-of-type {
	padding-right:0;
	padding-left:0;
}

#EXCEED-S .pf_fire .pf_add:not(:last-of-type) .pf_add_block {
	margin-bottom:8rem;
	padding-bottom:8rem;
	border-bottom:.2rem solid var(--blackcolor);
}

#EXCEED-S .pf_fire .pf_add:first-of-type .pf_add_block {
	padding-top:0;
}

#EXCEED-S .pf_sound_insulation .pf_add_block:not(:last-of-type) {
	padding-bottom:8rem;
	margin-bottom:8rem;
	border-bottom:.2rem solid var(--blackcolor);
}

#EXCEED-S .pf_sound_insulation .pf_add_txt {
	width:100%;
	max-width:100%;
	margin-bottom:6rem;
}

#EXCEED-S .pf_sound_insulation .pf_add_img {
	width:100%;
	max-width:100%;
}

/*-------------------------------
	WOODEN == main タグID
-------------------------------*/

.order_wooden {
	height:50rem;
	min-height:auto;
}

.pf_method .ramen_wrap {
	padding-top:7rem;
	padding-bottom:7rem;
}

.pf_method .pf_txt .bar_title {
	margin-bottom:0;
}

.ramen_w01 .ramen_txt h3 span,
.ramen_w02 .ramen_txt h3 span {
	padding:0.2em 0.5em;
}

.ramen_w01 .ramen_title figure,
.ramen_w02 .ramen_title figure {
	margin-top:4rem;
	overflow: hidden;
}

.pf_method .ramen_list figure {
	width:100%;
	max-width:100%;
}

.pf_wooden {
	margin-top:10rem;
	padding:7rem 6rem;
}

.pf_wooden_flex {
	display: flex;
	flex-wrap:wrap;
}

.pf_wooden_line {
	width:100%;
	padding:0;
}

.pf_wooden_line:not(:last-of-type) {
	border-right:none;
	border-bottom:.2rem solid var(--blackcolor);
	margin-bottom:5rem;
	padding-bottom:6rem;
}

.pf_wooden h3 {
	margin-bottom:6rem;
}

.pf_wooden h3 span {
	display:block;
	min-width:auto;
	line-height:1.65;
	font-size:3rem;
	border:.2rem solid var(--blackcolor);
	margin-left:0;
}

.pf_wooden_line h4 {
	font-size:3rem;
	padding-top:1em;
	margin-bottom:5rem;
	margin-top:0;
}

.pf_wooden_line h4 span {
	font-size:9.4rem;
	-webkit-text-stroke-width: 0.2rem;
}

.pf_wooden_line h4 span::after {
	width:1rem;
	height:1rem;
	margin:3rem auto 1.5rem;
}


} /* end 768px */