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

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

    siteid：31ice

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

    最小スケール：344px　750/344＝2.180

    ※31アイス様 202509 2025年大抽選会 専用

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

@charset "UTF-8";

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

    カラーバリエーション

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

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

:root {
    color-scheme: light;
}

/* 背景色指定 */

.bgcolor01 {
    background-color: #422100;
}

.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(11.008px, 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;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #468ce5;
}

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

button {
    border: none;
    outline: none;
    background: transparent;
}

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

/*リンクの形状*/
#page-top a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #07219b;
    border: 1px solid #fff100;
    border-radius: 5px;
    width: 50px;
    height: 50px;
    color: #fff100;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 12px;
    transition: all 0.3s;
}

#page-top a:hover {
    background: #fff100;
    color: #07219b;
    border: 1px solid #07219b;
}

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

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

@keyframes UpAnime {
    from {
        opacity: 0;
        transform: translateY(100px);
    }

    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(100px);
    }
}

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

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: 5px solid;
    border-radius: 8px;
    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: 5px;
}

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: 5px 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: #fff100;
    color: #07219b;
}

div#footer .flexbox {
    display: flex;
    width: calc(100% - 80px);
    height: 80px;
    padding: 10px;
    align-items: center;
}

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 ここから ==== */
div#content.index .logout_error {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

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

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

div#content.index .logout_error_text .comment {
    width: 23.4166rem;
    height: auto;
    text-align: justify;
    word-break: break-all;
    color: #07219b;
    font-weight: bold;
    margin-top: 1.0rem;
    padding: 0.5rem 0;
    /* 12px 0 */
}

div#content.index .logout_error_text .copy_value_box {
    text-align: justify;
    word-break: break-all;
    color: #07219b;
    font-size: 1.25rem;
    /* 30px */
    font-weight: bold;
    border: 2px solid #07219b;
    border-radius: 8px;
    margin-top: 3.54166rem;
    padding: 0.5rem;
    /* 12px */
}

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

/* Tooltip */
div#content.index .logout_error_text .copy-value.tooltip::after {
    content: 'コピーしました';
    background: #07219b;
    display: inline-block;
    color: #ffffff;
    border-radius: 8px;
    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;
    display: flex;
    justify-content: center;
    aspect-ratio: 750 / 401;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_footer_bg001.png);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}

div#content.other.index .footer_box001 .footer_btn {
    width: 21.0rem;
    height: auto;
    display: block;
    aspect-ratio: 504 / 74;
    margin-top: 3.54166rem;
}

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

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

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

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

div#content.member_top .content_item {
    width: 100%;
    height: auto;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_main_bg001_3.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    aspect-ratio: 750/6976;
    overflow: hidden;
}

/* header_contents */
div#content.member_top .header {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/1050;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_header_bg001.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: relative;
    z-index: 0;
    overflow: hidden;
}

div#content.member_top .header .header_contents {
    width: 100%;
    height: auto;
}

/* header_contents : header_contents_top */
div#content.member_top .header .header_contents .header_contents_top {
    width: 100%;
    height: auto;
    aspect-ratio: 750/630;
    color: #07219b;
    position: relative;
    z-index: 0;
    display: block;
}

div#content.member_top .header .header_contents .header_contents_top .account_id {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 1.25rem;
    margin-left: 1.0rem;
    font-size: 1.0rem;
    z-index: 1;
    display: block;
}

div#content.member_top .header .header_contents .header_contents_top .header_title {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 750/630;
}

/* header_contents : header_contents_bottom */
div#content.member_top .header .header_contents .header_contents_bottom {
    width: 100%;
    height: auto;
    position: relative;
    z-index: 0;
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 750/362;
}

/* lots_contents */
div#content.member_top .lots_contents {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/1675;
    position: relative;
    z-index: 2;
    overflow: hidden;
    margin-top: -0.5rem;
}

div#content.member_top .lots_contents .lots_item001 {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    aspect-ratio: 750/1290;
    position: relative;
    z-index: 2;
}

