/* ==============================================
   機種更新情報（/machine/slot/news, /machine/pachinko/news）
   ============================================== */

/* 更新情報コンテナ */
main .update {
    padding: 5px 2.6667%;
    width: 100%;
    margin-top: 10px;
    padding: 10px;
    background-color: #fff;
    border-radius: 8px;
    box-sizing: border-box;
}

/* 見出し */
.update h1 {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 4px;
    font-size: 1rem;
    font-weight: bold;
    border-bottom: 2px solid #084d8f;
}

.update h1 img {
    width: 24px;
    margin: 0 4px 0 0;
}

/* リスト共通 */
.update_list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.update_list a {
    display: block;
    width: 100%;
    padding-left: 16px;
    color: #333;
    text-decoration: none;
    position: relative;
    box-sizing: border-box;
}

/* 左端カラーバー */
.update_list a::before {
    content: '';
    display: block;
    width: 5px;
    height: 70%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

/* パチスロ: 緑 / パチンコ: 赤 */
.updateslot_list a::before {
    background-color: #36b818;
}

.updatepachi_list a::before {
    background-color: #f93e3e;
}

/* リスト項目 */
.update_list a li {
    display: block;
    width: 100%;
    padding: 8px 0;
    color: #333;
    font-size: 14px;
    line-height: 1.6;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* S/P ラベル（旧サイト準拠で非表示） */
.update_list a li span.slo,
.update_list a li span.pachi {
    display: none;
}

/* 記事タイトル */
.update_list a li span {
    display: inline-block;
    max-width: 100%;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px;
}

/* 記事タイトル色 */
.update_list a li span.news-subtitle {
    color: #ff8800;
    font-size: 12px;
    line-height: 1.4;
}

@media (min-width: 835px) {
    main .update_list.updateslot_list,
    main .update_list.updatepachi_list {
        border-bottom: 0;
    }
}

/* ページネーション */
#navi.clearfix {
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    list-style: none;
    padding: 0;
}

#navi.clearfix::after {
    content: none;
}

#navi.clearfix li {
    display: block;
    width: 48%;
    color: #cacaca;
    font-size: 14px;
    line-height: 2.9285;
    text-align: center;
    border: 1px solid #999;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
}

#navi.clearfix li a {
    display: block;
    width: 100%;
    height: 100%;
    color: #333;
    text-align: center;
    text-decoration: none;
}

#navi.clearfix li.prenone,
#navi.clearfix li.forenone {
    color: #cacaca;
}
/* ==============================================
   機種Q&A（/machine/faq）
   ============================================== */

/* Q&Aコンテナ共通 */
main .qaslot,
main .qapachi,
main .qa {
    padding: 5px 2.6667%;
}

.qaslot,
.qapachi,
.qa {
    width: 100%;
    margin-top: 10px;
    padding: 10px;
    background-color: #fff;
    border-radius: 8px;
    box-sizing: border-box;
}

.qapachi {
    margin-bottom: 10px;
}

/* 見出し */
.qaslot h1,
.qapachi h1,
.qa h1 {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 4px;
    font-size: 1rem;
    font-weight: bold;
    border-bottom: 2px solid #084d8f;
}

.qaslot h1 img,
.qapachi h1 img,
.qa h1 img {
    width: 24px;
    margin: 0 4px 0 0;
}

/* リスト項目 */
.qaslot_list li,
.qapachi_list li {
    width: 100%;
    padding-left: 16px;
    color: #333;
    font-size: 14px;
    border-bottom: dotted 1px #333;
    position: relative;
    box-sizing: border-box;
}

/* 左端カラーバー */
.qaslot_list li::before,
.qapachi_list li::before {
    content: '';
    display: block;
    width: 5px;
    height: 70%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

/* トップページ */
.qaslot .qaslot_list li::before {
    background-color: #36b818;
}
.qapachi .qapachi_list li::before {
    background-color: #f93e3e;
}

/* 一覧ページ（トップページと同じくパチスロ=緑／パチンコ=赤に揃える） */
.qa .qaslot_list li::before {
    background-color: #36b818;
}
.qa .qapachi_list li::before {
    background-color: #f93e3e;
}

/* リンク */
.qaslot_list li a,
.qapachi_list li a {
    display: block;
    width: 100%;
    padding: 8px 0;
    color: #333;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
}

.qaslot_list li a span,
.qapachi_list li a span {
    display: inline-block;
    max-width: 100%;
    line-height: 1.8;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 機種名 */
.qaslot_list li a span.date,
.qapachi_list li a span.date {
    color: #999;
    font-size: 12px;
    line-height: 1.4;
}

/* もっと見るボタン */
.qaslot_more,
.qapachi_more {
    display: block;
    width: 100%;
    margin-top: 10px;
    color: #333;
    font-size: 14px;
    line-height: 2.9285;
    text-align: center;
    text-decoration: none;
    border: 1px solid #999;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}

/* ページネーション */
#navi.clearfix {
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    list-style: none;
    padding: 0;
}

#navi.clearfix::after {
    content: none;
}

#navi.clearfix li {
    display: block;
    width: 48%;
    color: #cacaca;
    font-size: 14px;
    line-height: 2.9285;
    text-align: center;
    border: 1px solid #999;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
}

#navi.clearfix li a {
    display: block;
    width: 100%;
    height: 100%;
    color: #333;
    text-align: center;
    text-decoration: none;
}

#navi.clearfix li.prenone,
#navi.clearfix li.forenone {
    color: #cacaca;
}

