@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP:300,500,600,700,900");
@import url("https://use.typekit.net/dql4fea.css");
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap");
@import url("https://fonts.googleapis.com/css?family=Overpass:100,100i,200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@100..900&display=swap");
/* spのWYSIWYG用 resetにもあるがspはresetを読み込まないため */
/* ブレイクポイント参考

PC:インナーコンテンツサイズ以上
Laptop-HiDPI:1440
Laptop-MDPI :1280
iPad Pro(10.5inch):834
iPad Pro(12.9inch):1024
iPad:601
SP:600

*/
/* レスポンシブサイト非表示 */
/*共通の処理*/
/* レスポンシブサイト非表示 */
/* PCのみ */
@media screen and (max-width: 1024px) {
  .pc {
    display: none !important;
  }
}
/* タブレット・PC */
@media screen and (max-width: 599px) {
  .tb-pc {
    display: none !important;
  }
  .tb {
    display: none !important;
  }
}
/* タブレット・SP */
@media screen and (min-width: 1025px) {
  .tb-sp {
    display: none !important;
  }
  .tb {
    display: none !important;
  }
}
/* SPのみ */
@media screen and (min-width: 600px) {
  .sp {
    display: none !important;
  }
}
/* タブレットのみ */
@media screen and (min-width: 600px) and (max-width: 1024px) {
  .tb {
    display: block !important;
  }
}
@media screen and (min-width: 1025px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
/* flex-wrap: wrap; */
/* justify-content: center; 左右中央*/
/* justify-content: flex-start;*/
/* justify-content: flex-end;*/
/* justify-content: space-between; */
/* justify-content: space-around; */
/* align-items: center; 上下中央*/
/* align-items: flex-start;*/
/* align-items: flex-end;*/
/* flex-direction: column; 縦方向*/
/* flex-direction: column; 反縦方向*/
/* flex-direction: row-reverse; 反縦方向*/
/*--------------------------------------------------------

	リセット : html5reset-1.6.1.css

参考
https://coliss.com/articles/build-websites/operation/css/my-css-reset-by-ire.html
----------------------------------------------------------*/
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html {
  font-size: 62.5%;
}

/*body設定*/
body {
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", Verdana, Meiryo, sans-serif;
  color: #000;
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #fff;
  line-height: 1.7;
  font-size: 1.6rem;
  overflow-x: hidden;
  text-rendering: optimizeSpeed;
}
@media screen and (min-width: 1025px) {
  body {
    font-weight: 500;
  }
}
@media screen and (max-width: 1024px) {
  body {
    overflow: auto;
    min-width: 1240px;
  }
}

/*IE用：游ゴシックの謎余白をなくすためフォントを別指定*/
@media all and (-ms-high-contrast: none) {
  body {
    font-family: Meiryo, sans-serif;
  }
}
/*要素のフォントサイズやマージン・パディングをリセットしています*/
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
a,
p,
span,
em,
small,
strong,
sub,
sup,
mark,
del,
ins,
strike,
abbr,
dfn,
blockquote,
q,
cite,
code,
pre,
ol,
ul,
li,
dl,
dt,
dd,
div,
section,
article,
main,
aside,
nav,
header,
hgroup,
footer,
img,
figure,
figcaption,
address,
time,
audio,
video,
canvas,
iframe,
details,
summary,
fieldset,
form,
label,
legend,
caption {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box;
}

/*テーブル指定*/
table,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box;
}

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

/*新規追加要素のデフォルトはすべてインライン要素になっているので、section要素などをブロック要素へ変更しています*/
main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

/*nav要素内ulのマーカー（行頭記号）を表示しないようにしています marginを指定したら地獄*/
ul[class],
ol[class] {
  list-style: none;
}

/*引用符の表示が出ないようにしています*/
blockquote,
q {
  quotes: none;
}

/*blockquote要素、q要素の前後にコンテンツを追加しないように指定しています*/
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

/* ins要素のデフォルトをセットし、色を変える場合はここで変更できるようにしています */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* mark要素のデフォルトをセットし、色やフォントスタイルを変える場合はここで変更できるようにしています。また、mark要素とは、文書内の検索結果で該当するフレーズをハイライトして、目立たせる際に使用するようです。*/
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

/*テキストに打ち消し線が付くようにしています*/
del {
  text-decoration: line-through;
}

/*IEではデフォルトで点線を下線表示する設定ではないので、下線がつくようにしています。また、マウスオーバー時にヘルプカーソルの表示が出るようにしています*/
abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

/*水平罫線のデフォルトである立体的な罫線を見えなくしています*/
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

/*縦方向の揃え位置を中央揃えに指定しています*/
input,
select {
  vertical-align: middle;
}

/*画像を縦に並べたときに余白が出てしまわないように*/
img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
  -webkit-backface-visibility: hidden;
  width: auto;
  max-width: 100%;
  height: auto;
}

/* タッチデバイスでのリンクやボタンの反応を向上 */
a,
area,
button,
[role=button],
input:not([type=range]),
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

@page {
  size: A4;
  margin: 5mm;
}
/*a要素のフォントサイズなどをリセットしフォントの縦方向の揃え位置を親要素のベースラインに揃えるようにしています*/
a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  transition: 0.2s;
  text-decoration: none;
}

/*クラスの指定がない場合のリンクのデフォルト色を指定*/
a:not([class]) {
  color: #012d9b;
}

a:not([class]):hover {
  color: #012d9b;
}

a:not([class]):active {
  color: #012d9b;
}

/*すべての要素のfont-family, font-size, line-heightをその親から継承するようにリセット*/
* {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

/*属性と状態のCSSリセット*/
[hidden] {
  display: none !important;
}

[disabled] {
  cursor: not-allowed;
}

:focus:not(:focus-visible) {
  outline: none;
}

/*box-sizing*/
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/*clearfix*/
/* For modern browsers */
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

/* For IE 6/7 only */
.clearfix {
  *zoom: 1;
}

/*禁則処理の追加*/
p,
li,
dt,
dd,
th,
td,
pre {
  -ms-line-break: strict;
  line-break: strict;
  -ms-word-break: break-strict;
  word-break: break-strict;
}

/** Selection */
::-moz-selection,
::selection {
  background-color: #b3d4fc;
  /* Change as appropriate */
  color: #000;
  /* Change as appropriate */
  text-shadow: none;
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/*--------------------------------------------------------

	デバイス関係なし

----------------------------------------------------------*/
.mb00 {
  margin-bottom: 0px !important;
}

.mb05 {
  margin-bottom: 5px !important;
}

.mb08 {
  margin-bottom: 8px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb12 {
  margin-bottom: 12px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !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;
}

.mb110 {
  margin-bottom: 110px !important;
}

.ml00 {
  margin-left: 0px !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;
}

.mr00 {
  margin-right: 0px !important;
}

.mr05 {
  margin-right: 5px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.mr100 {
  margin-right: 100px !important;
}

.mt00 {
  margin-top: 0px !important;
}

.mt05 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !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;
}

.pt00 {
  padding-top: 0px !important;
}

.pt05 {
  padding-top: 5px !important;
}

.pt06 {
  padding-top: 6px !important;
}

.pt07 {
  padding-top: 7px !important;
}

.pt08 {
  padding-top: 8px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !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;
}

.pb00 {
  padding-bottom: 0px !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;
}

.pl00 {
  padding-left: 0px !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;
}

@media print {
  .sp {
    display: none !important;
  }
  body {
    width: 1140px;
    -webkit-print-color-adjust: exact;
  }
  /*　------- ↓その他参考例　---------
  .header {
      position: relative !important; //ヘッダー固定fixedを解除
  }
  .header .header-inner {
      width: 100% !important; //サイト幅を解除
  }
  .page-title {
      margin-top: 0px !important; //固定ヘッダー時のマージンTOP分を解除
      width: 100% !important; //サイト幅を解除
  }
  .breadcrumbs-list {
      width: 100% !important; //サイト幅を解除
  }
  .global-nav {
      width: 100%; //サイト幅を解除
  }
  ------- ↑その他参考　---------*/
}
@page {
  size: A4;
  margin: 12.7mm 9.7mm;
}
/* =====================================================

 _header

===================================================== */
.header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 15px 45px;
}
@media screen and (max-width: 1300px) {
  .header {
    padding: 15px 20px;
  }
}

.header-logo h1 a {
  display: block;
  max-width: 541px;
  width: 100%;
}
@media screen and (max-width: 1300px) {
  .header-logo h1 a {
    max-width: 400px;
  }
}

.header-right {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.header-buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: 25px;
}
.header-buttons > li > a {
  display: block;
  width: 82px;
  height: 82px;
  padding: 48px 10px 0;
  background-color: #f0f7f9;
  background-repeat: no-repeat;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  color: #222 !important;
  font-size: 1.2rem;
  font-weight: 500;
  text-align: center;
  box-sizing: border-box;
}
.header-buttons > li > a.login {
  background-image: url("../img/common/icon_lock_blue.svg");
  background-position: top 16px center;
  background-size: 22px auto;
}
.header-buttons > li > a.mypage {
  background-image: url("../img/common/icon_user.svg");
  background-position: top 15px center;
  background-size: 32px auto;
}
.header-buttons > li > a.logout {
  background-color: #e6ecdc;
  background-image: url("../img/common/icon_logout_green.svg");
  background-position: top 17px center;
  background-size: 30px auto;
}
.header-buttons > li > a.logout:hover {
  background-color: #daeabe;
}
.header-buttons > li > a.shopping {
  background-image: url("../img/common/icon_shopping_cart.svg");
  background-position: top 17px center;
  background-size: 30px auto;
}
.header-buttons > li > a.contact {
  background-image: url("../img/common/icon_email.svg");
  background-position: top 17px center;
  background-size: 30px auto;
}
.header-buttons > li > a:hover {
  background-color: #c7e4ec;
}
.header-buttons > li > a.rakuten {
  background: none;
  padding: 11px 0px 0;
  border-radius: 0;
  width: 62px;
  height: auto;
  transition: 0.3s ease;
}
.header-buttons > li > a.rakuten img {
  width: 62px;
}
@media (any-hover: hover) {
  .header-buttons > li > a.rakuten:hover {
    opacity: 0.7;
  }
}
.header-buttons > li:not(:last-child) {
  margin-right: 10px;
}

.header-contact dt {
  margin-bottom: 2px;
  padding: 3px;
  background-color: #eee;
  color: #333;
  font-size: 1.3rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
  line-height: 1;
}
.header-contact dt span {
  display: inline-block;
  position: relative;
  padding-left: 16px;
}
.header-contact dt span::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 0;
  width: 12px;
  height: 12px;
  background-image: url("../img/common/icon_phone.svg");
}
.header-contact dd > a {
  position: relative;
  display: inline-block;
  padding-left: 50px;
  color: #012d9b;
  font-size: 3.7rem;
  font-family: adobe-garamond-pro, serif;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
}
.header-contact dd > a::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 42px;
  height: 24px;
  background-image: url("../img/common/icon_freedial.svg");
  background-size: 100%;
}
.header-contact dd > p {
  padding-left: 50px;
  color: #000;
  font-size: 1.2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}

/* =====================================================

 _footer

===================================================== */
.footer {
  position: relative;
  margin-top: 120px;
  padding: 20px 0 100px;
  background-color: #d4e6f2;
}
#top .footer {
  margin-top: 70px;
}
.footer::before {
  content: "";
  position: absolute;
  top: -120px;
  width: 100%;
  height: 150px;
  background-image: url("../img/common/footer_bg.png");
  background-position: top center;
  background-repeat: repeat-x;
  background-size: auto;
}
.footer__inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

.footer-logo {
  position: relative;
  max-width: 381px;
  margin-bottom: 30px;
}
.footer-logo img {
  backface-visibility: visible;
}

.footer-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 90px;
}
.footer-container__sitemap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 70%;
  padding-right: 20px;
}
.footer-container__sitemap > ul {
  list-style: none;
  margin-top: -10px;
  font-weight: 500;
}
.footer-container__sitemap > ul:first-child {
  margin-right: 12%;
}
.footer-container__sitemap > ul > li {
  margin-top: 10px;
}
.footer-container__sitemap > ul > li > a {
  display: inline-block;
  position: relative;
  padding-left: 20px;
  color: #000 !important;
}
.footer-container__sitemap > ul > li > a::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 10px;
  height: 15px;
  background-image: url("../img/common/icon_water_drop.svg");
  background-repeat: no-repeat;
  background-size: 100%;
}
.footer-container__sitemap > ul > li > a:hover {
  text-decoration: underline;
}
.footer-container__sitemap > ul > li .sitemap-sub {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.footer-container__sitemap > ul > li .sitemap-sub > ul {
  list-style: none;
  margin-top: 7px;
}
.footer-container__sitemap > ul > li .sitemap-sub > ul:first-child {
  margin-right: 45px;
}
.footer-container__sitemap > ul > li .sitemap-sub > ul > li {
  margin-top: 8px;
}
.footer-container__sitemap > ul > li .sitemap-sub > ul > li > a {
  display: inline-block;
  position: relative;
  padding-left: 10px;
  color: #000 !important;
  font-size: 1.5rem;
}
.footer-container__sitemap > ul > li .sitemap-sub > ul > li > a::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 6px;
  height: 6px;
  background-color: #1ca1be;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.footer-container__sitemap > ul > li .sitemap-sub > ul > li > a:hover {
  text-decoration: underline;
}
.footer-container__contact dl {
  margin-bottom: 13px;
}
.footer-container__contact dl dt {
  margin-bottom: 5px;
  padding: 5px;
  background-color: #fff;
  color: #333;
  font-size: 1.3rem;
  font-weight: 500;
  text-align: center;
  line-height: 1;
}
.footer-container__contact dl dt span {
  display: inline-block;
  position: relative;
  padding-left: 16px;
}
.footer-container__contact dl dt span::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 0;
  width: 12px;
  height: 12px;
  background-image: url("../img/common/icon_phone.svg");
}
.footer-container__contact dl dd > a {
  position: relative;
  display: inline-block;
  padding-left: 50px;
  color: #012d9b;
  font-size: 3.7rem;
  font-family: adobe-garamond-pro, serif;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
}
.footer-container__contact dl dd > a::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 42px;
  height: 24px;
  background-image: url("../img/common/icon_freedial.svg");
  background-size: 100%;
}
.footer-container__contact dl dd > p {
  padding-left: 50px;
  color: #000;
  font-size: 1.2rem;
  font-weight: 500;
}
.footer-container__contact ul {
  list-style: none;
  margin-bottom: 13px;
}
.footer-container__contact ul li:not(:last-child) {
  margin-bottom: 10px;
}
.footer-container__contact ul li a {
  display: block;
  padding: 12px 12px 12px 60px;
  background-color: #fff;
  background-repeat: no-repeat;
  color: #282828;
  font-size: 1.4rem;
  font-weight: 500;
}
.footer-container__contact ul li a.fax {
  background-image: url("../img/common/icon_fax.svg");
  background-position: center left 20px;
  background-size: 27px auto;
}
.footer-container__contact ul li a.phone {
  background-image: url("../img/common/icon_phone02.svg");
  background-position: center left 27px;
  background-size: 14px auto;
}
.footer-container__contact ul li a:hover {
  background-color: #b6e6ff;
}
.footer-container .qr-code {
  max-width: 116px;
  margin: 0 auto;
}

.footer-copyright {
  color: #000;
  font-size: 1.3rem;
  text-align: center;
  letter-spacing: 0.02em;
}
.footer-copyright img {
  backface-visibility: visible;
}

/* =====================================================

 _nav

===================================================== */
.nav {
  background-color: #012d9b;
}
.nav__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.nav ul {
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.nav ul > li {
  position: relative;
  width: 14.2714285714%;
}
.nav ul > li > a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
  color: #fff !important;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 400;
  text-align: center;
  line-height: 1.25;
}
.nav ul > li > a:hover, .nav ul > li > a.active {
  background-color: #0d42c8;
}
.nav ul > li > a span {
  display: inline-block;
  padding: 65px 20px 10px;
  background-repeat: no-repeat;
}
.nav ul > li:nth-child(odd)::after, .nav ul > li:nth-child(odd)::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
  height: calc(100% - 20px);
  margin: auto 0;
  border-right: 2px dotted rgba(255, 255, 255, 0.3);
}
.nav ul > li:nth-child(odd)::before {
  left: 0;
}
.nav ul > li:nth-child(odd)::after {
  right: 0;
}
.nav ul > li:nth-child(1) a span {
  background-image: url("../img/common/icon_nav01.svg");
  background-position: top 13px center;
  background-size: 40px auto;
}
.nav ul > li:nth-child(2) a span {
  background-image: url("../img/common/icon_nav02.svg");
  background-position: top 12px center;
  background-size: 67px auto;
}
.nav ul > li:nth-child(3) a span {
  background-image: url("../img/common/icon_nav03.svg");
  background-position: top 12px center;
  background-size: 29px auto;
}
.nav ul > li:nth-child(4) a span {
  background-image: url("../img/common/icon_nav04.svg");
  background-position: top 11px center;
  background-size: 74px auto;
}
.nav ul > li:nth-child(5) a span {
  background-image: url("../img/common/icon_nav05.svg");
  background-position: top 15px center;
  background-size: 69px auto;
}
.nav ul > li:nth-child(6) a span {
  background-image: url("../img/common/icon_nav06.svg");
  background-position: top 20px center;
  background-size: 47px auto;
}
.nav ul > li:nth-child(7) a span {
  background-image: url("../img/common/icon_nav07.svg");
  background-position: top 15px center;
  background-size: 34px auto;
}

/* =====================================================

 _side

===================================================== */
.side {
  max-width: 300px;
  margin-bottom: 40px;
}
@media screen and (max-width: 1200px) {
  .side {
    max-width: 280px;
  }
}
#top .side {
  max-width: 340px;
}
@media screen and (max-width: 1600px) {
  #top .side {
    max-width: 300px;
  }
}
@media screen and (max-width: 1200px) {
  #top .side {
    max-width: 280px;
  }
}

.side-mypage {
  margin-bottom: 30px;
  padding: 20px 20px 25px;
  background-color: #f1f7f9;
  border: 5px solid #addceb;
}
.side-mypage__title {
  margin-bottom: 12px;
  color: #000;
  font-size: 2rem;
  text-align: center;
  line-height: 1.4;
}
.side-mypage__title > span {
  display: inline-block;
  position: relative;
  padding-left: 50px;
}
.side-mypage__title > span::before {
  content: "";
  position: absolute;
  left: 0;
  width: 41px;
  height: 42px;
  background-image: url("../img/common/icon_user.svg");
  background-repeat: no-repeat;
  background-size: 100%;
}
.side-mypage__title > span > span {
  display: block;
  color: #1794af;
  font-family: "Overpass", sans-serif;
  font-weight: 900;
  font-size: 1.4rem;
}
.side-mypage__button {
  display: block;
  padding: 17px;
  box-shadow: 5px 5px 3px 0 rgba(0, 0, 0, 0.15);
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
}
.side-mypage__button > span {
  position: relative;
  padding-left: 30px;
}
.side-mypage__button > span::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.side-mypage__button.login {
  background-color: #fe9900;
}
.side-mypage__button.login > span::before {
  content: "";
  width: 19px;
  height: 25px;
  background-image: url("../img/common/icon_lock.svg");
}
.side-mypage__button.login:hover {
  background-color: #ef9000;
}
.side-mypage__button.mypage {
  background-color: #012d9b;
}
.side-mypage__button.mypage > span::before {
  content: "";
  width: 23px;
  height: 24px;
  background-image: url("../img/common/icon_user_white.svg");
}
.side-mypage__button.mypage:hover {
  background-color: #00237b;
}
.side-mypage__button.logout {
  padding-left: 42px;
  background-color: #78a13d;
}
.side-mypage__button.logout > span {
  margin-left: -20px;
}
.side-mypage__button.logout > span::before {
  content: "";
  top: 3px;
  width: 26px;
  height: 26px;
  background-image: url("../img/common/icon_logout.svg");
}
.side-mypage__button.logout:hover {
  background-color: #5d8425;
}
.side-mypage__button.registration {
  background-color: #012d9b;
}
.side-mypage__button.registration:hover {
  background-color: #00237b;
}
.side-mypage__text-link {
  text-align: center;
}
.side-mypage__text-link > a {
  font-weight: 600;
  padding-left: 0.8em;
  text-decoration: underline;
  position: relative;
}
.side-mypage__text-link > a::before {
  position: absolute;
  content: "";
  left: 0;
  top: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 6px;
  border-color: transparent transparent transparent #012d9b;
}
.side-mypage__text-link > a:hover {
  text-decoration: none;
}
.side-mypage__box {
  margin-bottom: 12px;
  padding: 20px;
  background-color: #fff;
}
.side-mypage__box__name {
  margin-bottom: 15px;
  color: #012d9b;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}
.side-mypage__box__detail {
  color: #000;
  font-weight: 700;
  text-align: center;
  line-height: 1.3;
}
.side-mypage__box__detail span {
  color: #de0130;
  font-size: 2.8rem;
}
.side-mypage__text {
  color: #000;
  font-weight: 700;
  line-height: 1.4;
}
.side-mypage__text.al-center {
  text-align: center;
}

.side-nav {
  margin-bottom: 20px;
  border: 1px solid #ddd;
}
.side-nav__title {
  padding: 20px;
  border-bottom: 1px dotted #ccc;
  color: #000;
  font-size: 2rem;
  text-align: center;
  line-height: 1.4;
}
.side-nav__title > span {
  display: inline-block;
  position: relative;
  padding-left: 55px;
}
.side-nav__title > span::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  width: 42px;
  height: 40px;
  background-image: url("../img/common/icon_box.svg");
  background-repeat: no-repeat;
  background-size: 100%;
}
.side-nav__title > span > span {
  display: block;
  color: #1794af;
  font-family: "Overpass", sans-serif;
  font-weight: 900;
  font-size: 1.4rem;
}
.side-nav__list__item:not(:last-child) {
  border-bottom: 1px dotted #ccc;
}
.side-nav__list__link {
  display: block;
  position: relative;
  padding: 25px 25px 25px 110px;
  color: #000;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (max-width: 1200px) {
  .side-nav__list__link {
    font-size: 1.5rem;
  }
}
.side-nav__list__link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100px;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.item01 .side-nav__list__link::before {
  background-image: url("../img/common/side_item01.png");
  background-size: 75px auto;
}
.item02 .side-nav__list__link::before {
  background-image: url("../img/common/side_item02.png");
  background-size: 43px auto;
}
.item03 .side-nav__list__link::before {
  background-image: url("../img/common/side_item03.png");
  background-size: 70px auto;
}
.item04 .side-nav__list__link::before {
  background-image: url("../img/common/side_item04.png");
  background-size: 23px auto;
}
.item05 .side-nav__list__link::before {
  background-image: url("../img/common/side_item05.png");
  background-size: 22px auto;
}
.item06 .side-nav__list__link::before {
  background-image: url("../img/common/side_item06.png");
  background-size: 23px auto;
}
.item07 .side-nav__list__link::before {
  background-image: url("../img/common/side_item07.png");
  background-size: 46px auto;
}
.item08 .side-nav__list__link::before {
  background-image: url("../img/common/side_item08.png");
  background-size: 69px auto;
}
.item09 .side-nav__list__link::before {
  background-image: url("../img/common/side_item09.png");
  background-size: 21px auto;
}
.item10 .side-nav__list__link::before {
  background-image: url("../img/common/side_item10.png");
  background-size: 30px auto;
}
.item11 .side-nav__list__link::before {
  background-image: url("../img/common/side_item11.png");
  background-size: 76px auto;
}
.item12 .side-nav__list__link::before {
  background-image: url("../img/common/side_item12.png");
  background-size: 74px auto;
}
.side-nav__list__link::after {
  content: "";
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto 0;
  width: 10px;
  height: 10px;
  border-top: 2px solid #012d9b;
  border-right: 2px solid #012d9b;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.side-nav__list__link:hover {
  background-color: #f0f7f9;
}

.side-link {
  padding: 0 20px;
}
.side-link > li {
  line-height: 1.3;
}
.side-link > li:not(:last-child) {
  margin-bottom: 10px;
}
.side-link > li:nth-child(3) {
  background-color: #fce6c6;
}
.side-link > li > a {
  display: block;
  position: relative;
  padding: 15px 20px 15px 65px;
  color: #000;
  font-size: 1.5rem;
  font-weight: 500;
}
.side-link > li > a::before {
  content: "";
  position: absolute;
  width: 65px;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto 0;
  background-repeat: no-repeat;
  background-position: center;
}
.side-link > li > a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto 0;
}
.side-link > li > a.delivery {
  background-color: #f8e6e9;
}
.side-link > li > a.delivery::before {
  background-image: url("../img/common/icon_truck.svg");
  background-size: 29px auto;
}
.side-link > li > a.delivery::after {
  width: 9px;
  height: 9px;
  border-top: 2px solid #dd0000;
  border-right: 2px solid #dd0000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.side-link > li > a.delivery:hover {
  background-color: #fdd7de;
}
.side-link > li > a.fax {
  background-color: #f2f2f2;
}
.side-link > li > a.fax::before {
  background-image: url("../img/common/icon_fax.svg");
  background-size: 27px auto;
}
.side-link > li > a.fax::after {
  width: 9px;
  height: 9px;
  border-top: 2px solid #1ca1be;
  border-right: 2px solid #1ca1be;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.side-link > li > a.fax:hover {
  background-color: #c7e4ec;
}
.side-link > li > a.sos::before {
  background-image: url("../img/common/icon_notice.svg");
  background-size: 22px auto;
}
.side-link > li > a.sos::after {
  width: 9px;
  height: 9px;
  border-top: 2px solid #fc9500;
  border-right: 2px solid #fc9500;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.side-link > li > a.sos:hover {
  text-decoration: underline;
}
.side-link > li > ul {
  list-style: none;
  padding: 0 15px 15px;
}
.side-link > li > ul > li:not(:last-child) {
  margin-bottom: 10px;
}
.side-link > li > ul > li > a {
  display: block;
  position: relative;
  padding: 15px 15px 15px 30px;
  background-color: #fff;
  color: #282828;
  font-size: 1.5rem;
  font-weight: 500;
}
.side-link > li > ul > li > a::before {
  content: "";
  position: absolute;
  top: 20px;
  left: 10px;
  width: 9px;
  height: 9px;
  border-top: 2px solid #fc9500;
  border-right: 2px solid #fc9500;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.side-link > li > ul > li > a:hover {
  color: #012d9b;
}