div#content.member_top .lots_contents .lots_item001 .lots_item001_base {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/1290;
}

div#content.member_top .lots_contents .lots_item001 .lots_item001_btn {
    width: 10.25rem;
    height: auto;
    display: block;
    aspect-ratio: 246/246;
    position: absolute;
    z-index: 3;
    margin-top: 29.45833rem;
    overflow: hidden;
}

div#content.member_top .lots_contents .lots_item001 .lots_item001_btn .lots_item001_btn_ok {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 246/246;
}

div#content.member_top .lots_contents .lots_item001 .lots_item001_btn .lots_item001_btn_ok button {
    padding: 0;
    cursor: pointer;
}

div#content.member_top .lots_contents .lots_item002 {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    aspect-ratio: 750/345;
    position: relative;
    z-index: 4;
    margin-top: -1.29166rem;
}

div#content.member_top .lots_contents .lots_item002 .lots_item002_base {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/415;
}

div#content.member_top .lots_contents .lots_item002 .draws_possible {
    width: 100%;
    height: auto;
    display: flex;
    align-items: flex-end;
    aspect-ratio: 750/237;
    position: absolute;
    z-index: 5;
}

div#content.member_top .lots_contents .lots_item002 .draws_possible .draws_possible_count {
    width: 8.875rem;
    height: auto;
    color: #ff77bf;
    display: flex;
    justify-content: flex-end;
    font-size: 7.0833rem;
    font-weight: bold;
    line-height: 100%;
    margin-left: 14.33rem;
    margin-bottom: 1.0rem;
}

div#content.member_top .lots_contents .lots_item002 .times_drawn {
    width: 100%;
    height: auto;
    display: flex;
    align-items: flex-end;
    aspect-ratio: 750/60;
    position: absolute;
    z-index: 5;
    margin-top: 9.875rem;
}

div#content.member_top .lots_contents .lots_item002 .times_drawn .times_drawn_count {
    width: 2.29166rem;
    height: auto;
    color: #ff77bf;
    display: flex;
    justify-content: flex-end;
    font-size: 1.5833rem;
    font-weight: bold;
    line-height: 100%;
    margin-left: 16.29166rem;
    margin-bottom: 0.54166rem;
}

/* prize_contents */
div#content.member_top .prize_contents {
    width: 100%;
    height: auto;
    display: block;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_prize_bg001_3.png);
    background-repeat: no-repeat;
    background-size: contain;
    aspect-ratio: 750/3535;
    overflow: hidden;
    line-height: 0;
}

div#content.member_top .prize_contents .prize_title001 {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/192;
}

div#content.member_top .prize_contents .prize_item {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/508;
}

div#content.member_top .prize_contents .prize_title002 {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/248;
}

div#content.member_top .prize_contents .prize_item006 {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/326;
}

div#content.member_top .prize_contents .prize_title003 {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/177;
}

div#content.member_top .prize_contents .prize_item007 {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/130;
}

div#content.member_top .prize_contents .prize_item008 {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 750/85;
}


/* campaign_rules */
div#content.member_top .campaign_rules {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.member_top .campaign_rules .overview_text_box {
    width: 26.25rem;
    height: 22.66rem;
    aspect-ratio: 630/544;
    display: block;
    padding-right: 0.5rem;
    overflow-y: auto;
}

div#content.member_top .campaign_rules .overview_text {
    text-align: justify;
    word-break: break-all;
    color: #07219b;
    padding-bottom: 2rem;
}

div#content.member_top .campaign_rules .overview_text:last-child {
    padding-bottom: 0;
}

div#content.member_top .campaign_rules .overview_text h2 {

    padding-bottom: 0.25em;
    font-size: 1.1em;
}

div#content.member_top .campaign_rules .overview_text h3 {

    font-size: 1.0em;
    text-decoration: underline;
    margin-top: 0.5em;
}

div#content.member_top .campaign_rules .overview_text span.bold {
    font-weight: bold;
}

div#content.member_top .campaign_rules .overview_text span.underline {
    text-decoration: underline;
}

