@charset "UTF-8";
/*! 絞り込みsp用 */
:root {
    --corporate-color: #0073c0;
    --caution-color: #db2100;
}
body {
    /* 追従ヘッダー分の余白（実高さはJSで --header-h に上書き） */
    padding-top: var(--header-h, 62px);
}

/* ヘッダー追従（SP） */
#Header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 40;
    background: #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
}

#btnToTop {
    bottom: 9.5rem !important;
}

main button {
    letter-spacing: 0.05em;
}

.breadcrumb__item {
    flex-shrink: 0;
}

/* start_固定ボタン */
.FixBtn {
    display: none;
    justify-content: center;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    padding: 1.5rem;
    border-top: 1px solid #e5e5e5;
    background-color: white;
}


.FixBtn__btn-condition {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc((100% - 1rem) / 2);
    height: 5rem;
    color: white;
    font-size: 1.4rem;
    font-weight: var(--bold);
    background-color: var(--corporate-color);
    border-radius: 4px;
}

.FixBtn__btn-condition.active::before {
    content: "";
    position: absolute;
    top: -0.5rem;
    right: -0.5rem;
    display: block;
    width: 2.4rem;
    height: 2.4rem;
    background: white;
    border-radius: 50%;
    border: 0.2rem solid var(--corporate-color);
}

.FixBtn__btn-condition.active::after {
    content: "";
    position: absolute;
    top: 0.3rem;
    right: 0.3rem;
    display: block;
    width: 0.8rem;
    height: 0.6rem;
    border-bottom: 0.2rem solid var(--corporate-color);
    border-left: 0.2rem solid var(--corporate-color);
    transform: rotate(-45deg);
}

.FixBtn__btn-condition-icn {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin-right: 0.3rem;
    vertical-align: -0.5rem;
    background: url(https://www.hankyu-travel.com/sharing/common21/images/icn_condition--white.svg) no-repeat center / contain;
}

/* end_固定ボタン */

#Result {
    --result-input-height: 4.5rem;
    margin-bottom: 4rem;
}

.Result__inner {
    padding: 1.5rem 1.5rem 4rem 1.5rem;
    background: #f5f5f5;
}

.Result__recommend-ttl {
    font-size: 1.8rem;
    font-weight: 600;
    margin: 2.5rem 0 1rem;
    padding: 0 1.5rem;
    text-align: center;
}
/* --------------------start_件数 / 条件変更-------------------- */

.Result__back-link {
    color: #0000EE;
    text-decoration: underline;
    font-size: 1.4rem;
}

.Result__number-group {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    row-gap: 1.6rem;
    margin-bottom: 1.5rem;
    padding: 0 1.5rem;
}

.Result__number-wrap {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 0.2rem;
    font-size: 1.4rem;
    font-weight: var(--bold);
    line-height: 1;
}

.Result__number-inner {
    display: flex;
    align-items: flex-end;
    gap: 0.2rem;
}

.Result__number {
    color: var(--caution-color);
    font-size: 2.3rem;
    letter-spacing: 0;
    line-height: 0.8;
    text-indent: -0.1rem;
}

.Result__btn-condition {
    position: relative;
    display: block;
    width: calc(100% - 3.2rem);
    margin: 0 auto 1.5rem auto;
    padding: 1.3rem 1.5rem;
    color: white;
    font-size: 1.6rem;
    font-weight: var(--bold);
    text-align: center;
    background-color: var(--corporate-color);
    border-radius: 0.4rem;
}

.Result__btn-condition.active::before {
    content: "";
    position: absolute;
    top: -0.5rem;
    right: -0.5rem;
    display: block;
    width: 2.4rem;
    height: 2.4rem;
    background: white;
    border-radius: 50%;
    border: 0.2rem solid var(--corporate-color);
}

.Result__btn-condition.active::after {
    content: "";
    position: absolute;
    top: 0.3rem;
    right: 0.3rem;
    display: block;
    width: 0.8rem;
    height: 0.6rem;
    border-bottom: 0.2rem solid var(--corporate-color);
    border-left: 0.2rem solid var(--corporate-color);
    transform: rotate(-45deg);
}

