/* カスタマイズ用CSS 
----------------------------------------------- */
div .ec-role a, 
div .ec-role a:hover, 
div .ec-cartRole__actions a, 
div .ec-cartRole__actions a:hover, 
div .ec-blockBtn--cancel a, 
div .ec-blockBtn--cancel a:hover, 
.ec-totalBox .ec-blockBtn--action, 
.ec-totalBox .ec-blockBtn--action:hover {
  color: #fff;
  text-decoration: none;
}
.ec-input input {
  margin-top: 5px;
}
.ec-productRole, .ec-role .ec-inlineBtn {
  color: #000;
  border-radius: 3px;
}
.ec-headerSearch .ec-headerSearch__category .ec-select select {
    height: 41px;
}
.ec-inlineBtn:hover {
  background-color: #e6e6e6;
  border-color: #adadad;
  text-decoration: none !important;
  color: #525263 !important;
}
/* ご注文手続きの丸アイコン*/
.ec-progress .ec-progress__item {
    position: unset;
}
/* クーポン設定のボタン*/
.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 14px;
  line-height: 1.5;
  border-radius: 3px;
  padding: 10px 16px;
  color: #525263;
  background-color: #F5F7F8;
  border-color: #ccc;
  margin-top: 10px;
}
.btn-sm:hover {
  text-decoration: none !important;
  color: #525263 !important;
}
/* クーポン設定のボタンここまで*/
.ec-historyListHeader .ec-historyListHeader__action a:hover, 
.ec-role .ec-inlineBtn:hover, 
.ec-addressRole__actions .ec-inlineBtn:hover, 
.ec-cardRole__actions .ec-inlineBtn:hover {
  text-decoration: none;
  color: #fff;
  background: #ccc
}
.ec-layoutRole__header, .ec-layoutRole .ec-layoutRole__contents {
  width: 1000px;
  margin: 0 auto;
}
.ec-footerRole {
  background: #57a826;
}
.ec-footerNavi .ec-footerNavi__link a:hover {
  color: #093e09;
  text-decoration: underline;
}
.ec-role {
  font-size: 15px;
}
/* login CSS*/
.ec-login {
  margin: 0 16px;
  padding: 30px 10% 30px;
}
div .ec-login__link a {
  color: #000;
  text-decoration: none;
}
div .ec-login__link a:hover {
  color: #57a826;
}
/* grid CSS*/
.ec-off4Grid .ec-off4Grid__cell {
  width: 45%;
  margin: 0 auto;
}
.ec-off4Grid .ec-off4Grid__cell a:link, .ec-off4Grid .ec-off4Grid__cell a:visited {
  color: #fff;
  text-decoration: none;
}
.ec-off3Grid .ec-off3Grid__cell {
  width: 60%;
  margin: 0 auto;
}
.ec-off4Grid .ec-off4Grid__cell .ec-checkbox label a:link, 
.ec-off4Grid .ec-off4Grid__cell .ec-checkbox label a:visited {
  color: #f00;
  text-decoration: underline;
}
/* mypage CSS*/
.ec-navlistRole .active a, .ec-navlistRole .active a:hover {
  color: #fff;
  background-color: #57a826;
}
/* order CSS*/
.ec-orderAccount .ec-orderAccount__account {
  margin-top: 15px;
}
.ec-imageGrid .ec-imageGrid__content {
  padding: 10px 0;
}
.ec-orderDelivery .ec-orderDelivery__change {
  top: 10px;
}
.ec-rectHeading h2 {
  margin: 15px 0 10px;
}
.ec-productRole .ec-productRole__category a,
.ec-topicpath {
  color: #002d5a;
}
/*カートのマージン*/
.ec-productRole .ec-productRole__btn{
margin-top: 10px;
}
.ec-productRole__btn .add-cart{
    font-size: 16px;
}

/*カートのアイコン
.ec-blockBtn--action:before{
  font-family: 'Font Awesome 5 Free';
  font-size: 1.8rem;
  line-height: 1;
  position: absolute;
  top: calc(87.4% - 1em);
  right: 37rem;
  margin: 0;
  padding: 0;
  content: '\f218';
  font-weight: 900;
}
.ec-productRole__btn #favorite:before {
    font-family: 'Font Awesome 5 Free';
    font-size: 1.5rem;
    line-height: 1;
    position: absolute;
    top: calc(96% - 1em);
    right: 37rem;
    margin: 0;
    padding: 0;
    content: '\f005';
    font-weight: 900;
}
.ec-productRole__btn #favorite{
line-height: 42px;
height: 40px;
}*/
/*検索窓*/
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search{
    background: #002d5a;
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before{
   top: 1em; 
}
/* PCのみ表示を消す */
.pc_none{
	display: none;
}
@media screen and (max-width: 767px) {
	.pc_none{
		display: unset;
	}
}

/* スマホのみ表示を消す */
@media screen and (max-width: 767px) {
	.sp_none{
		display: none !important;
	}
}
/*領収書レイアウト
--------------------------------------------- */
.btn-success {
  color: #fff !important;
  background-color: #57a826;
  text-decoration: none !important;
  width: 100%;
}
/*会員ランクレイアウト
--------------------------------------------- */
.ec-shelfGrid .ec-shelfGrid__item a:hover {
  text-decoration: none;
}
.ec-shelfGrid .ec-shelfGrid__item a:hover p {
  color: #57a826;
}
.ec-shelfGrid .ec-shelfGrid__item p {
  font-size: 0.9em;
}
.price02-default {
  margin: 5px 0 10px;
}
.customer_rank_price_default {
  margin-bottom: 5px;
}
/*基本
--------------------------------------------- */

html, body, div, span, applet, object, iframe, header, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
font-family: 'M PLUS 1', sans-serif;
}
html{
    scroll-behavior: smooth;
}
html, body {
  height: 100%;
}
header, nav, #item_page, #bloc { /* ページ幅指定*/
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
li {
  list-style-type: none;
}
img {
  max-width: 100%;
  height: auto;
}
p {
  color: #000;
}
/* 色
--------------------------------------------- */
.chemica_gr {
  color: #57a826;
}
.chemica_navy{
  color: #002d5a;
}
.red {
  color: #ff0000;
}
.chemica_nv {
  color: #002d5a;
}
.color666{
	color:#666 !important;
}
.color333{
	color:#333 !important;
}

/* 線
--------------------------------------------- */
.border_ccc {
  border: 1px solid #ccc;
}
.hr01 {
  border: 0.5px solid #ccc;
  width: 100%;
}
/* 見出し
--------------------------------------------- */
.h_01 {
  font-size: 1.2em;
  line-height: 150%;
  border-top: 4px solid #f7b400;
  border-bottom: 1px dotted !important;
  padding-left: 10px !important;
  margin: 30px 0 15px 0;
  padding-top: 10px;
  font-weight: bold;
}
@media screen and (min-width: 767px) {
  .h_01 {
    line-height: 230%;
    padding-top: 5px;
    font-weight: bold;
  }
}
.h_02 {
  background-color: rgba(220, 220, 220, 0.486);
  font-weight: bold;
  margin-bottom: 15px;
  font-size: 110%;
  border-left: 3px solid rgb(128, 128, 128);
  padding: 10px;
}
.h_03 {
  padding: 0.25em 0.5em;
  background: transparent;
  border-left: solid 4px #000;
  font-size: 103%;
  margin: 15px 0 8px;
  border-bottom: dashed 1px #000;
}
.h_04 {
  border-top: none;
  border-bottom: 1px solid #ccc;
  margin: 10px 16px 48px;
  padding: 8px;
  font-size: 32px;
  font-weight: bold;
  color: #525263;
}
/* 行間
--------------------------------------------- */
.line150{
  line-height: 150%!important;
  }
  .line180{
  line-height: 180%!important;
  }
