@charset "utf-8";

@import url('components.css');
@import url('fonts.css');
@import url('swiper.min.css');
@import url('venobox.css');

.error-404.not-found { padding: 100px 50px; text-align: center; }

.swP { display: block; }
.swT { display: none; }
.swS { display: none; }
.swP.swT { display: block; }
.swP.swS { display: block; }
.swT.swS { display: none; }
.swP.swT.swS { display: block; }
.strong { font-weight: bold; }
.fcr { color:#f00 !important; }
.fwB { color:#499464 !important; font-weight: bold; }
.bgPurple { background: #9999ff !important; }
.bgYellow { background: #ffff00 !important; }
.bgOrange { background: #ff9900 !important; }
.bgAqua { background: #6699ff !important; }
.bgWater { background: #ccffff !important; }
b { color: #f00; font-weight: bold; }
a { text-decoration:none; color:#2d3934; }
a:hover { text-decoration:none; color:#3091A9; }
img { max-width: 100%; }
body { background: #F2F4F4; padding: 140px 0 0; /* padding: 108px 0 0; */ }
#breadcrumb { display: none; } /* 旧コード非表示、可能であれば各HTMLから削除すること */
img.inrimg { vertical-align: middle; }

#container > header { background: #fff; position: fixed; top:0; left: 0; width: 100%; height: 140px; z-index: 100000; transition: all 0.4s ease; }
#container > header .logo { float: left;  }
#container > header .logo img { transition: all 0.4s ease; vertical-align: top; }
#container > header .contact { margin: 25px 25px 0 25px; float: right; display: inline-block; transform:skewX(-30deg); background:rgba(0,0,0,0.1); box-shadow: 5px 5px 0 rgba(0,0,0,0.1); transition: all 0.4s ease; }
#container > header .contact dt { line-height: 20px; text-align: center; float: right; }
#container > header .contact dt a { background: #F18C10; display: inline-block; line-height: 20px; text-align: center; width: 160px; padding: 15px 0; color:#fff; transition: all 0.4s ease; }
#container > header .contact dt a:hover { background: #2F994A; }
#container > header .contact dt a span { transform:skewX(30deg); display: inline-block; color:#fff; line-height: 20px; font-weight: bold; }
#container > header .contact dd { background: #eeeeee; line-height: 20px; text-align: center; width: 80px; padding: 15px 0; float: left; font-size: 0.9rem; }
#container > header .contact dd span { transform:skewX(30deg); display: inline-block; font-size: 0.9rem; line-height: 20px; }
#container > header .contact dd span a { color: #333; }
#container > header nav { float: right; position: relative; z-index: 100; }
#container > header nav ul li { float: left; }
#container > header nav ul li a { display: inline-block; padding:40px 20px; margin:0; line-height: 20px; font-weight: 500; position: relative; transition: all 0.4s ease; transition: all 0.4s ease; color:#333; }
#container > header nav ul li a:hover,
#container > header nav ul li.active a { background: #2d3934; color:#fff; text-decoration: none; }
#container > header nav ul li a:hover::after,
#container > header nav ul li.active a::after { content: ""; display: block; width: calc(100% - 30px); height: 1px; overflow: hidden; font-size: 1px; line-height: 1px; background: #2F994A; position: absolute; left: 15px; bottom:30px;  }
#container > header nav ol { display: none; }
#container > header .menusocial { display: none; }
#container > header .menusocial:after { content: ""; display: block; clear: both; }
#container > header .menusocial ul { margin: 20px auto 0; padding:30px 0; text-align: left; }
#container > header .menusocial ul li { display: inline-block; padding: 0 10px 0 0; }
#container > header .menusocial ul li a.tw { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; line-height: 40px; border-radius: 3px; background:black;}
#container > header .menusocial ul li a.tw img { width: 24px; margin: 0 auto; }
#container > header .spmenu { display: none; width: 60px; height: 60px; position: fixed; top:0; right: 0; z-index: 100000; }
#container > header .spmenu .wrap { display: inline-block; transition: all .4s; box-sizing: border-box; position: fixed; top:20px; right: 20px; width: 22px; height: 18px; z-index: 9999; }
#container > header .spmenu span { display: inline-block; transition: all .4s; box-sizing: border-box; position: absolute; left: 0; width: 100%; height: 2px; background-color: #999; border-radius: 2px; }
#container > header .spmenu span:nth-of-type(1) { top: 0; }
#container > header .spmenu span:nth-of-type(2) { top: 8px; }
#container > header .spmenu span:nth-of-type(3) { bottom: 0; }
#container > header .closebtn { display: none; text-align: center; padding: 20px 0; }
#container > header .closebtn span{ display: inline-block; position: relative; margin:0; padding: 0; width: 2px; height: 40px; background: #999; transform: rotate(45deg); }
#container > header .closebtn span:before{ display: block; content: ""; position: absolute; top: 50%; left: -18px; width: 40px; height: 2px; margin-top: -2px; background: #999; }
#container > header .subnav { margin: 0 auto; padding:10px; background: #2d3934; transition: all .4s ease; line-height: 20px; position: relative; z-index: 10; }
#container > header .subnav ul { text-align: right; line-height: 1px; }
#container > header .subnav ul li { display: inline-block; padding: 0 0 0 10px; line-height: 20px; font-size: .9rem; }
#container > header .subnav ul li a { text-decoration: none; color:#fff; }
#container > header .subnav ul li a:hover { text-decoration: underline; color:#e5e5e5; }
i.book { color:#F18C10; }
i.play { color:#ff0000; }
i.bubbles3 { color:#16969D; }
i.file-text { color:#ccc; }
i.office { color:#9C6716; }
i.books { color:#549E5B; }

.scrollfix #container > header { box-shadow: 0 0 5px rgba(0,0,0,0.25); }
.scrollfix #container > header nav ul li a:hover::after,
.scrollfix #container > header nav ul li.active a::after { bottom:0; height: 5px; background: #F2F4F4;  }
.scrollfix #container > header { height: 60px; }
.scrollfix #container > header .logo img { height: 60px; width: auto; }
.scrollfix #container > header .contact { margin: 20px 25px; }
.scrollfix #container > header nav ul li a { padding: 20px 15px; }
.scrollfix #container > header .subnav { height: 0; padding: 0 10px; overflow: hidden; top:-30px; }
.scrollfix #container > header .contact { box-shadow: 7px 7px 7px rgba(0,0,0,0.2); }

.searchbar { max-width: 1500px; margin: 0 auto; padding: 25px 10px; display: flex; justify-content: space-between; line-height: 1px; }
.searchbar .inr { display: inline-block; margin: 0; }
.searchbar .inr::after { content: ""; display: block; clear: both; }
.searchbar .inr h2 { padding: 10px; line-height: 20px; height: 40px; overflow: hidden; font-size: 1.4rem; font-weight: bold; float: left; color:#2F994A; }
.searchbar .inr h2 span { line-height: 20px; font-size: 1rem; font-weight: bold; color:#2d3934; position: relative; top:-2px; padding: 0 0 0 5px; }
.searchbar .inr ul { float: left; padding: 0 ; position: relative; }
.searchbar .inr ul li { float: left; padding: 0 10px 0 0; }
.searchbar .inr ul li input { height: 40px; line-height: 38px; padding: 0 5px; width: 300px; box-sizing: border-box; border-color:#aaa; }
.searchbar .inr ul li select { height: 40px; line-height: 38px; padding: 0 5px; width: 300px; box-sizing: border-box; border-color:#aaa; }
.searchbar .inr ul li button { height: 40px; width: 100px; line-height: 40px; box-shadow: inset 0 -3px rgba(0,0,0,0.2); background: #2F994A; color:#fff; border:none; outline: none; cursor: pointer; transition: all 0.4s ease; font-weight: 600; font-size: 1.15rem; letter-spacing: .05em; }
.searchbar .inr ul li button:hover { background: #2d3934; box-shadow: inset 0 0 rgba(0,0,0,0.2);  }
.searchbar .inr ul li button:active { box-shadow: inset 2px 2px 2px rgba(0,0,0,0.5);  transition: all 0s ease; }
.searchbar .inr ul li a.searchvatbtn { letter-spacing: 0; height: 40px; display: inline-block; padding: 9px 15px 11px; line-height: 20px; box-shadow: inset 0 -3px rgba(0,0,0,0.05); background: #999; color:#fff; border:none; outline: none; cursor: pointer; transition: all 0.4s ease; }
.searchbar .inr ul li a.searchvatbtn:hover { background: #2d3934; box-shadow: inset 0 0 rgba(0,0,0,0.2);  }
.searchbar .inr ol { float: left; padding: 0 0 0 15px; position: relative; }
.searchbar .inr ol::after { content: ""; display: block; width: 0; height: 40px; border-right: 1px dashed #ccc; position: absolute; top:0; left: 0; }
.searchbar .inr ol li { float: left; padding: 5px 0 0 5px; }
.searchbar .inr ol li a { display: inline-block; padding: 4px 15px 6px; line-height:20px; background: #fff; border-radius: 2px; box-shadow: 1px 1px 1px rgba(0,0,0,0.1); font-size: .9rem; transition: all 0.4s ease; }
.searchbar .inr ol li a:hover { background: #888; color:#fff; }
.searchbar .socialbtn ul { padding: 0 0 0 40px; border-left: 1px solid #999; }
.searchbar .socialbtn ul li { display: inline-block; padding: 0 10px 0 0; }
.searchbar .socialbtn ul li a.tw { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; line-height: 40px; border-radius: 3px; }
.searchbar .socialbtn ul li a.tw img { width: 24px; margin: 0 auto; }

.topcatch { max-width: 1500px; width: calc(100% - 40px); margin: 0 auto; padding:0; }
.topcatch::after { content: ""; display: block; clear: both; }
.topcatch .catchimg { float: left; width: calc(100% - 340px); padding: 120px 25px 0; box-sizing: border-box; height: 500px; overflow: hidden; position: relative; }
.topcatch .catchimg .fadebg { position: absolute; top:0; left: 0; width:100%; height: 100%; background: url(../images/common/catch01_bg.jpg) center center no-repeat; background-size: cover; opacity: 0; animation: bgAnime 50s infinite; transform : scale(1) rotate(0.1deg);  }
.topcatch .catchimg .fadebg.bg01 { background-image: url(../images/common/catch01_bg.jpg); }
.topcatch .catchimg .fadebg.bg02 { background-image: url(../images/common/catch02_bg.jpg); animation-delay: 10s; }
.topcatch .catchimg .fadebg.bg03 { background-image: url(../images/common/catch03_bg.jpg); animation-delay: 20s; }
.topcatch .catchimg .fadebg.bg04 { background-image: url(../images/common/catch04_bg.jpg); animation-delay: 30s; }
.topcatch .catchimg .fadebg.bg05 { background-image: url(../images/common/catch05_bg.jpg); animation-delay: 40s; }
.topcatch .catchimg .fadebg.bg06 { background-image: url(../images/common/catch06_bg.jpg); animation-delay: 50s; }
@keyframes bgAnime {
   0% { opacity: 0; transform : scale(1.0) rotate(0.1deg);}
   5% { opacity: 1; }
  25% { opacity: 1; }
  30% { opacity: 0; }
 100% { opacity: 0; transform : scale(1.4) rotate(0.1deg); }
}
.topcatch .catchimg a { position: relative; z-index: 99999; }
.topcatch .catchimg a img {transition: opacity .4s; }
.topcatch .catchimg a:hover img { opacity: .75; }
.topcatch .bnr a img {transition: opacity .4s; }
.topcatch .bnr a:hover img { opacity: .75; }
.topcatch .bnr { float: right; }
.topcatch .bnr a img {transition: opacity .4s; }
.topcatch .bnr a:hover img { opacity: .75; }
.topcatch .topics { float: right; width: 340px; height: 160px; background: #2d3934; }
.topcatch .topics h2 { margin: 0 0 10px 10px; width: 80px; line-height: 20px; background: #fff; font-size: 10px; color:#394C51; text-align: center;  }
.topcatch .topics a { display: block; padding: 10px 30px 10px 10px; position: relative; transition: all 0.4s ease; }
.topcatch .topics a:hover { background: rgba(255,255,255,0.1); }
.topcatch .topics a::after { content: ""; display: block; position: absolute; top:calc(50% - 2px); right: 10px; width: 4px; height: 4px; border: 2px solid; border-color: #fff #fff transparent transparent; transform: rotate(45deg); }
.topcatch .topics a dt { font-size: 10px; line-height: 1; color:rgba(255,255,255,0.5); margin: 0 0 2px; }
.topcatch .topics a dd { font-size: 13px; line-height: 1; color:#fff; }
.topcatch .box { width: calc(100% - 340px); height: 500px; position: relative; top:-500px; margin: 0 0 -500px; overflow: hidden; transform: translate3d(0, 0, 0); }
.topcatch .wave { opacity: .175; position: absolute; bottom: -3900px; left: 50%; background: #fff; width: 4000px; height: 4000px; margin-left: -2000px; margin-top: -2000px; transform-origin: 50% 48%; border-radius: 43%; animation: drift 12000ms infinite linear; }
.topcatch .wave.-three { animation: drift 14000ms infinite linear; }
.topcatch .wave.-two { animation: drift 15000ms infinite linear; opacity: .1; }
@keyframes drift {
  from { transform: rotate(0deg); }
  from { transform: rotate(360deg); }
}
.topslide { max-width: 1500px; margin: 0 auto; padding: 40px 0; position: relative; overflow: hidden; }
.topslide::after { content: ""; display: block; clear: both; }
.topslide .body { padding: 0 40px; }
.topslide a { display: block; float: left; background: #fff; box-shadow: 0 0 2px rgba(0,0,0,0.05); position: relative; transition: all 0.4s ease; }
.topslide a::after { content: "- もっと見る -"; display: inline-block; width: 120px; margin: 0; position: absolute; left: calc(50% - 60px); bottom: 20px; line-height: 1; padding: 5px 0; border-radius: 1.5px; text-align: center; background-color: #2d3934; color:#fff; font-size: .8rem; }
.swiper-slide dt { overflow: hidden; }
.swiper-slide dt::after { content: "PICKUP"; font-size: 10px; color:#fff; display: block; width: 6em; line-height: 1; padding: 4px 0; font-weight: normal; letter-spacing: 0.07em; background:#62ADB3; text-align: center; position: absolute; top:0; left: 10px; }
/*
.swiper-slide.item dt::after { content: "NEW"; background-color: #BA775A; }
.swiper-slide.event dt::after { content: "EVENT"; background-color: #62ADB3; }
.swiper-slide.service dt::after { content: "SERVICE"; background-color: #2d3934; }
*/
.topslide a dt img { width: 100%; height: 183px; object-fit: cover; font-family: 'object-fit: cover;'; transition: all 0.4s ease; }
.topslide a dd { height: 180px; }
.topslide a dd h2 { padding: 20px 10px 10px; line-height: 1.4; text-align: center; color:#111; font-size: 1.1rem; letter-spacing: 0; font-weight: 400; transition: all 0.4s ease; }
.topslide a dd p { padding: 0 10px; line-height: 1.4; text-align: center; color:#666; font-size: .8rem; }
.topslide a:hover { box-shadow: 0 0 10px rgba(0,0,0,0.15); z-index: 1000; }
.topslide a:hover dt img { opacity: 0.75; }
.topslide a:hover dd h2 { color:#479264; }
.topslide a:hover::after { background:#479264; }
.topslide .next{ position: absolute; display: inline-block; padding-left: 20px; cursor: pointer; top: calc(50% - 6px); right: 10px; z-index: 1000; }
.topslide .next::before{ content: ''; width: 12px; height: 12px; border: 0px; border-top: solid 4px #000; border-right: solid 4px #000; transform: rotate(45deg); position: absolute; top: 50%; left: 0; }
.topslide .prev{ position: absolute; display: inline-block; padding-left: 20px; cursor: pointer; top: calc(50% - 6px); left: 10px; z-index: 1000; }
.topslide .prev::before{ content: ''; width: 12px; height: 12px; border: 0px; border-top: solid 4px #000; border-left: solid 4px #000; transform: rotate(-45deg); position: absolute; top: 50%; left: 0; }
.topslide .next:hover,
.topslide .prev:hover { opacity: 0.75; }

.swiper-container { overflow: hidden; }

.catmenu { padding: 0 0 30px; }
.catmenu::after { content: ""; display: block; clear: both; }
.catmenu .img { width: 352px; float: left; }
.catmenu .img img { width: 352px; height: 260px; object-fit: contain; font-family: 'object-fit: contain;'; }
.catmenu .catlist { min-height: 260px; padding: 20px 0; border-top:1px solid #ddd; border-bottom: 1px solid #ddd; margin: 0 0 30px; float: right; width: calc(100% - 382px); }
.catmenu .catlist h3 { margin: 0 0 10px; }
.catmenu .catlist ul { display: flex; flex-wrap: wrap; }
.catmenu .catlist li { display: inline-block; min-width: calc((100% - 25px) / 5); letter-spacing: 0; margin: 0 5px 5px 0; float: left; }
.catmenu .catlist li a { display: block; letter-spacing: 0; text-align: center; padding: 7px; background: #eee; color:#333; line-height: 1; font-size: .9rem; transition: all .3s ease; }
.catmenu .catlist li a:hover { background: #499464; color:#fff; }

.topabout { max-width: 1500px; margin: 0 auto; padding: 0; }
.topabout::after { content: ""; display: block; clear: both; }
.topabout .txt { width: 50%; float: left; background: #3A4732; padding: 50px; height: 450px; }
.topabout h2 { color:#fff; font-weight: 300; font-size: 1.6rem; padding: 0 0 5px; }
.topabout h2 em { color:#FFFF26; }
.topabout p { color:#fff; font-weight: 300; line-height: 2; margin: 0 0 20px; }
.topabout li a { display: block; border:1px solid rgba(255,255,255,0.5); width: 145px; line-height: 28px; text-align: center; color:#fff; transition: all 0.4s ease; }
.topabout li a:hover {background:#fff; border-color: #fff; color:#111; }
.topabout .img { width: 50%; height: 450px; float: right; }
.topabout .img img { width: 100%; height: 450px; object-fit: cover; font-family: 'object-fit: cover;'; }

.blandsite { padding: 40px 0; }
.blandsite::after { content: ""; display: block; clear: both; }
.blandsite h2 { text-align: center; font-size: 1.9rem; line-height: 1; margin: 0 auto 40px; }
.blandsite h2 small { font-size: .9rem; line-height: 1; font-weight: normal; }
.blandsite .inr { max-width: 1200px; margin: 0 auto; background: #fff; display: flex; }
.blandsite .inr::after { content: ""; display: block; clear: both; }
.blandsite .inr a { display: block; background:#fff; width: 20%; float: left; box-shadow: inset -1px 0 0 rgba(0,0,0,0.1); position: relative; }
.blandsite .inr a:hover { background:#fafafa; border-color: #fff; color:#111; }
.blandsite .inr a:last-child { box-shadow: none; }
.blandsite .inr a dt { text-align: center; padding: 0 20px; }
.blandsite .inr a h3 { text-align: center; padding: 15px 0; text-align: center; }
.blandsite .inr a p { padding: 0 20px 60px; font-size: .9rem; }
.blandsite .inr a::after { content: "- もっと見る -"; display: inline-block; width: 120px; margin: 0; position: absolute; left: calc(50% - 60px); bottom: 20px; line-height: 1; padding: 5px 0; border-radius: 1.5px; text-align: center; background-color: #2d3934; color:#fff; font-size: .8rem; }
.blandsite .inr a:hover:after { background:#479264;  }

.servicelist { padding: 0; }
.servicelist::after { content: ""; display: block; clear: both; }
.servicelist h2 { text-align: center; font-size: 1.9rem; line-height: 1; margin: 0 auto 40px; }
.servicelist h2 small { font-size: .9rem; line-height: 1; font-weight: normal; }
.servicelist .inr { max-width: 1200px; margin: 0 auto; background: #fff; border-top:1px solid rgba(0,0,0,0.1); border-left:1px solid rgba(0,0,0,0.1); display: flex; flex-wrap: wrap; }
.servicelist .inr::after { content: ""; display: block; clear: both; }
.servicelist .inr a { display: block; background:#fff; width: 50%; float: left; padding: 30px; box-shadow: inset -1px -1px 0 rgba(0,0,0,0.1); position: relative; }
.servicelist .inr a:hover { background:#fafafa; border-color: #fff; color:#111; }
.servicelist .inr a dt { text-align: center; }
.servicelist .inr a dt { text-align: center; }
.servicelist .inr a h3 { text-align: center; padding: 15px 0; text-align: center; }
.servicelist .inr a p { padding: 0 20px 60px; font-size: .9rem; }
.servicelist .inr a::after { content: "- もっと見る -"; display: inline-block; width: 120px; margin: 0; position: absolute; left: calc(50% - 60px); bottom: 20px; line-height: 1; padding: 5px 0; border-radius: 1.5px; text-align: center; background-color: #2d3934; color:#fff; font-size: .8rem; }
.servicelist .inr a:hover:after { background:#479264;  }

.pickup { background: #2d3934; padding: 40px 0; }
.pickup::after { content: ""; display: block; clear: both; }
.pickup h2 { text-align: center; font-size: 1.9rem; line-height: 1; margin: 0 auto 40px; color:#fff; }
.pickup h2 small { font-size: .9rem; line-height: 1; color:#fff; font-weight: normal; }
.pickup .inr { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.pickup .inr a { display: block; width: 280px; height: 100px; margin: 0 0 10px; background: rgba(255,255,255,0.15); padding: 10px;  }
.pickup .inr a:hover { background: rgba(255,255,255,0.25); }
.pickup .inr dl::after { content: ""; display: block; clear: both; }
.pickup .inr dt { float: left; margin: 0 10px 0 0; }
.pickup .inr dd { overflow: hidden; }
.pickup .inr h3 { overflow: hidden; color:#fff; font-weight: normal; line-height: 1.5; margin: -5px 0 0; }
.pickup .inr h3 small { display: inline-block; margin: 0 0 5px; font-size: .7rem; font-weight: normal; line-height: 1; color: rgba(255,255,255,0.5); }

.videos { padding: 40px 0; text-align: center; }
.videos.small { padding:0; text-align: center; }
.videos h2 { text-align: center; font-size: 1.6rem; line-height: 1.8; margin: 0 auto 40px; font-weight: normal; color:#111; }
.videos h2 small { font-size: 1.1rem; line-height: 1.8; font-weight: normal; }
.videos ul { text-align: center; }
.videos li { display: inline-block; margin: 0 10px 10px; }
.videos li a { display: inline-block; padding: 15px; line-height: 1.1; text-align: center; color:#fff; min-width: 240px; background: #2d3934; }
.videos li a:hover { background: #2F994A; }
.videos .youtube { max-width: 640px; text-align: center; margin: 0 auto 30px; }
.videos .youtube .inr { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.videos .youtube .inr iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.catalog_movie { max-width: 640px; text-align: center; margin: 0 auto 30px; }
.catalog_movie .movieWrap { position: relative; padding-bottom: 56.25%; height: 0; margin: 0 0 30px; overflow: hidden; }
.catalog_movie .movieWrap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.catalog_movie h3 { clear: both; line-height: 1.2; padding: 14px 0; border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; margin: 0 0 30px; }


.information {/* border-top:1px solid #ddd; box-shadow: inset 0 5px rgba(0,0,0,0.05); */ padding: 40px 0; background:#fff; }
.information::after { content: ""; display: block; clear: both; }
.information h2 { text-align: center; font-size: 1.9rem; line-height: 1; margin: 0 auto 40px; font-weight: normal; }
.information h2 small { font-size: .9rem; line-height: 1; font-weight: normal; }
.information .inr { max-width: 800px; border-top: 1px solid rgba(170,170,170,0.5); margin: 0 auto 30px; }
.information .inr a { display: block; border-bottom: 1px solid rgba(170,170,170,0.5); padding: 15px 0; }
.information .inr a:hover { background: rgba(57,77,81,0.1); }
.information .inr a dt { display: inline-block; line-height: 1rem; font-size: .8rem; width: 100px; padding: 0 0 0 10px; color:#777; }
.information .inr a dd { display: inline-block; line-height: 1rem; overflow: hidden; }
.information .inr a dd.cats { margin: 0 10px 0 0; position: relative; top:5px; }
.information .inr a dd.cats span { display: inline-block; line-height: 1rem; width: 7em; background: #479264; color:#fff; font-size: .8rem; padding: 4px; box-sizing: border-box; text-align: center; }
.information .inr a dd.cats.cat_pickup span { background-color: #F18C10; }
.information .inr a dd.cats.cat_careers span { background-color: #2d3934; }
.information .inr a dd.cats.cat_new_products span { background-color: #BA775A; }
.information .inr a dd.cats.cat_other span { background-color: #666; }
.information .inr a dd.cats.cat_tidy span { background-color: #68BF72; }
.information .inr a dd.cats.cat_exhibition span { background-color: #62ADB3; }
.information .inr a dd.cats.cat_misel span { background-color: #1E99A0; }
.information .inr a dd.cats.cat_smokingsite span { background-color: #689EA8; }
.information ul { text-align: center; }
.information li { display: inline-block; margin: 0 10px; }
.information li a { display: inline-block; padding: 15px; line-height: 1.1; text-align: center; color:#fff; min-width: 240px; background: #2d3934; }
.information li a:hover { background: #2F994A; }

.footerbtn { width: 100%; }
.footerbtn::after { content: ""; display: block; clear: both; }
.footerbtn li { width: 50%; float: left; }
.footerbtn li a { display: block; padding:45px; line-height: 1; color:#fff; font-size: 1.6rem; position: relative; font-weight: bold; text-align: center; }
.footerbtn li a::after { content: ''; width: 12px; height: 12px; border: 0px; border-top: solid 4px #fff; border-right: solid 4px #fff; transform: rotate(45deg); position: absolute; top:calc(50% - 6px); right: 20px; }
.footerbtn li.contact a { background: #F18C10; }
.footerbtn li.recruit a { background: #479264; }
.footerbtn li.contact a:hover,
.footerbtn li.recruit a:hover { opacity: 0.75; }

#container > footer { background: #2d3934; padding: 50px 0; }
#container > footer .inr { max-width: 1200px; margin: 0 auto; text-align: center; }
#container > footer .inr::after { content: ""; display: block; clear: both; vertical-align: top; }
#container > footer .inr ul { width: 260px; display:inline-block; vertical-align: top; }
#container > footer .inr ul li { padding: 5px 0; color:#fff; line-height: 1.25; font-size: .9rem;  }
#container > footer .inr ul li a { color:#fff; font-size: .9rem;  }
#container > footer .inr ul li a { color:#fff; font-size: .9rem;  }
#container .footersocial ul { margin: 30px auto 0; text-align: center; }
#container .footersocial ul li { display: inline-block; padding: 0 10px; }
#container .footersocial ul li a.tw { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; line-height: 40px; border-radius: 3px; }
#container .footersocial ul li a.tw img { width: 24px; margin: 0 auto; }

.copyright { padding: 30px 10px; text-align: center; font-size: .8rem; color:#999; }

#container > .title { padding:60px 0; text-align: center; background: url(../images/common/title_bg.jpg) center center no-repeat; background-size: cover; letter-spacing: .1em; line-height: 1; font-size: 2rem; color:#fff; text-shadow: 1px 1px 1px rgba(0,0,0,0.1); position: relative; }
#container > .title small { letter-spacing: .1em; font-weight: 500; line-height: 1; font-size: 1rem; color:#fff; text-shadow: 1px 1px 1px rgba(0,0,0,0.1); }

#container .pagetitle { padding:35px 0 70px; margin: 0; text-align: left; letter-spacing: .1em; line-height: 1; font-size:2.75rem; font-weight: 400; color:#121; position: relative; }
#container .pagetitle small { letter-spacing: .1em; font-weight: normal; line-height: 1; font-size: .7rem; color:#ccc; }

article.page { margin: 40px auto; max-width: 1200px; }
article.page::after { content: ""; display: block; clear: both; }
article.page > section { width: 860px; float: left; padding: 35px; background: #fff; margin: 0 0 10px; box-shadow: 1px 1px 2px rgba(0,0,0,0.05); }
article.page > section::after { content: ""; display: block; clear: both; }
article.page > aside { width: 300px; float: right; margin: 0 0 10px; }
article.page > aside .bnr { margin: 0 auto 30px; }
article.page > aside .bnr { text-align: center; }
article.page > aside .sideBrand { margin: 0 0 30px; }
article.page > aside .sideBrand h2 { text-align: center; line-height: 1.1; font-size: 1.35rem; letter-spacing: .1em; color:#26302C; margin: 0 0 30px; }
article.page > aside .sideBrand h2 small { text-align: center; line-height: 1.1; font-size:.8rem; letter-spacing: .1em; color:#26302C; }
article.page > aside .sideBrand .inr::after { content: ""; display: block; clear: both; }
article.page > aside .sideBrand a { display: block; transition: all .4s ease; background: #fff; box-shadow: inset -1px -1px 0 rgba(0,0,0,0.1); margin: 0 0 10px; }
article.page > aside .sideBrand a dl { padding: 10px 10px 10px 0; }
article.page > aside .sideBrand a dl::after { content: ""; display: block; clear: both; }
article.page > aside .sideBrand a dt { width: 130px; float: left; margin: 0 10px 0 0; }
article.page > aside .sideBrand a dd { overflow: hidden; text-align: center; min-height: 80px; text-align: center; display: flex; align-items: center; }
article.page > aside .sideBrand a dd h3 { text-align: center; margin: 0 auto; }
article.page > aside .sideBrand a dd p { display: none; }
article.page > aside .sideBrand a:hover { box-shadow: 0 0 3px rgba(0,0,0,0.2); }
article.page > aside .sidePickup { margin: 0 0 30px; }
article.page > aside .sidePickup h2 { text-align: center; line-height: 1.1; font-size: 1.35rem; letter-spacing: .1em; color:#26302C; margin: 0 0 30px; }
article.page > aside .sidePickup h2 small { text-align: center; line-height: 1.1; font-size:.8rem; letter-spacing: .1em; color:#26302C; }
article.page > aside .sidePickup .inr { border-top: 1px solid rgba(0,0,0,0.1); }
article.page > aside .sidePickup .inr::after { content: ""; display: block; clear: both; }
article.page > aside .sidePickup a { display: block; border-bottom: 1px solid rgba(0,0,0,0.1); transition: all .4s ease; }
article.page > aside .sidePickup a dl { padding: 10px 0; }
article.page > aside .sidePickup a dl::after { content: ""; display: block; clear: both; }
article.page > aside .sidePickup a dt { width: 50px; float: left; margin: 0 10px 0 0; }
article.page > aside .sidePickup a dd { overflow: hidden; min-height: 50px; vertical-align: middle; font-size: 1rem; font-weight: normal; line-height: 1.25; display: flex; align-items: center; }
article.page > aside .sidePickup a dd h3 { vertical-align: middle; font-size: 1rem; line-height: 1.25; font-weight: normal; }
article.page > aside .sidePickup a:hover dt { opacity: 0.75; }
article.page > aside .sidePickup a:hover dd h3 { color:#479264; }

article.page .h02 { clear: both; line-height: 1.2; padding: 6px 6px 7px; font-size: 1.6rem; font-weight:500; letter-spacing: .05em; color:#fff; margin: 0 0 30px; background: #499464; }
article.page .h03 { clear: both; line-height: 1.2; padding: 14px 0; border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; margin: 0 0 30px; }
article.page .list_box .list_item .ttl { border-top:1px solid #ddd; border-bottom:1px solid #ddd; background: transparent; font-weight: 500; padding: 10px 0; color:#333; }
article.page > section .pagecatch { margin: -35px -35px 35px; }
article.page > section .pagecatch img { width: 100%; }

.topicpath { padding: 7px; /* background: rgba(189,194,190,0.3); */ }
.topicpath::after { content: ""; display: block; clear: both; }
.topicpath ul { }
.topicpath li { float: left; line-height: 1.2; font-size: .8rem; color:#666; }
.topicpath li a { padding: 0 20px 0 0; position: relative; line-height: 1.2; font-size: .8rem; color:#3091A9; }
.topicpath li a:hover { color:#666; }
.topicpath li a::after { content: ""; display: block; position: absolute; margin: auto; content: ""; vertical-align: middle; right: 10px; top: calc(50% - 2px); width: 4px; height: 4px; border-top: 1px solid #999; border-right: 1px solid #999; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

table.bordertable { border-spacing: 0; border-collapse: collapse; width: 100%; box-sizing: border-box; table-layout: fixed; }
table.bordertable th { border:1px solid #ccc; padding: 10px; vertical-align: middle; text-align: center; font-weight: bold; background: #f6f6f6; word-break: break-all; white-space: normal; line-height: 1.25; }
table.bordertable td { border:1px solid #ccc; padding: 10px; vertical-align: middle; text-align: center; line-height: 1.25; }
table.bordertable td p { text-align: center; line-height: 1.25; }

ul.list li { padding: 0 0 0 2em; position: relative; }
ul.list li::before { content: ""; display: block; width: 6px; height: 6px; line-height: 1px; font-size: 1px; background: #479264; border-radius: 100px; position: absolute; left: 8px; top:10px; }
ul.list li em { font-weight: bold; color:#333; padding: 0 1em 0 0; }
ol.list { list-style-type: decimal; padding: 0 0 0 2em; }
ol.list li { list-style-type: decimal; padding: 0 0 0 .5em; }

.pagenav { margin: 0 0 30px; }
.pagenav li { display: inline-block; }
.pagenav li a { display: inline-block; line-height: 1; padding: 12px 30px; background: #EDF0EA; color:#333; transition: all .4s ease; }
.pagenav li a::before { content: ""; display: inline-block; width: 5px; height: 5px; border: 1px solid; border-color: transparent transparent #565656 #565656; transform: rotate(-45deg); margin: 0 5px 0 0; position: relative; top:-3px; }
.pagenav li a:hover { background: #499464; color:#fff; }
.pagenav li a:hover::before { border-color: transparent transparent #fff #fff; top:-2px; }

.contentslist .inr::after { content: ""; display: block; clear: both; }
.contentslist .inr { display: flex; flex-wrap:wrap; }
.contentslist .inr > a { display: block; width: calc(50% - 30px); margin: 0 15px 30px; padding: 0 0 40px; background: #f3f3f3; position: relative; }
.contentslist .inr > a::after { content: "- もっと見る -"; display: inline-block; width: 120px; margin: 0; position: absolute; left: calc(50% - 60px); bottom: 20px; line-height: 1; padding: 5px 0; border-radius: 1.5px; text-align: center; background-color: #2d3934; color:#fff; font-size: .8rem; }
.contentslist .inr > a h3 { font-size: 1.25rem; background: #499464; padding: 10px; text-align: center; color:#fff; line-height: 1; }
.contentslist .inr > a .img { padding: 15px; text-align: center; }
.contentslist .inr > a .txt { padding:0 15px 15px; line-height: 1.5; }
.contentslist .inr > a:hover h3 { background: #009a44; }
.contentslist .inr > a:hover .img { opacity: 0.75; }
.contentslist .inr > a:hover::after { background-color: #499464; }

.catalog_movie .video { margin: 0 auto 35px; max-width: 640px; text-align: center; }
.catalog_movie .video .youtube { position: relative; width: 100%; height: 0; padding-top: 56.25%; }
.catalog_movie .video .youtube iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.catalog_movie_list::after { content: ""; display: block; clear: both; }
.catalog_movie_list .inr { display: flex; flex-wrap:wrap; justify-content:space-between; }
.catalog_movie_list a { display: block; width:32.3%; margin: 0 0 10px; padding: 10px; background: #f3f3f3; position: relative; }
.catalog_movie_list a::after { content: ""; display: block; clear: both; }
.catalog_movie_list a dt { width: 25%; float: left; }
.catalog_movie_list a dt img { width: 100%; height: 50px; object-fit: cover; font-family: 'object-fit: cover;'; }
.catalog_movie_list a dd { width: calc(75% - 10px); float:right; line-height: 1.2; }
.catalog_movie_list a dd h3 { line-height: 1.2; font-size: 1rem; margin: 0 0 5px; font-weight: 500; }
.catalog_movie_list a dd p { line-height: 1.2; font-size: .7rem; color: #999; }
.catalog_movie_list a.active,
.catalog_movie_list a:hover { background: #499464; }
.catalog_movie_list a.active dt img,
.catalog_movie_list a:hover dt img { opacity: 0.75; }
.catalog_movie_list a.active dd h3,
.catalog_movie_list a:hover dd h3 { color:#fff; }
.catalog_movie_list a.active dd p,
.catalog_movie_list a:hover dd p { color: rgba(255,255,255,0.5); }

.vtoptable th,
.vtoptable td { vertical-align: top !important; }
.photo { float: right; margin: 0 0 20px 20px; }

.brandTxt::after { content: ""; display: block; clear: both; }
.brandTxt { display: flex; flex-wrap:wrap; justify-content: space-between; }
.brandTxt > .cont { width: calc(50% - 20px); margin: 0 auto 20px; padding: 0; background: #f3f3f3; position: relative; }
.brandTxt > .cont h3 { font-size: 1.25rem; padding: 15px 0; margin: 0 15px; border-bottom: 1px solid #ccc; line-height: 1.4; }
.brandTxt > .cont p { padding:15px; line-height: 1.5; }

.photolist ul { margin: 0 0 30px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.photolist ul li { width: 24%; }

.relatedproduct { margin: 0 0 30px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.relatedproduct > a { width: 160px; }
.relatedproduct > a h4 { line-height: 1.25; line-height: 1.4; font-size: 1rem; padding: 10px 0 0; }
.relatedproduct > a p { line-height: 1.25; line-height: 1.4; font-size: .8rem; }

.linkarea { margin: 0 0 30px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.linkarea dl { width: 48%; margin: 0 0 30px; }
.linkarea dt { border-bottom: 1px solid #2F994A; margin: 0 0 10px; font-size: 1.1rem; font-weight: bold; padding: 5px 0; }
.linkarea dd { padding: 0 0 0 2em; position: relative; }
.linkarea dd::before { content: ""; display: block; width: 6px; height: 6px; line-height: 1px; font-size: 1px; background: #479264; border-radius: 100px; position: absolute; left: 11px; top:10px; }

.picList { margin: 0 0 30px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.picList > a { width: 190px; margin: 0 0 10px; padding: 15px; background: #f6f6f6; }
.picList > a:hover { background: #eee; }
.picList > a dt {  text-align: center; }
.picList > a h4 { line-height: 1.25; line-height: 1.4; font-size: 1rem; padding: 10px 0 0; }
.picList > a p { line-height: 1.25; line-height: 1.4; font-size: .8rem; }

.universityList ul { margin: 0 0 30px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.universityList ul::after { content: ""; display: block; clear: both; width:200px; }
.universityList li { width: 50%; padding: 0 0 0 2em; position: relative; }
.universityList li::before { content: ""; display: block; width: 6px; height: 6px; line-height: 1px; font-size: 1px; background: #479264; border-radius: 100px; position: absolute; left: 11px; top:10px; }

.performancelist ul { margin: 0 0 30px; display: flex; flex-wrap: wrap; justify-content: space-between; }
.performancelist ul::after { content: ""; display: block; clear: both; width:200px; }
.performancelist li { width: 200px; padding: 0 0 0 2em; position: relative; }
.performancelist li::before { content: ""; display: block; width: 6px; height: 6px; line-height: 1px; font-size: 1px; background: #479264; border-radius: 100px; position: absolute; left: 11px; top:10px; }

.faqwrap .conts { margin: 0 0 30px; }
.faqwrap dl { padding: 0; margin: 0 0 10px; border:1px solid #ddd; }
.faqwrap dt { padding: 15px 0 15px 60px; line-height: 1.4; background: #fff url(//www.teramoto.co.jp/img/icn_q.png) no-repeat 10px center; cursor: pointer; transition: all .3s ease; }
.faqwrap dt:hover,
.faqwrap dl.active dt { background-color: #f6f6f6; color:#499464;  }
.faqwrap dd { padding: 15px 15px 15px 60px; line-height: 1.4; background: #ffffff url(//www.teramoto.co.jp/img/icn_a.png) no-repeat 10px center; border-top:1px dashed #ccc; }
.faqwrap dd a { color:#3091A9; text-decoration: underline; }
.faqwrap dd a:hover { text-decoration: none; }

.contactwrap {}
.contactwrap dl { margin: 0 0 30px; padding: 0 0 30px; border-bottom:1px dashed #ddd; }
.contactwrap dt { font-weight: bold; color:#333; margin: 0 0 10px; }
.contactwrap dt > .title { font-weight: bold; color:#333; position: relative; display: inline-block; padding: 0 0 0 15px; }
.contactwrap dt > .title:before { position: absolute; top:3px; left: 0; content: ""; display: block; width:5px; height:20px; border-radius: 1px; background:#2F994A; overflow: hidden; font-size: 1px; line-height: 1px; }
.contactwrap dt > .required { display: inline-block; color:#f00; }
.contactwrap dd input[type="email"],
.contactwrap dd input[type="text"],
.contactwrap dd textarea { box-sizing: border-box; width: 100%; padding: 5px; margin: 5px 0; font-weight: normal; }
.contactwrap dd label { display: inline-block; width: 50%; float: left; margin: 0 0 5px; }
.contactwrap .iframe { border:4px solid #ddd; padding: 20px; margin: 0 0 30px; height: 200px; overflow: auto; }
.contactwrap dl#privacy { margin: 0 auto 30px; }
.contactwrap dl#privacy dd { text-align: center; margin: 0 auto; }
.contactwrap dl#privacy dd label { width: auto; float: none; text-align: center; margin: 0 auto; }
.contactwrap .buttons-area-confirm,
.contactwrap .submit-button { text-align: center; }
.contactwrap .buttons-area-confirm input.button-confirm { display: inline-block; padding: 15px; min-width: 200px; box-sizing: border-box; margin: 0 auto 10px; font-size: 1.1rem; vertical-align: middle; line-height: 1; background: #F18C10; color: #fff; text-align: center; border:none; border-radius: 3px; outline: none; cursor: pointer; }
.contactwrap .buttons-area-confirm input.button-confirm:hover { opacity: .75; }
.contactwrap .buttons-area-confirm input.button-rewrite { display: inline-block; padding: 15px; min-width: 200px; box-sizing: border-box; margin: 0 auto 10px; font-size: 1.1rem; vertical-align: middle; line-height: 1; background: #999; color: #fff; text-align: center; border:none; border-radius: 3px; outline: none; cursor: pointer; }
.contactwrap .buttons-area-confirm input.button-rewrite:hover { opacity: .75; }
.contactwrap span.wpcf7-list-item { margin-left: 0; }
.contactwrap input[type="button"] { border-radius: 2px; cursor: pointer; display: inline-block; padding: 15px 30px; line-height: 1; font-size: 1.1rem; letter-spacing: .05em; border:none; outline: none; background: #bbb; color:#fff; font-weight: bold; margin: 0 auto; transition: all .3s ease; }
.contactwrap input[type="button"]:hover { opacity: 0.75; }
.contactwrap input[type="submit"] { border-radius: 2px; cursor: pointer; display: inline-block; padding: 15px 30px; line-height: 1; font-size: 1.1rem; letter-spacing: .05em; border:none; outline: none; background: #F18C10; color:#fff; font-weight: bold; margin: 0 auto; transition: all .3s ease; }
.contactwrap input[type="submit"]:hover { opacity: 0.75; }

article.page > section .information { padding:0; }
article.page > section .information .inr { margin: 0 auto; }

.keywordwrap { display: flex; justify-content: space-between; flex-wrap: wrap; }
.keywordwrap dl { width: calc(50% - 10px); }
.keywordwrap dt { font-weight: bold; font-size: 1.2rem; line-height: 1.25; padding: 5px 0; border-bottom: 3px solid #009b42; }
.keywordwrap dd { padding: 10px 0; }

.searchresult { background: #E4E9E8; padding: 25px; margin: 0 0 30px; }
.searchresult h2 { font-size: 1.5rem; margin: 0 0 15px; line-height: 1.4; }
.searchresult ul::after { content: ""; display: block; clear: both; }
.searchresult li {float: left; margin: 0 1em 0 0;}
.searchresult li input[type="search"] { padding: 5px; width: 400px; box-sizing: border-box; height: 40px; }
.searchresult li select { padding: 5px; box-sizing: border-box; height: 40px; }
.searchresult li input[type="submit"] { width: 80px; height: 40px; border-radius: 2px; transition: all .3s ease; box-sizing: border-box; cursor: pointer; background: #2d3934; color:#fff; border:none; outline: none; }
.searchresult li input[type="submit"]:hover { background: #666; }

.pagenation { padding: 10px 0 20px; width: 100%; overflow: hidden; }
.pagenation p { padding: 0 0 10px; color: #444; }
.pagenation p strong { color: #888; padding: 0 3px; }
.pagenation ul { text-align: center; padding: 10px 0 0; }
.pagenation ul li { display: inline-block; /display: inline; /zoom:1; margin: 0 1px; width: 40px; height: 40px; text-align: center; line-height: 40px; font-size: 1rem; }
.pagenation ul li a { display: block; border:1px solid #ccc; line-height: 38px; background: #fff; border-radius: 2px; color:#333; }
.pagenation ul li a:hover { color:#900; background: #fff; }
.pagenation ul li em { text-align: center; display: block; line-height: 40px; border-radius: 2px; color:#fff; background: #eee; }
.pagenation ul li span { text-align: center; display: block; line-height: 40px; border-radius: 2px; color:#666; }
.pagenation ul li span.current { text-align: center; display: block; line-height: 40px; border-radius: 2px; color:#fff; background: #eee; }

.nav-links { padding: 10px 0 20px; width: 100%; overflow: hidden; }
.nav-links p { padding: 0 0 10px; color: #444; }
.nav-links p strong { color: #888; padding: 0 3px; }
.nav-links { text-align: center; padding: 10px 0 0; }
.nav-links a { display: inline-block; border:1px solid #ccc; width: 40px; line-height: 38px; background: #fff; border-radius: 2px; color:#333; }
.nav-links a:hover { color:#900; background: #fff; }
.nav-links em { text-align: center; display: inline-block; width: 40px; line-height: 40px; border-radius: 2px; color:#fff; background: #eee; }
.nav-links span { text-align: center; display: inline-block; width: 40px; line-height: 40px; border-radius: 2px; color:#666; }
.nav-links span.current { text-align: center; display: inline-block; width: 40px; line-height: 40px; border-radius: 2px; color:#fff; background: #eee; }


.itemlist .inr { display: flex; justify-content: space-between; flex-wrap: wrap; }
.itemlist .inr::before{ content:""; display: block; width:23%; order:1; }
.itemlist .inr::after{ content:""; display: block; width:23%; }
.itemlist .inr > a { width: 190px; padding: 15px; box-sizing: border-box; display: block; margin: 0 0 30px; box-shadow: inset -1px -1px 0 #e5e5e5; position: relative; }
.itemlist .inr > a.new::after { content: "NEW"; display: block; text-align: center; line-height: 1.25; padding: 3px 0; width: 4em; color:#fff; font-size: .7rem; background: #EB8A32; color:#fff; position: absolute; top:0; left: 0; }
.itemlist .inr > a:hover { background: #f6f6f6; }
.itemlist .inr > a dt {  min-height: 158px; text-align: center; }
.itemlist .inr > a dt img { height: 158px; width: 158px; object-fit: cover; font-family: 'object-fit: cover;'; }
.itemlist .inr > a h3 { font-size: 1.15rem; line-height: 1.4; font-weight: normal; color:#111; padding: 7px 0; margin: 0 0 7px; border-bottom: 1px solid #eee; letter-spacing: 0; }
.itemlist .inr > a p { font-size: .9rem; line-height: 1.4; font-weight: normal; color:#777; }

.content_inner.relationItemWrap { display: flex; justify-content: space-between; flex-wrap: wrap; }
.content_inner.relationItemWrap::before{ content:""; display: block; width:23%; order:1; }
.content_inner.relationItemWrap::after{ content:""; display: block; width:190px; padding: 0 15px; }
.content_inner.relationItemWrap h2 { width: 100%; }
.content_inner.relationItemWrap .navigation.pagination { width: 100%; }
.content_inner.relationItemWrap > a { width: 190px; padding: 15px; box-sizing: border-box; display: block; margin: 0 0 30px; box-shadow: inset -1px -1px 0 #e5e5e5; position: relative; }
.content_inner.relationItemWrap > a.new::after { content: "NEW"; display: block; text-align: center; line-height: 1.25; padding: 3px 0; width: 4em; color:#fff; font-size: .7rem; background: #EB8A32; color:#fff; position: absolute; top:0; left: 0; }
.content_inner.relationItemWrap > a:hover { background: #f6f6f6; }
.content_inner.relationItemWrap > a h3 { font-size: 1.15rem; line-height: 1.4; font-weight: normal; color:#111; padding: 7px 0; margin: 0 0 7px; border-bottom: 1px solid #eee; }
.content_inner.relationItemWrap > a p { font-size: .9rem; line-height: 1.4; font-weight: normal; color:#777; }

.content_inner.relationItemWrap .placeMap { width: 100%; }

.contlist { display: flex; justify-content: space-between; flex-wrap: wrap; }
.contlist > a { width: 32%; padding: 15px; box-sizing: border-box; display: block; margin: 0 0 30px; box-shadow: inset -1px -1px 0 #e5e5e5; position: relative; }
.contlist > a:hover { background: #f6f6f6; }
.contlist > a dt { width: 100%; height: 150px; margin: 0 0 10px; }
.contlist > a dt img { width: 100%; height: 150px; object-fit: cover; font-family: 'object-fit: cover;'; }
.contlist > a h3 { font-size: 1.15rem; line-height: 1.4; font-weight: normal; color:#111; padding:0; margin: 0 ; }
.contlist > a p { font-size: .9rem; line-height: 1.4; font-weight: normal; color:#777; }

.historywrap > dl { padding: 0 0 30px; margin: 0 0 30px; border-bottom: 1px dashed #ddd; }
.historywrap > dl::after { content: ""; display: block; clear: both; }
.historywrap > dl > dt { float: right; margin: 0 0 30px 30px; }
.historywrap > dl:nth-child(even) > dt { float: left; margin: 0 30px 30px 0; }
.historywrap > dl > dd { overflow: hidden; }
.historywrap > dl > dd h2 { font-size: 1.5rem; color:#2F994A; padding: 0 0 10px 12px; line-height: 1.25; position: relative; }
.historywrap > dl > dd h2::before { content: ""; display: block; width: 3px; height: 30px; background: #2F994A; overflow: hidden; position: absolute; top:-2px; left: 0; }
.historywrap > dl > dd p { margin: 0 0 30px; font-size: 1rem; }

.productsdetail { padding: 40px 0 40px; }
.productsdetail::after { content: ""; display: block; clear: both; }
.productsdetail .img { width: 320px; float: left; }
.productsdetail .img .inr .main { margin-bottom: 10px; }
.productsdetail .img .inr .main img { width: 320px; height: 320px; object-fit: contain; font-family: 'object-fit: contain;'; }
.productsdetail .img .inr .next{ position: absolute; display: inline-block; padding-left: 20px; cursor: pointer; top: calc(50% - 6px); right: 10px; z-index: 1000; }
.productsdetail .img .inr .next::before{ content: ''; width: 12px; height: 12px; border: 0px; border-top: solid 4px #000; border-right: solid 4px #000; transform: rotate(45deg); position: absolute; top: 50%; left: 0; }
.productsdetail .img .inr .prev{ position: absolute; display: inline-block; padding-left: 20px; cursor: pointer; top: calc(50% - 6px); left: 10px; z-index: 1000; }
.productsdetail .img .inr .prev::before{ content: ''; width: 12px; height: 12px; border: 0px; border-top: solid 4px #000; border-left: solid 4px #000; transform: rotate(-45deg); position: absolute; top: 50%; left: 0; }
.productsdetail .img .inr .next:hover,
.productsdetail .img .inr .prev:hover { opacity: 0.75; }
.productsdetail .mark { width: calc(100% - 360px); float: right; margin: 0 0 5px; }
.productsdetail .mark li { display: inline-block; padding: 5px 10px; background: #e5e5e5; float: left; margin: 0 5px 5px 0; font-size: 10px; line-height: 1; }
.productsdetail .mark::after { content: ""; display: block; clear: both; }
.productsdetail .txt { width: calc(100% - 360px); margin: 0 0 40px; float: right; }
.productsdetail .txt h2 { line-height: 1.4; font-size: 1.2rem; padding: 0 0 10px; margin: 0 0 10px; border-bottom:1px solid #e5e5e5; color:#444; }
.productsdetail .txt h3 { line-height: 1.7; font-size: 1.5rem; font-weight: normal; padding: 0 0 30px; color:#111; }
.productsdetail .txt table { margin: 0 0 30px; }
.productsdetail .txt th { line-height: 1.4rem; padding: 0 1em 0 0; color:#999; font-weight: bold; font-size: .8rem; }
.productsdetail .txt td { line-height: 1.4rem; }
.productsdetail .txt ul { list-style-type: disc; margin: 0 0 30px 1.75em; }
.productsdetail .txt ul li { list-style-type: disc; }
.swiper-slide { text-align: center; }

.quizwrap dl { padding: 50px 0; margin: 0; border-bottom: 1px solid #eee; }
.quizwrap dl dt { text-align: center; margin: 0 0 30px; }
.quizwrap dl dt img { box-shadow: 0 0 3px 0 rgba(0,0,0,0.2); }
.quizwrap dl dt .que { display: inline-block; cursor: pointer; }
.quizwrap dl dt .ans { display: none; cursor: pointer; }
.quizwrap dl dd ul { text-align: center; }
.quizwrap dl dd ul li { display: inline-block; padding: 0 10px 10px; }
.quizwrap dl dd ul li a { display: inline-block; width: 240px; padding: 15px; color:#fff; font-size: 1.25rem; line-height: 1; font-weight: bold; border-radius: 5px; background: #eee; text-align: center; }
.quizwrap dl dd ul li a.start { background: #00A2FF; }
.quizwrap dl dd ul li a.next { background: #00A2FF; }
.quizwrap dl dd ul li a.prev { background: #aaa; }
.quizwrap dl.active dt .que { display: none; }
.quizwrap dl.active dt .ans { display: inline-block; }

#maincontent { max-width: 700px; margin: 0 auto; }
/*price*/
.price { line-height: 1.3; }
.price .mt14 { margin-top: 14%; }
.price h4 { min-height: 29px; padding: 10px 50px 2px 0; background: url(../images/common/new.png) no-repeat right bottom; border-bottom: 1px solid #746e6c; }
.price .icon01 { min-height: 39px; padding: 10px 38px 2px 0; background: url(../images/common/icon01.png) no-repeat right bottom; border-bottom: 1px solid #746e6c; }
.price .icon02 { min-height: 39px; padding: 10px 126px 2px 0; background: url(../images/common/icon02.png) no-repeat right bottom; border-bottom: 1px solid #746e6c; }
.price .icon03 { min-height: 39px; padding: 10px 90px 2px 0; background: url(../images/common/icon03.png) no-repeat right bottom; border-bottom: 1px solid #746e6c; }
.price .icon04 { padding: 10px 0 25px 0; color: #e50008; background: url(../images/common/icon04.png) no-repeat 0 bottom; border-bottom: 1px solid #746e6c; }
.price .icon05 { min-height: 29px; padding: 10px 26px 2px 0; background: url(../images/products06/icon.png) no-repeat right bottom; border-bottom: 1px solid #746e6c; }
.price .icon06 { min-height: 39px; padding: 10px 61px 2px 0; background: url(../images/common/icon05.png) no-repeat right bottom; border-bottom: 1px solid #746e6c; }
.price .noicon { padding: 10px 0 2px 0; background: none; }
.price h5 { padding: 0 1.7% 1.7%; margin: 0 0 1.7%; font-size: 1rem; border-bottom: 1px solid #746e6c; }
.price h5 .right { float: right; }
.price p { font-size: 1rem; }
.price .indent1 { margin: 0 0 1.7% 1em; text-indent: -1em; }
.price .indent8 { margin-left: 8em; text-indent: -8em; }
.price ul { clear: both; margin: 0 0 1.7%; }
.price li { display: table; padding: 0 2px; font-size: 1rem; }
.price li span { display: table-cell; vertical-align: top; }
.price li span:first-child { width: 6em; font-weight: bold; }
.price .end { clear: both; padding: 0 0 1%; margin: 0 0 2.5%; border-bottom: 1px solid #746e6c; }
.price .end li { display: table; padding: 0 2px; font-size: 1rem; }
.price .end li span { display: table-cell; vertical-align: top; }
.price .end li span:first-child { width: 6em; font-weight: bold; }
.price .tbl { width: 100%; margin: 0 0 1.7%; border-top: 1px solid #746e6c; font-size: 1rem; }
.price .tbl th { padding: 2px; font-weight: bold; border-bottom: 1px solid #746e6c; }
.price .tbl td { table-layout: fixed; padding: 2px; border-bottom: 1px solid #746e6c; text-align: center; }
.price .tbl01 { width: 100%; margin: 0 0 1.7%; border-top: 1px solid #746e6c; border-spacing: 0; }
.price .tbl01 th { padding: 2px; font-weight: bold; border-bottom: 1px solid #746e6c; }
.price .tbl01 td { padding: 2px; border-bottom: 1px solid #746e6c; text-align: center; }
.price .tbl01 td:first-child { font-weight: bold; text-align: left; }
.price .red { color: #e50008; font-weight: bold; }
.price .detail li { margin: 0 0 0 0.6em; text-indent: -0.6em; }
.price .pro01 { padding: 0 0 18px; background: url(../images/products01/detail01.png) no-repeat 0 bottom; }
.price .pro02 { padding: 0 0 28px; background: url(../images/products02/detail01.png) no-repeat 0 bottom; }
.price .pro03_01 { padding: 0 0 28px; background: url(../images/products03/detail01.png) no-repeat 0 bottom; }
.price .pro03_02 { padding: 0 0 58px; background: url(../images/products03/detail02.png) no-repeat 0 bottom; }
.price .tbl02 { width: 100%; margin: 0 0 1.7%; border-top: 1px solid #746e6c; font-size: 10px}
.price .pro06 { padding: 0 0 18px; background: url(../images/products06/detail01.png) no-repeat 0 bottom; }
.price .pro06_02 { padding: 0 0 18px; background: url(../images/products06/detail02.png) no-repeat 0 bottom; }
.price .tbl02 th { padding: 2px; font-weight: bold; border-bottom: 1px solid #746e6c; }
.price .tbl02 th:first-child { border-right: 1px solid #746e6c; }
.price .tbl02 td { padding: 2px; border-bottom: 1px solid #746e6c; text-align: center; }
.price .tbl02 td:first-child { border-right: 1px solid #746e6c; text-align: left; }
.price .tbl02 .nowrap { white-space: nowrap; }
.price .tbl02 .txt_center { text-align:center !important; }
.tit { display: table; width: 100%; margin: 0 0 1.7%; font-weight: bold; }
.tit dt { display: table-cell; width: 5em; vertical-align: top; }
.tit dt span { position: relative; display: block; padding: 2px 4px; border: 1px solid #878483; border-radius: 3px; behavior: url("PIE.htc"); }
.tit dd { display: table-cell; padding: 0 0 0 10px; font-size:1rem; vertical-align: top; line-height: 1.3; }
.btn { border-radius: 1px; font-size: 1rem; display: inline-block; padding:15px; min-width: 180px; color:#fff; line-height: 1; background: #1A88BD; border:none; outline: none; cursor: pointer; }
.btn:hover { background: #2a98cd; }
.attention { color:#f00 !important; }
.c_contact { text-align: center; margin: 35px 0 0; }

.placemenu h2 { text-align: left; line-height: 1.2; font-size: 1.2rem; margin: 0 auto 10px; }
.placemenu ul { display: flex; justify-content: space-between; margin: 0 0 30px; }
.placemenu ul li { width: 20%; text-align: center; line-height: 1.25; }
.placemenu ul li a { background: #f6f6f6; display: block; text-align: center; line-height: 1.25; font-size: 1.15rem; color:#222; padding: 100px 0 30px; position: relative; box-shadow: inset -1px 0 0 rgba(0,0,0,0.1); transition: all .3s ease; }
.placemenu ul li:last-child a { box-shadow: none; }
.placemenu ul li a::after { position: absolute; top:30px; left: calc(50% - 25px); opacity:1; }
.placemenu ul li.school a::after { content: url(../images/common/ico_place_school.png); }
.placemenu ul li.office a::after { content: url(../images/common/ico_place_office.png); }
.placemenu ul li.hospital a::after { content: url(../images/common/ico_place_hospital.png); }
.placemenu ul li.factory a::after { content: url(../images/common/ico_place_factory.png); }
.placemenu ul li.volumeseller a::after { content: url(../images/common/ico_place_volumeseller.png); }
.placemenu ul li a small { color:#394D51; font-size: .8rem; }
.placemenu ul li a:hover { background: #d1dCdB; }

.eco * { margin: 0; padding: 0; }
.eco a { color: #3366B2; text-decoration: underline; }
.fu_line { text-decoration: underline; }
.fsmall { font-size: 0.8rem; }
.fbig { font-size: 1.1rem; }
.fcb { color: #223a70 !important; }
.con_block:not(:first-child) { margin-top: 35px; }
.eco .topImg { text-align: center; border-bottom: none !important; }
.con_block h3 { font-size: 1.25rem; margin-top: 15px; }
.list_box { width: 100%; display: table; }
.list_box .inbox:not(:first-child) { margin-top: 20px; }
.list_box .list_title { display: table-cell; vertical-align: middle; width: 14%; min-width: 82px; padding: 3px; height: 88px; border: 1px solid #80af72; background: #9dd88c; text-align: center; font-weight: bold; color: #202020; }
.list_box .list_item { display: table-cell; padding-left: 15px; width: 86%; }
.list_box .list_item .ttl { font-weight: bold; background: #3a7052; padding: 5px; margin-bottom: 5px; color: #FFFFFF; }
.table table { border-spacing: 0; border-collapse: collapse; }
#con2 .gimu_list { margin-top: 20px; }
#con3 .txt-link { text-align: right; margin-top: 15px; }
#con4 .table td { border: 1px solid #80af72; padding: 10px; }
#con4 .table .list_title { text-align: center; font-weight: bold; background: #9dd88c; width: 25%; color: #202020; font-size: 1rem; line-height: 1.25; vertical-align: middle; }
#con4 .table .list_item { display: table-cell; padding-left: 10px; width: 40%; }
#con4 .table .list_img { width: 35%; text-align: center; }
#con5 .txt-link { margin-left: 102px; }
#con5 .table td { border: 1px solid #80af72; padding: 10px; }
#con5 .table .list_title { text-align: center; font-weight: bold; background: #9dd88c; color: #202020; }
#con5 .table .list_item { width: 35%; }
#con5 .table .list_img { width: 40%; text-align: center; }
#con5 .txtTtl { font-weight: bold; color: #009a44; }
#con6 .seisouList>li { position: relative; margin: 0 0 1.0em 1.5em; }
#con6 .seisouList>li:last-child { margin-bottom: 0; }
#con6 .seisouList li span { position: absolute; top: 0; left: -1.5em; }

.keywordarticle p { font-size: 1rem; line-height: 1.75; margin: 0 0 3em; }
.keywordarticle table { border-spacing: 0; border-collapse: collapse; width: 100%; box-sizing: border-box; table-layout: fixed; margin: 0 0 30px; }
.keywordarticle table th { border:1px solid #ccc; padding: 10px; vertical-align: middle; text-align: center; font-weight: bold; font-size: 1rem; background: #f6f6f6; word-break: break-all; white-space: normal; line-height: 1.25; }
.keywordarticle table td { border:1px solid #ccc; padding: 10px; vertical-align: middle; text-align: center; line-height: 1.25; font-size: 1rem; }
.keywordarticle table td p { text-align: center; line-height: 1.25; }

.new_products { max-width: 700px; margin: 0 auto; }
.new_products .cf_box { width: 100%; padding: 0 1.7%; margin-bottom: 10px; }
.new_products .main .c_contact { clear: both; margin: 20px 0; text-align: center; }

.roundBtn { padding: 0 0 0 360px; clear: both; width: 100%; }
.roundBtn::after { content: ""; display: block; clear: both; }
.roundBtn a { display: block; background: #fe9e1a url(../images/common/icn_arr_wht.png) 18px center no-repeat; text-align: center; width: 100%; border-radius: 4px; padding: 15px 0; color: #fff; font-weight: bold; font-size: 15px; text-decoration: none; position: relative; width: 282px; margin: 0 0 10px; }
.roundBtn a:after { content: ""; background: url(../images/common/icn_catalog.png) no-repeat center center; width: 36px; height: 32px; position: absolute; right: 8px; top: 11px; }
.roundBtn a:hover { opacity: 0.75; }
.roundBtn.manualBtn a { background-color: #898989; }
.roundBtn.manualBtn a:after {display: none; }
.roundBtn.sampleBtn a:after { background-image: url(../images/common/icn_sample.png); }

#main > .youtube { clear: both; position: relative; padding-bottom: 56.25%; height: 0; margin: 0 0 40px; overflow: hidden; background: #fff !important; }
#main > .youtube iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#container div.wpcf7-response-output { display: none !important; }

.newproduct_v2 {  }
.newproduct_v2 h3.catchcopy { font-size: 1.73rem; line-height: 1.5; color:#333; letter-spacing: 0; margin: 50px 0; font-weight: bold; }
.newproduct_v2 h3.catchcopy small { display: inline-block; font-size: 1.1rem; line-height: 1.8; color:#333; letter-spacing: 0; font-weight: normal; }
.newproduct_v2 .productInfo { margin: 50px 0 0; }
.newproduct_v2 .productInfo h3 { color:#333; font-size: 1.3rem; line-height: 1.3; font-weight: bold; padding: 15px 0; letter-spacing: 0; border-bottom: 3px solid rgba(0,0,0,0.45); }
.newproduct_v2 .productInfo h3 small { font-size: 1rem; line-height: 1.3; color:#888; font-weight: normal; }
.newproduct_v2 .productInfo .pricetxt { font-size: 1.6rem; line-height: 2rem; color:#f00; padding:15px 0; vertical-align: middle; }
.newproduct_v2 .productInfo .pricetxt small { font-size: .9rem; line-height: 2rem; color:#f00; display: inline-block; padding: 0 5px; vertical-align: middle; position: relative; top:-3px; }
.newproduct_v2 .productInfo .producttag { margin: 0 0 10px; }
.newproduct_v2 .productInfo .producttag ul::after { content: ""; display: block; clear: both; }
.newproduct_v2 .productInfo .producttag ul li { display: inline-block; line-height: 1; font-size: 1rem; padding: 6px 10px 8px; text-align: center; border-radius: 3px; background: #666; color:#fff; margin: 0 5px 5px 0; box-shadow: inset -1px -1px 0 rgba(0,0,0,0.1); }
.newproduct_v2 .productInfo .producttag ul li.tag.navy {background: #074B80; color:#ffffff; }
.newproduct_v2 .productInfo .producttag ul li.tag.blue {background: #B1D2E5; color:#006274; }
.newproduct_v2 .productInfo .producttag ul li.tag.green {background: #D2E5B1; color:#007442; }
.newproduct_v2 .productInfo .producttag ul li.tag.red {background: #EDD2C9; color:#C95E53; }
.newproduct_v2 .productInfo .producttag ul li.tag.blown {background: #B7A28A; color:#fff; }
.newproduct_v2 .productInfo .producttag ul li.tag.purple {background: #8890B9; color:#fff; }
.newproduct_v2 .productInfo > .detail { border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; }
.newproduct_v2 .productInfo > .detail dl { padding: 15px 0; border-bottom: 1px solid #e5e5e5; }
.newproduct_v2 .productInfo > .detail dl::after { content: ""; display: block; clear: both; }
.newproduct_v2 .productInfo > .detail dl dt { width: 12em; line-height: 1.4; float: left; font-weight: bold; padding: 0 10px; }
.newproduct_v2 .productInfo > .detail dl dd { padding: 0 15px; line-height: 1.4; overflow: hidden; position: relative; }
.newproduct_v2 .productInfo > .detail dl dd::after { content: ""; display: block; width: 0; height: 16px; line-height: 1px; font-size: 1px; border-left:1px solid #ddd; position: absolute; top:calc(50% - 8px); left: 0; }
.newproduct_v2 .productInfo > .detail dl:nth-child(even) { background: #fafafa; }
.newproduct_v2 .productInfo > .detail dl:last-child { border:none; }

.newproduct_v2 .productInfo .productColumn { display: flex; justify-content: space-between; padding: 30px 0; }
.newproduct_v2 .productInfo .productColumn > .img { width: 160px; padding: 15px 0; }
.newproduct_v2 .productInfo .productColumn > .txt { width: calc(100% - 190px); }
.newproduct_v2 .productInfo .productColumn .detail { border-top: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; }
.newproduct_v2 .productInfo .productColumn .detail dl { padding: 15px 0; border-bottom: 1px solid #e5e5e5; }
.newproduct_v2 .productInfo .productColumn .detail dl::after { content: ""; display: block; clear: both; }
.newproduct_v2 .productInfo .productColumn .detail dl dt { width: 12em; line-height: 1.4; float: left; font-weight: bold; padding: 0 10px; }
.newproduct_v2 .productInfo .productColumn .detail dl dd { padding: 0 15px; line-height: 1.4; overflow: hidden; position: relative; }
.newproduct_v2 .productInfo .productColumn .detail dl dd::after { content: ""; display: block; width: 0; height: 16px; line-height: 1px; font-size: 1px; border-left:1px solid #ddd; position: absolute; top:calc(50% - 8px); left: 0; }
.newproduct_v2 .productInfo .productColumn .detail dl:nth-child(even) { background: #fafafa; }
.newproduct_v2 .productInfo .productColumn .detail dl:last-child { border:none; }

.newproduct_v2 .productInfo > .price { margin: 0 0 35px; }
.newproduct_v2 .productInfo > .price table { width: 100%; border-spacing: 0; border-collapse: collapse; }
.newproduct_v2 .productInfo > .price table thead th { padding: 5px; text-align: center; background: #499464; color:#fff; font-size: 1rem; color:#fff; }
.newproduct_v2 .productInfo > .price table tbody th,
.newproduct_v2 .productInfo > .price table tbody td { vertical-align: middle; padding: .5em; text-align: center; border-bottom: 1px solid #e5e5e5; position: relative; }
.newproduct_v2 .productInfo > .price table tbody th { width: 12em; padding: 15px 10px; font-weight: bold; }
.newproduct_v2 .productInfo > .price table tbody td::after { content: ""; display: block; width: 0; height: 16px; line-height: 1px; font-size: 1px; border-left:1px solid #ddd; position: absolute; top:calc(50% - 8px); left: 0; }
.newproduct_v2 .productInfo > .price table tbody tr:nth-child(even) th,
.newproduct_v2 .productInfo > .price table tbody tr:nth-child(even) td { background: #fafafa; }
.newproduct_v2 .productInfo > .price table tbody td.price { color:#f00; }
.newproduct_v2 .productInfo > .price table tbody em { display: none; width: 6.5em; font-weight: normal; color:#aaa; }
.newproduct_v2 ul.list li { font-size: 1rem; margin: 0 0 15px; }
.newproduct_v2 ul.list li::after { content: ""; display: block; clear: both; }
.newproduct_v2 .wrap { border:1px solid #ddd; padding: 25px; border-radius: 15px; }
.newproduct_v2 .wrap h3 { line-height: 1; font-weight: bold; font-size: 1.24rem; padding: 0 0 15px; margin: 0 0 15px; border-bottom: 1px dashed #ddd; color:#479264; }
.newproduct_v2 .columnImage { display: flex; align-content: center; justify-content: space-between; }
.newproduct_v2 .columnImage dl { width: calc((100% - 20px) / 3); text-align: center; }
.newproduct_v2 .columnImage dt { width: 218px; margin: 0 auto; }
.newproduct_v2 .columnImage dd { width: 218px; margin: 0 auto; }
.newproduct_v2 .columnImage dd a { color:#3091A9; }
.newproduct_v2 .columnImage dd a:hover { text-decoration: underline; }
.newproduct_v2 .newproductDetail { display: flex; align-content: center; justify-content: space-between; flex-wrap: wrap; }
.newproduct_v2 .newproductDetail dl { width: calc((100% - 20px) / 2); padding: 15px 0; border-top:1px solid #ddd; }
.newproduct_v2 .newproductDetail dt { float: left; width: 120px; }
.newproduct_v2 .newproductDetail dd { overflow: hidden; padding: 0 0 0 20px; }
.newproduct_v2 .newproductDetail dd h4 { font-size: 1.2rem; color:#01796C; line-height: 1.25; }
.newproduct_v2 .newproductDetail dd p { line-height: 1.4; }
.newproduct_v2 .spongerollerboltDetail { border:1px solid #ddd; padding: 25px; border-radius: 15px; }
.newproduct_v2 .spongerollerboltDetail h3 { line-height: 1; font-weight: bold; font-size: 1.24rem; padding: 0 0 15px; margin: 0 0 15px; border-bottom: 1px dashed #ddd; color:#479264; }
.newproduct_v2 .spongerollerboltDetail > dl { width: auto; padding: 15px 0; border-bottom:1px solid #ddd; }
.newproduct_v2 .spongerollerboltDetail > dl::after { content: ""; display: block; clear: both; }
.newproduct_v2 .spongerollerboltDetail > dl dt { float: left; width: 160px; margin: 0 20px 0 0; }
.newproduct_v2 .spongerollerboltDetail > dl dd { overflow: hidden; }
.newproduct_v2 .spongerollerboltDetail > dl dd h4 { font-size: 1.2rem; color:#01796C; line-height: 1.25; }
.newproduct_v2 .spongerollerboltDetail > dl dd p { line-height: 1.4; }
.newproduct_v2 .spongerollerboltDetail aside > a { display: block; background: #f6f6f6; padding: 15px; border-radius: 12px; margin: 30px 0 0; transition: .3s; }
.newproduct_v2 .spongerollerboltDetail aside > a:hover { background: #e5e5e5; }
.newproduct_v2 .spongerollerboltDetail aside > a dl::after { content: ""; display: block; clear: both; }
.newproduct_v2 .spongerollerboltDetail aside > a dt { float: left; }
.newproduct_v2 .spongerollerboltDetail aside > a dd { overflow: hidden; padding: 0 0 0 15px; }

@media only screen and (min-width: 737px) {
  #con2 .gimu_list li { float: left; width: 25%; padding-left: 40px; margin-left: 10px; text-align: center; background: url(//www.teramoto.co.jp/img/eco/ico_ar.jpg) left no-repeat; }
  #con2 .gimu_list li:first-child { padding-left: 0; margin-left: 0; background: none; }
  #con2 .gimu_list li span { display: block; padding: 5px; border: 1px solid #80af72; background: #9dd88c; text-align: center; color: #202020; }
}

@media only screen and (max-width: 736px) {
  .eco .topImg img { width: 100%; }
  .list_box .list_item { padding-left: 10px; }
  #con2 .gimu_list li { width: 80%; padding-bottom: 40px; margin: 0 auto; margin-bottom: 10px; text-align: center; background: url(//www.teramoto.co.jp/img/eco/sp_ico_ar.jpg) bottom no-repeat; }
  #con2 .gimu_list li:last-child { padding-bottom: 0; margin-bottom: 0; background: none; }
  #con2 .gimu_list li span { display: block; padding: 5px; border: 1px solid #80af72; background: #9dd88c; text-align: center; color: #202020; }
  #con4 .table .list_title { width: 32%; }
  #con4 .table .list_item { width: 33%; }
  #con4 .table .list_img img { width: 100%; }
  #con4 .table .thmS img { width: 50%; }
}

.catalogwrap .inr { border-top: 1px dashed #ddd; }
.catalogwrap .inr a { display: block; transition: .3s; position: relative; }
.catalogwrap .inr a::after { content: ""; display: block; position: absolute; top:calc(50% - 8px); right: 20px; width: 16px; height: 16px; border: 1px solid; border-color: #aaa #aaa transparent transparent; transform: rotate(45deg); }
.catalogwrap .inr a:hover { background: #f3f3f3; }
.catalogwrap .inr dl { display: flex; align-items: center; justify-content: space-between; padding: 15px 40px 15px 15px; border-bottom: 1px dashed #ddd; }
.catalogwrap .inr dt { width: 80px; }
.catalogwrap .inr dd { width: calc(100% - 100px); font-size: 1.2rem; line-height: 1.4; }
.catalogwrap .inr dd small { font-size: .9rem; line-height: 1.4; color:#777; }

.hotelhousekeeping > article { padding: 0 35px 35px; }
.hotelhousekeeping .title { height: 500px;  display: flex; justify-content: center; align-items: center; background: url(https://www.teramoto.co.jp/wp-content/uploads/title_bg.png) center center no-repeat; background-size: cover; }
.hotelhousekeeping .title .inr { display: inline-block; text-align: center; padding: 15px 100px; }
.hotelhousekeeping .title .inr h1 { display: inline-block; margin: 0 0 10px; padding: 0; }
.hotelhousekeeping .title .inr p { text-align: center; color:#fff; text-shadow: 0 2px 2px rgba(0,0,0,0.2); letter-spacing: .05em; font-size: 1.1rem; line-height: 219%; margin: 0; padding: 0; }
.hotelhousekeeping nav { margin: 5px 5px 35px; padding: 30px; background: #f5f5f5; }
.hotelhousekeeping nav .inr {display: flex; flex-wrap: wrap; justify-content: space-between; }
.hotelhousekeeping nav .inr a { display: block; width: calc((100% - 30px) / 4); background: #fff; color:#444; text-decoration: none; }
.hotelhousekeeping nav .inr a dl { padding: 0; margin: 0; }
.hotelhousekeeping nav .inr a dt { overflow: hidden;}
.hotelhousekeeping nav .inr a dt img { width: 100%; height: 146px; object-fit: cover; font-family: 'object-fit: cover;'; transition: 1s; }
.hotelhousekeeping nav .inr a dd { margin: 0; padding: 30px 10px 50px; position: relative; text-align: center; font-size: .9rem; font-weight: 500; }
.hotelhousekeeping nav .inr a dd::after { content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 8px 7px 0 7px; border-color: rgba(71,156,199,.5) transparent transparent transparent; position: absolute; bottom: 15px; left: calc(50% - 7px); }
.hotelhousekeeping nav .inr a dd small { font-size: .8rem; color:#5992D7; }
.hotelhousekeeping nav .inr a:hover dt img { transform: scale(1.15); }
.hotelhousekeeping .appeal { background: #f5f5f5; margin: 0 0 20px; }
.hotelhousekeeping .appeal h3 { line-height: 1; text-align: center; color:#fff; font-size: 1.1rem; font-weight: 500; margin: 0; padding:12px 10px 9px; background: linear-gradient(135deg, #5993d7 0%,#59b1d7 100%); }
.hotelhousekeeping .appeal ul { margin: 0; padding: 20px; list-style-type: none; text-indent: 0; }
.hotelhousekeeping .appeal ul li { margin: 0; padding:3px 0 3px 25px; list-style-type: none; text-indent: 0; position: relative; }
.hotelhousekeeping .appeal ul li::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_check.png); position: absolute; top:6px; left: 0; margin: 0 5px 0 0; }
.hotelhousekeeping .appeal ol { margin: 0; padding: 20px; list-style-type: none; text-indent: 0; }
.hotelhousekeeping .appeal ol li { margin: 0; padding:3px 0 3px 25px; list-style-type: none; text-indent: 0; position: relative; }
.hotelhousekeeping .appeal ol li:nth-of-type(1)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no01s.png); position: absolute; top:6px; left: 0; margin: 0 5px 0 0; }
.hotelhousekeeping .appeal ol li:nth-of-type(2)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no02s.png); position: absolute; top:6px; left: 0; margin: 0 5px 0 0; }
.hotelhousekeeping .appeal ol li:nth-of-type(3)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no03s.png); position: absolute; top:6px; left: 0; margin: 0 5px 0 0; }
.hotelhousekeeping .appeal ol li:nth-of-type(4)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no04s.png); position: absolute; top:6px; left: 0; margin: 0 5px 0 0; }
.hotelhousekeeping .appeal ol li:nth-of-type(5)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no05s.png); position: absolute; top:6px; left: 0; margin: 0 5px 0 0; }
.hotelhousekeeping .appeal ol li:nth-of-type(6)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no06s.png); position: absolute; top:6px; left: 0; margin: 0 5px 0 0; }
.hotelhousekeeping .appeal ol li:nth-of-type(7)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no07s.png); position: absolute; top:6px; left: 0; margin: 0 5px 0 0; }
.hotelhousekeeping .itemtitle { margin: 0 0 50px; padding: 30px 0 0; position: relative; }
.hotelhousekeeping .itemtitle::after { content: ""; display: block; width: 80px; height: 0; border-top:4px solid #5993D7; left: 0; bottom: 0; position: absolute; }
.hotelhousekeeping .itemtitle h2 { font-size: 1.7rem; letter-spacing: .05em; line-height: 2rem; vertical-align: middle; }
.hotelhousekeeping .itemtitle h2 em { font-size: 1rem; letter-spacing: .05em; font-weight: 600; color:#8A8A79; font-family: Arial Narrow,Arial,sans-serif; font-style: normal; }
.hotelhousekeeping .itemtitle h2 span { font-size: .8rem; letter-spacing: .05em; line-height: 2rem; display: inline-block; margin: 0 0 0 5px; vertical-align: middle; position: relative; top:-3px; }
.hotelhousekeeping .itemtitle p { margin: 0; padding: 0 0 50px; }
.hotelhousekeeping .subscription { line-height: 1.67; margin: 0 0 30px; }
.hotelhousekeeping .subscription em { color:#f00; font-weight: 600; text-decoration: underline; font-style: normal; }
.hotelhousekeeping .point { border-top:1px dashed #ddd; }
.hotelhousekeeping .point h3 { text-align: center; padding: 35px 0; font-size: 1.3rem; font-weight: 500; letter-spacing: .05em; }
.hotelhousekeeping .point h3 em { font-style: normal; color:#D83500; font-size: .8rem; font-weight: 600; font-family: Arial,sans-serif; }
.hotelhousekeeping .point .inr { display: flex; justify-content: center; flex-wrap: wrap; }
.hotelhousekeeping .point .inr dl { border:1px solid #ddd; border-radius: 3px; padding: 20px; width: calc((100% - 60px) / 3); margin: 0 10px 20px; box-sizing: border-box; position: relative; }
.hotelhousekeeping .point .inr dl:nth-of-type(1)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no01.png); position: absolute; top:-20px; right: 10px; }
.hotelhousekeeping .point .inr dl:nth-of-type(2)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no02.png); position: absolute; top:-20px; right: 10px; }
.hotelhousekeeping .point .inr dl:nth-of-type(3)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no03.png); position: absolute; top:-20px; right: 10px; }
.hotelhousekeeping .point .inr dl:nth-of-type(4)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no04.png); position: absolute; top:-20px; right: 10px; }
.hotelhousekeeping .point .inr dl:nth-of-type(5)::before { content: url(https://www.teramoto.co.jp/wp-content/uploads/ico_no05.png); position: absolute; top:-20px; right: 10px; }
.hotelhousekeeping .point .inr dl dt { margin: 0; padding: 0 0 10px; line-height: 1; font-size: 1.1rem; border-bottom: 1px solid #59A0D7; }
.hotelhousekeeping .point .inr dl dd { margin: 0; padding: 10px 0 0; font-size: .9rem; }
.hotelhousekeeping .btns { margin: 30px auto; }
.hotelhousekeeping .btns ul { text-align: center; padding: 20px 0 0; border-top:1px dashed #e5e5e5; }
.hotelhousekeeping .btns ul li { display: inline-block; padding: 0 10px 10px; text-align: center; }
.hotelhousekeeping .btns ul li a { display: inline-block; min-width: 280px; line-height: 1; color:#fff; text-align: center; font-weight: bold; font-size: 1.1rem; border-radius: 3px; box-shadow: 0 0 2px rgba(0,0,0,0.2); padding: 25px 10px; background: #666; transition: .4s; }
.hotelhousekeeping .btns ul li a:hover { opacity: .75; }
.hotelhousekeeping .btns ul li a.contactbtn { background: linear-gradient(135deg, #e98c24 0%,#e9bd25 100%); }
.hotelhousekeeping .btns ul li a.detailbtn { background: linear-gradient(135deg, #549466 0%,#7dc343 100%); }
.hotelhousekeeping article section h2 { margin: 0 0 20px; text-align: center; }
.hotelhousekeeping .itemcatch { margin: 0 auto 20px; }
.hotelhousekeeping .itemcatch ul { display: flex; justify-content: center; }
.hotelhousekeeping .itemcatch ul li { text-align: center; }

.factorykaizen > article { padding:35px; }
.factorykaizen > article * { font-size: 1.1rem; vertical-align: baseline; }
.factorykaizen .title { background: url(https://www.teramoto.co.jp/wp-content/uploads/factorykaizen_catch.jpg) center center no-repeat; background-size: cover; padding: 100px 20px; }
.factorykaizen .caption { letter-spacing: 0; padding: 0 0 35px; margin: 0 0 35px; border-bottom: 1px solid #ddd; }
.factorykaizen .caption p { letter-spacing: 0; padding: 0 0 35px; }
.factorykaizen .caption p em { color: #E56C27; font-weight: bold; line-height: 1.9; }
.factorykaizen .caption ul { display: flex; align-items: center; justify-content: center; padding: 0 0 35px; }
.factorykaizen .caption ul li { margin: 0 20px; }
.factorykaizen .about { padding: 0 0 35px; }
.factorykaizen .about dl { display: flex; align-items: center; justify-content: space-between; flex-direction: row-reverse; padding: 0 0 35px; }
.factorykaizen .about dt { width: 318px; }
.factorykaizen .about dd { width: calc(100% - 348px); }
.factorykaizen .about li { text-align: center; }
.factorykaizen .point { background: #F0F0E1; margin: 0 0 35px; }
.factorykaizen .point dl { padding: 20px 0; border-bottom: 1px solid rgba(0,0,0,0.1); display: flex; align-items: center; justify-content: space-between; }
.factorykaizen .point dt { width: 350px; text-align: center; }
.factorykaizen .point dd { width: calc(100% - 350px); padding: 0 20px; }
.factorykaizen .point dd h2 { font-size: 1.8rem; font-weight: 400; line-height: 1.4; margin: 0 0 10px; }
.factorykaizen .point dd h2 small { display: block; line-height: 1.4; font-size: 1rem; font-weight: 700; color:#CD846E; }
.factorykaizen .point dd li { padding: 0 0 0 20px; position: relative; }
.factorykaizen .point dd li::after { content: ""; display: block; width: 6px; height: 6px; overflow: hidden; border-radius: 100px; background: #CEB46F; line-height: 1px; font-size: 1px; position: absolute; left: 5px; top: calc(1.1rem - 3px); }
.factorykaizen .point dl:nth-of-type(2) {flex-direction: row-reverse; }
.factorykaizen .middleimg p { text-align: center; margin: 0 0 35px; }
.factorykaizen .voice { position: relative; margin: 0 0 35px; }
.factorykaizen .voice::after { content: url(https://www.teramoto.co.jp/wp-content/uploads/factorykaizen_img06.png); position: absolute; left: 35px; top:calc(50% - 54px); }
.factorykaizen .voice dl { background: #F0F0E1; margin: 0 0 0 170px; padding: 15px; position: relative; }
.factorykaizen .voice dl dt { font-weight: bold; color:#E05D35; margin: 0 0 10px; }
.factorykaizen .voice dl dd small { font-size: .9rem; }
.factorykaizen .voice dl::before { content: ""; display: block; position: absolute; top:calc(50% - 15px); left: -40px; width: 0; height: 0; border-style: solid; border-width: 15px 40px 15px 0; border-color: transparent #f0f0e1 transparent transparent; }
.factorykaizen .btndetail { margin: 0 0 35px; border-top:1px solid #ddd; border-bottom: 1px solid #ddd; padding:30px 0; text-align: center; }
.factorykaizen .btndetail li { text-align: center; }
.factorykaizen .btndetail a { text-align: center; display: inline-block; padding: 15px; line-height: 1.2; border-radius: 2px; color:#fff; min-width: 360px; font-size: 1.2rem; font-weight: bold; background: linear-gradient(135deg, #42994f 0%,#619942 100%); margin: 0 auto; box-shadow: 0 0 5px rgba(0,0,0,0.2); }
.factorykaizen .btndetail a:hover { opacity: 0.75; }
.factorykaizen .kaizendetail h3 { margin: 0 0 25px; font-size: 1.4rem; font-weight: 500; line-height: 1.4; color:#E05D35; border-left:5px solid #E5662B; padding: 0 0 0 15px; }
.factorykaizen .kaizendetail ul { padding: 0 0 25px; }
.factorykaizen .kaizendetail ul li { background: #F5EBEB; padding: 7px 7px 7px 25px; margin: 0 0 10px; line-height: 1.4; position: relative; }
.factorykaizen .kaizendetail ul li em { color: #D80000; line-height: 1.4; text-decoration: underline; font-weight: 600; }
.factorykaizen .kaizendetail ul li::after { content: ""; display: block; width: 6px; height: 6px; overflow: hidden; border-radius: 100px; background: #fff; line-height: 1px; font-size: 1px; position: absolute; left: 10px; top: calc(1.3rem - 3px); }
.factorykaizen .video { margin: 0 auto 35px; }
.factorykaizen .video h2 { font-size: 1.8rem; font-weight: normal; line-height: 1.4; position: relative; padding: 100px 0 35px; text-align: center; background: url(https://www.teramoto.co.jp/wp-content/uploads/factorykaizen_img07.png) top center no-repeat; }
.factorykaizen .video h2 em { font-size: 1.8rem; font-weight: bold; line-height: 1.4; color:#D85230; }
.factorykaizen .video .youtube { max-width: 620px; margin: 0 auto; }
.factorykaizen .book dl { display: flex; justify-content: space-between; align-items: center; flex-direction: row-reverse; background: linear-gradient(135deg, #e1532f 0%,#eb7e25 100%); padding: 50px; }
.factorykaizen .book dt { width: 300px; }
.factorykaizen .book dt img { box-shadow: 5px 5px 0 rgba(0,0,0,0.2); }
.factorykaizen .book dd { width: calc(100% - 330px); color:#fff; font-size: 1.3rem; }
.factorykaizen .book { background: #D7E5D0; border:1px solid #fff; }
.factorykaizen .book li { text-align: center; padding: 50px 10px; }
.factorykaizen .book a { text-align: center; display:block; padding: 30px; line-height: 1.2; border:1px solid #42994f; border-radius: 2px; color:#fff; max-width: 660px; font-size: 2.3rem; font-weight: bold; background: linear-gradient(135deg, #42994f 0%,#619942 100%); margin: 0 auto; box-shadow: inset 0 1px 0 rgba(255,255,255,0.2), 0 0 5px rgba(0,0,0,0.2); position: relative; }
.factorykaizen .book a::after { content: ""; display: block;width: 0; height: 0; border-style: solid; border-width: 7px 0 7px 7px; border-color: transparent transparent transparent #ffffff; position: absolute; top: calc(50% - 7px); right: 25px; }
.factorykaizen .book a:hover { opacity: 0.75; }


/* sunaga 20190218 */
.hotelhousekeeping .itemtitle h2 { font-size: 1.7rem; letter-spacing: .05em; line-height: 2rem; vertical-align: middle; text-align: left; }
.hotelhousekeeping .itemtitle h2 em { font-size: 1rem; letter-spacing: .05em; font-weight: 600; color:#8A8A79; font-family: Arial Narrow,Arial,sans-serif; font-style: normal;display:block;}

.order_calculator { max-width:800px; margin:0 auto 100px; background:#fff; }
.order_calculator h2 { margin: 40px auto; text-align: center; }
.order_calculator .flow01 { background: #F6F6F6; position: relative; margin: 0 0 40px; }
.order_calculator .flow01:after { content: ""; display: block; position: absolute; bottom: -30px; left: calc(50% - 30px); width: 0; height: 0; border-style: solid; border-width: 30px 30px 0 30px; border-color: #f6f6f6 transparent transparent transparent; }
.order_calculator .flow01 h3 { background: #4D5850; color: #fff; font-weight: normal; font-size: 18px; padding: 20px; line-height: 1; }
.order_calculator .flow01 .inr { padding: 30px; }
.order_calculator .flow01 .inr .oc_search { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; padding: 0 0 30px; border-bottom: 1px solid rgba(0,0,0,.15); }
.order_calculator .flow01 .inr .oc_search h4 { display: flex; align-items: center; font-size: 1rem; margin: 0 20px 0 0; line-height: 1; }
.order_calculator .flow01 .inr .oc_search h4:before { content: url(/wp-content/themes/teramoto/images/order_calculator/ico_search.svg); margin: 0 10px 0 0; }
.order_calculator .flow01 .inr .oc_search dl { display: flex; align-items: center; }
.order_calculator .flow01 .inr .oc_search dl select { height: 40px; box-sizing: border-box; border:1px solid rgba(0,0,0,.5); font-size: 16px; }
.order_calculator .flow01 .inr .oc_search dl option { font-size: 16px; }
.order_calculator .flow01 .inr .oc_search dl dt { padding: 0 40px 0 0; position: relative; }
.order_calculator .flow01 .inr .oc_search dl dt:before { content: url(/wp-content/themes/teramoto/images/order_calculator/ico_ku.svg); position: absolute; right: 15px; top:calc(50% - 8px); }
.order_calculator .flow01 .inr .oc_search dl dt select { width: 200px; }
.order_calculator .flow01 .inr .oc_search dl dd select { width: 380px; }
.order_calculator .flow01 .inr .oc_list h4 { padding: 30px 0; display: flex; align-items: center; line-height: 1; }
.order_calculator .flow01 .inr .oc_list h4:before { content: url(/wp-content/themes/teramoto/images/order_calculator/ico_list.svg); margin: 0 10px 0 0; }
.order_calculator .flow01 .inr .oc_list .wrap { overflow: auto; max-height: 300px; }
.order_calculator .flow01 .inr .oc_list .wrap dl { padding: 5px; display: flex; align-items: center; background: #fff; box-shadow: 1px 1px 2px rgba(0,0,0,.05); margin: 0 0 5px; }
.order_calculator .flow01 .inr .oc_list .wrap dt a { cursor: pointer; display: block; width: 80px; height: 40px; line-height: 40px; text-align: center; color: #fff; box-shadow: 1px 1px 2px rgba(0,0,0,.05); border-radius: 3px; background: #4dbc81; background: linear-gradient(to bottom, #4dbc81 0%,#2f9c62 100%); }
.order_calculator .flow01 .inr .oc_list .wrap dt a:hover { background: #2d9c61; background: linear-gradient(to bottom, #2d9c61 0%,#2f9c62 100%); }
.order_calculator .flow01 .inr .oc_list .wrap dd { padding: 0 10px; }
.order_calculator .flow02 { background: #F6F6F6; position: relative; margin: 0 0 40px; padding: 0 0 1px; }
.order_calculator .flow02:after { content: ""; display: block; position: absolute; bottom: -30px; left: calc(50% - 30px); width: 0; height: 0; border-style: solid; border-width: 30px 30px 0 30px; border-color: #f6f6f6 transparent transparent transparent; }
.order_calculator .flow02 h3 { background: #4D5850; color: #fff; font-weight: normal; font-size: 18px; padding: 20px; line-height: 1; }
.order_calculator .flow02 h4 { padding:30px 0; margin: 0 30px; border-bottom: 1px solid rgba(0,0,0,.15); font-size: 16px; font-weight: bold; }
.order_calculator .flow02 .formula ul { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; padding: 40px 0; }
.order_calculator .flow02 .formula ul li { vertical-align: middle; display: flex; align-items: center; padding: 0 40px 0 0; position: relative; font-weight:bold; line-height: 1; font-size: 1.1rem; }
.order_calculator .flow02 .formula ul li:before { content: url(/wp-content/themes/teramoto/images/order_calculator/ico_x.svg); position: absolute; right: 15px; top: calc(50% - 8px); line-height: 1; }
.order_calculator .flow02 .formula ul li:nth-last-of-type(1) { padding: 0; }
.order_calculator .flow02 .formula ul li:nth-last-of-type(1):before { display: none; }
.order_calculator .flow02 .formula ul li input { height: 40px; box-sizing: border-box; border:1px solid rgba(0,0,0,.5); font-size: 16px; width: 80px; margin: 0 10px; text-align: right; }
.order_calculator .flow02 .formula ul li em { line-height: 1; font-size: 30px; font-weight: normal; color: #F35454; position: relative; top: -2.5px; }
.order_calculator .flow02 .formula ul li small { line-height: 1; font-size: .9rem; }
.order_calculator .flow02 .formula dl { padding: 0 0 40px; }
.order_calculator .flow02 .formula dl dt { text-align: center; font-size: 18px; font-weight: bold; padding: 0 0 10px; line-height: 1; position: relative; }
.order_calculator .flow02 .formula dl dt:before { content: ""; display: block; width: 160px; height: 0; border-top:1px solid #4D5850; position: absolute; bottom: 0; left: calc(50% - 80px); }
.order_calculator .flow02 .formula dl dd { text-align: center; font-size: 50px; font-weight: bold; color: #F35454; }
.order_calculator .flow02 .formula dl dd small {  font-size: 1rem; font-weight: normal; color: #444; }
.order_calculator .flow02 .caution { background: #fff; border:2px solid #F82767; padding: 30px 30px 20px; margin: 0 30px 30px; }
.order_calculator .flow02 .caution h5 { text-align: center; line-height: 1; color: #F82767; font-size: 1.1rem; letter-spacing: 0; padding: 0 0 30px; }
.order_calculator .flow02 .caution h5 small {line-height: 1; color: rgba(0,0,0,.5); font-size: 11px; }
.order_calculator .flow02 .caution .wrap { display: flex; justify-content: space-between; margin: 0; }
.order_calculator .flow02 .caution .wrap > ul { width: calc(100% - 321px); }
.order_calculator .flow02 .caution .wrap > ul li { margin: 0 0 10px; padding: 0 0 0 15px; position: relative; }
.order_calculator .flow02 .caution .wrap > ul li:before { content: ""; width: 6px; height: 6px; line-height: 1px; font-size: 1px; border-radius: 100px; background: #F82767; position: absolute; top:calc(.5rem - -3px); left: 0; }
.order_calculator .flow02 .caution .wrap > ul li em { font-weight: bold; color: #f00; }
.order_calculator .flow02 .caution .wrap > p { width: 301px; }
.oc_form h2 { text-align: center; font-size: 20px; font-weight: bold; padding: 0 0 40px; }
.oc_form .txt { border:1px solid rgba(0,0,0,.25); padding: 20px; margin: 0 0 40px; }
.oc_form .inr { display: flex; justify-content: space-between; flex-wrap: wrap; }
.oc_form .inr .cont { width: calc((50% - 20px) / 2); margin: 0 0 40px; position: relative; }
.oc_form .inr .cont:before { content: ""; display: block; width: 80px; line-height: 16px; text-align: center; background: #666; color: #fff; font-size: 10px; text-align: center; }
.oc_form .inr .cont.must:before { content: "必須"; background: #E18F8F; }
.oc_form .inr .cont.option:before { content: "任意"; background: #648DD4; }
.oc_form .inr .cont { width: calc((100% - 20px) / 2); margin: 0 20px 40px 0; }
.oc_form .inr .cont:nth-of-type(even) { margin: 0 0 40px; }
.oc_form .inr .cont input { background: #F0F0F0; height: 40px; width: 100%; padding: 0 7px; font-size: 16px; border:none; }
.oc_form .inr .cont.mon { width: 100%; margin: 0 0 40px 0; }
.oc_form .inr .cont.mon textarea { width: 100%; background: #F0F0F0; font-size: 16px; border:none; height: 200px; padding: 7px; }
.oc_form .privacy { border:4px solid rgba(0,0,0,.3); padding: 15px; height: 150px; overflow: auto; margin: 0 0 60px; }
.oc_form .btnWrap { margin: 0 auto 200px; width: 100%; }
.oc_form .btnWrap ul { display: flex;/* align-items: center;*/ justify-content: center; }
.oc_form .btnWrap ul li { margin: 0; vertical-align: top; }
.oc_form .btnWrap ul li input { margin: 0 15px; }
.oc_form .btnWrap ul li a { cursor: pointer; font-size: 1.1rem; border:none; outline: none; display: block; background: #777; line-height: 1px; padding: 25px 0; margin: 0 15px; width: 160px; text-align: center; color: #fff; }
.oc_form .btnWrap ul li a:hover { opacity: .75; }
.oc_form .btnWrap ul li input.wpcf7c-btn-back { -webkit-appearance: none; border-radius: 0; cursor: pointer; font-size: 1.1rem; border:none; outline: none; display: block; background: #777; line-height: 1px; padding: 25px 0; width: 160px; text-align: center; color: #fff; }
.oc_form .btnWrap ul li input.wpcf7c-btn-back:hover { opacity: .75; }
.oc_form .btnWrap ul li input.wpcf7-form-control { -webkit-appearance: none; border-radius: 0; cursor: pointer; font-size: 1.1rem; border:none; outline: none; display: block; background: #2F994A; line-height: 1px; padding: 25px 0; width: 160px; text-align: center; color: #fff; }
.oc_form .btnWrap ul li input.wpcf7-form-control:hover { opacity: .75; }

.errorlist { margin: 0 0 40px; }
span.wpcf7-not-valid-tip { background: rgba(255,0,0,.1); padding: 10px; margin: 0; }
span.wpcf7-not-valid-tip h3 { display: none; }
.btnArea ul { display: flex;/* align-items: center;*/ justify-content: center; }
.btnArea ul li { margin: 0 15px; vertical-align: top; }
.btnArea ul li a { cursor: pointer; font-size: 1.1rem; border:none; outline: none; display: block; background: #777; line-height: 1px; padding: 25px 10px; text-align: center; color: #fff; }
.btnArea ul li a:hover { opacity: .75; }

#choice_delete { cursor: pointer; display: inline-block; padding:7px 10px 9px; margin: 0 5px; font-weight: normal; font-size: 1rem; border-radius: 4px; background: #4dbc81; background: linear-gradient(to bottom, #4dbc81 0%,#2f9c62 100%); color: #fff; line-height: 1; transition: .4s; }
#choice_delete:hover { background: #2d9c61; background: linear-gradient(to bottom, #2d9c61 0%,#2f9c62 100%); }

.wpcf7-form-control-wrap { text-align: center; margin: 0 auto; }
.wpcf7-form-control.g-recaptcha.wpcf7-recaptcha { text-align: center; margin: 0 auto; }
.wpcf7-form-control.g-recaptcha.wpcf7-recaptcha > div { margin: 0 auto; }

.products2021_no05_point { display: flex; justify-content: space-between; padding: 40px 0 0; }
.products2021_no05_point > .img { width: 420px; }
.products2021_no05_point > .txt { width: 330px; margin: 0 0 0 40px; }
.products2021_no05_point > .txt dl:nth-of-type(1) { display: flex; justify-content: space-between; }
.products2021_no05_point > .txt dl:nth-of-type(1) dt { width: 100px; }
.products2021_no05_point > .txt dl:nth-of-type(1) dd { width: calc((100% - 100px) - 15px); }
.products2021_no05_point > .txt dl { padding: 0 0 20px; }
.products2021_no05_point > .txt dl dd { font-weight: bold; }
.products2021_no05_point > .txt dl dd small { font-weight: normal; line-height: 1.2; display: inline-block; }

.products2021_no02_caption { background: #F6F6F6; padding: 50px 15px; text-align: center; }
.products2021_no02_caption img { max-height: 115px; margin:  0 auto; }

.products2021_no02_mainimg ul { display: flex; align-items: center; justify-content: center; padding: 0 0 30px; margin: 0 auto 10px; border-bottom: 1px solid #ddd; }
.products2021_no02_mainimg ul li { margin: 0 10px; }
.products2021_no02_mainimg ul li img { zoom:.5; }

.miselpaulmain { display: flex; justify-content: space-between; }
.miselpaulmain .img { width: 480px; }
.miselpaulmain .txt { width: 240px; }
.miselpaulmain .txt dd { line-height: 1.4; font-size: .8rem; padding: 0 0 20px; }

.products2021_no01_point { display: flex; justify-content: space-between; margin: 0 0 20px; }
.products2021_no01_point > .img { width: 240px; margin: 0 0 20px; }
.products2021_no01_point > .txt { width: 510px; }
.products2021_no01_point > .txt dl { display: flex; justify-content: space-between; margin: 0 0 20px; }
.products2021_no01_point > .txt dl dt { width: 180px; }
.products2021_no01_point > .txt dl dd { width: calc((100% - 180px) - 15px); }
.products2021_no01_point > .txt dl dd h4 { font-size: 18px; font-weight: bold; color:#499464; line-height: 1.25; }
.products2021_no01_point > .txt dl dd p { font-size: 14px; line-height: 1.4; }

.np2022_01_wrap01 { display: flex; flex-wrap: wrap; }
.np2022_01_wrap01 > dl { margin:0 15px 0 0; }
.np2022_01_wrap01 > dl:nth-last-of-type(1) { margin:0; }
.np2022_01_wrap01 dt { color:#01796C; line-height:1.4; font-weight: bold; margin:0 0 10px; }

.np2022_02_wrap01 { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 60px 0; }
.np2022_02_wrap01 .img { width: 400px; }
.np2022_02_wrap01 .txt { width: calc(100% - 420px); }
.np2022_02_wrap01 .txt h4 { color:#01796C; font-weight: bold; margin:0; }
.np2022_02_wrap01 .txt dl { display: flex; justify-content: space-between; margin: 15px 0 0; }
.np2022_02_wrap01 .txt dl dt { width: 100px; }
.np2022_02_wrap01 .txt dl dd { width: calc(100% - 110px); }
.np2022_02_wrap01 .bottom { margin: 15px 0 0; }

.np2022_02_wrap02 { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 60px 0; }
.np2022_02_wrap02 .img { width: 320px; }
.np2022_02_wrap02 .txt { width: calc(100% - 340px); }
.np2022_02_wrap02 .txt h4 { color:#01796C; font-weight: bold; margin:0; }
.np2022_02_wrap02 .txt dl { margin: 0 0 15px; }
.np2022_02_wrap02 .txt dl dt { color:#01796C; font-weight: bold; margin:0; }
.np2022_02_wrap02 .txt dl dd { margin:0 0 15px; }
.np2022_02_wrap02 .txt dl dd p { margin:10px 0; }
.np2022_02_wrap02 .txt dl dd ul { margin:10px 0; display: flex; justify-content: center; }
.np2022_02_wrap02 .txt dl dd ul li { width: 100%;}
.np2022_02_wrap02 .txt dl dd ol { margin:10px 0; display: flex; justify-content: center; }
.np2022_02_wrap02 .txt dl dd ol li { width: 100%;}

.np2022_03_wrap01 { margin: 0 0 30px; position: relative; display: flex; flex-wrap: wrap; justify-content: space-between; }
.np2022_03_wrap01 h3 { margin: 0 0 -30px; width: 100%; font-size: 1.5rem; line-height: 1.4;}
.np2022_03_wrap01 img { margin: 0 0 30px; }

.np2022_04_wrap01 { display: flex; flex-wrap: wrap; justify-content: space-between;}
.np2022_04_wrap01 dl { margin: 0 0 30px; width: calc((100% - 20px) / 2); }
.np2022_04_wrap01 dt img { width: 100%; height: 300px; object-fit: contain; object-position: center center;}
.np2022_04_wrap01 dd  h4 { color: #01796C;}

.np2022_05_wrap01 { display: flex; flex-wrap: wrap; }
.np2022_05_wrap01 dl { width: calc((100% - 40px) / 3); margin:0 20px 30px 0; }
.np2022_05_wrap01 dt { text-align: center; margin: 0 0 10px; }
.np2022_05_wrap01 dl dt img { text-align: center; margin: 0 auto; }
.np2022_05_wrap01 dl dd h4 { color: #01796C; line-height: 1.4; }
.np2022_05_wrap01 dl:nth-of-type(3) { margin:0 0 30px 0; }
.np2022_05_wrap01 dl:nth-of-type(5) { width: 500px; margin:0 0 30px 0; }

.np2023_01_wrap01 { display: flex; flex-wrap: wrap; }
.np2023_01_wrap01 dl { width: calc((100% - 40px) / 3); margin:0 20px 30px 0; }
.np2023_01_wrap01 dt { text-align: center; margin: 0 0 10px; }
.np2023_01_wrap01 dl dt img { text-align: center; margin: 0 auto; width: 100%; height: 190px; object-fit: contain; }
.np2023_01_wrap01 dl dd h4 { color: #01796C; line-height: 1.4; }
.np2023_01_wrap01 dl dd p { font-size: .8rem;  line-height: 1.4; }
.np2023_01_wrap01 dl:nth-of-type(3) { margin:0 0 30px 0; }

.np2023_01_wrap02 { display: flex; justify-content: space-between; margin: 0 0 1rem; }
.np2023_01_wrap02 .img { width: 383px; text-align: center; }
.np2023_01_wrap02 .txt { width: calc(100% - 383px); padding: 0 2rem; }
.np2023_01_wrap02 .txt dl { display: flex; align-items: center; margin: 0 0 1rem; }
.np2023_01_wrap02 .txt dl dt { width: 230px; }
.np2023_01_wrap02 .txt dl dd { width:calc(100% - 230px); padding: 0 0 0 1rem; }

.np2023_02_wrap01 { display: flex; justify-content: space-between; margin: 0 0 1rem; }
.np2023_02_wrap01 .img { width: 360px; text-align: center; }
.np2023_02_wrap01 .txt { width: calc(100% - 360px); padding: 0 2rem; }
.np2023_02_wrap01 .txt h4 { color: #01796C; }
.np2023_02_wrap01 .txt h5 { line-height: 1.4; font-size: 1rem; }
.np2023_02_wrap01 .txt p { margin: 0 0 1rem; }
.np2023_02_wrap01 .txt dl { display: flex; width: 100%; flex-direction: row-reverse; margin: 0 0 1rem; }
.np2023_02_wrap01 .txt dl dt { width: 120px; }
.np2023_02_wrap01 .txt dl dd { width: calc(100% - 120px); padding: 0 1rem 0 0; }

.np2023_02_wrap02 { display: flex; justify-content: space-between; margin: 0 0 1rem; }
.np2023_02_wrap02 .img { width: 500px; text-align: center; }
.np2023_02_wrap02 .txt { width: calc(100% - 500px); padding: 0 0 0 2rem; }
.np2023_02_wrap02 .txt p { font-size: .8rem; margin: 0 auto 1rem; }

.np2023_03_wrap01 { display: flex; justify-content: space-between; margin: 0 0 1rem; }
.np2023_03_wrap01 .img { width: 420px; text-align: center; }
.np2023_03_wrap01 .txt { width: calc(100% - 420px); padding: 0 0 0 2rem; }

.hint { background: rgba(0,0,0,.05); padding: 3rem; margin: 0 auto 3rem; }

.np2023_04_wrap01 { margin: 0 auto 3rem;}
.np2023_04_wrap01 ul { display: flex; margin: 0 auto 1rem; }

.np2023_05_wrap01 .top { display: flex; justify-content: space-between; margin: 0 0 3rem; }
.np2023_05_wrap01 .top .img { width: 340px; text-align: center; }
.np2023_05_wrap01 .top .txt { width: calc(100% - 340px); padding: 0 0 0 2rem; }
.np2023_05_wrap01 .top .txt h3 { color: #01796C; }
.np2023_05_wrap01 .bottom { display: flex; }
.np2023_05_wrap01 .bottom dl:nth-of-type(1) { width: 280px; margin: 0 15px 0 0; }
.np2023_05_wrap01 .bottom dl:nth-of-type(2) { width: 200px; margin: 0 15px 0 0; }
.np2023_05_wrap01 .bottom dl:nth-of-type(3) { width: 280px; }
.np2023_05_wrap01 .bottom dl dt { margin: 0 auto 1rem;}
.np2023_05_wrap01 .bottom dl dt img { height: 120px; width: 100%; object-fit: contain; }
.np2023_05_wrap01 .bottom dd h4 { color: #01796C; }

/*cookieポップアップここから*/
.cookiepopup { background:#2d3934; z-index: 9999999; color:#e5e5e5; width:100%; bottom:0px; position:fixed;}
.cookiepopup .content_area { max-width:1500px; margin:0 auto; display:flex; padding: 15px 0;}
.cookiepopup .text { width: 70%; padding-left:5%; }
.cookiepopup .text a { color:#fff; text-decoration:underline;}
.cookiepopup .button { width: 30%;  display:flex; align-items:center; padding-left:5%;}
.cookiepopup li,.cookiepopup li a { background:#479264; text-align: center; padding: 2px 8px; width: 120px; margin:0px 5px 0px 5px; color:#fff; cursor: pointer;}
.cookiepopup li:hover ,.cookiepopup li a:hover{ background:#479264; text-align: center; padding: 2px 8px; min-width:100px; margin:0px 5px 0px 5px; color:#fff; text-decoration:underline;}
.cookiepopup p { color:#fff; max-width:1500px;}
  /*cookieポップアップここまで*/


/* ───────────────────────────────────────────────────────────────────────────
 1200px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media print, screen and (max-width:1200px){

.swP { display: none; }
.swT { display: block; }
.swS { display: none; }
.swP.swT { display: block; }
.swP.swS { display: none; }
.swT.swS { display: block; }
.swP.swT.swS { display: block; }

body { padding: 100px 0 0; }

#container > header { height: 60px; }
#container > header .logo img { height: 60px; width: auto; }
#container > header .contact { margin: 0 60px 0 0; transform: skewX(0deg); box-shadow: none; height: 60px; overflow: hidden; }
#container > header .contact dt a { width: auto; display: inline-block; padding: 20px 0; }
#container > header .contact dt a span { font-size: .9rem; letter-spacing: 0; padding: 0 10px; transform: skewX(0deg); }
#container > header .contact dd { width: auto; display: inline-block; padding: 20px 0; }
#container > header .contact dd span { font-size: .9rem; letter-spacing: 0; padding: 0 10px; transform: skewX(0deg); }
#container > header .spmenu { display: inline-block; }
#container > header .menusocial { display: block; }
#container > header nav { display: none; position: fixed; top:0; left: 0; width: 100vw; height: 100vh; padding: 0 10px; overflow: hidden; background: rgba(57,77,81,0.95); }
#container > header nav ul { max-width: 640px; margin: 50px auto 20px; border-top: 1px solid rgba(255,255,255,0.2); }
#container > header nav ul:after { content: ""; display: block; clear: both; }
#container > header nav ul li { width: 50%; }
#container > header nav ul li a { color:#fff; display: block; padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,0.2); font-weight: normal; }
#container > header nav ul li a:hover, #container > header nav ul li.active a { background: none; }
#container > header nav ul li a:hover::after, #container > header nav ul li.active a::after { display: none; }

#container > header .closebtn { display: block; }
#container > header .subnav ul li { padding: 0 0 0 5px; font-size: .85rem; }

.scrollfix #container > header { height: 60px; }
.scrollfix #container > header .logo img { height: 60px; width: auto; }
.scrollfix #container > header .contact { margin: 0 60px 0 0; }
.scrollfix #container > header nav ul li a { padding: 15px 0; }
.scrollfix #container > header .subnav { height: 0; padding: 0 10px; overflow: hidden; }
.scrollfix #container > header .contact { box-shadow:none; }

.searchbar { padding: 10px 0; display: block; text-align: center; }
.searchbar .inr { margin: 0 auto; }
.searchbar .inr h2 span { display: none; }
.searchbar .inr ol { padding: 10px 0 0 5px; width: 100%; float: none; white-space: nowrap; clear: both; }
.searchbar .inr ul li { padding: 0 5px 0 0; }
.searchbar .inr ul li input { width: 25vw; }
.searchbar .inr ul li select { width: 25vw; }
.searchbar .inr ul li button { width: 60px; font-size: 1rem; letter-spacing: 0;}
.searchbar .inr ul li a.searchvatbtn { font-size: .8rem; padding: 9px 10px 11px; }
.searchbar .socialbtn { display: none; }

.topcatch { width: auto; }
.topcatch .catchimg { width: 100%; height: calc(75vh - 100px); float: none; padding: 25px; }
.topcatch .bnr { float: left; }
.topcatch .topics { float: right; width: calc( 100% - 340px); height: 340px; }
.topcatch .catchimg a img { width: 260px; }
/*
.topslide a { width: calc(25% - 10px); margin: 0 5px; }
.topslide { padding: 20px 0; }
.topslide .body { padding: 0; }
*/
.topcatch .box { display: none; }
.topslide a dt img { height: 30vw; }
.topslide a dd { height:auto; min-height: 230px; padding-bottom: 50px; }
.topslide a dd h2 { font-size: 1rem; text-align: left; line-height: 1.3; }
.topslide a dd p { font-size: 10px; text-align: left; line-height: 1.3; }
.topabout .img { margin: 0; width: 100%; height: auto; float: none; }
.topabout .img img { width: 100%; float: none;  height: auto; }
.topabout .txt { margin: 0; width: auto; height: auto; float: none; }
.pickup .inr { justify-content: center; }
.pickup .inr a { margin: 0 5px 10px; }
.footerbtn li { width: auto; float: none; }
#container > footer .inr ul { width: calc(50% - 20px); margin: 0 0 0 20px; float: left; height: 200px; }
#container > .title { padding: 50px 0; font-size: 1.5rem; }
article.page { width: auto; margin: 10px; }
article.page > section { width: auto; float: none; padding: 15px; }
article.page > section .pagecatch { margin: -15px -15px 15px; }
article.page > aside { width: auto; float: none; margin: 0 auto; }
article.page > aside .sideBrand a { display: block; width: calc(50% - 10px); margin: 0 5px 10px; float: left; }
article.page > aside .sidePickup a { display: block; width: calc(50% - 10px); margin: 0 5px 10px; float: left; }
.contentslist .inr > a { width: calc(50% - 10px); margin: 0 5px 10px; }
.catalog_movie_list a { width:49.3%; }
.contactwrap dd label { display:block; width: auto; float: none; margin: 0 0 10px; line-height: 1.25; }
.contactwrap dd label span { line-height: 1.25; }
.keywordwrap { display: block; }
.keywordwrap dl { width: auto; }

.itemlist .inr > a { width: 32%; margin: 0 0 5px; }
.searchresult li input[type="search"] {  width: 40vw; }

.productsdetail .txt { width: calc(100% - 340px); }
.productsdetail .mark { width: calc(100% - 340px); }

.roundBtn { padding: 0 0 0 340px; }

.catmenu .img {width: auto; float: none; margin: 0 0 30px; text-align: center; }
.catmenu .catlist { width: auto; float: none; }
.catmenu .catlist ul { justify-content: space-between; }
.catmenu .catlist li { min-width: calc((100% - 5px) / 2); margin: 0 0 5px; }

.hotelhousekeeping .itemtitle p { text-align: center; }
.hotelhousekeeping .itemtitle::after { left: calc(50% - 40px);  }

.products2021_no05_point { display: block; margin: 0; padding: 0; }
.products2021_no05_point > .img { width: auto; text-align: center; padding: 0 0 20px }
.products2021_no05_point > .txt { width: auto; margin: 0; }

.miselpaulmain { display: block; }
.miselpaulmain .img { width: auto; padding: 0 0 20px; }
.miselpaulmain .img img { margin: 0 auto; }
.miselpaulmain .txt { width: auto; }

.products2021_no01_point { display: block; }
.products2021_no01_point > .img { width: auto; text-align: center; }
.products2021_no01_point > .txt { width: auto; }
.products2021_no01_point > .txt dl dt { width: 100px; }
.products2021_no01_point > .txt dl dd { width: calc((100% - 100px) - 15px); }

.np2022_01_wrap01 { display: block; }
.np2022_01_wrap01 > dl { margin:0 0 15px; }
.np2022_01_wrap01 > dl:nth-last-of-type(1) { margin:0 0 15px; }
.np2022_01_wrap01 dt br { display:none; }
.np2022_01_wrap01 dd { text-align: center; }

.np2022_02_wrap01 { display: block; }
.np2022_02_wrap01 .img { width: 100%; text-align: center; }
.np2022_02_wrap01 .txt { width: 100%; }
.np2022_02_wrap01 .txt h4 { color:#01796C; font-weight: bold; margin:0; }
.np2022_02_wrap01 .txt dl { display: flex; justify-content: space-between; margin: 15px 0 0; }
.np2022_02_wrap01 .txt dl dt { width: 100px; }
.np2022_02_wrap01 .txt dl dd { width: calc(100% - 110px); }
.np2022_02_wrap01 .bottom { margin: 15px 0 0; }

.np2022_02_wrap02 { display: block; flex-wrap: wrap; justify-content: space-between; margin: 60px 0; }
.np2022_02_wrap02 .img { width: 100%; text-align: center; }
.np2022_02_wrap02 .txt { width: 100%;}
.np2022_02_wrap02 .txt h4 { color:#01796C; font-weight: bold; margin:0; }
.np2022_02_wrap02 .txt dl { margin: 0 0 15px; }
.np2022_02_wrap02 .txt dl dt { color:#01796C; font-weight: bold; margin:0; }
.np2022_02_wrap02 .txt dl dd { margin:0 0 15px; }
.np2022_02_wrap02 .txt dl dd p { margin:10px 0; }
.np2022_02_wrap02 .txt dl dd ul { margin:10px 0; display: flex; justify-content: center; }
.np2022_02_wrap02 .txt dl dd ul li { width: 100%;}
.np2022_02_wrap02 .txt dl dd ol { margin:10px 0; display: flex; justify-content: center; }
.np2022_02_wrap02 .txt dl dd ol li { width: 100%;}

.np2022_03_wrap01 h3 { margin: 0 0 -10px; }

.np2022_04_wrap01 { display: block; }
.np2022_04_wrap01 dl { margin: 0 0 30px; width: 100%; }
.np2022_04_wrap01 dt img { width: 100%; height: auto; }
.np2022_04_wrap01 dd p { line-height: 1.4; }

.np2022_05_wrap01 { display: block; }
.np2022_05_wrap01 dl { width: 100%; margin:0 0 30px 0; }
.np2022_05_wrap01 dl:nth-of-type(5) { width: 100%; }

.np2023_01_wrap01 { display: block; }
.np2023_01_wrap01 dl { width: 100%; margin:0 0 30px 0; }

.np2023_01_wrap02 { display: block; }
.np2023_01_wrap02 .img { width: auto; margin: 0 auto 1rem; }
.np2023_01_wrap02 .txt { width: auto; padding: 0; }
.np2023_01_wrap02 .txt dl { display: flex; align-items: center; margin: 0 0 1rem; }
.np2023_01_wrap02 .txt dl dt { width: 100px; }
.np2023_01_wrap02 .txt dl dd { width:calc(100% - 100px); padding: 0 0 0 1rem; }

.np2023_02_wrap01 { display: block; }
.np2023_02_wrap01 .img { width: auto; text-align: center; margin: 0 auto 1rem; }
.np2023_02_wrap01 .txt { width: auto; padding: 0 ; }

.np2023_02_wrap02 { display: block; }
.np2023_02_wrap02 .img { width: auto; text-align: center; margin: 0 auto 1rem; }
.np2023_02_wrap02 .txt { width: auto; padding: 0 ; }

.np2023_03_wrap01 { display: block; }
.np2023_03_wrap01 .img { width: auto; text-align: center; margin: 0 auto 1rem; }
.np2023_03_wrap01 .txt { width: auto; padding: 0 ; }

.hint { padding: 1rem; margin: 0 auto 1rem; }

.np2023_04_wrap01 { margin: 0 auto 1rem;}

.np2023_05_wrap01 .top { display: block; }
.np2023_05_wrap01 .top .img { width: auto; }
.np2023_05_wrap01 .top .txt { width: auto; padding: 0; }
.np2023_05_wrap01 .bottom { display: block; }
.np2023_05_wrap01 .bottom dl:nth-of-type(1) { width: auto; margin: 0 auto 15px; }
.np2023_05_wrap01 .bottom dl:nth-of-type(2) { width: auto; margin: 0 auto 15px; }
.np2023_05_wrap01 .bottom dl:nth-of-type(3) { width: auto; margin: 0 auto 15px; }
.np2023_05_wrap01 .bottom dl dt img { height: auto; }

/*cookieポップアップここから*/
.cookiepopup { background:#2d3934; z-index: 9999999; color:#e5e5e5; width:100%; bottom:0px; position:fixed;}
.cookiepopup .content_area { max-width:1500px; margin:0 auto; display:flex; padding: 15px 0;}
.cookiepopup .text { width: 70%; padding-left:5%; }
.cookiepopup .text a { color:#fff; text-decoration:underline;}
.cookiepopup .button { width: 30%;  align-items:center; padding-left:5%; display:block;}
.cookiepopup li,.cookiepopup li a { background:#479264; text-align: center; padding: 2px 10px; width: 80%; margin:5px; color:#fff; cursor: pointer;}
.cookiepopup li:hover ,.cookiepopup li a:hover{ background:#479264; text-align: center; padding: 2px 10px; width: 80%; margin:5px; color:#fff; text-decoration:underline;}
.cookiepopup p { color:#fff; max-width:1500px;}
/*cookieポップアップここまで*/


}




/* ───────────────────────────────────────────────────────────────────────────
 640px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media print, screen and (max-width:640px){

.swP { display: none; }
.swT { display: none; }
.swS { display: block; }
.swP.swT { display: none; }
.swP.swS { display: block; }
.swT.swS { display: block; }
.swP.swT.swS { display: block; }

body { padding: 60px 0 0; }



#container > header nav ol { display: block; }
#container > header nav ol li a { color:#fff; }

.topcatch .bnr { float: none; padding: 10px; text-align: center; }
.topcatch .bnr img { width:100%; }
.topcatch .topics { float: none; width: auto; height: auto; }
.topslide .body { padding: 0 10px; }
/*
.topslide a { width: auto; margin: 0 20px 10px; height: auto; padding: 0 0 20px; float: none; }
.topslide a::after { display: none; }
.topslide a dt img { width: 100%; }
*/
.topabout { margin: 0; padding: 0; }
.topabout .txt { padding: 25px; }
.blandsite { padding: 50px 0 0; }
.blandsite .inr { background: transparent; margin: 0 auto; display: block; }
.blandsite .inr a { width: auto; float: none; margin: 0 10px 10px; background: #fff; }
.blandsite .inr a::after { display: none; }
.blandsite .inr a p { padding: 0 20px 20px; }
.blandsite .inr a dt { padding: 0; }
.servicelist { padding:0; }
.servicelist .inr { background: transparent; margin: 0 auto; }
.servicelist .inr a { width: auto; float: none; margin: 0; background: #fff; }
.servicelist .inr a::after { display: none; }
.servicelist .inr a p { padding: 0 20px 20px; }
.pickup { padding: 50px 0 0; }
.videos h2 { font-size: 1.25rem; margin: 0 20px 50px; }
.information .inr { margin: 0 10px; }
.information .inr a dt { padding: 0; display: block; width: auto; }
.information ul { padding: 30px 0 0; }
.footerbtn li a { font-size: 1rem; padding: 30px; }
.footerbtn li a::after { width: 6px; height: 6px; border-top: solid 2px #fff; border-right: solid 2px #fff; right: 10px; }
/*
.searchbar .inr { display: block;  }
.searchbar h2 { padding: 0 10px 10px; float: none; }
.searchbar ol { padding: 0 0 0 5px; }
.searchbar ul { float: none; }
.searchbar ul li { margin: 0 0 10px; float: none; }
*/
.searchbar { padding: 10px 0; }
.searchbar .inr h2 { padding: 0; text-align: left; line-height: 40px; width: 40px; }
.searchbar .inr ul li { padding: 0; }
.searchbar .inr ul li input { width: calc(100vw - 128px); margin: 0 10px 0 0; }
.searchbar .inr ul li select {  display: none; }
.searchbar .inr ul li button { width: 4em; }
.searchbar .inr ul li a.searchvatbtn { display: none; }
/*
.searchbar ol li a { padding: 1px 10px 3px; font-size: .8rem; }
*/
#container > header .subnav { display: none; padding: 0 0 10px; }
#container > .title { padding: 30px 0; }
article.page > aside .sideBrand a { display: block; width: auto; margin: 0 0 10px; float: none; }
article.page > aside .sidePickup a { display: block; width: auto; margin: 0 0 10px; float: none; }
.pagenav li { display: block; }
.pagenav li a { padding: 12px; display: block; margin: 0 0 5px; }
.contentslist .inr { display: block;}
.contentslist .inr > a { display: block; width: auto; margin: 0 0 10px; }
.catalog_movie_list .inr { display: block; }
.catalog_movie_list a { display: block; width:auto; padding: 5px; margin: 0 0 5px; }
.photo { float: none; margin: 0 0 20px; text-align: center; }
.brandTxt { display: block; }
.brandTxt > .cont { width: auto; margin: 0 auto 10px; }

.photolist ul li { width: 48%; margin: 0 0 4%; }
.relatedproduct > a { width: 48%; margin: 0 0 15px; }
.picList > a { width: 48%; margin: 0 0 15px; }
.linkarea { display: block; }
.linkarea dl { width: auto; }

.picList > a { width: calc(100%); }
.universityList ul { display: block; }
.universityList li { width: auto; }
.performancelist ul { display: block; }
.performancelist li { width: auto; }

.searchresult { padding: 15px; }
.searchresult li {float: none; margin: 0 0 10px 0;}
.searchresult li input[type="search"] { width: 100%; }

.itemlist .inr > a { width: 49%; }

.historywrap > dl > dt { float: none; margin: 0 0 30px; text-align: center; }
.historywrap > dl:nth-child(even) > dt { float: none; margin: 0 0 30px; }

.productsdetail .img { width: auto; float: none; }
.productsdetail .txt { width: auto; float: none; }
.productsdetail .mark { width: auto; float: none; }

.placemenu ul { background: #91D371; display: block; }
.placemenu ul li { width: auto; }
.placemenu ul li a { width: auto; padding: 15px 10px 15px 90px; text-align: left; box-shadow: 0 1px 0 rgba(0,0,0,0.1); }
.placemenu ul li a::after { left: 20px; top:calc(50% - 25px); }

.roundBtn { padding: 0; }
.roundBtn a { margin: 0 auto 10px; }

.contlist { display: block; }
.contlist > a { width: auto; margin: 0 0 10px; box-shadow: inset 0 0 1px #aaa; padding: 5px; }
.contlist > a:last-child { margin: 0 0 40px; }
.contlist > a dt { margin: 0 0 5px; }
.contlist > a dd { margin: 0 5px 5px; }
.contlist > a h3 { font-size: 1rem; }
.information ul { padding: 0; }
.information .inr a { position: relative; }
.information .inr a dd.cats {position: absolute; top:0; right: 0; }
.information .inr a dd.cats span { font-size: 10px; padding: 2px; }
.itemlist .inr > a dt { min-height: 0; }
.itemlist .inr > a dt img { height:30vw; width: 30vw; }

.newproduct_v2 h3.catchcopy { font-size: 1.2rem; margin: 30px 0; }
.newproduct_v2 .productInfo { margin: 30px 0; }
.newproduct_v2 .productInfo h3 { font-size: 1.1rem; }
.newproduct_v2 .productInfo > .detail dl dt { width: auto; float: none; padding: 0 10px; }
.newproduct_v2 .productInfo > .detail dl dd { width: auto; float: none; padding: 0 10px; }
.newproduct_v2 .productInfo > .detail dl dd:after { display: none; }

.newproduct_v2 .productInfo .productColumn { display: block; }
.newproduct_v2 .productInfo .productColumn .img { width: auto; text-align: center; }
.newproduct_v2 .productInfo .productColumn .txt { width: auto; }
.newproduct_v2 .productInfo .productColumn .detail dl dt { width: auto; float: none; padding: 0 10px; }
.newproduct_v2 .productInfo .productColumn .detail dl dd { width: auto; float: none; padding: 0 10px; }
.newproduct_v2 .productInfo .productColumn .detail dl dd:after { display: none; }

.newproduct_v2 .productInfo > .price table thead { display: none; }
.newproduct_v2 .productInfo > .price table tbody tr,
.newproduct_v2 .productInfo > .price table tbody th,
.newproduct_v2 .productInfo > .price table tbody td { text-align: left; width: 100%; display: block; padding: 0; border:none; }
.newproduct_v2 .productInfo > .price table tbody td:after { display: none; }
.newproduct_v2 .productInfo > .price table tbody tr {padding: 15px 10px; border-bottom: 1px solid #ddd; }
.newproduct_v2 .productInfo > .price table tbody tr:nth-child(even) th,
.newproduct_v2 .productInfo > .price table tbody tr:nth-child(even) td { background: inherit; }
.newproduct_v2 .productInfo > .price table tbody em { display: inline-block; }
.newproduct_v2 .productInfo > .price table tbody td.price br { display: none; }
.newproduct_v2 .wrap { padding: 15px; border-radius: 5px; }
.newproduct_v2 .wrap h3 { font-size: 1.1rem; }
.newproduct_v2 .columnImage { display: block; }
.newproduct_v2 .columnImage dl { width: auto; padding: 0 0 15px; margin: 0 0 15px; border-bottom:1px solid #ddd; }
.newproduct_v2 .columnImage dt { margin: 0 auto; text-align: center; }
.newproduct_v2 .columnImage dd { margin: 0 auto; }
.newproduct_v2 .newproductDetail { display: block; }
.newproduct_v2 .newproductDetail dl { width: auto; padding: 15px 0; border-top:1px solid #ddd; }
.newproduct_v2 .newproductDetail dl::after { content: ""; display: block; clear: both; }

.newproduct_v2 .spongerollerboltDetail { padding: 15px; border-radius: 5px; }
.newproduct_v2 .spongerollerboltDetail h3 { font-size: 1.1rem; }
.newproduct_v2 .spongerollerboltDetail > dl dt { width: 140px; margin: 0 15px 0 0; }
.newproduct_v2 .spongerollerboltDetail > dl dd h4 { font-size: 1.1rem; }
.newproduct_v2 .spongerollerboltDetail aside > a dt { width: 80px; }

.catalogwrap .inr { border-top: 1px dashed #ddd; }
.catalogwrap .inr a::after { top:calc(50% - 5px); right: 10px; width: 10px; height: 10px; }
.catalogwrap .inr dl { padding: 15px 30px 15px 15px; align-items: flex-start; }
.catalogwrap .inr dt { width: 50px; }
.catalogwrap .inr dd { width: calc(100% - 65px); font-size: 1rem; }
.catalogwrap .inr dd small { font-size: .8rem; line-height: 1.2; }

.hotelhousekeeping .title { height: auto; }
.hotelhousekeeping .title .inr { padding: 80px 20px; }
.hotelhousekeeping .title .inr p { font-size: 1rem; line-height: 1.5; letter-spacing: 0; }
.hotelhousekeeping nav { padding: 10px 10px 0; margin: 5px 5px 10px; }
.hotelhousekeeping nav .inr a { width: calc((100% - 10px) / 2); margin: 0 0 10px; }
.hotelhousekeeping > article { padding: 0 10px 10px; }
.hotelhousekeeping .itemcatch ul { display: block; }
.hotelhousekeeping .point .inr { display: block; }
.hotelhousekeeping .point .inr dl { width: auto; }

.factorykaizen .title { padding: 100px 0px; }
.factorykaizen .title h1 { margin:  0 auto; text-align: center; }
.factorykaizen > article { padding:15px; }
.factorykaizen > article * { font-size: 1rem; }
.factorykaizen .caption ul { display: block; }
.factorykaizen .caption ul li { margin: 0 10px 10px; }
.factorykaizen .about dl { display: block; }
.factorykaizen .about dt { width: auto; margin: 0 0 15px; }
.factorykaizen .about dd { width: auto; }
.factorykaizen .point dl { display: block; padding: 0 0 35px; }
.factorykaizen .point dt { width: auto; margin: 0 0 15px; }
.factorykaizen .point dd { width: auto; }
.factorykaizen .point dd h2 { font-size: 1.4rem; }
.factorykaizen .point dd h2 small { font-size: .8rem; }
.factorykaizen .voice::after { left: 0; }
.factorykaizen .voice dl { margin: 0 0 0 120px; }
.factorykaizen .video h2,
.factorykaizen .video h2 em { font-size: 1.4rem; }
.factorykaizen .book dl { display: block; padding: 25px; }
.factorykaizen .book dl dt { width: auto; text-align: center; padding: 0 0 25px; }
.factorykaizen .book dl dd { width: auto; font-size: 1.2rem; }
.factorykaizen .book a { font-size: 1.2rem; }

.order_calculator { margin:0 15px; }
.order_calculator h2 { margin:15px 0; }
.order_calculator .flow01 .inr .oc_search { display: block; }
.order_calculator .flow01 .inr .oc_search h4 { margin: 0 0 10px; }
.order_calculator .flow01 .inr .oc_search dl { display: block; }
.order_calculator .flow01 .inr .oc_search dl dt { width: 100%; margin: 0 0 10px; }
.order_calculator .flow01 .inr .oc_search dl dt select { width:100%; }
.order_calculator .flow01 .inr .oc_search dl dd select { width: 100%; }
.order_calculator .flow01 .inr .oc_list .wrap dd { line-height: 1.25; font-size: 12px; }
.order_calculator .flow02 .formula { margin: 0 auto; text-align: center; }
.order_calculator .flow02 .formula ul { display: inline-block; margin: 0 auto; }
.order_calculator .flow02 .formula ul li { width: 100%; margin: 10px 0; }
.order_calculator .flow02 .caution .wrap { display: block; }
.order_calculator .flow02 .caution .wrap ul { display: block; width: auto; }
.order_calculator .flow02 .caution .wrap p { display: block; width: auto; }
.oc_form { margin: 0 15px; }
.oc_form .inr { display: block; }
.oc_form .inr .cont { width: 100%; margin: 0 0 30px; }
.oc_form .inr .cont:nth-of-type(even) { margin: 0 0 30px; }

.wpcf7-form-control-wrap { text-align: left; margin: 0; }
.wpcf7-form-control.g-recaptcha.wpcf7-recaptcha { text-align: left; margin: 0; }
.wpcf7-form-control.g-recaptcha.wpcf7-recaptcha > div { margin: 0; }
#recaptcha dd { transform-origin: 0% 0%; transform: scale(0.8); }

/*cookieポップアップここから*/
.cookiepopup { background:#2d3934; z-index: 9999999; color:#e5e5e5; width:100%; bottom:0px; position:fixed;}
.cookiepopup .content_area { max-width:1500px; margin:0 auto; padding: 15px 0; display:block;}
.cookiepopup .text { width: 90%; padding:1px auto; }
.cookiepopup .text a { color:#fff; text-decoration:underline;}
.cookiepopup .button { width: 100%;  padding:1px 1px;}
.cookiepopup li,.cookiepopup li a { background:#479264; text-align: center; padding: 2px 10px; width: 80%; margin:5px auto; color:#fff; cursor: pointer;}
.cookiepopup li:hover ,.cookiepopup li a:hover{ background:#479264; text-align: center; padding: 2px 10px; width: 80%; margin:5px auto; color:#fff; text-decoration:underline;}
.cookiepopup p { color:#fff; max-width:1500px;}

/*cookieポップアップここまで*/




}


.np2024_point { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 4rem 2rem; }
.np2024_point dl { width: calc((100% - 4rem) / 3); }
.np2024_point dl dt { text-align: center; margin: 0 auto 1rem; }
.np2024_point dl dd h3 { font-size: 1.2rem; font-weight: 600;  line-height: 1.5; margin: 0 auto .5rem; }
.np2024_point dl dd p { font-weight: 600;  line-height: 1.5; }
.np2024_point dl dd p small { font-size: .8rem; color: #f00; font-weight: 500; }
.np2024_point .img { width: 250px; text-align: center; }
.np2024_point .txt { width: calc((100% - 250px) - 2rem); display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 4rem 2rem; }
.np2024_point .txt dl { width: calc((100% - 2rem) / 2); }

.newproduct_v2.np2024_02 .np2024_point dl dd h3 { color: #00683E; }
.newproduct_v2.np2024_03 .np2024_point dl dd h3 { color: #00683E; }
.newproduct_v2.np2024_04 .np2024_point dl dd h3 { color: #582E3D; }
.newproduct_v2.np2024_05 .np2024_point dl dd h3 { color: #CF5921; }

.newproduct_v2 .productInfo .producttag ul li.tag.rainbow { background: linear-gradient(135deg,  #00afe0 0%,#00db2f 33%,#e0e000 66%,#e2004f 100%); }

.np2024_03_sub { background: #00B995; border-radius: 2rem; padding: 1rem; margin: 3rem auto; }
.np2024_03_sub > h2 { text-align: center; color: #fff; font-weight: 600; margin: 1rem auto .5rem; font-size: 1.25rem; line-height: 1.5; }
.np2024_03_sub > p { text-align: center; color: #fff; font-weight: 600; margin: 0 auto 2rem; }
.np2024_03_sub > .inr { background: #fff; border-radius: 1rem; padding: 1rem; }
.np2024_03_sub > .inr .img { text-align: center; margin: 1rem auto -40px; }

.np2024_02_sub { border:1px solid rgba(0,0,0,.5); padding: 1rem; margin: 3rem auto; display: flex; }
.np2024_02_sub .cont { width: 50%; }
.np2024_02_sub .cont:nth-of-type(2) { border-left: 1px solid rgba(0,0,0,.5); padding: 0 0 0 1rem; }
.np2024_02_sub .cont h4 {margin: 0 auto 1rem; font-size: 1.2rem; color: #00683E; }
.np2024_02_sub .cont:nth-of-type(1) dl { display: flex; align-items: center; margin: 0 auto 1rem; width: 100%; justify-content: space-between; }
.np2024_02_sub .cont:nth-of-type(1) dl dt { width: 40px; }
.np2024_02_sub .cont:nth-of-type(1) dl dd { width: calc((100% - 1rem) - 40px); font-weight: 600; }
.np2024_02_sub .cont:nth-of-type(1) dl dd small.tcr { color: #f00; }
.np2024_02_sub .cont:nth-of-type(2) dl { display: flex; align-items: center; margin: 0 auto 1rem; width: 100%; justify-content: space-between; }
.np2024_02_sub .cont:nth-of-type(2) dl dt { width: 110px; }
.np2024_02_sub .cont:nth-of-type(2) dl dd { width: calc((100% - 1rem) - 110px); font-weight: 600; }
.np2024_02_sub02 { border:1px solid rgba(0,0,0,.5); padding: 1rem; margin: 3rem auto;; }
.np2024_02_sub02 h4 {margin: 0 auto 1rem; font-size: 1.2rem; color: #00683E; }
.np2024_02_sub02 .inr { width: 100%; display: flex; flex-wrap: wrap; gap: 1rem; }
.np2024_02_sub02 .inr dl { width: calc((100% - 1rem) / 2); display: flex; align-items: center; margin: 0 auto 1rem; justify-content: space-between; }
.np2024_02_sub02 .inr dl dt { width: 80px; }
.np2024_02_sub02 .inr dl dd { width: calc((100% - 1rem) - 80px); font-weight: 600; }

@media print, screen and (max-width:1200px){
	.np2024_point dl { width: 100%; }
  .np2024_point .img { width: 100%; background: #f6f6f6; }
  .np2024_point .img img { max-height: 50vh; }
  .np2024_point .txt { width: 100%; }
  .np2024_point .txt dl { width: 100%; }
  .np2024_02_sub { display: block; }
  .np2024_02_sub .cont { width: auto; }
  .np2024_02_sub .cont:nth-of-type(2) { border-left: none; border-top: 1px solid rgba(0,0,0,.5); padding: 1rem 0 0; }
  .np2024_02_sub02 .inr { display: block; }
  .np2024_02_sub02 .inr dl { width: 100%; }

}