.Result__btn-condition-icn {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin-right: 0.3rem;
    vertical-align: -0.5rem;
    background: url(https://www.hankyu-travel.com/sharing/common21/images/icn_condition--white.svg) no-repeat center / contain;
}

.Result__btn-condition:active {
    background-color: var(--active-color);
}

/* --------------------end_件数 / 条件変更-------------------- */

/* --------------------start_現在選択中-------------------- */

.condition-open {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 15rem;
    padding: 0.8rem;
    color: var(--corporate-color);
    font-size: 1.4rem;
    font-weight: var(--bold);
    line-height: 1.3;
    border: 1px solid var(--corporate-color);
    border-radius: 0.4rem;
}

.condition-open .Search__icn-plus {
    position: relative;
    right: auto;
    transform: none;
}

.condition-open.open {
    color: white;
    background-color: #767676;
    border-color: #767676;
}

.condition-open.open .Search__icn-plus {
    background-color: white;
}

.condition-open.open .Search__icn-plus-inner::before {
    opacity: 0;
}

.condition-open.open .Search__icn-plus-inner::after {
    background-color: #767676;
}

#CurrentCondition {
    display: none;
    flex-direction: column;
    gap: 0.8rem;
    padding: 1.4rem;
    border: 0.4rem solid #e5e5e5;
}

#CurrentCondition.open {
    display: flex;
    width: 100%;
}

.CurrentCondition__inner {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    column-gap: 1.6rem;
    margin-bottom: 2.4rem;
}

.CurrentCondition__heading {
    width: 100%;
    font-weight: var(--bold);
}

.CurrentCondition__p {
    display: flex;
    font-size: 1.4rem;
}

.CurrentCondition__p span {
    display: inline-block;
}

.CurrentCondition__span {
    flex-shrink: 0;
    font-weight: var(--bold);
}

.CurrentCondition__reset {
    align-self: flex-end;
    font-size: 1.4rem;
    border-bottom: 1px solid #333;
}

.CurrentCondition__reset::before {
    content: "✕";
    margin-right: 0.4rem;
    font-weight: 600;
    font-size: 1.2rem;
    vertical-align: 0.1rem;
}

/* --------------------start_現在選択中-------------------- */

/* --------------------start_ソート-------------------- */

/* start_セレクトボックス */
.Result__select {
    width: 100%;
    position: relative;
    overflow: hidden;
    font-size: 1.6rem;
    background-color: white;
    border: 1px solid #888;
    border-radius: 0.4rem;
}

.Result__select::after {
    content: "";
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    border-right: 0.2rem solid #c3c3c3;
    border-bottom: 0.2rem solid #c3c3c3;
    position: absolute;
    top: 50%;
    right: 1.4rem;
    transform: translateY(-80%) rotate(45deg);
}

#Result select {
    --scale-down: calc(1.4 / 1.6);
    --scale-up: calc(1.6 / 1.4);
    width: calc(100% * var(--scale-up));
    height: calc(var(--result-input-height) * var(--scale-up));
    margin: calc((((var(--result-input-height) * var(--scale-up)) - var(--result-input-height)) * -1) / 2) 0;
    padding: calc(1rem * var(--scale-up)) calc(2.8rem * var(--scale-up)) calc(1rem * var(--scale-up)) calc(1rem * var(--scale-up));
    line-height: calc(1.6 * var(--scale-down));
    transform: scale(var(--scale-down));
    transform-origin: 0;
}

/* end_セレクトボックス */

.Result__sort-wrap {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1.5rem;
    padding-right: 1.6rem;
}

.Result__sort-wrap .Result__select {
    width: auto;
}

#Result .Result__sort-wrap select {
    height: calc(3.5rem * var(--scale-up));
}

/* start_安高短長 */
.Result__sort-condition {
    margin-right: 1rem;
}

#Result .Result__sort-condition select {
    padding: 0 calc(2rem * var(--scale-up)) 0 calc(1rem * var(--scale-up));
}

/* end_安高短長 */

/* --------------------end_ソート-------------------- */

/* --------------------start_ツアー枠-------------------- */

.Result__tour {
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    background: white;
    box-shadow: 0px 0px 7px 2px rgb(0 0 0 / 8%);
}

.Result__tour-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 1.5rem;
}

.Result__tour-box:first-of-type {
    padding-bottom: 0.5rem;
}

.Result__tour-ttl-wrap {
    width: 100%;
    margin-bottom: 0.5rem;
}

.Result__tour-ttl {
    font-size: 1.6rem;
    font-weight: var(--bold);
    line-height: 1.3;
}

.Result__tour-ttl:active {
    text-decoration: underline;
}

