@charset "utf-8";
.movie2 iframe {
	width: 450px;
	height: 254px;
	margin-bottom: 40px;
}

#main-contents.partition{
	padding-top: 0;
}

#main-contents.partition .fix-contents{
	width: 1100px;
}

#main-contents.partition .inner{
	width: 1100px;
	margin: 0 auto;
}

#main-contents a:link,
#main-contents a:visited{
	text-decoration: none;
}

#page #main-contents.partition{
	letter-spacing: 0;
	color: #1d1c22;
}

/*固定 お見積もりボタン*/
#main-contents .fix_cv{
	position: fixed;
	right: 0;
	bottom: 100px;
	width: 209px;
	z-index: 3;
	text-align: right;
	transition: 0.2s;
}

#main-contents .fix_cv.hide{
	transform: translateX(calc(100% + 19px));
}

#main-contents .fix_cv a{
	position: relative;
	display: block;
	padding: 23px 11px 23px 0;
	border-radius: 10px 0 0 10px;
	color: #fff;
	background: linear-gradient(90deg, #f24a00 0,#f27200 50%, #f24a00 100%);
}

#main-contents .fix_cv a::before{
	content: "";
	position: absolute;
	top:6px;
	left:-19px;
	width: 76px;
	height: 76px;
	background: url(../img/partition02/ico_cv_btn.png) 0 0 no-repeat;
	background-size: contain;
}

#main-contents .fix_cv a:hover{
	color: #fff;
}

#main-contents .fix_cv p{
	display: inline-block;
	padding: 0 32px 0 0;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	background: url(../img/partition02/ico_fixcv_mail.png) 100% 40% no-repeat;
	text-align: left;
}

/* 固定目次メニュー */
#main-contents .fix_alink{
	position: fixed;
	z-index: 3;
	right: -214px;
	bottom: 100px;
    width: 214px;
    padding: 10px;
    box-sizing: border-box;
	background: #001851;
    border-radius: 10px 0 0 10px;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold;
	transition: right 0.2s;
}

#main-contents .fix_alink.active{
	right: 0;
}

#main-contents .fix_alink .btn{
	position: absolute;
	z-index: 1;
	left: -37px;
	top: 10px;
	width: 37px;
	height: 100px;
	background: #001851;
    border-radius: 10px 0 0 10px;
    overflow: hidden;
	cursor: pointer;
}

#main-contents .fix_alink .btn:before{
	content:"";
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: url(../img/partition02/ico_arw_w.png) 50% 50% no-repeat;
	background-size: 7px auto;
	transform: rotate(180deg);
	animation: animOpacity 2s ease-in-out infinite alternate;
}

#main-contents .fix_alink.active .btn:before{
	transform: rotate(0deg);
	animation: none;
}

@keyframes animOpacity {
	0%,100% {opacity: 0;}
	50% {opacity: 1.0;}
}

#main-contents .fix_alink ul.menu{
	margin: 0 0 10px;
	padding: 0;
	list-style-type: none;
    border-radius: 5px;
    overflow: hidden;
    font-size: 15px;
    font-size: 1.5rem;
}

#main-contents .fix_alink ul.menu li{
	margin: 1px 0 0;
}

#main-contents .fix_alink ul.menu li:first-child{
	margin-top: 0;
}

#main-contents .fix_alink ul.menu li a{
	display: block;
	/*background: #ededed;*/
	background: #fff;
	padding: 10px 14px 9px;
	min-height: 34px;
	box-sizing: border-box;
}

#main-contents .fix_alink .content > a{
	display: block;
	padding: 10px 11px 9px 25px;
	border-radius: 5px;
	color: #fff;
	background: linear-gradient(90deg, #f24a00 0,#f27200 50%, #f24a00 100%);
}

#main-contents .fix_alink .content > a:hover{
	color: #fff;
}

#main-contents .fix_alink .content > a p{
	display: inline-block;
	padding: 0 0 0 40px;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.3;
	background: url(../img/partition02/ico_mail.png) 0 40% no-repeat;
    background-size: 25px auto;
	text-align: left;
}

/*メインビジュアル*/
#main-contents .l-mv{
	height: 700px;
	min-width: 1100px;
	padding: 120px 0 0;
	background: url(../img/blinds/img_main01_05.jpg) 50% 55% no-repeat;
	background-size: cover;
}

#main-contents .l-mv ol#path{
	width: 1100px;
	margin: 0 auto;
	color: #ffffff;
}

#main-contents .l-mv ol#path li a{
	color: #ffffff;
}

#main-contents .l-mv ol#path li a:hover{
	color: #D1322E;
}

#main-contents .l-mv .area{
	position: relative;
	top: 13px;
	left: 50%;
	width: 570px;
	margin-left: -550px;
	padding: 45px 0 40px;
	box-sizing: border-box;
	font-size: 16px;
	color: #fff;
	background: #102965;
	z-index: 2;
}

#main-contents .l-mv .area::before,
#main-contents .l-mv .area::after{
	content: "";
	position: absolute;
	top:0;
	right:0;
	border-top: 25px solid #27458d;
	border-right: 25px solid #27458d;
	border-bottom: 25px solid transparent;
	border-left: 25px solid transparent;
}

#main-contents .l-mv .area::after{
	top: auto;
	right: auto;
	left: 0;
	bottom: 0;
	transform: rotate(180deg);
}

#main-contents .l-mv .area h1{
	margin: 10px 0 35px;
	font-size: 48px;
	font-size: 6.3rem;
	line-height: 1.0;
	font-weight: bold;
	text-align: center;
}

#main-contents .l-mv .area .mv_in{
	width: 100%;
	padding: 0 65px;
	box-sizing: border-box;
}

#main-contents .l-mv .area .lead{
	margin: 0 0 10px;
	font-size: 26px;
	font-weight: bold;
	color: #dabb70;
	text-align: center;
}

#main-contents .l-mv .area .price{
	margin: 15px 0 10px;
}

#main-contents .l-mv .area .note{
	margin: 0px 0 25px;
	text-align: right;
	font-size: 2.0rem;
	color: #dabb70;
}

#main-contents .l-mv .area .box{
	margin: 0 0 25px;
}

#main-contents .l-mv .area .box p{
	margin: 0 0 5px;
	padding: 6px 0;
	font-weight: bold;
	line-height: 1.3;
	color: #001851;
	background: #fff;
	text-align: center;
}

#main-contents .l-mv .area .box p:nth-child(1){
	float: left;
	width: 218px;
}

#main-contents .l-mv .area .box p:nth-child(2){
	float: right;
	width: 218px;
}

#main-contents .l-mv .area .box p:nth-child(3){
	clear: both;
}

#main-contents .l-mv .area .box p:last-child{
	margin-bottom: 0;
}

#main-contents .l-mv .area .logo_2col{
	display: flex;
	align-items: center;
}

#main-contents .l-mv .area .logo_2col ul{
	display: flex;
	flex-wrap: wrap;
    flex-direction: column;
    height: 60px;
	font-size: 13px;
	padding: 8px 0 0;
}

#main-contents .l-mv .area .logo_2col ul li{
	line-height: 2.0;
	margin: 0 6px;
}

#main-contents .l-mv .area .btn{
	display: table;
	position: relative;
	margin: 21px auto 0;
}

#main-contents .l-mv .area .btn a{
	display: table-cell;
	vertical-align: middle;
	height: 86px;
	padding: 0 80px 0 35px;
	border-radius: 9px;
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	background: linear-gradient(90deg, #f24a00 0,#f27200 50%, #f24a00 100%);
}

#main-contents .l-mv .area .btn a span.txt{
	padding-left: 48px;
	background: url(../img/blinds/ico_mail.png) 0 50% no-repeat;
	background-size: 32px auto;
}

#main-contents .l-mv .area .btn .img{
	position: absolute;
	top: -17px;
	right: -13px;
}

/* テスト */
/* カードコンテナ */
.product-card-container {
    display: flex;
    justify-content: center;
    gap: 24px;
    flex-wrap: wrap; /* 画面が小さい場合に折り返す */
}

/* カード全体のスタイル */
.product-card {
    background-color: #f4f4f4; /* カード下部の背景色 */
    width: 360px;
    flex-shrink: 0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 軽い影 */
    overflow: hidden; /* 角丸やはみ出しを調整 */
    transition: transform 0.2s ease-in-out;
}

.product-card:hover {
    transform: translateY(-5px); /* ホバー時に少し浮き上がる効果 */
}

/* 画像ラッパー */
.product-card-image-wrapper {
    position: relative; /* タグを絶対配置するための基準 */
}

.product-card-image-wrapper img {
    width: 100%;
    height: auto;
    display: block; /* 画像下の余白を削除 */
}

/* 画像左下のタグ */
.product-card-tag {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #0c3967; /* タグの背景色 */
    color: white;
    padding: 8px 16px;
    font-size: 14px;
    font-weight: bold;
}

/* コンテンツエリア */
.product-card-content {
    padding: 20px;
}

/* タイトル */
.product-card-title {
    margin: 0 0 4px 0;
    font-size: 20px;
    font-weight: bold;
}

/* サブタイトル */
.product-card-subtitle {
    margin: 0 0 24px 0;
    font-size: 16px;
    color: #555;
}

/* 詳細情報エリア */
.product-card-details dl {
    display: grid;
    grid-template-columns: 100px 1fr; /* ラベルと値の列幅を定義 */
    margin: 0;
    padding: 10px 0;
    font-size: 15px;
    border-bottom: 1px solid #ddd;
}

.product-card-details dl:first-child {
    padding-top: 0;
}

.product-card-details dl:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.product-card-details dt {
    font-weight: bold;
}

.product-card-details dd {
    margin: 0;
}

/* レスポンシブ対応 (スマートフォンなど) */
@media (max-width: 768px) {
    .product-card {
        width: 90%;
        max-width: 400px;
    }
}
/* テスト終わり */


