/*-------------------
 common
-------------------*/
html {
  overflow-x: hidden;
}

body {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
}

a {
  outline: none;
  color: #222;
  transition: all linear .2s;
}

a:hover {
  color: #666;
}

a:focus, *:focus {
  outline: none;
}

.breadcrumbs li{
  text-transform: inherit;
}

.breadcrumbs a {
  color: #075cbb;
}

a.linkcolor {
  color: #075cbb;
  font-weight: 700;
}

a.linkcolor:hover {
  color: #469bf9;
}

a.boxLink {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: -99999px;
}

.mb0 {
  margin-bottom: 0;
}

.mb5 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.small {
  font-size: .9rem;
}
.m-small {
	font-size: .8rem;
}
.xs-small {
  font-size: .7rem;
}

.textLicence{
  text-align: right;
}

.text-alert, .alert p {
  color: #C00;
}

.plus {
  color: #C00;
}

.minus {
  color: #0033cc;
}

.hidden {
	display: none;
}

/*-------------------
 responsive utility
-------------------*/

/* スマホのみ表示 */
.sp-only {
  display: none;
}

@media (max-width: 40em) {
  .sp-only {
    display: block;
  }
}

/* スマホのみ非表示 */
.pc-only {
  display: block;
}

@media (max-width: 40em) {
  .pc-only {
    display: none;
  }
}

.break-word {
	word-wrap: break-word;
}

.nobr {
  display: inline-block;
}

@media(max-width:64em) {
  .nobr {
    display: inline;
  }
}

/*-------------------
 img
-------------------*/
img {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

img.border {
  border: 1px solid #CCC;
}

img.full {
  width: 100%;
  height: auto;
}

/*-------------------
 global_header
-------------------*/
header.global_header {
  position: sticky;
  position: -webkit-sticky;
  top: 0;
  left: 0;
  width: 100%;
  background: #FFF;
  border-bottom: 1px solid #D9CEA0;
  z-index: 10;
}

header.global_header .global_header-logoArea {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
}

header.global_header .global_header-logoArea .global_header-member {
  width: 38%
}

header.global_header .global_header-logoArea .global_header-member h5 {
  color: #707070;
  line-height: 1;
  font-size: 1rem;
  margin-top: 30px;
}

header.global_header .global_header-logoArea .global_header-member .point {
  color: #B79027;
  font-size: .9rem;
  font-weight: 700;
}

header.global_header .global_header-logoArea .global_header-logo {
  width: 20%;
  text-align: center;
}

header.global_header .global_header-logoArea .global_header-logo h1.logo {
  width: 100px;
  height: 77px;
  margin: 20px auto;
  background: url(../img/logo.svg) no-repeat top center;
  background-size: cover;
  text-indent: -9999px;
}

header.global_header .global_header-logoArea .global_header-logo h1.logo a {
  display: block;
  width: 100px;
  height: 57px;
}

header.global_header .global_header-logoArea .global_header-icon {
  width: 38%
}

header.global_header .global_header-logoArea .global_header-icon ul {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  list-style: none;
  margin: 40px 0 0;
}

header.global_header .global_header-logoArea .global_header-icon.icon-left ul {
  flex-direction: row;
}

header.global_header .global_header-logoArea .global_header-icon ul li {
  width: auto30px;
  height: 30px;
  margin: 0 10px;
  text-indent: -9999px;
}

header.global_header .global_header-logoArea .global_header-icon ul li a {
  display: block;
  width: 30px;
  height: 30px;
}

header.global_header .global_header-logoArea .global_header-icon ul li.icon-search {
  background: url(../img/icon-search.svg) no-repeat;
  background-size: contain;
}

header.global_header .global_header-logoArea .global_header-icon ul li.icon-mypage {
  background: url(../img/icon-people.svg) no-repeat;
  background-size: contain;
}

header.global_header .global_header-logoArea .global_header-icon ul li.icon-bookmark {
  background: url(../img/icon-heart.svg) no-repeat;
  background-size: contain;
}

header.global_header .global_header-logoArea .global_header-icon ul li.icon-cart {
  position: relative;
  background: url(../img/icon-cart.svg) no-repeat;
  background-size: contain;
}

header.global_header .global_header-logoArea .global_header-icon ul li.icon-cart span {
  display: block;
  position: absolute;
  top: -10px;
  right: -5px;
  width: 20px;
  height: 20px;
  background: #B79027;
  color: #FFF;
  font-weight: 700;
  text-align: center;
  font-size: 11px;
  line-height: 20px;
  border-radius: 50%;
  text-indent: 0;
}

header.global_header .global_header-logoArea .global_header-icon ul li.icon-nav {
  text-indent: 0;
}

header.global_header .global_nav {
  border-top: 1px solid #D9CEA0;
}

header.global_header .global_nav ul {
  display: flex;
  list-style: none;
  justify-content: center;
  margin: 20px 0;
}

header.global_header .global_nav ul li {
  font-size: 1.1rem;
  font-weight: 700;
  margin: 0 25px;
}

header.global_header .global_nav ul li a {
  color: #707070;
}

header.global_header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 20;
}

@media(max-width:39em) {
  header h1.logo {
    width: 250px;
  }

  header .en {
    margin: 10px 65px 0 0;
  }
}

/*-------------------
 main
-------------------*/
main.changeFixed {
  padding-top: 100px;
}

#mv.changeFixed {
  padding-top: 100px;
}

/*-------------------
 mv
-------------------*/
#mv {
  max-width: 1200px;
  margin: 0 auto 40px;
}

#mv .slick-dots {
  bottom: -30px;
}

@media(max-width:64em) {
	#mv {
		margin: 0 auto 20px;
	}
}

/*-------------------
 #breadcrumbs
-------------------*/
.breadcrumbs {
  margin: 0;
}

.breadcrumbs ul {
  margin: 0;
  padding: 20px 0 30px;
}

.breadcrumbs ul li {
  list-style: none;
  font-size: 0.8rem;
}

/*-------------------
 table
-------------------*/
.table tbody {
  border: none;
}

table.unstriped tbody tr {
  border-bottom: none;
}

.table tbody th {
  text-align: left;
  border-bottom: 1px solid #CCC;
}

.table tbody td {
  border-bottom: 1px solid #CCC;
  word-break: break-all;
}

.table tbody td.price {
  text-align: right;
}

.table tbody th.no-border,
.table tbody td.no-border {
  border-bottom: none;
}

.table-bordered {
  margin-bottom: 30px;
}

.table-bordered tbody th {
  text-align: left;
}

.table-bordered th, .table-bordered td {
  border: 1px solid #CCC;
}

.table-bordered th {
  background: #f4f4f4;
  text-align: center;
}

.table-bordered.address th {
  width: 20%;
}
table.layoutTable {
    width: auto;
    margin-bottom: 5px;
}
table.layoutTable,table.layoutTable tbody,table.layoutTable tfoot,table.layoutTable thead {
    border: none;
    background-color: #FFF;
}
table.layoutTable th{
  font-weight: normal;
  text-align: left;
  padding:2px;
}
table.layoutTable td{
  padding:2px 2px 2px 20px;
}
table.layoutTable td.price{
  text-align:right;
}

input,
[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week],
textarea,
select {
  margin: 2px 0;
}

.table-bordered .small-text {
  margin-top: 10px;
  font-weight: 700;
}

.table-bordered .error {
  color: #C00;
}

.table-bordered.enTable {
  font-size: 0.8rem;
}

.table-confirm th {
  width: 25%;
  text-align: left;
}

.table-bordered .table_inner {
  margin: 0;
}

.table-bordered .table_inner th {
  width: 80%;
}

.table-bordered.addressList .no {
  width: 3rem;
  text-align: center;
}

.table-bordered.addressList .name {
  width: 40%;
}

.table-bordered.addressList .add {
  width: 40%;
}

.table-bordered.addressList .edit {
  text-align: center;
}

.table-bordered.addressList .edit a {
  color: #1779ba;
  font-weight: 700;
}

.table.addressList .no {
  width: 3rem;
  text-align: center;
}

.table.addressList .name {
  width: 25%;
}

.table.addressList .add {
  width: 55%;
}

.table.addressList .edit {
  text-align: center;
}

.table.addressList .edit a {
  color: #1779ba;
  font-weight: 700;
  display: inline-block;
}

.table.arrivalList  {
  font-size:.9rem;
}

.table.arrivalList .name {
  width: 12%;
}

.table.arrivalList .mail {
  width: 20%;
}

.table.arrivalList .itemName {
  width: 33%;
}

.table.arrivalList .itemOption {
  width: 30%;
}

.table.arrivalList .edit{
  text-align: center;
}

.table.arrivalList .edit a {
  display: inline-block;
  color: #1779ba;
  font-weight: 700;
}

table.ringsizeTable tbody td, table.ringsizeTable tbody th {
  text-align: center;
}

/*-------------------
 form
-------------------*/
label.inline {
  display: inline-block;
  margin-right: 1rem;
}

input.mb10 {
  margin-bottom: 10px;
}

input.input-small {
  width: 6em;
  display: inline-block;
}

input.input-xsmall {
  width: 3em;
  display: inline-block;
}

input.input-number {
  width: 4em;
  display: inline-block;
}

input.input-medium {
  width: 12em;
  display: inline-block;
}

input.input-large {
  width: 24em;
  display: inline-block;
}

label {
  font-size: 1rem;
}

select {
  display: inline-block;
  width: auto;
}

option {
  /*display: inline-block;*/
  width: auto;
}

select[multiple] option {
  display: block;
}

span.require {
  display: inline-block;
  padding: 1px 7px;
  border-radius: 4px;
  background: #C00;
  color: #FFF;
  font-size: .8rem;
  font-weight: 700;
}

span.require-mark {
  color: #C00;
}

/*-------------------
 msg
-------------------*/
.msg_group {
  margin-bottom: 10px;
}

.msg_error {
  color: #dd2c6b;
  margin: 4px 0 6px;
  font-weight: 700;
}

.msg_addprice {
  margin: 4px 0;
  font-size: .9rem;
}

.msg_text {
  margin: 4px 0;
  font-size: .9rem;
}

/*-------------------
 bg
-------------------*/
.bgG {
  background: #f4f4f4;
}

/*-------------------
 .button
-------------------*/
.btnArea {
  padding: 30px 0;
  text-align: center;
}

.button {
  background: #FFF;
  font-weight: 700;
  border: 1px solid #707070;
  color: #707070;
  border-radius: 4px;
  cursor: pointer;
}

button {
  cursor: pointer;
}

.button.mb0 {
  margin-bottom: 0;
}

.button:hover,
.button:focus {
  background: #e3ca7f;
}

.button.large {
  width: 340px;
  padding: 20px 10px;
  font-size: .9rem;
}

.button.medium {
  width: 340px;
  padding: 10px 10px;
  font-size: .9rem;
}

.button {
  vertical-align: baseline;
}

.button.button-frame {
  border: 2px solid #B79027;
  border-radius: 4px;
  text-decoration: none;
  color: #707070;
}

.button.button-frame:hover {
  color: #FFF;
}

.button.reverse-color {
  background: #e3ca7f;
  color: #fefefe;
}

.button.reverse-color:hover,
.button.reverse-color:focus {
  background: #FFF;
  border: 1px solid #707070;
  color: #707070;
}

button.button-gold,
.button-gold {
  background: #B79027;
  width: 320px;
  padding: 18px 10px;
  color: #FFF;
  font-size: 1.2rem;
  font-weight: 700;
  border: none;
  border-radius: 4px;
}

button.button-white {
	background: #FFF;
	width: 320px;
	padding: 17px 10px;
	border: 1px solid #707070;
	color: #707070;
	font-size: 1.1rem;
	font-weight: 700;
	border-radius: 4px;
}

button.small-button-gold {
  background: #B79027;
  width: 140px;
  color: #FFF;
  font-size: 1.0rem;
  font-weight: 700;
  border: none;
  border-radius: 4px;
}

button.small-button-white {
  background: #FFF;
  width: 140px;
  border: 1px solid #707070;
  color: #707070;
  font-size: 0.9rem;
  font-weight: 700;
  border-radius: 4px;
}

button.button-gold.button-s {
  width: 200px;
}

/* button.btn-search, button.btn-search-header {
  width: 200px;
} */

button.button-back {
  background: #999;
  padding: 18px 10px;
  width: 200px;
  color: #FFF;
  font-size: 1.2rem;
  font-weight: 700;
  border: none;
  border-radius: 4px;
}

button.button-full,
.button.button-full {
  width: 100%;
}

.button.font-large {
  line-height: 1.6;
}

.button.font-large span {
  font-size: .8em;
}

.button.button-round {
  border-radius:24px;
  padding:12px 24px;
}

.flex-wrapper.flex-button {
  justify-content: center;
  column-gap: 30px;
}

_::-webkit-full-page-media, _:future, :root .flex-wrapper.flex-button button {
  margin: 0 15px;
}

/*-------------------
 H
-------------------*/
section h2 {
  display: flex;
  font-weight: 300;
  font-size: 2.2rem;
  margin-bottom: 3vh;
  font-family: 'jost', "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
  color: #B79027;
}

section h2.entry-title {
  font-size: 1.9rem;
}

section h2 span {
  display: inline-block;
  margin: auto auto .4rem .5rem;
  font-size: .5em;
  color: #707070;
  font-weight: 700;
}
section h2 .filter_option {
	display: inline-flex;
	margin-top: .2rem;
	margin-bottom: .2rem;
}
section h2 select.select-inline {
	height: 100%;
	font-size: .8rem;
}

section h2.block {
	display: block;
}

span.licencer {
  display: block;
  margin: 0 .5em 0 0;
  font-size: 1em;
  color: inherit;
  font-weight: 400;
  word-break: normal;
  word-wrap: break-word;
}

.favorite span.licencer {
    display: block;
    width: auto;
    height: 100%;
    padding: 0 0 .5em 0;
}

h3.entry-title {
  font-weight: 700;
  font-size: 1.4rem;
  color: #666;
  border-bottom: 1px solid #666;
  padding-bottom: .5rem;
  margin-bottom: 20px;
}

.entry-title-wrap {
  display: flex;
  flex-wrap:nowrap;
}
.entry-title-wrap h3.entry-title {
	width: 100%;
}
.entry-title-wrap .edit {
  color: #1779ba;
  font-weight: 700;
  display: inline-block;
  border-bottom: 1px solid #666;
  padding-right: 10px;
  padding-bottom: .5rem;
  margin-bottom: 20px;
  white-space: nowrap;
}

h4 {
  font-weight: 700;
  font-size: 1.2rem;
  color: #B79027;
  padding: 5px 0;
}

h4.entry-title {
  font-size: 1.1rem;
  color: #000;
  margin-bottom: 15px;
}

