/**
 * @author sara
 * Copyright (c) 2024 sara Co., Ltd.
 * All rights reserved.
 */
 
/* リセット
–––––––––––––––––––––––––––––––––––––––––––––––––– */

body , html {
	width: 100%;
	height: 100%;
	font-size: 62.5%;
	line-height: 2;
	color: #4E4E4E;
	font-weight: 500;
	font-feature-settings: "palt" 1;
}
body{
	margin:0;
	padding:0;
	font-family: "Noto Sans JP", sans-serif;
}
.futura{
	font-family: futura-pt, sans-serif;
}
h1,h2,h3,h4,h5,h6,p,dl,dt,dd,ol,ul,li{margin:0;padding:0;}
ul{list-style: none}
.clearfix:after	{
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}

img{
	width: 100%;
	height: auto;
	display:block;
}
img[src$=".svg"] {
	width: 100%;
}
a:link { color: #4E4E4E;text-decoration: none; }
a:visited { color: #4E4E4E;text-decoration: none; }
a:hover { color: #4E4E4E; text-decoration: none;}
a:active { color: #4E4E4E; text-decoration: none;}

input[type="checkbox"]{display: none}


.overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, .45);
	overflow: hidden;
	overflow-y: auto; /* scrollにはしないことでスクロールの必要がないときはスクロールバーを表示させない */
	-webkit-overflow-scrolling: touch;
}

.zen-kaku-gothic-new-light {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 300;
	font-style: normal;
}

.zen-kaku-gothic-new-regular {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.zen-kaku-gothic-new-medium {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	font-style: normal;
}

.zen-kaku-gothic-new-bold {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 700;
	font-style: normal;
}

.zen-kaku-gothic-new-black {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 900;
	font-style: normal;
}


/* common
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.pc{
	display: block !important;
}
.sp,.ssp{
	display: none !important;
}
body.fixed{
	overflow: hidden;
}
.caution{
	text-indent: -1em;
	padding-left: 1em;
}
#container{
	overflow: hidden;
	position: relative;
}
/* TOP - MV
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container.top{
	overflow: initial;
}
#container #mv{
	width: 100%;
	/* height: 100vh; */
	height: calc(100vh - 140px);
	display: flex;
	align-items: center;
	justify-content: center;
	background-size:cover;
	background: url(../img/top/mv_background.jpg) no-repeat center center;
	position: relative;
}
#container #mv .menu_list {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	display: flex;
	justify-content: left;
	align-items: flex-start;
}
#container #mv > div{
	width: 83.333333333vw;
	/* height: 100vh; */
	height: calc(100vh - 140px);
	overflow: hidden;
	position: relative;
}
#container #mv > div > video{
	object-fit: cover;
	width: 100%;
	height: 100%;
	object-position: 50% 50%;
}
@media screen and (max-width: 767px) {
	#container #mv{
		height: 100vh;
	}
	#container #mv > div{
		height: 100vh;
	}
}
/* TOP - KV
------–––––––––––––––––––––––––––––––––––––– */
#container #kv{
	width: 100%;
	height: calc(100vh - 80px);
	display: flex;
	align-items: center;
	justify-content: center;
	background: url(../img/top/mv_background.jpg) no-repeat center center;
	position: relative;
}
#kv .swiper, #kv .swiper-wrapper, #kv .swiper-slide {
	position: relative;
	width: 83.333333333vw;
	height: auto;
	min-height: 400px;
	overflow: hidden;
} 
#kv .swiper-slide {
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	position: relative;
}
#kv .swiper-slide > div {
	width: 83.333333333vw;
	position: relative;
	overflow: hidden;
}
#kv .swiper-slide img {
	width: 100%;
	height: calc(100vh - 80px);
	object-fit: cover;
	display: block;
}
.swiper-slide img {
	transform: scale(1);
	transition: transform 9s linear;
  }
  .swiper-slide-active img {
	transform: scale(1.1);
	transition: transform 9s linear;
  }
  @keyframes kv-zoom {
	0% {
	  transform: scale(1);
	}
	100% {
	  transform: scale(1.1);
	}
  }
#kv .swiper-slide .box{
	position: absolute;
    bottom: 62px;
	left: 50%;
	transform: translateX(-50%); 
    z-index: 10;
    width: 100%;
    text-align: center;
    outline: none;
    font-size: 1.6rem;
    border: none;
	background-color: rgba(255, 255, 255, 1);
    display: flex;
	flex-direction: column;
    align-items: center;
}
#kv .swiper-slide .box span{
	display: block;
	width: 100%;
	padding: 0 0 0 0;
}
#kv .swiper-slide .box p:nth-of-type(1){
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.3;
}
#kv .swiper-slide .box p:nth-of-type(2){
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5;
}
/* フェードイン初期状態 */
.kv-fadein {
    opacity: 0;
    transition: opacity 1s ease;
}
/* フェードイン後 */
.kv-fadein.show {
    opacity: 1;
}
/* #kv .swiper-slide .box:hover{
	background-color: rgba(255, 255, 255, .9);
	transition: 0.5s;
} */

@media screen and (max-width: 767px) {
	#container #kv{
		height: 100vh;
	}
	#kv .swiper, #kv .swiper-wrapper, #kv .swiper-slide {
		width: 100%;
		height: 100vh;
		/* height: calc(100vh - 10px); */
	}
	#kv .swiper-slide img {
		width: 100%;
		height: 100vh;
		/* height: calc(100vh - 10px); */
		object-fit: cover;
		display: block;
	}
}
@media screen and (max-width: 430px) {
	#kv .swiper-slide > div {
	width: 100%;
	height: 100vh;
	}
}
/* TOP - NEWS
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container #news{
	width: 100%;
	height: auto;
	margin: 0 auto;
	background-color: #E5E2E0;
}
#container #news > div{
	width: calc(100% - 40px);
	margin: 0 auto;
	padding: 60px 0 90px 0;
}
#container #news > div h2{
	font-size: 4rem;
	font-weight: 500;
	text-align: center;
	padding-bottom: 5px;
}
#container #news > div h3{
	font-size: 1.6rem;
	font-weight: 400;
	text-align: center;
}
#container #news > div > table {
	width: auto;
	margin: 0 auto 0 auto;
	border-spacing: 0 20px; 
	/* border-collapse: collapse; */
	border-collapse: separate;
}
/* #container #news > div > table tr {
	border-bottom: 1px solid #4E4E4E;
} */
#container #news > div > table th {
	font-size: 1.6rem;
	font-weight: 500;
	padding: 0 20px 0 0;
	text-align: left;
}
#container #news > div > table td:nth-of-type(1) {
	width: 160px;
	font-size: 1.4rem;
	line-height: 1.4;
	font-weight: 500;
	color: #fff;
	text-align: center;
	padding: 0 10px 0 0;
}
#container #news > div > table tr:nth-of-type(1) td:nth-of-type(1) > p{
	background-color: #C6BEAE;
	letter-spacing: .2rem;
}
#container #news > div > table tr:nth-of-type(2) td:nth-of-type(1) > p{
	background-color: #9C9C9D;
	letter-spacing: 0;
}
#container #news > div > table td:last-child {
	font-size: 1.6rem;
	font-weight: 400;
	padding: 0;
	text-align: left;
	text-decoration: underline;
	/* letter-spacing: .07rem; */
}
#container #news > div > table td:last-child a {
	opacity: 1;
	transition: all 0.5s ease;
}
#container #news > div > table td:last-child a:hover {
	opacity: 0.7;
}
@media screen and (max-width: 767px) {
	#container #news > div {
		width: calc(100% - 40px);
	}
	#container #news > div > table {
		margin: 0 auto;
	}
	#container #news > div > table tr {
		display: grid;
		grid-template-columns: 1fr 2fr;
		grid-template-rows: 1fr 1fr;
	}
	.news1 {
		grid-column: 1 / 2;
		grid-row: 1 / 2;
	}
	.news2 {
		grid-column: 2 / 3;
		grid-row: 1 / 2;
	}
	.news3 {
		grid-column: 1 / 3;
		grid-row: 2 / 3;
	}
	#container #news > div > table th {
		font-size: 1.4rem;
		padding: 0 10px 0 0;
	}
	#container #news > div > table td:nth-of-type(1) {
		/* width: 120px; */
		font-size: 1.2rem;
		padding: 0 0 0 0;
		margin: auto;
	}
	#container #news > div > table td:last-child {
		font-size: 1.4rem;
	}
	#container #news > div > table tr:last-child{
		padding-top: 3.5em;
	}
}

/* TOP - BLAND
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container #bland{
	margin: 0 auto;
	/* padding: 150px 20px 0 20px; */
	padding: 150px 0 0;
	width: calc(100% - 40px);
	max-width: 880px;
	margin-bottom: 0px;
}
#container #bland h2{
	font-size: 4.3rem;
	font-weight: 500;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.06em;
}
#container #bland h3{
	font-size: 2.7rem;
	font-weight: 400;
	text-align: center;
	line-height: 1.5;
}
/* #container #bland > img{
	margin: 150px auto auto;
} */
#container #bland > .stick_img_box{
	padding: 120px 0 50px 0;
	width: 100%;
	/* height: 120vh; */
	/* min-height: 1200px; */
	display: flex;
	align-items: flex-start;
}
#container #bland > .stick_img_box > img{
	width: 41.264367816%;
	height: auto;
	/* position: sticky; */
	/* top: 150px; */
	/* left: 0; */
	margin: 0 100px 0 auto;
	object-fit: contain;
	/* display: block; */
	align-items: flex-start;
}
#container #bland > .stick_img_box > div{
	width: calc(100% - 41.264367816% - 60px);
	margin: 0 0 auto auto;
	display: flex;
	justify-content: flex-start;
}
#container #bland > .stick_img_box > div > div h4{
	font-size: 2rem;
	/* line-height: 3.5; */
	margin-top: 0px;
	margin-bottom: 40px;
	letter-spacing: 0.15em
}
#container #bland > .stick_img_box > div > div p{
	font-size: 1.6rem;
	line-height: 2.2;
}
#container #bland > .stick_img_box > div > div span p{
	margin-bottom: 30px;
}
#container #bland > .stick_img_box > div > div span p:last-child{
	margin-bottom: 0;
}
#container #bland > .stick_img_box .box {
	margin: 50px auto 0 0;
}

/* じわっ */
/* .blur {
    opacity: 1;
    filter: blur(0);
    transition: opacity 1s cubic-bezier(0.4,0,0.2,1), filter 1s cubic-bezier(0.4,0,0.2,1);
}

.blurTrigger {
    opacity: 0;
    filter: blur(10px);
    transition: opacity 1s cubic-bezier(0.4,0,0.2,1), filter 1s cubic-bezier(0.4,0,0.2,1);
} */

/* TOP - STYLING
----------------–––––––––––––––––––––––––––––––––––––– */
#container #styling {
	/* margin: 150px auto; */
	padding: 150px 0;
}
/* #container #styling div > h2,
#container #styling div > h3,
#container #styling div > h4{
    color: #4E4E4E;
} */
#container #styling h4{
	font-size: 14px;
    margin: 0 auto;
    text-align: center;
	font-weight: 400;
	margin-top: 30px;
	margin-bottom: 50px;
}
#container #styling .styling_wrap{
	width: 83.333333333vw;
    margin: auto;
	display: flex;
	justify-content: space-between;
	gap: 40px;
	flex-wrap: wrap;
	/* margin: 0 auto; */
}
#container #styling .styling_wrap .styling_box{
	width: calc(100% / 2 - 20px);
	height: auto;
	padding: 60px 0 40px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	/* margin: 0 auto; */
	margin: 0;
}
/* #container #styling .styling_wrap .styling_box > div{
	margin: 0 100px;
	height: 100%;
} */
.styling_wrap .styling_box:nth-child(1) {
	background: #d1cbc0;
	color: #fff;
	z-index: 0;
	height: 100%;
  }
  .styling_wrap .styling_box:nth-child(2) {
	background: #9c9c9d;
	color: #fff;
	height: 100%;
	z-index: 0;
  }

  /* .styling_wrap .styling_box > * {
	position: relative;
	z-index: 1;
  } */
#container #styling .styling_wrap .styling_box div h2{
	text-align: center;
	align-items: center;
	font-size: 2rem;
	font-weight: 500;
}
#container #styling .styling_wrap .styling_box div h3{
	text-align: center;
	margin-bottom: 30px;
	font-size: 2.6rem;
}
#container #styling .styling_wrap .styling_box .box {
	border: 1px solid #fff;
	background-color: #fff;
	margin: 0 auto;
}
#container #styling .styling_wrap .styling_box .box span {
	color: #4E4E4E;
	font-size: 1.3rem;
}
#container #styling .styling_wrap .styling_box .styling_img {
	margin: 0 30px;
	display: flex;
	justify-content: center;
	align-items: center;
}
#container #styling .styling_wrap .styling_box .styling_img img {
	width: 100%;
	height: auto;
	/* object-fit: cover; */
}
#container #styling .styling_wrap .styling_box p{
	text-align: center;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 2.083;
	letter-spacing: .02em;
	margin: 30px auto;
}
@media screen and (max-width: 1339px) {
	#container #styling .styling_wrap{
		width: calc(100% - 40px);
		max-width: 1200px;
	}
}
@media screen and (max-width: 767px) {
	#container #styling {
		padding: 0;
	margin: 120px auto;
	}
	#container #styling .styling_wrap{
		width: 100vw;
		max-width: 100%;
	}
	#container #styling .styling_wrap .styling_box{
		width: 100vw;
		padding: 35px 0 40px;
	}
	#container #styling .styling_wrap .styling_box > div{
		margin: 0;
	}
	#container #styling .styling_wrap .styling_box div h2 {
		font-size: 1.8rem;
	}
	#container #styling .styling_wrap .styling_box div h3 {
		margin-bottom: 25px;
		font-size: 2rem;
	}
	#container #styling .styling_wrap .styling_box p {
		font-size: 1rem;
		line-height: 2.6;
	}
	#container #styling .styling_wrap .styling_box .styling_img {
		margin: 0 20px;
	}
	#container #styling .styling_wrap .styling_box p {
		font-size: 1rem;
		margin: 20px auto 30px;
	}
}
/* TOP - FEATURES
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container #features{
	width: calc(100% - 40px);
	padding: 200px 20px 100px 20px;
}
#container #features > div{
	max-width: 876px;
	margin: 0 auto;
}
#container #features > div h3 {
	font-size: 1.4rem;
}
#container #features > div > div{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	margin: 100px auto 0 auto;
}
#container #features > div > div:first-child {
	margin: 100px auto 0 auto;
}
#container #features > div > div >  .text_box {
	width: 225px;
}
#container #features > div > div >  .photo_box {
	width: 66.780821917%
}
#container #features > div > div >  .photo_box.flex {
	width: 67.579908675%;
	display: flex;
	justify-content: space-between;
}
#container #features > div > div >  .photo_box.flex > img:first-child {
	width: 35.472972973%
}
#container #features > div > div >  .photo_box.flex > img:last-child {
	width: 61.655405405%
}
#container #features > div > div >  .text_box h4{
	font-size: 1.8rem;
	font-weight: 500;
}
#container #features > div > div >  .text_box p:nth-child(2) {
	font-size: 2rem;
	margin: 15px 0 25px 0;
}
#container #features > div > div >  .text_box p:nth-child(3) {
	font-size: 1.4rem;
}
#container #features > div > div >  .text_box p span{
	display: block;
	white-space: nowrap;
}
#container #features > div > div >  .text_box .box{
	font-size: 1.3rem;
}



/* TOP - SEARCH
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container #search{
	margin: 0 auto auto;
	background: #E5E2E0;
	height: 540px;
}
#container #search > a {
	width: 83.333333333vw;
	display: block;
	margin: auto;
}
#container #search > a > div{
	width: 100%;
	height: 100%;
	display: flex;
}
#container #search > a > div > div{
	width: calc(100%/3);
	height: 540px;
}
#container #search > a > div > div:nth-child(1),
#container #search > a > div > div:nth-child(3){
	display: flex;
	justify-content: space-between;
	overflow: hidden;
	position: relative;
}
#container #search > a > div > div:nth-child(1) > div,
#container #search > a > div > div:nth-child(3) > div{
	width: calc(50% - 10px);
	height: 100%;
	display: block !important;
}
#container #search > a > div > div:nth-child(1) > div > div,
#container #search > a > div > div:nth-child(3) > div > div{
	height: calc(60% - 30px);
	margin: 15px 0;
	position: relative;
	border-radius: 10px;
}
#container #search > a > div > div:nth-child(1) > div > div:nth-child(1),
#container #search > a > div > div:nth-child(1) > div > div:nth-child(5){
	background: url("../img/top/slide1.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(1) > div > div:nth-child(2),
#container #search > a > div > div:nth-child(1) > div > div:nth-child(6){
	background: url("../img/top/slide2.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(1) > div > div:nth-child(3),
#container #search > a > div > div:nth-child(1) > div > div:nth-child(7){
	background: url("../img/top/slide3.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(1) > div > div:nth-child(4),
#container #search > a > div > div:nth-child(1) > div > div:nth-child(8){
	background: url("../img/top/slide4.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(1) > div:nth-child(2) > div:nth-child(1),
#container #search > a > div > div:nth-child(1) > div:nth-child(2) > div:nth-child(5){
	background: url("../img/top/slide5.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(1) > div:nth-child(2) > div:nth-child(2),
#container #search > a > div > div:nth-child(1) > div:nth-child(2) > div:nth-child(6){
	background: url("../img/top/slide6.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(1) > div:nth-child(2) > div:nth-child(3),
#container #search > a > div > div:nth-child(1) > div:nth-child(2) > div:nth-child(7){
	background: url("../img/top/slide7.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(1) > div:nth-child(2) > div:nth-child(4),
#container #search > a > div > div:nth-child(1) > div:nth-child(2) > div:nth-child(8){
	background: url("../img/top/slide8.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(3) > div > div:nth-child(1),
#container #search > a > div > div:nth-child(3) > div > div:nth-child(5){
	background: url("../img/top/slide9.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(3) > div > div:nth-child(2),
#container #search > a > div > div:nth-child(3) > div > div:nth-child(6){
	background: url("../img/top/slide10.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(3) > div > div:nth-child(3),
#container #search > a > div > div:nth-child(3) > div > div:nth-child(7){
	background: url("../img/top/slide11.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(3) > div > div:nth-child(4),
#container #search > a > div > div:nth-child(3) > div > div:nth-child(8){
	background: url("../img/top/slide12.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(1),
#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(5){
	background: url("../img/top/slide13.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(2),
#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(6){
	background: url("../img/top/slide14.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(3),
#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(7){
	background: url("../img/top/slide15.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(4),
#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(8){
	background: url("../img/top/slide16.jpg") no-repeat center center;
	background-size: cover;
}
#container #search > a > div > div:nth-child(1) > div:nth-child(1){
	animation: slide 70s linear infinite;
}
#container #search > a > div > div:nth-child(1) > div:nth-child(2) {
	animation: slide2 70s linear infinite;
}
#container #search > a > div > div:nth-child(3) > div:nth-child(1){
	animation: slide 70s linear infinite;
}
#container #search > a > div > div:nth-child(3) > div:nth-child(2) {
	animation: slide2 70s linear infinite;
}
@keyframes slide {
	0% {
		transform: translateY(-0%);
	}
	100% {
		transform: translateY(-229%);
	}
}
@keyframes slide2 {
	0% {
		transform: translateY(-229%);
	}
	100% {
		transform: translateY(-0%);
	}
}

#container #search > a > div > div:nth-child(2){
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
#container #search > a > div > div:nth-child(2) > div{
	position: relative;
}
#container #search > a > div > div:nth-child(2) > div > img{
	position: absolute;
	top: -40px;
	left: 20px;
	width: 100px;
	transform: rotate(-10deg);
}
#container div h2{
	font-size: 4rem;
	line-height: 1;
	position: relative;
	z-index: 2;
	text-align: center;
	font-weight: 500;
	letter-spacing: 0.06em;
}
#container div h2.futura {
	font-weight: 400;
}
#container div h3 {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2;
	text-align: center;
}
#container div h3.futura {
	font-weight: 400;
}
#container #search > a > div > div:nth-child(2) > div p {
	font-size: 1.4rem;
	margin: 30px 0;
}
.arrow{
	line-height: 1;
	position: relative;
	display: block;
}
.arrow::before {
	content: "";
	width: 20px;
	height: 20px;
	border: 1px solid #4E4E4E;
	position: absolute;
	box-sizing: border-box;
}
/* 右向き */
.arrow.right{
	width: 70px;
	height: 1px;
	margin: 50px auto 0 auto;
	background: #4E4E4E;
	transition: .5s;
}
.arrow.right::before {
	border-left: 0;
	border-bottom: 0;
	transform: rotate(45deg);
	transform-origin: top right;
	top: 50%;
	right: -1px;
	transition: .5s;
}
#container #search > a:hover .arrow.right::before  {
	right: -21px;
}
.arrow.right::after{
	display: block;
	content: "";
	position: absolute;
	right: 0;
	width: 0;
	height: 1px;
	background: #4E4E4E;
	transition: .5s;
}
#container #search > a:hover .arrow.right::after  {
	width: 20px;
	right: -20px;
}
.arrow.right:hover{
	background: #4E4E4E;
}

/* TOP - PICKUP
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container #pickup{
	margin: 0;
	background: #FAFAE4;
	padding: 120px 0;
	margin: 0 auto 0 auto;
}
#container #pickup > div {
	width: 83.333333333vw;
	display: block;
	margin: auto;
}
#container #pickup > div > div{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 50px 0;
}
#container #pickup > div > div > div{
	width: calc(100%/4 - 15px);
}
#container #pickup > div > div > div > a{
	overflow: hidden;
	display: block;
	position: relative;
	margin: 20px 0;
}
#container #pickup > div > div > div > a > img:first-child {
	transition: .5s;
}
#container #pickup > div > div > div > a:hover > img:first-child {
	transform: scale(1.1);
}
#container #pickup > div > div > div > a:first-child > img:last-child {
	position: absolute;
	right: 0;
	bottom: 0;
	height: 25.18%;
	width: auto;
}
#container #pickup > div > div > div:first-child > a:first-child > img:last-child {
	position: absolute;
	right: 0;
	bottom: 0;
	height: 25.18%;
	width: auto;
}
#container #pickup > div > div > div > a > p {
	position: absolute;
	top: 20px;
	left: 20px;
	font-size: 1.8rem;
	color: #fff;
	line-height: 1.5;
}
#container #pickup > div > div > div.articles_01 > a > p {
	top: 13px;
}
#container #pickup > div > div > div.articles_02 > a > p {
	top: 16px;
}
/* #container #pickup > div > div > div > a > p:nth-child(2){
	top: 33px;
} */
/* #container #pickup > div > div > div:nth-child(3) > a > p::before {
    content: "";
    display: block;
    height: 8px;
} */
#container #pickup > div > div > div > a > p .big{
	font-size: 2.5rem;
}
#container #pickup > div > div > div > a > p .big2{
	font-size: 2.5rem;
}
#container #pickup > div > div > div > a > p .big3{
	font-size: 2.5rem;
}
#container #pickup > div > div > div > a > p .middle{
	font-size: 2.9rem;
}
#container #pickup > div > div > div > a > p .small{
	font-size: 1.9rem;
}
#container #pickup > div > div > div > h4{
	text-align: center;
	font-size: 1.6rem;
	font-weight: 500;
}
#container #pickup > div > div > div > p{
	text-align: center;
	font-size: 1.2rem;
	font-weight: 400;
}
/* TOP - ABOUT FELTA
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container #about{
	width: 100%;
	padding: 150px 0 0;
}
#container #about > div:last-child {
	background: url("../img/top/about_01.jpg") no-repeat center center;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 50px 0 0;
}
#container #about > div:last-child > div {
	padding: 90px 20px 100px;
	line-height: 2;
	font-size: 2.2rem;
	text-align: center;
}
#container #about > div:last-child > div > p:first-child{
	font-size: 1.4rem;
	margin-bottom: 19px;
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: 0.02em;
}
#container #about > div:last-child > div > h4 {
	font-size: 3.4rem;
	font-weight: 500;
	letter-spacing: 0.0468em;
}

#container .box {
	position: relative;
	width:100%;
	max-width: 270px;
	height: 66px;
	text-align: center;
	outline: none;
	font-size: 1.6rem;
	margin: 50px auto 0 auto;
	border: 1px solid #4E4E4E;
	display: flex;
	align-items: center;
	justify-content: center;
}

/*ボタン内側の設定*/
#container .box span {
	display: block;
	position: absolute;
	width: 100%;
	transform-style: preserve-3d;
	transition: 0.5s;
	letter-spacing: 0.06em;
}
#container .box span:nth-child(1) {
	font-family: futura-pt, sans-serif;
	color: #4E4E4E;
	transform: rotateX(0deg);/*はじめは回転なし*/
	transform-origin: 0 50%  -10px;/* 回転する起点 */
}
/*hoverをした後の形状*/
#container .box:hover span:nth-child(1) {
	transform: rotateX(90deg);/* X軸に90度回転 */
}
/* 回転後 */
#container .box span:nth-child(2) {
	font-family: futura-pt, sans-serif;
	color: #4E4E4E;
	transform: rotateX(-90deg);/*はじめはX軸に-90度回転*/
	transform-origin: 0 50%  -10px;/* 回転する起点 */
	letter-spacing: 0.06em;
}
/*hoverをした後の形状*/
#container .box:hover span:nth-child(2) {
	transform: rotateX(0deg);/* X軸に0度回転 */
	letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
	#container #about {
		padding: 120px 0 0;
	}
	
}
/* ボタンの日本語の場合フォント設定 */
#container .box_jp {
	position: relative;
	width:100%;
	max-width: 270px;
	height: 66px;
	text-align: center;
	outline: none;
	font-size: 1.3rem;
	margin: 50px auto 0 auto;
	border: 1px solid #4E4E4E;
	display: flex;
	align-items: center;
	justify-content: center;
}

/*ボタン内側の設定*/
#container .box_jp span {
	display: block;
	position: absolute;
	width: 100%;
	transform-style: preserve-3d;
	transition: 0.5s;
	letter-spacing: 0.06em;
}
#container .box_jp span:nth-child(1) {
	font-family: noto-sans-jp, sans-serif;
	color: #4E4E4E;
	transform: rotateX(0deg);/*はじめは回転なし*/
	transform-origin: 0 50%  -10px;/* 回転する起点 */
}
/*hoverをした後の形状*/
#container .box_jp:hover span:nth-child(1) {
	transform: rotateX(90deg);/* X軸に90度回転 */
}
/* 回転後 */
#container .box_jp span:nth-child(2) {
	font-family: noto-sans-jp, sans-serif;
	color: #4E4E4E;
	transform: rotateX(-90deg);/*はじめはX軸に-90度回転*/
	transform-origin: 0 50%  -10px;/* 回転する起点 */
	letter-spacing: 0.06em;
}
/*hoverをした後の形状*/
#container .box_jp:hover span:nth-child(2) {
	transform: rotateX(0deg);/* X軸に0度回転 */
	letter-spacing: 0.06em;
}

