@charset "UTF-8";
/* 主にページ遷移を伴うボタンについて取り扱う */
/**
 * レスポンシブ対応のブレイクポイント
 * タブレット：max-width: 960px
 * スマートフォン：max-width: 576px
*/

.default-submit-button {
    display: inline-block;
    border-radius: 5px; /* 角丸       */
    text-align: center; /* 文字位置   */
    cursor: pointer; /* カーソル   */
    padding: 15px 12px; /* 余白       */
    background: #e70012; /* 背景色     */
    color: #ffffff; /* 文字色     */
    line-height: 1em; /* 1行の高さ  */
    transition: .3s; /* なめらか変化 */
    /*box-shadow: 1px 1px 3px #666666; !* 影の設定 *!*/
    border: 2px solid #e70012; /* 枠の指定 */
    max-width: 340px;
    width: 100%;
    font-family: "Noto Sans JP", sans-serif;
    @media (max-width: 1020px) {
        max-width: initial;
    }

    &:hover {
        box-shadow: none; /* カーソル時の影消去 */
        color: #e70012; /* 背景色     */
        background: #ffffff; /* 文字色     */
    }
}

.default-submit-button:hover path {
    fill: #e70012;
}

.free-search-icon:hover path {
    fill: #e70012;
}


.freetext-button {
    display: inline-block;
    border-radius: 5px; /* 角丸       */
    text-align: center; /* 文字位置   */
    cursor: pointer; /* カーソル   */
    padding: 12px 12px; /* 余白       */
    background: #182d7c; /* 背景色     */
    color: #ffffff; /* 文字色     */
    line-height: 1em; /* 1行の高さ  */
    transition: .3s; /* なめらか変化 */
    box-shadow: 1px 1px 3px #666666; /* 影の設定 */
    border: 2px solid #182d7c; /* 枠の指定 */
    height: 48px;

    &:hover {
        box-shadow: none; /* カーソル時の影消去 */
        color: #182d7c; /* 背景色     */
        background: #ffffff; /* 文字色     */
    }

}

#purchaseBtn {
    background: #E70012;
    border: 2px solid #e70012; /* 枠の指定 */
    border-radius: 5px;
    color: #fff;
    display: block;
    font-weight: bold;
    height: 60px;
    line-height: 30px;
    margin: 15px auto 0;
    padding: 14px;
    text-align: center;
    text-decoration: none;
    vertical-align: middle !important;
    width: 250px;
    cursor: pointer;
    transition: .3s; /* なめらか変化 */
    font-family: 'Noto Sans JP';

    &:hover {
        box-shadow: none; /* カーソル時の影消去 */
        color: #e70012; /* 背景色     */
        background: #ffffff; /* 文字色     */
    }
}

.cart-disabled {
    opacity: 0.3;
    box-shadow: none;
    pointer-events: none;
}

.to_top {
    display: block;
    background: #EAEAEA;
    color: #333;
    text-decoration: none !important;
    border-radius: 5px;
    border: 2px solid #EAEAEA;
    width: 180px;
    height: 70px;
    transition: background 0.3s;
    line-height: 70px;
    text-align: center;
    margin: 40px auto 0;
    position: relative;
    font-weight: bold;

    &:hover {
        box-shadow: none; /* カーソル時の影消去 */
        color: #333;
        background: #fff;
        border: 2px solid #666;
        opacity: 1;
    }
}


.to_search {
    display: block;
    background: #EAEAEA;
    color: #333333;
    text-decoration: none !important;
    border-radius: 5px;
    border: 2px solid #EAEAEA;
    width: 250px;
    height: 60px;
    transition: background 0.3s;
    line-height: 55px;
    text-align: center;
    margin: 0 auto 80px;
    position: relative;
    font-weight: bold;

    &:hover {
        box-shadow: none; /* カーソル時の影消去 */
        border: 2px solid #666666;
        color: #333333;
        background: none;
    }
}

.no-session-btn {
    background: #E70012;
    border: 2px solid #e70012; /* 枠の指定 */
    border-radius: 8px;
    color: #fff;
    height: 60px;
    width: 250px;
    display: block;
    font-weight: bold;
    line-height: 30px;
    margin: 70px auto 0;
    padding: 0;
    text-align: center;
    align-content: center;
    text-decoration: none;
    vertical-align: middle !important;
    cursor: pointer;
    transition: .3s; /* なめらか変化 */
    font-family: 'Noto Sans JP';

    &:hover {
        box-shadow: none; /* カーソル時の影消去 */
        color: #e70012; /* 背景色     */
        background: #ffffff; /* 文字色     */
    }
}

#next_btn {
    background: #E70012;
    border: 2px solid #e70012; /* 枠の指定 */
    border-radius: 5px;
    color: #fff;
    display: block;
    font-weight: bold;
    height: 70px;
    /*line-height: 70px;*/
    margin: 0 20px 0 0;
    padding: 0;
    text-decoration: none !important;
    width: 340px;
    transition: .3s;
    cursor: pointer;
    font-family: 'Noto Sans JP';

    &:hover {
        box-shadow: none; /* カーソル時の影消去 */
        color: #e70012; /* 背景色     */
        background: #ffffff; /* 文字色     */
    }
}


.back_btn_sp {
    display: none;
}

/*戻るボタンの修正*/
#back_btn {
    display: inline-block;
    color: #333;
    border-radius: 5px;
    border: 2px solid #EAEAEA;
    background: #EAEAEA;
    transition: background 0.3s;
    font-weight: bold;
    cursor: pointer;
    width: 180px;
    height: 70px;
    /*line-height: 70px;*/
    font-family: "Noto Sans JP", sans-serif;

    &:hover {
        box-shadow: none; /* カーソル時の影消去 */
        color: #333333;
        background: none;
        border: 2px solid #666;
    }
}
/*#back_btn:hover {*/
/*    opacity: .7;*/
/*    text-decoration: none;*/
/*}*/

#form_btn {
    text-align: center;
    color: #333333;
}

.keyword-container {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-flow: row wrap;
}
/*.keyword-container .keyword-container_console, .keyword-container .keyword-container_soft {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-flow: row wrap;
    margin-bottom: 8px;
}*/
.keyword-container .keyword-button {
    padding: 7px 11px;
    border-radius: 5px;
    background: #DFDFDF;
    border: none;
    color: #333333;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 13px;

    &:hover {
        display: inline-block;
        cursor: pointer;
        background: #e70012; /* 背景色     */
        color: #ffffff; /* 文字色     */
        transition: .3s; /* なめらか変化 */
    }
}

#form_btn .back_next_btn {
    display: flex;
    justify-content: center;
}

#form_btn .back_next_btn .back {
    width: 180px;
    height: 70px;
    line-height: 70px;
    border-radius: 5px;
    margin: 0 20px 0 0;
}

@media screen and (max-width: 576px) {
    #form_btn .back_next_btn {
        display: block;
    }

    #form_btn .back_next_btn .back {
        max-width: 340px;
        width: auto;
        margin: 20px auto 0;
    }

    #back_btn {
        display: block;
        width: 340px;
    }

    .back_btn_pc {
        display: none;
    }

    .back_btn_sp {
        display: inline-block;
        width: 340px;
    }

    #form_btn .back_next_btn .next {
        max-width: 340px;
        width: auto;
        margin: 20px auto 0;
    }

    #next-btn {
        display: block;
        width: 100%;
    }
}