/* font　文字
--------------------------------------------- */
.font70 {
  font-size: 70%
}
.font75 {
  font-size: 75%
}
.font80 {
  font-size: 80%
}
.font85 {
  font-size: 85%
}
.font90 {
  font-size: 90%
}
.font95 {
  font-size: 95%
}
.font110 {
  font-size: 110%
}
.font100 {
  font-size: 100%
}
.font120 {
  font-size: 120%!important
}
.font140 {
  font-size: 140%!important
}
.font150 {
  font-size: 150%!important
}
.font180 {
  font-size: 180%!important
}
.font250 {
  font-size: 250%!important
}
.font_p140s100 {
  font-size: 140%!important
}
@media screen and (max-width: 767px) {
.font_p140s100 {
  font-size: 100%!important;
  font-weight: bold;
}
}
.bold {
  font-weight: bold;
}
.bold_500 {
  font-weight: 500;
}
.bold_800 {
  font-weight: 800;
}
/* 文字装飾
--------------------------------------------- */
.under_gr{
font-weight: 500;
    background: linear-gradient(transparent 50%, #7ae9376e 50%);
    }
/* Margin
--------------------------------------------- */
.no-margin {
  margin: 0!important;
}
.mar-0auto {
    margin-left: auto!important;
    margin-right: auto!important;
}
.mar-auto0 {
  margin: auto 0;
}
.mt00 {
  margin-top: 0;
}
.mt05 {
  margin-top: 5px;
}
.mt10 {
  margin-top: 10px;
}
.mt12 {
  margin-top: 12px;
}
.mt15 {
  margin-top: 15px;
}
.mt20 {
  margin-top: 20px!important;
}
.mt25 {
  margin-top: 25px;
}
.mt30 {
  margin-top: 30px;
}
.mt35 {
  margin-top: 35px;
}
.mt40 {
  margin-top: 40px!important;
}
.mt45 {
  margin-top: 45px;
}
.mt50 {
  margin-top: 50px!important;
}
.mt60 {
  margin-top: 60px;
}
.mt80 {
  margin-top: 80px!important;
}
.mt100 {
  margin-top: 100px;
}
.mr00 {
  margin-right: 0;
}
.mr05 {
  margin-right: 5px;
}
.mr10 {
  margin-right: 10px;
}
.mr12 {
  margin-right: 12px;
}
.mr15 {
  margin-right: 15px;
}
.mr20 {
  margin-right: 20px;
}
.mr25 {
  margin-right: 25px;
}
.mr30 {
  margin-right: 30px;
}
.mr35 {
  margin-right: 35px;
}
.mr40 {
  margin-right: 40px;
}
.mr45 {
  margin-right: 45px;
}
.mr50 {
  margin-right: 50px;
}
.mb00 {
  margin-bottom: 0;
}
.mb05 {
  margin-bottom: 5px!important;
}
.mb10 {
  margin-bottom: 10px!important;
}
.mb12 {
  margin-bottom: 12px!important;
}
.mb15 {
  margin-bottom: 15px!important;
}
.mb20 {
  margin-bottom: 20px!important;
}
.mb25 {
  margin-bottom: 25px!important;
}
.mb30 {
  margin-bottom: 30px!important;
}
.mb35 {
  margin-bottom: 35px!important;
}
.mb40 {
  margin-bottom: 40px;
}
.mb45 {
  margin-bottom: 45px;
}
.mb50 {
  margin-bottom: 50px;
}
.mb60 {
  margin-bottom: 60px;
}
.mb70 {
  margin-bottom: 70px;
}
.mb100 {
  margin-bottom: 100px;
}
.ml00 {
  margin-left: 0;
}
.ml02 {
  margin-left: 2px;
}
.ml05 {
  margin-left: 5px;
}
.ml10 {
  margin-left: 10px!important;
}
.ml12 {
  margin-left: 12px;
}
.ml15 {
  margin-left: 15px;
}
.ml20 {
  margin-left: 20px;
}
.ml25 {
  margin-left: 25px!important;
}
.ml30 {
  margin-left: 30px;
}
.ml35 {
  margin-left: 35px;
}
.ml40 {
  margin-left: 40px;
}
.ml45 {
  margin-left: 45px;
}
.ml50 {
  margin-left: 50px;
}
.ml02p {
  margin-left: 2%;
}
.ml03p {
  margin-left: 3%;
}
.mlau {
  margin-left: auto;
}
.mt40p {
  margin-top: 40%;
}
.ma05 {
  margin: 5px;
}
.ma10 {
  margin: 10px;
}
.ma15 {
  margin: 15px;
}
.ma20 {
  margin: 20px;
}
/* Padding
--------------------------------------------- */
.no-padding {
  padding: 0;
}
.pt00 {
  padding-top: 0;
}
.pt05 {
  padding-top: 5px;
}
.pt10 {
  padding-top: 10px;
}
.pt12 {
  padding-top: 12px;
}
.pt15 {
  padding-top: 15px;
}
.pt20 {
  padding-top: 20px;
}
.pt25 {
  padding-top: 25px;
}
.pt30 {
  padding-top: 30px;
}
.pt35 {
  padding-top: 35px;
}
.pt40 {
  padding-top: 40px;
}
.pt45 {
  padding-top: 45px;
}
.pt50 {
  padding-top: 50px;
}
.pt03p {
  padding-top: 3%;
}
.pr00 {
  padding-right: 0;
}
.pr05 {
  padding-right: 5px;
}
.pr10 {
  padding-right: 10px;
}
.pr12 {
  padding-right: 12px;
}
.pr15 {
  padding-right: 15px;
}
.pr20 {
  padding-right: 20px;
}
.pr25 {
  padding-right: 25px;
}
.pr30 {
  padding-right: 30px;
}
.pr35 {
  padding-right: 35px;
}
.pr40 {
  padding-right: 40px;
}
.pr45 {
  padding-right: 45px;
}
.pr50 {
  padding-right: 50px;
}
.pb00 {
  padding-bottom: 0;
}
.pb05 {
  padding-bottom: 5px;
}
.pb10 {
  padding-bottom: 10px;
}
.pb12 {
  padding-bottom: 12px;
}
.pb15 {
  padding-bottom: 15px;
}
.pb20 {
  padding-bottom: 20px;
}
.pb25 {
  padding-bottom: 25px;
}
.pb30 {
  padding-bottom: 30px;
}
.pb35 {
  padding-bottom: 35px;
}
.pb40 {
  padding-bottom: 40px;
}
.pb45 {
  padding-bottom: 45px;
}
.pb50 {
  padding-bottom: 50px;
}
.pl00 {
  padding-left: 0;
}
.pl05 {
  padding-left: 5px;
}
.pl10 {
  padding-left: 10px;
}
.pl12 {
  padding-left: 12px;
}
.pl15 {
  padding-left: 15px;
}
.pl20 {
  padding-left: 20px;
}
.pl25 {
  padding-left: 25px;
}
.pl30 {
  padding-left: 30px;
}
.pl35 {
  padding-left: 35px;
}
.pl40 {
  padding-left: 40px;
}
.pl45 {
  padding-left: 45px;
}
.pl50 {
  padding-left: 50px;
}
.pl03p {
  padding-left: 3%;
}
.plr03p {
  padding-left: 3%;
  padding-right: 3%;
}
.plr20p {
  padding-left: 20%;
  padding-right: 20%;
}
.pa03 {
  padding: 3px;
}
.pa05 {
  padding: 5px;
}
.pa10 {
  padding: 10px;
}
.pa15 {
  padding: 15px;
}
.pa20 {
  padding: 20px;
}
.pc_mt40 {
  margin-top: 80px!important;
}
@media screen and (max-width: 767px) {
.pc_mt40 {
  margin-top: 10px;
  }
}
/* color　色
--------------------------------------------- */
.b_gray01 {
  background-color: #eee;
}
.b_gray02 {
  background-color: #f8f8f8;
}
.b_green {
  background-color: #57a826;
}
.green {
  color: #57a826;
}
/* レイアウト
--------------------------------------------- */
.center {
  text-align: center;
}
.right {
  text-align: right;
}
.w800 {
  width: 800px;
}
.w1000 {
  width: 1000px;
}
.w10{
  width: 10%;
}
.w16{
  width: 16%;
}
.w20{
  width: 20%;
}
.w80{
  width: 80%;
}
@media screen and (max-width: 767px) {
  .w800,.w1000 {
    width: 100%;
  }
}
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
/* PCのみ表示を消す */
.pc_none {
  display: none;
}
@media screen and (max-width: 767px) {
  .pc_none {
    display: unset;
  }
}
/* 箇条書き、注意事項
----------------------------------------------- */
.bullet_1 { 
margin-left: 1em; text-indent: -1em;
}
.bullet_1:before {
 content:"・";
}
.bullet_f_15 { 
margin-left: 1.5em; text-indent: -1.5em;
}
.caution_1 { 
margin-left: 1em; text-indent: -1em;
}
.caution_1:before {
 content:"※";
}
.color_chip_ca .caution_1 { 
margin-left: 90px;
}
@media screen and (max-width: 767px) {
 .color_chip_ca .caution_1 { 
margin-left: 10px;
font-size: 90%
}   
}

/* リンク指定
----------------------------------------------- */
a:link, a:visited {
  color: #000;
  text-decoration: none;
}
a:link:hover, a[href]:hover {
  color: #57a826;
  text-decoration: underline;
}
a:hover img {
  opacity: 0.7;
}
/* デフォルトテーブル
----------------------------------------------- */
table {
  margin: 15px auto 5px auto;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  width: 100%;
  border-collapse: collapse;
  text-align: center;
}
table th {
  padding: 8px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  color: #000;
  background-color: #f0f0f0;
  font-weight: normal;
  text-align: center;
}
table td {
  padding: 8px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
table .w30 {
  width: 30%;
}
table .w50 {
  width: 50%;
}
/* 商品ページ　スペックテーブル
----------------------------------------------- */
.details .time thead > tr > th {
  background: #57a826;
  color: #fff;
  border: 1px solid #57a826;
  padding: 3px;
  font-weight: bold;
}
.details .time thead > tr > td {
  background: #fff;
  color: #fff;
  border-left: 1px solid #fff;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #57a826;
  border-right: 1px solid #57a826;
}
.details .time thead .left_boder {
  border-left: 2px solid #fff;
}
.details .time tbody > tr {
  border-top: 1px solid #57a826;
  border-left: 1px solid #57a826;
}
.details .time tbody > tr > th {
  background: #57a82673;
  border-right: 1px solid #57a826;
  border-bottom: 1px solid #57a826;
  font-weight: bold;
}
.details .time tbody > tr > td {
  border-right: 1px solid #57a826;
  border-bottom: 1px solid #57a826;
}
.details .conditions {
  border-top: 1px solid #57a826;
  border-left: 1px solid #57a826;
}
.details .conditions th {
  border-right: 1px solid #57a826;
  border-bottom: 1px solid #57a826;
  background: #57a826;
  padding: 0;
  color: #fff;
  font-weight: bold;
}
.details .conditions td {
  border-right: 1px solid #57a826;
  border-bottom: 1px solid #57a826;
}
.details .eco {
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
}
.details .eco th {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  background-color: #fff;
  padding: 0;
  width: 40%;
}
.details .eco td {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  width: 60%;
}
.details .eco p.class{
color: #fff;
    background: #333;
    padding: 3px;
    font-size: 70%;
    margin-top: 5px;
     font-weight: bold;
}
.details .eco td.class2{
    font-size: 70%;
    font-weight: normal;
}
.details .box50 .eco th {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  background-color: #fff;
  padding: 0;
  width: 30%;
}
.details .box50 .eco td {
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  width: 70%;
}
.details .box50 .eco td.class2{
    font-size: 80%;
    font-weight: normal;
    text-align:left;
    line-height:150%;
    padding-left:15px;

}
/* カラム
----------------------------------------------- */
.column_two01 { /* 2カラム50%:50%*/
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}
.column_two01 .box {
  width: 47%;
}
.column_two01 .box100,
.column_two .box100{
  width: 100%;
}
.column_two02 { /* 2カラム40%:60%*/
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

ul.two_columns_list02 li:nth-child(odd){
width: 34%;
padding-right: 2%;
}
ul.two_columns_list02 li:nth-child(even){
width: 64%;
}

.column_two02 .box01,
.column_two02 li:nth-child(odd){
  width: 38%;
}
.column_two02 .box02,
 .column_two02 li:nth-child(even){
  width: 57%;
}
@media screen and (max-width: 767px) {
  .column_two02 .box02 {
    width: 57%;
    padding-right: 2%;
  }
}
/* 2カラムリスト (SP1カラム) */
.two_columns_list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.two_columns_list > li, .two_columns_list > div, .two_columns_list > .list_content {
  width: 48.5%;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .two_columns_list > li, .two_columns_list > div, .two_columns_list > .list_content {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .two_columns_list > li:nth-child(odd), .two_columns_list > div:nth-child(odd), .two_columns_list > .list_content:nth-child(odd) {
    padding-right: 1.5%;
  }
  .two_columns_list > li:nth-child(even), .two_columns_list > div:nth-child(even), .two_columns_list > .list_content:nth-child(even) {
    padding-left: 1.5%;
  }
}
.two_columns_list.list_links a {
  border: 1px solid #999;
  padding: 10px 5px;
  display: block;
}
/* 3カラムリスト（SP2カラム） */
.three_columns_list {
  display: flex;
  flex-wrap: wrap;
}
.three_columns_list > li, .three_columns_list > .list_content {
  box-sizing: border-box;
  margin-top: 2%;
  margin-bottom: 30px;
}
.three_columns_list > li img, .three_columns_list > .list_content img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .three_columns_list > li, .three_columns_list > .list_content {
    width: 50%;
  }
  .three_columns_list > li:nth-child(odd), .three_columns_list > .list_content:nth-child(odd) {
    padding-right: 1%;
  }
  .three_columns_list > li:nth-child(even), .three_columns_list > .list_content:nth-child(even) {
    padding-left: 1%;
  }
}
@media screen and (min-width: 768px) {
  .three_columns_list > li, .three_columns_list > .list_content {
    width: 32%;
  }
  .three_columns_list > li:nth-child(3n+2), .three_columns_list > .list_content:nth-child(3n+2) {
    margin-left: 2%;
    margin-right: 2%;
  }
}
@media screen and (max-width: 767px) {
	.three_columns-w64{
		width: 100% !important;
	}
}
@media screen and (min-width: 768px) {
	.three_columns-w64{
		width: 64% !important;
	}
}
/* 3カラムリスト (SP1カラム) */
.three_one_columns_list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.three_one_columns_list > li, .three_one_columns_list > div, .three_one_columns_list > .list_content {
  width: 31%;
  margin-bottom: 40px;
}
.three_one_columns_list > li:nth-child(3n+2), .three_one_columns_list > .list_content:nth-child(3n+2) {
  margin-left: 2%;
  margin-right: 2%;
}
.three_one_columns_list > li:nth-child(odd), .three_one_columns_list > div:nth-child(odd), 
.three_one_columns_list > .list_content:nth-child(odd), .three_one_columns_list > li:nth-child(even), 
.three_one_columns_list > div:nth-child(even), .three_one_columns_list > .list_content:nth-child(even) {
  padding-left: 0;
  padding-right: 0;
}
@media screen and (max-width: 767px) {
  .three_one_columns_list > li, .three_one_columns_list > div, .three_one_columns_list > .list_content {
    width: 100%;
  }
.three_one_columns_list > li:nth-child(3n+2), 
.three_one_columns_list > .list_content:nth-child(3n+2) {
  margin-left: 0;
  margin-right: 0;
}
}
.three_one_columns_list.list_links a {
  border: 1px solid #999;
  padding: 10px 5px;
  display: block;
}
/*  ----------2つに分ける（均等）----------  */
ul.col2 {
  display: flex;
  -webkit-flex-wrap: wrap; /* Safari etc. */
  -ms-flex-wrap: wrap; /* IE10        */
  flex-wrap: wrap;
}
.col2 .list {
  width: 48%;
  padding: 1%;
}
/*  ----------3つに分ける（均等）----------  */
ul.col3 {
  display: flex;
  -webkit-flex-wrap: wrap; /* Safari etc. */
  -ms-flex-wrap: wrap; /* IE10        */
  flex-wrap: wrap;
}
ul.col3 li {
  width: 33%;
  padding: 1%;
}
/*  ---------- 2カラムリスト (SP1カラム)左側が大きいとき）----------  */
.col2_resp6434 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
ul.col2_resp6434 li:nth-child(odd){
width: 64%;
}
ul.col2_resp6434 li:nth-child(even){
width: 34%;
padding-left: 2%;
}

@media screen and (max-width: 767px) {
  .col2_resp6434 > li, 
  .col2_resp6434 > div,
  ul.col2_resp6434 li:nth-child(even),
  ul.col2_resp6434 li:nth-child(odd){
    width: 100%;
  }
ul.col2_resp6434 li:nth-child(odd){
padding: 15px 0 10px 0;
  }
ul.col2_resp6434 li:nth-child(even){
         margin: 0 10% 15px 10%;
}
}
/*  ----------左右に分ける（右６０％）----------  */

ul.col2_resp3763 {
  display: flex;
  -webkit-flex-wrap: wrap; 
  -ms-flex-wrap: wrap; 
  flex-wrap: wrap;
}
ul.col2_resp3763 li:nth-child(odd) {
  width: 37%;
  padding-right: 2%;
}
ul.col2_resp3763 li:nth-child(even) {
  width: 63%;
}
@media screen and (max-width: 767px) {
  .col2_resp3763 > li, 
  .col2_resp3763 > div,
  ul.col2_resp3763 li:nth-child(even),
  ul.col2_resp3763 li:nth-child(odd){
    width: 100%;
  }
ul.col2_resp3763 li:nth-child(odd){
      margin:0 20% 15px 20%;
  }
ul.col2_resp3763 li:nth-child(even){
    padding-left: 0;
    padding-right: 0;
}
}




/* ヘッダー
----------------------------------------------- */
header {
  padding-top: 30px;
  padding-bottom: 30px;
}
header .head {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin: 0 auto 20px;
}
header .logo {
  flex-basis: 250px;
  text-align: center;
  padding: 0 3%;
}
header .search {
  flex-basis: 40%;
  align-self: flex-end;
  text-align: right;
}
/* トップページ
----------------------------------------------- */
.top_bgmenu{
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: calc(((100vw - 100%) / 2) * -1);
    background: #57a826;
}

#bloc02 { /*トップページのブロック要素*/
  width: 100%;
  margin: 150px auto 0;
}
.top_bggreen{
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: calc(((100vw - 100%) / 2) * -1);
    background: #57a82642;
    padding-top: 20px;
}
.top_bggreen .sp_back{
    background: #57a82647;
    padding: 20px 3%;
    margin-top: 50px;
}
.top_itemlist{
    padding: 20px;
    width: 1000px;
}
.itemlist_title{
    color: #002d5a;
    font-weight: 800;
    font-size: 19pt;
    border-bottom: solid 3px;
    line-height: 150%;
    padding-bottom: 8px;
    margin: 0 auto;
    text-align: center;
    }
    @media screen and (max-width: 767px) {
    .top_itemlist{
     padding: 1%;
    width: 100%;   
    }
    .itemlist_title{
         font-size: 11pt;
             padding-bottom: 5px;
    }
}
.top_list,
.top_list02{ /* トップページ商品一覧*/
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.top_list .box {
  width: 18%;
  margin: 0 1% 20px;
}
.top_list02 .box {
width: 27.2%;
    margin: 0 3% 55px;
    background: #fff;
    display: flex;
    flex-direction: column;
}
.top_list02 .box p{
    text-align: left;
    font-size: 90%;
    padding: 0 2%;
    font-weight: 500;
    }
     .top_list02 .box a img{
  border: solid 2px #ddd;
    border-radius: 15px;
    padding: 2%;
    }
 .top_list02 .box .item_img{
position: relative;
    } 
     .top_list02 .box .item_name,
     #content .item_name{
font-size: 120%;
font-weight: 700;
color: #002d5a;
margin-bottom: 5px;
margin-top: 10px;
    } 
    .top_list02 .box .item_img .eco_icon{
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: absolute;
    top: 3%;
    left: 3%;
    }  
.top_itemlist a.btn--orange,
#bloc05 a.btn--orange{
  color: #ffffff;
  width: 50%;
  text-decoration:none;
}
.top_itemlist a.btn--orange{
     background-color: #57a826; 
}
#bloc05 a.btn--orange{
     background-color: #002d5a; 
}
#bloc05 a.btn--orange:hover{
background: #57a826;
}
.top_itemlist a.btn--orange:hover{
       background-color: #002d5a;
}
.top_itemlist a.btn-c,
#bloc05 a.btn-c{
  font-size: 1.8rem;
  position: relative;
  padding: 1.5rem 2rem 1.5rem 2rem;
  border-radius: 100vh;
    font-size:1em;
}
.top_itemlist a.btn-c i.fa,
#bloc05 a.btn-c i.fa{
  margin-right: 1rem;
}
.top_itemlist a.btn-c:before,
#bloc05 a.btn-c:before{
  font-family: 'Font Awesome 5 Free';
  font-size: 1.6rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: '\f061';
  font-weight: 900;
}