/* 詳細ページ */
#header {
    border: 1px solid #000;
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 10px;
    color: #fff;
    text-align: center;
    text-shadow: 0 -1px 1px #000;
    background: linear-gradient(to bottom, #333, #5a5a5a);
    box-sizing: border-box;
    padding: 8px 0;
}

#mainContents {
    padding: 0 10px;
    font-size: initial;
    line-height: 1.6;
}
/* ==============================================
   機種一覧（/machine/slot, /machine/pachinko）
   ============================================== */

/* --- 基本レイアウト --- */

.machine {
    width: 100%;
    padding: 1.3333vw 2.6667%;
    background-color: #e6e6e6;
    box-sizing: border-box;
}

.machine h1 {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 1%;
    font-size: 4.2667vw;
    font-weight: bold;
    border-bottom: 0.6vw solid #084d8f;
}

.machine h1 img {
    width: 7.2%;
    margin: -0.2% 1% 0 0;
}

.machine_content {
    width: 100%;
    margin: 2.6667vw 0;
    padding: 2.6667vw;
    background-color: #fff;
    border-radius: 2vw;
    box-sizing: border-box;
}

.machine + br {
    display: none;
}

/* --- 旧テキストリスト --- */

.machine_list {
    margin-top: 2.6667vw;
}

.machine_list ul > br {
    display: none;
}

.machine_list ul > a {
    display: block;
    color: #333;
    font-size: 3.7333vw;
    line-height: 9.3333vw;
    text-decoration: none;
}

.machine_list ul > a li {
    width: 100%;
    height: 100%;
    padding-left: 5.5%;
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    border-bottom: dotted 0.2667vw #333;
    box-sizing: border-box;
}

.machine_list ul > a li span {
    display: block;
    width: 1.8%;
    height: 71.4286%;
    font-size: 0;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.machine_list ul > a li span.slo {
    background-color: #36b818;
}

.machine_list ul > a li span.pachi {
    background-color: #f93e3e;
}

/* --- ページネーション --- */

#navi.clearfix {
    margin-top: 2.6667vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#navi.clearfix::after {
    content: none;
}

#navi.clearfix li {
    display: block;
    width: 48%;
    color: #cacaca;
    font-size: 3.7333vw;
    line-height: 2.9285;
    text-align: center;
    border: solid 0.2667vw #999;
    box-shadow: 0.2667vw 0.2667vw 0.8vw rgba(0, 0, 0, 0.3);
}

#navi.clearfix li a {
    display: block;
    width: 100%;
    height: 100%;
    color: #333;
    text-align: center;
    text-decoration: none;
}

/* --- フッターニュース --- */

#footer_news {
    margin: 0 5px 0 5px;
    line-height: 0;
}

#footer_news div {
    background: #000;
    border-radius: 7px 7px 0 0;
    font-size: 16px;
    line-height: 25px;
    color: #fff;
    font-weight: bold;
    padding: 6px 0 4px 0;
    text-align: center;
}

#footer_news::after {
    content: '';
    display: block;
    clear: both;
    background: #000;
    border-radius: 0 0 7px 7px;
    height: 15px;
}

#footer_news li {
    background: #fff;
    width: 100%;
    border-bottom: silver 1px solid;
    border-left: #000 1px solid;
    border-right: #000 1px solid;
    text-align: left;
    display: inline-block;
    box-sizing: border-box;
    line-height: 16px;
}

#footer_news li h2 {
    display: block;
    color: #000;
    font-weight: bold;
    font-size: 15px;
    padding: 8px 2px 0 5px;
}

#footer_news li h2 span {
    color: crimson;
    font-weight: bold;
    font-size: 13px;
    padding: 0 3px 0 0;
}

#footer_news li a {
    text-decoration: none;
    display: block;
}

#footer_news p {
    color: #ff8c00;
    font-size: 13px;
    padding: 0 0 5px 10px;
}

#footer_news p.name {
    display: block;
    color: gray;
    font-size: 10px;
    padding: 5px 5px 3px 0;
    text-align: right;
}

#footer_news p.float {
    float: left;
}

#footer_news p.float img {
    width: 60px;
    height: 60px;
    padding: 8px 10px 0 0;
}

#footer_news p.float::after {
    content: '';
    display: block;
    clear: both;
}

/* --- update_wrap / menu_update --- */

.update_wrap {
    margin: 15px 5px 0 5px;
    line-height: 0;
}

.menu_update {
    font-size: 15px;
    line-height: 17px;
    background: #fff;
    border-bottom: 2px #000 solid;
    margin: 0 0 10px 0;
    padding: 0 0 5px 10px;
}

.menu_update a {
    display: block;
    text-decoration: none;
    color: #369;
}

.icon_red {
    color: red;
}

.icon_yellow {
    color: #ff0;
}

#contentWrap,
.menu_update {
    background-color: #e6e6e6;
}

#contentWrap {
    padding-top: 0;
}

/* --- タブ --- */

.hs--2026__machine__tab {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.125em;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    padding: 0.25em 0.5em;
    background-color: var(--accent-color);
    border-radius: 2vw 2vw 0 0;
    opacity: 0.4;
}

.hs--2026__machine__tab.--slot {
    --accent-color: #36b818;
}

.hs--2026__machine__tab.--slot img {
    width: 18%;
}

.hs--2026__machine__tab.--pachi {
    --accent-color: #f93e3e;
}

.hs--2026__machine__tab.--pachi img {
    width: 20%;
}

.hs--2026__machine__tab.is-active {
    opacity: 1;
}

.hs--2026__machine__tab__wrap {
    font-size: 6vw;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 0.5em;
    border-bottom: 1vw solid var(--border-color);
}

.hs--2026__machine__tab__wrap:has(.is-active.--slot) {
    --border-color: #36b818;
}

