@charset "utf-8";
/* ===================================================================
CSS information
file name  :common.css
style info :共通
=================================================================== */
/*-----------------------------------------------
body
----------------------------------------------- */
html {
  height: 100%;
}
body {
  position: relative;
  min-width: 320px;
  height: 100%;
  line-height: 1.6;
  overflow-x: hidden;
  color: #333;
  font-family:
    'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo,
    Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 14px;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.mincho {
  font-family:
    '游明朝体', 'Yu Mincho', YuMincho, 'ヒラギノ明朝 ProN W3',
    'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
}
img {
  vertical-align: bottom;
  max-width: 100%;
}
svg {
  vertical-align: middle;
}
.opacity {
  opacity: 0.8;
}

/*! icon font
---------------------------------------- */
@font-face {
  font-family: hinoseiyaku;
  font-style: normal;
  font-weight: 400;
  src: url(fonts/hinoseiyaku.eot?kaq2m0);
  src:
    url(fonts/hinoseiyaku.eot?kaq2m0#iefix) format('embedded-opentype'),
    url(fonts/hinoseiyaku.ttf?kaq2m0) format('truetype'),
    url(fonts/hinoseiyaku.woff?kaq2m0) format('woff'),
    url(fonts/hinoseiyaku.svg?kaq2m0#hinoseiyaku) format('svg');
}
[class*=' icon-']:after,
[class*=' icon-']:before,
[class^='icon-']:after,
[class^='icon-']:before {
  line-height: 1;
  font-family: hinoseiyaku !important;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  text-transform: none;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-logo:before {
  content: '\e900';
}
.icon-cart:before {
  content: '\e901';
}
.icon-search:before {
  content: '\e902';
}
.icon-category:before {
  content: '\e903';
}
.icon-medicine:before {
  content: '\e904';
}
.icon-trouble:before {
  content: '\e905';
}
.icon-all:before {
  content: '\e906';
}
.icon-arw-circle:before {
  content: '\e907';
}
.icon-arw-circle02:before {
  content: '\e907';
}
.icon-site:before {
  content: '\e909';
}
.icon-factory:before {
  content: '\e90a';
}
.icon-cart02:before {
  content: '\e90b';
}
.icon-bag:before {
  content: '\e90c';
}
.icon-login:before {
  content: '\e90d';
}
.icon-leaf01:before {
  content: '\e90e';
}
.icon-leaf02:before {
  content: '\e90f';
}
.icon-leaf03:before {
  content: '\e910';
}
.icon-num1:before {
  content: '\e911';
}
.icon-num2:before {
  content: '\e912';
}
.icon-num3:before {
  content: '\e913';
}
.icon-num4:before {
  content: '\e914';
}
.icon-num5:before {
  content: '\e915';
}
.icon-num6:before {
  content: '\e916';
}
.icon-num7:before {
  content: '\e917';
}
.icon-num8:before {
  content: '\e918';
}
.icon-mail:before {
  content: '\e919';
}
.icon-twitter:before {
  content: '\e91a';
}
.icon-facebook:before {
  content: '\e91b';
}
.icon-line:before {
  content: '\e91c';
}
.icon-pc:before {
  content: '\e91d';
}
.icon-freedial:before {
  content: '\e91e';
}

/* フロート
----------------------------------------------- */
.fltL {
  float: left;
}
.fltR {
  float: right;
}

/* フロート回り込み解除
----------------------------------------------- */
.clearfix:after {
  display: block;
  clear: both;
  content: '';
}
.clear {
  clear: both;
}

/* リンク指定
----------------------------------------------- */
a:link,
a:visited {
  /* color: #000; */
  text-decoration: none;
}
a:link:hover,
a[href]:hover {
  /*color: #000;*/
  text-decoration: none;
}

/* フォント
----------------------------------------------- */
h1,
h2,
h3,
h4,
h5 {
  font-size: 100%;
  font-weight: normal;
  text-align: left;
}
.attention {
  /*    color: #D01F3E;*/
  color: #ff0000;
  font-size: 14px;
  font-weight: bold;
  clear: both;
}
.attentionSt {
  color: #d01f3e;
  font-weight: bold;
}
.st {
  font-weight: bold;
}
.normal {
  font-weight: normal !important;
}
.mini {
  font-size: 10px;
}
.freeshipping {
  font-size: 14px;
}

.fs10 {
  font-size: 10px !important;
}
.fs11 {
  font-size: 11px !important;
}
.fs12 {
  font-size: 12px !important;
}
.fs13 {
  font-size: 13px !important;
}
.fs14 {
  font-size: 14px !important;
}
.fs15 {
  font-size: 15px !important;
}
.fs16 {
  font-size: 16px !important;
}
.fs21 {
  font-size: 21px !important;
}
.fs24 {
  font-size: 24px !important;
}
.fs32 {
  font-size: 32px !important;
}

/* 行揃え
----------------------------------------------- */
.alignC {
  text-align: center;
}
.alignR {
  text-align: right;
}
.alignL {
  text-align: left;
}

/* 余白
----------------------------------------------- */
.mt2 {
  margin-top: 2% !important;
}
.mt4 {
  margin-top: 4% !important;
}
.mt6 {
  margin-top: 6% !important;
}
.mt8 {
  margin-top: 8% !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb0 {
  margin-bottom: 0% !important;
}
.mb2 {
  margin-bottom: 2% !important;
}
.mb4 {
  margin-bottom: 4% !important;
}
.mb6 {
  margin-bottom: 6% !important;
}
.mb8 {
  margin-bottom: 8% !important;
}
.mb10 {
  margin-bottom: 10% !important;
}

.mr28 {
  margin-right: 28px !important;
}

.pp08 {
  padding: 8% !important;
}

.pt08 {
  padding-top: 8% !important;
}

/* line-height
----------------------------------------------- */
.line08 {
  line-height: 0.8 !important;
}
.line10 {
  line-height: 1 !important;
}
.line12 {
  line-height: 1.2 !important;
}

/* フォントカラー
----------------------------------------------- */
.c_green {
  color: #4f6129 !important;
}
.c_green2 {
  color: #83942e !important;
}
.c_orange {
  color: #f46a04 !important;
}
.c_white {
  color: #fff !important;
}
.c_red {
  color: #d01f3e !important;
}
.c_gray {
  color: #777 !important;
}

/* アイコン
----------------------------------------------- */
.i_gide {
  display: inline-block;
  padding-left: 30px;
  background: url(../img/icon/icon_pc.png) no-repeat left center;
}
.i_mail {
  display: inline-block;
  padding-left: 30px;
  background: url(../img/icon/icon_mail.png) no-repeat left center;
}
.i_favorite {
  display: inline-block;
  padding-left: 30px;
  background: url(../img/icon/icon_favorite.png) no-repeat left center;
}
.i_consul span {
  display: inline-block;
  background: url(../img/icon/icon_consul.svg) no-repeat left center;
  background-size: 18px;
  padding-left: 25px;
}
.i_consul:hover span {
  background: url(../img/icon/icon_consul_on.svg) no-repeat left center;
  background-size: 18px;
}

/* その他
----------------------------------------------- */
.underline {
  text-decoration: underline !important;
}
.bnone {
  border-bottom: none !important;
}

/* フォーム
----------------------------------------------- */
select {
  border: solid 1px #ccc;
  padding: 12px 26px 12px 12px;
  height: auto !important;
  -moz-appearance: none;
  /*background: rgba(0, 0, 0, 0) url('../img/icon/icon_arrow_select.png')
    no-repeat scroll 94% center / 14px auto !important;*/
  border-radius: 8px;
  font-size: 12px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input[type='text'],
input[type='password'],
input[type='email'],
input[type='number'],
input[type='tel'],
input[type='search'],
textarea {
  border: solid 1px #ccc;
  padding: 10px 2%;
  -webkit-appearance: none;
  box-sizing: border-box;
  /*border-radius: 8px;
	-webkit-border-radius:8px;
	-moz-border-radius:8px;*/
}

input[type='button'],
input[type='submit'] {
  -webkit-appearance: none;
  border-radius: 0;
}

textarea {
  font-size: 12px;
  width: 100%;
}

/* ラジオボタン */
label.radio {
  cursor: pointer;
  position: relative;
  margin-right: 20px;
  overflow: hidden;
  padding-left: 22px;
  display: inline-block;
  padding-top: 6px;
  padding-bottom: 6px;
}
label.radio:before {
  position: absolute;
  width: 18px;
  height: 18px;
  border: 1px solid #b5b5b5;
  border-radius: 50%;
  left: 0px;
  top: 4px;
  content: '';
  z-index: 3;
}
label.radio:after {
  content: '';
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 100%;
  left: 4px;
  top: 8px;
  background-color: #83942e;
  z-index: 1;
}
label.radio input[type='radio'] {
  -moz-appearance: none;
  -webkit-appearance: none;
  position: absolute;
  z-index: 2;
  width: 20px;
  height: 20px;
  left: -23px;
  /*top: 1px;*/
  margin: 0px;
  box-shadow: 20px -1px #fff;
}
label.radio input[type='radio']:checked {
  box-shadow: none;
}
label.radio input[type='radio']:focus {
  opacity: 0.2;
  box-shadow: 20px -1px #fff;
}
label.radio2 {
  position: relative;
  display: inline-block;
  width: 13px;
  height: 13px;
  border: 1px solid #b5b5b5;
  border-radius: 100%;
  overflow: hidden;
  cursor: pointer;
}
label.radio2:before {
  content: '';
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 100%;
  position: absolute;
  top: 2px;
  left: 2px;
  z-index: 1;
  background-color: #c49f5b;
}

label.radio2 input[type='radio'] {
  -moz-appearance: none;
  -webkit-appearance: none;
  margin: 0px;
  position: absolute;
  z-index: 2;
  top: -2px;
  left: -27px;
  width: 20px;
  height: 20px;
  display: block;
  box-shadow: 20px 0px #fff;
}
label.radio2 input[type='radio']:checked {
  box-shadow: none;
}
label.radio2 input[type='radio']:focus {
  box-shadow: 20px 0px #fff;
  opacity: 0.2;
}

.moreshortbox {
  width: 16% !important;
}
.shortbox {
  width: 24% !important;
}

.harfbox {
  width: 42% !important;
}

.longbox {
  width: 100% !important;
}

select.shortbox {
  width: 28%;
}

select.harfbox {
  width: 50%;
}

select.longbox {
  width: 100%;
}

select.longbox2 {
  width: 72%;
}

.mr {
  margin-right: 2%;
}

.ml {
  margin-left: 2%;
}

/* ボタン
----------------------------------------------- */
.btn {
  /*width:60%;
	margin:0 auto;
	margin-top:4%;*/
  clear: both;
  text-align: center;
}
.btn a {
  position: relative;
  overflow: hidden;
  border: 1px solid #436201;
  display: inline-block;
  padding: 14px 20px;
  font-size: 18px;
  text-align: center;
  color: #436201;
  min-width: 416px;
  z-index: 5;
  transition: all 0.4s ease;
}
.btn a:hover {
  color: #fff;
}
.btn a:hover:after {
  left: 0;
  opacity: 1;
}
.btn a:hover:before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.btn a:before {
  position: absolute;
  top: 50%;
  right: 25px;
  z-index: 3;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  border-top: 1px solid #4f6129;
  border-right: 1px solid #4f6129;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: all 0.4s ease;
}
.btn a:after {
  position: absolute;
  top: 0;
  left: -100%;
  z-index: -2;
  width: 100%;
  height: 100%;
  background: #9eb270;
  opacity: 0;
  content: '';
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
}
#info_area ul .gide a:hover:after {
  left: 0;
  opacity: 1;
}
#info_area ul .gide a:hover:before {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
#info_area ul .gide a:after {
  position: absolute;
  top: 0;
  left: -100%;
  z-index: -2;
  width: 100%;
  height: 100%;
  background: #4f6129;
  opacity: 0;
  content: '';
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
}
#info_area ul .mail a:hover:after {
  left: 0;
  opacity: 1;
}
#info_area ul .mail a:before {
  position: absolute;
  top: 50%;
  right: 25px;
  z-index: 3;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  border-top: 1px solid #4f6129;
  border-right: 1px solid #4f6129;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: all 0.4s ease;
}
#info_area ul .mail a:after {
  position: absolute;
  top: 0;
  left: -100%;
  z-index: -2;
  width: 100%;
  height: 100%;
  background: #edf7e8;
  opacity: 0;
  content: '';
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)';
}