/* TOP - About FELTA 2
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container #about_felta > div{
	width: 100%;
	padding: 150px 0 100px;
}
#container #about_felta .text_box{
    width: 100%;
	height: 440px;
    margin: 0;
	padding: 120px 0 0 0;
    background-image: url(../img/top/bland_02.jpg);
    position: relative;
    overflow: hidden;
}
#container #about_felta .text_box::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    filter: blur(10px);
    z-index: 0;
}
#container #about_felta .text_box > * {
    position: relative;
    z-index: 1;
}
#container #about_felta .text_box > h3{
	margin: 3rem auto;
}

/* TOP - CATALOG
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container #catalog{
	width: 100%;
	padding: 150px 0 120px;
}
#container #catalog > div{
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container #catalog > div > img{
	width: 300px;
	margin: 50px 0 0;
}
#container #catalog > div.popup_btn_movie{
	margin: 150px auto 0 auto;
	max-width: 535px;
	border: 1px solid #B1B1B1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	padding: 40px 20px;
	cursor: pointer;
}
#container #catalog > div.popup_btn_movie:before {
	position: absolute;
	top: -1px;
	left: -1px;
	background: #fff;
	width: 5px;
	height: 5px;
	display: block;
	content: "";
}
#container #catalog > div.popup_btn_movie span {
	position: absolute;
	left: -1px;
	bottom: -1px;
	background: #fff;
	width: 5px;
	height: 5px;
	display: block;
}
#container #catalog > div.popup_btn_movie:after {
	position: absolute;
	top: -1px;
	right: -1px;
	background: #fff;
	width: 5px;
	height: 5px;
	display: block;
	content: "";
}
#container #catalog > div.popup_btn_movie span.box2 {
	position: absolute;
	right: -1px;
	left: initial;
	bottom: -1px;
	background: #fff;
	width: 5px;
	height: 5px;
	display: block;
}
#container #catalog > div.popup_btn_movie > div {
	max-width: 270px;
	position: relative;
	transition: .5s;
}
#container #catalog > div.popup_btn_movie > div:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(112, 112, 112, .6);
	opacity: 0;
	transition: .5s;
}
#container #catalog > div.popup_btn_movie  p{
	font-size: 1.6rem;
	margin-top: 20px;
	line-height: 1;
}
#container #catalog > div.popup_btn_movie > div > img.icon {
	position: absolute;
	top: -30px;
	left: -45px;
	width: 117px;
	transform: rotate(-5deg);
}
#container #catalog > div.popup_btn_movie:hover > div:after {
	opacity: 1;
}
/* TOP - suggestion
----------------------------------------*/
#container #suggestion {
	max-width: inherit;
	background-color: #fff;
	padding: 0 0 120px;
	width: 100%;
}
#container #suggestion > div {
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container #suggestion h3 {
	font-size: 2.6rem;
	text-align: center;
	margin-bottom: 50px;
	margin-top: 120px;
}
/* #container #suggestion > ul {
    width: 100%;
    max-width: 1200px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 40px;
}
#container #suggestion > ul > li {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%
} */
#container #suggestion > ul {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
	/* width: 100%; */
	width: calc(100% - 40px);
	max-width: 1200px;
	justify-content: center;
	padding: 0;
	margin: 0 auto;
}

#container #suggestion > ul > li {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
}
#container #suggestion > ul > li > a {
	transition: all 0.3s ease;
}
#container #suggestion > ul > li > a:hover {
	opacity: 0.5;
}

#container #suggestion > ul > li > a > img:first-child {
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}
#container #suggestion > ul > li > a > p {
	font-size: 1.6rem;
	line-height: 2;
	margin-top: 25px;
	text-align: center;
	justify-content: center;
	display: flex;
}
#container #suggestion > ul > li > a > p img {
	width: 16px;
	margin-left: 11px;
}

#container #suggestion > ul > li > a > p span {
	display: block;
	font-size: 1.2rem;
	font-weight: 400;
	margin: 0 auto;
}
#container #suggestion > ul > li > a > p:last-child {
	display: block;
	font-size: 1.2rem;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	#container #suggestion {
		width: 100%;
		padding: 0 0 100px;
	}
	#container #suggestion h3 {
		font-size: 2rem;
		margin-bottom: 40px;
		margin-top: 46px;
	}
	#container #suggestion > ul {
		grid-template-columns: 1fr 1fr;
		gap: 20px;
		padding: 0 20px;
		width: fit-content;
	}
	#container #suggestion > ul > li {
		max-width: none;
	}
	
	#container #suggestion > ul > li > a > p {
		font-size: 1.4rem;
        font-weight: 700;
        line-height: 1.8;
		margin-top: 25px;
		text-align: center;
		position: relative;
	}
	#container #suggestion > ul > li:nth-of-type(3) > a > p:nth-of-type(1) {
		/* text-align: left; */
		/* justify-content: left; */
		padding-right: 1.5em;
	}
	#container #suggestion > ul > li > a > p img {
		width: 16px;
		position: absolute;
		right: 3.5px;
		bottom: 6px;
	}
	#container #suggestion > ul > li > a > p:last-child {
		font-size: 1rem;
        font-weight: 400;
        line-height: 1.8;
        display: flex;
        justify-content: space-around;
        padding-top: 10px;
	}
}

/*popup 
----------------------------------------*/
.popup {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transition-duration: 0.8s;
	display: none;
}
.block{
	display: block !important;
}
.popup.is-show {
	opacity: 1;
	visibility: visible;
	display: block;
}
.popup-inner {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 90%;
	max-height: 90%;
	max-width: 1200px;
	z-index: 2;
	border: 1px solid #000;
	background-color: #fff;
	display: flex;
}
.popup-inner > div#modal1{
	width: 100%;
	padding: 40px 0;
}
.popup-inner > div#modal1 > div{
	display: flex;
	align-items: center;
	justify-content: center;
}
.popup-inner video {
	width: calc(100% - 40px); /* 動画をレスポンシブ化 */
}
.close-btn {
	position: absolute;
	right: 0;
	top: -60px;
	width: 50px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	cursor: pointer;
}
.close-btn .batsu{
	display: block;
	width: 50px;/*枠の大きさ*/
	height: 50px;/*枠の大きさ*/
	position: relative;
}
.batsu::before, .batsu::after{
	content: "";
	display: block;
	width: 100%;/*バツ線の長さ*/
	height: 1px;/*バツ線の太さ*/
	background: #fff;
	transform: rotate(45deg);
	transform-origin:0% 50%;
	position: absolute;
	top: calc(14% - 5px);
	left: 14%;
}
.batsu::after{
	transform: rotate(-45deg);
	transform-origin:100% 50%;
	left: auto;
	right: 14%;
}
.black-background {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(000,000,000,.8);
	z-index: 1;
}

/* TOP - OTHER
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container #other{
	width: 100%;
	padding: 150px 0;
	background: #E5E2E0;
}
#container #other > div{
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container #other > div > h2{
	font-size: 3rem;
	font-weight: 300;
}
#container #other > div > div{
	margin-top: 100px;
	text-align: center;
}
#container #other > div > div > h3{
	font-size: 2.4rem;
	margin: 0 0 20px 0;
	font-weight: 500;
}
#container #other > div > div:nth-of-type(2) > h3{
	font-weight: 500;
}
#container #other > div > div > p{
	font-size: 1.6rem;
	font-weight: 400;
}
#container #other > div > div.sns h3{
	font-size: 3.6rem;
	font-family: futura-pt, sans-serif;
	font-weight: 300;
}
#container #other > div > div.sns > div{
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 240px;
	margin: 50px 0 0;
}
#container #other > div > div.sns > div > a{
	width: 60px;
	position: relative;
}
#container #other > div > div.sns > div > a > img:first-child {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	transition: .5s;
}
#container #other > div > div.sns > div > a:hover > img:first-child {
	opacity: 0;
}
/* SNS */
#container #other_sns{
	width: 100%;
	padding: 150px 0;
	background: #E5E2E0;
}
#container #other_sns > div{
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container #other_sns > div > h2{
	font-size: 3rem;
	font-weight: 300;
}
#container #other_sns > div > div{
	margin-top: 100px;
	text-align: center;
}
#container #other_sns > div > div > h3{
	font-size: 2.4rem;
	margin: 0 0 20px 0;
	font-weight: 300;
}
#container #other_sns > div > div:nth-of-type(2) > h3{
	font-weight: 400;
}
#container #other_sns > div > div > p{
	font-size: 1.6rem;
	font-weight: 400;
}
#container #other_sns > div > div.sns h3{
	font-size: 3.6rem;
	font-family: futura-pt, sans-serif;
	font-weight: 300;
}
#container #other_sns > div > div.sns > div{
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 240px;
	margin: 50px 0 0;
}
#container #other_sns > div > div.sns > div > a{
	width: 60px;
	position: relative;
}
#container #other_sns > div > div.sns > div > a > img:first-child {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	transition: .5s;
}
#container #other_sns > div > div.sns > div > a:hover > img:first-child {
	opacity: 0;
}

/* ■IMAGE SEARCH
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container.article{
	padding: 100px 20px;
	max-width: 1240px;
	width: calc(100% - 40px);
	margin: auto
}

#container.article .menu_list ul{
	display: flex;
	align-items: center;
}
#container.article .menu_list ul li{
	font-size: 1.4rem;
	color: #A0A0A0;
}
@media screen and (max-width: 767px) {
	#container.article .menu_list ul{
		flex-wrap: wrap;
	}
	#container.article .menu_list ul li{
		font-size: 1rem;
	}
}
#container.article .menu_list ul li a{
	color: #4E81E0;
	transition: .5s;
}
#container.article .menu_list ul li a:hover {
	opacity: .5;
}
#container.article .menu_list ul li:not(:last-child) {
	position: relative;
	padding-right: 2.5em;
}

#container.article .menu_list ul li:not(:last-child):after {
	content: '';
	display: block;
	width: 6px;
	height: 6px;
	border-top: solid 2px #A0A0A0;
	border-right: solid 2px #A0A0A0;
	position: absolute;
	right: 15px;
	top: 10px;
	transform: rotate(45deg);
}
#container.image_search  #search_area,
#container.bland_story .mv {
	margin: 0 auto 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}
#container.image_search  #search_area  div:first-child{
	position: relative;
}
#container.article  div h2{
	font-size: 3.4rem;
}
#container.article div h3{
	font-size: 1.4rem;
}
#container.image_search  #search_area  div > img {
	position: absolute;
	top: -30px;
	left: -30px;
	width: 88px;
	transform: rotate(-5deg);
}
#container.image_search  #search_area  div:last-child{
	margin: 50px auto;
	display: flex;
	flex-wrap: wrap;
}
#container.image_search  #search_area  div:last-child label span{
	font-size: 1.4rem;
	padding-left: 30px;
	margin-right: 20px;
	position: relative;
	transition: .5s;
}
#container.image_search  #search_area  div:last-child label span:before {
	position: absolute;
	top: 50%;
	left: 0%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 17px;
	height: 17px;
	border: 1px solid #B1B1B1;
	background: #fff;
	border-radius: 1px;
	content: "";
	transition: all 0.5s;
}
#container.image_search  #search_area  div:last-child label:hover span{
	opacity: .5;
}
#container.image_search  #search_area  div:last-child label input[type="checkbox"] {
	opacity:0;
	appearance: none;
	position: absolute;
}
#container.image_search  #search_area  div:last-child label span:after {
	position: absolute;
	top: 50%;
	left: 2px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 13px;
	height: 13px;
	border: 1px solid #F7F8D0;
	background: #F7F8D0;
	border-radius: 3px;
	content: "";
	transition: all 0.5s;
	opacity: 0;
}
#container.image_search #search_area  div:last-child label input:checked +  span:before {
	background-color:  #B1B1B1;;
}
#container.image_search #search_area  div:last-child label input:checked +  span:after {
	opacity: 1;
}
#container.image_search #search_result {
}
#container.image_search #search_result .search_result_inner{
	display: flex;
	flex-wrap: wrap;
	gap: 16px; /* アイテム間のスペースを調整 */
}
#container.image_search #search_result .search_result_inner .search_result_item{
	width: calc(25% - 20px);
	border-radius: 10px;
	overflow: hidden;
	margin: 20px 0 0;
}
#container.image_search #search_result .search_result_inner .search_result_item a{
	transition: .5s;
	display: block;
	position: relative;
}
#container.image_search #search_result .search_result_inner .search_result_item a:after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(112,112,112,.6);
	opacity: 0;
	transition: .5s;
}
#container.image_search #search_result .search_result_inner .search_result_item a img{
	width: 100%;
	transition: .5s;
}
#container.image_search #search_result .search_result_inner .search_result_item a:hover:after{
	opacity: 1;
}
#container.image_search #search_result .search_result_inner .search_result_item a:hover img{
	transform: scale(1.1);
}
#container.image_search #search_result .search_result_inner > div:first-child {
	margin: 0 !important;
}
/* ■BLAND STORY
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* #container.bland_story .mv > div:last-child{
	margin: 50px auto;
	max-width: 870px;
} */
/* #container.bland_story > section{
	max-width: 870px;
	margin: 100px auto;
} */
#container.bland_story #introduction {
	text-align: center;
}
#container.bland_story #introduction {
	text-align: center;
}
#container.bland_story #introduction h3 {
	font-size: 3.6rem;
}
#container.bland_story #introduction p {
	font-size: 2.4rem;
}

#container.bland_story #bland_images{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
#container.bland_story #bland_images > div{
	width: calc(50% - 20px);
	margin: 0 0 60px 0;
}
#container.bland_story #sentence {
	text-align: center;
}
#container.bland_story #sentence h3 {
	font-size: 1.6rem;
	margin-bottom: 20px;
}
#container.bland_story #sentence p {
	font-size: 1.4rem;
}
#container.bland_story #mv_image{
	position: relative;
}
#container.bland_story #mv_image.active {
	animation: img-wrap 3.5s cubic-bezier(0.4, 0, 0.2, 1);
}
#container.bland_story #mv_image.active:after{
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	animation: img-wrap-show 3.5s forwards;
}
@keyframes img-wrap {
	0% {
		clip-path: circle(0 at 50% 50%);
		-webkit-clip-path: circle(0 at 50% 50%);
	}

	100% {
		clip-path: circle(100% at 50% 50%);
		-webkit-clip-path: circle(100% at 50% 50%);
	}
}
@keyframes img-wrap-show {
	0% {
		backdrop-filter: blur(30px);
	}

	100% {
		backdrop-filter: blur(0);
	}
}
.fade-in-up_copy {
	transition-duration: 2s;
	transform: translate(0, 100px);
}
.fade-in-left {
	transition-duration: 3s;
	transform: translate(-100px, 0);
}
.fade-in-right {
	transition-duration: 3s;
	transform: translate(100px, 0);
}
.fade-in-top {
	transition-duration: 3s;
	transform: translate(0, -100px);
}
.fade-in-bottom {
	transition-duration: 3s;
	transform: translate(0, 100px);
}
.anim-delay1{
	animation-delay: .3s;
}
.anim-delay2{
	animation-delay: .6s;
}
.anim-delay3{
	animation-delay: .9s;
}
.anim-delay4{
	animation-delay: 1.2s;
}
.anim-delay5{
	animation-delay: 1.5s;
}
.anim-delay6{
	animation-delay: 1.8s;
}

.anim{
	opacity: 0;
}
.anim.active {
	animation: fadeIn 2s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
	transform: translate(0, 0);
}
#bland .anim.active{
	animation: fadeIn 6s 1 forwards;
}
.text-animation.anim{
	opacity: 0;
}
.text-animation.anim.anim-delay1{
	animation-delay: .6s;
}
.text-animation.anim.anim-delay2{
	animation-delay: .8s;
}
.text-animation.anim.anim-delay3{
	animation-delay: 1s;
}
.text-animation.anim.anim-delay4{
	animation-delay: 1.5s;
}
.text-animation.anim.anim-delay5{
	animation-delay: 1.7s;
}
.text-animation.anim.anim-delay6{
	animation-delay: 1.9s;
}
.text-animation.anim.anim-delay7{
	animation-delay: 2s;
}
.text-animation.anim.anim-delay7{
	animation-delay: 2s;
}
#scroll_text .text-animation.anim.anim-delay4{
	animation-delay: 1.2s;
}
#scroll_text .text-animation.anim.anim-delay5{
	animation-delay: 1.4s;
}
#scroll_text .text-animation.anim.anim-delay6{
	animation-delay: 1.6s;
}
#scroll_text .text-animation.anim.anim-delay7{
	animation-delay: 1.8s;
}
#scroll_text .text-animation.anim.anim-delay8{
	animation-delay: 2s;
}
#scroll_text .text-animation.anim.anim-delay9{
	animation-delay: 2.2s;
}

.text-animation.anim.active{
	animation-name: fadeIn2;
	animation-fill-mode: forwards;
	animation-duration: 1600ms;
	animation-timing-function:  cubic-bezier(0.33, 1, 0.68, 1);
	animation-iteration-count: 1;
}
.photo_box.anim.active{
	animation: fadeIn 6s 1 forwards;
}

@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes fadeIn2{
	0% {
		opacity: 0;
		transform: translate(0px, 10px);
	}
	100% {
		opacity: 1;
		transform: translate(0px, 0px);
	}
}

#container.bland_story #sentence .anim span{
	position: relative;
}
#container.bland_story #sentence .anim span:after{
	position: absolute;
	top: 0;
	right: 0;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background: #fff;
}
#container.bland_story #sentence .anim.anim-delay1 span:after{
	animation-delay: 1s !important;
}
#container.bland_story #sentence .anim.anim-delay2 span:after{
	animation-delay: 2s !important;
}
#container.bland_story #sentence .anim.anim-delay3 span:after{
	animation-delay: 3s !important;
}
#container.bland_story #sentence .anim.active span:after{
	animation: text-fadeIn 3s forwards;
}

@keyframes text-fadeIn {
	0% {
		width: 100%
	}
	100% {
		width: 0;
	}
}

#container.bland_story #other_image {
	position: relative;
}
#container.bland_story #other_image.active:after{
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	animation: img-wrap-show 3s forwards;
}
/* bland_story -about
--–––––––––––––––––––––––––––––––––––––– */
#container.bland_story {
	width: 100%;
    padding: 60px 0 0 0;
    max-width: initial;
    background-attachment: fixed;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-size: cover;
}
#container.bland_story #bland{
	margin: 0 auto;
	padding: 160px 20px 0 20px;
	width: calc(100% - 40px);
	max-width: 870px;
}
#container.bland_story .menu_list {
	position: fixed;
	top: 60px;/*動画とかぶせて同じ位置に*/
	z-index: 2;
	padding: 32px 20px 50px 20px;
	max-width: 1240px;/*最大幅指定して同じ位置に*/
    width: calc(100% - 40px);
    margin: auto;
}

#container.bland_story .mv {
	position: relative;
	width: 100%;
	padding: 0 20px;
	/* max-width: 1240px; */
	margin: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
#container .bland_story .mv > div {
    width: 83.333333333vw;
    height: 100vh;
    overflow: hidden;
	background-image: url(../img/top/mv_background.jpg);
}
#container .bland_story .mv > video {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: 50% 50%;
}
/* .video-wrapper {
    position: relative;
    display: inline-block;
} */
.play-button {
    position: absolute;
    top: 49%;
    left: calc(50% - -10px);
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    /* border-top: 40.35px solid transparent; */
    /* border-bottom: 40.35px solid transparent; */
    /* border-left: 80.7px solid #fff; */
	border-top: 4.3vw solid transparent;   /* 高さをvwや%で */
    border-bottom: 4.3vw solid transparent;
    border-left: 8.6vw solid #fff;        /* 横幅をvwや%で */
    /* background: none; */
    /* pointer-events: none; */
	/* cursor: pointer; */
	z-index: 10;
}
#container.bland_story #bland .text_box {
	max-width: fit-content;
	margin: 100px auto 0;
}
#container.bland_story #bland .photo_box {
	display: flex;
    flex-direction: column;
    gap: 70px;
}
#container.bland_story #bland h4 {
	font-size: 2rem;
	line-height: 2.5;
	margin-bottom: 40px;
	text-align: center;
	letter-spacing: .15em;
	}
#container.bland_story #bland p {
	font-size: 1.6rem;
	line-height: 2.5;
	margin-bottom: 100px;
	text-align: center;
}
#container.bland_story #pickup {
	width: 100%;
	background-color: inherit;
}
#container.bland_story #pickup > div > div {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 50px 0;
	gap: 40px;
	justify-content: center;
}
#container.bland_story #pickup > div > div > div {
	max-width: 270px;
}

@media screen and (max-width: 767px) {
	#container.bland_story #bland .text_box {
		margin: 0 auto;
	}
	#container.bland_story #bland h4 {
		font-size: 1.8rem;
		padding-top: 30px;
        padding-bottom: 30px;
		margin-bottom: 0;
    }
	#container.bland_story #bland p {
		font-size: 1.4rem;
	}
	#container.bland_story .menu_list {
		padding: 20px 20px 40px 20px;
	}
	.play-button {
		border-top: 40.35px solid transparent;
		border-bottom: 40.35px solid transparent;
		border-left: 80.7px solid #fff;
		top: 50%;
		left: 50%;
	}
	/* #container.bland_story #bland .text_box {
		margin: 0 auto;
	}
	#container.bland_story #bland h4 {
		font-size: 2.4rem;
		margin-bottom: 30px;
	}
	#container.bland_story #bland p {
		font-size: 1.6rem;
	} */
	
}
/* HOME 
--–––––––––––––––––––––––––––––––––––––– */
/* 住空間向け スタイリング提案リスト一覧*/
#container.home.home_list #home_list_top{
	width: 100%;
	color: #806E60;
	padding: 78px 0 0 0;
    max-width: initial;
    background-attachment: fixed;
    display: flex;
    flex-direction: column;
    justify-content: center;
	text-align: center;
    align-items: center;
    background-size: cover;
}
#container.home.home_list #home_list_top > div > h2 {
	font-size: 2.2rem;
	font-weight: 400;
	margin: 0 auto;
	line-height: 1.1;
}
#container.home.home_list #home_list_top > div > h3 {
	font-size: 2.8rem;
	font-weight: 400;
	margin: 0 auto;
	line-height: 1.8;
}
#container.home.home_list #home_list_top > div > div > h4 {
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 4px;
	margin: 47px auto 0;
	z-index: 2;
	position: relative;
}
#container.home.home_list #home_list_top > div > div {
	position: relative;
}
#container.home.home_list #home_list_top > div > div > img {
    width: 106px;
    position: absolute;
    bottom: -26px;
    right: -59px;
    z-index: 1;
}
#container.home.home_list #home_list{
	width: 100%;
	margin: 80px auto 70px auto;
	padding: 0;
	max-width: 1200px;
	align-items: center;
	justify-content: center;
	color: #806E60;
}
#container.home.home_list #home_list > div {
	overflow: hidden;
	position: relative;
}
#container.home.home_list #home_list div > ul{
	width: 100%;
	margin: auto;
	display: grid;
	grid-template-columns: repeat(3, 1fr);/* 3つ並び */
	gap: 70px 41px;
	justify-content: center;
	align-items: center;
}

/* 3個以上なら左寄せ */
/* #container.home.home_list #home_list div > ul:has(> li:nth-child(3):not(:last-child)) {
    grid-template-columns: repeat(3, 1fr); 
} */
/* 2個だけなら中央寄せ */
/* #container.home.home_list #home_list div > ul:has(> li:nth-child(2)):not(:has(> li:nth-child(3))) {
    grid-template-columns: repeat(2, 1fr);
	max-width: 787px;
	padding-bottom: 60px;
} */
#container.home.home_list #home_list div > ul > li {
	position: relative;
	width: 100%;
	text-align: center;
	display: flex;
    flex-direction: column;
    justify-content: space-between;
    /* height: -webkit-fill-available; */
	height: 100%;
}
#home_list ul li > div:last-child {
	margin-top: auto;
}
#container.home.home_list #home_list div > ul > li h5 {
	font-size: 1.4rem;
	font-weight: 400;
	margin: 25px auto 10px auto;
	text-align: center;
}
#container.home.home_list #home_list div > ul > li p {
	font-size: 1.4rem;
	margin: 0 auto 20px auto;
	text-align: center;
}
#container.home.home_list .box_jp {
    position: relative;
    width: auto;
    max-width: 270px;
    height: 66px;
    text-align: center;
    outline: none;
    font-size: 1.3rem;
    margin: auto auto 0 auto;
    border: 1px solid #806E60;
	color: #806E60;
    display: flex;
    align-items: center;
    justify-content: center;
}
#container.home.home_list .box_jp span:nth-child(1) {
    color: #806E60;
}
#container.home.home_list .box_jp span:nth-child(2) {
    color: #806E60;
}
/* HOME一覧ページ SP版 */
@media screen and (max-width: 767px) {
	#container.home.home_list #home_list {
		width: calc(100% - 40px);
		margin: 52px auto 50px auto;
		max-width: 1200px;
		align-items: center;
		justify-content: center;
		color: #806E60;
	}
	#container.home.home_list #home_list_top{
		padding: 69px 0 0 0;
	}
	#container.home.home_list #home_list_top > div > h2 {
		font-size: 1.8rem;
	}

	#container.home.home_list #home_list_top > div > h3 {
		font-size: 2rem;
	}
	#container.home.home_list #home_list_top > div > div > h4 {
		font-size: 2.3rem;
		margin: 20px auto 0;
		position: relative;
	}
	#container.home.home_list #home_list_top > div > div > img {
		width: 83px;
		position: absolute;
		bottom: -19px;
		right: -47px;
		z-index: 1;
	}
	/* ２つ並び */
	/* #container.home.home_list #home_list div > ul {
		gap: 50px 21px;
	} */
	/* 3個以上なら左寄せ */
	/* #container.home.home_list #home_list div > ul:has(> li:nth-child(3):not(:last-child)) {
		grid-template-columns: repeat(2, 1fr); 
	} */
	/* 2個だけなら中央寄せ */
	/* #container.home.home_list #home_list div > ul:has(> li:nth-child(2)):not(:has(> li:nth-child(3))) {
		grid-template-columns: repeat(2, 1fr);
	} */
	/* １つ並び */
	#container.home.home_list #home_list div > ul {
		gap: 60px 21px;
		grid-template-columns: repeat(1, 1fr);
	}
	/* 3個以上なら左寄せ */
	/* #container.home.home_list #home_list div:nth-of-type(1) > ul:has(> li:nth-child(3):not(:last-child)) {
		grid-template-columns: repeat(1, 1fr); 
	} */
	/* 2個だけなら中央寄せ */
	/* #container.home.home_list #home_list div:nth-of-type(1) > ul:has(> li:nth-child(2)):not(:has(> li:nth-child(3))) {
		grid-template-columns: repeat(1, 1fr);
	} */
	#container.home #home_list div:nth-of-type(1) >.box_jp {
		position: relative;
		width: -webkit-fill-available;
		max-width: 335px;
        height: 62px;
        line-height: 62px;
		text-align: center;
		outline: none;
		font-size: 1.3rem;
		margin: auto auto 0 auto;
		border: 1px solid #806E60;
		color: #806E60;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	/* 1つならび設定 ここまで */
	#container.home.home_list #home_list div > ul > li h5 {
		font-size: 1.4rem;
		font-weight: 400;
		margin: 15px auto 10px auto;
		text-align: center;
	}
	#container.home.home_list #home_list div > ul > li p {
		font-size: 1rem;
	}
	#container.home.home_list #home_list div > ul > li h5 {
    font-size: 1.4rem;
    font-weight: 400;
    margin: 15px auto 10px auto;
    text-align: center;
	}
	#container.home.home_list .box_jp {
		max-width: 335px;
	}
}


