@charset "utf-8";
/* CSS Document */
/* -----------------------------------
flex
----------------------------------- */
.flex, .flex2, .flex-max2, .flex3, .flex4, .flex5, .flex6 {
  display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify;}
.flex2, .flex-max2 { justify-content: space-between;}
.flex2 > *, .flex-max2 > * { width: 48.25%; margin-bottom: 1rem; /*margin-bottom: 4%;*/}
.flex2 > *:nth-last-child(-n+2), .flex2-max2 > *:nth-last-child(-n+2) {
  margin-bottom: 1rem;}
.flex3 > * { width: 30%; margin-bottom: 2rem; /*margin-bottom: 2%; */
}
.flex3 > *:last-child { margin-right: auto;}
.flex3 > *:nth-child(3n) { margin-right: 0;}
.flex4 > * { width: 23.4%; margin-bottom: 2rem; /*margin-bottom: 2%; */}
.flex4 > *:last-child {
  margin-right: auto;
}
.flex4 > *:nth-child(4n) { margin-right: 0;}
.flex5 > * { width: 18%; margin-bottom: 2rem;}
.flex5 > *:nth-child(5n) { margin-right: 0;}

@media screen and (max-width: 960px) {
  .flex1 { width: 100%;}
  .flex2 > *, .flex-max2 > * { width: 100%;}
}
@media screen and (max-width: 768px) {
  .flex5 > * { width: 23%;}
}
@media screen and (max-width: 580px) {
  .flex5 > * { width: 31.2%;}
}
@media screen and (max-width: 460px) {
  .flex5 > * { width: 48%;}
}
.LtoR { -webkit-flex-direction: row; flex-direction: row;}
.RtoL { -webkit-flex-direction: row-reverse; flex-direction: row-reverse;}
.caption { width: 100%; text-align: left; font-size: 0.85rem; line-height: 1.5rem;
  margin-top: 20px; display: block; padding-left: 1.5em; position: relative;}
.caption:before { content: "※"; position: absolute; left: 0; top: 0;}
.caption + .caption { margin-top: 5px;}
.box-center { display: flex; justify-content: center; align-items: center;}
.conts-img { position: relative;}
.conts-img img { width: 100%; height: auto;}
/*--------------------------------------------------------------
 Effects
--------------------------------------------------------------*/
.btn { display: inline-block; position: relative;}
.btn:hover { animation: big 0.1s; animation-fill-mode: forwards; opacity: none !important;}
.btn:active { animation: small 0.1s; animation-fill-mode: forwards;}
@keyframes big {
  0% { transform: scale(1);}
  100% { transform: scale(1.025);}
}
@keyframes small {
  100% { transform: scale(0.975);}
}
.shadow {
  margin-bottom: 10px;
  -webkit-filter: drop-shadow(0px 3px 3px rgba(0, 0, 0, 0.3));
  -moz-filter: drop-shadow(0px 3px 3px rgba(0, 0, 0, 0.3));
  -ms-filter: drop-shadow(0px 3px 3px rgba(0, 0, 0, 0.3));
  filter: drop-shadow(0px 3px 3px rgba(0, 0, 0, 0.3));
	}
.arrow01, .arrow02, .arrow03 {
  position: absolute;  width: 0; height: 0; float: right;
  border-style: solid; border-color: transparent #FFF;
}
.arrow01 { right: 12px; bottom: 12px; border-width: 23px 23px 0 0; border-color: transparent #FFF;}
.arrow02 { right: 5px; bottom: 5px; border-width: 10px 10px 0 0; border-color: transparent #FFF;}
.arrow03 { right: 8px; bottom: 8px; border-width: 23px 23px 0 0; border-color: transparent #75A82F;}

ul.pagelink { text-align:center;}
ul.pagelink li { width:30%;	display:inline-block; margin:0 2% 15px 2%; padding:5px 0 10px 10px;
  text-align: center;	font-size:18px; background:#6D5241;}
ul.pagelink li a { color:#FFF; text-decoration:none; display:block;}
ul.pagelink li a:after { font-family:"Font Awesome 5 Free"; content:"\f0dd"; font-weight:900;	font-size:26px; padding-left:20px;}
ul.pagelink li.btn-area { padding:5px 10px 10px 0;}
ul.pagelink li.btn-area a:after { content:none; padding-left:0;}
ul.pagelink li.btn-area a:before { font-family:"Font Awesome 5 Free"; content:"\f0d9"; font-weight:900; font-size:26px; padding-right:20px;}

@media screen and (max-width:768px) {
ul.pagelink li { width:44%; font-size:16px; padding:0 5px 5px 5px;}
}
@media screen and (max-width:480px) {
ul.pagelink { margin-bottom:30px;}
ul.pagelink li { width:100%; margin:0 0 10px 0; font-size:16px;}
}


/* ===================================================================
 FRONT PAGE
=================================================================== */
/* メインビジュアル */
#mv { clear: both; width: 100%; margin: 0 auto; padding: 0; text-align: center;}
#mv:after { content: " "; display: block; clear: both;}
#mv h2 { width: 100%; margin: 0; padding: 0;}
#mv h2 img { width: 100%;}
#mv h2 img.sp { display: none;}

@media screen and (max-width:1920px) {
  #mv h2 img { width: 1920px; height: 630px; object-fit: cover;
    font-family: 'object-fit: cover;';/* IE対策 */}
}
@media screen and (max-width:1200px) {
  #mv h2 img { width: 100%; height: auto; object-fit: auto;}
  #mv h2 img.pc { display: none;}
  #mv h2 img.sp { display: block;}
}
/* 活用事例 */
#top-case01 { padding: 45px 0; background: #FFF;}
#top-case01 ul { width: 1200px; margin: 0 auto;}
#top-case01 ul:after { content: " "; display: block; clear: both;}
#top-case01 ul li { float: left; width: 33.3%; padding: 5px 14px; list-style: none; border-left: 1px solid #999;}
#top-case01 ul li:last-child { border-right: 1px solid #999;}
#top-case01 ul li img { width: 100%;}

@media screen and (max-width:1200px) {
  #top-case01 ul { width: 96%;}
}
@media screen and (max-width:768px) {
  #top-case01 { padding: 25px 2%;}
  #top-case01 ul { width: auto; margin: 0 auto;}
  #top-case01 ul li { float: none; width: auto; margin: 0 auto; padding: 7px 0; text-align: center; border: none;}
  #top-case01 ul li:last-child { border: none;}
  #top-case01 ul li img { padding: 7px; border: 1px solid #CCC;}
}
/* 土壌活性化のメカニズム */
#top-mechanism {
  padding: 30px 30px 20px 30px;
  background: url(../images/bg_mechanism.jpg) no-repeat right top;
}
#top-mechanism:after { content:" "; display:block; clear:both;}
#top-mechanism h2 {
  margin: 0 0 20px 0;
  padding: 0 0 25px 0;
  font-size: 30px;
  color: #FFF;
  font-weight: 900;
  background: url(../images/bg_h2_wave.png) no-repeat left bottom;
}
#top-mechanism h2 strong {
  font-size: 40px;
}
#top-mechanism p {
  color: #FFF;
  font-size: 18px;
  line-height: 1.75;
}
@media screen and (max-width:960px) {
  #top-mechanism h2 {
    margin: 0 0 15px 0;
    padding: 0 0 25px 0;
    font-size: 24px;
    color: #FFF;
    font-weight: 900;
    background: url(../images/bg_h2_wave.png) no-repeat left bottom;
  }
  #top-mechanism h2 strong { font-size: 32px;}
  #top-mechanism p { color: #FFF; font-size: 16px; line-height: 150%;}
}
/* EMの基本的な使い方 */
#top-use { clear: both; margin-top: 50px;}
#top-use h2 { margin: 0 auto; padding: 15px 0 20px 0; font-size: 30px; color: #333;
  text-align: center; background: url(../images/bg_topmain_h2.png) no-repeat center;}
