/* カスタマイズ用CSS */


img{
    width: 100%;
}

p#btn_menu:after {
  position: absolute;
  content: "メニュー";
  font-size: 0.6em;
  font-weight: bold;
  color: #fff;
  top: 3em;
}

.btn-primary {
  background-color: #d4093a;
  border-color: #d4093a;
}

.registration_page .dl_table dt label {
  font-weight: 400;
}

#item_detail_area .item_detail .sale_price {
  font-size: 24px;
  font-size: 3.8rem;
  font-weight: bold;
  color: #d4093a;
}

.product_tag_list {
  padding: 5px 8px;
  font-size: 80%;
  color: #fff;
  border: none;
  border-radius: 0px;
  background-color: #5af;
}

.product_item a:hover img {
  opacity: 1;
}

#item_detail_area .item_name {
  font-weight: 600;
  font-size: 1.8em;
}

span#product_tag_box__product_tag--2 {
  background-color: #f5a;
}

span#product_tag_box__product_tag--3 {
  background-color: #fa5;
}

hr {
  border: none;
}

#item_detail_area .item_detail .point {
  border-top: none;
}

#item_detail_area .item_detail .item_code {
  border-top: none;
}

#item_detail_area .item_detail .relative_cat {
  border-top: none;
  border-bottom: none;
}

.item_photo_sdw {
  padding-bottom: 2em;
}

.f_guide02 h4 {
  color: #e5007f;
  padding: .1em 0 .1em .8em;
  margin: 0;
  font-size: 1.1em;
}

.f_g_flow {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

.f_g_flow_last {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

/* 
.f_g_flow:after {
    content: '';
    position: absolute;
    top: 20%;
    right: 50%;
    left: 10%; 
    border-right: 1px solid #e5007f;
    border-bottom: 1px solid #e5007f;
    margin-top: 7.7em;
    height: 15px;
    width: 15px;
    -webkit-transform: scaleX(.4) rotate(45deg);
    transform: scaleX(2) rotate(45deg);
}
 */

@media only screen and (min-width: 768px) {
  #item_detail_area .item_detail .item_comment {
    line-height: 1.7em;
    font-size: .9em;
  }
}

@media only screen and (min-width: 481px) {
  .item_photo_sdw img {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.12);
    transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
  }

  .item_photo_sdw img:hover {
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.25), 0 10px 16px rgba(0, 0, 0, 0.22);
  }

  .item_photo {
    padding: 0 1em;
  }

  .item_photo img {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.12);
    transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
    margin: 4px;
  }

  .item_photo img {
    transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
  }

  .item_photo img:hover,
  .home-2nd-area img:hover,
  .home-3rd-area img:hover {
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.25), 0 10px 16px rgba(0, 0, 0, 0.22);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
  }

  .item_photo_map img {
    z-index: 6;
  }

  .item_photo_map img:hover {
    -webkit-transform: scale(1.6);
    -moz-transform: scale(1.6);
    -o-transform: scale(1.6);
    -ms-transform: scale(1.6);
    transform: scale(1.6);
  }
}

#footer {
  border-top: none;
  padding-bottom: 0px;
}

#footer_guide {
  font-size: .9em;
  padding: 0;
    margin: 0 auto;
}

#footer_guide span.tel {
  font-size: 1.7em;
}

.mini {
  font-size: .8em;
  line-height: 1.2em;
}

#footer_guide h1 {
  background-color: #123c6f;
  color: #fff;
  padding: .7em;
  margin: 0;
  font-size: 22px;
}

#footer_guide h3 {
  background-color: #889096;
  color: #fff;
  padding: .1em 0 .1em .5em;
  font-size: 1.6em;
}

#footer_guide p {
  padding-left: 1em;
  margin-top: .2em;
  line-height: 1.7em;
}

.em_yel {
  background-color: #f8f860;
  font-style: normal;
  font-weight: 600;
}