/* 202506 */
#container.home {
	width: 100%;
	background-color: #F5F3F0;
	padding: 60px 0 0 0;
    max-width: initial;
    background-attachment: fixed;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-size: cover;
}
#container.home .menu_list {
    position: fixed;
    top: 60px;
    /* left: 0; */
    z-index: 2;
    padding: 32px 20px 50px 20px;
    max-width: 1240px;
    width: calc(100% - 40px);
    margin: auto;
}
#container.home #mv {
	width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover;
    position: relative;
	background: inherit;
}
#container.home #mv > div {
    width: 89.33%;
    /* max-width: 1200px; */
    height: auto;
    overflow: hidden;
    position: relative;
	/* margin-top: 65px; */
}
#container.home #home_wrap {
	width: 100%;
	padding: 0;
	max-width: 1200px;
	margin: auto;
	justify-content: center;
	color: #806E60;
}
#container.home #home_wrap .box {
	position: relative;
    font-size: 1.3rem;
    margin: 30px auto 70px auto;
    border: 1px solid #806E60;
	color: #806E60;
}
#container.home #home_wrap .box span:nth-child(1) {
	font-family: noto-sans-jp, sans-serif;
	color: #806E60;
}
#container.home #home_wrap .box span:nth-child(2) {
	font-family: noto-sans-jp, sans-serif;
	color: #806E60;
}
#container.home #home_wrap #home_top {
	width: 100%;
	margin: 0 auto;
	align-items: center;
	justify-content: center;
}
#container.home #home_wrap #home_top > div h1 {
	margin: 0 auto;
	line-height: 1;
	text-align: center;
}
#container.home #home_wrap #home_top > div > h1 > picture {
	display: inline-block;
	height: 53px;
	margin: 128px auto 8.8px auto;
}
#container.home #home_wrap #home_top > div h2 {
	font-size: 2.8rem;
	font-weight: 400;
	margin: 90px auto 4px auto;
	line-height: 1;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: baseline;
	gap: 9px; 
}
#container.home.home2506 #home_wrap #home_top > div h2 img {
	width: 50.61px;
}
#container.home.home2507 #home_wrap #home_top > div h2 img {
	width: 58.1px;
}
/* #container.home #home_wrap #home_top h2 img {
	width: 38%;
	margin: 184px auto 8.8px auto;
} */
#container.home #home_wrap #home_top h3 {
	font-size: 1.4rem;
	font-weight: 400;
	margin: 0 auto;
}
#container.home #home_wrap #home_top .text_box h4 {
	font-size: 3.8rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 500;
	line-height: 1.58;
	margin: 21px auto 40px auto;
	text-align: center;
}
#container.home #home_wrap #home_top .text_box p {
	font-size: 1.4rem;
	line-height: 2;
	margin: 0 auto;
	text-align: center;
}
#container.home #home_wrap #home_article {
	margin: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	transition: .5s;
}
#container.home #home_wrap #home_article > div {
	width: 100%;
	/* max-width: 1200px; */
	margin: 0 auto;
}
#container.home #home_wrap #home_article > div >div > p {
	font-size: 1.4rem;
	margin: 0 auto;
	padding: 30px 0 0 0;
	text-align: center;
}
#container.home #home_wrap #home_article > div > div ul {
	display: flex;
    justify-content: center;
	margin: 70px auto;
}
/* #container.home #home_wrap #home_article > div > div ul:last-child {
	margin: 70px auto 133px auto;
} */
#container.home #home_wrap #home_article > div > div ul li:first-child {
    width: 55.83%;
	display: flex;
	align-items: center;
}
#container.home #home_wrap #home_article > div > div ul li:last-child {
    width: 44.17%;
	padding-left: 80px;
	max-width: 450px;
}
#container.home #home_wrap #home_article > div > div ul li img {
	width: 100%;
}
#container.home #home_wrap #home_article > div > div ul li h4 {
	font-size: 2rem;
	padding: 50px 0 40px 0;
	font-weight: 500;
}
#container.home #home_wrap #home_article > div > div ul li p {
	font-size: 1.4rem;
	line-height: 2;
	letter-spacing: 0;
}
#container.home #home_wrap #home_article > div > div ul li .home_link {
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: flex-start; /* 追加：aタグを左寄せでテキスト幅に */
	margin-top: 40px;
	color: #4E81E0;
	font-size: 1.3rem;
	line-height: 22px;
}
#container.home #home_wrap #home_article > div > div ul li .home_link a {
	position: relative;
	display: inline-block;
	padding-right: 1.5em;
	color: #4E81E0;
	transition: color 0.3s;
	width: auto;           /* 幅を自動にして親いっぱいにならないように */
	max-width: 100%;       /* はみ出し防止 */
	box-sizing: border-box;
	transition: all 0.3s ease;
}
#container.home #home_wrap #home_article > div > div ul li .home_link a:hover {
	opacity: 0.5;
}
#container.home #home_wrap #home_article > div > div ul li .home_link a::after {
	content: '';
	position: absolute;
	right: 0.3em;
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	border-top: 1.5px solid currentColor;
	border-right: 1.5px solid currentColor;
	border-bottom: none;
	border-left: none;
	display: inline-block;
	pointer-events: none;
	transition: right 0.2s;
	transform: translateY(-50%) rotate(45deg);
  }
#container.home #home_wrap .home_link a{
	position: relative;
    color: #4E81E0;
    font-size: 1.3rem;
    line-height: 22px;
}
#container.home #home_wrap .home_link a:hover {
	opacity: 0.5;
}
#container.home #home_wrap .home_link a::after {
	content: '';
	position: absolute;
	right: -1.5em;
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	border-top: 1.5px solid currentColor;
	border-right: 1.5px solid currentColor;
	border-bottom: none;
	border-left: none;
	display: inline-block;
	pointer-events: none;
	transition: right 0.2s;
	transform: translateY(-50%) rotate(45deg);
  }
#container.home #home_wrap #coordinate {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #fff;
	border-radius: 10px;
	margin-top: 63px;
}
#container.home #home_wrap #coordinate > div {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #fff;
	border-radius: 10px;
}
#container.home #home_wrap #coordinate > div > div {
	width: calc(100% - 40px);
	/* max-width: 1200px; */
	margin: 20px auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	/* padding: 20px 20px; */
	border-left: #D1CBC0 solid 2px;
	border-right: #D1CBC0 solid 2px;
	/* background-color: #fff; */
}
#container.home #home_wrap #coordinate div > div hr {
	border: none;
	border-top: none;
}
#container.home #home_wrap #coordinate div > h2 {
	/* width: 30%; */
	margin: 50px auto 8px;
	position: relative;
	font-size: 4rem;
}
#container.home #home_wrap #coordinate div > h2 img {
	width: 129px;
	position: absolute;
	bottom: -20px;
	right: -98px;
	z-index: 1;
}
#container.home #home_wrap #coordinate div > h3 {
	font-size: 1.4rem;
	margin: 0 auto;
	text-align: center;
	font-weight: 400;
}
#container.home #home_wrap #coordinate div > div > p{
	font-size: 1.6rem;
	margin: 40px auto 56px auto;
	text-align: center;
}
#container.home #home_wrap #coordinate div > div > ul:nth-of-type(1) > li > div:nth-of-type(1) > p {
	margin: 32px auto 30px 0;
}
#container.home #home_wrap #coordinate div > div > ul:nth-of-type(2) > li > div:nth-of-type(1) > p {
	margin: 40px auto 30px 0;
}
#container.home #home_wrap #coordinate div > div > ul {
	display: flex;
	justify-content: center;
	width: calc(100% - 40px);
	margin: 0 auto 40px;
	gap: 80px;
}
#container.home #home_wrap #coordinate div > div > ul li {
	width: 100%;
	max-width: 440px;
	display: flex;
	flex-direction: column;
}
#container.home #home_wrap #coordinate div > div > ul li:last-child {
	width: 100%;
	max-width: 360px;
	display: flex;
	flex-direction: column;
	/* justify-content: space-around; */
	justify-content: space-between;
}
/* #container.home #home_wrap #coordinate div > div > ul:nth-of-type(1) li h4 {
	margin: 0 0 32px 0;
	display: flex;
}
#container.home #home_wrap #coordinate div > div > ul:nth-of-type(2) li h4 {
	margin: 0 0 25px 0;
	display: flex;
} */
#container.home #home_wrap #coordinate div > div > ul li h4 span {
	font-family: 'Futura', 'futura-pt', 'Arial', sans-serif;
	font-size: 5rem;
	/* margin-right: 19px; */
	vertical-align: middle;
	display: inline-block;
	line-height: 1;
}
#container.home #home_wrap #coordinate div > div > ul > li > p {
	font-size: 2.0rem;
	margin: 0;
	line-height: 2;
	letter-spacing: 0.04em;
	/* padding-top: 8px; */
	font-weight: 500;
}
#container.home #home_wrap #coordinate div > div > ul:nth-of-type(2) > li h4 p {
	font-size: 2.0rem;
	margin: 0;
	line-height: 2;
	letter-spacing: 0.04em;
	padding-top: 8px;
	font-weight: 500;
}
/* #coordinate ul:nth-of-type(1) li h4.zen-kaku-gothic-new-regular::before {
	content: "1";
	font-family: 'Futura', 'futura-pt', 'Arial', sans-serif;
	font-size: 5rem;
	margin-right: 19px;
	vertical-align: middle;
	display: inline-block;
	line-height: 1;
}
#coordinate ul:nth-of-type(2) li h4.zen-kaku-gothic-new-regular::before {
	content: "2";
	font-family: 'Futura', 'futura-pt', 'Arial', sans-serif;
	font-size: 5rem;
	margin-right: 19px;
	vertical-align: middle;
	display: inline-block;
	line-height: 1;
} */
/* #container.home #home_wrap #coordinate div > div > ul li h4 span {
	font-size: 5rem;
	font-weight: 300;
	padding-right: 19px;
} */
#container.home #home_wrap #coordinate div > div > ul > li .coordinate_title {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
}
#container.home #home_wrap #coordinate div > div > ul > li > div > div > img {
	width: auto;
	height: 33.5px;
	margin: auto 31px auto 7.7px;
} 
#container.home #home_wrap #coordinate div > div > ul > li > div > div > h4 {
	font-size: 2rem;
	line-height: 2;
	letter-spacing: .04em;;
	/* margin-bottom: 30px; */
	font-weight: 500;
}
#container.home #home_wrap #coordinate div > div > ul li p {
    font-size: 1.4rem;
    line-height: 2;
    margin-bottom: 40px;
    font-weight: 400;
    text-align: start;
}
#container.home #home_wrap #coordinate div > div > ul li p a {
	color: #4E81E0;
	text-decoration: underline;
	transition: all 0.3s ease;
}
#container.home #home_wrap #coordinate div > div > ul li p a:hover {
	opacity: 0.5;
}
#container.home #home_wrap #coordinate .box {
    margin: 0 auto 0 0;
}

/* 仕様アイテムをまとめてチェック */

#container.home #home_wrap #home_item {
	width: 100%;
	max-width: 1200px;
	margin: 120px auto 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container.home #home_wrap #home_item > div {
	width: 100%;
}
#container.home #home_wrap #home_item > div h3 {
	font-size: 2rem;
	margin: 0 auto;
	text-align: center;
	position: relative;
	display: flex;
	align-items: center;
	margin-bottom: 2em;
}
#container.home #home_wrap #home_item > div h3::after {
	content: '';
	flex: 1;
	height: 2px;
	background: #ccc;
	margin-left: 1em;
	display: block;
}
#container.home #home_wrap #home_item > div > h4 {
	font-size: 2rem;
	margin: 0 auto 10px 0;
}
#container.home #home_wrap #home_item > div > ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 40px;
	margin: 0 0 60px;
	padding: 0;
	list-style: none;
	}
	
@media screen and (max-width: 767px) {
#container.home #home_wrap #home_item > div > ul {
	grid-template-columns: repeat(2, 1fr);
	gap: 15px;
}
}
#container.home #home_wrap #home_item > div ul li {
	/* width: calc(25% - 20px); */
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container.home #home_wrap #home_item > div ul li a {
	opacity: 1;
	text-decoration: none;
	transition: all 0.3s ease;
}
#container.home #home_wrap #home_item > div ul li a:hover > img {
	opacity: 0.5;
	transition: all 0.3s ease;
}
#container.home #home_wrap #home_item > div ul li a:hover p{
	opacity: 0.5;
	transition: all 0.3s ease;
}
#container.home #home_wrap #home_item > div ul li a:hover div.item_btn{
	opacity: 0.5;
	transition: all 0.3s ease;
}


#container.home #home_wrap #home_item > div ul > li > a > div {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#container.home #home_wrap #home_item > div ul > li > a > div:nth-of-type(1) {
	margin: 3px 0 5px;
}
#container.home #home_wrap #home_item > div ul > li > a > div p {
	font-size: 1.8rem;
	color: #806E60;
	white-space: nowrap;
}
#container.home #home_wrap #home_item > div ul > li > a > div p.futura {
	color: #A0A0A0;
}
#container.home #home_wrap #home_item > div ul > li > a > div > img {
	height: 26px;
	width: 30.4px
}
#container.home #home_wrap #home_item > div ul > li > a > div .item_btn {
	display: inline-block;
	position: relative;
	/* padding: 0 49px; */
	width: 50%;
	text-align: center;
	border: 1px solid #806E60;
	color: #806E60;
	font-size: 1.6rem;
	text-decoration: none;
	transition: background-color 0.3s ease;
}
/* #container.home #home_wrap #home_item > div ul > li > a > div .item_btn:hover {
	background-color: #806E60;
	color: #fff;
} */
#container.home #home_wrap #home_item > div ul > li > a > div .item_btn::before {
content: "";
margin: auto;
position: absolute;
top: 0;
bottom: 0;
right: 13px;
width: 7px;
height: 7px;
border-top: 1.5px solid #806E60;
border-right: 1.5px solid #806E60;
transform: rotate(45deg);
}

#container.home #home_wrap #home_item > div ul > li > a > p {
	font-size: 1.2rem;
	margin: 6px auto 0 0;
	text-align: left;
	font-weight: 400;
	color: #806E60;
}

#container.home #home_item .heartBox {
	position: relative;
}
#container.home #home_item .heartImg_pink {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	z-index: 5;
	width: auto;
	height: 26px;
}
#container.home #home_item .heartImg {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: auto;
	height: 26px;
}
#container.home #home_item .heartImg_pink img,
#container.home #home_item .heartImg img {
	width: auto;
	height: 26px;
}

#container.home #other-articles {
    background-color: #F5F3F0;
}
#container.home #other_sns {
    width: 100%;
    padding: 0 0 150px 0;
    background: #F5F3F0;
}
#container.home #other_sns .sns{
	margin-top: 0;
}
#container.home #other_sns h3 {
	font-size: 2.4rem;
	margin: 70px auto 50px auto;
	text-align: center;
}

/* レスポンシブ */
@media (max-width: 1240px) and (min-width: 768px) {
	#container.home #home_wrap {
		width: calc(100% - 40px);
	}
	#container.home #home_wrap #home_article > div > div ul li:last-child {
    padding-left: 40px;
	}
}
@media screen and (max-width: 767px) {
	#container.home .menu_list {
		padding: 18px 20px 50px 20px;
	}
	#container.article .menu_list ul li:not(:last-child):after {
		width: 4px;
		height: 4px;
		border-top: solid 1px #A0A0A0;
		border-right: solid 1px #A0A0A0;
		right: 11px;
		top: 8px;
	}
	#container.home #mv > div {
		margin-top: 65px;
	}
	#container.home #home_wrap #home_top > div > h1 > picture {
		height: 72.63px;
		margin: 57.7px auto 9.7px auto;
	}
	#container.home #home_wrap #home_top > div h2 {
		font-size: 1.8rem;
		font-weight: 400;
		margin: 50px auto 10px auto;
		align-items: baseline;
		gap: 5px;
	}
	#container.home.home2506 #home_wrap #home_top > div h2 img {
		width: 40px;
	}
	#container.home #home_wrap #home_top h3 {
		font-size: 1.2rem;
	}
	#container.home #home_wrap #home_top .text_box h4 {
		font-size: 2.3rem;
		font-weight: 500;
		margin: 10px auto 37px auto;
	}
	#container.home #home_wrap #home_top .text_box p {
		font-size: 1.2rem;
		line-height: 2.16;
	}
	#container.home #home_wrap #home_article > div > div ul {
		justify-content: center;
		flex-direction: column;
		margin: 40px auto;
		width: 89.33%;
	}
	/* #container.home #home_wrap #home_article > div > div ul:last-child {
	margin: 70px auto 100px auto;
	} */
	#container.home #home_wrap #home_article > div > div ul li:first-child {
		width: 100%;
	}
	#container.home #home_wrap #home_article > div > div ul li:last-child {
		width: 100%;
		padding-left: 0;
	}
	#container.home #home_wrap #home_article > div > div ul li h4 {
		font-size: 1.8rem;
		font-weight: 500;
		padding: 20px 0 20px 0;
	}
	#container.home #home_wrap #home_article > div > div ul li .home_link a {
		padding-right: 1.3em;
	}
	#container.home #home_wrap #home_article > div > div ul li .home_link a::after {
		width: 6px;
		height: 6px;
	}
	#container.home #home_wrap #home_article > div >div > p {
		padding: 20px 0 0 0;
		text-align: left;
		width: 89.33%;
	}
	/* コーディネート */
	#container.home #home_wrap #coordinate {
		width: 89.33%;
		margin-top: 33px;
	}
	#container.home #home_wrap #coordinate div > div {
		border-left: none;
		border-right: none;
	}
	#container.home #home_wrap #coordinate div > h2 {
		font-size: 3rem;
	}
	#container.home #home_wrap #coordinate div > h2 img {
		width: 81.82px;
		bottom: -9px;
		right: -62px;
	}
	#container.home #home_wrap #coordinate div > p {
		font-size: 1.6rem;
		font-weight: 500;
		margin: 35px auto 44px auto;
		text-align: center;
	}
	#container.home #home_wrap #coordinate div > div > ul:nth-of-type(1) {
		flex-direction: column;
		justify-content: center;
		width: 100%;
		margin: 0 auto 70px;
		gap: 28px;
	}
	#container.home #home_wrap #coordinate div > div > ul:nth-of-type(2) {
		flex-direction: column;
		justify-content: center;
		width: 100%;
		margin: 0 auto 50px;
		gap: 28px;
	}
		#container.home #home_wrap #coordinate div > div > ul:nth-of-type(3) {
		flex-direction: column;
		justify-content: center;
		width: 100%;
		margin: 0 auto 50px;
		gap: 28px;
	}
	#container.home #home_wrap #coordinate div > div > ul:last-child {
		margin-bottom: 50px;
	}
	#container.home #home_wrap #coordinate div > div hr {
		width: 100%;
		border: none;
		border-top: #D1CBC0 solid 2px;
		margin: 0 auto 40px auto;
	}
	#container.home #home_wrap #coordinate div > div hr:nth-of-type(2) {
		margin: 0 auto 30px auto;
	}
	#container.home #home_wrap #coordinate div > div > ul li {
		width: 100%;
		margin: 0 auto;
	}
	#container.home #home_wrap #coordinate div > div > ul li h4 span {
		font-size: 4.2rem;
		font-weight: 500;
		padding-right: 15px;
		/* margin-right: 0; */
	}
	#container.home #home_wrap #coordinate div > div > ul > li > div > div > img {
		width: auto;
		height: 28px;
		margin: auto 24.7px auto 6px;
	}
	#container.home #home_wrap #coordinate div > div > ul > li > div > div > h4 {
		font-size: 1.8rem;
		line-height: 2;
		letter-spacing: .04em;
		font-weight: 500;
	}
	#container.home #home_wrap #coordinate div > div > div > ul > li > h4 {
		font-size: 1.8rem;
		padding-top: 0;
		/* margin-top: -.5em; */
	}
	#container.home #home_wrap #coordinate div > div > ul:last-child li h4 {
		font-size: 1.8rem;
		padding-top: 5px;
		margin-top: 0;
		vertical-align: bottom;
	}
	#container.home #home_wrap #coordinate div > div > ul:nth-of-type(1) > li > div:nth-of-type(1) > p {
		margin: 20px auto 0 0;
	}
	#container.home #home_wrap #coordinate div > div > ul:nth-of-type(2) > li > div:nth-of-type(1) > p {
		margin: 34px auto 0 0;
	}
	#container.home #home_wrap #coordinate div > div > ul li p {
		margin-top: 20px;
		margin-bottom: 30px;
	}
	#container.home #home_wrap #home_item {
		width: 89.33%;
		margin: 100px auto 0 auto;
	}
	#container.home #home_wrap #home_item > div ul > li > a > div:nth-of-type(1) {
		margin: 0;
	}
	#container.home #home_wrap #home_item > div ul > li > a > p {
		margin: 0 auto 0 0;
	}
	#container.home #home_wrap #home_item > div h3 {
    font-size: 1.6rem;
	margin-bottom: 15px;
	}
	#container.home #home_wrap #home_item > div h3::after {
		display: none;
		content: none;
	}
	#container.home #home_item .heartImg_pink {
		position: absolute;
		top: 50%;
		right: .8em;
		transform: translateY(-50%);
		z-index: 5;
		width: auto;
		height: 16px;
	}
	#container.home #home_item .heartImg {
		position: absolute;
		top: 50%;
		right: .8em;
		transform: translateY(-50%);
		width: auto;
		height: 16px;
	}
	#container.home #home_item .heartImg_pink img,
	#container.home #home_item .heartImg img {
		width: auto;
		height: 16px;
	}
	#container.home #home_wrap #home_item > div ul > li > a .item_btn {
		display: inline-block;
		position: relative;
		width: 100%;
		text-align: center;
		border: 1px solid #806E60;
		color: #806E60;
		font-size: 1.6rem;
		text-decoration: none;
		transition: background-color 0.3s ease;
		margin-top: 13px;
	}
	#container.home #home_wrap #home_item > div ul > li > a .item_btn::before {
	content: "";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 13px;
	width: 7px;
	height: 7px;
	border-top: 1.5px solid #806E60;
	border-right: 1.5px solid #806E60;
	transform: rotate(45deg);
	}
	#container.home #other-articles {
		padding: 70px 0 0 0;
	}
	#container.home #other_sns {
		width: 100%;
		padding: 5px 0 150px 0;
		background: #F5F3F0;
	}
}

/* HOME 202507 */
#container.home.home2507 #home_wrap #home_top h2 img {
    width: 12.27%;
}
/*リンクbox2行用　hoverをした後の形状*/
#container .box.box-dual:hover span:nth-child(1) {
	opacity: 0;
	transform: rotateX(90deg);/* X軸に90度回転 */
}
/* 回転後 */
#container .box.box-dual span:nth-child(2) {
	font-family: futura-pt, sans-serif;
	color: #4E4E4E;
	transform: rotateX(-90deg);/*はじめはX軸に-90度回転*/
	transform-origin: 0 50%  -10px;/* 回転する起点 */
	letter-spacing: 0.06em;
	opacity: 0;
}
/*hoverをした後の形状*/
#container .box.box-dual:hover span:nth-child(2) {
	transform: rotateX(0deg);/* X軸に0度回転 */
	letter-spacing: 0.06em;
	opacity: 1;
}
#container .box.box-dual span {
    transition: 0.65s;
}
#container .box-dual {
	transform-origin: center center;
  /* 他のプロパティもホバー前後で変化しないように */
}
@media screen and (max-width: 767px) {
	#container.home.home2507 #home_wrap #home_top h2 img {
		width: 32.27%;
	}
	#container.home.home2507 .box {
        line-height: inherit;
    }
	#container.home.home2507 #home_wrap #coordinate div > div > ul:nth-of-type(1) li:nth-child(2) h4 {
		letter-spacing: 0em;
	}
}