#top-use ul { width: 98%; padding: 0 0 40px 0; margin-top: 30px; text-align: center;}
#top-use ul:after { content: " "; display: block; clear: both;}
#top-use ul li { float: left; width: 25%; margin: 0; padding: 0 0 0 2%; line-height: 120%; list-style: none;}
#top-use ul li:before { display: none;}
#top-use ul li img { margin-bottom: 10px;}
#top-use .btn-green { width: 100%; margin-bottom: 23px; text-align: center; overflow: hidden; background: #75A82F;}
#top-use .btn-green img { float: left; margin: 10px;}
#top-use .btn-green p { margin: 0; padding: 28px 30px 0 0; font-size: 26px; font-weight: bold;
  color: #FFF; line-height: 120%;}
#top-use .long .btn-green { clear: both; float: none; width: 100%; height: 100px;
  text-align: center; background: #75A82F url(../images/top_use07.png) no-repeat right center;}
#top-use .long .btn-green p { margin: 0 auto; padding: 35px 0 0 0;}
#top-use .long .btn-green p br.sp { display: none;}
#top-use div a { text-decoration: none;}

@media screen and (max-width:960px) {
  #top-use { margin-top: 30px;}
  #top-use h2 { padding: 15px 15% 20px 15%; font-size: 26px;}
  #top-use ul li { font-size: 14px;}
  #top-use .btn-green img { width: 80px;}
  #top-use .btn-green p { padding: 35px 30px 0 0; font-size: 22px;}
  #top-use .btn-green p br { display: none;}
  #top-use .btn-green, #top-use .long .btn-green { width: 70%; height: 100px; margin: 0 13% 20px 13%;}
  #top-use .long .btn-green { background: #75A82F url(../images/top_use07.png) no-repeat center;}
}
@media screen and (max-width:660px) {
  #top-use h2 { padding: 15px 15% 20px 15%; font-size: 26px; background-size: 80%;}
  #top-use ul { margin-top: 20px; padding: 0 5% 30px 5%;}
  #top-use ul li { width: 50%; margin: 0; padding: 0 2% 20px 2%;}
  #top-use .btn-green p { padding: 25px 40px 0 0;}
  #top-use .long .btn-green p { padding: 25px 20px 0 30px;}
  #top-use .btn-green p br { display: block;}
  #top-use .long .btn-green p br.sp { display: block;}
}
@media screen and (max-width:460px) {
  #top-use h2 { padding: 15px 10% 20px 10%; font-size: 22px; background-size: 90%;}
  #top-use ul li br { display: none;}
  #top-use .btn-green, #top-use .long .btn-green { width: 96%; margin: 0 2% 20px 2%;}
}
/* EMの有効利用により期待できる効果 */
#top-effect { margin-top: 50px;}
#top-effect h2 { margin: 0 auto 40px; padding: 15px 0 20px 0; font-size: 30px; color: #333;
  text-align: center; background: url(../images/bg_topmain_h2.png) no-repeat center;}
#top-effect h2 span { font-size: 22px;}
#top-effect img { float: right;}
#top-effect .flex2 div { float: left; width: calc(100% - 150px); margin: -8px 0 20px 0;}
#top-effect h3 { margin: 0 auto; padding: 10px 10px 15px 50px; font-size: 22px; border-bottom: 1px solid #6E5342;}
#top-effect .effect01 h3 { background: url(../images/top_effect_ico01.png) no-repeat left center;}
#top-effect .effect02 h3 { background: url(../images/top_effect_ico02.png) no-repeat left center;}
#top-effect .effect03 h3 { background: url(../images/top_effect_ico03.png) no-repeat left center;}
#top-effect .effect04 h3 { background: url(../images/top_effect_ico04.png) no-repeat left center;}
#top-effect p { padding: 15px 10px 0 0;}
#top-effect ul { margin: 0; padding: 15px 10px 0 0;}
#top-effect ul li { position: relative; margin: 0; padding: 0 0 8px 23px; list-style: none; line-height: 135%;}
#top-effect ul li::after { display: block; content: ''; position: absolute; left: 5px; top: 0.35em;
  width: 12px; height: 12px; background-color: #666; border-radius: 100%;}
#top-effect .effect05 { clear: both; width: 100%; margin: 30px 0;}
#top-effect .effect05 a { width: 100%; height: 120px; color: #FFF; text-decoration: none;
  background: url(../images/top_effect_bt.jpg) no-repeat center;}
#top-effect .effect05 p { display: inline-block; margin: 25px 0; padding: 10px 30px; font-size: 26px;
  font-weight: bold; background: #008040;}
#top-effect .effect05 p strong { font-size: 32px;}

@media screen and (max-width:960px) {
  #top-effect { margin: 50px 2%;}
  #top-effect h2 { font-size: 26px;}
  #top-effect h2 span { font-size: 20px;}
  #top-effect h3 br { display: none;}
  #top-effect img { margin-top: 10px;}
}
@media screen and (max-width:660px) {
  #top-effect h2 { margin: 0 auto 20px; padding: 15px 15% 20px 15%; font-size: 22px; background-size: 90%;}
  #top-effect h2 span { font-size: 18px;}
  #top-effect .flex2 div { width: 65%;}
  #top-effect h3 { width: 154%; margin: 0 auto; padding: 10px 10px 15px 50px;
    font-size: 18px; background-position: 0 0;}
  #top-effect img { margin-top: 55px; width: 33%;}
}
@media screen and (max-width:460px) {
  #top-effect .effect05 a { height: 100px;}
  #top-effect .effect05 p { margin: 20px 0; padding: 10px 20px; font-size: 18px;}
  #top-effect .effect05 p strong { font-size: 24px;}
}

/* コラム、お知らせ */
#top-column { margin-top: 15px; padding:0 1% 0 2%; border: 2px solid #CCC2B7;}
#top-column .bt-column { float: right; margin-top: -50px; margin-right: -1.1%; padding: 3px 15px 4px 15px; background: #6E5342;}
#top-column .bt-column a { color: #FFF; font-size: 14px; text-decoration: none;}
#top-column .bt-column a:before { font-family: "Font Awesome 5 Free"; content: '\f054'; font-weight: 900; color: #FFF; font-size: 0.8em; padding-right: 5px;}
#top-column #column-list { margin-bottom: 5px!important;}
#top-column h2 { margin-bottom: 20px; padding-top: 20px; font-size: 20px; color: #333;}
#top-column h2 i { margin-top: -20px; font-size: 100px; color: #6E5342;}
#top-column #column-list article a h3 { font-size:15px!important; font-weight: normal;}
#top-column #column-list article a p { font-size: 13px;}

#top-info {}
#top-info h2 { margin-bottom: 20px; font-size: 24px; color: #333;}
#top-info h2 i { padding-right: 10px; font-size: 30px; color: #008040;}
#top-info .bt-info { float: right; margin-top: -50px; padding: 3px 15px 4px 15px; background: #008040;}
#top-info .bt-info a { color: #FFF; font-size: 14px; text-decoration: none;}
#top-info .bt-info a:before { font-family: "Font Awesome 5 Free"; content: '\f054'; font-weight: 900; color: #FFF; font-size: 0.8em; padding-right: 5px;}
#top-info dl { clear: both; padding: 15px; background: #FFF; border: none;}
#top-info dl dt, #top-info dl dd { padding-bottom: 5px; border: none;}
#top-info dl dd a:hover { text-decoration: none;}
@media screen and (max-width:960px) {
  #top-column { margin-left:2%; margin-right:2%;}
  #top-info { width: 96%; margin-left: 2%;}
}
@media screen and (max-width:640px) {
  #top-info dl dt, #top-info dl dd { clear: both; float: none; width: 100%;}
  #top-info dl dd { padding-top: 0; margin-left: 0;}
}
@media screen and (max-width:460px) {
  #top-info h2 { font-size: 20px;}
  #top-info h2 i { font-size: 28px;}
}