@media only screen and (min-width: 768px) {

  .footer_logo_area span {
    position: absolute;
    left: 80%;
    top: -107px;
  }

  .footer_logo_area span img {
    width: 120px !important;
  }

  #footer ul {
    padding-top: 1em;
    border-bottom: 2px solid #d4093a;
    margin: auto;
    max-width: 860px;
  }

  .footer_logo_area {
    margin: -4px 0 12px;
    position: relative;
  }

  .f_guide02 {
    padding: 2em 1em;
  }

  .faq .tabContainer ul.tabMenu li a {
    padding: 1.6em 5px !important;
    font-size: .9em;
  }

  #item_detail_area .item_detail .sale_price {
    font-size: 3.6rem;
  }

  .display_none {
    display: none;
  }

  .member_link {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
  }

  .logo_ct {
    width: 300px;
  }

  #cart_area {
    margin-top: 0.4em;
  }

  #cart_area p.cart-trigger {
    box-shadow: 1px 3px 7px rgba(0, 0, 0, 0.15) inset, 1px 2px 2px rgba(0, 0, 0, 0.11) inset;
    margin-right: 0.5em;
  }

  #header .category-nav a {
    border-bottom: none;
  }

  #header .category-nav>li>a {
    color: #525263;
    font-size: 1.1em;
    font-weight: 600;
  }

  #header .category-nav>li>a:hover {
    opacity: .95;
    background-color: #fff;
    box-shadow: 1px 3px 7px rgba(0, 0, 0, 0.15) inset, 1px 2px 2px rgba(0, 0, 0, 0.11) inset;
  }

  #header .category-nav li ul li ul li a {}

  #header .category-nav li:hover ul li ul li a:hover {
    background: rgba(255, 255, 255, 1)
  }

  #header .category-nav ul>li>a,
  #header .category-nav ul>li>ul>li>a,
  #header .category-nav ul>li>ul>li>ul>li a {
    padding-left: 10px;
    color: #525263;
    font-weight: 600;
  }

  #header .category-nav ul {
    background: rgba(255, 255, 255, 0.95)
  }

  .member_link a {
    color: #525263;
  }

  .login_area {
    text-align: right;
    margin-top: -40px;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
  }

  #header {
    box-shadow: 0 4px 7px rgba(0, 0, 0, 0.15), 0 2px 2px rgba(0, 0, 0, 0.11);
  }

  .member_link a {
    font-size: 0.9em;
    padding: 0.2em 1em 1em 1em;
  }

  .member_link a i {
    line-height: 5px;
    font-size: 1.9em;
  }

  .member_link a:hover {
    box-shadow: 1px 3px 7px rgba(0, 0, 0, 0.15) inset, 1px 2px 2px rgba(0, 0, 0, 0.11) inset;
    background-color: #fff;
    opacity: .95;
  }

  .login_area p {
    padding: 0.7em 0.7em 0.4em 0;
    position: relative;
    top: 5px;
  }

}

@media only screen and (max-width: 767px) {

  .item_photo_sdw {
    padding-bottom: 1em;
  }

  .login_area {
    text-align: right;
    margin-top: -8px;
  }

  .display_none_re {
    display: none;
  }

  .logo_ct {
    width: 280px;
  }

  p.cart-trigger a:link,
  p.cart-trigger a:visited,
  p.cart-trigger a:hover,
  p.cart-trigger a:active {
    text-decoration: none;
    color: #545465;

  }
}

#header {
  background-color: #fff;
}

/* dl-table */


.dl_table dt,
.dl_table dd {
  border-bottom: 1px solid #fff;
}

.dl_table dt {
  background: #7f9da7;
  color: #fff;
  padding-left: 1em;
}

span.required {
  color: #7f9da7;
  background: #fdf01a;
  position: relative;
  top: -2px;
  padding: 0.4em;
}

.dl_table {
  border-top: 1px solid #fff;
}

.gmap_sm {
  text-align: center;
  padding: .5em;
}

.gmap_sm a {
  text-align: center;
  padding: .7em 1em;
  color: #f2f1f1;
  background: #0092c4;
  line-height: 22px;
}

@media only screen and (min-width: 481px) {
  .display_none_sm_re {
    display: none;
  }
}

@media only screen and (max-width: 480px) {

  p,
  dd,
  td {
    line-height: 1.6em;
  }


  .dl_table dt {
    width: 100% !important;
  }

  .display_none_sm {
    display: none;
  }
}