.link_btn01 a.btn01{
  position: relative;
  padding: 1.5rem 2rem 1.5rem 2rem;
  border-radius: 100vh;
  font-size:1em;
  color: #ffffff;
  text-decoration:none;
  background-color: #002d5a;
  display: block;
  text-align: center;
}
.link_btn01 a.btn01 i.fa{
  margin-right: 1rem;
}
 .link_btn01 a.btn01:before{
  font-family: 'Font Awesome 5 Free';
  font-size: 1.6rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: '\f061';
  font-weight: 900;
}   
 .link_btn01 a.btn01:hover{
background: #57a826;
}
    
.column_two02 .box02 .what_chemica_logo {
  padding-left: 20%;
  padding-right: 20%;
  margin: 20px 0;
}
.column_two02 .box02 .what_chemica,
.what_chemica{
  font-size: 180%;
  font-weight: bold;
  margin-bottom: 10px;
}
.column_two02 .box02 .what_chemica_txt {
  font-size: 100%;
  text-align: left;
}
#bloc02 .column_two02 .box02 .what_chemica_link a{
text-align: right;
    text-decoration: underline;
        margin: 0 auto;
    width: 100%;
    display: block;
    border: none;
}
.top_bggreen .bg_lightgreen{
    background: #f0f9ea;
    padding: 15px 20px 20px;
    border-radius: 25px;
}