/* 全国販売店サーチ */
#top-shopsearch { margin-top: 50px; width: 100%; height: 185px;
  background: url(../images/top_shoplist_bt.png) no-repeat right bottom;}
#top-shopsearch:after { content: " "; display: block; clear: both;}
#top-shopsearch a { text-decoration: none;}
#top-shopsearch img { float: left; margin: 0 5% 0 10px;}
#top-shopsearch p { font-size: 22px; padding: 55px 0 0 0; font-weight: bold; color: #E2DD45;
  text-align: left; text-shadow: 0 0 5px #6E5342;}
#top-shopsearch p strong { font-size: 40px; color: #FFF;}
#top-shopsearch p i { margin-right: -30px; padding-left: 10px; color: #C8C8C8;}

@media screen and (max-width:1200px) {
  #top-shopsearch p { font-size: 18px; padding: 65px 0 0 0; font-weight: bold; color: #E2DD45;}
  #top-shopsearch p strong { font-size: 30px; color: #FFF;}
}
@media screen and (max-width:960px) {
  #top-shopsearch { width: 96%; margin-left: 2%; margin-bottom: 100px;}
}
@media screen and (max-width:768px) {
  #top-shopsearch { height: 140px;}
  #top-shopsearch img { width: 200px; margin-top: -20px;}
  #top-shopsearch p { font-size: 18px; padding: 35px 0 0 0;}
  #top-shopsearch p strong { font-size: 30px;}
}
@media screen and (max-width:620px) {
  #top-shopsearch { height: 110px; background-size: 130%;}
  #top-shopsearch img { width: 150px; margin-top: -10px;}
  #top-shopsearch p { font-size: 16px; padding: 28px 0 0 0;}
  #top-shopsearch p strong { font-size: 24px;}
}
@media screen and (max-width:460px) {
  #top-shopsearch { margin-top: 80px; height: 150px; background-size: 600px;}
  #top-shopsearch img { float: none; width: 130px; margin: -54px 0 0 33%;}
  #top-shopsearch p { padding: 20px 0 0 0; text-align: center;}
  #top-shopsearch p strong {}
}

/* ===================================================================
 製品ラインナップ
=================================================================== */
/* 一覧 */
#product-list {
  width: 100%;
  margin-bottom: 50px;
}
#product-list:after {
  content: " ";
  display: block;
  clear: both;
}
#product-list article {
  margin: 0 1.5% 30px 1.5%;
  padding: 10px;
  background: #FFF;
}
#product-list article a {
  text-decoration: none;
}
#product-list article a h2 {
  margin: 12px 0 18px 0;
  padding: 5px;
  font-size: 18px;
  color: #FFF;
  text-align: center;
  background: #75A82F;
}
#product-list article a p {
  font-size: 15px;
  color: #333;
}
@media screen and (max-width:620px) {
  #product-list article {
    width: 47%;
  }
  #product-list article a h2 {
    margin: 10px 0;
  }
  #product-list article a p {
    font-size: 14px;
  }
}
@media screen and (max-width:460px) {
  #product-list article a h2 {
    padding: 4px;
    font-size: 16px;
  }
  #product-list article a p {
    font-size: 12px;
  }
}

/* 詳細（カスタム投稿共通) */
#product-post .entry-header {
  padding: 15px 0;
  background: #FFF;
}
#case-post .entry-header {
  background: #FFF;
}
#product-post .entry-header:after, #case-post .entry-header:after {
  content: " ";
  display: block;
  clear: both;
}
#product-post .entry-header h2 {
  position: relative;
  margin: 15px 3% 25px 0;
  padding: 12px 16px;
  color: #FFF;
  font-size: 28px;
  background: #6E5342;
}
#product-post .entry-header h2:before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border: 8px solid #FFF;
  border-top: 8px solid rgba(0, 0, 0, 0.5);
  border-left: 8px solid rgba(0, 0, 0, 0.5);
}
#product-post .entry-header img {
  float: left;
  width: 46%;
  margin: 20px 0 25px 3%;
}
#product-post .entry-header .summary {
  float: right;
  width: 46%;
  margin: 0 3% 0 0;
}
#product-post .entry-header .summary h3 {
  margin-bottom: 15px;
  padding: 5px 0 15px 0;
  color: #333;
  font-size: 20px;
  border-bottom: 3px solid #75A82F;
}
#product-post .entry-header .summary dl {
  margin-bottom: 25px;
}
#product-post .entry-header .summary dl dd {
  padding: 12px 0;
  text-align: right;
  font-weight: bold;
}
#product-post .entry-header .summary dl dt {
  position: relative;
  margin: 0;
  padding: 12px 0 12px 23px;
  list-style: none;
  line-height: 135%;
}
#product-post .entry-header .summary dl dt::after {
  display: block;
  content: '';
  position: absolute;
  left: 5px;
  top: 1.25em;
  width: 12px;
  height: 12px;
  background-color: #6E5342;
  border-radius: 100%;
}
#product-post .entry-header .btn-under-summary {
  clear: right;
  float: right;
  width: 46%;
  margin: 0 3% 0 0;
}
#product-post .entry-header .btn-under-summary .btn-search, #product-post .entry-header .btn-under-summary .btn-shop {
  width: 100%;
  margin-bottom: 20px;
  padding: 8px 20px 5px 8px;
  text-align: center;
  font-size: 24px;
  background: #FF9326;
}
#product-post .entry-header .btn-under-summary .btn-shop {
  background: #75A82F;
}
#product-post .entry-header .btn-under-summary .btn-search i, #product-post .entry-header .btn-under-summary .btn-shop i {
  float: left;
  padding: 8px 2px 8px 8px;
}
#product-post .entry-header .btn-under-summary .btn-search a, #product-post .entry-header .btn-under-summary .btn-shop a {
  display: block;
  color: #FFF;
  text-decoration: none;
}
@media screen and (max-width:768px) {
  #product-post .entry-header .summary dl dd {
    text-align: right;
    font-weight: bold;
  }
  #product-post .entry-header .summary dl dt {
    position: relative;
    margin: 0;
    list-style: none;
    line-height: 135%;
  }
  #product-post .entry-header .btn-under-summary {
    clear: both;
    float: none;
    width: 100%;
  }
  #product-post .entry-header .btn-under-summary .btn-search, #product-post .entry-header .btn-under-summary .btn-shop {
    width: 45.5%;
    margin-bottom: 20px;
    padding: 11px 30px 5px 8px;
    font-size: 18px;
  }
  #product-post .entry-header .btn-under-summary .btn-search {
    float: left;
    margin-left: 3%;
  }
  #product-post .entry-header .btn-under-summary .btn-shop {
    float: right;
    margin-right: 3%;
    font-size: 16px;
  }
}
@media screen and (max-width:640px) {
  #product-post .entry-header .summary dl dd {}
  #product-post .entry-header .summary dl dt {}
  #product-post .entry-header {
    text-align: center;
  }
  #product-post .entry-header img {
    float: none;
    width: 94%;
    max-width: 420px;
    margin: 20px auto 25px auto;
  }
  #product-post .entry-header .summary {
    float: none;
    width: 94%;
    margin: 0 3%;
    text-align: left;
  }
}
@media screen and (max-width:480px) {
  #product-post .entry-header .btn-under-summary .btn-search, #product-post .entry-header .btn-under-summary .btn-shop {
    width: 93%;
  }
  #product-post .entry-header .btn-under-summary .btn-search {
    float: none;
    margin-left: 3%;
    margin-right: 3%;
  }
  #product-post .entry-header .btn-under-summary .btn-shop {
    float: none;
    margin-left: 3%;
    margin-right: 3%;
    font-size: 16px;
  }
}
#product-post .entry-content #moive {
  margin: 60px auto 40px auto;
}
#product-post .entry-content #moive .movie-area {
  text-align: center;
  margin: 0 auto 10px auto;
  max-width: 640px;
  position: relative;
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
}
#product-post .entry-content #moive .movie-area iframe {
  margin-bottom: 5px;
  max-width: 640px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#product-post .entry-content #moive p {
  text-align: center;
}
#product-post .entry-content #product-sub, #case-post .entry-content #case-sub {
  padding: 25px 3% 40px 3%;
  background: #FFF;
}
.entry-content h3 {
  margin: 0 0 20px 0;
  padding: 10px;
  color: #FFF;
  font-size: 18px;
  background: #6E5342;
}
.entry-content h4 {
  margin: 0 0 20px 0;
  padding: 10px 0;
  font-size: 18px;
  border-bottom: 1px solid #6E5342;
}
.entry-content h5 {
  clear: none;
  margin: 0;
  padding: 10px 0;
  font-size: 16px;
  color: #D83400;
}
.entry-content p {
  margin: 0 0 35px 0;
  padding: 0;
}
.entry-content ul li {
  position: relative;
  margin: 14px 0 0 0;
  padding: 0 0 0 23px;
  list-style: none;
  line-height: 135%;
}
.entry-content ul li::after {
  display: block;
  content: '';
  position: absolute;
  left: 5px;
  top: 0.35em;
  width: 12px;
  height: 12px;
  background-color: #6E5342;
  border-radius: 100%;
}
.entry-content ol {
  margin-left: 23px
}
.entry-content ol li {
  margin: 14px 0 0 0;
  padding: 0 0 0 5px;
  line-height: 135%;
}
.btn-area {
  margin-top: 40px;
  text-align: center;
}
.btn-area p {
  display: inline-block;
  padding: 0;
  font-size: 18px;
  background: #008040;
}
.btn-area p a {
  position: relative;
  display: inline-block;
  padding: 10px 30px 10px 50px;
  color: #FFF;
  text-decoration: none;
}
.btn-area p a:before, .btn-area p a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.btn-area p a:before {
  left: 10px;
  box-sizing: border-box;
  width: 10px;
  height: 10px;
  border: 10px solid transparent;
  border-right: 10px solid #FFF;
}
.btn-area p a:hover {
  background: #75A82F;
}
@media screen and (max-width:620px) {
  .btn-area p {
    font-size: 14px;
  }
  .btn-area p a:before {
    left: 7px;
    box-sizing: border-box;
    width: 7px;
    height: 7px;
    border: 7px solid transparent;
    border-right: 7px solid #FFF;
  }
}