.page-heading {
  border-bottom: 1px solid #ccc;
  border-top: none;
  padding: 8px;
  text-align: center;
}

@media only screen and (min-width: 768px) {

  .page-heading {
    position: relative;
    top: -30px;
    padding: 1em;
    box-shadow: 0 0px 4px 2px rgba(0, 0, 0, 0.12)inset;
    margin-top: 1em;
  }

  span.required:after {
    content: '';
    position: absolute;
    left: -4px;
    top: 5px;
    display: block;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-right: 6px solid #fdf01a;
    border-bottom: 6px solid transparent;
  }

  .dl_table dd {
    background: #f8f8f8;
  }

  img.img_notice {
    width: 75%;
  }
}

.form-control {
  border: 1px solid #a3c0ca;
}

.form-control:focus {
  border-color: #0a7da2 !important;
}


/*mapcard_item*/
.mapcard_m {
  margin-bottom: 1em;
}

.map_h1 {
  color: #d4093a;
  text-align: center;
  padding: 1em 0;
  border-bottom: 2px solid #d4093a;
  border-top: 2px solid #d4093a;
}

.mapcard {
  max-width: 720px;
  min-height: 240px;
  background: #f5ba1f;
  display: flex;
  flex-direction: row;
  padding: 0;
  margin: 0;
}