h4.border-title {
  padding: 2px 0 2px .8rem;
  border-left: 4px solid #B79027;
}

h3.largeTitle {
  position: absolute;
  font-family: 'Anton', sans-serif;
  left: 0;
  top: 0;
  font-size: 10em;
  line-height: 1;
  color: rgba(254, 104, 0, .1);
}

h5 {
  color: #B79027;
  font-weight: 700;
  font-size: 1.1rem;
}

h6 {
  font-weight: 700;
  font-size: 1rem;
}

@media(max-width:39em) {
  section h2 .filter_option {
    margin-top: .3rem;
    margin-bottom: .3rem;
  }
  section h2 select.select-inline {
    font-size: .7rem;
  }

  h3.largeTitle {
    font-size: 8em;
  }
}

.fc_red {
  color: #fe6800;
}

/*-------------------
 section
-------------------*/
.section_inner {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}

.section_inner_s {
  max-width: 960px;
  margin: 0 auto;
  position: relative;
}

.top_banner_wrap {
  padding: 30px 0 0;
}

.ly_padding {
  padding: 60px 0;
}

section {
  position: relative;
  margin: 0 0 40px 0;
}

section article {
  position: relative;
  margin-bottom: 3vh;
}

/*-------------------
 frame
-------------------*/
.frame {
  border: 1px solid #CCC;
}

.frame .frame_inner {
  padding: 20px;
}

.frame .frame_title {
  display: flex;
  flex-wrap: wrap;
  background: #f4f4f4;
  justify-content: space-between;
  padding: 10px;
  font-size: .9rem;
}

.frame .frame_title .date {
  width: 200px;
}

.frame .frame_title .price {
  width: 300px;
}
.frame .frame_title .price dl{
  display: flex;
  flex-wrap:wrap;
  margin-bottom: 0;
}
.frame .frame_title .price dl dt{
  width:180px;
  font-weight: normal;
}
.frame .frame_title .price dl dd{
  width:120px;
  text-align: right;
}
.frame .frame_title .price dl dt.total{
  border-top: 1px dashed #CCC;
  padding-top: 5px;
  font-weight: 700;
}
.frame .frame_title .price dl dd.total{
  border-top: 1px dashed #CCC;
  padding-top: 5px;
}

.frame .frame_title .address {
  max-width: 380px;
  text-align: right;
}

/*---------------------
   アコーディオン
-----------------------*/
.acMenu dt {
  display: block;
  background: #FFF;
  font-weight: 400;
  width: 150px;
  padding: 3px;
  border: #ccc 1px solid;
  border-radius: 4px;
  text-align: center;
  cursor: pointer;
}

.acMenu dd {
  width: 100%;
  display: none;
}

/*---------------------
  tooltip
-----------------------*/
.tooltipWrapper {
  position: relative;
}

.tooltip {
  width: 200px;
  padding: 5px;
  font-size: .9rem;
  background-color: #FFF;
  border: 1px solid #CCC;
  color: #000;
}

.tooltip.hidden {
  display: none;
}

/*-------------------
 historyList
-------------------*/
.historyList_detail{
  padding:10px;
  font-size: .9rem;
}
.historyList_detail .flex-wrapper{
  display: grid;
  grid-template-columns: 140px 1fr;
  margin:10px 0 10px 90px;
}

.historyList_detail .flex-wrapper .flex-photo {
  align-self: stretch;
  padding: 5px;
}

.historyList_detail .flex-wrapper .flex-desc {
  padding:0 5px 5px;
  font-size: .9rem;
  align-self: stretch;
}
.historyList_detail .flex-wrapper .flex-desc h4{
  font-size: .9rem;
  padding:0 0 10px;
  margin: 0;
}

/*-------------------
 opt
-------------------*/
ul.opt_list1 {
  list-style: none;
  margin: 10px 0;
}

ul.opt_list2, ul.opt_list3,ul.opt_list6 {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin: 10px 0;
}

ul.opt_list2 li {
  display: inline-block;
  width: 120px;
  text-align: center;
  margin-bottom: 10px;
}

ul.opt_list3 li,ul.opt_list6 li {
  display: inline-block;
  margin: 0 10px 10px 0;
  text-align: center;
}

ul.opt_list4 {
  list-style: none;
  margin: 10px 0;
}

ul.opt_list4 li {
  display: inline-block;
  margin: 0 20px 10px 0;
  text-align: center;
}

.img-opt {
  display: none;
  position: fixed;
  width: 300px;
  top: 215px;
  left: 50%;
  transform: translateX(-50%);
  padding: 10px;
  background-color: #FFF;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
  text-align: center;
}

.img-opt-close {
  position: absolute;
  top: 10px;
  right: 10px;
}

ul.opt_list5 {
  margin-left: 0;
  text-align: left;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
}

ul.opt_list5 li {
  display: inline-block;
  margin: 10px 0;
  width: 100px;
  text-align: center;
  align-self: center;
}

ul.opt_list5 label {
  cursor: pointer;
  border-radius: 5px;
  border: 2px solid #FFF;
  margin: 0;
  padding:2px;
}

ul.opt_list5 input[type="radio"] {
  display: none;
}

ul.opt_list5 input[type="radio"]:checked+label {
  border: 2px solid #B79027;
  background: #FFF;
}

ul.opt_list7 {
  margin-left: 0;
  text-align: left;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
  justify-items: center;
  padding: 0 5px;
  column-gap: 10px;
}

ul.opt_list7 li {
  display: inline-block;
  padding: 10px 0;
  height: 100%;
  text-align: center;
  align-self: center;
}

ul.opt_list7 label {
  cursor: pointer;
  border-radius: 5px;
  border: 2px solid #FFF;
  margin: 0;
  padding:4px;
}
ul.opt_list7 .text {
  font-size: .7rem;
  margin-top: 6px;
  line-height: 1.2;
}

ul.opt_list7 input[type="radio"] {
  display: none;
}

ul.opt_list7 input[type="radio"]:checked+label {
  height: 100%;
  border: 2px solid #B79027;
  background: #FFF;
}

.mount-list {
  padding-top: 4px;
}

ul.opt_list8 {
  margin-left: 0;
  text-align: left;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  justify-items: center;
  padding: 0 5px;
  column-gap: 10px;
  margin: 0;
}

ul.opt_list8 li {
  display: inline-block;
  padding: 4px 0;
  height: 100%;
  text-align: center;
  align-self: center;
}

ul.opt_list8 label {
  cursor: pointer;
  border-radius: 5px;
  border: 2px solid #FFF;
  margin: 0;
  padding:4px;
}
ul.opt_list8 .text {
  font-size: .7rem;
  line-height: 1.2;
}

ul.opt_list8 input[type="radio"] {
  display: none;
}

ul.opt_list8 input[type="radio"]:checked+label {
  height: 100%;
  border: 2px solid #B79027;
  background: #FFF;
}

.mount-caution {
  text-align: left;
  margin-bottom: 20px;
  padding: 0 10px;
}

@media(max-width:40em) {
  ul.opt_list8 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.mark-logo {
	padding-top: 4px;
}

/*-------------------
 item-free
-------------------*/
.lead_item-free{
  margin:15px auto;
  text-align: center;
  font-size:1.2rem;
}

.flex-flow{
  display: flex;
  flex-wrap: wrap;
}
.flex-flow .flex-three{
  width:75%;
}
.flex-flow .flex-one{
  width:25%;
}

dl.list-item-free {
	display: grid;
	grid-template-columns: 2fr 3fr;
	max-width: 280px;
	font-size: .9rem;
	margin: 2px 0 1rem;
	font-weight: normal;
}
dl.list-item-free dt,
dl.list-item-free dd {
	font-weight: normal;
	text-align: center;
}

/*-------------------
 special
-------------------*/
.special .text_title {
  margin-bottom: 5px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

.special p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

/*-------------------
 .flex-wrapper
-------------------*/
.flex-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.flex-auto {
  display: flex;
}

.flex-auto .flex-one{
  padding:0 20px 20px;
}

.flex-wrapper.item-minimum {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.flex-wrapper.category_list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  column-gap: 20px;
}

.flex-wrapper.three .flex-one {
  width: 32%;
}

.flex-wrapper.three .flex-two {
  width: 64%;
}

.flex-wrapper.three:after {
  display: block;
  content: '';
  width: 32%;
}

.flex-wrapper.two .flex-one {
  width: 48%;
}

.flex-wrapper.four .flex-three {
  width: 72%;
}

.flex-wrapper.four .flex-one,
.flex-wrapper.four .flex-half {
  width: 24%;
}

.flex-wrapper .flex-one.special {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.flex-wrapper .flex-one.special figure {
  width: 30%;
}

.flex-wrapper .flex-one.special .text {
  width: 66%;
}

.flex-wrapper.item-minimum figure {
  width: 10%;
}

.flex-wrapper.item-minimum figure img {
  padding-right: 10px;
}

.flex-wrapper.item-minimum .flex-text {
  width: 85%;
}

.flex-wrapper.bridalBrandList {
  display: flex;
  flex-wrap: wrap;
  max-width: 800px;
  margin: 0 auto 60px;
  align-items: center;
}

.flex-wrapper.bridalBrandList.reverse {
  flex-direction: row-reverse;
}

.flex-wrapper.bridalBrandList .flex-one.image {
  position: relative;
  width: 50%;
}

.flex-wrapper.bridalBrandList .flex-one.brand {
  position: relative;
  width: 50%;
}

.flex-wrapper.bridalBrandList .flex-one .bridallink {
  position: absolute;
  bottom: -30%;
  width: 180px;
  padding: 10px 5px;
  margin-left: 118px;
  text-align: center;
  border: 2px solid #aaa;
  border-radius: 24px;
  color: #000;
}

.flex-wrapper.bridalBrandList .flex-one .bridallink:before {
  display: block;
  position: absolute;
  content: '';
  top: 50%;
  left: -120px;
  width: 120px;
  height: 1px;
  background: #CCC;
}

.flex-wrapper.bridalBrandList.reverse .flex-one .bridallink {
  right: 0;
  margin-right: 118px;
  margin-left: auto;
}

.flex-wrapper.bridalBrandList.reverse .flex-one .bridallink:before {
  top: 50%;
  left: auto;
  right: -120px;
  width: 120px;
  height: 1px;
  background: #CCC;
}

/*-------------------
 flex-grid
-------------------*/
.flex-grid.four {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  justify-content: space-between;
  column-gap: 30px;
  margin-bottom: 30px;
}

.flex-grid.four .flex-one {
  margin-bottom: 20px
}

@media(max-width:64em) {
  .flex-grid.four {
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 20px;
  }
}

@media(max-width:40em) {
  .flex-wrapper.two .flex-one {
    margin-bottom: 1rem;
  }

  .flex-wrapper.three>.flex-one {
    width: 100%;
  }

  .flex-wrapper.three>.flex-two {
    width: 100%;
  }

  .flex-wrapper.four .flex-one {
    width: 48%;
  }

  .flex-grid.four {
    grid-template-columns: 1fr 1fr;
    column-gap: 20px;
  }
}

/*-------------------
 pointHistory
-------------------*/
.flex-wrapper.pointHistoryTitle {
  font-weight: 700;
  padding-bottom: 10px;
  border-bottom: 2px solid #CCC;
  margin-bottom: 20px;
  font-size: .9rem;
}

.flex-wrapper.pointHistory {
  padding-bottom: 10px;
  border-bottom: 1px dashed #CCC;
  margin-bottom: 10px;
  font-size: .9rem;
}

.flex-wrapper.pointHistoryTitle .title,
.flex-wrapper.pointHistory .item {
  text-align: center;
  width: 10%;
}

.flex-wrapper.pointHistoryTitle .date,
.flex-wrapper.pointHistory .date {
  text-align: left;
}

.flex-wrapper.pointHistoryTitle .ordername,
.flex-wrapper.pointHistory .ordername {
  text-align: left;
  width: 40%;
}

/*-------------------
 Countdown-timer
-------------------*/
.countdown-timer {
  width: 95%;
  max-width: 1170px;
  text-align: center;
  background-color: #fff;
  margin: 2rem auto;
  padding: 15px 0 13px;
  position: relative;
  z-index: 1;
}
.countdown-timer::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 4px;
  background-color: rgba(255, 255, 255, .5);
  box-shadow: 0 1px 4px rgba(0, 0, 0, .3);
  z-index: -1;
}
.countdown-timer::after {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  width: 100%;
  height: 100%;
  background-color: #EBE2BF;
  border-radius: 4px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, .3);
  z-index: -2;
}
.countdown-timer .timer-text {
  font-size: 1.05rem;
  line-height: 1.6;
  color: #775b0f;
}
.countdown-timer .timer-count {
  margin: 0 10px;
  font-weight: 900;
  font-size: 1.25rem;
  color: #dd2c6b;
}
@media(max-width:40em) {
  .countdown-timer .timer-text {
    font-size: 0.8rem;
  }
  .countdown-timer .timer-count {
    font-size: 1rem;
  }
}

/*-------------------
 item
-------------------*/
.flex-wrapper.itemdetail {
  margin: 10px 0;
  justify-content: space-between;
}

.flex-wrapper.itemdetail .flex-img {
  width: 34%;
}

.flex-wrapper.itemdetail .flex-desc {
  width: 62%;
}

.flex-wrapper.itemdetail .flex-desc h2 {
  display: block;
  color: #000;
  font-size: 1.3rem;
}

.item-number {
  margin-bottom: 10px;
  font-size: .9rem;
}

.item-period {
  margin-bottom: 10px;
  font-size: .9rem;
}

.item-rating {
  margin-bottom: 10px;
  font-size: .9rem;
}

/*--------- xzoom ---------*/
.xzoom-container {
  margin-bottom: 20px;
}

.xzoom-preview {
  border: 1px solid #CCC;
}

/* Lens */
.xzoom-lens {
  border: 1px solid #CCC;
  cursor: crosshair;
}

#xzoom-default {
  margin-bottom: 20px;
}

/*------priceArea----*/
.priceArea {
  font-size: .9rem;
  text-align: right;
}

.priceArea .item-price {
  font-size: 1.6rem;
  font-weight: 700;
}

.priceArea .item-price span {
  font-size: .5em;
}

.priceArea .item-price .discount-label {
  border: 1px solid #C00;
  padding: 4px 10px;
  border-radius: 4px;
  font-weight: normal;
  vertical-align: middle;
  margin-right: 1em;
}
.priceArea .item-price.event-discount {
  color: #C00;
}

.priceArea .item-price.price-cancel {
  position: relative;
  display: inline-block;
  vertical-align: top;
  font-size: 1.0em;
  margin-top: 10px;
}

.priceArea .item-price.price-cancel::before {
  content: "";
  display: block;
  border-top: solid 1px black;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 45%;
  z-index: 1;
}