@media screen and (max-width: 767px) {
 .top_itemlist a.btn--orange,
#bloc05 a.btn--orange{
  width: 90%;
}
    .top_list02 .box p{
    font-size: 85%;
    }
         .top_list02 .box .item_name{
font-size: 95%;
}
.what_chemica{
  font-size: 130%;
}
  .top_list,
    .top_list02{ /* トップページ商品一覧*/
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 10px 1% 30px;
  }
  .top_list .box,
  .top_list02 .box {
    width: 48%;
    margin: 0 .5% 20px;
  }
   .top_list02 .box:nth-child(even) {
    margin-left: 2%;
}
  .column_two02 .box02 .what_chemica_logo {
    padding-left: 20%;
    padding-right: 20%;
    margin: 10px;
  }
   .what_chemica_logo {
        max-width: 50%;
    margin: 0 auto 15px !important;
        padding-left: 0;
    padding-right: 0;
    margin: 0;
  }
  .column_two02 .box02 .what_chemica {
    font-size: 110%;
  }
  .column_two02 .box02 .what_chemica_txt {
    font-size: .6em;
  }
}
/*エコテックス 日本公式サイトへのリンク*/

#bloc02 a.btn--orange{
  color: #002d5a;
  background-color: #fff;
  width:60%;
  text-decoration:none;
  border: solid 1px #002d5a;
}

#bloc02 a.btn--orange:hover{
  color: #fff;
  background: #002d5a;
}

#bloc02 a.btn-c{
  font-size: 1.8rem;
  position: relative;
  padding: 1.5rem 2rem 1.5rem 2rem;
  border-radius: 100vh;
    font-size:1em;
}

#bloc02 a.btn-c i.fa{
  margin-right: 1rem;
}

#bloc02 a.btn-c:before{
  font-family: 'Font Awesome 5 Free';
  font-size: 1.6rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: '\f061';
  font-weight: 900;
}
/* 新
----------------------------------------------- */
  #bloc05 {
    margin-top: 40px;
  }
#bloc05 .text_image { 
  position: relative; 
  text-align: center;
}
#bloc05 .text_image .txt01 {
  position: absolute;
  font-weight: bold;
  font-size: 2em;
  top: 50px;
  left: 162px;
  text-align: center;
  color: #525263;
  }
#bloc05 .text_image .txt02 {
  position: absolute;
  font-size: 17px;
  top: 255px;
  left: 53px;
  text-align: center;
  line-height: 175%;
}
#bloc05 .text-image img {
  width: 800px;
}
@media screen and (max-width: 767px) {
  #bloc05 {
    margin: 20px 0;
    padding: 0 3%;
  }
  #bloc05 .text_image .txt01 {
    font-size: 1.2em;
    top: 6%;
    left: 12%;
    text-align: center;
  }
    #bloc05 .text_image .txt01_sp {
    position: absolute;
    font-weight: bold;
    font-size: 1.3em;
    top: 15%;
    left: 12%;
    text-align: center;
}
  #bloc05 .text_image .txt02{
    font-size: .6em;
    top: 68%;
    left: -2%;
    width: 55%;
  }
  
}


/* シート商品ページ-お知らせ、店舗情報
----------------------------------------------- */
#item_page_info {
  padding: 1em;
  margin: 2em 0;
  font-weight: bold;
  border: solid 3px #FF0000;
  line-height: 170%;
}
.guide {
  line-height: 180%;
  color: #000;
}
/* シート商品ページ
----------------------------------------------- */
#item_page { /* シート商品ページ*/
  margin-top: 30px auto 0;
}
/*↓ シートカラーチップ↓*/
.color_chip {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 80px auto 10px;
  width: 90%;
}
.color_chip .color {
  flex-basis: 14.5%;
  margin: 0 1%;
  text-align: center;
  line-height: 120%;
  list-style-type: none;
  font-size: 90%;
  margin-bottom: 30px;
}
.color_chip .color img {
  padding: 0 20px 5px;
}
.color_chip .name {
  flex-basis: 100%;
  width: 100%;
  margin: 0 0 30px 3%;
  font-weight: bold;
  font-size: 130%;
}
.color_chip .size_5m{
position: relative;
}
.color_chip .size_5m:after {
    content: '★';
    position: absolute;
    left: 81px;
    top: 74px;
    color: #666;
}
.tooltip5 { /* マウスオーバーで吹き出し*/
  position: relative;
  cursor: pointer;
  display: inline-block;
}
.description5 {
  display: none;
  position: absolute;
  padding: 10px;
  font-size: 12px;
  line-height: 1.6em;
  color: #fff;
  border-radius: 5px;
  background: #002d5a;
  width: 160px;
}
.description5:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  border: 15px solid transparent;
  border-top: 15px solid #002d5a;
  margin-left: -15px;
}
.tooltip5:hover .description5 {
  display: inline-block;
  top: -60px;
  left: -25px;
}
/* ↑シートカラーチップ↑*/
.sheet_name { /* シート詳細タイトル*/
text-align: center;
    font-weight: bold;
    padding: 5px 5px 15px;
    border-top: solid 1px #808080;
    border-bottom: solid 1px #808080;
    font-size: 180%;
    line-height: 125%;
        margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .sheet_name {
   font-size: 110%;
    padding: 5px 5px 8px;
  }
  .color_chip .size_5m:after {
    left: 52px;
    top: 45px;
}
}
.details { /* シート詳細*/
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-top: 30px;
}
.details .table { /* シート詳細左側*/
  width: 45%;
  margin-right: 6%;
  font-weight: bold;
  font-size: 90%;
}

.details .table table {
  margin: 0 auto 20px auto;
}

.column_two { /* シート詳細左側の2列に並べる所*/
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}
.column_two .box {
  width: 47%;
}
.details .txt { /* シート詳細右側*/
  width: 49%;
  line-height: 150%;
}
.details .txt .standards,
.details .standards{
padding: 1em 1.5em;
    background-color: #57a82640;
    border-radius: 50px;
}

@media screen and (max-width: 767px) {
    .details {
            margin-top: 3px;
    }
  .details .table table {
    font-size: 90%;
  }
  .details .table {
    width: 100%;
    margin-right: 0;
  }
  .details .time thead > tr > th {
    padding: 5px 15px;
  }
  .column_two {
    font-size: 80%;
  }
  .column_two .box {
    width: 48%;
  }
  .details .txt {
    width: 100%;
  }
}
.details div.box50 { /* シート詳細左側*/
  width: 49%;
  /* margin-right: 6%; */
  font-weight: bold;
  font-size: 90%;
}
.details div.box50:nth-child(odd){
  margin-right: 2%;
  }

#bloc02 .text_image { /* 安心安全なアイロンシート*/
  position: relative; /*相対配置*/
  text-align: center;
}
#bloc02 .text_image .txt01 {
  position: absolute;
  font-weight: bold;
  font-size: 2em;
  top: 31px;
  left: 200px;
  text-align: center;
}
#bloc02 .text_image .txt02 {
  position: absolute;
  font-size: 16px;
  top: 220px;
  left: 105px;
  text-align: center;
}
#bloc02 .text-image img {
  width: 800px;
}
#bloc02 a {
  margin: 0 auto;
  width: 80%;
  text-align: center;
  display: block;
  padding: 10px;
  border: solid 1px #1d2129;
}
@media screen and (max-width: 767px) {
  #bloc02 {
    margin: 20px 0;
    padding: 0 3%;
  }
  #bloc02 .text_image .txt01 {
    font-size: 1.2em;
    top: 6%;
    left: 12%;
    text-align: center;
  }
  #bloc02 .text_image .txt02 {
    font-size: .6em;
    top: 68%;
    left: -2%;
    width: 55%;
  }
}
#bloc03 {
  max-width: 960px;
  width: 100%;
  margin: 100px auto 50px;
}
#bloc03 .text_image { /* 安心安全なアイロンシート*/
  position: relative; /*相対配置*/
  text-align: center;
}
#bloc03 .text_image .txt01 {
  position: absolute;
  font-weight: bold;
  font-size: 2em;
  top: 35px;
  left: 133px;
  text-align: center;
}
#bloc03 .text_image .txt02 {
  position: absolute;
  font-size: 16px;
  top: 258px;
  left: 50px;
  text-align: center;
}
#bloc03 .text-image img {
  width: 800px;
}
#bloc03 a {
  margin: 0 auto;
  width: 80%;
  text-align: center;
  display: block;
  padding: 10px;
  border: solid 1px #1d2129;
}
@media screen and (max-width: 767px) {
  #bloc03 {
    margin: 20px 0;
    padding: 0 3%;
  }
  #bloc03 .text_image .txt01 {
    font-size: .8em;
    top: 10%;
    left: 12%;
    text-align: center;
  }
  #bloc03 .text_image .txt02 {
    font-size: .5em;
    top: 68%;
    left: -2%;
    width: 55%;
  }
}
/* 商品ページ内「エコテックスとは？」*/
#bloc04 {
  max-width: 1000px;
  width: 100%;
  margin: 50px auto;
}
#bloc04 .text_image {
  position: relative;
  text-align: center;
}
#bloc04 .text_image .txt01 {
position: absolute;
    font-weight: bold;
    font-size: 1.5em;
    top: 18px;
    left: 75px;
    text-align: center;
    color: #525263;
}
#bloc04 .text_image .txt02 {
  position: absolute;
  font-size: 17px;
  top: 20px;
  left: 320px;
  text-align: center;
  line-height: 175%;
}
#bloc04 .text-image img {
  width: 800px;
}
#bloc04 a {
  margin: 0 auto;
  width: 80%;
  text-align: center;
  display: block;
  padding: 10px;
  border: solid 1px #1d2129;
}
@media screen and (max-width: 767px) {
  #bloc04 {
    margin: 20px 0;
    padding: 0 3%;
  }
  #bloc04 .text_image .txt01 {
    font-size: .8em;
    top: 10%;
    left: 12%;
    text-align: center;
  }
  #bloc04 .text_image .txt02 {
    font-size: .5em;
    top: 68%;
    left: -2%;
    width: 55%;
  }
}