/* HOME 202508 */
#container.home.home2508 #home_wrap #coordinate div > div > ul:nth-of-type(2) > li > div:nth-of-type(1) > p {
    margin: 32px auto 30px 0;
}
@media screen and (max-width: 767px) {
    #container.home.home2508 #home_wrap #coordinate div > div > ul > li > div > p:nth-of-type(2) {
        margin: 20px auto 30px 0;
    }
}
/* HOME 202509 */
#container.home.home2509 #home_wrap #home_article .home_link_center {
	text-align: center;
	padding: 2em 6em 3em;
}
#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div:nth-of-type(1) > p:nth-of-type(1) {
    margin: 32px auto 30px 0;
}
#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div:nth-of-type(1) > p:nth-of-type(2) {
    margin: 32px auto 0 0;
	font-size: 1.2rem;
	font-weight: 600;
}
#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div:nth-of-type(1) > div:nth-of-type(2) {
    margin: 0 auto 10px 0;
	font-size: 1.2rem;
	padding-left: 1em;
}
#container.home.home2509 #home_wrap #coordinate .spec-table {
	margin: 0 auto 0 1em;
}
.spec-table,
.spec-table td,
.spec-table th {
  border: none;
}
#container.home.home2508.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(2) > li > div:nth-of-type(1) > p {
    margin: 27px auto 25px 0;
}
#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div > div >h4	{
	letter-spacing: -.05px;
}
@media screen and (max-width: 767px) {
	#container.home.home2509 #home_wrap #home_article .home_link_center {
	text-align: left;
	padding: 2em 0 3em;
	margin: 0 auto;
	width: 89.33%;
	}
	#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div:nth-of-type(1) > p:nth-of-type(1) {
		margin: 20px auto 30px 0;
	}
	#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div:nth-of-type(1) > p:nth-of-type(2),
	#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div:nth-of-type(1) > p:nth-of-type(3) {
		font-size: 1.2rem;
		padding-left: 0.5em;
	}
	#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div > div >h4	{
		letter-spacing: -1.5px;
	}
	#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(2) {
		flex-direction: column;
		justify-content: center;
		width: 100%;
		margin: 0 auto 50px;
		gap: 28px;
	}
	#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) {
		flex-direction: column;
		justify-content: center;
		width: 100%;
		margin: 0 auto 40px;
		gap: 28px;
	}
	#container.home.home2509 #home_wrap #coordinate .spec-table > tbody {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
	#container.home.home2509 #home_wrap #coordinate .spec-table > tbody > tr {
		display: flex;
		align-items: flex-start;
		gap: 10px;
		width: 100%;
	}
	#container.home.home2509 #home_wrap #coordinate .spec-table > tbody > tr > td:nth-of-type(2) {
		font-size: 1rem;
		margin: auto 0 0 auto;
	}
	#container.home.home2509 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div:nth-of-type(1) > div:nth-of-type(2) {
    margin: 0 auto 10px 0;
    font-size: 1rem;
    padding-left: 1em;
	}
}
/* HOME 202510★ */
#container.home.home2510 #home_wrap #coordinate div > div > ul.annotation {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: calc(100% - 40px);
    margin: 0;
    gap: .5em;
}
#container.home.home2510 #home_wrap #coordinate div > div > ul.annotation li {
	width: 100%;
	max-width: none;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	text-indent: -1em;
	padding-left: 1em;
	letter-spacing: .06em;
}
#container.home.home2509.home2510 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div > div >h4 {
    letter-spacing: -3px;
}
#container.home.home2509.home2510 #home_wrap #coordinate div > div > ul:nth-of-type(3) > li > div:nth-of-type(1) > p:nth-of-type(2) {
	font-size: 1.4rem;
    line-height: 2;
    font-weight: 400;
    text-align: start;
}
@media screen and (max-width: 767px) {
    #container.home.home2509.home2510 #home_wrap #coordinate div > div > ul:nth-of-type(3) {
        margin: 0 auto 50px;
    }
}

/* CONTRACT
--–––––––––––––––––––––––––––––––––––––– */
/* コントラクト向け スタイリング提案リスト一覧*/
#container.home.contract.contract_list {
    background-color: #fff;
}
#container.home.home_list.home.contract #home_list_top {
    width: 100%;
    color: #4E4E4E;
}
#container.home.home_list.home.contract #home_list {
	color: #4E4E4E;
}
#container.home.home_list.contract.contract_list .box_jp {
    border: 1px solid #4E4E4E;
    color: #4E4E4E;
}
#container.home.contract.contract_list #other-articles {
    background-color: #fff;
}
#container.home.contract.contract_list #other_sns {
    background: #fff;
}
#container.home.contract.contract_list .box_jp span:nth-child(1) {
    color: #4E4E4E;
}
#container.home.contract.contract_list .box_jp span:nth-child(2) {
	color: #4E4E4E;
}
/* 202506 */
#container.contract.contract2506 {
	width: 100%;
	padding: 0 0 0 0;
	max-width: initial;
	background-attachment: fixed;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-size: cover;
}
#container.contract.contract2506 {
background-image: url(../img/contract/2506/bg.webp);
background-position: center;
}
#container.contract.contract2506 #hv {
	width: 100%;
	height: 140vh;
	position: relative;
	overflow: hidden;
}
#container.contract.contract2506 #hv div {	
	position: absolute;
	top: 40vh;
	transform: translateY(-50%);
	width: 100%;
    padding: 63px 0 64px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
	background: rgba(239,239,239,0.25);
	backdrop-filter: blur(8px);
}
#container.contract.contract2506 #hv div > h2 {
	font-size: 3.4rem;
	font-weight: 400;
	margin-bottom: 20px;
	letter-spacing: .02em;
}
#container.contract.contract2506 #hv div > h3 {
	font-size: 1.4rem;
	font-weight: 400;
	margin-bottom: 30px;
	letter-spacing: .05em;
}
#container.contract.contract2506 #hv div > p {
	font-size: 2rem;
	letter-spacing: .05em;
	text-align: center;
}
#container.contract.contract2506 #contract_wrap {
	width: 100%;
	box-sizing: border-box;
	max-width: inherit;
	overflow: hidden;
	background-color: #fff;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container.contract.contract2506 #contract_wrap #home_top {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto 120px auto;
	padding: 0 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container.contract.contract2506 #contract_wrap #home_top h2 {
	font-size: 3.8rem;
	font-weight: 400;
	letter-spacing: .04em;
	line-height: 1.58; /* 60 ÷ 38 ≈ 1.58 */
	margin: 0 auto 46px;
	padding: 60px 0 0 0;
	text-align: center;
}
#container.contract.contract2506 #contract_wrap #home_top p {
	font-size: 1.4rem;
	margin: 0 auto 30px;
	font-weight: 400;
	text-align: center;
}
#container.contract.contract2506 #contract_article {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container.contract.contract2506 #contract_article > div {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}
#container.contract.contract2506 #contract_article > div > h3 {
	font-size: 2.6rem;
	margin: 0 auto 20px;
	text-align: center;
}
#container.contract.contract2506 #contract_article > div > p {
	font-size: 1.4rem;
	margin: 0 auto 50px;
	text-align: center;
	font-weight: 400;
}
#container.contract.contract2506 #contract_article > div > div {
	width: 100%;
	max-width: 1200px;
	background-color: #EFEFEF;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-bottom: 69px;
}
#container.contract.contract2506 #contract_article > div > div h4:nth-of-type(1) {
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 2.2;
	margin: 70px auto -20px auto;
	text-align: center;
}
#container.contract.contract2506 #contract_article > div > div h4:nth-of-type(2) {
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 2.2;
	margin: 0 auto 40px auto;
	text-align: center;
}
#container.contract.contract2506 #contract_article > div > div ul {
	/* width: 100%; */
	width: calc(100% - 40px);
	max-width: 755px;
	display: flex;
	/* flex-wrap: wrap; */
	justify-content: center;
	gap: 51px;
	margin: 0 auto;
	padding: 0;
}
#container.contract.contract2506 #contract_article > div > div hr {
	width: 83.33%;
	max-width: 1000px;
	border: none;
	border-bottom: #A0A0A0 solid 1px;
	margin: 50px auto 60px;
}
#container.contract.contract2506 #contract_article > div > div ul li {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	/* ↓画像を高画質に置き換えた際 */
	/* width: calc(50% - 25px); */
	/* max-width: 352px; */
	height: 100%;
	width: auto;
}
/* #container.contract.contract2506 #contract_article > div > div ul li img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: auto;
	max-width: 100%;
	max-height: 100%;
} */
#container.contract.contract2506 #contract_article > div > div ul li > p {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2.2;
	margin: -10px auto 10px;
}

#container.contract.contract2506 #suggest {
	width: fit-content;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 60px 20px;
}
#container.contract.contract2506 #suggest h3 {
	font-size: 2.6rem;
	margin: 0 auto 40px;
	text-align: center;
}
#container.contract.contract2506 #suggest h4 {
	width: 100%;
	max-width: 1000px;
	font-size: 2rem;
	font-weight: 500;
	padding: 20px 0;
	border-top: 1px solid #4E4E4E;
	border-bottom: 1px solid #4E4E4E;
	margin: 10px auto 40px auto;
	text-align: center;
}
#container.contract.contract2506 #suggest ul {
	width: 100%;
	max-width: 1000px;
	display: flex;
	align-items: stretch;
	flex-direction: row;
	justify-content: space-between;
	margin: 0 auto 100px auto;
	padding: 0;
}
#container.contract.contract2506 #suggest ul li:first-child {
	width: 100%;
	max-width: 670px;
	text-align: left;
	position: relative;
}
#container.contract.contract2506 #suggest ul li:first-child span {
	position: absolute;
    bottom: 10px;
    right: 10px;
    font-size: 1.4rem;
    color: #fff;
}
#container.contract.contract2506 #suggest ul li:last-child {
	width: 33%;
	max-width: 330px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: left;
	position: relative;
	padding-left: 80px;
}
#container.contract.contract2506 #suggest ul li:last-child div {
	align-items: center;
	font-size: 1.4rem;
	font-weight: 400;
	position: relative;
	margin: auto 0;
}
#container.contract.contract2506 #suggest ul li:last-child div p {
	margin: 0 auto 40px;
}
#container.contract.contract2506 #suggest ul li:last-child div .contract_link a {
	position: relative;
    display: inline-block;
    padding-right: 1.5em;
    color: #4E81E0;
    transition: color 0.3s;
    width: auto;
    max-width: 100%;
    box-sizing: border-box;
	transition: all 0.3s ease;
}
#container.contract.contract2506 #suggest ul li:last-child div .contract_link a:hover {
	opacity: 0.5;
}
#container.contract.contract2506 #suggest ul li:last-child div .contract_link a::after {
	content: '';
    position: absolute;
    right: 0.3em;
    top: 54%;
    transform: translateY(-54%);
    width: 7px;
    height: 7px;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    border-bottom: none;
    border-left: none;
    display: inline-block;
    pointer-events: none;
    transition: right 0.2s;
    transform: translateY(-50%) rotate(45deg);
}
#container.contract.contract2506 #contract_style {
	width: 100%;
	max-width: 1200px;
}
#container.contract.contract2506 #contract_style > div {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #EFEFEF;
}
#container.contract.contract2506 #contract_style > div h3 {
	font-size: 2.6rem;
	margin: 70px auto 20px;
	line-height: 1.61;
	text-align: center;
}
#container.contract.contract2506 #contract_style > div > p {
	font-size: 1.2rem;
	font-weight: 400;
	margin: 0 auto 50px;
	text-align: center;
}
#container.contract.contract2506 #contract_style > div > div {
	width: 100%;
	max-width: 820px;
	margin: 0 auto 50px auto;
	display: flex;
	align-items: center;
}
#container.contract.contract2506 #contract_style > div > div > img {
	width: 100%;
	max-width: 455px;
	height: auto;
	display: block;
}

#container.contract.contract2506 #contract_style > div > div > ul {
	width: 100%;
	max-width: 285px;
	justify-content: left;
	margin: 0 auto 0 8%;
	padding: 0;
}
#container.contract.contract2506 #contract_style > div> div > ul > li {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	text-align: left;
	margin-bottom: 50px;
	border-top: #fff solid 1px;
}
#container.contract.contract2506 #contract_style > div> div > ul > li:first-child {
	border-top: inherit;
}
#container.contract.contract2506 #contract_style > div> div > ul > li > p:first-child {
	font-size: 5.6rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.43;	
}
#container.contract.contract2506 #contract_style > div> div > ul > li:last-child {
	margin-bottom: 0;;
}

#container.contract.contract2506 #contract_style > div> div > ul > li > h4 {
	font-size: 2rem;
	font-weight: 500;
	color: #4E4E4E;
}
#container.contract.contract2506 #contract_style > div> div > ul > li > p:last-child {
	font-size: 1.4rem;
	font-weight: 400;
	color: #4E4E4E;
	line-height: 2.14;
}
#container.contract.contract2506 #contract_style .sewing {
	width: 100%;
	max-width: 860px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #fff;
	padding-bottom: 60px;
}
#container.contract.contract2506 #contract_style .sewing h4 {
	width: 85.37%;
	font-size: 2rem;
	font-weight: 500;
	color: #4E4E4E;
	padding: 30px 0 20px 0;
	text-align: center;
	border-bottom: #4E4E4E solid 1px;
}
#container.contract.contract2506 #contract_style .sewing > div {
	width: 100%;
	max-width: 700px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0;
}
#container.contract.contract2506 #contract_style .sewing > div h5 {
	font-size: 1.6rem;
	font-weight: 600;
	color: #4E4E4E;
	margin: 40px auto 10px auto;
	text-align: center;
}
#container.contract.contract2506 #contract_style .sewing > div p {
	font-size: 1.2rem;
	font-weight: 400;
	color: #4E4E4E;
	line-height: 2.14;
	text-align: center;
	margin-bottom: 20px;
}
#container.contract.contract2506 #contract_style .sewing > div ul {
	width: 100%;
	max-width: 700px;
	display: grid;
    grid-template-columns: repeat(6, 1fr);
	grid-template-rows: repeat(2, auto);
	gap: 19px 18px;
	grid-auto-flow: column;
	grid-template-areas:
    "style01 style01 style01 style02 style02 style02"
    "style03 style03 style04 style04 style05 style05";
}

#container.contract.contract2506 #contract_style .sewing > div ul li:nth-of-type(1) { grid-area: style01; }

#container.contract.contract2506 #contract_style .sewing > div ul li:nth-of-type(2) { grid-area: style02; }

#container.contract.contract2506 #contract_style .sewing > div ul li:nth-of-type(3) { grid-area: style03; }

#container.contract.contract2506 #contract_style .sewing > div ul li:nth-of-type(4) { grid-area: style04; }

#container.contract.contract2506 #contract_style .sewing > div ul li:nth-of-type(5) { grid-area: style05; }

#container.contract.contract2506 #contract_style .sewing div ul li {
	width: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	text-align: center;
	height: 100%;
	align-self: stretch;
	box-sizing: border-box;
}
#container.contract.contract2506 #contract_style .sewing div ul li >span {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 2;
	padding: 0 10px 0 10px;
	background-color: #fff;
}
#container.contract.contract2506 #contract_style .sewing div ul li > p {
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 2;
	padding: 0 10px;
	color: #4E4E4E;
	text-align: left;
	margin: 5px auto 20px 0;
}
#container.contract.contract2506 #contract_style  div > a {
	margin: 50px auto 70px auto;
}

/* 吸音グラフ */
#container #contract_style .box {	
	margin: 50px auto auto auto;
}

#container #kyuuon_graph {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
#container #kyuuon_graph div > div{
	width: 100%;
	max-width: 1200px;
	display: flex;
	flex-direction: column;
	justify-content: left;
	gap: 20px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	background-color: #EFEFEF;
}
#container #kyuuon_graph h3 {
	font-size: 2.6rem;
	margin: 120px auto 50px;
	text-align: center;
}
#container #kyuuon_graph ul li:nth-of-type(1) h4 {
	font-size: 2rem;
	margin: 70px auto 20px 0;
	text-align: left;
	font-weight: 500;
}
#container #kyuuon_graph ul li:nth-child(2) h4 {
	font-size: 2rem;
	margin: 50px auto 20px 0;
	text-align: left;
	font-weight: 500;
}

#container #kyuuon_graph ul {
	/* width: 100%; */
	width: calc(100% - 40px);
	max-width: 820px;
	display: flex;
	flex-direction: column;
	justify-content: left;
	padding: 0;
	margin: 0 auto;
}
#container #kyuuon_graph ul li {
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#container #kyuuon_graph ul li:last-child {
	border-top: #A0A0A0 solid 1px;
}	
#container #kyuuon_graph ul li > img:nth-child(even) {
	width: 25.37%;
	max-width: 208px;
	margin-bottom: 20px;
  }
  
  #container #kyuuon_graph ul li > img:nth-child(odd) {
	width: 100%;
	max-width: 820px;
	margin-bottom: 50px;
  }
#container #kyuuon_graph ul li > img:nth-of-type(3) {
	width: 41.1%;
	max-width: 337px;
	margin-bottom: 0;
}
#container #kyuuon_graph ol {
	/* width: 100%; */
	width: calc(100% - 40px);
	max-width: 820px;
	display: flex;
	flex-direction: column;
	justify-content: left;
	padding: 0;
	margin: 0 auto 55px;
	list-style: none;
}
#container #kyuuon_graph ol li {
	font-weight: 400;
    line-height: 1.8;
    word-break: break-all;
    letter-spacing: .05em;
}
/* おすすめ商品のご紹介 */
#container.contract.contract2506 #contract_recommend {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	align-items: center;
}
#container.contract.contract2506 #contract_recommend h3 {
	font-size: 2.6rem;
	margin: 120px auto 50px;
	text-align: center;
}

#contract_recommend .curtains_list ul {
	display: flex;
	gap: 40px;
	align-items: stretch;
	margin: 0 auto;
	padding: 0;
	list-style: none;
  }
  
  #contract_recommend .curtains_list ul li {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items:flex-start;
	box-sizing: border-box;
	width: 100%;
	max-width: 480px;
	min-width: 0;
  }
  
  #contract_recommend .curtains_list ul li > img,
  #contract_recommend .curtains_list ul li > div:first-child > img {
	width: 100%;
	height: auto;
	object-fit: cover;
	margin-bottom: 16px;
  }
  
  #contract_recommend .curtains_list ul li > div {
	display: flex;
	flex-direction: column;
	flex: 1 1 0;
	justify-content: space-between;
  }
  
  #contract_recommend .curtains_list ul li p {
	flex: 1 1 1;
	margin-bottom: 22px;
	font-size: 1.4rem;
	line-height: 2.14;
	font-weight: 400;
  }
  
  #contract_recommend .curtains_list ul li a {
	position: relative;
    display: inline-block;
    padding-right: 1.5em;
	font-size: 1.3rem;
    color: #4E81E0;
    transition: color 0.3s;
    width: auto;
    max-width: 100%;
    box-sizing: border-box;
	transition: all 0.3s ease;
}
#contract_recommend .curtains_list ul li a:hover {
	opacity: 0.5;
}
#contract_recommend .curtains_list ul li a::after {
	content: '';
    position: absolute;
    right: 0.3em;
    top: 52%;
    transform: translateY(-52%);
    width: 8px;
    height: 8px;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    border-bottom: none;
    border-left: none;
    display: inline-block;
    pointer-events: none;
    transition: right 0.2s;
    transform: translateY(-50%) rotate(45deg);
}
#container.contract.contract2506 #other-articles {
	width: 100%;
	margin: 0 auto;
    padding: 120px 0 50px;
    background-color: #EFEFEF;
}
#container.contract.contract2506 #other_sns {
	background-color: #fff;
	padding: 0 0 150px 0;
	width: 100%;
}
/* レスポンシブ */
@media screen and (max-width: 767px) {
	#container.contract.contract2506 {
		/* background-image: url(../img/contract/2506/bg_sp.webp);
		background-position: center; */
		background-image: none;
        background-repeat: no-repeat;
	}
	#container.contract.contract2506:before {
        background-image: url(../img/contract/2506/bg_sp.webp);
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        /* padding-top: 60px; */
        background-size: cover;
    }
	#container.contract.contract2506 #hv div {
		padding: 52px 0 58px 0;
	}
	#container.contract.contract2506 #hv div > h2 {
		font-size: 2.6rem;
		font-weight: 400;
		margin-bottom: 3px;
		letter-spacing: .02em;
	}
	#container.contract.contract2506 #hv div > h3 {
		font-size: 1.2rem;
		margin-bottom: 25px;
	}
	#container.contract.contract2506 #hv div > p {
		font-size: 1.6rem;
		text-align: center;
	}
	#container.contract.contract2506 #contract_wrap {
		padding: 0 ;
	}
	#container.contract.contract2506 #contract_wrap #home_top {
		width: fit-content;
		margin: 0 auto 100px auto;
		padding: 0 20px;
	}
	#container.contract.contract2506 #contract_wrap #home_top h2 {
		font-size: 2.3rem;
		font-weight: 500;
		margin: 60px auto 50px;
		padding: 0;
		text-align: center;
	}
	#container.contract.contract2506 #contract_wrap #home_top p {
		font-size: 1.4rem;
		margin: 0 auto 30px;
		font-weight: 400;
		text-align: center;
		line-height: 2.16;
		letter-spacing: normal;
		font-family: "Zen Kaku Gothic New", sans-serif;
	}
	#container.contract.contract2506 #contract_wrap #home_top .box_jp {
        margin: 25px auto 0 auto;
		max-width: 334px;
    }
	#container.contract.contract2506 #contract_article > div > h3 {
		font-size: 2rem;
		margin: 0 auto 30px;
		text-align: center;
	}
	#container.contract.contract2506 #contract_article > div > p {
		font-size: 1.2rem;
		letter-spacing: .13em;
		margin: 0 auto 30px;
		padding: 0 40px;
		text-align: left;
	}
	#container.contract.contract2506 #contract_article > div > div h4:nth-of-type(1) {
		font-weight: 500;
		line-height: 1.65;
		margin: 50px auto 0 auto;
		text-align: center;
	}
	#container.contract.contract2506 #contract_article > div > div ul {
		gap: 0;
		flex-wrap: wrap;
	}
	#container.contract.contract2506 #contract_article > div > div ul li {
		margin: 0 40px;
		/* width: 100%; */
	}
	#container.contract.contract2506 #contract_article > div > div ul:nth-of-type(2) li {
        margin: 0 40px 30px;
    }
	#container.contract.contract2506 #contract_article > div > div ul li > p {
		font-size: 1.3rem;
		font-weight: 500;
		line-height: 1.69;
		margin: 0 auto 0;
	}
	#container.contract.contract2506 #contract_article > div > div hr {
		margin: 50px auto 50px;
	}
	#container.contract.contract2506 #contract_article > div > div h4:nth-of-type(2) {
		font-weight: 500;
		line-height: 1.65;
		margin: 0 auto 30px auto;
	}
    #container.contract.contract2506 #contract_article > div > div ul li:last-child {
        margin: 0 40px 0 40px;
    }
	#container.contract.contract2506 #suggest {
		padding: 60px 20px 40px 20px;
	}
	#container.contract.contract2506 #suggest h3 {
		font-size: 2rem;
		line-height: 1.5;
		margin: 40px auto 40px;
		text-align: center;
	}
	#container.contract.contract2506 #suggest h4 {
		font-size: 1.6rem;
		font-weight: 500;
		padding: 10px 0;
		margin: 0 auto 30px auto;
		border-top: 1px solid #A0A0A0;
		border-bottom: 1px solid #A0A0A0                  ;
	}
	#container.contract.contract2506 #suggest ul {
		flex-direction: column;
		margin: 0 auto 60px auto;
	}
	#container.contract.contract2506 #suggest ul li:last-child {
		width: 100%;
		max-width: inherit;
		flex-direction: column;
		padding-left: 0;
	}
	#container.contract.contract2506 #suggest ul li:first-child span {
		bottom: 5px;
		right: 5px;
		font-size: 1rem;
	}
	#container.contract.contract2506 #contract_style {
		width: fit-content
	}
	#container.contract.contract2506 #contract_style > div {
		width: fit-content;
		margin: 0px 20px;
	}
	#container.contract.contract2506 #contract_style > div h3 {
		font-size: 2rem;
		margin: 50px auto 30px;
		line-height: 1.5;
	}
	#container.contract.contract2506 #contract_style > div > p {
		margin: 0 auto 40px;
	}
	#container.contract.contract2506 #contract_style > div > div {
		width: 88.0%;
		margin: 0 auto 70px auto;
		flex-direction: column;
	}
	#container.contract.contract2506 #contract_style > div > div > ul {
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}
	#container.contract.contract2506 #contract_style > div> div > ul > li {
		text-align: center;
		margin: 30px auto 40px;
		border-top: #fff solid 3px;
	}
	#container.contract.contract2506 #contract_style > div> div > ul > li > h4 {
		font-size: 1.8rem;
		padding: 10px 0;
	}
	#container.contract.contract2506 #contract_style .sewing {
		width: 88%;
		padding-bottom: 50px;
	}
	#container.contract.contract2506 #contract_style .sewing > div h5 {
		font-weight: 500;
		margin: 40px auto 20px auto;
	}
	#container.contract.contract2506 #contract_style .sewing > div p {
		font-weight: 400;
		line-height: 2.16;
		margin-bottom: 30px;
	}
	#container.contract.contract2506 #contract_style .sewing > div ul {
		width: 85.37%;
		margin: 0 auto;
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: 1fr;
		gap: 20px;
		grid-auto-flow: column;
		grid-template-areas:
			"style01"
			"style02"
			"style03"
			"style04"
			"style05";
	}
	#container.contract.contract2506 #contract_style .sewing > div ul li:nth-of-type(3),
	#container.contract.contract2506 #contract_style .sewing > div ul li:nth-of-type(4),
	#container.contract.contract2506 #contract_style .sewing > div ul li:nth-of-type(5) {
	width: 67.16%;
	margin-left: auto;
	margin-right: auto;
	}
	#container.contract.contract2506 #contract_style .sewing div ul li >span {
		font-size: 1rem;
		padding: 0 9px 0 9px;
	}
	#container.contract.contract2506 #contract_style .sewing div ul li > p {
		font-size: 1rem;
		text-align: center;
		margin: 5px auto 0 auto;
	}
	#container.contract.contract2506 #contract_style div > a {
		margin: 40px auto 70px auto;
		width: calc(100% - 40px);
		max-width: 295px;
	}
	#container #kyuuon_graph h3 {
		font-size: 2.0rem;
	}
	#container #kyuuon_graph ul {
		width: 89.34%;
		justify-content: center;
	}
	#container #kyuuon_graph ul li {
		justify-content: center;
		align-items: center;
	}
	#container #kyuuon_graph ul li:nth-of-type(1) h4 {
		font-size: 1.6rem;
		margin: 50px auto 10px auto;
		text-align: center;
		font-weight: 500;
	}
	#container #kyuuon_graph ul li > img:nth-child(even) {
		width: 72.83%;
		max-width: inherit;
		margin-bottom: 20px;
	}
	#container #kyuuon_graph ul li > img:nth-child(even) {
    width: 72.83%;
    max-width: inherit;
    margin-bottom: 20px;
	}
	#container #kyuuon_graph ul li > img:nth-of-type(3) {
		width: 100%;
		max-width: inherit;
		margin-bottom: 0;
		margin-left: 40px;
	}
	#container #kyuuon_graph ul li:nth-child(2) h4 {
		font-size: 1.6rem;
		margin: 50px auto 10px auto;
		text-align: center;
		font-weight: 500;
	}
	#container #kyuuon_graph ol {
		width: 78.66%;
		margin: 0 auto 65px;
	}
	#container.contract.contract2506 #contract_recommend {
		margin: 0 auto 120px;
	}
	#container.contract.contract2506 #contract_recommend h3 {
		font-size: 2rem;
		margin: 100px auto 40px;
	}
	#contract_recommend .curtains_list ul {
		flex-direction: column;
		gap: 50px;
	}
	#contract_recommend .curtains_list ul li {
		width: 89.33%;
		margin: 0 auto;
	}
	#contract_recommend .curtains_list ul li p {
		flex: 1 1 1;
		margin-bottom: 20px;
		font-size: 1.2rem;
		line-height: 2.16;
		letter-spacing: .06em;
	}
	#container .curtains_list .box_jp {
		width: 100%;
		max-width: 335px;
	}
	#container.contract.contract2506 #suggest ul li:last-child div p {
		margin: 20px auto 20px;
	}
	#container.contract.contract2506 #other-articles {
		background-color: #fff;
		padding: 0 0 5px;
	}
}