.priceArea .item-orico-price {
	margin-top: 6px;
}

.priceArea .item-orico-price .price {
  font-size: 1.4rem;
  font-weight: 700;
}

.priceArea .item-orico-detail {
  font-size: .8rem;
	margin-bottom: 10px;
}

.priceArea .item-point span {
  color: #B79027;
  font-weight: 700;
}

/*------option-------*/
.flex-wrapper.option .flex-name {
  margin-bottom: 10px;
}

.flex-wrapper.option .flex-name {
  width: 25%;
}

.flex-wrapper.option .flex-name h5 {
  font-size: 1rem;
}

.flex-wrapper.option .flex-detail {
  width: 74%;
  margin-bottom: 10px;
	/* display: flex;
	justify-content: space-between; */
}

.flex-wrapper.option .flex-detail-button {
  width: 74%;
  margin-bottom: 10px;
	display: flex;
	justify-content: space-between;
}

dl.option-list {
  display: grid;
  grid-template-columns: 1fr 3fr;
  font-size: .9rem;
  margin: 2px 0;
}

dl.option-list dt, dl.option-list dd {
  margin-bottom: .2rem;
  font-weight: 400;
}

.flex-wrapper.option.selectDm label {
  border: 2px solid #FFF;
  margin: 3px 0;
  padding: 4px 2px;
  cursor: pointer;
  border-radius: 4px;
}

.flex-wrapper.option.selectDm input[type="radio"] {
  display: none;
}

.flex-wrapper.option.selectDm input[type="radio"]:checked+label {
  border: 2px solid #B79027;
}


.dm-recommend .product_list{
  display: flex;
}
.dm-recommend .product_list .product_list-item{
  display: block;
  line-height: 1.2;
  padding:0 2px;
}

.flex-wrapper.option.selectDm .dm-recommend .product_list .product_list-item label {
  border: 2px solid #DDD;
  margin: 0;
  padding: 2px 8px;
  border-radius: 6px;
  width: 160px;
}

.flex-wrapper.option.selectDm .dm-recommend .product_list .product_list-item input[type="radio"]:checked+label {
  border: 2px solid #B79027;
  background: #fcf8ed;
}

.dm-recommend .product_list .product_list-item .rank.crown {
	display: inline-block;
	position: absolute;
	top: 0;
	left: 10px;
	width: 28px;
	height: 22px;
	transform: translateX(-20%);
	background: url(../img/icon-crown02.svg) no-repeat;
	background-size: contain;
	line-height: 30px;
	color: #FFF;
	vertical-align: top;
	margin-top: 3px;
	font-size: .6rem;
}

.dm-recommend .product_list .product_list-item h5{
	position: relative;
  text-align: center;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
  font-size: 1.9rem;
  color:#b79027;
  font-weight: 700;
  border-bottom: 1px solid #CCC;
}

.dm-recommend .product_list .product_list-item h5 span{
	position: absolute;
	bottom: 0;
	margin-bottom: 5px;
  font-size: .5em;
}
.dm-recommend .product_list .product_list-item .type{
  display: flex;
  font-size:0.7rem;
  line-height: 1.5;
  flex-wrap: wrap;
}
.dm-recommend .product_list .product_list-item .type .title{
  width:6em;
  color:#666;
}
.dm-recommend .product_list .product_list-item .type .text{
  flex:1;
  color:#333;
  font-size: 1rem;
}
.dm-recommend .product_list .product_list-item .type .text span{
  color:#666;
  font-size: .7rem;
  padding-left: 5px;
}
.dm-recommend .product_list .product_list-item .price{
  font-size: 1.2em;
  text-align: center;
  color:#666;
  font-weight: 700;
}
.dm-recommend .product_list .product_list-item .price::before {
    content: "+";
    text-align: center;
    color: #666;
    font-weight: 700;
}
.dm-recommend h6{
  font-size: .9rem;
  color:#B79027;
}

.dm-recommend .product_list .product_list-item span.border{
  border: 1px solid #B79027;
  border-radius:4px;
}
.flex-wrapper.option.selectDm #dm-01,
.flex-wrapper.option.selectDm #dm-02 {
  height: 0px;
  overflow-x: hidden;
}
.flex-wrapper.option.selectDm #dm-01.active,
.flex-wrapper.option.selectDm #dm-02.active {
  height: auto;
  overflow-x: hidden;
}
.flex-wrapper.option.selectDm .dm-desc {
	display: inline-block;
	text-align: left;
}

.flex-wrapper.option.selectDm .diamond-cut .flex-one {
	padding-bottom: 5px;
}
.flex-wrapper.option .diamond-cut label figure {
	width: 60px;
	min-width: 60px;
}
.flex-wrapper.option.selectDm .diamond-cut label {
  padding: 4px;
}
.flex-wrapper.option.selectDm .diamond-cut .icon-text-wrap {
  display: flex;
}
.flex-wrapper.option.selectDm .diamond-cut .icon-text-wrap .icon figure {
  width: 28px;
  margin: 2px 4px 0 0;
  padding: 3px;
  border: 1px solid #cecece;
}
@media(max-width:420px) {
  .flex-wrapper.option.selectDm .diamond-cut br {
    display: none;
  }
}

.flex-wrapper.option .colorBtn {
  flex-wrap: wrap;
  list-style: none;
  font-size: .8rem;
  margin: 0 0 10px 0;
}

.flex-wrapper.option .colorBtn label {
  display: flex;
  width: 49%;
  align-items: center;
  border: 2px solid #DDD;
  margin: 3px 0;
  padding: 4px 2px;
  cursor: pointer;
  font-size: .8rem;
  border-radius: 4px;
}

.flex-wrapper.option .colorBtn input[type="radio"] {
  display: none;
}

.flex-wrapper.option .colorBtn label figure {
  width: 20px;
  margin-right: 5px;
}

.flex-wrapper.option .colorBtn input[type="radio"]:checked+label {
  border: 2px solid #B79027;
}

.selected-mark {
  position: relative;
  display: inline-block;
  padding-right: 30px;
  margin-right: 10px;
}

.selected-mark .deleteButton {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 26px;
  height: 26px;
  background: #AAA;
  border-radius: 50%;
  line-height: 26px;
  text-align: center;
  color: #FFF;
  cursor: pointer;
  z-index: 3;
}

.selected-mark.no-delete-button {
	padding-right: 0;
}

.flex-wrapper.option .flex-mount {
	display: flex;
	align-items: center;
}

.flex-wrapper.option .flex-mount .flex-item {
	display: flex;
	align-items: center;
}

.flex-wrapper.option .flex-mount .button_wrap {
	margin-right: 20px;
	margin-bottom: 10px;
}

.flex-wrapper.option .flex-mount .selected-mount {
  position: relative;
  display: inline-block;
  margin-right: 10px;
	margin-bottom: 20px;
}

.flex-wrapper.option .flex-mount .selected-mount .deleteMountButton {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 26px;
  height: 26px;
  background: #AAA;
  border-radius: 50%;
  line-height: 26px;
  text-align: center;
  color: #FFF;
  cursor: pointer;
  z-index: 3;
}

.flex-wrapper.option .flex-mount .mount-text {
	position: absolute;
}

@media(max-width:60em) {
	.flex-wrapper.option .flex-mount {
		display: block;
	}
}

.selected-cover {
  margin-left: 10px;
}