.hs--2026__machine__tab__wrap:has(.is-active.--pachi) {
    --border-color: #f93e3e;
}

/* --- 設定バー（ソート・ギャラリー） --- */

.hs--2026__machine__setting {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 5%;
}

.hs--2026__machine__setting__item.--left {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 2vw;
}

.hs--2026__machine__sort {
    font-size: 3.25vw;
    font-weight: 500;
    padding: 0.125em 0.375em;
}

.hs--2026__machine__sort.is-active {
    border: 0.3vw solid currentColor;
}

.hs--2026__machine__sort__wrap {
    display: flex;
    justify-content: start;
    align-items: center;
}

.hs--2026__machine__ranking {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 0.25em;
    font-size: 3.25vw;
}

.hs--2026__machine__ranking img {
    width: 1em;
}

.hs--2026__machine__gallery {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 0.5em;
}

.hs--2026__machine__gallery.is-active img {
    opacity: 1;
}

.hs--2026__machine__gallery img {
    width: 8vw;
    opacity: 0.4;
}

.hs--2026__machine__gallery__wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1em;
    font-size: 2vw;
}

/* --- コンテンツ切り替え --- */

.hs--2026__machine__content {
    display: block;
}

.hs--2026__machine__content__item {
    display: none;
    z-index: 0;
}

.hs--2026__machine__content__item.--visible {
    display: block;
    z-index: 1;
}

.hs--2026__machine__content__item.--slot {
    --accent-color: #36b818;
}

.hs--2026__machine__content__item.--pachi {
    --accent-color: #f93e3e;
}

/* --- 機種カード --- */

.hs--2026__machine__item__ph img {
    width: 100%;
}

.hs--2026__machine__item__wrap {
    margin-top: 3%;
}

/* 画像なしモード */

.img-hidden .hs--2026__machine__item {
    display: block;
    padding-left: 5.5%;
    border-bottom: dotted 0.2667vw #333;
    position: relative;
}

.img-hidden .hs--2026__machine__item::before {
    position: absolute;
    top: 50%;
    left: 0;
    translate: 0 -50%;
    content: '';
    width: 1.8%;
    height: 71.4286%;
    background-color: var(--accent-color);
}

.img-hidden .hs--2026__machine__item__name {
    font-size: 3.733vw;
    line-height: 9.3333vw;
    color: #333;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.img-hidden .hs--2026__machine__item__company {
    display: none;
}

.img-hidden .hs--2026__machine__item__date {
    display: none;
}

.img-hidden .hs--2026__machine__item__ph {
    display: none;
}

/* 画像ありモード */

.img-visible .hs--2026__machine__item {
    display: grid;
    grid-template-columns: 3fr 7fr;
    align-items: center;
    gap: 8%;
    padding-bottom: 5%;
    border-bottom: 0.266666666vw solid #707070;
}

.img-visible .hs--2026__machine__item:not(:first-child) {
    margin-top: 5%;
}

.img-visible .hs--2026__machine__item__text-area {
    grid-row: 1 / 2;
    grid-column: 2 / 3;
}

.img-visible .hs--2026__machine__item__name {
    font-size: 4.266666666vw;
    font-weight: 700;
}

.img-visible .hs--2026__machine__item__company {
    font-size: 4.533333333vw;
    margin-top: 0.125em;
}

.img-visible .hs--2026__machine__item__date {
    font-size: 3.466666666vw;
    margin-top: 0.125em;
}

.img-visible .hs--2026__machine__item__ph {
    grid-row: 1 / 2;
    grid-column: 1 / 2;
}

/* --- フッター --- */

#footerNav {
    margin-top: 0;
    position: relative;
    z-index: 1;
}

/* --- PC向けレスポンシブ（min-width: 835px） --- */

@media (min-width: 835px) {
    .machine {
        padding: 0;
    }

    .machine .update_wrap {
        display: block;
        width: auto;
    }

    .machine_content {
        border-radius: 10px;
        margin: 0;
        padding: 10px;
    }

    .machine_content h1 {
        font-size: 1rem;
        border-width: 2px;
    }

    .machine_content h1 img {
        width: 24px;
    }

    .hs--2026__machine__tab {
        border-radius: 10px 10px 0 0;
    }

    .hs--2026__machine__tab__wrap {
        font-size: 22px;
        border-width: 4px;
    }

    .hs--2026__machine__setting {
        margin-top: 1rem;
    }

    .hs--2026__machine__setting__item.--left {
        gap: 10px;
    }

    .hs--2026__machine__sort {
        font-size: 12px;
    }

    .hs--2026__machine__sort.is-active {
        border-width: 1px;
    }

    .hs--2026__machine__ranking {
        font-size: 12px;
    }

    .hs--2026__machine__gallery img {
        width: 30px;
    }

    .hs--2026__machine__gallery__wrap {
        font-size: 0.5rem;
    }

    .hs--2026__machine__item__wrap {
        margin-top: 10px;
    }

    .img-hidden .hs--2026__machine__item {
        padding-left: 18px;
        border-width: 1px;
    }

    .img-hidden .hs--2026__machine__item__name {
        font-size: 14px;
        line-height: 2.5;
    }

    .img-visible .hs--2026__machine__item {
        padding-bottom: 10px;
        border-width: 1px;
    }

    .img-visible .hs--2026__machine__item__name {
        font-size: 16px;
    }

    .img-visible .hs--2026__machine__item__company {
        font-size: 17px;
    }

    .img-visible .hs--2026__machine__item__date {
        font-size: 13px;
    }

    #navi.clearfix {
        margin-top: 10px;
    }

    #navi.clearfix li {
        font-size: 14px;
        border-width: 1px;
        box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
    }

    .update_wrap {
        margin-top: 30px;
    }

    #footerNav {
        width: calc(100% - 500px);
        min-width: 375px;
        max-width: 400px;
        margin-inline: auto;
    }

    body {
        padding-top: var(--header-height);
    }
}

