@charset "UTF-8";
/* -----------------------------------------------------------------------------
reset
----------------------------------------------------------------------------- */
/* http://meyerweb.com/eric/tools/css/reset/
  v2.0 | 20110126
  License: none (public domain)
*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
  display: block;
}
body {
  line-height: 1;
}
ol,ul {
  list-style: none;
}
blockquote,q {
  quotes: none;
}
blockquote:before,blockquote:after {
  content: "";
  content: none;
}
q:before,q:after {
  content: "";
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/* -----------------------------------------------------------------------------
basic
----------------------------------------------------------------------------- */
*,*:before,*:after {
  box-sizing: border-box;
}
html {
  box-sizing: border-box;
  font-size: 62.5%;
}
body {
  background-color: #f2edda;
  background-image: url("/excludes/dcm/fo/img/cmn/bg/site_bg_texture.png");
  background-position: center top;
  background-repeat: repeat;
  font-family: "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-size: 1.8rem;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  body {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column;
    flex-flow: column;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.5rem;
  }
}
a {
  color: #42120a;
  text-decoration: underline;
}
a:hover {
  text-decoration: none;
}
table {
  empty-cells: show;
  table-layout: auto;
}
input,button,select,textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  input,button,select,textarea {
    font-size: 1.6rem;
  }
}
:placeholder-shown {
  color: #c6b8b5;
}
/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder {
  color: #c6b8b5;
}
::-moz-placeholder {
  opacity: 1;
}
/* IE 10+ */
:-ms-input-placeholder {
  color: #c6b8b5;
}
/* テキストボックスフォーカス時にplaceholderを消す */
input:focus::-webkit-input-placeholder {
  color: transparent;
}
input:focus:-moz-placeholder {
  color: transparent;
}
input:focus::-moz-placeholder {
  color: transparent;
}
button {
  cursor: pointer;
}
pre {
  white-space: pre-wrap;
  word-wrap: break-word;
}
/* -----------------------------------------------------------------------------
fonts
----------------------------------------------------------------------------- */
/* fontColor */
.fontColor_white {
  color: #fff !important;
}
.fontColor_black {
  color: #000 !important;
}
.fontColor_red {
  color: #9e332b !important;
}
/* fontSize */
.fontSize_xs {
  font-size: 1.2rem !important;
}
@media screen and (max-width: 767px) {
  .fontSize_xs {
    font-size: 1.1rem !important;
  }
}
.fontSize_s {
  font-size: 1.3rem !important;
}
@media screen and (max-width: 767px) {
  .fontSize_s {
    font-size: 1.2rem !important;
  }
}
.fontSize_m {
  font-size: 1.5rem !important;
}
@media screen and (max-width: 767px) {
  .fontSize_m {
    font-size: 1.4rem !important;
  }
}
.fontSize_l {
  font-size: 2.4rem !important;
}
@media screen and (max-width: 767px) {
  .fontSize_l {
    font-size: 2.2rem !important;
  }
}
.fontSize_xl {
  font-size: 3.0rem !important;
}
@media screen and (max-width: 767px) {
  .fontSize_xl {
    font-size: 2.2rem !important;
  }
}
/* fontWeight */
.fontWeight_bold {
  font-weight: bold;
}
/* word-break */
.word_break_all {
  word-break: break-all;
}
/* line-height */
.lh-wide {
  line-height: 1.778;
}
/* -----------------------------------------------------------------------------
Backgrounds
----------------------------------------------------------------------------- */
.bgWhite {
  background-color: #fff;
}
/* texture */
.texture_wall {
  background-image: url(/img/common/texture_shikkui.jpg);
  background-position: center;
  background-repeat: repeat;
  background-size: 2000px auto;
}
/* -----------------------------------------------------------------------------
Spacing
----------------------------------------------------------------------------- */
/* Block Spacing */
.mb_xs {
  margin-bottom: 10px !important;
}
.mt_xs {
  margin-top: 10px !important;
}
.mb_s {
  margin-bottom: 25px !important;
}
.mt_s {
  margin-top: 25px !important;
}
.mb_m {
  margin-bottom: 50px !important;
}
.mt_m {
  margin-top: 50px !important;
}
.mb_l {
  margin-bottom: 75px !important;
}
.mt_l {
  margin-top: 75px !important;
}
.mb_xl {
  margin-bottom: 100px !important;
}
.mt_xl {
  margin-top: 100px !important;
}
.mb_xxl {
  margin-bottom: 125px !important;
}
.mt_xxl {
  margin-top: 125px !important;
}
.mb_xxxl {
  margin-bottom: 150px !important;
}
.mt_xxxl {
  margin-top: 150px !important;
}
.ml_xs {
  margin-left: 10px !important;
}
.mr_xs {
  margin-right: 10px !important;
}
.ml_s {
  margin-left: 15px !important;
}
.mr_s {
  margin-right: 15px !important;
}
@media screen and (max-width: 767px) {
  .sp_mb_xs {
    margin-bottom: 5px !important;
  }
  .sp_mt_xs {
    margin-top: 5px !important;
  }
  .sp_mb_s {
    margin-bottom: 12.5px !important;
  }
  .sp_mt_s {
    margin-top: 12.5px !important;
  }
  .sp_mb_m {
    margin-bottom: 25px !important;
  }
  .sp_mt_m {
    margin-top: 25px !important;
  }
  .sp_mb_l {
    margin-bottom: 37.5px !important;
  }
  .sp_mt_l {
    margin-top: 37.5px !important;
  }
  .sp_mb_xl {
    margin-bottom: 50px !important;
  }
  .sp_mt_xl {
    margin-top: 50px !important;
  }
  .sp_mb_xxl {
    margin-bottom: 62.5px !important;
  }
  .sp_mt_xxl {
    margin-top: 62.5px !important;
  }
  .sp_mb_xxxl {
    margin-bottom: 75px !important;
  }
  .sp_mt_xxxl {
    margin-top: 75px !important;
  }
}
.mb_0 {
  margin-bottom: 0 !important;
}
.mt_0 {
  margin-top: 0 !important;
}
.mb_5 {
  margin-bottom: 5px !important;
}
.mt_5 {
  margin-top: 5px !important;
}
.mb_10 {
  margin-bottom: 10px !important;
}
.mt_10 {
  margin-top: 10px !important;
}
.mb_15 {
  margin-bottom: 15px !important;
}
.mt_15 {
  margin-top: 15px !important;
}
.mb_20 {
  margin-bottom: 20px !important;
}
.mt_20 {
  margin-top: 20px !important;
}
.mb_25 {
  margin-bottom: 25px !important;
}
.mt_25 {
  margin-top: 25px !important;
}
.mb_30 {
  margin-bottom: 30px !important;
}
.mt_30 {
  margin-top: 30px !important;
}
.mb_35 {
  margin-bottom: 35px !important;
}
.mt_35 {
  margin-top: 35px !important;
}
.mb_40 {
  margin-bottom: 40px !important;
}
.mt_40 {
  margin-top: 40px !important;
}
.mb_45 {
  margin-bottom: 45px !important;
}
.mt_45 {
  margin-top: 45px !important;
}
.mb_50 {
  margin-bottom: 50px !important;
}
.mt_50 {
  margin-top: 50px !important;
}
.mb_55 {
  margin-bottom: 55px !important;
}
.mt_55 {
  margin-top: 55px !important;
}
.mb_60 {
  margin-bottom: 60px !important;
}
.mt_60 {
  margin-top: 60px !important;
}
@media screen and (max-width: 767px) {
  .sp_mb_0 {
    margin-bottom: 0 !important;
  }
  .sp_mt_0 {
    margin-top: 0 !important;
  }
  .sp_mb_5 {
    margin-bottom: 5px !important;
  }
  .sp_mt_5 {
    margin-top: 5px !important;
  }
  .sp_mb_10 {
    margin-bottom: 10px !important;
  }
  .sp_mt_10 {
    margin-top: 10px !important;
  }
  .sp_mb_15 {
    margin-bottom: 15px !important;
  }
  .sp_mt_15 {
    margin-top: 15px !important;
  }
  .sp_mb_20 {
    margin-bottom: 20px !important;
  }
  .sp_mt_20 {
    margin-top: 20px !important;
  }
  .sp_mb_25 {
    margin-bottom: 25px !important;
  }
  .sp_mt_25 {
    margin-top: 25px !important;
  }
  .sp_mb_30 {
    margin-bottom: 30px !important;
  }
  .sp_mt_30 {
    margin-top: 30px !important;
  }
  .sp_mb_35 {
    margin-bottom: 35px !important;
  }
  .sp_mt_35 {
    margin-top: 35px !important;
  }
  .sp_mb_40 {
    margin-bottom: 40px !important;
  }
  .sp_mt_40 {
    margin-top: 40px !important;
  }
  .sp_mb_45 {
    margin-bottom: 45px !important;
  }
  .sp_mt_45 {
    margin-top: 45px !important;
  }
  .sp_mb_50 {
    margin-bottom: 50px !important;
  }
  .sp_mt_50 {
    margin-top: 50px !important;
  }
  .sp_mb_55 {
    margin-bottom: 55px !important;
  }
  .sp_mt_55 {
    margin-top: 55px !important;
  }
  .sp_mb_60 {
    margin-bottom: 60px !important;
  }
  .sp_mt_60 {
    margin-top: 60px !important;
  }
}
/* Alignment */
.align_left {
  text-align: left !important;
}
.align_center {
  text-align: center !important;
}
.align_right {
  text-align: right !important;
}
.vertical_align_top {
  vertical-align: top !important;
}
.vertical_align_middle {
  vertical-align: middle !important;
}
@media screen and (max-width: 767px) {
  .sp_align_left {
    text-align: left !important;
  }
  .sp_align_center {
    text-align: center !important;
  }
  .sp_align_right {
    text-align: right !important;
  }
}
/* -----------------------------------------------------------------------------
Display
----------------------------------------------------------------------------- */
.display_none {
  display: none !important;
}
.inline-block {
  display: inline-block !important;
}
@media screen and (min-width: 768px) {
  .sp_only {
    display: none !important;
  }
  .pc_inline-block {
    display: inline-block !important;
  }
}
@media screen and (max-width: 767px) {
  .pc_only {
    display: none !important;
  }
  .sp_block {
    display: block !important;
  }
  .sp_inline-block {
    display: inline-block !important;
  }
}
.overflow_hidden {
  overflow: hidden;
}
/* cursor */
.cursor-pointer {
  cursor: pointer;
}
/* -----------------------------------------------------------------------------
Img
----------------------------------------------------------------------------- */
img {
  height: auto;
  max-width: 100%;
  vertical-align: top;
}
/* -----------------------------------------------------------------------------
Float
----------------------------------------------------------------------------- */
.clearfix::after {
  clear: both;
  content: "";
  display: block;
}
/* -----------------------------------------------------------------------------
Position
----------------------------------------------------------------------------- */
.position_relative {
  position: relative;
}
/* -----------------------------------------------------------------------------
flex
----------------------------------------------------------------------------- */
.display-flex {
  display: -webkit-flex !important;
  display: flex !important;
}
.display-flex > * {
  min-width: 1%;
}
.flex-row {
  -webkit-flex-direction: row !important;
  flex-direction: row !important;
}
.flex-column {
  -webkit-flex-direction: column !important;
  flex-direction: column !important;
}
.flex-column-reverse {
  -webkit-flex-direction: column-reverse !important;
  flex-direction: column-reverse !important;
}
.flex-wrap {
  -webkit-flex-wrap: wrap !important;
  flex-wrap: wrap !important;
}
.flex-nowrap {
  -webkit-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
}
.flex-fill {
  -webkit-flex: 1 1 auto !important;
  flex: 1 1 auto !important;
}
.flex-grow-0 {
  -webkit-flex-grow: 0 !important;
  flex-grow: 0 !important;
}
.flex-grow-1 {
  -webkit-flex-grow: 1 !important;
  flex-grow: 1 !important;
}
.flex-shrink-0 {
  -webkit-flex-shrink: 0 !important;
  flex-shrink: 0 !important;
}
.flex-shrink-1 {
  -webkit-flex-shrink: 1 !important;
  flex-shrink: 1 !important;
}
.justify-content-end {
  -webkit-justify-content: flex-end !important;
  justify-content: flex-end !important;
}
.justify-content-center {
  -webkit-justify-content: center !important;
  justify-content: center !important;
}
.justify-content-between {
  -webkit-justify-content: space-between !important;
  justify-content: space-between !important;
}
.align-items-end {
  -webkit-align-items: flex-end !important;
  align-items: flex-end !important;
}
.align-items-center {
  -webkit-align-items: center !important;
  align-items: center !important;
}
.flex-order0 {
  -webkit-order: 0 !important;
  order: 0 !important;
}
.flex-order1 {
  -webkit-order: 1 !important;
  order: 1 !important;
}
.flex-order2 {
  -webkit-order: 2 !important;
  order: 2 !important;
}
@media screen and (min-width: 768px) {
  .pc_display-flex {
    display: -webkit-flex !important;
    display: flex !important;
  }
  .pc_display-flex > * {
    min-width: 1%;
  }
  .pc_flex-row {
    -webkit-flex-direction: row !important;
    flex-direction: row !important;
  }
  .pc_flex-column {
    -webkit-flex-direction: column !important;
    flex-direction: column !important;
  }
  .pc_flex-column-reverse {
    -webkit-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .pc_flex-wrap {
    -webkit-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .pc_flex-nowrap {
    -webkit-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .pc_flex-fill {
    -webkit-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .pc_flex-grow-0 {
    -webkit-flex-grow: 0 !important;
    flex-grow: 0 !important;
  }
  .pc_flex-grow-1 {
    -webkit-flex-grow: 1 !important;
    flex-grow: 1 !important;
  }
  .pc_flex-shrink-0 {
    -webkit-flex-shrink: 0 !important;
    flex-shrink: 0 !important;
  }
  .pc_flex-shrink-1 {
    -webkit-flex-shrink: 1 !important;
    flex-shrink: 1 !important;
  }
  .pc_justify-content-end {
    -webkit-justify-content: flex-end !important;
    justify-content: flex-end !important;
  }
  .pc_justify-content-center {
    -webkit-justify-content: center !important;
    justify-content: center !important;
  }
  .pc_justify-content-between {
    -webkit-justify-content: space-between !important;
    justify-content: space-between !important;
  }
  .pc_align-items-end {
    -webkit-align-items: flex-end !important;
    align-items: flex-end !important;
  }
  .pc_align-items-center {
    -webkit-align-items: center !important;
    align-items: center !important;
  }
  .pc_flex-order0 {
    -webkit-order: 0 !important;
    order: 0 !important;
  }
  .pc_flex-order1 {
    -webkit-order: 1 !important;
    order: 1 !important;
  }
  .pc_flex-order2 {
    -webkit-order: 2 !important;
    order: 2 !important;
  }
}
@media screen and (max-width: 767px) {
  .sp_display-flex {
    display: -webkit-flex !important;
    display: flex !important;
  }
  .sp_display-flex > * {
    min-width: 1%;
  }
  .sp_flex-row {
    -webkit-flex-direction: row !important;
    flex-direction: row !important;
  }
  .sp_flex-column {
    -webkit-flex-direction: column !important;
    flex-direction: column !important;
  }
  .sp_flex-column-reverse {
    -webkit-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .sp_flex-wrap {
    -webkit-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .sp_flex-nowrap {
    -webkit-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .sp_flex-fill {
    -webkit-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .sp_flex-grow-0 {
    -webkit-flex-grow: 0 !important;
    flex-grow: 0 !important;
  }
  .sp_flex-grow-1 {
    -webkit-flex-grow: 1 !important;
    flex-grow: 1 !important;
  }
  .sp_flex-shrink-0 {
    -webkit-flex-shrink: 0 !important;
    flex-shrink: 0 !important;
  }
  .sp_flex-shrink-1 {
    -webkit-flex-shrink: 1 !important;
    flex-shrink: 1 !important;
  }
  .sp_justify-content-end {
    -webkit-justify-content: flex-end !important;
    justify-content: flex-end !important;
  }
  .sp_justify-content-center {
    -webkit-justify-content: center !important;
    justify-content: center !important;
  }
  .sp_justify-content-between {
    -webkit-justify-content: space-between !important;
    justify-content: space-between !important;
  }
  .sp_align-items-end {
    -webkit-align-items: flex-end !important;
    align-items: flex-end !important;
  }
  .sp_align-items-center {
    -webkit-align-items: center !important;
    align-items: center !important;
  }
  .sp_flex-order0 {
    -webkit-order: 0 !important;
    order: 0 !important;
  }
  .sp_flex-order1 {
    -webkit-order: 1 !important;
    order: 1 !important;
  }
  .sp_flex-order2 {
    -webkit-order: 2 !important;
    order: 2 !important;
  }
}
/* -----------------------------------------------------------------------------
images
----------------------------------------------------------------------------- */
.img-border {
  border: 1px solid #cacaca;
}
/* -----------------------------------------------------------------------------
icons
----------------------------------------------------------------------------- */
.link_faq {
  display: inline-block;
  padding-left: 20px;
  position: relative;
}
.link_faq::before {
  background-image: url("/excludes/dcm/fo/img/cmn/icon/icon_question.png");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 18px;
  left: 0;
  margin-top: -6px;
  position: absolute;
  top: 0.48em;
  width: 12px;
}
.link_guide {
  display: inline-block;
  padding-left: 25px;
  position: relative;
}
.link_guide::before {
  background-image: url("/excludes/dcm/fo/img/cmn/icon/icon_guide.png");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 20px;
  left: 0;
  margin-top: -4px;
  position: absolute;
  top: 0.48em;
  width: 17px;
}
.link_help {
  display: inline-block;
  padding-left: 28px;
  position: relative;
}
.link_help::before {
  background-color: #42120a;
  border-radius: 50%;
  content: "";
  height: 22px;
  left: 0;
  margin-top: -11px;
  position: absolute;
  top: 0.62em;
  width: 22px;
}
.link_help::after {
  background-image: url("/excludes/dcm/fo/img/cmn/icon/icon_question_w.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 14px;
  left: 11px;
  margin-left: -6px;
  margin-top: -7px;
  position: absolute;
  top: 0.62em;
  width: 12px;
}
.link_inquiry {
  display: inline-block;
  padding-left: 26px;
  position: relative;
}
.link_inquiry::before {
  background-image: url("/excludes/dcm/fo/img/cmn/icon/icon_inquiry.png");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 15px;
  left: 0;
  margin-top: -5px;
  position: absolute;
  top: 0.48em;
  width: 20px;
}
.link_summary {
  display: inline-block;
  padding-left: 26px;
  position: relative;
}
.link_summary::before {
  background-image: url("/excludes/dcm/fo/img/cmn/icon/icon_summary.png");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 20px;
  left: 0;
  margin-top: -7px;
  position: absolute;
  top: 0.48em;
  width: 20px;
}
@media screen and (min-width: 768px) {
  .findStoreUnitImg {
    max-width: 100px;
    margin-right: 50px;
  }
}
@media screen and (max-width: 767px) {
  .findStoreUnitImg {
    max-width: 70px;
  }
}
@media screen and (min-width: 768px) {
  .findStoreLink {
    font-size: 50%;
  }
}
@media screen and (max-width: 767px) {
  .findStoreLink {
    font-size: 80%;
  }
}
/* -----------------------------------------------------------------------------
buttons
----------------------------------------------------------------------------- */
.button {
  -webkit-align-items: stretch;
  align-items: stretch;
  background-color: #42120a;
  border: solid 1px #42120a;
  color: #fff;
  cursor: pointer;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-justify-content: center;
  justify-content: center;
  line-height: 1.2;
  padding: 0;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: all 0.2s ease-out;
}
.button.is-bRadius {
  border-radius: 4px !important;
}
.button.is-bRadius.is-link .button_text {
  min-height: 54px;
}
.button:hover {
  opacity: 0.8;
  text-decoration: none;
}
.button_text {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-justify-content: center;
  justify-content: center;
  padding: 12px 1em;
}
.button.is-link {
  background-color: #fff;
  border-radius: 4px;
  color: #42120a;
  font-size: 1.5rem;
  min-height: 45px;
}
@media screen and (max-width: 767px) {
  .button.is-link {
    font-size: 1.5rem;
  }
}
.button.is-link:hover {
  background-color: #f5f1e2;
  opacity: 1;
}
.button.is-link .button_text {
  min-height: 45px;
  padding: 3px 8px;
}
.button.is-link.has-arrow::before,.button.is-link.has-arrow::after {
  border-color: #42120a;
  border-style: solid;
  border-width: 0;
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  width: 10px;
}
@media screen and (max-width: 767px) {
  .button.is-link.has-arrow::before,.button.is-link.has-arrow::after {
    width: 8px;
  }
}
.button.is-link.has-arrow::before {
  border-top-width: 1px;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
  -webkit-transform-origin: right top;
  transform-origin: right top;
}
.button.is-link.has-arrow::after {
  border-bottom-width: 1px;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
}
.button.is-link.has-arrow:hover::before,.button.is-link.has-arrow:hover::after {
  border-color: #fff;
}
.button.is-link.is-top {
  border-radius: 0;
  font-size: 1.8rem;
  min-height: inherit;
  min-width: 300px;
}
@media screen and (max-width: 767px) {
  .button.is-link.is-top {
    font-size: 1.6rem;
    min-width: 234px;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .button.is-link.is-top {
    min-height: 42px;
  }
}
.button.is-link.is-top .button_icon {
  min-height: 54px;
  padding: 4px 8px;
}
@media screen and (max-width: 767px) {
  .button.is-link.is-top .button_icon {
    min-height: 40px;
    padding: 3px 8px;
  }
}
.button.is-link.is-top .button_icon::before {
  background: url("/excludes/dcm/fo/img/cmn/button/top_page.png") no-repeat center center;
  background-size: 82.6% auto;
  border-radius: 100%;
  content: "";
  display: inline-block;
  height: 46px;
  margin-left: -20px;
  margin-right: 12px;
  position: relative;
  vertical-align: middle;
  width: 46px;
}
@media screen and (max-width: 767px) {
  .button.is-link.is-top .button_icon::before {
    height: 34px;
    margin-left: -12px;
    width: 34px;
  }
}
.button.is-close .button_text {
  min-width: 100px;
}
.button.is-back {
  background: #fff;
  color: #42120a;
  min-width: 120px;
}
.button.is-back:hover {
  background: #f5f1e2;
  opacity: 1;
}
.button.is-back .button_text {
  min-height: 53px;
  padding: 12px 2em;
}
@media screen and (max-width: 767px) {
  .button.is-back .button_text {
    min-height: 40px;
    padding-bottom: 11px;
    padding-top: 11px;
  }
}
.button.is-submit {
  min-width: 300px;
}
@media screen and (min-width: 768px) {
  .button.is-submit.semi-short {
    min-width: 280px;
  }
}
@media screen and (max-width: 767px) {
  .button.is-submit {
    min-width: 234px;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .button.is-submit.ancillary {
    min-width: 200px;
  }
}
@media screen and (max-width: 767px) {
  .button.is-submit.ancillary {
    min-width: 180px;
  }
}
.button.is-submit.ancillary::before,.button.is-submit.ancillary::after {
  display: none;
}
.button.is-submit .button_text {
  min-height: 53px;
  padding: 12px 1.5em;
}
@media screen and (max-width: 767px) {
  .button.is-submit .button_text {
    min-height: 40px;
    padding-bottom: 11px;
    padding-top: 11px;
  }
}
.button.is-submit::before,.button.is-submit::after {
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  width: 12px;
}
@media screen and (max-width: 767px) {
  .button.is-submit::before,.button.is-submit::after {
    width: 10px;
  }
}
.button.is-submit::before {
  border-top-width: 1px;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
  -webkit-transform-origin: right top;
  transform-origin: right top;
}
.button.is-submit::after {
  border-bottom-width: 1px;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
}
.button.is-disabled {
  background-color: #f0eceb;
  border: 1px solid #aa9591;
  color: #aa9591 !important;
  opacity: 1 !important;
}
.button.is-disabled:hover {
  background-color: #f0eceb !important;
  cursor: default;
}
.button.is-disabled::before,.button.is-disabled::after {
  display: none;
}
.button.in-form {
  font-size: 1.5rem;
  line-height: 1.0;
}
@media screen and (max-width: 767px) {
  .button.in-form {
    font-size: 1.4rem;
  }
}
.button.in-form .button_text {
  min-height: 39px;
  padding: 5px 10px;
}
@media screen and (max-width: 767px) {
  .button.in-form .button_text {
    min-height: 39px;
  }
}
.button.is-login {
  min-width: 120px;
  padding: 12px 10px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .button.is-login {
    width: 100%;
  }
}
.button.is-registration {
  min-width: 130px;
  padding: 12px 10px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .button.is-registration {
    width: 100%;
  }
}
.button.is-low {
  background-color: #a08884;
  border-color: #a08884;
}
.button.is-low:hover {
  background-color: #ab9693;
}
.button.wide_fullWide {
  min-width: inherit;
  width: 100%;
}
.button.is-reload {
  background: #ffe123;
  border: 1px solid #42120a;
  border-radius: 5px;
  color: #42120a;
  font-size: 1.6rem;
  padding: 10px 14px 10px 45px;
  position: relative;
}
.button.is-reload::before {
  background: url("/excludes/dcm/fo/img/cmn/icon/icon_reload.png");
  background-size: cover;
  content: "";
  display: block;
  height: 22px;
  left: 13px;
  margin-top: -11px;
  position: absolute;
  top: 50%;
  width: 26px;
}
.button02 {
  background-color: #3f3f3f;
  border: solid 1px #3f3f3f;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  line-height: 1.2;
  padding: 12px 1em;
  text-align: center;
  text-decoration: none;
  transition: all 0.2s ease-out;
}
@media screen and (max-width: 767px) {
  .button02 {
    font-size: 1.8rem;
    padding: 25px 0;
  }
}
/* -----------------------------------------------------------------------------
formparts
----------------------------------------------------------------------------- */
.checkbox,.radio,.selectbox {
  background: #fff;
  border: 1px solid #979797;
}
.textbox,.textarea {
  background: #f0eceb;
  border: none;
  border-radius: 0;
  min-height: 46px;
  min-width: 1px;
  padding: 10px 14px 9px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .textbox.width_short {
    max-width: 200px;
  }
  .textbox.width_middle {
    max-width: 340px;
  }
  .textbox.width_middle02 {
    max-width: 369px;
  }
  .textbox.width_long {
    max-width: 396px;
  }
  .textbox.width_long02 {
    max-width: 442px;
  }
}
@media screen and (max-width: 767px) {
  .textbox.sp_width_short {
    max-width: 140px;
  }
}
.textarea {
  line-height: 1.2;
  max-width: 100%;
  min-height: calc(3em * 1.5 + 9px * 2);
}
.checkbox-wrapper {
  position: relative;
}
.checkbox-wrapper:after {
  border-bottom: 3px solid #9e332b;
  border-right: 3px solid #9e332b;
  bottom: 7px;
  content: "";
  display: block;
  height: 12px;
  left: 10px;
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 7px;
  z-index: 2;
}
.checkbox-wrapper:before {
  background: #fff;
  content: "";
  display: block;
  height: 20px;
  left: 4px;
  position: absolute;
  top: 3px;
  width: 20px;
  z-index: 1;
}
.checkbox {
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
  box-shadow: inset 0 0 0 20px #fff;
  height: 20px;
  position: relative;
  width: 20px;
  z-index: 3;
}
.checkbox:checked {
  box-shadow: none;
}
.checkbox::-ms-check {
  background: none;
  color: transparent;
}
.indentCheckbox {
  margin-left: 38px !important;
}
.radioGroup {
  display: -webkit-flex;
  display: flex;
}
.radio {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 50%;
  height: 20px;
  margin: 0;
  width: 20px;
}
.radio:checked {
  border: 6px solid #9e332b;
}
.radio:checked::-ms-check {
  border: 6px solid #9e332b;
}
.radio::-ms-check {
  color: transparent;
}
.radioGroup > * + * {
  margin-left: 60px;
}
@media screen and (max-width: 767px) {
  .radioGroup > * + * {
    margin-left: 50px;
  }
}
.selectboxWrapper {
  position: relative;
}
.selectboxWrapper::after {
  border-left: 1px solid #42120a;
  border-top: 1px solid #42120a;
  content: "";
  display: block;
  height: 10px;
  pointer-events: none;
  position: absolute;
  right: 15px;
  top: calc(50% - 7px);
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
  width: 10px;
}
.selectboxWrapper select::-ms-expand {
  display: none;
}
.requiredLabel {
  background: #9e332b;
  color: #fff;
  display: inline-block;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.1;
  margin-bottom: 2px;
  margin-left: 10px;
  padding: 2px 16px 3px;
  vertical-align: middle;
}
.limitations {
  padding-left: 1.35em;
  text-indent: -1.35em;
}
.limitations .unit {
  margin-right: 0.35em;
}
.form-pagination {
  display: -webkit-flex;
  display: flex;
}
@media screen and (max-width: 767px) {
  .form-pagination {
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
.form-pagination .form-pagination-column {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  padding: 10px 0;
}
@media screen and (max-width: 767px) {
  .form-pagination .form-pagination-column {
    width: 100%;
  }
}
.form-pagination .form-pagination-column + .form-pagination-column {
  border-left: 1px solid #cacaca;
  margin-left: 30px;
  padding-left: 30px;
}
@media screen and (max-width: 767px) {
  .form-pagination .form-pagination-column + .form-pagination-column {
    border-left: none;
    border-top: 1px solid #cacaca;
    margin-left: 0;
    margin-top: 8px;
    padding-left: 0;
    padding-top: 18px;
    width: 100%;
  }
}
.form-pagination .form-pagination-column.no-border {
  border: none !important;
  padding-left: 0;
}
@media screen and (max-width: 767px) {
  .form-pagination .form-pagination-column.no-border {
    padding-top: 0 !important;
  }
}
.form-pagination .form-pagination-inner {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
}
.form-pagination .selectboxWrapper {
  width: 190px;
}
.form-pagination .selectboxWrapper.is-prefectures {
  width: 266px;
}
@media screen and (max-width: 1159px) {
  .form-pagination .selectboxWrapper.is-prefectures {
    width: 190px;
  }
}
.form-pagination .inputTextWrapper {
  width: 100px;
}
.form-pagination .inputTextWrapper + .textLabel {
  margin-left: 10px;
}
.form-pagination .textLabel.w4em {
  width: 4em;
}
.form-pagination .textLabel + .selectboxWrapper,.form-pagination .textLabel + .formUnit {
  margin-left: 22px;
}
@media screen and (max-width: 767px) {
  .form-pagination .textLabel + .selectboxWrapper,.form-pagination .textLabel + .formUnit {
    margin-left: 14px;
  }
}
.form-pagination .textUnit {
  margin: 0 12px;
}
@media screen and (max-width: 767px) {
  .form-pagination .textUnit {
    margin: 0 6px;
  }
}
.form-pagination .textLabel + .button {
  margin-left: 32px;
}
.form-pagination .selectboxWrapper + .button {
  margin-left: 10px;
}
.form-pagination .button_text {
  min-width: 100px;
  padding: 10px 20px;
}
@media screen and (max-width: 767px) {
  .form-pagination .button_text {
    min-width: 40px;
    white-space: nowrap;
  }
}
.form-pagination .inner-pagination {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  padding-left: 20px;
}
@media screen and (max-width: 767px) {
  .form-pagination .inner-pagination {
    width: 100%;
  }
  .form-pagination .inner-pagination .buttonUnit {
    width: 100%;
  }
}
.form-pagination .inner-pagination .buttonUnit {
  -webkit-align-items: center;
  align-items: center;
}
.form-pagination .inner-pagination .buttonUnit_item {
  display: -webkit-flex;
  display: flex;
}
.form-pagination .button {
  background: #f0eceb;
  border-radius: 5px;
  color: #42120a;
  font-size: 1.6rem;
  opacity: 1;
}
.form-pagination .button:hover {
  background: #42120a;
  color: #fff;
}
.form-pagination .button.is-next {
  padding-left: 0;
  padding-right: 18px;
}
.form-pagination .button.is-next .button_text {
  padding: 10px;
}
@media screen and (max-width: 767px) {
  .form-pagination .button.is-next {
    width: 100%;
  }
}
.form-pagination .button.is-next:hover::before {
  border-color: #fff;
}
.form-pagination .button.is-next:hover::after {
  border-color: #fff;
}
.form-pagination .button.is-next::before,.form-pagination .button.is-next::after {
  border-color: #42120a;
  border-style: solid;
  border-width: 0;
  content: "";
  position: absolute;
  right: 10px;
  top: calc(50% - 2px);
  width: 10px;
}
@media screen and (max-width: 767px) {
  .form-pagination .button.is-next::before,.form-pagination .button.is-next::after {
    width: 10px;
  }
}
.form-pagination .button.is-next::before {
  border-top-width: 1px;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
  -webkit-transform-origin: right top;
  transform-origin: right top;
}
.form-pagination .button.is-next::after {
  border-bottom-width: 1px;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
}
.form-pagination .button.is-prev {
  padding-left: 18px;
}
.form-pagination .button.is-prev .button_text {
  padding: 10px;
}
.form-pagination .button.is-prev:hover::before {
  border-color: #fff;
}
.form-pagination .button.is-prev:hover::after {
  border-color: #fff;
}
@media screen and (max-width: 767px) {
  .form-pagination .button.is-prev {
    width: 100%;
  }
}
.form-pagination .button.is-prev::before,.form-pagination .button.is-prev::after {
  border-color: #42120a;
  border-style: solid;
  border-width: 0;
  content: "";
  left: 10px;
  position: absolute;
  top: calc(50% - 2px);
  width: 10px;
}
@media screen and (max-width: 767px) {
  .form-pagination .button.is-prev::before,.form-pagination .button.is-prev::after {
    width: 10px;
  }
}
.form-pagination .button.is-prev::before {
  border-bottom-width: 1px;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  -webkit-transform-origin: left top;
  transform-origin: left top;
}
.form-pagination .button.is-prev::after {
  border-bottom-width: 1px;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
  -webkit-transform-origin: left bottom;
  transform-origin: left bottom;
}
@media screen and (max-width: 767px) {
  .form-pagination .is-search {
    -webkit-align-self: center;
    align-self: center;
    -ms-grid-row-align: center;
    margin: 0 auto;
    width: calc(50% - 10px);
  }
}
.form-pagination .tab_flex-wrap {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
}
@media screen and (max-width: 1159px) {
  .form-pagination .tab_flex-wrap {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .form-pagination .tab_flex-wrap .inner-pagination {
    margin-top: 18px;
    padding-left: 0;
  }
}
/* -----------------------------------------------------------------------------
headings
----------------------------------------------------------------------------- */
.primaryHeading {
  font-size: 2.5rem;
  margin-bottom: 40px;
  padding-bottom: 5px;
  position: relative;
  position: relative;
}
@media screen and (max-width: 767px) {
  .primaryHeading {
    font-size: 2.1rem;
    margin-bottom: 25px;
  }
}
.primaryHeading::before {
  background-size: 44px 44px;
  bottom: 0;
  content: "";
  height: 44px;
  left: 0;
  position: absolute;
  right: 0;
}
.primaryHeading_main {
  display: block;
  font-weight: bold;
  position: relative;
}
.primaryHeading_sub {
  display: block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .primaryHeading_sub {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .primaryHeading_sub {
    font-size: 1.3rem;
  }
}
.primaryHeading .inline-icon {
  display: inline-block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .primaryHeading .inline-icon {
    padding: 0 80px;
  }
}
@media screen and (max-width: 767px) {
  .primaryHeading .inline-icon {
    padding: 0 55px;
  }
}
.primaryHeading .inline-icon .iconImg {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  height: auto;
  position: absolute;
  right: 0;
  top: 50%;
}
@media screen and (min-width: 768px) {
  .primaryHeading .inline-icon .iconImg {
    margin-top: -40px;
    width: 70px;
  }
}
@media screen and (max-width: 767px) {
  .primaryHeading .inline-icon .iconImg {
    margin-top: -28px;
    width: 50px;
  }
}
.secondaryHeading {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  font-size: 2.5rem;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .secondaryHeading {
    padding: 0 25px;
  }
}
@media screen and (max-width: 767px) {
  .secondaryHeading {
    font-size: 2.1rem;
    margin-left: 18px;
    margin-right: 18px;
    padding: 0 5px;
  }
}
.secondaryHeading::before {
  background-size: 44px 44px;
  content: "";
  height: 50px;
  left: -8px;
  margin-top: -25px;
  max-width: 100%;
  position: absolute;
  top: 50%;
  -webkit-transform: rotate(-1.7deg);
  transform: rotate(-1.7deg);
  -webkit-transform-origin: 2em 50%;
  transform-origin: 2em 50%;
  width: 295px;
}
@media screen and (max-width: 767px) {
  .secondaryHeading::before {
    height: 45px;
    margin-top: -22px;
    width: 210px;
  }
}
.secondaryHeading.stripe_middle::before {
  width: 345px;
}
@media screen and (max-width: 767px) {
  .secondaryHeading.stripe_middle::before {
    width: 255px;
  }
}
.secondaryHeading.stripe_long::before {
  width: 385px;
}
@media screen and (max-width: 767px) {
  .secondaryHeading.stripe_long::before {
    width: 280px;
  }
}
.secondaryHeading.stripe_short {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .secondaryHeading.stripe_short {
    margin-bottom: 22px;
  }
}
.secondaryHeading.stripe_short::before {
  display: none;
}
.secondaryHeading.stripe_short .secondaryHeading_main {
  padding: 0 10px 10px;
  position: relative;
}
.secondaryHeading.stripe_short .secondaryHeading_main::before {
  background-image: linear-gradient(45deg, rgba(66, 18, 10, 0.2) 8.33333%, rgba(255, 255, 255, 0) 8.33333%, rgba(255, 255, 255, 0) 16.66667%, rgba(66, 18, 10, 0.2) 16.66667%, rgba(66, 18, 10, 0.2) 25%, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0) 33.33333%, rgba(66, 18, 10, 0.2) 33.33333%, rgba(66, 18, 10, 0.2) 41.66667%, rgba(255, 255, 255, 0) 41.66667%, rgba(255, 255, 255, 0) 50%, rgba(66, 18, 10, 0.2) 50%, rgba(66, 18, 10, 0.2) 58.33333%, rgba(255, 255, 255, 0) 58.33333%, rgba(255, 255, 255, 0) 66.66667%, rgba(66, 18, 10, 0.2) 66.66667%, rgba(66, 18, 10, 0.2) 75%, rgba(255, 255, 255, 0) 75%, rgba(255, 255, 255, 0) 83.33333%, rgba(66, 18, 10, 0.2) 83.33333%, rgba(66, 18, 10, 0.2) 91.66667%, rgba(255, 255, 255, 0) 91.66667%);
  background-size: 44px 44px;
  bottom: 0;
  content: "";
  height: 6px;
  left: 0;
  position: absolute;
  width: 100%;
}
.secondaryHeading.stripe_fullWide::before {
  width: calc(100% - 10px);
}
.secondaryHeading.stripe_tall {
  font-size: 2.7rem;
}
@media screen and (max-width: 767px) {
  .secondaryHeading.stripe_tall {
    font-size: 2.3rem;
  }
}
.secondaryHeading.stripe_tall::before {
  height: 65px;
  margin-top: -32px;
  -webkit-transform-origin: 3em 50%;
  transform-origin: 3em 50%;
}
@media screen and (max-width: 767px) {
  .secondaryHeading.stripe_tall::before {
    height: 55px;
    margin-top: -27px;
  }
}
.secondaryHeading_main {
  font-weight: bold;
  position: relative;
}
.secondaryHeading_sub {
  margin-left: 1em;
  position: relative;
}
@media screen and (min-width: 768px) {
  .secondaryHeading_sub {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .secondaryHeading_sub {
    font-size: 1.3rem;
  }
}
.tertiaryHeading {
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .tertiaryHeading {
    font-size: 1.8rem;
    margin-bottom: 6px;
  }
}
.stripe_color_brown::before {
  background-image: linear-gradient(45deg, rgba(234, 228, 221, 0.5) 8.33333%, rgba(208, 196, 194, 0.5) 8.33333%, rgba(208, 196, 194, 0.5) 16.66667%, rgba(234, 228, 221, 0.5) 16.66667%, rgba(234, 228, 221, 0.5) 25%, rgba(208, 196, 194, 0.5) 25%, rgba(208, 196, 194, 0.5) 33.33333%, rgba(234, 228, 221, 0.5) 33.33333%, rgba(234, 228, 221, 0.5) 41.66667%, rgba(208, 196, 194, 0.5) 41.66667%, rgba(208, 196, 194, 0.5) 50%, rgba(234, 228, 221, 0.5) 50%, rgba(234, 228, 221, 0.5) 58.33333%, rgba(208, 196, 194, 0.5) 58.33333%, rgba(208, 196, 194, 0.5) 66.66667%, rgba(234, 228, 221, 0.5) 66.66667%, rgba(234, 228, 221, 0.5) 75%, rgba(208, 196, 194, 0.5) 75%, rgba(208, 196, 194, 0.5) 83.33333%, rgba(234, 228, 221, 0.5) 83.33333%, rgba(234, 228, 221, 0.5) 91.66667%, rgba(208, 196, 194, 0.5) 91.66667%);
}
.stripe_color_gray::before {
  background-image: linear-gradient(45deg, rgba(223, 219, 219, 0.5) 8.33333%, rgba(209, 204, 203, 0.5) 8.33333%, rgba(209, 204, 203, 0.5) 16.66667%, rgba(223, 219, 219, 0.5) 16.66667%, rgba(223, 219, 219, 0.5) 25%, rgba(209, 204, 203, 0.5) 25%, rgba(209, 204, 203, 0.5) 33.33333%, rgba(223, 219, 219, 0.5) 33.33333%, rgba(223, 219, 219, 0.5) 41.66667%, rgba(209, 204, 203, 0.5) 41.66667%, rgba(209, 204, 203, 0.5) 50%, rgba(223, 219, 219, 0.5) 50%, rgba(223, 219, 219, 0.5) 58.33333%, rgba(209, 204, 203, 0.5) 58.33333%, rgba(209, 204, 203, 0.5) 66.66667%, rgba(223, 219, 219, 0.5) 66.66667%, rgba(223, 219, 219, 0.5) 75%, rgba(209, 204, 203, 0.5) 75%, rgba(209, 204, 203, 0.5) 83.33333%, rgba(223, 219, 219, 0.5) 83.33333%, rgba(223, 219, 219, 0.5) 91.66667%, rgba(209, 204, 203, 0.5) 91.66667%);
}
.stripe_color_pink::before {
  background-image: linear-gradient(45deg, rgba(242, 219, 217, 0.5) 8.33333%, rgba(236, 203, 200, 0.5) 8.33333%, rgba(236, 203, 200, 0.5) 16.66667%, rgba(242, 219, 217, 0.5) 16.66667%, rgba(242, 219, 217, 0.5) 25%, rgba(236, 203, 200, 0.5) 25%, rgba(236, 203, 200, 0.5) 33.33333%, rgba(242, 219, 217, 0.5) 33.33333%, rgba(242, 219, 217, 0.5) 41.66667%, rgba(236, 203, 200, 0.5) 41.66667%, rgba(236, 203, 200, 0.5) 50%, rgba(242, 219, 217, 0.5) 50%, rgba(242, 219, 217, 0.5) 58.33333%, rgba(236, 203, 200, 0.5) 58.33333%, rgba(236, 203, 200, 0.5) 66.66667%, rgba(242, 219, 217, 0.5) 66.66667%, rgba(242, 219, 217, 0.5) 75%, rgba(236, 203, 200, 0.5) 75%, rgba(236, 203, 200, 0.5) 83.33333%, rgba(242, 219, 217, 0.5) 83.33333%, rgba(242, 219, 217, 0.5) 91.66667%, rgba(236, 203, 200, 0.5) 91.66667%);
}
.stripe_color_green::before {
  background-image: linear-gradient(45deg, rgba(220, 226, 221, 0.5) 8.33333%, rgba(205, 213, 207, 0.5) 8.33333%, rgba(205, 213, 207, 0.5) 16.66667%, rgba(220, 226, 221, 0.5) 16.66667%, rgba(220, 226, 221, 0.5) 25%, rgba(205, 213, 207, 0.5) 25%, rgba(205, 213, 207, 0.5) 33.33333%, rgba(220, 226, 221, 0.5) 33.33333%, rgba(220, 226, 221, 0.5) 41.66667%, rgba(205, 213, 207, 0.5) 41.66667%, rgba(205, 213, 207, 0.5) 50%, rgba(220, 226, 221, 0.5) 50%, rgba(220, 226, 221, 0.5) 58.33333%, rgba(205, 213, 207, 0.5) 58.33333%, rgba(205, 213, 207, 0.5) 66.66667%, rgba(220, 226, 221, 0.5) 66.66667%, rgba(220, 226, 221, 0.5) 75%, rgba(205, 213, 207, 0.5) 75%, rgba(205, 213, 207, 0.5) 83.33333%, rgba(220, 226, 221, 0.5) 83.33333%, rgba(220, 226, 221, 0.5) 91.66667%, rgba(205, 213, 207, 0.5) 91.66667%);
}
.stripe_color_blue::before {
  background-image: linear-gradient(45deg, rgba(200, 225, 230, 0.5) 8.33333%, rgba(180, 214, 221, 0.5) 8.33333%, rgba(180, 214, 221, 0.5) 16.66667%, rgba(200, 225, 230, 0.5) 16.66667%, rgba(200, 225, 230, 0.5) 25%, rgba(180, 214, 221, 0.5) 25%, rgba(180, 214, 221, 0.5) 33.33333%, rgba(200, 225, 230, 0.5) 33.33333%, rgba(200, 225, 230, 0.5) 41.66667%, rgba(180, 214, 221, 0.5) 41.66667%, rgba(180, 214, 221, 0.5) 50%, rgba(200, 225, 230, 0.5) 50%, rgba(200, 225, 230, 0.5) 58.33333%, rgba(180, 214, 221, 0.5) 58.33333%, rgba(180, 214, 221, 0.5) 66.66667%, rgba(200, 225, 230, 0.5) 66.66667%, rgba(200, 225, 230, 0.5) 75%, rgba(180, 214, 221, 0.5) 75%, rgba(180, 214, 221, 0.5) 83.33333%, rgba(200, 225, 230, 0.5) 83.33333%, rgba(200, 225, 230, 0.5) 91.66667%, rgba(180, 214, 221, 0.5) 91.66667%);
}
.stripe_color_yelow::before {
  background-image: linear-gradient(45deg, rgba(216, 233, 236, 0.5) 8.33333%, rgba(255, 225, 35, 0.5) 8.33333%, rgba(255, 225, 35, 0.5) 16.66667%, rgba(216, 233, 236, 0.5) 16.66667%, rgba(216, 233, 236, 0.5) 25%, rgba(255, 225, 35, 0.5) 25%, rgba(255, 225, 35, 0.5) 33.33333%, rgba(216, 233, 236, 0.5) 33.33333%, rgba(216, 233, 236, 0.5) 41.66667%, rgba(255, 225, 35, 0.5) 41.66667%, rgba(255, 225, 35, 0.5) 50%, rgba(216, 233, 236, 0.5) 50%, rgba(216, 233, 236, 0.5) 58.33333%, rgba(255, 225, 35, 0.5) 58.33333%, rgba(255, 225, 35, 0.5) 66.66667%, rgba(216, 233, 236, 0.5) 66.66667%, rgba(216, 233, 236, 0.5) 75%, rgba(255, 225, 35, 0.5) 75%, rgba(255, 225, 35, 0.5) 83.33333%, rgba(216, 233, 236, 0.5) 83.33333%, rgba(216, 233, 236, 0.5) 91.66667%, rgba(255, 225, 35, 0.5) 91.66667%);
}
.stripe_color_purple::before {
  background-image: linear-gradient(45deg, rgba(231, 224, 237, 0.5) 8.33333%, rgba(217, 200, 221, 0.5) 8.33333%, rgba(217, 200, 221, 0.5) 16.66667%, rgba(231, 224, 237, 0.5) 16.66667%, rgba(231, 224, 237, 0.5) 25%, rgba(217, 200, 221, 0.5) 25%, rgba(217, 200, 221, 0.5) 33.33333%, rgba(231, 224, 237, 0.5) 33.33333%, rgba(231, 224, 237, 0.5) 41.66667%, rgba(217, 200, 221, 0.5) 41.66667%, rgba(217, 200, 221, 0.5) 50%, rgba(231, 224, 237, 0.5) 50%, rgba(231, 224, 237, 0.5) 58.33333%, rgba(217, 200, 221, 0.5) 58.33333%, rgba(217, 200, 221, 0.5) 66.66667%, rgba(231, 224, 237, 0.5) 66.66667%, rgba(231, 224, 237, 0.5) 75%, rgba(217, 200, 221, 0.5) 75%, rgba(217, 200, 221, 0.5) 83.33333%, rgba(231, 224, 237, 0.5) 83.33333%, rgba(231, 224, 237, 0.5) 91.66667%, rgba(217, 200, 221, 0.5) 91.66667%);
}
.ribbonHeading {
  background-image: linear-gradient(45deg, #ffea65 8.33333%, #ffe123 8.33333%, #ffe123 16.66667%, #ffea65 16.66667%, #ffea65 25%, #ffe123 25%, #ffe123 33.33333%, #ffea65 33.33333%, #ffea65 41.66667%, #ffe123 41.66667%, #ffe123 50%, #ffea65 50%, #ffea65 58.33333%, #ffe123 58.33333%, #ffe123 66.66667%, #ffea65 66.66667%, #ffea65 75%, #ffe123 75%, #ffe123 83.33333%, #ffea65 83.33333%, #ffea65 91.66667%, #ffe123 91.66667%);
  background-size: 44px 44px;
  font-weight: bold;
  line-height: 1.2;
  position: relative;
}
@media screen and (min-width: 768px) {
  .ribbonHeading {
    font-size: 2rem;
    padding: 11px 40px 9px;
  }
}
@media screen and (max-width: 767px) {
  .ribbonHeading {
    font-size: 1.5rem;
    padding: 10px 40px 7px;
  }
}
.ribbonHeading::before,.ribbonHeading::after {
  border: 22px solid transparent;
  content: "";
  margin-top: -22px;
  position: absolute;
  top: 50%;
}
.ribbonHeading::before {
  border-left: 22px solid #fff;
  left: 0;
}
.ribbonHeading::after {
  border-right: 22px solid #fff;
  right: 0;
}
/* -----------------------------------------------------------------------------
lists
----------------------------------------------------------------------------- */
.list_item {
  padding-left: 1em;
  position: relative;
}
.list_item::before {
  background-color: #000;
  border-radius: 50%;
  content: "";
  height: 1em;
  left: 0;
  margin-top: -0.5em;
  position: absolute;
  top: 0.66em;
  -webkit-transform: scale(0.3, 0.3);
  transform: scale(0.3, 0.3);
  width: 1em;
}
.is-error .list_item {
  white-space: pre-line;
}
.list.fontColor_red .list_item::before {
  background-color: #9e332b;
}
.decimal-list_item {
  list-style: decimal;
}
.agreement-list {
  padding-left: 2em;
}
.agreement-list > li {
  margin-bottom: 20px;
}
.agreement-list > li p {
  margin: 10px 0;
}
.agreement-list > li > ul {
  margin-top: 5px;
  padding-left: 2em;
}
.agreement-list > li > ul > li {
  list-style-type: circle;
}
.agreement-list > li > ul > li > ul {
  padding-left: 2em;
}
.agreement-list > li > ul > li > ul > li {
  list-style: square;
}
.agreement-list > li > ol {
  margin-top: 5px;
  padding-left: 2em;
}
.agreement-list > li > ol > li {
  list-style-type: decimal;
}
ol.agreement-list > li {
  list-style: decimal;
}
/* -----------------------------------------------------------------------------
tablse
----------------------------------------------------------------------------- */
.table {
  border-left: 1px solid #42120a;
  border-top: 1px solid #42120a;
  width: 100%;
}
.table.table-fixed {
  table-layout: fixed;
}
.table .wideShort {
  width: 140px;
}
.table .wideMiddle {
  width: 220px;
}
.table .w15 {
  width: 15%;
}
.table .w20 {
  width: 20%;
}
.table thead th {
  background: #ece7e6;
  color: #42120a;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
}
.table tbody td {
  background: #fff;
  font-size: 1.6rem;
  padding-bottom: 27px;
  padding-top: 28px;
}
.table th,.table td {
  border-bottom: 1px solid #42120a;
  border-right: 1px solid #42120a;
  padding: 11px;
  word-wrap: break-word;
}
.table th.narrow,.table td.narrow {
  padding: 8px;
}
@media screen and (max-width: 767px) {
  .table th,.table td {
    padding: 10px;
  }
  .table th.narrow,.table td.narrow {
    padding: 8px;
  }
}
.table th {
  font-weight: normal;
}
.table td {
  vertical-align: middle;
}
.table .date + .time {
  margin-left: 0.5em;
}
.dataTable {
  background: #fff;
  border: 1px solid #42120a;
  width: 100%;
}
.dataTable + .dataTable {
  border-top: none;
}
.dataTable .dataTableHeading {
  background: #ece7e6;
  color: #42120a;
  font-size: 1.5rem;
  font-weight: bold;
  padding: 7px 18px;
}
.dataTable .dataTableBody {
  padding: 10px 18px;
}
.dataTable .innerHeading {
  color: #42120a;
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 2px;
}
.dataTable .dataTable-tr {
  display: -webkit-flex;
  display: flex;
}
.dataTable .dataTable-tr + .innerHeading {
  margin-top: 15px;
}
.dataTable .dataTable-th {
  color: #42120a;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  font-size: 1.5rem;
  padding: 3px 1em 3px 0;
}
.dataTable .dataTable-td {
  font-size: 1.5rem;
  padding: 3px 0;
  word-break: break-all;
}
.dataTable .date + .time {
  margin-left: 0.5em;
}
/* -----------------------------------------------------------------------------
figures
----------------------------------------------------------------------------- */
.figure {
  position: relative;
}
.figure > img {
  vertical-align: bottom;
}
.figure_caption {
  display: block;
  font-size: 1.4rem;
  margin-top: 6px;
}
@media screen and (max-width: 767px) {
  .figure_caption {
    font-size: 1.3rem;
  }
}
/* -----------------------------------------------------------------------------
boxes
----------------------------------------------------------------------------- */
.box {
  background: #fff;
  padding: 25px 20px;
}
.box-wide-padding {
  padding: 30px;
}
@media screen and (max-width: 767px) {
  .box {
    padding: 11px;
  }
}
.box.is-transparent {
  background: transparent;
}
.box.is-notice {
  background: #fffce9;
}
.box.is-error {
  background: #f7d7d7;
}
.box.is-error-border {
  background: #f5ebea;
  border: 1px solid #9e332b;
}
.box.is-bRadius {
  border-radius: 5px;
}
.box.is-narrow {
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
}
.box-form {
  padding: 9px 30px;
}
@media screen and (max-width: 767px) {
  .sp_box-full-w {
    border-radius: 0 !important;
    margin-left: -18px !important;
    margin-right: -18px !important;
    padding: 12px 18px;
  }
}
.border-box {
  background: #fff;
  border: 1px solid #cacaca;
  padding: 20px;
}
@media screen and (max-width: 767px) {
  .border-box {
    padding: 11px;
  }
}
.border-box.is-bRadius {
  border-radius: 5px;
}
.border-box.is-bYellow {
  border-color: #ffe123;
}
.border-box .inner-point-center {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-right: 220px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .border-box .inner-point-center {
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
    padding-right: 0;
  }
}
.border-box .inner-point-center .heading {
  font-weight: bold;
  line-height: 1.334;
  padding-left: 20px;
}
@media screen and (max-width: 767px) {
  .border-box .inner-point-center .heading {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    min-height: 1%;
    padding-left: 0;
  }
}
.border-box .inner-point-center .point {
  color: #42120a;
  font-size: 3.2rem;
  font-weight: bold;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .border-box .inner-point-center .point {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
  }
}
@media screen and (max-width: 767px) {
  .border-box .inner-point-center .point {
    font-size: 2.4rem;
    min-height: 1%;
    text-align: center;
    text-align: right;
  }
}
.border-box .inner-point-center .character {
  bottom: 0;
  position: absolute;
  right: 0;
  width: 164px;
}
@media screen and (max-width: 767px) {
  .border-box .inner-point-center .character {
    right: -10px;
    width: 125px;
  }
}
@media screen and (max-width: 320px) {
  .border-box .inner-point-center .character {
    bottom: 10px;
    right: -20px;
    width: 110px;
  }
}
.border-box .inner-point-center .unit {
  font-size: 2.2rem;
  margin-left: 5px;
}
@media screen and (max-width: 767px) {
  .border-box .inner-point-center .unit {
    font-size: 1.6rem;
  }
}
.narrow-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
}
.indent-inner {
  padding-right: 220px;
}
@media screen and (max-width: 767px) {
  .indent-inner {
    padding-right: 140px;
  }
}
@media screen and (max-width: 320px) {
  .indent-inner {
    padding-right: 110px;
  }
}
.comingBox {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  padding-top: 100px;
}
@media screen and (max-width: 767px) {
  .comingBox {
    padding-top: 50px;
  }
}
.comingBoxImg {
  min-width: 1%;
  width: 170px;
}
@media screen and (max-width: 767px) {
  .comingBoxImg {
    width: 100px;
  }
}
.comingBoxText {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  padding-left: 20px;
}
.comingBoxHeading {
  font-size: 3rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .comingBoxHeading {
    font-size: 2rem;
  }
}
/* -----------------------------------------------------------------------------
links
----------------------------------------------------------------------------- */
.text-link {
  color: #42120a;
  display: inline-block;
  padding-left: 30px;
  position: relative;
  text-decoration: none;
}
.text-link:hover,a:hover .text-link {
  text-decoration: underline;
}
.text-link::before {
  background: #42120a;
  border-radius: 50%;
  content: "";
  height: 18px;
  left: 0;
  margin-top: -9px;
  position: absolute;
  top: 0.66em;
  width: 18px;
}
.text-link::after {
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  content: "";
  height: 16px;
  left: -2px;
  margin-top: -8px;
  position: absolute;
  top: 0.66em;
  -webkit-transform: rotate(30deg) skewX(-30deg) scale(0.45);
  transform: rotate(30deg) skewX(-30deg) scale(0.45);
  width: 18px;
}
.buttonLink_wrapper {
  display: -webkit-flex;
  display: flex;
}
/* -----------------------------------------------------------------------------
badges
----------------------------------------------------------------------------- */
.pickupBadge {
  margin: 0 auto;
  max-width: 160px;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .pickupBadge_box_outer {
    padding-top: 100%;
    position: relative;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .pickupBadge_box_inner {
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    height: 100%;
    -webkit-justify-content: center;
    justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .pickupBadge {
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
.pickupBadge_img {
  display: block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .pickupBadge_img {
    height: 70px;
    margin: 0 auto 2px;
    width: 130px;
  }
}
@media screen and (max-width: 767px) {
  .pickupBadge_img {
    height: 70px;
    margin: 0 auto 8px;
    width: 70px;
  }
}
.pickupBadge_img img {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (min-width: 768px) {
  .pickupBadge_img img {
    margin: auto auto 0;
  }
}
@media screen and (max-width: 767px) {
  .pickupBadge_img img {
    margin: auto;
    max-height: 39px;
    max-width: 50px;
  }
}
.pickupBadge_text {
  color: #42120a;
  position: relative;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .pickupBadge_text {
    font-size: 1.7rem;
    margin-bottom: 5%;
  }
}
.pickupBadge::before,.pickupBadge_img::before {
  background-size: 44px 44px;
  border-radius: 50%;
  left: 0;
  padding-top: 100%;
  position: absolute;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .pickupBadge::before {
    content: "";
  }
}
@media screen and (max-width: 767px) {
  .pickupBadge_img::before {
    content: "";
  }
}
.pickupBadge.stripe_color_gray .pickupBadge_img::before {
  background-image: linear-gradient(45deg, rgba(220, 226, 221, 0.5) 8.33333%, rgba(205, 213, 207, 0.5) 8.33333%, rgba(205, 213, 207, 0.5) 16.66667%, rgba(220, 226, 221, 0.5) 16.66667%, rgba(220, 226, 221, 0.5) 25%, rgba(205, 213, 207, 0.5) 25%, rgba(205, 213, 207, 0.5) 33.33333%, rgba(220, 226, 221, 0.5) 33.33333%, rgba(220, 226, 221, 0.5) 41.66667%, rgba(205, 213, 207, 0.5) 41.66667%, rgba(205, 213, 207, 0.5) 50%, rgba(220, 226, 221, 0.5) 50%, rgba(220, 226, 221, 0.5) 58.33333%, rgba(205, 213, 207, 0.5) 58.33333%, rgba(205, 213, 207, 0.5) 66.66667%, rgba(220, 226, 221, 0.5) 66.66667%, rgba(220, 226, 221, 0.5) 75%, rgba(205, 213, 207, 0.5) 75%, rgba(205, 213, 207, 0.5) 83.33333%, rgba(220, 226, 221, 0.5) 83.33333%, rgba(220, 226, 221, 0.5) 91.66667%, rgba(205, 213, 207, 0.5) 91.66667%);
}
.pickupBadge.stripe_color_pink .pickupBadge_img::before {
  background-image: linear-gradient(45deg, rgba(242, 219, 217, 0.5) 8.33333%, rgba(236, 203, 200, 0.5) 8.33333%, rgba(236, 203, 200, 0.5) 16.66667%, rgba(242, 219, 217, 0.5) 16.66667%, rgba(242, 219, 217, 0.5) 25%, rgba(236, 203, 200, 0.5) 25%, rgba(236, 203, 200, 0.5) 33.33333%, rgba(242, 219, 217, 0.5) 33.33333%, rgba(242, 219, 217, 0.5) 41.66667%, rgba(236, 203, 200, 0.5) 41.66667%, rgba(236, 203, 200, 0.5) 50%, rgba(242, 219, 217, 0.5) 50%, rgba(242, 219, 217, 0.5) 58.33333%, rgba(236, 203, 200, 0.5) 58.33333%, rgba(236, 203, 200, 0.5) 66.66667%, rgba(242, 219, 217, 0.5) 66.66667%, rgba(242, 219, 217, 0.5) 75%, rgba(236, 203, 200, 0.5) 75%, rgba(236, 203, 200, 0.5) 83.33333%, rgba(242, 219, 217, 0.5) 83.33333%, rgba(242, 219, 217, 0.5) 91.66667%, rgba(236, 203, 200, 0.5) 91.66667%);
}
.pickupBadge.stripe_color_green .pickupBadge_img::before {
  background-image: linear-gradient(45deg, rgba(220, 226, 221, 0.5) 8.33333%, rgba(205, 213, 207, 0.5) 8.33333%, rgba(205, 213, 207, 0.5) 16.66667%, rgba(220, 226, 221, 0.5) 16.66667%, rgba(220, 226, 221, 0.5) 25%, rgba(205, 213, 207, 0.5) 25%, rgba(205, 213, 207, 0.5) 33.33333%, rgba(220, 226, 221, 0.5) 33.33333%, rgba(220, 226, 221, 0.5) 41.66667%, rgba(205, 213, 207, 0.5) 41.66667%, rgba(205, 213, 207, 0.5) 50%, rgba(220, 226, 221, 0.5) 50%, rgba(220, 226, 221, 0.5) 58.33333%, rgba(205, 213, 207, 0.5) 58.33333%, rgba(205, 213, 207, 0.5) 66.66667%, rgba(220, 226, 221, 0.5) 66.66667%, rgba(220, 226, 221, 0.5) 75%, rgba(205, 213, 207, 0.5) 75%, rgba(205, 213, 207, 0.5) 83.33333%, rgba(220, 226, 221, 0.5) 83.33333%, rgba(220, 226, 221, 0.5) 91.66667%, rgba(205, 213, 207, 0.5) 91.66667%);
}
.pickupBadge.stripe_color_blue .pickupBadge_img::before {
  background-image: linear-gradient(45deg, rgba(200, 225, 230, 0.5) 8.33333%, rgba(180, 214, 221, 0.5) 8.33333%, rgba(180, 214, 221, 0.5) 16.66667%, rgba(200, 225, 230, 0.5) 16.66667%, rgba(200, 225, 230, 0.5) 25%, rgba(180, 214, 221, 0.5) 25%, rgba(180, 214, 221, 0.5) 33.33333%, rgba(200, 225, 230, 0.5) 33.33333%, rgba(200, 225, 230, 0.5) 41.66667%, rgba(180, 214, 221, 0.5) 41.66667%, rgba(180, 214, 221, 0.5) 50%, rgba(200, 225, 230, 0.5) 50%, rgba(200, 225, 230, 0.5) 58.33333%, rgba(180, 214, 221, 0.5) 58.33333%, rgba(180, 214, 221, 0.5) 66.66667%, rgba(200, 225, 230, 0.5) 66.66667%, rgba(200, 225, 230, 0.5) 75%, rgba(180, 214, 221, 0.5) 75%, rgba(180, 214, 221, 0.5) 83.33333%, rgba(200, 225, 230, 0.5) 83.33333%, rgba(200, 225, 230, 0.5) 91.66667%, rgba(180, 214, 221, 0.5) 91.66667%);
}
/* -----------------------------------------------------------------------------
navigations
----------------------------------------------------------------------------- */
.menu {
  color: currentColor;
  cursor: pointer;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 130;
}
@media screen and (min-width: 768px) {
  .menu {
    display: none;
  }
}
.menu_button {
  background-color: transparent;
  border: none;
  border-radius: none;
  font-family: inherit;
  font-size: inherit;
  height: 47px;
  outline: none;
  position: relative;
  width: 59px;
}
.menu_button_icon {
  background-color: #421309;
  display: block;
  height: 2px;
  left: 50%;
  margin-left: -12px;
  margin-top: -1px;
  position: absolute;
  top: 50%;
  transition: background-color 50ms 180ms ease-in;
  width: 24px;
}
.menu_button_icon::before,.menu_button_icon::after {
  background-color: #421309;
  content: "";
  height: 100%;
  left: 50%;
  margin-left: -12px;
  position: absolute;
  top: 50%;
  transition: margin-top 180ms 180ms ease-in, -webkit-transform 180ms ease-in;
  transition: transform 180ms ease-in, margin-top 180ms 180ms ease-in;
  transition: transform 180ms ease-in, margin-top 180ms 180ms ease-in, -webkit-transform 180ms ease-in;
  width: 100%;
}
.menu_button_icon::before {
  margin-top: -8px;
}
.menu_button_icon::after {
  margin-top: 7px;
}
.menu_button.is-open .menu_button_icon {
  background-color: rgba(66, 19, 9, 0);
  transition: background-color 50ms 130ms ease-in;
}
.menu_button.is-open .menu_button_icon::before,.menu_button.is-open .menu_button_icon::after {
  transition: margin-top 180ms ease-in, -webkit-transform 180ms 180ms ease-in;
  transition: transform 180ms 180ms ease-in, margin-top 180ms ease-in;
  transition: transform 180ms 180ms ease-in, margin-top 180ms ease-in, -webkit-transform 180ms 180ms ease-in;
}
.menu_button.is-open .menu_button_icon::before {
  margin-top: -1px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.menu_button.is-open .menu_button_icon::after {
  margin-top: -1px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.globalNav {
  padding: 0 18px;
}
@media screen and (max-width: 767px) {
  .globalNav {
    background-color: #fffce9;
    display: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 120;
  }
}
.globalNav_overLay {
  background-color: rgba(0, 0, 0, 0.5);
  height: 100%;
  left: 0;
  opacity: 0;
  position: fixed;
  top: -100%;
  transition: top 0s, opacity 300ms ease-in;
  width: 100%;
  z-index: 100;
}
.globalNav_overLay.is-open {
  opacity: 1;
  top: 0;
}
.globalNav_inner {
  margin: 0 auto;
  max-width: 1120px;
}
@media screen and (max-width: 767px) {
  .globalNav_inner {
    padding-bottom: 47px;
    padding-top: 47px;
  }
}
@media screen and (min-width: 768px) {
  .globalNav_spNvi {
    display: none;
  }
}
.globalNav_spNvi_list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  margin: 0 -5px -5px;
}
.globalNav_spNvi_item {
  border-bottom: 1px solid #cacaca;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  margin: 0 5px 20px;
  padding: 10px 0;
  text-align: center;
  width: calc(50% - 10px);
}
.globalNav_spNvi_item.globalNav_spNvi_item--fullWide {
  width: 100%;
}
.globalNav_spNvi_item a {
  display: block;
}
.globalNav_spNvi_item a:hover span {
  text-decoration: underline;
}
.globalNav_spNvi_mypageButton {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  margin: 0 5px 20px;
  width: calc(50% - 10px);
}
@media screen and (min-width: 768px) {
  .globalNav_list {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
.globalNav_item {
  -webkit-flex: 0 1 auto;
  flex: 0 1 auto;
}
@media screen and (min-width: 768px) {
  .globalNav_item {
    border-right: 1px solid #cacaca;
    font-size: 1.7rem;
    padding: 0;
    width: 200px;
  }
}
@media screen and (max-width: 767px) {
  .globalNav_item {
    border-bottom: 1px solid #cacaca;
    padding: 0;
  }
}
@media screen and (min-width: 768px) {
  .globalNav_item:first-child {
    border-left: 1px solid #cacaca;
  }
}
.globalNav_link {
  color: #000;
  display: block;
  padding: 5px;
  position: relative;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .globalNav_link {
    padding-top: 50px;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .globalNav_link {
    padding-bottom: 15px;
    padding-left: 68px;
    padding-top: 15px;
  }
}
.globalNav_link::before {
  background-image: linear-gradient(45deg, rgba(232, 226, 225, 0.5) 8.33333%, rgba(212, 201, 199, 0.5) 8.33333%, rgba(212, 201, 199, 0.5) 16.66667%, rgba(232, 226, 225, 0.5) 16.66667%, rgba(232, 226, 225, 0.5) 25%, rgba(212, 201, 199, 0.5) 25%, rgba(212, 201, 199, 0.5) 33.33333%, rgba(232, 226, 225, 0.5) 33.33333%, rgba(232, 226, 225, 0.5) 41.66667%, rgba(212, 201, 199, 0.5) 41.66667%, rgba(212, 201, 199, 0.5) 50%, rgba(232, 226, 225, 0.5) 50%, rgba(232, 226, 225, 0.5) 58.33333%, rgba(212, 201, 199, 0.5) 58.33333%, rgba(212, 201, 199, 0.5) 66.66667%, rgba(232, 226, 225, 0.5) 66.66667%, rgba(232, 226, 225, 0.5) 75%, rgba(212, 201, 199, 0.5) 75%, rgba(212, 201, 199, 0.5) 83.33333%, rgba(232, 226, 225, 0.5) 83.33333%, rgba(232, 226, 225, 0.5) 91.66667%, rgba(212, 201, 199, 0.5) 91.66667%);
  background-position: center center;
  background-repeat: repeat;
  background-size: 44px 44px;
  border-radius: 50%;
  content: "";
  height: 0;
  margin-left: 0;
  margin-top: 0;
  position: absolute;
  transition-duration: 0.2s;
  width: 0;
}
@media screen and (min-width: 768px) {
  .globalNav_link::before {
    left: 50%;
    top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .globalNav_link::before {
    left: 24px;
    top: 50%;
  }
}
@media screen and (min-width: 768px) {
  .globalNav_link:hover::before,.globalNav_link.is-current::before {
    height: 80px;
    margin-left: -40px;
    margin-top: -40px;
    width: 80px;
  }
}
@media screen and (max-width: 767px) {
  .globalNav_link:hover::before,.globalNav_link.is-current::before {
    height: 40px;
    margin-left: -20px;
    margin-top: -20px;
    width: 40px;
  }
}
.globalNav .nav_icon {
  left: 0;
  position: absolute;
  right: 0;
  top: 5px;
}
@media screen and (min-width: 768px) {
  .globalNav .nav_icon {
    height: 40px;
  }
}
@media screen and (max-width: 767px) {
  .globalNav .nav_icon {
    height: 35px;
    margin-top: -17px;
    right: calc(100% - 50px);
    top: 50%;
  }
}
.globalNav .nav_icon::before,.globalNav .nav_icon::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.globalNav .nav_icon::after {
  transition-duration: 0.2s;
}
.globalNav_link:hover .nav_icon::after,.globalNav_link.is-current .nav_icon::after {
  opacity: 0;
}
.globalNav_text {
  position: relative;
}
.mypageNav a {
  display: block;
  position: relative;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .mypageNav a {
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .mypageNav a {
    border-bottom: 1px solid #cacaca;
    min-height: 60px;
    padding-bottom: 14px;
    padding-left: 88px;
    padding-top: 14px;
  }
}
.mypageNav a .nav_icon {
  display: block;
}
@media screen and (min-width: 768px) {
  .mypageNav a .nav_icon {
    height: 100px;
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .mypageNav a .nav_icon {
    height: 35px;
    height: 59px;
    left: 0;
    margin-top: -17px;
    margin-top: -30px;
    position: absolute;
    right: calc(100% - 50px);
    top: 50%;
    top: 50%;
    width: 76px;
  }
}
.mypageNav a .nav_icon::before,.mypageNav a .nav_icon::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (min-width: 768px) {
  .mypageNav.pc_3col .mypageNav_item {
    width: 33.33%;
  }
}
@media screen and (min-width: 768px) {
  .mypageNav.pc_4col .mypageNav_item {
    width: 25%;
  }
}
@media screen and (max-width: 767px) {
  .mypageNav_item:not(:first-child) {
    padding-top: 0 !important;
  }
}
.mypageNav_name {
  font-size: 2rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .mypageNav_name {
    font-size: 1.8rem;
  }
}
.mypageNav_description {
  display: block;
  text-align: left;
  text-decoration: none;
}
@media screen and (min-width: 768px) {
  .mypageNav_description {
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  .mypageNav_description {
    margin-top: 10px;
  }
}
.link_home .nav_icon::before {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_home_base.png");
}
.link_home .nav_icon::after {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_home_color.png");
}
.link_member_info .nav_icon::before {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_member_info_base.png");
}
.link_member_info .nav_icon::after {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_member_info_color.png");
}
.link_point_detail .nav_icon::before {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_point_detail_base.png");
}
.link_point_detail .nav_icon::after {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_point_detail_color.png");
}
.link_point_history .nav_icon::before {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_point_history_base.png");
}
.link_point_history .nav_icon::after {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_point_history_color.png");
}
.link_purchase_history .nav_icon::before {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_purchase_history_base.png");
}
.link_purchase_history .nav_icon::after {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_purchase_history_color.png");
}
.link_group .nav_icon::before {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_group_base.png");
}
.link_group .nav_icon::after {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_group_color.png");
}
.link_affiliation .nav_icon::before {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_affiliation_base.png");
}
.link_affiliation .nav_icon::after {
  background-image: url("/excludes/dcm/fo/img/cmn/navi/pict_affiliation_color.png");
}
/* -----------------------------------------------------------------------------
stepflow
----------------------------------------------------------------------------- */
.stepFlow {
  margin: 0 auto 30px;
}
.stepFlow.stepFlow_color_pink .stepFlow_inner {
  background: #f7efee;
  border: 1px solid #9e332b;
}
.stepFlow.stepFlow_color_pink .stepFlow_inner .step {
  background: #9e332b;
}
.stepFlow.stepFlow_color_pink li:not(:first-child)::before {
  border-color: transparent transparent transparent #9e332b;
}
.stepFlow.stepFlow_color_pink li.is-current .stepFlow_inner {
  background: #9e332b;
}
.stepFlow.stepFlow_color_pink li.is-current .stepFlow_inner .step {
  color: #9e332b;
}
.stepFlow_inner {
  -webkit-align-items: center;
  align-items: center;
  background: #ecf4f7;
  border: #05758d 1px solid;
  border-radius: 4px;
  display: -webkit-flex;
  display: flex;
  height: 100%;
  min-height: 60px;
  padding: 5px 13px;
}
@media screen and (max-width: 767px) {
  .stepFlow_inner {
    -webkit-flex-direction: column;
    flex-direction: column;
    text-align: center;
  }
}
.stepFlow_inner .step {
  -webkit-align-items: center;
  align-items: center;
  background: #05758d;
  border-radius: 50%;
  color: #fff;
  display: flex;
  display: -webkit-flex;
  -webkit-flex: 0 0 40px;
  flex: 0 0 40px;
  font-size: 2.4rem;
  height: 40px;
  -webkit-justify-content: center;
  justify-content: center;
  margin-right: 10px;
  padding-top: 1px;
}
@media screen and (max-width: 767px) {
  .stepFlow_inner .step {
    -webkit-flex: 0 0 24px;
    flex: 0 0 24px;
    font-size: 1.3rem;
    height: 24px;
    margin-bottom: 5px;
    margin-right: 0;
    width: 24px;
  }
}
.stepFlow_inner .text {
  line-height: 1.34;
}
@media screen and (min-width: 960px) {
  .stepFlow_inner .text br {
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .stepFlow_inner .text {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .stepFlow_inner .text {
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    font-size: 1.2rem;
    max-width: 100%;
    min-width: 1%;
  }
}
.stepFlow ol {
  display: -webkit-flex;
  display: flex;
}
.stepFlow li {
  position: relative;
}
@media screen and (min-width: 768px) {
  .stepFlow li {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
  }
}
.stepFlow li.is-current .stepFlow_inner {
  background: #05758d;
}
.stepFlow li.is-current .stepFlow_inner .step {
  background: #fff;
  color: #05758d;
}
.stepFlow li.is-current .stepFlow_inner .text {
  color: #fff;
}
.stepFlow li:not(:first-child) {
  margin-left: 40px;
}
@media screen and (max-width: 767px) {
  .stepFlow li:not(:first-child) {
    margin-left: 17px;
  }
}
.stepFlow li:not(:first-child)::before {
  border-color: transparent transparent transparent #05758d;
  border-style: solid;
  border-width: 10px 0 10px 12px;
  content: "";
  height: 0;
  left: -25px;
  position: absolute;
  top: calc(50% - 10px);
  width: 0;
}
@media screen and (max-width: 767px) {
  .stepFlow li:not(:first-child)::before {
    border-width: 4.5px 0 4.5px 6px;
    left: -10px;
    top: calc(50% - 5px);
  }
}
@media screen and (min-width: 768px) {
  .stepFlow[data-col="2"] li {
    width: calc(50% - (40px * 1 / 2));
  }
}
@media screen and (max-width: 767px) {
  .stepFlow[data-col="2"] li {
    width: calc(50% - (17px * 1 / 2));
  }
}
@media screen and (min-width: 768px) {
  .stepFlow[data-col="3"] li {
    width: calc(33.33% - (40px * 2 / 3));
  }
}
@media screen and (max-width: 767px) {
  .stepFlow[data-col="3"] li {
    width: calc(33.33% - (17px * 2 / 3));
  }
}
@media screen and (min-width: 768px) {
  .stepFlow[data-col="4"] li {
    width: calc(25% - (40px * 3 / 4));
  }
}
@media screen and (max-width: 767px) {
  .stepFlow[data-col="4"] li {
    width: calc(25% - (17px * 3 / 4));
  }
}
@media screen and (min-width: 768px) {
  .stepFlow[data-col="5"] li {
    width: calc(20% - (40px * 4 / 5));
  }
}
@media screen and (max-width: 767px) {
  .stepFlow[data-col="5"] li {
    width: calc(20% - (17px * 4 / 5));
  }
}
/* -----------------------------------------------------------------------------
forms
----------------------------------------------------------------------------- */
.formTable {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .formTable {
    font-size: 1.5rem;
  }
  .formTable input,.formTable textarea,.formTable select {
    font-size: 1.5rem;
  }
}
.formTable_row {
  display: -webkit-flex;
  display: flex;
}
.formTable_row:last-child .formTable_head,.formTable_row:last-child .formTable_data {
  border-bottom: none;
}
@media screen and (min-width: 768px) {
  .formTable_row {
    min-height: 82px;
  }
}
@media screen and (max-width: 767px) {
  .formTable_row {
    -webkit-flex-direction: column;
    flex-direction: column;
  }
}
.formTable_head {
  -webkit-align-items: center;
  align-items: center;
  border-bottom: 1px solid #cacaca;
  color: #42120a;
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  font-weight: bold;
  min-width: 1%;
  padding: 20px 1em 20px 0;
  width: 266px;
}
.formTable_head.width_long {
  width: 298px;
}
@media screen and (max-width: 767px) {
  .formTable_head {
    border-bottom: none;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 15px 0 10px;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .formTable_head.pc_width_middle {
    max-width: 320px;
  }
}
.formTable_data {
  border-bottom: 1px solid #cacaca;
  display: flex;
  display: -webkit-flex;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  min-width: 1%;
  padding: 20px 0;
}
@media screen and (max-width: 767px) {
  .formTable_data {
    padding: 0 0 15px;
  }
}
.ime-mode-disabled {
  ime-mode: disabled;
}
@media screen and (min-width: 768px) {
  .formTable_exception {
    display: -webkit-flex;
    display: flex;
  }
  .formTable_exception > .formTable_row {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
  }
  .formTable_exception > .formTable_row.width_middle {
    max-width: 320px;
  }
  .formTable_exception > .formTable_row + .formTable_row {
    margin-left: 40px;
  }
  .formTable_exception .formTable_data {
    border-bottom: none;
  }
  .formTable_exception + .formTable_exception {
    border-top: 1px solid #cacaca;
  }
}
@media screen and (max-width: 767px) {
  .formTable_exception .formTable_data {
    border-bottom: none;
  }
  .formTable_exception + .formTable_exception {
    border-top: 1px solid #cacaca;
  }
  .formTable_exception .formTable_row:first-child .formTable_data {
    padding-bottom: 0;
  }
}
.formTable-dsp-tbl {
  display: table;
  table-layout: fixed;
}
.formTable-dsp-tbl .formTable_row {
  display: table-row;
}
.formTable-dsp-tbl .formTable_head {
  border-bottom: 1px solid #cacaca;
  display: table-cell;
  padding-left: 1em;
  padding-right: 1em;
  vertical-align: middle;
  width: auto;
}
@media screen and (max-width: 767px) {
  .formTable-dsp-tbl .formTable_head {
    padding-left: 0;
  }
}
.formTable-dsp-tbl .formTable_data {
  border-bottom: 1px solid #cacaca;
  display: table-cell;
  padding-left: 1em;
  padding-right: 1em;
  vertical-align: middle;
  word-break: break-all;
}
@media screen and (max-width: 767px) {
  .formTable-dsp-tbl .formTable_data {
    padding-left: 0;
    padding-top: 15px;
  }
}
@media screen and (min-width: 768px) {
  .formTable-dsp-tbl .pc_wide80 {
    width: 80px;
  }
}
@media screen and (min-width: 768px) {
  .formTable-dsp-tbl .pc_wide130 {
    width: 130px;
  }
}
@media screen and (min-width: 768px) {
  .formTable-dsp-tbl .pc_wide160 {
    width: 160px;
  }
}
@media screen and (min-width: 768px) {
  .formTable-dsp-tbl .pc_wide250 {
    width: 250px;
  }
}
@media screen and (max-width: 767px) {
  .formTable-dsp-tbl .sp_wide60 {
    width: 60px;
  }
}
@media screen and (max-width: 767px) {
  .formTable-dsp-tbl .sp_wide100 {
    width: 100px;
  }
}
.formTable-dsp-tbl .point_wide {
  display: inline-block;
  text-align: right;
  width: 9em;
}
@media screen and (max-width: 767px) {
  .formTable-dsp-tbl .point_wide {
    width: 8em;
  }
}
.formTable-dsp-tbl .formTable-triangle {
  display: inline-block;
  text-align: center;
  width: 3em;
}
@media screen and (max-width: 767px) {
  .formTable-dsp-tbl .formTable-triangle {
    display: block;
    height: 1em;
    width: auto;
  }
}
.formTable-dsp-tbl .formTable-triangleIcon {
  display: inline-block;
  position: relative;
  width: 1em;
}
.formTable-dsp-tbl .formTable-triangleIcon::before {
  border-color: transparent transparent transparent #9e332b;
  border-style: solid;
  border-width: 10px 0 10px 12px;
  content: "";
  display: block;
  height: 0;
  left: 0.3em;
  position: absolute;
  position: absolute;
  top: calc(50% - 17px);
  width: 0;
}
@media screen and (max-width: 767px) {
  .formTable-dsp-tbl .formTable-triangleIcon::before {
    border-color: #9e332b transparent transparent transparent;
    border-width: 6px 5px 0 5px;
    display: block;
    left: calc(50% - 10px);
    top: calc(50% - 12px);
  }
}
/* -----------------------------------------------------------------------------
pointStage
----------------------------------------------------------------------------- */
.pointStage_baloon {
  position: relative;
  text-align: center;
  -webkit-transform: scale(0);
  transform: scale(0);
  transition: 300ms cubic-bezier(0.1, 0.7, 0.65, 1.25);
}
@media screen and (min-width: 768px) {
  .pointStage_baloon {
    margin-bottom: -37px;
    padding-bottom: 47px;
  }
}
@media screen and (max-width: 767px) {
  .pointStage_baloon {
    margin-bottom: -24px;
    padding-bottom: 35px;
  }
}
.pointStage_baloon_body {
  background-color: #ece7e6;
  border-radius: 100px;
  display: inline-block;
  letter-spacing: 0.1em;
  line-height: 1;
  padding: 50px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .pointStage_baloon_body {
    font-size: 2rem;
    max-width: 360px;
    padding: 20px 0 18px 0.5em;
  }
}
@media screen and (max-width: 767px) {
  .pointStage_baloon_body {
    max-width: 260px;
    padding: 15px 0 14px 0.5em;
  }
}
.pointStage_baloon_body::after {
  border-bottom-width: 0;
  border-color: transparent;
  border-style: solid;
  border-top-color: #ece7e6;
  bottom: 0;
  content: "";
  left: 50%;
  position: absolute;
  -webkit-transform-origin: center top;
  transform-origin: center top;
}
@media screen and (min-width: 768px) {
  .pointStage_baloon_body::after {
    border-left-width: 13px;
    border-right-width: 13px;
    border-top-width: 48px;
  }
}
@media screen and (max-width: 767px) {
  .pointStage_baloon_body::after {
    border-left-width: 10px;
    border-right-width: 10px;
    border-top-width: 36px;
  }
}
.pointStage_baloon_stageName {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .pointStage_baloon_stageName {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .pointStage_baloon_stageName {
    font-size: 1.75rem;
  }
}
.pointStage_steps {
  -webkit-align-items: flex-end;
  align-items: flex-end;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.pointStage_steps_step {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
.pointStage_steps_step:nth-child(1) {
  width: 12.8%;
}
.pointStage_steps_step:nth-child(2) {
  width: 14.6%;
}
.pointStage_steps_step:nth-child(3) {
  width: 13.2%;
}
.pointStage_steps_step:nth-child(4) {
  width: 20%;
}
.pointStage_steps_step:nth-child(5) {
  width: 24.7%;
}
.pointStage_steps_step .step_image {
  padding-top: 107%;
  position: relative;
  width: 100%;
}
.pointStage_steps_step .step_image::before,.pointStage_steps_step .step_image::after {
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.pointStage_steps_step.step-01 .step_image::before {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage1_off.png");
}
.pointStage_steps_step.step-01 .step_image::after {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage1_on.png");
}
.pointStage_steps_step.step-02 .step_image::before {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage2_off.png");
}
.pointStage_steps_step.step-02 .step_image::after {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage2_on.png");
}
.pointStage_steps_step.step-03 .step_image::before {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage3_off.png");
}
.pointStage_steps_step.step-03 .step_image::after {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage3_on.png");
}
.pointStage_steps_step.step-04 .step_image::before {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage4_off.png");
}
.pointStage_steps_step.step-04 .step_image::after {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage4_on.png");
}
.pointStage_steps_step.step-05 .step_image::before {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage5_off.png");
}
.pointStage_steps_step.step-05 .step_image::after {
  background-image: url("/excludes/dcm/fo/img/cmn/stage/stage5_on.png");
}
.pointStage_steps_step .step_name {
  background-color: #cacaca;
  border-radius: 50px;
  color: #42120a;
  font-weight: bold;
  line-height: 1;
  max-width: calc(100% + 8px);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .pointStage_steps_step .step_name {
    font-size: 1.6rem;
    letter-spacing: 0.4em;
    margin-top: 8px;
    padding: 5px 0 3px 0.4em;
    width: 70px;
  }
}
@media screen and (max-width: 767px) {
  .pointStage_steps_step .step_name {
    font-size: 1.3rem;
    letter-spacing: 0.2em;
    margin-top: 8px;
    padding: 5px 0 2px 0.2em;
    width: 47px;
  }
}
.pointStage_information {
  font-weight: bold;
  margin-top: 10px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .pointStage_information {
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  .pointStage_information {
    margin-top: 10px;
  }
}
.pointStage_information + .pointStage_information {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .pointStage_information + .pointStage_information {
    margin-top: 5px;
  }
}
.pointStage_information.stageDeadline {
  margin-left: -1em;
}
.pointStage_information .label {
  display: inline-block;
}
.pointStage.on-animate .pointStage_baloon {
  -webkit-transform: scale(1);
  transform: scale(1);
}
.pointStage.is-stege-1 .pointStage_baloon {
  -webkit-transform-origin: 42.2% bottom;
  transform-origin: 42.2% bottom;
}
.pointStage.is-stege-1 .pointStage_baloon_body::after {
  margin-left: -140px;
  -webkit-transform: skewX(-40deg);
  transform: skewX(-40deg);
}
@media screen and (max-width: 767px) {
  .pointStage.is-stege-1 .pointStage_baloon_body::after {
    margin-left: -110px;
  }
}
.pointStage.is-stege-1 .step-01 .step_name {
  background-color: #d45c1d;
  color: #fff;
}
.pointStage.is-stege-1 .step-02 .step_image::after {
  display: none;
}
.pointStage.is-stege-1 .step-03 .step_image::after {
  display: none;
}
.pointStage.is-stege-1 .step-04 .step_image::after {
  display: none;
}
.pointStage.is-stege-1 .step-05 .step_image::after {
  display: none;
}
.pointStage.is-stege-2 .pointStage_baloon {
  -webkit-transform-origin: 42.2% bottom;
  transform-origin: 42.2% bottom;
}
.pointStage.is-stege-2 .pointStage_baloon_body::after {
  margin-left: -80px;
  -webkit-transform: skewX(-40deg);
  transform: skewX(-40deg);
}
.pointStage.is-stege-2 .step-01 .step_name {
  background-color: #42120a;
  color: #fff;
}
.pointStage.is-stege-2 .step-02 .step_name {
  background-color: #d45c1d;
  color: #fff;
}
.pointStage.is-stege-2 .step-03 .step_image::after {
  display: none;
}
.pointStage.is-stege-2 .step-04 .step_image::after {
  display: none;
}
.pointStage.is-stege-2 .step-05 .step_image::after {
  display: none;
}
.pointStage.is-stege-3 .pointStage_baloon {
  -webkit-transform-origin: 42.2% bottom;
  transform-origin: 42.2% bottom;
}
.pointStage.is-stege-3 .pointStage_baloon_body::after {
  margin-left: -5%;
  -webkit-transform: skewX(-29.5deg);
  transform: skewX(-29.5deg);
}
.pointStage.is-stege-3 .step-01 .step_name,.pointStage.is-stege-3 .step-02 .step_name {
  background-color: #42120a;
  color: #fff;
}
.pointStage.is-stege-3 .step-03 .step_name {
  background-color: #d45c1d;
  color: #fff;
}
.pointStage.is-stege-3 .step-04 .step_image::after {
  display: none;
}
.pointStage.is-stege-3 .step-05 .step_image::after {
  display: none;
}
.pointStage.is-stege-4 .pointStage_baloon {
  -webkit-transform-origin: 42.2% bottom;
  transform-origin: 42.2% bottom;
}
.pointStage.is-stege-4 .pointStage_baloon_body::after {
  margin-left: -5%;
  -webkit-transform: skewX(29.5deg);
  transform: skewX(29.5deg);
}
.pointStage.is-stege-4 .step-01 .step_name,.pointStage.is-stege-4 .step-02 .step_name,.pointStage.is-stege-4 .step-03 .step_name {
  background-color: #42120a;
  color: #fff;
}
.pointStage.is-stege-4 .step-04 .step_name {
  background-color: #d45c1d;
  color: #fff;
}
.pointStage.is-stege-4 .step-05 .step_image::after {
  display: none;
}
.pointStage.is-stege-5 .pointStage_baloon {
  -webkit-transform-origin: 42.2% bottom;
  transform-origin: 42.2% bottom;
}
.pointStage.is-stege-5 .pointStage_baloon_body::after {
  margin-left: 110px;
  -webkit-transform: skewX(29.5deg);
  transform: skewX(29.5deg);
}
@media screen and (max-width: 767px) {
  .pointStage.is-stege-5 .pointStage_baloon_body::after {
    margin-left: 80px;
  }
}
.pointStage.is-stege-5 .step-01 .step_name,.pointStage.is-stege-5 .step-02 .step_name,.pointStage.is-stege-5 .step-03 .step_name,.pointStage.is-stege-5 .step-04 .step_name {
  background-color: #42120a;
  color: #fff;
}
.pointStage.is-stege-5 .step-05 .step_name {
  background-color: #d45c1d;
  color: #fff;
}
.modal {
  -webkit-align-items: center;
  align-items: center;
  display: none;
  height: 100%;
  -webkit-justify-content: center;
  justify-content: center;
  left: 0;
  padding: 15px;
  position: fixed;
  top: 100%;
  width: 100%;
  z-index: 100;
}
.modal.is-open {
  display: -webkit-flex;
  display: flex;
  top: 0;
}
.modal_overlay {
  background-color: rgba(0, 0, 0, 0.5);
  bottom: 0;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
}
.modal_close {
  background: none;
  border: none;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (min-width: 768px) {
  .modal_close {
    height: 30px;
    margin-right: 10px;
    margin-top: 10px;
    width: 30px;
  }
}
@media screen and (max-width: 767px) {
  .modal_close {
    height: 22px;
    margin-right: 10px;
    margin-top: 10px;
    width: 22px;
  }
}
.modal_close::before,.modal_close::after {
  background-color: #42120a;
  content: "";
  height: 4px;
  left: 50%;
  margin-left: -60%;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 120%;
}
.modal_close::before {
  -webkit-transform: rotate(45deg) scale(0.8);
  transform: rotate(45deg) scale(0.8);
}
.modal_close::after {
  -webkit-transform: rotate(-45deg) scale(0.8);
  transform: rotate(-45deg) scale(0.8);
}
.modal_outer {
  display: -webkit-flex;
  display: flex;
  height: auto;
  max-height: calc(100% - 1px);
  max-width: calc(100% - 1px);
  opacity: 0;
  position: relative;
  transition: opacity 300ms ease-in;
  width: 700px;
}
.modal_outer.width_short {
  width: 500px;
}
.modal_outer.is-open {
  opacity: 1;
}
.modal_base {
  background-color: #fff;
  border-radius: 6px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-flex-direction: column;
  flex-direction: column;
  height: inherit;
  margin: 20px 0;
  min-height: 1%;
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .modal_base {
    padding: 40px 30px 30px;
  }
}
@media screen and (max-width: 767px) {
  .modal_base {
    padding: 40px 18px 18px;
  }
}
.modal_inner {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  max-height: 100%;
  max-width: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}
.modal_heading {
  border-bottom: 1px solid #42120a;
  color: #42120a;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .modal_heading {
    font-size: 1.8rem;
    margin-bottom: 20px;
    padding-bottom: 5px;
  }
}
@media screen and (max-width: 767px) {
  .modal_heading {
    font-size: 1.6rem;
    margin-bottom: 15px;
    padding-bottom: 3px;
  }
}
body.is-open-modal {
  overflow: hidden;
}
/* -----------------------------------------------------------------------------
FAQ
----------------------------------------------------------------------------- */
.faqWrapper {
  border-bottom: 1px solid #42120a;
}
.faqHeading {
  border-top: 1px solid #42120a;
  color: #42120a;
  cursor: pointer;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.2;
  padding: 47px 40px 47px 130px;
  position: relative;
  word-break: break-all;
}
@media screen and (max-width: 767px) {
  .faqHeading {
    font-size: 2rem;
    padding: 27px 40px 27px 75px;
  }
}
.faqHeading.open::after {
  -webkit-animation: none !important;
  animation: none !important;
  background: url(/excludes/dcm/fo/img/cmn/icon/icon_faq_open.png) no-repeat center center;
  background-size: cover;
}
.faqHeading.open span::after {
  display: none;
}
.faqHeading::after {
  background: url(/excludes/dcm/fo/img/cmn/icon/icon_faq_close.png) no-repeat center center;
  background-size: cover;
  content: "";
  display: block;
  height: 88px;
  left: 10px;
  position: absolute;
  top: calc(50% - 44px);
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
  width: 100px;
}
@media screen and (max-width: 767px) {
  .faqHeading::after {
    height: 62px;
    left: 0;
    top: calc(50% - 31px);
    width: 70px;
  }
}
.faqHeading::before {
  background: #42120a;
  border-radius: 100%;
  content: "";
  display: block;
  height: 24px;
  position: absolute;
  right: 10px;
  top: calc(50% - 12px);
  width: 24px;
}
.faqHeading span::before {
  background: #fff;
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  right: 15px;
  top: calc(50% - 1px);
  width: 14px;
}
.faqHeading span::after {
  background: #fff;
  content: "";
  display: block;
  height: 14px;
  position: absolute;
  right: 21px;
  top: calc(50% - 7px);
  width: 2px;
}
.faqHeading:hover::after {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: shake;
  animation-name: shake;
}
.faqHeading:hover span {
  color: #653e35;
}
@-webkit-keyframes shake {
  0% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  25% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(2deg);
    transform: rotate(2deg);
  }
  50% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  75% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg);
  }
  100% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@keyframes shake {
  0% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  25% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(2deg);
    transform: rotate(2deg);
  }
  50% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  75% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg);
  }
  100% {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
.faqBody {
  display: none;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .faqBody {
    margin-bottom: 32px;
  }
}
.faqBody .box + .box {
  margin-top: 20px;
}
.faqBodyHeading {
  border-bottom: 1px solid #000;
  color: #42120a;
  font-weight: bold;
  margin-bottom: 23px;
  padding-bottom: 20px;
  padding-left: 55px;
  padding-top: 7px;
  position: relative;
}
.faqBodyHeading::before {
  -webkit-align-items: center;
  align-items: center;
  background: #42120a;
  border-radius: 100%;
  color: #fff;
  content: "Q";
  display: -webkit-flex;
  display: flex;
  font-weight: normal;
  height: 34px;
  -webkit-justify-content: center;
  justify-content: center;
  left: 0;
  line-height: 1;
  position: absolute;
  top: -2px;
  width: 34px;
}
.faqBodyAnswer {
  padding-left: 55px;
  position: relative;
}
.faqBodyAnswer::before {
  -webkit-align-items: center;
  align-items: center;
  background: #ffe123;
  border-radius: 100%;
  color: #42120a;
  content: "A";
  display: -webkit-flex;
  display: flex;
  font-weight: normal;
  height: 34px;
  -webkit-justify-content: center;
  justify-content: center;
  left: 0;
  line-height: 1;
  position: absolute;
  top: -2px;
  width: 34px;
}
/* -----------------------------------------------------------------------------
wrapper
----------------------------------------------------------------------------- */
.wrapper {
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .wrapper {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    min-height: 100vh;
  }
}
/* -----------------------------------------------------------------------------
header
----------------------------------------------------------------------------- */
@media screen and (min-width: 768px) {
  .header {
    padding: 20px 20px 0;
  }
}
@media screen and (max-width: 767px) {
  .header {
    padding: 0;
  }
}
.header_inner {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1120px;
}
@media screen and (min-width: 768px) {
  .header_inner {
    padding-bottom: 20px;
  }
}
.header_firstArea {
  display: -webkit-flex;
  display: flex;
}
@media screen and (min-width: 768px) {
  .header_firstArea {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .header_firstArea {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-flex-direction: column;
    flex-direction: column;
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .header_firstArea {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 350px;
    min-width: 250px;
  }
}
.header_lastArea {
  display: -webkit-flex;
  display: flex;
}
@media screen and (min-width: 768px) {
  .header_lastArea {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .header_lastArea {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
  }
}
.header_logo {
  min-width: 1%;
}
@media screen and (max-width: 767px) {
  .header_logo {
    margin-left: 18px;
  }
}
.header_logo img {
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .header_logo img {
    height: 47px;
  }
}
.header_userId {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
}
@media screen and (max-width: 959px) {
  .header_userId br {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .header_userId {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 767px) {
  .header_userId {
    background-color: rgba(255, 255, 255, 0.5);
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-flex-direction: column;
    flex-direction: column;
    padding: 12px;
  }
}
.header_navi {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  font-size: 1.5rem;
  padding-top: 8px;
}
@media screen and (max-width: 767px) {
  .header_navi {
    display: none;
  }
}
.header_navi_list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .header_navi_list {
    -webkit-align-items: flex-end;
    align-items: flex-end;
    min-width: 1%;
    white-space: nowrap;
  }
}
.header_navi_item {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  margin-bottom: 8px;
}
.header_navi_item:last-child {
  margin-left: 18px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .header_navi_item {
    margin-left: 0;
  }
}
.header_navi_item.header_navi_item--fullWide {
  text-align: right;
  width: 100%;
}
.header_navi a:hover span {
  text-decoration: underline;
}
.header_mypageButton {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .header_mypageButton {
    display: none;
  }
}
.header_mypageButton + .header_mypageButton {
  margin-left: 15px;
}
/* -----------------------------------------------------------------------------
contents
----------------------------------------------------------------------------- */
.system_message {
  margin-bottom: 35px;
  padding: 0 18px;
}
.mainArea {
  padding: 35px 0 140px;
}
@media screen and (min-width: 768px) {
  .mainArea {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
  }
}
@media screen and (max-width: 767px) {
  .mainArea {
    padding: 25px 0 110px;
  }
}
.contents_summary {
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .contents_summary {
    margin-bottom: 25px;
  }
}
.contents_summary_inner {
  margin: 0 auto;
  max-width: 1100px;
  padding: 0 50px;
}
@media screen and (max-width: 767px) {
  .contents_summary_inner {
    padding: 0 28px;
  }
}
/* -----------------------------------------------------------------------------
sections
----------------------------------------------------------------------------- */
.section {
  padding: 0 18px;
}
.section_inner {
  margin: 0 auto;
  max-width: 1120px;
}
.section_inner.wide_wide {
  max-width: 1200px;
  padding: 0;
}
.section_inner.wide_narrow {
  max-width: 960px;
}
/* -----------------------------------------------------------------------------
grids
----------------------------------------------------------------------------- */
.grid {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -20px;
  margin-right: -20px;
  margin-top: -40px;
}
@media screen and (max-width: 767px) {
  .grid {
    margin-left: -10px;
    margin-right: -10px;
    margin-top: -20px;
  }
}
.grid_col {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 40px;
}
@media screen and (max-width: 767px) {
  .grid_col {
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 20px;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .grid_col.wide_1in2 {
    width: 50%;
  }
  .grid_col.wide_1in3 {
    width: 33.33%;
  }
  .grid_col.wide_2in3 {
    width: 66.66%;
  }
  .grid_col.wide_1in4 {
    width: 25%;
  }
  .grid_col.wide_1in5 {
    width: 20%;
  }
  .grid_col.wide_1in6 {
    width: 16.66%;
  }
}
@media screen and (max-width: 767px) {
  .grid_col.sp-wide_1in2 {
    width: 50%;
  }
  .grid_col.sp-wide_1in3 {
    width: 33.33%;
  }
  .grid_col.sp-wide_2in3 {
    width: 66.66%;
  }
  .grid_col.sp-wide_1in6 {
    width: 16.66%;
  }
}
.grid.gutter_thin {
  margin-left: -5px;
  margin-right: -5px;
  margin-top: -10px;
}
@media screen and (max-width: 767px) {
  .grid.gutter_thin {
    margin-left: -2.5px;
    margin-right: -2.5px;
    margin-top: -5px;
  }
}
.grid.gutter_thin .grid_col {
  padding-left: 5px;
  padding-right: 5px;
  padding-top: 10px;
}
@media screen and (max-width: 767px) {
  .grid.gutter_thin .grid_col {
    padding-left: 2.5px;
    padding-right: 2.5px;
    padding-top: 5px;
  }
}
.grid.gutter_short {
  margin-left: -9px;
  margin-right: -9px;
  margin-top: -18px;
}
@media screen and (max-width: 767px) {
  .grid.gutter_short {
    margin-left: -4.5px;
    margin-right: -4.5px;
    margin-top: -9px;
  }
}
.grid.gutter_short .grid_col {
  padding-left: 9px;
  padding-right: 9px;
  padding-top: 18px;
}
@media screen and (max-width: 767px) {
  .grid.gutter_short .grid_col {
    padding-left: 4.5px;
    padding-right: 4.5px;
    padding-top: 9px;
  }
}
.grid.gutter_long {
  margin-left: -30px;
  margin-right: -30px;
  margin-top: -60px;
}
@media screen and (max-width: 767px) {
  .grid.gutter_long {
    margin-left: -15px;
    margin-right: -15px;
    margin-top: -30px;
  }
}
.grid.gutter_long .grid_col {
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 60px;
}
@media screen and (max-width: 767px) {
  .grid.gutter_long .grid_col {
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 30px;
  }
}
/* -----------------------------------------------------------------------------
units
----------------------------------------------------------------------------- */
@media screen and (min-width: 768px) {
  .formUnitWrapper {
    display: -webkit-flex;
    display: flex;
  }
  .formUnitWrapper > .formUnit {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
  }
  .formUnitWrapper > .formUnit:last-child:not(.subText):not(.subButton):not(:first-child) {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-left: 40px;
  }
  .formUnitWrapper > .formUnit.subText {
    margin-left: 20px;
  }
  .formUnitWrapper > .formUnit.subButton {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-left: 20px;
  }
}
@media screen and (max-width: 767px) {
  .formUnitWrapper .formUnit:not(:last-child) {
    margin-bottom: 10px;
  }
  .formUnitWrapper.sp_sameUnit {
    display: -webkit-flex;
    display: flex;
  }
  .formUnitWrapper.sp_sameUnit .formUnit:not(:last-child) {
    margin-bottom: 0;
  }
  .formUnitWrapper.sp_sameUnit > .formUnit {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
  }
  .formUnitWrapper.sp_sameUnit > .formUnit:last-child:not(.subText):not(.subButton):not(:first-child) {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-left: 10px;
  }
  .formUnitWrapper.sp_sameUnit > .formUnit.subText {
    margin-left: 10px;
  }
  .formUnitWrapper.sp_sameUnit > .formUnit.subButton {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    margin-left: 10px;
  }
}
.formUnit {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .formUnit.width_short {
    max-width: 250px;
  }
  .formUnit.width_middle {
    max-width: 340px;
  }
  .formUnit.width_middle02 {
    max-width: 369px;
  }
  .formUnit.width_long {
    max-width: 396px;
  }
}
.formUnit.wide_fix {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
}
.formUnit.wrap {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.formUnit_text {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
}
.formUnit_text + .formUnit_input {
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .formUnit_text + .formUnit_input {
    margin-left: 10px;
  }
}
.formUnit_text.wrap {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.wide_fix .formUnit_text {
  -webkit-flex: 0 1 auto;
  flex: 0 1 auto;
}
.formUnit_input {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
}
.formUnit_input + .formUnit_text {
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .formUnit_input + .formUnit_text {
    margin-left: 10px;
  }
}
.formUnit_input.radio {
  margin-bottom: 2px;
}
.formUnit_input.radio + .formUnit_text {
  margin-left: 10px;
}
.formUnit_input.checkbox {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  margin-bottom: 2px;
}
.formUnit_input.checkbox + .formUnit_text {
  margin-left: 10px;
}
.wide_fix .formUnit_input {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
}
.formUnit_button {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
}
.formUnit02 {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-inline-flex;
  display: inline-flex;
}
.buttonUnit {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
}
.buttonUnit > .buttonUnit_item {
  min-width: 1%;
}
.buttonUnit > .buttonUnit_item + .buttonUnit_item {
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .buttonUnit.sp_flex-column-reverse > .buttonUnit_item + .buttonUnit_item {
    margin-bottom: 20px;
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .buttonUnit.sp_flex-column > .buttonUnit_item + .buttonUnit_item {
    margin-bottom: 20px;
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .buttonUnit_item.sp_middle {
    width: 100%;
    max-width: 250px;
  }
}
/* -----------------------------------------------------------------------------
footer
----------------------------------------------------------------------------- */
.footer {
  background-color: #9e837a;
  background-image: url("/excludes/dcm/fo/img/cmn/bg/footer_bg_texture.png");
  background-position: center top;
  background-repeat: repeat;
  color: #fff;
  line-height: 1;
  padding: 40px 0;
  position: relative;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footer {
    padding: 25px 10px;
  }
}
.footer .page_top {
  height: 106px;
  position: fixed;
  width: 58px;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .footer .page_top {
    bottom: 30px;
    right: 30px;
  }
}
@media screen and (max-width: 767px) {
  .footer .page_top {
    bottom: 18px;
    height: 73px;
    right: 18px;
    width: 40px;
  }
}
.footer .page_top.is-bottom {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .footer .page_top.is-bottom {
    bottom: calc(100% + 30px);
  }
}
@media screen and (max-width: 767px) {
  .footer .page_top.is-bottom {
    bottom: calc(100% + 18px);
  }
}
.footer .page_top_link {
  display: block;
  height: 100%;
  transition-duration: 0.2s;
  width: 100%;
}
.footer .page_top_link:hover {
  opacity: 0.7;
}
.footer .page_top_icon {
  vertical-align: top;
}
.footer_linkList {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .footer_linkList {
    -webkit-justify-content: center;
    justify-content: center;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 767px) {
  .footer_linkList {
    margin-bottom: 20px;
    margin-top: -8px;
  }
}
@media screen and (min-width: 768px) {
  .footer_linkList_item {
    margin: 10px 20px;
  }
}
@media screen and (max-width: 767px) {
  .footer_linkList_item {
    border-bottom: 1px solid #d9d0ce;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    margin: 0 5px 20px;
    width: calc(50% - 10px);
  }
}
.footer_linkList a {
  color: #fff;
  display: block;
  padding: 3px 5px 8px;
  text-decoration: none;
}
.footer_linkList a:hover {
  text-decoration: underline;
}
.footer_copyright {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footer_copyright {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .footer_copyright {
    font-size: 1.3rem;
  }
}
.footer_copyright a {
  color: #fff;
  text-decoration: none;
}
.footer_copyright a:hover {
  text-decoration: underline;
}
/* -----------------------------------------------------------------------------
top page
----------------------------------------------------------------------------- */
@media screen and (max-width: 767px) {
  .mypage-top .secondaryHeading {
    -webkit-align-self: flex-start;
    align-self: flex-start;
    display: -webkit-inline-flex;
    display: inline-flex;
    margin-left: 8px;
  }
  .mypage-top .secondaryHeading::before {
    max-width: calc(100vw - 36px);
    width: calc(100% + 80px);
  }
}
.mypage-top .secondaryHeading + .box {
  margin-top: -15px;
  padding-top: 45px;
}
@media screen and (max-width: 767px) {
  .mypage-top .secondaryHeading + .box {
    padding-bottom: 23px;
  }
}
.mypage-top .top_grid {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .mypage-top .top_grid.grid_balanceWrapper {
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
    max-width: calc(100% - 380px);
  }
}
@media screen and (min-width: 768px) {
  .mypage-top .top_grid.grid_myvotWrapper {
    float: right;
  }
}
.mypage-top .grid_point {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .mypage-top .grid_point {
    margin-bottom: 20px;
    -webkit-order: 1;
    order: 1;
  }
}
.mypage-top .grid_point-inner {
  position: relative;
}
.mypage-top .grid_pointLeft {
  width: 46.25%;
}
@media screen and (max-width: 767px) {
  .mypage-top .grid_pointLeft {
    -webkit-order: 2;
    order: 2;
    width: 100%;
  }
}
.mypage-top .grid_pointLeft-inner {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  height: 100%;
  padding-top: 75px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .mypage-top .grid_pointLeft-inner {
    padding-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .mypage-top .groupName {
    -webkit-align-items: center;
    align-items: center;
    display: flex;
    display: -webkit-flex;
    font-size: 2.2rem;
    font-weight: bold;
    height: 3.3em;
    left: 30px;
    line-height: 1.1;
    max-width: 42%;
    position: absolute;
    top: 45px;
    z-index: 1;
  }
}
@media screen and (max-width: 767px) {
  .mypage-top .groupName {
    font-size: 1.7rem;
    font-weight: bold;
    margin-bottom: 12px;
    text-align: center;
  }
}
.mypage-top .grid_pointRight {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  padding-left: 10px;
}
@media screen and (min-width: 768px) {
  .mypage-top .grid_pointRight {
    width: 53.75%;
  }
}
@media screen and (max-width: 767px) {
  .mypage-top .grid_pointRight {
    -webkit-order: 1;
    order: 1;
  }
}
.mypage-top .grid_pointRight .ribbonHeading {
  margin: 0 auto 20px;
  max-width: 480px;
}
@media screen and (max-width: 767px) {
  .mypage-top .grid_pointRight .ribbonHeading {
    max-width: 100%;
  }
}
.mypage-top .grid_pointRight-inner {
  padding-top: 5px;
}
.mypage-top .grid_balance {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mypage-top .grid_balance {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .mypage-top .grid_balance {
    -webkit-order: 3;
    order: 3;
    width: 100%;
  }
}
.mypage-top .grid_myvot {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .mypage-top .grid_myvot {
    max-width: 380px;
    min-width: 380px;
    width: 380px;
  }
}
@media screen and (max-width: 767px) {
  .mypage-top .grid_myvot {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    margin-bottom: 20px;
    -webkit-order: 2;
    order: 2;
  }
}
.mypage-top .inner-point {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .mypage-top .inner-point {
    -webkit-flex-direction: column;
    flex-direction: column;
  }
}
.mypage-top .inner-point .heading {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  font-weight: bold;
  line-height: 1.334;
}
.mypage-top .inner-point .point {
  color: #42120a;
  font-size: 3.2rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .mypage-top .inner-point .point {
    font-size: 2.4rem;
  }
}
.mypage-top .inner-point .unit {
  font-size: 2.2rem;
  margin-left: 5px;
}
@media screen and (max-width: 767px) {
  .mypage-top .inner-point .unit {
    font-size: 1.6rem;
  }
}
.mypage-top .inner-balance {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
}
.mypage-top .inner-balance-left {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: flex-start;
}
@media screen and (max-width: 767px) {
  .mypage-top .inner-balance {
    -webkit-flex-direction: column;
    flex-direction: column;
  }
}
.mypage-top .inner-balance .heading {
  font-weight: bold;
  padding: 0 50px;
  padding-right: 40px;
}
.mypage-top .inner-balance .price {
  color: #42120a;
  font-size: 2.8rem;
  font-weight: bold;
  font-weight: bold;
  padding: 0 50px;
}
.mypage-top .inner-balance .unit {
  font-size: 2.2rem;
  margin-left: 5px;
}
@media screen and (min-width: 768px) {
  .supplementary-text {
    left: 0;
    position: absolute;
    top: calc(-1.5em - 45px);
  }
}
/* -----------------------------------------------------------------------------
login page
----------------------------------------------------------------------------- */
.login-page .grid_loginWrapper {
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding-top: 18px;
}
@media screen and (min-width: 1160px) {
  .login-page .grid_loginWrapper.grid_floatRight {
    float: right;
    margin-top: 0;
    padding-top: 0;
    width: 34%;
  }
}
@media screen and (max-width: 1159px) {
  .login-page .grid_loginWrapper.grid_floatRight {
    float: right;
    margin-top: 0;
    padding-top: 0;
    width: calc(100% - 600px);
  }
}
@media screen and (max-width: 959px) {
  .login-page .grid_loginWrapper.grid_floatRight {
    float: none;
    width: auto;
  }
}
@media screen and (min-width: 960px) {
  .login-page .grid_loginWrapper.grid_newWrapper {
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
    max-width: 760px;
    padding-top: 18px;
  }
}
@media screen and (max-width: 767px) {
  .login-page .secondaryHeading {
    -webkit-align-self: flex-start;
    align-self: flex-start;
    display: -webkit-inline-flex;
    display: inline-flex;
    margin-left: 8px;
  }
  .login-page .secondaryHeading::before {
    max-width: calc(100vw - 36px);
    width: calc(100% + 80px);
  }
}
.login-page .secondaryHeading + .box {
  margin-top: -15px;
  padding-top: 45px;
}
@media screen and (max-width: 767px) {
  .login-page .secondaryHeading + .box {
    padding-bottom: 23px;
  }
}
.login-page .top_grid {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.login-page .store_inner {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
}
.login-page .store_inner .innerImage {
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
}
.login-page .store_inner .innerText {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 0 30px;
}
.login-page .grid_new {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
}
@media screen and (min-width: 960px) {
  .login-page .grid_new {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .login-page .grid_new {
    width: 100%;
  }
}
.login-page .grid_new_inner {
  height: 100%;
  min-height: 1%;
  min-width: 740px;
  padding-top: 50px;
  position: relative;
}
.login-page .grid_new_inner > * {
  max-width: 510px;
}
.login-page .grid_new_inner .character {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  min-height: 1%;
  position: absolute;
  right: 29px;
  top: 27px;
}
.login-page .grid_new_inner .characterText {
  color: #42120a;
  font-size: 1.7rem;
  line-height: 1.41;
  margin-bottom: 10px;
  min-width: 164px;
  position: relative;
  text-align: center;
}
.login-page .grid_new_inner .characterText span {
  background: #ece7e6;
  border-radius: 50%;
  display: inline-block;
  padding: 20% 5%;
  position: relative;
  width: 100%;
  z-index: 1;
}
.login-page .grid_new_inner .characterText span::after {
  border: 7px solid transparent;
  border-top: 20px solid #ece7e6;
  content: "";
  left: 50%;
  margin-left: 10px;
  position: absolute;
  top: calc(100% - 2px);
  -webkit-transform: skewX(-30deg);
  transform: skewX(-30deg);
  -webkit-transform-origin: top center;
  transform-origin: top center;
}
.login-page .grid_new_inner .characterImg {
  margin: 0 auto;
  width: 146px;
}
.login-page .grid_login {
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-flex-direction: column;
  flex-direction: column;
  padding-top: 18px;
}
.login-page .grid_login > .box {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  height: 100%;
}
.login-page .grid_login .button {
  max-width: 280px;
  min-width: inherit;
  min-width: auto;
  width: 100%;
}
.login-page .grid_login_inner {
  padding-top: 20px;
}
@media screen and (min-width: 960px) and (max-width: 1159px) {
  .login-page .grid_new_inner {
    min-width: 600px;
  }
  .login-page .grid_new_inner > * {
    max-width: 410px;
  }
  .login-page .grid_new_inner .character {
    right: 23px;
    top: 21px;
  }
  .login-page .grid_new_inner .characterText {
    font-size: 1.36rem;
    min-width: 131px;
  }
  .login-page .grid_new_inner .characterText span {
    padding: 16% 4%;
  }
  .login-page .grid_new_inner .characterText span::after {
    top: calc(100% - 5px);
  }
  .login-page .grid_new_inner .characterImg {
    width: 116px;
  }
  .login-page .pickupBadge {
    max-width: 128px;
  }
  .login-page .pickupBadge_img {
    height: 64px;
    width: 104px;
  }
  .login-page .pickupBadge_text {
    font-size: 1.36rem;
  }
  .login-page .characterImg {
    margin-top: 35px;
    width: 146px;
  }
}
@media screen and (max-width: 959px) {
  .login-page .grid_login {
    margin-bottom: 20px;
  }
  .login-page .grid_login .grid_login_inner {
    -webkit-align-items: center;
    align-items: center;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-bottom: 10px;
  }
  .login-page .grid_login .grid_login_inner .button {
    min-width: 280px;
  }
  .login-page .grid_login .grid_login_inner .pickupBadge_box_outer {
    min-height: 160px;
  }
  .login-page .grid_login .grid_login_inner .pickupBadge {
    margin: 0 20px 0 0 !important;
  }
  .login-page .gird_loginWrapper {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .login-page .grid_new_inner {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    min-width: inherit;
  }
  .login-page .grid_new_inner > * {
    max-width: inherit;
  }
  .login-page .grid_new_inner .grid_badge {
    width: calc(100% - 164px);
  }
  .login-page .grid_button {
    width: 100%;
  }
  .login-page .grid_new {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .login-page .grid_login > .box {
    padding-bottom: 18px;
  }
  .login-page .grid_login .grid_login_inner {
    padding-right: 15px;
    padding-top: 15px;
  }
  .login-page .grid_login .grid_login_inner .pickupBadge {
    display: -webkit-flex;
    display: flex;
    margin: 0 !important;
    max-width: 70px;
  }
  .login-page .grid_login .grid_login_inner .pickupBadge_box_outer {
    min-height: inherit;
  }
  .login-page .grid_login .grid_login_inner .buttonUnit {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    margin-left: 15px;
    max-width: 280px;
    width: 100%;
  }
  .login-page .grid_login .grid_login_inner .button {
    min-width: inherit;
  }
  .login-page .grid_new_inner {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding-bottom: 18px;
    padding-top: 20px;
  }
  .login-page .grid_new_inner .character {
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 0 auto 20px;
    -webkit-order: 0;
    order: 0;
    position: relative;
    right: 0;
    top: 0;
  }
  .login-page .grid_new_inner .characterText {
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    font-size: 1.5rem;
    margin-left: 10px;
    min-width: 193px;
  }
  .login-page .grid_new_inner .characterText span {
    padding: 18% 1em;
    white-space: nowrap;
  }
  .login-page .grid_new_inner .characterText span::after {
    border: 10px solid transparent;
    border-top: 20px solid #ece7e6;
    left: -2px;
    margin-left: 0;
    top: calc(50% - -28px);
    -webkit-transform: skewX(-30deg) rotate(50deg);
    transform: skewX(-30deg) rotate(50deg);
    -webkit-transform-origin: right top;
    transform-origin: right top;
  }
  .login-page .grid_new_inner .characterImg {
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
    margin: 0;
    max-width: 122px;
    min-width: 1%;
    width: auto;
  }
  .login-page .grid_new_inner .characterImg img {
    min-width: 1%;
  }
  .login-page .grid_new_inner .grid_button {
    margin-bottom: 20px;
    -webkit-order: 2;
    order: 2;
  }
  .login-page .grid_new_inner .grid_badge {
    margin: 0 auto;
    max-width: 375px;
    -webkit-order: 3;
    order: 3;
    width: 100%;
  }
  .login-page .pickupBadge_text {
    font-size: 1.4rem;
  }
  .login-page .store_inner {
    -webkit-flex-direction: column;
    flex-direction: column;
  }
  .login-page .store_inner .innerImage {
    margin-bottom: 20px;
    width: 76px;
  }
  .login-page .store_inner .innerText {
    margin-bottom: 20px;
    padding: 0;
  }
}
@media screen and (max-width: 320px) {
  .login-page .pickupBadge_text {
    font-size: 1.1rem;
  }
}
/* -----------------------------------------------------------------------------
registration page
----------------------------------------------------------------------------- */
.registratio_grid {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
}
.registratio_box {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
}
.registrationUnit {
  display: -webkit-flex;
  display: flex;
}
.registrationUnit--small {
  margin-left: auto;
  margin-right: auto;
  max-width: 460px;
  min-height: 1%;
  width: 100%;
}
.registrationUnitImg {
  -webkit-align-items: center;
  align-items: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  margin-right: 3.33%;
  width: 118px;
}
@media screen and (min-width: 768px) {
  .registrationUnitImg--large {
    width: 220px;
  }
}
@media screen and (max-width: 767px) {
  .registrationUnitImg {
    max-width: 30%;
    padding-top: 3px;
  }
}
.registrationUnitImg img {
  max-width: 100%;
  min-width: 1%;
}
.registrationUnitText {
  display: -webkit-flex;
  display: flex;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-flex-direction: column;
  flex-direction: column;
  min-width: 1%;
}
.registrationUnitText > * {
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .registrationUnit .button.is-submit {
    min-width: inherit;
  }
}