/*CVエリア*/
#main-contents .cv{
	padding: 160px 0 80px;
	/*background: url(../img/partition02/bg_cv01.jpg) 0 0 no-repeat, url(../img/partition02/bg_cv02.jpg) 100% 100% no-repeat #efefef;*/
	background: linear-gradient(1deg, rgba(60, 60, 105, 0.2), rgba(60, 60, 105, 0.2)),url(../img/partition02/bg_cv.jpg) 50% 50% no-repeat;
    background-size: cover;
	text-align: center;
	color: #fff;
}

#main-contents .cv.mid{
	padding: 100px 0 100px;
}

#main-contents .cv h2{
	margin: 0 0 20px;
	font-size: 34px;
}

#main-contents .cv .lead{
	margin: 0 0 35px;
	font-size: 18px;
}

#main-contents .cv .btn{
	display: table;
	position: relative;
	margin: 0 auto 40px;
}

#main-contents .cv .btn a{
	display: table-cell;
	vertical-align: middle;
	height: 120px;
	padding: 0 126px;
	border-radius: 9px;
	font-size: 28px;
	font-weight: bold;
	color: #fff;
	background: linear-gradient(90deg, #f24a00 0,#f27200 50%, #f24a00 100%);
}

#main-contents .cv .btn a span.txt{
	padding-left: 52px;
	background: url(../img/blinds/ico_mail.png) 0 50% no-repeat;
	background-size: 36px auto;
}

#main-contents .cv .btn .img{
	position: absolute;
	top: -30px;
	right: -30px;
}

#main-contents .cv .box{
	width: 760px;
	margin: 0 auto;
}

#main-contents .cv .col{
	float: left;
	width: 370px;
	margin:0 20px 20px 0;
	box-sizing: border-box;
	background: #fff;
	text-align: left;
}

#main-contents .cv .col:nth-child(2n){
	margin-right: 0;
}

#main-contents .cv .col a{
	display: block;
	padding: 16px 38px;
	color: #1d1c22;
	cursor: default;
	pointer-events: none;
}
#main-contents .cv .col a:hover{
	color: #1d1c22;
}

#main-contents .cv .col .intit{
	font-size: 18px;
	font-weight: bold;
}

#main-contents .cv .col .number{
	font-size: 35px;
	font-weight: bold;
	line-height: 1;
}

#main-contents .cv .col .number span{
	padding: 0 0 0 25px;
	background: url(../img/partition02/ico_tel.png)0 50% no-repeat;
	background-size: 21px auto;
}

#main-contents .cv .col .time{
	font-size: 13px;
	color: #6a696e;
}

/*見出し*/
#main-contents .tit_bnr{
	position: relative;
	padding: 62px 0;
	background: #162b5f;
	text-align: center;
	overflow: visible;
}

#main-contents .tit_bnr p{
	font-family: 'Montserrat', sans-serif;
	color: #dabb70;
	font-weight: bold;
}

#main-contents .tit_bnr h2{
	margin: 0 0 20px;
	font-size: 34px;
	color: #fff;
}

#main-contents .tit_bnr::before{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	width: 4px;
	height: 40px;
	background: #162b5f;
	transform: translateX(-50%);
}

/*施工型パーテーションのメリット*/
#main-contents .merit{
	background: #f5f5f5 url(../img/partition02/bg_merit.jpg) 50% 0 no-repeat;
	background-size: 100% auto;
}

#main-contents .merit .inner01{
	padding: 100px 0;
}

#main-contents .merit .tit{
	margin: 0 0 55px;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
}

#main-contents .merit .tit span{
	font-size: 34px;
	color: #a30000;
}

#main-contents .merit .col3{
	margin: 0 0 56px;
}

#main-contents .merit .col3 .col{
	float: left;
	width: 340px;
	margin: 0 40px 0 0;
}

#main-contents .merit .col3 .col p{
	line-height: 1.8;
}

#main-contents .merit .col3 .col:nth-child(3n){
	margin-right: 0;
}

#main-contents .merit .col3 .col .box{
	position: relative;
	margin: 0 0 18px;
	/* padding: 40px 0 50px;
	color: #fff; */
	background: #162b5f;
	/* text-align: center; */

	min-height: 300px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: white;
	padding: 24px;
}

#main-contents .merit .col3 .col .box::before,
#main-contents .merit .col3 .col .box::after,
#main-contents .merit .col2 .col .box::before,
#main-contents .merit .col2 .col .box::after{
	content: "";
	position: absolute;
	top:0;
	right:0;
	border-top: 15px solid #27458d;
	border-right: 15px solid #27458d;
	border-bottom: 15px solid transparent;
	border-left: 15px solid transparent;
}
#main-contents .merit .col3 .col .box::after,
#main-contents .merit .col2 .col .box::after{
	top: auto;
	bottom: 0;
	right: auto;
	left: 0;
	transform: rotate(180deg);
}

#main-contents .merit .col3 .col .box .num{
	display: inline-block;
	margin: 0 0 30px;
	padding: 0 0 8px;
	font-family: 'Montserrat', sans-serif;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
	color: #dabb70;
	border-bottom: 2px solid #dabb70;
}

#main-contents .merit .col3 .col .box .img{
	margin: 0 0 15px;
}

#main-contents .merit .col3 .col .box .lead{
	margin: 0 0 10px;
	font-size: 18px;
	font-weight: bold;
	line-height: 22px;
}

#main-contents .merit .col3 .col .box .lead.line1{
	line-height: 44px;
}

#main-contents .merit .col3 .col .box .catch{
	font-size: 42px;
	font-weight: bold;
	line-height: 46px;
}

#main-contents .merit .col3 .col .box .catch img{
	width: auto;
	height: 46px;
}

#main-contents .merit .col2 .col{
	float: left;
	width: 530px;
	margin: 50px 40px 0 0;
}

#main-contents .merit .col2 .col p{
	line-height: 1.8;
}

#main-contents .merit .col2 .col:nth-child(2n){
	margin-right: 0;
}
#main-contents .merit .col2 .col:nth-child(-n+2){
	margin-top: 0;
}

#main-contents .merit .col2 .col .box{
	position: relative;
	margin: 0 0 20px;
	padding: 38px 40px;
	background: #fff;
}

#main-contents .merit .col2 .col .box::before,
#main-contents .merit .col2 .col .box::after{
	border-top: 10px solid #f1e7d1;
	border-right: 10px solid #f1e7d1;
	border-bottom: 10px solid transparent;
	border-left: 10px solid transparent;
}

#main-contents .merit .col2 .col .num{
	float: left;
	margin: 0 42px 0 0;
	padding: 10px 0 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.4;
	color: #dabb70;
	border-bottom: 2px solid #dabb70;
}

#main-contents .merit .col2 .col .img{
	float: left;
	margin: 0 42px 0 0;
}

#main-contents .merit .col2 .col .txt_area{
	float: left;
	font-weight: bold;
}

#main-contents .merit .col2 .col .txt_area .lead{
	margin: 0 0 10px;
	font-size: 16px;
	line-height: 1;
}

#main-contents .merit .col2 .col .txt_area .catch{
	font-size: 28px;
	line-height: 1.4;
}

#main-contents .merit .inner02{
	position: relative;
	padding: 90px 0 100px;
	z-index: 1;
}

#main-contents .merit .inner02::before{
	content: "";
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 530px;
	background: url(../img/partition02/bg_merit02.jpg) 0 0 no-repeat;
	background-size: 100% auto;
	z-index: -1;
}

#main-contents .merit .inner02 .txt{
	margin: 0 0 60px;
	font-size: 18px;
	line-height: 1.8;
	color: #fff;
}

#main-contents .merit .inner02 .color_box{
	margin: 0 0 60px;
	padding: 50px 60px;
	background: #fff;
}

#main-contents .merit .inner02 .color_box .txt_area{
	float: left;
	width: 680px;
	line-height: 1.8;
}

#main-contents .merit .inner02 .color_box .intit{
	margin: 0 0 12px;
	font-size: 26px;
	font-weight: bold;
	line-height: 1.8;
	color: #a30000;
}

#main-contents .merit .inner02 .color_box .intxt{
	line-height: 1.8;
}

#main-contents .merit .inner02 .color_box .color{
	float: right;
	width: 261px;
}

#main-contents .merit .inner02 .color_box .color p{
	float: left;
	position: relative;
	width: 54px;
	margin: 10px 15px 0 0;
	padding: 58px 0 0;
	font-size: 10px;
	color: #1d1c22;
	text-align: center;
	white-space: nowrap;
}

#main-contents .merit .inner02 .color_box .color p:nth-child(4n){
	margin-right: 0;
}
#main-contents .merit .inner02 .color_box .color p:nth-child(-n+4){
	margin-top: 0;
}

#main-contents .merit .inner02 .color_box .color p::before{
	content: "";
	position: absolute;
	top:0;
	left:0;
	width: 54px;
	height: 54px;
	border-radius: 50%;
}

#main-contents .merit .inner02 .color_box .color p.white::before{
	background: #fff;
	border: 1px solid #e9e7e4;
	box-sizing: border-box;
}
#main-contents .merit .inner02 .color_box .color p.offwhite{
	letter-spacing: -0.05em;
}
#main-contents .merit .inner02 .color_box .color p.offwhite::before{
	background: #f2e9dd;
}
#main-contents .merit .inner02 .color_box .color p.silver::before{
	background: #ccc;
}
#main-contents .merit .inner02 .color_box .color p.black::before{
	background: #333;
}
#main-contents .merit .inner02 .color_box .color p.blue::before{
	background: #406bcd;
}
#main-contents .merit .inner02 .color_box .color p.red::before{
	background: #df3f29;
}
#main-contents .merit .inner02 .color_box .color p.lime::before{
	background: #a6d23e;
}
#main-contents .merit .inner02 .color_box .color p.green::before{
	background: #4dae50;
}
#main-contents .merit .inner02 .color_box .color p.yellow::before{
	background: #fce835;
}
#main-contents .merit .inner02 .color_box .color p.orange::before{
	background: #fe9801;
}
#main-contents .merit .inner02 .color_box .color p.maple::before{
	background: #dda971;
}
#main-contents .merit .inner02 .color_box .color p.brown::before{
	background: #946f51;
}