.mapcard_inner {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

.mapcard_inner_l {
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 35%;
  height: auto;
  display: flex;
}

.mapcard_inner_high {
  display: flex;
  flex-direction: row;
  position: relative;
}

.mapcard_inner_middle {
  padding: 0 1em;
}

.mapcard_inner h2 {
  font-weight: 100;
  color: #222;
  font-size: 1.6em;
  margin: 0;
  padding: .5em;
}

.mapcard_dt {
  margin: 0 1em;
  padding: 0 !important;
  background: #f5ba1f;
  border-bottom: solid 1px #f5ba1f;
}

.mapcard_inner_middle p {
  color: #222;
}

.mapcard_inner_low {
  padding: .2em 0 .8em .3em;
}

.mapcard_inner iframe {
  height: 100%;
}

.mapcard_inner_low img {
  width: 90px;
  height: 52px;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #fff;
  border-radius: 10px;
  margin: 0 4px;
}

.mapcard_inner .exps {
  color: #fff;
  background: #d71518;
  height: 32px;
  font-weight: 600;
  font-size: .9em;
  padding: .3em .4em;
}

.mapcard_inner h3 {
  color: #f5ba1f;
  background: #fff;
  font-weight: 200;
  margin: 0;
  font-size: 2.4em;
  padding-right: 22px;
}

.mapcard_inner h3:after {
  content: "地区";
  font-size: 16px;
  position: absolute;
  top: 10%;
  padding-left: .4em;
}

.mapcard_inner_r {
  width: 65%;
  background: #f2f1f1;
}

@media only screen and (max-width: 1200px) {
  .mapcard_inner h2 {
    font-size: 1.2em;
  }

  .mapcard_inner h3 {
    font-size: 2em;
  }
}

@media only screen and (max-width: 960px) {
  .mapcard_inner h2 {
    font-size: 1em;
  }

  .mapcard_inner h3 {
    font-size: 1.6em;
  }

  .mapcard_inner h3:after {
    display: none;
  }

  .mapcard_inner_middle p {
    font-size: .8em;
  }
}

@media only screen and (max-width: 820px) {
  .mapcard_inner h2 {
    font-size: .8em;
  }

  .mapcard_inner h3 {
    font-size: 1.2em;
  }

  .map_h1 {
    padding: 1em 0;
  }
}

@media only screen and (max-width: 768px) {

  .mapcard_dt,
  .mapcard {
    margin: 0 !important;
    width: 100%;
  }

  .mapcard_dt {
    padding: .5em;
  }

  .mapcard_inner h2 {
    font-size: 1.2em;
  }

  .mapcard {
    background-color: #f2f1f1;
  }

  .map_h1 {
    font-size: 22px;
  }
}

@media only screen and (max-width: 480px) {
  .map_h1 {
    font-size: 1.2em;
  }

  .mapcard_inner h3:after {
    display: none;
  }

  .mapcard_inner h2 {
    font-size: 1em;
  }

  .mapcard_inner h3 {
    padding: .4em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 1.2em;
  }

  .mapcard_inner_l {
    width: 100%;
  }

  .mapcard_inner_r {
    width: 100%;
  }

  .mapcard {
    display: flex;
    flex-direction: column;
  }
}


.st_range table {
  margin: 2em 0;
}

.st_range tr {}

.st_range th {
  border-left: 7px #d4093a solid;
  background-color: #ffffff;
  vertical-align: middle;
}

.st_range td {
  background-color: #ffffff;
}

.kokugo,
.st_range td.kokugo {
  background-color: #90bbfd;
  color: #ffffff;
}

.kokugo_r,
.st_range td.kokugo_r {
  background-color: #f5f7fb;
}

.sugaku,
.st_range td.sugaku {
  background-color: #fb8c8c;
  color: #ffffff;
}

.sugaku_r,
.st_range td.sugaku_r {
  background-color: #fdebeb;
}

.syakai,
.st_range td.syakai {
  background-color: #90e675;
  color: #ffffff;
}

.syakai_r,
.st_range td.syakai_r {
  background-color: #f1ffed;
}

.eigo,
.st_range td.eigo {
  background-color: #fdbf5f;
  color: #ffffff;
}

.eigo_r,
.st_range td.eigo_r {
  background-color: #fdf2e1;
}

.rika,
.st_range td.rika {
  background-color: #d899f9;
  color: #ffffff;
}

.rika_r,
.st_range td.rika_r {
  background-color: #f9efff;
}

.kokugo,
.sugaku,
.syakai,
.eigo,
.rika {
  padding: 2px;
  margin: 2px;
}

.st_range table>tbody>tr>th,
.st_range table>tbody>tr>td {
  border-top: 4px solid #ffffff;
  border-bottom: 4px solid #ffffff;
  vertical-align: middle;
}

@media only screen and (min-width: 480px) {
  .st_range table {
    border-right: 4px #fff solid;
    box-shadow: 7px 7px #f8f8f8;
    border-bottom: 4px #fff solid;
  }

  .st_range {
    padding: 2em;
  }

  .range_xs {
    display: none;
  }

  .st_range th h3 {
    font-size: 1.6em;
  }
}

.notice_map_icon {
  text-align: center;
  width: 90%;
  margin: 1em auto 5em;
  max-width: 960px;
}

.notice_car_icon h4,
.notice_map_icon h4 {
  font-size: 1.6em;
  color: #fff;
  background: #162964;
  margin: .7em auto 1em;
  width: 90%;
}

.notice_car_icon h4 {
  font-size: 1.2em;
  padding: .2em;
}

.notice_car_icon {
  text-align: center;
  width: 90%;
  margin: 1em auto 3em;
  max-width: 960px;
  position: relative;
  top: 4em;
  float: none;
  clear: both;
}


.icon_notice {
  width: 300px;
}

.icon_notice p {
  width: 100px;
  text-align: left;
  padding-left: 5px;
  color: #162964;
}


.st_range_notice {
  display: table-cell;
  vertical-align: middle;
}

.flex_row_aligncenter {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
}

.flex_row_end {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  flex-wrap: wrap;
}

.flex_center {
  justify-content: center;
  align-items: center;
}

.st_range table i {
  font-size: 1.2em;
  position: relative;
  top: 2px;
}

.font_notice {
  background-color: #f8f8f8;
  font-size: .8em;
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.24)inset;
  padding: .5em;
}

.font_notice p.warning {
  padding: 4px;
  border: 1px solid #666;
  color: #666;
  max-width: 480px;
}

@media only screen and (max-width: 480px) {
  .st_range th {
    width: 2% !important;
  }

  .st_range th h3,
  .st_range th h4 {
    display: none;
  }

  .range_xs {
    border-left: 7px #d4093a solid;
    margin-bottom: 0;
    padding-left: 1em;
  }

  .st_range table {
    margin: 0;
  }
}

.st-table {
  box-sizing: border-box;
  margin-top: 1.6rem;
  margin-right: 0;
  margin-left: 0;
  table-layout: fixed;
  empty-cells: show;
  word-wrap: break-word;
  border-collapse: collapse;
  box-shadow: 6px 6px 0 #f8f8f8;
}