/* CONTRACT 2510★ */
#container.contract.contract2506.contract2510 {
    background-image: url(../img/contract/2510/bg.webp);
    background-position: center;
}
#container.contract.contract2506.contract2510 #hv div {
	color: #fff;
}
#container.contract.contract2506.contract2510 > #hv > div h4 {
    max-width: 140px;
    display: block;
    margin: 0 auto;
}
#container.contract.contract2506.contract2510 #fab-ace_features {
	width: calc(100% - 40px);
	max-width: 1008px;
	margin: 0 auto 100px;
	padding: 0;
	box-sizing: border-box;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box {
	display: flex;
    margin: 100px 0 40px 0;
    justify-content: space-between;
    width: 100%;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 0;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a {
  position: relative;
  flex: 1 1 0;
  transition: opacity 0.5s;
  text-decoration: none;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:hover {
	opacity: 0.7;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:first-child::before,
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:not(:last-child)::after,
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:last-child::after {
  content: "";
  position: absolute;
  top: 0;
  width: 1px;
  height: 90%;
  background: #4E4E4E;
  z-index: 1;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:first-child::before {
  left: 0;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:not(:last-child)::after,
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:last-child::after {
  right: 0;
}

#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > div {
    width: calc(33.3333% - 40px);
    margin-bottom: 30px;
	padding: 20px 0 0 0;
	text-align: center;
	box-sizing: border-box;
}
#container.contract.contract2506.contract2510 #fab-ace_features > div > h3 {
    font-size: 2.6rem;
    margin: 0 auto 20px;
    text-align: center;
	line-height: 2.4rem;
}
#container.contract.contract2506.contract2510 #fab-ace_features > div > p {
    font-size: 1.2rem;
    margin: 0 auto 50px;
    text-align: center;
    font-weight: 400;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a > div > img {
    width: calc(100% - 160px);
    max-width: 70px;
    margin: auto;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a > div h4 {
    font-size: 2rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 1px;
    text-align: center;
    margin: 30px 0 15px;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a > div p {
    font-size: 1.4rem;
    font-style: normal;
    font-weight: 500;
    line-height: 2;
	text-align: center;
    margin: 20px 0 15px;
	line-height: 3rem;
}
#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:last-child > div p {
	padding-bottom: 11px;
}
/* デザイン★ */
#container.contract.contract2506.contract2510 #fab-ace_design {
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
	max-width: 1200px;
    background-color: #EFEFEF;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div {
    width: calc(100% - 100px);
    margin: 0px auto 84px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > h3 {
	font-size: 2.6rem;
	margin: 70px auto 0;
	text-align: center;
	border-bottom: 1px solid #4E4E4E;
	padding-bottom: 70px;
	box-sizing: border-box;
	width: calc(100% - 40px);
	max-width: 1000px;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > h3 > img {
	width: 100%;
	max-width: 70px;
	height: auto;
	display: block;
	margin: 20px auto 0 auto;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > div {
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: 50px auto 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid #4E4E4E;
	padding-bottom: 40px;
	box-sizing: border-box;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > div.reverse_box {
  display: flex;
  flex-direction: row; /* 横並び */
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: calc(100% / 2 - 20px);
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div.txt_box {
	max-width: 270px;
	margin: 0 auto;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div.img_box {
	width: 100%;
	max-width: 667px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 15px;
}
#container.contract.contract2506.contract2510 section h4 {
	text-align: left;
	font-size: 2rem;

}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > h4 {
	margin: 70px auto 20px auto;
	text-align: center;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div h4 {
	margin: 0 auto auto 0;
	font-size: 2rem;
	text-align: left;
	line-height: 2.2rem;
	padding-bottom: 20px;
	font-weight: 500;
	color: #4E4E4E;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div p {
	font-size: 1.4rem;
	font-weight: 400;
	color: #4E4E4E;
	line-height: 3rem;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > div:nth-of-type(1) > div:first-child > div p {
	text-align: left;
	letter-spacing: 1.7px;
}
#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div > img {
	width: 100%;
	max-width: 326px;
	height: auto;
	display: block;
}
/* 断面図 */
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > h3 {
	font-size: 2rem;
	font-style: normal;
	font-weight: 500;
	line-height: 22rem;
	letter-spacing: 1.6px;
	text-align: center;
	position: relative;
	margin: 70px auto 20px;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > p {
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 400;
	line-height: 3rem;
	text-align: center;
	margin: 0 auto 60px;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
	max-width: 1000px;
	gap: 68px;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div {
    display: flex;
    justify-content: space-between;
    width: calc(50% - 20px);
	margin: 0 auto;
	position: relative;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:first-child {
    flex-wrap: wrap;
    position: relative;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:last-child > div:first-child::after, 
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box:after, 
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:first-child:before {
    content: '';
    display: block;
    width: 1px;
    height: 100%;
    background: #4E4E4E;
    position: absolute;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:first-child:before {
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    height: 89%;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:last-child > div::after {
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    height: 100%;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box:after {
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div h4 {
	color: #4E4E4E;
    text-align: center;
    font-size: 1.6rem;
    font-style: normal;
    font-weight: 600;
    line-height: 2.2rem;
    letter-spacing: 1.2px;
	margin: 0 auto auto auto;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:first-child > h4 {
    width: 100%;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:last-child > h4 {
	width: calc(100% / 2);
}	 

#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div > div {
    display: flex;
    flex-direction: column;
    /* justify-content: space-between; */
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div > div {
    /* width: calc(50% - 20px); */
	width: calc(100% / 2 - 40px);
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:first-child > div > div:first-child > p:first-child {
    background: #fff;
    text-align: center;
    font-size: 1.4rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 10px;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div > div > div:nth-child(2) > p {
    font-size: 1.4rem;
    font-style: normal;
	text-align: center;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 1px;
	margin-top: 30px;
    margin-bottom: 15px;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:last-child > div > div:first-child > picture img {
    margin-top: 61px;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div > div > div:last-child > p {
    font-size: 1.4rem;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: 1px;
	margin-top: 34px;
    margin-bottom: 30px;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div > div > div > div:last-child > p {
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.14;
	text-align: center;
}
#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div > div > div > ul {
	width: 100%;
	list-style: none;
	font-size: 1.4rem;
	font-weight: 400;
}

/* 吸音★ */
#container.contract.contract2506.contract2510 #fab-ace_sound {
	width: 100%;
	max-width: 1200px;
}
#container.contract.contract2506.contract2510 #fab-ace_sound > div {
	max-width: 1000px;
    width: calc(100% - 100px);
    margin: 0 auto 43px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#container.contract.contract2506.contract2510 #fab-ace_sound > div > h3 {
	font-size: 2.6rem;
    margin: 100px auto 70px;
    text-align: center;
    border-bottom: 1px solid #4E4E4E;
    padding-bottom: 70px;
    box-sizing: border-box;
    width: 100%;
    max-width: 1000px;
}
#container.contract.contract2506.contract2510 #fab-ace_sound > div > h3 > img {
	width: 100%;
    max-width: 70px;
    height: auto;
    display: block;
    margin: 0 auto 0 auto;
}
#container.contract.contract2506.contract2510 #fab-ace_sound > div > h4 {
	font-size: 2rem;
	text-align: center;
	line-height: 2.2rem;
	padding-bottom: 30px;
	font-weight: 500;
}
#container.contract.contract2506.contract2510 #fab-ace_sound > div > p {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 3rem;
	text-align: center;
	margin: 0 auto 70px;
}
#container #fab-ace_sound  ol {
    width: calc(100% - 40px);
    max-width: 1000px;
    display: flex;
    flex-direction: column;
    justify-content: left;
    padding: 0;
    margin: 27px auto 55px;
    list-style: none;
	font-size: 1rem;
}
/* 施工性★ */
#container.contract.contract2506.contract2510 #fab-ace_work {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    max-width: 1200px;
    background-color: #EFEFEF;
}
#container.contract.contract2506 #fab-ace_work > div {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#container.contract.contract2506 #fab-ace_work > div > h3 {
	font-size: 2.6rem;
	margin: 70px auto 20px;
	text-align: center;
	border-bottom: 1px solid #4E4E4E;
	padding-bottom: 70px;
	box-sizing: border-box;
	width: calc(100% - 40px);
	max-width: 1000px;
}
#container.contract.contract2506.contract2510 #fab-ace_work > div > h3 > img {
    width: 100%;
    max-width: 70px;
    height: auto;
    display: block;
    margin: 20px auto 0 auto;
}

#container.contract.contract2506 #fab-ace_work > div > div {
	width: calc(100% - 40px);
	max-width: 1000px;
	margin: 0 auto 60px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 70px;
}
#container.contract.contract2506 #fab-ace_work > div > div > div {
	width: 100%;
	box-sizing: border-box;
}
#container.contract.contract2506 #fab-ace_work > div > div > div > img {
	width: 100%;
	max-width: 326px;
	height: auto;
	display: block;
	object-fit: cover;
	margin: 0 0 0 auto;
}

#container.contract.contract2506 #fab-ace_work > div > div > div:nth-child(2) {
	width: 100%;
}
#container.contract.contract2506 #fab-ace_work > div > div > div:nth-child(2) h4 {
	font-size: 2rem;
	text-align: left;
	line-height: 2.2rem;
	padding-top: 10px;
	padding-bottom: 30px;
	font-weight: 500;
}
#container.contract.contract2506 #fab-ace_work > div > div > div:nth-child(2) > p {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 2;
	text-align: left;
	margin-bottom: 33px;
}
#container.contract.contract2506 #fab-ace_work > div > div > div:nth-child(2) > ul {
	width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: left;
    padding: 0;
    margin: 27px auto auto 0;
    list-style: none;
    font-size: 1rem;
}
#container.contract.contract2506 #fab-ace_work > div > p {
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.14;
	text-align: center;
	margin: 0 auto 60px;
}
#container.contract.contract2506 #fab-ace_work > div > div.reverse_box {
  display: flex;
  flex-direction: column
}
#container.contract.contract2506 #fab-ace_work > div > div > p {
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.14;
	text-align: center;
	margin: 0 auto;
}
#container.contract.contract2506 #fab-ace_work > div > div > ul {
	width: 100%;
	max-width: 1000px;
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 20px;
	margin: 0 auto 100px;
	position: relative;
}
#container.contract.contract2506 #fab-ace_work > div > div > ul li {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: space-between;
	width: calc(100% / 3 - 16px);
	max-width: 1000px;
	gap: 40px;
}
#container.contract.contract2506 #fab-ace_work > div > div > ul > li > h4 {
	font-size: 2rem;
	font-weight: 500;
	text-align: center;
	margin: 0 auto;
}
#container.contract.contract2506 #fab-ace_work > div > div > ul > li > h4 > img {
	width: 100%;
	max-height: 38px;
	display: block;
	margin: 0 auto 35px;
} 
#container.contract.contract2506 #fab-ace_work > div > div > ul > li > img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
	margin: 0 auto;
}
#container.contract.contract2506 #fab-ace_work > div > div > ul li:nth-of-type(1) > img {
	max-width: 92.22px;
}
#container.contract.contract2506 #fab-ace_work > div > div > ul li:nth-of-type(2) > img {
	max-width: 81.13px;
}
#container.contract.contract2506 #fab-ace_work > div > div > ul li:nth-of-type(3) > img {
	max-width: 70.68px;
}
#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul >li:first-child::before, 
#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul >li:not(:last-child)::after, 
#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul >li:last-child::after {
    content: "";
    position: absolute;
    top: 0;
    width: 3px;
    height: 100%;
    background: #fff;
    z-index: 1;
}
#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul.flex_box > li:last-child::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 3px;
	height: 100%;
	background: #fff;
}

#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul.flex_box > li {
  position: relative; /* 疑似要素の基準用。すでにあれば不要 */
}
#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul >li:first-child::before {
	left: 0;
}
#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul >li:not(:last-child)::after, 
#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul >li:last-child::after {
    right: 0;
}
/* SP★ */
@media screen and (max-width: 767px) {
	#container.contract.contract2506.contract2510 {
		background-image: none;
        background-repeat: no-repeat;
	}
    #container.contract.contract2506.contract2510:before {
        background-image: url(../img/contract/2510/bg_sp.webp);
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background-size: cover;
    }
	#container.contract.contract2506.contract2510 #fab-ace_features .flex_box {
    display: flex;
    flex-direction: column;
	width: calc(100% - 40px);
	margin: 0 auto;
	}
	#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a > div {
	width: 100%;
	display: flex;
	flex-direction: row;
	margin-bottom: 0;
	padding: 30px 0 30px 0;
	text-align: center;
	box-sizing: border-box;
	border-bottom: #000 solid 1px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a > div > div {
		width: calc(100% - 115px);
	}
	#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:last-child > div {
		border-bottom: none;
	}
	#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a > div > img {
		max-width: 60px;
		margin: 0 25px 0 auto;
	}
	#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a > div > div {
		display: flex;
		flex-direction: column;
		text-align: left;
		align-items: flex-start;
	}
	#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a > div h4 {
		font-size: 2rem;
		font-style: normal;
		font-weight: 500;
		line-height: 2.4rem;
		letter-spacing: 1px;
		text-align: left;
		margin: auto 0 5px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a > div p {
		font-size: 1.2rem;
		font-weight: 500;
		line-height: 2;
		text-align: left;
		margin: 0 0 0;
		line-height: 2.2rem;
	}
	#container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:first-child::before, #container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:not(:last-child)::after, #container.contract.contract2506.contract2510 #fab-ace_features .flex_box > a:last-child::after {
		width: 0;
		height: 0;
	}
	/* デザイン */
	#container.contract.contract2506.contract2510 #fab-ace_design > div {
		width: calc(100% - 40px);
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > h3 {
		font-size: 2rem;
		margin: 40px auto 0;
		text-align: center;
		border-bottom: 1px solid #4E4E4E;
		padding-bottom: 40px;
		box-sizing: border-box;
		width: calc(100% - 40px);
		max-width: 1000px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > h3 > img {
		width: 100%;
		max-width: 70px;
		height: auto;
		display: block;
		margin: 20px auto 10px auto;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > div.reverse_box {
		flex-direction: column; /* 縦並び */
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > div.reverse_box .txt_box {
		order: 1;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > div.reverse_box .img_box {
		order: 2;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > div {
		padding-bottom: 20px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: calc(100% - 20px);
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div.txt_box {
		max-width: inherit;
		margin: 0 auto;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div.img_box {
		width: calc(100% - 20px);
		max-width: 667px;
		margin: 30px auto 30px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		gap: 15px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div h4 {
		margin: 0 auto auto auto;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design > div > div > div p {
		font-size: 1.2rem;
		font-weight: 400;
		color: #4E4E4E;
		line-height: 3rem;
	}
	#container.contract.contract2506.contract2510 section h4 {
		text-align: center;
		font-size: 1.6rem;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > p {
		font-size: 1.4rem;
		font-style: normal;
		font-weight: 400;
		line-height: 3rem;
		text-align: center;
		margin: 0 auto;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > h4 {
		margin: 50px auto 20px auto;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:last-child > div:first-child::after, #container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box:after, #container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:first-child:before {
		content: '';
		display: block;
		width: 0;
		height: 0;
		background: #4E4E4E;
		position: absolute;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box {
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		width: 100%;
		max-width: 1000px;
		gap: 0;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div > div {
		width: calc(100% - 40px);
		margin: 0 auto 48px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div h4 {
		padding-bottom: 27px;
		padding-top: 40px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div > div > div:nth-child(2) > p {
		font-size: 1.4rem;
		text-align: left;
		margin-top: 35px;
		margin-bottom: 5px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div > div > div:last-child > p {
		margin-top: 20px;
		margin-bottom: 20px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:last-child > div {
		border-top: #4E4E4E solid 1px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:last-child > div > div:first-child > picture img {
		margin-top: 0;
	}
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box > div:last-child h4 {
        padding-top: 40px;
    }
	#container.contract.contract2506.contract2510 #fab-ace_design .section_02 > .flex_box .section_02_img {
        width: calc(100% - 40px);
        margin: 0 auto ;
    }
		/* サウンド */
	#container.contract.contract2506.contract2510 #fab-ace_sound {
		width: calc(100% - 40px);
	}
	#container.contract.contract2506.contract2510 #fab-ace_sound > div {
		width: calc(100% - 40px);
		display: flex;
		flex-direction: column;
		align-items: center;
		font-size: 2rem;
		text-align: center;
		border-bottom: none;
		padding-bottom: 40px;
		box-sizing: border-box;
		margin: 0 auto 0;
	}
	#container.contract.contract2506.contract2510 #fab-ace_sound > div > h3 {
		font-size: 2rem;
		margin: 40px auto 0;
		text-align: center;
		border-bottom: 1px solid #4E4E4E;
		padding-bottom: 40px;
		box-sizing: border-box;
		width: 100%;
	}
    #container.contract.contract2506.contract2510 #fab-ace_sound > div > h3 > img {
        width: 100%;
        max-width: 70px;
        height: auto;
        display: block;
        margin: 20px auto 10px auto;
    }
	#container.contract.contract2506.contract2510 #fab-ace_sound > div > h4 {
		margin: 0 auto auto auto;
		font-size: 2rem;
		text-align: left;
		line-height: 2.2rem;
		padding-top: 40px;
		padding-bottom: 20px;
		font-weight: 500;
		color: #4E4E4E;
	}
	#container.contract.contract2506.contract2510 #fab-ace_sound > div > p {
        font-size: 1.2rem;
        font-weight: 400;
        color: #4E4E4E;
        line-height: 3rem;
		text-align: left;
		margin: 0 auto 20px;
    }
	#container #fab-ace_sound ol {
		width: 100%;
		text-align: left;
		margin: 27px auto 35px;
	}
	/* 施工性 */
	#container.contract.contract2506.contract2510 #fab-ace_work > div {
		width: calc(100% - 40px);
		display: flex;
		flex-direction: column;
		align-items: center;
		font-size: 2rem;
		text-align: center;
		border-bottom: none;
		padding-bottom: 40px;
		box-sizing: border-box;
		margin: 0 auto 0;
	}
	#container.contract.contract2506.contract2510 #fab-ace_work > div > h3 {
		font-size: 2rem;
		margin: 40px auto 0;
		text-align: center;
		border-bottom: 1px solid #4E4E4E;
		padding-bottom: 40px;
		box-sizing: border-box;
		width: 100%;
	}
    #container.contract.contract2506.contract2510 #fab-ace_work > div > h3 > img {
        width: 100%;
        max-width: 70px;
        height: auto;
        display: block;
        margin: 20px auto 10px auto;
    }
	#container.contract.contract2506.contract2510 #fab-ace_work > div > h4 {
		margin: 0 auto auto auto;
		font-size: 2rem;
		text-align: left;
		line-height: 2.2rem;
		padding-top: 40px;
		padding-bottom: 20px;
	}
	#container.contract.contract2506 #fab-ace_work > div > div {
		width: calc(100% - 40px);
		margin: 40px auto;
		display: flex;
		align-items: flex-start;
		gap: 10px;
		flex-direction: column;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > div:nth-child(2) > ul {
		text-align: left;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > div:nth-child(2) h4 {
		padding-bottom: 20px;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > div:nth-child(2) > p {
		margin-bottom: 0;
	}
	#container.contract.contract2506 #fab-ace_work > div > div.reverse_box {
		flex-direction: column-reverse;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > ul {
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: 10px;
		margin: 0 auto 40px;
	}
	#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul >li:first-child::before, #container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul >li:not(:last-child)::after, #container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul >li:last-child::after {
		width: 0;
		height: 0;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > ul li {
		display: flex;
		flex-direction: column;
		width: 100%;
		gap: 20px;
		padding-bottom: 30px;
		border-bottom: #fff 3px solid;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > ul > li:not(:first-child) {
		padding-top: 30px;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > ul li:last-child {
		border-bottom: none;
		padding-bottom: 0;
	}
	#container.contract.contract2506.contract2510 #fab-ace_work > div > div > ul.flex_box > li:last-child::after {
    width: 0;
    height: 0;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > p {
		font-size: 1.2rem;
		font-weight: 400;
		text-align: left;
		margin: 0 auto;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > ul > li > h4 {
		text-align: left;
		margin: 0 auto;
		display: flex;
		width: 100%;
	}
	#container.contract.contract2506 #fab-ace_work > div > div > ul > li > h4 > img {
            width: fit-content;
        max-width: 32px;
        max-height: inherit;
        margin: auto 25px auto 8px;
    }
}
/* 関連記事
--–––––––––––––––––––––––––––––––––––––– */
#container #note_related {
	width: calc(100% - 40px);
    padding: 200px 20px 100px 20px;
}
#container #note_related > div {
    max-width: 876px;
    margin: 0 auto;
}
#container #note_related ul{
	width: 100%;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
#container #note_related ul li p{
	width: 100%;
	font-size: 14px;
}
#container #note_related .square-img-wrap {
	aspect-ratio: 1 / 1;  /* 正方形を維持 */
	overflow: hidden;
	position: relative;
	margin: 0 auto;
}
#container #note_related .square-img-wrap img{
	width: 100%;
	height: 100%;
  object-fit: cover;    /* はみ出す部分をカット */
  object-position: center center; /* 中央寄せ */
	display: block;
}
#container #note_related > div > ul{
    margin: 100px auto 0 auto;
}
@media screen and (max-width: 767px) {
	#container #note_related {
		padding: 0 20px 50px 20px;
	}
	#container #note_related ul{
		grid-template-columns: repeat(2, 1fr);
	}
	#container #note_related > div > ul {
		margin: 20px auto 0 auto;
	}
}