#main-contents .merit .inner02 .color_box .caution{
	clear: both;
	font-size: 13px;
	color: #6a696e;
}

#main-contents .merit .inner02 .captures p{
	float: left;
	margin: 0 4px 0 0;
}
#main-contents .merit .inner02 .captures p:last-child{
	margin-right: 0;
}

/* オフィスコムが選ばれる理由 */
#main-contents .merit .inner .col3 .col .box .note-min {
	text-align: center;
	font-size: 1.5rem;
}


/*業種別事例*/

#main-contents .case {
	background: #fff;
	overflow: hidden;
}

#main-contents .case .inner-sub {
	width: 1100px;
	margin: 0 auto;
	padding: 0px 0px 0px 0px
}

#main-contents .case .inner-sub .case_block {
	margin: 100px 0 0;
	padding: 0 40px 40px;
	background: #f3f4f5;
	position: relative;
}

#main-contents .case .inner-sub .case_block .txt {
	width: 470px;
	min-height: 350px;
	margin: 0 0 15px;
	position: relative;
	top: -25px;
	left: 0;
}

#main-contents .case .inner-sub .case_block.img_l .txt {
	padding: 0 0 0 550px;
}

#main-contents .case .inner-sub .case_block .txt .tit {
	margin: 0 0 15px;
	padding: 0 0 35px;
	position: relative;
}

#main-contents .case .inner-sub .case_block .txt .tit:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 20px;
	height: 1px;
	background: #5d626f;
}

#main-contents .case .inner-sub .case_block .txt .tit h4 {
	margin: 0 0 20px;
	font-size: 32px;
	font-size: 3.2rem;
	font-weight: bold;
	color: #162b5f;
	;height: 1.5;
}

#main-contents .case .inner-sub .case_block .txt .tit h4 span {
	font-size: 50px;
	font-size: 5.0rem;
}

#main-contents .case .inner-sub .case_block .txt .tit h4 em {
	margin: 0 0 0 20px;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
}

#main-contents .case .inner-sub .case_block .txt .tit h5 {
	margin: 0 0 20px;
	font-size: 32px;
	font-size: 3.2rem;
	font-weight: bold;
	color: #a30000;
	;height: 1.5;
}

#main-contents .case .inner-sub .case_block .txt .tit h5 span {
	font-size: 50px;
	font-size: 5.0rem;
}

#main-contents .case .inner-sub .case_block .txt .tit h5 em {
	margin: 0 0 0 20px;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
}

#main-contents .case .inner-sub .case_block .txt .tit h6 {
	margin: 0 0 20px;
	font-size: 32px;
	font-size: 3.2rem;
	font-weight: bold;
	color: #1d4528;
	;height: 1.5;
}

#main-contents .case .inner-sub .case_block .txt .tit h6 span {
	font-size: 50px;
	font-size: 5.0rem;
}

#main-contents .case .inner-sub .case_block .txt .tit h6 em {
	margin: 0 0 0 20px;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
}

#main-contents .case .inner-sub .case_block .txt .tit p {
	font-weight: bold;
	color: #102b5f;
}

#main-contents .case .inner-sub .case_block .txt .tit .red-sub {
	font-weight: bold;
	color: #a30000;
}

#main-contents .case .inner-sub .case_block .txt .tit .green-sub {
	font-weight: bold;
	color: #1d4528;
}

#main-contents .case .inner-sub .case_block .img {
	position: absolute;
	top: -40px;
	right: 40px;
}

#main-contents .case .inner-sub .case_block.img_l .img {
	right: inherit;
	left: 40px;
}

#main-contents .case .inner-sub .case_block .list {
	display: flex;
}

#main-contents .case .inner-sub .case_block .list li {
	width: 320px;
	margin: 0 0 0 30px;
}

#main-contents .case .inner-sub .case_block .list li:first-child {
	margin: 0;
}

#main-contents .case .inner-sub .case_block .list li .list_img {
	margin: 0 0 15px;
	padding: 0 0 20px;
	position: relative;
}

#main-contents .case .inner-sub .case_block .list li .list_img:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 20px;
	height: 1px;
	background: #5d626f;
}

#main-contents .nav_list {
	margin: 0 0 40px;
}

#main-contents .nav_list li {
	float: left;
	display: table;
	width: 340px;
	height: 80px;
	margin: 0 0 0 40px;
}

#main-contents .nav_list li:first-child {
	margin: 0;
}

#main-contents .nav_list li a {
	display: table-cell;
	vertical-align: middle;
	padding: 0 40px 0 80px;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #fff;
	line-height: 1.5;
	text-decoration: none;
	background: url(../img/blinds/arw_w_down.png) no-repeat right 20px center;
	/* background: #0e214c url(../img/blinds/arw_w_down.png) no-repeat right 20px center; */
	position: relative;
}

#main-contents .nav_list li a:before {
	content: '';
	position: absolute;
	left: 15px;
	top: 50%;
	margin: -25px 0 0;
	width: 50px;
	height: 50px;
}

#main-contents .nav_list li.nav01 a:before {
	background: url(../img/blinds/img_tate_icon_01.png) no-repeat 0 0;
}

#main-contents .nav_list li.nav02 a:before {
	background: url(../img/blinds/img_yoko_icon_01.png) no-repeat 0 0;
}

#main-contents .nav_list li.nav03 a:before {
	background: url(../img/blinds/img_roll_icon_01.png) no-repeat 0 0;
}

#main-contents .nav_list li a span {
	display: block;
	font-size: 16px;
	font-size: 1.6rem;
}

/* nav01 の背景色を紺色に設定 */
#main-contents .nav_list li.nav01 {
  background-color: #0e214c;
}

/* nav02 の背景色を赤色に設定 */
#main-contents .nav_list li.nav02 {
  background-color: #a30000;
}

/* nav03 の背景色を緑色に設定 */
#main-contents .nav_list li.nav03 {
  background-color: #1d4528;
}

/*取り扱いブラインド*/
#main-contents .lineup{
	padding: 0 0 100px;
	background: url(../img/partition02/bg_lineup.gif) -40px -66px;
}

#main-contents .lineup.selection{
	background: #FFF;
}

#main-contents .lineup.selection .btn_lead {
	margin: 0 0 40px;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}

#main-contents .lineup .inner01{
	padding: 145px 0 100px;
}

#main-contents .lineup .inner01 .col{
	float: left;
	position: relative;
	width: 530px;
	margin: 80px 40px 0 0;
	padding: 0 40px 35px;
	box-sizing: border-box;
	background: #f5f5f5;
}

#main-contents .lineup .inner01 .col:nth-child(2n){
	margin-right: 0;
}
#main-contents .lineup .inner01 .col:nth-child(-n+2){
	margin-top: 0;
}

#main-contents .lineup .inner01 .col p{
	line-height: 1.8;
}

#main-contents .lineup .inner01 .col .img{
	position: relative;
	top: -40px;
}

#main-contents .lineup .inner01 .col .movie{
	position: relative;
	top: -40px;
}

#main-contents .lineup .inner01 .col .img span{
	display: block;
	position: absolute;
	right: 20px;
	bottom: -30px;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	font-size: 18px;
	font-weight: bold;
	line-height: 100px;
	color: #fff;
	background: #a30000;
	text-align: center;
}
#main-contents .lineup .inner01 .col.col02 .img span{
	background: #194251;
}
#main-contents .lineup .inner01 .col.col03 .img span{
	background: #724800;
}
#main-contents .lineup .inner01 .col.col04 .img span{
	background: #1d4528;
}
#main-contents .lineup .inner01 .col.col05 .img span{
	background: #28337d;
}
#main-contents .lineup .inner01 .col.col06 .img span{
	background: #61225c;
}


#main-contents .lineup .inner01 .col .tit{
	margin: 0 0 24px;
	padding: 0 0 0 15px;
	line-height: 1;
	background: url(../img/partition02/ico_lineup_arw01.png) 0 50% no-repeat;
	background-size: 7px auto;
}
#main-contents .lineup .inner01 .col .tit a{
	font-size: 26px;
	font-weight: bold;
	color: #a30000;
}

#main-contents .lineup .inner01 .col .tit a:hover{
	text-decoration: underline;
}

#main-contents .lineup .inner01 .col.col02 .tit{
	background: url(../img/partition02/ico_lineup_arw02.png) 0 50% no-repeat;
	background-size: 7px auto;
}
#main-contents .lineup .inner01 .col.col02 .tit a{
	color: #194251;
}

#main-contents .lineup .inner01 .col.col03 .tit{
	background: url(../img/partition02/ico_lineup_arw03.png) 0 50% no-repeat;
	background-size: 7px auto;
}
#main-contents .lineup .inner01 .col.col03 .tit a{
	color: #724800;
}

#main-contents .lineup .inner01 .col.col04 .tit{
	background: url(../img/partition02/ico_lineup_arw04.png) 0 50% no-repeat;
	background-size: 7px auto;
}
#main-contents .lineup .inner01 .col.col04 .tit a{
	color: #1d4528;
}

#main-contents .lineup .inner01 .col.col05 .tit{
	background: url(../img/partition02/ico_lineup_arw05.png) 0 50% no-repeat;
	background-size: 7px auto;
}
#main-contents .lineup .inner01 .col.col05 .tit a , #main-contents .lineup .inner01 .col.col05 .tit{
	color: #28337d;
	font-size: 26px;
	font-weight: bold;
}

