@charset "UTF-8";
@import url(slick.css);
@import url(jquery-ui.css);
/* +++++++++++++++++++++++++++++++

 common.css

+++++++++++++++++++++++++++++++ */
/* リセット start */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/*フォントサイズが調整を防ぐ*/
html, body, form, fieldset, p, div, h1, h2, h3, h4, h5, h6 {
  -webkit-text-size-adjust: none;
}

body {
  max-width: 100vw;
  font-family: Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 3.2vw;
  line-height: 1.6;
}
body .is-fixed {
  height: 100vh;
  overflow-y: auto;
}

html {
  width: 100%;
  overflow-x: hidden;
}

/*
html,body {
    height:100%;
}
 */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  background: transparent;
  text-decoration: none;
  vertical-align: baseline;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: none;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="button"],
input[type="submit"] {
  border-radius: 0;
  font-family: Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input:focus, select:focus {
  outline: none;
}

textarea {
  font-family: Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

li {
  list-style: none;
}
/* リセット end */


/* sp css start */
@media screen and (max-width:879px) {
h2,
h3,
h4 {
  text-align: center;
}

hr {
  display: block;
  height: 0;
  margin: 0;
  border: 0;
}

ul:after,
dl:after,
.after_clear:after,
.btn_search:after,
.pageBox:after,
.swipeBox:after {
  display: block;
  clear: both;
  content: ".";
  visibility: hidden;
  height: 0px;
}

.red {
  color: #FF0000;
}
.blue {
  color: #224D6E;
}

.bold {
  font-weight: bold;
}

img {
  max-width: 100% !important;
  max-height: 100%;
}

.image img {
  width: 100%;
}

/****************************************************************/
/*  Parts
*****************************************************************/
/* 1.オーバーレイの閉じるボタン start */
.btBox_OL {
  padding: 0 10px;
  margin-bottom: 15px;
}

.btBox_OL p {
  padding: 5px 10px;
  margin: 0 auto;
  display: block;
  width: 190px !important;
  overflow: auto;
}

.btBox_OL p a {
  display: block;
  width: auto !important;
  height: 38px;
  line-height: 38px;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
}

/* 1.オーバーレイの閉じるボタン end */
/* 2.リストの矢印リンク画像 start */
.icon_arrow_right a::after {
  position: relative;
  margin-top: -25px;
  margin-bottom: auto;
  margin-right: -35px;
  margin-left: auto;
  display: block;
  height: 21px;
  width: 21px !important;
  content: ' ';
  -webkit-border-radius: 21px;
  -moz-border-radius: 21px;
  border-radius: 21px;
  border: 2px solid #FFFFFF;
  -webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
  box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
  background-position: center center;
  background-repeat: no-repeat;
}

.icon_arrow_right a::after {
  background-image: url(../images_smt/icon_arrow.png), -moz-linear-gradient(top, #90B6EB 0%, #4F8BE0 49%, #2C74DA 50%);
  background-image: url(../images_smt/icon_arrow.png), -webkit-gradient(linear, right top, right bottom, color-stop(0%, #90B6EB), color-stop(49%, #4F8BE0), color-stop(50%, #2C74DA));
}

/* 2.リストの矢印リンク画像 end */
/* 2-1.パンくず start */
.pkz {
  padding: 2.67vw;
  background: #f2f2f7;
  color: #636366;
  font-size: 2.67vw;
  line-height: 1;
  overflow: auto;
}
.pkz ol {
  white-space: nowrap;
}
.pkz li {
  display: inline-block;
}
.pkz li:not(:last-child)::after {
  margin-left: 0.3em;
  content: "/";
}
.pkz a {
  color: #636366;
  text-decoration: underline;
}

/* 2-1.パンくず end */
/* 3.リンクの色 start */
a {
  color: #2363d9;
  outline: none;
}

/* 3.リンクの色 end */
/* 4.大見出し start */
.headline01 {
  margin: 8.54vw 5.34vw;
  font-size: 5.87vw;
  font-weight: normal;
  text-align: center;
}
.headline01_ruby {
  font-size: 3.2vw;
}

.mcblue h2,
#title_style h3:first-child {
  margin: 8.54vw 5.34vw;
  font-size: 5.87vw;
  font-weight: normal;
  text-align: center;
}
.mcblue h2_ruby,
#title_style h3:first-child_ruby {
  font-size: 3.2vw;
}

/* 4.大見出し end */
/* 5.中見出し start */
.heading01 {
  height: auto;
  margin-bottom: 5.34vw;
  font-size: 4.27vw;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}

#lang_jp #title_style h3,
.mcblue h3 {
  height: auto;
  margin: 0 0 5.34vw;
  font-size: 4.27vw;
  font-weight: bold;
  line-height: 1.6;
}

h3.bundle {
  color: #FFF;
  border-top: solid 1px #5E9AC4;
  border-bottom: solid 1px #5E9AC4;
  background-color: #5E9AC4;
  background-image: -moz-linear-gradient(top, #5E9AC4 0%, #396B9E 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #5E9AC4), color-stop(100%, #396B9E));
}

/* 5.中見出し end */
/* 6.小見出し */
.sub_head01 {
  display: block;
  margin-bottom: 4vw;
  padding: 4vw 5.87vw;
  background: #000;
  color: #fff;
  font-size: 4.27vw;
  font-weight: normal;
  text-align: center;
}
.sub_head01 strong {
  margin-left: 1em;
  font-size: 5.34vw;
  font-weight: normal;
}

.sub_head02 {
  position: relative;
  margin-bottom: 4vw;
  padding: 4vw 5.34vw;
  background: #f2f2f7;
  font-size: 3.2vw;
}

.mcblue h4 {
  margin-bottom: 4vw;
  padding: 4vw 5.87vw;
  background: #000;
  color: #fff;
  font-size: 4.27vw;
  text-align: center;
}

/* 6.小見出し end */
/* 7.select start */
select {
  height: 8vw;
  padding: 0;
  background: #fff;
  vertical-align: middle;
}

.select_wrap {
  position: relative;
  border: 1px solid #d2d2d9;
}
.select_wrap select {
  width: 100%;
  height: 10.67vw;
  padding: 0 4vw;
  border: 0;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.select_wrap::before {
  position: absolute;
  top: 50%;
  right: 4vw;
  transform: translateY(-50%);
  border-width: 1.6vw 1.34vw 0;
  border-style: solid;
  border-color: #000 transparent;
  content: "";
  pointer-events: none;
}

/* 7.select end */
/* 8.input start */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"] {
  padding: 2.67vw;
  border: solid 1px #d2d2d9;
  border-radius: 0;
  font-size: 4.27vw;
  box-sizing: border-box;
}

/* iPhoneのテキストボックスfocus時の自動zoom抑止のため、font-sizeは必ず1emまたは16pxにしてください */
input, textarea, select {
  font-size: 4.27vw;
}

textarea {
  width: 100%;
  height: 21.34vw;
  padding: 2.4vw 4vw 2.94vw;
  border: solid 1px #8e8e8e;
  border-radius: 0;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* 8.input end */
/* 9.1行2ボタン start */
.btBox2 {
  display: flex;
  justify-content: space-between;
  margin: 10.67vw 5.87vw 0;
}

.btBox2 p {
  width: 42.67vw;
}

.btBox2 a,
.btBox2 input {
  display: block;
  width: 100%;
  height: 14.67vw !important;
  font-size: 3.74vw !important;
  line-height: 14.67vw;
}

/* 9.1行2ボタン end */
/* 10.新着レビューボタン start */
.bt_review {
  padding: 5px 0;
  margin: 0 auto;
  display: block;
  width: 300px !important;
  overflow: auto;
}

.bt_review a {
  display: block;
  width: auto !important;
  height: 38px;
  line-height: 38px;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  -webkit-border-radius: 19px;
  -moz-border-radius: 19px;
  border-radius: 19px;
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  color: #000;
  text-shadow: #FFF 0px -1px 1px;
  background-color: #F5F5F5;
  background-image: url(../images_smt/icon_review.png), -moz-linear-gradient(top, #F5F5F5 0%, #BFBFBF 100%);
  background-image: url(../images_smt/icon_review.png), -webkit-gradient(linear, right top, right bottom, color-stop(0%, #F5F5F5), color-stop(100%, #BFBFBF));
  background-position: left center;
  background-repeat: no-repeat;
}

/* 10.新着レビューボタン end */
/* 11.「1行1ボタン(長い)」のアイコン start */
.icon_plus:not(.tdR):not(.title_lead),
.icon_minus:not(.tdR):not(.title_lead) {
  display: block;
  position: absolute;
  top: 50%;
  right: 4vw;
  width: 6.14vw;
  height: 6.14vw;
  transform: translateY(-50%);
  background: #a1a1a3;
  content: "";
}
.icon_plus:not(.tdR):not(.title_lead)::before, .icon_plus:not(.tdR):not(.title_lead)::after,
.icon_minus:not(.tdR):not(.title_lead)::before,
.icon_minus:not(.tdR):not(.title_lead)::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3.2vw;
  height: 1px;
  transform: translate(-50%, -50%);
  background: #fff;
  content: "";
}
.icon_plus:not(.tdR):not(.title_lead)::after,
.icon_minus:not(.tdR):not(.title_lead)::after {
  transform: translate(-50%, -50%) rotate(-90deg);
  transition-duration: .3s;
}

.icon_minus:not(.tdR):not(.title_lead)::after {
  transform: translate(-50%, -50%) rotate(0);
}

.icon_check a::after,
.icon_check span::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 4vw;
  width: 6.14vw;
  height: 6.14vw;
  transform: translateY(-50%);
  background: #a1a1a3;
  content: "";
}

.icon_plus2,
.icon_minus2 {
  position: relative;
  height: 34px;
  line-height: 34px;
}

.icon_plus2 > span,
.icon_minus2 > span {
  display: block;
}

.icon_plus2 > span::after,
.icon_minus2 > span::after {
  transition-duration: .2s;
}

.icon_check2 > a:after,
.icon_check2 > span:after {
  position: relative;
  margin-top: -26px;
  margin-right: 10px;
  margin-left: auto;
  display: block;
  height: 21px;
  width: 21px !important;
  content: ' ';
  background-position: center center;
  background-repeat: no-repeat;
}

.icon_plus2 > a:after,
.icon_plus2 > span:after {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(-135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  top: 45%;
  right: 4vw;
  width: 2.14vw;
  height: 2.14vw;
}

.icon_minus2 > a:after,
.icon_minus2 > span:after {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  right: 4vw;
  width: 2.14vw;
  height: 2.14vw;
}

/* 11.「1行1ボタン(長い)」のアイコン end */
/* 12.1行1ボタン(長い) start */
.bt_long {
  padding: 0 0 10px 0;
  margin: 0 auto;
  display: block;
  width: 300px !important;
  overflow: auto;
}

.bt_long a {
  display: block;
  width: auto !important;
  height: 38px;
  line-height: 38px;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  -webkit-border-radius: 19px;
  -moz-border-radius: 19px;
  border-radius: 19px;
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  color: #000;
  text-shadow: #FFF 0px -1px 1px;
  background-color: #F5F5F5;
  /**/
  background-image: -moz-linear-gradient(top, #F5F5F5 0%, #BFBFBF 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #F5F5F5), color-stop(100%, #BFBFBF));
}

/* 12.1行1ボタン(長い) end */
/* 13.営業日カレンダーボタン start */
.bt_category .bt_calendar a {
  color: #FFF;
  background-image: -moz-linear-gradient(top, #D4B98C 0%, #C2965A 49%, #AD8040 50%, #896634 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #D4B98C), color-stop(49%, #C2965A), color-stop(50%, #AD8040), color-stop(100%, #896634));
  background-position: right center;
  background-repeat: no-repeat;
}

/* 13.営業日カレンダーボタン end */
/* 14.カテゴリーツリーボタン start */
.bt_category p a {
  display: block;
  width: auto !important;
  height: 40px;
  line-height: 40px;
  font-size: 20px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}

/* 14.カテゴリーツリーボタン end */
/* 15.エラーメッセージ start */
.box_error {
  margin: 4vw 5.87vw 5.34vw;
  padding: 4vw 2.67vw;
  background: #ffeaea;
  color: #ec2626;
}

/* 15.エラーメッセージ end */
/* 16.1行1ボタン(短い) start */
.btBox1 {
  margin: 10.67vw 5.87vw 0;
}

.btBox1 p a,
.btBox1 p input,
.btBox1 p button {
  display: block;
  position: relative;
  width: 100%;
  height: 14.67vw;
  border: 0;
  border-radius: 0;
  background: #000;
  color: #fff;
  font-size: 3.74vw;
  line-height: 14.67vw;
  text-align: center;
  box-sizing: border-box;
  cursor: pointer;
}

/* 16.1行1ボタン(短い) end */
/* 17.表組み用見出し start */
.tbl1 {
  margin: 0 5.87vw;
}

.tbl1 .title {
  margin-bottom: 4vw;
  padding: 4vw;
  background: #000;
  color: #fff;
}

/* 17.表組み用見出し end */
/* 18.表組み用 start */
.tbl1 tr {
  display: flex;
  flex-wrap: wrap;
}

.tbl1 td {
  display: block;
  width: 100%;
  padding: 1.34vw;
  font-size: 3.74vw;
  box-sizing: border-box;
}

.tbl1 .tdL {
  padding-bottom: 0;
  font-weight: bold;
}
.tbl1 .tdL br {
  display: none;
}

.tbl1 .tdR {
  padding-bottom: 4vw;
}

.tbl1 tr:last-child .tdR {
  padding-bottom: 0;
}

.tbl1 .tdR input[type="text"],
.tbl1 .tdR input[type="tel"],
.tbl1 .tdR input[type="email"],
.tbl1 .tdR input[type="password"] {
  width: 100% !important;
}

/* 18.表組み用 end */
/* 19.注釈用テキスト（赤）:ポイント１つ下げる start */
.tex_s_Red {
  color: #ec2626;
}

.tex_xs_Red {
  font-size: 2.94vw;
  color: #ec2626;
}

.txt_point {
  color: #ec2626;
}

/* 19.注釈用テキスト（赤）:ポイント１つ下げる end */
/* 20.注釈用テキスト（黒）:ポイント１つ下げる start */
.tex_s {
  font-size: 3.2vw;
}

.tex_xs {
  font-size: 2.94vw;
}

.tex_xxs {
  font-size: 2.67vw;
}

.txt_supplement {
  color: #787878;
  font-size: 3.2vw;
}

/* 20.注釈用テキスト（黒）:ポイント１つ下げる end */
/* 21.入力項目タイトル start */
label, dt {
  font-weight: bold;
}

label .kome,
dt .kome {
  color: red;
  font-size: 4.27vw;
  font-weight: bold;
  vertical-align: sub;
}

/* 21.入力項目タイトル end */
/* 22.右矢印ボタン（コンテンツエリア） start*/
.bt_right {
  display: block;
  margin: 0 auto;
  width: 100%;
  overflow: hidden;
}

.bt_right input {
  height: 9.34vw;
  margin-top: 2.14vw;
  background: #d2d2d9;
  color: #000;
}

.bt_right span {
  display: block;
  position: relative;
}

/* 22.右矢印ボタン（コンテンツエリア） end*/
/* 23.左矢印ボタン（ヘッダー/フッター用）start */
.bt_left {
  padding: 0 0 0 10px;
  display: block;
  margin: 0;
  width: 60px !important;
  /*overflow: auto;*/
}

.bt_left a {
  display: block;
  width: auto !important;
  line-height: 30px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
  text-align: center;
  border-right: 1px solid #31628B;
  text-shadow: #000 0px 1px 1px;
  background-color: #4C8AB3;
  background-image: -moz-linear-gradient(top, #275A86 0%, #4C8AB3 5%, #79A7C6 49%, #3A729C 50%, #2C5278 95%, #8DA2B6 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #275A86), color-stop(5%, #4C8AB3), color-stop(49%, #79A7C6), color-stop(50%, #3A729C), color-stop(95%, #2C5278), color-stop(100%, #8DA2B6));
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  text-indent: -10px;
}

.bt_left a::after {
  position: relative;
  margin-top: -15px;
  margin-left: -5px;
  margin-right: auto;
  display: block;
  height: 15px;
  width: 10px !important;
  content: ' ';
  -moz-transform: skew(35deg);
  -webkit-transform: skew(35deg);
  background-color: #3A729C;
  background-image: -moz-linear-gradient(top, #3A729C 0%, #2C5278 90%, #8DA2B6 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #3A729C), color-stop(90%, #2C5278), color-stop(100%, #8DA2B6));
  border-left: 1px solid #8DA2B6;
}

.bt_left a::before {
  float: left;
  margin-left: -5px;
  display: block;
  height: 15px;
  width: 10px !important;
  content: ' ';
  -moz-transform: skew(-35deg);
  -webkit-transform: skew(-35deg);
  background-color: #4C8AB3;
  background-image: -moz-linear-gradient(top, #275A86 0%, #4C8AB3 10%, #79A7C6 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #275A86), color-stop(10%, #4C8AB3), color-stop(100%, #79A7C6));
  border-left: 1px solid rgba(0, 0, 0, 0.5);
}

/* 23.左矢印ボタン（ヘッダー/フッター用）end */
/* 24.角丸シキメン（グレー）start */
.sq_rad_gray {
  background-color: #EBEBEB;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
}

/* 24.角丸シキメン（グレー）end */
/* 25.X・Y方向overflow start */
.is-overflow-x {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.is-overflow-y {
  max-height: 100vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  box-sizing: border-box;
}

/* 商品詳細 非表示エラーメッセージ */
.product_error,
.pr
 {
  margin: 0px 0px 0px 5.87vw;
  text-align: left;
}

/* 25.X・Y方向overflow end */
/* 26.バナー領域 start */
.box_banner,
.pr {
  margin: 9.34vw 5.87vw;
  text-align: center;
}
.box_banner:last-child,
.pr:last-child {
  margin-bottom: 0;
}

/* 26.バナー領域 end */
/* 27.ボタン start */
.button,
.box_button .button {
  display: block;
  position: relative;
  width: 100%;
  height: 10.67vw;
  border: 0;
  border-radius: 0;
  background: #000;
  color: #fff;
  font-family: Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 3.74vw;
  text-align: center;
  line-height: 10.67vw;
  box-sizing: border-box;
  cursor: pointer;
}

.button.button_decision {
  height: 14.67vw;
  line-height: 14.67vw;
}

.button.button_next {
  height: 14.67vw;
  line-height: 14.67vw;
}
.button.button_next::before {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #fff;
  content: "";
  right: 4vw;
  width: 2.14vw;
  height: 2.14vw;
}

.button.button_prev {
  background: #d2d2d9;
  color: #000;
}
.button.button_prev::before {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  left: 5.34vw;
  width: 2.14vw;
  height: 2.14vw;
}
.button.button_prev:not(.button_decision) {
  font-size: 3.2vw;
}
.button.button_prev:not(.button_decision)::before {
  width: 1.6vw;
  height: 1.6vw;
}

.button_small,
.box_button .button_small {
  height: 10.67vw;
  font-size: 2.94vw;
  line-height: 10.67vw;
}

.button_white,
.box_button .button_white {
  border: 1px solid #8e8e8e;
  background: #fff;
  color: #000;
  margin-bottom: 8px;
}

.button_delete {
  background: #787878;
  font-size: 2.94vw;
}

.button_sub,
.box_button .button_sub {
  background: #d2d2d9;
  color: #000;
}
.button_sub.button_next::before,
.box_button .button_sub.button_next::before {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
}

.box_button {
  margin: 5.34vw 5.87vw;
}
.box_button.floating {
  position: sticky;
  position: -webkit-sticky;
  bottom: 0;
  left: 0;
  margin-right: 0 !important;
  margin-left: 0 !important;
  padding: 2.67vw 5.87vw;
  background: #fff;
}
.box_button .button {
  margin-top: 2.67vw;
}
.box_button .multiple {
  margin-top: 2.67vw;
}

/* 横並び */
.multiple {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.multiple::after {
  display: none;
}
.multiple .button {
  width: 49%;
  margin-top: 0;
}

/* 27.ボタン end */
/* form */
.box_form_inner {
  position: relative;
}
.box_form .text {
  margin: 4vw 5.87vw;
}
.box_form .text_center {
  text-align: center;
}
.box_form .text a {
  color: #000;
  text-decoration: underline;
}
.box_form .box_button {
  margin: 10.67vw 5.87vw 18.67vw;
}

.form {
  margin-bottom: 8vw;
}
.form .label {
  margin-bottom: 4vw;
  padding: 2.67vw 5.87vw;
  border-top: 1px solid #d2d2d9;
  background: #f2f2f7;
  font-size: 4.27vw;
}
.form .label span:not(.ico_required) {
  display: block;
  font-size: 3.2vw;
}
.form .label .ico_required {
  margin-left: 1.34vw;
}
.form_inner {
  margin: 0 5.87vw;
  font-size: 3.74vw;
}
.form_inner + .form_inner {
  margin-top: 5.34vw;
}
.form_inner input[type="text"],
.form_inner input[type="email"],
.form_inner input[type="password"],
.form_inner input[type="tel"] {
  width: 100%;
}
.form_inner .checked {
  color: #c0595d;
}
.form dt {
  color: #000;
  font-size: 3.2vw;
}
.form dd:not(:last-child) {
  margin-bottom: 4vw;
}
.form .type_radio {
  padding-top: 0;
  padding-bottom: 0;
}
.form_text {
  margin-top: 2.14vw;
  font-size: 3.2vw;
}
.form_text02 {
  font-size: 3.74vw;
}
.form .reg {
  margin-top: 2.14vw;
  color: #787878;
  font-size: 3.2vw;
}
.form .search_zip {
  margin-top: 4vw;
  color: #787878;
}
.form .search_zip .button {
  height: 9.34vw;
  margin-top: 2.14vw;
}
.form .input-tel {
  display: flex;
  justify-content: space-between;
}
.form .input-tel input {
  width: 28.54vw;
}
.form .input-date {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.form .input-date .select_wrap {
  box-sizing: border-box;
  width: 30%;
}
.form .input-date .select_wrap:first-child {
  width: 36%;
}
.form .edit_group {
  display: flex;
  justify-content: flex-end;
  margin-top: 2.67vw;
}
.form .list_inline {
  display: flex;
  flex-wrap: wrap;
  margin-top: 5.34vw;
}
.form .list_inline_2 {
  width: calc(50% - 1.34vw);
}
.form .list_inline_2:nth-child(odd) {
  margin-right: 2.67vw;
}
.form .list_inline_2:nth-child(n+3) {
  margin-top: 1.34vw;
}
.form .list_inline_3 {
  width: 33.33%;
}
.form .list_inline_3:nth-child(n+4) {
  margin-top: 4.8vw;
}
.form .list_inline .type_check {
  margin-top: -1.34vw;
}
.form .list_block {
  margin-top: 5.34vw;
}
.form .list_block li:not(:first-child) {
  margin-top: 2.67vw;
}
.form .list_block_thin li:not(:first-child) {
  margin-top: 1.34vw;
}
.form .check_house_number {
  margin-top: 2.67vw;
  line-height: 1;
}
.form input.error,
.form .select_wrap.error select {
  background: #ffeaea;
}
.form .error_message {
  margin-top: 2.14vw;
  color: #ec2626;
}

/* アイコン */
.ico_required {
  display: inline-block;
  width: 8.8vw;
  margin-right: 1.34vw;
  padding: 0.54vw 0;
  background: #f05151;
  color: #fff;
  font-size: 2.67vw;
  text-align: center;
  vertical-align: 0.54vw;
}

/* アドレス帳追加 */
.edit_address {
  box-sizing: border-box;
  margin: 5.34vw 5.87vw;
  padding: 2.67vw;
  border: #f2f2f7 3px solid;
}
.edit_address p {
  margin-bottom: 1.34vw;
  font-weight: bold;
  text-align: center;
}
.edit_address .box_button {
  margin: 0;
}

/* jsバリデーションエラー */
.formError {
  z-index: auto;
}
.formError .formErrorContent {
  margin-top: 2.67vw;
}

/****************************************************************/
/*  ヘッダー
*****************************************************************/
/* ヘッダー start */
.tagline {
  padding: 1.07vw 3.74vw;
  background: #000;
  color: #fff;
  font-size: 2.67vw;
  line-height: 1;
}

.header {
  position: fixed;
  right: 0;
  width: 100vw;
  transition: right .4s;
  background: #fff;
  z-index: 15;
}
.header_logo {
  height: 5.07vw;
  padding: 4.8vw 5.87vw 4.54vw;
}
.header_logo img {
  height: 5.07vw;
}
.header ul {
  display: box;
  display: flex;
  position: absolute;
  bottom: 0;
  justify-content: flex-end;
  width: 100vw;
}
.header li {
  width: 11.2vw;
  height: 14.67vw;
}
.header a {
  display: block;
  position: relative;
  height: 100%;
  color: transparent;
  width:50%;
}
.header a::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
}

.button_menu::before {
  background-size: 5.34vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  width: 5.34vw;
  height: 5.07vw;
  background-image: url("../images_smt/icon/ico_menu_b.png");
}
.is-nav-open .button_menu::before {
  opacity: 0;
}

.button_search::before {
  background-size: 5.6vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  width: 5.6vw;
  height: 5.6vw;
  background-image: url("../images_smt/icon/ico_search_b.png");
}

.button_cart::before {
  background-size: 5.34vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  width: 5.34vw;
  height: 5.6vw;
  background-image: url("../images_smt/icon/ico_cart_b.png");
}

.cart_num {
  display: flex;
  position: absolute;
  top: 2.67vw;
  right: 0;
  box-sizing: border-box;
  justify-content: center;
  min-width: 4.27vw;
  height: 4.27vw;
  padding: 0 0.8vw;
  border: #fff 1px solid;
  border-radius: 2.14vw;
  background: #f47d7d;
  color: #fff;
  font-size: 2.67vw;
  line-height: 4.27vw;
}

/* 簡易ヘッダ start */
.header_simple {
  width: 100vw;
  background: #fff;
}
.header_simple_logo {
  height: 5.07vw;
  padding: 4vw;
  text-align: center;
}
.header_simple_logo img {
  height: 5.07vw;
}

/* 簡易ヘッダ end */
/* ヘッダー検索 start */
.header_search {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  padding: 4vw 5.87vw;
  background: #f2f2f7;
}

.suggest {
  padding-top: 1.34vw;
  border: 1px solid #8e8e8e;
  border-top: 0;
  background: #fff;
}
.global_nav .suggest {
  margin: -4vw 5.87vw 5.34vw;
}
.top_search_form .suggest {
  width: 100%;
  border-color: #d2d2d9;
}
.refine_search .suggest {
  border-color: #d2d2d9;
}
.suggest ul {
  display: block;
  position: static;
  width: auto;
}
.suggest li {
  width: 100%;
  height: auto;
}
.suggest a {
  display: block;
  padding: 2.67vw 4vw;
  color: #000;
  line-height: 1.35;
}

/* ヘッダー検索 end */
/*
ヘッダお知らせ
-----------------------------------*/
#header_notice {
  font-weight: bold;
  font-size: 80%;
  padding: 2.67vw;
  background: #f2f2f7;
  text-align: center;
}
#header_notice a {
  color: #2363d9;
  text-decoration: underline;
  width: 100%;
}

/* ヘッダー end */
/****************************************************************/
/*  フッタ
*****************************************************************/
/* フッタ start */
.footer {
  margin-top: 18.67vw;
}
.footer.footer_top {
  margin-top: 0;
}

/*　フッタお問い合わせ start */
.footer_inquiry {
  padding: 6.67vw 9.34vw 5.34vw;
  background: #f2f2f7;
}
.footer_inquiry p {
  margin-bottom: 2.67vw;
  font-size: 3.74vw;
  font-weight: bold;
}
.footer_inquiry p:not(:first-child) {
  margin-top: 6.67vw;
}
.footer_inquiry ul::after {
  display: none;
}
.footer_inquiry li {
  margin-top: -1px;
}
.footer_inquiry a {
  display: flex;
  position: relative;
  align-items: center;
  width: 100%;
  height: 12.27vw;
  padding-left: 16.8vw;
  border: 1px solid #d2d2d9;
  background: #fff;
  color: #787878;
  font-size: 3.74vw;
  box-sizing: border-box;
}
.footer_inquiry a::before {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  content: "";
}
.footer_inquiry a::after {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #8e8e8e;
  content: "";
  right: 4vw;
  width: 2.14vw;
  height: 2.14vw;
}
.footer_inquiry_tel::before {
  background-size: 3.74vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  left: 7.2vw;
  width: 3.74vw;
  height: 3.74vw;
  background-image: url("../images_smt/icon/ico_tel_g.png");
}
.footer_inquiry_mail::before {
  background-size: 4.8vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  left: 6.67vw;
  width: 4.8vw;
  height: 4.5vw;
  background-image: url("../images_smt/icon/ico_mail_g.png");
}
.footer_inquiry_guide::before {
  background-size: 3.47vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  left: 7.47vw;
  width: 3.47vw;
  height: 3.74vw;
  background-image: url("../images_smt/icon/ico_cart_g.png");
}
.footer_inquiry_faq::before {
  background-size: 2.67vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  left: 8vw;
  width: 2.67vw;
  height: 4vw;
  background-image: url("../images_smt/icon/ico_faq_g.png");
}
.footer_inquiry p.order_desk_info {
  margin: 4vw 0 0;
  color: #787878;
  font-size: 2.67vw;
}

/*　フッタお問い合わせ end */
/* フッタメニュー start */
.footer_wrap {
  padding: 0 0 6.67vw;
  background: #000;
  color: #fff;
}
.footer_wrap a {
  color: #fff;
}

.footer_nav_list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.footer_nav_list li {
  width: 50%;
  border-bottom: 1px solid #636366;
  box-sizing: border-box;
}
.footer_nav_list li:nth-child(odd) {
  border-right: 1px solid #636366;
}
.footer_nav_list li:nth-child(odd) a {
  padding-left: 9.34vw;
}
.footer_nav_list li:nth-child(even) a {
  padding-right: 9.34vw;
}
.footer_nav_list a {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 12vw;
  padding: 4vw 5.34vw 3.47vw;
  font-size: 3.47vw;
  font-weight: bold;
  line-height: 1.2;
  box-sizing: border-box;
}

/* フッタメニュー end */
/* フッタSNS start */
.footer_sns {
  display: flex;
  justify-content: center;
  margin: 5.34vw 0;
}
.footer_sns li:not(:first-child) {
  margin-left: 1.34vw;
}
.footer_sns a {
  display: block;
  position: relative;
  width: 10.67vw;
  height: 10.67vw;
  color: transparent;
  overflow: hidden;
}
.footer_sns a::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6.67vw;
  height: 6.67vw;
  transform: translate(-50%, -50%);
  content: "";
}
.footer_sns .fb::before {
  background-size: 6.67vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  background-image: url("../images_smt/icon/ico_fb_w.png");
}
.footer_sns .inst::before {
  background-size: 6.67vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  background-image: url("../images_smt/icon/ico_inst_w.png");
}
.footer_sns .line::before {
  background-size: 6.67vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  background-image: url("../images_smt/icon/ico_line_w.png");
}
.footer_sns .youtube::before {
  background-size: 7.74vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  width: 7.74vw;
  height: 5.34vw;
  background-image: url("../images_smt/icon/ico_youtube_w.png");
}
.footer_sns .tw::before {
  background-size: 6.67vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  height: 5.34vw;
  background-image: url("../images_smt/icon/ico_tw_w.png");
}

/* フッタSNS end */
/* 所属協会・その他メニュー start */
.box_footer {
  display: flex;
  padding: 0 9.34vw;
  font-size: 2.94vw;
}
.box_footer .group {
  width: 50%;
  padding-right: 5.34vw;
  box-sizing: border-box;
}
.box_footer .image {
  display: block;
  max-width: 17.87vw;
  margin-bottom: 2.14vw;
}
.box_footer ul {
  width: 50%;
}
.box_footer li {
  padding-left: 3.47vw;
}
.box_footer li:not(:last-child) {
  margin-bottom: 5.34vw;
}

/* 所属協会・その他メニュー end */
.footer_logo {
  height: 4.54vw;
  margin: 5.34vw 0 4vw;
  text-align: center;
}
.footer_logo img {
  width: auto;
  height: 4.54vw;
}

.footer .box_button {
  margin: 0 9.34vw 2.67vw;
}

.footer .button_pc {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 8vw;
  background: #a1a1a3;
  color: #fff;
  font-size: 2.67vw;
}

.copyright {
  display: block;
  margin-bottom: 4vw;
  font-size: 2.67vw;
  font-weight: bold;
  text-align: center;
}

/* フッタ end */
/* 簡易フッタ start */
.footer_simple {
  margin-top: 13.34vw;
}
.footer_simple .copyright {
  margin: 0;
  padding: 2.67vw 0;
  background: #f2f2f7;
}

/* 簡易フッタ end */
/****************************************************************/
/*  ナビゲーション
*****************************************************************/
.container {
  position: relative;
  right: 0;
  min-width: 100%;
  max-width: 100%;
  transition: right .4s;
  z-index: 0;
}
.is-nav-open .container {
  position: fixed;
  right: 80vw;
}

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  z-index: 15;
}

.button_nav_close {
  background-size: 5.6vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  position: fixed;
  top: 0;
  left: 6.67vw;
  width: 5.6vw;
  height: 5.6vw;
  transition: opacity .4s;
  border: 4vw solid transparent;
  background-image: url("../images_smt/icon/ico_close_w.png");
  color: transparent;
  opacity: 0;
  z-index: 1;
  pointer-events: none;
}
.is-nav-open .button_nav_close {
  opacity: 1;
  z-index: 16;
  pointer-events: auto;
}

.global_nav {
  position: fixed;
  top: 0;
  left: 100vw;
  width: 80vw;
  transition-duration: .4s;
  background: #fff;
  z-index: 20;
  overflow-x: hidden;
}
.is-nav-open .global_nav {
  left: 20vw;
}
.global_nav > .is-overflow-y {
  padding-top: 4vw;
}
.global_nav .box_button {
  margin: 0 5.87vw 2.67vw;
}
.global_nav .box_freeword {
  margin: 0 5.87vw 4vw;
}

/* ログイン済みメニュー start */
.member_menu .box_button {
  display: flex;
  justify-content: space-between;
}
.member_menu .button {
  width: calc((100% - 1.34vw) /2);
}
.global_nav .member_menu .button.button_logout, .global_nav .member_menu .button.button_mypage {
  margin-top: 0;
}
.member_menu .button_mypage {
  background: #787878;
}
.member_menu .button_logout {
  border: 1px solid #000;
  background: #fff;
  color: #000;
  box-sizing: border-box;
}
.member_menu ul {
  margin: -1.34vw 5.87vw 2.67vw;
}
.member_menu ul li {
  margin-top: 1px;
}
.member_menu ul a {
  display: block;
  padding: 2.67vw 5.34vw;
  background: #787878;
  color: #fff;
}

/* ログイン済みメニュー end */
/* メインナビ start */
.nav_primary {
  border-top: 1px solid #8e8e8e;
}
.nav_primary li {
  border-bottom: 1px solid #8e8e8e;
}
.nav_primary a {
  display: flex;
  position: relative;
  align-items: center;
  width: 100%;
  height: 14.4vw;
  padding: 0 11.74vw 0 5.87vw;
  color: #000;
  font-size: 3.74vw;
  box-sizing: border-box;
}
.nav_primary a::after {
  position: absolute;
  top: 50%;
  right: 4vw;
  width: 2.14vw;
  height: 2.14vw;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
}
.nav_primary .nav_primary_all {
  font-weight: bold;
}

.nav_more {
  position: absolute;
  top: 0;
  left: 100%;
  width: 100%;
  height: 100vh;
  transition-duration: .4s;
  background: #fff;
  z-index: 50;
}

/* メインナビ end */
/* サブナビ start */
.nav_secondary {
  background: #f2f2f7;
}
.nav_secondary li:not(:last-child) {
  border-bottom: 1px solid #fff;
}
.nav_secondary a {
  display: flex;
  position: relative;
  align-items: center;
  width: 100%;
  height: 10.67vw;
  padding: 0 11.74vw 0 5.87vw;
  color: #787878;
  box-sizing: border-box;
}
.nav_secondary a::after {
  position: absolute;
  top: 50%;
  right: 4vw;
  width: 1.6vw;
  height: 1.6vw;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #787878;
  content: "";
}

/* サブナビ end */
/* 戻る start */
.button_nav_back {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 14.4vw;
  background: #f2f2f7;
  color: #787878;
  font-size: 3.74vw;
  font-weight: bold;
  box-sizing: border-box;
}
.button_nav_back::after {
  position: absolute;
  top: 50%;
  left: 4vw;
  width: 1.6vw;
  height: 1.6vw;
  transform: translate(-50%, -50%) rotate(-45deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #787878;
  content: "";
}

/* 戻る end */
/* ナビゲーションお問い合わせ start */
.menu_inquiry {
  padding: 5.34vw 5.87vw 8vw;
  background: #000;
  color: #fff;
  font-size: 3.74vw;
  line-height: 1.3;
  text-align: center;
  position: relative;
      z-index: 10;
}
.menu_inquiry p {
  margin-bottom: 4vw;
}
.menu_inquiry .button {
  height: 11.47vw;
  margin-top: 2.67vw;
  border: 1px solid #fff;
}
.menu_inquiry .button::before {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  content: "";
}
.menu_inquiry .button_tel::before {
  background-size: 3.74vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  left: 4.54vw;
  width: 3.74vw;
  height: 3.74vw;
  background-image: url("../images_smt/icon/ico_tel_w.png");
}
.menu_inquiry .button_mail::before {
  background-size: 4.8vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  left: 4vw;
  width: 4.8vw;
  height: 3.2vw;
  background-image: url("../images_smt/icon/ico_mail_w.png");
}

/* ナビゲーションお問い合わせ end */
/****************************************************************/
/*  キーワード検索
*****************************************************************/
.box_freeword {
  position: relative;
}
.box_freeword::before {
  background-size: 7.2vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  display: block;
  position: absolute;
  top: 50%;
  right: 4vw;
  width: 7.2vw;
  height: 7.2vw;
  transform: translateY(-50%);
  background-image: url("../images_smt/icon/ico_search_b.png");
  content: "";
}
.box_freeword .free_word_text {
  width: 100%;
  height: auto;
  padding: 3.2vw 14.67vw 3.74vw 4vw;
  border: 1px solid #8e8e8e;
  border-radius: 0;
  line-height: 1.4;
  box-sizing: border-box;
}
.box_freeword .free_word_button {
  position: absolute;
  top: 0;
  right: 0;
  width: 14.67vw;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

/****************************************************************/
/*  テキストメニュー
*****************************************************************/
/* textmenu start */
.textmenu {
  margin: 5.34vw 5.87vw;
}

.textmenu li:not(:first-child) {
  margin-top: 1.34vw;
}

.textmenu a {
  display: block;
  position: relative;
  padding: 2.67vw;
  background: #d2d2d9;
  color: #000;
  text-align: center;
}
.textmenu a::before {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  right: 4vw;
  width: 2.14vw;
  height: 2.14vw;
}

.textmenu li.blue a {
  color: #FFF;
  background-color: #4F8BE0;
  background-image: url(../images_smt/w_ar.png), -moz-linear-gradient(top, #90B6EB 0%, #4F8BE0 49%, #2C74DA 50%);
  background-image: url(../images_smt/w_ar.png), -webkit-gradient(linear, right top, right bottom, color-stop(0%, #90B6EB), color-stop(49%, #4F8BE0), color-stop(50%, #2C74DA));
  border: solid 1px #FFF;
}

.textmenu li.red a {
  color: #FFF;
  background-color: #BD4455;
  background-image: url(../images_smt/w_ar.png), -moz-linear-gradient(top, #D9959F 0%, #BD4455 49%, #A40017 50%);
  background-image: url(../images_smt/w_ar.png), -webkit-gradient(linear, right top, right bottom, color-stop(0%, #D9959F), color-stop(49%, #BD4455), color-stop(50%, #A40017));
  border: solid 1px #FFF;
}

.textmenu li.black a {
  color: #FFF;
  background-color: #333333;
  background-image: url(../images_smt/w_ar.png), -moz-linear-gradient(top, #999999 0%, #333333 49%, #000000 50%);
  background-image: url(../images_smt/w_ar.png), -webkit-gradient(linear, right top, right bottom, color-stop(0%, #999999), color-stop(49%, #333333), color-stop(50%, #000000));
  border: solid 1px #FFF;
}

.textmenu li.plane,
.textmenu li.plane a {
  color: #000;
  line-height: 33px;
  font-size: 12px;
  background-color: #FFF;
  border-bottom: solid 1px #CCC;
  padding-left: 10px;
}

/* textmenu end */
/* textmenu1 start */
.textmenu1 {
  margin: 5.34vw 5.87vw;
}

.textmenu1 li:not(:first-child) {
  margin-top: 1.34vw;
}

.textmenu1 a {
  display: block;
  position: relative;
  padding: 2.67vw;
  background: #d2d2d9;
  color: #000;
  text-align: center;
}
.textmenu1 a::before {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  right: 4vw;
  width: 2.14vw;
  height: 2.14vw;
}

.textmenu1 li.main a {
  color: #FFF;
  background-color: #D66B73;
  background-image: url(../images_smt/w_ar.png), -moz-linear-gradient(top, #D66B73 0%, #CA414C 49%, #BD1522 50%);
  background-image: url(../images_smt/w_ar.png), -webkit-gradient(linear, right top, right bottom, color-stop(0%, #D66B73), color-stop(49%, #CA414C), color-stop(50%, #BD1522));
  background-position: right center;
  background-repeat: no-repeat;
}

/* textmenu1 end */
/* textmenu2 start */
.textmenu2 {
  margin: 5.34vw 0;
}

.textmenu2 li:first-child a {
  border-top: 1px solid #d2d2d9;
}

.textmenu2 a {
  display: block;
  position: relative;
  padding: 4vw 10.67vw 4vw 4vw;
  border-bottom: 1px solid #d2d2d9;
  background: #fff;
  color: #000;
  font-size: 3.74vw;
}
.textmenu2 a::before {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  right: 4vw;
  width: 2.14vw;
  height: 2.14vw;
}

/* textmenu2 end */
/* box_link start */
.box_link {
  margin: 8vw 5.87vw 10.67vw;
}
.box_link a {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  height: 10.67vw;
  padding: 0 6.67vw;
  border: 1px solid #8e8e8e;
  color: #000;
  text-align: center;
}
.box_link a:not(:first-child) {
  margin-top: 1.34vw;
}
.box_link a::after {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  right: 4vw;
  width: 1.6vw;
  height: 1.6vw;
}

/* box_link end */
/****************************************************************/
/*  各種ボタン
*****************************************************************/
/* トップページへ start */
.bt_top a,
.bt_top input {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border: 0;
  background: #000;
  color: #fff;
  font-size: 3.74vw;
  cursor: pointer;
}

/* トップページへ end */
/* 閉じる start */
.bt_close a,
.bt_close input {
  display: block;
  position: relative;
  width: 100%;
  min-height: 10.67vw;
  margin-top: 8vw;
  background: #d2d2d9;
  color: #000;
  font-weight: normal;
  line-height: 10.67vw;
  text-align: center;
  cursor: pointer;
}

/* 閉じる end */
/* 戻る（フォーム用）start */
.bt_fback a,
.bt_fback input {
  width: 100%;
  border: 0;
  background: #d3d3d3;
  color: #000;
  font-size: 3.2vw;
  text-align: center;
}

/* 戻る（フォーム用） end */
/* 確認する（フォーム用）start */
.bt_confirm a,
.bt_confirm input {
  border: 0;
  background: #000;
  color: #fff;
  font-size: 3.74vw;
  cursor: pointer;
}

/* 確認する（フォーム用） end */
/* 送信する（フォーム用） start*/
.bt_submit a,
.bt_submit input,
.bt_submit button {
  display: block;
  position: relative;
  width: 100%;
  height: 14.67vw;
  border: 0;
  border-radius: 0;
  background: #000;
  color: #fff;
  font-size: 3.74vw;
  line-height: 14.67vw;
  text-align: center;
  box-sizing: border-box;
  cursor: pointer;
}

/* 送信する（フォーム用） end */
/* ログインする（フォーム用） start*/
.bt_login a,
.bt_login input {
  color: #fff;
  text-shadow: #732F4E 0px -1px 1px;
  background-color: #ED74AA;
  background-image: -moz-linear-gradient(top, #ED74AA 49%, #DB1560 50%, #CC135B 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(49%, #ED74AA), color-stop(50%, #DB1560), color-stop(100%, #CC135B));
  border: solid 1px rgba(0, 0, 0, 0.05);
  cursor: pointer;
}

/* ログイン（フォーム用） end */
/* マイページトップへ（フォーム用） start*/
.bt_fmypage a,
.bt_fmypage input {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border: 0;
  background: #000;
  color: #fff;
  font-size: 3.74vw;
  cursor: pointer;
}
.bt_fmypage a::before,
.bt_fmypage input::before {
  display: none;
}

/* マイページトップ（フォーム用） end */
/* 次へ start*/
.bt_next {
  padding: 0 10px 0 0;
  display: block;
  margin-right: 5px;
  width: 60px !important;
  /*overflow: auto;*/
  float: right;
}

.bt_next a {
  display: block;
  width: auto !important;
  line-height: 30px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
  text-align: center;
  text-shadow: #000 0px 1px 1px;
  border-right: 1px solid #31628B;
  background-color: #4C8AB3;
  background-image: -moz-linear-gradient(top, #275A86 0%, #4C8AB3 5%, #79A7C6 49%, #3A729C 50%, #2C5278 95%, #8DA2B6 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #275A86), color-stop(5%, #4C8AB3), color-stop(49%, #79A7C6), color-stop(50%, #3A729C), color-stop(95%, #2C5278), color-stop(100%, #8DA2B6));
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  text-indent: 10px;
}

.bt_next a::after {
  position: relative;
  margin-top: -15px;
  margin-right: -5px;
  margin-left: auto;
  display: block;
  height: 15px;
  width: 10px !important;
  content: ' ';
  -moz-transform: skew(-35deg);
  -webkit-transform: skew(-35deg);
  background-color: #3A729C;
  background-image: -moz-linear-gradient(top, #3A729C 0%, #2C5278 90%, #8DA2B6 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #3A729C), color-stop(90%, #2C5278), color-stop(100%, #8DA2B6));
  border-right: 1px solid #8DA2B6;
}

.bt_next a::before {
  float: right;
  margin-right: -5px;
  display: block;
  height: 15px;
  width: 10px !important;
  content: ' ';
  -moz-transform: skew(35deg);
  -webkit-transform: skew(35deg);
  background-color: #4C8AB3;
  background-image: -moz-linear-gradient(top, #275A86 0%, #4C8AB3 10%, #79A7C6 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #275A86), color-stop(10%, #4C8AB3), color-stop(100%, #79A7C6));
  border-right: 1px solid rgba(0, 0, 0, 0.5);
}

/* 次へ end */
/* lightbox start*/
.lightbox {
  position: absolute;
  left: -9999px;
  top: 0;
  cursor: default;
  z-index: 100;
}

.light {
  position: absolute;
  left: 0;
  top: 0;
}

.box {
  position: absolute;
  left: 0;
  top: 0;
}

a:active .lightbox,
a:focus .lightbox {
  left: 0;
  width: 100% !important;
  height: 100%;
}

a:active .lightbox .light,
a:focus .lightbox .light {
  background: #000;
  width: 100% !important;
  height: 100%;
  filter: alpha(opacity=90);
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=90);
  opacity: 0.90;
}

a:active .lightbox .box,
a:focus .lightbox .box {
  width: 100% !important;
  text-align: center;
  margin-top: 20px;
}

a:active .lightbox .box img,
a:focus .lightbox .box img {
  border: 1px solid #aaa;
  margin: 0 auto;
}

a:active .lightbox .box span,
a:focus .lightbox .box span {
  display: block;
  width: 240px !important;
  background-color: #FFF;
  padding: 10px;
  margin: 10px auto;
  border: solid 1px #CCC;
  font-size: 13px;
  line-height: 1.3;
  font-weight: normal;
  color: #333;
  text-align: left;
}

a:active .lightbox .box span span,
a:focus .lightbox .box span span {
  font-weight: bold;
  width: auto !important;
  border: none;
  padding: 0;
  margin: 0;
}

#close {
  width: 50px !important;
  height: 30px;
  position: relative;
  display: inline;
  cursor: pointer;
}

/* lightbox start*/
/* カラーボックス start */
#cboxOverlay {
  background: rgba(0, 0, 0, 0.8);
}

#cboxLoadedContent {
  background-color: #FFF;
  padding: 2.67vw;
}

#cboxClose {
  top: -6.94vw;
  width: 5.6vw;
  height: 5.6vw;
  border: 0;
  background: transparent;
}
#cboxClose::after {
  background-size: 5.6vw auto;
  background-position: 0vw 0vw;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  right: 0;
  width: 5.6vw;
  height: 5.6vw;
  background-image: url("../images_smt/icon/ico_close_w.png");
  content: "";
}

#cboxLoadedContent .btBox_OL {
  display: block !important;
}

/* カラーボックス end */
/* ページング start */
.pagination {
  display: flex;
  justify-content: center;
  margin: 0 5.87vw;
  border-bottom: 1px solid #8e8e8e;
}
.pagination a {
  position: relative;
  width: 25%;
  height: 12.8vw;
  color: transparent;
}
.pagination .prev::before,
.pagination .first::before,
.pagination .first::after {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  left: 50%;
  width: 2.14vw;
  height: 2.14vw;
}
.pagination .next::before,
.pagination .last::before,
.pagination .last::after {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  left: 50%;
  width: 2.14vw;
  height: 2.14vw;
}
.pagination .first::before,
.pagination .last::before {
  left: calc(50% + 0.54vw);
}
.pagination .first::after,
.pagination .last::after {
  left: calc(50% - 0.8vw);
}
.pagination_count {
  margin: 3.2vw;
  color: #636366;
  text-align: center;
}

.pageBox {
  margin: 2.67vw 5.87vw;
  clear: both;
}

.pageBox .total_num {
  margin: 2.67vw 0;
  color: #636366;
  font-size: 3.74vw;
  text-align: center;
}
.pageBox .total_num .bold {
  margin: 0 0.8vw;
  font-size: 4.27vw;
}

.pageBox .page_no {
  display: flex;
  position: relative;
  justify-content: center;
  overflow: hidden;
}

.pageBox .page_no .num {
  margin: 0;
  width: 18% !important;
  line-height: 1.2;
  text-align: center;
  border-left: 1px solid #333333;
}

.pageBox .page_no li:first-of-type {
  border-left: none;
}

.pageBox .page_no .nxt {
  position: relative;
  margin: 10px;
  width: 50px !important;
}

.pageBox .page_no .prev {
  clear: both;
  float: left;
}

.pageBox .page_no a {
  padding: 0 20px;
  color: #8e8e8e;
}

.pageBox .page_no .nxt a {
  padding: 0;
  text-decoration: none;
}

.pageBox .page_no a.productList {
  padding: 0 30px;
}

/* ページング end */
/****************************************************************/
/*  insert
*****************************************************************/
/* insert カレンダー start */
/* insert カレンダー end */
/* insert 絞込み検索 start */
div#insert_style {
  margin: 0 auto;
}

div#insert_style .title_style2 p,
div#dsearchBox_style .title_style2 p {
  height: 25px;
  line-height: 25px;
  text-align: center;
  font-size: 15px;
  font-weight: bold;
  color: #FFF;
  border-top: solid 1px #001C55;
  border-bottom: solid 1px #001C55;
  background-color: #7A99D8;
  background-image: -moz-linear-gradient(top, #7A99D8 2%, #345CAE 3%, #003399 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(2%, #7A99D8), color-stop(3%, #345CAE), color-stop(100%, #003399));
}

div#insert_style .textBox2 {
  margin: 10px 5px 10px 5px;
  font-size: 12px;
  line-height: 1.3;
  font-weight: normal;
}

div#insert_style .formBox div div select {
  margin: 2px 0;
}

div#insert_style .btBox2 {
  width: 180px !important;
  margin: 0 auto 10px auto;
  overflow: hidden;
  padding: 0;
}

div#insert_style .btBox2 .bb2left {
  float: left;
}

div#insert_style .btBox2 .bb2right {
  float: right;
}

div#insert_style .btBox2 p {
  padding: 5px;
  display: block;
  width: 80px !important;
  overflow: hidden;
}

div#insert_style .btBox2 p a,
div#insert_style .btBox2 p input {
  width: 80px !important;
}

div#insert_style .btBox1 {
  margin: 0 auto;
  display: block;
  width: 50px !important;
  /* overflow: auto; */
  padding-bottom: 10px;
  border: none;
}

div#insert_style .btBox1 a,
div#insert_style .btBox1 input {
  display: block;
  width: 50px !important;
  height: 24px;
  line-height: 24px;
  font-size: 12px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
  color: #000;
  text-shadow: #FFF 0px -1px 1px;
  background-color: #EDEDEE;
  background-image: -moz-linear-gradient(top, #EDEDEE 49%, #BABABB 50%, #BFBFBF 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(49%, #EDEDEE), color-stop(50%, #BABABB), color-stop(100%, #BFBFBF));
  border: solid 1px rgba(0, 0, 0, 0.05);
  cursor: pointer;
}

/* insert 絞込み検索 end */
/* insert 最近チェックした商品 start */
.history {
  margin-top: 16.8vw;
}
.history_title {
  margin: 0 5.87vw 2.67vw;
  font-size: 3.47vw;
  font-weight: bold;
}

.list_history {
  display: flex;
}
.list_history_wrap {
  display: inline-block;
}
.list_history .item {
  width: 40vw;
  margin-left: -1px;
  padding: 5.34vw;
  border: 1px solid #d2d2d9;
  color: #000;
  line-height: 1.4;
  box-sizing: border-box;
}
.list_history .item:last-child {
  border-right: 0;
}
.list_history .category {
  color: #787878;
  font-size: 2.67vw;
}
.list_history .name {
  margin: 2.14vw 0;
  font-size: 3.47vw;
}
.list_history .price {
  font-size: 2.67vw;
}

/* insert 最近チェックした商品 end */
/* 新着、おすすめ、ランキング部品 start*/
.flickparts {
  position: relative;
  z-index: 0;
  margin: 0 auto 0 auto;
  overflow: hidden;
}

.flickparts p {
  color: black;
  word-break: break-all;
  font-size: 80%;
  margin-top: 5px;
}

/* 新着、おすすめ、ランキング部品 end*/
/* insert ランキング start */
div.title_style_ranking h3,
div.title_style_ranking p {
  height: 34px;
  line-height: 34px;
  text-align: center;
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 2px;
  color: #FFF;
  border-top: solid 1px #001C55;
  border-bottom: solid 1px #001C55;
  background-color: #7A99D8;
  background-image: -moz-linear-gradient(top, #7A99D8 2%, #345CAE 3%, #003399 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(2%, #7A99D8), color-stop(3%, #345CAE), color-stop(100%, #003399));
  /*
    background-color:#4F8BE0;
    background-image:-moz-linear-gradient(top, #90B6EB 0%,#4F8BE0 49%,#2C74DA 50%);
    background-image:-webkit-gradient(linear, right top, right bottom, color-stop(0%,#90B6EB), color-stop(49%,#4F8BE0),color-stop(50%,#2C74DA));
    border-top:solid 1px #FFF;
  */
}

.h_ranking .btn-back,
.h_ranking .btn-next {
  top: 37px !important;
}

.h_ranking .flick1 {
  height: 142px !important;
  overflow: hidden;
}

.h_ranking .flick1 ul.slbox1 li {
  height: 142px !important;
}

.flick1 ul.slbox1 li .rank {
  font-weight: bold;
  text-align: center;
  font-size: 13px;
  height: 30px;
  padding-bottom: 2px;
}

.flick1 ul.slbox1 li .rank img {
  border: none;
  margin-right: 3px;
}

.tex_bottom {
  text-align: center;
  font-size: 11px;
}

.h_ranking .flick2 {
  height: 142px !important;
  overflow: hidden;
}

.h_ranking .flick2 ul.slbox2 li {
  height: 142px !important;
}

.flick2 ul.slbox2 li .rank {
  font-weight: bold;
  text-align: center;
  font-size: 13px;
  height: 30px;
  padding-bottom: 2px;
}

.flick2 ul.slbox2 li .rank img {
  border: none;
  margin-right: 3px;
}

.tex_bottom {
  text-align: center;
  font-size: 11px;
}

/* insert ランキング end */
/* insert 商品単位のレビュー一覧 start */
div.insert .title_style2 h3,
div.insert .title_style2 p {
  height: 25px;
  line-height: 25px;
  text-align: center;
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 2px;
  color: #FFF;
  border-top: solid 1px #001C55;
  border-bottom: solid 1px #001C55;
  background-color: #7A99D8;
  background-image: -moz-linear-gradient(top, #7A99D8 2%, #345CAE 3%, #003399 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(2%, #7A99D8), color-stop(3%, #345CAE), color-stop(100%, #003399));
}

div.insert .itemBox {
  overflow: hidden;
  width: 310px !important;
  margin: 10px auto;
}

div.insert .itemBox .photo {
  float: left;
  width: 110px !important;
}

div.insert .itemBox .text {
  float: left;
  width: 200px !important;
  line-height: 1.3;
}

div.insert .itemBox .text a {
  font-size: 14px;
  font-weight: bold;
}

div.insert .itemBox .text .cord {
  font-size: 10px;
}

div.insert .itemBox .text .cord #productCd {
  font-size: 12px;
}

div.insert .itemBox .text .price {
  font-size: 13px;
}

div.insert .itemBox .text .price dt {
  color: #C00;
  font-weight: bold;
}

div.insert .itemBox .text .price #noTaxDispFlg,
div.insert .itemBox .text .price #incTaxDispFlg {
  font-size: 10px;
  color: #000;
  font-weight: normal;
}

div.insert #check2_style .inner .imgBox {
  width: 290px !important;
  height: 90px;
  background-color: #EDEDED;
  border: solid 1px #E5E5E5;
}

div.insert .reviewBox .text {
  font-size: 12px;
  line-height: 1.5;
  margin: 5px;
}

div.insert .reviewBox .name {
  display: block;
  border-top: dotted 1px #CCC;
  font-size: 11px;
  padding: 5px;
  text-align: right;
}

/* pagelinkBox */
div.insert .pagelinkBox {
  overflow: hidden;
  margin-bottom: 10px;
}

/* list_title */
div.insert .result_sch {
  height: 26px;
  line-height: 26px;
  font-weight: bold;
  font-size: 13px;
  color: #FFF;
  text-align: center;
  margin-bottom: 5px;
  background-color: #999999;
  background-image: -moz-linear-gradient(top, #999999 0%, #333333 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #999999), color-stop(100%, #333333));
}

div.insert .result_sch #listCount {
  color: #FC0;
  font-size: 15px;
}

/* insert 商品単位のレビュー一覧 end */
/* insert 新着レビュー一覧 start */
div.insert .reviewBox {
  padding-bottom: 5px;
}

div.insert .reviewBox .titleBox {
  overflow: hidden;
  border-top: solid 1px #FFF;
  padding: 7px 5px;
  background-color: #F3F3F3;
  background-image: -moz-linear-gradient(top, #F3F3F3 0%, #CCCCCC 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #F3F3F3), color-stop(100%, #CCCCCC));
}

div.insert .reviewBox .title {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.2;
}

div.insert .reviewBox .rate {
  color: #FF9900;
  width: 100px !important;
  font-size: 12px;
  float: right;
  margin-top: 5px;
  text-align: center;
  background-color: #FFF;
  padding: 3px 10px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  -webkit-box-shadow: 0 1px 3px #666 inset;
  -moz-box-shadow: 0 1px 3px #666 inset;
  box-shadow: 0 1px 3px #666 inset;
}

div.insert .reviewBox .inner {
  overflow: hidden;
  width: 310px !important;
  padding: 5px 5px 0 5px;
  margin: 0 auto;
}

div.insert .reviewBox .inner .photo {
  float: left;
  width: 66px !important;
}

div.insert .reviewBox .inner .text {
  float: left;
  width: 170px !important;
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 5px;
}

div.insert .reviewBox .inner .name {
  display: block;
  border-top: dotted 1px #CCC;
  font-size: 11px;
  padding: 5px;
  margin-top: 5px;
  text-align: right;
}

/* insert 新着レビュー一覧 end */
/* insert toggleコンテンツ start */
.toggle_box {
  margin: 8vw 5.87vw;
  border-bottom: 1px solid #8e8e8e;
}

.toggle_button {
  display: flex;
  position: relative;
  align-items: center;
  height: 14.14vw;
  padding: 0 12vw 0 5.87vw;
  border-top: 1px solid #8e8e8e;
  color: #000;
  font-size: 3.74vw;
}
.toggle_button.is-opened {
  background: #f2f2f7;
}
.toggle_button.is-opened i::after {
  transform: translate(-50%, -50%) rotate(0);
}
.toggle_button i {
  display: block;
  position: absolute;
  top: 50%;
  right: 4vw;
  width: 6.14vw;
  height: 6.14vw;
  transform: translateY(-50%);
  background: #a1a1a3;
  content: "";
}
.toggle_button i::before, .toggle_button i::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3.2vw;
  height: 1px;
  transform: translate(-50%, -50%);
  background: #fff;
  content: "";
}
.toggle_button i::after {
  transform: translate(-50%, -50%) rotate(-90deg);
  transition-duration: .3s;
}

.toggle_body {
  padding: 4vw 5.87vw;
  line-height: 1.6;
}

/* insert toggleコンテンツ end */
/* insert ショッピングガイド start */
.language_guide {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 5.34vw 5.87vw;
}
.language_guide::after {
  display: none;
}
.language_guide dt {
  width: 100%;
}
.language_guide dd {
  width: 49%;
}

/* insert ショッピングガイド end */
/* insert カスタマーサービス start */
.customer_service {
  margin-bottom: -18.67vw;
}
.customer_service .title {
  margin: 0 5.87vw 4vw;
  color: #787878;
  font-size: 4.27vw;
  font-weight: bold;
}
.customer_service .title span {
  display: block;
  font-size: 2.67vw;
  font-weight: normal;
}

.list_service_item {
  display: block;
  position: relative;
  padding: 4vw 9.34vw 4vw 5.87vw;
  border-top: 1px solid #d2d2d9;
  color: #000;
  font-size: 3.74vw;
  font-weight: bold;
}
.list_service_item span {
  display: block;
  color: #787878;
  font-size: 2.67vw;
  font-weight: normal;
}
.list_service_item::before {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #8e8e8e;
  content: "";
  right: 5.34vw;
  width: 2.14vw;
  height: 2.14vw;
}

/* insert カスタマーサービス end */
/****************************************************************/
/*  各ページ共通
*****************************************************************/
.clear {
  clear: both;
}

/* タイトル start */
#title_style {
  overflow: hidden;
}

#title_style .texA {
  margin: 5.34vw 5.87vw;
  font-size: 3.2vw;
}

#title_style .kome-text {
  margin: 5.34vw 5.87vw;
}

#title_style .kome {
  color: #ec2626;
  font-size: 16px;
  font-weight: bold;
  vertical-align: sub;
}

#title_style .bt_oversea {
  padding: 5px 10px 5px 0;
  display: block;
  width: 110px !important;
  overflow: auto;
  float: right;
}

#title_style .bt_oversea a {
  display: block;
  width: auto !important;
  line-height: 39px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
  text-align: center;
  text-shadow: 0px -1px 1px rgba(0, 0, 0, 0.6);
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  background-color: #E08084;
  background-image: -moz-linear-gradient(top, #E08084 49%, #CC2925 50%, #C02321 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(49%, #E08084), color-stop(50%, #CC2925), color-stop(100%, #C02321));
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
}

/* タイトル end */
/* コンテンツ start */
dl.lead {
  margin: 5.34vw 5.87vw;
  font-size: 3.2vw;
}

dl.lead dt {
  margin-bottom: 2.67vw;
  color: #000;
  font-size: 3.74vw;
  font-weight: normal;
}

p.lead {
  font-size: 13px;
  margin-bottom: 5px;
  line-height: 1.3;
}

p.textBox1 {
  padding: 10px;
  margin: 0 5px 10px 5px;
  font-size: 12px;
  line-height: 1.3;
}

p.textBox2 {
  margin: 4vw 5.87vw;
}

p.textBoxLink {
  margin: 0 5px;
  font-size: 12px;
  line-height: 1.3;
  display: block;
  overflow: auto;
}

p.textBoxLink a {
  color: #000;
  padding: 10px;
  padding-right: 50px;
  text-decoration: none;
  display: block;
  width: auto !important;
}

/* コンテンツ end */
/* マイページ ヘッダーボタン start */
#title_style {
  position: relative;
}

.bt_mypage {
  position: absolute;
  top: -8.53vw;
  right: 0;
}
#title_style .bt_mypage {
  top: 0;
}
.bt_mypage a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26.67vw !important;
  height: 8vw;
  background: #787878;
  color: #fff;
  font-size: 2.67vw;
}

/* マイページ ヘッダーボタン end */
/* アドレス帳から選択　start */
.nameR span,
.nameR1 span {
  display: block;
  text-align: left;
  font-weight: normal;
  cursor: pointer;
}

.nameR .icon_plus,
.nameR .icon_minus,
.nameR1 .icon_plus,
.nameR1 .icon_minus {
  position: relative;
}
.nameR .icon_plus::before, .nameR .icon_plus::after,
.nameR .icon_minus::before,
.nameR .icon_minus::after,
.nameR1 .icon_plus::before,
.nameR1 .icon_plus::after,
.nameR1 .icon_minus::before,
.nameR1 .icon_minus::after {
  display: block;
  position: absolute;
  top: 50%;
  right: -7.46vw;
  width: 3.2vw;
  height: 1px;
  transform: translateY(-50%);
  background: #fff;
  content: "";
  z-index: 2;
}
.nameR .icon_plus::after,
.nameR .icon_minus::after,
.nameR1 .icon_plus::after,
.nameR1 .icon_minus::after {
  transform: translateY(-50%) rotate(-90deg);
  transition-duration: .3s;
}

.nameR .icon_minus::after,
.nameR1 .icon_minus::after {
  transform: translateY(-50%) rotate(0);
}

.nameR span::after,
.nameR1 span::after {
  display: block;
  position: absolute;
  top: 50%;
  right: -8.79vw;
  width: 6.14vw;
  height: 6.14vw;
  transform: translateY(-50%);
  background: #a1a1a3;
  content: "";
}

.categoryBox2 {
  width: 100%;
  padding: 2.67vw;
  border: 1px solid #f2f2f7;
  box-sizing: border-box;
}

.categoryBox2 div {
  padding: 5px;
  font-size: 12px;
  color: #CCC;
  line-height: 1.3;
}

.categoryBox2 div span {
  font-weight: bold;
  width: 120px;
}

.categoryBox2 td {
  padding: 1.34vw;
  font-size: 3.74vw;
}

.categoryBox2 td.tdL {
  width: 30%;
  font-size: 3.2vw;
  font-weight: bold;
}

.categoryBox2 .bt_submit input {
  float: right;
  margin-top: 10px;
}

.categoryBox2 .bt_close input,
.categoryBox2 .bt_submit input {
  display: block;
  width: 16vw !important;
  height: 10.67vw;
  background: #787878;
  color: #fff;
  font-size: 3.2vw;
  line-height: 10.67vw;
}

.categoryBox2 .btBox_add {
  overflow: hidden;
  width: 210px;
  margin: 0 auto;
}

.categoryBox2 .btBox_add .bt_close input {
  float: left;
  width: 100px !important;
  margin-top: 10px;
}

.categoryBox2 .btBox_add .bt_submit input {
  width: 100px !important;
}

/* アドレス帳から選択　end */
/* 入力フォーム　start */
.box_form {
  position: relative;
}

.formBox .left,
.formBox #fb3-1_style label,
.formBox #fb3-2_style > label,
.formBox #fb3-3_style > label,
.formBox #fb3-4_style > label,
.formBox #fb3-5_style > label,
.formBox #fb1-1_style :not(.left) label,
.formBox #fb1-1_style > label,
.formBox #fb1-2_style > label,
.formBox #fb1-3_style > label,
.formBox #fb1-4_style > label,
.formBox #fb1-5_style > label,
.formBox #fb4-1_style > label,
.formBox #fb4-2_style > label,
.formBox #fb2-1_style label {
  display: block;
  margin: 0 -5.87vw 4vw;
  padding: 2.67vw 5.87vw;
  border-top: 1px solid #d2d2d9;
  background: #f2f2f7;
  font-size: 4.27vw;
  font-weight: normal;
}
.formBox .left label,
.formBox #fb3-1_style label label,
.formBox #fb3-2_style > label label,
.formBox #fb3-3_style > label label,
.formBox #fb3-4_style > label label,
.formBox #fb3-5_style > label label,
.formBox #fb1-1_style :not(.left) label label,
.formBox #fb1-1_style > label label,
.formBox #fb1-2_style > label label,
.formBox #fb1-3_style > label label,
.formBox #fb1-4_style > label label,
.formBox #fb1-5_style > label label,
.formBox #fb4-1_style > label label,
.formBox #fb4-2_style > label label,
.formBox #fb2-1_style label label {
  font-weight: normal;
}
.formBox .left + br,
.formBox label + br {
  display: none;
}

pre {
  white-space: pre-wrap;
}

.formBox #fb0-1_style,
.formBox #fb4-2_style {
  margin: 5.34vw 5.87vw;
  padding: 4vw;
  background: #f2f2f7;
}

.formBox #fb1-1_style,
.formBox #fb1-2_style,
.formBox #fb1-4_style,
.formBox #fb1-5_style,
.formBox #fb1-3_style,
.formBox #fb3-1_style,
.formBox #fb3-2_style,
.formBox #fb3-3_style,
.formBox #fb3-4_style,
.formBox #fb3-5_style,
.formBox #fb2-1_style,
.formBox #fb4-1_style,
.formBox #fb4-1_style + #fb4-2_style {
  margin: 0 5.87vw 4vw;
  padding: 0;
  background: #fff;
  font-size: 3.74vw;
}