/* ■OFFSHADE
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container.article.style2{
		width: 100%;
		box-sizing: border-box;
		padding: 60px 0 0 0;
		max-width: initial;
		background-attachment: fixed;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		background-size: cover;
}
#container.offshade {
	background-image: url(../img/offshade/mv.jpg);
}
#container.article.style2 > div {
	padding: 100px 20px 50px 20px;
	max-width: 1240px;
	width: calc(100% - 40px);
	margin: auto;
}
#container.article.style2 > .menu_list{
	position: fixed;
	top: 60px;
	padding: 32px 20px 50px 20px;
	z-index: 2;
}
#container.article.style2 > section.top_area {
	padding: 140px 20px 0;
	max-width: 1240px;
	width: calc(100% - 40px);
	margin: auto;
	text-align: center;
}
#container.article.style2.offshade > section.top_area {
    padding: 78px 20px 0;
}

#container.article.style2 > section.top_area h3{
	font-size: 2rem;
	letter-spacing: 0.06em;
}
#container.article.style2.offshade > section.top_area h3 {
		font-size: 3.4rem;
		letter-spacing: 0.05em;
}
#container.article.style2.offshade > section.top_area h4 {
    font-size: 1rem;
    padding-bottom: 50px;
    font-weight: 400;
}
#container.article.style2 > section.top_area h2{
	font-size: 3.8rem;
	line-height: 2;
	font-weight: 400;
}
#container.article.style2.offshade > section.top_area h2 {
    font-size: 3.8rem;
    letter-spacing: 0;
    font-weight: 500;
    margin-bottom: 50px;
}
#container.article.style2 > section.top_area p{
	font-size: 1.4rem;
	margin: 30px 0;
	line-height: 2.5;
}
#container.article.style2.offshade > section.top_area p {
    font-size: 1.4rem;
    margin: 0 auto 0;
    line-height: 2.28;
    font-weight: 400;
}
#container.article.style2 > section.menu_area {
	padding:100px  20px;
	max-width: 1180px;
	width: calc(100% - 80px);
	margin: 100px auto;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
#container.article.style2 > section.menu_area > div{
	width: 100%;
	max-width: 830px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
#container.article.style2 > section.menu_area > div > div{
	width: calc(calc(100%/3) - 30px);
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
#container.article.style2 > section.menu_area > div > div > img:nth-child(2){
	width: 58px;
	margin: 30px auto;
}
#container.article.style2 > section.menu_area > div > div > h4{
	font-size: 1.8rem;
	line-height: 1;
	font-weight: 500;
}
#container.article.style2 > section.menu_area > div > div > p{
	font-size: 1.2rem;
	margin: 20px 0;
	padding: 0 15px;
	text-align: center;
}
#container.article.style2 > section.menu_area > div > div > a{
	position: relative;
	display: inline-block;
	padding: 30px;
	transition: .5s
}
#container.article.style2 > section.menu_area > div > div > a:hover{
	transform: translateY(-5px);
}

#container.article.style2 > section.menu_area > div > div > a::before {
	content: '';
	width: 30px;
	height: 30px;
	border-top: solid 1px #4E4E4E;
	border-right: solid 1px #4E4E4E;
	position: absolute;
	left: 15px;
	top: 7px;
}

#container.article.style2 > section.menu_area > div > div > a::before {
	transform: rotate(135deg);
}
#container.article.style2 > section.pattern{
	margin:	100px auto;
	width: 100%;
	padding: 10px 40px;
}
#container.article.style2 > section#day_offshade{
	background-color: rgba(210,105,65,.2);
}
#container.article.style2 > section#night_offshade{
	background-color: rgba(36,54,108,.2);
}
#container.article.style2 > section#view{
	background-color: rgba(69,169,127,.2);
}
#container.article.style2 > section.pattern > div {
	width: calc(100% - 120px);
	padding: 20px;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
#container.article.style2 > section.pattern > div > div{
	max-width: 1100px;
	width: 100%;
	text-align: center;
}
#container.article.style2 > section.pattern > div > div > div:first-child > img:first-child{
	max-width: 650px;
	width: 100%;
	margin: 50px auto;
}
#container.article.style2 > section.pattern > div > div > div:first-child > img:nth-child(2){
	width: 85px;
	margin: 50px auto;
}
#container.article.style2 > section.pattern > div > div > div:first-child > h3{
	font-size: 2.6rem;
}
#container.article.style2 > section.pattern > div > div > div:first-child > h4{
	font-size: 1.6rem;
	font-weight: 500;
	margin: 20px 0;
}
#container.article.style2 > section.pattern > div > div > div:first-child > p{
	font-size: 1.2rem;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(2) > p{
	font-size: 1.4rem;
	margin: 50px 0 0;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(2) > p span{
	font-size: 2rem;
	padding-left: 1em;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div.box_menu{
	display: flex;
	width: 350px;
	height: 70px;
	margin: 0 auto;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div.box_menu > div{
	width: 20%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 2.6rem;
	line-height: 1;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div.box_menu > div span{
	font-size: 1.4rem;
}
#container.article.style2 > section#day_offshade > div > div > div:nth-child(2) > div.box_menu > div:first-child,
#container.article.style2 > section#day_offshade > div > div > div:nth-child(3) > div > div:first-child > div:first-child{
	background-color: #F4D9D0;
}
#container.article.style2 > section#day_offshade > div > div > div:nth-child(2) > div.box_menu > div:nth-child(2),
#container.article.style2 > section#day_offshade > div > div > div:nth-child(3) > div > div:nth-child(2) > div:first-child{
	background-color: #EDC3B3;
}
#container.article.style2 > section#day_offshade > div > div > div:nth-child(2) > div.box_menu > div:nth-child(3),
#container.article.style2 > section#day_offshade > div > div > div:nth-child(3) > div > div:nth-child(3) > div:first-child{
	background-color: #E4A58D;
}
#container.article.style2 > section#day_offshade > div > div > div:nth-child(2) > div.box_menu > div:nth-child(4),
#container.article.style2 > section#day_offshade > div > div > div:nth-child(3) > div > div:nth-child(4) > div:first-child{
	background-color: #DB8767;
}
#container.article.style2 > section#day_offshade > div > div > div:nth-child(2) > div.box_menu > div:last-child,
#container.article.style2 > section#day_offshade > div > div > div:nth-child(3) > div > div:last-child > div:first-child{
	background-color: #D26941;
	color: #fff;
}
#container.article.style2 > section#night_offshade > div > div > div:nth-child(2) > div.box_menu > div:first-child,
#container.article.style2 > section#night_offshade > div > div > div:nth-child(3) > div > div:first-child > div:first-child{
	background-color: #D3D7E2;
}
#container.article.style2 > section#night_offshade > div > div > div:nth-child(2) > div.box_menu > div:nth-child(2),
#container.article.style2 > section#night_offshade > div > div > div:nth-child(3) > div > div:nth-child(2) > div:first-child{
	background-color: #BDC3D3;
}
#container.article.style2 > section#night_offshade > div > div > div:nth-child(2) > div.box_menu > div:nth-child(3),
#container.article.style2 > section#night_offshade > div > div > div:nth-child(3) > div > div:nth-child(3) > div:first-child{
	background-color: #9DA5BD;
}
#container.article.style2 > section#night_offshade > div > div > div:nth-child(2) > div.box_menu > div:nth-child(4),
#container.article.style2 > section#night_offshade > div > div > div:nth-child(3) > div > div:nth-child(4) > div:first-child{
	background-color: #6F7DA5;
}
#container.article.style2 > section#night_offshade > div > div > div:nth-child(2) > div.box_menu > div:last-child,
#container.article.style2 > section#night_offshade > div > div > div:nth-child(3) > div > div:last-child > div:first-child{
	background-color: #24366C;
	color: #fff;
}
#container.article.style2 > section#view > div > div > div:nth-child(2) > div.box_menu > div:first-child,
#container.article.style2 > section#view > div > div > div:nth-child(3) > div > div:first-child > div:first-child{
	background-color: #D0EADF;
}
#container.article.style2 > section#view > div > div > div:nth-child(2) > div.box_menu > div:nth-child(2),
#container.article.style2 > section#view > div > div > div:nth-child(3) > div > div:nth-child(2) > div:first-child{
	background-color: #B4DDCC;
}
#container.article.style2 > section#view > div > div > div:nth-child(2) > div.box_menu > div:nth-child(3),
#container.article.style2 > section#view > div > div > div:nth-child(3) > div > div:nth-child(3) > div:first-child{
	background-color: #8FCCB2;
}
#container.article.style2 > section#view > div > div > div:nth-child(2) > div.box_menu > div:nth-child(4),
#container.article.style2 > section#view > div > div > div:nth-child(3) > div > div:nth-child(4) > div:first-child{
	background-color: #6ABA99;
}
#container.article.style2 > section#view > div > div > div:nth-child(2) > div.box_menu > div:last-child,
#container.article.style2 > section#view > div > div > div:nth-child(3) > div > div:last-child > div:first-child{
	background-color: #45A97F;
	color: #fff;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div:last-child {
	display: flex;
	justify-content: space-between;
	font-size: 1.4rem;
	position: relative;
	width: 350px;
	margin: 10px auto;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div:last-child > img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: 75px;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(3){
	margin: 50px 0 0 ;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(3) > div{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(3) > div > div{
	width: calc(20% - 8px);
}
#container.article.style2 > section.pattern > div > div > div:nth-child(3) > div > div > div:first-child{
	font-size: 1.3rem;
	font-weight: bold
}
#container.article.style2 > section.pattern > div > div > div:nth-child(3) > div > div > div:last-child{
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 55px;
	line-height: 1.5;
	background-color: #EFEFEF;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(3) > div > div > img{
	margin: 5px 0;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(3) .caution{
	font-size: 1rem;
	margin: 50px 0 100px 0;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(4){
	margin: 0 0 80px 0;
}
#container.article.style2 > section.pattern > div > div > div:nth-child(4) p{
	font-size: 1.8rem;
}
#container.article.style2 > section.menu_area#offshade_menu {
	position: fixed;
	top: -49px;
	left: 0;
	margin: 0;
	padding: 10px;
	width: calc(100% - 20px);
	max-width: initial;
	background-color: #fff;
	border-bottom: 1px solid #E0E0E0;
	z-index: 499;
	transition: .75s;
}
#container.article.style2 > section.menu_area#offshade_menu.fixed {
	animation: dropdown 0.75s forwards;
}
@keyframes dropdown {
	0% {
		top: -49px;
	}
	100% {
		top: 61px
	}
}
#container.article.style2 > section.menu_area#offshade_menu > div{
	max-width: 600px;
}
#container.article.style2 > section.menu_area#offshade_menu > div > div {
	flex-direction: initial;
}
#container.article.style2 > section.menu_area#offshade_menu > div > div > a {
	padding: 0 20px 0 0;
	font-size: 1.4rem;
}
#container.article.style2 > section.menu_area#offshade_menu > div > div > a::before {
	width: 8px;
	height: 8px;
	border-top: solid 1px #4E4E4E;
	border-right: solid 1px #4E4E4E;
	right: 0;
	left: initial;
	top: 8px;
}
#container.article.style2 > section.menu_area#offshade_menu > div > div {
	width: 50%;
	margin: 0;
}
#container.article.style2 > section.menu_area#offshade_menu > div > div:nth-child(1) {
	display: flex;
	justify-content: flex-start;
}
#container.article.style2 > section.menu_area#offshade_menu > div > div:nth-child(2) {
	position: absolute;
	top: 50%;
	left: 51%;
	transform: translate(-51%, -50%);
	-webkit-transform: translate(-51%, -50%);
	-ms-transform: translate(-51%, -50%);
	width: initial;
}
#container.article.style2 > section.menu_area#offshade_menu > div > div:nth-child(3) {
	display: flex;
	justify-content: flex-end;
}

#container.article.style2 > section.other{
	margin: 100px auto;
	width: calc(100% - 40px);
	padding: 70px 20px 100px 20px;
	background-color: #fff;
}
#container.article.style2 > section.other h3 {
	font-size: 4rem;
	text-align: center;
	font-weight: 400;
	letter-spacing: 0.06em;
}
#container.article.style2 > section.other h4 {
	font-size: 1.6rem;
	text-align: center;
	font-weight: 500;
}
#container.article.style2 > section.other > div {
	display: flex;
	align-items: flex-start;
	/*justify-content: space-between;*/
	justify-content: center;
	max-width: 580px;
	margin: 50px auto auto;
}
#container.article.style2 > section.other > div > div{
	width: calc(50% - 20px);
}
#container.article.style2 > section.other > div > div > a {
	overflow: hidden;
	display: block;
	position: relative;
	margin: 0 0 20px 0;
}
#container.article.style2 > section.other > div > div > a > img {
	transition: .5s;
}
#container.article.style2 > section.other > div > div > a:hover > img {
	transform: scale(1.1);
}

#container.article.style2 > section.other > div > div > a > p {
	position: absolute;
	top: 20px;
	left: 20px;
	font-size: 2.2rem;
	color: #fff;
	line-height: 1.5;
}
#container.article.style2 > section.other > div > div > a > p .big{
	font-size: 2.5rem;
}
#container.article.style2 > section.other > div > div > a > p .big2{
	font-size: 2.5rem;
}
#container.article.style2 > section.other > div > div > a > p .big3{
	font-size: 2.5rem;
}
#container.article.style2 > section.other > div > div > p{
	font-size: 1.6rem;
	text-align: center;
}
#container.article.style2 > section.other > div > div.offshade_link{
	position: relative;
}
#container.article.style2 > section.other > div > div.offshade_link a > img:last-child {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 76.6666666666666666%;
}
#container.article.style2 > section.other > div > div.offshade_link a:hover > img:last-child {
	transform: none
}

/* FUNCTIONALITY 遮熱
–––––––––––––––––––––––––––––––––––––– */
#container.functionality.article.style2.shanetsu {
	background-image: url(../img/shanetsu/bg.webp);
	background-position: center;
}
#container.article.style2.functionality.shanetsu > section.pattern > div {
	flex-direction: column;
	margin-bottom: 150px;
}
#container.article.style2.functionality > section.top_area {
        padding: 140px 20px 0;
    max-width: 1240px;
    width: calc(100% - 40px);
    margin: auto;
    text-align: center;
}
#container.article.style2.functionality.shanetsu > section#shanetsu {
    background-color: inherit;
	margin: 0 auto;
}
/* #container.article.style2.functionality.shanetsu > section.pattern {
	padding: 0 20px;
} */
#container.article.style2.functionality > section.top_area h1 {
    font-weight: 400;
    font-size: 3.4rem;
    letter-spacing: 0.06em;
    line-height: 1;
}
#container.article.style2.functionality > section.top_area h4 {
	font-size: 1.4rem;
	line-height: 2;
    font-weight: 400;
	position: relative;
    z-index: 2;
    text-align: center;
	letter-spacing: 0.06em;
}
#container.article.style2.functionality > section.top_area h2 {
    font-size: 3.8rem;
    letter-spacing: 0;
    font-weight: 500;
	margin-bottom: 30px;
}
#container.article.style2.functionality > section.top_area h5 {
    font-size: 1.6rem;
    margin: 0 auto 30px;
	font-weight: 500;
}
#container.article.style2.functionality.shanetsu > section.top_area p {
    font-size: 1.4rem;
    margin: 0 auto 62px;
    line-height: 2.28;
	font-weight: 400;
}
#container.article.style2.functionality.shanetsu > section.pattern > div > div > div:first-child > img:first-child {
    max-width: 650px;
    width: 100%;
    margin: 118px auto 70px;
}
#container.article.style2.functionality.shanetsu > section.pattern > div > div > div:first-child > img:nth-child(2) {
    width: 78.74px;
    margin: 0 auto 30px;
}
#container.article.style2.functionality.shanetsu > section#shanetsu h4 {
	font-size: 1.8rem;
	font-weight: 500;
	text-align: center;
	margin-top: 50px;
	margin-bottom: 20px;
}
#container.article.style2.functionality.shanetsu > section#shanetsu > div > div > div > p {
	font-size: 1.2rem;
	line-height: 2.14;
	font-weight: 400;
	text-align: center;
	margin: 0 auto;
}
#container.article.style2.functionality.shanetsu > section#shanetsu ol {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	counter-reset: custom-counter;
    list-style: none;
}
#container.article.style2.functionality.shanetsu > section#shanetsu ol li {
	width: 58%;
	max-width: 638px;
	justify-content: flex-start;
	text-align: left;
	counter-increment: custom-counter;
    position: relative;
    padding-left: 1.5em;
	font-size: 1.4rem;
	line-height: 2.14;
	font-weight: 400;
	letter-spacing: .05em;
	display: flex;
}
#container.article.style2.functionality.shanetsu > section#shanetsu ol li::before {
	content: counter(custom-counter) ". ";
	position: absolute;
	left: 0;
	top: 0;
}
#container.article.style2.functionality.shanetsu > section#shanetsu ol li:last-child {
	counter-increment: none;
	padding-left: 2em;
}
#container.article.style2.functionality.shanetsu > section#shanetsu ol li:last-child:before {
	content: "　※";
}
#container.article.style2.functionality.shanetsu > section#shanetsu > div > div > div:nth-child(2) > div:last-child {
    display: flex;
    flex-direction: column;
    font-size: 1.4rem;
    max-width: 350px;
    margin: 10px auto 0;
}
#container.article.style2.functionality.shanetsu > section.pattern > div > div > div:nth-child(2) > div:last-child > img {
    position: relative;
	width: 100%;
}
#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list h3 {
	font-size: 2.6rem;
    text-align: center;
    margin-bottom: 60px;
    margin-top: 120px;
}
#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul{
	width: fit-content;
    max-width: 830px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 40px;
}
#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul li {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 80px;
	/* width: calc(100% - 40px); */
	width: 100%;
	max-width: 830px;
}
#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul li div:first-child {
	width: 48.19%;
	max-width: 400px;
	margin: 0 auto;
	align-items: flex-start;
	text-align: left;
}
#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul li div:last-child {
	width: fit-content;
	justify-content: flex-start;
	
}

#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul li h4{
	font-size: 1.4rem;
	line-height: 1.5;
	text-align: left;
	margin: 0 auto 30px 0;
}

/* #container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul li div > p {
	width: fit-content;
	max-width: 358px;
	align-items: center;
	justify-content: center;
	font-size: 1.4rem;
	font-weight: 400;;
	line-height: 1.5;
	text-align: left;
} */
#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list .box {
	justify-content: flex-start;
	margin: 50px 0 0 0 ;
}
#container.article.style2.functionality.shanetsu #other_sns {
	width: 100%;
	padding: 100px 0;
	background-color: inherit;
}
#container.article.style2.functionality.shanetsu.offshade:before {
	display: none;
}
@media screen and (max-width: 767px) {
	#container.functionality.article.style2.shanetsu{
		/* background-image: url(../img/shanetsu/bg_sp.webp);
		background-position: center;
		background-size: cover; */
		background-image: none;
        background-repeat: no-repeat;
	}
	#container.article.style2.functionality > section.top_area h1 {
        font-size: 2.6rem;
	}
	#container.article.style2.functionality > section.top_area h3 {
		font-size: 2.6rem;
	}
	#container.article.style2.functionality > section.top_area h4 {
		font-size: 1.4rem;
		/* padding-bottom: 40px; */
	}
	#container.article.style2.functionality > section.top_area h2 {
		font-size: 2.3rem;
		margin-bottom: 30px;
	}
	#container.article.style2.functionality> section.top_area h5 {
		font-size: 1.3rem;
		margin: 0 auto 20px;
	}
	#container.article.style2.functionality.shanetsu > section.top_area p {
		font-size: 1.2rem;
		margin: 0 20px 107px;
		text-align: left;
	}
	#container.article.style2.functionality.shanetsu > section.pattern > div > div > div:first-child > img:first-child {
		margin: 50px auto 30px;
	}
	#container.article.style2.functionality.shanetsu > section.pattern > div > div > div:first-child > img:nth-child(2) {
		width: 55.11px;
		margin: 0 auto 20px;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu > div > div > div > p {
		text-align: left;
		margin: 20px auto 0;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu h4 {
		font-size: 1.6rem;
		margin-bottom: 15px;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu ol {
		align-items: flex-start;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu ol li {
		width: fit-content;
		text-align: left;
		padding-left: 15px;
		padding-right: 20px;
		font-size: 1.1rem;
		line-height: 2;
		font-weight: 400;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu ol li:last-child {
		counter-increment: none;
		padding-left: 15px;
		padding-right: 20px;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu ol li:last-child:before {
		content: "※";
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu > div > div > div:nth-child(2) > div:last-child {
		margin: 0 auto 0;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list h3 {
		font-size: 2rem;
		margin: 90px 0 40px 0;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul {
		gap: 50px;
		margin-top: 0;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul li {
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		gap: 20px;
		width: fit-content;
	}
	#container.article.style2.functionality.shanetsu #other_sns {
		background-color: #fff;
		padding: 5px 0 100px 0;
	}

}

/* FUNCTIONALITY　吸音
–––––––––––––––––––––––––––––––––––––– */
#container.kyuuon {
	background-color: inherit;
}
#container.functionality.article.style2.shanetsu.kyuuon {
	background-image: inherit;
	background-color: #fff;
}
#container.functionality.article.style2.shanetsu.kyuuon .top_area > div > img{
	width: 18%;
	/* max-width: 136.32px; */
	margin: 0 auto 54px;
}
#container.article.style2.kyuuon hr {
    border: none;
    border-top: 1px solid #4E4E4E;
	width: 80%;
	height: 0;
    margin: 40px 0;
}
#container.article.style2.kyuuon .kyuuon01 {
	width: 100%;
	background-color: #EFEFEF;
}
#container.article.style2.kyuuon .kyuuon01 > div {
	/* width:100%; */
	max-width: 832px;
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
#container.article.style2.kyuuon .kyuuon01 div > h3 {
	font-size: 2.6rem;
	text-align: center;
	margin: 70px 0 2px 0;
}
#container.article.style2.kyuuon .kyuuon01 div > p {
	font-size: 1.4rem;
	font-weight: 400;
	text-align: center;
	margin: 0 auto;
}
#container.article.style2.kyuuon .kyuuon01 hr {
    border: none;
    border-top: 1px solid #fff;
    height: 0;
    margin: 20px 0;
	width: 100%;
}
#container.article.style2.kyuuon .kyuuon01 > div > div {
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-bottom: 69px;
}
#container.article.style2.kyuuon .kyuuon01 > div > div h4:nth-of-type(1) {
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 2.2;
	margin: 63px auto -20px auto;
	text-align: center; 
}
#container.article.style2.kyuuon .kyuuon01 > div > div h4:nth-of-type(2) {
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 2.2;
	margin: 80px auto 30px auto;
	text-align: center;
}
#container.article.style2.kyuuon .kyuuon01 > div > div ul {
	width: 100%;
	max-width: 755px;
	display: flex;
	/* flex-wrap: wrap; */
	justify-content: center;
	gap: 51px;
	margin: 0 auto;
	padding: 0;
}
#container.article.style2.kyuuon .kyuuon01 > div > div hr {
	width: 83.33%;
	max-width: 1000px;
	border: none;
	border-bottom: #A0A0A0 solid 1px;
	margin: 50px auto 60px;
}
#container.article.style2.kyuuon .kyuuon01 > div > div ul li {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	/* ↓画像を高画質に置き換えた際 */
	/* width: calc(50% - 25px); */
	/* max-width: 352px; */
	height: 100%;
	width: auto;
}
#container.article.style2.kyuuon .kyuuon01 > div > div ul li > p {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2.2;
	margin: -10px auto 10px;
}
#container.article.style2.kyuuon #kyuuon_graph {
	width: 100%;
	max-width: inherit;
	background-color: #EFEFEF;
}
#container.article.style2.kyuuon #kyuuon_graph  hr {
    border: none;
    border-top: 1px solid #fff;
    height: 0;
    margin: 0;
	width: 100%;
}
#container.article.style2.kyuuon #kyuuon_graph > div {
	max-width: 832px;
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
#container.article.style2.kyuuon #kyuuon_graph > div > h3 {
	font-size: 2.6rem;
	text-align: center;
	margin: 64px auto 23px;
}
#container.article.style2.kyuuon #kyuuon_graph ul li:nth-of-type(1) h4 {
    font-size: 2rem;
    margin: 50px auto 20px 0;
    text-align: left;
}
#container.article.style2.kyuuon .kyuuon03 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	/* gap: 20px; */
	background-color: #efefef;
	width: 100%;
	padding: 0 0 70px 0;
}
#container.article.style2.kyuuon .kyuuon03 h3 {
	font-size: 2.4rem;
	text-align: center;
	margin: 50px 0 1em 0;
}
#container.article.style2.kyuuon .kyuuon03 hr {
	border: none;
	border-top: 1px solid #fff;
	width: 80%;
	height: 0;
	margin: 0 0 20px 0;
}
#container.article.style2.kyuuon .kyuuon03 p {
	font-size: 1rem;
	margin: 10px 0 50px 0;
}
#container.article.style2.kyuuon .kyuuon03 > div >div {
	position: relative;
	width: calc(100% - 40px);
	max-width: 860px;
	margin: 50px auto;
	padding: 0 20px;
	display: flex;
	gap: 50px;
}
#container.article.style2.kyuuon .kyuuon03 > div > div > div {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
}
#container.article.style2.kyuuon .kyuuon03 > div:nth-of-type(1) h4 {
	font-size: 1.6rem;
	text-align: center;
	margin: 20px 0 -75px;
}
#container.article.style2.kyuuon .kyuuon03 > div:nth-of-type(2) > h4 {
	font-size: 1.6rem;
	text-align: center;
	margin: 30px 0;
}
#container.article.style2.kyuuon .kyuuon03 > div > div > div > p {
	font-size: 1.2rem;
	line-height: 1.5;
	text-align: center;
	margin: 0 auto;
}

#container.article.style2.kyuuon .kyuuon03 .kyuuon_graph{
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 831px;
}
#container.article.style2.kyuuon .kyuuon03 .kyuuon_graph > img:nth-child(odd) {
	width: 30%;
	margin-bottom: 10px;
}
#container.article.style2.kyuuon .kyuuon03 .kyuuon_graph > img:nth-child(even) {
    width: 100%;
	margin-bottom: 60px;
}
#container.article.style2.kyuuon .kyuuon04 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
}
#container.article.style2.kyuuon .kyuuon04 h3 {
	font-size: 2.4rem;
	text-align: center;
	margin: 0 0 1em 0;
}
#container.article.style2.kyuuon .kyuuon04 h4 {
	font-size: 1.4rem;
	text-align: center;
	margin: 10px 0 1em 0;
}
#container.article.style2.kyuuon .kyuuon04 p {
	font-size: 1rem;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 50px;
}
#container.article.style2.kyuuon .kyuuon04 > div {
	width: calc(100% - 40px);
	max-width: 460px;
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
#container.article.style2.kyuuon .kyuuon04 > div > ul {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
}
#container.article.style2.kyuuon .kyuuon04 > div > ul li {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	width: calc(100% - 40px);
}
#container.article.style2.kyuuon .kyuuon04 > div > ul li div {
	width: 50%;
}
#container.article.style2.kyuuon .kyuuon04 > div > ul li div img {
	height: 64px;
	width: auto;
}
#container.article.style2.kyuuon .kyuuon04 > div > ul li div h4 {
	font-size: 2rem;
	align-items: center;
	text-align: left;
	margin-left: 1em;
}
#container.article.style2.kyuuon .kyuuon04 > div > ul li div:first-child {
	display: flex;
	
}
#container.article.style2.kyuuon .kyuuon04 .kyuuon_list {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;
	width: 100%;
	margin-top: 50px;
}
.kyuuon_list ul li div:first-child {
	position: relative;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	color: #555;
	font-size: 16px;
	background: #FFF;
	border: solid 3px #555;
	box-sizing: border-box;
}
.kyuuon_list ul li div:first-child::before{
	content: "";
	position: absolute;
	top: 50%;
	right: -24px;
	margin-top: -12px;
	border: 12px solid transparent;
	border-left: 12px solid #FFF;
	z-index: 2;
}
.kyuuon_list ul li div:first-child::after{
		content: "";
		position: absolute;
		top: 50%;
		right: -30px;
		margin-top: -14px;
		border: 14px solid transparent;
		border-left: 14px solid #555;
		z-index: 1;
}
#container.article.style2.kyuuon #other-articles {	
	background-color: #efefef;
}

@media screen and (max-width: 767px) {
	#container.article.style2.functionality.kyuuon > section.top_area p {
        font-size: 1.2rem;
		width: calc(100% - 40px);
        margin: 0 auto 0;
        text-align: left;
    }
	#container.functionality.article.style2.shanetsu.kyuuon .top_area > div > img {
		width: 62.87%;
		max-width: 172.3px;
		margin: 0 auto 54px;
	}
	#container.article.style2.kyuuon .kyuuon01 > div {
		width: fit-content;
	}
	#container.article.style2.kyuuon .kyuuon01 div > p {
		text-align: left;
		padding: 0 20px;
		line-height: 1.65;
	}
	#container.article.style2.kyuuon .kyuuon01 > div > div h4:nth-of-type(1) {
		margin: 40px auto 0 auto;
	}
	#container.article.style2.kyuuon .kyuuon01 > div > div h4:nth-of-type(2) {
		line-height: 1.65;
	}
	#container.article.style2.kyuuon .kyuuon01 > div > div ul {
		/* width: fit-content; */
		flex-wrap: wrap;
		gap: 0;
	}
	#container.article.style2.kyuuon .kyuuon01 > div > div ul li {
		margin: 0 20px;
		/* width: 100%; */
	}
	
	#container.article.style2.kyuuon .kyuuon01 > div > div ul:nth-of-type(1) li > p {
		font-size: 1.3rem;
		font-weight: 500;
		line-height: 2.2;
		margin: 0 auto 0;
	}
	#container.article.style2.kyuuon .kyuuon01 > div > div ul:nth-of-type(2) li > p {
		font-size: 1.3rem;
		font-weight: 500;
		line-height: 2.2;
		margin: 0 auto 30px;
	}
	#container.article.style2.kyuuon #kyuuon_graph > div > h3 {
		font-size: 2rem;
		margin: 0 auto 20px;
	}
	#container.article.style2.kyuuon #kyuuon_graph ul li:nth-of-type(1) h4 {
		font-size: 1.6rem;
		margin: 30px auto 10px;
		text-align: center;
	}
	#container.article.style2.kyuuon #kyuuon_graph ul {
        width: 100%;
    }
	#container.article.style2.kyuuon #kyuuon_graph ul li:last-child {
		border-top: none;
	}
	#container.article.style2.kyuuon #kyuuon_graph ul li:nth-child(2) h4 {
        font-size: 1.6rem;
        margin: 10px auto 10px auto;
    }
	#container.article.style2.kyuuon #kyuuon_graph ol {
        width: fit-content;
        margin: 0 auto 70px;
    }
	#container.article.style2.kyuuon #kyuuon_graph ol li {
		padding: 0 20px;
	}
	#container.article.style2.kyuuon #recommend .curtains_list h3 {
		font-size: 2rem;
		text-align: center;
		margin-bottom: 40px;
		margin-top: 100px;
	}
	#container.article.style2.kyuuon #recommend > div {
		width: calc(100% - 80px);
	}
	#container.article.style2.kyuuon #recommend .curtains_list ul li {
        gap: 20px;
    }
	#container.article.style2.kyuuon #recommend .curtains_list h4 {
		margin: 0 auto 20px 0;
	}
	#container.article.style2.kyuuon #recommend .curtains_list ul li p {
		font-size: 1.2rem;
		line-height: 2.16;
	}
	#container.article.style2.kyuuon #other-articles {
		background-color: #fff;
	}
	#container.article.style2.kyuuon #other-articles {
		padding: 0 0 5px 0;
	}
	#container.article.style2.functionality.kyuuon #other_sns {
		padding: 0 0 60px 0;
	}
}