.Result__tour-caption {
    display: block;
    width: 100%;
    margin-bottom: 0.5rem;
    font-size: 1.3rem;
}

.Result__tour-price-wrap {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    width: 100%;
    margin-bottom: 1.5rem;
}

.Result__tour-price-ttl {
    font-size: 1.2rem;
    font-weight: var(--bold);
}

.Result__tour-price {
    color: var(--caution-color);
    font-size: 1.8rem;
    font-weight: var(--bold);
}

.Result__tour-price-unit {
    font-size: 1.5rem;
}

.Result__tour-info-wrap {
    width: calc(100% - 4.5rem);
    margin-bottom: 0.5rem;
}

.Result__tour-info {
    font-size: 1.2rem;
}

.Result__tour-info-label {
    display: inline;
    font-weight: var(--bold);
}

.Result__tour-info-content {
    display: inline;
    font-weight: var(--bold);
}


.Result__tour-tags-wrap {
    width: 100%;
    padding-bottom: 1rem;
    overflow: scroll;
}

.Result__tour-tags {
    display: flex;
    justify-content: flex-start;
}

.Result__tour-tag {
    flex-shrink: 0;
    padding: 0.4rem 0.8rem;
    color: var(--corporate-color);
    font-size: 1.2rem;
    font-weight: var(--bold);
    line-height: 1;
    border: 1px solid #99cae1;
}

.Result__tour-tag {
    margin-right: 0.5rem;
}

.Result__tour-photo-wrap {
    display: flex;
    justify-content: space-between;
}

.Result__tour-photo {
    width: calc((100% - 0.1rem) / 2);
}

.Result__tour-photo img {
    aspect-ratio: 4/3;
}

.Result__tour-period {
    width: 100%;
    margin-bottom: 1rem;
    padding: 0.3rem 0.5rem;
    font-size: 1.3rem;
    text-align: center;
    background: #f5f5f5;
}

.Result__tour-period-label {
    display: inline;
    font-size: 1.2rem;
    font-weight: var(--bold);
}

.Result__tour-period-content {
    display: inline;
}

.Result__tour-table {
    width: 100%;
}

.Result__tour-table th,
.Result__tour-table td {
    padding: 0.5rem 1rem;
    border: 1px solid #c9c9c9;
}

.Result__tour-table th {
    width: 30%;
    font-size: 1.2rem;
    font-weight: var(--bold);
    vertical-align: middle;
    white-space: nowrap;
}

.Result__tour-table td {
    width: 70%;
    font-size: 1.3rem;
}

.Result__tour-table-td-inner {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.Result__tour-table-txtlink {
    text-decoration: underline;
}

.Result__tour-table-txtlink:active {
    color: var(--corporate-color);
}

.Result__tour-reserve-wrap {
    text-align: center;
}

.Result__tour-reserve {
    display: inline-block;
    padding: 1.4rem 8.325rem;
    color: white;
    font-size: 1.4rem;
    font-weight: var(--bold);
    background-color: var(--caution-color);
    border-radius: 0.4rem;
}

/* --------------------end_ツアー枠-------------------- */

/* --------------------start_ページャー-------------------- */

.Result__pager-items {
    /* display: flex;
  justify-content: space-between;
  width: 27rem;
  margin: 0 auto; */
    text-align: center;
}

.Result__pager-items li {
    display: inline-block;
    margin: 0 5px;
}

.Result__pager-items li:not(first-child) {
    margin-left: 5px;
}

.Result__pager-item {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3.5rem;
    height: 3.5rem;
    color: var(--corporate-color);
    font-size: 1.3rem;
    font-weight: var(--bold);
    line-height: 1;
    border-radius: 0.3rem;
    background-color: white;
}

.Result__pager-item:not(.active):active {
    box-shadow: 0px 0px 0px 1px var(--corporate-color) inset;
}

.Result__pager-item--prev,
.Result__pager-item--next {
    position: relative;
    background-color: transparent;
}

.Result__pager-item--prev::before,
.Result__pager-item--next::before {
    content: "";
    display: block;
    width: 1rem;
    height: 1rem;
    border-top: 0.2rem solid var(--corporate-color);
    border-right: 0.2rem solid var(--corporate-color);
}

.Result__pager-item--prev::before {
    transform: translateX(0.2rem) rotate(-135deg);
}

.Result__pager-item--next::before {
    transform: translateX(-0.2rem) rotate(45deg);
}

.Result__pager-item.active {
    cursor: default;
    pointer-events: none;
    color: white;
    background-color: var(--corporate-color);
}

/* --------------------end_ページャー-------------------- */

/* --------------------start_条件変更（共通）-------------------- */

#search_detail_page {
    opacity: 0;
    pointer-events: none;
    --condition-input-height: 4.5rem;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 50;
    background: white;
    transition: opacity 0.6s;
}