.btn svg {
  fill: #436201;
  height: 25px;
  width: 18px;
  float: right;
}
.btn_area {
  margin: 40px auto 0;
  text-align: center;
  width: 100%;
}
.btn_area li,
.btn_area p {
  width: 350px;
  list-style: none;
  display: inline-block;
}
.active_btn input,
.active_btn a,
.active_btn button {
  background-color: #4f6129;
  border: 1px solid #4f6129;
  display: inline-block;
  width: 100%;
  color: #fff;
  padding: 16px 20px;
  box-sizing: border-box;
  cursor: pointer;
  text-align: center;
  margin: 0 auto;
}

.active_btn input:hover,
.active_btn a:hover,
.active_btn button:hover {
  opacity: 0.6;
  text-decoration: none;
  color: #fff;
}

.passive_btn input,
.passive_btn a,
.passive_btn button {
  background-color: #eee;
  border: 1px solid #eee;
  display: inline-block;
  width: 100%;
  color: #333;
  padding: 16px 20px;
  box-sizing: border-box;
  cursor: pointer;
  text-align: center;
  margin: 0 auto;
}

.passive_btn input:hover,
.passive_btn a:hover,
.passive_btn button:hover {
  opacity: 0.6;
  text-decoration: none;
  color: #333;
}

.sub_btn input,
.sub_btn a,
.sub_btn button {
  border: 1px solid #4f6129;
  display: block;
  max-width: 416px;
  color: #4f6129;
  padding: 16px 20px;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  margin: 24px 0 14px;
  box-sizing: border-box;
  margin: 0 auto;
  background: #fff;
}