/* その他商品ページ
----------------------------------------------- */
.item_sub_title{
    color: #57a826;
    font-weight: 600;
    font-size: 110%;
    margin-bottom: 10px;
    }
 /* 価格表*/   
 .price_list{
font-size: 100%;
margin-top: 50px;
}
@media screen and (max-width: 767px) {
.price_list{
font-size: 80%;
margin-top: 30px;
}
}
    
    
    
/*==================================================
スライダーのためのcss
===================================*/
.slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
   width:94%;
    margin:0 auto;
}

.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 10px;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #666;/*矢印の色*/
    border-right: 2px solid #666;/*矢印の色*/
    height: 15px;
    width: 15px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -1.5%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -1.5%;
    transform: rotate(45deg);
}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
  margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
  margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;/*ドットボタンのサイズ*/
    height:8px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
    background:#ccc;/*ドットボタンの色*/
}
.slick-dots li button {
    width: 12px;
    height: 12px;
}
.slick-dots .slick-active button{
    background:#333;/*ドットボタンの現在地表示の色*/
}
/*========================================
レスポンシブ用
========================================*/
@media screen and (max-width: 767px) {
  body {
    font-size: 12px;
  }
  img {
    width: 100%;
  }
  header, nav, #item_page, #bloc, .ec-layoutRole .ec-layoutRole__contents, .ec-layoutRole__header, #bloc02, .hr01 { /* ページ幅指定*/
    width: 100%;
  }
  /* シート商品ページ
----------------------------------------------- */
  /*↓ シートカラーチップ↓*/
  .color_chip {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 50px auto 0;
    width: 100%;
  }
  .color_chip .color {
    flex-basis: 22%;
    margin: 0 1%;
    text-align: center;
    line-height: 120%;
    list-style-type: none;
    font-size: 80%;
    margin-bottom: 30px;
  }
  .color_chip .color img {
    padding: 0 20% 3%;
    /* height: 83%; */
  }
  .tooltip5:hover .description5 {
    display: none;
  }
}
/* プライバシーポリシー
----------------------------------------------- */
#info_page {
  width: 90%;
  margin: 0 auto;
}
#info_page a {
  color: #000;
  text-decoration-line: underline;
}
#info_page a:hover {
  color: #57a826;
  text-decoration-line: underline;
}
@media screen and (max-width: 767px) {
  #info_page {
    width: 100%;
  }
}
.privacy_contents dt {
  margin-top: 20px;
  margin-bottom: 5px;
}
/* 特定商取引法に基づく表記
----------------------------------------------- */
.tradelaw {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  border-bottom: 1px dotted #ccc;
  padding: 20px 0;
}
.tradelaw dt {
  width: 30%;
  color: #000;
}
.tradelaw dd {
  width: 65%;
  color: #000;
}
@media screen and (max-width: 767px) {
  .tradelaw dt, .tradelaw dd {
    width: 100%;
    padding-right: 2%;
  }
  .tradelaw dt {
    margin-bottom: 10px;
  }
}
/* ヘッダー：PCメニュー部分
----------------------------------------------- */
ul.header-dropmenu {
  list-style: none;
  width: 100%;
  height: 40px;
  margin: 0 auto;
  padding: 0;
  display: table;
  table-layout: fixed;
}
ul.header-dropmenu > li {
  position: relative;
  display: table-cell;
  vertical-align: middle;
  border: 5px solid #fff;
  /*  background: #f8f8f8; 背景色*/
}
ul.header-dropmenu li a {
  display: block;
  text-align: center;
  line-height: 40px;
  font-weight: bold;
  text-decoration: none;
  font-size: 14px;
  border: solid 1px #ccc;
}
ul.header-dropmenu li ul li a {
  font-weight: normal;
}
ul.header-dropmenu li ul {
  visibility: hidden;
  width: 101%;
  list-style: none;
  position: absolute;
  top: 100%;
  left: -1px;
  margin: 0;
  padding: 0;
  border: 1px solid #57a826;
  border-top: none;
  z-index: 2;
}
ul.header-dropmenu li:hover ul {
  visibility: visible;
}
ul.header-dropmenu li ul li {
  background: #fff;
  transition: all 0s ease;
}
ul.header-dropmenu > li:hover {
  border: 5px solid #fff;
}
ul.header-dropmenu > li a:link:hover, ul.header-dropmenu > li a[href]:hover {
  color: #ffffff;
  text-decoration: none;
  background-color: #57a826;
  border: 0px none;
}
ul.header-dropmenu li:hover ul li:hover {
  background: #f8f8f8;
}
ul.header-dropmenu li ul li a {
  border: 0px none;
}
/* ヘッダー：スマホ
----------------------------------------------- */
@media screen and (max-width: 767px) {
  .header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 5px;
    background: #fff;
  }
  header .logo {
    flex-basis: 170px;
  }
}
/*------------------------------

  ここから下がハンバーガーメニュー
  に関するCSS

------------------------------*/
/* チェックボックスは非表示に */
.drawer-hidden {
  display: none;
}
/* ハンバーガーアイコンの設置スペース */
.drawer-open {
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 100; /* 重なり順を一番上に */
  cursor: pointer;
}
/* ハンバーガーメニューのアイコン */
.drawer-open span, .drawer-open span:before, .drawer-open span:after {
  content: '';
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #333;
  transition: 0.5s;
  position: absolute;
}
/* 三本線のうち一番上の棒の位置調整 */
.drawer-open span:before {
  bottom: 8px;
}
/* 三本線のうち一番下の棒の位置調整 */
.drawer-open span:after {
  top: 8px;
}
/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer-check:checked ~ .drawer-open span {
  background: rgba(255, 255, 255, 0);
}
/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer-check:checked ~ .drawer-open span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#drawer-check:checked ~ .drawer-open span::after {
  top: 0;
  transform: rotate(-45deg);
}
/* メニューのデザイン*/
.drawer-content {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 100%; /* メニューを画面の外に飛ばす */
  z-index: 99;
  background: #fff;
  transition: .5s;
}
/* アイコンがクリックされたらメニューを表示 */
#drawer-check:checked ~ .drawer-content {
  left: 0; /* メニューを画面に入れる */
}
.drawer-list {
  margin: 70px 5% 30px 8%;
  line-height: 230%;
  font-size: 1.3em;
  border-bottom: solid .5px #ccc;
}
.drawer-item01 {
 /* border-top: solid .5px #ccc;
  padding: 7px 2% 5px;*/
}
.drawer-item02 {
  /* padding: 0px 6% 10px;*/
}
/* 会員ランク表示 */
#customer_rank {
  margin-bottom: 50px;
  border-bottom: 1px dotted #ccc;
}

#customer_rank .heading02 {
    /* background: #f8f8f8; */
    /* padding: 16px; */
    text-align: center;
    font-size: 16px;
}

#customer_rank .current-rank {
  margin-bottom: 15px;
      text-align: center;
    font-size: 16px;
}

#customer_rank span {
  color: #c0392b;
  font-weight: bold;
}

#customer_rank .rank {
  color: #2981ba;
  font-weight: bold;
}

#customer_rank .next_info {
  background: #f7f7f9;
  padding: 10px 25px;
  border: 1px solid #e1e1e8;
}

/* //////////////////追従キャンペーンバナー////////////////// */
.floating-banner {
    position: fixed;/* 追従 */
    z-index: 99999;/* 他の要素の下に隠れないように */
    bottom: 0;/* バナーの上下の位置 */
    right: 0;/* バナーの左右の位置 */
}
.pc {
    width: 300px;/* バナーの横幅を指定 */
}
.floating-banner:hover {
    opacity: .9;/* ホバーで少し透過 */
}
.sp {
    display: none;/* PCではスマホ用のバナーは非表示に */
}
.floating-banner .pc_bnr{
    width: 100%;
    height: 100vh;
    }
@media screen and (max-width: 990px) {/* タブレット用のブレイクポイントを指定 */
    .pc {
        display: none;/* タブレットサイズ以下でPC用のバナーを非表示に */
    }
}
@media screen and (max-width: 560px) {/* スマホ用のブレイクポイントを指定 */
    .sp {
        display: inline-block;/* 消していたスマホ用のバナーを表示させる */
        width: 100vw;/* スマホの画面幅いっぱいにバナーを表示 */
    }
}
/* //////////////////追従キャンペーンバナーここまで////////////////// */
/* //////////////////ページトップへ戻る////////////////// */
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #002d5a;
  opacity: 0.6;
  border-radius: 50%;
  margin: 0 10px 10px 0;
  }
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f062';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 40px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
/* //////////////////ページトップへ戻るここまで////////////////// */


/* //////////////////キャンペーン用問い合わせボタン////////////////// */

.btn-copy {
  font-size: 1.5rem;
  font-weight: bold;

  position: relative;

  margin-bottom: .2em;

  text-align: center;
}

.btn-copy:before {
  margin-right: 1rem;

  content: '＼';
}

.btn-copy:after {
  margin-left: 1rem;

  content: '／';
}
a.btn--campaign {
  color: #fff;
  background-color: #094;
}

a.btn--campaign:hover {
  color: #fff;
  background: #00a349;
}

a.btn--campaign.btn--cubic {
  border-bottom: 5px solid #00662d;
  color: #fff;
}

a.btn--campaign.btn--cubic:hover {
  margin-top: 3px;
  border-bottom: 2px solid #00662d;
}

a.btn-cmp {
    font-size: 1.1em;
    position: relative;
    padding: 2rem 8rem 2rem 7rem;
    border-radius: 100vh;
    font-weight: bold;
}

a.btn-cmp i.fa {
  margin-right: 1rem;
}

a.btn-cmp:before {
font-family: 'Font Awesome 5 Free';
    font-size: 2rem;
    line-height: 1;
    position: absolute;
    top: calc(50% - 1rem);
    right: 1.5rem;
    margin: 0;
    padding: 0;
    content: '\f054';
}
.cmp_img{
max-width: 400px;
    margin: 0 auto;
    }

/* //////////////////キャンペーン用問い合わせボタンここまで////////////////// */
/* //////////////////見出しバナー////////////////// */