/* start_Condition__header */

.Condition__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 5.5rem;
    background-color: white;
    border-bottom: 1px solid #e5e5e5;
}

.Condition__ttl {
    margin-left: 1.5rem;
    font-size: 1.5rem;
    font-weight: var(--bold);
}

.Condition__ttl::before {
    content: "";
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin-right: 0.5rem;
    vertical-align: -0.3rem;
    background: url(https://www.hankyu-travel.com/sharing/common21/images/icn_condition--black.svg) no-repeat center / contain;
}

.Condition__btn-close {
    position: relative;
    width: 5.5rem;
    height: 100%;
    background-color: #888;
}

.Condition__btn-close::before,
.Condition__btn-close::after {
    content: "";
    display: block;
    width: 2rem;
    height: 0.2rem;
    background: white;
    position: absolute;
    top: 50%;
    left: 50%;
}

.Condition__btn-close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.Condition__btn-close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

/* end_Condition__header */

.Condition__hr {
    width: 100%;
    height: 2rem;
    border: none;
    background-color: #f5f5f5;
    border-bottom: 1px solid #e5e5e5;
}

.Condition__scroll-area {
    width: 100%;
    height: calc((var(--vh, 1vh) * 100) - 5.5rem - 8rem);
    overflow-y: scroll;
}


.Condition__group {
    padding: 1.5rem;
    border-bottom: 1px solid #e5e5e5;
}

.Condition__group:last-of-type {
    border-bottom: none;
}

.Condition__heading {
    margin-bottom: 0.8rem;
    font-size: 1.4rem;
    font-weight: var(--bold);
    line-height: 1;
}

.Condition__content {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

#search_detail_page ::placeholder {
    color: #333;
}

/* start_ラジオボタン */

#search_detail_page input[type="radio"] {
    display: none;
}

.Condition__radio-label {
    display: inline-block;
    margin-bottom: 1rem;
    padding: 1rem;
    border: 1px solid #c3c3c3;
    border-radius: 0.4rem;
}

#search_detail_page input[type="radio"]:checked + .Condition__radio-label {
    background: transparent;
}

.Condition__radio-btn {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin-right: 0.5rem;
    vertical-align: -0.5rem;
    border-radius: 50%;
    border: 0.2rem solid #888;
    background-color: white;
}

#search_detail_page input[type="radio"]:checked + .Condition__radio-label .Condition__radio-btn {
    border: 0.6rem solid var(--corporate-color);
}

.CommonModal__set-btn-wrap .Condition__radio-label {
    border: 0;
}

/* end_ラジオボタン */


/* start_チェックボックス */

#search_detail_page input[type="checkbox"] {
    display: none;
}

.Condition__checkbox-label {
    position: relative;
    display: inline-block;
    margin-bottom: 1rem;
    padding: 1rem;
    border: 1px solid #c3c3c3;
    border-radius: 0.4rem;
}

#search_detail_page input[type="checkbox"]:checked + .Condition__checkbox-label {
    border-color: var(--corporate-color);
}

.Condition__checkbox-btn {
    position: relative;
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin-right: 0.5rem;
    vertical-align: -0.5rem;
    border-radius: 0.4rem;
    border: 0.2rem solid #888;
    background-color: white;
}

.Condition__radio-btn {
    position: relative;
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin-right: 0.5rem;
    vertical-align: -0.5rem;
    border-radius: 50%;
    border: 0.2rem solid #888;
    background-color: white;
}

#search_detail_page input[type="checkbox"]:checked + .Condition__checkbox-label .Condition__checkbox-btn {
    border: none;
    background-color: var(--corporate-color);
}

#search_detail_page input[type="radio"]:checked + .Condition__checkbox-label .Condition__checkbox-btn {
    border: none;
    background-color: var(--corporate-color);
}


#search_detail_page input[type="checkbox"]:checked + .Condition__checkbox-label .Condition__checkbox-btn::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 1rem;
    height: 0.7rem;
    border-left: 0.2rem solid white;
    border-bottom: 0.2rem solid white;
    transform: translate(-50%, -70%) rotate(-45deg);
}