.formBox #fb1-6_style .left {
  line-height: 1;
}

.formBox input[type="text"],
.formBox input[type="password"] {
  width: 100% !important;
}

.formBox input[type='radio'] {
  width: auto !important;
}

/*fb1*/
/*.formBox #fb1-6 label span{font-size:10px;}*/
.formBox #fb1-1_style .company,
.formBox #fb1-1_style .position {
  margin-top: 5px;
  margin-bottom: 5px;
}

.formBox #fb1-1_style > p:not(:last-child):not(.left):not(.replyContent) {
  margin-bottom: 4vw;
}

.formBox #fb1-4_style p span span,
.formBox #fb1-1_style p span span,
.formBox #fb1-2_style p span span,
.formBox #fb1-3_style p span span,
.formBox #fb1-4_style p span span,
.formBox #fb1-5_style p span span,
.formBox #fb1-6_style p span span,
.formBox #fb2-1_style p span span,
.formBox #fb2-2_style p span span,
.formBox #fb3-1_style p span span,
.formBox #fb3-2_style p span span,
.formBox #fb3-3_style p span span,
.formBox #fb3-4_style p span span,
.formBox #fb3-5_style p span span {
  color: #787878;
}

.formBox #fb1-1_style .right {
  font-size: 4.27vw;
}