.bnr01 .heading {
  overflow: hidden;
  align-items: center;
  background: #57a826;
  color: #fff;
  height: 40px;
  line-height: 40px;
  display: flex;
  font-weight: bold;
  font-size: 120%;
}
    @media screen and (max-width: 767px) {
.bnr01 .heading {
    font-size: 100%;
}
}
.bnr01 .heading:before,
.bnr01 .heading:after {
  content: "";
  flex: 1;
  background: #fff;
  padding: 3px 0;
  height: 0;
  transform: rotate(45deg);
  }

/* //////////////////見出しバナーここまで////////////////// */
       /*========= ドロップダウンのためのCSS ===============*/

/*==ナビゲーション全体の設定*/
nav{
	color:#fff;
	text-align: center;
}

/*ナビゲーションを横並びに*/
nav ul{
    /*2階層目の基点にするためrelativeを指定*/
	position: relative;
	list-style: none;
	display: flex;
	justify-content: center;
}

/*2階層目以降は横並びにしない*/
nav ul ul{
	display: block;
}
nav ul li.menu {
    width: 20%;
    margin: 0;
    color: #fff !important;
}
nav ul li.menu:hover{
    background: #002d5a;
    text-decoration: none;
}
nav ul li.menu a,
nav ul li.menu a:hover{
            color: #fff !important;
            font-weight: bold;
    text-decoration: none;
}
/*カテゴリーへのリンク*/
nav ul li.has-child dd.main{
    text-align: right;
}
nav ul li.has-child dd.main a{
    text-align: center;
    padding: 8px;
    background: #ffffffcc;
    color: #002d5a !important;
    border-radius: 60px;
    width: 70%;
    display: inline-block;
    margin: 15px 0 0 auto;
}
nav ul li.has-child dd.main a:before {
    font-family: 'Font Awesome 5 Free';
    content: '\f0a9';
    padding-right: 5px;
    font-weight: 600;
}
nav ul li.has-child dd.main a:hover{
  background: #57a826;
   color: #fff !important;
}

/*ナビゲーションのリンク設定*/
nav ul li a{
    /*矢印の基点にするためrelativeを指定*/
	position: relative;
	display: block;
	text-decoration: none;
	color: #999;
	padding:20px 45px;
	transition:all .3s;
}

nav ul li li a{
	padding:20px;
}

nav ul li a:hover{
 color:#fff;
}

/*==矢印の設定*/

/*2階層目を持つliの矢印の設定*/

nav ul li.has-child > a::before{
	content:'';
	position: absolute;
	left:50px;
	top:25px;
	width:6px;
	height:6px;
	border-top: 2px solid #fff;
    border-right:2px solid #fff;
    transform: rotate(135deg);
}

/*==2階層定*/

nav ul li.has-child dt{
	overflow: hidden;
	margin:0 0 10px 0;
		font-size: 115%
}
nav ul li.has-child dt a{
padding: 0px;
color: #fff !important;
    background: #57a826;
    padding: 10px;
}
nav ul li.has-child dt a:hover{
    background: #002d5a;
}
nav ul li.has-child dd{
	overflow: hidden;
}
nav ul li.has-child dd.cate{
    font-weight: bold;
    border-bottom: solid 1px;
    line-height: 210%;
margin: 10px 0 5px 5px;
}
nav ul li.has-child dd.item{
padding-left: 17px;
line-height: 150%;
    margin-left: 0.5em;
    text-indent: -1.1em;
    font-size: 97%;
}
nav ul li.has-child dd.item a {
    display: inline;
    font-weight: normal;
    padding: 0px;
}
nav ul li.has-child dd.item a:hover{
    text-decoration: underline;
    }

nav ul li.has-child dd.item:before{
    font-family: 'Font Awesome 5 Free';
    content: '\f0a9';
    padding-right: 5px;
    font-weight: 600;
    font-size: 85%;
}

@media screen and (max-width:1200px){
nav ul li.has-child dt{
	margin:0 0 10px 0;
}
	
}

/*== 2層目の設定 */

nav li.has-child ul{
  /*絶対配置で位置を指定*/
    position: absolute;
	left:1.5%;
	z-index: 4;
  /*子要素を横並びに*/    
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
    /*形状を指定*/
	background:#002d5acc;
	width:97%;
    /*はじめは非表示*/
	visibility: hidden;
	opacity: 0;
     /*アニメーション設定*/
	transition: all .3s;
}

/*hoverしたら表示*/
nav li.has-child:hover > ul{
  visibility: visible;
  opacity: 1;
}

/*各ナビゲーション横幅*/
nav li.has-child ul li{
    width: 33%;
    text-align: left;
    padding: 20px 25px;
}

/*ナビゲーションaタグの形状
nav li.has-child ul li a{
	color: #fff;
}

nav li.has-child ul li a:hover,
nav li.has-child ul li a:active{
	background:#3577CA;
}*/

/*==768px以下の形状*/
@media screen and (max-width:768px){
	
	nav ul{
		display: block;
	}

	nav li.has-child ul{
  	position: relative;
	left:0;
	top:0;
	width:100%;
	visibility:visible;/*JSで制御するため一旦表示*/
	opacity:1;/*JSで制御するため一旦表示*/
	display: none;/*JSのslidetoggleで表示させるため非表示に*/
	transition:none;/*JSで制御するためCSSのアニメーションを切る*/
}
    
	nav li.has-child ul li{
		width:100%;
		text-align: left;
	}
	
	nav li.has-child ul li dl{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	nav li.has-child ul li dt{
		width:30%;
		height: auto;
		margin: 0;
	}

	nav li.has-child ul li dd{
		width:64%;			
	}

    
    nav ul li a{
	    padding: 10px 20px;
	    border-bottom:1px solid #ccc;
	    color: #fff;
}
    nav ul li li a{
		padding: 0;
}
	
/*矢印の位置と向き*/
	
nav ul li.has-child > a::before{
	top:17px;
	left:20px;
    transform: rotate(135deg);
}
    
nav ul li.has-child.active > a::before{
    transform: rotate(-45deg);
}
}

/*カテゴリーページ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.category_top2 .text_image { 
  position: relative; 
  text-align: center;
}
.category_top2 .text_image .txt01 {
  position: absolute;
  font-weight: bold;
  font-size: 2em;
  top: 60px;
  left: 70px;
  text-align: center;
  color: #f8f8f8;
  }
.category_top2 .text_image .txt02 {
  position: absolute;
  top: 125px;
  left: 45px;
  text-align: left;
  line-height: 160%;
  color: #fff;

  padding: 15px;
  width: 45%;
}
.category_top2 .text-image img {
  width: 800px;
}
.category_top .text_image { 
  position: relative; 
  text-align: center;
}
.category_top .text_image .txt01 {
  position: absolute;
  font-weight: bold;
  font-size: 2em;
  top: 60px;
  left: 100px;
  text-align: center;
  color: #f8f8f8;
  }
.category_top .text_image .txt02 {
  position: absolute;
  top: 125px;
  left: 45px;
  text-align: left;
  line-height: 160%;
  color: #fff;
  background: #01182e9e;
  padding: 15px;
  width: 50%;
}
.category_top .text-image img {
  width: 800px;
}
#category h2{
    font-size: 150%;
}
#category .bnr01 .heading{
    height: 50px;
}
#category .border{
    border-bottom: 2px dotted #002d5a80;
}
#category .column_two02{
  margin:15px 0 30px;
  padding-bottom:30px;
}
#category .column_two02 h3{
  margin:10px 0 15px;
  font-size:140%;
  font-weight:bold;
  color:#002d5a;
}
#category .column_two02 table {
  border-collapse: collapse;
  margin: 15px auto 20px;
  padding: 0;
  width: 100%;
  table-layout: fixed;
  font-size:90%;
}
#category .column_two02 table tr {
  background-color: #002d5a1c;
  padding: .35em;
  border-bottom: 3px solid #fff;
}
#category .column_two02 table th, 
#category .column_two02 table td {
 padding: 0.6em 5px 0.6em 5px;
  border-right: 3px solid #fff;
    border-left: 2px solid #fff;
}
#category .column_two02 table tbody td {
color: #000;
}
#category .column_two02 table thead tr {
  background-color: #002d5aad;
  color: #fff;
}
@media screen and (max-width: 640px) {
 #category .column_two02 table {
    width: 98%;
    border-top: none;
  }
 #category .column_two02 table tr {
    display: block;
    float: left;
    width: 100%;
  }
#category .column_two02 table tr td, 
#category .column_two02 table tr th {
    border-left: none;
    display: block;
    height: 33px;
    border-right: none;
    border-bottom: 2px solid #fff;
        width:100%;
  }
#category .column_two02 table thead {
    display: block;
    float: left;
    width: 30%;
  }
#category .column_two02 table thead tr {
  padding: 0;
    border-bottom: none;
    width: 100%;
  }
 #category .column_two02 table tbody {
    display: block;
    float: left;
    width: 70%;
  }
 #category .column_two02 table tbody tr {
   padding: 0;
    border-bottom: none;
    width: 100%;
  }
#category .column_two02 table tr td + td {
    border-left: none;
  }
#category .column_two02 table tbody td:last-child {
    border-bottom: solid 1px #ffffff;
  }
}


#category .column_two02 a.btn--yellow {color: #000;background-color: #57a826;color: #fff;font-weight: bold;}

#category .column_two02 a.btn--yellow:hover {
  color: #fff;
  background: #57a826;
}

#category .column_two02 a.btn--yellow.btn--cubic {
  border-bottom: 5px solid #3c763d;
}

#category .column_two02 a.btn--yellow.btn--cubic:hover {
  margin-top: 3px;
  border-bottom: 2px solid #3c763d;
   text-decoration:none;
}

#category .column_two02 a.btn-c {
  /* font-size: 1rem; */
  position: relative;
  padding: 1rem 5rem 1rem 3rem;
  border-radius: 100vh;
}

#category .column_two02 a.btn-c i.fa {
  margin-right: 1rem;
}
#category .column_two02 a.btn-c:after {
  font-family: 'Font Awesome 5 Free';
  font-size: 1.2rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .55rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: '\f061';
}
#category .column_two02 .item_link{
    text-align:right;
}