.flex-wrapper.option .select-material {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.flex-wrapper.option .select-material .button {
	border: 1px solid #cacaca;
	width: 48%;
}

.flex-wrapper.option .select-material .button:hover,
.flex-wrapper.option .select-material .button:focus {
	background: initial;
	color: #707070;
}

.flex-wrapper.option .select-material .button .text {
	font-weight: normal;
}

/* select-case */
.flex-wrapper.option .select-case {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 0;
}
.flex-wrapper.option .select-case .button {
	border: 1px solid #cacaca;
	width: 32%;
}

.flex-wrapper.option .select-case .button img {
	width: 80%;
}

.flex-wrapper.option .select-case .button:hover,
.flex-wrapper.option .select-case .button:focus {
	background: initial;
	color: #707070;
}

.flex-wrapper.option .select-case .button .text {
	font-weight: normal;
}

.belt-list-flex {
	display: flex;
	flex-wrap: wrap;
  justify-content: space-between;
}

.belt-list-flex .belt-list-item {
	display: flex;
  padding: 0;
	width: 32%;
}
.belt-list-flex .belt-list-item .button {
	margin: 0;
	margin-bottom: 1rem;
	border: 1px solid #cacaca;
}
.belt-list-flex .belt-list-item .button:hover,
.belt-list-flex .belt-list-item .button:focus {
	background: initial;
	color: #707070;
}
.belt-list-flex .belt-list-item input[type="radio"]:checked+label {
	border: 2px solid #B79027;
	background: #FFF;
}
.belt-list-flex input[type="radio"] {
	display: none;
}
.belt-list-flex .belt-list-item img {
	width: 80%;
}
.belt-list-flex .belt-list-item .text {
	font-weight: normal;
}

.select-cover-item2_wrap ul.opt_list7 {
	column-gap: 6px;
	grid-template-columns: repeat(auto-fill, minmax(85px, 1fr));
}

.select-cover-item2_wrap ul.opt_list7 label {
	padding: 0;
}

/* birthstone */
.flex-wrapper.option.birthstone .colorBtn label figure {
  width: 60px;
  min-width: 60px;
}
@media (max-width: 64em) {
  .flex-wrapper.option.birthstone .colorBtn label {
    width: 49%;
  }
}
@media (max-width: 40em) {
  .flex-wrapper.option.birthstone .colorBtn label figure {
    width: 40px;
    min-width: 40px;
  }
}

/* switching-group */
.flex-wrapper.option .switching-primary-group ul {
  width: 100%;
  margin-left: 0;
  text-align: left;
  display: grid;
  grid-template-columns: repeat(4, minmax(auto, 1fr));
}
@media(max-width:420px) {
  .flex-wrapper.option .switching-primary-group ul {
    grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
  }
}

.flex-wrapper.option .switching-primary-group ul li {
  display: inline-block;
  margin: 0 10px;
  text-align: center;
  align-self: start;
}

.flex-wrapper.option .switching-primary-group label {
	align-items: center;
	text-align: center;
	margin: 3px 0;
	padding: 4px 2px;
	cursor: pointer;
	font-size: .8rem;
  border-radius: 5px;
  border: 2px solid #fefefe;
}

.flex-wrapper.option .switching-primary-group label figure {
  margin-bottom: 5px;
}
.flex-wrapper.option .switching-primary-group input[type="radio"]  {
	display: none;
}
.flex-wrapper.option .switching-primary-group input[type="radio"]:checked+label {
	border: 2px solid #B79027;
}

.flex-wrapper.option .switching-secondary-group {
  flex-wrap: wrap;
  list-style: none;
  font-size: .8rem;
  margin: 0 0 10px 0;
}

.flex-wrapper.option .switching-secondary-group label {
  display: flex;
  width: 49%;
  align-items: center;
  border: 2px solid #DDD;
  margin: 3px 0;
  padding: 4px;
  cursor: pointer;
  font-size: .7rem;
  border-radius: 4px;
}

.flex-wrapper.option .switching-secondary-group input[type="radio"] {
  display: none;
}

.flex-wrapper.option .switching-secondary-group label figure {
  width: 60px;
  min-width: 60px;
  margin-right: 5px;
}

@media(max-width:60em) {
	.flex-wrapper.option .switching-primary-group label {
		font-size: .7rem;
	}
	.flex-wrapper.option .switching-secondary-group label figure {
		width: 40px;
		min-width: 40px;
		margin-right: 5px;
	}
}

.flex-wrapper.option .switching-secondary-group input[type="radio"]:checked+label {
  border: 2px solid #B79027;
}

/* trinityring-group */
.trinityring-group .flex-wrapper.option {
  flex-wrap: wrap;
  font-size: .8rem;
  margin: 0 0 10px 0;
}

.trinityring-group .flex-wrapper.option label {
  display: flex;
  width: 100%;
  align-items: center;
  border: 2px solid #DDD;
  margin: 0;
  padding: 5px 5px 5px 10px;
  cursor: pointer;
  border-radius: 4px;
}
.trinityring-group .flex-wrapper.option input + label {
  margin-top: 6px;
  background-size:cover;
  position: relative;
}

.trinityring-group .flex-wrapper.option label .item-detail .en-text {
  font-size: .9rem;
}
.trinityring-group .flex-wrapper.option label .item-detail .jp-text {
  font-size: .7rem;
}

.trinityring-group .flex-wrapper.option input[type="checkbox"] {
  display: none;
}

.trinityring-group .flex-wrapper.option label figure.stone {
  width: 22px;
  min-width: 22px;
}

.trinityring-group .flex-wrapper.option label figure.mark {
  width: 50px;
  min-width: 50px;
}

.trinityring-group .flex-wrapper.option .item-detail {
  width: 100%;
  line-height: 1.2;
  word-break: break-word;
}
.trinityring-group .flex-wrapper.option .item-detail .item-wrap {
  margin-bottom: 4px;
}

.trinityring-group .flex-wrapper.option .item-detail .item-wrap .inline-item {
  display: inline-block;
  vertical-align: middle;
}

.trinityring-group .flex-wrapper.option input[type="checkbox"]:checked+label {
  border: 2px solid #B79027;
}

.trinityring-group .flex-wrapper.option input[type="checkbox"]:disabled+label::after{
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #DDD;
  opacity: 0.3;
  display:block
}

.modal-caution .flex-wrapper.btn-wrap {
  justify-content: space-evenly;
}


/*------cartArea----*/
.cartArea {
  margin: 30px 0;
}

.cartArea .flex-wrapper.cart {
  margin: 20px 0;
  justify-content: center;
  column-gap: 30px;
}

.cartArea .cart-gift {
  width: 100%;
}

.cartArea .cart-button button {
  /* background: #B79027; */
  width: 48%;
  /* padding: 18px 10px;
  color: #FFF;
  font-size: 1.2rem;
  border-radius: 4px;
  border: none; */
}

_::-webkit-full-page-media, _:future, :root .cartArea .flex-wrapper.cart .cart-number {
  margin-right: 30px;
}

/*------tab----*/
.tabs-content {
  border: none;
  margin-bottom: 30px;
}

.tabs-content .tabs {
  border: none;
  border-bottom: 1px solid #CCC;
}

.tabs-title>a {
  padding: 1.25rem 1.5rem;
  font-size: 1rem;
  line-height: 1;
  color: #000;
  background: #f4f4f4;
}

.tabs-title>a:focus, .tabs-title>a[aria-selected=true] {
  background: #FFF;
  color: #000;
  border-top: 1px solid #CCC;
  border-left: 1px solid #CCC;
  border-right: 1px solid #CCC;
}

.tabs-content .tabs-panel {
  border-left: 1px solid #CCC;
  border-right: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
  font-size: .9rem;
}

ul.share {
  margin: 20px auto;
  display: flex;
  justify-content: center;
  list-style: none;
  font-size: 2rem;
}

ul.share li {
  margin: 0 10px;
}

ul.share li {
  width: 46px;
  height: 46px;
  text-align: center;
}

ul.share li .fab.fa-twitter {
  background: #1DA1F2;
}

ul.share li .fab.fa-facebook-f {
  background: #1877f2;
}

ul.share li .fab.fa-instagram {
  background: #D93177;
}

ul.share li .fab.fa-line {
  color: #D93177;
  border-radius: 0;
  line-height: 1;
}

@media(max-width:40em) {
  .flex-wrapper.itemdetail .flex-img {
    width: 100%;
  }

  .flex-wrapper.itemdetail .flex-desc {
    width: 100%;
  }
}

/*------star rating----*/
.srat-rating .fa, .srat-rating .far, .srat-rating .fas {
  font-size: 24px;
  color: #FFC503;
}

/*------favorite----*/
.favorite span {
  display: block;
  width: 34px;
  height:34px;
  cursor: pointer;
}

.favorite.off span {
  background: url(../img/item/favorite.svg)no-repeat top left;
  background-size: cover;
}

.favorite.on span {
  background: url(../img/item/favorite.svg)no-repeat top right;
  background-size: cover;
}

/*-------------------
 cart
-------------------*/
.shoppingCart .delivery_check label>[type=checkbox],
.originalBag label .paper_bag[type=checkbox] {
  margin-top: 0.1rem;
  margin-bottom: 0;
}

.shoppingCart .delivery_check .alert,
.originalBag .alert {
  font-size: .8rem;
  line-height: 1.2;
}

.originalBag .originalbag-photo {
  width: 10%;
}

h4.cartTop {
  border-bottom: 2px dashed #ccc;
}

.flex-wrapper.cart {
  position: relative;
  padding-bottom: 10px;
  padding-top: 10px;
  margin-bottom: 20px;
  border-bottom: 2px dashed #ccc;
  font-size: .9rem;
}

.flex-wrapper.cart .deleteButton a {
  position: absolute;
  top: 10px;
  right: 0px;
  display: block;
  width: 30px;
  height: 30px;
  background: #AAA;
  border-radius: 50%;
  line-height: 30px;
  text-align: center;
  color: #FFF;
}

.flex-wrapper.cart .desc {
  color: #666;
}

.flex-wrapper.cart .cart-photo {
  width: 12%;
}

img.icon-mark {
  max-width: 50px;
}

.flex-wrapper.cart .cart-name {
  width: 53%;
}

.shoppingCart .flex-wrapper.cart .cart-number,
.shoppingCart .flex-wrapper.cart .cart-price {
  margin-top: 40px;
}

.flex-wrapper.cart .cart-price {
  width: 20%;
  text-align: right;
}

.flex-wrapper.cart .cart-price strong {
  font-size: 1rem;
}

.cart_total {
  background: #f7f4e8;
  padding: 15px;
  font-size: .9rem;
}

.cart_total table {
  margin-bottom: 0;
}

.cart_total table tbody th {
  text-align: left;
}

table tbody th.w35 {
  width: 35%;
}

.cart_total .cart_price,
table tbody td.cart_price {
  text-align: right;
  white-space: nowrap;
}

.cart_total table.totalprice {
  margin: 10px 0;
}

.cart_total .alert {
  margin-top: 10px;
}

.flex-cartstep {
  display: flex;
  justify-content: center;
  column-gap: 20px;
  margin-bottom: 20px;
}

.flex-cartstep .flex-one {
  position: relative;
  padding: 10px;
  background: #f4f4f4;
  text-align: center;
  color: #444;
  font-size: .9rem;
}

.flex-cartstep .flex-one::after {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  right: -15px;
  border-left: 15px solid #f4f4f4;
  border-top: 34px solid transparent;
  border-bottom: 34px solid transparent;
}

.flex-cartstep .flex-one .num {
  display: inline-block;
  width: 26px;
  height: 26px;
  background: #aaa;
  font-weight: 700;
  border-radius: 50%;
  text-align: center;
  line-height: 26px;
  color: #FFF;
}

.flex-cartstep .flex-one.is-active {
  background: #f7f4e8;
}

.flex-cartstep .flex-one.is-active::after {
  border-left: 15px solid #f7f4e8;
}

.flex-cartstep .flex-one.is-active .num {
  background: #B79027;
}

/*-------------------
 radioGroup
-------------------*/
.radioGroup {
  background: #f7f4e8;
  padding: 20px;
  margin: 0;
  list-style: none;
}

.radioGroup+label {
  background: #FFF;
  line-height: 1;
  padding: 15px 10px 0 10px;
  margin-bottom: 10px;
}

.payment-text {
  background: #FFF;
  padding: 20px;
  margin-bottom: 10px;
}

.payment-text {
  display: none;
}

/*-------------------
 product_list
-------------------*/
.slick-track {
    margin-left: 0!important;
}
.product_list .product_list-item {
  padding: 0 11px 0 0;
}

.product_list .product_list-item figure {
  position: relative;
  margin-bottom: 10px;
}

.product_list .product_list-item figure {
  border: 1px solid #CCC;
}

.product_list .product_list-item h3.list-name {
  font-size: .9em;
  line-height: 1.4em;
  margin: 0 0 7px 0;
  height: calc(1.4em * 2);
  overflow: hidden;
  display: grid;
  place-items: center start;
  text-align: left;
}

.product_list .product_list-item h3.list-name a {
  color: #707070;
}

.product_list .product_list-item p {
  font-size: .8em;
  line-height: 1.4em;
  color: #707070;
  margin: 0 0 7px 0;
  height: calc(1.4em * 2);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  word-break: break-all;
}

.product_list .product_list-item .list-price {
  color: #000;
  font-weight: 400;
  font-size: .9em;
  line-height: 1.2rem;
  text-align: right;
}

.product_list .product_list-item .list-price span {
  font-size: .8em;
  font-weight: 400;
  margin-bottom: 10px;
}
.product_list .product_list-item .list-price.event-discount {
  color: #C00;
}
.product_list .product_list-item .list-price.price-cancel  {
  position: relative;
  display: inline-block;
  vertical-align: top;
  font-size: .78em;
}
.product_list .product_list-item .list-price.price-cancel::before {
  content: "";
  display: block;
  border-top: solid 1px black;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 45%;
  z-index: 1;
}

.product_list-item .list-price_wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.product_list-item .reservation-ended_wrap {
  display: flex;
  justify-content: end;
  margin-right: 2px;
}
.product_list-item .reservation-ended {
  display: block;
  color: #B79027;
  font-size: .7rem;
  font-weight: 700;
  border: solid 1px #B79027;
  padding: 0 .3rem;
}
.product_list-item .product-label_wrap {
  display: flex;
  width: 100%;
  align-items: baseline;
}
.product_list-item .product-label_wrap .reservation-ended {
  padding: .05rem .3rem;
  margin-left: .5rem;
}
@media (max-width: 40em) {
  .product_list-item .list-price_wrap {
    display: block;
  }
  .product_list-item .reservation-ended {
    display: inline-block;
    font-size: .5rem;
    padding: .16rem .3rem;
  }
}

/*-------------------
 title_list
-------------------*/
.title_list .product_list-item h4 {
  text-align: center;
  font-size: .9rem;
}

/*-------------------
 product_list_wrapper(grid layout)
-------------------*/
.product_list_grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 25px;
  justify-content: space-between;
}

.product_list_grid .product_list-item {
  padding: 0;
}

.product_list_grid.categoryRanking {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 25px;
  justify-content: center;
}

/*-------------------
 title_list
-------------------*/
.title_list .product_list-item img {
  border: 1px solid #D9CEA0;
}

/*-------------------
 bnrArea
-------------------*/
.bnrArea .flex-one {
  width: 49%;
  margin-bottom: 20px;
}

/*-------------------
 searchArea
-------------------*/
.search_container {
  box-sizing: border-box;
  position: relative;
  border: 1px solid #999;
  display: block;
  padding: 3px 10px;
  border-radius: 20px;
  height: 2.3em;
  width: 100%;
  overflow: hidden;
}

.search_container input[type="text"] {
  border: none;
  box-shadow: none;
  height: 2.0em;
}

.search_container input[type="text"]:focus {
  outline: 0;
}

.search_container input[type="submit"] {
  cursor: pointer;
  position: absolute;
  cursor: pointer;
  width: 30px;
  height: 30px;
  text-indent: -99999px;
  background: url(../img/icon-search.svg) no-repeat;
  background-size: 25px;
  right: 10px;
  top: 5px;
  border: none;
  outline: none;
}

/*-------------------
 serch_list
-------------------*/
ul.serch_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
  margin: 30px 0;
}

ul.serch_list li {
  width: 23%;
  font-size: .8rem;
}

ul.serch_list li a {
  display: block;
  padding: 10px 0;
  color: #707070;
  background: url(../img/arrow.svg) no-repeat center right;
}

/*-------------------
 licencer_list_grid
-------------------*/
.licencer_list_grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 25px;
  justify-content: space-between;
}

.licencer_list_grid .licencer_list-item figure {
  border: 1px solid #CCC;
  margin-bottom: 5px;
}

.licencer_list_grid .licencer_list-item h3 {
  font-size: .8rem;
  text-align: center;
}

.licencer_list_grid.four {
  max-width: 1024px;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 5px;
  margin: 0 auto;
}

.licencer_list_grid.five {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 30px 60px;
  margin: 0 auto;
}

.licencer_list_grid.four .licencer_list-item figure,
.licencer_list_grid.five .licencer_list-item figure {
  border: none;
  margin-bottom: 5px;
  text-align: center;
}

.licencer_list_grid.four .licencer_list-item figure img,
.licencer_list_grid.five .licencer_list-item figure img {
  border: 1px solid #CCC;
}

/*-------------------
 character_list_grid
-------------------*/
.character_list_grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 25px;
  justify-content: space-between;
}

.character_list_grid .character_list-item figure {
  width: 80%;
  margin: 0 auto 3px;
}

.character_list_grid .character_list-item h3 {
  font-size: .8rem;
  text-align: center;
}

.character_list_grid .character_list-item a {
  display: block;
  padding: 5px;
}

.character_list_grid .character_list-item.border {
  border-radius: 15px;
  border: 2px solid #B79027;
  background: #FFF;
}
.character_list_grid .character_list-item.border a {
	border-radius: 15px;
}
.character_list_grid .character_list-item.border h3 {
	margin-bottom: 0.2rem;
}

/*-------------------
 search_refind
-------------------*/
.search_refind {
  background: #f4f4f4;
  padding: 15px;
  margin-bottom: 20px;
}

.search_refind dl {
  display: grid;
  grid-template-columns: 1fr 4fr;
}

.search_refind dt, .search_refind dd {
  margin-bottom: 10px;
}

.search_refind label {
  display: inline-block;
  margin-right: 10px;
}

.search_refind select {
  display: inline-block;
  width: 320px;
  margin: 0;
}

.search_refind input[type="text"] {
  display: inline-block;
  width: 320px;
  margin: 0;
}

/*-------------------
 category_list
-------------------*/
.category_list h3.list-name {
  font-size: .9rem;
  color: #707070;
  margin: 0 0 0.5rem 0;
  text-align: center;
}

.category_list figure {
  margin-bottom: 10px;
}

.category_list a {
  color: #707070;
}

.icon_catlist {
  border: 1px solid #ccc;
}

/*-------------------
 ranking
-------------------*/
.product_list.ranking figure {
  position: relative;
  padding-top: 15px;
  border: none;
}

.product_list.ranking figure img {
  border: 1px solid #D9CEA0;
}

.product_list.ranking figure .rank {
  position: absolute;
  display: block;
  top: 0;
  left: calc(50% - 15px);
  width: 30px;
  height: 30px;
  background: #B79027;
  font-family: 'jost', san-sans-serif;
  color: #FFF;
  text-align: center;
  font-size: 1.1rem;
  line-height: 30px;
  font-weight: 400;
  border-radius: 50%;
  z-index: 2;
}

.product_list.ranking figure .rank.crown {
  top: -5px;
  left: 50%;
  width: 50px;
  height: 38px;
  transform: translateX(-50%);
  background: url(../img/icon-crown.svg) no-repeat;
  background-size: contain;
  line-height: 45px;
  border-radius: 0;
  z-index: 2;
}

/*-------------------
news
-------------------*/
#sec_news h2 {
  text-align: center;
}

#sec_news h2 span {
  display: block;
}

ul.news {
  margin: 20px auto;
  max-width: 900px;
}

ul.news li {
  list-style: none;
  padding: 1rem 0;
  border-bottom: 1px solid #CCC;
  display: flex;
  font-size: .9rem;
}

ul.news li .news-date {
  width: 6em;
  border-right: 1px solid #CCC;
}

ul.news li .news-content {
  padding: 0 0 0 1rem;
  width: calc(100% - 6em);
}

ul.news li .news-content p {
  margin: 0;
}

/*-------------------
special/news
-------------------*/
.special-detail-content h1,
.news-detail-content h1 {
  display: block;
  font-size: 2em;
  margin-block-start: 0.67em;
  margin-block-end: 0.67em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  color: #000;
}
.special-detail-content h2,
.news-detail-content h2 {
  display: block;
  font-size: 1.5em;
  margin-block-start: 0.83em;
  margin-block-end: 0.83em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  color: #000;
}
.special-detail-content h3,
.news-detail-content h3 {
  display: block;
  font-size: 1.17em;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  color: #000;
}
.special-detail-content h4,
.news-detail-content h4 {
  display: block;
  font-size: 1.0em;
  margin-block-start: 1.33em;
  margin-block-end: 1.33em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  padding: 0;
  font-weight: bold;
  color: #000;
}
.special-detail-content h5,
.news-detail-content h5 {
  display: block;
  font-size: 0.83em;
  margin-block-start: 1.67em;
  margin-block-end: 1.67em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  color: #000;
}
.special-detail-content h6,
.news-detail-content h6 {
  display: block;
  font-size: 0.67em;
  margin-block-start: 2.33em;
  margin-block-end: 2.33em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  color: #000;
}

/*-------------------
 status sort
-------------------*/
.status {
  margin: 20px 0;
  flex-wrap: wrap;
}

.status ul.pagenav {
  display: flex;
  list-style: none;
  justify-content: space-between;
  column-gap: 5px;
  margin: 0;
}

.status ul.pagenav li {
  padding: 5px;
  text-align: center;
}

.status ul.pagenav li a {
  line-height: 28px;
}