#main-contents .lineup .inner01 .col.col06 .tit{
	background: url(../img/partition02/ico_lineup_arw06.png) 0 50% no-repeat;
	background-size: 7px auto;
}
#main-contents .lineup .inner01 .col.col06 .tit a , #main-contents .lineup .inner01 .col.col06 .tit{
	font-size: 26px;
	font-weight: bold;
	color: #61225c;
}

#main-contents .lineup .inner01 .col ul{
	margin: 0 0 15px;
	padding: 0;
	list-style: none;
}

#main-contents .lineup .inner01 .col li{
	margin: 0 0 1px;
	padding: 10px 10px 10px 38px;
	font-weight: bold;
	line-height: 1.6;
	background: url(../img/partition02/ico_lineup_check01.png) 15px 50% no-repeat #fff;
	background-size: 18px auto;
}
#main-contents .lineup .inner01 .col li:last-child{
	margin-bottom: 0;
}

#main-contents .lineup .inner01 .col.col02 li{
	background: url(../img/partition02/ico_lineup_check02.png) 15px 50% no-repeat #fff;
	background-size: 18px auto;
}

#main-contents .lineup .inner01 .col.col03 li{
	background: url(../img/partition02/ico_lineup_check03.png) 15px 50% no-repeat #fff;
	background-size: 18px auto;
}

#main-contents .lineup .inner01 .col.col04 li{
	background: url(../img/partition02/ico_lineup_check04.png) 15px 50% no-repeat #fff;
	background-size: 18px auto;
}
#main-contents .lineup .inner01 .col.col05 li{
	background: url(../img/partition02/ico_lineup_check05.png) 15px 50% no-repeat #fff;
	background-size: 18px auto;
}
#main-contents .lineup .inner01 .col.col06 li{
	background: url(../img/partition02/ico_lineup_check06.png) 15px 50% no-repeat #fff;
	background-size: 18px auto;
}

#main-contents .lineup .inner02{
	position: relative;
}

#main-contents .lineup .inner02::before{
	content: "";
	display: block;
	width: 100%;
	height: 60px;
	background: #ededed;
}

#main-contents .lineup .inner02 h3{
	float: left;
	width: 540px;
	height: 120px;
	padding: 45px 0 0 128px;
	box-sizing: border-box;
	font-size: 34px;
	font-weight: bold;
	background: url(../img/partition02/ico_lineup_check.png) 0 45% no-repeat;
}

#main-contents .lineup .inner02 .img{
	float: right;
	padding: 0 60px 0 0;
	background: #ededed;
}

#main-contents .lineup .inner03{
	padding: 60px 0;
}

#main-contents .lineup .inner03 ul.lineup_photo_list{
	display: flex;
	margin: 0 0 45px;
}

#main-contents .lineup .inner03 .lead{
	margin: 0 0 36px;
	font-size: 18px;
	line-height: 1.8;
}

#main-contents .lineup .inner03 ul.content{
	margin: 0;
	padding: 60px;
	list-style: none;
	background: #ededed;
}

#main-contents .lineup .inner03 .list{
	margin: 0 0 20px;
	padding: 40px 0 34px;
	background: #fff;
}

#main-contents .lineup .inner03 .list:last-child{
	margin-bottom: 0;
}

#main-contents .lineup .inner03 .list h4{
	padding: 0 60px 0 0;
	font-size: 26px;
	font-weight: bold;
	line-height: 40px;
	position: relative;
	cursor: pointer;
}

#main-contents .lineup .inner03 .list h4::before,
#main-contents .lineup .inner03 .list h4::after{
	content: "";
	position: absolute;
	top: calc(50% - 1.5px);
	left: calc(100% - 50px);
	width: 20px;
	height: 3px;
	background: #443f34;
}

#main-contents .lineup .inner03 .list h4::after{
	transform: rotate(90deg);
}

#main-contents .lineup .inner03 .list h4.active::after {
	content: none;
}

#main-contents .lineup .inner03 .list h4 span{
	display: inline-block;
	width: 65px;
	height: 40px;
	margin: 0 10px 0 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: bold;
	color: #dabb70;
	background: url(../img/partition02/bg_lineup_num.png) 0 0 no-repeat;
	text-align: center;
}

#main-contents .lineup .inner03 .list .list_in{
	display: none;
	margin: 18px 0 0;
	padding: 0 30px;
}

#main-contents .lineup .inner03 .list .graph{
	margin: 30px 0 20px;
}

#main-contents .lineup .inner03 .list .col{
	float: left;
	width: 215px;
	margin: 0 20px 0 0;
}

#main-contents .lineup .inner03 .list .col:last-child{
	margin-right: 0;
}

#main-contents .lineup .inner03 .list .col p{
	font-size: 13px;
}

#main-contents .lineup .cv_btn{
	margin-bottom: 0;
}

/*取扱商品*/

#main-contents .product {
	background: #fff;
}

#main-contents .product .inner {
	width: 1100px;
	margin: 0 auto;
	padding: 100px 0;
}

#main-contents .product .inner .intro {
	width: 980px;
	margin: 0 auto;
	padding: 20px 0 80px 30px;
	box-sizing: border-box;
	position: relative;
}

#main-contents .product .inner .intro:before {
	content: '';
	position: absolute;
	top: 0;
	left: -474px;
	width: 474px;
	height: 353px;
	background: url(../img/tilecarpet/bg_tile01.png) no-repeat 0 0;
}

#main-contents .product .inner .intro:after {
	content: '';
	position: absolute;
	top: 0;
	right: -474px;
	width: 474px;
	height: 353px;
	background: url(../img/tilecarpet/bg_tile02.png) no-repeat 0 0;
}

#main-contents .product .inner .intro .tit {
	margin: 0 0 15px;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
}

#main-contents .product .inner .nav_list {
	margin: 0 0 40px;
}

#main-contents .product .inner .nav_list li {
	float: left;
	display: table;
	width: 340px;
	height: 80px;
	margin: 0 0 0 40px;
}

#main-contents .product .inner .nav_list li:first-child {
	margin: 0;
}

#main-contents .product .inner .nav_list li a {
	display: table-cell;
	vertical-align: middle;
	padding: 0 40px 0 80px;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #fff;
	line-height: 1.5;
	text-decoration: none;
	background: #0e214c url(../img/tilecarpet/arw_w_down.png) no-repeat right 20px center;
	position: relative;
}

#main-contents .product .inner .nav_list li a:before {
	content: '';
	position: absolute;
	left: 15px;
	top: 50%;
	margin: -25px 0 0;
	width: 50px;
	height: 50px;
}

#main-contents .product .inner .nav_list li.nav01 a:before {
	background: url(../img/tilecarpet/bg_product01.jpg) no-repeat 0 0;
}

#main-contents .product .inner .nav_list li.nav02 a:before {
	background: url(../img/tilecarpet/bg_product02.jpg) no-repeat 0 0;
}

#main-contents .product .inner .nav_list li.nav03 a:before {
	background: url(../img/tilecarpet/bg_product03.jpg) no-repeat 0 0;
}

#main-contents .product .inner .nav_list li a span {
	display: block;
	font-size: 16px;
	font-size: 1.6rem;
}

.product_block {
	padding: 40px 0 75px;
}

.product_block + .product_block {
	margin: 40px 0 0;
	border-top: 1px dotted #000;	
}

.product_block .product_tit {
	margin: 0 0 40px;
	padding: 40px 40px 40px 36px;
	border-left: 4px solid #0e214c;
	background: #f3f4f5;
}

.product_block .product_tit h4 {
	margin: 0 0 5px;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.8;
	color: #0e214c;
}

.product_block .product_tit h4 span {
	font-size: 20px;
	font-size: 2.0rem;
}

.product_block .product_tit_yoko {
	margin: 0 0 40px;
	padding: 40px 40px 40px 36px;
	border-left: 4px solid #a30000;
	background: #f3f4f5;
}

.product_block .product_tit_yoko h4 {
	margin: 0 0 5px;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.8;
	color: #a30000;
}

.product_block .product_tit_yoko h4 span {
	font-size: 20px;
	font-size: 2.0rem;
}

.product_block .product_tit_roll {
	margin: 0 0 40px;
	padding: 40px 40px 40px 36px;
	border-left: 4px solid #1d4528;
	background: #f3f4f5;
}

.product_block .product_tit_roll h4 {
	margin: 0 0 5px;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.8;
	color: #1d4528;
}

.product_block .product_tit_roll h4 span {
	font-size: 20px;
	font-size: 2.0rem;
}

.product_block .product_img {
	float: left;
}

.product_block .product_txt {
	float: right;
	width: 510px;
	padding: 36px;
	border: 4px solid #0e214c;
	box-sizing: border-box;
	position: relative;
}

.product_block .product_txt .tit {
	position: absolute;
	top: 16px;
	left: 0;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #fff;
	line-height: 60px;
	padding: 0 10px 0 15px;
	background: #0e214c;
}

.product_block .product_txt .tit:before {
	content: '';
	position: absolute;
	top: 0;
	right: -22px;
	border-left: 22px solid #0e214c;
	border-top: 30px solid transparent;
	border-bottom: 30px solid transparent;
}

.product_block .product_txt .img {
	margin: 0 0 15px;
}

/* ヨコ型 */
.product_block .product_txt_yoko {
	float: right;
	width: 510px;
	padding: 36px;
	border: 4px solid #a30000;
	box-sizing: border-box;
	position: relative;
}

.product_block .product_txt_yoko .tit {
	position: absolute;
	top: 16px;
	left: 0;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #fff;
	line-height: 60px;
	padding: 0 10px 0 15px;
	background: #a30000;
}

.product_block .product_txt_yoko .tit:before {
	content: '';
	position: absolute;
	top: 0;
	right: -22px;
	border-left: 22px solid #a30000;
	border-top: 30px solid transparent;
	border-bottom: 30px solid transparent;
}

.product_block .product_txt_yoko .img {
	margin: 0 0 15px;
}