@media screen and (max-width: 767px) {
  .category_top {
    margin: 20px 0;
    padding: 0 3%;
  }
 .category_top .text_image .txt01 {
    font-size: 1.5em;
    top: 16%;
    left: 5%;
    text-align: center;
    background: #01182e9e;
    padding: 10px;
  }
  .category_top .text_image .txt02 {
    top: 0;
    left: 0;
    width: 100%;
    background: none;
    position: inherit;
    color: #000;
    padding: 10px 1%;
  }
  #category .column_two02 li{
    width: 100%;
    padding: 1%;
  }
  #category .column_two02 .item_link{
    text-align:center;
}
}

/*カテゴリーページ 2色目テスト＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#category .column_two02 .link02 table tr {
  background-color: #57a82629;
  padding: .35em;
  border-bottom: 3px solid #fff;
}
#category .column_two02 .link02 table th, 
#category .column_two02 .link02 table td {
 padding: 0.6em 5px 0.6em 5px;
  border-right: 3px solid #fff;
    border-left: 2px solid #fff;
}
#category .column_two02 .link02 table tbody td {
color: #000;
}
#category .column_two02 .link02 table thead tr {
  background-color: #57a826;
  color: #fff;
}
#category .column_two02 .link02 a.btn--yellow {color: #000;background-color: #184f87;color: #fff;font-weight: bold;}

#category .column_two02 .link02 a.btn--yellow:hover {
  color: #fff;
  background: #184f87;
}

#category .column_two02 .link02 a.btn--yellow.btn--cubic {
  border-bottom: 5px solid #021d38;
}

#category .column_two02 .link02 a.btn--yellow.btn--cubic:hover {
  margin-top: 3px;
  border-bottom: 2px solid #021d38;
   text-decoration:none;
}
/*カテゴリーページ 2色目テスト　ここまで＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.info_txt{
    border: 1px solid #c20;
    padding: 8px;
    font-weight: bold;
    text-align: center;
    margin: 10px 0 -7px 0;
}
.info_txt a {
    color: #f00;
        display: block;
}
.info_txt a:hover{
   text-decoration:underline;
      color: #f00;
}
@media screen and (max-width: 767px) {
    .info_txt{
    padding: 8px;
    margin: 10px 1% 10px 1%
    }
    }
    /*タブ切り替え全体のスタイル*/
.tabs {
  width: 100%;
  margin: 0 auto;
    
}
/*タブのスタイル*/
.tab_item {
    width: calc(98%/2);
    height: 50px;
    background-color: #d9d9d9;
    box-shadow: 0 5px 0 #999;
      line-height: 23px;
    font-size: 16px;
    text-align: center;
    color: #565656;
    display: block;
    float: left;
    text-align: center;
    font-weight: bold;
    transition: all 0.2s ease;
      border-radius: 5px;
}
.tabs .tab_item:before {
    font-family: 'Font Awesome 5 Free';
    font-size: 1.6rem;
    line-height: 1;
    padding-left: 10px;
    top: calc(50% - 0.8rem);
    padding-right:10px;
    content: '\f00c';
    color: #d9d9d9;
    font-weight: 900;
}
.tabs .tab_item:hover:before {
    font-family: 'Font Awesome 5 Free';
    font-size: 1.6rem;
    line-height: 1;
    padding-left: 10px;;
    top: calc(50% - 0.8rem);
    padding-right:10px;
    content: '\f00c';
        color:#fff;
    font-weight: 900;
}
.tabs .btn {
    display: inline-block;
 padding: 0.8em 3em 0.8em 1em;
    border-radius: 60px;
    cursor: pointer;
    text-decoration: none;
}
/* ホバー時 */
.tabs .btn:hover {
  box-shadow: none;
  transform: translateY(5px);
}

/* クリック時 */
.tabs .btn:active {
  box-shadow: none;
  transform: translateY(5px);
}
.tabs .left{
margin-right: 1%;
}
.tabs .right{
margin-left: 1%;
}

.tab_item:hover {
     background: #9dc189;
   color:#fff;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  clear: both;
  overflow: hidden;
}
/*選択されているタブのコンテンツのみを表示*/
#all:checked ~ #all_content,
#programming:checked ~ #programming_content,
#design:checked ~ #design_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #57a826;
  color: #fff;
   box-shadow: 0 5px 0 #467c25;
}
/* ホバー時 */
.tabs input:checked + .tab_item:hover {
  transform: translateY(0px);
}
.tabs input:checked + .tab_item:before,
.tabs input:checked + .tab_item:hover:before  {
    font-family: 'Font Awesome 5 Free';
    font-size: 1.6rem;
    line-height: 1;
    padding-left: 10px;;
    top: calc(50% - 0.8rem);
    padding-right:10px;
    content: '\f00c';
    color:#fff;
    font-weight: 900;
}


/*各ナビゲーション横幅 後で元を変更する*/
nav li.has-child ul li.test{
    width: 100%;
    text-align: left;
    padding: 20px 25px;
}
/*各ナビゲーション横幅 後で元を変更するここまで*/

/*メニューの中身*/
.tab_content_description div.list{
        display: flex;
        padding: 1% 2%;
}
.tab_content_description dl.cate_box{
  width: 50%;
}
.tab_content_description dl.cate_box:nth-child(odd) {
    padding-right: 2%;
}
.cate_box dd.cate a{
    border-bottom:0;
    line-height: 210%;
    margin: 0;
    position: relative;
    display: block;
    text-decoration: none;
    padding: 0;
    transition: all .3s;
}
.cate_box dd.cate a:hover{
   color: #57a826 !important;
   text-decoration: none;
}
/*ヘッダーメニューテスト用*/
/*03*/
.tab_content03 {
    display: none;
    clear: both;
    overflow: hidden;
    border: 3px solid #57a826;
    padding: 0 5px 10px 5px;
    border-bottom-right-radius: 15px;
    border-bottom-left-radius: 15px;
}
    .tabs input:checked + .tab_item03 {
    background-color: #57a826;
    color: #fff;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    }
    
    
    
    .tabs .left03{
margin-right: 1%;
  border-top-left-radius: 15px; 
  border-top-right-radius: 15px; 
}
.tabs .right03{
margin-left: 1%;
  border-top-left-radius: 15px; 
  border-top-right-radius: 15px; 
}
/*04*/

    /* 05 */
       .btn_design {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    font-weight: bold;
    background-color: #d9d9d9;
    border-radius: 5px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    /* box-shadow: 0 0 6px 0 
      rgba(0, 0, 0, 0.5);*/
    transition: 0.2s;
}
  
/* マウスオーバー時 */
.btn_design:hover{
      box-shadow: 0 4px 7px 0 rgba(0, 0, 0, 0.5);
      transform: translateY(-5px);
      cursor: pointer;
    }
    
    
      .details .des_item { /* シート詳細左側*/
  font-size: 90%;
      font-weight: 600;
      color: #1c1c1c;
}
.details .des_item:nth-child(even),
.details .des_item:nth-child(odd){
  width: 48%;
  }
.details .des_item:nth-child(odd){
  margin-right: 4%;
  }
  .details .des_item  .box100 .conditions img{
          width: 70%;
    padding: 5px 0;
  }
  .details .des_item .eco th{
   border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    background-color: #fff;
    padding: 0;
    width: 20%; 
  }
  .details .des_item .eco p.class{
color: #fff;
    background: #333;
    padding: 3px;
    font-size: 90%;
    margin-top: 5px;
     font-weight: bold;
}
  .details .des_item .eco td.class2{
    font-size: 80%;
    font-weight: normal;
}
.explanation{
    margin-top:20px;
}
.explanation .standards{
    padding: .5em 1em;
    background-color: #57a82640;
    border-radius: 20px;
    width: 50%;
}
.details .des_item .deta_sheet a {
  color: #fff;
  display: block;
}
.details .des_item .deta_sheet {
  margin: 3px;
  background-color: #0e8f94;
  padding: 10px;
  text-align: center;
  border-radius: 5px;
}

.details .des_item .spac_cap { 
margin-left: 1em; 
text-indent: -1em;
font-weight: normal;
    font-size: 85%;
}
.details .des_item .spac_cap:before {
 content:"※";
}
    /*テスト用*/
    
    .details ul.test { /* シート詳細左側*/
  font-size: 90%;
      font-weight: 600;
      color: #1c1c1c;
}
.details ul.test:nth-child(even),
.details ul.test:nth-child(odd){
  width: 48%;
  }
.details ul.test:nth-child(odd){
  margin-right: 4%;
  }
  .details .test  .box100 .conditions img{
          width: 70%;
    padding: 5px 0;
  }
  .details .test .eco th{
   border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    background-color: #fff;
    padding: 0;
    width: 20%; 
  }
  .details .test .eco p.class{
color: #fff;
    background: #333;
    padding: 3px;
    font-size: 90%;
    margin-top: 5px;
     font-weight: bold;
}
  .details .test .eco td.class2{
    font-size: 80%;
    font-weight: normal;
}
.explanation{
    margin-top:20px;
}
.explanation .standards{
    padding: .5em 1em;
    background-color: #57a82640;
    border-radius: 20px;
    width: 50%;
}
.details .test .deta_sheet a {
  color: #fff;
  display: block;
}
.details .test .deta_sheet {
  margin: 3px;
  background-color: #0e8f94;
  padding: 10px;
  text-align: center;
  border-radius: 5px;
}
  /*テスト用おわり↑消す*/

.sample{
  width: 100%;
  }
.sample a {
  border: 2px solid #002d5a;
  border-radius: 70px;
  padding: 20px 10px;
  color:#002d5a;
  font-weight:600;
  margin: 20px auto 0;
  text-align: center;
  display: block;
  text-decoration: none;
  transition: .4s;
  font-size: 1.2em;
  }
/*.sample a:before {
  content: '';
  display: inline-block;
  width: 100px;
  height: 100px;
  background-image: url(https://chemica-japan.com/html/user_data/images/transfer-films/hotmark-revolution/hotmark-revolution-150.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-right: 25px;
}*/
.sample a:hover {
  text-decoration: none;
   color:#fff;
   background:#002d5a;
}
.sample a:after{
  font-family: 'Font Awesome 5 Free';
  font-size: 1.6rem;
  right: 1rem;
  margin: 0;
  padding: 0;
  content: '\f061';
  font-weight: 900;
  padding-left:30px;
}
#campaign{
    line-height: 160%;
}
ul.col3 li.campaign_coupon {
width: 28%;
    margin: 2.6%;
    padding: 100px 0;
        font-weight: 700;
    font-size: 1.4em;
    border-radius: 200px;
    line-height: 130%;
}
.campaign_coupon p{    
    color: #002d5a;
    }
    ul.col3 li.color01{
    border: 4px dotted #b87333;
    color: #b87333;
    }