.status ul.pagenav li a.is-active {
  display: inline-block;
  background: #CCC;
  width: 28px;
  height: 28px;
  background: #CCC;
  text-align: center;
  line-height: 28px;
  border-radius: 50%;
}

.status ul.sort {
  display: flex;
  list-style: none;
  justify-content: space-between;
  column-gap: 20px;
  margin: 0;
}

.status ul.sort a.is-active {
  color: #DE0E56;
}

/*-------------------
 pager
-------------------*/
.pager {
  position: relative;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 30px;
}

.pager li {
  margin: 0 5px;
  position: relative;
  display: inline-block;
}

.pager li>a {
  display: block;
  background-color: #fff;
  color: #777;
  font-size: 1rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 34px;
  height: 34px;
  border: 1px solid #ddd;
  border-radius: 3px;
  text-align: center;
  line-height: 34px;
}

.pager li.is-active>a {
  background-color: #B79027;
  border: 2px solid #B79027;
  color: #fff;
}

/*-------------------
 itemList
-------------------*/
#item {
	scroll-margin-top: 190px;
}

/*-------------------
 searchTitle
-------------------*/
.search_title {
  position: relative;
  display: flex;
  margin-bottom: 30px;
  margin: 20px 0;
}

.search_title li {
  margin: 0 5px;
  position: relative;
  display: inline-block;
}

.search_title li>a {
  display: block;
  background-color: #fff;
  color: #444;
  font-size: 1.1rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 40px;
  height: 40px;
  border: 1px solid #ddd;
  border-radius: 3px;
  text-align: center;
  line-height: 36px;
}

/*-------------------
 button group
-------------------*/
ul.button_group {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 20px;
  justify-content: space-between;
  margin: 20px 0;
}

.flex-one ul.button_group {
  grid-template-columns: 1fr 1fr;
}

ul.button_group li {
  list-style: none;
  display: block;
}

ul.button_group li a {
  display: block;
  cursor: pointer;
  padding: 10px;
  text-align: center;
  background: #ebe2bf;
  color: #775b0f;
  border: 1px solid #D9CEA0;
  transition: all ease-in-out .3s;
}

ul.button_group li a:hover {
  background: #8f8454;
  color: #FFF;
  border: 1px solid #D9CEA0;
}

ul.button_group.character li a {
  background: #f4f4f4;
  color: #444;
  border: 1px solid #CCC;
}

ul.button_group.character li a:hover {
  background: #999;
  color: #FFF;
  border: 1px solid #CCC;
}

/*-------------------
 mypage
-------------------*/
.logout {
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px 0 10px 45px;
  background: url(../img/mypage/icon-logout.svg) no-repeat;
  background-size: contain;
}

/*-------------------
 favorite
-------------------*/
.flex-wrapper.favorite {
  position: relative;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid #ccc;
  font-size: .9rem;
}

.flex-wrapper.favorite .deleteButton a {
  position: absolute;
  top: 0;
  right: 0px;
  display: block;
  width: 30px;
  height: 30px;
  background: #AAA;
  border-radius: 50%;
  line-height: 30px;
  text-align: center;
  color: #FFF;
}

.flex-wrapper.favorite .desc {
  color: #666;
}

.flex-wrapper.favorite .favorite-photo {
  width: 10%;
}

.flex-wrapper.favorite .favorite-name {
  width: 60%;
}

.flex-wrapper.favorite .favorite-date {
  width: 20%;
}

/*-------------------
 historyList
-------------------*/
.flex-wrapper.historyList {
  justify-content: flex-start;
  align-items: center;
}

.flex-wrapper.historyList .flex-one {
  margin-right: 10px;
}

.flex-wrapper.historyList .flex-one p {
  margin: 2px 0 0 0;
}

.licencer-inline {
	display: inline-block;
}

/*-------------------
 label
-------------------*/
.product_list .product_list-item figure .label {
  position: absolute;
  top: 0;
  left: 0;
  z-index:2;
}

.product_list .product_list-item .label.reserveItem {
  font-size: .75rem;
  background: #B79027;
  border-radius: 0;
  border-radius: 3px;
  font-weight: 700;
}

.product_list .product_list-item .label.closedItem {
  font-size: .75rem;
  background: #AAA;
  border-radius: 0;
  border-radius: 3px;
  font-weight: 700;
}

span.label {
  background: #B79027;
  border-radius: 20px;
}

.product_list .product_list-item .discount-wrap {
  display: flex;
  justify-content:space-between;
  flex-wrap: wrap;
}
.product_list .product_list-item .discount-label {
  color: #C00;
  font-size: .75rem;
}

/*-------------------
 comment
-------------------*/
.comment {
  background: #f4f4f4;
  padding: 15px;
  margin: 20px 0;
  font-size: .9rem;
}

/*-------------------
 bnr
-------------------*/
ul.bnr {
  margin: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  column-gap: 10px;
}

/*-------------------
 SNS
-------------------*/
.fb-wrapper>.fb-page {
  width: 100%;
}

.fb-wrapper>.fb-page>span,
.fb-wrapper iframe {
  width: 100% !important;
}

/*-------------------
 slider
-------------------*/
.slider-nav .slick-track,
.slider-itemnav .slick-track {
  transform: unset !important;
}

.slider-item div {
  margin-bottom: 10px;
}

.slider-item img, .slider-itemnav img {
  border: 1px solid #CCC;
}

.slick-slide {
  margin: 0 5px;
}

.slick-list {
  margin: 0 -5px;
}

.slider-item .slick-counter{
  text-align: center;
}

.slider-item .slick-prev,
.slider-item .slick-next
{
    top: 43%;
    background: #FFF;
    border-radius: 50%;
    z-index: 2;
}

.slider-item .slick-prev:before,
.slider-item .slick-next:before
{
    font-size: 24px;
    color: #B79027;
    margin: -2px;
}


.slider-item .slick-prev
{
  left: -10px;
}

.slider-item .slick-next
{
  right: -10px;
}

.slider-item .slick-prev:hover, .slider-item .slick-prev:focus,
.slider-item .slick-next:hover, .slider-item .slick-next:focus {
  background: #FFF;
}

/*-------------------
 accordion
-------------------*/
.accordion-title {
  font-size: 1rem;
  color: #000;
}

.accordion-title {
  padding-right: 30px;
  display: flex;
  line-height: 1.4;
}

.accordion-title span.num {
  color: rgb(183, 144, 39);
  font-weight: 700;
  margin-right: 10px;
}

a.accordion-title:focus, a.accordion-title:hover {
  color: #000;
}

.accordion-title.payment {
  display: flex;
  flex-wrap: wrap;
}

.accordion-title.payment .card_icon {
  width: 40px;
  border: 1px solid #ddd;
  border-radius: 3px;
  margin-right: 10px;
}

.accordion-title.payment .card_name {
  width: 70%;
  margin-right: 20px;
}

.flex-name {
  display: flex;
  flex-wrap: wrap;
}

.flex-name .flex-two {
  width: 75%;
}

.flex-name .flex-one {
  width: 25%;
}

/*-------------------
 #addressForm
-------------------*/
#addressForm, #addTable {
  display: none;
}

/*-------------------
borderBox
-------------------*/
.borderBox {
  padding: 15px;
  border: 1px solid #D9CEA0;
  border-radius: 12px;
  margin: 20px 0;
}

.borderBox img.borderBox-icon {
  width: 80px;
  margin-bottom: 20px;
}

/*-------------------
special
-------------------*/
.frame_special {
  background: url(../img/bridal/bg_special1.jpg) no-repeat center;
  background-size: contain;
  border: 3px double #D9CEA0;
  padding: 20px;
}

.frame_special h3 {
  text-align: center;
  background: url(../img/bridal/h3_bg.png) no-repeat center top;
  background-size: 480px;
  padding-top: 60px;
  color: rgb(183, 144, 39);
  font-size: 1.6rem;
  margin-bottom: 60px;
}

/*-------------------
 job
-------------------*/
section.job_mv {
  background: url(../img/job/bg-main.jpg) no-repeat top center;
  height: 100vh;
}

section.job_mv h2 {
  color: #FFF;
  text-align: center;
  font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
  font-weight: 700;
  text-shadow: 0 0 7px rgba(0, 0, 0, 0.8);
}

section.job_mv figure {
  margin-bottom: 50px;
}

section.job_concept {
  text-align: center;
}

section.job_concept h2 {
  font-size: 1.6em;
  font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
  font-weight: 700;
}

section.job_concept p {
  font-size: 1.1em;
  line-height: 2;
}

.job_engraved_grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 30px;
  justify-content: space-between;
}

section.job {
  background: url(../img/job/section_bg.jpg) no-repeat top center;
}

section.job h2 {
  text-align: center;
  font-weight: 700;
  padding-top: 30px;
  color: #000;
  font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
}

.job_list_grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 30px;
  justify-content: space-between;
  margin: 20px 0;
}

.job_list_grid .job_list-item img {
  border: 1px solid #CCC;
  margin-bottom: 10px;
}

.job_list_grid .job_list-item h3 {
  font-size: .9em;
  line-height: 1.4em;
  color: #707070;
}

.job_list_grid .job_list-item .list-price {
  color: #000;
  font-weight: 400;
  font-size: .9em;
  margin-bottom: 10px;
}

.job_list_grid .job_list-item .button-gold {
  display: block;
  text-align: center;
  font-size: .9em;
  padding: 5px 0;
  width: 100%;
}

.job .subheader {
  max-width: 607px;
  margin: 30px auto;
}

.job .subheader p {
  color: #000;
}

/*-------------------
 ordermade
-------------------*/
.ordermade_content {
	background-color: #fffef4;
	background-image: url(../img/ordermade/order_bg.png);
	background-size: cover;
}
.ordermade_content .movie .iframe_wrapper {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.ordermade_content .movie .iframe_wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.ordermade_content .button_wrap {
	margin-bottom: 30px;
}
.ordermade_content .button_wrap.reformbtn_wrap {
	margin-top: 40px;
	margin-bottom: 60px;
}
.ordermade_content .button {
	max-width: 340px;
	width: 100%;
	padding: 1.2em 1em;
	margin-bottom: .4rem;
}
.ordermade_content .arrow {
	margin: 3rem 0;
	text-align: center;
}

.ordermade_content .reference-price,
.ordermade_content .suggestion {
	color: #b78660;
}

.ordermade_content .textLicence {
	text-align: left;
}
.ordermade_content .flow .flex-box {
	display: flex;
}
.ordermade_content .flow .flex-box.reverse {
	flex-direction: row-reverse;
}
.ordermade_content .flow .flex-box .flex-item {
	width: 50%;
}
.ordermade_content .flow .flex-box .flex-item:nth-child(odd),
.ordermade_content .flow .flex-box.reverse .flex-item:nth-child(even){
	margin-right: 2rem;
}
.ordermade_content .flow .flex-box .flex-item:nth-child(even),
.ordermade_content .flow .flex-box.reverse .flex-item:nth-child(odd){
	margin-right: 0;
}
.ordermade_content .item .item-box {
	margin-bottom: 2rem;
}
.ordermade_content .item .sub-header.header01 {
	margin-bottom: -2rem;
}
.ordermade_content .item .grid-box {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	justify-content: space-between;
}

.ordermade_content .suggestion .title {
	font-weight: bold;
	text-align: center;
}
.ordermade_content .suggestion p {
	line-height: 1.1;
}
.ordermade_content .suggestion .nowrap {
	display: inline-block;
	font-size: .8rem;
}
.ordermade_content .annotation {
	font-size: .7rem;
}

/*-------------------
 reform
-------------------*/
.reform_content .section_inner_s {
	margin: 0 auto;
}
.reform_content .section_inner_s .inner_wrap {
  margin: 0 20px 60px;
}
.reform_content h2.title_reform {
  text-align: center;
  display: inline-block;
}
.reform_content .reference-price {
  color: #b78660;
}
.reform_content .method_wrap {
	margin-bottom: 60px;
}
.reform_content .flex-box,
.reform_content .consultation_content .flex-box {
  display: flex;
  align-items: center;
}
.reform_content .flex-box.reverse {
  flex-direction: row-reverse;
}
.reform_content .flex-box .flex-item,
.reform_content .consultation_content .flex-box .flex-item {
width: 50%;
}
.reform_content .flex-box .flex-item.type02 {
  width: 60%;
}
.reform_content .flex-box .flex-item.type03 {
  width: 40%;
}

.reform_content .flex-box .flex-item:nth-child(odd),
.reform_content .flex-box.reverse .flex-item:nth-child(even),
.reform_content .consultation_content .flex-box .flex-item:nth-child(odd) {
  margin-right: 1rem;
}
.reform_content .flex-box .flex-item:nth-child(even),
.reform_content .flex-box.reverse .flex-item:nth-child(odd),
.reform_content .consultation_content .flex-box .flex-item:nth-child(even) {
  margin-left: 1rem;
}
.reform_content .consultation_content {
	margin-bottom: 40px;
}
.reform_content .button.large {
  width: 100%;
  max-width: 340px;
}
.reform_content .copyright-mark {
	font-size: 1.1rem;
	vertical-align: top;
}

/*-------------------
 bridal_top
-------------------*/
.section_inner_bridal{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
}
.bannerBridal{
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
.bannerBridal img{
  transition: all linear .2s;
}
.bannerBridal img:hover{
  opacity: .7;
}
.bannerBridal .bannerBridal_simple{
width:50%;
}
.bannerBridal .bannerBridal_character{
width:50%;
}
.bannerBridal .bannerBridal_shoplist_img{
  width:50%;
}
.bannerBridal .bannerBridal_shoplist_btn{
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.bannerBridal .bannerBridal_simple .button,
.bannerBridal .bannerBridal_character .button,
.bannerBridal .bannerBridal_shoplist_btn .button{
  margin-bottom: 0;
}

#bridal_message p, #moot_mv_section p {
  line-height: 2;
  color:#666;
}

#moot_mv_section {
	margin-bottom: 100px;
}
#moot_mv_section .title {
  display: block;
  text-align: center;
  font-weight: 400;
  color: #666;
}

#bridal_approach h3{
  position: relative;
}
#bridal_approach h3 span{
  position: relative;
  display: inline-block;
  background: #FFF;
  padding-right: 10px;
}
/* #bridal_approach h3:before{
  position: absolute;
  display: block;
  content:'';
  top:50%;
  width:100%;
  height: 1px;
  background: #AAA;
} */
#bridal_maintenance h3{
  position: relative;
}
#bridal_maintenance h3 span{
  position: relative;
  display: inline-block;
  background: #FFF;
  padding-right: 10px;
}
#bridal_maintenance h3:before{
  position: absolute;
  display: block;
  content:'';
  top:50%;
  width:100%;
  height: 1px;
  background: #AAA;
}
#bridal_maintenance ul li{
  list-style: none;
  padding:10px 0;
}