/*おすすめカーテンの紹介
–––––––––––––––––––––––––––––––––– */
#container #recommend {
	width: 100%;
	margin: 0 auto;
}
#container #recommend > div {
	width: calc(100% - 80px);
	background-color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
#container #recommend .curtains_list {
	margin: 0 auto 120px auto;
}
#container #recommend .curtains_list h3 {
	font-size: 2.6rem;
	text-align: center;
	margin-bottom: 50px;
}
#container #recommend .curtains_list h3 {
    font-size: 2.6rem;
    text-align: center;
    margin-bottom: 6%;
    margin-top: 120px;
}
#container #recommend .curtains_list h4 {
	font-size: 1.4rem;
	line-height: 1.5;
	margin:  0 auto 30px 0;
	text-align: left;
	color: #5385e1;
	text-decoration: underline;
	padding: 0;
	font-weight: 500;
}
#container #recommend .curtains_list ul {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 40px;
}
#container #recommend .curtains_list ul li {
	/* display: grid;
    grid-template-columns: 1fr 1fr; */
	display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 80px;
    width: 100%;
    max-width: 830px;
}
#container #recommend .curtains_list ul li p {
	width: fit-content;
    max-width: 358px;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    font-weight: 400;
    /* line-height: 1.5; */
    text-align: left;
	letter-spacing: .05em;
}

#container #recommend .curtains_list ul li div:first-child {
	position: relative;
}
#container #recommend .curtains_list ul li div img:nth-child(1) {
	width: 100%;
	height: auto;
	display: block;
}
#container #recommend .curtains_list ul li img:nth-child(2) {
	position: absolute;
	bottom: 5px;
	right: 5px;
	width: 32px;
}
#container #recommend .curtains_list ul li div:first-child {
	width: 48.19%;
    max-width: 400px;
    margin: 0 auto;
    align-items: flex-start;
    text-align: left;
}
@media screen and (max-width: 1279px) {
	#container #recommend {
	padding: 0;
}
}
@media screen and (max-width: 767px) {
	#container #recommend > div {
		width: 100%;
	}
	#container #recommend .curtains_list ul {
        gap: 50px;
        margin-top: 0;
    }
	#container #recommend .curtains_list ul li {
		flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        gap: 20px;
        width: fit-content;
	}
	#container #recommend .curtains_list ul li div:first-child {
		margin: 0 auto;
		text-align: center;
		width: 100%;
	}
	#container #recommend .curtains_list ul li div:last-child {
		width: fit-content;
		/* justify-content: flex-start; */
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul li div:first-child {
		width: 100%;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul li h4 {
		margin: 0 auto 20px 0;
	}
	#container.article.style2.functionality.shanetsu > section#shanetsu .curtains_list ul li div > p {
		font-size: 1.2rem;
		line-height: 2.16;
	}
	#container.article.style2.kyuuon #recommend .curtains_list {
		margin: 0 auto 100px auto;
	}
}

/*関連記事
------------------------------ */
#container #other-articles {
	width: 100%;
	margin: 0 auto;
    padding: 70px 0 120px 0;
    background-color: #fff;
}
#container #other-articles > div {
	display: grid;
	grid-template-columns: 1fr;
	/* width: 100%; */
	width: calc(100% - 40px);
	max-width: 1200px;
	margin: 0 auto;
}
#container #other-articles > div > h2 {
    font-size: 3.4rem;
}
#container #other-articles > div > h3 {
	font-size: 2.6rem;
	margin-bottom: 40px;
}
#container #other-articles > div > div {
	display: flex;
    align-items: flex-start;
    justify-content: center;
    max-width: 580px;
	gap: 40px;
    margin: 0 auto;
	width: fit-content;
	max-width: 1200px;
}
/* #container #other-articles > div > div {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 32px;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
  } */
#container #other-articles > div > div > div {
    max-width: 270px;
}
#container #other-articles > div > div > div > a {
    overflow: hidden;
    display: block;
    position: relative;
    margin: 0 0 20px;
}
#container #other-articles > div > div > div > a:hover > img:first-child {
    transform: scale(1.1);
}
#container #other-articles > div > div > div > a > img:first-child {
    transition: .5s;
}
#container #other-articles > div > div > div > a > p {
    position: absolute;
    top: 20px;
    left: 20px;
    font-size: 1.8rem;
    color: #fff;
    line-height: 1.5;
}
#container #other-articles > div > div > div.articles_01 > a > p {
	top: 13px;
}
#container #other-articles > div > div > div.articles_02 > a > p {
	top: 16px;
}
#container #other-articles > div > div > div > a:first-child > img:last-child {
    position: absolute;
    right: 0;
    bottom: 0;
	width: auto;
    height: 25.19%;
}
#container #other-articles > div > div > div:first-child > a:first-child > img:last-child {
    position: absolute;
    right: 0;
    bottom: 0;
	width: auto;
	height: 25.19%;
}
#container #other-articles > div > div > div > a > p .middle {
    font-size: 2.9rem;
}
#container #other-articles > div > div > div > a > p .big {
    font-size: 2.5rem;
}
#container #other-articles > div > div > div > a > p .big2 {
	font-size: 2.5rem;
}
#container #other-articles > div > div > div > a > p .big3 {
	font-size: 2.5rem;
}
#container #other-articles > div > div > div > h4 {
    text-align: center;
    font-size: 1.6rem;
    font-weight: 500;
}
#container #other-articles > div > div > div > p {
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 2.083;
	text-align: center;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	#container #other-articles {
		padding: 70px 0 0 0;
	}
	#container #other-articles > div > h3 {
		font-size: 2rem;
	}
	#container #other-articles > div > div {
		display: flex;
		flex-wrap: wrap;
		gap: 15px;
		padding: 20px;
		/* justify-content: flex-start; */
	}
	#container #other-articles .articles-dummy {
		display: block;
		visibility: hidden;
		height: 0;
		margin: 0;
		padding: 0;
	  }
	#container #other-articles > div > div > div {
		width: calc(50% - 8px); /* 2つで1行、gap考慮 */
		max-width: 270px;
		min-width: 0;
	}
	#container #other-articles > div > div > div > h4 {
		text-align: center;
		font-size: 1.4rem;
		font-weight: 500;
	}
	#container #other-articles > div > div > div > p {
		font-size: 1em;
		line-height: 2;
		text-align: center;
		margin: 0 auto;
		padding: 0 0 25px;
	}
	#container #other-articles > div > div > div > a > p {
		position: absolute;
		top: 19px;
		left: 12px;
		font-size: 1.5rem;
	}
	#container #other-articles > div > div > div.articles_01 > a > p {
		top: 9px;
	}
	#container #other-articles > div > div > div.articles_02 > a > p {
		top: 10px;
	}
	#container #other-articles > div > div > div > a > p .big {
		font-size: 2rem;
	}
	#container #other-articles > div > div > div > a > p .big2 {
		font-size: 2.4rem;
	}
	#container #other-articles > div > div > div > a > p .big3 {
		font-size: 2.5rem;
	}

}



/* ■SUSTAINABILITY
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#container.sustainability {
	background-image: url(../img/sustainability/mv.jpg);
	letter-spacing: 0.05rem;
}
#container.article.style2.sustainability > section.top_area h1 {
	font-weight: 400;
	font-size: 3.4rem;
	letter-spacing: 0.06em;
	line-height: 1;
}
#container.article.style2.sustainability > section.top_area h2 {
	font-size: 1.4rem;
}
#container.article.style2.sustainability > section.introduction {
	max-width: 1100px;
	width: 100%;
	position: relative;
	margin: 100px auto;
	display: flex;
	justify-content: center;
}
#container.article.style2.sustainability > section.introduction > picture img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	max-width: 1040px;
}
#container.article.style2.sustainability > section.introduction > div:first-child {
	background-color: #F0F7F3;
	max-width: 860px;
	height: 100%;
	position: absolute;
	width:calc(100% - 100px);
	padding: 0 20px;
}
#container.article.style2.sustainability > section.introduction > div:nth-child(3){
	background-color: rgba(255,255,255,.8);
	color: #48AA5B;
	width: calc(100% - 180px);
	max-width: 620px;
	margin: 0 auto;
	text-align: center;
	padding: 70px 20px;
	z-index: 3;
	top: 0;
}
#container.article.style2.sustainability > section.introduction > div  h2{
	font-size: 2.2rem;
	line-height: 2;
}
#container.article.style2.sustainability > section.introduction > div  h3{
	font-size: 1.5rem;
	margin-bottom: 30px;
}
#container.article.style2.sustainability > section.introduction > div  p{
	font-size: 1.2rem;
	line-height: 2.5;
}
#container.article.style2.sustainability > section.philosophy{
	background-color: rgba(255,255,255,.9);
	width: calc(100% - 80px);
	max-width: 860px;
	padding: 50px 20px;
	text-align: center;
	margin: 0 auto 100px auto;
}
#container.article.style2.sustainability > section.philosophy h2{
	font-size: 2.6rem;
	line-height: 2;
	margin-bottom: 30px;
	font-weight: 400;
}
#container.article.style2.sustainability > section.philosophy p{
	font-size: 1.2rem;
	line-height: 2.5;
	margin-bottom: 20px;
	
}
#container.article.style2.sustainability .accordion_btn,
#container.article.style2.sustainability .close_btn{
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 70px auto auto;
	height: 64px;
	width: 268px;
	border: 1px solid #4E4E4E;
	font-size: 1.6rem;
	position: relative;
}
#container.article.style2.sustainability .accordion_btn > span:nth-child(1),
#container.article.style2.sustainability .accordion_btn > span:nth-child(2),
#container.article.style2.sustainability .close_btn > span:nth-child(1),
#container.article.style2.sustainability .close_btn > span:nth-child(2){
	display: block;
	position: absolute;
	width: 100%;
	transform-style: preserve-3d;
	transition: 0.5s;
	letter-spacing: 0.06em;
	font-family: futura-pt, sans-serif;
}

#container.article.style2.sustainability .accordion_btn > span:nth-child(1),
#container.article.style2.sustainability .close_btn > span:nth-child(1){
	font-family: futura-pt, sans-serif;
	color: #4E4E4E;
	transform: rotateX(0deg);/*はじめは回転なし*/
	transform-origin: 0 50%  -10px;/* 回転する起点 */
}
/*hoverをした後の形状*/
#container.article.style2.sustainability .accordion_btn:hover > span:nth-child(1),
#container.article.style2.sustainability .close_btn:hover > span:nth-child(1){
	transform: rotateX(90deg);/* X軸に90度回転 */
}
/* 回転後 */
#container.article.style2.sustainability .accordion_btn > span:nth-child(2),
#container.article.style2.sustainability .close_btn > span:nth-child(2){
	font-family: futura-pt, sans-serif;
	color: #4E4E4E;
	transform: rotateX(-90deg);/*はじめはX軸に-90度回転*/
	transform-origin: 0 50%  -10px;/* 回転する起点 */
	letter-spacing: 0.06em;
}
/*hoverをした後の形状*/
#container.article.style2.sustainability .accordion_btn:hover > span:nth-child(2),
#container.article.style2.sustainability .close_btn:hover > span:nth-child(2){
	transform: rotateX(0deg);/* X軸に0度回転 */
	letter-spacing: 0.06em;
}
#container.article.style2.sustainability .accordion_btn > span:nth-child(3){
	position: absolute;
	top: 26px;
	right: 30px;
	width: 8px;
	height: 8px;
	border-top: solid 1px #4E4E4E;
	border-right: solid 1px #4E4E4E;
	transform: rotate(135deg);
}
#container.article.style2.sustainability .accordion_btn.ver2 > span{
	position: absolute;
	top: 32px;
	right: 20px;
	width: 15px;
	height: 15px;
	border-top: solid 1px #4E4E4E;
	border-right: solid 1px #4E4E4E;
	transform: rotate(135deg);
	transform-origin: initial;
	transition: 0s;
}
#container.article.style2.sustainability .accordion_btn.ver2:hover > span {
	transform: rotate(135deg);
}
#container.article.style2.sustainability .accordion_btn.ver2.active > span{
	position: absolute;
	top: 37px;
	right: 20px;
	width: 15px;
	height: 15px;
	border-top: solid 1px #4E4E4E;
	border-right: solid 1px #4E4E4E;
	transform: rotate(-45deg);
}
#container.article.style2.sustainability .close_btn > span:nth-child(3),
#container.article.style2.sustainability .accordion_btn.active > span:nth-child(3){
	position: absolute;
	top: 33px;
	right: 30px;
	border: none;
	transform: initial;
}
#container.article.style2.sustainability .close_btn > span:nth-child(3) > span,
#container.article.style2.sustainability .accordion_btn.active > span:nth-child(3) > span{
	position: relative;
	width: 16px;
	height: 16px;
}
#container.article.style2.sustainability .close_btn > span:nth-child(3) > span::before,
#container.article.style2.sustainability .close_btn > span:nth-child(3) > span::after,
#container.article.style2.sustainability .accordion_btn.active > span:nth-child(3) > span::before,
#container.article.style2.sustainability .accordion_btn.active > span:nth-child(3) > span::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1px;
	height: 16px;
	background: #4E4E4E;
}
#container.article.style2.sustainability .accordion_btn.active.ver2 > span > span::before,
#container.article.style2.sustainability .accordion_btn.active.ver2 > span > span::after {
	display: none;
}
#container.article.style2.sustainability .accordion_btn.active > span > span::before,
#container.article.style2.sustainability .close_btn > span > span::before {
	transform: translate(-50%,-50%) rotate(45deg);
}
#container.article.style2.sustainability .accordion_btn.active > span > span::after,
#container.article.style2.sustainability .close_btn > span > span::after {
	transform: translate(-50%,-50%) rotate(-45deg);
}
#container.article.style2.sustainability .accordion_contents{
	padding: 70px 0 50px 0;
	text-align: center;
	display: none;
}
#container.article.style2.sustainability .accordion_contents > div{
	opacity: 0;
}
#container.article.style2.sustainability .accordion_contents h3{
	font-size: 2.2rem;
	
}
#container.article.style2.sustainability .accordion_contents p{
	font-size: 1.2rem;
}
#container.article.style2.sustainability .accordion_contents.active{
	display: block;
}
#container.article.style2.sustainability .accordion_contents.active > div{
	animation: fadeIn 2s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
}
#container.article.style2.sustainability .accordion_contents.contents_01 div > img:nth-child(4){
	max-width: 410px;
	margin: 30px auto 0 auto;
}
#container.article.style2.sustainability > section.philosophy.section_04 > div > p{
	font-size: 1.4rem;
	margin-bottom: 50px;
}
#container.article.style2.sustainability > section.philosophy.section_04 > div > div.f_box{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 20px;
}
#container.article.style2.sustainability > section.philosophy.section_04 > div > div.f_box > div{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#container.article.style2.sustainability > section.philosophy.section_04 > div > div.f_box > p{
	font-size: 1.2rem;
	line-height: 1.5;
	margin-left: 30px;
	width: 300px;
	text-align: left;
	font-weight: 400;
}
#container.article.style2.sustainability > section.philosophy.section_04 > div > div > div > img{
	width: 80px;
	margin: 0 5px;
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div{
	border-top: 1px solid #B1B1B1;
	max-width: 660px;
	margin: auto;
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box {
	display: flex;
	justify-content: space-between;
	text-align: left;
	max-width: 560px;
	margin:  60px auto 0 auto;
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box.last {
	padding-bottom: 60px;
	border-bottom: 1px solid #B1B1B1;
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box > div:last-child{
	display: flex;
	align-items: flex-end;
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box > div:last-child img{
	width: 54px;
	margin-left: 5px
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box h3 {
	font-size: 2.2rem;
	text-align: left;
	line-height: 1.5;
	
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box h4 {
	font-size: 1.1rem;
	margin-bottom: 20px;
	font-weight: 300;
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box p{
	line-height: 2;
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box p.title {
	font-size: 1.5rem;
	line-height: 2.5;
	margin-bottom: 0;
}
#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box ul li {
	font-size: 1.4rem;
	line-height: 2.5;
}
#container.article.style2.sustainability > section.philosophy.section_05 > div > h2,
#container.article.style2.sustainability > section.philosophy.section_06 > div > h2{
	font-size: 2.6rem;
	margin-bottom: 30px;
}
#container.article.style2.sustainability > section.philosophy.section_05 > div > h3,
#container.article.style2.sustainability > section.philosophy.section_06 > div > h3{
	font-size: 1.8rem;
	color: #48AA5B;
	
}
#container.article.style2.sustainability > section.philosophy.section_05 > div > img{
	max-width: 285px;
	width: 100%;
	margin: 30px auto 60px auto;
}
#container.article.style2.sustainability > section.philosophy.section_05 > div > h4 {
	font-size: 1.8rem;
	
}
#container.article.style2.sustainability > section.philosophy.section_05 > div > p {
	max-width: 520px;
	width: 100%;
	text-align: left;
	margin: 20px auto 50px auto;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div > .flex_box {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	max-width: 660px;
	margin: 0 auto;
	padding: 60px 0;
	border-bottom: 1px solid #B1B1B1;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div > .flex_box > div {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	color: #fff;
	margin: 0 5px;
	width: 200px;
	height: 200px;
	background: linear-gradient(#A1CBED,#9CCDD3,#96D0B6);
	border-radius: 50%;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div > .flex_box > div h3{
	font-size: 1.8rem;
	line-height: 2;
	margin: 0 0 10px 0;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div > .flex_box > div p{
	font-size: 1.2rem;
	line-height: 2;
	margin: 0;
}
#container.article.style2.sustainability > section.philosophy .accordion_contents > div .sp_color_box {
	background: linear-gradient(#A1CBED, #9CCDD3, #96D0B6);
	border-radius: 8px;
	padding: 2px;
	width: calc(100% - 4px);
	max-width: 660px;
	margin: 60px auto 0 auto;
}
#container.article.style2.sustainability > section.philosophy .accordion_contents > div .sp_color_box .text_box {
	background: #fff;
	border-radius: 8px;
	padding: 60px 20px 40px 20px;
	max-width: 618px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#container.article.style2.sustainability > section.philosophy .accordion_contents > div .sp_color_box .text_box > div{
	max-width: 520px;
}
#container.article.style2.sustainability > section.philosophy .accordion_contents > div .text_box{
	max-width: 520px;
	margin: 0 auto;
	padding: 60px 0 0;
	text-align: left;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .text_box .caution {
	font-size: 1rem;
	text-indent: -1em;
	padding-left: 1em;
}
#container.article.style2.sustainability > section.philosophy .accordion_contents > div .text_box h3 {
	font-size: 1.8rem;
    line-height: 2;
	margin-bottom: 20px;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .text_box h3 {
	text-align: left;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .color_box{
	margin: 60px 0 0;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .color_box h3 {
	font-size: 1.8rem;
	line-height: 2;
	margin-bottom: 20px;
	color: #48AA5B;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .color_box  .flex_box{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	max-width: 660px;
	margin: 0 auto;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .color_box .flex_box div {
	width: calc(25% - 15px);
	color: #fff;
	text-align: center;
	background: #7FC38C;
	padding: 5px 0;
	font-size: 1.2rem;
}
#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .text_box h3.green {
	margin-bottom: 10px;
	color: #48AA5B;
}
#container.article.style2.sustainability > section.philosophy.section_06 > div > img {
	width: 100px;
	margin: 40px auto auto;
}
#container.article.style2.sustainability > section.philosophy.section_06 .accordion_contents.contents_04 > div ul li,
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div ul li{
	font-size: 1rem;
	line-height: 2;
	margin-bottom: 10px;
	text-indent: -1.5em;
	padding-left: 1.5em;
	
}
#container.article.style2.sustainability > section.philosophy.section_06 .accordion_contents.contents_04 > div .small{
	font-size: 1.1rem;
}
#container.article.style2.sustainability > section.philosophy.section_06 .accordion_contents.contents_04 > div p.small{
	margin: 0;
}

#container.article.style2.sustainability > section.philosophy.section_06 .accordion_contents.contents_04 > div ul li.nowrap {
	white-space: nowrap;
}
#container.article.style2.sustainability > section.philosophy.section_06 .accordion_contents.contents_04 > div .flex_box{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	max-width: 440px;
	margin: 60px auto 0 auto;
}
#container.article.style2.sustainability > section.philosophy.section_06 .accordion_contents.contents_04 > div .flex_box > img {
	width: 80px;
}
#container.article.style2.sustainability > section.philosophy.section_07 h2{
	font-size: 2.6rem;
}
#container.article.style2.sustainability > section.philosophy.section_07 h3{
	font-size: 1.8rem;
}
#container.article.style2.sustainability > section.philosophy.section_07 img{
	width: 140px;
	margin: 50px auto 20px auto;
}