table.schroll th {
  vertical-align: middle;
}
table.schroll td {
  vertical-align: middle;
}
@media screen and (max-width:899px) {
  table.schroll {
    width: 100%;
    display: block !important;
    overflow-x: scroll !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch !important;
  }
  table.schroll tr {
    display: table-row;
  }
  table.schroll th {
    display: table-cell !important;
  }
  table.schroll td {
    display: table-cell !important;
    border: 1px solid #DDD;
  }
}


/* ===================================================================
 EM活用事例
=================================================================== */
/* 一覧 */
#case-list {
  width: 101%;
  margin-bottom: 50px;
  padding-top: 10px;
}
#case-list article {
  position: relative;
	width: 46.75%;
  margin: 0 3% 40px 0;
  padding-bottom: 25px;
  background: #FFF;
}
#case-list article a {
  text-decoration: none;
}
#case-list article h2 {
  position: relative;
  margin: 0;
  padding: 15px;
  font-size: 20px;
  color: #FFF;
  text-align: center;
  background: #75A82F;
}
#case-list article h2:before {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 47%;
  bottom: -15px;
  border-top: 15px solid #75A82F;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
}
#case-list article img {
  float: left;
  margin: 0;
	padding:25px 0 0 6%;
  width: 34%;
}
#case-list article .summary {
  float: right;
  width: 66%;
	padding-left:6%;
}
#case-list article h3 {
  margin: 7px 4% 10px 0;
  padding: 20px 0 0 0;
  color: #008040;
  font-size: 17px;
  line-height: 135%;
}
#case-list article p em {
  font-size: 14px;
  color: #6E5342;
  font-style: normal;
}
#case-list article p {
  margin: 0 20px 0 0;
  font-size: 14px;
  color: #333;
}
#case-list article ul {
  margin: 20px 6% 0 0;
}
#case-list article ul li, #case-post .entry-header .outline ul li {
  display: inline-block;
  list-style: none;
  margin: 0;
  padding: 6px 15px;
  line-height: 110%;
  font-size: 14px;
  color: #FFF;
  background: #6E5342;
  border-radius: 30px;
}
#case-list article a ul li {
  color: #FFF;
}
@media screen and (max-width:768px) {
  #case-list article h3 {
    margin: 0 4% 5px 0;
    font-size: 16px;
  }
  #case-list article ul {
    margin-top: 5px;
  }
  #case-list article ul li {
    padding: 4px 10px;
    width: auto;
    font-size: 12px;
  }
}
@media screen and (max-width:620px) {
  #case-list article a h2 {
    font-size: 16px;
  }
  #case-list article a p {
    font-size: 14px;
  }
}
@media screen and (max-width:460px) {
  #case-list article {
    width: 98%;
    margin: 0 3% 30px 2%;
    padding-bottom: 15px;
    background: #FFF;
  }
  #case-list article a h2 {
    margin-bottom: 20px;
    padding: 12px 10px;
    font-size: 16px;
  }
  #case-list article img {
    margin: 0 0 0 4%;
    width: 28%;
  }
  #case-list article .summary {
    width: 64%;
  }
  #case-list article h3 {
    margin: 0 3% 5px 0;
    font-size: 14px;
  }
  #case-list article p em {
    font-size: 12px;
  }
}
/* 詳細 */
#case-post .entry-header {
  margin-bottom: 40px;
  padding: 15px 0;
}
#case-post .entry-header img {
  float: right;
  width: 165px;
  margin: 10px 3% 25px 0;
}
#case-post .entry-header .outline {
  float: left;
  width: calc(100% - 210px);
  margin-bottom: 20px;
}
#case-post .entry-header .outline h2 {
  margin: 0 0 20px 0;
  padding: 10px 0 20px 3%;
  border-bottom: 3px solid #6E5342;
}
#case-post .entry-header .outline h3 {
  float: left;
  margin: 0 0 20px 3%;
  padding: 0;
  font-size: 20px;
  color: #333;
  font-weight: normal;
}
#case-post .entry-header .outline ul {
  float: right;
  margin: -4px 0 10px 3%;
}
#case-post .entry-header .outline p {
  clear: both;
  float: right;
  margin-left: 3%;
  font-size: 14px;
}
#case-post .entry-header .outline p span {
  white-space: nowrap;
}
#case-post .entry-header .outline p strong {
  margin-right: 5px;
  font-size: 20px;
}
#case-post .entry-header .outline p em {
  margin-right: 20px;
  font-size: 16px;
  color: #6E5342;
  font-style: normal;
}
#case-post .entry-header .outline p br {
  display: none;
}
#case-post .entry-header .point {
  clear: both;
  position: relative;
  margin: 0 3% 10px 3%;
  padding: 0.75em 2% 0 2%;
  border-top: 1px solid #75A82F;
  border-bottom: 1px solid #75A82F;
  background: #DFEBCF;
}
#case-post .entry-header .point:after { /*タブ*/
  position: absolute;
  font-family: "Font Awesome 5 Free", 'Quicksand', 'Avenir', 'Arial', sans-serif;
  content: '\f0a7\ POINT';
  color: #fff;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 2px;
  padding: 5px 7px 3px;
  left: 0px;
  bottom: 100%;
  background: #75A82F;
  border-radius: 5px 5px 0 0;
}
#case-post .entry-header .point p {
  font-size: 15px;
}
#case-post .download h2 {
  margin: 30px auto 20px auto;
  text-align: center;
  color: #333;
  font-size: 18px;
}
#case-post .download ul {
  margin-bottom: 20px;
  padding: 5px 3% 20px 0;
  background: #FFF;
}
#case-post .download ul li {}
#case-post .download ul li::after {
  display: none;
}
#case-post .download ul li i {
  margin-right: 10px;
  font-size: 28px;
  color: #D83500;
}
#case-post .download ul li a {
  color: #333;
}
#case-post .download ul li a:hover {
  color: #D83500;
  text-decoration: none;
}
@media screen and (max-width:620px) {
  #case-post .entry-header img {
    width: 27%;
  }
  #case-post .entry-header .outline {
    width: calc(100% - 33%);
  }
  #case-post .entry-header .outline h2 {
    margin: 0 0 10px 0;
    padding: 0 0 10px 3%;
    font-size: 20px;
    border-bottom: 2px solid #6E5342;
  }
  #case-post .entry-header .outline h3 {
    float: left;
    margin: 0 0 20px 3%;
    padding: 0;
    font-size: 16px;
    color: #333;
    font-weight: normal;
  }
  #case-post .entry-header .outline ul {
    clear: both;
    float: left;
  }
  #case-post .entry-header .outline p {
    clear: none;
    margin-top: -5px;
    margin-left: 3%;
    font-size: 12px;
    text-align: right !important;
  }
  #case-post .entry-header .outline p strong {
    font-size: 18px;
  }
  #case-post .entry-header .outline p em {
    margin-right: 10px;
    font-size: 14px;
  }
  #case-post .entry-header .outline p br {
    display: block;
  }
  #case-post .entry-header .point p {
    font-size: 14px;
  }
}

