body.modal-open {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding-right: 0 !important;
}
.ttl-lv2 {
    font-size: 1.35rem
}
.ttl-lv3 {
    font-size: 1.15rem;
    text-align: left
}
.ttl-lv4 {
    font-size: 1rem
}
.ttl-lv5 {
    font-size: .9rem
}
.ttl-up, .block-content .ttl-lv1, article .ttl-lv1 {
    display: block;
    margin-bottom: 1.5em;
    padding-top: 1rem
}
.item {
    position: relative
}
.item p {
    margin-bottom: 0
}
.item-price-num small,
.price small {
    font-size: .75em;
    margin-left: .1em;
    font-weight: inherit;
}
/* bukken-list-image */
.item-box .item-image {
    background-color: var(--lGray);
    overflow: hidden;
    aspect-ratio: 3 / 2;
}
.item-box .item-image a,
.item-box .item-image img {
    display: block;
    height: 100%;
    width: 100%;
}
.item-box .item-image img {
    max-height: none !important;
    max-width: none !important;
    object-fit: cover !important;
}
.item-box .item-price-num {
    display: inline-block;
}
@media screen and (max-width:575px) {
    .item-box .item-image {
        aspect-ratio: 1 / 1;
    }
}
#bukkenListNew, 
.form-bukkenSearch, 
body main.page-detail article#bukkenPR, 
body main.page-detail article#bukkenListDetail, 
body main.page-detail article:nth-of-type(1) {
    padding-top: 3rem
}
#bukkenForm .form-bukkenSearch {
    padding-top: 0
}
.block-tabList-nav li .btn {
    position: relative
}
.block-tabList-nav li .btn:after {
    content: "";
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top-style: solid;
    border-top-width: 10px;
    border-top-color: transparent;
    position: absolute;
    left: 45%;
    left: calc(50% - 10px);
    bottom: -10px
}
#areaDetail .block-tabList-nav li .btn {
    font-size: 1rem
}
#areaDetail .block-tabList-nav li .btn:after {
    border-top: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom-style: solid;
    border-bottom-width: 10px;
    border-bottom-color: transparent;
    position: absolute;
    left: 45%;
    left: calc(50% - 10px);
    top: -10px
}
.block-tabList-nav li .btn {
    background-color: #f5f5f5;
    color: #656565;
    height: 42px;
    font-size: 1.15rem;
    font-weight: 400
}
.block-tabList-nav li:nth-of-type(1) .btn {
    color: #009d5e
}
.block-tabList-nav li:nth-of-type(2) .btn {
    color: #3872ad
}
.block-tabList-nav li .active {
    color: #fff !important
}
.block-tabList-nav li:nth-of-type(1) .active {
    background-color: #009d5e;
    border-color: #009d5e
}
.block-tabList-nav li:nth-of-type(2) .active {
    background-color: #3872ad;
    border-color: #3872ad
}
.block-tabList-nav li:nth-of-type(1) .active:after {
    border-top-color: #009d5e
}
.block-tabList-nav li:nth-of-type(2) .active:after {
    border-top-color: #3872ad
}
.page-chintaidetail .block-tabList-nav li:nth-of-type(2) .btn, .page-chintaidetail .block-tabList-nav li:nth-of-type(2), .page-chintaitop .block-tabList-nav li:nth-of-type(2) .btn, .page-chintaitop .block-tabList-nav li:nth-of-type(2) {
    color: #009d5e
}
.page-chintaidetail .block-tabList-nav li:nth-of-type(2) .active, .page-chintaitop .block-tabList-nav li:nth-of-type(2) .active {
    background-color: #009d5e;
    border-color: #009d5e
}
.page-chintaidetail .block-tabList-nav li:nth-of-type(2) .active:after, .page-chintaitop .block-tabList-nav li:nth-of-type(2) .active:after {
    border-top-color: #009d5e
}
.page-baibaidetail .block-tabList-nav li:nth-of-type(1) .btn, .page-baibaidetail .block-tabList-nav li:nth-of-type(1), .page-baibaitop .block-tabList-nav li:nth-of-type(1) .btn, .page-baibaitop .block-tabList-nav li:nth-of-type(1) {
    color: #3872ad
}
.page-baibaidetail .block-tabList-nav li:nth-of-type(1) .active, .page-baibaitop .block-tabList-nav li:nth-of-type(1) .active {
    background-color: #3872ad;
    border-color: #3872ad
}
.page-baibaidetail .block-tabList-nav li:nth-of-type(1) .active:after, .page-baibaitop .block-tabList-nav li:nth-of-type(1) .active:after {
    border-top-color: #3872ad
}
.block-telBtn .btn {
    line-height: 1.35em;
    background-position: 18px center;
    background-repeat: no-repeat;
    background-color: transparent;
    background-size: auto 60%;
    background-size: 26px 29px;
    font-size: .9rem;
    padding: .5em 0 .5em 1em;
    border-width: 2px
}
.block-bukkenList ul {
    overflow: hidden
}
.block-bukkenList ul.row > li {
    margin-bottom: 1rem
}
.block-bukkenList .flag-chintai .item {
    border-color: #009d5e !important
}
.block-bukkenList .flag-baibai .item {
    border-color: #3872ad !important
}
.block-bukkenList .item .item-badge {
    color: #fff;
    background-color: #bababa
}
.block-bukkenList .item {
    border: 1px solid #828282;
    padding: 1.25rem 1rem 1rem;
    background-color: #fff;
    height: 100%
}
.block-bukkenList .item-title {
    color: #3872ad;
    font-size: 1.1rem;
    margin-bottom: 0;
    padding: .5rem 0 .75rem
}
.block-bukkenList .item .item-badge {
    position: absolute;
    left: -1px;
    top: -1px
}
.item .item-badges {
    overflow: hidden;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap
}
.item .item-badge {
    background-color: #fff;
    border: 1px solid #828282;
    color: #828282;
    font-size: .76rem;
    padding: 0 .5rem;
    background-repeat: no-repeat;
    background-position: 5px center;
    white-space: nowrap;
    display: inline-block;
    margin-right: .375rem;
    margin-bottom: .375rem;
    height: 1.375rem;
    line-height: 1.375rem
}
.item .item-badge:nth-last-of-type(1) {
    margin-right: 0;
    margin-bottom: 0
}
.item .item-badge img {
    max-height: 14px;
    max-width: 14px;
    vertical-align: middle
}
.item .item-badge.item-badge-image {
    background-color: transparent;
    border: 0;
    padding: 0;
    margin: 0;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    width: 69px;
    height: 52px;
    overflow: hidden;
    text-align: left
}
.block-bukkenList-full ul li .item .item-body > .item-image .item-badge img, .item-badge.item-badge-image img {
    position: relative;
    vertical-align: inherit
}
.block-bukkenList .item .item-price {
    white-space: nowrap
}
.item .item-price span {
    color: #e54823;
    padding-right: 1px
}
.item .item-price .item-price-num {
    font-size: 1.25rem
}
.item .item-price .item-price-mark {
    white-space: nowrap;
    margin-bottom: -.1em
}
.item td.item-price {
    font-size: 1rem
}
.block-bukkenList .item .item-price {
    margin-bottom: .4em
}
.block-bukkenList hr {
    margin: .5em 0
}
.block-bukkenList .item-image {
    min-width: 150px;
/*    max-width: 152px*/
}
.block-bukkenList .item-body {
    padding-left: 1em;
    padding-right: 1rem;
    color: #626262;
    font-size: .8rem;
    width: 100%
}
.list-boxes li {
    margin-bottom: 1.875rem
}
.list-boxes li .item {
    padding: 1rem;
    background-color: #fff
}
.list-boxes li .item .item-image {
    margin-bottom: 1rem
}
.list-boxes li .item .item-title {
    display: block;
    padding-bottom: .7em;
    font-size: 1.15rem;
    margin-bottom: 0
}
.list-boxes li .item .item-body {
    padding-bottom: 1rem
}
.list-boxes li .item .btn {
    padding: .25rem .5rem
}
.form-bukkenSearch .item {
    padding: 0;
    border-bottom: 1px solid #ddd
}
.form-bukkenSearch > section {
    margin-bottom: 34px
}
.form-bukkenSearch .item > .ttl {
    margin-top: 0;
    margin-bottom: 0;
    color: #626262;
    text-align: left;
    background: #fff;
    border-top: 2px solid #3872ad;
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
    padding: 0 1rem;
    font-size: 1.1rem;
    line-height: 2.5rem
}
.form-bukkenSearch .item.clickable-box > .ttl {
    line-height: 3rem
}
.form-bukkenSearch .item > .ttl a {
    display: block;
    text-decoration: none;
    color: #3872ad;
    padding-right: 1rem
}
.badge-selected {
    font-size: .7rem;
    border: 1px solid #ed8b43;
    color: #ed8b43;
    padding: 0 .3em;
    position: absolute;
    top: .625rem;
    right: 0;
    height: 24px;
    line-height: 24px;
    background-color: #fff;
    opacity: 0
}
.ttl > .badge-selected {
    right: 12px
}
.accordion .ttl > .badge-selected {
    right: 2.5rem;
    top: .75rem
}
.form-bukkenSearch .item.clickable-box > .ttl:hover {
    background-color: #fffcec
}
.form-bukkenSearch .item div.collapse {
    background: #fff
}
.form-bukkenSearch .item .modal-body, .form-bukkenSearch .item .item-body {
    background: #fff;
    font-size: .9rem
}
.form-bukkenSearch .item .item-body {
    padding: 1rem;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd
}
.form-bukkenSearch .item .modal-body .ttl, .form-bukkenSearch .item .item-body .ttl {
    color: #626262;
    background-color: #f5f4ef;
    padding: .25em .5em;
    font-size: 1rem;
    margin-bottom: .8em
}
.form-bukkenSearch .item.clickable-box, .form-bukkenSearch .item.clickable-box .ttl, .form-bukkenSearch .item.clickable-box .item-body {
    border-color: #3872ad !important
}
label.checkbox-blue input[type=checkbox], .form-bukkenSearch label input[type=checkbox] {
    display: none
}
.block-bukkenList-full .item-footer {
    overflow: hidden
}
.block-bukkenList-full .item-footer table td:nth-of-type(2) a, .block-bukkenList-full .item-footer label {
    display: block;
    width: 100%;
    margin: 0;
    text-align: center;
    cursor: pointer;
    padding: 1rem .25rem;
    min-width: 1.5rem
}
label.checkbox-blue, .block-bukkenList-full .item-footer label span, .form-bukkenSearch label span {
    display: inline-block;
    position: relative;
    cursor: pointer
}
.form-bukkenSearch label span {
    border: 1px solid #fff;
    margin-right: 1em;
    border-radius: 6px;
    padding: 2px 5px
}
label.checkbox-blue span:before, .block-bukkenList-full .item-footer label span:before, .form-bukkenSearch label span:before {
    content: "";
    width: 1rem;
    height: 1rem;
    display: inline-block;
    background: #fff;
    border: 2px solid var(--green);
    vertical-align: text-bottom;
    border-radius: 2px;
    margin-bottom: 2px
}
.form-contactForm label.checkbox-blue span:before {
    margin-bottom: 0
}
label.checkbox-blue span:before, .block-bukkenList-full .item-footer label span:before, .form-bukkenSearch label span:before {
    margin-right: .5em;
    vertical-align: middle
}
.block-bukkenList-full .item-footer th > label span:before {
    margin-right: 0
}
label.checkbox-blue span:after, .block-bukkenList-full .item-footer label span:after, .form-bukkenSearch label span:after {
    content: "";
    position: absolute;
    width: 6px;
    height: 10px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
    display: block;
    opacity: 0
}
label.checkbox-blue span:after, .block-bukkenList-full .item-footer label span:after {
    left: 5px;
    top: 6px
}
.form-bukkenSearch label span:after {
    left: 10px;
    top: 6px
}
label.checkbox-blue input[type=checkbox]:checked + span:before, .block-bukkenList-full .item-footer label input[type=checkbox]:checked + span:before, .form-bukkenSearch label input[type=checkbox]:checked + span:before {
    background-color: var(--green);
}
label.checkbox-blue input[type=checkbox]:checked + span:after, .block-bukkenList-full .item-footer label input[type=checkbox]:checked + span:after, .form-bukkenSearch label input[type=checkbox]:checked + span:after {
    opacity: 1
}
.form-bukkenSearch label span:hover {
    background-color: #fffcec;
    border: 1px solid #f0f0f0;
    cursor: pointer
}
.form-bukkenSearch .modal-body a:link {
    text-decoration: none
}
.form-bukkenSearch .modal-body a:hover {
    text-decoration: underline
}
.form-bukkenSearch label input[type=checkbox]:checked + span {
    border: 1px solid #f0f0f0
}
.form-bukkenSearch .btn-clickable-box:after {
    right: 0;
    font-size: 1.2rem;
    top: 50%;
    margin-top: -.6rem
}
.form-bukkenSearch .btn-icons:after {
    right: 0
}
.mylist-box, #search-selected {
    border: 1px solid #bababa;
    margin-bottom: 30px;
    background-color: #fff
}
.mylist-box .item-title, #search-selected .item-title {
    color: #626262;
    padding: 5px 1rem;
    background-color: #f5f4ed;
    text-align: left;
    font-size: 1rem;
    margin-bottom: 0
}
.mylist-box .item-body, #search-selected .item-body {
    padding: 1rem
}
.block-bukkenList-full .item-footer table thead th:nth-of-type(2) {
    padding: 0
}
.block-bukkenList-full .item-footer li.item-text .item-price {
    margin-bottom: .5rem
}
.block-bukkenList-full .item-footer table th {
    padding: 0
}
.block-bukkenList-full .item-footer table td:nth-of-type(2), .block-bukkenList-full .item-footer table th:nth-of-type(1) {
    max-width: 40px;
    text-align: center
}
.block-bukkenList-full .item-footer table td:nth-of-type(1) {
    padding: 0
}
.block-bukkenList-full .item-footer table td:nth-of-type(2) {
    min-width: 20px
}
.block-bukkenList-full .item-footer table td:nth-of-type(1) ul.bukkenList-sheet-sp li {
    padding: .75rem 0 .75rem .75rem
}
.block-bukkenList-full .item-footer table td:nth-of-type(1) ul.bukkenList-sheet-sp li:nth-of-type(1) {
    max-width: 40%
}
.block-bukkenList-full .item-footer table tbody tr:hover {
    background-color: #fffcec
}
.bukkenList-sheet-pc > *, .block-bukkenList-full thead th > * > * {
    justify-content: center
}
.bukkenList-sheet-pc > * {
    display: flex;
    align-items: center;
    padding: .5rem .25rem
}
thead .bukkenList-sheet-pc > * {
    padding: .5rem 0
}
.bukkenList-sheet-pc > * img {
    max-width: 24px;
    max-height: 24px;
    display: block;
    margin: auto;
    vertical-align: middle
}
.flag-chintai .bukkenList-sheet-pc > *:nth-of-type(1) {
    width: 18%
}
.flag-chintai .bukkenList-sheet-pc > *:nth-of-type(2) {
    width: 15%
}
.flag-chintai .bukkenList-sheet-pc > *:nth-of-type(3) {
    width: 20%;
    text-indent: .5em
}
.flag-chintai .bukkenList-sheet-pc > *:nth-of-type(4) {
    width: 24%
}
.flag-baibai .bukkenList-sheet-pc > *:nth-of-type(1) {
    width: 23%
}
.flag-baibai .bukkenList-sheet-pc > *:nth-of-type(2), .flag-baibai .bukkenList-sheet-pc > *:nth-of-type(3) {
    width: 15%
}
.flag-baibai .bukkenList-sheet-pc > *:nth-of-type(4) {
    width: 24%
}
.flag-baibai .bukkenType-baibai-1 .bukkenList-sheet-pc > *:nth-of-type(2) {
    width: 15%
}
.flag-baibai .bukkenType-baibai-1 .bukkenList-sheet-pc > *:nth-of-type(3) {
    width: 15%
}
.flag-baibai .bukkenType-baibai-1 .bukkenList-sheet-pc > *:nth-of-type(4) {
    width: 24%
}
.flag-baibai .bukkenType-baibai-2 .bukkenList-sheet-pc > *:nth-of-type(2), .flag-baibai .bukkenType-baibai-2 .bukkenList-sheet-pc > *:nth-of-type(3) {
    width: 0;
    display: none
}
.flag-baibai .bukkenType-baibai-2 .bukkenList-sheet-pc > *:nth-of-type(4) {
    width: 54%
}
.flag-baibai .bukkenType-baibai-3 .bukkenList-sheet-pc > *:nth-of-type(2) {
    width: 34%
}
.flag-baibai .bukkenType-baibai-3 .bukkenList-sheet-pc > *:nth-of-type(3) {
    width: 10%
}
.flag-baibai .bukkenType-baibai-3 .bukkenList-sheet-pc > *:nth-of-type(4) {
    width: 10%
}
.flag-baibai .bukkenType-baibai-4 .bukkenList-sheet-pc > *:nth-of-type(2), .flag-baibai .bukkenType-baibai-4 .bukkenList-sheet-pc > *:nth-of-type(3) {
    width: 0;
    display: none
}
.flag-baibai .bukkenType-baibai-4 .bukkenList-sheet-pc > *:nth-of-type(4) {
    width: 54%
}
.bukkenList-sheet-pc > *:nth-of-type(5) {
    width: 6%
}
.bukkenList-sheet-pc > *:nth-of-type(6) {
    width: 6%
}
.bukkenList-sheet-pc > *:nth-of-type(7) {
    width: 11%
}
.block-bukkenList-full ul li .item {
    border-top: 2px solid #bababa;
    border-right: 1px solid #bababa;
    border-bottom: 1px solid #bababa;
    border-left: 1px solid #bababa;
    background-color: #fff
}
.flag-chintai .item {
    border-top-color: #009d5e !important
}
.flag-baibai .item {
    border-top-color: #3872ad !important
}
.block-bukkenList-full ul li .item .item-title > .ttl, .block-bukkenList-full ul li .item .item-title {
    font-size: 1.2rem;
    margin-bottom: 0
}
.block-bukkenList-full ul li .item .item-title > .ttl {
    display: inline-block
}
.block-bukkenList-full ul li .item .item-title {
    display: block;
    padding: .625rem 1.25rem
}
.block-bukkenList-full ul li .item .item-title label, .block-bukkenList-full ul li .item .item-title > .ttl {
    display: inline
}
.block-bukkenList-full ul li .item .item-comment {
    padding: .625rem 1.25rem 0;
    color: #626262;
    font-size: .9rem
}
.block-bukkenList-full ul li .item .item-body {
    padding: 1.25rem;
    display: flex
}
.page-mylist .block-bukkenList-full ul li .item .item-body {
    display: block
}
.block-bukkenList-full ul li .item > .item-body > .item-text {
    position: relative;
    width: 60%
}
.block-bukkenList-full ul li .item {
    margin-bottom: 2.5rem
}
.block-bukkenList-full ul li .item .item-body > .item-image {
    margin-right: 1rem;
    text-align: center;
    width: 40%;
    position: relative
}
#bukkenInfo .sp-thumbnails .sp-thumbnail {
    background-color: #f8f8f8;
    overflow: hidden
}
.block-bukkenList-full ul li .item .item-body .item-image img {
    width: auto;
    margin: auto;
    max-height: 100%;
    max-width: 100%
}
.block-bukkenList-full .item-text {
    font-size: .9rem
}
.block-bukkenList-full .item-body .item-text .item-badges {
    margin-bottom: 1.5rem
}
.table-bukken-list {
    font-size: .8rem
}
.table-bukken-list > dl, dl.table-bukken-list {
    width: 100%;
    margin-bottom: 1px
}
.table-bukken-detail > dl, dl.table-bukken-detail, dl.table-bukken-detail > * {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: stretch
}
.table-bukken-detail > dl > *, .table-bukken-detail > dl > * > *, dl.table-bukken-detail > *, dl.table-bukken-detail > * > * {
    align-items: center
}
.table-bukken-detail > dl > dd, dl.table-bukken-detail > dd {
    width: 100%
}
.table-bukken-detail > dl > dd, .table-bukken-list > dl > dd, dl.table-bukken-detail > dd, dl.table-bukken-list > dd, .table-bukken-detail td, .table-bukken-list td {
    word-break: break-all
}
.block-bukkenList-full .table-bukken-detail {
    font-size: .8rem
}
.block-bukkenList-full .table-bukken-detail > dl > dt, .block-bukkenList-full dl.table-bukken-detail > dt, .block-bukkenList-full .table-bukken-detail th {
    width: 8em;
    min-width: 8em;
    max-width: 8em
}
.block-bukkenList-full .item-footer table {
    font-size: .9rem
}
dl.list-bukken-detail {
    color: #626262;
    font-size: 1rem;
    background-color: #fff
}
dl.list-table > * > p:nth-last-of-type(1), dl.list-bukken-detail > * > p:nth-last-of-type(1) {
    margin-bottom: 0
}
.table-bukken-detail > dl, dl.table-bukken-detail, .block-bukkenList-full .item-footer table {
    background-color: #fff;
    width: 100%;
    margin-bottom: 1px
}
.table-bukken-detail > dl > *, dl.table-bukken-detail > *, .table-bukken-list > * {
    margin-bottom: 0
}
dl.table-bukken-detail > dt, dl.table-bukken-list > dt, .table-bukken-detail > dl > dt, .table-bukken-list > dl > dt, dl.list-table > dt, dl.list-bukken-detail > dt, .table-bukken-detail th, .table-bukken-list th {
    background-color: var(--tGray);
    font-weight: 400
}
.table-bukken-detail > dl > dt, .table-bukken-list > dl > dt, dl.table-bukken-detail > dt, dl.table-bukken-list > dt, .table-bukken-detail th, .table-bukken-list th {
    width: auto;
    max-width: 15em
}
.page-detail .table-bukken-detail > dl > dt, .block-bukkenList-full .table-bukken-list > dl > dt, .page-detail dl.table-bukken-detail > dt, .block-bukkenList-full dl.table-bukken-list > dt, .page-detail .table-bukken-detail th, .block-bukkenList-full .table-bukken-list th {
    width: 8em;
    max-width: 8em;
    min-width: 8em
}
#bukkenSheet .table-bukken-detail > dl > dt, #bukkenSheet dl.table-bukken-detail > dt, #bukkenSheet dl.table-bukken-detail th {
    width: 10em;
    max-width: 10em;
    min-width: 10em;
    white-space: normal
}
.table-bukken-detail > dl > *, .table-bukken-list > dl > *, dl.table-bukken-detail > *, dl.table-bukken-list > *, .table-bukken-detail th, .table-bukken-detail td, .table-bukken-list th, .table-bukken-list td {
    padding: 0.75rem
}
.block-bukkenList-full .table-bukken-detail > dl > *, .block-bukkenList-full .table-bukken-list > dl > *, .block-bukkenList-full dl.table-bukken-detail > *, .block-bukkenList-full dl.table-bukken-list > *, .block-bukkenList-full .table-bukken-detail th, .block-bukkenList-full .table-bukken-detail td, .block-bukkenList-full .table-bukken-list th, .block-bukkenList-full .table-bukken-list td {
    padding: .3rem .5rem
}
.block-bukkenList-full .table-bukken-detail > dl > dt, .block-bukkenList-full .table-bukken-list > dl > dt, .block-bukkenList-full dl.table-bukken-detail > dt, .block-bukkenList-full dl.table-bukken-list > dt, .block-bukkenList-full .table-bukken-detail th, .block-bukkenList-full .table-bukken-list th {
    padding-right: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex
}
.list-table > dl > *, .list-bukken-detail > dl > *, dl.list-table > *, dl.list-bukken-detail > * {
    padding: 1.25rem ;
    margin-bottom: 1px
}
.table-bukken-detail > dl, .table-bukken-list > dl, dl.table-bukken-detail, dl.table-bukken-list, dl.list-bukken-detail > *, .table-bukken-detail tr, .table-bukken-list tr {
    border-bottom: 1px dotted #bababa
}
.table-bukken-detail dl:after, dl.table-bukken-detail:after, .table-bukken-detail tr:after {
    content: '';
    height: 1px;
    border-bottom: 1px dotted #fff
}
.table-wrap .list-bukken-detail > dl:nth-last-of-type(1) > *:nth-last-of-type(1), .table-wrap dl.list-bukken-detail:nth-last-of-type(1) > *:nth-last-of-type(1), form dl.list-bukken-detail:nth-last-of-type(1) > dt:nth-last-of-type(1), form dl.list-bukken-detail:nth-last-of-type(1) > dd:nth-last-of-type(1) {
    border-bottom: 0
}
.list-bukken-detail > dl > dt .badge, dl.list-bukken-detail > dt .badge {
    vertical-align: text-bottom;
    border-radius: 5px;
    margin-right: .5rem;
    background-color: var(--green);
    color: #fff;
    float: left;
    font-weight: 400;
    padding: 0.25rem 0.75rem;
}
.list-bukken-detail .reserve-type {
    flex-basis: auto
}
.block-bukkenList-full .item-footer table thead th {
    font-size: .7rem;
    text-align: center;
    font-weight: 400;
    white-space: nowrap;
    background-color: #f5f5f5
}
.block-bukkenList-full .item-footer table td:nth-of-type(2) {
    padding: 0
}
.block-bukkenList-full .item-footer table td:nth-of-type(2) i {
    color: #87aace;
    font-size: 1.3rem
}
.block-bukkenList-full .item-footer .btn-orange-outline {
    font-size: .7rem;
    border-radius: 1rem;
    padding: .15em .5em
}
.block-bukkenList-full .item-footer table tr.d-none th:nth-of-type(1) {
    background-color: #f5f5f5;
    padding: 0 .25rem
}
.bukkenList-sheet-pc > div:nth-of-type(5) {
    letter-spacing: -.1rem
}
.block-bukkenList-full .item-footer .table thead {
    border-bottom: 1px solid #bababa
}
.block-bukkenList-full .item-footer .table tbody {
    border-top: 1px dotted #bababa
}
.block-bukkenList-full .item-footer .table tbody tr {
    border-bottom: 1px solid #ddd
}
.block-bukkenList-full .item-footer .table tbody tr:nth-last-child(1) {
    border-bottom: 0
}
.block-bukkenList-full .item-footer table th, .block-bukkenList-full .item-footer table td {
    vertical-align: middle;
    width: auto
}
.block-bukkenList-full .item-footer table th, .block-bukkenList-full .item-footer table td {
    border: 0
}
.block-bukkenList-full .item-footer .item-text {
    vertical-align: top
}
.block-bukkenList-full .item-footer .item-badges {
    margin-top: 1.5rem
}
.block-bukkenList-full .item-footer .item-badges .item-badge {
    padding-left: 24px;
    padding-right: 5px;
    font-size: .7rem;
    border-color: #3872ad;
    color: #3872ad
}
/* .item-badge-panorama {
    background-image: url(//web-hokushin.jp/wp-content/themes/hokushin-web/css/../images/ico-blue-panorama.png);
    background-position: 5px 0 !important
}
.item-badge-video {
    background-image: url(//web-hokushin.jp/wp-content/themes/hokushin-web/css/../images/ico-blue-video.png)
} */
.block-carousel .container > div {
    background-color: rgba(255, 255, 255, .95);
    padding: 0;
    margin: 0 36px
}
.page-top .block-carousel .container > div {
    padding: 15px;
    margin: 0 10px
}
.carousel-basic .carousel-item > div {
    padding-left: 8px;
    padding-right: 8px
}
.carousel-basic .carousel-item .item-title {
    display: block;
    padding-top: .7em;
    font-size: 1.05rem
}
.carousel-basic .carousel-item .item-image img {
    vertical-align: top
}
.item-buttons {
    margin-top: -20px
}
.checkValidForm {
    margin-bottom: .5rem
}
.checkValidForm label {
    margin-bottom: .3125rem
}
.page-words .list-table {
    font-size: .85rem;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap
}
.page-words #main-content .list-table p {
    line-height: 1.6
}
.page-words .list-table dt span {
    display: inline-block;
    font-size: .7rem
}
.page-words .list-table {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0
}
.page-words .tabWrap .nav-tabs .nav-item {
    text-align: center
}
.page-words .tabWrap .nav-tabs .nav-item .active {
    font-weight: 700
}
.page-words .tabWrap .tab-pane .ttl {
    display: block;
    margin-bottom: 1rem;
    text-align: center
}
.item-badge-shodan, a.btn-gold-outline, .btn-gold-outline {
    color: #cb8f31 !important;
    background-color: #fff !important;
    border-color: #cb8f31 !important;
}
.btn-outline svg {
    position: absolute;
    right: 20px;
    top: 16px;
    top: calc(50% - 8px)
}
.btn-xs, .btn-group-xs > .btn {
    padding: 2px .5rem;
    font-size: .8rem;
    line-height: 1.35
}
@media all and (-ms-high-contrast:none), (-ms-high-contrast:active) {
    .ekko-lightbox .modal-dialog {
        flex: 100% !important;
        margin-left: 0;
        margin-right: 0;
        overflow: hidden;
        -ms-overflow-style: none
    }
}
#bukkenPicSlide .sp-slide,
#roomPicSlide .sp-slide {
    display: flex;
    align-content: center;
    justify-content: center;
    background: #eee;
    text-align: center;
}
#bukkenPicSlide .sp-slide img,
#roomPicSlide .sp-slide img {
    height: 100%;
    max-height: 100% !important;
    width: auto;
    padding-bottom: 0;
    display: inline-block;
}
@media screen and (min-width: 768px) {
    #bukkenPicSlide .sp-slide img,
    #roomPicSlide .sp-slide img {
        min-height: 640px !important;
    }
}
#bukkenPicSlide .sp-bottom-thumbnails .sp-thumbnail-container,
#roomPicSlide .sp-bottom-thumbnails .sp-thumbnail-container {
    padding-left: 2px;
    padding-right: 2px;
    margin-right: 0;
    margin-left: 0
}
#bukkenPicSlide .item-counter,
#roomPicSlide .item-counter {
    margin-top: 1rem;
    margin-bottom: 1rem;
    text-align: center;
    font-size: .9rem;
    color: #828282
}
.slide-caption .caption-text {
    font-size: 0.9rem;
    color: #fff !important;
    margin: 0;
    line-height: 1.4;
    word-wrap: break-word;
    position: absolute;
    bottom: 0;
    padding: .25rem;
    background-color: rgb(0 0 0 / 46%);
    display: block;
    left: 0;
    width: 100%;
    text-align: center;
}
.page-detail .item-header {
    margin-bottom: 1rem
}
.page-detail .item-header .btn-outline.btn-xs {
    margin-top: -2px
}
.page-detail .btn-outline.btn-xs {
    padding: .1rem .75rem
}
.page-detail .box-in-ttl .btn-outline, .page-detail .item-text .btn-outline {
    padding: .25rem .75rem
}
.sp-btns-share {
    margin-top: -30px
}
.box-in-ttl {
    position: absolute;
    top: 1rem;
    right: 15px;
    width: 50%
}
.ekko-lightbox-nav-overlay a > * {
    -ms-flex-positive: 1;
    flex-grow: 1;
    color: #fff
}
body #bukkenDetail img {
    height: revert-layer;
}
body #bukkenDetail #bukkenMadori img {
    max-height: 550px;
}
.page-detail .sp-thumbnails-wrap > div {
    margin: 0 auto;
    padding-top: 1rem
}
/* bukken-slider */
#bukkenPicSlide .sp-slides-container,
#roomPicSlide .sp-slides-container {
    margin-bottom: 1rem;
}
#bukkenPicSlide .sp-thumbnails-container,
#bukkenPicSlide .sp-thumbnail,
#roomPicSlide .sp-thumbnails-container,
#roomPicSlide .sp-thumbnail {
    width: 140px;
    height: 120px;
    object-fit: cover;
    overflow: hidden;
}
@media screen and (min-width: 768px) {
    #bukkenPicSlide .sp-thumbnails-container,
    #bukkenPicSlide .sp-thumbnail,
    #roomPicSlide .sp-thumbnails-container,
    #roomPicSlide .sp-thumbnail {
        width: 140px;
        height: 150px;
    }
}
#bukkenPicSlide .sp-thumbnail img,
#roomPicSlide .sp-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page-detail #bukkenPicSlide .sp-thumbnails-wrap > div,
.page-detail #roomPicSlide .sp-thumbnails-wrap > div {
    padding-top: 0
}
.page-detail .sp-thumbnails-container:before {
    left: -1rem
}
.page-detail .sp-thumbnails-container:after {
    right: -1rem
}
.page-detail .sp-thumbnails {
    position: relative
}
.page-detail .sp-next-thumbnail-arrow:after, .page-detail .sp-next-thumbnail-arrow:before, .page-detail .sp-previous-thumbnail-arrow:after, .page-detail .sp-previous-thumbnail-arrow:before, .page-detail .sp-next-arrow:after, .page-detail .sp-next-arrow:before, .page-detail .sp-previous-arrow:after, .page-detail .sp-previous-arrow:before {
    position: relative !important;
    width: auto !important;
    height: auto !important;
    background-color: transparent !important;
    color: #fff !important
}
.page-detail .sp-thumbnail-arrow, .page-detail .sp-arrow {
    opacity: .8;
    background-color: var(--green);
    padding: .25rem 0;
    width: 30px;
    height: 30px;
    text-align: center;
    transform: inherit !important;
    transform: initial !important;
    transform: unset !important
}
.page-detail #bukkenPicSlide .sp-thumbnail-arrows,
.page-detail #roomPicSlide .sp-thumbnail-arrows {
    top: 0;
    margin-top: 0;
}
.page-detail #bukkenPicSlide .sp-thumbnail-arrow,
.page-detail #roomPicSlide .sp-thumbnail-arrow {
    height: 120px;
}
@media screen and (min-width: 768px) {
    .page-detail #bukkenPicSlide .sp-thumbnail-arrow,
    .page-detail #roomPicSlide .sp-thumbnail-arrow {
        height: 150px;
    }
}
.page-detail .sp-thumbnail-arrow:after, .page-detail .sp-arrow:after {
    content: none
}
.page-detail .sp-fade-thumbnail-arrows, .page-detail .sp-fade-arrows {
    opacity: .8;
    -webkit-transition: opacity .8s;
    transition: opacity .8s
}
.page-detail .sp-thumbnail-arrow:before, .page-detail .sp-arrow:before, .page-detail .sp-thumbnail-arrow:after, .page-detail .sp-arrow:after {
    position: relative;
    left: 0;
    right: 0;
    top: calc(50% - 12px);
    font-size: 16px;
    bottom: 0;
    color: #fff;
    width: 100%;
    height: 100%;
    background-color: transparent;
    transform: inherit !important;
    transform: initial !important;
    transform: unset !important;
    font-family: Arial, Helvetica, sans-serif
}
.page-detail .sp-previous-thumbnail-arrow:after, .page-detail .sp-previous-arrow:after {
    content: '\276E'
}
.page-detail .sp-next-thumbnail-arrow:after, .page-detail .sp-next-arrow:after {
    content: '\276F'
}
.page-detail .sp-bottom-thumbnails .sp-thumbnail-arrows, .page-detail .sp-horizontal .sp-arrows {
    margin-top: -15px;
    cursor: pointer;
    z-index: 2
}
.page-detail .sp-horizontal .sp-previous-arrow {
    left: 0;
}
.page-detail .sp-horizontal .sp-next-arrow {
    right: 0;
}
.table-form > dt, .table-form > dd, .table-form th, .table-form td {
    padding: .75rem
}
.table-form > dd li p:first-of-type, .table-form td li p:first-of-type, .table-form > dd p:last-of-type, .table-form td p:last-of-type {
    margin-bottom: 0
}
.table-form > dd li, .table-form td li {
    margin-bottom: .5rem
}
.table-form textarea, .table-form select, .table-form input[type=text] {
    border: 1px solid #ced4da;
    margin: .375rem .375rem .375rem 0;
    padding: .25rem;
    border-radius: .25rem;
    color: #495057
}
.table-form select {
    font-size: 1rem
}
.table-form select option {
    padding: .375rem .25rem
}
.table-form input[type=checkbox], .table-form input[type=radio] {
    font-size: 1.2rem;
    margin: .25rem .25rem .25rem 0
}
.table-form textarea {
    width: 100%
}
.table-form label {
    margin-right: 1rem;
    margin-bottom: .25rem;
    padding: .25rem 0
}
.box-userContent {
    border-width: 2px;
    border-radius: 1rem;
    padding: 1rem 1.5rem .5rem
}
.box-beige-dotted {
    color: #555;
    border: 1px dotted #bababa;
    background-color: #f5f4ed;
    padding: 1.5rem
}
.list-eq-wrap {
    overflow: hidden;
}
.list-eq {
    margin-left: -1px;
}
.list-eq > li {
    margin-bottom: 2rem;
}
.list-eq .card {
    border-left: 1px dotted var(--gray);
}
.list-eq .card .card-img {
    margin-bottom: .5rem;
    text-align: center;
}
.list-eq .card .card-img > img {
    max-height: 50px;
    width: auto;
}
.list-eq .card .card-title {
    font-size: .9rem;
    text-align: center;
    margin-bottom: 0;
}
/* dtl-chintail room list selection */
.table-roomlist {
    background-color: var(--white);
}
.table-roomlist thead {
    background-color: var(--lGray);
}
.table-roomlist td, .table-roomlist th {
    vertical-align: middle;
    border-top: none;
    border-bottom: 1px dotted #aaa;
    text-align: center;
}
 .table-roomlist tbody tr {
    transition: background-color 0.3s ease;
    cursor: pointer;
}
.table-roomlist tbody tr:hover {
    background-color: rgba(144, 238, 144, 0.3); 
}
.table-roomlist tbody tr:has(.show-room-image.active) {
    background-color: rgba(206, 243, 206, 0.6) !important; /* Light green for selected row */
    border-left: 4px solid #caf0caff; 
}
.table-roomlist tbody tr:has(.show-room-image.active) td {
    font-weight: 500;
}
.table-roomlist tbody tr td {
    vertical-align: middle;
}
.table-roomlist tbody tr td:has(p) {
    max-width: 400px;
    white-space: normal;
    overflow-wrap: break-word;
}
.table-roomlist tbody tr td p {
    font-size: 0.9rem;
    line-height: 1.5em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 2.8em; /* 2行分 */
    -webkit-line-clamp: 2; /* 2行で切る */
    line-clamp: 2; /* 2行で切る */
}
.table-roomlist tbody tr td p {
    text-align: left;
    margin-bottom: 0;
}
.table-roomlist .num {
    font-size: 1.25rem;
}
.table-roomlist .price {
    color: var(--green);
    font-weight: bold;
    font-size: 1.35rem;
}
.table-roomlist td .btn {
    padding: .25rem 1rem;
    font-size: .9rem;
    display: block;
    width: 100%;
}