#bridal_maintenance ul li a{
  text-decoration: underline;
}

/*-------------------
 moot
-------------------*/
#moot_logo h2{
	margin-top: 30px;
}
#moot_select .flex-wrapper{
	margin:30px auto;
	max-width: 700px;
	border-left: 1px solid #aaa;
}
#moot_select .flex-wrapper.two .flex-one:first-child,
#moot_select .flex-wrapper.two .flex-one:nth-child(2) {
	border-top: 1px solid #aaa;
}
#moot_select .flex-wrapper .flex-one{
	width:50%;
	padding:10px;
	border-bottom: 1px solid #aaa;
	border-right: 1px solid #aaa;
	margin: 0;
}
#moot_character .flex-wrapper.one-item {
	justify-content: center;
}
#moot_character .flex-wrapper .flex-one{
	align-self: flex-start;
}
#moot_character .flex-wrapper.one-item.three:after {
  width: auto;
}
#moot_select .section_inner_moot_select{
	max-width:860px;
	margin:0 auto;
	padding:0 10px;
}
#moot_select label,#moot_character label {
	cursor: pointer;
	margin: 0 0 5px;
}
#moot_select label figure{
	margin: 0;
}
#moot_character label {
	border: 1px solid #FFF;
}
#moot_select input[type="radio"],#moot_character input[type="radio"] {
	display: none;
}
#moot_select input[type="radio"]:checked+label,
#moot_character input[type="radio"]:checked+label  {
	border: 1px solid #B79027;
	background: #FFF;
}

#moot_character .opt_list5{
	display: none;
}

#moot_character .markList{
	display: none;
}

#moot_character .is-active .opt_list5,
#moot_character .panel.is-show .opt_list5{
	display: grid;
}

#moot_character .charatab{
	cursor: pointer;
}
#moot_character .charatab.disabled {
	cursor: unset;
}
#moot_character .charatab img{
	border: 1px solid #FFF;
	border-radius: 6px;
}
#moot_character .panel{
	display:none;
}
#moot_character .charatab.is-active{
	transition: all 0.2s ease-out;
}
#moot_character .charatab.is-active img{
	border: 1px solid #B79027;
}
#moot_character .charatab.disabled .disabled-image-wrap {
	background-color: gray;
	border-radius: 6px;
}
#moot_character .charatab.disabled img{
	opacity: 0.6;
	border: none;
}
#moot_character .panel.is-show{
	display:block;
	height: auto;
}
#moot_character #selectMark{
	display:none;
}
#moot_character #selectMark.is-active{
	display:block;
}
#moot_character .charatab.disabled .small {
	font-size: .8rem;
}

/*-------------------
 about_diamond
-------------------*/
.about_diamond-mv {
	margin-bottom: 60px;
}
.about_diamond-section {
	margin-bottom: 60px;
}
.about_diamond-section article {
	margin-bottom: 30px;
}

.about_diamond-title-wrap {
	margin-bottom: 20px;
}
.about_diamond-title01, .about_diamond-title02 {
	margin-bottom: 0;
}
.about_diamond-title01 span,
.about_diamond-title02 span {
	font-family: trajan-pro-3, serif;
	font-size: 2.2rem;
	color: #d8d8d8;
	width: 100%;
	margin-left: 0;
	line-height: 1.0;
	clear: both;
}
.about_diamond-title01 span::first-letter,
.about_diamond-title02 span::first-letter {
	font-size: 5.0rem;
	margin-right: 5px;
	color: #000;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 2px;
}

.about_diamond-entry-title {
	font-size: 1.4rem;
	color: #343434;
}

.about_diamond-detail {
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
	padding: 1rem 20px 0.5rem;
	background-color:#ededed;
}
.about_diamond-detail .title {
	font-size: 1.4rem;
	font-weight: 400;
	margin-bottom: 0;
	color: #343434;
}

.about_diamond-selected,
.about_diamond-selection {
	margin-top: 40px;
	margin-bottom: 30px;
}
.about_diamond-selected .title {
	font-size: 1.4rem;
}
.about_diamond-selected .title::before {
	content:"";
	background: url(../../assets/img/diamond/about-diamond_selected.png) no-repeat center right;
	display: inline-block;
	background-size: contain;
	width: 1.6em;
	height: 1.0em;
	margin-right: 10px;
	margin-bottom: -2px;
}
.about_diamond-selected .text-box {
	margin-top: 20px;
	margin-bottom: 30px;
	padding: 10px 20px;
	position: relative;
}
.about_diamond-selected .text-box::before,
.about_diamond-selected .text-box::after {
	content: '';
	width: 20px;
	height: 40px;
	position: absolute;
}
.about_diamond-selected .text-box::before {
	border-left: solid 2px #d9cbcb;
	border-top: solid 2px #d9cbcb;
	top: 0;
	left: 0;
}
.about_diamond-selected .text-box::after {
	border-right: solid 2px #d9cbcb;
	border-bottom: solid 2px #d9cbcb;
	bottom: 0;
	right: 0;
}

.about_diamond-selection-title {
	font-family: trajan-pro-3, serif;
	font-size: 1.8rem;
	color: #e7c903;
}

.about_diamond-flex-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.about_diamond-flex-box.center {
	align-items: center;
}
.about_diamond-flex-box .flex-item.w60 {
	width: 60%;
}
.about_diamond-flex-box .flex-item.w50 {
	width: 50%;
}
.about_diamond-flex-box .flex-item.w45 {
	width: 45%;
}

.about_diamond-flex-box.grade-wrap {
	justify-content: center;
	margin-right: auto;
	margin-left: auto;
}
.about_diamond-flex-box.grade-wrap .flex-item.image-box {
	max-width:50%;
}
.about_diamond-flex-box .flex-item .grade-text {
	display: inline-block;
	text-align: left;
}
.about_diamond-flex-box .flex-item .grade-text .title {
	font-weight: 700;
}

@media(max-width:64em) {
	.about_diamond-title01 span,
	.about_diamond-title02 span {
		font-size: 1.4rem;
	}
	.about_diamond-title01 span::first-letter {
		font-size: 4.0rem;
		line-height:0.5em;
		float:left;
		vertical-align: bottom;
	}
	.about_diamond-title02 span::first-letter {
		font-size: 4.0rem;
	}
	.about_diamond-entry-title {
		font-size: 1.2rem;
	}
	.about_diamond-detail .title {
		font-size: 1.2rem;
	}
	.about_diamond-selected .title {
		font-size: 1.2rem;
	}
	.about_diamond-selection {
		margin-top: 0;
		margin-bottom: 0;
	}
	.about_diamond-selection-title {
		font-size: 1.4rem;
	}
	.about_diamond-flex-box {
		display: block;
	}
	.about_diamond-flex-box .flex-item.w60,
	.about_diamond-flex-box .flex-item.w50,
	.about_diamond-flex-box .flex-item.w45 {
		width: 100%;
	}
	.about_diamond-flex-box.grade-wrap {
		display: flex;
	}
	.about_diamond-flex-box.grade-wrap .flex-item.image-box {
		max-width: 50%;
	}
}
@media (max-width: 40em) {
	.about_diamond-flex-box.grade-wrap .flex-item.image-box,
	.about_diamond-flex-box.grade-wrap .flex-item.text-box {
		width: 50%;
	}
}
@media (max-width: 360px) {
	.about_diamond-flex-box.grade-wrap {
		display: block;
	}
	.about_diamond-flex-box.grade-wrap .flex-item.image-box,
	.about_diamond-flex-box.grade-wrap .flex-item.text-box {
		max-width: 100%;
		width: 100%;
	}
}

/*-------------------
 shoplist
-------------------*/
.shoplist_content .top-text {
	margin-top: 3rem;
	margin-bottom: 4rem;
	font-size: 1.4rem;
}
.shoplist_content .item-box {
	text-align: center;
	margin-bottom: 4rem;
}
.shoplist_content .item-box .image_wrap {
	margin-bottom: 1rem;
}
.shoplist_content .item-box .text_wrap {
	font-size: 1.2rem;
}
.shoplist_content .item-box .flex-box {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.shoplist_content .item-box .flex-box.revert {
	flex-direction: row-reverse;
}
.shoplist_content .item-box .flex-box .image_wrap {
	width: 40%;
}
.shoplist_content .item-box .flex-box .text_wrap {
	width: 55%;
}
#shoplist .shoplist-shortcut{
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
	margin: 15px 0 10px;
}
#shoplist .shoplist-shortcut h2,
#shoplist .shoplist-shortcut ul{
	width: 100%;
}
#shoplist .shoplist-shortcut h2{
	margin-bottom: 1vh;
}
#shoplist .shoplist-shortcut ul{
	display: flex;
	justify-content:flex-end;
	align-items: center;
	margin-top: 0.4rem;
}
#shoplist .shoplist-shortcut li{
	margin-left: 1.5em;
	font-size: 1.0rem;
	list-style: none;
	position:relative;
	padding: 0em 0.2em 0.3em 0.9em;
}
#shoplist .shoplist-shortcut li:before {
	position:absolute;
	content:'';
	top: 0.4em;
	left: 0.2em;
	height:0;
	width:0;
	border-style: solid;
	border-width: 5px 0 5px 6px;
	border-color: transparent transparent transparent #B79027;
}
@media screen and (max-width: 760px) {
	#shoplist .shoplist-shortcut {
		justify-content: flex-end;
	}
	#shoplist .shoplist-shortcut ul {
		flex-wrap: wrap;
		max-width: 480px;
		margin-left: 0;
	}
	#shoplist .shoplist-shortcut li{
		width: 32%;
		margin-right: 2%;
		margin-left: 0;
		box-sizing: border-box;
	}
	#shoplist .shoplist-shortcut li:nth-child(3n){
		margin-right:0;
	}
}
@media screen and (max-width: 420px) {
	#shoplist .shoplist-shortcut li {
		width: 46%;
		margin-right:2%;
	}
	#shoplist .shoplist-shortcut li:nth-child(3n){
		margin-right: 2%;
	}

	#shoplist .shoplist-shortcut li:nth-child(2n){
		margin-right: 0;
	}

}
@media (max-width: 64em) {
	.shoplist_content .top-text {
		font-size: 1.2rem;
	}
	.shoplist_content .item-box .text_wrap {
		font-size: 1.0rem;
	}
	.shoplist_content .item-box .flex-box {
		display: block;
	}
	.shoplist_content .item-box .flex-box .image_wrap,
	.shoplist_content .item-box .flex-box .text_wrap {
		width: 100%;
	}
}
@media (max-width: 40em) {
	.shoplist_content .top-text {
		font-size: 1.0rem;
	}
}
@media(max-width:420px) {
	.shoplist_content .hide-small {
		display: none;
	}
}

/*-------------------
 footer
-------------------*/
#footerArea{
  width: 100%;
  text-align: center;
}

footer.page_footer {
  width: 100%;
  background: #707070;
  padding: 30px 0;
  color: #FFF;
  font-size: 0.9rem;
}

footer.page_footer a {
  color: #FFF;
  font-weight: 700;
}

footer.page_footer ul.page_footer-sns {
  display: flex;
  justify-content: center;
  list-style: none;
  margin: 20px 0 40px;
}

footer.page_footer ul.page_footer-sns li {
  margin: 0 10px;
}

footer.page_footer ul.page_footer-sns li img {
  width: 36px;
}

footer.page_footer ul.page_footer-nav {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 10px auto;
  list-style: none;
}

footer.page_footer ul.page_footer-nav li {
  font-size: .9rem;
}

footer.page_footer ul.page_footer-nav li a {
  display: block;
  padding: 7px 14px;
}

.copyright {
  text-align: center;
  margin: 1rem 0;
  color: #707070;
  font-size: .9rem;
}

/*-------------------
 searchModal
-------------------*/
.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 30;
}

.modal.show {
  display: block;
}

.modal.loader {
  display: block;
}

.modal__bg {
  background: rgba(0, 0, 0, 0.8);
  height: 100vh;
  position: absolute;
  width: 100%;
}

.popup__bg {
  background: rgba(0, 0, 0, 0.1);
  height: 100vh;
  position: absolute;
  width: 100%;
}

.modal__content {
  background: #fff;
  left: 50%;
  padding: 40px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
  overflow-y: auto;
  border-radius: 5px;
}

.modal__content.large {
  overflow-y: scroll;
  height: 90%;
}

.modal__content.small {
  overflow-y: scroll;
  max-height: 90%;
}

.modal__content .close-button {
  position: fixed;
  top: 10px;
  right: 10px;
}

.modal__content .close-button.close-button_small {
  font-size: 1rem;
}

.modal__content .modal_inner {
  position: relative;
  padding: 20px;
}

#agreement .modal__content .close-button,
#privacy .modal__content .close-button {
  position: absolute;
  bottom: 0;
  top: auto;
  left: 50%;
  transform: translate(-50%, -50%);
  right: inherit;
  width: 200px;
  text-align: center;
  font-size: 1.2rem;
  display: block;
  color: #000;
  background: #B79027;
  border-radius: 6px;
  color: #FFF;
  padding: 10px;
}

#agreement .modal__content .modal_inner,
#privacy .modal__content .modal_inner {
  padding-bottom: 60px;
}

.loader .modal__content {
  background: transparent;
}

#agreement .modal__bg .refuse-button,
#privacy .modal__bg .refuse-button {
  position: absolute;
  bottom: auto;
  top: 30px;
  left: auto;
  right: 30px;
  width: 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  display: block;
  color: #FFF;
  padding: 10px;
}

#popupModal .modal__content .close-button {
  position: fixed;
  top: 10px;
  right: 10px;
  font-size: .9rem;
}

.js-modal-open {
  color: #C00;
  text-decoration: underline;
}

