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

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

    siteid：31ice

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

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

    ※31アイス様 202505 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%;
}

html {
    scroll-behavior: smooth;
    height: 100%;
    font-size: 16px;
}

body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: auto;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 1.0rem;
    background-color: #fff570;
}

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-image: url(../../img/31ice/202507/31ice_202507_bg001.png);
    background-position: top center;
}

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

/*========= ナビゲーションのためのCSS ===============*/

/*アクティブになったエリア*/
#g-nav.panelactive {
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position: fixed;
    z-index: 999;
    top: 0;
    width: 100%;
    height: calc(var(--vh) * 100);
}

/*丸の拡大*/
.circle-bg {
    position: fixed;
    z-index: 3;
    /*丸の形*/
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #002e47;
    /*丸のスタート位置と形状*/
    transform: scale(0);
    /*scaleをはじめは0に*/
    right: -50px;
    top: -50px;
    transition: all .6s;
    /*0.6秒かけてアニメーション*/
}

.circle-bg.circleactive {
    transform: scale(50);
    /*クラスが付与されたらscaleを拡大*/
}

/*ナビゲーションの縦スクロール*/
#g-nav-list {
    display: none;
    /*はじめは表示なし*/
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999;
    width: 100%;
    height: calc(var(--vh) * 100);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

#g-nav.panelactive #g-nav-list {
    display: block;
    /*クラスが付与されたら出現*/
}

/*ナビゲーション*/
#g-nav ul {
    opacity: 0;
    /*はじめは透過0*/
    /*ナビゲーション天地中央揃え※レイアウトによって調整してください。不必要なら削除*/
    position: absolute;
    z-index: 999;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/*背景が出現後にナビゲーションを表示*/
#g-nav.panelactive ul {
    opacity: 1;
}

/* 背景が出現後にナビゲーション li を表示※レイアウトによって調整してください。不必要なら削除*/
#g-nav.panelactive ul li {
    animation-name: gnaviAnime;
    animation-duration: 1s;
    animation-delay: .2s;
    /*0.2 秒遅らせて出現*/
    animation-fill-mode: forwards;
    opacity: 0;
}

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

    100% {
        opacity: 1;
    }
}


/*リストのレイアウト設定*/
#g-nav li {
    text-align: center;
    list-style: none;
}

#g-nav li a {
    text-decoration: none;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}


/*========= ボタンのためのCSS ===============*/
.openbtn {
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 9999;
    /*ボタンを最前面に*/
    background: #d72828;
    cursor: pointer;
    width: 50px;
    height: 50px;
    border-radius: 5px;
}

/*×に変化*/
.openbtn span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 2px;
    border-radius: 5px;
    background: #fff;
    width: 45%;
}

.openbtn span:nth-of-type(1) {
    top: 13px;
}

.openbtn span:nth-of-type(2) {
    top: 19px;
}

.openbtn span:nth-of-type(3) {
    top: 25px;
}

.openbtn span:nth-of-type(3)::after {
    content: "Menu";
    /*3つ目の要素のafterにMenu表示を指定*/
    position: absolute;
    top: 5px;
    left: -4px;
    color: #fff;
    font-size: 0.6rem;
    text-transform: uppercase;
}

/*activeクラスが付与されると線が回転して×になり、Menu⇒Closeに変更*/


.openbtn.active span:nth-of-type(1) {
    top: 14px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
    opacity: 0;
}

.openbtn.active span:nth-of-type(3) {
    top: 26px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(3)::after {
    content: "Close";
    /*3つ目の要素のafterにClose表示を指定*/
    transform: translateY(0) rotate(-45deg);
    top: 5px;
    left: 4px;
}

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

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

#page-top a:hover {
    background: #fff570;
    color: #00ccdf;
    border: 1px solid #00ccdf;
}

/*リンクを右下に固定*/
#page-top {
    position: fixed;
    right: 10px;
    bottom: 10px;
    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: 20px;
    color: #ffffff;
    font-size: 21px;
    line-height: normal;
    font-weight: bold;
    text-align: justify;
    word-break: break-all;
}

/* エラー表示 */