/*--------------------------------------------------------
タブ（トップ新着部分）
----------------------------------------------------------*/
.tab-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.tab-label {
  position: relative;
  min-width: 160px;
  padding: 20px 5px;
  border-right: 1px solid #ddd;
  color: #300;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0.05em;
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
  transition: 0.3s;
  cursor: pointer;
}
.tab-label::before {
  content: "";
  position: absolute;
  top: -3px;
  left: 0;
  width: 100%;
  height: 3px;
}
.tab-label:first-of-type {
  border-left: 1px solid #ddd;
}
.tab-label.all::before {
  background-color: #012d9b;
}
.tab-label.news::before {
  background-color: #099;
}
.tab-label.campaign::before {
  background-color: #fe9900;
}
.tab-label.important::before {
  background-color: #d00;
}

.tab-content {
  display: none;
  width: 100%;
  border-top: 1px solid #ddd;
}

.tab-switch:checked + .tab-label + .tab-content {
  display: block;
}

.tab-switch {
  display: none;
}

/* =====================================================

 _breadcrums

===================================================== */
.breadcrumbs > ul {
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  max-width: 1240px;
  margin: 0 auto;
  padding: 15px 20px 0;
}
.breadcrumbs > ul > li {
  position: relative;
  color: #343a3d;
  font-size: 1.5rem;
}
.breadcrumbs > ul > li:not(:last-child) {
  padding-right: 1.5em;
}
.breadcrumbs > ul > li:not(:last-child)::after {
  content: "> ";
  position: absolute;
  top: -1px;
  right: 5px;
  bottom: 0;
  margin: auto 0;
}
.breadcrumbs > ul > li > a {
  color: #000 !important;
}
.breadcrumbs > ul > li > a:hover {
  text-decoration: underline;
}

/* =====================================================

 _pagetitle

===================================================== */
.pagetitle {
  padding: 15px 0 40px;
  text-align: center;
}
.pagetitle.about h2::before {
  background-image: url("../img/about/pagetitle_icon.svg");
}
.pagetitle.cart h2::before {
  background-image: url("../img/cart/pagetitle_icon.svg");
}
.pagetitle.mypage h2::before {
  background-image: url("../img/mypage/pagetitle_icon.svg");
}
.pagetitle.information h2::before {
  background-image: url("../img/information/pagetitle_icon.svg");
}
.pagetitle.regist h2::before {
  background-image: url("../img/regist/pagetitle_icon.svg");
}
.pagetitle.contact h2::before {
  background-image: url("../img/contact/pagetitle_icon.svg");
}
.pagetitle.campaign h2::before {
  background-image: url("../img/campaign/pagetitle_icon.svg");
}
.pagetitle.helper h2::before {
  background-image: url("../img/helper/pagetitle_icon.svg");
}
.pagetitle.privacy h2::before {
  background-image: url("../img/privacy/pagetitle_icon.svg");
}
.pagetitle.sitemap h2::before {
  background-image: url("../img/sitemap/pagetitle_icon.svg");
}
.pagetitle.tokutei h2::before {
  background-image: url("../img/tokutei/pagetitle_icon.svg");
}
.pagetitle.fax h2::before {
  background-image: url("../img/fax/pagetitle_icon.svg");
}
.pagetitle.paystate h2::before {
  background-image: url("../img/paystate/pagetitle_icon.svg");
}
.pagetitle.merit h2::before {
  background-image: url("../img/merit/pagetitle_icon.svg");
}
.pagetitle.regular h2::before {
  background-image: url("../img/regular/pagetitle_icon.svg");
}
.pagetitle.forget h2::before {
  background-image: url("../img/forget/pagetitle_icon.svg");
}
.pagetitle h2 {
  position: relative;
  padding-bottom: 15px;
  color: #012d9b;
  font-size: 3.2rem;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
  font-weight: 400;
}
.pagetitle h2::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100%;
}
.pagetitle h2::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 4px;
  margin: 0 auto;
  background-color: #012d9b;
}
.pagetitle.about h2, .pagetitle.cart h2 {
  padding-top: 40px;
}
.pagetitle.about h2::before, .pagetitle.cart h2::before {
  width: 29px;
  height: 38px;
}
.pagetitle.mypage h2 {
  padding-top: 40px;
}
.pagetitle.mypage h2::before {
  width: 38px;
  height: 38px;
}
.pagetitle.information h2 {
  padding-top: 40px;
}
.pagetitle.information h2::before {
  width: 58px;
  height: 41px;
}
.pagetitle.contact h2 {
  padding-top: 40px;
}
.pagetitle.contact h2::before {
  width: 44px;
  height: 33px;
}
.pagetitle.regist h2 {
  padding-top: 40px;
}
.pagetitle.regist h2::before {
  width: 36px;
  height: 36px;
}
.pagetitle.campaign h2 {
  padding-top: 40px;
}
.pagetitle.campaign h2::before {
  width: 40px;
  height: 40px;
}
.pagetitle.helper h2 {
  padding-top: 40px;
}
.pagetitle.helper h2::before {
  width: 42px;
  height: 42px;
}
.pagetitle.privacy h2 {
  padding-top: 40px;
}
.pagetitle.privacy h2::before {
  width: 44px;
  height: 38px;
}
.pagetitle.sitemap h2 {
  padding-top: 40px;
}
.pagetitle.sitemap h2::before {
  width: 44px;
  height: 37px;
}
.pagetitle.tokutei h2 {
  padding-top: 44px;
}
.pagetitle.tokutei h2::before {
  width: 43px;
  height: 43px;
}
.pagetitle.fax h2 {
  padding-top: 46px;
}
.pagetitle.fax h2::before {
  width: 52px;
  height: 46px;
}
.pagetitle.paystate h2 {
  padding-top: 42px;
}
.pagetitle.paystate h2::before {
  width: 52px;
  height: 40px;
}
.pagetitle.merit h2 {
  padding-top: 48px;
}
.pagetitle.merit h2::before {
  width: 83px;
  height: 44px;
}
.pagetitle.regular h2 {
  padding-top: 45px;
}
.pagetitle.regular h2::before {
  width: 83px;
  height: 45px;
}
.pagetitle.forget h2 {
  padding-top: 48px;
}
.pagetitle.forget h2::before {
  width: 30px;
  height: 42px;
}

/* =====================================================

 _title
===================================================== */
.ttl01 {
  position: relative;
  margin-bottom: 30px !important;
  padding: 12px 12px 12px 30px !important;
  background-color: #f1f7f9 !important;
  color: #000;
  font-size: 2rem !important;
  font-weight: 500;
}
.ttl01::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 20px;
  height: 5px;
  margin: auto 0;
  background-color: #012d9b;
}

.ttl02 {
  position: relative !important;
  margin-bottom: 15px !important;
  padding: 8px 8px 8px 45px !important;
  background-color: #addceb !important;
  color: #000 !important;
  font-size: 1.5rem !important;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important !important;
}
.ttl02::before {
  content: "";
  position: absolute;
  top: 13px;
  left: 20px;
  width: 15px;
  height: 15px;
  border: 4px solid #1794af;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  line-height: 1.5;
}

.ttl03 {
  margin-bottom: 20px !important;
  padding: 8px 12px !important;
  background-color: #012d9b !important;
  color: #fff !important;
  font-size: 1.8rem !important;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important !important;
  font-weight: 500;
}
.ttl03 span {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 15px;
  background-color: #fff;
  color: #012d9b;
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  line-height: 20px;
}
.ttl03--base2 {
  background-color: #1794af !important;
}
.ttl03--base2 span {
  color: #1794af !important;
}

.ttl04 {
  position: relative !important;
  margin-bottom: 15px !important;
  padding: 6px 8px 6px 45px !important;
  background-color: #addceb !important;
  color: #000 !important;
  font-size: 1.8rem !important;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important !important;
  font-weight: 700 !important;
}
.ttl04::before {
  content: "";
  position: absolute;
  top: 16px;
  left: 20px;
  width: 15px;
  height: 15px;
  border: 4px solid #1794af;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  line-height: 1.5;
}
.ttl04.rakuten {
  background-color: #bf0000 !important;
  color: #fff !important;
}
.ttl04.rakuten::before {
  border: 4px solid #fff;
}

.ttl05 {
  color: #012d9b;
  font-weight: 600;
  font-size: 1.8rem;
  position: relative;
  padding: 5px 5px 5px 25px;
  line-height: 1.3;
  margin-bottom: 15px;
}
.ttl05::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 12px;
  left: 0;
  margin: auto;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #012d9b;
}
.ttl05.rakuten {
  color: #bf0000;
}
.ttl05.rakuten::before {
  background-color: #bf0000;
}

/* =====================================================

 _layout

===================================================== */
body {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 400;
}

main {
  padding: 0 0 80px;
}

.container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 1240px;
  margin: 0 auto;
  padding: 15px 20px 70px;
}

.content {
  width: calc(100% - 300px);
  padding-left: 40px;
}

/* =====================================================

 _text

===================================================== */
.text-base {
  color: #000;
}
.text-base.kome {
  padding-left: 1em;
  text-indent: -1em;
}
.text-base.cl-yellow,
.text-base *.cl-yellow {
  color: #fe8900;
}
.text-base.cl-red,
.text-base *.cl-red {
  color: #ce0000;
}
.text-base.cl-blue,
.text-base *.cl-blue {
  color: #012d9b;
}
.text-base.fs14 {
  font-size: 1.4rem;
}
.text-base.fs15 {
  font-size: 1.5rem;
}
.text-base.fw-bold,
.text-base *.fw-bold {
  font-weight: 600;
}
.text-base.al-center {
  text-align: center;
}
.text-base.al-right {
  text-align: right;
}

.text-note {
  padding-left: 1em;
  color: #ce0000;
  text-indent: -1em;
  line-height: 1.5;
}
.text-note.fs14 {
  font-size: 1.4rem;
}
.text-note.fs15 {
  font-size: 1.5rem;
}
.text-note.fw-bold {
  font-weight: 600;
}
.text-note.al-center {
  text-align: center;
}

.fs13 {
  font-size: 1.3rem;
}

.fs14 {
  font-size: 1.4rem;
}

.fs15 {
  font-size: 1.5rem;
}

.fw-bold {
  font-weight: 600;
}

.al-center {
  text-align: center;
}

.text-red {
  color: #CE0000;
}

.text-red-b {
  color: #CE0000;
  font-weight: bold;
}

.text-l-blue {
  color: #1582df;
}

.txt-idt {
  padding-left: 1em;
  text-indent: -1em;
}

.text-bold {
  font-weight: 700;
}

.text-link {
  text-decoration: underline;
}
.text-link:hover {
  text-decoration: none;
  color: #ce0000;
}

.link-under-line {
  text-decoration: underline !important;
  transition: color 0.3s ease;
}
@media (any-hover: hover) {
  .link-under-line:hover {
    color: #1794af !important;
  }
}

/*iOSでのsubmit, buttonのデザインをリセットするCSS*/
button,
input[type=submit],
input[type=button],
input[type=search] {
  border-radius: 0;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
}
button::-webkit-search-decoration,
input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration,
input[type=search]::-webkit-search-decoration {
  display: none;
}
button:focus,
input[type=submit]:focus,
input[type=button]:focus,
input[type=search]:focus {
  outline: unset;
}

input[type=search] {
  border: 1px solid #ddd;
}

/* Form */
input[type=text],
input[type=email],
input[type=tel],
input[type=password],
textarea,
select {
  margin: 0;
  padding: 0;
  background-color: transparent;
  color: inherit;
  font-family: inherit;
  font-size: 100%;
  border: none;
  border-radius: 0;
  outline: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  resize: vertical;
  border: 1px solid #ddd;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  vertical-align: middle;
  background-image: url(../img/common/select_arrow02.png);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 42px auto;
}

button,
input[type=submit],
input[type=button],
input[type=radio],
input[type=checkbox],
label,
select {
  cursor: pointer;
}

/** Form Select IE 11 */
select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

form {
  /*-- textarea ---*/
  /*-- radio ---*/
  /*-- select ---*/
  /*-- checkbox ---*/
}
form input[type=text],
form input[type=email],
form input[type=tel],
form input[type=password],
form textarea,
form select {
  width: 100%;
  padding: 18px 20px 15px;
  border: none;
  background-color: #f4f4f4;
  border: 1px solid #ddd;
  -moz-border-radius: 3;
  -webkit-border-radius: 3;
  -o-border-radius: 3;
  -ms-border-radius: 3;
  border-radius: 3;
  color: #555;
  font-size: 1.6rem;
  vertical-align: bottom;
}
form input[type=text].w100,
form input[type=email].w100,
form input[type=tel].w100,
form input[type=password].w100,
form textarea.w100,
form select.w100 {
  width: 100px;
}
form input[type=text].w110,
form input[type=email].w110,
form input[type=tel].w110,
form input[type=password].w110,
form textarea.w110,
form select.w110 {
  width: 110px;
}
form input[type=text].w130,
form input[type=email].w130,
form input[type=tel].w130,
form input[type=password].w130,
form textarea.w130,
form select.w130 {
  width: 130px;
}
form input[type=text].w150,
form input[type=email].w150,
form input[type=tel].w150,
form input[type=password].w150,
form textarea.w150,
form select.w150 {
  width: 150px;
}
form input[type=text].w160,
form input[type=email].w160,
form input[type=tel].w160,
form input[type=password].w160,
form textarea.w160,
form select.w160 {
  width: 160px;
}
form input[type=text].w200,
form input[type=email].w200,
form input[type=tel].w200,
form input[type=password].w200,
form textarea.w200,
form select.w200 {
  width: 200px;
}
form input[type=text].w230,
form input[type=email].w230,
form input[type=tel].w230,
form input[type=password].w230,
form textarea.w230,
form select.w230 {
  width: 230px;
}
form input[type=text].w340,
form input[type=email].w340,
form input[type=tel].w340,
form input[type=password].w340,
form textarea.w340,
form select.w340 {
  width: 340px;
}
form input[type=text].w490,
form input[type=email].w490,
form input[type=tel].w490,
form input[type=password].w490,
form textarea.w490,
form select.w490 {
  width: 490px;
}
form input[type=text],
form input[type=email],
form input[type=tel],
form input[type=password],
form select {
  width: 100%;
  height: 60px;
}
form input[type=text]:focus,
form input[type=email]:focus,
form input[type=tel]:focus,
form input[type=password]:focus,
form textarea:focus,
form select:focus {
  border: 1px solid #012d9b;
}
form input[type=text].forget-input-text {
  background-color: #fff;
}
form textarea {
  width: 100%;
  height: 160px;
}
form input[type=radio] {
  display: none;
}
form label.radio {
  position: relative;
  cursor: pointer;
  -moz-border-radius: 10;
  -webkit-border-radius: 10;
  -o-border-radius: 10;
  -ms-border-radius: 10;
  border-radius: 10;
  line-height: 1.3;
}
form input[type=radio] + label.radio {
  width: 100%;
  color: #010101;
}
form input[type=radio] + label.radio span {
  display: inline-block;
  position: relative;
  padding-left: 30px;
}
form input[type=radio] + label.radio span::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 22px;
  height: 22px;
  background: #ddd;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
form input[type=radio] + label.radio.w110 {
  width: 110px;
}
form input[type=radio]:checked + label.radio span::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 5px;
  width: 12px;
  height: 12px;
  background-color: #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
form select {
  position: relative;
  width: 100%;
  height: 44px;
  padding: 10px;
  color: #000;
  line-height: 1;
  box-sizing: border-box;
}
form input[type=checkbox] {
  display: none;
}
form input[type=checkbox] + label {
  position: relative;
  padding-left: 30px;
  cursor: pointer;
  display: inline-block;
}
form input[type=checkbox] + label::before, form input[type=checkbox] + label::after {
  content: "";
  position: absolute;
  display: inline-block;
  box-sizing: border-box;
}
form input[type=checkbox] + label::before {
  top: 5px;
  left: 0;
  width: 18px;
  height: 18px;
  background-color: #ddd;
  border: 4px #dedede solid;
  z-index: 0;
}
form input[type=checkbox] + label::after {
  top: 2px;
  left: -4px;
  width: 10px;
  height: 16px;
  margin: 1px 8px;
  z-index: 1;
}
form input[type=checkbox]:checked + label::after {
  border: 4px solid #012d9b;
  border-width: 0 4px 4px 0;
  -webkit-transform: rotate(40deg);
  -ms-transform: rotate(40deg);
  transform: rotate(40deg);
}

/* form table */
table.form-tbl {
  width: 100%;
  border-top: 2px solid #012d9b;
  border-collapse: separate;
  border-spacing: 0px;
}
table.form-tbl.form-tbl01 {
  border-top: 1px solid #ddd;
}
table.form-tbl.form-tbl02 {
  border-top: 1px solid #e1e1e1;
  border-bottom: 2px solid #016c31;
}
table.form-tbl.form-tbl02 th {
  background-color: #ecf4e8;
  color: #016c31;
}
table.form-tbl.form-tbl03 {
  border-top: none;
  border-bottom: 2px solid #012d9b;
}
table.form-tbl.forget-tbl {
  border-bottom: 2px solid #012d9b;
  margin-bottom: 40px;
}
table.form-tbl tr th,
table.form-tbl tr td {
  border-bottom: 1px solid #e1e1e1;
}
table.form-tbl th {
  position: relative;
  width: 330px;
  padding: 30px 85px 30px 40px;
  background-color: #e5eef6;
  color: #012d9b;
  text-align: left;
  vertical-align: top;
  line-height: 1.5;
}
table.form-tbl td {
  padding: 15px 0 15px 35px;
  color: #000;
  text-align: left;
  vertical-align: middle;
}
table.form-tbl td::-webkit-input-placeholder {
  color: #aaa;
}
table.form-tbl td::-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
table.form-tbl td:-ms-input-placeholder {
  color: #aaa !important;
}
table.form-tbl td ul {
  list-style: none;
}
table.form-tbl td ul li {
  width: 100%;
}
table.form-tbl td ul li:not(:last-child) {
  margin-bottom: 20px;
}
table.form-tbl td p {
  color: #000;
  font-size: 1.4rem;
}
table.form-tbl td p.kome {
  padding-left: 1em;
  text-indent: -1em;
}
table.form-tbl td p.fs13 {
  font-size: 1.3rem;
}
table.form-tbl td p.fs15 {
  font-size: 1.5rem;
}
table.form-tbl td p.fs16 {
  font-size: 1.6rem;
}
table.form-tbl td p.cl-red,
table.form-tbl td p *.cl-red {
  color: #ce0000;
}
table.form-tbl td p.cl-blue,
table.form-tbl td p *.cl-blue {
  color: #012d9b;
}
table.form-tbl td .note {
  display: block;
  color: #ce0000;
  font-size: 1.4rem;
  line-height: 1.5;
}

.form-require {
  display: inline-block;
  position: absolute;
  top: 36px;
  right: 30px;
  padding: 4px 11px 4px;
  background-color: #f00;
  color: #fff;
  font-size: 1.3rem;
  line-height: 1;
}
.form-require.no-position {
  position: static;
}

/*-- error ---*/
.error-text-box {
  margin-bottom: 8px;
  padding: 10px 15px;
  background-color: #fee;
  color: #ce0000 !important;
  font-size: 1.5rem !important;
  font-weight: 700;
  line-height: 1.2;
}

.form-button {
  position: relative;
}
.form-button button[type=submit] {
  display: block;
  max-width: 280px;
  width: 100%;
  margin: 0 auto;
  padding: 15px;
  background-color: #ce0000;
  border: 2px solid #ce0000;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  transition: 0.3s;
}
@media screen and (max-width: 1200px) {
  .form-button button[type=submit] {
    max-width: 250px;
  }
}
.form-button button[type=submit].bc-blue {
  background-color: #012d9b;
  border-color: #012d9b;
}
.form-button button[type=submit].w320 {
  max-width: 320px;
}
.form-button button[type=submit]:hover {
  background-color: #fff;
  color: #ce0000;
}
.form-button button[type=submit]:hover.bc-blue {
  color: #012d9b;
}
.form-button__back {
  display: block;
  position: absolute;
  top: 0;
  left: 10%;
  width: 230px;
  padding: 18px 20px 18px 40px;
  background-color: #888;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
}
.form-button--mypage .form-button__back {
  left: 0;
}
@media screen and (max-width: 1200px) {
  .form-button--mypage .form-button__back {
    width: 180px;
  }
}
.form-button__back::before, .form-button__back::after {
  content: "";
  position: absolute;
  left: 15px;
  bottom: 0;
  margin: auto 0;
  background-color: #fff;
  transition: 0.3s;
}
.form-button__back::before {
  top: 5px;
  width: 25px;
  height: 2px;
}
.form-button__back::after {
  top: -2px;
  width: 12px;
  height: 2px;
  -webkit-transform: rotate(-40deg);
  -ms-transform: rotate(-40deg);
  transform: rotate(-40deg);
}
.form-button__back:hover {
  background-color: #9a9a9a;
}
.form-button__back:hover::after {
  border-right-color: #9a9a9a;
}
.form-button__back.btn2 {
  left: 0;
}

.zip-btn {
  max-width: 200px;
  width: 100%;
  padding: 5px;
  background-color: #f98d00;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
}

.form-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.form-payment > dl > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 20px 0;
}
.form-payment > dl > div:not(:last-child) {
  border-bottom: 1px dotted #ddd;
}
.form-payment > dl > div > dt {
  width: 35%;
  padding-right: 10px;
}
.form-payment > dl > div > dd {
  width: 65%;
}
.form-payment > dl > div > dd.note-text-box {
  width: 100%;
  margin-top: 10px;
  padding: 10px 20px;
  background-color: #fffae1;
  color: #ce0000;
  font-size: 1.4rem;
}
.form-payment > dl > div > dd.note-text-box02 {
  width: 100%;
  margin-top: 10px;
  padding: 10px 20px;
  background-color: #fffae1;
  font-size: 1.4rem;
}
.form-payment > dl > div > dd.note-text-box02 .note-text-box02__inner dt {
  margin-bottom: 2px;
}
.form-payment > dl > div > dd.note-text-box02 .note-text-box02__inner dd {
  text-indent: -1em;
  padding-left: 1.5em;
  margin-bottom: 2px;
}
.form-payment > dl > div > dd.note-text-box02 .note-text-box02__inner dd::before {
  content: "・";
}

.note-flow {
  background-color: #f4f4f4;
  width: 100% !important;
}
.note-flow__list {
  padding: 20px 20px 20px 20px;
  width: 100%;
}
.note-flow__list__item {
  margin-bottom: 0px !important;
}
.note-flow__list__item.cl02 {
  display: flex;
  justify-content: space-between;
}
.note-flow__list__item__text {
  margin-bottom: 16px;
  text-indent: -2.5em;
  padding-left: 2.5em;
}
.note-flow__list__item__text.cl02 {
  width: calc(100% - 340px);
}
.note-flow__list__item__img {
  padding-left: 20px;
  margin-bottom: 20px;
  width: 480px;
}

.form-creditcard {
  width: 100% !important;
  margin-top: 20px;
  padding-right: 30px;
}
.form-creditcard__box {
  margin-bottom: 20px;
  padding: 15px 25px;
  background-color: #f4f4f4;
}
.form-creditcard__list01 {
  width: 100%;
  margin: 10px 0;
  border: 1px solid #ddd;
}
.form-creditcard__list01 div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.form-creditcard__list01 div:not(:last-child) {
  border-bottom: 1px solid #ddd;
}
.form-creditcard__list01 dt {
  width: 225px;
  padding: 20px;
  background-color: #e5eef6;
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
}
.form-creditcard__list01 dd {
  padding: 18px 50px 18px 20px;
}
.form-creditcard__list02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 10px 0;
  border: 1px solid #ddd;
}
.form-creditcard__list02 div {
  flex-grow: 1;
}
.form-creditcard__list02 div:not(:last-child) {
  border-right: 1px solid #ddd;
}
.form-creditcard__list02 dt {
  padding: 10px;
  background-color: #e5eef6;
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
}
.form-creditcard__list02 dd {
  padding: 10px;
  text-align: center;
}

.form-address__title {
  padding: 20px 40px;
  background-color: #ecf4e8;
  border-top: 2px solid #016c31;
  color: #016c31;
  font-size: 1.6rem;
  font-weight: 700;
}
.form-address__list {
  margin-top: 10px;
}
.form-address__list input[type=radio] + label.radio {
  display: block;
  margin-bottom: 5px;
  padding: 20px 25px;
  background-color: #f4f4f4;
}

