@charset "UTF-8";
/*
Theme Name: 岩本繊維
Author: kdf
Description: 岩本繊維
Version:1.5
License: GNU General Public License v2 or later
License URI: LICENSE
*/


body {
margin: 0;
font-family: "Noto Sans JP", sans-serif;
/* font-family: '游ゴシック Medium', '游ゴシック体', 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, 'MS PGothic', 'ＭＳ Ｐゴシック', sans-serif; */
font-size: 16px;
-webkit-text-size-adjust: 100%;
font-weight: 400;
line-height: 1.7em;
background-color: #ffffff;
color: #333333;
background-color: inherit;
text-align: justify;
letter-spacing: 0.08em;
}

body,html{padding: 0 ;margin: 0!important}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
}

*{
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}

/* テキスト */
h1{font-size: 1.75em;font-weight: 500;}
h2 {font-size: 1.5em;font-weight: 500;}
h3 {font-size: 1.25em;font-weight: 400;}
h4 {font-size: 1.125em;font-weight: 400;}
h5 {font-size: 1em;font-weight: 400;}
h6 {font-size: 0.85em;font-weight: 400;}

h1,h2,h3,h4,h5,h6{margin:0 0 10px;}

@media only screen and (max-width:520px){
h1 {font-size: 1.5em;}
h2 {font-size: 1.25em;}
h3 {font-size: 1.125em}
h4 {font-size: 1em}
h5 {font-size: 0.85em}
}

.mincho{
font-family: "游明朝","Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 300;
}



button, input, label, select, textarea{
font-family: inherit;
font-size: 1em;
}

img{max-width: 100%;height: auto;}
a img{
transition: .6s ease;
-webkit-transition: .6s ease;
-ms-transition: .6s ease;}
a img:hover{opacity: .7;}



