@charset "utf-8";
/* CSS Document */





section.item .container { max-width: 1140px; padding: 20px 0 60px; border-bottom: 1px solid #e8e8e8; }
section h2 { font-size: 32px; margin: 0 0 30px; font-weight: 900; }
section h2 { font-size: 28px; margin: 0 0 30px; font-weight: 900; }
section h2 + p { font-weight: 400; font-size: 20px; }

@media screen and (max-width:768px) {
section h2 { font-size: 24px; margin: 0 0 20px; }
section h2 + p { font-size: 15px; }
}

section.breadcrum { border-top: 1px solid #eee; }
section.breadcrum .container { padding: 10px 15px; }
section.breadcrum ul { list-style: none; padding: 0; margin: 0; font-size: 14px; display: flex; }
section.breadcrum a { text-decoration: none; color: #ccc; font-weight: 400; }
section.breadcrum a:hover { text-decoration: underline; color: #0d6efd; }
section.breadcrum li { color: #ccc; padding-right: 0; }
section.breadcrum li::before { font-weight: normal; margin-left: 0; }
section.breadcrum li::before { content: "\f105"; width: 1em; height: 1em; line-height: 1; text-align: center; font-size: 1em; font-weight: 400; color: #ccc; margin: 0 8px; position: static; top: 50%; right: 0; font-family: FontAwesome; }
section.breadcrum li:first-of-type::before{ display: none; }


.layout { display: grid; align-items: flex-start; column-gap: 40px; }

.mp_thumbnail { padding: 0 15px; }
.layout .layout_cart { width: 420px; padding: 0 15px; position: sticky; top: 70px; }
.layout .layout_media { /*min-height: 520px;*/ padding: 0 15px; }

@media screen and (max-width:768px) {
.layout { display: inherit; column-gap: normal; }
.mp_thumbnail { width: 100%; padding: 0; }
.layout .layout_media { width: 100%; min-height: inherit; padding-top: 30px; }
.layout .layout_cart { width: 100%; position: inherit; top: inherit; padding-top: 15px; }
section.item .container { padding: 0 0 60px; }
}


.mp_thumbnail { grid-area: image; }
.layout_cart { grid-area: cart; }
.layout_media { grid-area: text; }
.layout { grid-template-areas:
	"image cart"
	"text cart";
}


.layout h1 { margin: 0 0 5px; font-size: 32px; font-weight: 900; }
.layout h1 { margin: 0 0 5px; font-size: 26px; font-weight: 900; }
.layout h2 { margin: 30px 0 15px; font-size: 22px; font-weight: 400; text-align: left; }
.layout h2 + p { font-size: 15px!important; line-height: 1.6; margin: 0 0 1.2em; text-align: left; font-weight: normal; }
.layout .fee { margin: 0 0 30px; letter-spacing: 0.05em; }

.layout .layout_media h2:first-of-type { font-size: 24px; font-weight: 700; }
.layout .layout_media h2:first-of-type + p { font-size: 15px!important; line-height: 1.6; margin: 0 0 15px; text-align: left; font-weight: normal; }

@media screen and (max-width:768px) {
.layout h1 { font-size: 26px; }
.layout .layout_media h2:first-of-type { font-size: 24px; }
.layout .layout_media h2:first-of-type + p { font-size: 15px!important; }
}

/* galaxy用 */
.layout_media .col-12 .black { background: black; padding: 20px; border-radius: 7px; }
.layout_media .col-12 .black p { color: #eee; }
.layout_media .col-12 .black h4 { margin: 30px 0 10px; color: white; font-weight: 700; }
.layout_media .col-12 .white { padding: 20px; border-radius: 7px; }
iframe { width: 100%; margin-bottom: 20px; aspect-ratio: 16 / 9; border: 0; border-radius: 4px; }
/*  */

.layout h2.top { margin-top: 0; }
.layout h3 { margin: 25px 0 10px; font-size: 16px; font-weight: 900; }
.layout h3.top { margin-top: 0; }

.layout .accd { margin: 15px 0; padding: 15px 0 0; margin: 0; padding: 15px 0; font-size: 18px; font-weight: 400; text-align: left; border-top: 1px solid #ddd; position: relative; }

.layout .accd::after {
  position: absolute;
  right: 10px;
  font-family: FontAwesome;
  content: '\f107';
  text-align: center;
  width: 24px;
  height: 24px;
  display: inline-block;
  -webkit-transition: -webkit-transform .3s ease;
  transition: -webkit-transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease;
  font-size: 18px;
}
.layout .accd.active::after {
    -webkit-transform: rotate(180deg) scale(1.0);
    -ms-transform: rotate(180deg) scale(1.0);
    transform: rotate(180deg) scale(1.0);
}

.layout .accd+div { display: none; padding: 15px 0; }
.layout .accd.active { font-weight: 900; }

.layout_media .feature { margin-bottom: 25px; }
.layout_media .feature h4 { font-size: 17px; font-weight: 700; line-height: 1.3; }
.layout_media .feature .col-3 img { border-radius: 7px; /*border: 1px solid #ddd;*/ }
.layout_media .typography_elevated .row.feature p { color: #989898; }
.layout_media .typography_elevated .row.feature p b { color: black; font-weight: 500; }

.layout_media hr { margin: 0; }

.layout p { margin-bottom: 1.5em; line-height: 1.7; font-size: 14px; }

@media screen and (max-width:768px) {
.layout_media .feature .col-3 { padding-bottom: 15px; }
.layout_media .feature { margin-bottom: 0; }
.layout_media .feature h4 { font-size: 15px; }
.layout p { line-height: 1.5; font-size: 14px; }
}
/*
.layout_cart > p:first-of-type { margin: 0; font-weight: 900; background: linear-gradient(51deg,#FF0000,#FF6400 15%,#FFA816 35%,#FF9A87 55%,#F747D1 80%,#AD5DF1);  background-clip: text; -webkit-text-fill-color: transparent; display: inline-block; }
.layout_cart .cat { margin: 0 0 3px; font-weight: 900; background: linear-gradient(51deg,#FF0000,#FF6400 15%,#FFA816 35%,#FF9A87 55%,#F747D1 80%,#AD5DF1); background-clip: text; -webkit-text-fill-color: transparent; display: inline-block; background-size: 200% auto;     animation: animatedTextGradient 2.5s linear infinite; }
*/
.layout_cart .cat { margin: 0 0 3px; font-weight: 600; }
@keyframes animatedTextGradient { to { background-position: -200% center; } }


.layout .alert-danger p { line-height: 1.6; }

.layout h2 + .row > div[class^="col"] > h3 { margin-top: 15px; }
.layout .guide { padding: 0; }

.layout_cart .pickup {}
.layout_cart .pickup .title { margin: 0 0 10px; display: none; }
.layout_cart .pickup .delivery { margin: 0 0 5px; }
.layout_cart .pickup .locker { margin: 0; }
.layout_cart .pickup .locker .to_tokyo_dome { padding: 5px 0 0 24px; font-size: 14px; }


.mp_thumbnail { margin: 0; overflow: hidden; }
.mp_thumbnail .mp_thumb img { width: 100%; }
.mp_thumbnail .mp_nail { width: 100%; margin-bottom: 30px; }

@media screen and (max-width:768px) {
.mp_thumbnail .mp_nail { margin-bottom: 10px; }
}

section .mp_nail { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px; }
section .mp_nail { list-style-type: none; padding: 0; }
section .mp_nail > * { width: calc(50% - 1px); box-sizing: border-box; }
section .mp_nail > *:first-child { width: 100%; }

section .mp_nail li img { width: 100%; height: auto; }
section .mp_nail li.current { border: none; opacity: 0.4; }
section .mp_nail li:hover { opacity: 0.4; }


.device_spec { margin: 15px 0 20px; clear: both; }
.device_spec ul { margin: 8px 0; padding: 0; }
.device_spec ul li { list-style-type: none; width: 177px; margin-right: 6px; padding-bottom: 8px; display: inline-block; vertical-align: middle; line-height: 1.2; border-bottom: 1px solid #ddd; }
.device_spec ul li span { display: inline-block; vertical-align: middle; }
.device_spec ul li img { width: 60px; height: auto; }
.device_spec ul li:last-child { margin-right: 0; }





section.item .fee.sale div:first-of-type { color: #ccc; }

section.item .fee .title { margin: 0 0 10px; font-size: 13px; font-weight: 900; }

section.item .fee .basic { font-size: 20px; }
section.item .fee .basic b { font-weight: 900; line-height: 1; font-size: 36px; margin-left: 2px; font-family: "din-2014",sans-serif; }

section.item .fee.sale .basic b { color: red; }

section.item .fee .basic b span { font-size: 20px; }

section.item .fee .extend { font-size: 14px; }
section.item .fee .info { margin-top: 10px; color:red; font-size: 14px; }
section.item .fee .info small { font-size: 12px; display: block; padding-bottom: 0; }











.entry .btn_order { width: 100%; padding-left: 34px; color: #FFF; background-color: #E11939; border-color: #E11939; font-size: 18px; font-weight: bold; /*box-shadow: 0px 5px 0px 0px #A7002B;*/ }
.entry .btn_order::before { content: "\f054"; font-family: FontAwesome; font-weight: normal; float: right; }
.entry .btn_order:hover { opacity: 0.8; background-color: #E11939; border-color: #E11939; }

.entry .btn_sim { width: 100%; padding-left: 34px; color: #FFF; background-color: #17B610; border-color: #17B610; font-size: 18px; font-weight: bold; /*box-shadow: 0px 5px 0px 0px #009B00;*/ }
.entry .btn_sim::before { content: "\f054"; font-family: FontAwesome; font-weight: normal; float: right; }
.entry .btn_sim:hover { opacity: 0.8; background-color: #17B610; border-color: #17B610; }
.entry .btn_area { width: 350px; font-size: 14px; /*box-shadow: 0 3px 0 0 #eee;*/ }
.entry .btn_area:hover { opacity: 0.7; background-color: white; border-color: #CCC; }

.asu_tsuku .title { margin: 0 0 10px; font-size: 15px; }
.asu_tsuku .title span { color: red; }
.asu_tsuku .title a { text-align: center; letter-spacing: 0; font-weight: normal; }
.asu_tsuku .title a:hover { text-decoration: none; }
.asu_tsuku .title a[aria-expanded="false"]::after { display: inline-block; margin-right: 8px; content: "\f107"; font-family: FontAwesome; -webkit-transition: -webkit-transform .3s ease; transition: -webkit-transform .3s ease; transition: transform .3s ease; transition: transform .3s ease, -webkit-transform .3s ease; }
.asu_tsuku .title a[aria-expanded="true"]::after { display: inline-block; margin-right: 8px; content: "\f107"; font-family: FontAwesome; -webkit-transition: -webkit-transform .3s ease; transition: -webkit-transform .3s ease; transition: transform .3s ease; transition: transform .3s ease, -webkit-transform .3s ease; -webkit-transform: rotate(180deg) scale(1.08); -ms-transform: rotate(180deg) scale(1.08); transform: rotate(180deg) scale(1.08); }
.asu_tsuku i { font-size: 15px; }
.asu_tsuku table th { padding: 3px 5px; text-align: center; }
.asu_tsuku table td { padding: 3px 5px; }
.asu_tsuku .panel { margin-bottom: 15px; }
.asu_tsuku .panel-body { }
.asu_tsuku .panel-body .title { margin: 14px 0 8px; font-size: 13px; }




.cart_area { margin: 10px 0 10px; padding: 0; font-size: 14px; }
.cart_area .panel { box-shadow: none; }
.cart_area .panel-body { padding: 25px 15px 10px; }
.cart_area .row { margin-bottom: 10px; }
.cart_area h2 { margin-top: 30px; font-weight: 900; }
.cart_area p { font-size: 15px; }

.cart_area .btn { margin-bottom: 10px; }
.cart_area .btn_sim { padding: 7px 30px 7px; color: #17B610; background-color: white; border-color: #17B610; font-size: 16px; font-weight: bold; }
.cart_area .btn_sim:hover { opacity: 0.5; background-color: white; border-color: #17B610; }

.std_tbl { margin: 0 0 15px; border-left: 1px solid #ddd; border-top: 1px solid #ddd; }
.std_tbl th { padding: 8px 15px; border-bottom: 1px solid #ddd; border-right: 1px solid #ddd; background-color: #f6f6f6; font-weight: normal; font-size: 15px; text-align: revert; }
.std_tbl td { padding: 8px 15px; border-bottom: 1px solid #ddd; border-right: 1px solid #ddd; font-size: 15px; }
.std_tbl td b { font-size: 16px; }


.stock_status { text-align: center; color: #777; font-size: 13px; }

.delively_free { display: flex; margin: 0 0 40px; align-items: center; color: red; justify-content: center; align-items: center; font-size: 13px; }
.delively_free img { margin-right: 4px; }

.kadomaru_tbl { margin: 0 0 15px; border-radius: 14px; border-spacing: 0; border: none; border-left: 1px solid #ddd; border-top: 1px solid #ddd; border-collapse: inherit; }
.kadomaru_tbl th { padding: 7px 15px; border: none; border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; background-color: #f6f6f6; font-weight: normal; font-size: 15px; text-align: revert-layer; }
.kadomaru_tbl td { padding: 7px 15px; border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; font-size: 15px; }
.kadomaru_tbl tr:first-child>*:first-child { border-radius: 14px 0 0 0; }
.kadomaru_tbl tr:first-child>*:last-child { border-radius: 0 14px 0 0; }
.kadomaru_tbl tr:last-child>*:first-child{ border-radius: 0 0 0 14px; }
.kadomaru_tbl tr:last-child>*:last-child{ border-radius: 0 0 14px 0; }
.kadomaru_tbl + .point { border-radius: 0 0 14px 14px; }

@media screen and (max-width:768px) {
	.kadomaru_tbl th { padding: 5px 10px; font-size: 14px; line-height: 1.5; }
	.kadomaru_tbl td { padding: 5px 10px; font-size: 14px; line-height: 1.5; }
}



.point { position: relative; margin: 0 0 1rem; padding: 20px; padding-left: 90px; background-color: #f5f5f7; border-radius: 14px; }
.point::before { background-image: url("/assets/images/icon_point.png"); 
  content: ""; position: absolute;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 50px;
  width: 50px;
  height: 80px;
  left: 20px;
  top: 0;
  margin: auto;
  bottom: 0;
}
.point p:last-of-type { margin: 0; }


@media screen and (max-width:768px) {
.point { padding-left: 90px; }
.point::before { width: 50px; height: 80px; left: 20px; }
}




hr { background: none; opacity: inherit; border: none; border-bottom: 1px solid #ddd; }






section.products h2 {}
section.products .container { max-width: 1140px; padding: 60px 15px 60px; border: none; }
section.products .row#binoculars { margin-bottom: 0; border: none; padding-bottom: 0; }
section.guide h2 { margin: 0 0 40px; }




@media screen and (max-width:768px) {
section.products .container { padding: 40px 15px; }

}


section.products2 { padding-top: 80px; }

/*
section.products2 .container { max-width: 1140px; padding: 60px 15px 60px; border-bottom: 1px solid #e8e8e8; }

section.products2 h2 + p { margin: -20px 0 30px; }
section.products2 .rec_magnification { margin-bottom: 40px; }
section.products2 .row > div[class^="col"] > a { color: inherit; text-decoration: none; }
section.products2 .row > div[class^="col"] > a:hover { opacity: 0.7; }
section.products2 .row > div[class^="col"] figure { margin: 0 0 18px; }
section.products2 .row > div[class^="col"] figure img { border-radius: 7px; }

section.products2 .row > div[class^="col"] .name { margin: 0; padding: 0 0 15px; font-size: 15px; line-height: 1.6; font-weight: 400; }

section.products2 .row > div[class^="col"] .detail { font-size: 16px; line-height: 1.5; display: none; }

section.products2 .row > div[class^="col"] .fee { margin: 0 0 25px; font-size: 14px; font-weight: 400; color: black; line-height: 1.1; text-align: left; letter-spacing: 0.1em; }
section.products2 .row > div[class^="col"] .fee .basic { margin: 0 0 5px; padding: 0; font-family: "メイリオ","Meiryo","ＭＳ Ｐゴシック","Helvetica Neue","Helvetica","Arial",sans-serif; }
section.products2 .row > div[class^="col"] .fee .extension { margin: 0 0 10px; padding: 0; font-size: 14px; }
section.products2 .row > div[class^="col"] .fee .delivery { color: red; line-height: 1.3; }
section.products2 .row > div[class^="col"] .fee .announce { margin: 0; padding: 0; font-size: 14px; }
section.products2 .row > div[class^="col"] .fee .delivery small { padding-bottom: 3px; font-size: 12px; display: block; }
@media screen and (max-width: 767px) {
section.products2 .row > div[class^="col"] .fee .delivery small { font-size: 10px; }
}

section.products2 .row > div[class^="col"] .fee b { font-weight: 900; margin-left: 3px; }
section.products2 .row > div[class^="col"] .fee span { font-size: 22px; font-family: "din-2014",sans-serif; }

@media screen and (max-width:768px) {
section.products2 .row > div[class^="col"] .name { margin: 0; padding: 0 0 15px; font-size: 14px; line-height: 1.5; font-weight: 400; }
section.products2 .row > div[class^="col"] .detail { font-size: 13px; display: none; }
section.products2 .row > div[class^="col"] .fee { font-size: 12px; font-weight: 400; }
section.products2 .row > div[class^="col"] .fee span { font-size: 26px; }
section.products2 .row > div[class^="col"] .fee .extension { font-size: 12px; }

}
*/

.select_sku { margin: 0 0 20px; }




.select_plan { margin: 0 0 30px; }
.select_plan .title { font-size: 13px; font-weight: 900; margin-bottom: 13px; }
.select_plan p { margin: 0 0 8px; }
.select_plan ul { margin: 0; padding: 0; list-style-type: none; display: flex; column-gap: 8px; }
.select_plan ul li label { display: block; height: 100%; display: flex; justify-content:center; }

.select_plan .btn { font-size: 14px; font-weight: 900; }
.select_plan .btn small { font-size: 14px; font-weight: 400; }
.select_plan .btn-outline-dark { border-color: #ddd; }
.select_plan .guideline { text-align: right; }

.select_number_of_units {  }
.select_number_of_units .title { font-size: 13px; font-weight: 900; margin: 0 0 10px; }

.layout_cart .select_number_of_units .form-select { width: auto ; padding-top: 10px; padding-bottom: 10px; padding-left: 20px; border: 2px solid #0d6efd; font-weight: 900; }

.layout_cart .btn_selected { position: relative; display: flex; flex-direction: column; /*padding: 6px 20px 6px 20px!important;*/ vertical-align: middle; cursor: pointer; background: #fff; border: 2px solid #eee; border-radius: .5rem; outline: 0; color: #666; line-height: 1.3; }
.layout_cart .btn-check:checked + .btn_selected { cursor: default; border-color: #0d6efd; color: black; }
.layout_cart .btn-check:checked + .btn_selected::before { border-color: #000; }
.layout_cart .btn-check + .btn:hover { border-color: #0d6efd; }
.layout_cart .btn-check:checked + .btn_selected::after { transform: scale(1); }
.layout_cart .form-select { position: relative; box-sizing: border-box; padding: 6px 40px 6px 20px; font-size: 14px; line-height: 1.5rem; color: #323232; cursor: pointer; /*border: 1px solid #636363;*/ border-radius: .5rem; outline: 0; box-shadow: none; appearance: none; }



.mp_modal .modal-header { border-color: #ddd; /* background: #eee; */ }

.mp_modal .selected_product { margin: 0; padding: 0 0 20px; border-bottom: 1px solid #ddd; font-size: 14px; line-height: 1.5; display: flex; column-gap: 15px; align-items: center; }
.mp_modal .selected_product ul { list-style-type: none; padding: 0; margin: 0; }
.mp_modal .selected_product li { padding: 0; }
.mp_modal .selected_product li.item { font-size: 16px; font-weight: 900; }
.mp_modal .selected_product li.option {  }
.mp_modal .selected_product li.option span { }
.mp_modal .selected_product li.option label { width: 100%; max-width: 70px; display: inline-block; }

.mp_modal .select_rental_period {  }
.mp_modal .select_rental_period .in { display: flex; grid-column-gap: 10px; justify-content: center; align-items: center; }
.mp_modal .select_rental_period .selected_rental_period { text-align: center; }
.mp_modal .select_rental_period .selected_rental_period.disabled { display: none; }
.mp_modal .select_rental_period .selected_rental_price { text-align: center; line-height: 1.2; }
.mp_modal .select_rental_period .selected_rental_price span { font-size: 24px; font-family: "din-2014",sans-serif; }
.mp_modal .select_rental_period .selected_rental_price small { font-size: 12px; }
.mp_modal .select_rental_period .selected_rental_price.disabled { display: none; }
.mp_modal .select_rental_period .sep { margin-top: 26px; }
.mp_modal .select_rental_period .title { font-size: 13px; margin: 0 0 7px; font-weight: 900; }
.mp_modal .select_rental_period .delively .title { font-size: 13px; margin: 0 0 5px; text-align: center; font-weight: 500; }
.mp_modal .select_rental_period .return .title { font-size: 13px; margin: 0 0 5px; text-align: center; font-weight: 500; }
.mp_modal .select_rental_period .title small { display: block; font-size: 13px; }
.mp_modal .select_rental_period .day { border: 2px solid #0d6efd; border-radius: .5rem; text-align: center; padding: 14px 0px; color: #0d6efd; font-weight: 900; font-size: 14px; color: black; }
.mp_modal .select_rental_period .day:hover { cursor: pointer; /*background: #0d6efd; color: white;*/ }
.mp_modal .select_rental_period .day.disabled { cursor: default; color: #ddd!important; font-weight: 400; border-color: #eee; }
.mp_modal .select_rental_period .day.disabled:hover { cursor: default; background: white; color: #0d6efd; }


.mp_modal h6 { margin: 0 0 10px; font-size: 14px; font-weight: 900; }
.mp_modal .form-select { font-size: 14px; }
.mp_modal .form-control { font-size: 14px; }
.mp_modal .form-select option:disabled { color: #ccc; font-size: 14px; }

.mp_modal .modal-footer { /*display: block; padding: 20px 15px; background: #eee;*/ /*border-radius: 0 0 14px 14px;*/ justify-content: center; }
.mp_modal .modal-footer div { display: flex; justify-content: center; align-items: center; column-gap: 20px;  }
@media screen and (max-width:768px) { .mp_modal .modal-footer div { column-gap: 10px; } }


/*
.btn { padding: 13px 20px; border-radius: 100px; font-size: 16px; }
.btn.btn_sm { padding: 5px 15px; font-size: 13px; }

.btn_cont { background: white; color: white; border-color: #0d6efd; color: #0d6efd;  }
.btn_cont:hover { opacity: 0.7; background: white; color: white; border-color: #0d6efd; color: #0d6efd; }

.btn_order { background: red;; color: white; border-color: red; background: #0071e3; border-color: #0071e3; }
.btn_order:hover { opacity: 0.7; background: red;; color: white; background: #0071e3; border-color: #0071e3; }
*/


.mp_modal .total_fee { padding: 20px 15px; border-top: 1px solid #ddd; }
.mp_modal .total_fee span { padding: 0 5px; }
.mp_modal .total_fee b { padding: 0 2px 0 6px; font-size: 22px; font-family: "din-2014",sans-serif; }

.mp_modal .opt_rec > div[class^="col"] { margin-bottom: 30px; }
.mp_modal .opt_rec .basic {}
.mp_modal .opt_rec .extend { font-size: 13px; }



