/* CSS information ===================================================

	file name  : style.31ice_202603.css
    
	style info : 
    frame.31ice_202603.html

    siteid：31ice

	ブレイクポイント：750px 固定

    最小スケール修正：75px　750/75＝10.00

    ※31アイス様 202603 2026年ダブルで満開キャンペーン 専用

=================================================================== */

@charset "UTF-8";

/* ===================================================================

    カラーバリエーション

=================================================================== */

/* 強制的にライトモード表示にする */

:root {
    color-scheme: light;
}

/* 背景色指定 */

.bgcolor01 {
    background-color: #f06a84;
}

.bgcolor02 {
    background-color: #d72828;
}

.bgcolor03 {
    background-color: #f57e00;
}

.bgcolor04 {
    background-color: #FFDE00;
}

.bgcolor05 {
    background-color: #04135D;
}

.bgcolor06 {
    background-color: #f21f92;
}

/* 罫線色指定 */

.linecolor01 {
    border-color: #422100;
}

.linecolor02 {
    border-color: #d72828;
}

.linecolor03 {
    border-color: #f57e00;
}

.linecolor04 {
    border-color: #fcc14a;
}

.linecolor05 {
    border-color: #eae3b8;
}

/* ボタンホバー処理  */
a.bgcolor02:hover,
a.bgcolor03:hover,
a.sns_line:hover,
a.sns_facebook:hover,
a.back_btn:hover {
    background-color: #002e47 !important;
}

button.bgcolor02:hover,
button.bgcolor03:hover,
button.back_btn:hover {
    background-color: #002e47 !important;
}

button.bgcolor06:hover {
    background-color: #001d9c !important;
}

.openbtn:hover {
    background-color: #002e47 !important;
}


/* ===================================================================

    frame.html

=================================================================== */

/* 制限なし */

* {
    max-width: 100%;

    /* UA 打消し */
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    padding-inline-start: 0;
}

html {
    scroll-behavior: smooth;
    height: 100%;
    font-size: clamp(2.4px, 3.2vw, 24px);
    font-family: "source-han-sans-japanese", "Arial Black", sans-serif;
}

body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: auto;
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #ffcad9;
}

div#page {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: auto;
    min-height: calc((var(--vh) * 100) - 3.3333rem);
    max-width: 750px;
    background-color: #b2eff9;
}

button {
    border: none;
    outline: none;
    background: transparent;
    padding: 0;
    cursor: pointer;
    line-height: 0;
}

/*========= ページトップ ===============*/

/*リンクの形状*/
#page-top a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f06a84;
    border: 1px solid #ffffff;
    border-radius: 0.20833rem;
    width: 2.5rem;
    height: 2.5rem;
    color: #ffffff;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 0.7rem;
    transition: all 0.3s;
    line-height: normal;
}

#page-top a:hover {
    background: #ffffff;
    color: #f06a84;
    border: 1px solid #f06a84;
}

/*リンクを右下に固定*/
#page-top {
    position: fixed;
    right: 0.4166rem;
    bottom: 0.4166rem;
    z-index: 20;
    /*はじめは非表示*/
    opacity: 0;
    transform: translateY(4.1666rem);
}

/*　上に上がる動き　*/
#page-top.UpMove {
    animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime {
    from {
        opacity: 0;
        transform: translateY(4.1666rem);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/*　下に下がる動き　*/
#page-top.DownMove {
    animation: DownAnime 0.5s forwards;
}

@keyframes DownAnime {
    from {
        opacity: 1;
        transform: translateY(0);
    }

    to {
        opacity: 1;
        transform: translateY(4.1666rem);
    }
}

/*========= ヘッダー ===============*/

div#header {
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: 100%;
    height: auto;
    background: #fff;
}

/* キャンペーン期間外メッセージ */
div#header .camp_error {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    padding: 0.833rem;
    /* 20px */
    color: #ffffff;
    font-weight: bold;
    text-align: justify;
    word-break: break-all;
}

/* エラー表示 */
div#header .error_box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    padding: 0.833rem;
    /* 20px */
}

div#header .error_box dl.error {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: auto;
    margin: inherit;
    font-weight: bold;
    border: 0.20833rem solid;
    border-radius: 0.3333rem;
    border-color: #ff0000;
}

div#header .error_box dl.error dt {
    display: inline-flex;
    flex-direction: row;
    text-align: justify;
    justify-content: center;
    align-items: center;
    color: #ffffff;
    background: #ff0000;
    width: 100%;
    height: auto;
    padding-bottom: 0.20833rem;
}

div#header .error_box dl.error dt img {
    width: auto;
    height: 1.0rem;
    /* 24px */
    padding-right: 0.5rem;
    /* 24px */
}

div#header .error_box dd {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: justify;
    word-break: break-all;
    margin: 0.5rem 0;
    /* 12px 0 */
    padding: 0 0.5rem;
    /* 0 12px */
}

div#header .error_box dd ul {
    padding-inline-start: 1.66rem;
    /* 40px */
}

div#header .error_box dd ul li.err {
    color: #ff0000;
}

/* 幅750px以上に適用されるCSS（PCサイズ以上） */
@media screen and (min-width:750px) {}

/*========= メインコンテンツ（wrapper） ===============*/

div#wrapper {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100%;
    flex: 1;
}

div#wrapper .notice_box {
    width: calc(100% - 1.666rem);
    height: auto;
    margin: 0.833rem 0;
    /* 20px 0 */
    padding: 0.5rem;
    /* 12px */
    background: #ffffff;
    border: 0.20833rem solid #ff0000;
}

div#wrapper .notice_box dl.notice {
    width: 100%;
    height: auto;
}

div#wrapper .notice_box dl.notice dt {
    font-size: 1.25rem;
    font-weight: bolder;
}