table.addlist-tbl {
  width: 100%;
  border: 1px solid #ddd;
}
table.addlist-tbl th,
table.addlist-tbl td {
  border: 1px solid #ddd;
}
table.addlist-tbl th {
  position: relative;
  padding: 0;
}
table.addlist-tbl th::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 3px;
  height: 100%;
  background-color: #016c31;
}
table.addlist-tbl th input[type=radio] + label.radio {
  padding: 0;
  background-color: transparent;
}
table.addlist-tbl th input[type=radio] + label.radio::before, table.addlist-tbl th input[type=radio] + label.radio::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
table.addlist-tbl th input[type=radio] + label.radio::before {
  width: 22px;
  height: 22px;
  background: #ddd;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
table.addlist-tbl th input[type=radio]:checked + label.radio::after {
  width: 12px;
  height: 12px;
  background-color: #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
table.addlist-tbl th:nth-of-type(1) {
  width: 50px;
}
table.addlist-tbl td {
  padding: 12px 20px;
}
table.addlist-tbl td:nth-of-type(1) {
  width: 170px;
}
table.addlist-tbl td:nth-of-type(2) {
  width: calc(100% - 50px - 170px);
}

.form-note-box {
  padding: 15px;
  background-color: #fff3f5;
}
.form-note-box p {
  color: #ce0000;
  font-weight: 600;
  text-align: center;
  line-height: 1.5;
}

.content table.form-tbl th {
  width: 230px;
  padding: 35px 55px 30px 20px;
}
.content table.form-tbl td {
  padding: 15px 10px 15px 25px;
}
.content .form-require {
  right: 15px;
  padding: 4px 7px 4px;
}

.rakuten-bnr__link {
  display: block;
  text-align: center;
  width: 240px;
  text-decoration: underline !important;
  font-size: 1.3rem;
  transition: color 0.3s ease;
}
@media (any-hover: hover) {
  .rakuten-bnr__link:hover {
    color: #1794af;
  }
}
.rakuten-bnr__link.connect {
  width: 320px;
  background-color: transparent;
}

.form-rakuten-bnr {
  width: 320px;
}
.form-rakuten-bnr img {
  width: 100%;
}

/* =====================================================

 _table

===================================================== */
.tbl01 {
  width: 100%;
}
.tbl01 th,
.tbl01 td {
  border: 1px solid #ddd;
}
.tbl01 th {
  width: 250px;
  padding: 15px;
  background-color: #f1f7f9;
  font-weight: 500;
}
.tbl01 th.price {
  width: 130px;
}
.tbl01 th.prefecture {
  width: 360px;
}
.tbl01 td {
  padding: 15px 15px 15px 30px;
}
.tbl01 td.price {
  width: 130px;
  text-align: right;
  vertical-align: middle;
}
.tbl01.th-w200 th {
  width: 200px;
}

.tabular {
  width: 100%;
}
.tabular th,
.tabular td {
  border: 1px solid #ddd;
}
.tabular th {
  width: 250px;
  padding: 15px;
  background-color: #f1f7f9;
  font-weight: 500;
}
.tabular td {
  padding: 15px 20px;
}
.tabular td ul {
  margin-left: 1.5em;
}
.tabular td dl div:not(:last-child) {
  margin-bottom: 20px;
}
.tabular td dl div dt {
  position: relative;
  margin-bottom: 10px;
  padding: 5px 15px 5px 20px;
  background-color: #1ca1be;
  color: #fff;
}
.tabular td dl div dt::before {
  content: "";
  position: absolute;
  top: 17px;
  left: 0;
  width: 10px;
  height: 3px;
  background-color: #fff;
}
.tabular td dl div dd {
  padding-left: 20px;
}

/* =====================================================

 _login

===================================================== */
.login01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.login01__box {
  width: calc((99.9% - 60px) / 2);
  padding: 15px;
}
.login01__box:first-child {
  margin-right: 60px;
}
.login01__box.member {
  background-color: #78a13d;
}
.login01__box.customer {
  background-color: #e6a20f;
}
.login01__box__title {
  margin-bottom: 15px;
  color: #fff;
  font-size: 2.8rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.3;
}
.login01__box__title span {
  display: block;
  font-size: 1.9rem;
  font-weight: 700;
}
.login01__box__body {
  padding: 25px 30px 40px;
  background-color: #fff;
}
.login01__box__body form dl {
  margin-bottom: 20px;
  line-height: 1.5;
}
.login01__box__body form dl > div:not(:last-child) {
  margin-bottom: 20px;
}
.login01__box__body form dl dt {
  position: relative;
  margin-bottom: 10px;
  padding-left: 15px;
  color: #78a13d;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.login01__box__body form dl dt::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 13px;
  height: 13px;
  background-color: #78a13d;
}
.login01__box__body form dl dt span {
  display: inline-block;
  margin-left: 10px;
  color: #000;
  font-size: 1.4rem;
}
.login01__box__body form dl dd input {
  width: 100%;
  height: 55px;
  padding: 5px 10px;
  background-color: #f4f4f4;
  border: 1px solid #ddd;
  border-radius: 0;
}
.login01__box__body form dl dd input:focus {
  outline-color: #78a13d;
  background-color: #f2f9e8;
}
.login01__box__body .forget-pw {
  margin-bottom: 25px;
  text-align: center;
}
.login01__box__body .forget-pw a {
  display: inline-block;
  position: relative;
  padding-left: 14px;
  color: #012d9b;
  text-decoration: underline;
}
.login01__box__body .forget-pw a::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 6px;
  height: 9px;
  border: 4px solid transparent;
  border-left: 6px solid #012d9b;
  border-right: none;
}
.login01__box__body .forget-pw a:hover {
  text-decoration: none;
}
.login01__box__body .login-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 320px;
  width: 100%;
  min-height: 64px;
  margin: 0 auto;
  padding: 8px;
  background-color: #ce0000;
  border: 2px solid #ce0000;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.02em;
  cursor: pointer;
  transition: 0.3s;
}
.login01__box__body .login-btn.bc-yellow {
  background-color: #fe9900;
  border-color: #fe9900;
}
.login01__box__body .login-btn.bc-blue {
  background-color: #012d9b;
  border-color: #012d9b;
}
.login01__box__body .login-btn.merit {
  padding: 8px 20px 8px 80px;
  background-image: url("../img/common/icon_nav04.svg");
  background-repeat: no-repeat;
  background-position: center left 15px;
  background-color: #e6a20f;
  border-color: #e6a20f;
}
.login01__box__body .login-btn span {
  display: block;
  font-size: 1.5rem;
}
.login01__box__body .login-btn:hover {
  background-color: #fff;
  color: #ce0000;
}
.login01__box__body .login-btn:hover.bc-yellow {
  color: #fe9900;
}
.login01__box__body .login-btn:hover.bc-blue {
  color: #012d9b;
}
.login01__box__body .login-btn:hover.merit {
  color: #e6a20f;
  background-image: url("../img/common/icon_happiness_yellow.svg");
}
.login01__box__catch {
  margin-bottom: 15px;
  padding-top: 48px;
  background-image: url("../img/common/icon_pencil.svg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 39px auto;
  color: #010000;
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.3;
}
.login01__box__point {
  margin-bottom: 20px;
  color: #ce0000;
  font-weight: 500;
  text-align: center;
  line-height: 1.6;
}
.login01__box__point span {
  display: inline-block;
  position: relative;
  padding: 0 20px;
}
.login01__box__point span::before, .login01__box__point span::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 5px;
  height: 50px;
  background-color: #ce0000;
}
.login01__box__point span::before {
  left: 0;
  -webkit-transform: skewX(10deg);
  -ms-transform: skewX(10deg);
  transform: skewX(10deg);
}
.login01__box__point span::after {
  right: 0;
  -webkit-transform: skewX(-10deg);
  -ms-transform: skewX(-10deg);
  transform: skewX(-10deg);
}

.content .login01__box {
  width: calc((99.9% - 20px) / 2);
}
.content .login01__box:first-child {
  margin-right: 20px;
}
.content .login01__box__title {
  margin: 10px 0 20px;
  font-size: 2.6rem;
}

/* =====================================================

 _pagenav

===================================================== */
.pagenav01 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -10px;
  margin-bottom: 40px;
  margin-left: -10px;
}
.pagenav01 li {
  width: calc((99.9% - 30px) / 3);
  margin-top: 10px;
  margin-left: 10px;
}
.pagenav01 li a,
.pagenav01 li span {
  display: block;
  position: relative;
  padding: 13px 20px 13px 15px;
  border: 2px solid #addceb;
  color: #1794af !important;
  font-size: 1.5rem;
  font-weight: 500;
}
.pagenav01 li a::after,
.pagenav01 li span::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto 0;
  width: 9px;
  height: 9px;
  border-top: 2px solid #1794af;
  border-right: 2px solid #1794af;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pagenav01 li a.current,