ul{padding: 0;margin: 0}
ul li{list-style:none}
a{text-decoration: none;color: #727171;}
p{margin:0 0 1em;}
.bold{font-weight:600}
.sp{display: none!important;}
.ipSp{display: none!important;}

@media only screen and (max-width:768px){
.ip{display: none!important;}
.ipSp{display: inherit!important;}
}

@media only screen and (max-width:480px){
.sp{display: inherit!important;}
.pc{display: none!important;}
}

.d-flex{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
}

.d-flex-around{justify-content: space-around;}
.d-flex-start{justify-content: flex-start;}
.d-flex-end{justify-content: flex-end;}
.d-flex-center{justify-content: center;}
.align-center{align-items: center;}
.align-end{align-items: end;}
.flex-reverse{flex-wrap: wrap-reverse;}
.text-center {text-align: center;}
.text-right{text-align: right;}
.text-justify{text-align: justify;}

p.text-center,.text-center p{line-height: 1.8em;}

.col2{width: 48%;margin-bottom: 30px;}
.col2:last-of-type{margin-bottom: 0;}
.col3{width: 30%;margin: 0 5% 30px 0;}
.col3:nth-of-type(3n){margin-right: 0;}
.col4{width: 22%;margin: 0 4% 50px 0;}
.col4:nth-of-type(4n){margin: 0 0 50px 0;}
.col5{width: 18%;margin: 0 2.5% 20px 0;}
.col5:nth-of-type(5n){margin: 0 0 20px 0;}

@media only screen and (max-width:768px){
.col2{width: 100%;}
.col3,.col4,.col5{width: 48%;margin: 0 4% 20px 0;}
.col3:nth-of-type(2n),
.col4:nth-of-type(2n),
.col5:nth-of-type(2n){margin-right: 0;}
.col2:last-child,
.col3:last-child{margin-bottom: 0;}
.col4:nth-of-type(4n),
.col5:nth-of-type(5n){margin: 0 0 20px 0;}

}

@media only screen and (max-width:520px){
.col3{width: 100%;margin: 0 0 30px 0;}
}


.clear{clear: both;}
.bold{font-weight:bold;}
.normal{font-weight: normal!important;}
.pink{color: #ff6e96}
.red{color: #d9382b}
.orange{color: #ec6c00}
.yellow{color: #f7b52c}
.green{color: #8dc21f}
.blue{color: #0082c8}
.white{color: #ffffff}
.black{color:#727171}
.darkgray{color: #b4b4b5;}


/* ------------------------------------------------
外枠
------------------------------------------------
*/ 

.container-inner{
max-width: 1240px;
padding: 0 20px;
margin: 0 auto;
}

.container-min-inner{
max-width: 1000px;
margin: 0 auto;
}

.page-top{
margin-top: 50px;
}


/* margin */
.mb-1{margin-bottom: 10px;}
.mb-2{margin-bottom: 20px;}
.mb-3{margin-bottom: 30px;}
.mb-4{margin-bottom: 40px;}
.mb-5{margin-bottom: 50px;}
.mb-6{margin-bottom: 60px;}
.mb-7{margin-bottom: 70px;}
.mb-8{margin-bottom: 80px;}
.mb-9{margin-bottom: 90px;}
.mb-10{margin-bottom: 100px;}

@media only screen and (max-width:520px){
.mb-5{margin-bottom: 30px;}
.mb-6{margin-bottom: 40px;}
.mb-7{margin-bottom: 50px;}
.mb-8{margin-bottom: 60px;}
.mb-9{margin-bottom: 70px;}
.mb-10{margin-bottom: 80px;}
}


/* ------------------------------------------------
共通箇所
------------------------------------------------
*/

/* ------------------------------------------------
header 
------------------------------------------------
*/ 

header{
padding: 20px 0;
background-color: rgb(255,255,255,0.8);
position: sticky;
top: 0;
z-index: 220;
width: 100%;
}

#header-logo{
width: 210px;
height: auto;
z-index: 210;
line-height: 0;
}

header nav,
.header-nav,
ul.grand-menu{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}


ul.grand-menu li{
margin-left: 30px;
font-size: 14px;
}

ul.grand-menu li:first-child{margin: 0;}

ul.grand-menu li a{
padding: 0.5em 0.2em;
display: inline-block;
}

ul.grand-menu li a{
position: relative;
transition: all .4s ease;
}

ul.grand-menu li a:hover{
color: #a48b78;
cursor: pointer;
}

ul.grand-menu li a:before{
background-color: #a48b78;
content: "";
width: 100%;
height: 1px;
position: absolute;
left: 0;
bottom: 0;
margin:auto;
transform-origin: right top;
transform: scale(0,1);
transition: transform .2s;
}

ul.grand-menu li a:hover:before{
transform-origin: left top;
transform: scale(1,1);
}

ul.grand-menu li .sub-menu{
position: absolute;
visibility: hidden;
transition: all .4s ease;
left: 0;
width: 160px;
border: 1px solid #727171;
background-color: #ffffff;
opacity: 0;
}

ul.grand-menu li .sub-menu li .sub-menu{
position: absolute;
visibility: hidden;
transition: all .4s ease;
top: 0;
left: 160px;
width: 160px;
background-color: #a48b78;
opacity: 0;
}

ul.grand-menu li{
position: relative;
}

ul.grand-menu li .sub-menu li{
border-bottom: 1px solid #727171;
}

ul.grand-menu li .sub-menu li:last-of-type{
border: none;
}

ul.grand-menu li:hover .sub-menu,
ul.grand-menu li .sub-menu li:hover .sub-menu{
display: block;
visibility: visible;
transition: all .4s ease;
opacity: 1;
}

ul.grand-menu .sub-menu li{
font-size: 14px;
margin-left: 0;
}

.sub-menu li a{
display: block!important;
padding: 0.5em!important;
}

ul.grand-menu li .sub-menu li a:hover{
background-color: #a48b78;
color: #ffffff;
transition: .5s;
}

ul.grand-menu li .sub-menu li a:hover:before{
transform-origin: 0;
transform: scale(0);
}


header .sns-area{display: none;}

.ham,.black-bg{display: none;}

@media only screen and (max-width:1200px){
ul.grand-menu li{
margin-left: 20px;
font-size: 12px;
}
}

@media only screen and (max-width:1000px){
#header-logo{width: 160px;}
ul.grand-menu li{font-size: 10px;}
}

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

header{padding: 15px 0 10px;}

.ham {
position: relative;
width: 32px;
height: 32px;
cursor: pointer;
display: inherit;
z-index: 1000;
}

.ham_l {
position: absolute;
width: 32px;
height: 2px;
left: 0;
background-color: #a48b78;
transition: all .4s;
}

.ham_l-1 {top: 1px;}
.ham_l-2 {top: 10px;}
.ham_l-3 {top: 20px;}

.open .ham_l-1 {transform: rotate(-45deg);top: 11px;background-color: #a48b78;}
.open .ham_l-2 {opacity: 0;}
.open .ham_l-3 {transform: rotate(45deg);top: 11px;background-color: #a48b78;}


.header-nav {
position: fixed;
display: block;
right: -100%;
top: 0;
width: 50%;
height: 100vh;
background-color: #ffffff;
transition: all .4s;
z-index: 220;
overflow-y: auto;
padding: 50px 30px;
}

.open .header-nav {right: 0;}

.black-bg {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100vh;
z-index: 5;
background-color: #727171;
opacity: 0;
visibility: hidden;
transition: all 0.5s;
display: inherit;
cursor: pointer;
z-index: 100;
}

.open .black-bg {opacity: 0.6;visibility: visible;}


.header-nav ul.grand-menu{display: block;}

.header-nav ul.grand-menu li{
font-size: 13px;
margin: 0;
margin-left: 0;
}

.header-nav ul.grand-menu li a{
color: #727171;
border-bottom: 1px solid #727171;
display: block;
padding: 10px;
}

ul.grand-menu li a:before{
content: none;
}

.open ul.grand-menu {display: block;transition: .4s;}

ul.grand-menu li .sub-menu,
ul.grand-menu li .sub-menu li .sub-menu{
position: static;
display: none;
transition: all .4s ease;
left: 0;
width: auto;
background-color: #ffffff;
opacity: 0;
border: none;
}

ul.grand-menu li .sub-menu li{border: none;}


ul.grand-menu li:hover .sub-menu,
ul.grand-menu li .sub-menu li:hover .sub-menu{
display: block;
visibility: visible;
transition: all .4s ease;
opacity: 1;
}

ul.grand-menu li .sub-menu li a{
padding: 10px 10px 10px 40px!important;
}

ul.grand-menu li .sub-menu li .sub-menu li a{
padding: 10px 10px 10px 70px!important;
}

ul.grand-menu li .sub-menu li a:hover{
color: #a48b78;
background-color: #ffffff;
transition: .5s;
}

header .sns-area{
display: inherit;
width: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
margin-top: 20px;
}
.sns-area li {width: 35px;margin-right: 15px;}
}


@media only screen and (max-width:520px){
.header-nav{width: 70%;padding: 50px 20px;}
}


/* 業務用のブログ */
.business-header .nav-wrapper{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

.telBtn{
font-size: 0.875em;
text-align: center;
margin: 0 30px;
line-height: 1.6em;
}

.telBtn span{font-size: 2em;}

.mailBtn{
display: inline-block;
text-align: center;
}

.mailBtn a{
color: #ffffff;
display: block;
background: #9ec7ce;
border: 1px solid #9ec7ce;
padding: 10px;
transition: ease .4s;
}

.mailBtn a:hover{
color: #9ec7ce;
background: #ffffff;
}

@media only screen and (max-width:820px){
.telBtn{font-size: 0.625em;}
.mailBtn{font-size: 0.75em;}
.mailBtn a{padding: 5px;}
}

@media only screen and (max-width:768px){
.telBtn{
font-size: 0.875em;
text-align: left;
margin: 20px 0;
}

.mailBtn{font-size: 1em;}
.mailBtn a{padding: 10px;}

}





/* ------------------------------------------------
footer
------------------------------------------------
*/ 
footer{
padding: 30px 0;
border-top: 5px solid #dcdcdc;
margin-top: 50px;
}


.footer-col{width: 45%;}
.footer-nav{width: 50%;}

.footer-logo{width: 240px;}

.footer-col p{
font-size: 0.75em;
line-height: 1.5em;
margin: 0;
}

.footer-col p:first-of-type{
font-size: 15px;
}

.footer-nav .d-flex{
justify-content: flex-end;
}

footer .footer-menu{
width: 60%;
margin-right: 30px;
}

footer ul.grand-menu li .sub-menu{
left: auto;
right: 0;
top: -130px;
opacity: 0;
}

.footer-menu ul.grand-menu li{
font-size: 12px;
margin-left: 0;
}

.footer-menu ul.grand-menu li a{
padding: 0.2em;
}

.sns-area{width: 5%;}

p.copyright{
font-size: 12px;
text-align: right;
margin: 0;
}

ul.footer-sub-menu{
justify-content: flex-end;
}

ul.footer-sub-menu li{
font-size: 12px;
margin-left: 15px;
}


@media only screen and (max-width: 1000px){
footer .footer-menu{
width: 80%;
margin-right: 20px;
}
.sns-area{width: 8%;}
}


@media only screen and (max-width: 768px){
.footer-col,
.footer-nav{width: 100%;}
.footer-logo{width: 200px;}

.footer-nav{margin-bottom: 0;}

footer .footer-menu,
footer .sns-area{display: none;}

p.copyright{text-align: center;margin-top: 10px;}

}


@media only screen and (max-width: 480px){
ul.footer-sub-menu{justify-content: flex-start;}
ul.footer-sub-menu li{margin-right: 15px;margin-left: 0;}
}




/* ------------------------------------------------
content
------------------------------------------------
*/

/*----------------------------
コンテンツ
----------------------------*/

/* アニメーション設定*/
.fadein{
opacity: 0;
transform: translate3d(0, 40px, 0);
}

.fadein.is-active{
opacity: 1;
transform: translate3d(0, 0, 0);
transition: 1s;
}


/*----------------------------
パンくず
----------------------------*/
ul.breadcrumb{
font-size:0.85714em;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin: 30px 0;
}

ul.breadcrumb li:not(:first-child){
margin-left: 10px;
}

ul.breadcrumb li:not(:first-child)::before{
content: "/";
padding-right: 10px;
}

ul.breadcrumb li:last-child::after{content: ""}
ul.breadcrumb li:last-child{color: #b4b4b5}


@media only screen and (max-width:768px){
ul.breadcrumb{justify-content: flex-start;font-size: 0.677em;margin: 30px 0;}
}


/*----------------------------
pagination
----------------------------*/
.pagination {text-align: center;}

.nav-links{
display: flex;
justify-content: center;
flex-wrap: wrap;
}

.pagination .page-numbers {
display: flex;
align-items: center;
justify-content: center;
width: 35px;
height: 35px;
margin: 0 15px 20px 0;
color: #727171;
background: #ffffff;
border: 1px solid #727171;
border-radius: 5px;
line-height: 0;
}

.pagination .next.page-numbers{margin-right: 0;}

.pagination a:hover{
transition: .3s;
background: #a48b78;
border: 1px solid #a48b78;
color: #ffffff;
}

.pagination .current {
display: flex;
align-items: center;
justify-content: center;
width: 35px;
height: 35px;
color: #ffffff;
background: #a48b78;
border: 1px solid #a48b78;
border-radius: 5px;
}

.pagination .dots {background: transparent;}




/* ------------------------------------------------
ブログ
------------------------------------------------
*/
.archive-post{width: 22%;margin: 0 4% 50px 0;}
.archive-post:nth-child(4n){margin: 0 0 50px 0;}

.post-thumbnail {
overflow: hidden;
line-height: 0;
margin-bottom: 10px;
display: block;
position: relative;
}

.post-thumbnail img{
position: absolute;
width: 100%;
height: 100%;
top: 0;
object-fit: cover;
}

.post-thumbnail:before {
content: "";
display: block;
padding-top: 100%;
}

.archive-post img{transition: transform .4s;}

.archive-post a:hover img{
transform: scale(1.1);
-webkit-transform: scale(1.1);
opacity: 1;
transition: .4s;
}

.post-description h3{
font-size: 1.125em;
font-weight: 600;
line-height: 1.6em;
margin-bottom: 0.2em;
transition: ease .4s;
}

.post-description p{
font-size: 0.875em;
line-height: 1.5em;
transition: ease .4s;
}

.post-description .post-time{
text-align: right;
margin-bottom: 0;
}

@media only screen and (max-width: 1200px){
.archive-post{width: 22%;margin: 0 4% 50px 0;}
}

@media only screen and (max-width: 768px){
.archive-post{width: 48%;margin-bottom: 25px;} 
.archive-post:nth-child(2n){margin:0 0 25px 0}
}

@media only screen and (max-width: 520px){
.post-description h3{font-size:1em;line-height:1.5em}
.post-description .d-flex span:first-child{font-size:0.85714em;}
.post-description .d-flex span:last-of-type{font-size: 0.714289em;}
.post-description p{font-size:0.85714em;;line-height: 1.6em;}
}



/* ------------------------------------------------
共通箇所
------------------------------------------------
*/
.main-tit{
font-size: 1.5em;
margin-bottom: 40px;
text-align: center;
margin-bottom: 20px;
}

.Pagemain{
position: relative;
margin-bottom: 50px;
}

.Pagemain img{width: 100%;}

.page-tit{
font-size: 2em;
font-weight: 500;
color: #ffffff;
text-align: center;
position: absolute;
width: 100%;
padding: 10px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%,-50%);
text-shadow: 2px 2px 4px #333333;
}

.sub-tit{
font-size: 1.75em;
font-family: "游明朝","Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 600;
color: #ffffff;
letter-spacing: 0.15em;
background: url(./images/common/tit_backP.jpg);
background-size: cover;
text-align: center;
background-repeat: no-repeat;
padding: 15px 20px;
margin-bottom: 20px;
}


@media only screen and (max-width: 1000px){
.page-tit{font-size: 1.25em;margin: 0 auto 50px;}
.Pagemain img{
height: 200px;
object-fit: cover;
}
}

@media only screen and (max-width: 520px){
.main-tit{font-size: 1.25em;margin-bottom: 20px;}
.Pagemain{margin-bottom: 30px;}
.page-tit{font-size: 1.125em;margin: 0 auto 20px;}
.Pagemain img{height: 150px;}
.sub-tit{font-size: 1.25em;}
}



/* ------------------------------------------------
投稿ページ
------------------------------------------------
*/

.col--l .content{width: 65%;}
.sidebar{width: 30%;margin-top: 50px;}

@media only screen and (max-width: 768px){
.col--l .content{width: 100%;}
.col--l .sidebar{display: none;}
}

.col--l .content p a{
color: #e4baad;
}


@media only screen and (max-width: 768px){
.col--l .content{width: 100%;}
.col--l .sidebar{display: none;}
}

.post-item{margin-top: 50px;}


.post-categories,
.post-tags{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.post-categories li{
font-size: 0.75em;
margin-bottom: 10px;
margin-right: 10px;
}

.post-categories li a{
display: block;
line-height: 1.5em;
color: #85a282;
border: 1px solid #85a282;
padding: 2px 8px;
border-radius: 50px;
transition: ease .4s;
}

.post-categories li a:hover{
color: #ffffff;
background:#85a282;
}

.post-tags li{
font-size: 0.75em;
letter-spacing: 0.1em;
text-align: center;
display: inline-block;
margin-right: 10px;
}

.post-tags li a{color:#b4b4b5;}
.post-tags li a::after{content: ",";}
.post-tags li:last-of-type a::after{content: none;}
.post-tags li{margin-right: 5px;}

@media only screen and (max-width: 768px){
.post-item{margin-top: 30px;}
}



/* ------------------------------------------------
sidebar
------------------------------------------------
*/ 
.sidebar .side-area{margin-bottom: 50px;}

.sidebar h3{
font-size: 1.25em;
text-align: center;
letter-spacing: 0.1em;
line-height: 1.1em;
}

.sidebar .side-active select{
color: #727171;
border: 1px solid #727171;
width: 100%;
padding: 5px
}

.sidebar .archive-post{width: 100%;margin: 0;}

.post-area article a{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
padding: 10px 0;
}

.post-area .post-thumbnail{
width: 30%;
overflow: hidden;
margin-bottom: 0;
}

.post-area .post-thumbnail img{
width: 100%;
height: 100%;
object-fit: cover; 
}

.post-area article .post-description{width: 65%;}

.post-area article h4{
font-size:1em;
margin: 0;
}

.post-area article p{
font-size: 0.875em;
margin: 0;
}

.sidebar .post-time{
text-align: justify;
}


.sidebar ul li{
border-bottom: 4px dotted #e4baad;

}

.sidebar ul li a{
display: block;
padding: 5px 0;
}


@media only screen and (max-width: 520px){
.post-area .post-thumbnail{
width: 30%;
height: 80px;
}

.post-area article .post-description{width: 66%;}

}


/* 検索フォーム */
.search-container {
box-sizing: border-box;
position: relative;
border: 1px solid #dcdddd;
width: 100%;
overflow: hidden;
margin-bottom: 50px;
}

.search-container input[type="text"] {
border: none;
padding: 6px;
width: 100%;
}

.search-container input[type="text"]:focus {
outline: 0;
}

.search-container input[type="submit"] {
cursor: pointer;
background-image: url(./images/common/search.svg);
background-size: 20px;
background-repeat: no-repeat;
background-color: #ffffff;
background-position: 16px 17px;
font-size: 1.3em;
border: none;
position: absolute;
width: 2.5em;
height: 2.5em;
right: 0;
top: -8px;
outline: none;
}

@media only screen and (max-width: 768px){
.search-container{width: 50%;margin: 0 auto 5%}
}

@media only screen and (max-width: 480px){
.search-container{width: 60%;}
}

.sidebar .side-active select{
width: 100%;
padding: 5px
}



@media only screen and (max-width: 520px){
.page-article{margin-top: 30px;margin-bottom: 15px;}
.previous-article,
.next-article{width: 100%;}
.previous-article{margin-bottom: 20px;}
.previous-article a::before,
.next-article a::after{padding-left: 11px;height: 11px;}
.side-area{margin-bottom: 20px;}
}


/* 前のブログのデザインの要素 */
.col--l .content h1,
.col--l .content h2,
.col--l .content h3,
.col--l .content h4,
.col--l .content h5,
.col--l .content h6{
font-family: "游明朝","Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif!important;
font-weight: 400;
text-align: left;
margin-bottom: 1em;
}

.col--l .content p,
figure{
text-align: left;
margin-bottom: 1.5em;
}

.col--l .content h2 {
font-size: 1.5em;
font-weight: normal ;
padding: 10px 20px;
border: solid 1px #e4baad;
}

.col--l .content h3 {
font-size: 1.25em;
font-weight: 600;
letter-spacing: 1px ;
border-left: solid 10px #e4baad;
border-bottom: 2px dotted #e4baad;
padding: 10px 0 10px 15px;
}

.col--l .content h4,
.col--l .content span{
font-weight: 600;
}

.col--l .content table{
width: 100% !important;
border-top: 1px solid #b5b5b6;
border-left: 1px solid #b5b5b6;
border-collapse: collapse;
margin-bottom: 30px;
}

.col--l .content table th,
.col--l .content table td{
width: 100%;
border-right: 1px solid #b5b5b6;
border-bottom: 1px solid #b5b5b6;
padding: 2%;
}

.col--l .content table th{
font-weight: bold;
width: 20%;
text-align: left;
}


/* 前のブログ引き継ぎ */
.kiji1{
    background: none !important;
    padding: 0 0 10px 0 !important;
}

.kiji1_img {
    width: 55%;
}

.kiji1_txt {
    width: 40%;
}

.kiji1_img img {
    width: 100%;
}

.kiji_day {
    text-align: right;
    margin: 0 0 5%;
}

.wp_rp_content h3{
    border: none !important;
}

.kiji4,
.kiji5 {
    margin: 0 0 3%;
}

.kiji4 {
    border-left: solid 10px #a99660;
    padding: 10px 0 5px 20px;
}

.kiji5 {
    background-image: url(../img/dot_border.png);
    background-repeat: repeat-x;
    background-position: bottom;
    padding: 10px 0 5px;
}

.header2 {
    position: unset;
    background: #fff;
}

.header2_r {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.header2 .mail_btn {
    width: 285px;
    -ms-flex-item-align: center;
    align-self: center;
    margin: 0 0px 0 20px;
}

.nav1 {
    background-color: #000000b3;
}

.nav2 {
    background-color: #000000b3;
    margin: 0 0 5%;
}

.nav2-con {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 80%;
    margin: 0 auto;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    padding: 10px;
}

.nav2-con li a {
    color: #fff;
}

.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
}

.back_btn {
    background-color: #000;
    width: 35%;
    font-size: 90%;
    line-height: 1em;
    text-align: center;
    float: right;
}

.back_btn a {
    display: block;
    color: #fff;
    padding: 5% 0% 5% 0%;
    text-align: center;
}


.listtag{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}


.listtag li{
    margin: 0 10px 10px 0;
    line-height: 1em;
    font-size: 90%;
}

.listtag li a{
    display: block;
    background: #efefef;
    padding: 7px;
    border-radius: 6px;
    -webkit-transition: .3s;
    transition: .3s;
}

.listtag li a:hover{
    display: block;
    background: #7a6d48;
    color: #fff;
}


/* --------------------------------------------------------------------------------------------------------------------------------------------
*
各ページ
*
--------------------------------------------------------
------------------------------------------------------------------------------------
*/


/*----------------------------
top
----------------------------*/
#site-content-top,
.top-content{margin-top: 80px;}

.main-movie video {width: 100%;}

@media only screen and (max-width:480px) {
#site-content-top,
.top-content{margin-top: 40px;}
}


.movie video{
aspect-ratio: 16 / 9;
width: 100%;
height: auto;
}

.top-business .col3 {
cursor: pointer;
background: #dcdddd;
border-radius: 20px 20px 0 0;
border-radius: 20px;
}

.top-business .col3 .top-business-text{ 
background-color: #b5b5b6; 
padding: 30px 30px 20px;
background-blend-mode: multiply;
border-radius: 20px 20px 0 0;
}


.top-business .col3 .top-business-text h3{
font-size: 2.5em;
color: #ffffff;
font-weight: 100;
margin-bottom: 10px;
}

.top-business .col3 .top-business-text span{
font-size: 1.5em;
text-align: right;
display: block;
color: #ffffff;
width: 100%;
}

.top-business .col3 p{
color: #ffffff;
font-weight: 600;
text-align: center;
padding: 20px;
margin: 0;
}


/* 背景 */
.top-business .col3:nth-child(1) {
background: url(./images/common/back02.jpg);
}

.top-business .col3:nth-child(2) {
background: url(./images/common/back03.jpg);
}

.top-business .col3:nth-child(3) {
background: url(./images/common/back01.jpg);
}

/*オーバーレイ色 */
.top-business .col3:nth-child(1) .top-business-text {
background-color: rgba(99,116,95,0.4);
border-radius: 20px 20px 0 0;
}

.top-business .col3:nth-child(2) .top-business-text {
background-color: rgba(77,109,108,0.4);
border-radius: 20px 20px 0 0;
}

.top-business .col3:nth-child(3) .top-business-text {
background-color: rgba(124,115,101,0.4);
border-radius: 20px 20px 0 0;
}



@media only screen and (max-width:1200px) {
.top-business-tab-labels label span:first-of-type{font-size: 2em;}
.tab-tit{margin-bottom: 1em;}
.tab-tit p{width: 100%;}
.tab-tit span{font-size: 3em;top: 8px;}
}

@media only screen and (max-width:768px) {
.top-business-tab-labels label span:first-of-type{font-size: 1.25em;margin-bottom: 10px;}
.top-business-tab-labels label span:last-of-type{font-size: 1.125em;}

.top-business-tab-labels label .top-business-tab-text{padding: 12px;}
.top-business-tab-labels label p{font-size: 0.75em;padding: 12px;}
.tab-tit span{font-size: 2.5em;top: 6px;}
}


@media only screen and (max-width:650px) {
.top-business-tab-labels label,
/* タブごとのオーバーレイ色 */
#retail-tab:checked ~ .top-business-tab-labels label:nth-child(1) .top-business-tab-text,
#wholesale-tab:checked ~ .top-business-tab-labels label:nth-child(2) .top-business-tab-text,
#business-use-tab:checked ~ .top-business-tab-labels label:nth-child(3) .top-business-tab-text  {
border-radius: 10px 10px 0 0;
}
.top-business-con,
.top-business-con-inner{padding: 20px;}
.tab-tit h3{width:150px;}
.top-business-con3 .tab-tit h3{width:96px;}
.tab-tit span{font-size: 2.5em;top: 7px;}
}

@media only screen and (max-width:480px) {
.top-business-tab-labels label span:first-of-type{font-size: 1em;margin-bottom: 5px;}
.top-business-tab-labels label span:last-of-type{font-size: 0.75em;}
.top-business-tab-labels label p{font-size: 0.625em;padding: 12px;line-height: 1.4em;}
.tab-tit h3{width:100px;}
.top-business-con3 .tab-tit h3{width:66px;}
.tab-tit span{font-size: 1.5em;top: 0;}
.tab-tit p{font-size: 1.125em;}
}


/* news */
.news .news-inner{
border-bottom: 5px solid #dcdddd;
margin-bottom: 30px;
}

.news .news-inner .d-flex{
max-width: 900px;
margin: 0 auto;
}

.news .news-col{
width: 50%;
padding: 0 30px 20px 30px;
}

.news .news-col:first-of-type,
.news .news-col:nth-of-type(2){
border-bottom: 1px solid #727171;
margin-bottom: 20px;
}

.news .news-col h3,
.news .news-col p{margin-bottom: 0;}


@media only screen and (max-width:768px) {
.news .news-col{
width: 100%;
padding: 0 30px 20px 30px;
}

.news .news-col:nth-of-type(3){
border-bottom: 1px solid #727171;
margin-bottom: 20px;
}

}


.moreBtn{
font-weight: 500;
max-width: 200px;
text-align: center;
margin: 0 auto 50px;
transition: ease .5s;
}

.moreBtn a{
color: #ffffff;
display: block;
background: #e4baad;
border: 1px solid #e4baad;
padding: 10px;
transition: ease .5s;
}

.moreBtn:hover{
transform: scale(1.1);
}

.moreBtn:hover a{
color: #e4baad;
background: #ffffff;
}


/* ------------------------------------------------
fixity
------------------------------------------------
*/ 
.back-p{
background: #f9f1eb;
padding: 50px;
}

.back-s{
background: #ecf4f5;
padding: 50px 0;
}

.back-g{
background: #f3f6f2;
padding: 50px 0;
}

.back-b{
background: #f6f3f1;
padding: 50px 0;
}


@media only screen and (max-width:768px){
.back-p{padding: 30px;}
.back-s,.back-g,.back-b{padding: 30px 0;}
}

/* @media only screen and (max-width:480px){
.back-p,.back-s,.back-g{padding: 20px 0;}
} */

.pBtn{
font-size: 1.125em;
font-weight: 600;
text-align: center;
}

.pBtn a{
color: #ffffff;
display: block;
border: 1px solid #e4baad;
background: #e4baad;
padding: 20px;
text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
transition: ease .4s;
}

.pBtn a:hover{
color: #e4baad;
background: #ffffff;
text-shadow: none;
}

.fixity-beginning{
text-align: center;
margin-bottom: 50px;
}

.fixity-beginning h2{
font-size: 1.875em;
font-weight: 600;
margin-bottom: 1em;
}

.fixity-beginning p{
font-size: 1.125em;
line-height: 1.9em;
}

.fixity section{margin-bottom: 70px;}

.fixity-group h3{
background: #f9f1eb;
border-radius: 50px;
padding: 10px 25px;
}

.fixity-group h3 span{
font-size: 0.75em;
font-weight: 300;
margin-left: 1em;
}

.fixity h2 img{
height: 28px;
}

@media only screen and (max-width:520px){
.fixity-beginning h2{font-size: 1.25em;}
.fixity-beginning p{font-size: 1em;}
.fixity section{margin-bottom: 35px;}
}

.fixity-intro{
text-align: center;
margin-bottom: 40px;
}

.fixity-intro-tit{
position: relative;
margin-bottom: 35px;
}

.fixity-intro-tit h3{
font-size: 2em;
color: #ffffff;
width: 100%;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%,-50%);
margin: 0;
text-shadow: 3px 3px 4px rgba(0, 0, 0, 0.8);
}

.fixity-intro-tit h3 br{display: none;}


.fixity-reason dl{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin-bottom: 20px;
counter-increment: num;
}

.fixity-reason dl dt{
font-size: 1.5em;
font-weight: 600;
width: 50%;
color: #ffffff;
line-height: 1.4em;
background: #85a282;
border-radius: 10px 0 0 10px;
}

.fixity-reason dl dt::before{
content: counter(num);
font-size: 1.5em;
margin-right: 20px;
width: 50px;
height: 50px;
background: #debf96;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center ;
line-height: 1;
}

.fixity-reason dl dd{
width: 50%;
background: #ffffff;
border-radius: 0 10px 10px 0;
}

.fixity-reason dl dt,
.fixity-reason dl dd{
padding: 20px 40px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
align-items: center;
}

@media only screen and (max-width:920px) {
.fixity-reason dl dt,
.fixity-reason dl dd{padding: 20px;}

.fixity-reason dl dt::before{
font-size: 1.25em;
width: 40px;
height: 40px;
}

}

@media only screen and (max-width:768px) {
.fixity-reason dl dt{font-size: 1.125em;}

.fixity-reason dl dt::before{
font-size: 1.125em;
width: 30px;
height: 30px;
margin-right: 10px;
}

}

@media only screen and (max-width:620px) {
.fixity-reason dl{margin-bottom: 30px;}
.fixity-reason dl dt{font-size: 1.125em;border-radius: 10px 10px 0 0;}
.fixity-reason dl dd{border-radius: 0 0 10px 10px;}
.fixity-reason dl dt::before{
font-size: 1.25em;
width: 35px;
height: 35px;
margin-right: 15px;
}

.fixity-reason dl dt,
.fixity-reason dl dd{width: 100%;}
}


.fixity-intro-ul{
max-width: 1000px;
margin: 0 auto;
background: #ffffff;
border: 1px solid #85a282;
padding: 30px 100px;
}

.fixity-intro-ul ul li{
font-size: 1.125em;
line-height: 1.7em;
text-align: justify;
text-indent: -1em;
padding-left: 1em;
}


.fixity-intro-ul ul li::before{
content: "";
display: inline-block;
background: #85a282;
width: 15px;
height: 15px;
border-radius: 50%;
margin-right: 5px;
}

.fixity-intro-ul p{
font-size: 1.125em;
font-weight: 600;
line-height: 1.7em;
color: #85a282;
margin: 20px 0 0;
}


@media only screen and (max-width:768px) {
.fixity-intro-tit h3{font-size: 1.5em;line-height: 1.4em;}
.fixity-intro-tit h3 br{display: inherit;}

.fixity-intro-tit img{
height: 200px;
object-fit: cover;
}

.fixity-intro-ul{padding: 30px;}
.fixity-intro-ul ul li{font-size: inherit;}
}

@media only screen and (max-width:480px) {
.fixity-intro{margin-bottom: 30px;}
.fixity-intro-tit{margin-bottom: 25px;}
.fixity-intro-tit h3{font-size: 1.25em;;}
.fixity-intro-tit img{height: 120px;}
.fixity-intro-ul{padding: 20px;}

}


/* ご相談から納品までの流れ */
.business-flow h3{
font-size: 1.5em;
line-height: 1.4em;
}

.business-flow .sub-tit{
background: url(./images/common/tit_backP.jpg)!important;
margin: 0;
}

.business-flow h4{
font-size: 1.25em;
line-height: 1.4em;
padding-bottom: 0.2em;
border-bottom: 3px solid #e3baad;
}

.business-flow p{
letter-spacing: 0.01em;
}


@media only screen and (max-width:920px) {
.business-flowImg,
.business-flow-con{width: 100%;}
.business-flow .col2{width: 48%;}
.business-flow-con h4{font-size: 1.5em;}
}

@media only screen and (max-width:520px){
.business-flow .col2{width: 100%;}
}

@media only screen and (max-width:480px) {
.business-flow h3{font-size: 1.25em;}
.business-flowImg,
.business-flow-con{width: 100%;}
.business-flow-con{margin-top: 10px;}
.business-flow-con h4{font-size: 1.25em;}
.business-flow-con h4 br{display: none;}
}

/* ご相談 */
.consultation h3{
font-size: 1.75em;
text-align: center;
font-weight: 600;
margin-bottom: 40px;
}

.faq-area h3{
font-size: 2em;
text-align: center;
border-bottom: 1px solid #85a282;
padding-bottom: 30px;
margin-bottom: 40px;
}

.faq-area dl{
padding: 0 150px;
}

.qanda .faq-area dl dt::before{
color: #ffffff;
background-color: #85a282;
}

.qanda .faq-area dl dt {
background: #f3f6f2
}

.qanda .faq-area dl dd::before{
background-color: #727171;
}


@media only screen and (max-width:920px) {
.faq-area dl{padding: 40px;}
}

@media only screen and (max-width:768px) {
.faq-area dl{padding: 20px;}
}

@media only screen and (max-width:480px) {
.consultation h3{font-size: 1.25em;margin-bottom: 20px;}
.consultation .mb-4{margin-bottom: 20px;}
.faq-area h3{font-size: 1.5em;padding-bottom: 15px;}
}


/*----------------------------
岩本繊維について-会社概要
----------------------------*/

.about-dec p:last-of-type{margin-bottom: 0;}

@media only screen and (max-width:620px){
.about-dec img{
height: 150px;
object-fit: cover;
}
}





/* .about-dec .d-flex{
align-items: center;
}

.about-dec .d-flex .col2{
margin-bottom: 30px;
position: relative;
}

.about-dec .d-flex .col2 p{
padding-left: 80px;
position: relative;
margin: 0;
}

.about-dec .flex-reverse .col2 p{
padding-right: 80px;
padding-left: 0;
}


.about-dec .d-flex .col2 p:after{
content: "";
display: inline-block;
background: #f6f3f1;
width: 300px;
height: 300px;
border-radius: 50%;
position: absolute;
top: 50%;
transform: translateY(-50%);
left: 0;
z-index: -1;
}

.about-dec .flex-reverse .col2 p:after{
right: 0;
left: auto;
}

@media only screen and (max-width:1000px) {
.about-dec .d-flex .col2 p,
.about-dec .flex-reverse .col2 p{padding: 0;}
.about-dec .d-flex .col2 p:after{
width: 200px;
height: 200px;
}
}

@media only screen and (max-width:768px) {
.about-dec .d-flex .col2{margin: 0;}
.about-dec .d-flex .col2 p{padding: 30px 0;}

.about-dec .d-flex .col2 p:after{
width: 120px;
height: 120px;
}
.about-dec .flex-reverse .col2 p:after{
right: auto;
left:0;
}

.about-dec .d-flex .col2 p br{display: none;}

} */

.about-management .mb-6{
text-align: center;
}

.about-management h3{
font-size: 2em;
max-width: 180px;
text-align: center;
border-left: 8px solid #a48b78;
border-right: 8px solid #a48b78;
padding: 12px;
margin: 0 auto 20px;
}

.about-management .mb-6 p{
font-size: 1.125em;
}

.about-management .col3{
text-align: center;
background: #f7f4f2;
border-radius: 20px;
display: flex;
flex-direction: column;
}

.about-management .col3 h4{
font-size: 1.5em;
font-weight: 600;
color: #ffffff;
background: #a48b78;
border-radius: 20px 20px 0 0;
padding: 15px;
margin: 0;
}

.about-management .col3 p{
padding: 20px 10px;
margin: 0;
flex: 1;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
}

@media only screen and (max-width:768px){
.about-management .mb-6{display: block;}
.about-management h3{
max-width: 200px;
border-left: none;
border-right: none;
border-top: 8px solid #a48b78;
border-bottom: 8px solid #a48b78;
padding: 12px 25px;
margin: 0 auto 20px;
}

.about-management .mb-6 p{
font-size: 1em;
line-height: 1.9em;
text-align: center;
margin: 0;
}

.about-management .mb-6 p br{display: none;}

}

.about-greeting .col2{margin:0;}

.about-greeting h2{margin: 0;}
.about-greeting h3{
font-size: 1.375em;
border-bottom: 1px solid #333333;
padding-bottom: 0.5em;
}

.about-greeting p{margin: 0 0 2em;}

.about-greeting .col2:last-child p:last-of-type{
font-size: 1.125em;
font-weight: 500;
line-height: 1.8em;
text-align: right;
margin-top: 1em;
}

.about-greeting p span{
font-size: 1.5em;
}

.about-greeting h4{
border-top: 1px solid #727171;
border-bottom: 1px solid #727171;
padding: 5px 0;
}

.about-greeting h4:before{
content: "";
display: inline-block;
background: #e4baad;
width: 15px;
height: 15px;
margin-right: 5px;
}

.about-greeting ul li{
text-indent: -1em;
padding-left: 1em;
}

@media only screen and (max-width:480px){
.about-greeting p{margin: 0 0 1em;}
.about-greeting p br{display: none;}
.about-greeting .col2:last-child p:last-of-type{font-size: 1em;}
.about-greeting p span{font-size: 1.125em;}
}

.about-company table{
border-top: 1px solid #727171;
width: 100%;
border-collapse: collapse;
}

.about-company table tr th{width: 25%;}
.about-company table tr td{width: 75%;}

.about-company table tr th,
.about-company table tr td{
font-weight: 400;
border-bottom: 1px solid #727171;
padding: 15px;
}

.about-company table tr:last-of-type th,
.about-company table tr:last-of-type td{
border: none;
}


.about-company-col{width: 50%;}
.about-company-col:first-of-type{line-height: 0;}


@media only screen and (max-width:768px) {
.about-company .col2{margin-bottom: 0;}
.about-company .col2:nth-of-type(2) table{border-top: none;}
.map iframe{height: 150px;}
}

@media only screen and (max-width:520px) {
.about-company-col{width: 100%;margin-bottom: 20px;}
.map iframe{height: 250px;}
}

@media only screen and (max-width:480px) {
.about-company table tr th,
.about-company table tr td{
font-size: 0.75em;
padding: 8px;
}
}

.about-history .col2{position: relative;}

.about-history .col2:before{
content: "";
border-left: 2px solid #a48b78;
position: absolute;
left: 5px;
height: 100%;
}

.about-history dl{
position: relative;
padding-left: 25px;
margin: 10px 0 25px;
}

.about-history dl:before{
content: "";
position: absolute;
top: 10px;
left: 5px;
padding-left: 12px;
height: 2px;
background-color: #a48b78;
}

.about-history dl dt{
font-size: 1.125em;
color: #a48b78;
font-weight: 500;
font-style: normal;
margin-bottom: 2px;
}

.about-history dl img{
max-width: 270px;
margin-top: 0.5em;
}

@media only screen and (max-width:480px) {
.about-history dl{margin: 20px 0 0;}
}

.about-client ul li{
text-indent: -1em;
padding-left: 1em;
}

.about-client h4{
font-weight: 400;
margin: 0;
}

.about-client h4::before{
content: "";
display: inline-block;
background: #a48b78;
width: 15px;
height: 15px;
margin-right: 5px;
}

@media only screen and (max-width:520px) {
.about-client h4::before{
width: 10px;
height: 10px
}
}


/*----------------------------
求人のご案内
----------------------------*/

.recruit .sub-tit{
background: url(./images/common/tit_backB.jpg)
}

.recruit-min-inner{
max-width: 800px;
margin: 0 auto;
}

.recruit .about-company table tr th{width: 23%;}
.recruit .about-company table tr td{width: 77%;}



/*----------------------------
小売
----------------------------*/
.retail .sub-tit{
background-image: url(./images/common/tit_backBB.jpg);
margin-bottom: 40px;
}

.retail-2 .col2{
border: 1px solid #727171;
border-radius: 10px;
padding: 30px 20px;
text-align: center;
position: relative;
margin-bottom: 50px;
}

.retail-2 .col2 p{
line-height: 1.7em;
margin-bottom: 2em;
}

.retail-2 h4{
font-size: 3em;
font-weight: 300;
}

.retail-2 h4 img{
height: 100px;
object-fit: cover;
}

.retail-2 .col2:last-of-type h4{
margin: 40px 0 90px;
}

.retail-2 .mb-3 img{
filter: drop-shadow(0 4px 10px rgba(0,0,0,0.3));
}

.retail-2 .aboutBtn {
max-width: 220px;
margin: 30px auto 0;
}


@media only screen and (max-width:1100px) {
.retail-2 h4{font-size: 2em;}
}

@media only screen and (max-width:768px) {
.retail-2 .col2:last-of-type h4{margin: 0 0 30px;}

}
@media only screen and (max-width:520px) {
.retail-2 h4 img{height: 80px;}
.retail-2 h4{font-size: 1.5em;}
.retail-2 .col2:last-of-type p br{display: none;}

}




/*----------------------------
卸・OEM
----------------------------*/



.wholesale-oem-step{
width: 28.5%;
text-align: center;
background: #ffffff;
margin-bottom: 40px;
position: relative;
border-radius: 0 0 10px 10px;
}

.wholesale-oem-step::after{
content: "";
display: inline-block;
right: -20%;
top: 50%;
transform: translateY(-50%);
width: 0;
height: 0;
border-left: 40px solid #85a282;
border-bottom: 25px solid transparent;
border-top: 25px solid transparent;
position: absolute;
}

.wholesale-oem-step:last-of-type::after{
content: none;
}

.wholesale-oem-step .step-number{
font-size: 1.5em;
font-weight: 600;
color: #ffffff;
background: #85a282;
padding: 15px;
border-radius: 10px 10px 0 0;
}

.wholesale-oem-step h4{
font-size: 1.25em;
font-weight: 600;
}

.wholesale-oem-step-inn {padding: 25px;}

@media only screen and (max-width:768px) {
.wholesale-oem-step{width: 100%;margin-bottom: 80px;}
.wholesale-oem-step img{width: 80%;margin: 0 auto;}

.wholesale-oem-step::after{
right: 0;
left: 50%;
top: 106%;
transform: translateX(-50%);
border-left: 25px solid transparent;
border-right: 25px solid transparent;
border-top: 40px solid #85a282;
border-bottom: none;
}

}

@media only screen and (max-width:480px) {
.wholesale-oem-step{margin-bottom: 70px;}
.wholesale-oem-step img{width: 100%;}

.wholesale-oem-step::after{
top: 106%;
border-left: 18px solid transparent;
border-right: 18px solid transparent;
border-top: 30px solid #85a282;
}

}



/*----------------------------
ものづくりへの思い
----------------------------*/
.craftsmanship-tab-labels {
display: flex;
flex-wrap: wrap;
margin-bottom: 20px;
}

.craftsmanship-tab-labels label {
font-size: 1.25em;
font-weight: 400;
width: 50%;
text-align: center;
padding: 15px;
cursor: pointer;
background: #dcdcdc;
}


/* ラジオ非表示 */
input[type="radio"] {
display: none;
}

/* コンテンツ全部非表示 */
.craftsmanship-con {
display: none;
}

/* タブ切り替え */
#brand-concept-tab:checked ~ .craftsmanship-con1,
#iwamoto-craftsmanship-tab:checked ~ .craftsmanship-con2,
#japan-kyoto-tab:checked ~ .craftsmanship-con3,
#sleep-tab:checked ~ .craftsmanship-con4 {
display: block;
}

/* ラベル背景切り替え */
#brand-concept-tab:checked ~ .craftsmanship-tab-labels label:nth-child(1){
color: #ffffff;
background: url(./images/craftsmanship/craftsmanship_tab.jpg);
}

#iwamoto-craftsmanship-tab:checked ~ .craftsmanship-tab-labels label:nth-child(2) {
color: #ffffff;
background: url(./images/craftsmanship/craftsmanship_tab.jpg);
}

/* タブ内の背景切り替え */
.craftsmanship-con{background: #f9f1ef;}

.craftsmanship-con .container-min-inner{
max-width: 900px;
}

/* タブ内のデザイン */
.craftsmanship-con h2{
font-size: 3em;
line-height: 1em;
font-weight: 200;
margin-bottom: 25px;
text-align: center;
}

.craftsmanship-con h3{
font-size: 1.5em;
margin-bottom: 25px;
}

.craftsmanship-con .craftsmanship-con-inner{
background-image: url(./images/craftsmanship/craftsmanship_back.jpg);
}

.craftsmanship-con-inner{
background-position: top;
background-repeat: no-repeat;
padding: 80px 50px;
}


@media only screen and (max-width:768px) {
.craftsmanship-con-inner{padding: 70px 35px;}
.craftsmanship-tab-labels label {font-size: 0.875em;padding: 10px;}
.craftsmanship-con h2{font-size: 2em;margin-bottom: 15px;}
.craftsmanship-con h3{font-size: 1.25em;}
}

@media only screen and (max-width:520px) {
.craftsmanship-con-inner{background-size: auto 20px;padding: 50px 20px;;}
.craftsmanship-tab-labels label {width: 50%;padding: 12px 5px;}
.craftsmanship-con h2{font-size: 1.5em;}
}


/* -----------
Brand Concept
----------- */
.craftsmanship-con1 h3{
font-size: 2.25em;
font-weight: 600;
margin-bottom: 30px;
}

@media only screen and (max-width:520px) {
.craftsmanship-con1 h3{font-size: 1.5em;}
}


/* -----------
タブ中身
----------- */
.craftsmanship-con2 .craftsmanship-con-flow{
counter-increment: num;
margin-top: 100px;
}

.craftsmanship-con2 .col2 img{line-height: 0;}

.craftsmanship-con2 h4{
font-size: 2em;
display: flex;
font-weight: 500 ;
background: #ffffff;
padding: 12px 10px 12px 55px;
width: 95%;
margin: -6% 0 30px 5%;
position: relative;
}

.craftsmanship-con2 .craftsmanship-con-flow h4::before {
content: counter(num);
font-size: 0.875em;
font-weight: 400;
color: #ffffff;
text-align: center;
background: #85a282;
width: 60px;
height: 60px;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
position: absolute;
left: -5.5%;
top: 50%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}

.craftsmanship-con2 h5{
font-size: 1.75em;
font-weight: 600;
}

.craftsmanship-con2 h5 span{
color: #85a282;
margin: 0 5px;
}

.craftsmanship-con2 dl{
margin-bottom: 1em;
}

.craftsmanship-con2 dl dt{
font-size: 1.25em;
font-weight: 600;
}

.craftsmanship-con-product{
background: #fcf8f7;
padding: 30px;
}

.craftsmanship-con-product ul{
max-width: 580px;
margin: 20px auto 0;
}

.craftsmanship-con-product ul li{
font-size: 1.125em;
font-weight: 600;
border: 3px solid #e3baad;
background: #ffffff;
border-radius: 15px;
padding: 10px;
writing-mode: vertical-rl;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
justify-content: center;
align-items: center;
position: relative;
}

.craftsmanship-con-product ul li::after{
content: "";
display: inline-block;
right: -90%;
top: 50%;
transform: translateY(-50%);
width: 0;
height: 0;
border-left: 25px solid #e3baad;
border-bottom: 15px solid transparent;
border-top: 15px solid transparent;
position: absolute;
}

.craftsmanship-con-product ul li:last-of-type::after{
content: none;
}

@media only screen and (max-width:1000px) {
.craftsmanship-con2 .craftsmanship-con-flow h4{font-size: 1.5em;}
}

@media only screen and (max-width:680px){
.craftsmanship-con-product ul{
display: block;
}

.craftsmanship-con-product ul li{
writing-mode:inherit;
margin-bottom: 50px;
}

.craftsmanship-con-product ul li:last-of-type{margin-bottom: 0;}

.craftsmanship-con-product ul li::after{
right: 0;
left: 50%;
top: 135%;
transform: translateX(-50%);
border-left: 15px solid transparent;
border-right: 15px solid transparent;
border-top: 25px solid #e3baad;
border-bottom: none;
}

}


@media only screen and (max-width:480px) {
.craftsmanship-con2 .craftsmanship-con-flow{margin-top: 50px;}

.craftsmanship-con2 .craftsmanship-con-flow h4{
font-size: 1.125em;
padding: 6px 10px 6px 40px;
margin: -8% 0 20px 5%;
}

.craftsmanship-con2 .craftsmanship-con-flow h4::before {
font-size: 0.875em;
width: 50px;
height: 50px;
left: -5.5%;
}

.craftsmanship-con2 dl dt{font-size: 1.125em;}

.craftsmanship-con-product{padding: 20px;}
.craftsmanship-con-product ul li{font-size: 1em;padding: 5px;}

}


/*----------------------------
生地バリエーション
----------------------------*/
.fabric .sub-tit,
.product .sub-tit{
background: url(./images/common/tit_backBB.jpg);
}

.fabric h3{
border-bottom: 2px solid #727171;
padding-bottom: 0.5em;
margin-bottom: 1em;
}

.fabric h4{
font-size: 1.25em;
border-left: 10px solid #9ec7ce;
border-bottom: 2px solid #9ec7ce;
padding: 2px 10px 5px;
margin-bottom: 0.8em;
}

.fabric h5{
font-size: 1em;
margin-bottom: 0;
}

.fabric .d-flex p{
font-size: 0.875em;
line-height: 1.4em;
}

.fabric .mb-1{line-height: 0;}


/* -----------
生地バリエーション 商品ページ
----------- */
.fabric-product{
background: #f6eeea;
margin-bottom: 100px;
}

.fabric-product h3{
background: #e5eff1;
border-radius: 50px;
padding: 10px 25px;
margin-bottom: 1em;
border: none;
}



.fabric-product .container-min-inner{
background: #ffffff;
padding: 20px 50px 50px;
}

.fabric-product h1{
font-size: 1.5em;
font-weight: 400;
margin: 0.5em 0;
}

.fabric-product h3{
font-size: 1.125em;
}

.fabric-mainImg{width: 30%;}
.fabric-main{width: 67%;}

.fabric-main h3{
margin-bottom: 0.5em;
}

.fabric-main ul li{
font-size: 0.875em;
margin-right: 15px;
}

.fabric-main ul li::before{
content: "";
display: inline-block;
width: 12px;
height: 12px;
background: #9ec7ce;
border-radius: 50%;
margin-right: 5px;
}

/* ポップアップ */
#fabric-modal{
position: fixed;
inset: 0;
background: rgba(0,0,0,.5);
display: flex;
justify-content: center;
align-items: center;
z-index: 9999;
padding: 20px;
opacity: 0;
visibility: hidden;
transition: opacity .4s ease;
}

#fabric-modal.active{
opacity: 1;
visibility: visible;
}

.fabric-modal-inner{
position: relative;
background: #fff;
padding: 15px;
max-width: 90vw;
max-height: 90vh;
transform: scale(.9);
transition: .4s ease;
}

.popup-image{
cursor: pointer;
}

#fabric-modal.active .fabric-modal-inner{
transform: scale(1);
}

.fabric-modal-inner img{
display: block;
max-width: 100%;
max-height: 80vh;
}

.fabric-modal-close{
position: absolute;
color: #ffffff;
top: 20px;
right: 15px;
background: none;
border: none;
font-size: 30px;
line-height: 1;
cursor: pointer;
}



/* 表 */
.fabric-product table{
width: 70%;
border-collapse: collapse;
}

.fabric-product table tr th,
.fabric-product table tr td{
font-size: 0.875em;
border: 2px solid #727171;
padding: 5px 10px;
}

.fabric-product table tr th{
width: 35%;
font-weight: 400;
color: #ffffff;
background: #9ec7ce;
}

.fabric-product table tr td{width: 65%;}

.fabric-graph{
width: 30%;
border-top: 2px solid #727171;
border-right: 2px solid #727171;
border-bottom: 2px solid #727171;
display: flex;
justify-content: center;
align-items: center;
padding: 10px;
}

.centerBtn{
max-width: 400px;
margin: 50px auto 0;
}


@media only screen and (max-width:768px) {
.fabric-mainImg,
.fabric-main,
.fabric-product table,
.fabric-graph{width: 100%;}


.fabric-graph{
border-top: none;
border-left: 2px solid #727171;
border-right: 2px solid #727171;
border-bottom: 2px solid #727171;
}

}

@media only screen and (max-width:480px) {
.fabric-product h1{font-size: 1.125em;}
.fabric-product{margin-bottom: 50px;}
.fabric-product .container-min-inner{
padding: 30px 20px;
}

.fabric-product table tr th,
.fabric-product table tr td{
font-size: 0.75em;
line-height: 1.5em;
padding: 5px;
}

}


/*----------------------------
カタログダウンロード一覧
----------------------------*/
.catalog h4{
font-weight: 400;
line-height: 1.8em;
}

.catalog .pBtn{
font-size: 1em;
}

.catalog .pBtn a{
padding: 10px;
text-shadow:none;
}


.catalog ul li{
text-indent: -1em;
padding-left: 1em;
}



/*----------------------------
カタログダウンロード
----------------------------*/

#flipbook {
    opacity: 0;
    max-width: 800px;
    margin: 0 auto;
}

#flipbook div {
    background: #fff;
    overflow: hidden;
}

/* Turn.js のページサイズに合わせて縮小表示 */
#flipbook canvas {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}



/*----------------------------
製品ラインナップ
----------------------------*/

.product .col3{
border-radius: 20px;
text-align: center;
}
.product .col3 h4{
font-size: 1.5em;
color: #ffffff;
background: #85a282;
padding: 10px;
margin: 0;
border-radius: 10px 10px 0 0;
}

.product .col3:nth-of-type(2n) h4{
background: #7aa3a9;
}

.product-con{
padding-top: 20px;
}

.fabricBnr{
font-size: 1.5em;
font-weight: 600;
width: 100%;
background: url(./images/main/fabric_main.jpg);
background-size: cover;
text-align: center;
transition: ease .4s;
}

.fabricBnr a{
color: #ffffff;
padding: 70px;
display: block;
text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5);
}

.fabricBnr:hover{
opacity: .6;
}

.product-kinds{
max-width: 80px;
margin: 0 auto 70px;
}

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

.product-kinds{
max-width: 40px;
margin: 0 auto 35px;
}

.fabricBnr{font-size: 1.25em;}
.fabricBnr a{padding: 40px;}

}


/*----------------------------
Pop up & Real shop
----------------------------*/
.realshop h3{
color: #ffffff;
background: #e4baad;
padding: 15px;
}

.realshop dl{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
align-items: baseline;
margin-bottom: 15px;
}

.realshop dl dt{
background: #e8e2dc;
padding: 2px 5px;
margin:0 15px 0 0;
}


@media only screen and (max-width:480px) {
.realshop dl dt{
width: 100%;
margin:0 0 5px;
}

}


/*----------------------------
業務用
----------------------------*/
.business .fixity-beginning h4{
font-size: 1.25em;
margin-bottom: 40px;
}


.business .fixity-reason dl dt{
background: #9ec7ce;
}

.business .fixity-intro-ul{
border: 1px solid #9ec7ce;
margin: 0 auto 30px;
}


.business .fixity-intro-ul ul li::before{
background: #9ec7ce;
}

.business-process{
max-width: 1000px;
margin: 0 auto 50px;
}

.business .faq-area h3{
border-bottom: 1px solid #9ec7ce;
}

.business .faq-area dl dt{
background: #ecf4f5;
}

.business .faq-area dl dt::before{
background-color: #9ec7ce;
}

.business .contact-area h4{
font-size: 2em;
line-height: 1.4em;
margin-bottom: 40px;
}


@media only screen and (max-width: 480px){
.business-process{
width: 80%;
margin: 0 auto 30px;
}

.business .contact-area h4{
font-size: 1.25em;
margin-bottom: 15px;
}


}


.bnr-col .col3{margin-bottom: 0;}
.bnr-col{margin-bottom: 30px;}

@media only screen and (max-width: 480px){
.bnr-col .col3{margin-bottom: 15px;}
}


/*----------
業務用-共通箇所
------------*/
.business-ex h2{margin-bottom: 40px;}
.business-ex .back-s{padding: 50px;}
.business .sub-tit{background-image: url(./images/common/tit_backS.jpg);}

.business .moreBtn{max-width: 300px;margin: 0 auto;}

.business .business-blog span{
font-size: 0.75em;
font-weight: 500;
position: absolute;
color: #ffffff;
top: 0;
left: 0;
z-index: 1;
background-color: #333333;
padding: 12px 5px;
}


.business-exImg{line-height: 0;}

.business-ex h3{
font-size: 1.5em;
text-align: center;
margin-bottom: 40px;
position: relative;
padding-bottom: 15px;
}

.business-ex h3::before,
.business-ex h3::after{
content: "";
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
}

.business-ex h3::before{
height: 2px;
width: 100px;
background: #727171;
}

.business-ex h3::after{
background: #727171;
width: 10px;
height: 10px;
border-radius: 50%;
bottom: -4px;
}

.business-ex dl{margin-bottom: 30px;}

.business-ex dl dt{
font-size: 1em;
font-weight: 400;
color: #ffffff;
background-color: #9ec7ce;
padding: 10px 20px;
border-radius: 15px;
position: relative;
margin-bottom: 15px;
}

.business-ex dl dt::before{
content: "";
position: absolute;
bottom: -10px;
left: 20px;
border-left: 10px solid transparent;
border-right: 10px solid transparent;
border-top: 15px solid #9ec7ce;
}


.business-ex table{
width: 100%;
border-collapse: collapse;
}

.business-ex table tr th,
.business-ex table tr td{
font-size: 0.875em;
border: 1px solid #727171;
padding: 5px 10px;
}

.business-ex table tr th{
width: 12%;
font-weight: 400;
color: #ffffff;
background: #9ec7ce;
}

.business-ex table tr td{
width: 68%;
background: #ffffff;
}

.business-product .col4{
border: 2px solid #9ec7ce;
text-align: center;
border-radius: 15px;
}

.business-product .col4 h3{
font-size: 1em;
font-weight: 500;
color: #ffffff;
background: #9ec7ce;
border-radius: 13px 13px 0 0;
padding: 8px;
}

.business-product .col4 .business-product-inner{
padding: 20px;
}

.productBtn{
font-size: 0.875em;
font-weight: 500;
display: block;
}

.productBtn a{
color: #ffffff;
display: inline-block;
background: #9ec7ce;
border: 2px solid #9ec7ce;
padding: 2px 8px;
transition: ease .5s;
margin-top: 20px;
}

.productBtn a:hover{
color: #9ec7ce;
background: #ffffff;
}

@media only screen and (max-width:768px) {
.business-ex .back-s{padding: 30px;}
}

@media only screen and (max-width:480px) {
.business-ex h3{
font-size: 1.15em;
margin-bottom: 20px;
}
}


/*----------
業務用-ウェア
------------*/
.ware-1 .ware-1-col{
width: 31%;
border-right: 2px solid #9ec7ce;
border-bottom: 2px solid #9ec7ce;
padding: 0 30px 20px;
text-align: center;
}


.ware-1 .ware-1-col h4{
font-size: 1em;
color: #ffffff;
background-color: #9ec7ce;
padding: 10px;
border-radius: 15px;
position: relative;
margin-bottom: 30px;
}

.ware-1 .ware-1-col h4::before{
content: "";
position: absolute;
bottom: -15px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
border-left: 15px solid transparent;
border-right: 15px solid transparent;
border-top: 20px solid #9ec7ce;
}

.ware-1 .ware-1-col p{
font-size: 0.875em;
margin: 0;
}

.ware-2 .d-flex{align-items: center;}

.ware-2 h3{
border-top: 2px solid #9ec7ce;
border-bottom: 2px solid #9ec7ce;
padding: 15px 0;
}

.ware-2 .col2:first-of-type{width: 35%;}

.ware-2 p{margin-bottom: 0;}


.ware-2 .col2:last-of-type{
width: 62%;
background: #ecf4f5;
padding: 40px;
border-radius: 20px;
}

@media only screen and (max-width:768px) {
.ware-1 .ware-1-col{width: 100%;padding: 0 20px 15px;margin-bottom: 30px;}
.ware-2 .col2:first-of-type{width: 60%;margin: 0 auto 20px; }
.ware-2 .col2:last-of-type{width: 100%;padding: 25px;}
}


/*----------
業務用-布団
------------*/
.futon-1 .d-flex {align-items: center;}


.futon-1 .d-flex .col2:first-of-type{
padding-left: 15%;
}

.futon-1 .d-flex dl dt{
font-size: 1.125em;
color: #7aa3a9;
font-weight: 600;
border-bottom: 3px dotted #7aa3a9;
padding-bottom: 0.2em;
margin-bottom: 0.5em;
}

.futon-1 .d-flex dl{
margin-bottom: 1.5em;
}

@media only screen and (max-width:768px) {
.futon-1 .d-flex .col2:first-of-type{
padding-left:0;
width: 50%;
margin: 0 auto 20px
}

}


@media only screen and (max-width:480px) {
.futon-1 .d-flex .col2:first-of-type{width: 70%;}
.futon-1 .d-flex dl dt{font-size: 1em;}
}


/*----------
業務用-シーツ
------------*/
.sheet-1 {
text-align: center;
position: relative;
}

.sheet-1 h3{
font-size: 1.125em;
color: #ffffff;
background:#9ec7ce;
display: inline-block;
padding: 15px 50px;
border-radius: 50px;
margin-bottom: 40px;
}

.sheet-1 h3::before{
content: "";
background: #9ec7ce;
display: inline-block;
height: 5px;
width: 100%;
position: absolute;
top: 40px;
left: 0;
}


.sheet-1 .col3{
box-shadow: 2px 2px 6px rgba(0,0,0,0.3);
padding: 40px 20px;
}

.sheet-1 .col3 h5{
font-size: 0.825em;
line-height: 1.5em;
background:#ecf4f5;
padding: 10px 20px;
border-radius: 50px;
margin: 0;
}

.sheet-1 .col3 .sheetIcon{
max-width: 200px;
margin: 20px auto;
}

.sheet-1 .col3 p{margin-bottom: 0;}


.sheet-1 .col2 h4{
font-size: 1.375em;
color: #9ec7ce;
}

.sheet-1 .col2 {
text-align: justify;
}

@media only screen and (max-width:480px) {
.sheet-1 .col2 h4{font-size: 1.25em;}
}


/*----------------------------
Q&A
----------------------------*/
.qanda dl{margin-bottom: 50px;}

.qanda dl dt,
.qanda dl dd{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
align-items: center;
}

.qanda dl dt{
background: #f9f1eb;
border-radius: 10px;
margin-bottom: 20px;
}

.qanda dl dt::before{
content: "";
display: inline-block;
background-image: url(./images/about/q_icon.svg);
background-repeat: no-repeat;
background-size: 22px 22px; 
background-color: #e4baad;
background-position: center; 
padding-left: 50px;
height: 50px;
margin-right: 15px;
border-radius: 10px 0 0 10px;
}

.qanda dl dd{margin-left: 20px;}

.qanda dl dd::before{
content: "";
display: inline-block;
background-image: url(./images/about/a_icon.svg);
background-repeat: no-repeat;
background-size: 15px 15px; 
background-color: #a48b78;
background-position: center; 
padding-left: 30px;
height: 30px;
margin-right: 15px;
border-radius: 5px;
}

@media only screen and (max-width:768px) {
.qanda dl dt{font-size: 1.125em;padding-right: 15px;}
.qanda dl dt::before{
background-size: 18px 18px; 
padding-left: 35px;
height: 70px;
}
}

@media only screen and (max-width:480px) {
.qanda dl dt{font-size: 1em;}
.qanda dl dd{margin: 0;}
}



/*----------------------------
サイトマップ
----------------------------*/
.sitemap h3{
font-weight: 400;
margin: 30px 0 20px;
}

.sitemap h3 a{
display: block;
background: #f9f1eb;
border-left: 10px solid #e4baad;
padding: 10px;
position: relative;
}

.sitemap h3 a::after,
.sitemap h3 a::before{
content: "";
display: inline-block;
position: absolute;
top: 50%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transition: ease .4s;
}

.sitemap h3 a::after{
width: 8px;
height: 8px;
border-top: 2px solid #ffffff;
border-right: 2px solid #ffffff;
transform: rotate(45deg);
top: 18px;
right: 30px;
z-index: 2;
}

.sitemap h3 a::before{
background: #727171;
width: 25px;
height: 25px;
border-radius: 50%;
right: 20px;
z-index: 1;
}   

.sitemap h3 a:hover::after{right: 20px;}
.sitemap h3 a:hover::before{right: 10px;}

.sitemap ul li{
font-size: 1.125em;
margin-bottom: 1em;
}

.sitemap ul li ul{
margin-left: 1em;
margin-top: 0.5em;
}

.sitemap ul li ul li{
font-size: 0.875em;
margin-bottom: 0.5em;
}

.sitemap ul li a{
display: block;
transition: ease .4s;
}

.sitemap ul li a::before{
content: "";
display: inline-block;
width: 8px;
height: 8px;
margin: 0 10px;
border-top: 2px solid #727171;
border-right: 2px solid #727171;
transform: rotate(45deg);
transition: ease .4s;
}

.sitemap ul li a:hover{
color: #e4baad;
}

.sitemap ul li a:hover::before{
border-top: 2px solid #e4baad;
border-right: 2px solid #e4baad;
}


@media only screen and (max-width:520px) {
.sitemap .col3{margin: 0;}
}



/*----------------------------
contact
----------------------------*/

.business .contact .contact-inner{
max-width: 800px;
margin: 0 auto 60px;
}

.contact .contact-inner .wpcf7-list-item{
width: auto;
margin: 0 2em 0.5em 0;
}



.contact dl{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
margin-bottom: 50px;
}

.contact dl dt{
width: 25%;
position: relative;
padding-left: 50px;
}

.contact dt::before{
content: "";
display: inline-block;
position: absolute;
left: 0;
width: 40px;
}

.contact dt.required::before{
content: "必須";
font-size: 0.75em;
color: #ffffff;
font-weight: 600;
background: #a48b78;
text-align: center;
}

.contact dl dd{width: 72%;}


.contact dl dd span input,
.contact dl dd span textarea{
font-size: 1em;
display: block;
width: 100%;
padding: 10px 12px;
}

.wpcf7-list-item input{
display: inline-block!important;
width: auto!important;
}

input[type="checkbox"]{
border: 2px solid #ffffff;
}

input[type="checkbox"]{
accent-color: #a48b78;
}

.contact-btn{
max-width: 300px;
margin: 0 auto 20px;
display: block;
text-align: center;
}

.contact-btn input{
font-size: 1em;
color: #ffffff;
width: 100%;
border: 2px solid #a48b78;
background: #a48b78;
border-radius: 10px;
transition: .4s ease;
padding: 15px;
}

.contact-btn input:hover{
color: #a48b78;
background: #ffffff;
cursor: pointer;
}

.contact select{padding: 10px 15px;}

.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output{
border: none;
text-align: center;
color: #dc3232;
}

.wpcf7-radio .wpcf7-list-item input{
display: inherit;
width: inherit;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after{
content: none;
}

.wpcf7-list-item{
width: 24%;
margin: 0 0 0.5em;
}

@media only screen and (max-width: 1100px){
.wpcf7-list-item{width: 30%;}
}

@media only screen and (max-width: 840px){
.wpcf7-list-item{
width: 50%;
margin: 0 0 0.5em 0;
}
}

@media only screen and (max-width: 520px){
.contact dl{margin-bottom: 30px;}
.contact dl dt{margin-bottom: 0.5em;}
.contact dl dt,
.contact dl dd{width: 100%;}
.contact p span, .contact dt span{margin-right: 10px;}

}

@media only screen and (max-width: 480px){
.wpcf7-list-item{width: 100%;}
}