/*fb2*/
.formBox #fb2-1_style .pc_mail,
.formBox #fb2-2_style .mobile_mail {
  margin-top: 5px;
}

/*fb3*/
.formBox #fb3-2_style select {
  width: 100%;
}

.formBox #fb3-3_style .ad2 {
  margin: 5px 0;
}

.formBox #fb3-1_style .bt_right {
  float: left;
}

.formBox #fb3-1_style span span {
  color: #787878;
  font-size: 2.94vw;
}

.formBox #fb3-1_style .foreign {
  display: block;
  float: left;
  font-size: 10px;
  width: 100%;
  color: #000000;
}

.formBox #fb3-1_style .foreign input {
  float: left;
  margin-right: 10px;
  margin-top: 5px;
  width: 50px !important;
}

.formBox #fb3-3_style .inner {
  overflow: hidden;
  display: block;
}

.formBox #fb3-3_style .inner .text {
  float: left;
  width: 100% !important;
  line-height: 1.3;
  padding-top: 5px;
}

/*fb4*/
.formBox #fb4-1_style label {
  font-size: 3.74vw;
}

.formBox #fb4-2_style select {
  width: 21.34vw !important;
  margin: 0 0.8vw 0 0;
}

.formBox #fb4-2_style span select {
  margin: 0 0.8vw 2.67vw 0;
}