.pagenav01 li span.current {
  background-color: #f1f7f9;
}
.pagenav01 li a:hover,
.pagenav01 li span:hover {
  background-color: #91d5eb;
  color: #fff !important;
}
.pagenav01 li a:hover::after,
.pagenav01 li span:hover::after {
  width: 9px;
  height: 9px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pagenav01.anchor li a::after {
  width: 9px;
  height: 9px;
  border-top: 2px solid #1794af;
  border-right: 2px solid #1794af;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.pagenav01.anchor li a.link::after {
  width: 9px;
  height: 9px;
  border-top: 2px solid #1794af;
  border-right: 2px solid #1794af;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pagenav01--col2 li {
  width: calc((99.9% - 20px) / 2);
}

/* =====================================================

 _pagination

===================================================== */
.pagination {
  width: 100%;
  margin-top: 35px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.pagination__item a {
  border: 1px solid #012d9b;
  margin: 0 5px;
  padding: 5px 15px;
  display: inline-block;
}
.pagination__item a:hover, .pagination__item a.current {
  color: #FFF;
  background: #012d9b;
}

/* =====================================================

 _button

===================================================== */
.btn-arrow {
  display: block;
  position: relative;
  max-width: 280px;
  width: 100%;
  margin: 0 auto;
  padding: 8px 40px 10px 20px;
  background-color: #012d9b;
  border: 2px solid #012d9b;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 1.6rem;
  text-align: center;
}
.btn-arrow::before, .btn-arrow::after {
  content: "";
  position: absolute;
  right: 15px;
  bottom: 0;
  margin: auto 0;
  background-color: #fff;
  transition: 0.3s;
}
.btn-arrow::before {
  top: 5px;
  width: 25px;
  height: 2px;
}
.btn-arrow::after {
  top: -2px;
  width: 12px;
  height: 2px;
  -webkit-transform: rotate(40deg);
  -ms-transform: rotate(40deg);
  transform: rotate(40deg);
}
.btn-arrow--back {
  padding: 8px 20px 10px 40px;
}
.btn-arrow--back::before, .btn-arrow--back::after {
  left: 15px;
}
.btn-arrow--back::after {
  -webkit-transform: rotate(-40deg);
  -ms-transform: rotate(-40deg);
  transform: rotate(-40deg);
}
.btn-arrow:hover {
  background-color: #fff;
  color: #012d9b;
}
.btn-arrow:hover::before, .btn-arrow:hover::after {
  background-color: #012d9b;
}
.btn-arrow.original-cv-btn {
  color: #fff !important;
  text-decoration: none;
  font-size: 2.2rem;
  max-width: 320px;
  background-color: #7a560f;
  border: 2px solid #7a560f;
  padding: 12px 40px 14px 20px;
  letter-spacing: 4px;
  margin-bottom: 60px;
}
.btn-arrow.original-cv-btn:hover {
  background-color: #fff;
  color: #7a560f !important;
}
.btn-arrow.original-cv-btn:hover::before, .btn-arrow.original-cv-btn:hover::after {
  background-color: #7a560f;
}

.btn-icon {
  display: block;
  position: relative;
  max-width: 280px;
  width: 100%;
  margin: 0 auto;
  padding: 8px 10px 10px 45px;
  background-color: #012d9b;
  background-position: center left 10px;
  background-repeat: no-repeat;
  border: 2px solid #012d9b;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 1.6rem;
  text-align: center;
}
.btn-icon--truck {
  background-image: url("../img/common/icon_truck_white.svg");
  background-size: 29px auto;
}
.btn-icon--truck:hover {
  background-image: url("../img/common/icon_truck.svg");
}
.btn-icon.bc-red {
  background-color: #d00;
  border-color: #d00;
}
.btn-icon:hover {
  background-color: #fff;
  color: #012d9b;
}
.btn-icon:hover.bc-red {
  color: #d00;
}

.btn-receipt-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.btn-receipt {
  display: block;
  position: relative;
  max-width: 200px;
  width: 100%;
  padding: 6px 20px 8px 20px;
  background-color: #f98d00;
  border: 2px solid #f98d00;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 1.6rem;
  text-align: center;
}
.btn-receipt::before {
  position: absolute;
  content: "";
  top: calc(50% - 5px);
  left: 20px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 6px;
  border-color: transparent transparent transparent #FFF;
}
.btn-receipt:hover {
  background-color: #fff;
  color: #f98d00;
}
.btn-receipt:hover::before, .btn-receipt:hover::after {
  border-color: transparent transparent transparent #f98d00;
}

.btn-solid {
  display: block;
  max-width: 400px;
  margin: 0 auto;
  padding: 20px;
  border-width: 2px;
  border-style: solid;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
}
.btn-solid--orange {
  background-color: #fe9900;
  border-color: #fe9900;
}
.btn-solid--orange:hover {
  color: #fe9900;
}
.btn-solid:hover {
  background-color: #fff;
}

.icon-link {
  position: relative;
  display: inline-block;
  margin-left: auto;
  padding-left: 22px;
  color: #012d9b !important;
  text-decoration: underline;
}
.icon-link::before, .icon-link::after {
  content: "";
  position: absolute;
}
.icon-link::before {
  top: 8px;
  left: 0;
  width: 13px;
  height: 13px;
  background-color: #bf0000;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  -o-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
}
.icon-link::after {
  top: 12px;
  left: 5px;
  width: 4px;
  height: 4px;
  margin: auto 0;
  border: 2px solid transparent;
  border-left: 4px solid #fff;
  border-right: none;
}
.icon-link:hover {
  text-decoration: none;
}

.wysiwyg {
  /*デフォルトの処理*/
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  /*各テンプレートを囲むbox【必須】*/
  /*タイトル処理*/
  /*キャッチコピーの処理*/
  /*本文テキスト・写真回り込み処理*/
  /*ボタン*/
  /*写真の処理*/
  /*リスト*/
  /*テーブル*/
  /*youtube*/
  /*以下テンプレート外*/
}
@media screen and (max-width: 599px) {
  .wysiwyg {
    font-size: 14px;
    line-height: 1.8;
  }
}
.wysiwyg a {
  color: #012d9b;
  text-decoration: underline;
}
.wysiwyg a:hover {
  color: #012d9b;
  text-decoration: none;
}
.wysiwyg img {
  width: auto;
  max-width: 100%;
  height: auto;
}
.wysiwyg .box {
  margin-bottom: 30px;
  *zoom: 1;
}
.wysiwyg .box:after {
  content: "";
  display: table;
  clear: both;
}
@media screen and (max-width: 599px) {
  .wysiwyg .box {
    margin-bottom: 15px;
  }
}
.wysiwyg .title-line {
  margin-bottom: -15px;
  padding: 0 0 15px 15px;
  font-size: 20px;
  line-height: 1.2em;
  color: #000;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 400;
  border-bottom: 1px dotted #bbb;
  position: relative;
}
@media screen and (max-width: 599px) {
  .wysiwyg .title-line {
    margin-bottom: -5px;
    padding: 0 0 10px 15px;
    font-size: 16px;
  }
}
.wysiwyg .title-line::before {
  content: "";
  top: 0;
  left: 0;
  width: 5px;
  height: calc(100% - 15px);
  background-color: #012d9b;
  position: absolute;
}
@media screen and (max-width: 599px) {
  .wysiwyg .title-line::before {
    height: calc(100% - 10px);
  }
}
.wysiwyg .title-obi {
  padding: 14px 20px 14px 1.8em;
  font-size: 16px;
  line-height: 1.2em;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 600;
  background-color: #012d9b;
  position: relative;
}
@media screen and (max-width: 599px) {
  .wysiwyg .title-obi {
    padding: 8px 20px;
    font-size: 14px;
  }
}
.wysiwyg .title-obi::before {
  content: "";
  top: calc(50% - 1px);
  left: 0;
  width: 15px;
  height: 1px;
  background-color: #fff;
  position: absolute;
}
.wysiwyg .title-line02 {
  color: #000;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.2em;
  margin-bottom: -15px;
  padding-left: 1.4em;
  padding-bottom: 13px;
  border-bottom: 1px solid #DDD;
  position: relative;
}
@media screen and (max-width: 599px) {
  .wysiwyg .title-line02 {
    margin-bottom: -5px;
    font-size: 14px;
  }
}
.wysiwyg .title-line02::before {
  content: "";
  top: 4px;
  left: 3px;
  width: 12px;
  height: 12px;
  background: #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
}
@media screen and (max-width: 599px) {
  .wysiwyg .title-line02::before {
    top: 3px;
    left: 0;
    width: 12px;
    height: 12px;
    border: 4px solid #012d9b;
  }
}
.wysiwyg .title-circle {
  color: #000;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 16px;
  line-height: 1.2em;
  margin-bottom: -15px;
  padding-left: 1.4em;
  padding-bottom: 10px;
  position: relative;
}
.wysiwyg .title-circle::before {
  content: "";
  top: 3px;
  left: 2px;
  width: 14px;
  height: 14px;
  border: 4px solid #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
}
@media screen and (max-width: 599px) {
  .wysiwyg .title-circle::before {
    top: 3px;
    left: 0;
    width: 12px;
    height: 12px;
    border: 4px solid #012d9b;
  }
}
.wysiwyg .ttl02::before {
  top: 15px;
}
.wysiwyg .copy01 {
  margin-bottom: -15px;
  font-size: 20px;
  line-height: 1.7;
  color: #012d9b;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: justify;
}
@media screen and (max-width: 599px) {
  .wysiwyg .copy01 {
    margin-bottom: -5px;
    font-size: 15px;
  }
}
.wysiwyg .copy02 {
  margin-bottom: -15px;
  font-size: 24px;
  line-height: 1.7;
  color: #012d9b;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
  font-weight: 400;
  text-align: justify;
}
@media screen and (max-width: 599px) {
  .wysiwyg .copy02 {
    margin-bottom: -5px;
    font-size: 16px;
  }
}
.wysiwyg .text {
  font-size: 16px;
  line-height: 2em;
  text-align: justify;
}
@media screen and (max-width: 599px) {
  .wysiwyg .text {
    font-size: 14px;
    line-height: 1.8em;
  }
}
.wysiwyg .text--mincho {
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
  font-weight: 300;
}
.wysiwyg .text.bg-gray {
  padding: 27px 30px;
  background-color: #F7F7F7;
}
.wysiwyg .img-right {
  margin: 7px 0 30px 30px;
  width: auto;
  max-width: 33%;
  float: right;
  display: inline-block;
}
@media screen and (max-width: 599px) {
  .wysiwyg .img-right {
    margin: 0 auto 10px auto;
    width: auto;
    max-width: 100%;
    float: none;
  }
}
.wysiwyg .img-left {
  margin: 7px 30px 30px 0;
  width: auto;
  max-width: 33%;
  float: left;
  display: inline-block;
}
@media screen and (max-width: 599px) {
  .wysiwyg .img-left {
    margin: 0 auto 10px auto;
    width: auto;
    max-width: 100%;
    float: none;
  }
}
.wysiwyg .btn-wrapper {
  text-align: center;
}
.wysiwyg .btn-wrapper a {
  padding: 20px 40px 20px 25px;
  font-size: 16px;
  line-height: 1.2em;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  background-color: #012d9b;
  position: relative;
  display: inline-block;
}
@media screen and (max-width: 599px) {
  .wysiwyg .btn-wrapper a {
    padding: 15px 30px 15px 20px;
    font-size: 14px;
    text-align: left;
  }
}
.wysiwyg .btn-wrapper a::before {
  content: "";
  top: calc(50% - 4px);
  right: 15px;
  border-width: 4px 0 4px 6px;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  position: absolute;
}
.wysiwyg .btn-wrapper a:hover {
  color: #fff;
  background-color: #1794af;
}
@media screen and (max-width: 1024px) {
  .wysiwyg .btn-wrapper a:hover {
    background-color: #1794af;
  }
}
.wysiwyg .photo-3 {
  padding: 0;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.wysiwyg .photo-3::after {
  content: none;
}
.wysiwyg .photo-3 li {
  margin-left: 10px;
  width: calc((99.9% - 20px) / 3);
}
.wysiwyg .photo-3 li:first-child {
  margin-left: 0;
}
@media screen and (max-width: 599px) {
  .wysiwyg .photo-3 li {
    display: block;
    margin-top: 10px;
    margin-left: 0;
    width: 100%;
  }
  .wysiwyg .photo-3 li:first-child {
    margin-top: 0;
  }
}
.wysiwyg .photo-2 {
  padding: 0;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.wysiwyg .photo-2::after {
  content: none;
}
.wysiwyg .photo-2 li {
  margin-left: 10px;
  width: calc((99.9% - 10px) / 2);
}
.wysiwyg .photo-2 li:first-child {
  margin-left: 0;
}
@media screen and (max-width: 599px) {
  .wysiwyg .photo-2 li {
    margin-left: 5px;
    width: calc((100% - 5px) / 2);
  }
}
.wysiwyg .photo-1 {
  width: 100%;
  text-align: center;
}
.wysiwyg .caption {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.3em;
  text-align: center;
  display: block;
}
@media screen and (max-width: 599px) {
  .wysiwyg .caption {
    margin-top: 5px;
    font-size: 12px;
  }
}
.wysiwyg .list-box {
  padding: 27px 30px;
  background-color: #f7f7f7;
}
@media screen and (max-width: 599px) {
  .wysiwyg .list-box {
    padding: 18px 20px;
  }
}
.wysiwyg .list-wrapper {
  padding: 0 !important;
  list-style: none;
}
.wysiwyg .list-wrapper li {
  list-style: none !important;
  margin-top: 10px;
  padding-left: 1.2em;
  font-size: 1.6rem;
  line-height: 1.5em;
  text-align: justify;
  position: relative;
}
.wysiwyg .list-wrapper li:first-child {
  margin-top: 0;
}
.wysiwyg .list-wrapper li::before {
  content: "";
  top: 7px;
  left: 3px;
  width: 8px;
  height: 8px;
  background-color: #012d9b;
  position: absolute;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
@media screen and (max-width: 1024px) {
  .wysiwyg .list-wrapper li {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 599px) {
  .wysiwyg .list-wrapper li {
    margin-top: 7px;
  }
  .wysiwyg .list-wrapper li::before {
    content: "";
    top: 5px;
    left: 0px;
    width: 6px;
    height: 6px;
  }
}
.wysiwyg ol.list-wrapper {
  padding: 0 !important;
  list-style: none;
}
.wysiwyg ol.list-wrapper li {
  list-style: none;
  margin-top: 10px;
  margin-left: 1.2em;
  padding-left: 0;
  font-size: 1.6rem;
  line-height: 1.5em;
  list-style-type: decimal !important;
  list-style-position: outside !important;
  list-style: none;
  text-align: justify;
  position: relative;
}
.wysiwyg ol.list-wrapper li:first-child {
  margin-top: 0;
}
.wysiwyg ol.list-wrapper li::before {
  display: none;
}
@media screen and (max-width: 599px) {
  .wysiwyg ol.list-wrapper li {
    margin-top: 7px;
    font-size: 1.3rem;
  }
}
.wysiwyg ol.list-wrapper--box-none {
  padding: 0;
  background-color: transparent;
}
.wysiwyg ol.list--number {
  padding: 0 !important;
  list-style: none;
}
.wysiwyg ol.list--number li {
  list-style: none;
  margin-top: 10px;
  margin-left: 1.2em;
  padding-left: 0;
  font-size: 1.6rem;
  line-height: 1.5em;
  list-style-type: decimal !important;
  list-style-position: outside !important;
  text-align: justify;
  position: relative;
}
.wysiwyg ol.list--number li:first-child {
  margin-top: 0;
}
.wysiwyg ol.list--number li::before {
  display: none;
}
@media screen and (max-width: 599px) {
  .wysiwyg ol.list--number li {
    margin-top: 7px;
    font-size: 1.3rem;
  }
}
.wysiwyg .table {
  width: 100%;
  border: 1px solid #ddd;
  border-collapse: collapse;
}
.wysiwyg .table thead th {
  padding: 15px 10px;
  font-size: 15px;
  line-height: 1.3em;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  background-color: #012d9b;
  border: 1px solid #ddd;
}
@media screen and (max-width: 599px) {
  .wysiwyg .table thead th {
    padding: 7px 5px 5px;
    font-size: 12px;
  }
}
.wysiwyg .table th {
  padding: 15px 10px;
  font-size: 15px;
  line-height: 1.3em;
  color: #000;
  text-align: center;
  vertical-align: middle;
  background-color: #f7f7f7;
  border: 1px solid #ddd;
}
@media screen and (max-width: 599px) {
  .wysiwyg .table th {
    padding: 7px 5px 5px;
    font-size: 12px;
  }
}
.wysiwyg .table td {
  padding: 15px;
  font-size: 15px;
  line-height: 1.3em;
  color: #000;
  text-align: justify;
  vertical-align: middle;
  border: 1px solid #ddd;
}
@media screen and (max-width: 599px) {
  .wysiwyg .table td {
    padding: 7px 5px 5px;
    font-size: 12px;
  }
}
.wysiwyg .youtube-wrapper {
  margin: 0 auto;
  width: 100%;
  max-width: 600px;
  position: relative;
}
.wysiwyg .youtube-wrapper::before {
  content: "";
  padding-bottom: 56.25%;
  display: block;
}
.wysiwyg .youtube-wrapper iframe {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
}
.wysiwyg .download-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding-left: 0 !important;
}
.wysiwyg .download-list__item {
  width: calc((100% - 15px) / 2);
  margin-right: 15px;
  margin-bottom: 10px;
  list-style: none !important;
}
.wysiwyg .download-list__item:nth-child(2n) {
  margin-right: 0;
}
@media screen and (max-width: 599px) {
  .wysiwyg .download-list__item {
    width: 100%;
    margin-right: 0px;
  }
}
.wysiwyg .download-list__item a {
  display: block;
  background-color: #f1f7f9;
  padding: 22px 40px 20px 52px;
  line-height: 1.2;
  font-weight: bold;
  position: relative;
  text-decoration: none !important;
  color: #474747 !important;
}
.wysiwyg .download-list__item a::before, .wysiwyg .download-list__item a::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.wysiwyg .download-list__item a::before {
  background-repeat: no-repeat;
  background-size: 34px auto;
  width: 34px;
  height: 34px;
  left: 10px;
  top: 2px;
}
.wysiwyg .download-list__item a::after {
  width: 10px;
  height: 10px;
  border-top: 3px solid #012d9b;
  border-right: 3px solid #012d9b;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 18px;
}
.wysiwyg .download-list__item a:hover {
  background-color: #F4F4F4;
  transition: 0.2s;
}
@media screen and (max-width: 599px) {
  .wysiwyg .download-list__item a:hover {
    background-color: #F4F4F4;
  }
}
.wysiwyg .download-list__item a.pdf::before {
  background-image: url(../img/common/icon_pdf.svg);
}
.wysiwyg .download-list__item a.word::before {
  background-image: url(../img/common/icon_word.svg);
}
.wysiwyg .download-list__item a.excel::before {
  background-image: url(../img/common/icon_excel.svg);
}
.wysiwyg .left {
  width: 100%;
  margin: 0 auto;
  text-align: left;
}
.wysiwyg .center {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
.wysiwyg .right {
  width: 100%;
  margin: 0 auto;
  text-align: right;
}
.wysiwyg h1 {
  font-size: 240%;
  line-height: 1.5;
  background: url(none);
  margin: 0px;
  padding: 0px;
}
.wysiwyg h2 {
  font-size: 180%;
  line-height: 1.5;
  margin: 0;
  background: url(none);
  padding: 0px;
  border-bottom: none;
}
.wysiwyg h3 {
  font-size: 140%;
  line-height: 1.5;
  background: url(none);
  margin: 0px;
  padding: 0px;
  color: #000;
}
.wysiwyg h4 {
  font-size: 120%;
  line-height: 1.5;
  margin: 0;
  background: url(none);
  padding: 0px;
  color: #000;
}
.wysiwyg h5 {
  font-size: 100%;
  line-height: 1.5;
  margin: 0;
  background: url(none);
  padding: 0px;
}
.wysiwyg h6 {
  font-size: 82%;
  line-height: 1.5;
  margin: 0;
  background: url(none);
  padding: 0px;
}
.wysiwyg ul {
  padding-left: 40px;
  list-style-type: disc;
}
.wysiwyg ol {
  margin: 1em 0;
  padding-left: 40px;
  list-style-type: decimal;
}
.wysiwyg blockquote {
  padding-left: 1em;
}
.wysiwyg table {
  font-size: 100%;
  border-collapse: collapse;
}
.wysiwyg hr {
  display: block;
}
.wysiwyg em {
  font-style: italic !important;
}
.wysiwyg strong {
  font-weight: bold !important;
}
.wysiwyg em strong, .wysiwyg strong em {
  font-style: italic !important;
  font-weight: bold !important;
}

/* =====================================================

 _sns

===================================================== */
.sns01 {
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.sns01 li.twitter {
  margin-left: -20px;
}

/* =====================================================

 _list

===================================================== */
.list-style {
  list-style: none;
}
.list-style--circle li {
  position: relative;
  padding-left: 30px;
}
.list-style--circle li:not(:last-child) {
  margin-bottom: 10px;
}
.list-style--circle li::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 5px;
  width: 10px;
  height: 10px;
  background-color: #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.list-style--circle.rakuten li::before {
  background-color: #bf0000;
}

.qa-list01__title {
  position: relative;
  padding: 18px 20px 18px 56px;
  background-color: #f8e5e5;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: 20px;
}
.qa-list01__title::before, .qa-list01__title::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
  line-height: 1;
}
.qa-list01__title::before {
  width: 32px;
  height: 32px;
  background-color: #bf0000;
  border-radius: 50%;
  top: 12px;
  left: 12px;
}
.qa-list01__title::after {
  content: "Q";
  color: #fff;
  font-size: 2rem;
  font-weight: 500;
  font-family: "Roboto", sans-serif;
  top: 17px;
  left: 21px;
}
.qa-list01__data {
  margin-bottom: 40px;
  position: relative;
  padding: 0px 20px 0px 56px;
}
.qa-list01__data::before, .qa-list01__data::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
  line-height: 1;
}
.qa-list01__data::before {
  width: 34px;
  height: 34px;
  background-color: #f38080;
  border-radius: 50%;
  top: 0px;
  left: 12px;
}
.qa-list01__data::after {
  content: "A";
  color: #fff;
  font-size: 2rem;
  font-weight: 500;
  font-family: "Roboto", sans-serif;
  top: 6px;
  left: 22px;
}

/* =====================================================

 モーダルウィンドウ

===================================================== */
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 0.8);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  box-sizing: border-box;
  z-index: 100;
}

/*モーダル本体の擬似要素の指定*/
.modal-container:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}

/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active {
  opacity: 1;
  visibility: visible;
}

/*モーダル枠の指定*/
.modal-body {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 400px;
  width: 60%;
}

/*モーダルを閉じるボタンの指定*/
.modal-close {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -40px;
  right: -40px;
  width: 40px;
  height: 40px;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
}

/*モーダル内のコンテンツの指定*/
.modal-content {
  background: #fff;
  text-align: left;
  padding: 30px 10px;
  border-radius: 24px;
}

.modal-content__text {
  text-align: center;
  font-weight: bold;
  margin-bottom: 20px;
  font-size: 16px !important;
}

.modal-content__btn-list {
  display: flex;
  justify-content: center;
  width: 100%;
}

.modal-content__btn {
  display: block;
  font-size: 17px !important;
  width: 140px;
  padding: 12px 10px;
  border-radius: 8px;
  font-weight: 600;
  margin: 0 10px;
  transition: background-color 0.3s ease;
}
.modal-content__btn.release {
  background-color: #0062fa;
  color: #fff;
}
@media (any-hover: hover) {
  .modal-content__btn.release:hover {
    background-color: #12489c;
  }
}
.modal-content__btn.cancel {
  background-color: #eeeeef;
}
@media (any-hover: hover) {
  .modal-content__btn.cancel:hover {
    background-color: #ccc;
  }
}

body.modal-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

/* =====================================================

 _top

===================================================== */
.top-slider {
  overflow: hidden;
  margin-top: 20px;
  background-image: url("../img/top/slider_bg.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.top-slider__inner {
  max-width: 1340px;
  margin: 0 auto;
  padding: 50px 70px 60px;
}
.top-slider .thumb-item {
  width: calc(100% + 70px);
  margin-bottom: 20px;
}
.top-slider .thumb-item > .slick-list {
  overflow: visible;
}
.top-slider .thumb-item > .slick-list li {
  margin-right: 70px;
}
.top-slider .thumb-item > .slick-arrow {
  width: 45px;
  height: 45px;
  background-image: url("../img/common/slider_arrow.png");
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: 1;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.top-slider .thumb-item > .slick-arrow.slick-prev {
  left: -55px;
}
.top-slider .thumb-item > .slick-arrow.slick-next {
  right: 15px;
  -webkit-transform: scale(-1);
  -ms-transform: scale(-1);
  transform: scale(-1);
}
.top-slider .thumb-item > .slick-arrow::before {
  display: none;
}
.top-slider .thumb-item a:hover {
  opacity: 0.7;
  transition: 0.3s;
}
.top-slider .thumb-item-nav {
  width: calc(100% + 15px);
}
.top-slider .thumb-item-nav > .slick-list li {
  margin-right: 15px;
  cursor: pointer;
}
.top-slider .thumb-item-nav > .slick-list li:hover {
  opacity: 0.7;
  transition: 0.3s;
}

.top-notice {
  padding: 45px 0;
}
.top-notice__inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}
.top-notice dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.top-notice dl dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 240px;
  padding: 20px;
  background-color: #a90303;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}
.top-notice dl dt span {
  display: inline-block;
  position: relative;
  margin-left: -20px;
  padding-left: 30px;
}
.top-notice dl dt span::before {
  content: "!";
  position: absolute;
  top: 5px;
  left: 0;
  width: 20px;
  height: 20px;
  background-color: #fff;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  color: #a90303;
  font-size: 1.6rem;
  text-align: center;
  line-height: 20px;
}
.top-notice dl dd {
  width: calc(100% - 240px);
  background-color: #f5f5f5;
}
.top-notice dl dd > ul {
  list-style: none;
}
.top-notice dl dd > ul > li {
  color: #000;
  border-bottom: 1px solid #fff;
}
.top-notice dl dd > ul > li:last-child {
  border-bottom: 0px solid #000;
}
.top-notice dl dd > ul > li a {
  display: block;
  padding: 20px 40px 20px calc(40px + 5em);
  color: #000;
  text-indent: -5em;
}
.top-notice dl dd > ul > li span.new {
  display: inline-block;
  margin-left: 6.5em;
  color: #a90303;
  font-size: 1.4rem;
  font-family: "Poppins", sans-serif;
}

.top-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 1700px;
  margin: 0 auto;
  padding: 0 40px 70px;
}
@media screen and (max-width: 1600px) {
  .top-container {
    padding: 0 20px 50px;
  }
}
.top-container__main {
  width: calc(100% - 340px);
  padding-left: 60px;
}
@media screen and (max-width: 1600px) {
  .top-container__main {
    width: calc(100% - 300px);
    padding-left: 30px;
  }
}
@media screen and (max-width: 1200px) {
  .top-container__main {
    width: calc(100% - 280px);
  }
}

.top-type {
  margin-bottom: 30px;
  background-image: url("../img/top/type_bg.jpg");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 40px 70px 30px;
}
@media screen and (max-width: 1600px) {
  .top-type {
    padding: 40px 30px 30px;
  }
}
@media screen and (max-width: 1400px) {
  .top-type {
    padding: 40px 20px 30px;
  }
}
.top-type__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}
.top-type__list__item {
  max-width: 220px;
}
@media screen and (max-width: 1600px) {
  .top-type__list__item {
    max-width: 200px;
  }
}
@media screen and (max-width: 1400px) {
  .top-type__list__item {
    max-width: 180px;
  }
}
@media screen and (max-width: 1200px) {
  .top-type__list__item {
    max-width: 160px;
  }
}
@media screen and (max-width: 1100px) {
  .top-type__list__item {
    max-width: 140px;
  }
}
.top-type__list__item.item01 {
  margin-top: 35px;
}
.top-type__list__item.item01 .top-type__list__image img {
  width: 170px;
}
@media screen and (max-width: 1200px) {
  .top-type__list__item.item01 .top-type__list__image img {
    width: 130px;
  }
}
@media screen and (max-width: 1100px) {
  .top-type__list__item.item01 .top-type__list__image img {
    width: 110px;
  }
}
.top-type__list__item.item02 .top-type__list__image img {
  width: 117px;
}
@media screen and (max-width: 1200px) {
  .top-type__list__item.item02 .top-type__list__image img {
    width: 90px;
  }
}
@media screen and (max-width: 1100px) {
  .top-type__list__item.item02 .top-type__list__image img {
    width: 70px;
  }
}
.top-type__list__item.item03 .top-type__list__image img {
  width: 44px;
}
@media screen and (max-width: 1200px) {
  .top-type__list__item.item03 .top-type__list__image img {
    width: 38px;
  }
}
@media screen and (max-width: 1100px) {
  .top-type__list__item.item03 .top-type__list__image img {
    width: 28px;
  }
}
.top-type__list__item.item04 {
  margin-top: 35px;
}
.top-type__list__item.item04 .top-type__list__image img {
  width: 108px;
}
@media screen and (max-width: 1200px) {
  .top-type__list__item.item04 .top-type__list__image img {
    width: 88px;
  }
}
@media screen and (max-width: 1100px) {
  .top-type__list__item.item04 .top-type__list__image img {
    width: 68px;
  }
}
.top-type__list__item.item04 .top-type__list__image figcaption {
  top: -45px;
}
.top-type__list__link {
  display: block;
}
.top-type__list__link:hover .top-type__list__image::before {
  right: 10px;
}
.top-type__list__link:hover .top-type__list__image::after {
  right: 25px;
}
.top-type__list__image {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: 220px;
  height: 220px;
  margin: 45px auto 10px;
  background-color: #fff;
  border: 3px solid #dff2f9;
  box-shadow: 3px 3px 5px rgba(49, 159, 201, 0.25);
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
@media screen and (max-width: 1600px) {
  .top-type__list__image {
    width: 200px;
    height: 200px;
  }
}
@media screen and (max-width: 1400px) {
  .top-type__list__image {
    width: 180px;
    height: 180px;
  }
}
@media screen and (max-width: 1200px) {
  .top-type__list__image {
    width: 160px;
    height: 160px;
    margin: 35px auto 10px;
  }
}
@media screen and (max-width: 1100px) {
  .top-type__list__image {
    width: 140px;
    height: 140px;
  }
}
.top-type__list__image::before {
  content: "";
  position: absolute;
  right: 25px;
  bottom: 0;
  width: 38px;
  height: 38px;
  background-color: #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  transition: 0.3s ease;
}
@media screen and (max-width: 1200px) {
  .top-type__list__image::before {
    right: 15px;
    width: 28px;
    height: 28px;
  }
}
.top-type__list__image::after {
  content: "";
  position: absolute;
  right: 40px;
  bottom: 14px;
  width: 12px;
  height: 12px;
  border-top: 4px solid #fff;
  border-right: 4px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: 0.3s ease;
}
@media screen and (max-width: 1200px) {
  .top-type__list__image::after {
    right: 27px;
    bottom: 10px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}
.top-type__list__image figcaption {
  position: absolute;
  top: -30px;
  width: 100%;
  color: #012d9b;
  font-weight: 700;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width: 1200px) {
  .top-type__list__image figcaption {
    font-size: 1.4rem;
  }
}
.top-type__list__image figcaption span {
  display: inline-block;
  position: relative;
  margin-top: 5px;
  padding: 0 20px 7px;
}
@media screen and (max-width: 1200px) {
  .top-type__list__image figcaption span {
    padding: 0 10px 7px;
  }
}
.top-type__list__image figcaption span::before, .top-type__list__image figcaption span::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
  height: 30px;
  margin: auto 0;
  background-color: #012d9b;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
}
.top-type__list__image figcaption span::before {
  left: 0;
  transform: rotate(-25deg);
}
.top-type__list__image figcaption span::after {
  right: 0;
  transform: rotate(25deg);
}
.top-type__list__sub {
  margin-bottom: 3px;
  color: #000;
  font-size: 1.4rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.4;
}
.top-type__list__title {
  color: #000;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.3;
}
@media screen and (max-width: 1200px) {
  .top-type__list__title {
    font-size: 1.6rem;
  }
}

.top-link {
  margin-bottom: 50px;
}
.top-link__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.top-link__list__item {
  width: 50%;
  height: 200px;
}
@media screen and (max-width: 1200px) {
  .top-link__list__item {
    height: 180px;
  }
}
.top-link__list__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  height: 100%;
  padding: 20px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.item01 .top-link__list__link {
  background-image: url("../img/top/link_bg01.jpg");
}
.item02 .top-link__list__link {
  background-image: url("../img/top/link_bg02.jpg");
}
.item03 .top-link__list__link {
  background-image: url("../img/top/link_bg03.jpg");
}
.item04 .top-link__list__link {
  background-image: url("../img/top/link_bg04.jpg");
}
.top-link__list__link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0;
  transition: 0.3s ease;
}
.top-link__list__link span {
  display: inline-block;
  position: relative;
  max-width: 460px;
  width: 100%;
  padding: 30px 50px;
  border: 2px solid #fff;
  color: #fff;
  font-size: 2.6rem;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
  text-align: center;
  line-height: 1.3;
}
@media screen and (max-width: 1600px) {
  .top-link__list__link span {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 1200px) {
  .top-link__list__link span {
    padding: 20px 50px;
    font-size: 2rem;
  }
}
.top-link__list__link span::before {
  content: "";
  position: absolute;
  top: 6px;
  right: 20px;
  bottom: 0;
  width: 25px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
  transition: 0.3s ease;
}
.top-link__list__link span::after {
  content: "";
  position: absolute;
  top: -4px;
  right: 20px;
  bottom: 0;
  width: 17px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
  transform: rotate(30deg);
  transition: 0.3s ease;
}
.top-link__list__link:hover::before {
  opacity: 0.3;
}
.top-link__list__link:hover span::before, .top-link__list__link:hover span::after {
  right: 10px;
}

.top-campaign {
  margin-bottom: 50px;
  padding: 40px 30px 50px;
  background-image: url("../img/top/pattern01.png");
  background-repeat: repeat;
}
.top-campaign__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.top-campaign__list__item {
  margin-right: 10px;
}
.top-campaign__list__item:nth-child(3n) {
  margin-right: 0;
}
.top-campaign__list__item a {
  display: block;
}
.top-campaign__list__item a:hover {
  opacity: 0.8;
}
.top-campaign__button {
  display: block;
  position: relative;
  max-width: 190px;
  margin: 30px auto 0;
  padding: 7px 20px;
  background-color: #012d9b;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  -o-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.14);
  color: #fff;
  text-align: center;
  letter-spacing: 0.02em;
}
.top-campaign__button::before {
  content: "";
  position: absolute;
  top: 2px;
  right: 15px;
  bottom: 0;
  width: 20px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
}
.top-campaign__button::after {
  content: "";
  position: absolute;
  top: -4px;
  right: 15px;
  bottom: 0;
  width: 12px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(30deg);
}
.top-campaign__button:hover {
  background-color: #0d42c8;
}

@media screen and (max-width: 1024px) {
  .top-info__list {
    margin-bottom: 50px;
  }
}
.top-info__list__item {
  border-bottom: 1px dotted #ccc;
  line-height: 1.5;
}
.top-info__list__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding: 20px 0;
}
.top-info__list__link:hover .top-info__list__text {
  text-decoration: underline;
}
.top-info__list__date {
  width: 120px;
  color: #300;
  letter-spacing: 0.054em;
}
.top-info__list__category {
  width: 100px;
  margin-right: 10px;
  padding: 3px 5px;
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
}
.top-info__list__category.all {
  background-color: #012d9b;
}
.top-info__list__category.news {
  background-color: #099;
}
.top-info__list__category.campaign {
  background-color: #fe9900;
}
.top-info__list__category.important {
  background-color: #d00;
}
.top-info__list__category.detail {
  margin-left: 10px;
}
.top-info__list__text {
  width: calc(100% - 120px - 100px);
  padding-left: 10px;
  color: #300;
  text-align: justify;
  text-justify: inter-ideograph;
  transition: 0.3s;
}
.top-info__list__text span.new {
  display: inline-block;
  margin-left: 15px;
  padding: 2px;
  background-color: #fc0202;
  color: #fff;
  font-size: 1.3rem;
  font-family: "Poppins", sans-serif;
  line-height: 1;
  letter-spacing: 0.02em;
}
.top-info__empty {
  padding: 30px 0;
  color: #010101;
  text-align: center;
}
.top-info__button {
  display: block;
  position: relative;
  max-width: 190px;
  margin: 30px auto 0;
  padding: 7px 20px;
  background-color: #012d9b;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  -o-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.14);
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
  letter-spacing: 0.02em;
}
.top-info__button::before {
  content: "";
  position: absolute;
  top: 2px;
  right: 15px;
  bottom: 0;
  width: 20px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
}
.top-info__button::after {
  content: "";
  position: absolute;
  top: -4px;
  right: 15px;
  bottom: 0;
  width: 12px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(30deg);
}
.top-info__button:hover {
  background-color: #0d42c8;
}

.top-recommend {
  position: relative;
  padding: 70px 0 170px;
  background-color: #f1f7f9;
}
.top-recommend::before {
  content: "";
  position: absolute;
  top: -37px;
  width: 100%;
  height: 37px;
  background-image: url("../img/top/recommend_bg.png");
  background-repeat: repeat-x;
}
.top-recommend__inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}
.top-recommend__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -25px;
}
.top-recommend__list__item {
  width: calc((99.9% - 100px) / 5);
  margin-top: 25px;
  margin-right: 25px;
}
.top-recommend__list__item:nth-child(5n) {
  margin-right: 0;
}
.top-recommend__list__link {
  display: block;
}
.top-recommend__list__link:hover .top-recommend__list__title,
.top-recommend__list__link:hover .top-recommend__list__price {
  text-decoration: none !important;
}
.top-recommend__list__image {
  margin-bottom: 12px;
}
.top-recommend__list__category {
  position: relative;
  max-width: 66px;
  margin-bottom: 5px;
  padding-left: 13px;
  color: #fff;
  font-size: 1.2rem;
  text-align: center;
}
.top-recommend__list__category::before {
  content: "";
  position: absolute;
  top: 0;
  left: 4px;
  width: 20px;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.top-recommend__list__category.up {
  background-color: #f59400;
}
.top-recommend__list__category.up::before {
  background-image: url("../img/common/icon_upward_arrow.svg");
  background-size: 12px auto;
}
.top-recommend__list__category.new {
  background-color: #d04637;
}
.top-recommend__list__category.new::before {
  background-image: url("../img/common/icon_star_white.svg");
  background-size: 12px auto;
}
.top-recommend__list__category.popular {
  background-color: #5e9e0a;
}
.top-recommend__list__category.popular::before {
  background-image: url("../img/common/icon_heart.svg");
  background-size: 10px auto;
}
.top-recommend__list__category.standard {
  background-color: #1ca1be;
}
.top-recommend__list__category.standard::before {
  background-image: url("../img/common/icon_crown.svg");
  background-size: 13px auto;
}
.top-recommend__list__title {
  margin-bottom: 5px;
  color: #1794af;
  font-size: 1.5rem;
  text-decoration: underline;
  line-height: 1.3;
}
.top-recommend__list__price {
  color: #d00;
  font-size: 1.5rem;
  text-decoration: underline;
  line-height: 1.3;
}

.top-title-base {
  position: relative;
  margin-bottom: 30px;
  padding-top: 50px;
  color: #000;
  font-size: 3rem;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1200px) {
  .top-title-base {
    font-size: 2.5rem;
  }
}
.top-title-base::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 50px;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-position: center;
}
.top-title-base.recommend::before {
  background-image: url("../img/top/icon_star.svg");
  background-size: 45px auto;
}
@media screen and (max-width: 1200px) {
  .top-title-base.recommend::before {
    background-size: 40px auto;
  }
}
.top-title-base.info::before {
  background-image: url("../img/top/icon_megaphone.svg");
  background-size: 65px auto;
}
@media screen and (max-width: 1200px) {
  .top-title-base.info::before {
    background-size: 53px auto;
  }
}
.top-title-base.campaign::before {
  background-image: url("../img/top/icon_gift.svg");
  background-size: 43px auto;
}
@media screen and (max-width: 1200px) {
  .top-title-base.campaign::before {
    background-size: 37px auto;
  }
}
.top-title-base span {
  display: block;
  color: #1794af;
  font-size: 1.4rem;
  line-height: 1.5;
}
@media screen and (max-width: 1200px) {
  .top-title-base span {
    font-size: 1.3rem;
  }
}

/* =====================================================

 _information

===================================================== */
.info-title {
  margin-bottom: 30px;
  padding: 20px 15px 20px 30px;
  background: #F7F7F7;
  position: relative;
}
.info-title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 100%;
  background: #012d9b;
}
.info-title__date {
  font-weight: bold;
  margin-bottom: 5px;
}
.info-title__text {
  font-size: 1.8rem;
  font-weight: 600;
}

/* =====================================================

 _campaign

===================================================== */
.campaign-list {
  margin-top: -20px;
}
.campaign-list__item {
  border-bottom: 1px dotted #DDD;
}
.campaign-list__item a {
  display: flex;
  /*display: block;*/
  padding: 30px 20px 30px 10px;
  position: relative;
}
.campaign-list__item a::before {
  content: "";
  position: absolute;
  top: calc(50% - 10px);
  right: 10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 6px;
  border-color: transparent transparent transparent #012d9b;
}
.campaign-list__item a:hover {
  background: #F8F8F8;
}
.campaign-list__item__img {
  width: 300px;
  margin-right: 20px;
}
.campaign-list__item__img img {
  width: 100%;
}
.campaign-list__item__text {
  width: calc(100% - 300px - 20px);
}

/* =====================================================

 _cart

===================================================== */
.cart-wrapper {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 20px;
}

.cart-flow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 30px;
}
.cart-flow > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: calc((99.9% - 30px) / 4);
  height: 80px;
  padding-left: 20px;
  background-color: #f0f7f9;
  border: 1px solid #1794af;
  color: #1794af;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.2;
}
.cart-flow > li:not(:last-child) {
  margin-right: 10px;
}
.cart-flow > li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: -1px;
  right: -37px;
  width: 37px;
  height: calc(100% + 2px);
  background-image: url("../img/cart/flow_arrow.png");
  background-repeat: no-repeat;
  background-size: 37px 100%;
  z-index: 1;
}
.cart-flow > li.current {
  background-color: #1794af;
  color: #fff;
}
.cart-flow > li.current::after {
  background-image: url("../img/cart/flow_arrow_current.png");
}
.cart-flow > li.current:not(:first-child)::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -12px;
  width: 37px;
  height: calc(100% + 2px);
  background-image: url("../img/cart/flow_arrow_current02.png");
  background-repeat: no-repeat;
  background-size: 37px 100%;
  z-index: 1;
}