.st-table>thead>tr>th,
.st-table>thead>tr>td,
.st-table>tbody>tr>th,
.st-table>dt {
  padding: 1rem;
  background-color: #f8f8f8;
}

.st-table>thead>tr>th,
.st-table>thead>tr>td,
.st-table>tbody>tr>th,
.st-table>tbody>tr>td,
.st-table>dt,
.st-table>dd {
  margin: 0;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  padding: .5em;
}

.ytb_area {
  border-bottom: 36px solid #e7265e;
  margin-top: 1em;
}

.ytb_area h2 {
  color: #fff;
  font-size: 2.4em;
  background-color: #d4093a;
}

.ytb_area p {
  line-height: 2em;
  font-size: 22px;
}

.ytb_area_r,
.ytb_area_l,
.ytb_girl {
  position: relative;
  text-align: center;
}

.ytb_girl {
  width: 360px;
  height: 280px;
  position: relative;
}

img.img_ytb_girl {
  position: relative;
  z-index: 2;
  width: 320px;
  bottom: -21px;
  min-width: 320px;
}

.ytb_frame iframe {
  position: absolute;
  z-index: 6;
  bottom: -24px;
  left: 77px;
  width: 218px;
  height: 119px;
  top: 156px;
}

.st_md span {
  position: absolute;
  margin-left: 1em;
  top: -2em;
  font-size: .9em;
  color: #fdfdf8;
  display: block;
  background: #162964;
  padding: .4em;
  font-weight: 600;
}

.st_md span:after {
  content: "";
  position: absolute;
  top: 24px;
  left: 25%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-top: 18px solid #162a63;
  z-index: 2;
}


@media only screen and (min-width: 1281px) {
  img.img_ytb_girl {
    width: 480px;
    bottom: -71px;
    min-width: 240px;
  }

  .ytb_girl {
    width: 560px;
    height: 450px;
  }

  .ytb_area h2 {
    position: relative;
    bottom: -107px;
    font-size: 3em;
  }

  .ytb_area p {
    line-height: 2em;
    font-size: 22px;
    position: relative;
    bottom: -107px;
  }

  .ytb_frame iframe {
    bottom: -24px;
    left: 120px;
    width: 320px;
    height: 168px;
    top: 277px;
  }
}

@media only screen and (max-width: 960px) {
  .ytb_area h2 {
    width: 90% ;
    font-size: 100%;
  }

  .ytb_area p {
    margin-bottom: 4em;
  }
}


@media only screen and (max-width: 480px) {

  .ytb_area {
    border-bottom: none;
  }

  .ytb_area h2 {
    font-size: 22px;
  }

  .ytb_girl {
    width: 320px;
    height: 240px;
  }

  img.img_ytb_girl {
    width: 240px;
    bottom: -21px;
    min-width: 240px;
  }

  .ytb_frame iframe {
    bottom: -12px;
    left: 24px;
    width: 180px;
    height: 94px;
    top: 156px;
  }

  .ytb_area p {
    font-size: .9em;
    margin-bottom: 4em;
  }
}

/*---app-button---*/
.app_button {
  position: relative;
  left: 50%;
  top: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  background: #fff;
  font-size: 24px;
  width: 260px;
  padding: 12px 24px;
  border: 2px solid #162964;
  color: #162964;
  text-transform: uppercase;
  text-align: center;
  z-index: 2;
  -moz-transition: all 0.25s ease-in 0.25s;
  -o-transition: all 0.25s ease-in 0.25s;
  -webkit-transition: all 0.25s ease-in;
  -webkit-transition-delay: 0.25s;
  -webkit-transition: all 0.25s ease-in 0.25s;
  transition: all 0.25s ease-in 0.25s;
}

.app_button:after,
.app_button:before {
  position: absolute;
  width: 100%;
  max-width: 100%;
  top: 100%;
  left: 0;
  bottom: -10px;
  content: '';
  z-index: 1;
  -moz-transition: all 0.25s ease-in 0.25s;
  -o-transition: all 0.25s ease-in 0.25s;
  -webkit-transition: all 0.25s ease-in;
  -webkit-transition-delay: 0.25s;
  -webkit-transition: all 0.25s ease-in 0.25s;
  transition: all 0.25s ease-in 0.25s;
}