div#header .error_box {
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
}

div#header .error_box dl.error {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: auto;
    font-size: 18px;
    line-height: normal;
    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: 18px;
    padding-right: 10px;
}

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: 10px 0;
    padding: 0 10px;
}

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

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

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

div#wrapper .notice_box {
    margin: 1em;
    padding: 1em;
    background: #ffffff;
    border: 5px solid #ff0000;
    color: #ff0000;
}

div#wrapper .notice_box dl.notice dt,
div#wrapper .notice_box dl.notice dd {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    text-align: justify;
    word-break: break-all;
}

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

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


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


div#footer {
    width: 100%;
    background-color: #fff570;
    color: #855e37;
}


div#footer .flexbox {
    display: flex;
    width: calc(100% - 60px);
    height: auto;
    min-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 {
    font-size: 12px;
    word-break: break-word;
}


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

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


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

    /*ヘッダー*/
    div#header {
        align-items: center;
        box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.5), inset 0px -3px 6px -2px rgba(0, 0, 0, 0.3);
    }

    /*ロゴ*/
    div#header h1.logo {
        width: calc(100% - 120px);
        justify-content: center;
    }

    div#header h1.logo a {
        justify-content: center;
    }

    /* エラー表示 */

    div#header .error_box {
        width: calc(100% - 60px);
        max-width: 750px;
    }

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

    div#wrapper {
        max-width: 750px;
    }

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

    div#footer {
        display: flex;
        justify-content: center;
        align-items: center;
        border-top: 1px solid rgba(0, 0, 0, 0.3);
    }

    div#footer .flexbox {
        width: calc(100% - 120px);
        justify-content: center;
    }

    div#footer .flexbox ul {
        align-items: center;
    }

    div#footer .flexbox ul li {
        font-size: 1.0rem;
    }

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

    #page-top a {
        width: 60px;
        height: 60px;
        font-size: 0.725rem;
    }

}

/* ==== 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: clamp(321.055px, 93.33vw, 700px);
    /* 700/750 */
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: clamp(22.9104px, 6.66vw, 50px);
}

div#content.index .logout_error_text h2 {
    width: 100%;
    height: auto;
    text-align: justify;
    word-break: break-all;
    line-height: normal;
    background: #00ccdf;
    color: #fff570;
    font-size: clamp(1.0rem, 4.266vw, 2.0rem);
    font-weight: bold;
    border-radius: 8px;
    display: block;
    padding: clamp(7.33752px, 2.133vw, 16px);
}

div#content.index .logout_error_text .comment {
    width: auto;
    height: auto;
    text-align: justify;
    word-break: break-all;
    line-height: normal;
    color: #855e37;
    font-size: clamp(0.875rem, 2.66vw, 1.25rem);
    font-weight: bold;
    padding: clamp(7.33752px, 2.133vw, 16px);
}

div#content.index .logout_error_text .copy_value_box {
    text-align: justify;
    word-break: break-all;
    line-height: normal;
    color: #855e37;
    font-size: clamp(1.0rem, 3.2vw, 1.5rem);
    font-weight: bold;
    border: 2px solid #855e37;
    border-radius: 8px;
    margin-top: clamp(13.76px, 4.0vw, 30px);
    /* 30/700 */
    padding: clamp(7.33752px, 2.133vw, 16px);
}

/* 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: #00ccdf;
    display: inline-block;
    color: #fff570;
    border-radius: 8px;
    position: absolute;
    font-size: clamp(0.875rem, 2.66vw, 1.25rem);
    padding: clamp(7.33752px, 2.133vw, 16px);
    animation: fade-tooltip .5s 1s 1 forwards;
    white-space: nowrap;
}

/* footer_box */
div#content.other.index .footer_box {
    width: 100%;
    height: auto;
    aspect-ratio: 750/394 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

div#content.other.index .footer_box .footer_box_bg {
    width: 100%;
    height: auto;
    aspect-ratio: 750/394 auto;
    display: block;
    position: absolute;
    z-index: 0;
}