.cart-form {
  margin-bottom: 30px;
}
.cart-form table {
  width: 100%;
}
.cart-form table thead th {
  font-weight: 500;
  padding: 10px;
  background-color: #f1f7f9;
  border: 1px solid #ddd;
}
.cart-form table thead th.order-w01 {
  width: 130px;
}
.cart-form table thead th.order-w02 {
  width: 110px;
}
.cart-form table tbody td {
  padding: 20px 22px;
  border: 1px solid #ddd;
  color: #000;
  text-align: center;
  vertical-align: middle;
  line-height: 1.7;
}
.cart-form table tbody td:nth-of-type(2) {
  text-align: left;
}
.cart-form table tbody td select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  max-width: 95px;
  width: 100%;
  height: 34px;
  padding: 0 30px 0 10px;
  background-color: #fff;
  background-image: url("../img/common/select_arrow.png");
  background-repeat: no-repeat;
  background-position: center right 2px;
  background-size: 28px auto;
  border: 1px solid #ddd;
  border-radius: 0;
  color: #000;
  outline: none;
  cursor: pointer;
}
.cart-form table tbody td select::-ms-expand {
  display: none;
}
.cart-form table tbody td p.note {
  color: #ce0000;
  font-size: 1.4rem;
  line-height: 1.5;
}
.cart-form table tbody td .price-btn {
  display: block;
  position: relative;
  max-width: 140px;
  padding: 2px 10px 2px 2px;
  background-color: #fff;
  border: 1px solid #012d9b;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
  color: #012d9b;
}
.cart-form table tbody td .price-btn::after {
  content: "";
  position: absolute;
  top: 0;
  right: 8px;
  bottom: 0;
  margin: auto 0;
  width: 6px;
  height: 6px;
  border-top: 1px solid #012d9b;
  border-right: 1px solid #012d9b;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: 0.3s;
}
.cart-form table tbody td .price-btn:hover {
  background-color: #012d9b;
  color: #fff;
}
.cart-form table tbody td .price-btn:hover::after {
  border-top-color: #fff;
  border-right-color: #fff;
}
.cart-form table tbody td .delete-btn {
  display: block;
  max-width: 75px;
  padding: 2px;
  background-color: #444;
  color: #fff;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
  letter-spacing: 0.02em;
}
.cart-form table tbody td .delete-btn:hover {
  background-color: #666;
}

.cart-add {
  margin-bottom: 40px;
}
.cart-add dl dt {
  position: relative;
  margin-bottom: 20px;
  padding: 10px 10px 10px 60px;
  background-color: #012d9b;
  color: #fff;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  cursor: pointer;
}
.cart-add dl dt::before {
  content: "";
  position: absolute;
  top: 20px;
  left: 30px;
  width: 15px;
  height: 11px;
  border: 7px solid transparent;
  border-top: 11px solid #fff;
  border-bottom: none;
}
.cart-add dl dt.active::before {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.cart-add dl dd {
  display: none;
  margin-bottom: 60px;
}
.cart-add dl dd ul {
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -20px;
}
.cart-add dl dd ul li {
  width: calc((99.9% - 90px) / 7);
  margin-top: 30px;
  margin-right: 15px;
}
.cart-add dl dd ul li:nth-child(7n) {
  margin-right: 0;
}
.cart-add dl dd ul li a {
  display: block;
}
.cart-add dl dd ul li a figure img {
  display: block;
  width: 145px;
  height: 130px;
  padding: 20px;
  margin-bottom: 8px;
  border: 1px solid #ddd;
  object-fit: contain;
  font-family: "object-fit: contain;";
}
.cart-add dl dd ul li a figure figcaption {
  color: #1794af;
  font-size: 1.3rem;
  text-decoration: underline;
  line-height: 1.4;
}
.cart-add dl dd ul li a:hover figcaption {
  text-decoration: none;
}

.cart-change {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 30px;
  padding: 15px;
  background-color: #e3e9d1;
}
.cart-change__text {
  margin-right: 40px;
  color: #5a7210;
  font-size: 2rem;
  font-weight: 500;
}
.cart-change__button {
  display: block;
  position: relative;
  max-width: 270px;
  width: 100%;
  padding: 10px 40px 10px 20px;
  background-color: #fff;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #5a7210;
  font-weight: 500;
  font-size: 1.8rem;
  text-align: center;
}
.cart-change__button::before, .cart-change__button::after {
  content: "";
  position: absolute;
  right: 15px;
  bottom: 0;
  margin: auto 0;
  background-color: #5a7210;
  transition: 0.3s;
}
.cart-change__button::before {
  top: 5px;
  width: 25px;
  height: 2px;
}
.cart-change__button::after {
  top: -2px;
  width: 12px;
  height: 2px;
  -webkit-transform: rotate(40deg);
  -ms-transform: rotate(40deg);
  transform: rotate(40deg);
}
.cart-change__button:hover {
  background-color: #5a7210;
  color: #fff;
}
.cart-change__button:hover::before, .cart-change__button:hover::after {
  background-color: #fff;
}

.cart-total__box {
  margin-bottom: 25px;
  padding: 20px 40px;
  background-color: #f4f4f4;
}
.cart-total__box__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.cart-total__box__button {
  display: block;
  position: relative;
  max-width: 210px;
  width: 100%;
  padding: 7px 20px 7px 40px;
  background-color: #012d9b;
  border: 2px solid #012d9b;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 1.8rem;
  text-align: center;
}
.cart-total__box__button::before, .cart-total__box__button::after {
  content: "";
  position: absolute;
  left: 15px;
  bottom: 0;
  margin: auto 0;
  background-color: #fff;
  transition: 0.3s;
}
.cart-total__box__button::before {
  top: 5px;
  width: 25px;
  height: 2px;
}
.cart-total__box__button::after {
  top: -2px;
  width: 12px;
  height: 2px;
  -webkit-transform: rotate(-40deg);
  -ms-transform: rotate(-40deg);
  transform: rotate(-40deg);
}
.cart-total__box__button:hover {
  background-color: #fff;
  color: #012d9b;
}
.cart-total__box__button:hover::before, .cart-total__box__button:hover::after {
  background-color: #012d9b;
}
.cart-total__box__details {
  margin-left: auto;
}
.cart-total__box__details > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.cart-total__box__details > div:not(:last-child) {
  margin-bottom: 5px;
}
.cart-total__box__details dt,
.cart-total__box__details dd {
  color: #000;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.cart-total__box__details dt {
  position: relative;
  width: 8em;
  padding-left: 18px;
}
.cart-total__box__details dt::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 9px;
  height: 9px;
  background-color: #012d9b;
}
.cart-total__box__details dd {
  margin-left: auto;
  font-size: 2rem;
}
.cart-total__box .text-note {
  margin-top: 15px;
  text-align: right;
}
.cart-total__footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.cart-total__footer__button {
  display: block;
  max-width: 280px;
  width: 100%;
  padding: 13px;
  background-color: #ce0000;
  border: 2px solid #ce0000;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
  letter-spacing: 0.02em;
}
.cart-total__footer__button span {
  display: inline-block;
  position: relative;
  padding-left: 35px;
}
.cart-total__footer__button span::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 25px;
  height: 23px;
  margin: auto 0;
  background-image: url("../img/common/icon_shopping_cart_white.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  transition: 0.3s;
}
.cart-total__footer__button:hover {
  background-color: #fff;
  color: #ce0000;
}
.cart-total__footer__button:hover span::before {
  background-image: url("../img/common/icon_shopping_cart_red.svg");
}
.cart-total__footer__button.cnt {
  margin: 0 auto;
}

.cart-login {
  margin-top: 60px;
}
.cart-login__text-box {
  margin-bottom: 30px;
  padding: 25px;
  background-color: #f1f7f9;
  color: #000;
  text-align: center;
}
.cart-login__text-box span {
  display: inline-block;
  margin: 0 6px;
  padding: 0 6px;
  color: #fff;
  font-size: 1.8rem;
}
.cart-login__text-box span.member {
  background-color: #78a13d;
}
.cart-login__text-box span.customer {
  background-color: #e6a20f;
}

.cart-coupon {
  margin: 40px 0 60px;
}
.cart-coupon > div {
  max-width: 650px;
  height: 160px;
  margin: 0 auto;
  background-color: #ccc;
}

.cart-subsc-intro {
  margin-bottom: 18px;
}
.cart-subsc-intro__text-box {
  padding: 20px;
  background-color: #f4f4f4;
  color: #012d9b;
  font-size: 2.6rem;
  font-weight: 500;
  text-align: center;
}

.cart-subsc-select {
  margin-bottom: 50px;
}
.cart-subsc-select__text-box {
  margin-bottom: 20px;
  padding: 8px;
  border: 2px solid #ce0000;
  color: #ce0000;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
.cart-subsc-select__box {
  padding: 10px;
  background-color: #f2f2f2;
}
.cart-subsc-select__box > dl > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.cart-subsc-select__box > dl > div:not(:last-child) {
  margin-bottom: 13px;
  padding-bottom: 13px;
  border-bottom: 1px dotted #ccc;
}
.cart-subsc-select__box > dl > div > dt {
  width: 330px;
}
.cart-subsc-select__box > dl > div > dt span,
.cart-subsc-select__box > dl > div > dt a {
  display: block;
  position: relative;
  max-width: 270px;
  width: 100%;
  margin: 0 auto;
  padding: 11px 48px 11px 68px;
  background-color: #fff;
  border: 2px solid transparent;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #888;
  font-size: 2.2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
  letter-spacing: 0.01em;
}
.cart-subsc-select__box > dl > div > dt span::before,
.cart-subsc-select__box > dl > div > dt a::before {
  content: "";
  position: absolute;
  top: 21px;
  left: 40px;
  width: 20px;
  height: 20px;
  background-color: #ddd;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.cart-subsc-select__box > dl > div > dt span.current {
  background-color: #2b7905;
  color: #fff;
}
.cart-subsc-select__box > dl > div > dt span.current::before {
  background-color: #fff;
}
.cart-subsc-select__box > dl > div > dt span.current::after {
  content: "";
  position: absolute;
  top: 25px;
  left: 44px;
  width: 12px;
  height: 12px;
  background-color: #333;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.cart-subsc-select__box > dl > div > dt a:hover {
  border-color: #2b7905;
  color: #2b7905;
}
.cart-subsc-select__box > dl > div > dd {
  width: calc(100% - 330px);
}
.cart-subsc-select__box > dl > div > dd > dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.cart-subsc-select__box > dl > div > dd > dl > dt, .cart-subsc-select__box > dl > div > dd > dl > dd {
  width: calc((99.9% - 15px) / 2);
}
.cart-subsc-select__box > dl > div > dd > dl > dt {
  position: relative;
  padding: 0 10px 0 30px;
  color: #000;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 400;
  line-height: 1.5;
}
.cart-subsc-select__box > dl > div > dd > dl > dt::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 10px;
  height: 15px;
  margin: auto 0;
  border: 7px solid transparent;
  border-left: 10px solid #888;
  border-right: none;
}
.cart-subsc-select__box > dl > div > dd > dl > dt span {
  display: block;
  padding-left: 0.5em;
  font-size: 1.3rem;
  text-indent: -1em;
}
.cart-subsc-select__box > dl > div > dd > dl > dd {
  position: relative;
  margin-left: 15px;
  padding: 20px 20px 20px 130px;
  background-color: #fff;
  background-repeat: no-repeat;
  color: #000;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  line-height: 1.5;
}
.cart-subsc-select__box > dl > div > dd > dl > dd::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -15px;
  width: 15px;
  height: 23px;
  margin: auto 0;
  border: 11px solid transparent;
  border-right: 15px solid #fff;
  border-left: none;
}
.cart-subsc-select__box > dl > div > dd > dl > dd span {
  color: #ce0000;
  font-weight: 500;
}
.cart-subsc-select__box > dl > div > dd > dl > dd.futsu {
  background-image: url("../img/cartp/icon_gift.svg");
  background-position: left 35px center;
  background-size: 64px auto;
}
.cart-subsc-select__box > dl > div > dd > dl > dd.teiki {
  background-image: url("../img/cartp/icon_coin.png");
  background-position: left 30px center;
  background-size: 78px auto;
}

.cart-empty-box {
  margin-bottom: 20px;
  padding: 70px;
  background-color: #f4f4f4;
  text-align: center;
}
.cart-empty-box p {
  line-height: 1;
}
.cart-empty-box p:nth-child(1) {
  margin-bottom: 20px;
  color: #1794af;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 3rem;
}
.cart-empty-box p:nth-child(2) {
  max-width: 600px;
  margin: 0 auto 50px;
  padding: 15px;
  background-color: #1794af;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 3rem;
}
.cart-empty-box p:nth-child(3) {
  color: #000;
  font-size: 1.8rem;
}

.cart-empty-button-box {
  padding: 30px;
  background-color: #f1f7f9;
}
.cart-empty-button-box a {
  display: block;
  position: relative;
  max-width: 280px;
  width: 100%;
  margin: 0 auto;
  padding: 7px 20px 7px 40px;
  background-color: #012d9b;
  border: 2px solid #012d9b;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
}
.cart-empty-button-box a::before, .cart-empty-button-box a::after {
  content: "";
  position: absolute;
  left: 15px;
  bottom: 0;
  margin: auto 0;
  background-color: #fff;
  transition: 0.3s;
}
.cart-empty-button-box a::before {
  top: 5px;
  width: 25px;
  height: 2px;
}
.cart-empty-button-box a::after {
  top: -2px;
  width: 12px;
  height: 2px;
  -webkit-transform: rotate(-40deg);
  -ms-transform: rotate(-40deg);
  transform: rotate(-40deg);
}
.cart-empty-button-box a:hover {
  background-color: #fff;
  color: #012d9b;
}
.cart-empty-button-box a:hover::before, .cart-empty-button-box a:hover::after {
  background-color: #012d9b;
}

.cart-subsc-input {
  margin-bottom: 40px;
  padding: 35px 40px;
  border: 3px solid #eee;
}
.cart-subsc-input__title {
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 10px;
  padding-left: 20px;
  border-bottom: 1px dotted #ccc;
  color: #012d9b;
  font-size: 1.8rem;
  font-weight: 500;
}
.cart-subsc-input__title::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 4px solid #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.cart-subsc-input__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.cart-subsc-input__selected {
  width: 26%;
  margin-right: 5%;
}
.cart-subsc-input__selected dl div:not(:last-child) {
  margin-bottom: 40px;
}
.cart-subsc-input__selected dl div dt {
  margin-bottom: 20px;
  padding: 0 30px;
  text-align: center;
}
.cart-subsc-input__selected dl div dt img {
  width: 100%;
  backface-visibility: hidden;
}
.cart-subsc-input__selected dl div dd {
  padding: 15px 25px;
  background-color: #f1f7f9;
}
.cart-subsc-input__selected dl div dd p {
  padding-left: 1em;
  text-indent: -1em;
}
.cart-subsc-input__form {
  width: 69%;
}
.cart-subsc-input__form > p {
  margin-bottom: 10px;
  font-weight: 700;
}
.cart-subsc-input__form dl div:not(:last-child) {
  margin-bottom: 30px;
}
.cart-subsc-input__form dl div dt {
  margin-bottom: 10px;
}
.cart-subsc-input__form dl div dt input[type=radio] + label.radio {
  display: block;
  padding: 15px;
  background-color: #e5eef6;
}
.cart-subsc-input__form dl div dt input[type=radio] + label.radio span::before {
  background-color: #fff;
}
.cart-subsc-input__form dl div dd ul {
  list-style: none;
}
.cart-subsc-input__form dl div dd ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 13px 5px;
}
.cart-subsc-input__form dl div dd ul li:nth-child(2) {
  border-top: 1px dotted #ccc;
}
.cart-subsc-input__form dl div dd ul li:nth-child(n+2) {
  border-bottom: 1px dotted #ccc;
}
.cart-subsc-input__form dl div dd ul li .add-btn {
  display: block;
  position: relative;
  max-width: 140px;
  width: 100%;
  margin-left: auto;
  padding: 3px 3px 3px 25px;
  background-color: #f98d00;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  text-align: center;
}
.cart-subsc-input__form dl div dd ul li .add-btn::before {
  content: "＋";
  position: absolute;
  top: 0;
  left: 12px;
  bottom: 0;
  width: 18px;
  height: 18px;
  margin: auto 0;
  background-color: #fff;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  color: #f98d00;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 1.5rem;
  text-align: center;
  line-height: 18px;
}
.cart-subsc-input__form dl div dd ul li .add-btn:hover {
  background-color: #ec8600;
}

.cart-history {
  margin-bottom: 40px;
  padding: 60px 70px;
  background-color: #f8f8f8;
}
.cart-history__btn-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.cart-history__btn-list dt {
  max-width: 360px;
  width: 100%;
}
.cart-history__btn-list dt a,
.cart-history__btn-list dt span {
  display: block;
  position: relative;
  padding: 15px 15px 15px 60px;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.cart-history__btn-list dt a::before,
.cart-history__btn-list dt span::before {
  content: "";
  position: absolute;
  top: 18px;
  left: 20px;
  width: 28px;
  height: 28px;
  background-color: #fff;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.cart-history__btn-list dt a::after,
.cart-history__btn-list dt span::after {
  content: "";
  position: absolute;
  top: 29px;
  left: 29px;
  width: 10px;
  height: 8px;
  border: 5px solid transparent;
  border-bottom: none;
}
.cart-history__btn-list dt a {
  background-color: #fe9900;
}
.cart-history__btn-list dt a::after {
  border-top: 8px solid #fe9900;
}
.cart-history__btn-list dt a:hover {
  background-color: #ec8600;
  color: #fff;
}
.cart-history__btn-list dt span {
  background-color: #aaa;
}
.cart-history__btn-list dt span::after {
  border-top: 8px solid #aaa;
}
.cart-history__btn-list dd {
  padding-left: 30px;
  color: #000;
  font-size: 2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
}
.cart-history__btn-list dd span {
  color: #fe8900;
}
.cart-history__his-table {
  width: 100%;
  margin-top: 30px;
}
.cart-history__his-table thead th {
  padding: 10px 30px;
  background-color: #1794af;
  color: #fff;
  font-size: 1.8rem;
  text-align: left;
}
.cart-history__his-table tbody th,
.cart-history__his-table tbody td {
  padding: 20px;
  border: 1px dotted #ccc;
}
.cart-history__his-table tbody th {
  width: 18%;
  background-color: #e5eef6;
}
.cart-history__his-table tbody td {
  width: 31.95%;
  background-color: #fff;
}
.cart-history__box {
  padding: 20px;
  border: 4px solid #fe9900;
  background-color: #fff;
}
.cart-history__box__text {
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
}
.cart-history__box__text span {
  color: #fe9900;
}
.cart-history__box__btn-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 5px 0;
}
.cart-history__box__btn-list div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.cart-history__box__btn-list div:first-child {
  margin-right: 30px;
}
.cart-history__box__btn-list div dt {
  position: relative;
  width: calc(100% - 250px);
  padding-right: 35px;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 1.8rem;
}
.cart-history__box__btn-list div dt::after {
  content: "";
  position: absolute;
  top: 0;
  right: 14px;
  bottom: 0;
  width: 8px;
  height: 11px;
  margin: auto 0;
  border: 5px solid transparent;
  border-right: none;
}
.cart-history__box__btn-list div dd {
  width: 250px;
}
.cart-history__box__btn-list div dd a {
  display: block;
  position: relative;
  padding: 15px;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
}
.cart-history__box__btn-list div dd a:hover {
  color: #fff;
}
.cart-history__box__btn-list div.login dt::after {
  border-left: 8px solid #fe9900;
}
.cart-history__box__btn-list div.login dd a {
  background-color: #fe9900;
}
.cart-history__box__btn-list div.login dd a:hover {
  background-color: #ec8600;
}
.cart-history__box__btn-list div.regist dt::after {
  border-left: 8px solid #012d9b;
}
.cart-history__box__btn-list div.regist dd a {
  background-color: #012d9b;
}
.cart-history__box__btn-list div.regist dd a:hover {
  background-color: #012786;
}
.cart-history__note-text {
  padding-left: 75px;
  background-image: url("../img/common/icon_checked.svg");
  background-repeat: no-repeat;
  background-position: center left;
  color: #000;
  font-size: 2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  line-height: 1.6;
}
.cart-history__note-text span {
  color: #fe9900;
}

.cart-note-box {
  padding: 25px 45px 35px;
  background-color: #fffae1;
}
.cart-note-box__title {
  position: relative;
  margin-bottom: 12px;
  padding-left: 30px;
  color: #ce0000;
  font-size: 2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.cart-note-box__title::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 24px;
  height: 21px;
  background-image: url("../img/common/icon_notice.svg");
  background-repeat: no-repeat;
  background-size: 100%;
}
.cart-note-box__text {
  color: #ce0000;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 400;
  line-height: 1.5;
}
.cart-note-box__text.em {
  font-size: 1.8rem;
  font-weight: 700;
}
.cart-note-box__text.kome {
  padding-left: 1em;
  text-indent: -1em;
}
.cart-note-box__text.fw-bold {
  font-weight: 700;
}

.cart-error-message {
  margin-bottom: 20px;
  padding: 8px;
  border: 2px solid #ce0000;
  background-color: #fee;
  color: #ce0000;
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
}

.cart-error-box {
  width: 160px;
  background-color: #fee;
}
.cart-error-box__text {
  margin-top: 10px;
  padding-left: 1em;
  color: #ce0000;
  font-size: 1.3rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-indent: -1em;
  text-align: left;
  line-height: 1.3;
}

/* =====================================================

 _regist

===================================================== */
.reist-flow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 30px;
}
.reist-flow > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: calc((99.9% - 20px) / 3);
  height: 80px;
  padding-left: 20px;
  background-color: #f0f7f9;
  border: 1px solid #1794af;
  color: #1794af;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
  line-height: 1.2;
}
.reist-flow > li:not(:last-child) {
  margin-right: 10px;
}
.reist-flow > li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: -1px;
  right: -37px;
  width: 37px;
  height: calc(100% + 2px);
  background-image: url("../img/cart/flow_arrow.png");
  background-repeat: no-repeat;
  background-size: 37px 100%;
  z-index: 1;
}
.reist-flow > li.current {
  background-color: #1794af;
  color: #fff;
}
.reist-flow > li.current::after {
  background-image: url("../img/cart/flow_arrow_current.png");
}
.reist-flow > li.current:not(:first-child)::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -12px;
  width: 37px;
  height: calc(100% + 2px);
  background-image: url("../img/cart/flow_arrow_current02.png");
  background-repeat: no-repeat;
  background-size: 37px 100%;
  z-index: 1;
}

/* =====================================================

 _settle

===================================================== */
.settle-send-box {
  padding: 70px;
  background-color: #f4f4f4;
}
.settle-send-box__title {
  margin-bottom: 30px;
  color: #1794af;
  font-size: 3rem;
  font-weight: 500;
  text-align: center;
}
.settle-send-box__text {
  color: #000;
  text-align: center;
}
.settle-send-box__tel {
  margin-bottom: 50px;
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
}
.settle-send-box__tel a {
  color: #000;
}
.settle-send-box__button {
  display: block;
  position: relative;
  max-width: 280px;
  margin: 30px auto 0;
  padding: 10px 20px;
  background-color: #012d9b;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.14);
  color: #fff;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.02em;
}
.settle-send-box__button::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 15px;
  bottom: 0;
  width: 20px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
}
.settle-send-box__button::after {
  content: "";
  position: absolute;
  top: -4px;
  left: 15px;
  bottom: 0;
  width: 12px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
  -webkit-transform: rotate(-30deg);
  -ms-transform: rotate(-30deg);
  transform: rotate(-30deg);
}
.settle-send-box__button:hover {
  background-color: #0d42c8;
}

.send-notes {
  margin-bottom: 40px;
  padding: 20px 30px;
  background: #ffeeee;
}
.send-notes__list__item {
  padding-left: 15px;
  position: relative;
}
.send-notes__list__item::before {
  position: absolute;
  content: "";
  top: 10px;
  left: 0;
  width: 8px;
  height: 8px;
  background: #000;
  border-radius: 50%;
}