#search_detail_page input[type="radio"]:checked + .Condition__checkbox-label .Condition__checkbox-btn::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 1rem;
    height: 0.7rem;
    border-left: 0.2rem solid white;
    border-bottom: 0.2rem solid white;
    transform: translate(-50%, -70%) rotate(-45deg);
}


/* end_チェックボックス */


/* start_セレクトボックス */

.Condition__select {
    width: 100%;
    position: relative;
    overflow: hidden;
    border: 1px solid #888;
    border-radius: 0.4rem;
    font-size: 1.6rem;
}

.Condition__select::after {
    content: "";
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    border-right: 0.2rem solid #c3c3c3;
    border-bottom: 0.2rem solid #c3c3c3;
    position: absolute;
    top: 50%;
    right: 1.4rem;
    transform: translateY(-80%) rotate(45deg);
    pointer-events: none;
}


#search_detail_page select {
    --scale-down: calc(1.4 / 1.6);
    --scale-up: calc(1.6 / 1.4);
    width: calc(100% * var(--scale-up));
    height: calc(var(--condition-input-height) * var(--scale-up));
    margin: calc((((var(--condition-input-height) * var(--scale-up)) - var(--condition-input-height)) * -1) / 2) 0;
    padding: calc(1rem * var(--scale-up)) calc(2.8rem * var(--scale-up)) calc(1rem * var(--scale-up)) calc(1rem * var(--scale-up));
    line-height: calc(1.6 * var(--scale-down));
    transform: scale(var(--scale-down));
    transform-origin: 0;
}

/* end_セレクトボックス */

/* start_input-text */

#search_detail_page input[type="text"] {
    --scale-down: calc(1.4 / 1.6);
    --scale-up: calc(1.6 / 1.4);
    width: calc(100% * var(--scale-up));
    height: calc(var(--condition-input-height) * var(--scale-up));
    margin: calc((((var(--condition-input-height) * var(--scale-up)) - var(--condition-input-height)) * -1) / 2) 0;
    padding: calc(1rem * var(--scale-up)) calc(3rem * var(--scale-up)) calc(1rem * var(--scale-up)) calc(1rem * var(--scale-up));
    line-height: calc(1.6 * var(--scale-down));
    text-overflow: ellipsis;
    transform: scale(var(--scale-down));
    transform-origin: 0;
}


.Condition__input-text {
    position: relative;
    width: 100%;
    border: 1px solid #888;
    border-radius: 0.4rem;
    font-size: 1.6rem;
    overflow: hidden;
}

.Condition__input-text::after {
    content: "";
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    border-top: 0.2rem solid #c3c3c3;
    border-right: 0.2rem solid #c3c3c3;
    position: absolute;
    top: 50%;
    right: 1.4rem;
    transform: translateY(-50%) rotate(45deg);
    pointer-events: none;
}


#search_detail_page input[type="text"]::placeholder {
    color: #999;
}

/* end_input-text */

/* start_Condition__footer */

.Condition__footer {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 8rem;
    padding: 0 1.5rem;
    background: white;
    border-top: 1px solid #e5e5e5;

    z-index: 2;
    position: fixed;
    bottom: 0;
}

.Condition__clear-btn-wrap {
    text-align: center;
    padding: 1.5rem;
}

.Condition__btn--clear {
    display: inline-block;
    font-weight: var(--bold);
    text-align: center;
    border-bottom: 1px solid #333;
}

.Condition__btn--clear::before {
    content: "✕";
    margin-right: 0.4rem;
    font-weight: 600;
    font-size: 1.2rem;
    vertical-align: 0.1rem;
}


.Condition__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc((100% - 1rem) / 2);
    padding: 1.25rem 0;
    color: white;
    font-size: 1.6rem;
    font-weight: var(--bold);
    text-align: center;
    border-radius: 0.4rem;
    background-color: var(--caution-color);
}

.Condition__btn::before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-right: 5px;
    vertical-align: -2px;
    background: url(https://www.hankyu-travel.com/sharing/common21/images/icn_search--white.svg) no-repeat center / contain;
}

/* end_Condition__footer */

/* --------------------end_条件変更（共通）-------------------- */

/* --------------------start_条件変更（個別）-------------------- */

/* start_旅行日数 */

.Condition__group--days .Condition__select {
    width: 45%;
}