div#content.other.index .footer_box .footer_btn {
    width: clamp(229.3577px, 66.66vw, 500px);
    height: auto;
    aspect-ratio: 500/70 auto;
    display: block;
    position: absolute;
    z-index: 1;
    margin-top: clamp(39.4495px, 11.466vw, 86px);
}

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

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

div#content.member_top .content_item {
    width: 100%;
    height: auto;
    overflow: hidden;
    aspect-ratio: 750/2866 auto;
    display: block;
    background-image: url(../../img/31ice/202507/31ice_202507_bg002.png);
    background-position: top center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* 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;
    aspect-ratio: 750/821 auto;
    display: block;
}

/* item_contents_item001 : item_contents_item001_member */
div#content.member_top .item_contents .item_contents_item001 .item_contents_item001_member {
    width: 100%;
    height: auto;
    aspect-ratio: 750/74 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item_contents_item001_member .account_id {
    font-size: clamp(11.008px, 3.2vw, 24px);
    color: #855e37;
    font-weight: bold;
    padding-top: clamp(13.76px, 4.00vw, 30px);
    padding-left: clamp(16.0304px, 4.66vw, 35px);
}

/* item_contents_item001 : item_contents_item001_item */
div#content.member_top .item_contents .item_contents_item001 .item_contents_item001_item {
    width: 100%;
    height: auto;
    aspect-ratio: 750/747 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item_contents_item001_item .item_contents_item001_title {
    width: 100%;
    height: auto;
    aspect-ratio: 750/620 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item001 .item_contents_item001_item .item_contents_item001_period {
    width: 100%;
    height: auto;
    aspect-ratio: 750/127 auto;
    display: block;
}

/* item_contents_item002 */
div#content.member_top .item_contents .item_contents_item002 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/1212 auto;
    display: block;
    margin-top: clamp(20.64px, 6.0vw, 45px);
    background-image: url(../../img/31ice/202507/31ice_202507_stamp_bg001.png);
    background-position: top center;
    background-size: contain;
    background-repeat: no-repeat;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_title {
    width: 100%;
    height: auto;
    aspect-ratio: 750/390 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox {
    width: clamp(305.472px, 88.8vw, 666px);
    height: auto;
    aspect-ratio: 666/725 auto;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    position: relative;
    z-index: 0;
    margin-top: clamp(13.299px, 3.866vw, 29px);
    margin-left: clamp(28.435px, 8.266vw, 62px);
}

/* item_contents_item002_stampbox_left */
div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left {
    width: clamp(144.938px, 42.133vw, 316px);
    height: auto;
    aspect-ratio: 316/725 auto;
    display: block;
    position: absolute;
    z-index: 0;
    left: 0;
    background-image: url(../../img/31ice/202507/31ice_202507_stamp_stanmpbox_left.png);
    background-position: top center;
    background-size: contain;
    background-repeat: no-repeat;
}

/* item_contents_item002_stampbox_left : stamp_point001 */
div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left .stamp_point001 {
    width: 100%;
    height: auto;
    aspect-ratio: 316/300 auto;
    display: block;
    position: absolute;
    z-index: 2;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left .stamp_point001 .stamp_point001_off {
    width: 100%;
    height: auto;
    aspect-ratio: 316/300 auto;
    display: block;
    position: absolute;
    z-index: 2;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left .stamp_point001 .stamp_point001_on {
    width: 100%;
    height: auto;
    aspect-ratio: 316/300 auto;
    display: block;
    position: absolute;
    z-index: 2;
}

/* item_contents_item002_stampbox_left : stamp_point002 */
div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left .stamp_point002 {
    width: 100%;
    height: auto;
    aspect-ratio: 316/297 auto;
    display: block;
    position: absolute;
    z-index: 1;
    margin-top: clamp(98.5904px, 28.66vw, 215px);
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left .stamp_point002 .stamp_point002_off {
    width: 100%;
    height: auto;
    aspect-ratio: 316/297 auto;
    display: block;
    position: absolute;
    z-index: 1;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left .stamp_point002 .stamp_point002_on {
    width: 100%;
    height: auto;
    aspect-ratio: 316/297 auto;
    display: block;
    position: absolute;
    z-index: 1;
}

/* item_contents_item002_stampbox_left : stamp_point003 */
div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left .stamp_point003 {
    width: 100%;
    height: auto;
    aspect-ratio: 316/297 auto;
    display: block;
    position: absolute;
    z-index: 0;
    margin-top: clamp(196.307px, 57.066vw, 428px);
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left .stamp_point003 .stamp_point003_off {
    width: 100%;
    height: auto;
    aspect-ratio: 316/297 auto;
    display: block;
    position: absolute;
    z-index: 0;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_left .stamp_point003 .stamp_point003_on {
    width: 100%;
    height: auto;
    aspect-ratio: 316/297 auto;
    display: block;
    position: absolute;
    z-index: 0;
}

/* item_contents_item002_stampbox_right */
div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right {
    width: clamp(165.1376px, 48vw, 360px);
    height: auto;
    aspect-ratio: 360/725 auto;
    display: block;
    position: absolute;
    z-index: 3;
    right: 0;
}

/* item_contents_item002_stampbox_right : stamp_btn001 */
div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn001 {
    width: 100%;
    height: auto;
    aspect-ratio: 360/256 auto;
    display: block;
    position: relative;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn001 .stamp_btn001_off {
    width: 100%;
    height: auto;
    aspect-ratio: 360/256 auto;
    display: block;
    position: absolute;
    z-index: 3;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn001 .stamp_btn001_on {
    width: 100%;
    height: auto;
    aspect-ratio: 360/256 auto;
    display: block;
    position: absolute;
    z-index: 4;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn001 .stamp_btn001_on .stamp_btn001_on_before {
    width: 100%;
    height: auto;
    aspect-ratio: 360/256 auto;
    display: block;
    position: absolute;
    z-index: 4;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn001 .stamp_btn001_on .stamp_btn001_on_after {
    width: 100%;
    height: auto;
    aspect-ratio: 360/256 auto;
    display: block;
    position: absolute;
    z-index: 5;
}

/* item_contents_item002_stampbox_right : stamp_btn002 */
div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn002 {
    width: 100%;
    height: auto;
    aspect-ratio: 360/234 auto;
    display: block;
    position: relative;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn002 .stamp_btn002_off {
    width: 100%;
    height: auto;
    aspect-ratio: 360/234 auto;
    display: block;
    position: absolute;
    z-index: 3;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn002 .stamp_btn002_on {
    width: 100%;
    height: auto;
    aspect-ratio: 360/234 auto;
    display: block;
    position: absolute;
    z-index: 4;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn002 .stamp_btn002_on .stamp_btn002_on_before {
    width: 100%;
    height: auto;
    aspect-ratio: 360/234 auto;
    display: block;
    position: absolute;
    z-index: 4;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn002 .stamp_btn002_on .stamp_btn002_on_after {
    width: 100%;
    height: auto;
    aspect-ratio: 360/234 auto;
    display: block;
    position: absolute;
    z-index: 5;
}

/* item_contents_item002_stampbox_right : stamp_btn003 */
div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn003 {
    width: 100%;
    height: auto;
    aspect-ratio: 360/235 auto;
    display: block;
    position: relative;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn003 .stamp_btn003_off {
    width: 100%;
    height: auto;
    aspect-ratio: 360/234 auto;
    display: block;
    position: absolute;
    z-index: 3;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn003 .stamp_btn003_on {
    width: 100%;
    height: auto;
    aspect-ratio: 360/234 auto;
    display: block;
    position: absolute;
    z-index: 4;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn003 .stamp_btn003_on .stamp_btn003_on_before {
    width: 100%;
    height: auto;
    aspect-ratio: 360/234 auto;
    display: block;
    position: absolute;
    z-index: 4;
}

div#content.member_top .item_contents .item_contents_item002 .item_contents_item002_stampbox .item_contents_item002_stampbox_right .stamp_btn003 .stamp_btn003_on .stamp_btn003_on_after {
    width: 100%;
    height: auto;
    aspect-ratio: 360/234 auto;
    display: block;
    position: absolute;
    z-index: 5;
}

/* item_contents_item003 */
div#content.member_top .item_contents .item_contents_item003 {
    width: 100%;
    height: auto;
    aspect-ratio: 750/788 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_title {
    width: 100%;
    height: auto;
    aspect-ratio: 750/149 auto;
    display: block;
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body {
    width: 100%;
    height: auto;
    aspect-ratio: 750/639 auto;
    display: flex;
    justify-content: center;
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text {
    width: clamp(280.704px, 81.6vw, 612px);
    height: clamp(249.95px, 72.66vw, 545px);
    aspect-ratio: 612/545 auto;
    display: block;
    overflow-y: scroll;
    padding-right: clamp(17.4327px, 5.066vw, 38px);
}

/* item_contents_item006 : 組込み書式 */
div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text {
    line-height: normal;
    text-align: justify;
    word-break: break-all;
    color: #855e37;
    font-size: clamp(0.875rem, 2.5vw, 1.25rem);
    font-weight: bolder;
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text h2 {
    line-height: normal;
    padding-bottom: clamp(3.66704px, 1.066vw, 8px);
    font-size: clamp(1.0rem, 3.0vw, 1.5rem);
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text h3 {
    line-height: normal;
    padding-top: clamp(0.875rem, 2.5vw, 1.25rem);
    padding-bottom: clamp(3.66704px, 1.066vw, 8px);
    font-size: clamp(0.875rem, 2.5vw, 1.25rem);
    font-weight: bold;
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text h3.under_line {
    padding-top: clamp(11.008px, 3.2vw, 24px);
    text-decoration: underline;
}

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

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

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text ul li {
    padding-top: clamp(3.66704px, 1.066vw, 8px);
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text ul.disc {
    list-style: disc;
    padding-left: clamp(14.675px, 4.266vw, 32px);
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text ul.nakaguro {
    list-style: circle;
    padding-left: clamp(29.3535px, 8.533vw, 64px);
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text ul.example {
    padding-left: clamp(11.008px, 3.2vw, 24px);
    margin-left: clamp(3.66704px, 1.066vw, 8px);
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text ul.example li {
    text-indent: clamp(-28px, -4.733vw, -16.2815px);
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text ul.example li::before {
    content: "※";
    margin-right: clamp(3.66704px, 1.066vw, 8px);
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_text a {
    color: #855e37;
}

div#content.member_top .item_contents .item_contents_item003 .item_contents_item003_body_text .overview_border {
    width: 100%;
    height: auto;
    padding: clamp(14.675px, 4.266vw, 32px) 0;
}


/* footer_box */
div#content.member_top .footer_box {
    width: 100%;
    height: auto;
    aspect-ratio: 750/394 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

div#content.member_top .footer_box .footer_box_bg {
    width: 100%;
    height: auto;
    aspect-ratio: 750/394 auto;
    display: block;
    position: absolute;
    z-index: 0;
}

div#content.member_top .footer_box .footer_btn {
    width: clamp(229.3577px, 66.66vw, 500px);
    height: auto;
    aspect-ratio: 500/70 auto;
    display: block;
    position: absolute;
    z-index: 1;
    margin-top: clamp(39.4495px, 11.466vw, 86px);
}

/* ==== アニメーション設定 ここから ==== */
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;
}

/* 幅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;
    background-image: url(../../img/31ice/202507/31ice_202507_bg003.png);
    background-position: top center;
    background-size: 100%;
    /* background-size: cover; */
    background-repeat: no-repeat;
}

/* ==== アニメーション設定 ここから ==== */
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) ここから ==== */

/* 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;
    padding: 6.66% 0;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper {
    width: 93.33%;
    /* 700/750 */
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-radius: 8px;
    background-color: #EFB576;
    padding-bottom: 6.66%;
}

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

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

/* item_contents : productcode_date, productcode_image */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_date_box,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_image_box {
    width: 91.428%;
    /* 640/700 */
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 4.28%;
    /* 30/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_date_box .productcode_item003,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_image_box .productcode_item004 {
    width: 100%;
    height: auto;
    aspect-ratio: 640/62 auto;
    display: block;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_date_box .productcode_date {
    line-height: normal;
    text-align: justify;
    word-break: break-all;
    color: #442F19;
    font-size: clamp(1.0rem, 3.0vw, 1.5rem);
    font-weight: bold;
    padding-top: 2.857%;
    /* 20/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_image_box .productcode_image {
    width: 100%;
    height: auto;
    aspect-ratio: 640/360 auto;
    display: block;
    padding-top: 2.857%;
    /* 20/700 */
}

/* item_contents : table */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email {
    width: 91.428%;
    /* 640/700 */
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 4.28%;
    /* 30/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr th.productcode_item006,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr th.productcode_item007 {
    width: 100%;
    height: auto;
    aspect-ratio: 640/62 auto;
    display: block;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr td {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    padding-top: 2.857%;
    /* 20/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr td.error {
    background-color: rgba(238, 0, 0, 0.2);
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr td input {
    width: 100%;
    height: auto;
    font-size: clamp(1.0rem, 3.0vw, 1.5rem);
    font-weight: bold;
    padding: 0.5rem;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr td.error input {
    background-color: rgba(238, 0, 0, 0.3);
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr td div.productcode_item007,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr td div.productcode_item009 {
    width: 100%;
    height: auto;
    display: flex;
    aspect-ratio: 640/70 auto;
    display: block;
    padding-top: 2.857%;
    /* 20/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper table.productcode_email tr td.error div.error {
    color: #ee0000;
    font-size: clamp(1.0rem, 3.0vw, 1.5rem);
    font-weight: bold;
    padding: 2.857% 0;
}

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

/* item_contents : btn */
div#content.other.coupon .productcode_area .item_contents form .productcode_btn {
    width: 68.53%;
    /* 514/750 */
    height: auto;
    display: block;
    padding-top: 6.66%;
}

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

/* footer_box : single */
div#content.other.coupon .footer_box.single {
    width: 100%;
    height: auto;
    aspect-ratio: 750/394 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

div#content.other.coupon .footer_box.single .footer_box_bg {
    width: 100%;
    height: auto;
    aspect-ratio: 750/394 auto;
    display: block;
    position: absolute;
    z-index: 0;
}

div#content.other.coupon .footer_box.single .footer_btn {
    width: clamp(229.3577px, 66.66vw, 500px);
    height: auto;
    aspect-ratio: 500/70 auto;
    display: block;
    position: absolute;
    z-index: 1;
    margin-top: clamp(39.4495px, 11.466vw, 86px);
}

/* 幅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;
    line-height: normal;
    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_item012 {
    width: 91.428%;
    /* 640/700 */
    height: auto;
    aspect-ratio: 640/245 auto;
    display: block;
    padding-top: 7.14%;
    /* 50/700 */
}

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

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .contact_id {
    width: 91.428%;
    /* 640/700 */
    height: auto;
    display: flex;
    justify-content: center;
    line-height: normal;
    text-align: justify;
    word-break: break-all;
    color: #442F19;
    font-size: clamp(1.0rem, 3.0vw, 1.5rem);
    font-weight: bold;
    padding-top: 2.857%;
    /* 20/700 */
}

/* footer_box : double */
div#content.other.coupon .footer_box.double {
    width: 100%;
    height: auto;
    aspect-ratio: 750/515 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

div#content.other.coupon .footer_box.double .footer_box_bg {
    width: 100%;
    height: auto;
    aspect-ratio: 750/515 auto;
    display: block;
    position: absolute;
    z-index: 0;
}

div#content.other.coupon .footer_box.double .footer_btn {
    width: clamp(229.31px, 66.66vw, 500px);
    height: auto;
    aspect-ratio: 500/180 auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    z-index: 1;
    margin-top: clamp(43.1135px, 12.533vw, 94px);
}

div#content.other.coupon .footer_box.double .footer_btn .contact_btn,
div#content.other.coupon .footer_box.double .footer_btn .membertop_btn {
    width: clamp(229.31px, 66.66vw, 500px);
    height: auto;
    aspect-ratio: 500/70 auto;
    display: block;
}


/* ギフトコード情報がある */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_item014 {
    width: 91.428%;
    /* 640/700 */
    height: auto;
    aspect-ratio: 640/462 auto;
    display: block;
    padding-top: 7.14%;
    /* 50/700 */
}

/* item_contents : productcode_code_box,productcode_expire_box */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_code_box,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_expire_box {
    width: 91.428%;
    /* 640/700 */
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 4.28%;
    /* 30/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_code_box .productcode_item015,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_expire_box .productcode_item016 {
    width: 100%;
    height: auto;
    aspect-ratio: 640/62 auto;
    display: block;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_code_box .productcode_code {
    line-height: normal;
    text-align: justify;
    word-break: break-all;
    color: #442F19;
    font-size: clamp(1.0rem, 3.0vw, 1.5rem);
    font-weight: bold;
    padding-top: 2.857%;
    /* 20/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_expire_box .productcode_expire {
    line-height: normal;
    text-align: justify;
    word-break: break-all;
    color: #442F19;
    font-size: clamp(0.875rem, 2.5vw, 1.25rem);
    font-weight: bold;
    padding-top: 2.857%;
    /* 20/700 */
}

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


/* item_contents : productcode_howto_box, productcode_contact_box */
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_howto_box,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_contact_box {
    width: 91.428%;
    /* 640/700 */
    height: auto;
    display: flex;
    flex-direction: column;
    padding-top: 7.14%;
    /* 50/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_howto_box .productcode_item017,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_contact_box .productcode_item018 {
    width: 100%;
    height: auto;
    aspect-ratio: 640/74 auto;
    display: block;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_howto_box .productcode_howto,
div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_contact_box .productcode_contact .contact_text {
    width: 100%;
    height: auto;
    line-height: normal;
    text-align: justify;
    word-break: break-all;
    font-size: clamp(0.875rem, 2.5vw, 1.25rem);
    font-weight: bold;
    color: #442F19;
    padding: 2.857% 0.5rem 0 0.5rem;
    /* 20/700 */
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_howto_box .productcode_howto .howto_text a {
    text-decoration: none;
    font-weight: bold;
    color: #41875F;
}

div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_howto_box .productcode_howto ul {
    padding-top: 2.857%;
    list-style: disc;
    padding-left: 1.5rem;
}


div#content.other.coupon .productcode_area .item_contents form .contents_wrapper .productcode_contact_box .productcode_contact .contact_text a {
    text-decoration: none;
    font-weight: bold;
    color: #442F19;
}


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

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

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

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

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

/* 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;
    padding: clamp(22.9104px, 6.66vw, 50px) 0;
}

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: clamp(252.255px, 73.33vw, 550px);
    height: auto;
    aspect-ratio: 550/550 auto;
    display: block;
}

/* item_contents : btn */
div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_btn {
    width: clamp(235.227px, 68.38vw, 516px);
    height: auto;
    aspect-ratio: 516/79 auto;
    display: block;
    padding-top: clamp(13.76px, 4vw, 30px);
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_item019 {
    width: clamp(320.147px, 93.066vw, 698px);
    /* 698/700 */
    height: auto;
    aspect-ratio: 698/232 auto;
    display: block;
    padding-top: clamp(36.6704px, 10.66vw, 80px);
    /* 80/700 */
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_item020 {
    width: clamp(320.147px, 93.066vw, 698px);
    /* 698/700 */
    height: auto;
    aspect-ratio: 698/282 auto;
    display: block;
    padding-top: clamp(22.9104px, 6.66vw, 50px);
    /* 50/700 */
}

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

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

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

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

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_item021 {
    width: clamp(320.147px, 93.066vw, 698px);
    /* 698/700 */
    height: auto;
    aspect-ratio: 698/190 auto;
    display: block;
}

div#content.other.coupon .couponapi_area .item_contents form .contents_wrapper .couponapi_item022 {
    width: clamp(320.147px, 93.066vw, 698px);
    /* 698/700 */
    height: auto;
    aspect-ratio: 698/232 auto;
    display: block;
    padding-top: clamp(22.9104px, 6.66vw, 50px);
    /* 50/700 */
}


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

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

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





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

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


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