ul.col3 li.color02{
    border: 4px dotted #939090;
    color: #939090;
}
ul.col3 li.color03{
    border: 4px dotted #dba919;
    color: #dba919;
}
    @media screen and (max-width: 767px) {
ul.col3 li.campaign_coupon {
    width: 31%;
    margin: 1%;
    padding: 28px 0;
        font-size: 0.7em;
}
    ul.col3 li.color01{
    border: 1px dotted #b87333;
    }
        ul.col3 li.color02{
    border: 1px dotted #939090;
    }
        ul.col3 li.color03{
    border: 1px dotted #dba919;
    }
  }
  /*tesuto*/
    @media screen and (max-width: 767px) {
     .details div.box50,
   .details ul.test:nth-child(even), 
   .details ul.test:nth-child(odd),
   .details .des_item:nth-child(even), 
   .details .des_item:nth-child(odd){
  width: 100%;
     }
     .details div.box50:nth-child(odd),
     .details ul.test:nth-child(odd),
     .details .des_item:nth-child(odd){
  margin-right: 0%;
     }
   }
    /*tesuto*/
  /*記事用ページ
----------------------------------------------- */
    #content h1{
    border-top: none;
    border-bottom: 1px solid #ccc;
    margin: 10px 0 10px;
    padding: 8px;
    font-size: 25px;
    font-weight: 500;
    line-height: 150%;
    }
#content h2 {
    padding: 0.8em 0.5em;
    color: #161616;
    background: #57a82624;
    border-bottom: solid 3px #57a826;
    font-size: 22px;
    margin: 20px 0 10px;
        line-height: 140%;
}
#content h3 {
    padding: 0.4em 0.5em 0.4em;
    line-height: 1.4;
    color: #161616;
    border-top: dotted 1px gray;
    border-bottom: dotted 1px gray;
    background: #aaaaaa1c;
    font-size: 22px;
    margin: 40px 0 10px;
}
#content p {
    font-size: 115%;
    margin-left: 10px;
    margin-bottom: 10px;
    line-height: 150%;
}
#content p.img {
    margin: 20px 0 15px;
}
    #content p.main_img{
    margin: 0;
    }
    #content .main_img img{
    margin-bottom: 30px;
    }
    span.yellow_line {
background: linear-gradient(transparent 70%,#fff070 50%);
font-weight: 500;
color: #333;
}
#content ul.table_contents {
    background-color: #f8f8f8;
    padding: 10px 15px;
    font-size: 110%;
    color: #000;
    line-height: 190%;
        margin-top: 30px;
}
    #content ul.table_contents li.top_title{
  position: relative;
  display: inline-block;
  padding-right: 55px;
}

  #content ul.table_contents li.top_title:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 900px;
  height: 1px;
  background-color: #ccc;
  right: 0;
    left:50px;
}
   #content ul.table_contents li.level01{
margin-left: 10px;
}
   #content ul.table_contents li.level02{
margin-left: 30px;
}
#content table.gray_bg{
    border: none;
}
#content table.gray_bg td {
    padding: 8px;
    border-right: 5px solid #fff;
    border-bottom: 5px solid #fff;
    background: #eeeeee;
}
#content table.gray_bg td.fff {
    padding: 8px;
    border-right: 5px solid #fff;
    border-bottom: 5px solid #fff;
    background: #fff;
}
  /*関連記事の非表示
----------------------------------------------- */
.start-wear-business .start-wear-business_none,
.hotmark-revolution .hotmark-revolution_none,
.hot-mark .hot-mark_none{
  display: none;  
}


/* ---------- SNSボタン ---------- */
.sns {
  text-align: right
}
.sns .sns-box:hover {
  background-color: #ccc; /* 透明度を低く指定しました。 */
  box-sizing: border-box;
}
.sns .sns-box {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-left: 1%;
}
.sns .sns-box :hover {
  background-color: rgba(255, 255, 255, .05); /* 透明度を低く指定しました。 */
  box-sizing: border-box;
}
.sns .b-facebook {
  background: #3b5998;
}
.sns .b-twitter {
  background: #55acee;
}
.sns .b-line {
  background: #00B900;
}
.sns .sns-box a {
  display: block;
  color: #fff;
  padding: .15em 0;
  text-align: center;
  font-size: 1.3em;
}
.fab {
  font-family: "Font Awesome 5 Brands";
}
/* ---------- SNSボタン ---------- */
ul.information{
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    margin: 0 10px 8px;
    align-items: center;
    
}
ul.information .date,ul.information .sns_icon{
width:50%
}
/* ---------- 紹介する商品 ---------- */
  #content ul.content_item{
    display: flex;
    flex-wrap:wrap;
    width: 80%;
    margin: 50px auto 10px;
    padding: 10px;
    border: 10px solid #eee;
}
  #content ul.content_item .item_img{
    width: 32%;
    padding-right: 2%;
}
  #content ul.content_item .item_txt{
     width: 68%;
     display: flex;
     flex-direction: column;
}
#content .item_name{
        margin-top: -5px;
}
#content .item_name_top{
    color: #57a826;
    font-weight: 500;
}
  #content ul.content_item .item_txt .item_btn{
    text-align: right;
    margin-top: auto;
}
  #content ul.content_item .item_txt .item_btn a{
    text-align: center;
    padding: 8px;
    background: #002d5a;
    color: #ffffff !important;
    border-radius: 60px;
    width: 80%;
    display: inline-block;
    margin: 15px 0 0 auto;
}
  #content ul.content_item .item_txt .item_btn a:before {
    font-family: 'Font Awesome 5 Free';
    content: '\f0a9';
    padding-right: 10px;
    font-weight: 600;
}
  #content ul.content_item .item_txt .item_btn a:hover{
  background: #57a826;
   color: #fff !important;
        text-decoration: none;
}
#content .item_btn02{
    text-align: center;
    margin-top: auto;
}
  #content .item_btn02 a{
    text-align: center;
    padding: 8px;
    background: #57a826;
    color: #ffffff !important;
    border-radius: 60px;
    width: 60%;
    display: inline-block;
    margin: 15px 0 0 auto;
}
  #content .item_btn02 a:before {
    font-family: 'Font Awesome 5 Free';
    content: '\f0a9';
    padding-right: 10px;
    font-weight: 600;
}
  #content .item_btn02 a:hover{
  background: #002d5a;
   color: #fff !important;
        text-decoration: none;
}
 @media screen and (max-width: 767px) {
  #content{
    margin:0 1.2%;
  }
    #content p{
   margin-left: 5px;
 }
  #content ul.table_contents li.top_title:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 300%;
  height: 1px;
  background-color: #ccc;
  right: 0;
    left:50px;
}
          #content h1{
    font-size: 15px;
    }
      ul.information .date{
        width:70%
      }
      ul.information .sns_icon{
width:30%
}
   #content ul.content_item{
    width: 90%;
}
 #content ul.content_item .item_img,#content ul.content_item .item_txt{
    width: 100%;
   }
      #content ul.content_item .item_img{
   padding:0 10%;
}
   #content ul.content_item .item_txt .item_btn{
    text-align: center;
     margin:0 0 10px;
}
        #content ul.content_item .item_txt .item_btn a{
    width: 98%;
}
      #content h2 {
    font-size: 14px;
}
      #content h3 {
    font-size: 14px;
}
   #content ul.table_contents {
    padding: 10px 10px;
}
      #content ul.table_contents li.level01{
margin-left: 5px;
}
   #content ul.table_contents li.level02{
margin-left: 20px;
}
}
/* ---------- 関連記事 ---------- */

.top_bgeee{
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: calc(((100vw - 100%) / 2) * -1);
    background: #eee;
    padding-top: 20px;
}
.top_bgeee .sp_back{
    background: #eee;
    padding: 20px 3%;
    margin-top: 50px;
}
  .top_bgeee .related_article{
    background: #fff;
    padding: 15px;
    margin-bottom: 15px;
    }
  .top_bgeee .related_article a{
   color:#57a826;
   font-weight: 500;
 }
    .top_bgeee .article_title{
    color: #333;
    font-size: 120%;
    font-weight: 500;
    text-align: left;
    margin-bottom: 10px;
    }
     .top_bgeee .column_two02 .box02 {
    width: 60%;
    }
    .top_bgeee .content_title{
    width: 1000px;
    margin: 0 auto;
        font-size: 140%;
    margin-bottom: 20px;
    font-weight: 400;
    }
      #content p.page_navi{
        font-size: 90%;
      }
   #content p.page_navi, #content p.page_navi a{
          color: #666;
    }
   
    .related_article_list .column_two02 .box02 .txt{
text-align: left;
font-size: 1em;
	} 
@media screen and (max-width: 767px) {
 .related_article_list .column_two02 .box01,
.related_article_list .column_two02 li:nth-child(odd) {
    width: 100%;
  }
  .related_article_list .column_two02 .box02 {
    width: 100%;
    margin-top: 10px;
  }
}
    
    /*その他と主な共通部分は省略*/

a.btn--green {
  color: #fff;
  background-color: #57a826;
}

a.btn--green:hover {
  color: #fff;
  background: #57a826;
}

a.btn--green.btn--cubic {
  border-bottom: 5px solid #00662d;
}

a.btn--green.btn--cubic:hover {
  margin-top: 3px;
  border-bottom: 2px solid #00662d;
      text-decoration: none;
}

a.btn-c {
  font-size: 1.5rem;
  position: relative;
  padding: 1.5rem 3rem 1.5rem 2rem;
}

a.btn-c i.fa {
  margin-right: 1rem;
}