.formBox #yearStartSelect + label select,
.formBox #yearEndSelect + label select {
  width: 14.94vw !important;
  margin: 0 0.8vw 2.67vw;
}

.formBox #fb4-2_style input {
  width: 26.67vw !important;
  margin-right: 1.34vw;
}

.formBox .radioLavel {
  font-weight: normal;
  color: #000;
  margin-right: 20px;
}

/* melmaga */
#melmaga_style {
  border: solid 1px #145072;
  margin: 0 10px 15px 10px;
}

#melmaga_style .title {
  height: 43px;
  border-top: solid 1px #8EB9D5;
  border-bottom: solid 1px #145072;
  padding-left: 5px;
  background-color: #5D99C3;
  background-image: -moz-linear-gradient(top, #5D99C3 0%, #3A6C9F 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(0%, #5D99C3), color-stop(100%, #3A6C9F));
}

#melmaga_style .title dl {
  background: url(../images_smt/mail.png) right top no-repeat;
  padding-top: 8px;
}

.english #melmaga_style .title dl {
  padding-top: 3px;
}

#melmaga_style .title dt {
  color: #FFF;
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 2px;
}

#melmaga_style .title dd {
  color: #FFF;
  font-size: 10px;
  font-weight: bold;
}

#melmaga_style ul {
  padding: 5px 10px;
}

#melmaga_style li {
  font-size: 12px;
  border-bottom: dotted 1px #81A9D1;
  margin-bottom: 3px;
  padding-bottom: 3px;
}

#melmaga_style li.last {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

#melmaga_style li input {
  vertical-align: middle;
  margin-right: 5px;
}

#melmaga_style li span {
  vertical-align: middle;
}

#melmaga_style .caution {
  margin: 0 10px;
  padding: 5px 0 7px 0;
  font-size: 10px;
  text-align: center;
  border-top: solid 1px #CCC;
  font-weight: bold;
}

.reset1 {
  height: auto;
  padding: 0;
  margin: 0;
  margin-right: 5px;
}

.type_check {
  display: flex;
  position: relative;
  align-items: center;
  padding: 0 5.87vw 0 9.34vw;
  color: #000;
  font-size: 3.74vw;
  font-weight: normal;
}
.type_check input {
  position: absolute;
  opacity: 0;
}
.type_check::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 5.34vw;
  height: 5.34vw;
  transform: translateY(-50%);
  border: 1.07vw solid #d2d2d9;
  background: #fff;
  content: "";
  box-sizing: border-box;
}
.type_check.checked::before {
  border-color: #efd5d6;
}
.type_check.checked::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 1.74vw;
  width: 1.87vw;
  height: 1.87vw;
  transform: translateY(-50%);
  background: #c0595d;
  content: "";
  box-sizing: border-box;
}

.type_box_check {
  display: flex;
  position: relative;
  align-items: center;
  padding: 3.47vw 0 3.2vw 10.67vw;
  border: 1.07vw solid #f2f2f7;
  background: #f2f2f7;
  color: #000;
  font-size: 3.74vw;
  font-weight: normal;
}
.type_box_check input {
  position: absolute;
  opacity: 0;
}
.type_box_check::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 2.67vw;
  width: 5.34vw;
  height: 5.34vw;
  transform: translateY(-50%);
  border: 1.07vw solid #d2d2d9;
  background: #fff;
  content: "";
  box-sizing: border-box;
}
.type_box_check.checked {
  border-color: #f47d7d;
  background: #fff;
  color: #c0595d;
}
.type_box_check.checked::before {
  border-color: #efd5d6;
}
.type_box_check.checked::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 4.4vw;
  width: 1.87vw;
  height: 1.87vw;
  transform: translateY(-50%);
  background: #c0595d;
  content: "";
  box-sizing: border-box;
}

.type_radio {
  display: block;
  position: relative;
  padding: 1.34vw 0 1.34vw 9.34vw;
  color: #000;
  font-weight: normal;
  line-height: 1.2;
}
.type_radio::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 5.34vw;
  height: 5.34vw;
  transform: translateY(-50%);
  border: 1.07vw solid #d2d2d9;
  border-radius: 50%;
  content: "";
  box-sizing: border-box;
}
.type_radio.checked::before {
  border-color: #efd5d6;
}
.type_radio.checked::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 1.74vw;
  width: 1.87vw;
  height: 1.87vw;
  transform: translateY(-50%);
  border-radius: 50%;
  background: #c0595d;
  content: "";
  box-sizing: border-box;
}
.type_radio input {
  position: absolute;
  opacity: 0;
}

.type_box_radio {
  display: block;
  position: relative;
  padding: 3.47vw 0 3.2vw 10.67vw;
  border: 1.07vw solid #f2f2f7;
  background: #f2f2f7;
  color: #000;
  font-size: 3.74vw;
  font-weight: normal;
  line-height: 1.2;
}
.type_box_radio::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 2.67vw;
  width: 5.34vw;
  height: 5.34vw;
  transform: translateY(-50%);
  border: 1.07vw solid #d2d2d9;
  border-radius: 50%;
  background: #fff;
  content: "";
  box-sizing: border-box;
}
.type_box_radio.checked {
  border-color: #f47d7d;
  background: #fff;
  color: #c0595d;
}
.type_box_radio.checked::before {
  border-color: #efd5d6;
}
.type_box_radio.checked::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 4.4vw;
  width: 1.87vw;
  height: 1.87vw;
  transform: translateY(-50%);
  border-radius: 50%;
  background: #c0595d;
  content: "";
  box-sizing: border-box;
}
.type_box_radio input {
  position: absolute;
  opacity: 0;
}

/* 入力フォーム　end */
/* 数量ボックスの＋－ start */
.amount {
  position: relative;
}

.amount .icon {
  display: block;
  position: relative;
  min-width: 8vw;
  height: 8vw;
  border-width: 1.6vw 1.87vw;
  border-style: solid;
  border-color: #fff;
  background: #f2f2f7;
  cursor: pointer;
}
.amount .icon::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 4.54vw;
  height: 1.07vw;
  background: #000;
  content: "";
}

.amount .plus-icon::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1.07vw;
  height: 4.54vw;
  background: #000;
  content: "";
}

.amount .minus-icon {
  position: absolute;
  top: 50%;
  left: 6.67vw;
  transform: translateY(-50%);
}

/* 数量ボックスの＋－ end */
.product-name {
  font-size: 10px;
  text-align: left;
  font-weight: bold;
  color: #006699 !important;
  line-height: 1.2em;
}

.product-date {
  font-size: 8px;
  text-align: left;
  /*font-weight:bold;*/
  color: #000000 !important;
  line-height: 1.2em;
  padding-top: 2px;
}

.product-price {
  font-size: 10px;
  text-align: right;
  font-weight: bold;
  color: #FF0000 !important;
  line-height: 1.2em;
}

.detailObj {
  width: 310px !important;
  height: 310px !important;
}

.tabmenu {
  width: 100%;
  margin-top: 0px;
  padding-top: 0px;
  /*  border-top:1px solid #ccc;*/
}

.tab-brand, .tab-brand2, .tab, .tab-bottom {
  overflow: hidden;
  list-style: none;
}

.tabmenu p {
  font-size: 0.9em;
}

.tab-brand, .tab-brand2, .tab, .tab-bottom {
  display: table;
  table-layout: fixed;
  width: 100%;
  border-collapse: separate;
  border-spacing: 2px 0;
  padding: 0;
  list-style: none;
  margin: 0 auto;
  /*    border-bottom:3px solid #ccc; */
}

.tab-brand li, .tab-brand2 li, .tab li, .tab-bottom li {
  border: 1px solid #ccc;
  border-bottom: 1px solid #eee;
  background: #fff;
  text-align: center;
  font-weight: bold;
  cursor: pointer;
  display: table-cell;
  padding: 15px 0 15px 0;
  vertical-align: middle;
  font-size: 0.9em;
  z-index: 100;
}

.tab-brand2 li.select,
.tab-brand li.select,
.tab li.select,
.tab-bottom li.select {
  display: table-cell;
  border: 1px solid #ccc;
  border-bottom: 1px solid #eee;
  background: #eee;
  text-align: center;
  font-weight: bold;
  cursor: pointer;
  vertical-align: middle;
  text-decoration: underline;
  font-size: 0.9em;
  padding: 15px 0 15px 0;
  z-index: 100;
}

.content div {
  margin-top: -1px;
  height: auto;
  padding: .6em;
}

.content div.hide, .content div.hide2, .content div.hide3, .content div.hide4 {
  /*    border:1px solid #ccc;*/
}

.hide, .hide2, .hide3, .hide4 {
  display: none;
}

.content div.sub {
  border-bottom: none;
}

.tab-brand2 li:after,
.tab-brand li:after,
.tab-bottom li:after,
.tab li:after {
  margin: 1px 0px 0 2px;
  content: " ";
  display: inline-block;
  width: 8px;
  height: 8px;
  /*  background:url(..images_smt/f_bottom_s.png) ; */
  background-size: contain;
  vertical-align: middle;
}

.tab-brand li.select:after,
.tab-brand2 li.select:after,
.tab li.select:after,
.tab-bottom li.select:after {
  margin: 1px 0px 0 2px;
  content: " ";
  display: inline-block;
  width: 8px;
  height: 8px;
  background: url(..images_smt/f_top_s.png);
  background-size: contain;
  vertical-align: middle;
}

.tab a.current {
  text-decoration: none;
  pointer-events: none;
  font-weight: bold;
  color: #000;
}

.tab a:not(:last-child) {
  display: inline-block;
  border-right: 1px solid #000;
}

.list_category li {
  padding: .5em .75em;
  border: 1px solid #ccc;
  background-color: #F3F3F3;
}

.list_color li {
  display: inline;
}

.list_color li img {
  margin: 10px;
}

.list_color li input {
  display: none;
}

.box_button input {
  width: 100%;
}

.box_button input:checked {
  outline: inset 6px #ffff00;
}

.range input {
  margin: 5px;
  width: 80%;
}

/* Amazonアカウントでログイン */
.amazon_user {
  margin: 5.34vw 5.87vw;
}

.amazon_button {
  margin-top: 2.67vw;
  text-align: center;
}

#loginForm div.amazon_button {
  text-align: center;
}

div.headerBundle {
  float: left;
}

div.titleBundle {
  line-height: 27px;
  text-align: left;
  float: left;
}

div.buttonBundle {
  text-align: right;
}

div.bundleClear {
  clear: both;
}

input.recordCopyButton {
  color: #fff;
  text-shadow: rgba(115, 47, 78, 0) 0px -1px 1px;
  background-color: #7BAAEF;
  background-image: -moz-linear-gradient(top, #7BAAEF 49%, #528EE7 50%, #2975DE 100%);
  background-image: -webkit-gradient(linear, right top, right bottom, color-stop(49%, #7BAAEF), color-stop(50%, #528EE7), color-stop(100%, #2975DE));
  border: solid 1px rgba(0, 0, 0, 0.05);
  cursor: pointer;
  border-radius: 8px;
}

.last-prod {
  font-size: 12px;
}

.bt_submit .disabled {
  background: #8e8e8e;
  color: #3e3e40;
}

/*
郵便番号検索
-----------------------------------*/
.box_zip {
  position: relative;
}

.list_address {
  /* position: absolute; */
  top: 0;
  left: 160px;
  padding: 15px;
  border-radius: 5px;
  background: #000 !important;
  background: rgba(0, 0, 0, 0.7) !important;
  color: #fff !important;
  font-size: 14px;
  z-index: 100;
  line-height: 30px;
  overflow: scroll !important;
}

.list_address .title {
  margin: 0 0 15px;
  text-align: center;
}

.list_address .title strong {
  font-size: 16px;
}

.list_address dl {
  margin: 0;
}

.list_address dt {
  float: left;
  clear: left;
  margin: 0 0 5px;
  font-size: 15px;
  font-weight: bold;
  color: #fff !important;
}

.list_address dd {
  margin: 0 0 5px 95px;
  padding-top: 1px;
  color: #fff !important;
}

.list_address a {
  color: #fff;
}

.list_address a:hover {
  text-decoration: underline;
}

/*
RSS
-----------------------------------*/
#rss #rss_contents .rss_element {
  padding: 5px;
}

#rss #rss_contents .rss_element .date {
  font-size: 80%;
}

#rss #rss_contents .rss_element .main_data {
  font-size: 90%;
  padding-top: 3px;
}