/* ロールスクリーン */
.product_block .product_txt_roll {
	float: right;
	width: 510px;
	padding: 36px;
	border: 4px solid #1d4528;
	box-sizing: border-box;
	position: relative;
}

.product_block .product_txt_roll .tit {
	position: absolute;
	top: 16px;
	left: 0;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #fff;
	line-height: 60px;
	padding: 0 10px 0 15px;
	background: #1d4528;
}

.product_block .product_txt_roll .tit:before {
	content: '';
	position: absolute;
	top: 0;
	right: -22px;
	border-left: 22px solid #1d4528;
	border-top: 30px solid transparent;
	border-bottom: 30px solid transparent;
}

.product_block .product_txt_roll .img {
	margin: 0 0 15px;
}


.product_block .product_tbl {
	float: left;
	width: 100%;
	margin: 40px 0 0;
	border-top: 1px solid #d9d9d9;
	border-left: 1px solid #d9d9d9;
	font-style: 16px;
	font-size: 1.6rem;
}

.product_block .product_tbl tr th {
	width: 20%;
	padding: 15px;
	border-bottom: 1px solid #d9d9d9;
	border-right: 1px solid #d9d9d9;
	font-weight: bold;
	text-align: center;
	background: #f3f4f5;
}

.product_block .product_tbl tr td {
	padding: 15px;
	border-bottom: 1px solid #d9d9d9;
	border-right: 1px solid #d9d9d9;
	text-align: left;
}

.product_block .product_tbl tr td ul {
	margin: 0 0 0 20px;
	list-style-type: disc;
	font-size: 16px;
	font-size: 1.6rem;
}

/*シーン別製品紹介*/
#main-contents .case{
	padding: 100px 0px 0px 0px;
	/* background: #f5f5f5; */
}

#main-contents .case .case_catch{
	font-size: 34px;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
	margin: 0 0 50px;
}

#main-contents .case .case_catch strong,
#main-contents .case .case_catch span{
	color: #a30000;
}

#main-contents .case .case_catch strong{
	padding: 0 0 3px;
	background: url(../img/partition02/bg_border_bottom02.png) 0 100% repeat-x;
}

#main-contents .case .case_logo{
	margin: 0 0 50px;
	text-align: center;
}

#main-contents .case .lead{
	margin: 0 0 68px;
}

#main-contents .case .box{
	margin: 0;
	padding: 0;
	list-style: none;
}

#main-contents .case .col{
	float: left;
	width: 360px;
	margin: 0 10px 50px 0;
	background: #fff;
	/* height: 400px; */
}

#main-contents .case .col:nth-child(3n){
	margin-right: 0;
}

#main-contents .case .col:nth-child(n + 4){
	display: none;
}

/* #main-contents .case .col .txt_area{
	position: relative;
	padding: 43px 30px 21px;
} */

#main-contents .case .col .txt_area{
	position: relative;
	padding: 43px 30px 21px;
	background-color: #f3f4f5;
}

#main-contents .case .col .txt_area h3{
	margin: 0 0 0px;
	/* padding: 0 0 0 20px; */
	font-size: 22px;
	line-height: 1.5;
	/* background: url(../img/partition02/ico_arw_b.png) 0 0.45em no-repeat; */
	background-size: 7px auto;
}

#main-contents .case .col .txt_area p{
	line-height: 1.5;
}

#main-contents .case .col .txt_area::before{
	content: "タテ型ブラインド";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 13px;
	font-weight: bold;
	color: #fff;
	background: #001851;
	text-align: center;
	width: 125px;
	padding: 2px 0;
}

#main-contents .case .col.col2 .txt_area::before{
	content: "ヨコ型ブラインド";
	background: #a30000;
}
#main-contents .case .col.col3 .txt_area::before{
	content: "ガラス";
	background: #724800;
}
#main-contents .case .col.col4 .txt_area::before{
	content: "ロールスクリーン";
	background: #1d4528;
}

/* 親要素にFlexboxを適用して高さを揃える */
#product01 {
  /* display: flex; */
  flex-wrap: wrap; /* 必要に応じて折り返す設定 */
}

/* 各li要素の内部構造を調整 */
#product01 .col {
  display: flex;
  flex-direction: column; /* 子要素を縦に並べる */
}

/* テキストエリアが残りのスペースを埋めるように設定 */
#product01 .col .txt_area {
  flex-grow: 1; /* 親要素の余白を埋めて高さを拡張する */
}

/* `.col` の親要素 (ここでは `.case`) をFlexコンテナに設定 */
#main--contents .case {
  display: flex;
  flex-wrap: wrap; /* 必要に応じて要素を折り返す */
  align-items: stretch; /* 子要素の高さをコンテナに合わせて引き伸ばす (デフォルト値) */
}

/* 各カラムもFlexコンテナにして、中の要素を縦に並べる */
#main-contents .case .col {
  display: flex;
  flex-direction: column;
}

/* `.txt_area` が残りのスペースをすべて埋めるように設定 */
#main-contents .case .col .txt_area {
  flex-grow: 1;
}

#main-contents .case .btn_lead{
	margin: 0 0 40px;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}

#main-contents .case .open {
	margin: 0 0 30px;
	padding: 0 30px 0 0;
	text-align: right;
	font-weight: bold;
	position: relative;
	top: -30px;
	cursor: pointer;
}

#main-contents .case .open::before,
#main-contents .case .open::after{
	content: "";
	position: absolute;
	top: 50%;
	left: calc(100% - 20px);
	width: 14px;
	height: 2px;
	background: #443f34;
}

#main-contents .case .open::after{
	transform: rotate(90deg);
}

#main-contents .case .company{
	font-size: 1.4rem;
	color: #666;
	line-height: 1.8;
	text-align: left;
	/* border-bottom: 1px solid #e6e6e6; */
	margin: 0 0 9px;
	padding: 0 0 9px;
}

#main-contents .case .txt_area dl{
	/* display: flex;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.5; */

	display: grid;
    grid-template-columns: 100px 1fr; /* ラベルと値の列幅を定義 */
    margin: 0;
    padding: 4px 0;
    font-size: 15px;
    border-bottom: 1px solid #ddd;
}

#main-contents .case .txt_area dl dt{
	width: 100px;
	font-weight: bold;
	margin: 0 0 7px;
}

#main-contents .case .txt_area dl dd{
	width: calc( 100% - 0px );
	margin: 0 0 3px;
}

/* #main-contents .case .txt_area dl{
	width: 100%;
    border-collapse: collapse;
    border: 1px solid #e0e0e0;
}

#main-contents .case .txt_area dl dt{
    padding: 16px;
    text-align: left;
}

#main-contents .case .txt_area dl dd{
    background-color: #f7f7f7;
    font-weight: normal;
    width: 15%;
    white-space: nowrap;
} */

/* #main-contents .case .costlist li table {
	border-left: 1px solid #b4bdc6;
	border-top: 1px solid #b4bdc6;
	color: #3a404a;
	margin: 0 0 20px;
}
#main-contents .case .costlist li table th {
	border-right: 1px solid #b4bdc6;
	border-bottom: 1px solid #b4bdc6;
	background: #ebf0f4;
	padding: 10px;
	width: 30%;
	text-align: center;
}
#main-contents .case .costlist li table td {
	border-right: 1px solid #b4bdc6;
	border-bottom: 1px solid #b4bdc6;
	background: #fff;
	padding: 10px;
} */

/*防犯セキュリティー*/
#main-contents .security{
	padding: 100px 0;
	color: #fff;
	background: url(../img/partition02/bg_security.jpg) 50% 0 no-repeat;
	background-size: cover;
	text-align: center;
}

#main-contents .security .tit{
	display: inline-block;
	margin: 0 0 35px;
	font-size: 34px;
	font-weight: bold;
	background: url(../img/partition02/bg_security_border.png) 0 100% repeat-x;
}

#main-contents .security .tit strong{
	color: #dabb70;
}
#main-contents .security .tit span{
	font-size: 28px;
}

#main-contents .security .txt{
	margin: 0 0 55px;
	font-size: 22px;
	line-height: 1.8;
}

/*オフィスづくり成功企業インタビュー*/
#main-contents .interview{
	padding: 105px 0 60px;
	background: #f5f5f5;
}

#main-contents .interview a.link_block{
	position: relative;
	display: block;
	color: #1d1c22;
	text-decoration: none;
	margin: 0 0 40px 40px;
	padding: 45px 40px 40px 500px;
	background: #fff;
	min-height: 408px;
	box-sizing: border-box;
	transition: opacity 0.2s;
}

#main-contents .interview a.link_block:hover{
	opacity: 0.6;
}

#main-contents .interview a.link_block:after{
	content:"";
	position: absolute;
	z-index: 1;
	right: 0;
	bottom: 0;
	width: 40px;
	height: 40px;
	background: #a30000 url(../img/partition02/ico_arw_w.png) 50% 50% no-repeat;
	background-size: 7px auto;
	
}

#main-contents .interview a.link_block .img{
	position: absolute;
	z-index: 1;
	left: -40px;
	top: 50px;
}

#main-contents .interview a.link_block .content .company{
	font-size: 28px;
	font-weight: bold;
	line-height: 1.8;
	margin: 0 0 3px;
}

#main-contents .interview a.link_block .content .position{
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 35px;
}

#main-contents .interview a.link_block .content .catch{
	margin: 0 0 20px;
}

#main-contents .interview a.link_block .content .catch p{
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	color: #a30000;
}

#main-contents .interview a.link_block .content .lead p{
	font-size: 16px;
	line-height: 1.8;
}

#main-contents .interview .tit_box{
	margin: 0 0 60px;
}

#main-contents .interview .tit_box .left{
	float: left;
}
#main-contents .interview .tit_box .right{
	float: right;
}