div#content.member_top .campaign_rules .overview_text ul.disc {
    list-style: disc;
    padding-left: 2em;
}

div#content.member_top .campaign_rules .overview_text ul.nakaguro {
    list-style: circle;
    padding-left: 4em;
}

div#content.member_top .campaign_rules .overview_text ul.example {
    padding-left: 1.5em;
    margin-left: 0.5em;
    margin-top: 0.5em;
    list-style: none;
}

div#content.member_top .campaign_rules .overview_text ul.example li {
    text-indent: -1.5em;
}

div#content.member_top .campaign_rules .overview_text ul.example li::before {
    content: "※";
    margin-right: 0.5em;
}

div#content.member_top .campaign_rules .overview_text a {
    color: #07219b;
}

/* footer_box */
div#content.member_top .footer_box001 {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    aspect-ratio: 750 / 401;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_footer_bg001.png);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}

div#content.member_top .footer_box001 .footer_btn {
    width: 21.0rem;
    height: auto;
    display: block;
    aspect-ratio: 504 / 74;
    margin-top: 3.54166rem;
}

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

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

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

/* ==== other ここから ==== */

div#content.other {
    width: 100%;
    height: auto;
    min-height: calc(100vh - 80px);
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
}

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

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_title */
div#content.other.wallpaper .item_contents .hand_title {
    width: 100%;
    height: auto;
    aspect-ratio: 750/254 auto;
    display: block;
}

/* 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: 11.6%;
}

div#content.other.wallpaper .item_contents .hand_prize_box .hand_prize {
    width: 64%;
    height: auto;
    padding-top: 6.93%;
}

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

/* footer_box */
div#content.other.wallpaper .footer_box {
    width: 100%;
    height: auto;
    aspect-ratio: 750/571 auto;
    display: block;
    background-image: url(../../img/31ice/202503/31ice_202503_footer_bg002.png);
    background-size: cover;
}

div#content.other.wallpaper .footer_box.double .footer_btn {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 6.53%;
}

div#content.other.wallpaper .footer_box.double .footer_btn .contact_btn,
div#content.other.wallpaper .footer_box.double .footer_btn .membertop_btn {
    width: 66.66%;
    height: auto;
    aspect-ratio: 500/70 auto;
    display: block;
}

div#content.other.wallpaper .footer_box.double .footer_btn .contact_btn {
    margin-top: 4.4%;
}

/* 幅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: 5px;
    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: 5px;
    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: 5px;
    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;
    display: flex;
    justify-content: center;
    aspect-ratio: 750 / 401;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_footer_bg001.png);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}

div#content.other.coupon .footer_box001 .footer_btn {
    width: 21.0rem;
    height: auto;
    display: block;
    aspect-ratio: 504 / 74;
    margin-top: 3.54166rem;
}

/* 幅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(1.0rem, 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;
    display: flex;
    justify-content: center;
    aspect-ratio: 750 / 502;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_footer_bg002.png);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}

div#content.other.coupon .footer_box002 .footer_btn {
    width: 21.0rem;
    height: auto;
    display: block;
    margin-top: 3.20833rem;
}

div#content.other.coupon .footer_box002 .footer_btn .contact_btn,
div#content.other.coupon .footer_box002 .footer_btn .membertop_btn {
    width: 100%;
    height: auto;
    display: block;
}

div#content.other.coupon .footer_box002 .footer_btn .contact_btn {
    margin-top: 1.66rem;
}


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


/* 幅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;
    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 .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.9166rem;
    height: auto;
    aspect-ratio: 550/550;
    display: block;
    margin-top: 3.66rem;
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_image_box img {
    width: 100%;
    height: auto;
    border: 0.4166rem solid #468ce5;
}


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

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_btn button {
    padding: 0;
    cursor: pointer;
}


/* 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: 3.33rem;
}

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: 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 .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: 5px;
    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: 5px;
    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: 5px;
    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: 5px;
    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 ここまで --- */

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

