@charset "UTF-8";
.table-of-contents {
color: #2d3639;
list-style: square;
line-height: 30px;
font-weight: bold;
margin-left: 20px;
}

.table-of-contents a {
text-decoration: none;
color: #000 !important;
}

.table-of-contents a:hover {
color: #6c6c6c;
}

.table-of-contents ul li {
margin: 0 0 0.3em 0;
font-size: 0.9em;
list-style-type: "┗ ";
font-weight: lighter;
}

.table-of-top {
background-color: #efefef;
padding: 10px;
display: flex;
}

.table-of-top._toggle_switch::after {
content: " [ 開く ]";
font-weight: bold;
font-size: 13px;
}

.table-of-top._toggle_switch._status_icon::after {
content: " [ 閉じる ]";
}

.menubutton {
text-align: center;
padding: 0.5em 0.5em;
color: #275162;
background: linear-gradient(-45deg, #9dcad9 15%, #badce7 29%, #badce7 45%, #badce7 46%, #c1dee8 72%, #d1eef4 73%, #b9deeb 98%);
background-position: 0 50%;
background-position: 0 50%;
background-size: 200% auto;
transition: background-position 0.5s ease-in-out;
text-decoration: none;
}

.menubutton:hover {
background-position: 100% 50%;
text-decoration: none;
}

.b_back {
background: #E6ECF5;
border-bottom: 0.5em solid #27417E;
padding: 10px;
font-size: 20px;
font-weight: bold;
}


/*
* item Section
------------------------------------------------*/

.bto_mem-lineup {
display: block;
width: 100%;
margin: 30px 0 40px;
}

@media screen and (min-width: 640.2px) {
.bto_mem-lineup {
margin: 60px 0 80px;
}
}

.bto_mem-lineup__container {
width: 100%;
max-width: 1220px;
padding-left: 10px;
padding-right: 10px;
margin-left: auto;
margin-right: auto;
}

.bto_mem-lineup__title {
display: block;
width: 100%;
color: #fff;
background: #0066ca;
border-bottom: .5em solid #d8ecff;
font-size: 20px;
font-weight: 500;
line-height: 1.5;
word-break: break-all;
margin: 0 0 10px;
padding: 10px 5px;
}

@media screen and (min-width: 640.2px) {
.bto_mem-lineup__title {
margin-bottom: 20px;
}
}

.bto_mem-lineup__body {
display: block;
width: 100%;
padding: 0 0 30px;
}

@media screen and (min-width: 640.2px) {
.bto_mem-lineup__body {
padding: 0;
}
}

.bto_mem-lineup__main {
display: block;
width: 100%;
margin: 0 0 50px;
}

.bto_mem-lineup__nav {
display: block;
width: 100%;
margin: 50px 0 0;
}

.bto_mem-lineup__nav__btn {
display: flex;
justify-content: center;
align-items: center;
width: 100%;
max-width: 800px;
margin: 0 auto;
color: #0066ca;
border: 2px solid #0066ca;
border-radius: 2.5em;
font-size: 14px;
line-height: 1.5;
padding-top: 13.5px;
padding-bottom: 13.5px;
text-align: center;
text-decoration: none !important;
}

.bto_mem-lineup__nav__btn::after {
content: "";
display: block;
width: .8em;
height: .8em;
border-width: 3px 3px 0 0;
border-color: CurrentColor;
border-style: solid;
transform: rotate(45deg);
margin-left: 1em;
flex-shrink: 0;
}

@media screen and (min-width: 640.2px) {
.bto_mem-lineup__nav__btn {
font-size: 20px;
line-height: 1.25;
padding-top: 20px;
padding-bottom: 20px;
font-weight: 500;
}
}

/*
* Section
------------------------------------------------*/
.bto_mem-lnsection {
display: block;
width: 100%;
}

.bto_mem-lnsection+.bto_mem-lnsection {
margin-top: 60px;
}

.bto_mem-lnsection__title {
display: block;
width: 100%;
font-size: 16px;
font-weight: 500;
line-height: 1.6;
margin: 0 0 10px;
padding: 10px;
border: 1px solid #333;
text-align: left;
}

@media screen and (min-width: 640.2px) {
.bto_mem-lnsection__title {
font-size: 18px;
line-height: 1.18;
}
}

.bto_mem-lnsection__body {
display: block;
width: 100%;
}

.bto_mem-lnsection__lineup {
display: block;
width: 100%;
}

/*
* snva
------------------------------------------------*/
.bto_mem-price {
display: inline-flex;
flex-wrap: wrap;
align-items: baseline;
font-size: 1em;
line-height: 1;
letter-spacing: .05em;
}

.bto_mem-price__main {
display: inline-flex;
flex-wrap: nowrap;
align-items: baseline;
}

.bto_mem-price__main__value {
display: block;
}

.bto_mem-price__main__addon {
display: block;
font-size: .47em;
}

.bto_mem-price__addon {
display: block;
font-size: .47em;
}

.bto_mem-lngoods {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
}

.bto_mem-lngoods__head {
display: block;
width: 100%;
margin: 0 0 10px;
}

.bto_mem-lngoods__body {
width: 100%;
flex-grow: 1;
display: flex;
flex-direction: column;
}

.bto_mem-lngoods__image {
display: block;
width: 100%;
padding: 0 0 75%;
position: relative;
}

.bto_mem-lngoods__image img {
display: block;
width: 100%;
height: 100%;
-o-object-fit: contain;
object-fit: contain;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 1;
margin: auto;
}

.bto_mem-lngoods__name {
display: block;
width: 100%;
padding: 0.5em 0;
}

@media screen and (max-width: 640px) {
.bto_mem-lngoods__name {
font-size: 1.2em;
min-height: 4em;
line-height: 1.5;
}
}

.bto_mem-lngoods__code {
display: block;
width: 100%;
padding: 0.5em 0;
color: #999999;
font-size: 12px;
}

.bto_mem-lngoods__summary {
display: block;
width: 100%;
padding: 0.5em 0;
color: #6c6c6c;
font-size: 12px;
}

.bto_mem-lngoods__spec {
display: block;
width: 100%;
font-size: 12px;
}

.bto_mem-lngoods__spec__value {
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}

@supports (-webkit-line-clamp: 1) {
.bto_mem-lngoods__spec__value {
white-space: wrap;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
word-break: break-all;
}

@media screen and (min-width: 640.2px) {
.bto_mem-lngoods__spec__value {
	-webkit-line-clamp: 1;
}
}
}

.bto_mem-lngoods__spec__row {
width: 100%;
height: 40px;
display: flex;
align-items: center;
padding: 4px 0;
border-bottom: 1px solid #ddd;
}

.bto_mem-lngoods__spec__row .icon-customize {
flex-shrink: 0;
}

.bto_mem-lngoods__spec__row .bto_mem-lngoods__spec__value {
flex-grow: 1;
flex-basis: 0;
}

.bto_mem-lngoods__price {
display: block;
width: 100%;
padding: 10px 0;
margin: auto 0 0;
font-size: 1.2em;
text-align: right;
}

@media screen and (min-width: 640.2px) {
.bto_mem-lngoods__price {
font-size: 2em;
}
}

.bto_mem-lngoods__price__aside {
display: block;
width: 100%;
font-size: 0.5em;
}

.bto_mem-lngoods__price .bto_mem-price__main__value {
font-weight: bold;
}

.bto_mem-lngoods__nav {
display: block;
width: 100%;
padding: 10px 0;
}

.bto_mem-lngoods__nav__btn {
display: block;
width: 100%;
font-size: 12px;
line-height: 1;
padding-top: 11.5px;
padding-bottom: 11.5px;
max-width: 100%;
color: #fff;
background: #3c3c3c;
text-align: center;
font-weight: 500;
border-radius: 1.5em;
text-decoration: none !important;
cursor: pointer;
}

@media screen and (min-width: 640.2px) {
.bto_mem-lngoods__nav__btn {
font-size: 16px;
line-height: 1;
padding-top: 14.5px;
padding-bottom: 14.5px;
color: #fff;
background: #6d6d6d;
}
}

@media screen and (max-width: 640px) {
.bto_mem-lngoods__nav__btn__text--pc {
display: none;
}
}

@media screen and (min-width: 640.2px) {
.bto_mem-lngoods__nav__btn__text--sp {
display: none;
}
}

.bto_mem-lnlineup {
display: block;
width: 100%;
}

@media screen and (max-width: 640px) {
.bto_mem-lnlineup {
overflow-x: auto;
padding: 0 0 5px;
}

.bto_mem-lnlineup::-webkit-scrollbar {
height: 3px;
}

.bto_mem-lnlineup::-webkit-scrollbar-thumb {
background-color: #c0c0c0;
}

.bto_mem-lineup__main {
margin: 0 0 -50px;
}
}

.bto_mem-lnlineup__list {
list-style: none;
padding-left: 0;
display: flex;
width: auto;
margin-left: -10px;
margin-right: -10px;
}

.bto_mem-lnlineup__list__item {
padding-left: 10px;
padding-right: 10px;
flex: 0 0 43.2vw;
max-width: 43.2vw;
}

@media screen and (min-width: 640.2px) {
.bto_mem-lnlineup__list {
display: flex;
width: auto;
margin-left: -15px;
margin-right: -15px;
justify-content: center;
}

.bto_mem-lnlineup__list__item {
padding-left: 15px;
padding-right: 15px;
flex: 0 0 25%;
max-width: 25%;
display: flex;
}
}