/* =====================================================

 _mypage

===================================================== */
.mypage-top__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -20px;
  margin-bottom: 55px;
  margin-left: -20px;
}
.mypage-top__nav > div {
  width: calc((99.9% - 40px) / 2);
  margin-top: 20px;
  margin-left: 20px;
  background-color: #f4f4f4;
}
.mypage-top__nav > div.rakuten {
  border: 1px solid #ccc;
  background-color: #fff;
  padding: 20px 30px;
}
.mypage-top__nav > div dt a {
  display: block;
  position: relative;
  padding: 10px 10px 12px 58px;
  background-color: #1794af;
  background-repeat: no-repeat;
  background-position: center left 20px;
  color: #fff !important;
  font-size: 1.8rem;
  font-weight: 500;
}
.mypage-top__nav > div dt a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  width: 8px;
  height: 11px;
  margin: auto 0;
  border: 5px solid transparent;
  border-left: 8px solid #fff;
  border-right: none;
}
.mypage-top__nav > div dt a:hover {
  background-color: #012d9b;
}
.mypage-top__nav > div dt.rakuten {
  text-align: center;
  font-weight: 600;
  font-size: 1.8rem;
  margin-bottom: 20px;
}
.mypage-top__nav > div dd {
  padding: 15px 25px 30px;
}
.mypage-top__nav > div dd p {
  color: #000;
  line-height: 1.5;
}
.mypage-top__nav > div dd p span {
  font-size: 1.3rem;
}
.mypage-top__nav > div dd p a {
  position: relative;
  display: inline-block;
  margin-left: auto;
  padding-left: 22px;
  color: #012d9b !important;
  text-decoration: underline;
}
.mypage-top__nav > div dd p a::before, .mypage-top__nav > div dd p a::after {
  content: "";
  position: absolute;
}
.mypage-top__nav > div dd p a::before {
  top: 5px;
  left: 0;
  width: 13px;
  height: 13px;
  background-color: #012d9b;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  -o-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
}
.mypage-top__nav > div dd p a::after {
  top: 9px;
  left: 5px;
  width: 4px;
  height: 4px;
  margin: auto 0;
  border: 2px solid transparent;
  border-left: 4px solid #fff;
  border-right: none;
}
.mypage-top__nav > div dd p a:hover {
  text-decoration: none;
}
.mypage-top__nav > div dd p.al-right {
  text-align: right;
}
.mypage-top__nav > div dd.rakuten {
  padding: 0px 0px 0px;
}
.mypage-top__nav > div dd .rakuten-now {
  width: 300px;
  margin: 0 auto 20px;
  text-align: center;
}
.mypage-top__nav > div dd .rakuten-switch {
  width: 150px;
  display: block;
  height: 40px;
  border-radius: 40px;
  position: relative;
  background-color: #ccc;
  margin: 0 auto 16px;
  transition: 0.3s;
}
.mypage-top__nav > div dd .rakuten-switch::before, .mypage-top__nav > div dd .rakuten-switch::after {
  content: "";
  display: inline-block;
  position: absolute;
  margin: auto;
}
.mypage-top__nav > div dd .rakuten-switch::before {
  top: 0;
  left: 8px;
  bottom: 0;
  margin: auto;
  width: 28px;
  height: 28px;
  background-color: #fff;
  border-radius: 100%;
  transition: 0.3s;
}
.mypage-top__nav > div dd .rakuten-switch::after {
  content: "未連携";
  left: 56px;
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  font-weight: 600;
}
.mypage-top__nav > div dd .rakuten-switch.active {
  background-color: #bf0000;
  transition: 0.3s;
}
.mypage-top__nav > div dd .rakuten-switch.active::before {
  left: 116px;
  transition: 0.3s;
}
.mypage-top__nav > div dd .rakuten-switch.active::after {
  content: "連携中";
  color: #fff;
  left: 50px;
}
.mypage-top__nav > div dd .rakuten-release-link {
  text-align: center;
  background-color: transparent;
  font-size: 14px;
  display: block;
  text-decoration: underline;
  width: 100%;
  margin-bottom: 20px;
}
.mypage-top__nav > div dd .rakuten-release-link:hover {
  text-decoration: none;
}
.mypage-top__nav > div dd .rakuten-link {
  text-align: right;
}
.mypage-top__nav > div dd .rakuten-link a {
  font-size: 1.4rem;
  color: #000 !important;
  padding-left: 20px !important;
}
.mypage-top__nav > div dd .rakuten-link a::before {
  background-color: #666 !important;
}
.mypage-top__nav > div.item01 dt a, .mypage-top__nav > div.item02 dt a {
  background-image: url("../img/common/icon_box_white.svg");
  background-size: 27px auto;
}
.mypage-top__nav > div.item03 dt a {
  background-image: url("../img/common/icon_pencil_white.svg");
  background-size: 28px auto;
}
.mypage-top__nav > div.item04 dt a {
  background-image: url("../img/common/icon_nav06.svg");
  background-size: 28px auto;
}
.mypage-top__nav > div.item05 dt a {
  background-image: url("../img/common/icon_broken-heart.svg");
  background-size: 28px auto;
}
.mypage-top__box {
  margin-bottom: 40px;
  padding: 22px 20px 30px;
  background-color: #f4f4f4;
}
.mypage-top__box p {
  color: #ce0000;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
}
.mypage-top__box a {
  display: block;
  position: relative;
  max-width: 280px;
  width: 100%;
  margin: 0 auto;
  padding: 8px 20px 10px 40px;
  background-color: #ce0000;
  border: 2px solid #ce0000;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-weight: 500;
  font-size: 1.6rem;
  text-align: center;
}
.mypage-top__box a::before, .mypage-top__box a::after {
  content: "";
  position: absolute;
  left: 15px;
  bottom: 0;
  margin: auto 0;
  background-color: #fff;
  transition: 0.3s;
}
.mypage-top__box a::before {
  top: 5px;
  width: 25px;
  height: 2px;
}
.mypage-top__box a::after {
  top: -2px;
  width: 12px;
  height: 2px;
  -webkit-transform: rotate(-40deg);
  -ms-transform: rotate(-40deg);
  transform: rotate(-40deg);
}
.mypage-top__box a:hover {
  background-color: #fff;
  color: #ce0000;
}
.mypage-top__box a:hover::before, .mypage-top__box a:hover::after {
  background-color: #ce0000;
}
.mypage-top__contact {
  font-weight: 500;
  padding: 23px 25px 20px;
  border: 5px solid #bac5de;
}
.mypage-top__contact__title {
  position: relative;
  margin-bottom: 15px;
  padding-bottom: 15px;
  padding-left: 32px;
  border-bottom: 1px dotted #ccc;
  color: #012d9b;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.2;
}
.mypage-top__contact__title::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  width: 24px;
  height: 24px;
  background-image: url("../img/common/icon_phone_blue.svg");
  background-repeat: no-repeat;
  background-size: 100%;
}
.mypage-top__contact__title span {
  display: inline-block;
  margin-left: 15px;
  font-size: 1.6rem;
}
.mypage-top__contact__body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-left: 15px;
}
.mypage-top__contact__body dt {
  padding-right: 20px;
}
.mypage-top__contact__body dt p:nth-of-type(1) {
  font-size: 1.8rem;
  font-weight: 700;
}
.mypage-top__contact__body dt p:nth-of-type(3) {
  color: #000;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.02em;
}
.mypage-top__contact__body dt a {
  position: relative;
  display: inline-block;
  padding-left: 50px;
  color: #012d9b;
  font-size: 3.7rem;
  font-family: adobe-garamond-pro, serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
}
.mypage-top__contact__body dt a::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 42px;
  height: 24px;
  background-image: url("../img/common/icon_freedial.svg");
  background-size: 100%;
}
.mypage-top__contact__body dd {
  width: 230px;
}
.mypage-top__contact__body dd a {
  display: block;
  margin-top: 10px;
  padding: 20px 10px 20px 45px;
  background-color: #012d9b;
  background-image: url(../img/common/icon_email_white.svg);
  background-repeat: no-repeat;
  background-position: center left 15px;
  background-size: 20px auto;
  border: 2px solid #012d9b;
  color: #fff;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.mypage-top__contact__body dd a:hover {
  background-color: #fff;
  background-image: url(../img/common/icon_email_blue.svg);
  color: #012d9b;
}

.mypage-note-box {
  padding: 15px 30px 20px;
  border: 5px solid #ffcfcf;
}
.mypage-note-box__title {
  margin-bottom: 10px;
  padding: 0 0 5px 15px;
  border-bottom: 1px dotted #ccc;
  color: #ce0000;
  font-size: 1.8rem;
  font-weight: 500;
}
.mypage-note-box .text-base {
  font-weight: 500;
}
.mypage-note-box__contact {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 15px;
  padding: 16px 35px;
  background-color: #f2f2f2;
}
.mypage-note-box__contact dt {
  width: 130px;
  font-weight: 500;
}
.mypage-note-box__contact dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: calc(100% - 130px);
}
.mypage-note-box__contact dd a {
  margin-left: 40px;
}
.mypage-note-box__contact dd a[href*=tel] {
  position: relative;
  display: inline-block;
  width: 255px;
  padding-left: 50px;
  color: #012d9b;
  font-size: 3.7rem;
  font-family: adobe-garamond-pro, serif;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
}
.mypage-note-box__contact dd a[href*=tel]::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 42px;
  height: 24px;
  background-image: url("../img/common/icon_freedial.svg");
  background-size: 100%;
}
.mypage-note-box__contact dd a.mypage-note-box__contact--btn {
  display: block;
  max-width: 230px;
  width: 100%;
  padding: 10px 10px 10px 45px;
  background-color: #012d9b;
  background-image: url(../img/common/icon_email_white.svg);
  background-repeat: no-repeat;
  background-position: center left 15px;
  background-size: 20px auto;
  border: 2px solid #012d9b;
  color: #fff;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.mypage-note-box__contact dd a.mypage-note-box__contact--btn:hover {
  background-color: #fff;
  background-image: url(../img/common/icon_email_blue.svg);
  color: #012d9b;
}

.mypage-send-box {
  padding: 30px 20px 35px;
  background-color: #f4f4f4;
}
.mypage-send-box__title {
  margin-bottom: 10px;
  color: #1794af;
  font-size: 3rem;
  font-weight: 600;
  text-align: center;
}
.mypage-send-box__text {
  color: #1794af;
  text-align: center;
}

.mypage-history__pagination-text {
  padding: 10px 25px;
  background-color: #f4f4f4;
  font-size: 1.5rem;
}
.mypage-history__pagination-link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 10px;
  background-color: #f4f4f4;
}
.mypage-history__pagination-link li {
  position: relative;
}
.mypage-history__pagination-link li::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 8px;
  height: 9px;
  margin: auto 0;
  border: 4px solid transparent;
}
.mypage-history__pagination-link li.pagination-link-prev {
  padding-left: 22px;
}
.mypage-history__pagination-link li.pagination-link-prev::before {
  left: 0;
  border-right: 9px solid #012d9b;
  border-left: none;
}
.mypage-history__pagination-link li.pagination-link-next {
  padding-right: 22px;
}
.mypage-history__pagination-link li.pagination-link-next::before {
  right: 0;
  border-left: 9px solid #012d9b;
  border-right: none;
}
.mypage-history__pagination-link li a {
  display: inline-block;
  position: relative;
  color: #012d9b !important;
  font-size: 1.5rem;
  text-decoration: underline;
}
.mypage-history__pagination-link li a:hover {
  text-decoration: none;
}
.mypage-history__table {
  width: 100%;
}
.mypage-history__table thead th {
  padding: 10px;
  background-color: #1794af;
  border: 1px solid #ddd;
  color: #fff;
  font-weight: 500;
}
.mypage-history__table tbody td {
  padding: 10px;
  border: 1px solid #ddd;
  text-align: center;
}
.mypage-history__table tbody td a {
  display: block;
  position: relative;
  max-width: 100px;
  margin: 0 auto;
  padding: 0 2px 1px 10px;
  background-color: #012d9b;
  border: 1px solid #012d9b;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.02em;
}
.mypage-history__table tbody td a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 6px;
  width: 4px;
  height: 5px;
  margin: auto 0;
  border: 2px solid transparent;
  border-left: 5px solid #fff;
  border-right: none;
  transition: 0.3s;
}
.mypage-history__table tbody td a:hover {
  background-color: #fff;
  color: #012d9b;
}
.mypage-history__table tbody td a:hover::before {
  border-left-color: #012d9b;
}

.mypage-history-detail__title {
  position: relative;
  margin-bottom: 20px;
  padding: 5px 0 5px 30px;
  border-top: 1px dotted #1794af;
  border-bottom: 1px dotted #1794af;
  color: #1794af;
  font-weight: 500;
}
.mypage-history-detail__title::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 8px;
  width: 10px;
  height: 9px;
  margin: auto 0;
  border: 4px solid transparent;
  border-top: 9px solid #1794af;
  border-bottom: none;
}
.mypage-history-detail__block:not(:last-child) {
  margin-bottom: 30px;
}
.mypage-history-detail .tbl01 thead th {
  width: auto;
  font-weight: 500;
}
.mypage-history-detail .tbl01 thead th.w50per {
  width: 50%;
}
.mypage-history-detail .tbl01 tbody td.cl-red {
  color: #ce0000;
}
.mypage-history-detail .tbl01 tbody td.al-center {
  text-align: center;
}
.mypage-history-detail .tbl01 tbody td.al-right {
  text-align: right;
}
.mypage-history-detail .tbl01 tbody td a.btn-repurchase {
  display: inline-block;
  padding: 1px 10px;
  background-color: #107a35;
  border: 1px solid #107a35;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
}
.mypage-history-detail .tbl01 tbody td a.btn-repurchase:hover {
  background-color: #fff;
  color: #107a35;
}
.mypage-history-detail .tbl01--mhd01 tbody th {
  padding: 15px 30px;
  background-color: #f8f8f8;
  font-weight: 500;
  text-align: right;
}
.mypage-history-detail .tbl01--mhd01 tbody td {
  padding: 15px 20px;
}

.mypage-delivlist__block:not(:last-child) {
  margin-bottom: 40px;
}
.mypage-delivlist__add {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.mypage-delivlist__add__button {
  display: block;
  position: relative;
  width: 190px;
  padding: 10px 10px 10px 40px;
  background-color: #107a35;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 1.5rem;
  font-weight: 500;
}
.mypage-delivlist__add__button::before {
  content: "+";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 15px;
  width: 18px;
  height: 18px;
  margin: auto 0;
  background-color: #fff;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  color: #107a35;
  text-align: center;
  line-height: 18px;
  transition: 0.3s;
}
.mypage-delivlist__add__button:hover {
  background-color: #076327;
}
.mypage-delivlist .tbl01 th {
  width: auto;
}
.mypage-delivlist .tbl01 th.w60 {
  width: 60px;
}
.mypage-delivlist .tbl01 td a.delete-btn, .mypage-delivlist .tbl01 td a.edit-btn {
  display: block;
  max-width: 75px;
  padding: 2px;
  color: #fff;
  font-size: 1.4rem;
  font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
  letter-spacing: 0.02em;
}
.mypage-delivlist .tbl01 td a.delete-btn {
  background-color: #444;
}
.mypage-delivlist .tbl01 td a.delete-btn:hover {
  background-color: #666;
}
.mypage-delivlist .tbl01 td a.edit-btn {
  background-color: #012d9b;
}
.mypage-delivlist .tbl01 td a.edit-btn:hover {
  background-color: #2350bf;
}

.mypage-save-box {
  padding: 60px 30px;
  background-color: #f4f4f4;
}
.mypage-save-box--narrow {
  padding: 25px 20px 30px;
}
.mypage-save-box__title {
  color: #1794af;
  font-weight: 500;
  font-size: 3rem;
  text-align: center;
}
.mypage-save-box__text {
  color: #1794af;
  text-align: center;
}
.mypage-save-box__text a {
  color: inherit !important;
  text-decoration: underline;
}
.mypage-save-box__text a:hover {
  text-decoration: none;
}

.mypage-userdel-note {
  padding: 15px 30px;
  background-color: #fff3f5;
  border: 5px solid #ffcfcf;
}
.mypage-userdel-note__title {
  margin-bottom: 15px;
  padding-bottom: 5px;
  border-bottom: 1px dotted #ccc;
  color: #ce0000;
  font-size: 1.8rem;
  font-weight: 600;
}

/* =====================================================

 _privacy

===================================================== */
.privacy-wrap {
  height: 320px;
  overflow-y: scroll;
  border: 1px solid #DDD;
  margin-bottom: 30px;
  padding: 30px 20px;
}
.privacy-wrap li {
  list-style: none;
}
.privacy-wrap__list {
  margin-bottom: 20px;
}
.privacy-wrap__ttl {
  background: #f1f7f9;
  margin-bottom: 10px;
  padding: 10px 20px;
}
.privacy-wrap__text {
  padding: 0 5px;
}
.privacy-wrap__sublist li {
  padding-left: 1em;
  position: relative;
}
.privacy-wrap__sublist li::before {
  position: absolute;
  content: "";
  top: 12px;
  left: 5px;
  width: 3px;
  height: 3px;
  background: #000;
}

.privacy-con-wrap {
  border: 1px solid #1794af;
}
.privacy-con-wrap__ttl {
  color: #FFF;
  font-weight: 600;
  text-align: center;
  background: #1794af;
  padding: 5px 10px;
}
.privacy-con-wrap__detail {
  padding: 10px 20px;
}
.privacy-con-wrap__detail a {
  text-decoration: underline;
}
.privacy-con-wrap__default {
  margin-top: 15px;
  padding-left: 12px;
  position: relative;
}
.privacy-con-wrap__default::before {
  position: absolute;
  content: "";
  top: 8px;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 6px;
  border-color: transparent transparent transparent #1794af;
}

.privacy-index__list01 {
  margin-bottom: 40px;
}
.privacy-index__list01 div:not(:last-child) {
  margin-bottom: 30px;
}
.privacy-index__list01 div dt {
  font-weight: 500;
  margin-bottom: 10px;
  padding: 10px 20px 10px 30px;
  background: #f1f7f9;
  position: relative;
}
.privacy-index__list01 div dt::before {
  position: absolute;
  content: "";
  top: calc(50% - 4px);
  left: 12px;
  width: 8px;
  height: 8px;
  background: #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.privacy-index__list01 div dd {
  padding: 0 20px;
}
.privacy-index__list01 div dd .list-num {
  list-style: none;
  counter-reset: num;
}
.privacy-index__list01 div dd .list-num li {
  padding-left: 1.5em;
  text-indent: -1.5em;
}
.privacy-index__list01 div dd .list-num li:not(:last-child) {
  margin-bottom: 5px;
}
.privacy-index__list01 div dd .list-num li::before {
  content: "(" counter(num) ")";
  counter-increment: num;
  margin-right: 4px;
}
.privacy-index__list02 {
  margin-bottom: 20px;
  border: 1px solid #1794af;
}
.privacy-index__list02 dt {
  color: #FFF;
  font-weight: 600;
  text-align: center;
  background: #1794af;
  padding: 10px;
}
.privacy-index__list02 dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 20px 30px;
}

/* =====================================================

 _contact

===================================================== */
.contact-main-wrap {
  margin-bottom: 15px;
}
.contact-main-wrap__notice li {
  list-style: none;
}

.contact-wrap__category {
  padding: 15px 0;
  margin-bottom: 15px;
  border-top: 1px dotted #DDD;
  border-bottom: 1px dotted #DDD;
}
.contact-wrap__category .no-mb {
  margin-bottom: 0 !important;
}