/* end_旅行日数 */

/* --------------------end_条件変更（個別）-------------------- */

/* --------------------start_CommonModal（共通）-------------------- */

.CommonModal--search {
    width: 100%;
    position: fixed;
    top: 0;
    left: 100%;
    z-index: 2;
    transition: left 0.3s;
    background: white;
}

.CommonModal--search.active {
    left: 0;
}

.CommonModal--search__close {
    position: relative;
    display: block;
    width: 5.5rem;
    height: 100%;
    background: #888;
}

.CommonModal--search__close::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 1.2rem;
    height: 1.2rem;
    border-top: 0.2rem solid white;
    border-left: 0.2rem solid white;
    transform: translate(-40%, -50%) rotate(-45deg);
}

.CommonModal--search__close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 1.2rem;
    height: 0.2rem;
    background: white;
    transform: translate(-35%, -50%);
}

.CommonModal--search .Condition__radio-label {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    margin: -1px 0 0 0;
    border-color: #e5e5e5;
    border-right: none;
    border-left: none;
    border-radius: 0;
}

#search_detail_page .CommonModal--search input[type="radio"]:checked .Condition__radio-btn {
    border: 0.6rem solid var(--corporate-color);
}

.CommonModal__contents-inner {
    padding: 0;
}

.Condition__checkbox-txt {
    width: calc(100% - 2.5rem);
}

.CommonModal__set-btn-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4rem;
    height: calc(8rem + 1px);
    margin-top: -1px;
    border-top: 1px solid #e5e5e5;
    z-index: 3;
    position: sticky;
    position: -webkit-sticky;
    /* Safari */
    bottom: 0;
    background: #ffffff;
}

.CommonModal__set-btn {
    display: inline-block;
    padding: 1.25rem 4.85rem;
    color: white;
    font-size: 1.6rem;
    font-weight: var(--bold);
    border-radius: 0.4rem;
    background-color: var(--caution-color);
}

/* --------------------end_CommonModal（共通）-------------------- */

/* --------------------start_CommonModal（個別）-------------------- */
/* start_特別代金プラン */
.ConditionModal--special-price  .CommonModal__contents-inner {
    padding: 1.5rem;
}
  
.ConditionModal--special-price-caution {
    margin-top: 1rem;
    color: var(--sub-corporate-color);
    font-size: 1.3rem;
    font-weight: var(--bold);
}
  
.ConditionModal--special-price-note {
    margin: 1.5rem auto 2rem auto;
    border: 1px solid #e5e5e5;
    border-radius: 0.6rem;
    overflow: hidden;
}
  
.ConditionModal--special-price-label {
    padding: 1rem 1.5rem;
    color: #666;
    font-size: 1.4rem;
    font-weight: var(--bold);
    background: #f5f5f5;
    border-bottom: 1px solid #e5e5e5;
}
  
.ConditionModal--special-price-txt {
    padding: 1.5rem;
}
  
.ConditionModal--special-price  .CommonModal__contents-inner .tableAreaContents p{
    border-left: 4px solid var(--corporate-color);
    margin: 2.5rem 0 1rem;
      padding-left: 0.5rem;
      font-weight: var(--bold);
      line-height: 1;
}
.ConditionModal--special-price  .price-model th{
    text-align: center;
    font-size: 1.3rem;
    padding: 0.5rem 0.8rem;
    border: 1px solid #e5e5e5;
}
.ConditionModal--special-price  .price-model td{
    padding: 0.5rem 0.8rem;
    vertical-align: top;
      font-size: 1.3rem;
      border: 1px solid #e5e5e5;
}
.ConditionModal--special-price  .price-model td:last-child{
    font-weight:bold;
}
/* end_特別代金プラン */


/* start_テーマ */

.ConditionModal--theme-ac-btn {
    position: relative;
    display: block;
    padding: 1.5rem;
    font-weight: var(--bold);
    line-height: 1;
    border-bottom: 1px solid #e5e5e5;
    background-color: #f5f5f5;
}

.ConditionModal--theme-ac-contents {
    display: none;
}

/* end_テーマ */

/*-------------------edit by access start---------------*/

#search_detail_page input[type="radio"]:disabled + .Condition__checkbox-label {
    color: var(--disable-font-color);
}

#search_detail_page input[type="checkbox"]:disabled + .Condition__checkbox-label {
    color: var(--disable-font-color);
}