/* 幅750px以上に適用されるCSS（PCサイズ以上） */
@media screen and (min-width:750px) {}

/*========= フッター ===============*/

div#footer {
    width: 100%;
    max-width: 750px;
    background-color: #19afaa;
    color: #ffffff;
}

div#footer .flexbox {
    display: flex;
    width: calc(100% - 3.3333rem);
    height: 3.3333rem;
    padding: 0.4166rem;
    align-items: center;
    line-height: normal
}

div#footer .flexbox ul {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    justify-content: center;
}

div#footer .flexbox ul li {
    word-break: break-word;
    list-style: none;
}

/* 幅750px以上に適用されるCSS（PCサイズ以上） */
@media screen and (min-width:750px) {

    #page-top {
        right: calc(100vw / 2 - 750px / 2);
    }

}

/* ==== index.html ここから ==== */
/* item_contents */
div#content.other.index .logout_error {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.other.index .logout_error_text {
    width: 29.166rem;
    /* 700px */
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 2.083rem;
    /* 50px */
}

div#content.other.index .logout_error_text h2 {
    width: 100%;
    height: auto;
    text-align: justify;
    word-break: break-all;
    background: #ffffff;
    color: #774637;
    font-size: 1.5rem;
    /* 36px */
    font-weight: bold;
    border-radius: 0.3333rem;
    display: block;
    padding: 0.75rem;
    /* 18px */
}

div#content.other.index .logout_error_text .comment {
    width: 23.4166rem;
    height: auto;
    text-align: justify;
    word-break: break-all;
    color: #774637;
    font-weight: bold;
    margin-top: 1.0rem;
    padding: 0.5rem 0;
    text-shadow: 0.0416666666666667rem 0.0416666666666667rem 0.0416666666666667rem #ffffff;
}

div#content.other.index .logout_error_text .copy_value_box {
    text-align: justify;
    word-break: break-all;
    color: #774637;
    font-size: 1.25rem;
    /* 30px */
    font-weight: bold;
    border: 0.125rem solid #774637;
    border-radius: 0.3333rem;
    margin-top: 3.54166rem;
    padding: 0.5rem;
    /* 12px */
    text-shadow: 0.0416666666666667rem 0.0416666666666667rem 0.0416666666666667rem #ffffff;
}

/* clipboard.js 制御 */
div#content.other.index .logout_error_text .copy-value {
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Tooltip */
div#content.other.index .logout_error_text .copy-value.tooltip::after {
    content: 'コピーしました';
    background: #774637;
    display: inline-block;
    color: #ffffff;
    border-radius: 0.3333rem;
    position: absolute;
    font-size: 1.0rem;
    /* 24px */
    padding: 0.5rem;
    /* 12px */
    animation: fade-tooltip .5s 1s 1 forwards;
    white-space: nowrap;
}

/* footer_box */
div#content.other.index .footer_box001 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/369 auto;
    position: relative;
    z-index: 0;
    overflow: hidden;
    display: block;
}

div#content.other.index .footer_box001 .footer_btn {
    width: 100%;
    height: auto;
    aspect-ratio: 750/72 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 2.75rem;
    /* 66/24 */
}

div#content.other.index .footer_box001 .footer_btn a {
    width: 20.91666666666667rem;
    height: auto;
    aspect-ratio: 502/72 auto;
    display: block;
    cursor: pointer;
}

/* ==== index.html ここまで ==== */

/* ==== member_top.html ここから ==== */

/* ==== アニメーション設定 ここから ==== */

div#content.member_top {
    line-height: 0;
}

div#content.member_top .inview {
    transition: 1.0s all;
    opacity: 0;
    position: relative;
    top: 1.25rem;
}

div#content.member_top .inview.effect {
    opacity: 1;
    top: 0;
}


div#content.member_top .front01 {
    animation: fade-in 1s;
    animation-fill-mode: forwards;
}

div#content.member_top .front02 {
    animation: fade-in 2.5s;
    animation-fill-mode: forwards;
}

div#content.member_top .front03 {
    animation: fade-in 4s;
    animation-fill-mode: forwards;
}

@keyframes fade-in {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

/* ==== アニメーション設定 ここまで ==== */

div#content.member_top .content_item {
    width: 100%;
    height: auto;
    overflow: hidden;
}

/* item_contents */
div#content.member_top .item_contents {
    width: 100%;
    height: auto;
    display: block;
}

/* item_contents_item001 */
div#content.member_top .item_contents .item_contents_item001 {
    width: 100%;
    height: auto;
    display: block;
}

/* item_contents_item001 : item001_before 満開前 */
div#content.member_top .item_contents .item_contents_item001 .item001_before {
    width: 100%;
    height: auto;
    aspect-ratio: 750/2001 auto;
    position: relative;
    z-index: 1;
    display: block;
}