/* --- PC背景レイアウト --- */

.hs--2026__content {
    padding-bottom: 2.6667vw;
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    min-height: calc(100vh - var(--footer-height));
}

.hs--2026__content__bg {
    display: none;
}

@media (min-width: 835px) {
    .hs--2026__content {
        width: calc(100% - 500px);
        min-width: 375px;
        max-width: 400px;
        margin-inline: auto;
        background-color: #e6e6e6;
        padding: 15px 15px 40px;
    }

    .hs--2026__content__bg {
        display: grid;
        grid-template-columns: 1fr minmax(300px, 500px) 1fr;
        position: fixed;
        top: 0;
        left: 50%;
        translate: -50% 0;
        width: 100%;
        height: 100%;
        padding-top: var(--header-height);
        z-index: 0;
    }
}

.hs--2026__content__bg * {
    box-sizing: border-box;
}

.hs--2026__content__bg__img {
    position: relative;
    z-index: 0;
    grid-row: 1 / 2;
    grid-column: 1 / 4;
    overflow: hidden;
}

.hs--2026__content__bg__img::before {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    content: '';
    background-color: rgba(103, 103, 103, 0.5);
}

.hs--2026__content__bg__img img {
    width: 100%;
    object-fit: cover;
}

.hs--2026__content__bg__content {
    z-index: 1;
    padding: 20px;
    max-height: calc(100vh - 50px);
    overflow-y: auto;
    min-width: 200px;
}

.hs--2026__content__bg__content.--left {
    grid-row: 1 / 2;
    grid-column: 1 / 2;
}

.hs--2026__content__bg__content.--right {
    grid-row: 1 / 2;
    grid-column: 3 / 4;
}

.hs--2026__content__bg__list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 20px;
}

.hs--2026__content__bg__list__item {
    max-width: 50%;
    min-width: fit-content;
}

.hs--2026__content__bg__list__item a {
    text-decoration: none;
    display: flex;
    align-items: center;
    white-space: nowrap;
    background-color: hsla(0, 0%, 100%, 0.8);
    color: #000;
    padding: 10px;
    border-radius: 5px;
    gap: 10px;
    font-weight: 600;
}

.hs--2026__content__bg__list__item a img {
    width: 40px;
}

.hs--2026__content__bg__add {
    max-width: 160px;
}

.hs--2026__content__bg__add.--left {
    margin-inline-end: auto;
}

.hs--2026__content__bg__add.--right {
    margin-inline-start: auto;
}

/* サムネイル画像 */
.machine-img img {
    width: 100%;
}

/* ボタン */
.downBtn a,
#down a {
    color: #fff;
    font-size: 0.9em;
    margin: 10px 0;
}

/* スライダー */
.rslides {
    position: relative;
    list-style: none;
    overflow: hidden;
    width: 100%;
    padding: 0;
    margin: 0;
}
.rslides li {
    position: absolute;
    display: none;
    width: 100%;
    left: 0;
    top: 0;
}
.rslides li:first-child {
    position: relative;
    display: block;
    float: left;
}
.rslides img {
    display: block;
    height: auto;
    float: left;
    width: 100%;
    border: 0;
}

/* 更新情報ボックス */
.machine-update {
    width: calc(100% - 20px);
    border: 1px solid #555;
    margin: 10px auto;
}
.machine-update h3 {
    padding: 10px 0;
    background-color: #555;
    color: white;
    font-size: 12px;
    text-align: center;
    position: relative;
}
.machine-update h3 span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 21px;
    background: white;
    border-radius: 3px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    color: #333;
    font-size: 12px;
    text-align: center;
}
.machine-update ul {
    max-height: 100px;
    overflow-y: scroll;
    background-color: #fff;
}
.machine-update ul li {
    padding: 5px 7px;
    border-bottom: solid 1px #555;
}
.machine-update ul li:last-child {
    border-bottom: none;
}
.machine-update ul a {
    display: block;
    padding-right: 15px;
    color: #333;
    font-size: 12px;
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    position: relative;
}
.machine-update ul a::after {
    content: '';
    display: block;
    width: 8px;
    height: 12px;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    background-color: #777;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    right: 0;
}
.machine-update ul a > span {
    margin-right: 5px;
    display: inline-block;
    width: 32%;
    background: #e0e0e0;
    text-align: center;
    padding: 2px 0;
    border-radius: 5px;
}

/* 更新情報一覧ポップアップ */
.update-popup {
    display: none;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    z-index: 10;
}
.update-popup.on {
    display: flex;
}
.update-popup_overlay {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 0;
    z-index: 1;
}
.update-popup .machine-update {
    margin-top: 60px;
    position: relative;
    z-index: 2;
}

/* 関連コラム */
.listAtsu ul li a {
    background: url('https://assets.hisshobon.jp/data/html/img/muryo/back.png') center right no-repeat !important;
}

/* 機種タイトル */
#machineTitle {
    padding: 10px;
    background: #333;
    color: #fff;
    text-align: center;
}
#machineTitle p {
    margin: 0;
}
/* machine_04.css から移植 */
#machineTitle {
    padding: 5px 0;
    background: #000;
    font-weight: bold;
    color: #8c8888;
    font-size: 1em;
    text-align: center;
    text-shadow: 0 -1px 1px #000;
}
#machineTitle span {
    font-size: 0.8em;
    color: #fff;
}
h2.title {
    color: #fff;
    font-size: 1em;
    text-shadow: 1px 1px 3px #000;
    font-weight: bold;
    padding: 10px;
}
/* 旧仕様は 6 行目（=5件＋もっと見る）のみ矢印を付けていたが、関連コラムが可変件数に
   なったため全項目へ矢印＋右パディングを付ける。 */