/*
アイコン
-----------------------------------*/
.ico_birth, .ico_item, .ico_campaign, .ico_mail, .ico_calendar, .ico_review, .ico_survey, .ico_ba, .ico_red, .ico_ws, .ico_wrs, .ico_map, .ico_event {
  display: block;
  box-sizing: border-box;
  width: 10.67vw;
  height: 10.67vw;
  border-radius: 5.34vw;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 5.34vw 5.34vw;
}

/* 誕生日 */
.ico_birth {
  background-image: url("../images_smt/icon/ico_birth_g.png");
}

/* アイテム */
.ico_item {
  background-image: url("../images_smt/icon/ico_item_g.png");
}

/* キャンペーン */
.ico_campaign {
  background-image: url("../images_smt/icon/ico_campaign_g.png");
}

/* メール */
.ico_mail {
  background-image: url("../images_smt/icon/ico_mail_g.png");
}

/* カレンダー */
.ico_calendar {
  background-image: url("../images_smt/icon/ico_calendar_g.png");
}

/* レビュー */
.ico_review {
  background-image: url("../images_smt/icon/ico_review_g.png");
}

/* アンケート */
.ico_survey {
  background-image: url("../images_smt/icon/ico_survey_g.png");
}

/* STEPUPキャンペーン(BA) */
.ico_ba {
  background-image: url("../images_smt/icon/ico_campaign_ba.png");
}

/* STEPUPキャンペーン(RED) */
.ico_red {
  background-image: url("../images_smt/icon/ico_campaign_redba.png");
}

/* STEPUPキャンペーン(WS) */
.ico_ws {
  background-image: url("../images_smt/icon/ico_campaign_ws.png");
}

/* STEPUPキャンペーン(WRS) */
.ico_wrs {
  background-image: url("../images_smt/icon/ico_campaign_rs.png");
}

/* マップ */
.ico_map {
  background-image: url("../images_smt/icon/ico_map_g.png");
}

/* イベントフラッグ */
.ico_event {
  background-image: url("../images_smt/icon/ico_event_g.png");
}

/*
モーダル
-----------------------------------*/
.modal {
  display: flex;
  position: fixed;
  top: 100%;
  left: 6vw;
  flex-direction: column;
  width: 88vw;
  max-height: 95%;
  transform: translateY(-50%);
  transition: opacity .4s;
  background: #fff;
  opacity: 0;
  z-index: -1;
  pointer-events: none;
}
.modal_wrap {
  flex: 1;
  padding: 6.67vw 0;
}
.modal p {
  margin: 1.34vw 5.87vw 0;
}
.modal .title {
  margin-top: 0;
  font-size: 4.8vw;
  font-weight: bold;
}
.modal .title:not(:first-child) {
  margin-top: 5.34vw;
}
.modal .sub_title {
  margin-top: 5.34vw;
  font-size: 3.74vw;
  font-weight: bold;
}
.modal .box_close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 10.67vw;
  background: #d2d2d9;
  cursor: pointer;
}

/*
ご利用ガイド
-----------------------------------*/
/*
ガイド
-----------------------------------*/
.guide_menu_item {
  margin: 4vw 5.87vw 6.67vw;
}
.guide_menu_item:first-child {
  margin-top: 0;
}
.guide_menu_item .title {
  margin: 0 0 2.67vw;
  font-size: 4.27vw;
  font-weight: bold;
}
.guide_menu_item li {
  margin-top: 1px;
}
.guide_menu_item a {
  display: block;
  position: relative;
  padding: 3.47vw 8vw 2.67vw 4vw;
  transition: .2s linear;
  background: #f2f2f7;
  color: #000;
  font-size: 3.74vw;
  text-decoration: none;
}
.guide_menu_item a::after {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%) rotate(135deg);
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #000;
  content: "";
  right: 4vw;
  width: 1.34vw;
  height: 1.34vw;
}

/*
ご利用ガイド詳細
-----------------------------------*/
#guide > section {
  margin-top: 8vw;
}
#guide p {
  margin: 5.34vw 5.87vw 0;
  line-height: 1.75;
}
#guide .image {
  margin: 5.34vw 5.87vw 0;
}

.guide_bottom_btn {
  margin-top: 10.67vw;
}

/*
アニメーション
-----------------------------------*/
@keyframes mypage {
  0% {
    width: 78.67vw;
    height: 78.67vw;
    box-shadow: 0 0 0.8vw 1.34vw rgba(255, 255, 255, 0), inset 0 0 1.34vw rgba(255, 255, 255, 0);
  }
  30% {
    box-shadow: 0 0 0.8vw 1.34vw rgba(255, 255, 255, 0.5), inset 0 0 1.34vw white;
  }
  100% {
    width: 80vw;
    height: 80vw;
    box-shadow: 0 0 0.8vw 1.34vw rgba(255, 255, 255, 0), inset 0 0 1.34vw rgba(255, 255, 255, 0);
  }
}
@keyframes mypage2 {
  0% {
    width: 78.67vw;
    height: 78.67vw;
    box-shadow: 0 0 2.14vw rgba(255, 255, 255, 0), inset 0 0 1.34vw rgba(255, 255, 255, 0);
  }
  30% {
    box-shadow: 0 0 2.14vw rgba(255, 255, 255, 0.5), inset 0 0 1.34vw white;
  }
  100% {
    width: 85vw;
    height: 85vw;
    box-shadow: 0 0 2.14vw rgba(255, 255, 255, 0), inset 0 0 1.34vw rgba(255, 255, 255, 0);
  }
}

/*# sourceMappingURL=common-smt.css.map */

/* ▼▼▼ 2019/03/12 軽減税率エンハンス */
.tax_rate_clsf:before {
  content: "※";
}

.tax_rate_clsf, #tax_rate_clsf {
  color:#cd3333;
  margin: 0;
}

#RegularButton{
  display: block;
    position: relative;
    width: 80%;
    height: 10.67vw;
    border: 0;
    border-radius: 0;
    background: #000;
    color: #fff;
    font-family: Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 3.74vw;
    text-align: center;
    line-height: 10.67vw;
    box-sizing: border-box;
    cursor: pointer;
  margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
}
.regubutton{
  display: block;
    position: relative;
    width: 80%;
    height: 10.67vw;
    border: 0;
    border-radius: 0;
    background: #000;
    color: #fff;
    font-family: Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 3.74vw;
    text-align: center;
    line-height: 10.67vw;
    box-sizing: border-box;
    cursor: pointer;
    margin-left: auto;
    margin-right: auto;
}

#regular{
  margin-left: 130px;
}

#regularStandardImg{
      display: inline-block;
    width: 8vw;
    height: 8vw;
    margin-right: 2.67vw;
    border: 1px solid #d2d2d9;
    vertical-align: -2.14vw;
}

/* ▲▲▲ 2019/03/12 軽減税率エンハンス */
}
/* sp css end */