.sub_btn input:hover,
.sub_btn a:hover,
.sub_btn button:hover {
  opacity: 0.6;
  text-decoration: none;
  color: #231815;
}

.edit {
  margin-top: 2.4%;
}

.edit li a {
  background: #333 none repeat scroll 0 0;
  color: #fff;
  display: block;
  padding: 2px 5px;
  text-align: center;
}
/* テーブル
----------------------------------------------- */
table {
  margin: 0px auto;
  border: 1px solid #f2f2f2;
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  background: #fff;
  font-size: 12px;
  margin-top: 14px;
}
table tr {
  /*border-bottom: 1px solid #ccc;*/
}

table th {
  border-left: 1px solid #f2f2f2;
  color: #333;
  font-weight: normal;
  vertical-align: middle;
  padding: 12px;
  background: #e8e8e8;
  border-bottom: 1px solid #f2f2f2;
}
table td {
  border-left: 1px solid #f2f2f2;
  vertical-align: middle;
  padding: 12px;
  border-bottom: 1px solid #f2f2f2;
}
table.specbox {
  background: #f5f4f2;
  border: none;
}
table.specbox th {
  background: #f5f4f2;
  border-left: none;
  font-size: 18px;
  padding: 12px 0;
  font-family: 'yumindb', serif;
  border-bottom: 1px solid #ccc;
}

