@charset "utf-8";

/* font */
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500&display=swap');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp-narrow.min.css');

/* base */
html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body {
  animation: fadeIn 1s ease 0s 1 normal; -webkit-animation: fadeIn 1s ease 0s 1 normal; font-feature-settings : "palt";
  background-color: #FFF; color: #333333; word-wrap : break-word; overflow-wrap : break-word; font-kerning: normal; -webkit-font-kerning: normal;
  font-size: 15px; line-height: 1.85em; letter-spacing: 0;
  font-family: YakuHanJP_Narrow,Open Sans, "Zen Kaku Gothic New", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-align: center; font-weight: 400; margin: 0; padding: 0; }
img { vertical-align: bottom; height: auto; width: 100%; }
::selection { background: #333333; color: #FFF; }
::-moz-selection { background: #333333; }

/* link */
a:link, a:visited, a:active { color: #333333; text-decoration: none; word-break: break-all !important; }
a:hover { opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)"; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
a:hover img { border-bottom: none !important; opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)"; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
a:hover.nofade,a:hover.nofade img { opacity: 1 !important; filter: alpha(opacity=100); -ms-filter: "alpha(opacity=100)"; }
a.balance_link {  }

/* iOS */
input[type="submit"], input[type="button"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer; }
input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration { display: none; }
input[type="submit"]::focus, input[type="button"]::focus { outline-offset: -2px; }
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; outline: none; background: transparent; }
button, input[type="submit"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; border: none; outline: none; background: transparent; }
input[type="radio"] { display: inline-block; }
input[type="radio"]:checked + label { background: #ff0000; }

/* button */
.button { display:block; color: #333333 !important; border: 1px solid #333; font-size: 0.8em; line-height:1em; padding: 1.5em 0 1.5em 0; width: 20%; margin-top: 1.5em; margin-bottom: 1.5em; margin-left:auto; margin-right:auto; }
.button:link { color: #333333 !important; text-decoration: none; }
.button:hover { cursor: pointer; color: #FFF !important; background-color: #333333; padding: 1.5em 0 1.5em 0; border: 1px solid #333333; }

/* slick */
.fade { overflow: hidden; }

/* drawer */
.drawer { display: none; }

/* fadein */
.fadein { opacity : 0; transform: translateY(20px); transition: all 0.6s; }

/* options */
.clear { clear:both; }
.fas { padding:auto 0.5; font-size:1.15em }
.fab { padding:auto 0.5; font-size:1.15em }
.r { font-feature-settings : "pkna"; border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; }
.rl { font-feature-settings : "pkna"; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }
.spbr { display: none; }
.pcbr { display: block; }

/* flex */
.flex { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.fill { object-fit: cover; font-family: 'object-fit: cover;'; }

/* youtube */
.youtube { position: relative; width: 100%; padding-top: 56.25%; }
.youtube iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }

/* sp */
.pc { display: block !important; }
.sp { display: none !important; }

/* text */
.tx22 { font-size: 2.0rem; line-height: 1.8em; }
.tx20 { font-size: 1.7rem; line-height: 1.8em; }
.tx18 { font-size: 1.55rem; line-height: 1.8em; }
.tx16 { font-size: 1.4rem; line-height: 1.8em; }
.tx14 { font-size: 1.3rem; line-height: 1.8em; }
.tx12 { font-size: 1.2rem; line-height: 1.8em; }
.tx11 { font-size: 1.1rem; line-height: 1.7em; }
.tx10 { font-size: 1.05rem; line-height: 1.7em; }
.tx09 { font-size: 0.9rem; line-height: 1.7em; }
.tx08 { font-size: 0.8rem; line-height: 1.6em; }
.tx07 { font-size: 0.7rem; line-height: 1.5em; }
.tx_l { text-align:left; }
.tx_r { text-align:right; }
.tx_c { text-align:center; }
.tx_j { text-align:justify; }
.en { font-family: Helvetica Neue, helvetica, sans-serif; font-weight:200; letter-spacing:0.1em; }
strong { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; }

/* wrapper */
#wrapper { width: 100%; min-width:1200px; margin: 0 auto; position:relative; }

/* header */
#header { width: 95%; margin: 1.9% auto 1.8% auto; }
#header #hd_logo { width:20%; max-width:250px; min-width:140px; float:left; vertical-align:middle; }
#header nav { width: 80%; float:right; text-align:right; vertical-align:middle; padding-top:0.4em; }
#header .hd_navi { display:inline-block; vertical-align:middle; letter-spacing:0.1em; }
#header .hd_navi li { display:inline-block; vertical-align:middle; position: relative; padding:0 1em 0 0; }
#header .hd_navi li a .en { opacity: 1; font-size: 1.1em; }
#header .hd_navi li a .jp { opacity: 0; position:absolute; top:0; left:0; font-size: 0.9em; letter-spacing: 0.1em; }
#header .hd_navi li a:hover .en { opacity: 0; }
#header .hd_navi li a:hover .jp { opacity: 1; }
#header .hd_sns { display:inline-block; vertical-align:middle; margin-left:1.2em; }
#header .hd_sns li { display:inline-block; vertical-align:middle; margin-left:0.75em; font-size:1.2rem; }
#header li a:hover { opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)"; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }

/* navi_curent */
.about .hd_navi li:nth-child(1) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.about .ft_navi li:nth-child(1) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.concept .hd_navi li:nth-child(2) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.concept .ft_navi li:nth-child(2) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.sustainability .hd_navi li:nth-child(3) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.sustainability .ft_navi li:nth-child(3) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.products .hd_navi li:nth-child(4) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.products .ft_navi li:nth-child(4) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.column .hd_navi li:nth-child(5) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.column .ft_navi li:nth-child(5) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.news .hd_navi li:nth-child(6) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.news .ft_navi li:nth-child(6) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.faq .hd_navi li:nth-child(7) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.faq .ft_navi li:nth-child(7) a { border-bottom:1px solid #000; padding-bottom:0.2rem; }
.home.products .hd_navi li:nth-child(4) a { border:none; }
.home.products .ft_navi li:nth-child(4) a { border:none; }

/* home */
.home #main { width: 100%; margin-right: auto; margin-left: auto; position: relative; clear:both; }
.home #main #copy { color:#FFF; font-size:3em; letter-spacing:0.1em; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: auto; z-index: 998;  }
.home #main #copy .spbr { display:inline-block; margin:0 0.5em 0 0; }
.home #main .fade { height: 90vh; overflow: hidden; position: relative; }
.home #main .fade img { -webkit-filter: brightness(100%); -moz-filter: brightness(100%); -o-filter: brightness(100%); -ms-filter: brightness(100%); filter: brightness(100%); position: absolute; top:0; left:0; width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; }
.home #top_news { width: 100%; margin:0 auto 3em auto; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
.home #top_news h2 { width:15%; }
.home #top_column { width: 100%; margin-right: auto; margin-left: auto; margin-bottom: 6em; }
.home #top_column h2 { margin-bottom:0.75em; }
.home #contents { margin: 4em auto 6em auto; }

/* 下層_メイン */
#layer_main { width: 100%; margin-right: auto; margin-left: auto; position: relative; }
#layer_main .fade { height: 90vh; overflow: hidden; position: relative; }
#layer_main .fade img { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: auto; height: auto; min-width: 1400px; min-height: 100%; max-width: 110%; }
#layer_main2 { width: 90%; margin-right: auto; margin-left: auto; position: relative; }

/* 下層_共通 */
#contents { width: 85%; margin: 6em auto 6em auto; text-align:left; }
#contents div { clear:both; }
#contents .layer_title { font-size:2.5em; margin-bottom:1.75em; letter-spacing:0.1em; }
#contents .layer_photo { clear:both; }
#contents .layer_photo ul li { display:inline-block; width:48.8%; margin-right:1.5%; margin-bottom:2%; }
#contents .layer_photo ul li:nth-child(2n) { margin-right:0; }
#contents .text_block { padding:5em 0; }
#contents .text_block:last-child { padding-bottom:0; }
#contents .text_block .jp { width:55%; margin:0 auto; vertical-align:top; }
#contents .text_block .jp h2 { margin-bottom:0.75em; letter-spacing:0.1em; }
#contents .text_block .jp h2 .sub_en { margin-bottom:1em; display:block; }

#contents .text_block .lead { margin: 6em 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
#contents .text_block .lead.lead_rev {  flex-direction: row-reverse; }
#contents .text_block .lead .lead_item:nth-child(1) { width: 32%; }
#contents .text_block .lead .lead_item:nth-child(2) { width: 62%; }
#contents .text_block .lead .lead_item.lead_item--hfj--txt { width: 50%; }
#contents .text_block .lead .lead_item.lead_item--hfj--photo { width: 45%; aspect-ratio: 3/2; }
#contents .text_block .lead .lead_item.lead_item--hfj--photo img { object-fit: cover; width:100%; height:100%; }
#contents .text_block .lead h2 { line-height: 1.8em; margin:0 0 0.75em 0; letter-spacing:0.1em; }
#contents .text_block .lead:first-child { margin: 0 0 6em 0; }
#contents .text_block .lead:last-child { margin: 6em 0 0 0; }

#contents .text_block .col2 { margin:6em 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
#contents .text_block .col2 .col2_item { width:47%; }
#contents .text_block .col2 .col2_item_logo { width:100%; margin:0 auto 2em auto; }
#contents .text_block .col2 h2 { line-height: 1.5em; margin:0 0 0.75em 0; letter-spacing:0.1em; }
#contents .text_block .col2 h3 { line-height: 1.5em; margin:1em 0 0.75em 0; letter-spacing:0.1em; }
#contents .text_block .col2.himotore_concept { margin:0 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
#contents .text_block .col2.himotore_concept figure { width:80%; margin: 3em auto 0 auto; }
#contents .text_block .col2.himotore_concept figcaption { text-align: center; margin:3em auto 0 auto; }
#contents .text_block .col2 .product_mov { margin:0 auto 0 auto; }

#contents .product_link { text-align: center; }
#contents .product_link a { border:solid 1px #333; border-radius: 3em; font-size: 1.1rem; line-height: 1em; padding:1em 3em; margin:auto; }
#contents .product_link a span:first-child { border-right:1px solid #333; padding:0 1em 0 0; margin:0 1em 0 0; }
#contents .product_link a:hover { opacity: 1; filter: alpha(opacity=100); -ms-filter: "alpha(opacity=100)"; background-color: #333; color:#fff; }
#contents .product_link a:hover span:first-child { border-right: 1px solid #fff; }

#contents .himotore_fig { width: 55%; margin: 3em auto 8em auto; }
#contents .himotore_link { text-align: center;  }
#contents .himotore_link a { width: 50%; border:solid 1px #333; border-radius: 3em; font-size: 1.1rem; line-height: 1em; padding:0 3em; margin:auto; display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: center; align-items: center; }
#contents .himotore_link a span { display: block; }
#contents .himotore_link a span:first-child { width:30%; }
#contents .himotore_link a span:last-child { border-left:1px solid #333; padding:0 0 0 1.5em; margin:0 0 0 1.5em; text-align: left; line-height: 1.5em; }
#contents .himotore_link a:hover,
#contents .himotore_link a:hover img { opacity: 1; filter: alpha(opacity=100); -ms-filter: "alpha(opacity=100)"; background-color: #333; color:#fff; }
#contents .himotore_link a:hover span:last-child { border-left: 1px solid #fff; }

#contents .himotoreforjoints_fig { width: 55%; margin: 0 auto 4rem auto; }
#contents .himotoreforjoints_fig h2 { text-align: center; }
#contents .himotoreforjoints_fig img { margin:3em auto 0 auto; }
#contents .himotoreforjoints_point {}
#contents .himotoreforjoints_point .col2 { margin-bottom:0; }
#contents .himotoreforjoints_point h3 { display:flex; justify-content: space-between; }
#contents .himotoreforjoints_point h3 span {  }
#contents .himotoreforjoints_point h4 { margin: 0 auto 0.75em auto; }
#contents .himotoreforjoints_point .himotoreforjoints_point_slide { margin:0 auto 2em auto; }
#contents .himotoreforjoints_att .himotoreforjoints_att--guide { width:80%; margin:5em auto 0 auto; }
#contents .himotoreforjoints_att .col2 { margin-top:0; }
#contents .himotoreforjoints_att--head { padding:0; }
#contents .himotoreforjoints_mov { width: 55%; margin: 8rem auto 3em auto; }
#contents .himotoreforjoints_mov h2 { text-align: center; margin-bottom:3rem; }
#contents .himotoreforjoints_mov .video-target { display:block; margin-bottom: 1rem; }
#contents .himotoreforjoints_set--title { font-size: 1.4rem; line-height: 1em; margin:0 auto 0.5em auto; text-align: center; background-color: #eee; padding:1em; border-radius: 3em; }
#contents .himotoreforjoints_box { background-color: #eee; padding: 1rem 1.5rem 0 1.5rem; margin-bottom: 1.5rem; }
#contents .himotoreforjoints_box table input,
#contents .himotoreforjoints_box table select { background-color: #fff !important; }
#contents .himotoreforjoints_box #cart { position: relative; min-height: 6em; }
#contents .himotoreforjoints_box #cart .cartjs_box { position: relative; z-index: 7; background-color: #eee; }
#contents .himotoreforjoints_box #cart::before { position: absolute; top:0; left:0; width:100%; content: "ただいま在庫切れです"; text-align: center; padding:2em 0; font-weight: 500; }

#contents .himotoreforjoints_item #cart { position: relative; min-height: 6em; }
#contents .himotoreforjoints_item #cart .cartjs_box { position: relative; z-index: 7; background-color: #fff; }
#contents .himotoreforjoints_item #cart::before { position: absolute; top:0; left:0; width:100%; content: "ただいま在庫切れです"; text-align: center; padding:2em 0; font-weight: 500; }

#contents .product_mov { position: relative; width:100%; margin:0 auto 8em auto; display: block; }
#contents .product_mov h3 { margin: 1.5em auto 1em auto; text-align: center; }
#contents .product_mov .product_mov_ex { width:48.5%; }
#contents .product_mov .product_mov_ex p { font-size: 0.8em; margin:1em 0 0 0; }
#contents .product_mov .bot { font-size: 1.6em; position:absolute; right:0; bottom:0; background-color: #ffffff; color:#265da7;  padding:0.5em 1.25em 0.4em 1.5em; vertical-align: middle;  }
#contents .product_mov .bot i { font-size: 2.2em; vertical-align: middle; margin:0 0.5em 0 0; }
#contents .product_mov .bot i { font-size: 2.2em; vertical-align: middle; margin:0 0.5em 0 0; }
#contents .product_mov p { font-size: 0.9em; line-height: 1.6; margin:1em 0 0 0; }
#contents .product_mov_s { position: relative; width:55%; margin:0 auto 3em auto; }
#contents .product_mov_s .product_mov_ex {  }

/* ニュースブロック */
.news_block { width:80%; margin:auto; }
.news_block li a { display:block; border-top:solid 1px #333; padding:1em; }
.news_block li:last-child a { border-bottom:solid 1px #333; }
.news_block li a dl { display: flex; flex-direction: row; flex-wrap: wrap; justify-content:flex-start; align-items: center; }
.news_block .title { font-size: 1em; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; }
.news_block .date { font-size: 0.9em; }
.news_block .cat { font-size: 0.9em; line-height: 1em; padding:0 1em; margin:0 1em; border-left:solid 1px #333; border-right:solid 1px #333; }

/* コラムブロック */
.column_hd { margin:0 0 4em 0; }
.column_pr { margin:0 0 4em 0; padding:0 0 4em 0; border-bottom:solid 1px #333; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start;  }
.column_pr dl { width:30%; display: flex; flex-direction: column; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
.column_pr dt.name { margin:0 0 1em 0; }
.column_pr dt.name .en { display:block; font-size: 2.6em; line-height: 1.5em; }
.column_pr dt.name .jp { display:block; font-size: 1.6em; line-height: 1.5em; }
.column_pr dd.job { }
.column_pr dd.job .en { display:block; font-size: 1.8em; line-height: 1.5em; }
.column_pr dd.job .jp { display:block; font-size: 1.1em; line-height: 1.5em; }
.column_pr .comment { width:55%; text-align: justify; font-size: 0.9em; line-height: 1.8em; }
.article_block { border-left:solid 1px #333; border-top:solid 1px #333; width: 100%; margin:0 0 6em 0; position: relative; clear:both; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; }
.article_block li { width:33.333%; padding:2em; border-right:solid 1px #333; border-bottom:solid 1px #333; }
.article_block.column_top li:nth-child(1),.article_block.column_top li:nth-child(2) { width:50%; }
.article_block dl dt {  }
.article_block dl dd { }
.article_block dl dd blockquote { padding: 0 2em; margin:2rem 0 2rem 0; border-left:solid 1px #000; border-right:solid 1px #000; }
.article_block dl dd blockquote p { padding: 0; font-size:1rem; line-height: 1.6em; font-style: italic; margin:0 0 0.5em 0; }
.article_block dl dd blockquote cite { display:block; padding: 0; font-size:0.5rem; line-height: 1.8em; font-style: normal; }
.article_block dl dd h2 { margin:1em 0 0.75em 0; font-size: 1.6em; line-height: 1.4em; }
.article_block dl dd .date { margin-top:2em; }

/* コラムトップ */
#column.columns_top { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
#column.columns_top .koseki_column { width:60%; }
#column.columns_top .users_column { width:35%; }
#column.columns_top .koseki_column .koseki_column_1 { background-color:#96cdc8; }
#column.columns_top .koseki_column .koseki_column_2 { background-color:#f7c0b9; }
#column.columns_top .koseki_column .koseki_column_3 { background-color:#d1e495; }
#column.columns_top .koseki_column .koseki_column_4 { background-color:#fee274; }
#column.columns_top .koseki_column .koseki_column_5 { background-color:#d2bada; }
#column.columns_top .article_block { border-left:solid 1px #333; border-top:solid 1px #333; width: 100%; margin:0 0 6em 0; position: relative; clear:both; display: flex; flex-direction: column; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; }
#column.columns_top .article_block li { width:100%; padding:2em; border-right:solid 1px #333; border-bottom:solid 1px #333; }
#column.columns_top .article_block dl dt {  }
#column.columns_top .article_block dl dd {  padding:0 5%; }
#column.columns_top .article_block dl dd a { padding:1em 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; border-top: solid 0.1em #333; }
#column.columns_top .article_block dl dd a:hover .title { color:#fff; }
#column.columns_top .article_block dl dd .num { width:auto; font-size: 1.2em; line-height: 1em; background-color: #fff; padding:0.5em; border-radius: 2em; -webkit-border-radius: 2em; -moz-border-radius: 2em; border:solid 0.2em #333; }
#column.columns_top .article_block dl dd .title { width:80%; font-size: 1.7em; line-height: 1.5em; }
#column.columns_top .article_block dl dd h2 { margin:1em 0 0.75em 0; font-size: 1.6em; line-height: 1.6em; }
#column.columns_top .article_block dl dd .date { margin-top:2em; }
#column.columns_top .article_block dl dd blockquote { padding: 0 1em; margin:0.2em 0; border-left:solid 1px #000; border-right:solid 1px #000; }
#column.columns_top .article_block dl dd blockquote p { padding: 0; font-size:1.3rem; line-height: 1.6em; font-style: italic; margin:0 0 0.5em 0; }
#column.columns_top .article_block dl dd blockquote cite { display:block; padding: 0; font-size:0.7rem; line-height: 1.8em; font-style: normal; }

/* products */
.products #contents #products_main { margin-bottom:5em; }
.products #contents #products_main li { width:47%; margin-right:4.5%; margin-bottom:5%; display:inline-block; vertical-align:top; }
.products #contents #products_main li:nth-child(2n) { margin-right:0; }
.products #contents #products_main li:nth-last-child(-n+2) { margin-bottom:0; }
.products #contents #products_main li figcaption { line-height: 1.6em; }
.products #contents #products_main figure img { margin-bottom:0.75em; }
.products #contents #products_main .wholesale_bn { position: relative; }
.products #contents #products_main .wholesale_bn figcaption { display: flex; align-items: center; justify-content: center; position: absolute; top:0; left:0; width:100%; height:100%; }
.products #contents #products_main .wholesale_bn figcaption .wholesale_bnTxt { font-size: 1.2em; font-weight: 400; line-height: 1em; background-color: #fff; padding:1em; }
.products #contents #products_sub { margin-bottom:5em; }
.products #contents #products_sub li { width:30%; margin-right:4.3%; display:inline-block; vertical-align:top; }
.products #contents #products_sub li:nth-child(3) { margin-right:0; }
.products #contents #products_sub li figcaption { line-height: 1.6em; }
.products #contents #products_sub figure img { margin-bottom:0.75em; }
.products #contents #products_other { margin-bottom:6em; }
.products #contents #products_other li { width:47%; margin-right:4.5%; display:inline-block; vertical-align:top; }
.products #contents #products_other li:nth-child(2n) { margin-right:0; }
.products #contents #products_other figure img { margin-bottom:0.75em; }
.products #contents li figure:hover { opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)"; -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }

/* products詳細 */
.products #products_main { width: 100%; margin-right: auto; margin-left: auto; position: relative; }
.products #products_main .play { z-index:999; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 6em; height: auto; }
.products #contents .products_title { font-size:3em; padding-top:0.5em; margin-bottom:0.8em; letter-spacing:0.1em; text-align:center; }
.products #contents .slide { margin-bottom:0.75em; }
.products #contents .slide .slider-for { width:73%; margin:0 auto; }
.products #contents .slide.himotore_slide .slider-for { width: 100%; height:45em; }
.products #contents .slide.himotore_slide .slider-for img { object-fit: cover; width:100%; height:100%; }
.products #contents .slide .slider-nav { width:100%; margin:1em auto; }
.products #contents .slide .slider-nav li { padding:0 0.25em; }
.products #contents .slide .arrow_left { position: absolute; left: -30px; top: 47%; width: 0.8em; z-index: 999; cursor: pointer; }
.products #contents .slide .arrow_right { position: absolute; right: -30px; top: 47%; width: 0.8em; z-index: 999; cursor: pointer; }
.products #contents .recommend_block { text-align:center; margin:auto; padding:5em 0; }
.products #contents .recommend_block h2 { text-align:left; margin-right:2em; display:inline-block; vertical-align:top; }
.products #contents .recommend_block p { text-align:left; display:inline-block; vertical-align:top; }
.products #contents .recommend_block ul { text-align:center; margin-top:3em; }
.products #contents .recommend_block ul li { display:inline-block; vertical-align:middle; margin:0 0.5em; }
.products #contents .recommend_block ul li span { border-top:1px solid #000; border-bottom: 1px solid #000; padding:0.75em 0; }
.products #contents .point_block { padding:5em 0; width:80%; margin:auto; }
.products #contents .point_block h2 { margin-bottom:1.5em; }
.products #contents .point_block .left { float:left; width:47%; clear:none; }
.products #contents .point_block .right { float:right; width:47%; clear:none; }
.products #contents .point_block .point_main { margin-bottom:2em; border-top:1px solid #000; padding-top:3em; }
.products #contents .point_block .point_main figure { width:70%; margin:0 auto 1.5em auto; }
.products #contents .point_block .point_main dl dt { margin-bottom:0.5em; }
.products #contents .point_block .point_sub { margin-bottom:2em; border-top:1px solid #000; padding-top:3em; }
.products #contents .point_block .point_sub:last-child { border-bottom:1px solid #000; padding-bottom:3em; }
.products #contents .point_block .point_sub figure { width:24%; display:inline-block; padding:0.5em 5%; vertical-align:top; }
.products #contents .point_block .point_sub dl { width:74%; display:inline-block; vertical-align:top; }
.products #contents .point_block .point_sub dl dt { margin-bottom:0.5em; }
.products #contents .point_block p { text-align:right; border-top:1px solid #000; padding-top:2em; }
.products #contents .cart_block { padding-top:2em; padding-bottom:5em; }
.products #contents .cart_block .cart_photo { width:60%; float:left; clear:none; }
.products #contents .cart_block .cart_photo .mainimage { margin-bottom:1em; }
.products #contents .cart_block .cart_photo .thumbnail { font-size:0px; }
.products #contents .cart_block .cart_photo .thumbnail li { display:inline-block; width:24%; margin-right:1%; margin-bottom:1%; }
.products #contents .cart_block .cart_photo .thumbnail li:nth-child(4n) { margin-right:0; }
.products #contents .cart_block .cart_photo .thumbnail_two li { display:inline-block; width:49%; margin-right:1%; margin-bottom:2%; }
.products #contents .cart_block .cart_photo .thumbnail_two li:nth-child(2n) { margin-right:0; }
.products #contents .cart_block .fade_himo { margin:0 0 4em 0; }
.products #contents .cart_block .cart_detail { width:35%; float:right; clear:none; }
.products #contents .cart_block .cart_detail h1 { font-size:1.6rem; margin-bottom:1.4em; }
.products #contents .cart_block .cart_detail .option_jp { font-size:2rem; margin-bottom:0.5em; line-height:1.5em; }
.products #contents .cart_block .cart_detail #data { margin-bottom:2em; }
.products #contents .cart_block .cart_detail #data dl { width:100%; display:flex; flex-wrap: wrap; }
.products #contents .cart_block .cart_detail #data dl dt { width:20%; margin-bottom:0.5em; }
.products #contents .cart_block .cart_detail #data dl dd { width:80%; margin-bottom: 0.5em; }
.products #contents .cart_block .cart_detail #cart { border-top:1px solid #000; padding:2em 0 2em 0; margin-bottom:2em; margin-bottom:1em; }
.products #contents .cart_block .cart_detail #cart #name { margin-bottom:0.5em; }
.products #contents .cart_block .cart_detail #cart #name h2 { font-weight:bold; margin-bottom:0.3em; line-height:1em; }
.products #contents .cart_block .cart_detail #cart .cartjs_box table { width:100%; }
.products #contents .cart_block .cart_detail #cart .cartjs_box tr { margin-bottom:0.5em; padding-bottom:0.5em; border-bottom:1px solid #e5e5e5; display:block; }
.products #contents .cart_block .cart_detail #cart .cartjs_box tr:last-child { border-bottom:none; }
.products #contents .cart_block .cart_detail #cart .cartjs_box tr th { font-size:0.85rem; width:30%;  margin-right:3%; display:inline-block; font-weight:normal; }
.products #contents .cart_block .cart_detail #cart .cartjs_box tr td { font-size:1rem; width:65%; display:inline-block; padding:0 !important; }
.products #contents .cart_block .cart_detail #cart .cartjs_box .cartjs_sales_price td { font-size:1.4rem; font-weight:bold; }
.products #contents .cart_block .cart_detail #cart .cartjs_box .cartjs_product_num input[type="text"] { font-size: 1em; line-height: 1em; color: #333; background-color: #eee; text-align: center; height: 2.75em; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; font-family: "Helvetica LT W01 Bold",  YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
.products #contents .cart_block .cart_detail #cart .cartjs_box .cartjs_option select { -webkit-appearance: none !important; -webkit-border-radius: 0px; background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+); background-position: 100% center; background-repeat: no-repeat; font-size: 1em; color: rgba(0, 0, 0, 0.75); line-height: normal; border-radius: 0; height: auto; width: 100%; text-align: center; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; background-color: #eee; letter-spacing: 0.05em; padding: 0.8em 1em; }
.products #contents .cart_block .cart_detail #cart .cartjs_box .cartjs_cart_in input[type="submit"] { cursor: pointer; color: #FFF; background-color: #333; text-align: center; width: 100%; font-size: 1em; line-height: 1em; letter-spacing: 0.1em; border: 2px solid #333; padding: 1em 1.2em; font-family: "Helvetica LT W01 Bold",  YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; border-radius: 3em; }
.products #contents .cart_block .cart_detail #cart .cartjs_box .cartjs_cart_in input[type="submit"]:hover { color: #333; background-color: #FFF; border-top-color: #333; border-right-color: #333; border-bottom-color: #333; border-left-color: #333; }
.products #contents .cart_block .cart_detail.cart_detail_himo { padding:2em 0 0 0; }
.products #contents .pd4 { padding-top:4em; }
.products #contents .products_list { margin:3em 0 1.5em 0; }
.products #contents .products_list ul { font-size:0px; overflow: hidden; }
.products #contents .products_list li { width:23%; margin:0 2% 4rem 0; float:left; text-align: left; }
.products #contents .products_list li a { display:block; }
.products #contents .products_list li:nth-child(4n) { margin-right:0; }
.products #contents .products_list li:nth-child(4n+1) { clear:both; }
.products #contents .products_list li figcaption { line-height: 1.5em; margin:0.5em 0 0 0; }
.products #contents .option_list { margin:5em 0; }
.products #contents .option_list ul { font-size:0px; overflow: hidden; }
.products #contents .option_list li { width:23%; margin:0 2% 4rem 0; float:left; text-align: left; }
.products #contents .option_list li a { display:block; }
.products #contents .option_list li:nth-child(4n) { margin-right:0; }
.products #contents .option_list li:nth-child(4n+1) { clear:both; }
.products #contents .option_list li figcaption { margin:0.5em 0 1em 0; }
.products #contents .option_list li figcaption span { display:block; font-size: 0.5em; line-height: 1.2em; letter-spacing: 0.05em; }
.products #contents .option_list li .cartjs_box table { width:100%; }
.products #contents .option_list li .cartjs_box tr { margin-bottom:0.3rem; padding-bottom:0.3rem; border-bottom:1px solid #e5e5e5; display:block; }
.products #contents .option_list li .cartjs_box tr:last-child { border-bottom:none; }
.products #contents .option_list li .cartjs_box tr th { font-size:0.85rem; width:30%; padding:0.5rem 0; margin-right:3%; display:inline-block; font-weight:normal; }
.products #contents .option_list li .cartjs_box tr td { font-size:1rem; width:65%; display:inline-block; padding:0 !important; }
.products #contents .option_list li .cartjs_box .cartjs_sales_price td { font-size:1.2rem; font-weight:bold; }
.products #contents .option_list li .cartjs_box .cartjs_product_num input[type="text"] { font-size: 1em; line-height: 1em; color: #333; background-color: #eee; text-align: center; height: 2.75em; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; font-family: "Helvetica LT W01 Bold",  YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
.products #contents .option_list li .cartjs_box .cartjs_option select { -webkit-appearance: none !important; -webkit-border-radius: 0px; background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+); background-position: 100% center; background-repeat: no-repeat; font-size: 1em; color: rgba(0, 0, 0, 0.75); line-height: normal; border-radius: 0; height: auto; width: 100%; text-align: center; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; background-color: #eee; letter-spacing: 0.05em; padding: 0.8em 1em; }
.products #contents .option_list li .cartjs_box .cartjs_cart_in input[type="submit"] { border-radius: 3em; cursor: pointer; color: #FFF; background-color: #333; text-align: center; width: 100%; font-size: 1rem; line-height: 1em; letter-spacing: 0.1em; border: 2px solid #333; padding: 1em 1.2em; font-family: "Helvetica LT W01 Bold",  YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
.products #contents .option_list li .cartjs_box .cartjs_cart_in input[type="submit"]:hover { color: #333; background-color: #FFF; border-top-color: #333; border-right-color: #333; border-bottom-color: #333; border-left-color: #333; }
.products #contents .profile { border:solid 1px #333; margin:4em 0 0 0; padding:2em; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
.products #contents .profile dt { width:25%; }
.products #contents .profile dd { width:65%; font-size: 0.9em; line-height: 1.8em; text-align: justify; }

#banner_books .cartjs_box .cartjs_sales_price td { font-size:1.4rem; font-weight:bold; }
#banner_books .cartjs_box table { margin:1em 0 0 0; width:100%; }
#banner_books .cartjs_box tr { margin-bottom:0.3rem; padding-bottom:0.3rem; border-bottom:1px solid #e5e5e5; display:block; }
#banner_books .cartjs_box tr:last-child { border-bottom:none; }
#banner_books .cartjs_box tr th { font-size:0.85rem; width:30%; padding:0.5rem 0; margin-right:3%; display:inline-block; font-weight:normal; }
#banner_books .cartjs_box tr td { font-size:1rem; width:65%; display:inline-block; padding:0 !important; }
#banner_books .cartjs_box .cartjs_sales_price td { font-size:1.2rem; font-weight:bold; }
#banner_books .cartjs_box .cartjs_product_num input[type="text"] { font-size: 1em; line-height: 1em; color: #333; background-color: #eee; text-align: center; height: 2.75em; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; font-family: "Helvetica LT W01 Bold",  YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
#banner_books .cartjs_box .cartjs_option select { -webkit-appearance: none !important; -webkit-border-radius: 0px; background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+); background-position: 100% center; background-repeat: no-repeat; font-size: 1em; color: rgba(0, 0, 0, 0.75); line-height: normal; border-radius: 0; height: auto; width: 100%; text-align: center; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; background-color: #eee; letter-spacing: 0.05em; padding: 0.8em 1em; }
#banner_books .cartjs_box .cartjs_cart_in input[type="submit"] { border-radius: 3em; cursor: pointer; color: #FFF; background-color: #333; text-align: center; width: 100%; font-size: 1em; line-height: 1em; letter-spacing: 0.1em; border: 2px solid #333; padding: 1em 1.2em; font-family: "Helvetica LT W01 Bold",  YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
#banner_books .cartjs_box .cartjs_cart_in input[type="submit"]:hover { color: #333; background-color: #FFF; border-top-color: #333; border-right-color: #333; border-bottom-color: #333; border-left-color: #333; }
#banner_books .cart_bot a { border-radius: 3em; display:block; cursor: pointer; color: #FFF; background-color: #333; text-align: center; width: 100% !important; font-size: 1em; line-height: 1em; letter-spacing: 0.1em; border: 2px solid #333; padding: 1em 1.2em; font-family: "Helvetica LT W01 Bold",  YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; margin:1em 0; }
#banner_books .cart_bot a:hover { color: #333; background-color: #FFF; border-top-color: #333; border-right-color: #333; border-bottom-color: #333; border-left-color: #333; }

#movie_top { position: relative; }
#movie_top video { width: 100%; height: auto; }
#movie_top:after { position: absolute; z-index: 0; top: 0; left: 0; width: 100%; height: 100%; content: ""; display: block; background-color: rgba(0, 0, 0, 0); background-image: radial-gradient(#4fa5ce 15%, transparent 0), radial-gradient(#4fa5ce 15%, transparent 0); background-position: 0 0, 10px 10px; background-size: 4px 4px; opacity: 0.5; }


/* column */
.column #contents #column { width: 100%; margin-right: auto; margin-left: auto; margin-bottom: 6em; }

/* news */
.news #contents #news { width: 100%; margin-right: auto; margin-left: auto; margin-bottom: 6em; }

/* 記事詳細 */
.entrybody { width:55%; margin:0 auto 10em auto; }
.entrybody .title { font-size:2rem; line-height:1.8em; margin-bottom:0.75em; }
.entrybody .date { font-size:1rem; line-height:1em; margin-bottom:3em; }
.entrybody .cat { font-size:1rem; line-height:1em; margin-bottom:3em; }

/* 記事詳細 */
.entrybody { width:55%; margin:0 auto 3em auto; }
.entrybody .title { font-size:2rem; line-height:1.6em; margin-bottom:1.25em; border-left:solid 0.2em #333; padding:0 0 0 1em; }
.entrybody .date { font-size:1rem; line-height:1em; margin-bottom:3em; }
.entrybody div { clear:both; }
.entrybody h1 { font-size: 1.6rem; line-height: 2.2rem; margin-bottom: 1rem; }
.entrybody h2 { font-size: 1.5rem; line-height: 2.2rem; margin: 3rem 0 1rem 0; }
.entrybody h3 { font-size: 1.4rem; line-height: 2.2rem; margin-bottom: 1rem; }
.entrybody h4 { font-size: 1.3rem; line-height: 2rem; margin-bottom: 1rem; }
.entrybody h5 { font-size: 1.2rem; line-height: 2rem; margin-bottom: 1rem; }
.entrybody h6 { font-size: 1.1rem; line-height: 2rem; margin-bottom: 1rem; }
.entrybody p { font-size: 1.2rem; margin-top: 1.5rem; margin-bottom: 1.5rem; line-height: 2em; text-align: justify; }
.entrybody sup { font-size: 1em; font-weight: bold; margin-bottom: 2em; clear: both; text-align: left; }
.entrybody table { width: 100%; margin-bottom: 2em; margin-top: 2em; text-align: left; }
.entrybody blockquote { padding: 0 4em; margin:5rem 0 5rem 0; border-left:solid 1px #000; border-right:solid 1px #000; }
.entrybody blockquote p { padding: 0; font-size:1.5rem; line-height: 2em; font-style: italic; }
.entrybody th { font-size: 1em; line-height: 1.5em; font-weight: bold; padding: 10px; text-align: left; }
.entrybody td { font-size: 1em; line-height: 1.5em; padding: 10px; text-align: left; }
.entrybody ul { margin-bottom: 2em; overflow: hidden; text-align: left; }
.entrybody li { font-size: 1em; line-height: 1.5em; margin-top: 1em; padding-left: 1em; border-left-width: 1px; border-left-style: solid; border-left-color: #ddd8ce; text-align: left; }
.entrybody dt { font-size: 1em; line-height: 1.5em; display: block; margin-bottom: 20px; text-align: left; }
.entrybody dd { font-size: 1em; line-height: 1.5em; display: block; margin-bottom: 20px; text-align: left; }
.entrybody img { margin-top: 1.8em; margin-bottom: 1.8em; width:100%; }
.entrybody .alignleft { float:left; width:40%; margin-top: 2em; margin-bottom: 0; padding:0 3% 3% 3%; }
.entrybody .alignright { float:right; width:40%; margin-top: 2em; margin-bottom: 0; padding:0 3% 3% 3%; }
.entrybody .aligncenter { display:block; width:65%; margin-right: auto; margin-left: auto; }
.entrybody .iframe_box { position: relative; padding-top: 56.25%; margin-bottom: 3em; margin-bottom:1.8em; }
.entrybody .iframe_box iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }
.entrybody a:link { border-bottom: 1px dashed #000 !important; padding-bottom: 0.1em; }
.entrybody a { text-align:left !important; }
.entrybody .wp-caption { width:100% !important; margin:3em 0 3em 0; }
.entrybody .wp-caption img { margin:0 0 0.75em 0; }
.entrybody .wp-caption p { margin:0 0 0 0; font-size: 0.9em; line-height: 1.8em; }
.entrybody .photo_2l { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.entrybody .photo_2l li { width:48%; padding:0; margin:0; border:0; }
.entrybody .date { margin:2em 0 0 0; font-size: 0.9em; }
.column .entrybody .wp-caption { border:solid 1px #333; padding:3em; }

/* ページナビ */
.pagenavi { width:55%; margin:0 auto 5em auto; }
.pagenavi ul { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.pagenavi ul li a { border-left:solid 1px #333; border-right:solid 1px #333; padding:0 1em; }
.pagenavi ul li a.none { visibility: hidden; }

/* column */
.column_hd.column_hd_bc { background-color:#96cdc8; padding:0 18%; }
.column_hd.column_hd_bc.column_hd_bc_2 { background-color:#f7c0b9; padding:0 18%; }
.column_hd.column_hd_bc.column_hd_bc_3 { background-color:#d1e495; padding:0 18%; }
.column_hd.column_hd_bc.column_hd_bc_4 { background-color:#fee274; padding:0 18%; }
.column_hd.column_hd_bc.column_hd_bc_5 { background-color:#d2bada; padding:0 18%; }
.entrybody .try { padding:3em; margin:3em 0 0 0; background-color: #ffffff; border:solid 0.3em #96cdc8; }
.entrybody .try.try_2 { border:solid 0.3em #f7c0b9; }
.entrybody .try h3 { font-size: 2.7em; line-height: 1.4em; }
.entrybody .try p { font-size: 1em; line-height: 1.8em; margin:0; }
.entrybody .try p.cap { font-size: 0.7em; line-height: 1.2em; margin:0; }
.entrybody .try p.cap { font-size: 0.7em; line-height: 1.2em; }
.entrybody .try a.bot { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; align-items: center; border:none !important; text-align: center !important; color:#fff; background-color: #333; padding: 1em; font-size: 1.2em; }
.entrybody .try a.bot:hover { color:#333; background-color: #fff; }
.entrybody .try a.bot i { font-size: 0.7em; line-height: 1em; margin:0 0.6em 0 0; }
.entrybody .youtube_box { border:solid 1px #333; padding:2em; margin:3em 0; border-radius: 0.5em; }
.entrybody .youtube_box h2 { font-size: 1.3em; margin:0 0 0 0; padding:1em; text-align: center; border-left:solid 1px #333; border-right:solid 1px #333; }
.entrybody .youtube_box .youtube { margin:2em 0 0 0; }
.entrybody .instagram_box { border:solid 1px #333; padding:2em; margin:3em 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content:space-between; align-items: center; border-radius: 0.5em; }
.entrybody .instagram_box i { margin:0 0.5em 0 0; }
.entrybody .instagram_box .instagram_box_title {  }

/* mailform */
#mailform { border-top:solid 1px #333; padding:1em 0 0 0; margin:3em 0 0 0; }
#mailform th { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; padding:2em 0 0 0; width:35%; }
#mailform td { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; padding:2em 0 0 0; width:65%; }
#mailform td input[type="text"] { width:100% !important; padding:0.4em; border:solid 1px #333; font-size: 1em; line-height: 1.5em; border-radius: 0.3em; }
#mailform td input[type="text"].age { width:3em !important; margin:0 0.4em 0 0; }
#mailform td textarea { width:100% !important; height:10em !important; padding:0.4em; border:solid 1px #333; font-size: 1em; line-height: 1.5em; border-radius: 0.3em; }
#mailform td select { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; border:solid 1px #000; padding:1em 1em; width:100%; font-size: 0.9em; letter-spacing: 0.1em; }
#mailform td.select { position: relative; }
#mailform td.select::before { position: absolute; font-family: "Font Awesome 5 Free"; content:"\f107"; bottom:0.45em; right:1em; }
#mailform .submit input[type="submit"] { width:100%; padding:0.6em; color:#fff; background-color: #333; border:solid 1px #333; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.1em; letter-spacing: 0.1em; line-height: 1.5em; }
#mailform .submit input[type="submit"]:hover { background-color: #fff; color:#333; }

/* about */
.about #contents #profile { margin:1em 0 0 0; padding:4em; border:solid 1px #333; border-bottom: none; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
.about #contents #profile figure { width:20%; }
.about #contents #profile #prof_text { width:75%; text-align: justify;  }
.about #contents #profile #prof_text dt { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; margin-bottom:1em; line-height: 1; }
.about #contents #profile #prof_text dd {  }

.about #contents #company { font-size: 1.1em; margin-bottom:4em; }
.about #contents #company dl { margin-bottom:1em;  }
.about #contents #company dl dt { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; display:inline-block; width:10em; margin-right:1em; vertical-align:top; }
.about #contents #company dl dd { display:inline-block; vertical-align:top; }

.about #contents #service { border:solid 1px #333; border-bottom:none; }
.about #contents #service h2 { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; text-align: center; font-size: 1.6em; line-height: 1em; border-bottom:solid 1px #333; padding:1em 0; }
.about #contents #service .service_title { cursor:pointer; font-size: 1.2em; line-height: 1em; padding:2em 4em; border-bottom:solid 1px #333; }
.about #contents #service .service_title dl { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.about #contents #service .service_title dl dt { font-family: Helvetica Neue, helvetica, sans-serif; font-weight: 200; letter-spacing: 0.1em; font-size: 1.8em; line-height: 1em; }
.about #contents #service .service_title dl dd { font-size: 1.2em; line-height: 1em; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.about #contents #service .service_title dl dd::after { font-family: "Font Awesome 5 Free"; content:"\f358"; font-size: 1.2em; line-height: 1em; margin:0 0 0 1em; }
.about #contents #service .service_title.open,.about #contents #service .service_title:hover { background-color: #333; color:#fff; }
.about #contents #service .service_ex { display:none; padding:4em 22%; border-bottom:solid 1px #333; }
.about #contents #service .service_ex p { font-size: 1.2em; line-height: 2em; margin:0 0 1.5em 0; text-align: justify; }
.about #contents #service .service_ex p.cap { font-size: 1.1em; line-height: 2em; margin:0 0 1.5em 0; text-align: justify; }
.about #contents #service .service_ex h3 { font-size: 1.4em; line-height: 1.4em; margin:0 0 1.5em 0; text-align: left; border-left:solid 3px #333; padding:0 0 0 1em; }
.about #contents #service .service_ex p+h3 { margin:3em 0 1.5em 0; }
.about #contents #service .service_ex h4 { font-size: 1.2em; line-height: 1.4em; margin:3em 0 1.5em 0; text-align: left; padding:1em 1.5em; background-color: #eee; color:#333; }
.about #contents #service .service_ex dl { background-color: #eee; padding:3em; margin:3em auto; }
.about #contents #service .service_ex dl dt { font-size: 1.1em; line-height: 1em; margin:1.5em 0 1.5em 0; background-color: #fff; padding:1em 1.5em; }
.about #contents #service .service_ex dl dt:first-child { margin:0 0 1.5em 0; }
.about #contents #service .service_ex dl dd { font-size: 1.1em; line-height: 1.8em; padding:0 1em; text-align: justify; }
.about #contents #service .service_case li { font-size: 1.1em; line-height: 1.8em; border-left:solid 5px #eee; padding:0 0 0 1em; margin:1em 0; }
.about #contents #service .service_ex .links a { font-size: 1.3em; line-height: 1.4em; display:block; background-color: #333; color:#fff; margin:2em 0 0 0; padding:1.5em; text-align: center; }
.about #contents #service .service_price { padding:4em; border-bottom:solid 1px #333; }
.about #contents #service .service_price dl { background-color: #eee; padding:4em; }
.about #contents #service .service_price dl dt { font-size: 1.2em; line-height: 1em; margin:1.5em 0 1.5em 0; background-color: #fff; padding:1em 1.5em; }
.about #contents #service .service_price dl dt:first-child { margin:0 0 1.5em 0; }
.about #contents #service .service_price dl dd { font-size: 1.1em; line-height: 1.8em; padding:0 1.5em; text-align: justify; }

/* concept */
.concept #contents .sub_block { padding-top:3em; padding-bottom:4em; }
.concept #contents .sub_block ul li { display:inline-block; width:29.5%; margin-right:5%; margin-bottom:6%; vertical-align:top; }
.concept #contents .sub_block ul li:nth-child(3n) { margin-right:0; }
.concept #contents .sub_block ul li:nth-last-child(-n+3) { margin-bottom:0; }
.concept #contents .sub_block ul li dt { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; margin-top:0.7em; margin-bottom:0.7em; }

/* faq */
.faq #contents .qa_block { width:70%; margin:0 auto; }
.faq #contents .qa_block h3 { border-top:1px solid #000; text-align: center; padding:1em 0; font-size: 1.4em; line-height: 1.2em; }
.faq #contents .qa_block li { border-bottom:1px solid #000; padding:3em 3% 3em 3%;  }
.faq #contents .qa_block li:first-child { border-top:1px solid #000; padding-top:3em; }
.faq #contents .qa_block li:last-child { border-bottom:none; margin-bottom:7em; }
.faq #contents .qa_block li h2 { font-size: 1.2em; margin-bottom:1em; color:#1F6799; }
.faq #contents .qa_block li h2 a.balance_link { color:#1F6799; margin:0; padding:0; display: inline; }
.faq #contents .qa_block li h2 span { margin-right:1em; }
.faq #contents .qa_block li p span { margin-right:1em; }

/* soudan */
.soudan_contents { background-color: #f6eed2; border-radius: 1em; }
.soudan_hd { padding:2em 0 2em 0; }
.soudan_body { padding:0 5em 2em 5em; }
.soudan_body .soudan_lead { margin:0 0 4em 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }
.soudan_body .soudan_lead .soudan_lead_left { border-top:solid 2px #fff; width:45%; padding:2em 2.5em; }
.soudan_body .soudan_lead .soudan_lead_left p { font-size: 1rem; margin:0 0 2em 0; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; line-height: 1.8; text-align: justify; }
.soudan_body .soudan_lead .soudan_lead_left figure { width:75%; margin:0 auto; border-radius: 50%; overflow: hidden; }
.soudan_body .soudan_lead .soudan_lead_left .soudan_lead_left_profile { margin:1em 0 0 0; text-align: center; }
.soudan_body .soudan_lead .soudan_lead_left .soudan_lead_left_profile a { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; border-left:solid 2px; border-right:solid 2px; padding:0 1em; font-size: 0.8rem; line-height: 1; }
.soudan_body .soudan_lead .soudan_lead_right { width:50%; }
.soudan_body .soudan_lead .soudan_lead_right ul { height:100%;  }
.soudan_body .soudan_lead .soudan_lead_right li { border-top:solid 2px #fff; padding:2.5em 1em; }
.soudan_body .soudan_lead .soudan_lead_right li a { display:block; }
.soudan_body .soudan_lead .soudan_lead_right li img { width:100%; height:auto; }
.soudan_body .soudan_lead .soudan_lead_right li:last-child { border-bottom:solid 2px #fff; }
.soudan_body h2 { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.4rem; padding:0.5em 1.25em; border-radius: 0.3em; margin:0 0 1em 0; line-height: 2em; text-align: center; background-color: #fff; color:#333; border:solid 0.2rem #333; }
.soudan_body p.soudan_wanted { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; width:80%; margin:2.5em auto; font-size: 1.2rem; line-height: 2em; text-align: center; }
.soudan_body p.soudan_wanted strong { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; }
.soudan_body .soudan_youtube { width:60%; margin:1em auto 3em auto; text-align: center; }
.soudan_body .soudan_youtube span { display:block; margin:2em 0 0 0; text-align: center;  background-color: #333; color:#fff; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.2em; border-radius: 2em; padding:0.5em 0; }
.soudan_body .soudan_youtube:hover span { background-color: #fff; color:#333; border-radius: 2em; }
.soudan_body .soudan_present { border:solid 2px #ffffff; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; margin:0 auto 3.5em auto; padding:2rem 3rem; border-radius: 0.5em; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }
.soudan_body .soudan_present .soudan_present_left { width:60%; }
.soudan_body .soudan_present .soudan_present_left h3 { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.2em; margin:0 0 0.5em 0; }
.soudan_body .soudan_present .soudan_present_left p { font-size: 1.1em; line-height: 2em; text-align: justify; }
.soudan_body .soudan_present .soudan_present_right { width:35%; border-left:solid 2px #ffffff; padding:0 0 0 5%; }
.soudan_body .soudan_present .soudan_present_right p { font-size: 0.9em; line-height: 2em; text-align: justify; }
.soudan_body .tabs { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }
.soudan_body .tab_item { width:50%; padding:2em; background-color: #f6eed2; text-align: center; border-radius: 1em 1em 0 0; cursor:pointer; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.4rem; padding:1.5em 0 1.5em 0; line-height: 1.5em; text-align: center; transition: all 0.5s; }
.soudan_body .tab_item:hover { background-color: #ffffff; }
.soudan_body input[name="tab_item"] { display: none; }
.soudan_body .tab_content { width:100%; display: none; }
.soudan_body #soudan_a:checked ~ #soudan_a_content, #soudan_b:checked ~ #soudan_b_content { display: block; }
.soudan_body .tabs input:checked + .tab_item { }
.soudan_body .tabs input[type="radio"]:checked + label { background: #ffffff; }
.soudan_body .tabs .att { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.1em; line-height: 1.5; text-align: center; margin:2em auto 0 0; }
.soudan_form { margin:0 0 3em 0; padding:2em 5em 5em 5em;  background-color: #fff; border-radius: 0 0 1em 1em; }
.soudan_form h3 { background-color: #f6eed2; }
.soudan_form_dl dt { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.3em; line-height: 1.5; margin:2em 0 1em 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.soudan_form_dl dt .nes { font-size: 0.7em; line-height: 1; background-color: #222222; color:#ffffff; padding:0.5em 0.75em; border-radius: 0.4em; }
.soudan_form_dl dt .nones { font-size: 0.7em; line-height: 1; background-color: #f6eed2; color:#333; padding:0.5em 0.75em; border-radius: 0.4em; }
.soudan_form_dl dd { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; padding:0 0 0 0; }
.soudan_form_dl dd textarea { outline: none; width:100% !important; height:10em !important; padding:1em; background-color: #ffffff; border:solid 2px #ddd; font-size: 1.2em; line-height: 1.5em; border-radius: 0.3em; }
.soudan_form .submit button { width:100%; padding:1em; margin:1em 0 0 0; color:#fff; background-color: #333; border:solid 1px #333; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.4em; letter-spacing: 0.1em; line-height: 1.5em; border-radius: 0.3em; cursor:pointer; }
.soudan_form .submit button:hover { background-color: #fff; color:#333; }
.user_form_dl { background-color: #f6eed2; padding:3em; margin:2em 0 0 0; border-radius: 1em; }
.user_form_dl dt { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.3em; margin:2em 0 1em 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.user_form_dl dt:first-child { margin:0 0 1em 0; }
.user_form_dl dt .nes { font-size: 0.7em; line-height: 1; background-color: #222222; color:#ffffff; padding:0.5em 0.75em; border-radius: 0.4em; }
.user_form_dl dt .nones { font-size: 0.7em; line-height: 1; background-color: #f6eed2; color:#333; padding:0.5em 0.75em; border-radius: 0.4em; }
.user_form_dl dd { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; padding:0 0 0 0; }
.user_form_dl dd input[type="text"],
.user_form_dl dd input[type="email"] { outline: none; width:100% !important; padding:1em; border:none; font-size: 1em; line-height: 1.5em; border-radius: 0.3em; }
.user_form_dl dd select { background-color:#ffffff; outline: none; width:100% !important; padding:1em; border:none; font-size: 1em; line-height: 1.5em; border-radius: 0.3em;  }
.soudan_form #mfp_hidden { display:none; }
.soudan_form .mfp_err { color:#d64848; margin:0.5em 0; }
.soudan_form #mfp_phase_confirm_inner { width:100%; }
.soudan_form #mfp_phase_confirm_inner h4 { font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500;  background-color: #f6eed2; text-align: center; font-size: 1.5em; line-height: 1; padding:1em; margin:2em 0 1em 0; border-radius: 0.5em; }
.soudan_form #mfp_phase_confirm_inner #mfp_confirm_table { width:100%; }
.soudan_form #mfp_phase_confirm_inner #mfp_confirm_table tr { width:100%; border-top:solid 1px #ddd; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }
.soudan_form #mfp_phase_confirm_inner #mfp_confirm_table tr:first-child { border:none; }
.soudan_form #mfp_phase_confirm_inner #mfp_confirm_table th { width:40%; padding:1em; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.2em; line-height: 1.5; }
.soudan_form #mfp_phase_confirm_inner #mfp_confirm_table td { width:60%; padding:1em; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; color:#666; font-size: 1.2em; line-height: 1.5; }
.soudan_form #mfp_phase_confirm_inner .mfp_buttons #mfp_button_send { width:100%; padding:1em; margin:2em 0 0 0; color:#fff; background-color: #333; border:solid 1px #333; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1.4em; letter-spacing: 0.1em; line-height: 1.5em; border-radius: 0.3em; cursor:pointer; }
.soudan_form #mfp_phase_confirm_inner .mfp_buttons #mfp_button_send:hover { background-color: #fff; color:#333; }
.soudan_form #mfp_phase_confirm_inner .mfp_buttons #mfp_button_cancel { background-color: #fff; width:100%; padding:1em; margin:2em 0 0 0; color:#333; border:solid 1px #333; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; font-size: 1em; letter-spacing: 0.1em; line-height: 1.5em; border-radius: 0.3em; cursor:pointer; }
.soudan_form #mfp_phase_confirm_inner .mfp_buttons #mfp_button_cancel:hover { background-color: #fff; color:#333; }
.soudan_form #mfp_phase_confirm_inner .mfp_error { margin:3em 2em; color:#d64848; }

/* banner */
#banner_product { position:relative; margin:4em 0 2em 0; }
#banner_product dl { width:100%; border:1px solid #000; padding:2em; }
#banner_product dl dt { display:inline-block; width:65%; margin-right:4.5%; vertical-align:middle; }
#banner_product dl dd { font-size: 1.3em; line-height: 2em; display:inline-block; width:25%; vertical-align:middle; }
#banner_product dl dd h2 { margin-bottom:1em; }

#banner_top { position:relative; margin-top:2em; }
#banner_top dl { float:left; width:50%; border:1px solid #000; padding:2em; }
#banner_top dl:nth-child(2) { border-left:none; padding:2em; }
#banner_top dl dt { display:inline-block; width:49%; margin-right:4.5%; vertical-align:middle; }
#banner_top dl dd { display:inline-block; width:45%; vertical-align:middle; }
#banner_top dl dd h2 { margin-bottom:0.75em; }

#banner_soudan { position:relative; margin:5em auto 3em auto; border:1px solid #000; padding:2em; }

#banner_other { position:relative; margin-top:2em; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }
#banner_other dl { width:50%; border:1px solid #000; padding:2em; }
#banner_other dl:nth-child(2) { border-left:none; padding:2em; }
#banner_other dl a { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
#banner_other dl dt { width:49%; }
#banner_other dl dd { width:45%; }
#banner_other dl dd h2 { margin-bottom:0.75em; }

#banner_hfj { position:relative; margin:5em auto; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }
#banner_hfj dl { width:100%; border:1px solid #000; padding:2em; }
#banner_hfj dl:nth-child(2) { border-left:none; padding:2em; }
#banner_hfj dl a { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
#banner_hfj dl dt { width:60%; }
#banner_hfj dl dd { width:35%; }
#banner_hfj dl dd h2 { margin-bottom:0.75em; }
#banner_hfj dl dd h3 { margin-bottom:0.75em; }

#banner_books { margin:4em 0; border-top:solid 1px #333; border-left:solid 1px #333; }
#banner_books h2 { text-align: center; border-right:solid 1px #333; border-bottom:solid 1px #333; }
#banner_books ul { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }
#banner_books ul li { width:50%; padding:2em; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; border-right:solid 1px #333; border-bottom:solid 1px #333; }
#banner_books ul li .thumb { width:25%; }
#banner_books ul li dl { width:68%; }
#banner_books ul li dl .title { font-size: 1.1em; line-height: 1.6em; margin:0 0 0.5em 0; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500;  }
#banner_books ul li dl .ex { font-size: 0.9em; line-height: 1.8em; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 400; text-align: justify; letter-spacing: 0.03em; }
#banner_books ul li dl .cart { width:100%; }
#banner_books .cartjs_box tr th { font-size:0.85rem; width:40%; padding:0.5rem 0; margin-right:3%; display:inline-block; font-weight:normal; }
#banner_books .cartjs_box tr td { font-size:1rem; width:55%; display:inline-block; padding:0 !important; }

/* attention */
#attention { border:solid 1px #000; margin:4em 0 0 0; }
#attention .attention_head { padding:2em; display: flex; flex-direction: row; flex-wrap: wrap; justify-content:space-between; align-items: center; }
#attention .attention_head h2 { font-size: 1.8em; line-height: 1em; font-weight: normal; }
#attention .attention_head a { font-size: 1em; line-height: 1em; color:#fff; background-color: #333; padding:1em 3em; border-radius: 3em; }
.old #attention .attention_head a { display:none; }
#attention .attention_body { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; }
#attention .attention_body .attention_block { width:25%; margin:0 0 0 0; padding:2em; border-top:solid 1px #000; border-right:solid 1px #000; }
#attention .attention_body .attention_block:nth-child(4n) { border-right:none; }
#attention .attention_body .attention_block dt { font-size: 1em; line-height: 1.8em; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; margin:1.5em 0 0.5em 0; letter-spacing: 0.05em; }
#attention .attention_body .attention_block dt:first-child { margin:0 0 0.5em 0; }
#attention .attention_body .attention_block dd { font-size: 0.9em; line-height: 1.8em; text-align:justify; letter-spacing: 0; }

/* yoyaku */
#yoyaku { border:solid 1px #000; margin:5em 0; }
#yoyaku .yoyaku_head { padding:2em; display: flex; flex-direction: row; flex-wrap: wrap; justify-content:space-between; align-items: center; }
#yoyaku .yoyaku_head h2 { font-size: 1.8em; line-height: 1em; font-weight: normal; }
#yoyaku .yoyaku_head a { font-size: 1em; line-height: 1em; color:#fff; background-color: #333; padding:1em 3em; border-radius: 3em; }
#yoyaku .yoyaku_body { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; }
#yoyaku .yoyaku_body .yoyaku_block { width:33.333%; margin:0 0 0 0; padding:2em; border-top:solid 1px #000; border-right:solid 1px #000; }
#yoyaku .yoyaku_body .yoyaku_block:last-child { border-right:none; }
#yoyaku .yoyaku_body .yoyaku_block dt { font-size: 1em; line-height: 1.8em; font-family: 'Zen Kaku Gothic New', sans-serif; font-weight: 500; margin:1.5em 0 0.5em 0; letter-spacing: 0.05em; }
#yoyaku .yoyaku_body .yoyaku_block dt:first-child { margin:0 0 0.5em 0; }
#yoyaku .yoyaku_body .yoyaku_block dd { font-size: 0.9em; line-height: 1.8em; text-align:justify; letter-spacing: 0; }
#yoyaku .yoyaku_body .yoyaku_block dd strong { color: #d64848; display: inline-block; margin:0 0.15em; font-size: 1.2em; line-height: 1.5em; text-decoration: underline; }
#yoyaku .yoyaku_body .yoyaku_block p:first-child { margin:0 0 1em 0; }
#yoyaku .yoyaku_body .yoyaku_block p:last-child { margin:1em 0 0 0; }
.yoyaku__att a { color: #d64848; display:inline-block; font-weight: 500; margin:1em 0; font-size: 1em; line-height: 1.5em; border-bottom:solid 1px #d64848; }

/* footer */
#footer { width:100%; padding: 4em 0; clear:both; }
#footer nav { width: 100%; margin: 0 auto; text-align:center; }
#footer .ft_navi { display:inline-block; vertical-align:middle; letter-spacing:0.1em; }
#footer .ft_navi li { display:inline-block; vertical-align:middle; margin-left:1em; }
#footer .ft_sns { display:inline-block; vertical-align:middle; margin-left:1.2em; }
#footer .ft_sns li { display:inline-block; vertical-align:middle; margin-left:0.75em; font-size:1.2rem; }
#footer .ft_other { display:block; letter-spacing:0.12em; margin-top:1em; }
#footer .ft_other li { display:inline-block; vertical-align:middle; margin-left:1em; }
#footer .ft_caption { margin-top:6em; text-align:center; }

.products #contents .cart_block .cart_photo .mainimage { padding:0.5rem 0 0.5rem 0; margin:0; background-color: #fff; }
.products #contents .cart_block.hfj .cart_photo .mainimage { position: sticky; top:0; }
.products #contents .cart_block .cart_photo .mainimage img { object-fit: cover; width:100%; height:100%; }
.products #contents .cart_block .cart_photo .thumbnail { display:flex; flex-wrap: wrap; gap:0.5rem; }
.products #contents .cart_block .cart_photo .thumbnail li { width:calc(25% - ( 1.5rem / 4 ) ); margin:0; cursor: pointer; }

@media (min-aspect-ratio: 2/1) {
 .products.hfj #contents .cart_block .cart_photo .mainimage { position: static; }
}

/* fadein */
@keyframes fadeIn {
0% { opacity: 0 }
100% { opacity: 1 }
}
@-webkit-keyframes fadeIn {
0% { opacity: 0 }
100% { opacity: 1 }
}

/* media screen */
@media screen and (max-width: 1281px) {
body { font-size: 14px; }
}
@media screen and (max-width: 1024px) {
body { font-size: 13px; }
}
@media screen and (max-width: 896px) {
body { font-size: 13px; }
}