.listAtsu ul li a {
    padding: 15px 30px 15px 15px !important;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat !important;
}
/* 「もっと見る」(emoji search アイコンを含む) だけは矢印を付けない。件数で位置が変わるため
   :last-child ではなく、もっと見る固有のアイコンを :has() で判定する。 */
.listAtsu ul li a:has(span.emoji.search) {
    padding-right: 15px !important;
    background: none !important;
}
.menuListBlue h2 {
    border-bottom: 1px solid #cce3ff;
    border-top: 1px solid #cce3ff;
    background: #0866cc;
}
.menuListBlue ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListBlue ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListBlue ul li a p span {
    color: #f00;
}
.menuListBlue ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
.menuListRed h2 {
    border-bottom: 1px solid #d9333f;
    border-top: 1px solid #d9333f;
    background: #ff3333;
}
.menuListRed ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListRed ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListRed ul li a p span {
    color: #f00;
}
.menuListRed ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
.menuListPurple h2 {
    border-bottom: 1px solid #b34ee5;
    border-top: 1px solid #b34ee5;
    background: #c15bff;
}
.menuListPurple ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListPurple ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListPurple ul li a p span {
    color: #f00;
}
.menuListPurple ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
.menuListOrange h2 {
    border-bottom: 1px solid #ffac30;
    border-top: 1px solid #ffac30;
    background: #ff8000;
}
.menuListOrange h3 {
    background: #ff8000;
    padding: 1px 0;
    color: #fff;
    font-size: 1em;
    font-weight: bold;
    text-shadow: 1px 1px 3px #000;
}
.menuListOrange h3 span {
    display: block;
    background: #ff8000;
    padding: 3px 10px;
}
.menuListOrange ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListOrange ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListOrange ul li a p span {
    color: #f00;
}
.menuListOrange ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
.menuListYellow h2 {
    border-bottom: 1px solid #ffdc00;
    border-top: 1px solid #ffdc00;
    background: #f4f420;
}
.menuListYellow ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListYellow ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListYellow ul li a p span {
    color: #f00;
}
.menuListYellow ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
.menuListPink h2 {
    border-bottom: 1px solid #dd77aa;
    border-top: 1px solid #dd77aa;
    background: #ff5879;
}
.menuListPink ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListPink ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListPink ul li a p span {
    color: #f00;
}
.menuListPink ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
.menuListPink h3 {
    padding: 1px 0;
    color: #fff;
    font-size: 1em;
    font-weight: bold;
    text-shadow: 1px 1px 3px #000;
}
.menuListPink h3 span {
    display: block;
    background: #ff5879;
    padding: 3px 10px;
}
.menuListGreen h2 {
    border-bottom: 1px solid #abd52f;
    border-top: 1px solid #abd52f;
    background: #61cc1c;
}
.menuListGreen ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListGreen ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListGreen ul li a p span {
    color: #f00;
}
.menuListGreen ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
.menuListSkyblue h2 {
    border-bottom: 1px solid #2fabd5;
    border-top: 1px solid #2fabd5;
    background: #45d1ff;
}
.menuListSkyblue ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListSkyblue ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListSkyblue ul li a p span {
    color: #f00;
}
.menuListSkyblue ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
.menuListCaramel h2 {
    border-bottom: 1px solid #773c30;
    border-top: 1px solid #773c30;
    background: #bc611e;
}
.menuListCaramel ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListCaramel ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListCaramel ul li a p span {
    color: #f00;
}
.menuListCaramel ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
.menuListGray h2 {
    border-bottom: 1px solid #999;
    border-top: 1px solid #999;
    background: #acacac;
}
.menuListGray ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListGray ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListGray ul li a p span {
    color: #f00;
}
.menuListGray ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
/*=====================================
    ★金
=====================================*/
.menuListGold h2 {
    border-bottom: 1px solid #cfcc50;
    border-top: 1px solid #cfcc50;
    background: #d7bf65;
}
.menuListGold ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListGold ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListGold ul li a p span {
    color: #f00;
}
.menuListGold ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
/*=====================================
    ★ダークスレイトブルー
=====================================*/
.menuListDarkslateblue h2 {
    border-bottom: 1px solid #483d8b;
    border-top: 1px solid #483d8b;
    background: #5f4fbc;
}
.menuListDarkslateblue ul li {
    border-bottom: 1px solid #939393;
    border-top: 1px solid #eee;
    background: white;
    font-size: 0.8em;
}
.menuListDarkslateblue ul li a {
    display: block;
    padding: 15px 30px 15px 15px;
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/back.png) center right no-repeat;
    color: #111;
    text-decoration: none;
}
.menuListDarkslateblue ul li a p span {
    color: #f00;
}
.menuListDarkslateblue ul li > p {
    padding: 15px 30px 15px 15px;
    color: #999;
}
/*=====================================
    ★詳細ページ帯
=====================================*/
.h-burn01 {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0.85, #ff4200), color-stop(0.04, #2e0000));
    background: -webkit-linear-gradient(top, #2e0000 4%, #ff4200 85%);
    background: -moz-linear-gradient(top, #2e0000 4%, #ff4200 85%);
    background: -o-linear-gradient(top, #2e0000 4%, #ff4200 85%);
    background: -ms-linear-gradient(top, #2e0000 4%, #ff4200 85%);
    background: linear-gradient(to bottom, #2e0000 4%, #ff4200 85%);
    color: #fff;
    padding: 10px;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.7);
}
.h-burn02 {
    background: -webkit-gradient(
        linear,
        left top,
        left bottom,
        color-stop(0.99, #f8c362),
        color-stop(0.63, #fe5f16),
        color-stop(0.5, #ff3400),
        color-stop(0.12, #290000)
    );
    background: -webkit-linear-gradient(top, #290000 12%, #ff3400 50%, #fe5f16 63%, #f8c362 99%);
    background: -moz-linear-gradient(top, #290000 12%, #ff3400 50%, #fe5f16 63%, #f8c362 99%);
    background: -o-linear-gradient(top, #290000 12%, #ff3400 50%, #fe5f16 63%, #f8c362 99%);
    background: -ms-linear-gradient(top, #290000 12%, #ff3400 50%, #fe5f16 63%, #f8c362 99%);
    background: linear-gradient(to bottom, #290000 12%, #ff3400 50%, #fe5f16 63%, #f8c362 99%);
    color: #fff;
    padding: 10px;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.7);
}
.h-lighting {
    background: -webkit-gradient(
        linear,
        left top,
        left bottom,
        color-stop(1, #fffa6e),
        color-stop(0.91, #f7f4c0),
        color-stop(0.45, #ffe45c),
        color-stop(0, #ffcb3d)
    );
    background: -webkit-linear-gradient(top, #ffcb3d 0%, #ffe45c 45%, #f7f4c0 91%, #fffa6e 100%);
    background: -moz-linear-gradient(top, #ffcb3d 0%, #ffe45c 45%, #f7f4c0 91%, #fffa6e 100%);
    background: -o-linear-gradient(top, #ffcb3d 0%, #ffe45c 45%, #f7f4c0 91%, #fffa6e 100%);
    background: -ms-linear-gradient(top, #ffcb3d 0%, #ffe45c 45%, #f7f4c0 91%, #fffa6e 100%);
    background: linear-gradient(to bottom, #ffcb3d 0%, #ffe45c 45%, #f7f4c0 91%, #fffa6e 100%);
    text-shadow:
        0 -1px 1px rgba(255, 245, 0, 0.54),
        0 1px 1px rgba(255, 154, 61, 0.45),
        0 1px 1px rgba(255, 154, 61, 0.45),
        0 1px 1px rgba(255, 154, 61, 0.45),
        0 1px 1px rgba(255, 154, 61, 0.45);
    color: #fff;
    padding: 10px;
}
.h-emboss {
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    padding: 5px 0;
    color: #686868;
    text-shadow:
        0 -1px 1px rgba(0, 0, 0, 1),
        0 -1px 1px rgba(0, 0, 0, 1),
        0 1px 1px rgba(255, 255, 255, 0.5),
        0 1px 1px rgba(255, 255, 255, 0.5);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #989898), color-stop(1, #272727));
    background: -webkit-linear-gradient(#989898, #272727);
    background: -moz-linear-gradient(#989898, #272727);
    background: -o-linear-gradient(#989898, #272727);
    background: -ms-linear-gradient(#989898, #272727);
    background: linear-gradient(#989898, #272727);
}
ul li a.locked {
    background: url(https://assets.hisshobon.jp/data/html/img/muryo/locked.svg) right 12px center/24px no-repeat;
    /* 鍵アイコン（右12px・幅24px）とテキストが重ならないよう右側に余白を確保する */
    padding-right: 44px;
}
/* ポップアップ: 共通テンプレートの幅制約から外す */
.update-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 10;
}
.update-popup_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
}
.update-popup .machine-update {
    width: calc(100vw - 40px);
    max-width: 400px;
    margin: calc(var(--header-height, 50px) + 10px) auto 10px;
    position: relative;
    z-index: 2;
}
.update-popup .machine-update ul {
    background: white;
    max-height: min(700px, calc(100dvh - 110px));
}

/* ==============================================
   機種詳細ページ固有
   ============================================== */

/* 記事タイトルヘッダー */
#header2 {
    border: 1px solid #000;
    background: linear-gradient(to top, #333, #5a5a5a);
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-shadow: 0 -1px 1px #000;
    padding: 8px 5px;
    box-sizing: border-box;
}

#headerex2 {
    background: #000;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    padding: 8px 5px;
    box-sizing: border-box;
}

/* 基本スペック表 */
.basic {
    border-collapse: collapse;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    font-size: 14px;
    line-height: 1.2em;
    width: 100%;
}
.basic td {
    border-bottom: 1px solid #000;
    border-left: 1px solid #000;
    padding: 8px 4px;
    background-color: #fff;
    text-align: right;
    vertical-align: middle;
}
.basic th {
    border-left: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 6px 4px;
    font-weight: bold;
    background-color: #000;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    font-size: 14px;
}
.basic td.center {
    text-align: center;
    vertical-align: middle;
    background-color: #e0e0e0;
    padding: 6px 4px;
    font-size: 14px;
}

/* 著作権表示 */
.machine-copyright {
    height: auto;
    line-height: 16px;
    padding: 20px;
    margin-top: 1em;
    background: rgba(0, 0, 0, 0.7);
    text-align: left;
    color: #ccc;
}
.machine-copyright p {
    margin: 0;
}
/* コピーライト表示時はフッターnav と密着させるため下余白を打ち消す。
   縦要素が少ない場合でもコピーライトを最下部へ寄せるため縦フレックス化する */
.hs--2026__content.--has-copyright {
    display: flex;
    flex-direction: column;
    padding-bottom: 0;
}
/* 縦要素が少ない時に残り領域を埋め、コピーライトを最下部へ押し下げるためのスペーサー */
.hs--2026__content.--has-copyright .machine-copyright-spacer {
    flex: 1 0 0;
}
/* content の余白を消したので、こちらも併せて消す */
.hs--2026__content .machine-copyright {
    margin-left: 0;
    margin-right: 0;
}
@media (min-width: 835px) {
    .hs--2026__content .machine-copyright {
        margin-left: 0;
        margin-right: 0;
    }
}
/* ==============================================
   看破ツール（/machine/judgement）
   ============================================== */

/* 一覧 */
.judgment {
    width: 100%;
    margin-top: 10px;
    padding: 10px;
    background-color: #fff;
    border-radius: 8px;
    box-sizing: border-box;
}

.judgment h1 {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 4px;
    font-size: 1rem;
    font-weight: bold;
    border-bottom: 2px solid #084d8f;
}

.judgment h1 img {
    width: 24px;
    margin: 0 4px 0 0;
}

.judgment_list li {
    display: block;
    width: 100%;
    padding: 10px 0 10px 16px;
    color: #333;
    font-size: 14px;
    line-height: 1.4;
    border-bottom: dotted 1px #333;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 左端カラーバー */
.judgment_list li::before {
    content: '';
    display: block;
    width: 3px;
    height: 70%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.judgment_list li.slo::before {
    background-color: #36b818;
}

.judgment_list li.pachi::before {
    background-color: #f93e3e;
}

/* S/Pラベル非表示（カラーバーで区別するため） */
.judgment_list li > span:first-child {
    display: none;
}

.judgment_list li a {
    display: inline-block;
    margin-top: 2px;
    color: #ff8800;
    font-size: 12px;
    line-height: 1.6;
    text-decoration: underline;
}

/* ページネーション */
#navi.clearfix {
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    list-style: none;
    padding: 0;
}

#navi.clearfix::after {
    content: none;
}

#navi.clearfix li {
    display: block;
    width: 48%;
    color: #cacaca;
    font-size: 14px;
    line-height: 2.9285;
    text-align: center;
    border: 1px solid #999;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
}

#navi.clearfix li a {
    display: block;
    width: 100%;
    height: 100%;
    color: #333;
    text-align: center;
    text-decoration: none;
}

#navi.clearfix li.prenone,
#navi.clearfix li.forenone {
    color: #cacaca;
}

/* フォーム（旧テンプレートインラインスタイルから移植） */
#form2 {
    background: none;
    border: none;
    color: #000;
    text-shadow: none;
    width: 100%;
    padding: 10px;
}

#form2 dl {
    text-align: right;
    margin: 0;
    padding: 0;
}

#form2 dt,
#form2 dd {
    display: inline-block;
    margin: 5px 0;
    text-align: left;
    vertical-align: middle;
}

#form2 dt {
    width: 50%;
    margin-right: 2%;
    font-size: 14px;
}

#form2 dd {
    width: 45%;
    font-size: 0.8em;
    margin: 0;
    padding: 5px 0;
}

#form2 dt.itemName {
    width: 100%;
    margin-top: 7px;
    margin-right: 0;
    background-color: #00f;
    color: #fff;
    padding: 3px 7px;
    box-sizing: border-box;
    font-weight: bold;
}

#form2 dd input {
    width: 42%;
    height: 2.5rem;
    margin: 0 2%;
    padding: 0;
    text-align: center;
    font-size: 1.2rem;
    box-sizing: border-box;
    border: 1px solid #999;
    border-radius: 4px;
}

#form2 hr {
    border-top: solid 2px #000;
    border-bottom: none;
    margin: 5px 0;
}

#form2 hr.thin {
    border-top: solid 1px #aaa;
}

/* +/- カウンターボタン */
#form2 span[class^='counter_'] {
    margin-left: 0;
    display: inline-block;
    width: 18%;
    line-height: 2.5rem;
    text-align: center;
    border-radius: 7px;
    vertical-align: top;
    font-weight: bold;
    font-size: 1rem;
}

#form2 span.counter_minus {
    background-color: #c8deff;
}

#form2 span.counter_plus {
    background-color: #ffcdcd;
    width: 34%;
}

/* 送信ボタン */
#form2 .login.button,
#form2 input[type='submit'] {
    display: block;
    width: 80%;
    margin: 20px auto;
    padding: 12px;
    background: #333;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    border: none;
    border-radius: 8px;
    cursor: pointer;
}

/* 結果ページの「入力値を変更する」ボタン */
.hs--2026__content .login.button {
    display: block;
    width: 80%;
    margin: 20px auto;
    padding: 12px;
    background-color: #111;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    line-height: 1;
    border: 0;
    border-radius: 8px;
    cursor: pointer;
    text-align: center;
}

/* ==============================================
   結果表示（旧テンプレートインラインスタイルから移植）
   ============================================== */

/* 結果ページの項目名ラベル（赤背景） */
.itemName {
    width: 100%;
    background-color: #f00;
    display: block;
    color: #fff;
    padding: 3px 7px;
    box-sizing: border-box;
}

.totalKitide {
    text-align: center;
}

.itemNone {
    display: none;
}

/* 結果テーブル */
.totalTable {
    border-collapse: collapse;
    font-size: 14px;
    margin-top: -10px;
    table-layout: fixed;
}

.totalTable td {
    padding: 3px 7px;
    border: 1px solid #333;
}

tr.settingLabel {
    background-color: #aaa;
}

.totalTable .settingLabel td {
    background: #aaa;
    color: #000;
    font-weight: bold;
    font-size: 12px;
}

.totalTable .settingPercentage td {
    background: #fff;
    font-size: 16px;
    font-weight: bold;
}

.totalTable .settingPercentage td.pickup {
    background-color: #ff0;
    color: #000;
}

/* 項目別詳細の dl レイアウト */
.acCont dl {
    margin-top: -20px;
}

.acCont dl dt,
.acCont dl dd {
    display: inline-block;
    margin: 5px 0;
    text-align: left;
    vertical-align: middle;
}

.acCont dl dt {
    width: 55%;
    margin-right: 2%;
    padding-left: 5px;
}

.acCont dl dd {
    width: 40%;
    text-align: right;
}

.acCont hr {
    border-top: solid 2px #000;
    border-bottom: none;
}

.acCont hr.thin {
    border-top: solid 1px #aaa;
}

/* アコーディオン */
.acBtn {
    position: relative;
    width: 100%;
    display: block;
    text-align: center;
    padding: 10px 0;
    background-color: #000;
    color: #fff;
    cursor: pointer;
}

.categoryArrow {
    position: absolute;
    right: 10px;
    top: 50%;
    font-size: 24px;
    margin-top: -12px;
    transition: all 0.5s ease;
}

.rotate {
    transform: rotate(-180deg);
}

.acCont {
    display: none;
}

/* ==============================================
   check.css から移植（#form2 スコープで限定）
   ============================================== */

/* 入力フィールド共通 */
#form2 input[type='tel'],
#form2 input[type='text'] {
    border: 1px solid #666;
    border-radius: 4px;
    background: linear-gradient(to bottom, #fff, #efefef);
    box-shadow: #666 1px 1px 1px inset;
    height: 2em;
}

/* チェックボックス */
#form2 input[type='checkbox'] {
    appearance: none;
    -webkit-appearance: none;
    position: relative;
    margin-right: 5px;
    border-radius: 8px;
    border: 2px solid #4c4c4c;
    box-sizing: border-box;
    width: 28px;
    height: 28px;
    background: linear-gradient(to bottom, #fdfdfd, #d1d1d1);
    vertical-align: middle;
}

#form2 input[type='checkbox']:checked {
    background: linear-gradient(to bottom, #353535, #8f8f8f);
}

#form2 input[type='checkbox']:checked::before {
    position: absolute;
    left: 1px;
    top: 17px;
    display: block;
    box-shadow: #000 0 1px 1px;
    content: '';
    width: 10px;
    height: 4px;
    background: #fff;
    transform: rotate(45deg);
    transform-origin: right center;
}

#form2 input[type='checkbox']:checked::after {
    display: block;
    position: absolute;
    left: 9px;
    top: 17px;
    content: '';
    box-shadow: #000 0 1px 1px;
    width: 19px;
    height: 4px;
    background: #fff;
    transform: rotate(-53deg);
    transform-origin: left center;
}

/* 台数入力フォーム（「設定配分を考慮する」: テンプレート item_id=4 の #form3）
   旧テンプレートの inline style では #form3 が未定義で全く効いていなかったため、
   入力フォーム（#form2）と揃えたスタイルをここへ移設する。 */
#form3 {
    width: 100%;
    text-align: right;
}

#form3 dt,
#form3 dd {
    display: inline-block;
    margin: 5px 0;
    text-align: left;
    vertical-align: middle;
}

#form3 dt {
    width: 50%;
    margin-right: 2%;
}

#form3 dd {
    width: 45%;
}

#form3 dd input {
    width: 90%;
    height: 2.5rem;
    padding: 0;
    text-align: center;
    font-size: 1.2rem;
    box-sizing: border-box;
    border: 1px solid #999;
    border-radius: 4px;
}

/* ==============================================
   機種詳細: リール全体表示メニュー（旧 list.php のインライン style を移設）
   位置・サイズの微調整は machine-details.js 側で行う。
   ============================================== */
/*全体*/
.hidden_box {
    margin: 2em 0;
    /*前後の余白*/
    padding: 0;
}
/*ﾁｪｯｸは見えなくする*/
.hidden_box input {
    display: none;
}
/*中身を非表示にしておく*/
.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    /*overflow: hidden;*/
    margin: 10px 0 0 0;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    display: none;
}
img.reel_img {
    position: fixed;
    bottom: 35px;
    right: 0;
    width: 40%;
    z-index: 2;
    filter: alpha(opacity=90);
    -moz-opacity: 0.9;
    opacity: 0.9;
}
.image_btn {
    padding: 5px 5px;
    margin: 0 5px 5px 0;
    /* font-weight: bold; */
    border: solid 3px #888;
    cursor: pointer;
    position: fixed;
    bottom: 0;
    right: 0;
    background-color: #3378fa !important;
    color: #000;
    font-weight: bold;
    opacity: 0.8;
    z-index: 10;
    border-radius: 10px;
}
/*ﾎﾞﾀﾝﾎﾊﾞｰ時*/
.image_btn:hover {
    background: #efefef;
}
.hosoku {
    position: relative;
    padding: 25px 10px 7px;
    border: solid 2px #f43636;
}
.hosoku .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 2px 9px 0px 9px;
    height: 25px;
    line-height: 25px;
    vertical-align: middle;
    font-size: 17px;
    background: #f43636;
    color: #ffffff;
    font-weight: bold;
}
td.teishikei {
    text-align: left;
    vertical-align: middle;
    background-color: #ffffff;
    padding: 6px 4px 4px 4px;
    font-size: 12px;
    width: 50%;
}