/* ===================================================================
 コラム
=================================================================== */
/* 一覧 */
.post-type-archive-column h2.column-category {
  margin-bottom: 30px;
  padding-top: 16px;
  padding-bottom: 10px;
  font-size: 24px;
  border-bottom: 1px solid #6E5342;
}
#column-list {
  width: 100%;
  margin-bottom: 50px;
}
#column-list:after {
  content: " ";
  display: block;
  clear: both;
}
#column-list article {
  margin: 0 1.5% 30px 1.5%;
  padding: 10px 10px 40px 10px;
  position: relative;
  background: #FFF;
}
#column-list article a {
  text-decoration: none;
}
#column-list article .date {
  padding: 3px 13px 2px;
  position: absolute;
  top: 15px;
  left: 15px;
  z-index: 10;
  color: #FFF;
  font-size: 13px;
  border-radius: 20px;
  background: #6E5342;
}
#column-list article img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
  display: block;
}
#column-list article a h3 {
  margin: 12px 0 18px 0;
  padding: 5px;
  color: #6E5342;
  font-size: 17px;
  line-height: 135%;
}
#column-list article a p {
  position: absolute;
  bottom: 0;
  left: 15px;
  padding: 15px 20px 0 0;
  font-size: 15px;
  line-height: 1.35;
  color: #008040;
}
@media screen and (max-width:620px) {
  #column-list article {
    width: 47%;
  }
  #column-list article a h3 {
    margin: 10px 0;
  }
  #column-list article a p {
    font-size: 14px;
  }
}
@media screen and (max-width:460px) {
  #column-list article a h3 {
    padding: 4px;
    font-size: 16px;
  }
  #column-list article a p {
    font-size: 12px;
  }
  #column-list article img {
    aspect-ratio: 1;
  }
}



/* ===================================================================
 固定ページ共通
=================================================================== */
.catalog-list, .shop-list, .shop-detail, .company, .faq-list, .contact, .privacy, .siteinfo, .about-em {
  margin-bottom: 50px;
}
.catalog-list h2, .shop-list h2, .shop-detail h2, .company h2, .faq-list h2, .contact h2, .privacy h2, .siteinfo h2, .about-em h2 {
  margin-bottom: 20px;
  padding-top: 16px;
  padding-bottom: 10px;
  font-size: 24px;
  border-bottom: 1px solid #6E5342;
}
.catalog-list h2 i, #page h2 i {
  padding-right: 10px;
  font-size: 30px;
}
#page h2 span {
  margin-left: 5px;
  font-size: 18px;
}
#page #main ul.main_list {
  margin: 0 1em 20px 1em;
  list-style: none;
}
#page #main ul.main_list li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 15px;
}
#page #main ul.main_list li:before {
  position: absolute;
  top: -1px;
  left: 0;
  padding-right: 5px;
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #75A82F;
}
#page #main ul.main_list li:before {
  position: absolute;
  top: 0;
  left: 0;
  padding-right: 5px;
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  color: #75A82F;
}
#page #main ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
}
#page #main ol li {
  margin-bottom: 10px;
  padding-left: 30px;
  position: relative;
}
#page #main ol li:before {
  position: absolute;
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #75A82F;
  color: #F1EEE7;
  display: inline-block;
  float: left;
  line-height: 20px;
  margin: 0 0 0 -30px;
  text-align: center;
  height: 22px;
  width: 22px;
  font-weight: bold;
  border-radius: 50%;
}
#page #main ol li ol {
  margin-top: 15px;
}
#page #main ol li li {}
#page #main ol li li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #96B563;
  color: #F1EEE7;
  display: block;
  float: left;
  line-height: 20px;
  margin: 3px 0 0 -30px;
  text-align: center;
  height: 20px;
  width: 20px;
  font-weight: bold;
  border-radius: 50%;
}
#page #main ol li li h5 {
  font-size: 16px;
}
/* マニュアルダウンロード
------------------------------------- */
.catalog-list ul {
  margin-left: -1%;
  padding-right: 1%;
  padding-left: 0;
}
.catalog-list ul li {
  list-style: none;
  margin-left: 2%;
  padding-left: 0;
}
.catalog-list ul li .thumbnail {
  width: 100%;
  background: #FFF;
}
.catalog-list ul li img {
  margin: 10%;
  width: 80%;
  height: auto;
  border: 1px solid #DDD;
}
.catalog-list ul li a {
  text-decoration: none;
}
.catalog-list ul li h3 {
  margin: 3px 0 10px 0;
  padding: 0 0 7px 0;
  min-height: 3em;
  color: #008040;
  font-weight: normal;
  font-size: 15px;
  line-height: 120%;
  border-bottom: 1px solid #CCC;
}
.catalog-list ul li p {
  min-height: 2.5em;
  line-height: 120%;
  color: #444;
  font-size: 13px;
}
.catalog-list ul li span.pdf {
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 8px 0;
  line-height: 110%;
  text-align: center;
  color: #FFF;
  font-size: 14px;
  background: #75A82F;
  border-radius: 20px;
}
.catalog-list ul li span.pdf:hover {
  background: #008040;
}
.catalog-list ul li span.pdf strong {
  font-size: 18px;
}
.catalog-list ul li span.pdf strong:before {
  font-family: "Font Awesome 5 Free";
  content: '\f1c1';
  color: #FFF;
  font-size: 20px;
  font-weight: bold;
  padding-right: 5px;
}
@media screen and (max-width:768px) {
  .catalog-list ul li span.pdf {
    font-size: 13px;
  }
  .catalog-list ul li span.pdf strong {
    font-size: 16px;
  }
}
@media screen and (max-width:620px) {
  .catalog-list ul li h3 {
    font-size: 14px;
  }
  .catalog-list ul li p {
    font-size: 12px;
  }
  .catalog-list ul li span.pdf {
    font-size: 12px;
  }
  .catalog-list ul li span.pdf strong {
    font-size: 16px;
  }
  .catalog-list ul li span.pdf strong:before {
    font-size: 18px;
  }
}
@media screen and (max-width:340px) {}