/* pc css */
@media screen and (min-width:880px){
  body {
    width: 100%;
    min-width: 1024px;
    min-height: 100%;
    margin: 0;
    padding: 0;
    background: #fff;
    color: #000;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", sans-serif;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.55;
    word-wrap: break-word;
    overflow-wrap: break-word;
    -webkit-text-size-adjust: 100%;
    /* Android対策 */
  }
  h1, h2, h3, h4, h5 {
    margin: 0;
  }

  ul, ol {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  dl, p {
    margin: 0;
    padding: 0;
  }

  i {
    font-style: normal;
  }

  a {
    color: #2363d9;
  }
  a:hover {
    text-decoration: none;
  }

  a.link {
    color: #2363d9;
    text-decoration: underline;
  }

  *:focus {
    outline: none;
  }

  img {
    /* max-width: 100%; */
    vertical-align: bottom;
  }

  input,
  button,
  textarea,
  select {
    color: #000;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", sans-serif;
    font-size: 16px;
    line-height: 1;
  }

  button {
    cursor: pointer;
  }
  button:hover {
    text-decoration: none;
  }

  table {
    border-collapse: collapse;
  }

  /* layout */
  #header_notice,
  h1, h2, h3, h4,
  #product p,
  .box_agree div,
  .box_agree .rule,
  .box_message,
  .form p,
  #inquiry p,
  #guide p,
  .button {
    max-height: 100%;
  }

  /* Android対策 */
  /*header
  -----------------------------------*/
  /* ショップ固有ヘッダ */
  header.global {
    position: relative;
    z-index: 5;
    background: #fff;
  }
  header.global .inner {
    max-width: 1200px;
    min-width: 984px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    height: 90px;
  }
  @media only screen and (max-width: 1240px) {
    header.global .inner {
      margin-right: 20px;
      margin-left: 20px;
    }
  }
  header.global .inner::after {
    display: none;
  }
  header.global .logo {
    align-self: center;
    width: 270px;
    font-size: 16px;
    line-height: 1;
  }
  header.global .logo a {
    display: block;
  }
  header.global .logo img {
    width: 270px;
    height: auto;
  }

  /* ヘッダーメニュー */
  .header_menu {
    display: flex;
  }
  .header_menu .username {
    align-self: center;
  }

  /* ヘッダーリンク */
  .header_link {
    display: flex;
  }
  .header_link a {
    display: flex;
    align-items: center;
    margin-left: 5px;
    padding: 0 15px;
    transition: .2s ease;
    color: #000;
    font-size: 14px;
    text-decoration: none;
  }
  .header_link a:hover {
    background: #f2f2f7;
  }

  /* ヘッダー機能 */
  .header_utility {
    display: flex;
  }
  .header_utility a {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    width: 55px;
    padding: 33px 0;
    transition: .2s ease;
    color: transparent;
    font-size: 0;
  }
  .header_utility a:hover {
    background: #f2f2f7;
  }
  .header_utility .is-hover > a {
    background: #f2f2f7;
  }
  .header_utility a::before {
    content: "";
    width: 40px;
    height: 50px;
  }
  .header_utility a.login::before {
    background: url("../images/common/ico/ico_login_txt.png") no-repeat 50% 50%;
    background-size: 100%;
  }
  .header_utility a.mypage::before {
    background: url("../images/common/ico/ico_mypage_txt.png") no-repeat 50% 50%;
    background-size: 100%;
  }
  .header_utility a.cart::before {
    background: url("../images/common/ico/ico_cart_txt.png") no-repeat 50% 50%;
    background-size: 100%;
  }
  .header_utility .mypage_menu {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    width: 55px;
  }
  .header_utility .mypage_menu a {
    width: 100%;
  }
  .header_utility .mypage_panel {
    display: none;
    position: absolute;
    z-index: 7;
    top: 100%;
    left: 50%;
    margin-top: -15px;
    padding: 0;
    transform: translateX(-50%);
    background: #d2d2d9;
  }
  .header_utility .mypage_panel::before {
    content: "";
    position: absolute;
    top: -10px;
    left: 50%;
    width: 0;
    height: 0;
    transform: translateX(-50%);
    border-width: 0 10px 10px;
    border-style: solid;
    border-color: transparent transparent #d2d2d9;
  }
  .header_utility .mypage_panel a {
    display: block;
    width: auto;
    padding: 12px 40px;
    transition: .2s linear;
    color: #000;
    font-size: 14px;
    line-height: 1.3;
    text-decoration: none;
    white-space: nowrap;
  }
  .header_utility .mypage_panel a:first-child {
    padding-top: 20px;
  }
  .header_utility .mypage_panel a:last-child {
    padding-bottom: 20px;
  }
  .header_utility .mypage_panel a:hover {
    background: #000;
    color: #fff;
  }
  .header_utility .cart_num {
    display: flex;
    position: absolute;
    top: 26px;
    right: 8px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    min-width: 16px;
    height: 16px;
    padding: 0 3px;
    border: #fff 1px solid;
    border-radius: 8px;
    background: #f47d7d;
    color: #fff;
    font-size: 10px;
    line-height: 15px;
  }

  /* ヘッダー検索 */
  .header_search {
    display: flex;
    position: relative;
  }
  .header_search .item {
    display: none;
    align-items: center;
    padding: 0 10px 0 40px;
    overflow: hidden;
    transition: .2s ease;
  }
  .header_search .field {
    width: 300px;
    height: 44px;
    padding: 14px 20px;
    border-right: 0;
    font-size: 14px;
  }
  .header_search .btn {
    display: flex;
    align-items: center;
    height: 44px;
    padding: 0 20px;
    transition: .2s ease;
    border: 0;
    border-radius: 0;
    background: #000;
    color: #fff;
    font-size: 14px;
  }
  .header_search .btn:hover {
    background: #787878;
  }
  .header_search .suggest {
    position: absolute;
    z-index: 6;
    top: 67px;
    left: 40px;
    box-sizing: border-box;
    width: 368px;
    border: #8e8e8e 1px solid;
    border-top: 0;
    background: #fff;
  }
  .header_search .suggest a {
    display: block;
    padding: 10px 15px;
    transition: .2s linear;
    color: #000;
    line-height: 1.35;
    text-decoration: none;
  }
  .header_search .suggest a:hover {
    background: #f2f2f7;
  }
  .header_search .trigger {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55px;
    height: 24px;
    padding: 33px 0;
    transition: .2s ease;
    color: transparent;
    font-size: 0;
    cursor: pointer;
  }
  .header_search .trigger:hover {
    background: #f2f2f7;
  }
  .header_search .trigger::before {
    content: "";
    width: 40px;
    height: 50px;
    background: url("../images/common/ico/ico_search_txt.png") no-repeat 50% 50%;
    background-size: 100%;
  }
  .header_search .trigger.is-close::before {
    -webkit-animation: search-close 0.4s forwards;
    animation: search-close 0.4s forwards;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    opacity: 0;
  }
  .header_search .trigger.is-opened::before {
    -webkit-animation: search-open 0.4s forwards;
    animation: search-open 0.4s forwards;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    opacity: 0;
    background-image: url("../images/common/ico/ico_close.png");
  }

  @keyframes bar01 {
    0% {
      -webkit-transform: translateY(0.5rem) rotate(45deg);
      transform: translateY(0.5rem) rotate(45deg);
    }
    50% {
      -webkit-transform: translateY(0.5rem) rotate(0);
      transform: translateY(0.5rem) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
      transform: translateY(0) rotate(0);
    }
  }
  /* ヘッダーナビゲーション */
  .header_nav {
    background: #000;
  }
  .header_nav > ul {
    max-width: 1200px;
    min-width: 984px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    display: flex;
    position: relative;
    justify-content: center;
  }
  @media only screen and (max-width: 1240px) {
    .header_nav > ul {
      margin-right: 20px;
      margin-left: 20px;
    }
  }
  .header_nav > ul > li > a {
    display: block;
    padding: 16px 25px;
    transition: .3s ease;
    color: #fff;
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
  }
  .header_nav > ul > li > a:hover {
    background: #d2d2d9;
    color: #000;
  }

  .header_nav_panel {
    display: none;
    position: absolute;
    left: 0;
    width: 100%;
    padding: 30px 0 20px;
    background: #fff;
  }

  /* ヘッダーブランドから探す */
  .header_brand {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 50px 40px;
  }
  .header_brand::after {
    display: none;
  }
  .header_brand .item {
    position: relative;
    width: 16.7%;
  }
  .header_brand .item:first-child {
    width: 22%;
    margin-right: 3.6%;
  }
  .header_brand .item:first-child::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: -9%;
    width: 1px;
    height: 100%;
    background: #d2d2d9;
  }
  .header_brand .tit {
    margin: 5px 0 10px;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
  }
  .header_brand .tit a {
    display: block;
    padding: 5px;
    transition: .2s ease;
    color: #000;
    text-decoration: none;
  }
  .header_brand .tit a:hover {
    background: #f2f2f7;
  }

  /* ヘッダーアイテムから探す */
  .header_item {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 50px 40px;
  }
  .header_item::after {
    display: none;
  }
  .header_item .item {
    width: calc((100% - 90px) / 4);
  }
  .header_item .tit {
    margin: 40px 0 5px;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
  }
  .header_item .tit:first-child, .header_item .tit + .tit {
    margin-top: 0;
  }
  .header_item .tit a {
    display: block;
    padding: 5px;
    transition: .2s ease;
    color: #000;
    text-decoration: none;
  }
  .header_item .tit a:hover {
    background: #f2f2f7;
  }

  /* ヘッダーナビゲーション リンクリスト */
  .header_list {
    margin: 5px 0 0;
  }
  .header_list:first-child {
    margin-top: 0;
  }
  .header_list a {
    display: block;
    padding: 5px;
    transition: .2s ease;
    color: #000;
    font-size: 13px;
    text-align: center;
    text-decoration: none;
  }
  .header_list a:hover {
    background: #f2f2f7;
  }

  /* ヘッダーナビゲーション おすすめ */
  .header_recommend {
    display: flex;
    box-sizing: border-box;
    justify-content: space-between;
    width: 100%;
    padding: 0 50px;
  }
  .header_recommend::after {
    display: none;
  }
  .header_recommend .item {
    box-sizing: border-box;
    width: 23%;
    transition: .2s ease;
    border: #d2d2d9 1px solid;
    color: #000;
    text-decoration: none;
  }
  .header_recommend .item:hover {
    transform: scale(1.03);
  }
  .header_recommend .name {
    padding: 10px;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
  }

  /* ヘッダーナビゲーション用オーバーレイ */
  #overlay-nav {
    visibility: hidden;
    position: fixed;
    z-index: 4;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: .3s linear;
    opacity: 0;
    background: rgba(0, 0, 0, 0.5);
  }
  #overlay-nav.is-hover {
    visibility: visible;
    opacity: 1;
  }

  /* ヘッダーメッセージ */
  #header_notice {
    background: #f2f2f7;
  }

  #header_notice p {
    max-width: 1200px;
    min-width: 984px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    padding: 20px 0 22px;
    font-size: 14px;
    text-align: center;
  }
  @media only screen and (max-width: 1240px) {
    #header_notice p {
      margin-right: 20px;
      margin-left: 20px;
    }
  }

  #header_notice strong {
    color: #c00000;
    font-weight: 500;
  }

  /*レイアウト
  -----------------------------------*/
  main {
    width: 100%;
    margin: 0;
  }

  #wrapper {
    max-width: 1200px;
    min-width: 984px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    display: flex;
    margin-top: 60px;
  }
  @media only screen and (max-width: 1240px) {
    #wrapper {
      margin-right: 20px;
      margin-left: 20px;
    }
  }
  #wrapper::after {
    display: none;
  }

  #main {
    order: 1;
    width: calc(100% - 300px);
    margin-left: 50px;
  }

  #side {
    order: 0;
    width: 250px;
  }

  .section {
    max-width: 1200px;
    min-width: 984px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
  }
  @media only screen and (max-width: 1240px) {
    .section {
      margin-right: 20px;
      margin-left: 20px;
    }
  }
  #main .section {
    min-width: 0;
    max-width: 100%;
  }

  .box_basic {
    width: 100%;
    margin: 70px 0 0;
  }
  .box_basic:first-child {
    margin-top: 0;
  }

  /* メッセージボックス */
  .box_message {
    box-sizing: border-box;
    margin: 30px auto 20px;
    padding: 20px 40px;
    border: 2px solid #d2d2d9;
  }
  .box_message p {
    margin: 0;
  }
  .box_message p:not(:last-child) {
    margin-bottom: 10px;
  }
  .box_message.box_thanks p {
    text-align: center;
  }

  /* エラーメッセージ */
  .box_error {
    box-sizing: border-box;
    margin: 60px auto;
    padding: 20px 40px;
    background: #ffeaea;
    color: #ec2626;
  }

  /* .image内の画像は基本100%サイズに拡縮 */
  .image img {
    max-width: 100%;
    max-height: 100%;
  }

  .txt_seo {
    margin: 25px 30px;
    font-size: 16px;
    line-height: 1.8;
  }

  /*見出し
  -----------------------------------*/
  /* ページ見出し */
  .headline01 {
    margin: 54px 0;
    padding: 0;
    color: #000;
    font-size: 32px;
    font-weight: 500;
    text-align: center;
  }

  /* 大見出し */
  .heading01 {
    position: relative;
    margin: 20px 0 26px;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
  }
  .heading01:first-child {
    margin-top: 0;
  }

  .heading02 {
    position: relative;
    margin: 20px 0 26px;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.3;
  }

  /* 小見出し */
  .sub_head01 {
    margin: 20px 0 16px;
    font-size: 20px;
    font-weight: 700;
  }

  /* サイドカラム */
  /* テキスト
  -----------------------------------*/
  .box_text {
    margin: 40px 0;
  }
  .box_text:first-child {
    margin-top: 0;
  }
  .box_text p {
    margin-top: 20px;
  }
  .box_text p:first-child {
    margin-top: 0;
  }

  .txt_supplement,
  .supplement {
    color: #787878;
  }

  .txt_center {
    text-align: center;
  }

  .txt_point {
    color: #f05151;
  }

  /*ボタン
  -----------------------------------*/
  /* 基本ボタン start */
  .button {
    display: block;
    position: relative;
    box-sizing: border-box;
    width: 100%;
    margin: 0 auto;
    padding: 17px 30px;
    overflow: hidden;
    transition: .3s ease;
    border: 0;
    border-radius: 0;
    background: #000;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
  }
  .button:focus {
    outline: none;
  }
  .button:hover {
    background: #787878;
  }
  .button:not(:first-child) {
    margin-top: 20px;
  }

  /* 基本ボタン  end */
  /* 意思決定ボタン start */
  /* 補助ボタン start */
  .button_sub {
    background: #d2d2d9;
    color: #000;
  }
  .button_sub:hover {
    background: #f2f2f7;
  }

  /* 白ボタン */
  .button_white {
    padding-top: 16px;
    padding-bottom: 16px;
    border: 1px solid #8e8e8e;
    background: #fff;
    color: #000;
  }
  .button_white:hover {
    border-color: #f2f2f7;
    background: #f2f2f7;
  }

  .button_disabled {
    background: #d2d2d9;
    color: #fff;
    pointer-events: none;
  }

  /* 大きいボタン */
  .button_large {
    padding-top: 25px;
    padding-bottom: 25px;
    font-size: 18px;
  }

  /* 小さいボタン */
  .button_small {
    padding-top: 13px;
    padding-bottom: 13px;
    font-size: 14px;
  }
  .button_small.button_white {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  /* 次へボタン */
  .button_next::after {
    display: block;
    width: 9px;
    height: 9px;
    transform: translateY(-50%) rotate(45deg);
    border: #fff 1px solid;
    border-width: 1px 1px 0 0;
    content: "";
    position: absolute;
    top: 50%;
    right: 14px;
  }
  .button_next.button_sub::after, .button_next.button_white::after {
    border-color: #000;
  }

  /* 戻るボタン */
  .button_prev::after {
    display: block;
    width: 9px;
    height: 9px;
    transform: translateY(-50%) rotate(-135deg);
    border: #fff 1px solid;
    border-width: 1px 1px 0 0;
    content: "";
    position: absolute;
    top: 50%;
    left: 14px;
  }
  .button_prev.button_sub::after, .button_prev.button_white::after {
    border-color: #000;
  }

  /* 機能系 ミニボタン */
  .button_action {
    width: 50px;
    padding-top: 8px;
    padding-bottom: 6px;
    background: #787878;
    color: #fff;
  }
  .button_action:hover {
    background: #000;
  }

  /* アップデートボタン */
  /* 削除ボタン */
  .button_delete {
    padding-right: 30px;
  }

  .button_delete::after {
    content: "+";
    display: block;
    position: absolute;
    top: 50%;
    right: 5px;
    margin-top: -13px;
    transform: rotate(45deg);
    color: #fff;
    font-size: 26px;
    line-height: 1;
  }

  /* ボタンBOX */
  .box_button {
    display: flex;
    flex-direction: column;
    margin-top: 50px;
  }
  .box_button::after {
    display: none;
  }
  .box_button .button {
    width: 400px;
  }

  /* 横並び */
  .box_button.multiple,
  .box_button .multiple {
    display: flex;
    flex-direction: row;
    justify-content: center;
  }
  .box_button.multiple:not(:first-child),
  .box_button .multiple:not(:first-child) {
    margin-top: 20px;
  }
  .box_button.multiple .button,
  .box_button .multiple .button {
    margin: 0 10px;
  }

  /*パンくず
  -----------------------------------*/
  #pkz {
    background: #f2f2f7;
    line-height: 1.1;
  }
  _:-ms-lang(x)::-ms-backdrop, #pkz {
    line-height: 1.55;
  }
  #pkz ol {
    max-width: 1200px;
    min-width: 984px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    display: flex;
    padding: 10px 0;
    font-size: 10px;
  }
  @media only screen and (max-width: 1240px) {
    #pkz ol {
      margin-right: 20px;
      margin-left: 20px;
    }
  }
  #pkz li {
    overflow: hidden;
    white-space: nowrap;
  }
  #pkz li:first-child {
    flex-shrink: 0;
    padding-left: 15px;
  }
  #pkz li:not(:first-child) {
    position: relative;
    padding-left: 22px;
    color: #787878;
    text-overflow: ellipsis;
  }
  #pkz li:not(:first-child)::before {
    content: "/";
    display: block;
    position: absolute;
    top: 50%;
    left: 8px;
    margin-top: -6px;
  }
  #pkz a {
    transition: .2s ease;
    color: #787878;
  }
  #pkz a:hover {
    color: #2363d9;
  }

  /*フォームパーツ
  -----------------------------------*/
  /* テキスト入力 */
  input[type=text],
  input[type=password],
  input[type=number],
  textarea,
  .field {
    box-sizing: border-box;
    max-width: 100%;
    height: 50px;
    padding: 16px 20px;
    border: #8e8e8e 1px solid;
    border-radius: 0;
    font-size: 16px;
    line-height: normal;
  }

  textarea {
    width: 100%;
    height: 150px;
  }

  /* セレクトボックス */
  .select {
    position: relative;
    transition: .2s ease;
    border: #787878 1px solid;
    border-radius: 0;
    background: #fff;
  }
  .select:hover {
    background: #f2f2f7;
  }
  .select::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 17px;
    width: 0;
    height: 0;
    transform: translateY(-50%);
    border-width: 7px 6.5px 0;
    border-style: solid;
    border-color: #000 transparent transparent;
    pointer-events: none;
  }
  .select select {
    box-sizing: border-box;
    width: 100%;
    height: 50px;
    margin: 0;
    padding: 0 35px 0 30px;
    border: 0;
    outline: none;
    background: none;
    text-indent: 0;
    /*Firefox用*/
    text-overflow: "";
    vertical-align: middle;
    cursor: pointer;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
  }
  .select select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #000;
  }
  .select select::-ms-expand {
    display: none;
  }

  /* ラベル */
  label {
    display: block;
    position: relative;
  }

  label:hover {
    cursor: pointer;
  }

  label > input {
    position: absolute;
    opacity: 0;
  }

  /* チェックボックス */
  .type_check,
  .type_radio {
    position: relative;
    box-sizing: border-box;
    padding: 15px 15px 15px 45px;
    transition: .2s ease;
    line-height: 1.2;
  }
  .type_check:hover,
  .type_radio:hover {
    background: #f2f2f7;
  }
  .type_check::before,
  .type_radio::before {
    background-size: 25px auto;
    background-position: 0px -50px;
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 10px;
    width: 25px;
    height: 25px;
    transform: translateY(-50%);
    background-image: url("../images/common/ico/ico_check.png");
    background-repeat: no-repeat;
  }
  .type_check.checked::before,
  .type_radio.checked::before {
    background-size: 25px auto;
    background-position: 0px 0px;
  }

  /* ラジオ */
  .type_radio::before {
    background-size: 25px auto;
    background-position: 0px -50px;
    background-image: url("../images/common/ico/ico_radio.png");
  }
  .type_radio.checked::before {
    background-size: 25px auto;
    background-position: 0px 0px;
  }

  /* フォームボックス */
  .form {
    margin-right: auto;
    margin-left: auto;
  }
  .form .section, .form > section, .form > div {
    width: 920px;
    margin-right: auto;
    margin-bottom: 80px;
    margin-left: auto;
  }
  .form .section:last-child,
  .form > section:last-child,
  .form > div:last-child {
    margin-bottom: 0;
  }
  #main .form .section,
  #main .form > section,
  #main .form > div {
    width: auto;
    margin-bottom: 60px;
  }
  .form .section#hidden, .form > section#hidden, .form > div#hidden {
    margin: 0;
  }
  .form .box_message {
    width: 920px;
    margin: 30px auto;
  }
  #main .form .box_message {
    width: auto;
    margin-left: 30px;
    margin-right: 30px;
  }
  .form .box_message + .box_error {
    margin-top: -10px;
  }
  .form .box_error {
    margin: 20px auto 30px;
  }
  .form .box_button {
    width: 100%;
    margin-bottom: 0;
  }
  .form .box_button .button {
    width: 420px;
  }
  .form .box_button .button:last-child {
    margin-bottom: 0;
  }
  .form .button:disabled {
    opacity: .5;
    pointer-events: none;
  }
  .form .button.button_sub {
    padding: 16px 10px 14px;
    font-size: 14px;
  }
  .form .button.button_white {
    background: #fff;
  }
  .form .button.button_delete {
    padding-right: 30px;
  }
  .form .button_small {
    display: inline-block;
    width: auto;
    margin: 0;
    vertical-align: middle;
  }
  .form .reg + .button_small {
    margin-left: 5px;
  }
  .form button.disabled,
  .form input.disabled {
    display: block;
    width: 420px;
    margin: 0 auto;
    padding: 20px 0;
    border: 2px solid #cd3333;
    background: #fff;
    color: #cd3333;
    text-align: center;
  }
  .form button.disabled strong,
  .form input.disabled strong {
    display: block;
    font-size: 18px;
  }

  /* 必須項目 */
  .ico_require {
    display: inline-block;
    width: 45px;
    margin-right: 5px;
    padding: 8px 0;
    background: #f05151;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-indent: 0;
  }

  input.require,
  textarea.require {
    background: #f2f2f7;
  }

  /* フォームテーブル */
  .table_form {
    width: 100%;
    border-top: #8e8e8e 1px solid;
    border-bottom: #8e8e8e 1px solid;
  }
  .table_cart + .table_form {
    border-top: 0;
  }
  .table_form th,
  .table_form td {
    box-sizing: border-box;
    border-top: 1px solid #8e8e8e;
    font-size: 16px;
    vertical-align: middle;
  }
  .table_form tr:first-child th, .table_form tr:first-child td {
    border-top: 0;
  }
  .table_form th {
    width: 250px;
    padding: 20px 10px 20px 30px;
    background: #f2f2f7;
    font-weight: 500;
    text-align: left;
  }
  #main .table_form th {
    width: 160px;
    padding-left: 20px;
  }
  #main .table_form th.wide {
    white-space: nowrap;
  }
  .table_form th .supplement {
    display: block;
    font-size: 12px;
  }
  .table_form th.primary {
    width: 100px;
  }
  .table_form th.secondary {
    width: 120px;
    padding-left: 10px;
    font-size: 14px;
  }
  .table_form td {
    padding: 20px 20px 20px 30px;
  }
  .table_form td:last-child {
    padding-right: 0;
  }
  .table_form td.icon {
    width: 65px;
    padding: 20px 20px 20px 0;
    background: #f2f2f7;
  }
  .table_form td p:first-child {
    margin: 0 0 10px;
  }
  .table_form td .supplement {
    margin: 10px 0 0;
    font-size: 14px;
  }
  .table_form .ico_require {
    margin: 0;
  }
  .table_form .select {
    display: inline-block;
    border-color: #d2d2d9;
  }
  .table_form .select select {
    padding-left: 20px;
  }
  #main .table_form .select select {
    padding-left: 15px;
  }
  .table_form input[type=text], .table_form input[type=password], .table_form input.field {
    border-color: #d2d2d9;
    width: 370px;
    height: 44px;
    max-width: 100%;
  }
  #main .table_form input[type=text],
  #main .table_form input[type=password],
  #main .table_form input.field {
    padding-right: 15px;
    padding-left: 15px;
  }
  .table_form input.wide {
    width: 100%;
  }
  .table_form input.zip,
  .table_form input.tel {
    width: 340px;
  }
  .table_form input.year {
    width: 100px;
  }
  .table_form input.number {
    width: 100px;
  }
  .table_form .prefecture {
    width: 198px;
  }
  .table_form .type_check,
  .table_form .type_radio {
    width: 180px;
    padding: 10px 10px 10px 40px;
    border: #f2f2f7 5px solid;
    background: #f2f2f7;
  }
  .table_form .type_check::before,
  .table_form .type_radio::before {
    left: 8px;
  }
  .table_form .type_check::after,
  .table_form .type_radio::after {
    top: 3px;
  }
  .table_form .type_check:hover,
  .table_form .type_radio:hover {
    background: #fff;
  }
  .table_form .type_check.checked,
  .table_form .type_radio.checked {
    border-color: #f47d7d;
    background: #fff;
    color: #c0595d;
  }
  .table_form .name {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    width: auto;
  }
  .table_form .name > div {
    width: 40%;
    margin: 0;
  }
  .table_form .name > div:first-child {
    margin-right: 20px;
  }
  .table_form .name > div input {
    width: 100%;
    max-width: 180px;
  }
  .table_form .name_tit {
    display: inline-block;
    width: 40px;
    font-weight: 700;
  }
  .table_form .name .reg {
    margin-top: 7px;
  }
  .table_form .box_tel {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .table_form .box_tel .item {
    width: 116px;
    margin: 0;
  }
  .table_form .box_tel .item:not(:first-child) {
    margin-left: 11px;
  }
  .table_form .box_tel input {
    width: 116px;
  }
  .table_form .box_house_number {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: auto;
  }
  .table_form .box_house_number::after {
    display: none;
  }
  .table_form .box_house_number .item {
    margin-right: 10px;
  }
  .table_form .box_house_number .type_check {
    display: inline-block;
    width: auto;
    padding-top: 8px;
    padding-bottom: 8px;
    font-size: 14px;
  }
  .table_form .box_birthday {
    display: flex;
    align-items: center;
  }
  .table_form .box_birthday .select {
    flex-shrink: 0;
    margin: 0 10px 0 20px;
  }
  .table_form .box_birthday .select:first-child {
    flex-shrink: 1;
    margin-left: 0;
  }
  .table_form .action {
    background: #f2f2f7;
    text-align: center;
  }
  .table_form .btn_postcode {
    padding-right: 10px;
    padding-left: 10px;
    vertical-align: middle;
  }

  /* インライン */
  .list_inline {
    display: flex;
    flex-wrap: wrap;
    margin: -10px 0 0 -10px;
    padding: 0;
    list-style: none;
  }
  _:-ms-lang(x)::-ms-backdrop, .list_inline {
    display: block;
    overflow: hidden;
  }
  .list_inline::after {
    display: none;
  }
  .list_inline li {
    margin: 10px 0 0 10px;
  }
  _:-ms-lang(x)::-ms-backdrop, .list_inline li {
    float: left;
  }

  /* ブロック */
  .list_block {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .list_block li {
    margin-bottom: 5px;
  }
  .list_block li:last-child {
    margin-bottom: 0;
  }
  .list_block label span {
    font-size: 14px;
  }
  .list_block .type_radio,
  .list_block .type_check {
    width: auto;
  }

  /* 入力レギュレーション */
  .reg {
    display: inline-block;
    margin: 3px 0 3px 10px;
    padding: 5px 10px 4px;
    background: #f2f2f7;
    color: #787878;
    font-size: 14px;
    vertical-align: 1px;
  }
  _:-ms-lang(x)::-ms-backdrop, .reg {
    vertical-align: 8px;
  }

  /* エラー系 */
  .error_message {
    margin: 16px 0 0;
    color: #ec2626;
    font-size: 14px;
  }
  .error_message + .error_message {
    margin-top: 5px;
  }

  input.error,
  .select.error {
    border: 1px solid #ec2626;
    background: #ffeaea;
  }

  /*
  オーダーデスク
  -----------------------------------*/
  .order_desk {
    display: flex;
    align-items: flex-end;
    box-sizing: border-box;
    width: 600px !important;
    margin: 30px auto 0;
    padding: 25px 30px 30px;
    border: #d2d2d9 5px solid;
  }
  .order_desk p {
    font-size: 12px;
  }
  .order_desk .tit {
    width: 216px;
    margin: 0 50px 0 35px;
    font-size: 14px;
  }

  /* エラー表示（jsバリデーション） */
  .formError {
    position: relative;
    z-index: auto;
    top: 0;
    left: 0;
    margin-top: 10px;
  }
  .formError .formErrorContent {
    width: auto;
  }

  /*
  フォーム用フロー
  -----------------------------------*/
  #flow {
    margin: 0 0 30px;
    padding: 0;
    text-align: center;
    list-style: none;
  }

  #flow li {
    position: relative;
    display: inline-block;
    width: 140px;
    margin: 0 2px;
  }

  #flow li:not(:last-child):after {
    position: absolute;
    top: 21px;
    left: 94px;
    display: block;
    width: 100px;
    height: 2px;
    background: #dcdcdc;
    content: " ";
  }

  #flow i {
    display: block;
    margin: 0 auto 10px;
    width: 40px;
    height: 39px;
    padding-top: 1px;
    border: 2px solid #dcdcdc;
    border-radius: 22px;
    background: #dcdcdc;
    font-size: 20px;
    font-style: normal;
    line-height: 39px;
    text-align: center;
  }

  #flow .current i {
    border-color: #f1730c;
    background: #fff;
    color: #f1730c;
  }

  #flow .current {
    color: #f1730c;
  }

  #flow .entered i {
    border-color: #666;
    background: #666;
    color: #eee;
  }

  #flow a {
    transition: .2s ease;
    text-decoration: none;
  }
  #flow a:hover {
    opacity: .7;
  }

  #flow .current a {
    color: #f1730c;
  }

  #flow .entered a {
    color: #666;
  }

  /* リスト お知らせ
  -----------------------------------*/
  .list_notice dt {
    width: 110px;
    padding: 25px 0 25px 30px;
    float: left;
    font-size: 16px;
    font-weight: 500;
  }
  .list_notice dd {
    margin: 0;
    padding: 25px 30px 25px 0;
    border-bottom: #f2f2f7 1px dotted;
    font-size: 16px;
  }

  /*リスト
  -----------------------------------*/
  /* インデントつきリスト */
  .list_indent {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .list_indent li {
    padding-left: 1em;
    text-indent: -1em;
  }
  .list_indent li:not(:last-child) {
    margin-bottom: 5px;
  }

  /*
  ページネーション
  -----------------------------------*/
  .pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: -1px 0 0;
    padding: 10px 0;
    border-top: #8e8e8e 1px solid;
    border-bottom: #8e8e8e 1px solid;
  }
  .pagination a, .pagination .current, .pagination .prev, .pagination .next {
    box-sizing: border-box;
    min-width: 50px;
    height: 50px;
    margin: 0 2px;
    padding: 0 10px;
    transition: .2s ease;
    color: #000;
    font-size: 16px;
    line-height: 50px;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
  }
  .pagination a:hover, .pagination .current:hover, .pagination .prev:hover, .pagination .next:hover {
    background: #f2f2f7;
  }
  .pagination .current {
    background: #f2f2f7;
    font-weight: 700;
  }
  .pagination .prev {
    position: relative;
    margin-right: 40px;
    text-indent: -9999px;
  }
  .pagination .prev::before {
    display: block;
    width: 9px;
    height: 9px;
    transform: rotate(-135deg);
    border: #000 1px solid;
    border-width: 1px 1px 0 0;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -5px 0 0 -4px;
  }
  .pagination .next {
    position: relative;
    margin-left: 40px;
    text-indent: -9999px;
  }
  .pagination .next::before {
    display: block;
    width: 9px;
    height: 9px;
    transform: rotate(45deg);
    border: #000 1px solid;
    border-width: 1px 1px 0 0;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -5px 0 0 -8px;
  }
  .pagination .disabled {
    opacity: .2;
    pointer-events: none;
  }
  .pagination span {
    min-width: 40px;
    margin: 0 2px;
    color: #000;
    font-size: 16px;
    font-weight: 700;
    line-height: 50px;
    text-align: center;
  }
  .pagination_count {
    margin-top: 26px;
    color: #787878;
    text-align: center;
  }

  /*
  リピーターお知らせ
  -----------------------------------*/
  .repeat_customer_info {
    margin-top: 20px;
    padding: 20px 0;
    background: #f2f2f7;
  }

  .customer_info {
    margin: 0 auto;
  }
  .repeat_customer_info .customer_info {
    max-width: 1000px;
  }
  .customer_info li {
    margin-top: 1px;
  }
  .customer_info li:first-child {
    margin-top: 0;
  }
  .customer_info a {
    display: flex;
    position: relative;
    align-items: center;
    padding: 18px 50px 18px 78px;
    transition: .2s linear;
    background: #fff;
    color: #000;
    text-decoration: none;
  }
  .cart_customer_info .customer_info a {
    background: #f2f2f7;
  }
  .mypage_customer_info .customer_info a {
    flex-direction: column;
    align-items: flex-start;
    background: #f2f2f7;
  }
  .customer_info a:hover {
    background: rgba(255, 255, 255, 0.6);
  }
  .cart_customer_info .customer_info a:hover, .mypage_customer_info .customer_info a:hover {
    background: rgba(242, 242, 247, 0.6);
  }
  .customer_info a span {
    line-height: 1.3;
  }
  .customer_info a::after {
    display: block;
    width: 8px;
    height: 8px;
    transform: rotate(45deg) translateX(-80%);
    border: #000 1px solid;
    border-width: 1px 1px 0 0;
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
  }
  .customer_info b {
    color: #f47d7d;
    font-weight: 500;
  }
  .customer_info .date {
    flex-shrink: 0;
    margin-right: 20px;
    color: #787878;
    font-size: 12px;
  }
  .mypage_customer_info .customer_info .date {
    margin: 0 0 10px;
  }
  .customer_info .sup {
    flex-shrink: 0;
    margin-left: 20px;
    color: #787878;
    font-size: 12px;
  }
  .mypage_customer_info .customer_info .sup {
    margin: 10px 0 0;
  }
  .customer_info .limit {
    margin-top: 5px;
    color: #787878;
  }
  .customer_info .limit_period {
    display: inline-block;
    margin-right: 10px;
    padding: 10px 20px 8px;
    border: #d2d2d9 1px solid;
    background: #fff;
    line-height: 1;
  }
  .customer_info .limit_period b {
    font-weight: 700;
  }

  /* トグルボタン */
  .customer_info_btn {
    width: 100px;
    margin: 20px auto 0;
    cursor: pointer;
  }
  .customer_info_btn.is-opened i {
    transform: rotate(90deg);
    background: #d2d2d9;
  }
  .customer_info_btn.is-opened i::before {
    opacity: 0;
  }
  .customer_info_btn.is-opened span {
    color: #787878;
  }
  .customer_info_btn:hover i {
    background: #000;
  }
  .customer_info_btn:hover span {
    color: #000;
  }
  .customer_info_btn i {
    display: block;
    position: relative;
    width: 40px;
    height: 40px;
    margin: 0 auto;
    transition: .2s linear;
    border-radius: 20px;
    background: #f47d7d;
  }
  .customer_info_btn i::before, .customer_info_btn i::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 1px;
    transform: translate(-50%, -50%);
    transition: .2s linear;
    background: #fff;
  }
  .customer_info_btn i::after {
    width: 1px;
    height: 18px;
  }
  .customer_info_btn span {
    display: block;
    margin-top: 7px;
    transition: .2s linear;
    color: #f47d7d;
    font-size: 12px;
    line-height: 1;
    text-align: center;
  }

  /*
  絞り込みトグル サイドナビゲーションなど
  -----------------------------------*/
  .refine_primary_item i, .refine_secondary_item i {
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    transition: .4s ease;
  }
  .refine_primary_item i::before, .refine_secondary_item i::before {
    display: block;
    width: 5px;
    height: 5px;
    transform: rotate(135deg);
    border: #fff 1px solid;
    border-width: 1px 1px 0 0;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -4px 0 0 -3.5px;
  }

  .refine_primary_item.is-opened i, .refine_secondary_item.is-opened i {
    transform: rotate(-180deg);
  }

  .refine_primary_item, .refine_secondary_item, .refine_tertiary_item {
    display: block;
    position: relative;
    transition: .2s linear;
    line-height: 1;
    text-decoration: none;
  }
  .refine_primary_item:focus, .refine_secondary_item:focus, .refine_tertiary_item:focus {
    outline: none;
  }

  .refine_primary > li:not(:first-child) {
    margin-top: 10px;
  }
  .refine_primary_item {
    padding: 16px 20px;
    background: #787878;
    color: #fff;
  }
  .refine_primary_item i {
    background: rgba(0, 0, 0, 0.5);
  }
  .refine_primary_item:hover i {
    background: black;
  }
  .refine_primary_item.is-opened {
    background: #f2f2f7;
    color: #000;
    font-weight: 700;
  }

  .refine_secondary_item {
    padding: 16px 20px 16px 30px;
    border-top: #fff 1px solid;
    background: #f2f2f7;
    color: #000;
    font-size: 14px;
  }
  .refine_secondary_item i {
    background: rgba(120, 120, 120, 0.5);
  }
  .refine_secondary_item:hover i {
    background: #787878;
  }
  .refine_secondary_item.is-opened {
    border-color: #d2d2d9;
    background: #fff;
    color: #000;
    font-weight: 700;
  }

  .refine_tertiary li {
    border-top: #f2f2f7 1px solid;
  }
  .refine_tertiary_item {
    padding: 16px 20px 16px 30px;
    color: #787878;
    font-size: 14px;
  }
  .refine_tertiary_item::after {
    display: block;
    width: 5px;
    height: 5px;
    transform: rotate(45deg);
    border: #000 1px solid;
    border-width: 1px 1px 0 0;
    content: "";
    position: absolute;
    top: 50%;
    right: 18px;
    margin-top: -4px;
  }
  .refine_tertiary_item:hover {
    color: #000;
  }

  /*
  バナー領域
  -----------------------------------*/
  /* 1列 */
  .box_banner {
    margin-top: 60px;
  }
  .box_banner a {
    display: block;
    transition: .2s ease;
  }
  .box_banner a:not(:first-child) {
    margin-top: 10px;
  }
  .box_banner a:hover {
    opacity: .7;
  }

  /* フッター用 */
  .box_banner_footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 90px;
  }
  .box_banner_footer + .box_banner_footer {
    margin-top: 40px;
  }
  .box_banner_footer::after {
    display: none;
  }
  .box_banner_footer a {
    width: 100%;
    margin-top: 30px;
    transition: .2s ease;
  }
  .box_banner_footer a:hover {
    opacity: .7;
  }
  .box_banner_footer a img {
    width: 100%;
    height: auto;
  }
  .box_banner_footer_column2 a {
    width: 48%;
  }
  .box_banner_footer_column2 a:nth-child(-n+2) {
    margin-top: 0;
  }

  /*
  モーダル共通
  -----------------------------------*/
  #overlay {
    visibility: hidden;
    position: fixed;
    z-index: 8;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: .3s linear;
    opacity: 0;
    background: rgba(0, 0, 0, 0.5);
  }
  #overlay.is-opened {
    visibility: visible;
    opacity: 1;
  }

  .modal {
    display: flex;
    position: fixed;
    z-index: 9;
    top: 50%;
    left: 50%;
    flex-direction: column;
    width: 80%;
    min-width: 944px;
    max-width: 1200px;
    max-height: 80%;
    overflow: hidden;
    transform: translate(-50%, -50%);
    background: #fff;
  }
  .modal_head {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    border-bottom: #8e8e8e 1px solid;
  }
  .modal_head::after {
    display: none;
  }
  .modal_tit {
    flex: 1;
    padding-left: 40px;
    font-size: 20px;
  }
  .modal_menu {
    display: flex;
    margin-left: auto;
    padding: 10px;
  }
  .modal_menu .button {
    width: auto;
    margin: 0 0 0 10px;
  }
  .modal_body {
    display: flex;
    flex: 1 1 auto;
    overflow-y: auto;
  }

  /* 外部ファイル読み込み用 */
  .modal-blank {
    opacity: 0;
  }

  /* COLOR BOX */
  .header_modal {
    margin: 0;
    padding: 0 20px;
    box-shadow: 0 2px 5px 0 rgba(38, 38, 38, 0.2);
  }
  .header_modal #logo {
    height: 46px;
    margin: 0;
    padding: 17px 0;
  }
  .header_modal #logo a {
    display: block;
  }
  .header_modal #logo img {
    width: auto;
    height: 46px;
  }

  #cboxOverlay {
    background: rgba(0, 0, 0, 0.5);
  }

  #cboxLoadingOverlay {
    display: none !important;
    opacity: 0;
    background: transparent;
  }

  #cboxLoadingGraphic {
    display: none !important;
    background: none;
  }

  #cboxContent {
    margin: 0;
    background: transparent;
  }

  #cboxLoadedContent {
    padding: 0;
    border: 0;
    background: #fff;
  }

  #cboxClose {
    display: none;
    top: 10px;
    right: 20px;
    width: 55px;
    height: 55px;
    transition: .2s ease;
    background: #f2f2f7;
  }
  #cboxClose::before, #cboxClose::after {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 4px;
    height: 40px;
    margin-left: -2px;
    background: #fff;
    content: "";
  }
  #cboxClose::before {
    transform: translateY(-50%) rotate(45deg);
  }
  #cboxClose::after {
    transform: translateY(-50%) rotate(-45deg);
  }

  /*side
  -----------------------------------*/
  .box_side {
    margin-top: 40px;
  }
  .box_side:first-child {
    margin-top: 0;
  }

  /*カテゴリリスト
  -----------------------------------*/
  .side_category {
    margin-top: 30px;
    padding-top: 16px;
    background: #fff;
    box-shadow: 0 2px 5px 0 rgba(38, 38, 38, 0.2);
  }
  .side_category:first-child {
    margin-top: 0;
  }
  .side_category .title {
    margin: 0 30px 14px;
    font-size: 20px;
    font-weight: normal;
  }
  .side_category .sub_title {
    padding: 14px 20px 13px;
    font-size: 18px;
    font-weight: normal;
  }
  .side_category .sub_title a {
    width: auto;
    margin: -14px -20px -13px;
    padding: 14px 20px 13px;
    color: inherit;
    font-size: inherit;
  }
  .side_category .sub_title a:hover {
    background: #d2d2d9;
  }
  .side_category li {
    position: relative;
    border-top: #d2d2d9 1px solid;
  }
  .side_category li:first-child {
    border-top: 0;
  }
  .side_category li:hover > a, .side_category li.current > a {
    background: #d2d2d9;
  }
  .side_category a {
    display: flex;
    position: relative;
    align-items: center;
    width: 100%;
    padding: 14px 20px 12px 60px;
    transition: .2s ease;
    color: #000;
    font-size: 14px;
    text-decoration: none;
    box-sizing: border-box;
  }
  .side_category a img {
    position: absolute;
    top: 50%;
    left: 15px;
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
  .side_category .item {
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    margin-top: 0;
    background: #fff;
    box-shadow: 0 2px 5px 0 rgba(38, 38, 38, 0.2);
    z-index: 1;
  }
  .side_category .item li a {
    padding: 8px 20px 6px;
  }
  .side_category .item .js-side-nav > a::after {
    display: block;
    width: 6px;
    height: 6px;
    transform: rotate(45deg);
    border: #787878 2px solid;
    border-width: 2px 2px 0 0;
    content: "";
    position: absolute;
    top: 50%;
    right: 19px;
    margin-top: -3px;
  }

  /* 絞り込み条件
  -----------------------------------*/
  .side_refine {
    margin-top: 30px;
    padding-top: 16px;
    background: #fff;
    box-shadow: 0 2px 5px 0 rgba(38, 38, 38, 0.2);
  }
  .side_refine .box {
    margin-bottom: 25px;
  }
  .side_refine .title {
    margin: 0 30px 14px;
    font-size: 20px;
    font-weight: normal;
  }
  .side_refine .select {
    margin: 0 20px;
  }
  .side_refine .inner {
    margin: 0 20px;
  }
  .side_refine .inner + .inner {
    margin-top: 20px;
  }

  /* ラジオリスト */
  .list_condition {
    margin: 0 20px;
  }
  .list_condition li:not(:first-child) {
    margin-top: 1px;
  }
  .list_condition .type_check {
    padding: 10px 10px 10px 40px;
    border: 0;
  }
  .list_condition .type_check::before {
    left: 10px;
  }

  /* 価格帯 */
  .range {
    margin: 0 20px 5px;
  }
  .range input {
    width: 210px;
    margin-right: 10px;
  }

  /* キーワード */
  .select_keyword.select {
    display: table;
    margin: 5px 0 0;
  }
  .select_keyword.select select {
    width: auto;
    margin: 0;
  }

  .input_keyword {
    width: 100%;
  }

  .list_color li {
    float: left;
    width: 30px;
    height: 30px;
    margin: 10px 10px 0 0;
  }

  .list_color li:nth-child(-n+6) {
    margin-top: 0;
  }

  .list_color li:nth-child(6n) {
    margin-right: 0;
  }

  .list_color label {
    display: block;
    width: 30px;
    height: 30px;
  }

  .list_color label.checked:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 30px;
    height: 30px;
    content: url(../images/common/bg_checked.png);
  }

  .list_color label input {
    display: block;
    width: 30px;
    height: 30px;
  }

  /* バナー
  -----------------------------------*/
  .side_bnr {
    margin-top: 5px;
  }
  .side_bnr a {
    display: block;
    transition: .2s ease;
  }
  .side_bnr a:hover {
    opacity: .7;
  }
  .side_bnr a img {
    width: 100%;
    height: auto;
  }

  /* サイドボタン
  -----------------------------------*/
  #side .box_button {
    margin: 20px 40px 0;
  }
  #side .button {
    width: 100%;
    padding: 13px 10px 11px;
    font-size: 14px;
  }

  /* 広告 */
  #side .pr {
    margin: 30px 0;
    text-align: center;
  }

  #side .pr:first-child {
    margin-top: 0;
  }

  /* サイトマップ
  -----------------------------------*/
  #side .sitemap {
    margin-top: 40px;
    background: #fff;
    box-shadow: 0 2px 5px 0 rgba(38, 38, 38, 0.2);
  }
  #side .sitemap .title {
    margin: 0;
    padding: 15px 20px;
    background: #d2d2d9;
    color: #000;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
  }
  #side .sitemap ul {
    margin-top: 5px;
  }
  #side .sitemap a {
    display: block;
    padding: 5px 20px;
    transition: .2s ease;
    color: #000;
    font-size: 14px;
    text-decoration: none;
  }
  #side .sitemap a:hover {
    color: #2363d9;
  }

  /*カレンダー
  -----------------------------------*/
  .calendar {
    width: 230px;
    padding: 10px;
    background: #f2f2f2;
  }

  .calendar .title {
    margin: 0 0 10px;
    font-weight: bold;
    text-align: center;
  }

  .calendar .slide {
    position: relative;
    overflow: hidden;
  }

  .calendar .control {
    position: absolute;
    top: 2px;
    cursor: pointer;
    z-index: 10;
  }

  .calendar .prev {
    left: 0;
  }

  .calendar .next {
    right: 0;
  }

  .calendar .prev:before {
    margin-right: 5px;
    content: url(../images/common/ico_arrow_l.png);
    vertical-align: -2px;
  }

  .calendar .next:after {
    display: inline;
    margin-left: 5px;
    content: url(../images/common/ico_arrow_r.png);
    vertical-align: -2px;
  }

  .calendar .wrap {
    position: relative;
  }

  .calendar .month {
    float: left;
  }

  .calendar .month p {
    margin: 0 0 20px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
  }

  .calendar .month th {
    width: 31px;
    padding-bottom: 5px;
    font-size: 10px;
  }

  .calendar .month th:last-child {
    width: 30px;
  }

  .calendar .month td {
    width: 31px;
    padding: 8px 0;
    border-right: 1px solid #f2f2f2;
    background: #fff;
    text-align: center;
  }

  .calendar .month td:last-child {
    border-right: none;
  }

  .calendar .month td.saturday {
    background: #dcebfa;
  }

  .calendar .month td.holiday {
    background: #f2cccc;
  }

  .calendar .month .today {
    background: #cd3333;
    color: #fff;
  }

  /* 最近チェックした商品
  -----------------------------------*/
  .box_history {
    max-width: 1200px;
    min-width: 984px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 130px;
  }
  @media only screen and (max-width: 1240px) {
    .box_history {
      margin-right: 20px;
      margin-left: 20px;
    }
  }
  #main .box_history {
    min-width: 0;
    max-width: 100%;
    margin-right: 0;
    margin-left: 0;
  }

  .title_history {
    margin-bottom: 34px;
    font-size: 24px;
    font-weight: 500;
  }

  .list_history {
    display: flex;
    flex-wrap: wrap;
  }
  .list_history .item {
    position: relative;
    box-sizing: border-box;
    width: 20%;
    padding: 30px 20px;
    transition: .2s ease;
    color: #000;
    text-decoration: none;
  }
  #main .list_history .item {
    padding-right: 10px;
    padding-left: 10px;
  }
  .list_history .item:hover {
    opacity: .7;
  }
  .list_history .best {
    position: absolute;
    top: 20px;
    left: 20px;
  }
  .list_history .best img {
    width: 45px;
    height: auto;
  }
  .list_history .image {
    margin-bottom: 20px;
  }
  .list_history .image img {
    width: 100%;
  }
  .list_history .category {
    color: #787878;
    font-size: 14px;
  }
  .list_history .name {
    font-size: 18px;
    line-height: 1.4;
  }
  #main .list_history .name {
    font-size: 16px;
  }
  .list_history .price {
    margin-top: 15px;
    line-height: 1.4;
  }

  /* アイコン
  -----------------------------------*/
  .ico_birth, .ico_item, .ico_campaign, .ico_mail, .ico_calendar, .ico_review, .ico_survey, .ico_ba, .ico_red, .ico_ws, .ico_wrs, .ico_map, .ico_event {
    display: block;
    width: 54px;
    height: 54px;
    border-radius: 28px;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 26px 26px;
  }
  .customer_info_ico.ico_birth, .customer_info_ico.ico_item, .customer_info_ico.ico_campaign, .customer_info_ico.ico_mail, .customer_info_ico.ico_calendar, .customer_info_ico.ico_review, .customer_info_ico.ico_survey, .customer_info_ico.ico_ba, .customer_info_ico.ico_red, .customer_info_ico.ico_ws, .customer_info_ico.ico_wrs, .customer_info_ico.ico_map, .customer_info_ico.ico_event {
    position: absolute;
    top: 50%;
    left: 20px;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    background-size: 20px 20px;
  }

  /* 誕生日 */
  .ico_birth {
    background-image: url("../images/common/ico/ico_birth_g.png");
  }

  /* アイテム */
  .ico_item {
    background-image: url("../images/common/ico/ico_item_g.png");
  }

  /* キャンペーン */
  .ico_campaign {
    background-image: url("../images/common/ico/ico_campaign_g.png");
  }

  /* メール */
  .ico_mail {
    background-image: url("../images/common/ico/ico_mail_g.png");
  }

  /* カレンダー */
  .ico_calendar {
    background-image: url("../images/common/ico/ico_calendar_g.png");
  }

  /* レビュー */
  .ico_review {
    background-image: url("../images/common/ico/ico_review_g.png");
  }

  /* アンケート */
  .ico_survey {
    background-image: url("../images/common/ico/ico_survey_g.png");
  }

  /* STEPUPキャンペーン(BA) */
  .ico_ba {
    background-image: url("../images/common/ico/ico_campaign_ba.png");
  }

  /* STEPUPキャンペーン(RED) */
  .ico_red {
    background-image: url("../images/common/ico/ico_campaign_redba.png");
  }

  /* STEPUPキャンペーン(WS) */
  .ico_ws {
    background-image: url("../images/common/ico/ico_campaign_ws.png");
  }

  /* STEPUPキャンペーン(WRS) */
  .ico_wrs {
    background-image: url("../images/common/ico/ico_campaign_rs.png");
  }

  /* マップ */
  .ico_map {
    background-image: url("../images/common/ico/ico_map_g.png");
  }

  /* イベントフラッグ */
  .ico_event {
    background-image: url("../images/common/ico/ico_event_g.png");
  }

  /*footer
  -----------------------------------*/
  footer.global {
    position: relative;
    margin-top: 125px;
  }
  footer.global .copyright {
    display: block;
    margin: 10px 0 20px;
    font-size: 10px;
    text-align: center;
  }

  /* 簡易フッター */
  .footer_simple {
    margin-top: 125px;
    border-top: #8e8e8e 1px solid;
  }
  .footer_simple .copyright {
    display: block;
    margin: 10px 0 20px;
    font-size: 10px;
    text-align: center;
  }
  footer .box_button {
    margin: 0 9.34vw 2.67vw;
  }
  footer .button_smt {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    background: #a1a1a3;
    color: #fff;
  }
  /* フッターお問い合わせ関連 */
  .footer_inquiry {
    background: #f2f2f7;
  }
  .footer_inquiry .inner {
    max-width: 1200px;
    min-width: 984px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    display: flex;
    box-sizing: content-box;
    justify-content: space-between;
    border-right: #fff 1px solid;
    border-left: #fff 1px solid;
  }
  @media only screen and (max-width: 1240px) {
    .footer_inquiry .inner {
      margin-right: 20px;
      margin-left: 20px;
    }
  }
  .footer_inquiry .item {
    display: flex;
    box-sizing: border-box;
    flex-direction: column;
    align-items: center;
    width: 31.7%;
    padding: 40px 0;
  }
  .footer_inquiry .item_tel {
    width: 36.6%;
    border-right: #fff 1px solid;
    border-left: #fff 1px solid;
  }
  .footer_inquiry .title {
    margin-bottom: 16px;
    color: #000;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
  }
  .footer_inquiry p {
    color: #787878;
    font-size: 13px;
    text-align: center;
  }
  .footer_inquiry p b {
    font-weight: 700;
  }
  .footer_inquiry p .txt_sup {
    display: block;
    font-size: 10px;
    line-height: 1.5;
  }
  .footer_inquiry ul {
    width: 100%;
    margin-top: 16px;
  }
  .footer_inquiry ul li:not(:first-child) {
    margin-top: 2px;
  }
  .footer_inquiry .button_small {
    width: 55%;
    padding-right: 10px;
    padding-left: 10px;
    border-color: #d2d2d9;
  }
  .footer_inquiry .button_small:hover {
    border-color: #d2d2d9;
    background: #d2d2d9;
  }
  .footer_inquiry .tel {
    display: flex;
    align-items: center;
    margin-top: 16px;
    border: #d2d2d9 1px solid;
    background: #fff;
  }
  .footer_inquiry .tel::before {
    content: "";
    width: 20px;
    height: 20px;
    padding: 0 13px;
    background: url("../images/common/ico/ico_tel_g.png") no-repeat 50% 50%;
    background-size: 20px 20px;
  }
  .footer_inquiry .tel img {
    display: block;
    width: 150px;
    height: auto;
    padding: 15px 30px;
    border-left: #d2d2d9 1px solid;
  }

  /* フッターナビゲーション */
  .footer_nav {
    padding: 50px 0;
    background: #000;
  }
  .footer_nav .inner {
    max-width: 1200px;
    min-width: 984px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
  }
  @media only screen and (max-width: 1240px) {
    .footer_nav .inner {
      margin-right: 20px;
      margin-left: 20px;
    }
  }
  .footer_nav .item {
    width: 16.7%;
    margin-left: 10px;
  }
  .footer_nav .item:first-child {
    margin-left: 0;
  }

  .footer_list li {
    margin-top: 10px;
    font-size: 12px;
  }
  .footer_list a {
    color: #fff;
    text-decoration: none;
  }
  .footer_list a:hover {
    text-decoration: underline;
  }

  .footer_sns {
    display: flex;
  }
  .footer_sns li:not(:first-child) {
    margin-left: 10px;
  }
  .footer_sns a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    transition: .2s ease;
    color: transparent;
    font-size: 0;
  }
  .footer_sns a:hover {
    transform: scale(1.3);
  }
  .footer_sns a.fb {
    background: url("../images/common/ico/ico_fb_w.png") no-repeat 50% 50%;
    background-size: 100% 100%;
  }
  .footer_sns a.inst {
    background: url("../images/common/ico/ico_inst_w.png") no-repeat 50% 50%;
    background-size: 100% 100%;
  }
  .footer_sns a.line {
    background: url("../images/common/ico/ico_line_w.png") no-repeat 50% 50%;
    background-size: 100% 100%;
  }
  .footer_sns a.youtube {
    background: url("../images/common/ico/ico_youtube_w.png") no-repeat 50% 50%;
    background-size: 100% 100%;
  }
  .footer_sns a.tw {
    background: url("../images/common/ico/ico_tw_w.png") no-repeat 50% 50%;
    background-size: 100% 100%;
  }

  .footer_jadma {
    margin-top: 30px;
  }
  .footer_jadma p {
    margin-top: 10px;
    color: #fff;
    font-size: 10px;
  }

  /* フッターリンク */
  .footer_support {
    display: flex;
    justify-content: center;
    margin: 20px 0 0;
  }
  .footer_support li {
    margin: 0 15px;
  }
  .footer_support a {
    color: #787878;
    font-size: 12px;
    text-decoration: none;
  }
  .footer_support a:hover {
    text-decoration: underline;
  }

  /* フッターロゴ */
  .footer_logo {
    margin-top: 10px;
  }
  .footer_logo a {
    display: block;
    width: 155px;
    margin: 0 auto;
  }
  .footer_logo a img {
    width: 155px;
    height: auto;
  }

  /* ページ上部へ ボタン */
  #page_top {
    position: relative;
  }
  #page_top_btn {
    display: block;
    position: absolute;
    right: 20px;
    bottom: 20px;
    width: 50px;
    height: 50px;
    transition: .3s ease;
    border-radius: 25px;
    opacity: 0;
    background: rgba(0, 0, 0, 0.5);
    color: transparent;
    font-size: 0;
    z-index: 3;
  }
  #page_top_btn.js-display {
    opacity: 1;
  }
  #page_top_btn.js-fixed {
    position: fixed;
  }
  #page_top_btn:hover {
    background: black;
  }
  #page_top_btn::before {
    display: block;
    width: 10px;
    height: 10px;
    transform: rotate(-45deg);
    border: #fff 1px solid;
    border-width: 1px 1px 0 0;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -2px 0 0 -5px;
  }
  #page_top_btn:focus {
    outline: none;
  }

  /* keyframes
  -----------------------------------*/
  @keyframes search-close {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
  @keyframes search-open {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
  @keyframes mypage {
    0% {
      width: 320px;
      height: 320px;
      box-shadow: 0 0 3px 5px rgba(255, 255, 255, 0), inset 0 0 5px rgba(255, 255, 255, 0);
    }
    30% {
      box-shadow: 0 0 3px 5px rgba(255, 255, 255, 0.5), inset 0 0 5px white;
    }
    100% {
      width: 340px;
      height: 340px;
      box-shadow: 0 0 3px 5px rgba(255, 255, 255, 0), inset 0 0 5px rgba(255, 255, 255, 0);
    }
  }
  @keyframes mypage2 {
    0% {
      width: 330px;
      height: 330px;
      box-shadow: 0 0 8px rgba(255, 255, 255, 0), inset 0 0 5px rgba(255, 255, 255, 0);
    }
    30% {
      box-shadow: 0 0 8px rgba(255, 255, 255, 0.5), inset 0 0 5px white;
    }
    100% {
      width: 360px;
      height: 360px;
      box-shadow: 0 0 8px rgba(255, 255, 255, 0), inset 0 0 5px rgba(255, 255, 255, 0);
    }
  }
  /* clearfix */
  header::after,
  footer::after,
  main::after,
  section::after,
  div::after,
  ul::after,
  .clearfix::after {
    display: block;
    height: 0;
    clear: both;
    color: transparent;
    font-size: 0;
    content: ".";
  }

  .smtDisp {
    text-align: center;
    font-size: 150%;
    border: 1px solid #CCCCCC;
    border-radius: 9px;
    -moz-border-radius: 9px;
    -webkit-border-radius: 9px;
    margin: 10px 50px;
  }

  .smtDisp a {
    text-decoration: underline;
    color: #006699;
  }

  /*# sourceMappingURL=common.css.map */

  .{padding: }


  .m0auto{margin: 0 auto;}
  .mt05{margin-top: 5px!important;}
  .mt10{margin-top: 10px!important;}
  .mt20{margin-top: 20px!important;}
  .mt25{margin-top: 25px!important;}
  .mt30{margin-top: 30px!important;}
  .mt35{margin-top: 35px!important;}
  .mt40{margin-top: 40px!important;}
  .mt45{margin-top: 45px!important;}
  .mt50{margin-top: 50px!important;}
  .mt55{margin-top: 55px!important;}
  .mt60{margin-top: 60px!important;}
  .mt65{margin-top: 65px!important;}
  .mt70{margin-top: 70px!important;}
  .mt75{margin-top: 75px!important;}
  .mt80{margin-top: 80px!important;}
  .mt85{margin-top: 85px!important;}
  .mt90{margin-top: 90px!important;}
  .mt95{margin-top: 95px!important;}
  .mt100{margin-top: 100px!important;}
  .mt105{margin-top: 105px!important;}
  .mt110{margin-top: 110px!important;}
  .mt115{margin-top: 115px!important;}
  .mt120{margin-top: 120px!important;}
  .mt125{margin-top: 125px!important;}
  .mt130{margin-top: 130px!important;}
  .mt135{margin-top: 135px!important;}
  .mt140{margin-top: 140px!important;}
  .mt145{margin-top: 145px!important;}
  .mt150{margin-top: 150px!important;}
  .mt155{margin-top: 155px!important;}
  .mt160{margin-top: 160px!important;}
  .mt165{margin-top: 165px!important;}
  .mt170{margin-top: 170px!important;}
  .mt175{margin-top: 175px!important;}
  .mt180{margin-top: 180px!important;}
  .mt185{margin-top: 185px!important;}
  .mt190{margin-top: 190px!important;}
  .mt195{margin-top: 195px!important;}
  .mt200{margin-top: 200px!important;}

  .mb05{margin-bottom: 5px!important;}
  .mb10{margin-bottom: 10px!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!important;}
  .mb45{margin-bottom: 45px!important;}
  .mb50{margin-bottom: 50px!important;}
  .mb55{margin-bottom: 55px!important;}
  .mb60{margin-bottom: 60px!important;}
  .mb65{margin-bottom: 65px!important;}
  .mb70{margin-bottom: 70px!important;}
  .mb75{margin-bottom: 75px!important;}
  .mb80{margin-bottom: 80px!important;}
  .mb85{margin-bottom: 85px!important;}
  .mb90{margin-bottom: 90px!important;}
  .mb95{margin-bottom: 95px!important;}
  .mb100{margin-bottom: 100px!important;}
  .mb105{margin-bottom: 105px!important;}
  .mb110{margin-bottom: 110px!important;}
  .mb115{margin-bottom: 115px!important;}
  .mb120{margin-bottom: 120px!important;}
  .mb125{margin-bottom: 125px!important;}
  .mb130{margin-bottom: 130px!important;}
  .mb135{margin-bottom: 135px!important;}
  .mb140{margin-bottom: 140px!important;}
  .mb145{margin-bottom: 145px!important;}
  .mb150{margin-bottom: 150px!important;}
  .mb155{margin-bottom: 155px!important;}
  .mb160{margin-bottom: 160px!important;}
  .mb165{margin-bottom: 165px!important;}
  .mb170{margin-bottom: 170px!important;}
  .mb175{margin-bottom: 175px!important;}
  .mb180{margin-bottom: 180px!important;}
  .mb185{margin-bottom: 185px!important;}
  .mb190{margin-bottom: 190px!important;}
  .mb195{margin-bottom: 195px!important;}
  .mb200{margin-bottom: 200px!important;}

  .mr05{margin-right: 5px!important;}
  .mr10{margin-right: 10px!important;}
  .mr15{margin-right: 15px!important;}
  .mr20{margin-right: 20px!important;}
  .mr25{margin-right: 25px!important;}
  .mr30{margin-right: 30px!important;}
  .mr35{margin-right: 35px!important;}
  .mr40{margin-right: 40px!important;}
  .mr45{margin-right: 45px!important;}
  .mr50{margin-right: 50px!important;}
  .mr55{margin-right: 55px!important;}
  .mr60{margin-right: 60px!important;}
  .mr65{margin-right: 65px!important;}
  .mr70{margin-right: 70px!important;}
  .mr75{margin-right: 75px!important;}
  .mr80{margin-right: 80px!important;}
  .mr85{margin-right: 85px!important;}
  .mr90{margin-right: 90px!important;}
  .mr95{margin-right: 95px!important;}
  .mr100{margin-right: 100px!important;}
  .mr105{margin-right: 105px!important;}
  .mr110{margin-right: 110px!important;}
  .mr115{margin-right: 115px!important;}
  .mr120{margin-right: 120px!important;}
  .mr125{margin-right: 125px!important;}
  .mr130{margin-right: 130px!important;}
  .mr135{margin-right: 135px!important;}
  .mr140{margin-right: 140px!important;}
  .mr145{margin-right: 145px!important;}
  .mr150{margin-right: 150px!important;}
  .mr155{margin-right: 155px!important;}
  .mr160{margin-right: 160px!important;}
  .mr165{margin-right: 165px!important;}
  .mr170{margin-right: 170px!important;}
  .mr175{margin-right: 175px!important;}
  .mr180{margin-right: 180px!important;}
  .mr185{margin-right: 185px!important;}
  .mr190{margin-right: 190px!important;}
  .mr195{margin-right: 195px!important;}
  .mr200{margin-right: 200px!important;}

  .ml05{margin-left: 5px!important;}
  .ml10{margin-left: 10px!important;}
  .ml15{margin-left: 15px!important;}
  .ml20{margin-left: 20px!important;}
  .ml25{margin-left: 25px!important;}
  .ml30{margin-left: 30px!important;}
  .ml35{margin-left: 35px!important;}
  .ml40{margin-left: 40px!important;}
  .ml45{margin-left: 45px!important;}
  .ml50{margin-left: 50px!important;}
  .ml55{margin-left: 55px!important;}
  .ml60{margin-left: 60px!important;}
  .ml65{margin-left: 65px!important;}
  .ml70{margin-left: 70px!important;}
  .ml75{margin-left: 75px!important;}
  .ml80{margin-left: 80px!important;}
  .ml85{margin-left: 85px!important;}
  .ml90{margin-left: 90px!important;}
  .ml95{margin-left: 95px!important;}
  .ml100{margin-left: 100px!important;}
  .ml105{margin-left: 105px!important;}
  .ml110{margin-left: 110px!important;}
  .ml115{margin-left: 115px!important;}
  .ml120{margin-left: 120px!important;}
  .ml125{margin-left: 125px!important;}
  .ml130{margin-left: 130px!important;}
  .ml135{margin-left: 135px!important;}
  .ml140{margin-left: 140px!important;}
  .ml145{margin-left: 145px!important;}
  .ml150{margin-left: 150px!important;}
  .ml155{margin-left: 155px!important;}
  .ml160{margin-left: 160px!important;}
  .ml165{margin-left: 165px!important;}
  .ml170{margin-left: 170px!important;}
  .ml175{margin-left: 175px!important;}
  .ml180{margin-left: 180px!important;}
  .ml185{margin-left: 185px!important;}
  .ml190{margin-left: 190px!important;}
  .ml195{margin-left: 195px!important;}
  .ml200{margin-left: 200px!important;}

  .pt05{padding-top: 5px!important;}
  .pt10{padding-top: 10px!important;}
  .pt20{padding-top: 20px!important;}
  .pt25{padding-top: 25px!important;}
  .pt30{padding-top: 30px!important;}
  .pt35{padding-top: 35px!important;}
  .pt40{padding-top: 40px!important;}
  .pt45{padding-top: 45px!important;}
  .pt50{padding-top: 50px!important;}
  .pt55{padding-top: 55px!important;}
  .pt60{padding-top: 60px!important;}
  .pt65{padding-top: 65px!important;}
  .pt70{padding-top: 70px!important;}
  .pt75{padding-top: 75px!important;}
  .pt80{padding-top: 80px!important;}
  .pt85{padding-top: 85px!important;}
  .pt90{padding-top: 90px!important;}
  .pt95{padding-top: 95px!important;}
  .pt100{padding-top: 100px!important;}
  .pt105{padding-top: 105px!important;}
  .pt110{padding-top: 110px!important;}
  .pt115{padding-top: 115px!important;}
  .pt120{padding-top: 120px!important;}
  .pt125{padding-top: 125px!important;}
  .pt130{padding-top: 130px!important;}
  .pt135{padding-top: 135px!important;}
  .pt140{padding-top: 140px!important;}
  .pt145{padding-top: 145px!important;}
  .pt150{padding-top: 150px!important;}
  .pt155{padding-top: 155px!important;}
  .pt160{padding-top: 160px!important;}
  .pt165{padding-top: 165px!important;}
  .pt170{padding-top: 170px!important;}
  .pt175{padding-top: 175px!important;}
  .pt180{padding-top: 180px!important;}
  .pt185{padding-top: 185px!important;}
  .pt190{padding-top: 190px!important;}
  .pt195{padding-top: 195px!important;}
  .pt200{padding-top: 200px!important;}

  .pb05{padding-bottom: 5px!important;}
  .pb10{padding-bottom: 10px!important;}
  .pb15{padding-bottom: 15px!important;}
  .pb20{padding-bottom: 20px!important;}
  .pb25{padding-bottom: 25px!important;}
  .pb30{padding-bottom: 30px!important;}
  .pb35{padding-bottom: 35px!important;}
  .pb40{padding-bottom: 40px!important;}
  .pb45{padding-bottom: 45px!important;}
  .pb50{padding-bottom: 50px!important;}
  .pb55{padding-bottom: 55px!important;}
  .pb60{padding-bottom: 60px!important;}
  .pb65{padding-bottom: 65px!important;}
  .pb70{padding-bottom: 70px!important;}
  .pb75{padding-bottom: 75px!important;}
  .pb80{padding-bottom: 80px!important;}
  .pb85{padding-bottom: 85px!important;}
  .pb90{padding-bottom: 90px!important;}
  .pb95{padding-bottom: 95px!important;}
  .pb100{padding-bottom: 100px!important;}
  .pb105{padding-bottom: 105px!important;}
  .pb110{padding-bottom: 110px!important;}
  .pb115{padding-bottom: 115px!important;}
  .pb120{padding-bottom: 120px!important;}
  .pb125{padding-bottom: 125px!important;}
  .pb130{padding-bottom: 130px!important;}
  .pb135{padding-bottom: 135px!important;}
  .pb140{padding-bottom: 140px!important;}
  .pb145{padding-bottom: 145px!important;}
  .pb150{padding-bottom: 150px!important;}
  .pb155{padding-bottom: 155px!important;}
  .pb160{padding-bottom: 160px!important;}
  .pb165{padding-bottom: 165px!important;}
  .pb170{padding-bottom: 170px!important;}
  .pb175{padding-bottom: 175px!important;}
  .pb180{padding-bottom: 180px!important;}
  .pb185{padding-bottom: 185px!important;}
  .pb190{padding-bottom: 190px!important;}
  .pb195{padding-bottom: 195px!important;}
  .pb200{padding-bottom: 200px!important;}

  .pr05{padding-right: 5px!important;}
  .pr10{padding-right: 10px!important;}
  .pr15{padding-right: 15px!important;}
  .pr20{padding-right: 20px!important;}
  .pr25{padding-right: 25px!important;}
  .pr30{padding-right: 30px!important;}
  .pr35{padding-right: 35px!important;}
  .pr40{padding-right: 40px!important;}
  .pr45{padding-right: 45px!important;}
  .pr50{padding-right: 50px!important;}
  .pr55{padding-right: 55px!important;}
  .pr60{padding-right: 60px!important;}
  .pr65{padding-right: 65px!important;}
  .pr70{padding-right: 70px!important;}
  .pr75{padding-right: 75px!important;}
  .pr80{padding-right: 80px!important;}
  .pr85{padding-right: 85px!important;}
  .pr90{padding-right: 90px!important;}
  .pr95{padding-right: 95px!important;}
  .pr100{padding-right: 100px!important;}
  .pr105{padding-right: 105px!important;}
  .pr110{padding-right: 110px!important;}
  .pr115{padding-right: 115px!important;}
  .pr120{padding-right: 120px!important;}
  .pr125{padding-right: 125px!important;}
  .pr130{padding-right: 130px!important;}
  .pr135{padding-right: 135px!important;}
  .pr140{padding-right: 140px!important;}
  .pr145{padding-right: 145px!important;}
  .pr150{padding-right: 150px!important;}
  .pr155{padding-right: 155px!important;}
  .pr160{padding-right: 160px!important;}
  .pr165{padding-right: 165px!important;}
  .pr170{padding-right: 170px!important;}
  .pr175{padding-right: 175px!important;}
  .pr180{padding-right: 180px!important;}
  .pr185{padding-right: 185px!important;}
  .pr190{padding-right: 190px!important;}
  .pr195{padding-right: 195px!important;}
  .pr200{padding-right: 200px!important;}

  .pl05{padding-left: 5px!important;}
  .pl10{padding-left: 10px!important;}
  .pl15{padding-left: 15px!important;}
  .pl20{padding-left: 20px!important;}
  .pl25{padding-left: 25px!important;}
  .pl30{padding-left: 30px!important;}
  .pl35{padding-left: 35px!important;}
  .pl40{padding-left: 40px!important;}
  .pl45{padding-left: 45px!important;}
  .pl50{padding-left: 50px!important;}
  .pl55{padding-left: 55px!important;}
  .pl60{padding-left: 60px!important;}
  .pl65{padding-left: 65px!important;}
  .pl70{padding-left: 70px!important;}
  .pl75{padding-left: 75px!important;}
  .pl80{padding-left: 80px!important;}
  .pl85{padding-left: 85px!important;}
  .pl90{padding-left: 90px!important;}
  .pl95{padding-left: 95px!important;}
  .pl100{padding-left: 100px!important;}
  .pl105{padding-left: 105px!important;}
  .pl110{padding-left: 110px!important;}
  .pl115{padding-left: 115px!important;}
  .pl120{padding-left: 120px!important;}
  .pl125{padding-left: 125px!important;}
  .pl130{padding-left: 130px!important;}
  .pl135{padding-left: 135px!important;}
  .pl140{padding-left: 140px!important;}
  .pl145{padding-left: 145px!important;}
  .pl150{padding-left: 150px!important;}
  .pl155{padding-left: 155px!important;}
  .pl160{padding-left: 160px!important;}
  .pl165{padding-left: 165px!important;}
  .pl170{padding-left: 170px!important;}
  .pl175{padding-left: 175px!important;}
  .pl180{padding-left: 180px!important;}
  .pl185{padding-left: 185px!important;}
  .pl190{padding-left: 190px!important;}
  .pl195{padding-left: 195px!important;}
  .pl200{padding-left: 200px!important;}

  .center{text-align: center!important;}
  .right{text-align: right!important;}
  .left{text-align: left!important;}

  .bold{font-weight: bold!important;}
  .red{color: red!important;}

  .youtube_movie {
      position: relative;
      width: 100%;
      padding-top: 56.25%;
  }

  .youtube_movie iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%;
  }
  .disflex{
    display: flex;
  }
}
/* pc css end */