.app_button:before {
  background: #162964;
  top: 5px;
  left: -5px;
  height: 100%;
  width: 5px;
}

.app_button:after {
  width: 100%;
  background: #162964;
  right: 0px;
  left: -5px;
  height: 5px;
}

.app_button:hover {
  background: #162964;
  color: #fff;
  margin-left: -1.5px;
  margin-bottom: -1.5px;
}

.app_button:hover:after,
.app_button:hover:before {
  top: 100%;
  left: 0;
  bottom: 0px;
}

.app_button:hover:before {
  top: 0px;
  left: 0px;
  width: 0px;
}

.app_button:hover:after {
  right: 0px;
  left: 0px;
  height: 0px;
}

.app_btn {
  padding: 10px 0;
  width: 100%;
  position: relative;
  text-align: center;
}

.newslist dl {
  border-top: none !important;
}

@media only screen and (min-width: 768px) {

  iframe#twitter-widget-0 {
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.24)inset;
  }

  .newslist dt .news_title {
    font-size: 1.2em;
  }

  .newslist dd {
    line-height: 1.6em;
  }
}

p#detail_not_stock_box__description_detail img {
  width: 300px;
}

/*---shirayuri-test-flow---*/
.shira_app {
  padding: 1em;
  box-shadow: 0 0 5px rgba(255, 85, 170, 0.6);
}

.shira_app_process {
  position: relative;
  margin: 28px 0 40px;
}

.shira_app_description {
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}

.shira_app_process_list {
  display: flex;
  flex-direction: row;
  padding: 35px 35px 60px;
}

.shira_app_process_item_2,
.shira_app_process_item,
.shira_app_process_item_last {
  display: flex;
  flex-direction: row;
  flex: 1 1 1px;
  align-items: center;
  position: relative;
  padding-right: 66px;
}

.shira_app_process_image {
  flex: none;
  margin-right: 6px;
}

.shira_app_process_heading {
  display: block;
  font-size: 1.2em;
  font-weight: 700;
  color: #ff55aa;
  line-height: 1.5;
}

.shira_app_process_text {
  display: block;
  padding-right: 20px;
  font-weight: 700;
  line-height: 1.5;
}

.notice {
  font-size: .7em;
}

.shira_app_process_repeat {
  position: absolute;
  bottom: -12px;
  left: 0;
  right: 0;
  text-align: center;
}

.title_section_wrapper {
  text-align: center;
  box-shadow: 0 0 5px rgb(255, 85, 170) inset;
  width: 80%;
  margin: 1em auto;
  padding: 1em 0;
  background: rgba(255, 85, 170, 0.1);
}

.shira_app_process_item:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  border-right: 4px solid #ff55aa;
  border-top: 4px solid #ff55aa;
  margin-top: -47.5px;
  height: 75px;
  width: 75px;
  -webkit-transform: scaleX(.4) rotate(45deg);
  transform: scaleX(.4) rotate(45deg);
}

@media only screen and (max-width: 768px) {
  .shira_app_process_item:after {
    display: none;
  }

  .shira_app_process_list {
    flex-direction: column;
    padding: 35px 35px 60px;
  }

  .shira_app_process_item,
  .shira_app_process_item_2,
  .shira_app_process_item_last {
    flex-direction: column;
    flex: 25 25 125px;
    align-items: flex-start;
    padding-right: 0px;
  }
}


.about_top_ttl img {
  width: 50%;
  text-align: right;
  padding: 1em;
}

.about_top_ttl p {
  padding: 1em;
  font-size: 22px;
  line-height: 1.7em;
  color: #333;
}