/* 販売店検索
------------------------------------- */
/* 一覧 */
.shop-list .area {
  margin: 0 0 20px 0;
  padding: 20px 3% 20px 2.5%;
  background: #FFF;
}
.shop-list .area h3 {
  float: left;
  width: 25%;
  margin: 0;
  padding: 10px 3% 0 0;
  font-size: 18px;
  color: #444;
}
.shop-list .area h3 i {
  margin-right: 8px;
  color: #6E5342;
  font-size: 22px;
}
.shop-list .area ul {
  margin: 0 0 0 25%;
  padding-left: 8%;
  border-left: 1px dotted #999;
}
.shop-list .area ul li {
  display: inline-block;
  margin: 0 6% 0 0;
  padding: 10px 0;
  width: 26%;
  text-align: center;
}
.shop-list .area ul li a {
  display: block;
  padding: 5px;
  text-decoration: none;
  color: #FFF;
  background: #008040;
  border-radius: 20px;
}
.shop-list .area ul li a:hover {
  background: #75A82F;
}
@media screen and (max-width:768px) {
  .shop-list .area {
    padding: 20px 0 20px 3%;
    background: #FFF;
  }
  .shop-list .area h3 {
    float: none;
    width: auto;
    margin: 0;
    padding: 0 3% 10px 0;
    color: #666;
  }
  .shop-list .area ul {
    margin: 0;
    padding-left: 0;
    border: none;
  }
  .shop-list .area ul li {
    margin: 0 3.5% 0 0;
    padding: 8px 0;
    width: 21%;
    text-align: center;
    font-size: 15px;
  }
}
@media screen and (max-width:620px) {
  .shop-list .area ul li {
    margin: 0 2% 0 0;
    padding: 8px 0;
    width: 30%;
    font-size: 14px;
  }
}
@media screen and (max-width:340px) {
  .shop-list .area ul li {
    font-size: 13px;
  }
  .shop-list .area ul li a {
    padding: 7px 0;
    font-size: 13px;
  }
}

.shop-list .map iframe,
.shop-detail .map iframe { width:100%; bordeer:none;}

/* 販売店募集中バナー */
#shop-agency { margin-top:50px; width:100%; min-height:183px; line-height:120%;
 background:url(../images/shop-agency_bg.png) no-repeat; background-position:center 20px;}
#shop-agency:after { content:" "; display:block; clear:both;}
#shop-agency img { float:left; margin:0 5% 0 10px;}
#shop-agency p.text01 { font-size:20px; margin:0; padding:45px 0 10px 0; font-weight:bold; color:#E2DD45;}
#shop-agency p.text02 { font-size:32px; margin:0; padding:10px 0 10px 0; font-weight:bold; color:#FFF;}
#shop-agency p.text03 { font-size:16px; margin:10px 0 0 290px; padding:10px 10px 0 0; color:#FFF; border-top:1px solid #FFF;}
#shop-agency p.text03 strong { font-size:24px;}
#shop-agency p a { color:#FFF;}

@media screen and (max-width:1200px) {
  #shop-agency p.text01 { font-size:16px;}
  #shop-agency p.text02 { font-size:28px;}
  #shop-agency p.text03 { font-size:14px;}
  #shop-agency p.text03 strong { font-size:24px;}
}
@media screen and (max-width:960px) {
  #shop-agency { width:96%; margin-left:2%; margin-bottom:100px;}
}
@media screen and (max-width:768px) {
  #shop-agency { height:126px; min-height:126px;}
  #shop-agency img { width:160px; margin:0 3% 0 10px;}
  #shop-agency p.text01 { padding-top:30px; padding-bottom:0; font-size:14px;}
  #shop-agency p.text02 { padding-bottom:0; font-size:26px;}
  #shop-agency p.text03 { margin:10px 0 0 190px; padding:5px 10px 0 0; font-size:12px;}
  #shop-agency p.text03 strong { font-size:18px;}
}
@media screen and (max-width:620px) {
  #shop-agency { margin-top:100px; padding:0 2%; height:auto; min-height:auto; text-align:center;}
  #shop-agency img { float:none; width:130px; margin:-84px 0 0 0;}
  #shop-agency p.text01 { padding-top:15px;}
  #shop-agency p.text02 { padding-bottom:0;}
  #shop-agency p.text03 { margin:10px 0 0 0; padding:5px 0 15px 0;}
}
@media screen and (max-width:420px) {
  #shop-agency { margin-top:100px; padding:0 2%; height:auto; min-height:auto; text-align:center;}
  #shop-agency img { float:none; width:130px; margin:-84px 0 0 0;}
  #shop-agency p.text01 { padding-top:15px; font-size:14px;}
  #shop-agency p.text02 { padding-bottom:0; font-size:22px; line-height:120%;}
  #shop-agency p.text03 { margin:10px 0 0 0; padding:5px 0 15px 0; font-size:12px;}
  #shop-agency p.text03 strong { font-size:18px;}
}

/* 詳細（県別） */
.shop-detail ul {
  margin-left: -2%;
}
.shop-detail ul.pagelink { margin-left:0;}
.shop-detail li {
  width: 46%;
  margin: 10px 0 20px 3%;
  padding: 0 2% 18px 2%;
  list-style: none;
  background: #FFF;
}
.shop-detail h3 {
  margin-bottom: 8px;
  padding: 15px 0 12px 0;
  font-size: 18px;
  border-bottom: 1px dotted #999;
}
.shop-detail h3:after {
  content: " ";
  display: block;
  clear: both;
}
.shop-detail h3 a {
  display: block;
  color: #6E5342;
  font-weight: bold;
}
.shop-detail h3 a span {
  float: right;
  display: block;
  margin-left: 5px;
  padding: 3px 10px 5px 10px;
  color: #FFF;
  font-size: 14px;
  background: #008040;
}
.shop-detail h3 a:hover {
  color: #75A82F;
}
.shop-detail h3 a span:hover {
  background: #75A82F;
}
.shop-detail p {
  margin: 0;
}
.shop-detail p.tel a {
  color: #333;
  font-weight: bold;
  font-size: 18px;
  text-decoration: none;
}
.shop-detail p.tel:before {
  font-family: "Font Awesome 5 Free";
  content: '\f095';
  color: #008040;
  font-size: 22px;
  font-weight: bold;
  padding-right: 10px;
}
.shop-detail p.address:before {
  font-family: "Font Awesome 5 Free";
  content: '\f54e';
  color: #008040;
  font-size: 18px;
  font-weight: bold;
  padding-right: 6px;
}
@media screen and (max-width:620px) {
  .shop-detail li {
    width: 96%;
  }
}
@media screen and (max-width:460px) {
  .shop-detail p.tel:before {
    font-size: 20px;
  }
  .shop-detail p.address {
    font-size: 14px;
  }
  .shop-detail p.address:before {
    font-size: 16px;
  }
}
/* 企業情報
------------------------------------- */
.company {}
.company .box { margin-bottom:20px; overflow:hidden;}
.company ul.rinen li, .company ul.management li { font-weight:bold;}
.company ul.rinen li { font-size:22px; color:#008040; letter-spacing:0.05em; padding-left:50px;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
#page #main ul.rinen li:before {
  position: absolute;
  top: 0;
  left: -15px;
  font-family: "Font Awesome 5 Free";
  content: '\f111';
  font-weight: 900;
  color: #75A82F;
}