#main-contents .interview .tit_box .txt_area{
	position: relative;
	width: 500px;
	height: 360px;
	padding: 118px 0 0 60px;
	box-sizing: border-box;
	color: #fff;
	background: #1d1c22;
}

#main-contents .interview .tit_box .txt_area::before,
#main-contents .interview .tit_box .txt_area::after{
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	border-top: 15px solid #434248;
	border-right: 15px solid #434248;
	border-bottom: 15px solid transparent;
	border-left: 15px solid transparent;
}
#main-contents .interview .tit_box .txt_area::after{
	top: auto;
	bottom:0;
	right: auto;
	left: 0;
	transform: rotate(180deg);
}

#main-contents .interview .tit_box .num{
	margin: 0 0 28px;
	padding: 0 0 0 36px;
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
	line-height: 24px;
	color: #dabb70;
	background: url(../img/partition02/ico_interview.png) 0 50% no-repeat;
	background-size: auto 24px;
}

#main-contents .interview .tit_box h3{
	margin: 0 0 20px;
	font-size: 28px;
	font-weight: bold;
}

#main-contents .interview .tit_box .people{
	font-size: 18px;
	font-weight: bold;
}

#main-contents .interview .txt_box{
	margin: 0 0 76px;
}
#main-contents .interview .txt_box.last{
	margin-bottom: 0;
}

#main-contents .interview .txt_box .txt_area{
	float: left;
	width: 600px;
}

#main-contents .interview .txt_box .txt_area p{
	font-size: 17px;
	line-height: 1.6;
}

#main-contents .interview .txt_box .txt_area .tit{
	margin: 0 0 25px;
	font-size: 27px;
	font-weight: bold;
	line-height: 1.6;
}

#main-contents .interview .txt_box .img_area{
	float: right;
	width: 458px;
}

#main-contents .interview .txt_box .img_area .img{
	float: left;
	width: 219px;
	margin: 20px 20px 0 0;
}

#main-contents .interview .txt_box .img_area .img:nth-child(2n){
	margin-right: 0;
}
#main-contents .interview .txt_box .img_area .img:nth-child(-n+2){
	margin-top: 0;
}

/*レイアウトプラン作成から施工まで*/
#main-contents .flow2{
	padding: 100px 0 120px;
	background: url(../img/partition02/bg_flow_arw.png) bottom 30px left 50% no-repeat #fff;
}

#main-contents .flow2 .lead{
	margin: 0 0 56px;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}

#main-contents .flow2 .flow_wrap{
	margin: 0 0 60px;
	background: #f5f5f5;
}

#main-contents .flow2 .flow_box{
	position: relative;
	top: 30px;
	width: 1100px;
	margin: 0 auto;
	padding: 10px;
	box-sizing: border-box;
	background: #f5f5f5;
}

#main-contents .flow2 .flow_box .col{
	position: relative;
	float: left;
	width: 208px;
	margin: 0 10px 0 0;
	padding: 35px 0 25px;
	background: #fff;
	text-align: center;
}
#main-contents .flow2 .flow_box .col:last-child{
	margin-right: 0;
}

#main-contents .flow2 .flow_box .col::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	border-top: 11px solid transparent;
	border-bottom: 11px solid transparent;
	border-left: 16px solid #dabb70;
	z-index: 2;
	transform: translateY(-50%);
}
#main-contents .flow2 .flow_box .col:last-child::before{
	display: none;
}

#main-contents .flow2 .flow_box .step{
	position: relative;
	margin: 0 0 30px;
	padding: 0 0 12px;
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: -0.03em;
	color: #dabb70;
}

#main-contents .flow2 .flow_box .step::after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 15px;
	height: 2px;
	transform: translateX(-50%);
	background: #dabb70;
}

#main-contents .flow2 .flow_box .img{
	margin: 0 0 30px;
}

#main-contents .flow2 .flow_box .txt{
	font-size: 18px;
	font-weight: bold;
	line-height: 48px;
}
#main-contents .flow2 .flow_box .txt.line2{
	line-height: 24px;
}

#main-contents .flow2 .lead_btm{
	font-size: 18px;
	line-height: 1.8;
}

/*無料で3Dパーツをご提案*/
#main-contents .reco{
	padding: 100px 0;
	background: url(../img/partition02/bg_reco.jpg) 50% 0 no-repeat;
	background-size: cover;
}

#main-contents .reco .reco_in{
	position: relative;
	width: 1080px;
	margin: 0 auto;
	padding: 40px 0;
	background: #fff;
	text-align: center;
}

#main-contents .reco .tit{
	display: inline-block;
	position: relative;
	margin: 0 0 30px;
	padding: 0 58px;
	font-size: 34px;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}

#main-contents .reco .tit strong{
	color: #a30000;
}
#main-contents .reco .tit span{
	font-size: 28px;
}

#main-contents .reco .tit::before,
#main-contents .reco .tit::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 38px;
	height: 56px;
	background: url(../img/partition02/ico_reco_tit.png) 0 0 no-repeat;
}
#main-contents .reco .tit::after{
	left: auto;
	right: 0;
	transform: rotateY(180deg);
}

#main-contents .reco .ico{
	position: absolute;
	right: 40px;
	top: -10px;
}

#main-contents .reco .bar{
	width: calc(100% + 20px);
	transform: translateX(-10px);
	margin: 0 0 38px;
	padding: 28px 0;
	background: #a30000;
}

#main-contents .reco .bar p{
	font-size: 22px;
	font-weight: bold;
	line-height: 1.6;
	color: #fff;
}

#main-contents .reco .txt{
	margin: 0 0 38px;
	padding: 0 40px;
	font-size: 18px;
	line-height: 1.6;
	text-align: left;
}

#main-contents .reco .img_box{
	padding: 0 40px;
}

#main-contents .reco .img_box .img{
	float: left;
	width: 192px;
	margin: 0 10px 0 0;
}

#main-contents .reco .img_box .img:last-child{
	margin-right: 0;
}

/*ショールームでのご提案も承ります*/
#main-contents .showroom{
	padding: 100px 0;
	background: url(../img/partition02/bg_lineup.gif) -40px -66px #fff;
}

#main-contents .showroom .lead{
	margin: 0 0 35px;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}

#main-contents .showroom .catch{
	position: relative;
	margin: 0 0 60px;
	padding: 20px 0;
	font-size: 18px;
	background: #f5f5f5;
	text-align: center;
}

#main-contents .showroom .catch span{
	display: block;
	margin: 2px 0 0;
	color: #6a696e;
	font-size: 13px;
}

#main-contents .showroom .catch::before{
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 162px;
	height: 140px;
	background: url(../img/partition02/bg_showroom_catch.png) 0 0 no-repeat;
}

#main-contents .showroom .col{
	/* float: left; */
	width: 340px;
	margin: 40px 40px 0 0;
}

#main-contents .showroom .col p{
	font-size: 14px;
	line-height: 1.8;
}

#main-contents .showroom .col:nth-child(3n){
	margin-right: 0; [cite: 6]
}
#main-contents .showroom .col:nth-child(-n+3){
	margin-top: 0;
}

#main-contents .showroom .img{
	margin: 0 0 20px;
}

#main-contents .showroom .box{
	margin: 0;
	padding: 0;
	list-style: none;
	/* 以下2行を追加 */
	display: flex;
	flex-wrap: wrap;
}

#main-contents .showroom .col .tit{
	margin: 0 0 20px;
	font-size: 16px;
	font-weight: bold;
}

#main-contents .showroom .col .caution{
	color: #f11414;
}

#main-contents .showroom .col a:link,
#main-contents .showroom .col a:visited{
	text-decoration: underline;
}

/*取引先企業一覧*/
#main-contents .client{
	padding: 100px 0;
	color: #fff;
	background: #a30000;
}

#main-contents .client .client_in{
	width: 970px;
	margin: 0 auto;
}

#main-contents .client h2{
	margin: 0 0 60px;
	font-size: 34px;
	font-weight: bold;
	text-align: center;
}

#main-contents .client .img{
	margin: 0 0 50px;
	padding: 16px 0 21px;
	background: #fff;
	border: 5px solid #ccc;
	text-align: center;
}

#main-contents .client ul{
	margin: 0;
	padding: 0;
	list-style: none;
}

#main-contents .client .box>li{
	float: left;
	width: 300px;
	margin: 0 35px 0 0;
}
#main-contents .client .box>li:nth-child(3n){
	margin-right: 0;
}

#main-contents .client li{
	font-size: 14px;
	line-height: 1.8;
}

/*お電話でのお問い合わせ*/
#main-contents .contact_tel{
	padding: 100px 0;
	text-align: center;
}

#main-contents .contact_tel .contact_in{
	width: 970px;
	margin: 0 auto;
}

#main-contents .contact_tel .tit_area{
	margin: 0 0 60px;
	padding: 40px 0;
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
}

#main-contents .contact_tel .tit_area p{
	font-size: 18px;
	font-weight: bold;
}

#main-contents .contact_tel h2{
	margin: 30px 0 0;
	font-size: 50px;
	font-weight: bold;
}

#main-contents .contact_tel .col{
	float: left;
	width: 465px;
	margin: 40px 40px 0 0;
	background: #fff;
}

#main-contents .contact_tel .col:nth-child(2n){
	margin-right: 0;
}
#main-contents .contact_tel .col:nth-child(-n+2){
	margin-top: 0;
}

#main-contents .contact_tel .col a{
	display: block;
	padding: 0 0 20px;
	color: #333;
	cursor: default;
	pointer-events: none;
}
#main-contents .contact_tel .col a:hover{
	color: #333;
}

#main-contents .contact_tel .col .tit{
	margin: 0 0 25px;
	padding: 8px 0;
	font-size: 22px;
	font-weight: bold;
	color: #fff;
	background: #d1322e;
}