.about_top_middle {
  padding: 1em;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.about_top_middle img.no1 {
  width: auto;
  height: 240px;
}

.about_top_middle img.lily {
  width: auto;
  height: 200px;
}

.about_top_flow {
  display: flex;
  flex-direction: row;
  justify-content: center;
  flex-wrap: wrap;
  padding-bottom: 1em;
}

em.wht {
  background-color: rgba(255, 255, 255, 0.9);
}


@media only screen and (max-width: 768px) {
  .about_top_ttl {}

  .about_top_ttl p {
    font-size: .6em;
    margin: 0;
  }

  .about_top_ttl img {
    width: 80%;
  }

  .about_top_middle {

    padding: 0;
  }

  .about_top_middle img.no1 {
    height: 120px;
  }

  .about_top_middle img.lily {
    height: 100px;
  }
}

.nav-trigger span,
.nav-trigger span::before,
.nav-trigger span::after {
  background: #545465;
}

.drawer-open .nav-trigger span::before,
.drawer-open .nav-trigger span::after {
  background: #545465;
}

.ec-headerNaviRole .ec-headerNaviRole__left {
    width: auto;
}
.ec-headerNaviRole .ec-headerNaviRole__right {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.slide-item,
.slideThumb img,
.ec-shelfGrid__item-image img{
    border: solid .5px hsl(0deg 0% 80% / 70%);
}

.ec-headerNavSP{
    left: 0;
    right: 10px;
}

.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search,
.ec-drawerRole,
.ec-drawerRole .ec-headerLinkArea,
.ec-newsRole .ec-newsRole__newsCloseBtn{
    background-color: #036EB8;
}

.ec-footerRole{
    background: #889096;
}

.ec-footerNavi .ec-footerNavi__link a{
 border-bottom: solid 1px #fff;   
}

#gmo_payment_gateway_credit_form .dl_table dt, #gmo_payment_gateway_credit_form .dl_table dd {
    background: #F3F3F3;
    display: table-cell;
    font-weight: normal;
    font-size: 14px;
    padding: .5em;
    color: #525263;
}

.ec-rectHeading{
    display: none !important;
}

.ec-orderPayment {
    margin-top: 5rem;
}

.ec-orderPayment img {
    max-width: 500px;
    margin: 1rem 0;
}

.ec-orderPayment .ec-radio div{
    margin: 2rem 0;
}

.ec-layoutRole__contents{
    min-height:350px;
    padding:0 1rem;
}
.ec-layoutRole__header{
    margin-bottom: 2em;
}

    
.table_design02 {
  border-collapse: collapse;
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
}
.table_design02 tr {
  background-color: #e6f1f6;
}
.table_design02 tr:nth-child(odd) {
  background-color: #fff;
}
.table_design02 th, .table_design02 td {
  padding: 1em;
  text-align: right;
}
.table_design02 th {
    font-weight: bold;
    text-align: left;
    width: 50%;
    min-width: 4em;
}

.page-ttl {
display: inline-block;
    position: relative;
    color: #333;
    margin: 2em auto;
    width: 100%;
    text-align: center;
    font-weight: 900;
}

.page-ttl:before {
    content: '';
    display: inline-block;
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 4px;
    background-color: #036be8;
}

.table_design09 {
border-collapse: collapse;
    table-layout: fixed;
    width: 100%;
    max-width: 700px;
    border-radius: 20px;
    overflow: hidden;
    text-align: center;
    margin: 2em auto 5em;
}
.table_design09 tr {
  background-color: #e9f0f9;
}
.table_design09 tr:nth-child(even) {
  background-color: #fff;
}
.table_design09 th, .table_design09 td {
  padding: 1em;
}
.table_design09 thead th {
  background-color: #036be8;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
.table_design09 tbody th {
  color: #036be8;
}
@media screen and (max-width: 787px) {
  .table_design09 {
    border-radius: 0;
    text-align: left;
  }
  .table_design09 thead {
    display:none;
  }
  .table_design09 tr {
    background-color: unset;
  }
  .table_design09 th, .table_design09 td {
    display: block;
    border: 0;
    border-bottom: 1px solid #036be8;
  }
  .table_design09 tbody th{
    background: #036be8;
    color:#fff;
    text-align: center;
  }
  .table_design09 td::before{
    content: attr(data-label);
    background-color: #e9f0f9;
    font-weight: bold;
    display: inline-block;
    width: 20%;
    min-width: 4em;
    text-align: center;
    margin-right: 0.5em;
    padding: 4px;
    border-radius: 100vh;
  }
}