/* loader */
div#content.other.draw_lots .loader {
    position: fixed;
    width: 100%;
    height: 100vh;
    background-color: #fff100;
    background-image: url(../../img/31ice/202509/31ice_202509_drawlots2_bg001.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 100% auto;
    z-index: 555;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

div#content.other.draw_lots .loader .loader_item {
    width: 15.0rem;
    height: auto;
    aspect-ratio: 360/360;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

div#content.other.draw_lots .loader .loader_item .loader_image {
    width: 100%;
    height: auto;
    aspect-ratio: 360/360;
    background-size: cover;
    background-position: center center;
    position: absolute;
    opacity: 0;
}

div#content.other.draw_lots .loader .loader_item .loader_image.src1 {
    background-image: url(../../img/31ice/202509/31ice_202509_drawlots2_anime001.png);

    animation: drawlots2_anime001 5s infinite;
}

div#content.other.draw_lots .loader .loader_item .loader_image.src2 {
    background-image: url(../../img/31ice/202509/31ice_202509_drawlots2_anime002.png);

    animation: drawlots2_anime002 5s infinite;
}

@keyframes drawlots2_anime001 {
    0% {
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    20% {
        opacity: 1;
    }

    30% {
        opacity: 0;
    }

    100% {
        opacity: 0;
    }
}

@keyframes drawlots2_anime002 {
    0% {
        opacity: 0;
    }

    20% {
        opacity: 0;
    }

    30% {
        opacity: 1;
    }

    100% {
        opacity: 1;
    }
}

div#content.other.draw_lots .loader .loder_fadeout {
    position: fixed;
    width: 100vh;
    height: auto;
    aspect-ratio: 750/750;
    border-radius: 50%;
    background-color: #ffffff;
    z-index: 9999;
    pointer-events: none;
    opacity: 0;
    

    animation: drawlots2_fadeout 5s infinite;
}

@keyframes drawlots2_fadeout {
    0% {
        transform: scale(0);
        opacity: 0;
    }

    40% {
        transform: scale(0);
        opacity: 0;
    }

    75% {
        transform: scale(3);
        opacity: 1;
    }

    100% {
        transform: scale(3);
        opacity: 1;
    }
}

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


/* lot_win_box */
div#content.other.draw_lots .lot_win_box {
    width: 100%;
    height: auto;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}

div#content.other.draw_lots .lot_win_box form {
    width: 100%;
    height: auto;
    display: block;
}

/* win_contents */
div#content.other.draw_lots .win_contents {
    width: 100%;
    height: auto;
    min-height: 42.375rem;
    background-image: url(../../img/31ice/202509/31ice_202509_drawlots2_bg002.png);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.other.draw_lots .win_contents .lots_image {
    width: 100%;
    height: auto;
    aspect-ratio: 750/380;
    display: block;
    margin-top: 4.833rem;
}

div#content.other.draw_lots .win_contents .lottery_box {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 2.33rem;
    margin-bottom: 1.375rem;
}

div#content.other.draw_lots .win_contents .lottery_box .lottery_text {
    width: 23.4166rem;
    height: auto;
    font-size: 1.0rem;
    font-weight: bold;
    color: #07219b;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.other.draw_lots .win_contents .lottery_box .lottery_text div {
    width: auto;
    height: auto;
    text-align: justify;
    word-break: break-all;
}

div#content.other.draw_lots .win_contents .lottery_box .lottery_text .lottery_title {
    width: 9.833rem;
    height: auto;
    aspect-ratio: 236/78;
}

div#content.other.draw_lots .win_contents .lottery_box .lottery_text .good_name {
    font-size: 1.5rem;
    font-weight: bold;
    color: #f20c90;
    margin-bottom: 1.25rem;
}


div#content.other.draw_lots .win_contents .lottery_box .btn_area {
    width: 21.0rem;
    height: auto;
    display: block;
    aspect-ratio: 504 / 101;
    margin-top: 2.66rem;
}

div#content.other.draw_lots .win_contents .lottery_box .btn_area button {
    padding: 0;
    cursor: pointer;
}