#search_detail_page input[type="checkbox"]:disabled + .Condition__checkbox-label .Condition__checkbox-btn {
    border: none;
    background-color: var(--disable-color);
}

#search_detail_page input[type="radio"]:disabled + .Condition__checkbox-label .Condition__checkbox-btn {
    border: none;
    background-color: var(--disable-color);
}

#search_detail_page input[type="radio"]:disabled + .Condition__radio-label {
    color: var(--disable-font-color);
}

#search_detail_page input[type="radio"]:disabled + .Condition__radio-label .Condition__radio-btn {
    border: none;
    background-color: var(--disable-color);
}

/*-------------------edit by access end---------------*/

/* --------------------end_CommonModal（個別）-------------------- */


.Condition__group--conductor .Condition__checkbox-label,
.Condition__group--do .Condition__checkbox-label {
    width: calc((100% - 1rem) / 2);
}


.price-model {
    width: 100%;
}


.price-model td {
    border: 1px solid #e5e5e5;
    font-size: 10px;
    padding-left: 5px;
}

.graystyle:not(input[type="text"]):not(select) {
    color: #808080 !important;
}

.price-model th {
    color: white;
    font-weight: 600;
    background: #666;
    padding-left: 5px;
}

.price-model th:last-child {
    text-align: right;
    padding-right: 5px;
}

.price-model tr td:last-child {
    text-align: right;
    padding-right: 5px;
    width: 22%;
    vertical-align: middle;
}

.price-model tr td:first-child {
    text-align: left;
    padding-left: 5px;
    width: 18%;
    vertical-align: middle;
}


.CommonModal__contents {
    overflow: scroll;
}


/* start_Main__footer */
.PageBanner-bottom {
    display: block;
    margin-bottom: 4rem;
}

.Keyword__content {
    flex-wrap: wrap;
    width: calc(100% - 3rem);
    margin: 0 auto;
    padding: 2rem 1.5rem 1rem 1.5rem;
    border: 0.4rem solid #e5e5e5;
    border-radius: 1rem;
}

.Keyword__items {
    width: 100%;
    padding: 0;
    border: 0;
}

.Keyword__toggle {
    margin-bottom: 1rem;
    interpolate-size: allow-keywords;
    position: relative;
    padding-bottom: 5.4rem;
}

.Keyword__toggle::details-content {
    transition: height 0.3s, content-visibility 0.3s allow-discrete;
    height: 0;
    overflow: hidden;
}

.Keyword__toggle[open]::details-content {
    height: auto;
}

.Keyword__toggle__btn {
    display: block;
    width: 100%;
    list-style: none;
    padding: 1.5rem 2rem;
    background: var(--corporate-color);
    border-radius: 0.4rem;
    color: #fff;
    font-weight: var(--bold);
    text-align: center;
    position: absolute;
    bottom: 0;
}

.Keyword__toggle__btn span {
    display: block;
    width: 1rem;
    height: 1rem;
    position: absolute;
    top: 50%;
    right: 2rem;
    translate: 0 -50%;
}

.Keyword__toggle__btn span::before,
.Keyword__toggle__btn span::after {
    content: "";
    display: block;
    width: 1.4rem;
    height: 0.2rem;
    background: #fff;
    position: absolute;
    top: 50%;
    right: 0;
    translate: 0 -50%;
}

.Keyword__toggle__btn span::after {
    rotate: 90deg;
    transition: rotate 0.3s;
}

.Keyword__toggle[open] .Keyword__toggle__btn span::after {
    rotate: 0deg;
}

.Footer_note {
    font-size: 1.1rem;
    margin-bottom: 10px;
}

.Main__footer .Common21__fill-btn-wrap {
    margin-bottom: 4rem;
}

.Main__footer .Common21__fill-btn {
    background: var(--corporate-color);
}


/* notfound */
.Result-notfound :is(.PageBanner-top,.condition-open,.Result__btn-condition,.FixBtn) {
    display: none;
}

.Result-notfound-txt {
    padding: 1.5rem;
    margin-block: 1rem 3rem;
    border: 1.5rem solid #f5f5f5;
    color: #db2100;
    font-size: 1.6rem;
    font-weight: 600;
    text-align: center;
    white-space: nowrap;
}

/* 上書き */
.CommonModal__scroll-area {
    padding-bottom: 0 !important;
}