.loader {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

span.loading03, span.loading03:after {
  display: inline-block;
  width: 50px;
  height: 50px;
  background-repeat: no-repeat;
  background-image:
    -webkit-gradient(radial, 4 center, 0, 4 center, 4, from(#999), color-stop(0.5, #999), color-stop(0.9, transparent), to(transparent)),
    -webkit-gradient(radial, center 4, 0, center 4, 4, from(#999), color-stop(0.5, #999), color-stop(0.9, transparent), to(transparent)),
    -webkit-gradient(radial, 46 center, 0, 46 center, 4, from(#999), color-stop(0.5, #999), color-stop(0.9, transparent), to(transparent)),
    -webkit-gradient(radial, center 46, 0, center 46, 4, from(#999), color-stop(0.5, #999), color-stop(0.9, transparent), to(transparent));
  background-image:
    -webkit-radial-gradient(10% 50%, 4px 4px, #999, #999 95%, #999 95%, transparent),
    -webkit-radial-gradient(50% 10%, 4px 4px, #999, #999 95%, #999 95%, transparent),
    -webkit-radial-gradient(90% 50%, 4px 4px, #999, #999 95%, #999 95%, transparent),
    -webkit-radial-gradient(50% 90%, 4px 4px, #999, #999 95%, #999 95%, transparent);
  background-image:
    radial-gradient(4px 4px at 10% 50%, #999, #999 95%, transparent),
    radial-gradient(4px 4px at 50% 10%, #999, #999 95%, transparent),
    radial-gradient(4px 4px at 90% 50%, #999, #999 95%, transparent),
    radial-gradient(4px 4px at 50% 90%, #999, #999 95%, transparent);
}

span.loading03 {
  position: relative;
  margin: 0 10px;
  vertical-align: middle;
  -webkit-animation: animation03 2s linear infinite;
  animation: animation03 2s linear infinite;
}

span.loading03:after {
  position: absolute;
  content: " ";
  left: 0;
  top: 0;
  margin: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

@-webkit-keyframes animation03 {
  0% {
    -webkit-transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
  }
}

@keyframes animation03 {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*-------------------
 overseas
-------------------*/
.reflection {
  display: inline-block;
  position: relative;
  overflow: hidden;
}

.reflection:after {
  content: "";
  height: 100%;
  width: 10px;
  position: absolute;
  top: -80px;
  left: 0;
  background-color: #fff;
  opacity: 0;
  -webkit-transform: rotate(45deg);
  -webkit-animation: reflection 2s ease-in-out infinite;
}

@keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }

  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }

  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

.circleIcon {
  width: 160px;
  height: 160px;
  background: #e1c683;
  border-radius: 50%;
  padding: 40px 30px;
  text-align: center;
  margin: 0 auto;
}

@media(max-width:78em) {
  header.global_header .global_header-logoArea {
    padding: 0 20px;
  }

  .section_inner {
    margin: 0 20px;
  }
}

@media(max-width:64em) {

  /*===================
   common
  ===================*/
  body main,  body footer{
    overflow-x: hidden;
  }

  .section_inner_s {
    margin: 0 10px;
  }

  .textLicence{
    font-size:.8rem;
  }

  .lead{
    font-size: 1.1rem;
  }

  /*===================
   global_header
  ===================*/

  body.drawer-open header.global_header {
    position: fixed;
  }

  header.global_header .global_header-logoArea {
    padding: 0 5px;
  }

  header.global_header .global_header-logoArea .global_header-logo h1.logo {
    width: 50px;
    height: 39px;
    margin: 10px auto;
  }

  header.global_header .global_header-logoArea .global_header-logo h1.logo a {
    display: block;
    width: 50px;
    height: 39px;
  }

  header.global_header .global_header-logoArea .global_header-icon ul {
    margin: 20px 0 0 0;
  }

  header.global_header .global_header-logoArea .global_header-icon ul li {
    width: 20px;
    height: 20px;
  }

  header.global_header .global_header-logoArea .global_header-icon ul li a {
    width: 20px;
    height: 20px;
  }

  header.global_header .drawer-hamburger {
    position: relative;
    padding: 0;
    display: block;
  }

  header.global_header .drawer-nav {
    top: auto;
    left: -320px;
    width: 320px;
    padding: 15px;
    background: #707070;
    color: #FFF;
    font-size:.8rem;
  }

  header.global_header .drawer-nav {
    padding-bottom:70px;
  }

  header.global_header .drawer-nav ul li a {
    color: #FFF;
    padding: 5px 0;
    display: block;
    background: url(../img/arrow_w.svg) no-repeat center right;
		font-size:.9rem;
  }

  body.drawer--left.drawer-open .drawer-hamburger {
    left: 0;
  }

  /*===================
   mv
  ===================*/
  #mv.subpage {
    padding: 0 10px;
  }

  .slick-dots {
    bottom: -45px;
  }

  /*===================
   breadcrumbs
  ===================*/
  .breadcrumbs ul {
    padding: 20px 0 10px;
  }

  /*===================
   table
  ===================*/
  .table-confirm th {
    width: 100%;
  }

  .table tbody {
    border: none;
  }

  .table tbody th {
    padding: 5px 0 6px;
  }

  .table tbody td {
    border-bottom: 1px solid #CCC;
    background: none;
    padding: 5px 0 6px;
  }

  .table-bordered tr {
    border-top: 1px solid #CCC;
    margin-bottom: 5px;
  }

  .table-bordered tr {
    border-top: 1px solid #CCC;
    margin-bottom: 5px;
  }

  .table-bordered .table_inner td,
  .table-bordered .table_inner th {
    display: table-cell;
  }

  .table-bordered.address th {
    width: 100%;
  }

  .table-bordered.addressList tr {
    margin-bottom: 20px;
  }

  .table-bordered.addressList .no {
    width: 100%;
  }

  .table-bordered.addressList .edit {
    text-align: center;
  }

  .table.addressList .no,
  .table.addressList .name,
  .table.addressList .add,
  .table.addressList .edit {
    width:100%;
  }

  .table.addressList .no {
    text-align: left;
  }

  .table.addressList .edit {
    margin-bottom: 20px;
    border-bottom: 2px solid #777;
  }

  .table.arrivalList .name
  .table.arrivalList .mail
  .table.arrivalList .itemName
  .table.arrivalList .itemOption{
    width:100%;
  }

  .table.arrivalList .edit{
    border-bottom: 2px solid #777;
  }

  .table.stack th {
    border-bottom: none;
    padding-bottom: 5px;
  }

  table tbody th.w35 {
    width: 100%;
  }

  /*===================
   form
  ===================*/
  input.input-small {
    width: 4em;
    display: inline-block;
  }

  input.input-medium {
    width: 49%;
    display: inline-block;
  }

  input.input-large {
    width: 100%;
    display: inline-block;
  }

  select {
    width: 100%;
  }

  select.select-inline {
    width: auto;
  }

  /*===================
   button
  ===================*/
  .btnArea {
    padding: 10px 0;
    text-align: center;
  }

  .button {
    font-size: .9rem
  }

  .flex-wrapper.flex-button {
    justify-content: space-between;
    column-gap: 0;
  }

  .flex-wrapper.flex-button button,
  .flex-wrapper.flex-button .a-button {
    width: 46%;
    font-size: .9rem;
  }

  _::-webkit-full-page-media, _:future, :root .flex-wrapper.flex-button button {
    margin: 0;
  }

  /*===================
    H
   ===================*/
  section h2 {
    font-size: 1.8rem;
    margin: 10px 0;
  }

  section h2.entry-title {
    font-size: 1.4rem;
  }

  h4.entry-title {
    font-size: 1rem;
  }

  h3.entry-title {
    font-size: 1.2rem;
  }

  /*===================
     section
    ===================*/
  section {
    margin: 0 0 10px 0;
  }

  .top_banner_wrap {
    padding: 20px 0 0;
  }

  .ly_padding {
    padding: 20px 0;
  }

  /*===================
   flex-wrapper
  ===================*/
  .flex-wrapper.two .flex-one {
    width: 100%;
  }

  .flex-wrapper.two .flex-one.mb0 {
    margin-bottom: 0;
  }

  .flex-wrapper.two .flex-half {
    width: 48%;
  }

  .flex-wrapper.four .flex-three {
    width: 100%;
  }

  .flex-wrapper.three.mypageButton .flex-one {
    width: 48%;
  }

  .flex-wrapper.four .flex-one {
    width: 100%;
  }

  .flex-wrapper.four .flex-half {
    width: 48%;
  }

  .flex-wrapper.item-minimum figure {
    width: 25%;
  }

  .flex-wrapper.item-minimum .flex-text {
    width: 75%;
  }

  /*===================
   category_list
  ===================*/
  .flex-wrapper.category_list {
    column-gap: 14px;
  }

  /*===================
   product_list
  ===================*/
 .product_list_grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    column-gap: 15px;
  }

  .product_list .product_list-item figure {
    margin-bottom: 5px;
  }

.product_list .product_list-item h3.list-name {
    margin-bottom: 3px;
    font-size: .7rem;
    color:#111;
  }

.product_list .product_list-item .list-price {
  font-size: .8rem;
}

  .product_list .product_list-item p {
    margin-bottom: 3px;
    font-size: .7rem;
  }

  .product_list_grid.categoryRanking {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    column-gap: 15px;
  }

  .product_list_grid.categoryRanking .product_list-item {
    width: 100%;
  }

  .product_list.ranking figure .rank.crown {
    width: 45px;
    height: 34px;
  }

  /*===================
   serch_list
  ===================*/
  ul.serch_list {
    margin: 0 -20px;
  }

  ul.serch_list li {
    width: 100%;
    padding: 0 20px;
  }

  ul.serch_list li:nth-child(odd) {
    background: #FFF;
  }

  .search_refind dl {
    display: block;
    grid-template-columns: 1fr 4fr;
  }

  .search_refind input[type="text"],
  .search_refind select {
    width: 100%;
  }

	/*-------------------
	itemList
	-------------------*/
	#item {
		scroll-margin-top: 145px;
	}

  /*===================
     searchTitle
  ===================*/
  .search_title {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    flex: 1 0 auto;
  }

  .search_title li {
    margin: 5px 0;
    width: 18%;
    height: 60px;
    display: flex;
    align-items: center;
  }

  .search_title li>a {
    display: block;
    background-color: #fff;
    color: #444;
    font-size: 22px;
    line-height: 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    height: 60px;
    border: 1px solid #ddd;
    border-radius: 3px;
    text-align: center;
  }

  /*===================
   licencer_list_grid
  ===================*/
  .licencer_list_grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .licencer_list_grid.five {
    grid-template-columns: 1fr 1fr 1fr 1fr;
		gap: 30px 40px;
  }

  .licencer_list_grid .licencer_list-item .item_wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .licencer_list_grid.five .licencer_list-item .item_wrapper {
    display: block;
  }

  .licencer_list_grid .licencer_list-item figure {
    width: 30%;
    border: none;
  }

  .licencer_list_grid.five .licencer_list-item figure {
      width: 100%;
  }

  .licencer_list_grid .licencer_list-item h3 {
    width: 66%;
    text-align: left;
    font-size: 1.1rem;
  }
  .licencer_list_grid.five .licencer_list-item h3 {
    width: 95%;
    font-size: .75rem;
    text-align: center;
  }

  .licencer_list_grid.four .licencer_list-item .item_wrapper {
    display: block;
  }
  .licencer_list_grid.four .licencer_list-item figure {
    width: 100%;
    border: none;
  }
  .licencer_list_grid.four .licencer_list-item h3 {
    width: 100%;
    text-align: center;
    font-size: .8rem;
  }

  /*===================
   character_list_grid
  ===================*/
  .character_list_grid {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }

  /*===================
   news
  ===================*/
  .flex-wrapper.news .flex-one {
    width: 100%;
    padding: 10px;
  }

  .flex-wrapper.news .flex-one {
    width: 100%;
    padding: 10px;
  }

  .flex-wrapper.news .flex-one:nth-child(even) {
    border-left: 1px solid #CCC;
  }

  .flex-wrapper.news .flex-one {
    background: url(../img/arrow.svg) no-repeat center right 10px;
  }

  .flex-wrapper.news .flex-one .news-content {
    display: block;
    width: 100%;
    padding: 10px 20px 10px 0;
    font-size: .9rem;
  }

  .flex-wrapper.news .flex-one .news-date {
    display: block;
    width: 100%;
    border-right: none;
  }

  /*===================
   special/news
  ===================*/
  .special-detail-content h1,
  .news-detail-content h1 {
    font-size: 1.3em;
    margin-block-start: 0.7em;
    margin-block-end: 0.7em;
  }
  .special-detail-content h2,
  .news-detail-content h2 {
    font-size: 1.2em;
    margin-block-start: 0.65em;
    margin-block-end: 0.65em;
  }
  .special-detail-content h3,
  .news-detail-content h3 {
    font-size: 1.1em;
  }
  .special-detail-content h4,
  .news-detail-content h4 {
    font-size: 1.0em;
    margin-block-start: 1.2em;
    margin-block-end: 1.2em;
  }
  .special-detail-content h5,
  .news-detail-content h5 {
    margin-block-start: 1.4em;
    margin-block-end: 1.4em;
  }
  .special-detail-content h6,
  .news-detail-content h6 {
    margin-block-start: 2.1em;
    margin-block-end: 2.1em;
  }

  /*===================
   pointHistory
  ===================*/
  .flex-wrapper.pointHistory .item {
    text-align: center;
    width: 33%;
  }

  .flex-wrapper.pointHistory .item:nth-child(3),
  .flex-wrapper.pointHistory .item:nth-child(4) {
    border-right: 1px solid #CCC;
  }

  .flex-wrapper.pointHistory .date {
    text-align: left;
    width: 100%;
  }

  .flex-wrapper.pointHistory .by {
    width: 20%;
  }

  .flex-wrapper.pointHistory .ordername {
    text-align: left;
    width: 100%;
    padding-bottom: 10px;
  }

  .flex-wrapper.pointHistory .item div {
    color: #B79027;
    font-size: .8rem;
  }

  /*===================
   item
  ===================*/
  /*------option-------*/
  .flex-wrapper.option .flex-name,
	.flex-wrapper.option .flex-detail {
    width: 100%;
  }

  .flex-wrapper.option .flex-detail-button {
    width: 100%;
		display: block;
  }

  .flex-wrapper.option.number {
    justify-content: flex-start;
  }

  .flex-wrapper.option.number .flex-name {
    width: 15%;
  }

  .flex-wrapper.option.number .flex-detail,
  .flex-wrapper.option.number .flex-detail-button {
    width: 80%;
  }
  /*------cartArea----*/
  .flex-wrapper.cart {
    margin: 10px;
  }

  .cartArea .flex-wrapper.cart .cart-number,
  .flex-wrapper.cart .cart-button {
    width: 100%;
  }

  .cartArea .cart-button button {
    width: 100%;
  }

  .flex-wrapper.two.sns .flex-one {
    width: 100%;
  }

  .flex-wrapper.option .colorBtn label {
    width: 100%;
  }

  .flex-wrapper.option .switching-secondary-group label {
    width: 100%;
  }

  /*===================
     cart
  ===================*/
  .flex-wrapper.cart .cart-photo {
    width: 100%;
    text-align: center;
  }

  .flex-wrapper.cart .cart-photo img {
    width: 30%;
  }

  .flex-wrapper.cart .cart-name {
    width: 100%;
  }

  .flex-wrapper.cart .cart-number {
    width: 35%;
  }

  .flex-wrapper.cart .cart-price {
    width: 62%;
    text-align: right;
  }

  .flex-wrapper.cart .deleteButton a {
    position: absolute;
    top: 10px;
    right: 0px;
  }

  .flex-wrapper.cart.cart-s {
    margin: 10px 0;
  }

  .flex-wrapper.cart.cart-s .cart-photo {
    width: 20%;
  }

  .flex-wrapper.cart.cart-s .cart-photo img {
    width: 100%;
  }

  .flex-wrapper.cart.cart-s .cart-name {
    width: 50%;
  }

  .flex-wrapper.cart.cart-s .cart-price {
    width: 25%;
  }

  .flex-cartstep .flex-one .step {
    display: none;
  }

  .flex-cartstep .flex-one::after {
    top: 0;
    right: -15px;
    border-left: 15px solid #f4f4f4;
    border-top: 24px solid transparent;
    border-bottom: 24px solid transparent;
  }

  .delivery_check label {
    line-height: 1.2;
    display: flex;
  }

  .originalBag label{
    font-size: .9rem;
    line-height: 1.2;
    display: flex;
  }

  .deliverydate label{
    font-size: .9rem;
    line-height: 1;
    display: flex;
  }

 .originalBag label.inline span,
 .deliverydate label.inline span{
    display: inline-block;
    line-height: 1.3;
  }

  .originalBag .originalbag-text {
    width: 80%;
  }

  .originalBag .originalbag-photo {
    width: 20%;
  }

  /*===================
     status sort
  ===================*/
  .flex-wrapper.status {
    width: 100%;
  }

  .flex-wrapper.status .status-left,
  .flex-wrapper.status .status-center,
  .flex-wrapper.status .status-right {
    width: 100%;
  }

  .status ul.pagenav {
    display: flex;
    justify-content: start;
  }

  .status ul.sort {
    column-gap: 0;
    margin: 10px -20px 0;
    padding: 5px 20px;
    background: #f4f4f4;
  }

  .status ul.sort li {
    width: 100%;
    text-align: center;
  }

  .status ul.sort a.is-active {
    border-bottom: 2px solid:#DE0E56;
  }

  /*===================
     button group
  ===================*/
  ul.button_group {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
    font-size: .8rem;
  }

  /*===================
     mypage
  ===================*/
  .logout {
    text-align: right;
    padding: 10px 45px 10px 0;
    background: url(../img/mypage/icon-logout.svg) no-repeat top right;
    margin-bottom: 20px;
  }

  /*===================
      favorite
  ===================*/
  .flex-wrapper.favorite .favorite-photo {
    width: 30%;
  }

  .flex-wrapper.favorite .favorite-name {
    width: 70%;
  }

  .favorite .favorite-name .name {
    margin-right: 30px;
  }

  .flex-wrapper.favorite .favorite-date {
    width: 100%;
  }

  .flex-wrapper.favorite .deleteButton a {
    position: absolute;
    top: auto;
    width:28px;
    height: 28px;
    line-height: 28px;
    z-index: 2;
  }

  /*===================
       slider
  ===================*/
  .slick-slide {
    margin: 0;
  }

  .slick-list {
    margin: 0;
  }
  /*===================
      accordion
  ===================*/
  .flex-name .flex-two{
    width:77%;
  }
  .flex-name .flex-one{
    width:23%;
  }

  /*===================
     borderBox
  ===================*/
  .borderBox {
    margin: 10px 0;
    padding: 10px;
  }

  .borderBox img.borderBox-icon {
    width: 50px;
    margin-bottom: 10px;
  }

  .borderBox h4 {
    font-size: 1rem;
  }

  /*===================
     borderBox
  ===================*/
  section.job_concept h2 {
    font-size: 1.3em;
  }

  section.job_concept p {
    font-size: 1em;
  }

  .job_engraved_grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 10px;
  }

  .job_list_grid {
    column-gap: 15px;
  }

  .job_list_grid .job_list-item h3 {
    height: 2.5em;
  }

  /*===================
     bridal_top
  ===================*/
  .section_inner_bridal{
    padding:0 20px;
  }
  .bannerBridal{
    position: relative;
    display: flex;
    flex-wrap: wrap;
  }
  .bannerBridal .bannerBridal_simple{
  width:100%;
  margin-bottom: 36px;
  }
  .bannerBridal .bannerBridal_character{
  width:100%;
  margin-bottom: 20px;
  }
  .bannerBridal .bannerBridal_shoplist_img{
    width: 100%;
  }
  .bannerBridal .bannerBridal_shoplist_btn {
    width: 100%;
    margin-bottom: 20px;
  }
  #bridal_approach .flex-one{
    width:49%;
  }

  /*===================
     moot
  ===================*/
  #moot_mv_section {
    margin-bottom: 40px;
  }
  #moot_mv_section p {
    font-size: inherit;
  }

  #moot_logo h2 img{
    width:180px;
  }
  #moot_select .plus img{
    width:30px;
  }
  #moot_select .flex-wrapper{
    margin: 20px auto 40px;
  }
  #moot_select h3 img{
    max-width:270px;
  }
  #moot_character .flex-wrapper .flex-one.charatab{
    width:48%;
  }
  #moot_character .lead .small {
    font-size: .8rem;
  }

  /*===================
     footer
  ===================*/
  footer.page_footer {
    padding: 10px 0;
  }

  footer.page_footer ul.page_footer-nav {
    display: block;
    text-align: center;
    margin: 0 10px;
  }

  footer.page_footer ul.page_footer-nav li {
    display: inline-block;
  }

  footer.page_footer ul.page_footer-nav li a {
    padding: 7px 10px;
    display: inline-block;
  }

  footer.page_footer ul.page_footer-sns {
    margin: 20px 0 10px;
  }

  footer.page_footer ul.page_footer-sns li img {
    width: 26px;
  }

  footer.page_footer ul.page_footer-nav li {
    font-size: .8rem;
  }

  .copyright {
    font-size: .8rem;
  }

  /*===================
     search
  ===================*/
  .modal__content {
    width: 90%;
    padding: 0;
  }

  .modal__content.modal_alert{
    padding:15px;
  }


  #agreement .modal__content,
  #privacy .modal__content {
    padding: 0;
    width: 90%;
    height: 80%;
  }
}

@media(max-width:40em) {
  .textLicence{
    font-size:.6rem;
  }

  .flex-wrapper.bnrArea .flex-one {
    width: 100%;
  }

  .button.large, .button.medium {
    width: 100%;
  }

  button.button-gold {
    width: 100%;
  }
	button.button-white {
    width: 100%;
  }

  /* button.btn-clear {
    width: 100%;
  } */


  #searchModal {
      margin: 0;
    }

#searchModal .modal__content {
      background: #f4f4f4;
      left: 50%;
      padding:0;
      margin:0 auto;
      top: 1%;
      transform: translate(-50%,0);
      width: 96%;
      height:inherit;
      height: 98vh;
  }

  #searchModal .modal__content .search_refind{
margin-bottom: 0;
  }

  /*===================
     category_list
    ===================*/
  .flex-wrapper.category_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .flex-wrapper.category_list .flex-one {
    width: 30%;
  }

  .flex-wrapper.category_list:after {
    display: block;
    content: '';
    width: 30%;
  }

  .flex-wrapper.bridalBrandList .flex-one .bridallink {
    bottom: -10%;
    width: auto;
    padding: 7px 10px;
    font-size: .9rem;
    margin-left: 88px;
    border-radius: 24px;
  }

  .flex-wrapper.bridalBrandList .flex-one .bridallink:before {
    top: 50%;
    left: -90px;
    width: 90px;
  }

  .flex-wrapper.bridalBrandList.reverse .flex-one .bridallink {
    right: 0;
    margin-right: 88px;
    margin-left: auto;
    bottom: -15%;
  }

  .flex-wrapper.bridalBrandList.reverse .flex-one .bridallink:before {
    top: 50%;
    left: auto;
    right: -90px;
    width: 90px;
    height: 1px;
    background: #CCC;
  }

  /*===================
   product_list
  ===================*/
  .product_list_grid {
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 10px;
  }

	.product_list_grid_moot {
		grid-template-columns: 1fr 1fr;
		column-gap: 20px;
	}

  .product_list_grid.categoryRanking {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 10px;
    justify-content: center;
  }

  .product_list_grid.categoryRanking .product_list-item {
    width: 100%;
  }

  /*===================
   ranking
  ===================*/
  .product_list.ranking figure .rank.crown {
    top: 0;
    width: 32px;
    height: 25px;
  }

  /*===================
   frame
  ===================*/
  .frame .frame_inner {
    padding: 10px;
  }

  .frame .frame_title {}

  .frame .frame_title .date {
    width: 100%;
  }

  .frame .frame_title .price {
    padding-top: 10px;
    width: 100%;
  }

  .frame .frame_title .price dl dt{
    width: 60%;
  }
  .frame .frame_title .price dl dd{
    width: 40%;
  }

  .frame .frame_title .address {
    display: block;
    text-align: left;
    padding-top: 5px;
    margin-top: 5px;
    width:100%;
    border-top: 1px solid #ddd;
    max-width: inherit;
  }

  /*===================
   historyList
  ===================*/
  .historyList_detail .flex-wrapper{
    grid-template-columns: 90px 1fr;
    margin:10px 0;
  }

  /*===================
   label
  ===================*/
  .product_list .product_list-item .label.reserveItem {
    padding:2px 3px;
    font-size:.7rem;
  }

  .product_list .product_list-item .label.closedItem {
    padding:2px 3px;
    font-size:.7rem;
  }

  /*===================
   opt
  ===================*/
  ul.opt_list2 li {
    width: 24%;
  }

  ul.opt_list3  {
    justify-content: space-between;
  }

  ul.opt_list3 li {
    width: 48%;
    margin: 10px 0;
    text-align: center;
  }

  ul.opt_list6 li {
    width: 100%;
    margin: 10px 0;
    text-align: center;
  }
  /*===================
   item-free
  ===================*/
  .lead_item-free{
    font-size: 1rem;
  }
  .flex-flow .flex-three{
    width:100%;
  }
  .flex-flow .flex-one{
    width:100%;
  }

  /*===================
   special
  ===================*/
  .frame_special {
    background: url(../img/bridal/bg_special1.jpg) no-repeat center top;
    background-size: 100%;
    margin-bottom: 30px;
  }

  .frame_special h3 {
    background-size: 240px;
    padding-top: 40px;
    font-size: 1.5rem;
    margin-bottom: 30px;
  }

  .frame_special h4 {
    font-size: 1.1rem;
  }

  .frame_special p {
    font-size: .9rem;
  }

  /*===================
   clubmember
  ===================*/
  .circleIcon {
    width: 100px;
    height: 100px;
    background: #e1c683;
    border-radius: 50%;
    padding: 25px 15px;
    text-align: center;
    margin: 0 auto;
  }

  /*===================
   job
  ===================*/
  .job_engraved_grid {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
  }

  .job_list_grid {
    display: block;
  }

  .job_list_grid .job_list-item {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 10px;
  }

  .job_list_grid .job_list-item h3 {
    height: auto;
  }

  .job_list_grid .job_list-item figure {
    width: 30%;
  }

  .job_list_grid .job_list-item .text {
    width: 65%;
  }
  /*===================
      accordion
  ===================*/
  .accordion-title.payment {
    font-size: .9rem;
  }

  .accordion-title.payment .card_name {
    width: 150px;
    margin-right: 20px;
  }
  .flex-name{
    font-size:.9rem;
  }
  .flex-name .flex-two{
    width:235px;
  }
  .flex-name .flex-one{
    width:calc(100% - 235px);
  }

  /*===================
      ordermade
  ===================*/
  .ordermade_content .reference-price {
    font-size: .8rem;
  }
  .ordermade_content .arrow {
    margin: 1rem 0;
  }
  .ordermade_content .item .sub-header.header02 {
    margin-bottom: -2rem;
  }
  .ordermade_content .flow .flex-box {
    display: block;
  }
  .ordermade_content .flow .flex-box .flex-item {
    width: 100%;
  }
  .ordermade_content .item .grid-box {
    grid-template-columns: 1fr 1fr;
  }

  .ordermade_content .button_wrap.reformbtn_wrap {
    margin-top: 30px;
    margin-bottom: 40px;
  }

  /*===================
    reform
  ===================*/
  .reform_content .section_inner_s .inner_wrap {
    margin: 0 20px 40px;
  }
  .reform_content h2.title_reform {
    font-size: 1.3rem;
  }
	.reform_content .method_wrap {
		margin-bottom: 40px;
	}
  .reform_content .flex-box {
    display: block;
  }
  .reform_content .flex-box .flex-item,
  .reform_content .flex-box .flex-item.type02,
  .reform_content .flex-box .flex-item.type03 {
    width: 100%;
  }

  .reform_content .flex-box .flex-item:nth-child(even),
  .reform_content .flex-box.reverse .flex-item:nth-child(odd),
  .reform_content .flex-box .flex-item:nth-child(even),
  .reform_content .flex-box.reverse .flex-item:nth-child(odd){
    margin-right: 0;
    margin-left: 0;
  }

  .reform_content .consultation_content {
    margin-bottom: 20px;
  }
  .reform_content .button.large {
  max-width: 100%;
  padding: 15px 10px;
  }
  /*-------------------
    licencer_list_grid
  -------------------*/
  .licencer_list_grid.four {
    grid-template-columns: 1fr 1fr;
  }

  .licencer_list_grid.five {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px 5px;
  }

  /*-------------------
  itemList
  -------------------*/
  #item {
    scroll-margin-top: 60px;
  }

	/*-------------------
    character_list_grid
  -------------------*/
  .character_list_grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 10px;
    margin-bottom: 20px;
  }
  .character_list_grid .character_list-item h3 {
    font-size: .7rem;
  }
}

@media(max-width:420px) {
  .flex-wrapper.bridalBrandList .flex-one .bridallink {
    bottom: -15%;
    width: auto;
    padding: 7px 10px;
    font-size: .9rem;
    margin-left: 38px;
    border-radius: 24px;
  }

  .flex-wrapper.bridalBrandList .flex-one .bridallink:before {
    top: 50%;
    left: -40px;
    width: 40px;
  }

  .flex-wrapper.bridalBrandList.reverse .flex-one .bridallink {
    right: 0;
    margin-right: 38px;
    margin-left: auto;
    bottom: -15%;
  }

  .flex-wrapper.bridalBrandList.reverse .flex-one .bridallink:before {
    top: 50%;
    left: auto;
    right: -40px;
    width: 40px;
    height: 1px;
    background: #CCC;
  }

	#moot_select h3 img{
		max-width:240px;
	}

}
@media(min-width:40em) and (max-width:64em) {
#orderFlow p.medium-center{
  text-align: center;
}
}
@media(min-width:40em) and (max-width:64em) {
  .button-twoline {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.4;
    height: 4rem;
  }
}

@media(min-width:40em) {
  .favorite.off span:hover {
    background: url(../img/item/favorite.svg)no-repeat top center;
    background-size: cover;
  }
}