/* drawlots2_item002 */
div#content.other.draw_lots .win_contents .lottery_box .drawlots2_item002 {
    width: 23.4166rem;
    height: auto;
    display: flex;
    justify-content: flex-start;
    margin-top: 3.33rem;
    margin-bottom: 1.375rem;
}

div#content.other.draw_lots .win_contents .lottery_box .drawlots2_item002 img {
    width: 9.29166rem;
    height: auto;
    display: block;
    aspect-ratio: 223 / 23;
}

/* footer_box001 */
div#content.other.draw_lots .lot_win_box .footer_box001 {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    aspect-ratio: 750 / 401;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_footer_bg001.png);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}

div#content.other.draw_lots .lot_win_box .footer_box001 .footer_btn {
    width: 21.0rem;
    height: auto;
    display: block;
    aspect-ratio: 504 / 74;
    margin-top: 3.54166rem;
}

/* lot_lose_box */

/* item_contents : lose_contents */
div#content.other.draw_lots .lot_lose_box .lose .contents_wrapper .lose_contents {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 3.33rem;
}

div#content.other.draw_lots .lot_lose_box .lose .contents_wrapper .lose_contents .specify_title {
    width: 100%;
    height: auto;
    display: block;
}

div#content.other.draw_lots .lot_lose_box .lose .contents_wrapper .lose_contents .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.draw_lots .lot_lose_box .lose .contents_wrapper .lose_contents .specify_text div {
    width: auto;
    height: auto;
    text-align: justify;
    word-break: break-all;
}

div#content.other.draw_lots .lot_lose_box .lose .contents_wrapper .lose_contents .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;
}

/* item_contents : drawlots2_item002 */
div#content.other.draw_lots .lot_lose_box .lose .contents_wrapper .drawlots2_item002 {
    width: 9.29166rem;
    height: auto;
    display: block;
    aspect-ratio: 223 / 23;
    margin-top: 3.33rem;
    margin-bottom: 1.375rem;
}

/* footer_box : footer_box002 */
div#content.other.draw_lots .lot_lose_box .footer_box002 {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    aspect-ratio: 750 / 502;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_footer_bg002.png);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}

div#content.other.draw_lots .lot_lose_box .footer_box002 .footer_btn {
    width: 21.0rem;
    height: auto;
    display: block;
    margin-top: 3.20833rem;
}

div#content.other.draw_lots .lot_lose_box .footer_box002 .footer_btn .contact_btn,
div#content.other.draw_lots .lot_lose_box .footer_box002 .footer_btn .membertop_btn {
    width: 100%;
    height: auto;
    display: block;
}

div#content.other.draw_lots .lot_lose_box .footer_box002 .footer_btn .contact_btn {
    margin-top: 1.66rem;
}

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

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

div#content.other.specify .specify_area {
    width: 100%;
    height: auto;
    min-height: calc(100vh - 80px);
    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;
    justify-content: space-between;
}

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

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

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

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

div#content.other.specify .specify_area .item_contents form .contents_wrapper .specify_image_box img {
    width: 100%;
    height: auto;
}

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

div#content.other.specify .specify_area .item_contents form .contents_wrapper .specify_box .lottery_title {
    width: 9.833rem;
    height: auto;
    aspect-ratio: 236/78;
}

div#content.other.specify .specify_area .item_contents form .contents_wrapper .specify_box .goods_name {
    width: auto;
    max-width: 23.4166rem;
    height: auto;
    font-size: 1.5rem;
    font-weight: bold;
    color: #f20c90;
    text-align: justify;
    word-break: break-all;
}

div#content.other.specify .specify_area .item_contents form .contents_wrapper .specify_box .specify_title {
    width: 100%;
    height: auto;
    display: block;
}

div#content.other.specify .specify_area .item_contents form .contents_wrapper .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.specify .specify_area .item_contents form .contents_wrapper .specify_box .specify_text div {
    width: auto;
    height: auto;
    text-align: justify;
    word-break: break-all;
}

div#content.other.specify .specify_area .item_contents form .contents_wrapper .specify_box .specify_text div span {
    color: #d72828;
    padding: 0 0.25rem;
}

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