/* =====================================================

 _item

===================================================== */
.item-archive__list {
  list-style: none;
}
.item-archive__item {
  width: 100%;
}
.item-archive__item:not(:last-child) {
  margin-bottom: 35px;
  padding-bottom: 30px;
  border-bottom: 1px dotted #ccc;
}
.item-archive__item > ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  list-style: none;
}
.item-archive__item > ul > li:nth-child(1) {
  width: 19%;
}
.item-archive__item > ul > li:nth-child(1) img {
  width: 100%;
  border: 1px solid #ddd;
}
.item-archive__item > ul > li:nth-child(2) {
  width: 54%;
  padding: 0 20px;
}
.item-archive__item > ul > li:nth-child(2) p.item-title {
  margin-bottom: 10px;
  padding: 5px 10px;
  border-left: 3px solid #1794af;
  color: #000;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 2rem;
  line-height: 1.5;
}
.item-archive__item > ul > li:nth-child(2) p.item-title span.tag {
  display: inline-block;
  width: 66px;
  margin-left: 12px;
  padding: 1px 1px 1px 12px;
  background-repeat: no-repeat;
  background-position: center left 10px;
  color: #fff;
  font-size: 1.2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
}
.item-archive__item > ul > li:nth-child(2) p.item-title span.tag--popular {
  background-color: #5e9e0a;
  background-image: url(../img/common/icon_heart.svg);
  background-size: 10px auto;
}
.item-archive__item > ul > li:nth-child(2) p.item-title span.tag--standard {
  background-color: #1ca1be;
  background-image: url(../img/common/icon_crown.svg);
  background-size: 13px auto;
}
.item-archive__item > ul > li:nth-child(2) p.item-title span.tag--up {
  background-color: #f59400;
  background-image: url(../img/common/icon_upward_arrow.svg);
  background-position: center left 6px;
  background-size: 12px auto;
}
.item-archive__item > ul > li:nth-child(2) p.item-title span.tag--new {
  padding: 1px 1px 1px 15px;
  background-color: #d04637;
  background-image: url(../img/common/icon_star_white.svg);
  background-size: 12px auto;
}
.item-archive__item > ul > li:nth-child(2) p.item-catch {
  margin-bottom: 5px;
  color: #012d9b;
  font-size: 1.5rem;
  line-height: 1.5;
}
.item-archive__item > ul > li:nth-child(2) p.item-price {
  margin-bottom: 20px;
  padding: 12px 20px;
  background-color: #f4f4f4;
  line-height: 1.5;
}
.item-archive__item > ul > li:nth-child(2) p.item-price span {
  font-size: 2rem;
}
.item-archive__item > ul > li:nth-child(2) div {
  font-size: 1.5rem;
  line-height: 1.8;
}
.item-archive__item > ul > li:nth-child(3) {
  width: 27%;
  padding: 25px;
  background-color: #f7f7f7;
}
.item-archive__item > ul > li:nth-child(3) ul {
  list-style: none;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(1) {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 20px;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(1) select {
  position: relative;
  width: 97px;
  height: 35px;
  margin-left: 10px;
  padding: 0 30px 0 10px;
  border: none;
  background-color: #fff;
  background-image: url(../img/common/select_arrow.png);
  background-repeat: no-repeat;
  background-position: right 2px center;
  background-size: 29px auto;
  border: 1px solid #ddd;
  -moz-border-radius: 3;
  -webkit-border-radius: 3;
  -o-border-radius: 3;
  -ms-border-radius: 3;
  border-radius: 3;
  color: #555;
  font-size: 1.6rem;
  vertical-align: bottom;
  line-height: 1;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(n+2) {
  margin-top: 10px;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(n+2) a {
  display: block;
  position: relative;
  padding: 12px 20px 12px 13px;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  line-height: 1.5;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(n+2) a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  width: 5px;
  height: 8px;
  margin: auto 0;
  border: 4px solid transparent;
  border-left: 5px solid #fff;
  border-right: none;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(n+2) a.btn-cart {
  background-color: #ce0000;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(n+2) a.btn-cart:hover {
  background-color: #b50000;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(n+2) a.btn-subsc {
  background-color: #2b7905;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(n+2) a.btn-subsc:hover {
  background-color: #076327;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(n+2) a.btn-detail {
  background-color: #012d9b;
}
.item-archive__item > ul > li:nth-child(3) ul li:nth-child(n+2) a.btn-detail:hover {
  background-color: #00237b;
}

.item-detail__group {
  list-style: none;
  margin-bottom: 40px;
}
.item-detail__item {
  width: 100%;
}
.item-detail__item:not(:last-child) {
  margin-bottom: 35px;
  padding-bottom: 30px;
  border-bottom: 1px dotted #ccc;
}
.item-detail__item > ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  list-style: none;
}
.item-detail__item > ul > li:nth-child(1) {
  width: 29%;
}
.item-detail__item > ul > li:nth-child(1) img {
  display: block;
  width: 100%;
  margin-bottom: 15px;
  border: 1px solid #ddd;
}
.item-detail__item > ul > li:nth-child(1) ul {
  list-style: none;
  padding: 20px 15px 25px;
  background-color: #f7f7f7;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(1) {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 15px;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(1) select {
  position: relative;
  width: 97px;
  height: 35px;
  margin-left: 10px;
  padding: 0 30px 0 10px;
  border: none;
  background-color: #fff;
  background-image: url(../img/common/select_arrow.png);
  background-repeat: no-repeat;
  background-position: right 2px center;
  background-size: 29px auto;
  border: 1px solid #ddd;
  -moz-border-radius: 3;
  -webkit-border-radius: 3;
  -o-border-radius: 3;
  -ms-border-radius: 3;
  border-radius: 3;
  color: #555;
  font-size: 1.6rem;
  vertical-align: bottom;
  line-height: 1;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(n+2) a {
  display: block;
  position: relative;
  padding: 12px 20px 12px 45px;
  background-repeat: no-repeat;
  background-position: center left 12px;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.25);
  color: #fff;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: left;
  line-height: 1.5;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(n+2) a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  width: 5px;
  height: 8px;
  margin: auto 0;
  border: 4px solid transparent;
  border-left: 5px solid #fff;
  border-right: none;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(n+2) a.btn-single {
  background-color: #ce0000;
  background-image: url(../img/common/icon_single.png);
  background-size: 26px auto;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(n+2) a.btn-single:hover {
  background-color: #b50000;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(n+2) a.btn-subsc {
  background-color: #2b7905;
  background-image: url(../img/common/icon_cycle.svg);
  background-size: 22px auto;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(n+2) a.btn-subsc:hover {
  background-color: #076327;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(n+2) a span {
  font-size: 1.8rem;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(3) {
  margin-top: 10px;
  text-align: center;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(3) > span {
  display: inline-block;
  position: relative;
  margin: 5px 0 2px;
  padding: 0 20px;
  color: #fe5500;
  font-size: 1.3rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  line-height: 1.3;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(3) > span::before, .item-detail__item > ul > li:nth-child(1) ul li:nth-child(3) > span::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 4px;
  height: 30px;
  background-color: #f50;
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(3) > span::before {
  left: 0;
  -webkit-transform: skewX(10deg);
  -ms-transform: skewX(10deg);
  transform: skewX(10deg);
}
.item-detail__item > ul > li:nth-child(1) ul li:nth-child(3) > span::after {
  right: 0;
  -webkit-transform: skewX(-10deg);
  -ms-transform: skewX(-10deg);
  transform: skewX(-10deg);
}
.item-detail__item > ul > li:nth-child(2) {
  width: 71%;
  padding-left: 40px;
}
.item-detail__item > ul > li:nth-child(2) .item-title {
  margin-bottom: 15px;
  padding: 5px 10px;
  border-left: 3px solid #1794af;
  color: #000;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 2rem;
  line-height: 1.5;
}
.item-detail__item > ul > li:nth-child(2) .item-title span.tag {
  display: inline-block;
  width: 66px;
  margin-left: 12px;
  padding: 1px 1px 1px 12px;
  background-repeat: no-repeat;
  background-position: center left 10px;
  color: #fff;
  font-size: 1.2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
}
.item-detail__item > ul > li:nth-child(2) .item-title span.tag--popular {
  background-color: #5e9e0a;
  background-image: url(../img/common/icon_heart.svg);
  background-size: 10px auto;
}
.item-detail__item > ul > li:nth-child(2) .item-title span.tag--standard {
  background-color: #1ca1be;
  background-image: url(../img/common/icon_crown.svg);
  background-size: 13px auto;
}
.item-detail__item > ul > li:nth-child(2) .item-title span.tag--up {
  background-color: #f59400;
  background-image: url(../img/common/icon_upward_arrow.svg);
  background-position: center left 6px;
  background-size: 12px auto;
}
.item-detail__item > ul > li:nth-child(2) .item-title span.tag--new {
  background-color: #d04637;
  background-image: url(../img/common/icon_star_white.svg);
  background-size: 12px auto;
}
.item-detail__item > ul > li:nth-child(2) .item-catch {
  margin-bottom: 15px;
  color: #012d9b;
  line-height: 1.5;
}
.item-detail__item > ul > li:nth-child(2) .item-price {
  margin-bottom: 15px;
  padding: 12px 20px;
  background-color: #f4f4f4;
  line-height: 1.5;
}
.item-detail__item > ul > li:nth-child(2) .item-price span {
  font-size: 2rem;
}
.item-detail__item > ul > li:nth-child(2) .item-button {
  display: inline-block;
  margin-bottom: 20px;
  position: relative;
  padding: 5px 15px 5px 22px;
  background-color: #012d9b;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.5;
}
.item-detail__item > ul > li:nth-child(2) .item-button::after {
  content: "";
  position: absolute;
  top: 0;
  left: 10px;
  bottom: 0;
  width: 5px;
  height: 8px;
  margin: auto 0;
  border: 4px solid transparent;
  border-left: 5px solid #fff;
  border-right: none;
}
.item-detail__item > ul > li:nth-child(2) .item-button:hover {
  background-color: #00237b;
}
.item-detail__item > ul > li:nth-child(2) div {
  font-size: 1.5rem;
  line-height: 1.8;
}
.item-detail__block:not(:last-of-type) {
  margin-bottom: 35px;
}
.item-detail__block table {
  width: 100%;
}
.item-detail__block table thead th, .item-detail__block table tbody th {
  padding: 10px;
  background-color: #1794af;
  border: 1px solid #ddd;
  color: #fff;
  font-weight: 400;
}
.item-detail__block table tbody td {
  padding: 12px 23px;
  border: 1px solid #ddd;
}
.item-detail__block table tbody td:nth-of-type(3) {
  text-align: center;
}
.item-detail__block h4 {
  position: relative;
  margin-bottom: 15px;
  padding: 8px 8px 8px 45px;
  background-color: #addceb;
  color: #000;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.item-detail__block h4::before {
  content: "";
  position: absolute;
  top: 13px;
  left: 20px;
  width: 15px;
  height: 15px;
  border: 4px solid #1794af;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  line-height: 1.5;
}

/* =====================================================

 _helper

===================================================== */
.help-list__item {
  margin-bottom: 20px;
  border-left: 4px solid #012d9b;
  position: relative;
}
.help-list__item::before {
  content: "";
  position: absolute;
  width: 37px;
  height: 37px;
  background-size: 37px 37px;
}
.help-list__item.qa::before {
  top: calc(50% - 19px);
  left: 25px;
  width: 49px;
  height: 38px;
  background-size: 49px 38px;
  background-image: url(../img/helper/icon_qa.svg);
}
.help-list__item.deliver::before {
  top: calc(50% - 19px);
  left: 22px;
  width: 49px;
  height: 37px;
  background-size: 49px 37px;
  background-image: url(../img/helper/icon_truck.svg);
}
.help-list__item.mail-error::before {
  top: calc(50% - 13px);
  left: 30px;
  width: 38px;
  height: 27px;
  background-size: 38px 27px;
  background-image: url(../img/helper/icon_mail.svg);
}
.help-list__item.etc::before {
  top: calc(50% - 18px);
  left: 34px;
  width: 29px;
  height: 37px;
  background-image: url(../img/helper/icon_drop.svg);
  background-size: 29px 37px;
}
.help-list__item::after {
  content: "";
  position: absolute;
  top: calc(50% - 5px);
  right: 15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 6px;
  border-color: transparent transparent transparent #012d9b;
}
.help-list__item a {
  color: #000;
  font-size: 1.8rem;
  padding: 25px 30px 25px 90px;
  background: #f4f4f4;
  display: block;
}
.help-list__item a:hover {
  color: #000;
  background: #EEE;
}

/* よくある質問 */
.qa-nav {
  border: 3px solid #EEE;
  margin-bottom: 20px;
  padding: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.qa-nav__item {
  width: 33.3333333333%;
  list-style: none;
}
.qa-nav__item a {
  padding-left: 1.2em;
  position: relative;
}
.qa-nav__item a::before {
  position: absolute;
  content: "";
  top: 7px;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 5px 0 5px;
  border-color: #012d9b transparent transparent transparent;
}

.qa-wrap {
  margin-bottom: 80px;
}
.qa-wrap__q {
  background-color: #f1f7f9;
  margin-bottom: 15px;
  padding: 15px 20px 15px 3.5em;
  position: relative;
}
.qa-wrap__q::before {
  position: absolute;
  content: "Q";
  top: 10px;
  left: 15px;
  color: #012d9b;
  font-family: "Roboto", sans-serif;
  font-size: 4rem;
  font-weight: 500;
  line-height: 1;
}
.qa-wrap__a {
  line-height: 1.7;
  margin-bottom: 40px;
  padding: 0 0 0 3.5em;
  position: relative;
}
.qa-wrap__a::before {
  position: absolute;
  content: "A";
  top: 0;
  left: 15px;
  color: #ce0000;
  font-family: "Roboto", sans-serif;
  font-size: 4rem;
  font-weight: 500;
  line-height: 1;
}

.qa-notice {
  margin-bottom: 20px;
  padding: 20px;
  border: 5px solid #fee;
}
.qa-notice__item {
  color: #CE0000;
  list-style: none;
  line-height: 1.5;
  text-indent: -1em;
  margin-top: 10px;
  padding-left: 1em;
}
.qa-notice__item:first-child {
  margin-top: 0;
}

/* =====================================================

 _sitemap

===================================================== */
.sitemap-index__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.sitemap-index__list01 {
  width: calc((100% - 30px) / 2);
}
.sitemap-index__list01 li {
  margin-bottom: 10px;
  position: relative;
}
.sitemap-index__list01 li::before {
  position: absolute;
  content: "";
  top: calc(50% - 4px);
  left: 15px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 6px;
  border-color: transparent transparent transparent #012d9b;
}
.sitemap-index__list01 li:nth-child(odd) {
  margin-left: 0;
}
.sitemap-index__list01 li a {
  color: #000;
  padding: 15px 20px 15px 32px;
  display: block;
  background: #F4F4F4;
}
.sitemap-index__list01 li a:hover {
  color: #000;
  background: #DDD;
}
.sitemap-index__list02 {
  width: calc((100% - 30px) / 2);
}
.sitemap-index__list02 li {
  padding: 15px 15px 15px 25px;
  border-bottom: 1px dotted #CCC;
  position: relative;
}
.sitemap-index__list02 li::before {
  position: absolute;
  content: "";
  top: 26px;
  left: 8px;
  width: 6px;
  height: 6px;
  background: #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.sitemap-index__list02 li a {
  color: #000;
}
.sitemap-index__list02 li a:hover {
  text-decoration: underline;
}
.sitemap-index__list02 .list-inner {
  width: 100%;
  padding: 15px 0 0 20px;
}
.sitemap-index__list02 .list-inner li {
  margin-bottom: 8px;
  padding: 0;
  border: none;
}
.sitemap-index__list02 .list-inner li a:hover {
  color: #1794af;
}
.sitemap-index__list02 .list-inner li::before {
  top: 11px;
  left: -15px;
  background: #1794af;
}

/* =====================================================

 _company

===================================================== */
/* =====================================================

 _tokutei

===================================================== */
/* =====================================================

 _about

===================================================== */
.about-boxtype__head {
  margin-bottom: 50px;
}
.about-boxtype__head__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
  padding: 0 30px 0 20px;
}
.about-boxtype__head__container__image-area {
  width: 53%;
  margin-right: 10%;
}
.about-boxtype__head__container__text-area {
  width: 37%;
}
.about-boxtype__head__container__text-area dt {
  margin-bottom: 15px !important;
  padding: 2px 0 2px 10px !important;
  border-left: 3px solid #1794af !important;
  font-size: 2rem !important;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important !important;
}
.about-boxtype__head__container__text-area dd:not(:last-child) {
  margin-bottom: 10px;
}
.about-boxtype__head__container__text-area dd a {
  display: block;
  position: relative;
  padding: 10px 20px;
  background-color: #012d9b;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.14);
  color: #fff !important;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 400;
  text-align: center;
  letter-spacing: 0.02em;
  text-decoration: none;
}
.about-boxtype__head__container__text-area dd a::before {
  content: "";
  position: absolute;
  top: 4px;
  right: 15px;
  bottom: 0;
  width: 25px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
}
.about-boxtype__head__container__text-area dd a::after {
  content: "";
  position: absolute;
  top: -4px;
  right: 12px;
  bottom: 0;
  width: 15px;
  height: 2px;
  margin: auto 0;
  background-color: #fff;
  -webkit-transform: rotate(40deg);
  -ms-transform: rotate(40deg);
  transform: rotate(40deg);
}
.about-boxtype__head__container__text-area dd a:hover {
  background-color: #0d42c8;
}
.about-boxtype__head__box {
  padding: 30px;
  background-color: #f4f4f4;
}
.about-boxtype__head__box dl:not(:last-child) {
  margin-bottom: 25px;
}
.about-boxtype__head__box dl dt {
  display: inline-block;
  max-width: 100px;
  width: 100%;
  margin-bottom: 10px;
  background-color: #1794af;
  color: #fff;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 400;
  text-align: center;
}
.about-boxtype__head__box dl dd ul {
  list-style: none;
  padding-left: 0 !important;
}
.about-boxtype__head__box dl dd ul li {
  position: relative;
  padding-left: 17px;
  font-size: 1.5rem;
}
.about-boxtype__head__box dl dd ul li::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 3px;
  width: 7px;
  height: 7px;
  background-color: #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.about-boxtype__head__box dl dd ul li.no-icon {
  padding-left: 17px;
}
.about-boxtype__head__box dl dd ul li.no-icon::before {
  display: none;
}
.about-boxtype__group:not(:last-of-type) {
  margin-bottom: 50px;
}
.about-boxtype__group__text-area {
  width: 100%;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px dashed #ddd;
}
.about-boxtype__group__text-area--last {
  border-bottom: 0px dashed #ddd;
}
.about-boxtype__group__text-area dt {
  display: inline-block;
  margin-bottom: 5px;
  padding: 0 20px;
  background-color: #1794af;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  -o-border-radius: 30px;
  -ms-border-radius: 30px;
  border-radius: 30px;
  color: #fff;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.about-boxtype__group__text-area dd {
  padding-left: 5px;
}
.about-boxtype__group__text-area dd p {
  font-size: 1.5rem;
}
.about-boxtype__group__text-area dd p.fs14 {
  font-size: 1.4rem;
}
.about-boxtype__group .text-base {
  line-height: 1.7;
}
.about-boxtype__group__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 60px;
}
.about-boxtype__group__container__image-area {
  margin-left: auto;
}
.about-boxtype__group__container__text {
  width: 50%;
}
.about-boxtype__group__list {
  counter-reset: num;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -30px 0 40px -18px;
  list-style: none !important;
  padding-left: 0 !important;
}
.about-boxtype__group__list__item {
  margin: 30px 0 0 18px;
  margin-top: 30px;
}
.about-boxtype__group__list__item figure div {
  position: relative;
  margin-bottom: 10px;
}
.about-boxtype__group__list__item figure div::before {
  content: counter(num);
  counter-increment: num;
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  height: 36px;
  background-color: #1794af;
  color: #fff;
  font-size: 2rem;
  font-family: "Overpass", sans-serif;
  font-weight: 900;
  text-align: center;
  line-height: 42px;
}
.about-boxtype__group__list__item figure div.original::before {
  background-color: #9b9383;
  font-weight: 400;
  font-family: "Roboto", sans-serif;
  line-height: 36px;
}
.about-boxtype__group__list__item figure figcaption {
  text-align: justify;
  text-justify: inter-ideograph;
  letter-spacing: 0.075em;
}
.about-boxtype__group__list__item figure figcaption span.cl-red {
  color: #d00000;
}
.about-boxtype__group__list__item figure figcaption span.fw-bold {
  font-weight: 700;
}
.about-boxtype__group__list__item figure figcaption.original {
  font-size: 1.5rem;
  line-height: 1.6;
}
.about-boxtype__group__list__item figure figcaption.original .fw-bold {
  font-weight: normal;
}
.about-boxtype__group__list__item.col1 figure {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.about-boxtype__group__list__item.col1 figure div {
  width: 43%;
  margin-right: 4%;
}
.about-boxtype__group__list__item.col1 figure div.original {
  width: 300px;
  margin-right: 6%;
}
.about-boxtype__group__list__item.col1 figure figcaption {
  width: 53%;
}
.about-boxtype__group__list__item.col1 figure figcaption.original {
  width: calc(94% - 300px);
}
.about-boxtype__group__list__item.col3 {
  width: calc((99.9% - 54px) / 3);
}
.about-boxtype__group__list__item.col4 {
  width: calc((99.9% - 72px) / 4);
}
.about-boxtype__group__text-box {
  padding: 20px;
  background-color: #f4f4f4;
}
.about-boxtype__group__text-box.original {
  background-color: #f0f0f0;
  padding: 24px;
  font-size: 1.4rem;
}
.about-boxtype__group__image.center {
  text-align: center;
}
.about-boxtype__feature {
  padding-top: 20px;
  margin-bottom: 50px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.about-boxtype__feature__text {
  width: 45%;
}
.about-boxtype__feature__image {
  margin-left: auto;
}

.about-index__box {
  margin-bottom: 50px;
  padding: 80px 60px 0px;
  background-image: url(../img/about/about_bg.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  min-height: 554px;
}
.about-index__box__catch {
  margin-bottom: 36px;
  color: #fff;
  font-size: 3.3rem;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1200px) {
  .about-index__box__catch {
    font-size: 2.9rem;
  }
}
.about-index__box__text {
  color: #fff;
  font-size: 1.5rem;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
  line-height: 1.8;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
}
.about-index__list {
  margin-bottom: 60px;
  padding-top: 55px;
  border-top: 1px dotted #ccc;
}
.about-index .about-index__list {
  border-top: 0;
  padding-top: 0;
}

.about-index__list ul {
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -10px;
}
.about-index__list ul li {
  max-width: 420px;
  width: 100%;
}
.about-index__list ul li a {
  background: #000;
}
.about-index__list ul li a:hover {
  background: transparent;
  opacity: 0.6;
}
.about-index__list ul li:nth-child(odd) {
  margin-right: auto;
}
.about-index__list ul li:not(:nth-child(-n+2)) {
  margin-top: 20px;
}

.about-chosen__block:not(:last-child) {
  margin-bottom: 40px;
}
.about-chosen__reason {
  margin-bottom: 50px;
  padding: 30px;
  border: 2px solid #1794af;
}
.about-chosen__reason__title {
  color: #1794af;
  font-size: 3.2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
}
.about-chosen__reason__title span {
  display: inline-block;
  margin-bottom: 20px;
  background: linear-gradient(transparent 75%, #faff6f 75%);
  line-height: 1.5;
}
.about-chosen__reason__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 25px;
}
.about-chosen__reason__list01 {
  width: calc((99.9% - 18px) / 2);
  padding-left: 0 !important;
}
.about-chosen__reason__list01:first-of-type {
  margin-right: 18px;
}
.about-chosen__reason__list01 > li {
  list-style: none !important;
}
.about-chosen__reason__list01 > li:not(:last-child) {
  margin-bottom: 10px;
}
.about-chosen__reason__list01 > li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  min-height: 64px;
  padding: 10px 30px 10px 50px;
  background-color: #f1f7f9;
  color: #000 !important;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none !important;
}
.about-chosen__reason__list01 > li a::before {
  content: attr(data-num);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 15px;
  width: 28px;
  height: 28px;
  margin: auto 0;
  background-color: #1794af;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  color: #fff;
  font-family: "Roboto", sans-serif;
  text-align: center;
  line-height: 28px;
}
.about-chosen__reason__list01 > li a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto 0;
  width: 11px;
  height: 11px;
  border-top: 2px solid #1794af;
  border-right: 2px solid #1794af;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.about-chosen__reason__list01 > li a:hover {
  background-color: #b4dbe8;
}
.about-chosen__reason__list02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-left: 0 !important;
}
.about-chosen__reason__list02 > li {
  width: calc((99.9% - 15px) / 2);
  list-style: none !important;
}
.about-chosen__reason__list02 > li:nth-child(odd) {
  margin-right: 15px;
}
.about-chosen__reason__list02 > li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  min-height: 64px;
  padding: 10px 30px 10px 35px;
  border: 1px dotted #1794af;
  color: #000 !important;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none !important;
}
.about-chosen__reason__list02 > li a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 17px;
  width: 10px;
  height: 10px;
  margin: auto 0;
  background-color: #1794af;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.about-chosen__reason__list02 > li a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto 0;
  width: 11px;
  height: 11px;
  border-top: 2px solid #1794af;
  border-right: 2px solid #1794af;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.about-chosen__reason__list02 > li a:hover {
  background-color: #b4dbe8;
}
.about-chosen__reason__sub-title {
  margin-bottom: 15px;
  color: #1794af;
  font-size: 2.4rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}
.about-chosen__reason__sub-title span {
  display: inline-block;
  position: relative;
  padding: 0 20px;
}
.about-chosen__reason__sub-title span::before, .about-chosen__reason__sub-title span::after {
  content: "";
  position: absolute;
  top: 8px;
  width: 2px;
  height: 24px;
  background-color: #1794af;
}
.about-chosen__reason__sub-title span::before {
  left: 0;
  transform: rotate(-35deg);
}
.about-chosen__reason__sub-title span::after {
  right: 0;
  transform: rotate(35deg);
}
.about-chosen__group:not(:last-of-type) {
  margin-bottom: 50px;
}
.about-chosen__image--center {
  text-align: center;
}
.about-chosen__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px;
}
.about-chosen__container__text-area {
  width: 46%;
  margin-right: 5%;
}
.about-chosen__container__text-area--04 {
  width: calc(100% - 318px);
  margin-right: 5%;
}
.about-chosen__container__image-area {
  width: 49%;
}
.about-chosen__container__image-area--04 {
  width: 318px;
}
.about-chosen__def-list dt {
  position: relative;
  margin-bottom: 15px;
  padding: 6px 8px 6px 45px;
  background-color: #addceb;
  color: #000;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
}
.about-chosen__def-list dt::before {
  content: "";
  position: absolute;
  top: 16px;
  left: 20px;
  width: 15px;
  height: 15px;
  border: 4px solid #1794af;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  line-height: 1.5;
}
.about-chosen__def-list--green > dt {
  background-color: #e3efd6;
  position: relative;
}
.about-chosen__def-list--green > dt::before {
  border-color: #70b129;
}
.about-chosen__images-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.about-chosen__images-container img {
  display: block;
  width: calc((99.9% - 40px) / 2);
}
.about-chosen__images-container img:first-of-type {
  margin-right: 40px;
}
.about-chosen__def-list02 > div:not(:last-child) {
  margin-bottom: 10px;
}
.about-chosen__def-list02 > div dt {
  margin-bottom: 5px;
  color: #111;
  font-size: 1.4rem;
}
.about-chosen__def-list02 > div dd {
  font-size: 1.4rem;
}
.about-chosen__def-list03 {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #e3e3e3;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.about-chosen__def-list03--noline {
  border-bottom: 0px solid #e3e3e3;
}
.about-chosen__def-list03 dt {
  width: 33%;
  margin-right: 4%;
}
.about-chosen__def-list03 dd {
  width: 63%;
}
.about-chosen__def-list03 dd .title {
  position: relative;
  margin-bottom: 20px;
  padding: 3px 25px;
  background-color: #d1af24;
  border: 1px solid #ba9601;
  color: #fff;
}
.about-chosen__def-list03 dd .title::before {
  content: "";
  position: absolute;
  top: 14px;
  left: 12px;
  width: 6px;
  height: 6px;
  background-color: #fff;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.about-chosen__fukidashi-title {
  margin-bottom: 20px !important;
  color: #70b129;
  font-size: 3.2rem !important;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}
.about-chosen__fukidashi-title span {
  display: inline-block;
  position: relative;
  padding: 0 30px;
}
.about-chosen__fukidashi-title span::before, .about-chosen__fukidashi-title span::after {
  content: "";
  position: absolute;
  top: 10px;
  width: 2px;
  height: 33px;
  background-color: #70b129;
}
.about-chosen__fukidashi-title span::before {
  left: 0;
  transform: rotate(-35deg);
}
.about-chosen__fukidashi-title span::after {
  right: 0;
  transform: rotate(35deg);
}

.original-main {
  margin-bottom: 70px;
}

.original-model {
  margin-bottom: 70px;
}

.original-model__title {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 2.8rem;
  font-weight: 600;
  text-align: center;
  color: #89703d;
  margin-bottom: 20px;
  letter-spacing: 5px;
}
.original-model__title .f-s {
  font-size: 2.2rem;
}
.original-model__title .line {
  position: relative;
  z-index: auto;
}
.original-model__title .line::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background-color: #e5e0d5;
  width: 100%;
  height: 15px;
  z-index: -1;
}

.original-model__lead {
  text-align: center;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 1.8rem;
  margin-bottom: 50px;
  font-weight: 600;
  line-height: 1.6;
  color: #222;
}

.original-charm {
  background-color: #eeebe4;
  padding: 60px 40px 10px 40px;
  margin-bottom: 70px;
}
.original-charm__block {
  width: 100%;
  position: relative;
  background-size: 560px 360px;
  background-repeat: no-repeat;
  margin-bottom: 60px;
  padding-top: 80px;
}
.original-charm__block.block01 {
  background-image: url(../img/about/original/miryoku-img01.jpg);
  background-position: top 0 right 0;
}
.original-charm__block.block02 {
  background-image: url(../img/about/original/miryoku-img02.jpg);
  background-position: top 0 left 0;
}
.original-charm__block.block02 .original-charm__data {
  margin-left: auto;
}
.original-charm__block.block03 {
  background-image: url(../img/about/original/miryoku-img03.jpg);
  background-position: top 0 right 0;
}
.original-charm__block.block04 {
  background-image: url(../img/about/original/miryoku-img04.jpg);
  background-position: top 0 left 0;
  padding-top: 112px;
}
.original-charm__block.block04 .original-charm__data {
  margin-left: auto;
}
.original-charm__data {
  width: 390px;
  background-color: #fff;
  padding: 40px 30px;
}
.original-charm__data__title {
  display: flex;
  align-items: center;
  margin-bottom: 24px;
}
.original-charm__data__title__number {
  font-family: "Roboto Condensed", sans-serif;
  color: #a8863f;
  font-size: 6.8rem;
  line-height: 1;
  margin-right: 20px;
}
.original-charm__data__title__copy {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  color: #222;
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1.2;
}
.original-charm__data__text {
  font-size: 1.5rem;
  line-height: 1.7;
  letter-spacing: 0.1em;
  text-indent: -0.1em;
  text-align: left;
}
.original-charm__data__notes {
  font-size: 1.3rem;
  line-height: 1.6;
  margin-top: 10px;
}

.original-charm__title {
  margin-bottom: 50px;
  text-align: center;
}
.original-charm__title__sub {
  color: #89703d;
  font-size: 2rem;
  font-weight: 600;
  background-color: #fff;
  border: 1px solid #89703d;
  max-width: 320px;
  width: 100%;
  margin: 0 auto 22px;
  line-height: 1;
  -moz-border-radius: 23px;
  -webkit-border-radius: 23px;
  -o-border-radius: 23px;
  -ms-border-radius: 23px;
  border-radius: 23px;
  padding: 4px 10px 10px 10px;
  position: relative;
}
.original-charm__title__sub::before, .original-charm__title__sub::after {
  position: absolute;
  top: 100%;
  left: 0px;
  right: 0;
  height: 0;
  width: 0;
  border: solid transparent;
  content: "";
  margin: auto;
}
.original-charm__title__sub:before {
  border-color: transparent;
  border-top-color: #89703d;
  border-width: 10px;
}
.original-charm__title__sub:after {
  border-color: transparent;
  border-top-color: #fff;
  border-width: 8px;
}
.original-charm__title__sub .f-l {
  font-size: 3rem;
}
.original-charm__title__main {
  font-size: 3.6rem;
  text-align: center;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 600;
  color: #222;
  letter-spacing: 0.2em;
  text-indent: 0.2em;
  line-height: 1;
  margin-bottom: 14px;
}
.original-charm__title__main .f-s {
  font-size: 2.8rem;
}
.original-charm__title__en {
  color: #a8863f;
  font-size: 1.2rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.3em;
  text-indent: -0.3em;
}

.original-silica {
  margin-bottom: 70px;
}

.original-silica__ex {
  width: 700px;
  margin: 0 auto;
  background-color: #42bad7;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -o-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
  padding: 60px;
  margin-bottom: 30px;
  position: relative;
  color: #fff;
}
.original-silica__ex::before, .original-silica__ex::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}
.original-silica__ex::before {
  bottom: -30px;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 35px solid transparent;
  border-left: 35px solid transparent;
  border-top: 30px solid #42bad7;
  border-bottom: 0;
}
.original-silica__ex::after {
  background-color: rgba(255, 255, 255, 0.1);
  width: 150%;
  height: 150px;
  top: 0;
  bottom: 0;
  left: -25%;
  right: auto;
  transform: rotate(20deg);
}

.original-silica__ex__title {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 2.8rem;
  letter-spacing: 0.2em;
  text-indent: -0.2em;
  text-align: center;
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 40px;
  position: relative;
}
.original-silica__ex__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -20px;
  margin: auto;
  border-bottom: 2px dotted #fff;
  width: 120px;
  height: 2px;
}
.original-silica__ex__title .em {
  color: #ffec4a;
}

.original-silica__ex__text {
  line-height: 1.7;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-indent: -0.1em;
  margin-bottom: 14px;
}

.original-silica__ex__notes {
  font-size: 1.3rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.1em;
  text-indent: -0.1em;
}

.original-silica__data {
  background-image: url(../img/about/original/silica-bg01.jpg);
  background-size: cover;
  text-align: center;
  padding: 100px 60px 60px 60px;
  margin-top: -67px;
  position: relative;
  z-index: -2;
}
.original-silica__data__title {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 600;
  font-size: 2.2rem;
  letter-spacing: 0.15em;
  text-indent: -0.15em;
}
.original-silica__data__title .f-l {
  font-size: 2.8rem;
}
.original-silica__data__title .line {
  position: relative;
  z-index: auto;
}
.original-silica__data__title .line::before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  margin: auto;
  background-color: #ffec4a;
  width: 100%;
  height: 15px;
  z-index: -1;
}
.original-silica__data__notes {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-indent: -0.1em;
  margin-bottom: 36px;
}
.original-silica__data__img {
  margin-bottom: 40px;
  display: block;
}
.original-silica__data__notes02 {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 600;
}
.original-silica__data__notes02 .inner {
  background-color: #fff;
  padding: 5px 24px;
  letter-spacing: 0.15em;
  text-indent: -0.15em;
}

.original-box {
  margin-bottom: 50px;
}

.original-box__title {
  margin-bottom: 46px;
  color: #89703d;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 600;
  text-align: center;
  font-size: 2.6rem;
  letter-spacing: 4px;
}

/* =====================================================
 _fax
===================================================== */
.fax-maintext {
  margin-bottom: 20px;
}

.fax-download {
  margin-bottom: 30px;
  padding: 20px 40px;
  background: #F4F4F4;
}
.fax-download__list {
  position: relative;
  padding: 5px 0 5px 30px;
}
.fax-download__list::before {
  position: absolute;
  content: "";
  top: 7px;
  left: 0;
  width: 24px;
  height: 24px;
  background-image: url(../img/common/icon_pdf.svg);
  background-size: 24px;
  background-repeat: no-repeat;
}
.fax-download__list a {
  text-decoration: underline;
  margin-left: 10px;
}
.fax-download__list a:hover {
  color: #000;
  text-decoration: none;
}

.fax-number {
  text-align: center;
  border: 4px solid #DDD;
  margin-bottom: 30px;
  padding: 10px 20px;
}
.fax-number__ttl {
  color: #FFF;
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  display: inline-block;
  margin-right: 20px;
  padding: 10px 40px;
  background: #fe9900;
}
.fax-number__number {
  color: #CE0000;
  font-size: 4rem;
  font-weight: 600;
  line-height: 1.2;
  display: inline-block;
  vertical-align: middle;
  margin-top: -10px;
}

/* =====================================================

 _paystate

===================================================== */
.paystate-wrap {
  margin-bottom: 80px;
}
.paystate-wrap dl:not([class]) {
  list-style: none;
  margin-bottom: 15px;
}
.paystate-wrap dl.notice-wrap {
  margin-bottom: 40px;
  padding: 20px 30px;
  background: #ffeeee;
}
.paystate-wrap dl.notice-wrap .paystate-wrap__ttl {
  color: #CE0000;
}
.paystate-wrap__ttl {
  margin-bottom: 5px;
  margin-left: -0.5em;
}
.paystate-wrap__notice__item {
  padding-left: 15px;
  position: relative;
}
.paystate-wrap__notice__item::before {
  position: absolute;
  content: "";
  top: 10px;
  left: 0;
  width: 8px;
  height: 8px;
  background: #000;
  border-radius: 50%;
}
.paystate-wrap__notice-kome__item {
  padding-left: 1em;
  position: relative;
}
.paystate-wrap__notice-kome__item::before {
  position: absolute;
  content: "※";
  top: 0;
  left: 0;
}
.paystate-wrap .credit-card {
  margin: 8px 0;
}
.paystate-wrap .bank-info-wrap {
  border: 2px dotted #CCC;
  margin: 10px 0;
  padding: 15px 40px;
}
.paystate-wrap .receipt-wrap__ttl {
  position: relative;
  margin-bottom: 15px;
  padding: 8px 8px 8px 45px;
  background-color: #e3efd6;
  color: #000;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 600;
}
.paystate-wrap .receipt-wrap__ttl::before {
  content: "";
  position: absolute;
  top: 13px;
  left: 20px;
  width: 15px;
  height: 15px;
  border: 4px solid #70b129;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  line-height: 1.5;
}
.paystate-wrap .receipt-wrap__list {
  padding-left: 1em;
  position: relative;
}
.paystate-wrap .receipt-wrap__list::before {
  position: absolute;
  content: "";
  top: 10px;
  left: 0;
  width: 8px;
  height: 8px;
  background: #000;
  border-radius: 50%;
}
.paystate-wrap .receipt-wrap__list:not(:last-child) {
  margin-bottom: 8px;
}

.delivery-wrap {
  margin-bottom: 80px;
}
.delivery-wrap__time {
  background: #EEE;
  margin-bottom: 40px;
  padding: 8px 20px;
}
.delivery-wrap .cancel-wrap div:not(:last-child) {
  margin-bottom: 20px;
}
.delivery-wrap .cancel-wrap__ttl {
  padding-left: 1em;
  position: relative;
}
.delivery-wrap .cancel-wrap__ttl::before {
  position: absolute;
  content: "";
  top: 10px;
  left: 2px;
  width: 8px;
  height: 8px;
  background: #000;
  border-radius: 50%;
}

.paystate__paypay-block {
  border: 2px dotted #CCC;
  margin: 10px 0 20px;
  padding: 20px 20px;
}
.paystate__paypay-block__item {
  text-indent: -2.5em;
  padding-left: 2.5em;
  margin-bottom: 10px;
}

/* =====================================================

 _marit

===================================================== */
.merit-wrap:not(:last-of-type) {
  margin-bottom: 70px;
}
.merit-wrap__list {
  margin-bottom: 40px;
}
.merit-wrap__list dt {
  margin-bottom: 20px;
  color: #fe9900;
  font-size: 2.4rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
}
.merit-wrap__list dt span {
  display: inline-block;
  border-bottom: 2px dotted #fe9900;
}
.merit-wrap__list dd ul {
  list-style: none;
  counter-reset: num;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 0 -20px;
}
.merit-wrap__list dd ul li {
  position: relative;
  width: calc((99.9% - 80px) / 4);
  margin: 0 0 0 20px;
  padding: 145px 5px 20px;
  background-repeat: no-repeat;
  border: 5px solid #ffdca8;
}
.merit-wrap__list dd ul li:nth-child(1) {
  background-image: url(../img/merit/gift-color.svg);
  background-position: top 30px left 58%;
  background-size: 92px auto;
}
.merit-wrap__list dd ul li:nth-child(2) {
  background-image: url(../img/merit/coins.svg);
  background-position: top 50px left 58%;
  background-size: 91px auto;
}
.merit-wrap__list dd ul li:nth-child(3) {
  background-image: url(../img/merit/shopping.png);
  background-position: top 40px left 60%;
  background-size: 104px auto;
}
.merit-wrap__list dd ul li:nth-child(4) {
  background-image: url(../img/merit/onlineshopping.png);
  background-position: top 20px center;
  background-size: 120px auto;
}
.merit-wrap__list dd ul li::before {
  content: counter(num);
  counter-increment: num;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: -5px;
  left: 12px;
  width: 45px;
  height: 47px;
  background-color: #fe9900;
  border: 23px solid transparent;
  border-bottom: 7px solid #fff;
  border-top: none;
  color: #fff;
  font-size: 2.2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.merit-wrap__list dd ul li p {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
  letter-spacing: -0.02em;
}
.merit-wrap__list02 {
  counter-reset: num;
  margin-bottom: 40px;
}
.merit-wrap__list02 > div:not(:last-child) {
  margin-bottom: 40px;
}
.merit-wrap__list02 > div > dt {
  position: relative;
  margin-bottom: 10px;
  padding: 5px 5px 5px 50px;
  background-color: #fe9900;
  color: #fff;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.merit-wrap__list02 > div > dt::before {
  content: counter(num);
  counter-increment: num;
  position: absolute;
  top: 10px;
  left: 15px;
  width: 20px;
  height: 20px;
  background-color: #fff;
  color: #fe9900;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
  line-height: 20px;
}
.merit-wrap__list02 > div > dd dl div {
  margin-top: 20px;
}
.merit-wrap__list02 > div > dd dl div:not(:last-child) {
  margin-bottom: 20px;
}
.merit-wrap__list02 > div > dd dl div dt {
  position: relative;
  margin-bottom: 10px;
  padding-left: 20px;
  color: #012d9b;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: bold;
}
.merit-wrap__list02 > div > dd dl div dt::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 12px;
  height: 12px;
  border: 3px solid #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.merit-wrap__note-box {
  margin-bottom: 30px;
  padding: 30px 45px 45px;
  background-color: #fffae1;
}
.merit-wrap__note-box__title {
  position: relative;
  margin-bottom: 10px;
  padding-left: 32px;
  color: #ce0000;
  font-size: 2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.merit-wrap__note-box__title::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 24px;
  height: 21px;
  background-image: url(../img/common/icon_notice_dark.svg);
  background-size: 100%;
}
.merit-wrap__list-circle {
  list-style: none;
}
.merit-wrap__list-circle li {
  position: relative;
  padding-left: 30px;
}
.merit-wrap__list-circle li:not(:last-child) {
  margin-bottom: 10px;
}
.merit-wrap__list-circle li::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 5px;
  width: 10px;
  height: 10px;
  background-color: #fe9900;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.merit-wrap__list-circle li .highlighter {
  background: linear-gradient(transparent 60%, #faff6f 60%);
}
.merit-wrap__contact {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 740px;
  margin: 0 auto;
  border: 5px solid #addceb;
}
.merit-wrap__contact dt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 300px;
  background-color: #addceb;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
}
.merit-wrap__contact dt span {
  display: block;
  color: #1794af;
  font-size: 1.4rem;
  font-family: "Overpass", sans-serif;
}
.merit-wrap__contact dd {
  width: calc(100% - 300px);
  padding: 30px 40px;
  background-color: #f1f7f9;
}
.merit-wrap__contact dd .tel {
  margin-bottom: 15px;
  padding-left: 62px;
  color: #012d9b;
  background-image: url(../img/common/icon_freedial_blue.svg);
  background-position: top 3px left;
  background-repeat: no-repeat;
  background-size: 53px auto;
  font-size: 5rem;
  font-family: adobe-garamond-pro, serif;
  line-height: 0.75;
  letter-spacing: -0.02em;
}
.merit-wrap__contact dd .btn {
  display: block;
  padding: 10px;
  background-color: #1794af;
  border: 2px solid #1794af;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-size: 1.8rem;
  text-align: center;
  letter-spacing: 0.075em;
}
.merit-wrap__contact dd .btn span {
  display: inline-block;
  padding-left: 40px;
  background-image: url(../img/common/icon_email_white.svg);
  background-repeat: no-repeat;
  background-position: top 5px left;
  background-size: 26px;
  transition: 0.3s;
}
.merit-wrap__contact dd .btn:hover {
  background-color: transparent;
  color: #1794af;
}
.merit-wrap__contact dd .btn:hover span {
  background-image: url(../img/common/icon_email.svg);
}