#main-contents .contact_tel .col .number{
	margin: 0 0 20px;
	font-size: 46px;
	font-weight: bold;
	line-height: 1;
}
#main-contents .contact_tel .col .number span{
	padding: 0 0 0 30px;
	background: url(../img/partition02/ico_contact_tel.png) 0 45% no-repeat;
	background-size: 25px auto;
}

#main-contents .contact_tel .col .sp{
	display: inline-block;
	margin: 0 0 12px;
	padding: 8px 20px 8px 42px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	color: #666;
	background: url(../img/partition02/ico_contact_phone.png) 20px 50% no-repeat #ededed;
	background-size: 11px auto;
}

#main-contents .contact_tel .col .sp .num{
	vertical-align: middle;
	margin: 0 0 0 10px;
	font-size: 26px;
	font-weight: normal;
}

#main-contents .contact_tel .col .time{
	font-size: 13px;
	color: #666;
}

/*メールでのお問い合わせ*/
#main-contents .secondary-mail{
	padding: 75px 0 80px;
	color: #fff;
	background: #333;
	font-size: 14px;
}
#main-contents .secondary-mail .wrap{
	width: 970px;
	margin: 0 auto;
}

#main-contents .secondary-mail h2{
	margin: 0 0 60px;
	padding: 40px 0;
	font-size: 50px;
	font-weight: bold;
	text-align: center;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

#main-contents .secondary-mail .mail-step{
	margin: 0 0 65px;
}
#main-contents .secondary-mail .mail-step .col{
	position: relative;
	display: table;
	float: left;
	width: 298px;
	margin: 0 38px 0 0;
	padding: 13px;
	box-sizing: border-box;
	color: #333;
	background: #fff;
}
#main-contents .secondary-mail .mail-step .col.selected{
	color: #fff;
	background: #d73232;
}
#main-contents .secondary-mail .mail-step .col:last-child{
	margin-right: 0;
}
#main-contents .secondary-mail .mail-step .col::before{
	content: "";
	position: absolute;
	right: -32px;
	top: 7px;
	width: 23px;
	height: 36px;
	background: url(../img/partition02/ico_contact_step.png) 0 0 no-repeat;
}
#main-contents .secondary-mail .mail-step .col:last-child::before{
	display: none;
}
#main-contents .secondary-mail .mail-step .col em{
	display: table-cell;
	width: 96px;
	text-align: center;
	border: 2px solid #ccc;
}
#main-contents .secondary-mail .mail-step .col.selected em{
	color: #d73232;
	background: #fff;
	border: none;
}
#main-contents .secondary-mail .mail-step .col span{
	display: table-cell;
	text-align: center;
	font-size: 18px;
}

#main-contents .secondary-mail #mail-form{
	width: 970px;
}
#main-contents .secondary-mail #mail-form li {
	height: auto;
}
#main-contents .secondary-mail .form-txt,
#main-contents .secondary-mail .form-textarea{
	width: 650px;
	background: #fff;
}
#main-contents .secondary-mail .ssl-txt {
	line-height: 3;
}
#main-contents .secondary-mail .ssl-txt a{
	color: #fff;
	text-decoration: underline;
}

#main-contents .secondary-mail #mail-form li p{
	padding-left: 290px;
}
#main-contents .secondary-mail .ssl-table{
	width: 100%;
	margin: 0;
}
#main-contents .secondary-mail #mail-form #form-submit{
	padding: 0;
	width: 500px;
	height: 70px;
}
#main-contents .secondary-mail #mail-form .form-name2{
	width: 250px;
	padding: 0 0 0 40px;
	background-position: 210px center;
}
#main-contents .secondary-mail #mail-form .form-name1{
	width: 250px;
	padding: 0 0 0 40px;
}
#main-contents .secondary-mail #mail-form .ssl-table .white-base{
	display: inline-block;
	width: 180px;
	background: #fff;
}

/*ズームアイコン*/
#main-contents .zoom{
	position: relative;
}

#main-contents .zoom a::after{
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	width: 40px;
	height: 40px;
	background: url(../img/partition02/ico_case_zoom.gif) 50% 50% no-repeat #fff;
	cursor: pointer;
}

/*ボタン*/
#main-contents .box_btn{
	display: table;
	position: relative;
	width: 620px;
	margin: 0 auto;
}

#main-contents .box_btn a{
	display: table-cell;
	vertical-align: middle;
	height: 100px;
	font-size: 28px;
	font-weight: bold;
	color: #fff;
	background: #a30000;
	border-radius: 9px;
	text-align: center;
}
#main-contents .box_btn a:hover{
	color: #fff;
}

#main-contents .box_btn .img{
	position: absolute;
	top: -20px;
	right: -10px;
}

#main-contents .box_btn .txt{
	padding: 0 0 0 22px;
	background: url(../img/partition02/ico_arw_w.png) 0 50% no-repeat;
	background-size: 7px auto;
}

#main-contents .secondary-mail .form-name2 {
    background: url(../img/from-required.gif) no-repeat 140px;
}

/* ナビ */
#main-contents .nav_area{
    margin: 0 0 120px;
}

#main-contents .nav_area ul{
	display: flex;
	justify-content: space-between;
	width: 1100px;
	height: 60px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
    border-left: 1px solid #dabb70;
}

#main-contents .nav_area ul li{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-grow: 1;
	position: relative;
	font-size: 14px;
    font-weight: bold;
    border-right: 1px solid #dabb70;
}
#main-contents .nav_area ul li:first-child::before{
	right: auto;
	left: 0;
}
#main-contents .nav_area ul li br{
    display: none;
}

#main-contents .nav_area ul li a{
	display: block;
	padding: 15px 0;
	background: url(../img/partition02/ico_arwdown.png) 50% 100% no-repeat;
	background-size: 10px auto;
	transition: opacity 0.2s;
}
#main-contents .nav_area ul li a:hover{
	opacity: 0.7;
    color: #a30000;
}

/* cv_btn */


#main-contents .cv_btn{
	display: table;
	position: relative;
	margin: 0 auto 140px;
}

#main-contents .cv_btn a{
	display: table-cell;
	vertical-align: middle;
	height: 120px;
	padding: 0 126px;
	border-radius: 9px;
	font-size: 28px;
	font-weight: bold;
	color: #fff;
	background: linear-gradient(90deg, #f24a00 0,#f27200 50%, #f24a00 100%);
}

#main-contents .cv_btn a span.txt{
	padding-left: 52px;
	background: url(../img/partition02/ico_mail.png) 0 50% no-repeat;
	background-size: 36px auto;
}

#main-contents .cv_btn .img{
	position: absolute;
	top: -30px;
	right: -30px;
}

/* こんなお悩みありませんか？ */
#main-contents .trouble_head{
	position: relative;
	background: #1d1c22;
	text-align: center;
	padding: 84px 0 67px;
}

#main-contents .trouble_head:after{
	content:"";
	position: absolute;
	z-index: 1;
	left: calc( 50% - 42px );
	bottom: -20px;
	width: 84px;
	height: 22px;
	background: #1d1c22;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
}

#main-contents .trouble_head .catch{
	font-size: 24px;
	color: #d2a462;
	font-weight: bold;
	line-height: 2.125;
}

#main-contents .trouble_head h2{
	display: table;
	margin: 0 auto;
	font-size: 34px;
	color: #fff;
	font-weight: bold;
	line-height: 1.8;
	background: url(../img/partition02/bg_border_bottom.png) 0 100% repeat-x;
}

#main-contents .trouble_content{
	padding: 70px 0 100px;
	background: url(../img/partition02/bg_cv01.jpg) 0 0 repeat;
}

#main-contents .trouble_content ul.trouble_list{
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 10px -25px;
	padding: 0;
	list-style-type: none;
}

#main-contents .trouble_content ul.trouble_list li{
	display: flex;
	align-items: center;
	width: 350px;
	margin: 0 0 50px 25px;
}

#main-contents .trouble_content ul.trouble_list li .img{
	width: 100px;
	margin: 0 20px 0 0;
}

#main-contents .trouble_content ul.trouble_list li .txt{
	width: calc( 100% - 120px );
	font-size: 20px;
	color: #1d1c22;
	line-height: 1.5;
}

#main-contents .trouble_content ul.trouble_list li .txt .txt_red{
	color: #102965;
    font-weight: bold;
}

#main-contents .trouble_catch{
	position: relative;
}

#main-contents .trouble_catch .content{
	background: #fff;
	text-align: center;
	padding: 45px 0 52px;
}

#main-contents .trouble_catch .content .catch{
	font-size: 24px;
	line-height: 2.0;
	margin: 0 0 29px;
}

#main-contents .trouble_catch .content .catch strong{
	font-size: 34px;
	line-height: 1.6;
	color: #a30000;
	font-weight: bold;
}

#main-contents .trouble_catch .content .lead{
	font-size: 18px;
	line-height: 2.0;
}

#main-contents .trouble_catch .img01,
#main-contents .trouble_catch .img02,
#main-contents .trouble_catch .img03,
#main-contents .trouble_catch .img04{
	position: absolute;
	z-index: 1;
}

#main-contents .trouble_catch .img01{
	left: -40px;
	top: 40px;
}
#main-contents .trouble_catch .img02{
	right: 54px;
	top: 41px;
}
#main-contents .trouble_catch .img03{
	left: 60px;
	bottom: -19px;
}
#main-contents .trouble_catch .img04{
	right: -40px;
	bottom: -20px;
}

/* ラインナップ追加 */
#main-contents .lineup_bg{
	padding: 100px 0;
	background-position: 50% 50%;
	background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
    color: #fff;
}

#main-contents .lineup_bg.type01{
	background-image: url(../img/partition02/bg_lineup_type01.jpg);
}
#main-contents .lineup_bg.type02{
	background-image: url(../img/partition02/bg_lineup_type02.jpg);
}

#main-contents .lineup_bg .catch{
	font-size: 18px;
	color: #dabb70;
	line-height: 1.8;
	text-align: center;
	margin: 0 0 4px;
}