table.specbox td {
  border-left: none;
  padding: 12px 0;
  border-bottom: 1px solid #ccc;
}
.spectd01 {
  width: 30%;
}
.spectd02 {
  width: 70%;
  padding: 12px 0 12px 12px;
}
.common_table2 {
  border: none;
}
.common_table2 tr {
  border-bottom: 1px solid #e8e8e8;
}
.common_table2 th {
  background: #f2f2f2;
  border-left: none;
}
.common_table2 td {
  border-left: none;
}

#payment_time td {
  padding: 0 12px;
}
#payment_time select {
  vertical-align: middle !important;
}

/* タイトル
----------------------------------------------- */
h1.title_bloc,
h2.title_bloc,
h3.title_bloc {
  background: rgba(0, 0, 0, 0) url(../img/common/title_bloc.jpg) repeat-x scroll
    left center;
  color: #000;
  font-size: 14px;
  font-weight: normal;
  /*letter-spacing: 0.1em;*/
  line-height: 1.2;
  margin-bottom: 40px;
  text-align: center;
}
h1.title_bloc span.beven,
h2.title_bloc span.beven,
h3.title_bloc span.beven {
  font-size: 26px;
  font-family:
    'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo,
    Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
h1.title_bloc span,
h2.title_bloc span,
h3.title_bloc span {
  background: #fff none repeat scroll 0 0;
  padding: 0 22px;
  font-family: 'yumindb', serif;
  color: #4f6129;
  display: inline;
}
.subtitle {
  color: #4f6129;
  border-bottom: 1px dotted #000;
  padding: 16px 0 4px 0;
  margin-bottom: 16px;
  font-weight: bold;
}
.category_ttl {
  font-size: 24px;
  color: #4f6129;
  padding: 20px 0;
  border-top: 2px solid #495b26;
  border-bottom: 2px solid #495b26;
  margin-bottom: 30px;
  text-align: center;
}

/* pagetop 
----------------------------------------------- */
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
}