.rakuten-flow__wrap {
  border: 2px dotted #CCC;
  margin: 10px 0 20px;
  padding: 20px 20px 30px;
}

.rakuten-flow {
  margin-bottom: 15px;
}
.rakuten-flow__item {
  font-size: 1.8rem;
  margin-bottom: 10px;
  text-indent: -2.5em;
  padding-left: 2.5em;
}

/* =====================================================

 _regular

===================================================== */
.regular-wrap__block:not(:last-child) {
  margin-bottom: 45px;
}
.regular-wrap__intro-img01 {
  margin-bottom: 20px;
}
.regular-wrap__intro-img02 {
  margin-bottom: 20px;
  padding: 0 30px;
}
.regular-wrap__intro-link {
  margin-bottom: 45px;
  font-size: 2.6rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.075em;
}
.regular-wrap__intro-link__wrap {
  display: inline-block;
  padding-left: 45px;
  background-image: url(../img/regular/arrow.png);
  background-repeat: no-repeat;
  background-position: left center;
  color: #000;
}
.regular-wrap__intro-link__wrap__em {
  color: #ce0000;
}
.regular-wrap__intro-box {
  margin-bottom: 50px;
  padding: 40px;
  background-color: #f1f7f9;
}
.regular-wrap__intro-box__sub {
  margin-bottom: 15px;
  text-align: center;
}
.regular-wrap__intro-box__sub span {
  display: inline-block;
  position: relative;
  padding: 0 15px;
  color: #fe9900;
  font-size: 2.4rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
}
.regular-wrap__intro-box__sub span::before, .regular-wrap__intro-box__sub span::after {
  content: "";
  position: absolute;
  top: 8px;
  width: 2px;
  height: 26px;
  background-color: #fe9900;
}
.regular-wrap__intro-box__sub span::before {
  left: 0;
  transform: rotate(-35deg);
}
.regular-wrap__intro-box__sub span::after {
  right: 0;
  transform: rotate(35deg);
}
.regular-wrap__intro-box__title {
  margin-bottom: 40px;
  text-align: center;
}
.regular-wrap__intro-box__title span {
  display: inline-block;
  padding-top: 50px;
  background: linear-gradient(transparent 85%, #faff6f 85%), url(../img/regular/pagetitle_icon.svg) top no-repeat;
  background-size: auto, 97px auto;
  color: #012d9b;
  font-size: 3.2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  letter-spacing: 0.05em;
}
.regular-wrap__intro-box__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: -20px 0 20px -15px;
}
.regular-wrap__intro-box__list li {
  max-width: 250px;
  width: 100%;
  margin: 20px 0 0 15px;
  padding: 20px 10px;
  background-color: #1794af;
  -moz-border-radius: 15px;
  -webkit-border-radius: 15px;
  -o-border-radius: 15px;
  -ms-border-radius: 15px;
  border-radius: 15px;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  font-size: 1.8rem;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0em;
}
.regular-wrap__intro-box__list li span {
  font-size: 1.3rem;
}
.regular-wrap__intro-box__kome {
  padding-left: 2.8em;
  text-indent: -2.8em;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  letter-spacing: 0.05em;
}
.regular-wrap__schedule-box {
  padding: 40px 40px 50px;
  border: 3px solid #1794af;
}
.regular-wrap__schedule-box__title {
  margin-bottom: 30px;
  padding: 20px 20px 10px;
  background-color: #1794af;
  color: #fff;
  font-size: 2rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.05em;
}
.regular-wrap__schedule-box__title > span {
  font-size: 2.8rem;
}
.regular-wrap__schedule-box__title > span span {
  display: inline-block;
  position: relative;
  padding-top: 7px;
}
.regular-wrap__schedule-box__title > span span::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 8px;
  height: 8px;
  margin: 0 auto;
  background-color: #fff;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.regular-wrap__schedule-box__list {
  max-width: 710px;
  margin: 0 auto;
}
.regular-wrap__schedule-box__list > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.regular-wrap__schedule-box__list > div:not(:last-child) {
  margin-bottom: 30px;
}
.regular-wrap__schedule-box__list > div dt {
  width: 35%;
  margin-right: 10%;
}
.regular-wrap__schedule-box__list > div dt figure {
  text-align: center;
}
.regular-wrap__schedule-box__list > div dt figure img {
  margin-bottom: 6px;
}
.regular-wrap__schedule-box__list > div dt figure figcaption {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  padding: 8px;
  background-color: #1794af;
  color: #fff;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: left;
  line-height: 1.8;
}
.regular-wrap__schedule-box__list > div dt figure figcaption::after {
  content: "";
  position: absolute;
  top: 0;
  right: -13px;
  bottom: 0;
  width: 13px;
  height: 24px;
  margin: auto 0;
  border: 12px solid transparent;
  border-left: 13px solid #1794af;
  border-right: none;
}
.regular-wrap__schedule-box__list > div dd {
  width: 55%;
}
.regular-wrap__list-content__title {
  position: relative;
  margin-bottom: 10px;
  padding: 6px 25px;
  color: #fff;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.orange .regular-wrap__list-content__title {
  background-color: #fe9900;
}
.green .regular-wrap__list-content__title {
  background-color: #2b7905;
}
.regular-wrap__list-content__title::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 14px;
  height: 3px;
  margin: auto 0;
  background-color: #fff;
}
.regular-wrap__list-content__box {
  padding: 30px;
}
.orange .regular-wrap__list-content__box {
  background-color: #fef7ed;
}
.green .regular-wrap__list-content__box {
  background-color: #eff9ea;
}
.regular-wrap__list-content__list01 > div:not(:last-child) {
  margin-bottom: 20px;
}
.regular-wrap__list-content__list01 > div dt {
  margin-bottom: 10px;
  padding-left: 18px;
  font-size: 1.8rem;
  position: relative;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
}
.regular-wrap__list-content__list01 > div dt::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  width: 10px;
  height: 10px;
}
.orange .regular-wrap__list-content__list01 > div dt::before {
  background-color: #fe9900;
}
.green .regular-wrap__list-content__list01 > div dt::before {
  background-color: #2b7905;
}
.orange .regular-wrap__list-content__list01 > div dt {
  color: #fe9900;
}
.green .regular-wrap__list-content__list01 > div dt {
  color: #2b7905;
}
.regular-wrap__list-content__list01 > div dd {
  padding-left: 18px;
}
.regular-wrap__list-content__list02 > div:not(:last-child) {
  margin-bottom: 50px;
}
.regular-wrap__list-content__list02 > div > dt {
  margin-bottom: 25px;
  padding-left: 18px;
  position: relative;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
}
.regular-wrap__list-content__list02 > div > dt::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 10px;
  height: 10px;
}
.orange .regular-wrap__list-content__list02 > div > dt::before {
  background-color: #fe9900;
}
.green .regular-wrap__list-content__list02 > div > dt::before {
  background-color: #2b7905;
}
.orange .regular-wrap__list-content__list02 > div > dt {
  color: #fe9900;
}
.green .regular-wrap__list-content__list02 > div > dt {
  color: #2b7905;
}
.regular-wrap__list-content__list02 > div > dd dl {
  position: relative;
  margin-bottom: 50px;
}
.regular-wrap__list-content__list02 > div > dd dl::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -32px;
  left: 0;
  width: 28px;
  height: 11px;
  margin: 0 auto;
  border: 14px solid transparent;
  border-top: 11px solid #fe9900;
  border-bottom: none;
}
.regular-wrap__list-content__list02 > div > dd dl div:not(:last-child) {
  margin-bottom: 20px;
}
.regular-wrap__list-content__list02 > div > dd dl div dt {
  width: 70px;
  margin-bottom: 5px;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
}
.green .regular-wrap__list-content__list02 > div > dd dl div dt {
  background-color: #2b7905;
}
.regular-wrap__list-content__list02 > div > dd dl div dd ul {
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.regular-wrap__list-content__list02 > div > dd dl div dd ul li {
  position: relative;
  padding: 8px 20px;
  background-color: #fff;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.regular-wrap__list-content__list02 > div > dd dl div dd ul li:not(:last-child) {
  margin-right: 28px;
}
.regular-wrap__list-content__list02 > div > dd dl div dd ul li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 0;
  right: -18px;
  bottom: 0;
  width: 8px;
  height: 11px;
  margin: auto 0;
  border: 5px solid transparent;
  border-left: 8px solid #fe9900;
  border-right: none;
}
.regular-wrap__list-content__list02 > div > dd dl div dd ul li span {
  font-weight: 700;
}
.regular-wrap__list-content__list02 > div > dd dl div dd ul li span.cl-blue {
  color: #1794af;
}
.regular-wrap__list-content__list02 > div > dd dl div dd ul li span.cl-red {
  color: #ce0000;
}
.regular-wrap__list-content__list02__text {
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
}
.regular-wrap__list-content__list02__text span.cl-red {
  color: #ce0000;
}
.regular-wrap__list-content__list02__text span.fs20 {
  font-size: 2rem;
}
.regular-wrap__list-content__list02__text span.highlighter {
  background: linear-gradient(transparent 60%, #fad12b 60%);
}
.regular-wrap__list-content__list02__banner {
  display: block;
  max-width: 550px;
  margin: 30px auto;
}
.regular-wrap__list-content__text-box__title {
  padding: 10px;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  text-align: center;
}
.green .regular-wrap__list-content__text-box__title {
  background-color: #2b7905;
}
.regular-wrap__list-content__text-box__body {
  padding: 25px 40px 40px;
  background-color: #fff;
}
.regular-wrap__list-content__text-box__body > dl {
  margin-bottom: 25px;
}
.regular-wrap__list-content__text-box__body > dl > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.regular-wrap__list-content__text-box__body > dl > div:not(:last-child) {
  margin-bottom: 13px;
}
.regular-wrap__list-content__text-box__body > dl > div dt,
.regular-wrap__list-content__text-box__body > dl > div dd {
  padding: 15px 40px;
  font-size: 1.8rem;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
}
.regular-wrap__list-content__text-box__body > dl > div dt {
  position: relative;
  width: 38%;
  margin-right: 53px;
}
.regular-wrap__list-content__text-box__body > dl > div dt::before {
  content: "";
  position: absolute;
  top: 0;
  right: -34px;
  bottom: 0;
  width: 14px;
  height: 21px;
  margin: auto 0;
  border: 10px solid transparent;
  border-left: 14px solid #fe9900;
  border-right: none;
}
.green .regular-wrap__list-content__text-box__body > dl > div dt {
  background-color: #d1ecc4;
  color: #2b7905;
}
.regular-wrap__list-content__text-box__body > dl > div dd {
  width: 45%;
  background-color: #eee;
}
.regular-wrap__list-content__text-box__body > dl > div dd span {
  color: #ce0000;
}
.regular-wrap__list-content__text-box__body > ul {
  list-style: none;
}
.regular-wrap__list-content__text-box__body > ul li {
  position: relative;
  padding-left: 22px;
}
.regular-wrap__list-content__text-box__body > ul li:not(:last-child) {
  margin-bottom: 15px;
}
.regular-wrap__list-content__text-box__body > ul li::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 5px;
  width: 10px;
  height: 10px;
  background-color: #2b7905;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.regular-wrap__content-box__title {
  margin-bottom: 8px;
  padding: 5px 25px;
  background-color: #1794af;
  color: #fff;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.regular-wrap__content-box__body {
  padding: 15px 30px;
  background-color: #e9f5f7;
}
.regular-wrap__content-box__body ul {
  list-style: none;
}
.regular-wrap__content-box__body ul li {
  position: relative;
  padding-left: 16px;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.regular-wrap__content-box__body ul li::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 8px;
  height: 8px;
  background-color: #1794af;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.regular-wrap__content-box__body ul li:not(:last-child) {
  margin-bottom: 12px;
}
.regular-wrap__list-box {
  padding: 20px 40px;
  background-color: #f8f8f8;
  list-style: none;
}
.regular-wrap__list-box li {
  position: relative;
  padding-left: 16px;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}
.regular-wrap__list-box li::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 8px;
  height: 8px;
  background-color: #012d9b;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  -o-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
}
.regular-wrap__list-box li:not(:last-child) {
  margin-bottom: 8px;
}

/* =====================================================

 _forget

===================================================== */
.forget-maintext {
  margin-bottom: 30px;
}
@media screen and (max-width: 599px) {
  .forget-maintext {
    margin-bottom: 20px;
  }
}

.forget__new-password {
  margin: 0 auto;
  background-color: #fff;
  padding: 10px 10px 10px 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 400px;
  font-weight: 600;
}
.forget__new-password__title {
  font-size: 1.8rem;
}
.forget__new-password__data {
  color: #ce0000;
  font-size: 2.4rem;
}

.forget .settle-send-box__text {
  color: #1794af;
}/*# sourceMappingURL=style.css.map */