#main-contents .lineup_bg h2{
	display: table;
	margin: 0 auto 40px;
	padding: 0 0 1px;
	text-align: center;
	font-weight: bold;
	font-size: 34px;
	line-height: 1.8;
	background: url(../img/partition02/bg_border_bottom.png) 0 100% repeat-x;
}

#main-contents .lineup_bg .lead{
	margin: 0 0 52px;
}

#main-contents .lineup_bg .lead p{
	font-size: 22px;
	line-height: 1.8;
}

/* レイアウトプラン作成から施工まで */
#main-contents .flow_area{
	padding: 90px 0 90px;
	background: #fff;
}

#main-contents .flow_area .tit_area{
	margin-bottom: 35px;
}

#main-contents .flow_area .catch{
	margin: 0 0 40px;
	font-size: 28px;
	line-height: 1.8;
	font-weight: bold;
	text-align: center;
}

#main-contents .flow_area .btns{
	display: flex;
	height: 129px;
	margin: 0 auto 30px;
	background: #fff;
}

#main-contents .flow_area .btns li{
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	flex-grow: 1;
	font-size: 18px;
	color: #807d79;
	border-top: 1px dotted #443f34;
	border-bottom: 1px dotted #443f34;
	cursor: pointer;
}
/*右arw*/
#main-contents .flow_area .btns li::before{
	content: "";
	position: absolute;
	top: 0;
	left: 100%;
	width: 21px;
	height: 100%;
	background: url(../img/layout/bg_flow_btn.png) 0 0 no-repeat;
	background-size: 100% 100%;
}

#main-contents .flow_area .btns li:nth-child(1){
	flex-grow: 0;
	width: 210px;
	border-left: 1px dotted #443f34;
	z-index: 5;
}

#main-contents .flow_area .btns li:nth-child(2){
	z-index: 4;
}

#main-contents .flow_area .btns li:nth-child(3){
	z-index: 3;
}

#main-contents .flow_area .btns li:nth-child(4){
	z-index: 2;
}

#main-contents .flow_area .btns li:nth-child(5){
	border-right: 1px dotted #443f34;
	z-index: 1;
}
#main-contents .flow_area .btns li:nth-child(5)::before{
	display: none;
}

#main-contents .flow_area .btns li.active{
	color: #fff;
	background: #443f34;
}

#main-contents .flow_area .btns li.active::before{
	width: 0;
	height: 0;
	background: none;
	border-left: 21px solid #443f34;
	border-top: 64.5px solid transparent;
	border-bottom: 64.5px solid transparent;
}
/*下arw*/
#main-contents .flow_area .btns li::after{
	content: "";
	position: absolute;
	top: 100%;
	left: calc(50% - 10px);
	border-top: 0 solid #443f34;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
}
#main-contents .flow_area .btns li.active::after,
#main-contents .flow_area .btns li:hover::after{
	border-top: 10px solid #443f34;
	transition: border-top 0.3s ease-out;
}

#main-contents .flow_area .btns span{
	display: block;
	min-width: 30px;
	margin: 0 0 10px;
	padding: 0 0 40px;
	line-height: 1;
	letter-spacing: 0.1em;
	font-size: 10px;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: bold;
	background: url(../img/layout/ico_flow.png) 50% 100% no-repeat;
	background-size: 30px auto;
}

#main-contents .flow_area .btns li[data-btns="step02"] span {
	background: url(../img/layout/ico_flow02.png) 50% 100% no-repeat;
	background-size: 35px auto;
}

#main-contents .flow_area .btns li[data-btns="step03"] span {
	background: url(../img/layout/ico_flow03.png) 50% 100% no-repeat;
	background-size: 29px auto;
}

#main-contents .flow_area .btns li[data-btns="step04"] span {
	background: url(../img/layout/ico_flow04.png) 50% 100% no-repeat;
	background-size: 30px auto;
}

#main-contents .flow_area .btns li[data-btns="step05"] span {
	background: url(../img/layout/ico_flow05.png) 50% 100% no-repeat;
	background-size: 34px auto;
}

#main-contents .flow_area .btns em{
	margin: 0 0 0 0.2em;
	font-size: 130%;
	font-style: normal;
}

#main-contents .flow_area .btns li.active span{
	background: url(../img/layout/ico_flow_active.png) 50% 100% no-repeat;
	background-size: 30px auto;
}

#main-contents .flow_area .btns li.active[data-btns="step02"] span {
	background: url(../img/layout/ico_flow02_active.png) 50% 100% no-repeat;
	background-size: 35px auto;
}

#main-contents .flow_area .btns li.active[data-btns="step03"] span {
	background: url(../img/layout/ico_flow03_active.png) 50% 100% no-repeat;
	background-size: 29px auto;
}

#main-contents .flow_area .btns li.active[data-btns="step04"] span {
	background: url(../img/layout/ico_flow04_active.png) 50% 100% no-repeat;
	background-size: 30px auto;
}

#main-contents .flow_area .btns li.active[data-btns="step05"] span {
	background: url(../img/layout/ico_flow05_active.png) 50% 100% no-repeat;
	background-size: 34px auto;
}

#main-contents .flow_area .conts{
	margin: 0 0 25px;
	padding: 50px;
	border-radius: 18px;
	background: rgba(55,41,30,0.1) url(../img/layout/bg_02.png);
}

#main-contents .flow_area .conts li{
	display: none;
	justify-content: space-between;
	width: 100%;
	
}
#main-contents .flow_area .conts li.active{
	display: flex;
}

#main-contents .flow_area .conts h3{
	position: relative;
	padding: 0 0 30px;
	margin: 0 0 30px;
	font-size: 18px;
}

#main-contents .flow_area .conts h3::before{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 30px;
	border-top: 1px dotted #cc0013;
}

#main-contents .flow_area .conts .txt_area p{
	font-size: 14px;
	color: #666461;
}

#main-contents .flow_area .conts .txt_area p.indet{
	text-indent: -1em;
	padding-left: 1em;
}

#main-contents .flow_area .conts .img{
	margin-left: 50px;
}

#main-contents .flow_area .txt_btm{
	font-size: 18px;
	line-height: 1.8;
	margin: 0 0 62px;
}

/* 固定バナー */
.fixbnr {
    position: fixed;
    z-index: 10;
    left: 30px;
    bottom: 30px;
}
.fixbnr a {
    filter: drop-shadow(2px 2px 5px #333);
}
.fixbnr a:hover {
    opacity: 0.9;
    transition: opacity .2s;
    }
.fixbnr .close{
    position: absolute;
    z-index: 1;
    right: -22px;
    top: -20px;
    width: 36px;
    height: 36px;
    border-radius: 100%;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url(../img/btn_close.png) 50% 50% no-repeat;
    background-size: contain;
    cursor: pointer;
    opacity: 1;
    visibility: visible;
    transition: opacity .2s;
}
.fixbnr.active {
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s;
}


/* --- モーダル（拡大表示）のスタイル --- */

/* --- モーダル（拡大表示）のスタイル --- */

/* モーダルの背景 */
.modal {
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.9);
    
    /* 画像を中央に配置するための設定 */
    display: flex;
    justify-content: center;
    align-items: center;
    
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* モーダルが表示されるときのスタイル */
.modal.show {
    opacity: 1;
    visibility: visible;
}

/* 拡大表示される画像（id="modal-image"） */
#modal-image {
    /* 画面に対して可能な限り大きく表示 */
    max-width: 95vw;   /* 画面幅の95%を最大幅に */
    max-height: 95vh;  /* 画面高さの95%を最大高に */
    object-fit: contain;
    
    /* 影をつけて画像を立体的に見せる */
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.25);
    border-radius: 4px; /* 少しだけ角を丸くする */
    
    /* アニメーション */
    animation: zoomIn 0.3s ease;
}

/* 閉じるボタン */
.close-button {
    position: absolute;
    top: 15px;      /* 少し上に配置 */
    right: 20px;    /* 少し左に配置 */
    color: #333;
    font-size: 45px;
    font-weight: bold;
    cursor: pointer;
    transition: color 0.3s ease;
}

.close-button:hover,
.close-button:focus {
    color: #000;
    text-decoration: none;
}

/* モーダル表示時のアニメーション */
@keyframes zoomIn {
    from {
        transform: scale(0.8);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

/* よくあるご質問 */
.sr_faq_blinds p.tit_blinds span {
	float: right;
	font-size: 14px;
	font-weight: normal;
	background: url(../img/arw.png) 0 50% no-repeat;
	padding: 0 0 0 14px;
	margin: 14px 0 0 0;
}

.sr_faq_blinds {
	clear: both;
}
.sr_faq_blinds p.tit_blinds {
	letter-spacing: normal;
	font-size: 28px;
	font-weight: 700;
	margin: 0 0 30px;
}
.sr_faq_blinds dl.list_faq_blinds {
	padding: 0;
	margin: 0;
}

.sr_faq_blinds dl.list_faq_blinds dt ,
.sr_faq_blinds dl.list_faq_blinds dd {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2em;
	padding: 0 0 0 55px;
	margin: 0;
	position: relative;
}

.sr_faq_blinds dl.list_faq_blinds dt {
	font-weight: bold;
}

.sr_faq_blinds dl.list_faq_blinds dd {
	margin: 10px 0 30px;
}

.sr_faq_blinds dl.list_faq_blinds dt:before ,
.sr_faq_blinds dl.list_faq_blinds dd:before {
	display: block;
	width: 35px;
	height: 35px;
	line-height: 35px;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	text-align:center;
	position: absolute;
	left: 0;
	top: 0;
	border: 1px solid #162b5f;
}

.sr_faq_blinds dl.list_faq_blinds dt:before {
	content: "Q";
	color: #FFF;
	background: #162b5f;
}

.sr_faq_blinds dl.list_faq_blinds dd:before {
	content: "A";
	color: #162b5f;
	background: #FFF;
}