/* item_contents_item001 : item001_before_sakura */
div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_sakura {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1954 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_sakura .sakura_bud,
div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_sakura .sakura_one-third,
div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_sakura .sakura_half {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1954 auto;
    display: block;
}

/* item_contents_item001 : item001_before_base */
div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_base {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1954 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_base .before_base001 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/334 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_base .before_base002 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/382 auto;
    display: block;
    margin-top: 5.916666666666667rem;
    /* 142/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_base .before_base003 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/628 auto;
    display: block;
    margin-top: 15.75rem;
    /* 378/24 */
}

/* item_contents_item001 : item001_before_text */
div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_text {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1954 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_text .before_account {
    width: 100%;
    height: auto;
    aspect-ratio: 750/34 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1.25rem;
    /* 30/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_text .before_account .account_id {
    font-size: 1.0rem;
    color: #727171;
    font-weight: bold;
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_text .before_current {
    width: 100%;
    height: auto;
    aspect-ratio: 750/92 auto;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-top: 24.25rem;
    /* 582/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_text .before_current .current_point {
    font-size: 3.75rem;
    /* 90/24 */
    color: #f06a84;
    font-weight: bold;
    margin-right: 8.25rem;
    /* 198/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_text .later_current {
    width: 100%;
    height: auto;
    aspect-ratio: 750/54 auto;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-top: 2.416666666666667rem;
    /* 58/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_text .later_current .later_point {
    font-size: 1.75rem;
    /* 42/24 */
    color: #f06a84;
    font-weight: bold;
    margin-right: 7.916666666666667rem;
    /* 190/24 */
}

/* item_contents_item001 : item001_before_cover */
div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_cover {
    width: 100%;
    height: auto;
    aspect-ratio: 750/2001 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    display: block;
}

/* item_contents_item001 : item001_before_button */
div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_button {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1954 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 6;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_button .user_challenge {
    width: 100%;
    height: auto;
    aspect-ratio: 750/200 auto;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-top: 41.66666666666667rem;
    /* 1000/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_before .item001_before_button .user_challenge a {
    width: 8.333333333333333rem;
    height: auto;
    aspect-ratio: 200/200 auto;
    display: block;
    cursor: pointer;
    margin-left: 1.25rem;
    /* 30/24 */
}

/* item_contents_item001 : item001_after 満開後 */
div#content.member_top .item_contents .item_contents_item001 .item001_after {
    width: 100%;
    height: auto;
    aspect-ratio: 750/2091 auto;
    position: relative;
    z-index: 1;
    display: block;
}

/* item_contents_item001 : item001_after_sakura */
div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_sakura {
    width: 100%;
    height: auto;
    aspect-ratio: 750/2041 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: block;
}

/* item_contents_item001 : item001_after_base */
div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_base {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1954 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_base .after_base001 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/334 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_base .after_base002 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/450 auto;
    display: block;
    margin-top: 4.375rem;
    /* 105/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_base .after_base003 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/718 auto;
    display: block;
    margin-top: 14.25rem;
    /* 342/24 */
}

/* item_contents_item001 : item001_after_text */
div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_text {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1954 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_text .after_account {
    width: 100%;
    height: auto;
    aspect-ratio: 750/34 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1.208333333333333rem;
    /* 29/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_text .after_account .account_id {
    font-size: 1.0rem;
    color: #727171;
    font-weight: bold;
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_text .after_current {
    width: 100%;
    height: auto;
    aspect-ratio: 750/92 auto;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-top: 22.75rem;
    /* 546/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_text .after_current .current_point {
    font-size: 3.333333333333333rem;
    /* 80/24 */
    color: #f06a84;
    font-weight: bold;
    margin-right: 7.5rem;
    /* 180/24 */
}

/* item_contents_item001 : item001_after_cover */
div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_cover {
    width: 100%;
    height: auto;
    aspect-ratio: 750/2091 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    display: block;
}

/* item_contents_item001 : item001_after_button */
div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1954 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 6;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button .complete_button_top {
    width: 100%;
    height: auto;
    aspect-ratio: 750/88 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 32.58333333333333rem;
    /* 782/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button .complete_button_top .complete_button_top_before,
div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button .complete_button_top .complete_button_top_after {
    width: 18rem;
    height: auto;
    aspect-ratio: 432/88 auto;
    display: block;
    position: absolute;
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button .complete_button_top .complete_button_top_before button {
    width: 18rem;
    height: auto;
    aspect-ratio: 432/88 auto;
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button .user_challenge {
    width: 100%;
    height: auto;
    aspect-ratio: 750/200 auto;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-top: 5.25rem;
    /* 126/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button .user_challenge a {
    width: 8.333333333333333rem;
    height: auto;
    aspect-ratio: 200/200 auto;
    display: block;
    cursor: pointer;
    margin-left: 1.25rem;
    /* 30/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button .complete_button_bottom {
    width: 100%;
    height: auto;
    aspect-ratio: 750/76 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 26.83333333333333rem;
    /* 644/24 */
}

div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button .complete_button_bottom .complete_button_bottom_before,
div#content.member_top .item_contents .item_contents_item001 .item001_after .item001_after_button .complete_button_bottom .complete_button_bottom_after {
    width: 21.16666666666667rem;
    height: auto;
    aspect-ratio: 508/76 auto;
    display: block;
    position: absolute;
}


/* item_contents_item002 */
div#content.member_top .item_contents .item_contents_item002 {
    width: 100%;
    height: auto;
    display: block;
    background-image: url(../../../pc/img/31ice/202603/31ice_202603_item002_bg001.png);
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
    margin-top: -2.041666666666667rem;
    /* -49/24 */
}

/* item_contents_item002 : item002_user_point */
div#content.member_top .item_contents .item_contents_item002 .item002_user_point {
    width: 100%;
    height: auto;
    aspect-ratio: 750/263 auto;
    position: relative;
    z-index: 0;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_point .user_point_base {
    width: 100%;
    height: auto;
    aspect-ratio: 750/263 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_point .user_point_text {
    width: 100%;
    height: auto;
    aspect-ratio: 750/110 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-top: 6.291666666666667rem;
    /* 151/24 */
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_point .user_point_text .user_point_point {
    font-size: 3.00rem;
    /* 72/24 */
    color: #f06a84;
    font-weight: bold;
    margin-right: 7.75rem;
    /* 186/24 */
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_point .user_point_cover {
    width: 100%;
    height: auto;
    aspect-ratio: 750/124 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    display: block;
}

/* item_contents_item002 : item002_user_prize */
div#content.member_top .item_contents .item_contents_item002 .item002_user_prize {
    width: 100%;
    height: auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point1,
div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point2,
div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point3 {
    width: 100%;
    height: auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point1 .prize_point1_before {
    width: 100%;
    height: auto;
    aspect-ratio: 750/154 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point1 .prize_point1_after {
    width: 100%;
    height: auto;
    aspect-ratio: 750/257 auto;
    position: relative;
    z-index: 0;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point1 .prize_point1_after .point1_button {
    width: 100%;
    height: auto;
    aspect-ratio: 750/76 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 5.958333333333333rem;
    /* 143/24 */
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point1 .prize_point1_after .point1_button .point1_button_before,
div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point1 .prize_point1_after .point1_button .point1_button_after {
    width: 21.16666666666667rem;
    height: auto;
    aspect-ratio: 508/76 auto;
    display: block;
    position: absolute;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point3 .prize_point3_before {
    width: 100%;
    height: auto;
    aspect-ratio: 750/138 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point3 .prize_point3_after {
    width: 100%;
    height: auto;
    aspect-ratio: 750/240 auto;
    position: relative;
    z-index: 0;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point3 .prize_point3_after .point3_button {
    width: 100%;
    height: auto;
    aspect-ratio: 750/76 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 5.375rem;
    /* 129/24 */
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point3 .prize_point3_after .point3_button .point3_button_before,
div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point3 .prize_point3_after .point3_button .point3_button_after {
    width: 21.16666666666667rem;
    height: auto;
    aspect-ratio: 508/76 auto;
    display: block;
    position: absolute;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point5 .prize_point5_before {
    width: 100%;
    height: auto;
    aspect-ratio: 750/184 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point5 .prize_point5_after {
    width: 100%;
    height: auto;
    aspect-ratio: 750/269 auto;
    position: relative;
    z-index: 0;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point5 .prize_point5_after .point5_button {
    width: 100%;
    height: auto;
    aspect-ratio: 750/76 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 5.375rem;
    /* 129/24 */
}

div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point5 .prize_point5_after .point5_button .point5_button_before,
div#content.member_top .item_contents .item_contents_item002 .item002_user_prize .user_prize_point5 .prize_point5_after .point5_button .point5_button_after {
    width: 21.16666666666667rem;
    height: auto;
    aspect-ratio: 508/76 auto;
    display: block;
    position: absolute;
}


/* item_contents_item003 */
div#content.member_top .item_contents .item_contents_item003 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1073 auto;
    position: relative;
    z-index: 0;
    display: block;
}

/* item_contents_item003 : item003_base */
div#content.member_top .item_contents .item_contents_item003 .item003_base {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1073 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
}

/* item_contents_item003 : item003_cover */
div#content.member_top .item_contents .item_contents_item003 .item003_cover {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1073 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    display: block;
}

/* item_contents_item003 : item003_text */
div#content.member_top .item_contents .item_contents_item003 .item003_text {
    width: 100%;
    height: auto;
    aspect-ratio: 750/692 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 8.333333333333333rem;
    /* 200/24 */
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents {
    width: 27.5rem;
    height: 28.83333333333333rem;
    aspect-ratio: 660/692 auto;
    display: block;
    overflow-y: scroll;
    padding: 0.5rem;
}

/* item_contents_item003 : 組込み書式 */
div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text {
    line-height: normal;
    text-align: justify;
    word-break: break-all;
    color: #774637;
    font-size: 1.0rem;
    font-weight: bolder;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text h2 {
    line-height: normal;
    padding-bottom: 0.3333333333333333rem;
    font-size: 1.25rem;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text h3 {
    line-height: normal;
    padding-top: 1.25rem;
    padding-bottom: 0.3333333333333333rem;
    font-size: 1.125rem;
    font-weight: bold;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text h3.under_line {
    padding-top: 1.0rem;
    text-decoration: underline;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text span.bold {
    font-weight: bold;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text span.underline {
    text-decoration: underline;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text ul li {
    padding-top: 0.3333333333333333rem;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text ul.disc {
    list-style: disc;
    padding-left: 1.333333333333333rem;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text ul.nakaguro {
    list-style: circle;
    padding-left: 2.666666666666667rem;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text ul.example {
    margin-left: 1.333333333333333rem;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text ul.example li {
    text-indent: -1.333333333333333rem;
    list-style: none;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text ul.example li::before {
    content: "※";
    margin-right: 0.3333333333333333rem;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_text a {
    color: #774637;
}

div#content.member_top .item_contents .item_contents_item003 .item003_text .item003_text_contents .overview_border {
    width: 100%;
    height: auto;
    margin: 1.5rem 0;
    border-bottom: 0.125rem dashed #774637;
}

/* footer_box */
div#content.member_top .footer_box001 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/369 auto;
    position: relative;
    z-index: 0;
    overflow: hidden;
    display: block;
}

div#content.member_top .footer_box001 .footer_btn {
    width: 100%;
    height: auto;
    aspect-ratio: 750/72 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 2.75rem;
    /* 66/24 */
}

div#content.member_top .footer_box001 .footer_btn a {
    width: 20.91666666666667rem;
    height: auto;
    aspect-ratio: 502/72 auto;
    display: block;
    cursor: pointer;
}

/* 幅750px以上に適用されるCSS（PCサイズ以上） */

@media screen and (min-width:750px) {}

/* ==== member_top.html ここまで ==== */

/* ==== other ここから ==== */
div#content.other {
    width: 100%;
    height: auto;
    min-height: calc(100vh - 3.3333rem);
    min-height: calc(100dvh - 3.3333rem);
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    background-image: url(../../img/31ice/202603/31ice_202603_other_bg001.png);
    background-position: top center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* ==== アニメーション設定 ここから ==== */
div#content.other .inview {
    transition: 1.0s all;
    opacity: 0;
    position: relative;
    top: 1.25rem;
}

div#content.other .inview.effect {
    opacity: 1;
    top: 0;
}

/* 幅750px以上に適用されるCSS（PCサイズ以上） */

@media screen and (min-width:750px) {}

/* ==== other ここまで ==== */

/* ==== specify_hand1(wallpaper) ここから ==== */

/* item_contents */
div#content.other.wallpaper .item_contents {
    width: 100%;
    height: auto;
    display: block;
}

/* item_contents : hand_specify_box */
div#content.other.wallpaper .item_contents .hand_specify_box {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 2.75rem;
}

div#content.other.wallpaper .item_contents .hand_specify_box:last-child {
    margin-bottom: 2.75rem;
}


div#content.other.wallpaper .item_contents .hand_specify_box .hand_specify_title {
    width: 100%;
    height: auto;
    display: block;
}

div#content.other.wallpaper .item_contents .hand_specify_box .hand_specify_text {
    width: 22.91666666666667rem;
    height: auto;
    font-size: 1.0rem;
    font-weight: bold;
    color: #774637;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 0.5rem;
    text-shadow: 0.0416666666666667rem 0.0416666666666667rem 0.0416666666666667rem #ffffff;
}

div#content.other.wallpaper .item_contents .hand_specify_box .hand_specify_text div {
    width: auto;
    height: auto;
    text-align: justify;
    word-break: break-all;
}

/* item_contents : hand_prize_box */
div#content.other.wallpaper .item_contents .hand_prize_box {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 2.75rem;
}

div#content.other.wallpaper .item_contents .hand_prize_box .hand_prize {
    width: 22.91666666666667rem;
    /* 500/24 */
    height: auto;
    margin-top: 1.5rem;
    /* 36/24 */
}

div#content.other.wallpaper .item_contents .hand_prize_box .hand_prize img {
    width: 100%;
    height: auto;
}

/* footer_box */
div#content.other.wallpaper .footer_box002 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/477 auto;
    position: relative;
    z-index: 0;
    overflow: hidden;
    display: block;
}

div#content.other.wallpaper .footer_box002 .footer_btn {
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    margin-top: 2.333333333333333rem;
    /* 56/24 */
}

div#content.other.wallpaper .footer_box002 .footer_btn .contact_btn,
div#content.other.wallpaper .footer_box002 .footer_btn .membertop_btn {
    width: 100%;
    height: auto;
    aspect-ratio: 750/72 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.other.wallpaper .footer_box002 .footer_btn .membertop_btn {
    margin-top: 1.5rem;
    /* 36/24 */
}

div#content.other.wallpaper .footer_box002 .footer_btn .contact_btn a,
div#content.other.wallpaper .footer_box002 .footer_btn .membertop_btn a {
    width: 20.91666666666667rem;
    height: auto;
    aspect-ratio: 502/72 auto;
    display: block;
    cursor: pointer;
}

/* 幅750px以上に適用されるCSS（PCサイズ以上） */

@media screen and (min-width:750px) {}

/* ==== specify_hand1(wallpaper)  ここまで ==== */

/* ==== specify_coupon1 (productcode_area) ここから ==== */

div#content.other.coupon .productcode_area {
    width: 100%;
    height: auto;
    background-image: url(../../img/31ice/202509/31ice_202509_specify_bg001.png);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* item_contents */
div#content.other.coupon .productcode_area .item_contents {
    width: 100%;
    height: auto;
    display: block;
}

/* item_contents : form */
div#content.other.coupon .productcode_area .item_contents form {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* item_contents : productcode_image_box */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_image_box {
    width: 22.9166rem;
    height: auto;
    aspect-ratio: 550/550;
    display: block;
    margin-top: 3.66rem;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_image_box img {
    width: 100%;
    height: auto;
}

/* item_contents : productcode_specify_box */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_specify_box {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 3.33rem;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_specify_box .specify_title {
    width: 100%;
    height: auto;
    display: block;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_specify_box .specify_text {
    width: 23.4166rem;
    height: auto;
    font-size: 1.0rem;
    font-weight: bold;
    color: #07219b;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 0.5rem;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_specify_box .specify_text div {
    width: auto;
    height: auto;
    text-align: justify;
    word-break: break-all;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_specify_box .specify_text div span {
    color: #d72828;
    padding: 0 0.25rem;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_specify_box .specify_item {
    width: 23.4166rem;
    height: auto;
    display: block;
    margin-top: 0.5rem;
}


/* item_contents : table */
/* UA 打消し*/
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table tbody,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table tbody tr,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table tbody tr th,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table tbody tr td {
    border: 0;
    border-spacing: 0;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table tbody tr td ul {
    list-style: none;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table tbody tr td ul li.disc {
    list-style: disc;
    margin-inline-start: 1.66rem;
    /* 40px */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common {
    width: 25.833rem;
    height: auto;
    display: block;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common {
    margin-top: 1.0rem;
    /* 24px */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    border: 1px solid #07219b;
    border-radius: 0.5rem;
    padding: 0.5rem;
    background: rgba(255, 255, 255, 0.9);

}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr:not(:first-child) {
    margin-top: 1.0rem;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr th {
    width: 100%;
    height: auto;
    display: flex;
    font-size: 1.25rem;
    /* 30px */
    padding: 0.5rem;
    /* 12px */
    color: #07219b;
    border-bottom: 1px solid #07219b;
    text-align: justify;
    word-break: break-all;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr th.hissu::after {
    content: "必須";
    background-color: rgb(215, 40, 40);
    color: rgb(255, 255, 255);
    width: auto;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 1.0rem;
    /* 24px */
    padding: 0.25rem;
    /* 6px */
    border-radius: 0.20833rem;
    margin-left: 0.5rem;
    /* 12px */
    white-space: nowrap;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr th.nini::after {
    content: "任意";
    background-color: rgb(105, 105, 105);
    color: rgb(255, 255, 255);
    width: auto;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 1.0rem;
    /* 24px */
    padding: 0.25rem;
    /* 6px */
    border-radius: 0.20833rem;
    margin-left: 0.5rem;
    /* 12px */
    white-space: nowrap;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td {
    width: 100%;
    height: auto;
    min-height: 2.5rem;
    /* 60px */
    display: flex;
    flex-direction: column;
    font-size: 1.0rem;
    /* 24px */
    color: #07219b;
    padding: 0.5rem;
    /* 12px */
    text-align: justify;
    word-break: break-all;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td.error {
    background: #ffd9e1;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td.error .error {
    color: #d72828;
    font-weight: bold;
    font-size: 1.25rem;
    /* 30px */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td input[type="text"],
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td input[type="email"],
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td input[type="password"],
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td select.dropdown {
    width: 100%;
    height: auto;
    font-size: 1.0rem;
    /* 24px */
    padding: 0.5rem;
    /* 12px */
    text-align: justify;
    word-break: break-all;
    color: #494949;
}

/* name_box */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.family_name,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.first_name {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    flex-direction: row;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.first_name {
    margin-top: 0.5rem;
    /* 12px */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.family_name span,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.first_name span {
    width: 2.66rem;
    /* 64px */
    height: auto;
    display: flex;
    justify-content: center;
    margin-right: 0.5rem;
    /* 12px */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.family_name input,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.first_name input {
    width: calc(100% - 2.66rem - 0.5rem);
    height: auto;
}

/* zip_box */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.zip_box {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.zip_box li.zip_input {
    width: calc(100% - (6.0rem + 0.5rem));
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.zip_box li.zip_input span {
    width: 2.0rem;
    /* 48px */
    height: auto;
    display: flex;
    justify-content: center;
    margin-right: 0.5rem;
    /* 12px */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.zip_box li.zip_input input {
    width: calc(100% - (2.0rem + 0.5rem));
    height: auto;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.zip_box li.zip_button input.btn_zip {
    width: 6.0rem;
    /* 144px */
    height: 2.5rem;
    /* 60px */
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: #d72828;
    border-radius: 0.20833rem;
    padding: 0.25rem;
    /* 6px */
    margin-left: 0.5rem;
    /* 12px */
    color: #ffffff;
    font-weight: bold;
    cursor: pointer;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.zip_box li.zip_button input.btn_zip:hover {
    background-color: #DF2228;
}

/* birthday_box */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.birthday_box {
    display: flex;
    flex-direction: row;
    align-items: center;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.birthday_box li {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.birthday_box li.birthday_year select {
    width: 5rem;
    /* 120px */
    height: auto;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.birthday_box li.birthday_month select,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.birthday_box li.birthday_day select {
    width: 4rem;
    /* 96px */
    height: auto;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.birthday_box li span {
    width: 2rem;
    /* 48px */
    height: auto;
    display: flex;
    justify-content: center;
}

/* enquete : radio,checkbox */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.enq_answer li {
    line-height: normal;
    text-align: justify;
    word-break: break-all;
    word-wrap: break-word;
    overflow-wrap: break-word;
    background-color: light-dark(#fff0d8, #DA964B);
    padding: 0.5rem;
    /* 12px */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.enq_answer li:not(:first-of-type) {
    margin-top: 0.5rem;
    /* 12px */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.enq_answer li label {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.enq_answer li label input {
    position: absolute;
    width: 1.0rem;
    /* 24px */
    height: 1.0rem;
    /* 24px */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td ul.enq_answer li label span {
    margin-left: 2rem;
    /* 48px */
}

/* textarea */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.common tbody tr td textarea {
    width: 100%;
    height: auto;
    padding: 0.5rem;
    /* 12px */
    line-height: normal;
    text-align: justify;
    word-break: break-all;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* item_contents : btn */
div#content.other.coupon .productcode_area .item_contents form .productcode_btn {
    width: 21.0rem;
    height: auto;
    display: block;
}

div#content.other.coupon .productcode_area .item_contents form .productcode_btn button {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 504 / 101;
    padding: 0;
    margin-top: 1.375rem;
    cursor: pointer;
}

/* item_contents : drawlots2_item002 */
div#content.other.coupon .productcode_area .item_contents form .drawlots2_item002 {
    width: 23.4166rem;
    height: auto;
    display: flex;
    justify-content: flex-start;
    margin-top: 3.33rem;
    margin-bottom: 1.375rem;
}

div#content.other.coupon .productcode_area .item_contents form .drawlots2_item002 img {
    width: 9.29166rem;
    height: auto;
    display: block;
    aspect-ratio: 223 / 23;
}

/* footer_box : footer_box001 */
div#content.other.coupon .footer_box001 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/369 auto;
    position: relative;
    z-index: 0;
    overflow: hidden;
    display: block;
}

div#content.other.coupon .footer_box001 .footer_btn {
    width: 100%;
    height: auto;
    aspect-ratio: 750/72 auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 2.75rem;
    /* 66/24 */
}

div#content.other.coupon .footer_box001 .footer_btn a {
    width: 20.91666666666667rem;
    height: auto;
    aspect-ratio: 502/72 auto;
    display: block;
    cursor: pointer;
}

/* 幅750px以上に適用されるCSS（PCサイズ以上） */

@media screen and (min-width:750px) {}

/* ==== specify_coupon1 (productcode_area)  ここまで ==== */

/* ==== specify_coupon2 (productcode_area) ここから ==== */

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_item011 {
    width: 91.428%;
    /* 640/700 */
    height: auto;
    aspect-ratio: 640/462 auto;
    display: block;
    padding-top: 7.14%;
    /* 50/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr td.email_value {
    align-items: center;

    text-align: justify;
    word-break: break-all;
    color: #442F19;
    font-size: clamp(0.15rem, 3.0vw, 1.5rem);
    font-weight: bold;
}

div#content.other.coupon .productcode_area .item_contents form .productcode_btn .productcode_cancel,
div#content.other.coupon .productcode_area .item_contents form .productcode_btn .productcode_submit {
    width: 100%;
    height: auto;
    aspect-ratio: 514/84 auto;
    display: block;
}

div#content.other.coupon .productcode_area .item_contents form .productcode_btn .productcode_submit {
    margin-top: 5.33%;
    /* 40/750 */
}

/* 幅750px以上に適用されるCSS（PCサイズ以上） */

@media screen and (min-width:750px) {}

/* ==== specify_coupon2 (productcode_area) ここまで ==== */

/* ==== specify_coupon3 (productcode_area) ここから ==== */

/* ギフトコード情報がない */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_specify_box .contact_id {
    width: 23.4166rem;
    height: auto;
    font-size: 1.5rem;
    font-weight: bold;
    color: #07219b;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 0.5rem;
    text-align: justify;
    word-break: break-all;
}

/* footer_box : footer_box002 */
div#content.other.coupon .footer_box002 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/477 auto;
    position: relative;
    z-index: 0;
    overflow: hidden;
    display: block;
}

div#content.other.coupon .footer_box002 .footer_btn {
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    margin-top: 2.333333333333333rem;
    /* 56/24 */
}

div#content.other.coupon .footer_box002 .footer_btn .contact_btn,
div#content.other.coupon .footer_box002 .footer_btn .membertop_btn {
    width: 100%;
    height: auto;
    aspect-ratio: 750/72 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.other.coupon .footer_box002 .footer_btn .membertop_btn {
    margin-top: 1.5rem;
    /* 36/24 */
}

div#content.other.coupon .footer_box002 .footer_btn .contact_btn a,
div#content.other.coupon .footer_box002 .footer_btn .membertop_btn a {
    width: 20.91666666666667rem;
    height: auto;
    aspect-ratio: 502/72 auto;
    display: block;
    cursor: pointer;
}


/* ギフトコード情報がある */


/* 幅750px以上に適用されるCSS（PCサイズ以上） */

@media screen and (min-width:750px) {}

/* ==== specify_coupon3 (productcode_area) ここまで ==== */

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .egift_btn {
    width: 21.0rem;
    height: auto;
    display: block;
    aspect-ratio: 504 / 101;
    margin-top: 1.375rem;
}

/* ==== specify_coupon2 (couponapi_area) ここから ==== */

div#content.other.coupon .couponapi_area {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* item_contents */
div#content.other.coupon .couponapi_area .item_contents {
    width: 100%;
    height: auto;
    display: block;
}

/* item_contents : form */
div#content.other.coupon .couponapi_area .item_contents form {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* item_contents : couponapi_image_box */
div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_image_box {
    width: 22.91666666666667rem;
    height: auto;
    aspect-ratio: 550/550;
    display: block;
    margin-top: 2.75rem;
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_image_box img {
    width: 100%;
    height: auto;
}


/* item_contents : btn */
div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_btn {
    width: 21.16666666666667rem;
    height: auto;
    display: block;
    aspect-ratio: 508 / 75;
    margin-top: 1.5rem;
}


/* item_contents : couponapi_specify_box */
div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_specify_box {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 2.75rem;
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_specify_box:last-child {
    margin-bottom: 2.75rem;
}


div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_specify_box .couponapi_specify_title {
    width: 100%;
    height: auto;
    display: block;
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_specify_box .couponapi_specify_text {
    width: 22.91666666666667rem;
    height: auto;
    font-size: 1.0rem;
    font-weight: bold;
    color: #774637;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 0.5rem;
    text-shadow: 0.0416666666666667rem 0.0416666666666667rem 0.0416666666666667rem #ffffff;
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_specify_box .couponapi_specify_text div {
    width: auto;
    height: auto;
    text-align: justify;
    word-break: break-all;
}

/* item_contents : drawlots2_item002 */
div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .drawlots2_item002 {
    width: 23.4166rem;
    height: auto;
    display: flex;
    justify-content: flex-start;
    margin-top: 3.33rem;
    margin-bottom: 1.375rem;
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .drawlots2_item002 img {
    width: 9.29166rem;
    height: auto;
    display: block;
    aspect-ratio: 223 / 23;
}



/* 幅750px以上に適用されるCSS（PCサイズ以上） */

@media screen and (min-width:750px) {}

/* ==== specify_coupon2 (couponapi_area) ここまで ==== */

/* ==== specify_coupon3 (couponapi_area) ここから ==== */

/* 幅750px以上に適用されるCSS（PCサイズ以上） */

@media screen and (min-width:750px) {}

/* ==== specify_coupon3 (couponapi_area) ここまで ==== */


/* ==== base ここから ==== */


/* ==== base まで ==== */

/* --- login1.html ここから --- */

div#content.login #form.form_box {
    width: 100%;
    height: auto;
}

div#content.login #form.form_box form {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* table.common */

/* UA 打消し*/
div#content.login #form.form_box form table,
div#content.login #form.form_box form table tbody,
div#content.login #form.form_box form table tbody tr,
div#content.login #form.form_box form table tbody tr th,
div#content.login #form.form_box form table tbody tr td {
    border: 0;
    border-spacing: 0;
}

div#content.login #form.form_box form table.common,
div#content.login #form.form_box form table.common tbody {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.login #form.form_box form table.common {
    margin-top: 1.0rem;
    /* 24px */
}

div#content.login #form.form_box form table.common tbody tr {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.login #form.form_box form table.common tbody tr th {
    width: 100%;
    height: auto;
    display: flex;
    font-size: 1.25rem;
    /* 30px */
    padding: 0.5rem;
    /* 12px */
    color: #494949;
    background: rgba(255, 250, 244, 0.5);
    text-align: justify;
    word-break: break-all;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

div#content.login #form.form_box form table.common tbody tr th.hissu::after {
    content: "必須";
    background-color: rgb(215, 40, 40);
    color: rgb(255, 255, 255);
    width: auto;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 1.0rem;
    /* 24px */
    padding: 0.25rem;
    /* 6px */
    border-radius: 0.20833rem;
    margin-left: 0.5rem;
    /* 12px */
    white-space: nowrap;
}

div#content.login #form.form_box form table.common tbody tr th.nini::after {
    content: "任意";
    background-color: rgb(105, 105, 105);
    color: rgb(255, 255, 255);
    width: auto;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 1.0rem;
    /* 24px */
    padding: 0.25rem;
    /* 6px */
    border-radius: 0.20833rem;
    margin-left: 0.5rem;
    /* 12px */
    white-space: nowrap;
}

div#content.login #form.form_box form table.common tbody tr td {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    font-size: 1.0rem;
    /* 24px */
    padding: 0.5rem;
    /* 12px */
    text-align: justify;
    word-break: break-all;
}

div#content.login #form.form_box form table.common tbody tr td.error {
    background: #ffd9e1;
}

div#content.login #form.form_box form table.common tbody tr td .input_box {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

div#content.login #form.form_box form table.common tbody tr td input[type="text"],
div#content.login #form.form_box form table.common tbody tr td input[type="email"],
div#content.login #form.form_box form table.common tbody tr td input[type="password"],
div#content.login #form.form_box form table.common tbody tr td select.dropdown {
    width: 100%;
    height: auto;
    font-size: 1.0rem;
    /* 24px */
    padding: 0.5rem;
    /* 12px */
    text-align: justify;
    word-break: break-all;
    color: #494949;
}

/* btn_passview */
div#content.login #form.form_box form table.common tbody tr td .input_box button#btn_passview,
div#content.login #form.form_box form table.common tbody tr td .input_box button#btn_passview2 {
    width: 2.5rem;
    /* 60px */
    height: 2.5rem;
    /* 60px */
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: #d72828;
    border-radius: 0.20833rem;
    padding: 0.25rem;
    /* 6px */
    margin-left: 0.5rem;
    /* 12px */
}

div#content.login #form.form_box form table.common tbody tr td .input_box button#btn_passview:hover,
div#content.login #form.form_box form table.common tbody tr td .input_box button#btn_passview2:hover {
    background: #DF2228;
}

div#content.login #form.form_box form table.common tbody tr td .input_box button#btn_passview img,
div#content.login #form.form_box form table.common tbody tr td .input_box button#btn_passview2 img {
    width: 100%;
    height: auto;
}

/* 小見出し */
div#content.login #form.form_box form table.common tbody tr td .sample,
div#content.login #form.form_box form table.common tbody tr td .enq,
div#content.login #form.form_box form table.common tbody tr td .error {
    width: 100%;
    height: auto;
    text-align: justify;
    word-break: break-all;
}

div#content.login #form.form_box form table.common tbody tr td .error {
    font-size: 1.25rem;
    /* 30px */
    font-weight: bold;
    color: #DF2228;
}

div#content.login #form.form_box form table.common tbody tr td ul {
    width: 100%;
    height: auto;
    list-style: none;
}

/* form_btn */
div#content.login #form.form_box .form_btn {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 1.0rem 0;
    /* 24px 0 */
}

div#content.login #form.form_box .form_btn:last-child {
    margin-top: 1.0rem;
    /* 24px */
}

div#content.login #form.form_box .form_btn button {
    width: 100%;
    max-width: 17.9166rem;
    /* 430px */
    height: 2.66rem;
    /* 64px */
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    border-radius: 0.20833rem;
    border: none;
    font-size: 1.0rem;
    /* 24px */
    font-weight: bold;
    color: #ffffff;
    text-align: justify;
    word-break: break-all;
}

div#content.login #form.form_box .form_btn button.btn_color {
    background-color: #d72828;
}

div#content.login #form.form_box .form_btn button.btn_color_back {
    background-color: #999999;
}

div#content.login #form.form_box .form_btn button:not(:first-child) {
    margin-top: 1.0rem;
    /* 24px */
}

div#content.login #form.form_box .form_btn button img.icon_arrow {
    width: 1.0rem;
    /* 24px */
    height: auto;
    margin-left: 0.5rem;
    /* 12px */
}

div#content.login #form.form_box .form_btn button a {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    text-decoration: none;
}

/* camp_error.login */
div#content.login div.camp_error.login {
    margin-top: 0;
    background-color: #DF2228;
    width: 100%;
    height: auto;
    color: #ffffff;
    font-size: 1.25rem;
    /* 30px */
    padding: 0.5rem;
    /* 12px */
}

/* login_info_box */
div#content.login #form.form_box form .login_info_box {
    margin: 1.0rem 0;
    /* 24px 0 */
}

div#content.login #form.form_box form .login_info_box .login_info {
    margin-top: 0.5rem;
    /* 12px */
}

div#content.login #form.form_box form .login_info_box .login_info:first-child {
    margin-top: 0;
}


div#content.login #form.form_box form .login_info_box .login_info a {
    color: #999999;
    font-weight: bold;
    text-align: justify;
    word-break: break-all;
}

div#content.login #form.form_box form .login_info_box .login_info a:hover {
    color: #DF2228;
}

/* pc表示 */
@media screen and (min-width:769px) {}

/* --- login1.html ここまで --- */