#pageTop a {
  display: block;
  z-index: 9999;
  width: 50px;
  height: 50px;
  background: #707070;
  opacity: 0.9;
  text-align: center;
}

#pageTop a:hover {
  text-decoration: none;
  /*opacity: 0.7;*/
}
#pageTop img {
  width: 50%;
  padding-top: 30%;
}

/*----------------------------------------------- 
 ポップアップウィンドウ
----------------------------------------------- */
#windowcolumn {
  width: 100%;
  padding: 4%;
  box-sizing: border-box;
}
div#windowcolumn h2 {
  font-size: 20px;
  background: url(../img/icon/icon_subtitle.svg) no-repeat left center;
  background-size: 20px;
  line-height: 1;
  padding-left: 28px;
  margin-bottom: 30px;
}
div#window_area {
  margin: 15px auto 0;
  padding-bottom: 20px;
  height: auto !important;
  padding: 4%;
}
div#window_area p.information {
  margin-bottom: 20px;
}
div#window_area .message {
  margin-bottom: 20px;
  color: #f60;
  line-height: 150%;
  font-weight: bold;
  font-size: 14px;
}
div#window_area table {
  width: 580px;
}

div#window_area table th {
  width: 140px;
}
#forgot .forgot_block {
  padding: 24px;
  margin: 20px auto 40px;
  border: 1px solid #dedede;
  font-size: 16px;
}
.newpass {
  border: 1px solid #eee;
  padding: 6%;
  text-align: center;
}
.newpass span {
  font-size: 16px;
}
#windowcolumn .entry_form input {
  box-sizing: border-box;
  /*width:100%;*/
}
#windowcolumn .entry_form .name dd input {
  /*	margin-right:0; */
}
#windowcolumn .entry_form dd {
  padding: 2%;
}

/*-----------------------------------------------
 エラー画面
----------------------------------------------- */
#undercolumn_error {
  margin: 8% 0;
}

/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox,
#cboxOverlay,
#cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
}
#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}
#cboxMiddleLeft,
#cboxBottomLeft {
  clear: left;
}
#cboxContent {
  position: relative;
}
#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
#cboxTitle {
  margin: 0;
}
#cboxLoadingOverlay,
#cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#cboxPrevious,
#cboxNext,
#cboxClose,
#cboxSlideshow {
  cursor: pointer;
}
.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}
.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}
#colorbox,
#cboxContent,
#cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

#cboxOverlay {
  background: #000;
}
#colorbox {
  outline: 0;
}
#cboxContent {
  margin-top: 32px;
  overflow: visible;
  background: #000;
}
.cboxIframe {
  background: #fff;
}
#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxLoadingOverlay {
  background: #000;
}
#cboxTitle {
  position: absolute;
  top: -22px;
  left: 0;
  color: #000;
}
#cboxCurrent {
  position: absolute;
  top: -22px;
  right: 205px;
  text-indent: -9999px;
}

#cboxSlideshow {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  text-indent: -9999px;
  width: 30px;
  height: 30px;
  position: absolute;
  top: -20px;
  background: none;
  transition: all 0.3s ease;
}

#cboxPrevious:active,
#cboxNext:active,
#cboxSlideshow:active,
#cboxClose:active {
  outline: 0;
}

#cboxPrevious,
#cboxNext {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  text-indent: -9999px;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 47%;
  background: none;
  transition: all 0.3s ease;
}
#cboxPrevious {
  background: url(../img/icon/arrow.svg) no-repeat left center;
  background-size: 28px;
  left: 0;
}
#cboxNext {
  background: url(../img/icon/arrow.svg) no-repeat right center;
  background-size: 28px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  right: 0;
}
#cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  text-indent: -9999px;
  width: 24px;
  height: 24px;
  position: absolute;
  top: -30px;
  background: none;
  transition: all 0.3s ease;
  background: url(../img/icon/icon_close.svg) no-repeat center center;
  background-size: 20px;
  right: 0;
}

#cboxPrevious:hover,
#cboxNext:hover,
#cboxClose:hover {
  opacity: 0.6;
}