#container.article.style2.sustainability > section.philosophy.section_07 p:last-child{
	font-size: 1rem;
}
#container.article.style2.sustainability .accordion_btn.ver2 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	height: initial;
	width:calc(100% - 20px);
	border: none;
	font-size: 2.2rem;
	padding: 20px 10px;
	line-height: 2;
	font-weight: 400;
	position: relative;
	border-top: 1px solid #B1B1B1;
	transition: .5s;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_btn.ver2:hover {
	opacity: .5;
}
#container.article.style2.sustainability > section.philosophy.section_08 > div > div:nth-child(2) > .accordion_btn.ver2{
	border: none
}
#container.article.style2.sustainability > section.philosophy.section_08 > div > div:last-child > .accordion_btn.ver2 {
	border-bottom: 1px solid #B1B1B1;
}
#container.article.style2.sustainability > section.philosophy.section_08 > div > div:last-child > .accordion_btn.ver2.active {
	border-bottom: none;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion{
	max-width: 660px;
	margin: 0 auto;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents {
	padding: 50px 0;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:first-child{
	padding: 0;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:first-child > h3{
	color: #48AA5B;
	font-size: 1.8rem;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:first-child > .flex_box{
	display: flex;
	align-items: center;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:first-child > .flex_box > img{
	width: 76px;
	margin-right: 20px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:first-child > .flex_box > p{
	flex: 1;
	font-size: 1rem;
	margin: 0;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:nth-child(3) {
	padding: 0 ;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:nth-child(3) > h4 {
	text-align: center;
	font-size: 1.4rem;
	
	margin-bottom: 10px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:nth-child(3) > p {
	font-size: 1.1rem;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > .flex_box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 60px auto auto;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > .flex_box > div {
	width: 282px;
	border: 1px solid #48AA00;
	padding: 30px 20px;
	border-radius: 5px;
	background: #fff;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > .flex_box > div h3 {
	font-size: 1.4rem;
	color: #48AA5B;
	margin-bottom: 10px;
	text-align: left;
	
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > .flex_box > div h4 {
	font-size: 1.1rem;
	
	color: #48AA5B;
	margin-bottom: 5px;
	text-align: left;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > .flex_box > div p {
	font-size: 1rem;
	margin-bottom: 0;
	line-height: 2;
	text-align: left;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > .flex_box > div p.caution {
	text-indent: -1em;
	padding-left: 1em;
	text-align: left;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > .flex_box > img {
	width: calc(100% - 372px)
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 > div > h3 {
	font-size: 1.8rem;
	text-align: center;
	color: #48AA5B;
	margin-bottom: 30px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 > div > div:nth-child(2) {
	padding: 0;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 > div .text_box p {
	margin: 0;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 > div > img{
	width: 105px;
	margin: 20px auto 0 auto;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .policy_top{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 50px auto 0 auto;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .policy_top h3{
	font-size: 1.3rem;
	color: #48AA5B;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .policy_top p{
	font-size: 1rem;
	font-weight: 200;
	margin: 0;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .table {
	border-top: 1px solid #A0A0A0;
	border-bottom: 1px solid #A0A0A0;
	text-align: left;
	line-height: 2;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .green_belt {
	background-color: #C3DDBD;
	color: #000000;
	font-size: 1.2rem;
	padding: 0 5px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .white_belt {
	border-bottom: 1px solid #A0A0A0;
	font-size: 1.2rem;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .table_flex {
	display: flex;
	gap: 10px;
	font-size: 1.1rem;
	padding: 0 10px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .table_flex_l {
	width: 30%;
	padding: 20px 0;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .table_flex_r {
	padding: 20px 10px;
	border-left: 1px solid #A0A0A0;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .table_block_title {
	margin-bottom: 5px;
	padding-left: 1rem;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .policy_ul1 li {
	text-indent: -1rem;
	padding: 3px 1rem;
	line-height: 1.5;
	margin-bottom: 5px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box{
	display: flex;
	align-items: flex-start;
	text-align: left;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:first-child{
	width: calc(33% - 60px);
	padding: 5px 60px 5px 0;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child{
	width: calc(67% - 60px);
	padding: 5px 0 5px 60px;
	display: flex;
	flex-wrap: wrap;
	border-left: 2px dotted #CCC;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box  h4{
	font-size: 1rem;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box  h3{
	font-size: 1.8rem;
	margin: 5px 0;
	text-align: left;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box  img{
	width: 63px;
	margin: 10px auto auto;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child > h4,
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child > p{
	width: 100%;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child > div{
	width: calc(50% - 30px);
	padding-right: 30px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child > div:nth-child(3){
	padding: 0 0 0 30px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child > p{
	margin: 30px 0 0 0;
	line-height: 2;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_08 h3,
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 h3,
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_10 h3,
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_11 h3{
	font-size: 1.8rem;
	color: #48AA5B;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_08 img{
	max-width: 443px;
	width: 100%;
	margin: 30px auto auto;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 h4{
	font-size: 1.8rem;
	margin-top: 20px;
	font-weight: 400;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 img{
	max-width: 300px;
	width: 100%;
	margin: 30px auto auto;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_10 h4{
	font-size: 1.8rem;
	text-align: center;
	line-height: 2;
	margin-bottom: 20px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_10 .flex_box {
	display: flex;
	align-items: flex-start;
	font-size: 1rem;
	max-width: 520px;
	margin: 50px auto 0 auto;
	text-align: left;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_10 .flex_box img {
	width: 63px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_10 .flex_box > div:last-child {
	padding-left: 30px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_10 .flex_box > div:last-child p{
	text-align: center;
	font-size: 1rem;
	line-height: 1.5;
	margin-top: 5px;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_11 img{
	width: 100%;
	max-width: 143px;
	margin: 30px auto 40px auto;
}
#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_11 p {
	font-size: 1.2rem;
	line-height: 2;
	text-align: center;
}

@media screen and (max-width: 1339px) {
	#container #search > a,
	#container #pickup > div {
		width: calc(100% - 40px);
		max-width: 1200px;
	}
	#container #pickup > div > div > div{
		width: calc(100%/4 - 15px);
	}
}
@media screen and (max-width: 1279px) {
	#container.article.style2 > section.pattern {
		padding: 10px 20px;
	}
	#container.article.style2 > section.pattern > div {
		width: calc(100% - 80px);
	}
}
@media screen and (max-width: 1114px) {
	#container #pickup > div > div > div {
		width: calc(100% / 2 - 15px);
		margin: 0  0 20px;
	}
	#container #pickup > div > div {
		margin: 50px auto;
		max-width: 700px;
	}
	#container #search,
	#container #search > a > div > div {
		height: 440px;
	}
}
@media screen and (max-width: 999px) {
	#container.article.style2 > section.pattern > div > div > div:nth-child(3) > div > div {
		width: calc(20% - 8px);
		min-width: 200px;
		margin-bottom: 20px;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(3) > div:after{
		content: '';
		display: block;
		width: calc(20% - 8px);
		min-width: 200px;
	}
}
@media screen and (max-width: 849px) {
	#container #bland > .stick_img_box > img {
		margin-right: 20px;
	}
	#container #bland > .stick_img_box > div {
		width: calc(100% - 41.264367816% - 20px);
	}
}

@media screen and (max-width: 767px) {
	.pc{
		display: none !important;
	}
	.sp{
		display: block !important;
	}

	#container div h2 {
		font-size: 2.6rem;
	}
	#container #mv > div {
		width: 100%;
	}
	#container #about > div:last-child > div {
		padding: 65px 0;
		width: calc(100% - 40px)
	}

	#container #about > div:last-child > div > p:first-child {
		font-size: 1.4rem;
		margin-bottom: 10px;
	}
	#container.bland_story #bland {
		padding: 110px 20px 0 20px;
		/* margin-bottom: 120px; */
	}
	#container #bland h2 {
		font-size: 3.2rem;
	}
	#container #bland h3 {
		font-size: 2rem;
		margin-bottom: 70px;
	}
	#container #bland > img {
		margin: 60px auto auto;
	}
	#container.bland_story #bland p {
		margin-bottom: 60px;
	}
	#container #bland > .stick_img_box {
		padding: 0;
		height: initial;
		min-height: initial;
		display: flex;
		flex-direction: column;
	}
	#container #bland > .stick_img_box .box {
		margin: 50px auto 0;
	}
	#container #bland > .stick_img_box > img {
		width: 100%;
		position: static;
		margin: 0 0 0;
	}
	#container.bland_story .menu_list {
        padding: 20px 20px 40px 20px;
    }
	#container.bland_story #bland .photo_box {
		display: flex	;
		flex-direction: column;
		gap: 50px;
	}
	#container.bland_story #pickup > div > div {
		gap: 15px;
	}
	#container #bland > .stick_img_box > div {
		width: 100%;
		margin:  0 auto;
		display: block;
	}
	#container #bland > .stick_img_box > div > div h4 {
		font-size: 1.8rem;
		margin-top: 50px;
		margin-bottom: 30px;
	}
	#container #bland > .stick_img_box > div > div p {
		font-size: 1.4rem;
	}
	#container #bland > .stick_img_box #scroll_text {
		padding: 0 0 0 20px;
	}
	#container #features {
		padding: 100px 20px 50px 20px;
	}
	#container #features > div h3 {
		font-size: 1.2rem;
	}
	#container #features > div > div {
		flex-direction: column;
		margin: 40px auto 0 auto;
	}
	#container #features > div > div > .text_box {
		width: 100%;
		order: 2;
		margin-top: 40px
	}
	#container #features > div > div > .photo_box.flex,
	#container #features > div > div > .photo_box{
		width: 100%;
	}
	#container #features > div > div > .photo_box.flex > img:first-child {
		width: 35.820895522%;
	}
	#container #features > div > div > .photo_box.flex > img:last-child {
		width: 62.686567164%;
	}
	#container #features > div > div > .text_box h4 {
		font-size: 1.6rem;
	}
	#container #features > div > div > .text_box p:nth-child(2) {
		font-size: 1.8rem;
		margin: 15px 0 20px 0;
	}
	#container #features > div > div > .text_box p span {
		white-space: initial;
	}
	#container #features > div > div > .text_box .box {
		margin: 30px auto 0 auto;
	}
	#container .box {
		max-width: 335px;
		height: 62px;
		line-height: 62px;
	}

	#container div h3,
	#container #search > a > div > div:nth-child(2) > div p {
		font-size: 1.2rem;
		line-height: 2;
		font-weight: 400;
	}

	#container #search > a > div > div:nth-child(2) > div > img {
		top: -25px;
		left: 45px;
		width: 70px;
		transform: rotate(-1deg);
	}

	#container #search,
	#container #search > a {
		width: 100%;
		height: 550px;
	}

	#container #search > a > div > div {
		height: initial;
	}

	#container #search > a > div {
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	#container #search > a > div > div:nth-child(1) {
		display: none;
	}

	#container #search > a > div > div:nth-child(2) {
		width: 100%;
		margin-bottom: 50px;
	}

	#container #search > a > div > div:nth-child(3) > div > div {
		height: 100%;
		width: calc(50% - 10px);
		margin: 0 5px;
	}

	#container #search > a > div > div:nth-child(3) {
		flex-direction: column;
		height: 180px;
		width: 100%;
	}

	#container #search > a > div > div:nth-child(3) > div {
		width: 360%;
		height: 100%;
		display: flex !important;
	}

	#container #search > a > div > div:nth-child(3) > div:first-child {
		margin-bottom: 10px;
	}
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(1),
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(9){
		background: url("../img/top/slide1.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(2),
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(10){
		background: url("../img/top/slide2.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(3),
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(11){
		background: url("../img/top/slide3.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(4),
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(12){
		background: url("../img/top/slide4.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(5),
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(13){
		background: url("../img/top/slide5.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(6),
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(14){
		background: url("../img/top/slide6.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(7),
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(15){
		background: url("../img/top/slide7.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(8),
	#container #search > a > div > div:nth-child(3) > div > div:nth-child(16){
		background: url("../img/top/slide8.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(1),
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(9){
		background: url("../img/top/slide9.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(2),
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(10){
		background: url("../img/top/slide10.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(3),
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(11){
		background: url("../img/top/slide11.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(4),
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(12){
		background: url("../img/top/slide12.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(5),
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(13){
		background: url("../img/top/slide13.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(6),
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(14){
		background: url("../img/top/slide14.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(7),
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(15){
		background: url("../img/top/slide15.jpg") no-repeat center center;
		background-size: cover;
	}
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(8),
	#container #search > a > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(16){
		background: url("../img/top/slide16.jpg") no-repeat center center;
		background-size: cover;
	}

	@keyframes slide {
		0% {
			transform: translateX(-0%);
		}
		100% {
			transform: translateX(-50%);
		}
	}
	@keyframes slide2 {
		0% {
			transform: translateX(-50%);
		}
		100% {
			transform: translateX(-0%);
		}
	}
	#container #pickup {
		padding: 70px 0 20px 0;
	}

	#container #pickup > div > div {
		margin: 40px auto 0 auto;
	}

	#container #pickup > div > div > div {
		width: calc(100% / 2 - 10px);
		margin-bottom: 30px;
	}
	#container #pickup > div > div > div > a {
		margin: 0 0 15px 0;
	}


	#container #pickup > div > div > div > a > p {
		top: 19px;
		left: 12px;
		font-size: 1.5rem;
	}
	#container #pickup > div > div > div.articles_01 > a > p {
		top: 9px;
	}
	#container #pickup > div > div > div.articles_02 > a > p {
		top: 10px;
	}
	#container #pickup > div > div > div > a > p .middle {
		font-size: 2rem;
	}
	#container #pickup > div > div > div > a > p .big {
		font-size: 2rem;
	}
	#container #pickup > div > div > div > a > p .big2 {
		font-size: 2.4rem;
	}
	#container #pickup > div > div > div > a > p .big3 {
		font-size: 2.5rem;
	}
	#container #pickup > div > div > div > a > p .small {
		font-size: 1.1rem;
	}
	#container #pickup > div > div > div > h4 {
		font-size: 1.4rem;
	}
	#container #pickup > div > div > div:nth-child(4) > a + h4 {
		line-height: 1.5;
	}
	#container #pickup > div > div > div:nth-child(4) > p {
		line-height: 28px;
	}
	#container #pickup > div > div > div > p {
		text-align: center;
		font-size: 1rem;
		font-weight: 400;
	}
	#container #catalog {
		width: calc(100% - 40px);
		padding: 80px 20px;
	}
	#container #catalog > div > img {
		width: 196px;
		margin: 30px 0 0;
	}
	#container #catalog > div.popup_btn_movie{
		margin: 100px auto 0 auto;
	}
	#container #catalog > div.popup_btn_movie > div {
		max-width: 225px;
	}
	#container #catalog > div.popup_btn_movie  p{
		font-size: 1.4rem;
	}
	#container #catalog > div.popup_btn_movie > div > img.icon {
		position: absolute;
		top: -30px;
		left: -40px;
		width: 88px;
		transform: rotate(-5deg);
	}
	.close-btn {
		top: -40px;
		width: 30px;
		height: 30px;
	}
	.close-btn .batsu{
		width: 30px;/*枠の大きさ*/
		height: 30px;/*枠の大きさ*/
	}
	#container #other {
		width: calc(100% - 40px);
		padding: 70px 20px;
	}
	#container #other > div > h2 {
		font-size: 2.6rem;
	}
	#container #other > div > div.sns h3 {
		font-size: 2.6rem;
		font-family: futura-pt, sans-serif;
		font-weight: 400;
	}
	#container #other > div > div > h3 {
		font-size: 2rem;
	}
	#container #other > div > div > p {
		font-size: 1.4rem;
	}
	#container #other > div > div {
		margin-top: 50px;
		width: 100%;
	}
	#container #other > div > div.sns {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#container #other > div > div.sns > div {
		width: 220px;
		margin: 10px 0 auto;
	}
	/* SNS */
	#container #other_sns {
		width: calc(100% - 40px);
		padding: 70px 20px;
	}
	#container #other_sns > div > h2 {
		font-size: 2.6rem;
	}
	#container #other_sns > div > div.sns h3 {
		font-size: 2.6rem;
		font-family: futura-pt, sans-serif;
		font-weight: 400;
	}
	#container #other_sns > div > div > h3 {
		font-size: 2rem;
	}
	#container #other_sns > div > div > p {
		font-size: 1.4rem;
	}
	#container #other_sns > div > div {
		margin-top: 50px;
		width: 100%;
	}
	#container #other_sns> div > div.sns {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#container #other_sns > div > div.sns > div {
		width: 220px;
		margin: 10px 0 auto;
	}
	
	#container.image_search #search_result .search_result_inner .search_result_item{
		width: calc(50% - 15px);
		margin: 15px 0 0;
	}
	#container.article.bland_story {
		padding: 0;
		width: 100%;
	}
	#container.bland_story > section {
		/* margin: 60px auto 0; */
		margin: 0 auto;
	}
	#container.article  div h2{
		font-size: 2.6rem;
	}
	#container.article div h3{
		font-size: 1.2rem;
	}
	#container.bland_story #introduction h3 {
		font-size: 3.4rem;
	}
	#container.bland_story #introduction p {
		font-size: 2.2rem;
	}
	#container.bland_story #bland_images {
		width: calc(100% - 40px)
	}
	#container.bland_story #bland_images > div {
		width: 100%;
		margin: 0 0 40px 0;
	}
	#container.bland_story #sentence h3 {
		font-size: 1.4rem;
	}
	#container.bland_story #sentence p {
		font-size: 1.2rem;
	}
	#container.offshade{
		width: 100%;
		background-image: none;
		background-repeat: no-repeat;
	}
	#container.offshade:before {
		background-image: url(../img/offshade/mv_sp.jpg);
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		width: 100%;
		height: 100vh;
		padding-top: 60px;
		background-size: cover;
	}
	#container.article.style2.functionality.shanetsu.offshade:before {
		background-image: url(../img/shanetsu/bg_sp.webp);
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		width: 100%;
		height: 100vh;
		padding-top: 60px;
		background-size: cover;
	}
	#container.article.style2 > div {
		padding: 20px 20px 40px 20px;
	}
	#container.article.style2 > .menu_list {
		padding: 20px 20px 40px 20px;
	}
	#container.article.style2 > section.top_area h3 {
		font-size: 1.8rem;
	}
	#container.article.style2 > section.top_area h2 {
		font-size: 2.3rem;
	}
	#container.article.style2 > section.top_area p {
		font-size: 1.2rem;
		margin: 30px 0 0;
	}
	#container.article.style2 > section.menu_area {
		padding: 50px 40px;
		width: calc(100% - 120px);
	}
	#container.article.style2 > section.menu_area > div {
		display: block;
	}
	#container.article.style2 > section.menu_area#offshade_menu > div {
		display: flex;
	}
	#container.article.style2 > section.menu_area > div > div {
		width: 100%;
		margin-bottom: 60px;
	}
	#container.article.style2 > section.menu_area#offshade_menu > div > div {
		width: calc(100% / 3);
		margin: 0;
	}
	#container.article.style2 > section.menu_area > div > div > h4 {
		font-size: 1.6rem;
	}
	#container.article.style2 > section.menu_area > div > div > a {
		padding: 25px;
	}
	#container.article.style2 > section.pattern > div > div > div:first-child > img:first-child {
		margin: 50px auto 0 auto;
	}
	#container.article.style2 > section.pattern > div > div > div:first-child > img:nth-child(2) {
		width: 58px;
		margin: 30px auto;
	}
	#container.article.style2 > section.menu_area > div > div > a::before {
		width: 25px;
		height: 25px;
		left: 13px;
		top: 0px;
	}
	#container.article.style2 > section.pattern > div > div > div:first-child > h3 {
		font-size: 2rem;
	}
	#container.article.style2 > section.pattern > div > div > div:first-child > h4 {
		font-size: 1.3rem;
	}
	#container.article.style2 > section.pattern > div > div > div:first-child > p {
		text-align: left;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div.box_menu {
		width: 300px;
		height: 60px;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > p {
		font-size: 1.1rem;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > p span {
		font-size: 1.6rem;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div.box_menu > div span {
		font-size: 1.1rem;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div.box_menu > div {
		font-size: 2.1rem;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div:last-child {
		font-size: 1.1rem;
		width: 300px;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div:last-child > img {
		width: 63px;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(3) > div {
		justify-content: center;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(3) > div > div {
		width: calc(20% - 8px);
		min-width: 220px;
		margin: 0 10px 20px 10px;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(3) .caution {
		text-align: left;
		margin: 30px 0 80px 0;
	}
	#container.article.style2 .box {
		margin: 30px auto 0 auto;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(4) {
		margin: 0 0 70px 0;
	}
	#container.article.style2 > section.other h3 {
		font-size: 2.6rem;
	}
	#container.article.style2 > section.other > div > div {
		width: calc(50% - 10px);
	}
	#container.article.style2 > section.other > div > div > a > p .big {
		font-size: 3rem;
	}
	#container.article.style2 > section.other h4 {
		font-size: 1.2rem;
	}
	#container.article.style2 > section.other > div > div > a > p {
		top: 10px;
		left: 15px;
		font-size: 1.5rem;
	}
	#container.article.style2 > section.other > div > div > a > p .big2 {
		font-size: 2.8rem;
	}
	#container.article.style2 > section.other > div > div > p {
		font-size: 1.4rem;
	}
	/* ■SUSTAINABILITY
–––––––––––––––––––––––––––––––––––––––––––––––––– */
	#container.sustainability{
		width: 100%;
		background-image: none;
		background-repeat: no-repeat;
	}
	#container.sustainability:before {
		background-image: url(../img/sustainability/mv_sp.jpg);
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		width: 100%;
		height: 100vh;
		padding-top: 60px;
		background-size: cover;
	}
	#container.article.style2.sustainability > section.top_area h1 {
		font-size: 2.6rem;
	}
	#container.article.style2.sustainability > section.introduction > div h2 {
		font-size: 2rem;
	}
	#container.article.style2.sustainability > section.introduction > div h3 {
		font-size: 1.4rem;
		margin-bottom: 15px;
	}
	#container.article.style2.sustainability > section.introduction > div p {
		text-align: left;
	}
	#container.article.style2.sustainability > section.introduction {
		align-items: center;
		margin: 100px auto 150px auto;
	}
	#container.article.style2.sustainability > section.introduction > picture img {
		top: -10%;
		left: 50%;
		transform: translate(-50%, -10%);
		-webkit-transform: translate(-50%, -10%);
		-ms-transform: translate(-50%, -10%);
	}
	#container.article.style2.sustainability > section.introduction > div:first-child {
		height: 100%;
		position: absolute;
		width: calc(100% - 40px);
		padding: 80px 20px;
	}
	#container.article.style2.sustainability > section.introduction > div:nth-child(3) {
		position: static;
		top: initial;
		width: calc(100% - 80px);
		padding: 40px;
	}
	#container.article.style2.sustainability > section.philosophy h2,
	#container.article.style2.sustainability > section.philosophy.section_05 > div > h2,
	#container.article.style2.sustainability > section.philosophy.section_06 > div > h2,
	#container.article.style2.sustainability > section.philosophy.section_07 > div > h2{
		font-size: 2rem;
		margin-bottom: 20px;
	}
	#container.article.style2.sustainability > section.philosophy p {
		text-align: left;
		margin-bottom: 0;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 > div > p {
		font-size: 1.3rem;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 > div > div.f_box {
		flex-direction: column;
		margin-top: 20px;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 > div > div.f_box > p {
		line-height: 2;
		margin: 20px 0 30px 0;
		width: initial;
	}
	#container.article.style2.sustainability .accordion_btn, #container.article.style2.sustainability .close_btn {
		margin: 40px auto auto;
	}
	#container.article.style2.sustainability > section.philosophy.section_05 > div > h3,
	#container.article.style2.sustainability > section.philosophy.section_06 > div > h3,
	#container.article.style2.sustainability > section.philosophy.section_05 > div > h4 {
		font-size: 1.6rem;
	}
	#container.article.style2.sustainability > section.philosophy.section_07 h3{
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
	#container.article.style2.sustainability > section.philosophy.section_07 p:last-child {
		text-align: center;
	}
	#container.article.style2.sustainability .accordion_btn.ver2 {
		width: calc(100% - 20px);
		font-size: 1.6rem;
		padding: 20px 10px;
		text-align: left;
	}
	#container.article.style2.sustainability .accordion_btn.ver2 > span {
		top: 28px;
		right: 20px;
		width: 8px;
		height: 8px;
	}
	#container.article.style2.sustainability .accordion_btn.ver2.active > span {
		top: 30px;
		right: 20px;
		width: 8px;
		height: 8px;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents {
		padding: 30px 0 50px 0;
	}
	#container.article.style2.sustainability .accordion_contents h3 {
		font-size: 1.6rem;
		margin-bottom: 30px;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box {
		margin: 40px auto 0 auto;
		flex-direction: column-reverse;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box > div:last-child {
		display: none;
	}
		#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box h3 {
		font-size: 2rem;
		margin-bottom: 5px;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box > div div.sp img {
		width: 54px;
		margin-left: 5px;
		margin-bottom: 20px;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box > div  div.sp div {
		display: flex;
		align-items: flex-end;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box p.title {
		margin-bottom: 10px;
	}
	#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div > .flex_box {
		padding: 60px 0;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div > .flex_box > div p {
		text-align: center;
	}
	#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div > .flex_box > div {
		margin-bottom: 20px;
	}
	#container.article.style2.sustainability > section.philosophy .accordion_contents > div .sp_color_box .text_box {
		padding: 20px;
	}
	#container.article.style2.sustainability > section.philosophy .accordion_contents > div .sp_color_box .text_box h3{
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
	#container.article.style2.sustainability > section.philosophy .accordion_contents > div .sp_color_box .text_box p{
		margin-bottom: 0;
	}
	#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .color_box .flex_box{
		flex-wrap: wrap;
	}
	#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .color_box .flex_box div {
		width: calc(50% - 10px);
		margin-bottom: 20px;
		font-size: 1.4rem;
	}
	#container.article.style2.sustainability > section.philosophy.section_05 .accordion_contents.contents_03 > div .text_box.ad h3.green,
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_08 h3,
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 h4,
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_11 h3{
		font-size: 1.6rem;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_10 h3 {
		font-size: 1.6rem;
		margin: 0;
	}

	#container.article.style2.sustainability > section.philosophy .accordion_contents > div .text_box h3 {
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
	#container.article.style2.sustainability > section.philosophy.section_06 .accordion_contents.contents_04 > div .flex_box {
		margin: 30px auto 0 auto;
		max-width: 295px
	}
	#container.article.style2.sustainability > section.philosophy.section_06 .accordion_contents.contents_04 > div .flex_box > img {
		width: 54px;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:first-child > .flex_box {
		flex-direction: column;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:first-child > .flex_box > img {
		width: 76px;
		margin:  0 0 20px 0;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:nth-child(3) > h4 {
		font-size: 1.3rem;
		margin:20px 0 10px 0;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > div:nth-child(3) > p {
		font-size: 1rem;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_05 > div > .flex_box > div {
		width: 100%;
		max-width: 300px;
		padding: 20px;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 > div > h3,
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 h3{
		font-size: 1.6rem;
		margin-bottom: 20px;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .policy_top {
		align-items: flex-end;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .table_flex_l {
		min-width: 50px;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .policy_ul1 li {
		padding: 3px 0 3px 1rem;
		margin-bottom: 5px;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .policy_top h3 {
		text-align: left;
		margin-bottom: 5px;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box {
		display: block;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:first-child {
		width: 100%;
		padding: 0 0 30px 0;
		display: flex;
		flex-wrap: wrap;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child {
		width: 100%;
		padding: 30px 0 0 0;
		display: block;
		border-top: 2px dotted #CCC;
		border-left: none;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child > div {
		width: 100%;
		padding-right: 0;
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box img {
		width: 63px;
		margin: 0 auto 0 0;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child > div:nth-child(3) {
		padding: 0;
		margin-top: 20px
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box h3 {
		font-size: 1.6rem;
		width: 100%;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box p {
		width: calc(100% - 82px);
		order: 4;
		line-height: 2;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_07 .flex_box > div:last-child > p {
		font-size: 1.3rem;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 > div{
		display: flex;
		flex-direction: column;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 h4:nth-child(4),
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 p:nth-child(5),
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 div:last-child{
		order: 5;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_09 img {
		max-width: 183px;
		margin: 20px auto;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_10 .flex_box {
		display: block;;
		margin: 30px auto 0 auto;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_10 .flex_box > div:last-child {
		padding-left: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		margin-top: 30px;
	}
}
@media screen and (max-width: 420px) {
	/* ボタンが大きくなるのでオフ */
	/* #container .box {
		max-width: 100%;
	} */
	#container.article.style2 > section.menu_area#offshade_menu > div > div > a {
		padding: 0 20px 0 0;
		font-size: 1.2rem;
	}
	#container.article.style2 > section.menu_area#offshade_menu > div > div > a::before {
		top: 6px;
	}
}
@media screen and (max-width: 320px) {
	.ssp{
		display: block !important;
	}
	#container #about > div:last-child > div > h4 {
		font-size: 3.2rem;
	}
	#container #pickup > div > div > div > a > p .middle {
		font-size: 1.8rem;
	}
	#container #pickup > div > div > div > a > p {
		top: 5px;
		left: 10px;
		font-size: 1.3rem;
	}
	#container #pickup > div > div > div > h4,
	#container #pickup > div > div > div > p {
		text-align: left;
	}
	#container #catalog > div.popup_btn_movie > div {
		max-width: 200px;
	}
	#container #other > div > div > p {
		font-size: 1.2rem;
	}
	#container #other_sns > div > div > p {
		font-size: 1.2rem;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div.box_menu {
		width: 230px;
		height: 46px;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div.box_menu > div span {
		font-size: 1rem;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div.box_menu > div {
		font-size: 1.8rem;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div:last-child {
		font-size: 1rem;
		width: 230px;
	}
	#container.article.style2 > section.pattern > div > div > div:nth-child(2) > div:last-child > img {
		width: 58px;
	}
	#container.article.style2 > section.menu_area#offshade_menu > div > div > a {
		padding: 0 12px 0 0;
		font-size: 1rem;
	}
	#container.article.style2 > section.menu_area#offshade_menu > div > div > a::before {
		width: 5px;
		height: 5px;
		top: 8px;
	}
	#container.article.style2.sustainability > section.introduction > div:nth-child(3) {
		width: calc(100% - 40px);
		padding: 30px 20px;
	}
	#container.article.style2.sustainability > section.introduction > picture img {
		top: -5%;
		left: 50%;
		transform: translate(-50%, -5%);
		-webkit-transform: translate(-50%, -5%);
		-ms-transform: translate(-50%, -5%);
	}
	#container.article.style2.sustainability > section.introduction > div:first-child {
		padding: 60px 20px;
	}
	#container.article.style2.sustainability > section.introduction > div h2 {
		font-size: 1.8rem;
	}
	#container.article.style2.sustainability .accordion_btn, #container.article.style2.sustainability .close_btn {
		width: 230px;
	}
	#container.article.style2.sustainability > section.philosophy h2 {
		font-size: 1.6rem;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box > div div.sp img,
	#container.article.style2.sustainability > section.philosophy.section_06 .accordion_contents.contents_04 > div .flex_box > img{
		width: 44px;
	}
	#container.article.style2.sustainability > section.philosophy.section_04 .accordion_contents.contents_02 > div .flex_box ul li {
		font-size: 1.2rem;
		line-height: 2;
	}
	#container.article.style2.sustainability .accordion_btn.ver2 {
		font-size: 1.4rem;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_06 .policy_top h3 {
		font-size: 1.2rem;
	}
	#container.article.style2.sustainability > section.philosophy.section_08 .accordion_contents.contents_11 p {
		font-size: 1rem;
	}
}