.company iframe { border:1px solid #CCC !important;}
.company .flame { margin-bottom:15px; padding:20px 20px 5px 20px; background:#FFF;}

@media screen and (max-width:640px) {
  .company table {
    display: block;
    width: 100% !important;
    margin: 0;
    border: none;
    border: 1px solid #CCC;
  }
  .company table tbody, .company table tr {
    display: block;
    width: 100% !important;
    margin: 0;
    border: none;
  }
  .company table th, .company table td {
    display: block;
    width: 100% !important;
    margin: 0;
    border: none;
    border-bottom: 1px solid #CCC;
  }
}


/* よくある質問
------------------------------------- */
.faq-list {}
.faq-list { width: 100%; max-width: 920px; margin: 0 auto; padding-bottom: 20px;}
.ac { margin-top:20px;	padding:15px 15px 0 15px; border:1px solid #ddd; background-color:#fff;
  -moz-box-sizing: border-box; box-sizing:border-box}

.faq-list h2 { border:none;}
.ac>.ac-q { margin:0; text-decoration:none; display:block; cursor:pointer; position:relative;
  padding: 5px 20px 20px 50px; font-size:18px;
	background: url(../images/faq_Q.png) no-repeat left 5px top 0px;}

.ac>.ac-q::after {
  content: '+';
  text-align: center;
	font-size:30px;
	font-weight:normal; color:#999;
  width: 15px; right:10px; top:30%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  position: absolute
}
.ac>.ac-a {
  overflow: hidden;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
}
.ac>.ac-a p {
  line-height: 1.5;
  padding: 15px 20px 20px 60px;
  overflow: hidden;
  transition: 0.2s;
  background: url(../images/faq_A.png) no-repeat left 5px top 10px;
  list-style: none;
  margin: 0;
	border-top:1px dotted #CCC;
  border-bottom: 1px solid #FFF;
}
.ac>.ac-a p img { padding:10px 10px 10px 0; max-width:100%;}
.ac.js-enabled>.ac-a { visibility:hidden}
.ac.is-active>.ac-a { visibility:visible}
.ac.is-active>.ac-q::after { content:'\2013'}


/* お問い合わせ
------------------------------------- */
.contact {}
.contact .box {
  margin: 0 0 20px 0;
  padding: 20px 20px 10px 20px;
  background: #FFF;
}
.contact .box p {
  margin: 0 0 10px 0;
}
.contact .box .request p:first-of-type {
  margin-bottom: 10px;
  font-size: 22px;
  color: #008040;
}
.contact .box span {
  font-size:22px;
}
.contact section {
  padding-top: 10px;
  border-top: 1px dotted #75A82F;
}
.contact section.tel {
  padding: 0;
  border: none;
}
.contact section.request {
  margin-bottom: 10px;
  border-bottom: 1px dotted #75A82F;
  padding-top: 0px;
  border-top: none;
}
.contact section i {
  font-size: 30px;
  margin-right: 10px;
}
.contact section.tel a, .contact section.fax {
  margin-bottom: 10px;
  font-size: 28px;
  color: #008040;
}
.contact section.tel p:first-child {
  margin-bottom: 5px;
}

/* リンク
------------------------------------- */
.links-list h3 { font-size:18px;}
.links-list li {
  list-style: none;
  margin-bottom: 15px;
  padding: 5px 0;
  border-bottom: 1px dotted #75A82F;
}
.links-list h3 {
  margin-bottom: 5px;
  padding: 0;
}
.links-list h3 i {
  margin-left: 10px;
  font-size: 18px;
  font-weight: bold;
	color:#008040;
}
/* サイトポリシー
------------------------------------- */
.siteinfo {}


/* EMとは
------------------------------------- */
.about-em {}
.about-em h3 {
  clear: none;
  margin: 0 0 10px 0;
  font-size: 18px;
}
.about-em h4 {
  margin-bottom: 5px;
  font-size: 18px;
  color: #008040 !important;
}
.about-em section {
  margin-bottom: 50px;
}
.about-em section:after {
  content: " ";
  display: block;
  clear: both;
}
.about-em section p {
  line-height: 175%;
}
.about-em section p span {
  font-size: 14px;
}

.about-em img.flL {
  float: left;
  margin: 0 20px 20px 0;
}
.about-em img.flR {
  float: right;
  margin: 0 0 20px 20px;
}
.about-em img.flC {
  display: block;
  margin: 10px auto;
}
.about-em img.flL:after, .about-em img.flR:after {
  display: block;
  clear: both;
  height: 0px;
  visibility: hidden;
  content: ".";
}
@media screen and (max-width:620px) {
  .about-em img.flL, .about-em img.flR {
    float: none;
    display: block;
    margin: 10px auto;
  }
}

.about-em section ul {
  margin: 0 0 10px 20px;
}
.about-em section ul.em_list {
  padding-left: 0 !important;
}
.about-em section ul.em_list li {
  list-style: none;
  width: 45%;
  padding: 0 1em 1em 0!important;
  display: inline-block;
  vertical-align: top;
}
.about-em img.flame {
  margin-bottom: 15px;
  padding: 1%;
  background: #FFF;
}

@media screen and (max-width:640px) {
  .about-em section ul {
  margin: 0 0 10px 20px;
}
  .about-em section ul.em_list li {
  list-style: none;
  width: 100%;
  padding-left: 0 !important;
  display: inline-block;
  vertical-align: top;
}
  .about-em img.flame {
  margin-bottom: 15px;
  padding: 1%;
  background: #FFF;
}
}

.about-em table {}
.about-em table th { min-width: inherit; text-align: center !important; vertical-align: middle;}
.about-em table td { vertical-align: middle;}
.about-em table td.tdS { width: 25px; text-align: center;}
.about-em table td span { -webkit-writing-mode: vertical-lr; -ms-writing-mode: tb-lr; writing-mode: vertical-lr;
  vertical-align: top; line-height: 100%;}
.about-em table th span { display: inline-block; margin-left: 10px; font-size: 12px;}

@media screen and (max-width:640px) {
  .about-em table { display: block; width: 100% !important; margin: 0; border: none; border: 1px solid #CCC;}
  .about-em table tbody, .about-em table tr {
    display: block; width: 100% !important; margin: 0; border: none;}
  .about-em table th, .about-em table td {
    display: block; width: 100% !important; margin: 0; border: none; border-bottom: 1px solid #CCC;}
  .about-em table {
    width: 100%; display: block !important; overflow-x: scroll !important; white-space: nowrap !important;
    -webkit-overflow-scrolling: touch !important;}
  .about-em table tr { display: table-row;}
  .about-em table th { display: table-cell !important;}
  .about-em table td { display: table-cell !important; border: 1px solid #DDD;}
}

.about-em .download ul {
  margin: 0 0 20px 0;
  padding: 5px 3% 20px 0 !important;
  background: #FFF;
}
.about-em .download ul li {
  position: relative;
  margin: 14px 0 0 0;
  padding: 0 0 0 23px !important;
  list-style: none;
  line-height: 135%;
}
.about-em .download ul li a {
  color: #333;
}
.about-em .download ul li a i {
  margin-right: 10px;
  font-size: 28px;
  color: #D83500;
}


/* EMの使い方
------------------------------------- */
.guide section { margin-bottom:50px;}
.guide h2 {
  margin-bottom: 30px !important;
  padding-bottom: 10px;
  border-bottom: 1px solid #6D5241;
}
.guide h3 {
  clear: none;
  margin: 5px 0 15px 0;
  padding: 0;
}
.guide h4 {
  margin-bottom: 15px;
  padding: 0;
}
.guide .box {
  clear: both;
  display: block;
  margin-bottom: 20px;
  overflow: hidden;
}
.guide .box.bgF {
  padding: 10px;
  background: #FFF;
}
.guide ul, .guide ol {
  margin-bottom: 30px !important;
}
.guide ul.guide_list {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.guide ul.guide_list li {
  position: relative;
  display: inline-block;
  width: 30%;
  margin: 0 3% 32px 0;
  padding: 10px 10px 12px;
  background: #FFF;
  vertical-align: top;
  filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.4));
}
.guide ul.guide_list li img {
  margin-bottom: 12px;
}
.guide ul.guide_list li a {
  display: block;
  font-size: 16px;
  text-decoration: none;
  line-height:140%;
}
.guide ul.guide_list li a span {
  font-size: 22px;
}
.guide ul.guide_list li a span.fontM {
  font-size: 20px;
}

@media screen and (max-width:620px) {
    .guide ul.guide_list li {
        width: 45%;
    margin: 0 2% 20px 2%;}
}
.guide ul.guide_link {
  margin: 0 auto;
  text-align: center;
}
.guide ul.guide_link li {
  display: inline-block;
  width: 30%;
  margin: 0 1.5% 20px 1.5%;
  vertical-align: top;
}
.guide ul.guide_link li .thumbnail {
  width: 100%;
  background: #FFF;
}
.guide ul.guide_link li img {
  margin: 10%;
  width: 80%;
  height: auto;
  border: 1px solid #DDD;
}
.guide ul.guide_link li p {
  font-size: 16px;
  color: #007F3F;
  font-weight: bold;
}
.guide ul.guide_link li span.pdf {
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 8px 0;
  line-height: 110%;
  text-align: center;
  color: #FFF;
  font-size: 14px;
  background: #75A82F;
  border-radius: 20px;
}
.guide ul.guide_link li span.pdf strong {
  font-size: 18px;
}
.guide ul.guide_link li span.pdf strong:before {
  font-family: "Font Awesome 5 Free";
  content: '\f1c1';
  color: #FFF;
  font-size: 20px;
  font-weight: bold;
  padding-right: 5px;
}
@media screen and (max-width:620px) {
  .guide ul.guide_link {
    text-align: left !important;
  }
  .guide ul.guide_link li {
    width: 45% !important;
  }
  .guide ul.guide_link li a {
    text-align: center;
  }
}
.guide ul.em_list, .guide ul.em_listS {
  padding-left: 0 !important;
}
.guide ul.em_list li {
  list-style: none;
  width: 45%;
  padding-left: 0 !important;
  display: inline-block;
  vertical-align: top;
}
.guide ul.em_listS li {
  list-style: none;
  width: 24%;
  padding-left: 0 !important;
  display: inline-block;
  vertical-align: top;
}
.guide ul.em_listS li img {
  display: block;
  margin: 5px auto;
}
@media screen and (max-width:1199px) {
  .guide ul.em_listS li {
    width: 45%;
  }
}
@media screen and (max-width:620px) {
  .guide ul.em_listS li {
    width: 100%;
  }
}
.guide ol h4, .guide ol h5 {
  display: inline-block;
  margin: 0 0 10px 0;
  padding: 0;
}
.guide ol.img_on li { display: flow-root;}

@media screen and (max-width:620px) {
  .guide ol.img_on li {
    display: flex;
    flex-direction: column;
  }
  .guide ol.img_on li img {
    order: 3;
  }
  .guide ol.img_on li h4 {
    order: 1;
  }
  .guide ol.img_on li h4:empty {
    display: none;
  }
  .guide ol.img_on li p {
    order: 2;
    display: block;
  }
  .guide ol.img_on li ol {
    order: 4;
    display: block;
  }
  .guide ol li ol h5 {
    margin-top: -18px;
  }
}
.guide img.flame {
  margin-bottom: 15px;
  padding: 1%;
  background: #FFF;
}
.guide img.flL {
  float: left;
  margin: 0 20px 20px 0;
}
.guide img.flR {
  float: right;
  margin: 0 0 20px 20px;
}
.guide img.flC {
  display: block;
  margin: 20px auto;
}
.guide img.flL:after, .guide img.flR:after {
  display: block;
  clear: both;
  height: 0px;
  visibility: hidden;
  content: ".";
}
@media screen and (max-width:1200px) {
  .guide .box.bgF img.flL { width:54%;}
	.guide .box.bgF img.flR { width:40%;}
}
@media screen and (max-width:620px) {
  .guide img.flL, .guide img.flR {
    float: none;
    display: block;
    margin: 10px auto;
  }
  .guide .box.bgF img.flL, .guide .box.bgF img.flR {
    width: 100%; max-width:360px;
  }
}
.guide table.guide3 {}
.guide table.guide3 th {
  min-width: inherit;
  text-align: center !important;
  vertical-align: middle;
}
.guide table.guide3 td {
  vertical-align: middle;
}
.guide table.guide3 td.tdS {
  width: 25px;
  text-align: center;
}
.guide table.guide3 td span {
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  vertical-align: top;
  line-height: 100%;
}
.guide table th span {
  display: inline-block;
  margin-left: 10px;
  font-size: 12px;
}
@media screen and (max-width:899px) {
  .guide table {
    display: block;
    width: 100% !important;
    margin: 0;
    border: none;
    border: 1px solid #CCC;
  }
  .guide table tbody, .guide table tr {
    display: block;
    width: 100% !important;
    margin: 0;
    border: none;
  }
  .guide table th, .guide table td {
    display: block;
    width: 100% !important;
    margin: 0;
    border: none;
    border-bottom: 1px solid #CCC;
  }
  .guide table.guide3 {
    width: 100%;
    display: block !important;
    overflow-x: scroll !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch !important;
  }
  .guide table.guide3 tr {
    display: table-row;
  }
  .guide table.guide3 th {
    display: table-cell !important;
  }
  .guide table.guide3 td {
    display: table-cell !important;
    border: 1px solid #DDD;
  }
}
.guide dl.guide4 {}
.guide dl.guide4 dt {
  float: none;
  display: block;
  width: 100%;
  padding-top: 20px;
  font-weight: bold;
}
.guide dl.guide4 dt:first-child {
  border: none;
}
.guide dl.guide4 dd {
  width: 100%;
  padding-top: 0;
  border: none;
  margin-left: 0;
  overflow: hidden;
}
@media screen and (max-width:620px) {
  .guide .box.guide5 { display:flex; flex-direction:column;}
  .guide .box.guide5 p { order:1;}
  .guide .box.guide5 img { order:2;}
}
.guide .point { clear:both; margin-bottom:20px; padding:20px; border:2px solid #75A82F;}
.guide .point:after { content:" "; display:block; clear:both;}
.guide .point h3 { margin:0 0 10px 0 !important; padding:0;}
.guide .point em { display: inline-block; width: 240px; font-style: normal; font-weight: bold; color: #008040;}
.guide .point p span { display: inline-block; width: 180px; margin-left: 20px;}
@media screen and (max-width:620px) {
  .guide .point em, .guide .point p span { display: block; width: 100%; margin: 0;}
}
.guide .point ol, .guide .point ol li:last-child { margin-bottom: 0 !important;}
.guide .download ul {
  margin: 0 0 20px 0;
  padding: 5px 3% 20px 0 !important;
  background: #FFF;
}
.guide .download ul li {
  position: relative;
  margin: 14px 0 0 0;
  padding: 0 0 0 23px !important;
  list-style: none;
  line-height: 135%;
}
.guide .download ul li a {
  color: #333;
}
.guide .download ul li a i {
  margin-right: 10px;
  font-size: 28px;
  color: #D83500;
}

.guide .btn-orange { width:99%; margin-bottom:23px; text-align:center; overflow:hidden; background:#FF8000;}
.guide .btn-orange img { float:left; margin:10px;}
.guide .btn-orange a { text-decoration:none;}
.guide .btn-orange p { color:#FFF; line-height:120%;}
.guide .btn-orange p.text01 { margin:25px 0 10px 0; padding:0 10% 0 0; font-size:32px; font-weight:bold;}
.guide .btn-orange p.text02 { margin:0 0 10px 0; padding:0 8% 0 0; font-size:18px;}
.guide .btn-orange p.text02 span { margin-left:15px; padding:3px 10px; background:#F00;}
.guide .btn-orange p br { display:none;}

@media screen and (max-width:960px) {
  .guide .btn-orange img { width:120px;}
  .guide .btn-orange p.text01 { margin:20px 0 10px 0; padding:0 10% 0 0; font-size:26px;}
  .guide .btn-orange p.text02 { margin:0 0 10px 0; padding:0 10% 0 0; font-size:16px;}
}
@media screen and (max-width:660px) {
  .guide .btn-orange img { width:28%;}
  .guide .btn-orange p.text01 { margin:20px 0 5px 0; padding:0 2% 0 0; font-size:20px;}
  .guide .btn-orange p.text02 { line-height:175%; font-size:14px;}
  .guide .btn-orange p br { display:block;}
}
@media screen and (max-width:460px) {
  .guide .btn-orange p.text01 { margin:12px 0 0 0; font-size:18px;}
}

.guide p.goods { margin:20px aouto; text-align:center;}
.guide p.goods img { width:20%; padding:1%;}
@media screen and (max-width:660px) {
  .guide p.goods img { width:30%;}
}
@media screen and (max-width:460px) {
  .guide p.goods img { width:46%; padding:2%;}
}