/* .GnavHead__btn--history::before {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzExNF8yNikiPgo8cGF0aCBkPSJNMTAuNTMgNS45MzAxOFYxMC40MzAySDE1VjkuNDMwMThIMTEuNVY1LjkzMDE4SDEwLjUzWiIgZmlsbD0iIzAwNzNDMCIvPgo8cGF0aCBkPSJNMy41MyAxMi40NTAyTDYgOS45MzAxOEgxTDMuNTMgMTIuNDUwMloiIGZpbGw9IiMwMDczQzAiLz4KPHBhdGggZD0iTTExIDEuOTMwMThDOC44NzgyNyAxLjkzMDE4IDYuODQzNDQgMi43NzMwMyA1LjM0MzE1IDQuMjczMzJDMy44NDI4NSA1Ljc3MzYxIDMgNy44MDg0NCAzIDkuOTMwMThINEMzLjk5ODYgOC4zNjk4MiA0LjUxODU4IDYuODUzNzIgNS40NzczNiA1LjYyMjY3QzYuNDM2MTQgNC4zOTE2MyA3Ljc3ODc0IDMuNTE2MjIgOS4yOTE5NCAzLjEzNTQ4QzEwLjgwNTEgMi43NTQ3NCAxMi40MDIyIDIuODkwNDkgMTMuODI5NCAzLjUyMTE5QzE1LjI1NjYgNC4xNTE4OSAxNi40MzIyIDUuMjQxMzYgMTcuMTY5NCA2LjYxNjU3QzE3LjkwNjYgNy45OTE3OSAxOC4xNjMzIDkuNTczOSAxNy44OTg1IDExLjExMTZDMTcuNjMzNyAxMi42NDk0IDE2Ljg2MjggMTQuMDU0NiAxNS43MDgxIDE1LjEwNEMxNC41NTM0IDE2LjE1MzUgMTMuMDgxMSAxNi43ODcxIDExLjUyNTIgMTYuOTA0MkM5Ljk2OTIgMTcuMDIxMiA4LjQxODczIDE2LjYxNTEgNy4xMiAxNS43NTAyTDYuNTcgMTYuNTkwMkM3LjYwOTUyIDE3LjI4MiA4Ljc5NjU1IDE3LjcyMDggMTAuMDM2MSAxNy44NzE2QzExLjI3NTYgMTguMDIyNCAxMi41MzMzIDE3Ljg4MSAxMy43MDgzIDE3LjQ1ODZDMTQuODgzNCAxNy4wMzYyIDE1Ljk0MzMgMTYuMzQ0NiAxNi44MDMxIDE1LjQzOTJDMTcuNjYzIDE0LjUzMzcgMTguMjk5IDEzLjQzOTYgMTguNjYwMiAxMi4yNDQzQzE5LjAyMTQgMTEuMDQ5IDE5LjA5NzggOS43ODU3NCAxOC44ODMyIDguNTU1NjRDMTguNjY4NyA3LjMyNTUzIDE4LjE2OTIgNi4xNjI3MiAxNy40MjQ3IDUuMTYwMjdDMTYuNjgwMiA0LjE1NzgzIDE1LjcxMTMgMy4zNDM1NyAxNC41OTU3IDIuNzgyNjhDMTMuNDgwMSAyLjIyMTc5IDEyLjI0ODcgMS45Mjk4MyAxMSAxLjkzMDE4WiIgZmlsbD0iIzAwNzNDMCIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzExNF8yNiI+CjxyZWN0IHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K);
} */

.Footer__outer-link::after {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB2aWV3Qm94PSIwIDAgOCA4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTE0XzMzKSI+CjxwYXRoIGQ9Ik03IDdIMVYxSDJWMEgwVjhIOFY2SDdWN1oiIGZpbGw9IiMwMDczQzAiLz4KPHBhdGggZD0iTTQgMFYxSDdWNEg4VjBINFoiIGZpbGw9IiMwMDczQzAiLz4KPHBhdGggZD0iTTguMDAyNzYgMC43MDE3MzZMNy4yOTU2NSAtMC4wMDUzNzEwOUwzLjE1MjAxIDQuMTM4MjdMMy44NTkxMiA0Ljg0NTM4TDguMDAyNzYgMC43MDE3MzZaIiBmaWxsPSIjMDA3M0MwIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMTE0XzMzIj4KPHJlY3Qgd2lkdGg9IjgiIGhlaWdodD0iOCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K);
}

.Common21__section-ttl-lev1::after {
    background: #00a0e9
}