/* item_contents : table */

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

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

div#content.other.specify .specify_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.specify .specify_area .item_contents form .contents_wrapper table.common {
    width: 25.833rem;
    height: auto;
    display: block;
}

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

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

div#content.other.specify .specify_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.specify .specify_area .item_contents form .contents_wrapper table.common tbody tr:not(:first-child) {
    margin-top: 1.0rem;
}

div#content.other.specify .specify_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.specify .specify_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: 5px;
    margin-left: 0.5rem;
    /* 12px */
    white-space: nowrap;
}

div#content.other.specify .specify_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: 5px;
    margin-left: 0.5rem;
    /* 12px */
    white-space: nowrap;
}

div#content.other.specify .specify_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.specify .specify_area .item_contents form .contents_wrapper table.common tbody tr td.error {
    background: #ffd9e1;
}

div#content.other.specify .specify_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.specify .specify_area .item_contents form .contents_wrapper table.common tbody tr td input[type="text"],
div#content.other.specify .specify_area .item_contents form .contents_wrapper table.common tbody tr td input[type="email"],
div#content.other.specify .specify_area .item_contents form .contents_wrapper table.common tbody tr td input[type="password"],
div#content.other.specify .specify_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.specify .specify_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.family_name,
div#content.other.specify .specify_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.specify .specify_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.specify .specify_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.family_name span,
div#content.other.specify .specify_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.specify .specify_area .item_contents form .contents_wrapper table.common tbody tr td ul.name_box li.family_name input,
div#content.other.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_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: 5px;
    padding: 0.25rem;
    /* 6px */
    margin-left: 0.5rem;
    /* 12px */
    color: #ffffff;
    font-weight: bold;
    cursor: pointer;
}

div#content.other.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_area .item_contents form .contents_wrapper table.common tbody tr td ul.birthday_box li.birthday_month select,
div#content.other.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_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.specify .specify_area .item_contents form .specify_btn {
    width: 21.0rem;
    height: auto;
    display: block;
}

div#content.other.specify .specify_area .item_contents form .specify_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.specify .specify_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.specify .specify_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.specify .footer_box001 {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    aspect-ratio: 750 / 401;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_footer_bg001.png);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}

div#content.other.specify .footer_box001 .footer_btn {
    width: 21.0rem;
    height: auto;
    display: block;
    aspect-ratio: 504 / 74;
    margin-top: 3.54166rem;
}

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

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

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

div#content.other.specify .specify_area .item_contents form .contents_wrapper .specify_item004 {
    width: 26.66rem;
    /* 640px */
    height: auto;
    aspect-ratio: 640/462 auto;
    display: block;
    padding-top: 2.0833rem;
    /* 50px */
}

/* item_contents : btn */
div#content.other.specify .specify_area .item_contents form .specify_btn button.submit {
    margin-top: 1.0rem;
    /* 24px */
}

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

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

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

div#content.other.specify .specify_area .item_contents form .contents_wrapper .specify_item006 {
    width: 26.66rem;
    /* 640px */
    height: auto;
    aspect-ratio: 640/462 auto;
    display: block;
    padding-top: 2.0833rem;
    /* 50px */
}

/* footer_box : footer_box002 */
div#content.other.specify .footer_box002 {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    aspect-ratio: 750 / 502;
    background-image: url(../../../pc/img/31ice/202509/31ice_202509_footer_bg002.png);
    background-repeat: no-repeat;
    background-size: contain;
    overflow: hidden;
}

div#content.other.specify .footer_box002 .footer_btn {
    width: 21.0rem;
    height: auto;
    display: block;
    margin-top: 3.20833rem;
}

div#content.other.specify .footer_box002 .footer_btn .contact_btn,
div#content.other.specify .footer_box002 .footer_btn .membertop_btn {
    width: 100%;
    height: auto;
    display: block;
}

div#content.other.specify .footer_box002 .footer_btn .contact_btn {
    margin-top: 1.66rem;
}

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