﻿@charset "UTF-8";

/*--------------------------------------
reset
---------------------------------------*/
html {
    width: 100%;
}
body {
    font-size: 14px;
    line-height: 1.3;
    font-family: "メイリオ", "Meiryo", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Osaka, sans-serif;
    padding: 0;
    position: relative;
    width: 100%;
    -webkit-text-size-adjust: 100%;
}
header, footer, nav, section, article, figure, aside {
    display: block;
}
html, body, div, h1, h2, h3, h4, h5, h6,
header, article, section, footer,
blockquote, pre, address, ul, ol, li, dl, dt, dd,
table, th, td, form, fieldset, input, img, a, span, button {
    margin: 0;
    padding: 0;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    word-break: break-all;
}
::-webkit-search-cancel-button {
    -webkit-appearance: none;
}
input::-ms-clear {
    visibility:hidden
}
main {
    display: block;
}
input, button, textarea, select {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
img {
    border: none;
}
/*--------------------------------------
structure
---------------------------------------*/
html {
    height: 100%;
    padding: 0;
    margin: 0;
}
body {
    text-align: center;
    width: 100%;
    min-width: 1020px;
}
header {
    min-width: 1020px;
}
div, header, article, section, nav, footer {
    text-align: left;
}

/*--------------------------------------
text
---------------------------------------*/
p,
pre,
blockquote,
address,
cite {
    margin-top: 0;
    margin-bottom: 0;
    color: #000;
}

/*--------------------------------------
list
---------------------------------------*/
ul,
ol,
dl {
    list-style: none;
}

ul.list{
list-style-position: inside;
}

ul.list li{
    text-align:left;
    line-height:1.5;
    padding-left: 1em;
    text-indent: -1em;
}

ul.list li:before{
    content:"・";
}

ul.note{
    list-style-position: inside;
}

ul.note li{
    line-height:1.5;
    margin-bottom:5px;
    padding-left: 1em;
    text-indent: -1em;
}

ul.note li:before{
    content:"※";
}


/*--------------------------------------
link
---------------------------------------*/
a {
    color: #000;
    text-decoration: none;
}
a img:hover {
    opacity: 0.8;
}

/*--------------------------------------
float
---------------------------------------*/
.fl_l {
    margin-right: 1em !important;
    float: left;
}
.fl_r {
    margin-left: 1em !important;
    float: right;
}
/* -----------------------
locator_A
1:1の2カラムレイアウト
------------------------- */
.locator_A{
    width: 315px;
    height: 58px;
    margin: 30px auto;
}
.locator_A .col_1 {
    float: left;
}
.locator_A .col_2 {
    float: right;
    width: 49%;
}

/* -----------------------
locator_B
1:2の2カラムレイアウト
------------------------- */
.locator_B .col_1 {
    float: left;
    width: 33%;
}
.locator_B .col_2 {
    float: right;
    width: 65%;
}
/* -----------------------
locator_C
2:1の2カラムレイアウト
------------------------- */
.locator_C .col_1 {
    float: left;
    width: 65%;
}
.locator_C .col_2 {
    float: right;
    width: 33%;
}
/* -----------------------
locator_D
1:1:1の3カラムレイアウト
------------------------- */
.locator_D .col_1 {
    float: left;
    width: 29.5%;
}
.locator_D .col_2 {
    float: left;
    width: 29.5%;
    margin-left: 6%;
}
.locator_D .col_3 {
    float: right;
    width: 29.5%;
}

/* -----------------------
locator_D2
1:1:1の3カラムレイアウト
※STEP内限定
------------------------- */
.locator_D2 .col_1 {
    float: left;
    width: 27.8%;
}
.locator_D2 .col_2 {
    float: left;
    width: 27.8%;
    margin-left: 8%;
}
.locator_D2 .col_3 {
    float: right;
    width: 27.8%;
}

/* -----------------------
locator_E
1:1:1の3カラムレイアウト(派生)
※コンテンツエリアが狭いときのみ使用
------------------------- */
.locator_E .col_1 {
    float: left;
    width: 33%;
}
.locator_E .col_2 {
    float: left;
    width: 33%;
    margin-left: 5px;
}
.locator_E .col_3 {
    float: right;
    width: 33%;
}
/* -----------------------
locator_F
1:2の2カラムレイアウト（派生）
------------------------- */
.locator_F .col_1 {
    float: left;
    width: 35%;
}
.locator_F .col_2 {
    float: right;
    width: 60%;
}
/* -----------------------
locator_H
1:1の2カラムレイアウト（派生）
------------------------- */
.locator_H .col_1 {
    float: left;
    width: 45%;
}
.locator_H .col_2 {
    float: right;
    width: 45%;
}
/* -----------------------
locator_I
7:4:9の3カラムレイアウト（独自）
VJA購入方法限定
------------------------- */
.locator_I .col_1 {
    float: left;
    width: 35%;
}
.locator_I .col_2 {
    float: left;
    width: 20%;
}
.locator_I .col_3 {
    float: right;
    width: 45%;
}
/* -----------------------
locator_J
1:4の2カラムレイアウト（独自）
コラムでのみ使用
------------------------- */
.locator_J .col_1 {
    float: left;
    width: 20%;
}
.locator_J .col_2 {
    float: right;
    width: 78%;
}
/* -----------------------
locator_K
4:1の2カラムレイアウト（独自）
コラムでのみ使用
------------------------- */
.locator_K .col_1 {
    float: left;
    width: 78%;
}
.locator_K .col_2 {
    float: right;
    width: 20%;
}

.clear {
    clear: both;
}

/*--------------------------------------
clearFix
---------------------------------------*/
.clearfix::after {
    height: 0;
    visibility: hidden;
    content: ".";
    display: block;
    clear: both;
}

/*--------------------------------------
h1,h2,h3,h4,h5,h6
---------------------------------------*/
h2,
h3,
h4,
h5,
h6 {
    clear: both;
}
h1 {
    font-size: 32px;
    color: #004a3c;
}
h1.info {
/*    margin-top:30px;
    margin-bottom:30px;*/
    font-size: 32px;
    color: #004a3c;
    text-align:center;
}

h1.column {
    font-size: 32px;
    color: #004a3c;
    text-align: center;
/*    padding-bottom: 50px;*/
}


h2 {
    box-sizing: content-box;
    position: relative;
    font-weight: bold;
    padding-left:8px;
    font-size: 18px;
    margin-bottom: 10px;
    margin-top: 20px;
    color: #1f6054;
    border-left: 5px solid #1f6054;
}
h2:after{
    content: "";
    display: block;
    width: 1000px;
    height: 1px;
    position: absolute;
    bottom: -8px;
    left: -5px;
    border-bottom: 1px solid #1f6054;
}
h2.login,h2.login:after{
   border: none;
}
h2.login{
   font-size: 32px;
}
h3 {
    font-size: 16px;
    color: #005135;
    background-color: #e1ecc5;
    padding: 9px 8px 9px 13px;
    margin:20px 0 10px;
    font-weight: bold;
    overflow: hidden;
    line-height: 1.5;
}
.h3_box {
    padding-top: 20px;
    margin-bottom: 20px;
}
main.vja h3 {
    background-color: #336e63;
    max-width:1000px;
    margin:0 auto;
}
/* 02-240-02 認知必要情報 */
.AcdiCaution .AcdiHead,
.AcdiCaution .AcdiBody {
    background-color: #fdefe5;
}
.AcdiCaution .AcdiHead,
.AcdiCautionType02 .AcdiHead,
.AcdiCaution .AcdiHead .IconTCaution,
.AcdiCaution .AcdiBody, .AcdiCautionType02 .AcdiBody{
    border-color: #f4d8c4;
}

/*--------------------------------------
icon
---------------------------------------*/
/*画像*/
.blank_icon:after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 13px;
    margin-bottom: -2px;
    margin-left: 5px;
    margin-right: 3px;
    background: url("/giftcard/common/img/icon_blank.png") top left no-repeat;
}
.blank_icon02:after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 13px;
    margin-bottom: -2px;
    margin-left: 5px;
    margin-right: 3px;
    background: url("/giftcard/common/img/icon_blank02.png") top left no-repeat;
}
.close_icon:after {
    content: "";
    display: inline-block;
    width: 11px;
    height: 11px;
    margin-bottom: -1px;
    margin-left: 5px;
    background: url("/giftcard/common/img/icon_close.png") top left no-repeat;
}
.home_icon:before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 15px;
    margin-bottom: -2px;
    padding-right: 5px;
    background: url("/giftcard/common/img/icon_home.png") top left no-repeat;
}
.nav_icon:after {
    position: absolute;
    top: 35px;
    right: 28px;
    content: "";
    border-style: solid;
    border-color: #000 transparent transparent transparent;
    border-width: 6px 6px 0 6px;
}
.nav_icon:hover:after {
    border-color: #7db823 transparent transparent transparent;
}
.question_icon {
    position: relative;
}
.question_icon:before {
    content: "";
    position: absolute;
    left: 0;
    width: 22px;
    height: 22px;
    background: url(/giftcard/common/img/icon_question.png) top center no-repeat;
}
.question_icon02 {
    position: relative;
    padding-left: 50px;
}
.question_icon02:before {
    content: "";
    position: absolute;
    left: 0;
    top: -10px;
    width: 37px;
    height: 40px;
    background: url(/giftcard/common/img/icon_question02.png) top center no-repeat;
}
.answer_icon {
    position: relative;
    padding-left: 35px;
}
.answer_icon:before {
    content: "";
    position: absolute;
    left: 0;
    top: -3px;
    width: 30px;
    height: 22px;
    background: url(/giftcard/common/img/icon_answer.png) top center no-repeat;
}
.pen_icon {
    position: relative;
    display: inline-block;
    padding-left: 35px;
}
.pen_icon:before {
    content: "";
    position: absolute;
    left: 0;
    top: -3px;
    width: 30px;
    height: 22px;
    background: url(/giftcard/common/img/icon_pen.png) top center no-repeat;
}
.check_icon {
    position: relative;
    padding-left: 25px;
}
.check_icon:before {
    content: "";
    position: absolute;
    left: 0;
    top: -2px;
    width: 22px;
    height: 22px;
    background: url(/giftcard/common/img/icon_check.png) top center no-repeat;
}
.balloon_icon {
    position: relative;
}
.balloon_icon:after {
    content: "";
    position: absolute;
    right: -90px;
    top: -25px;
    width: 77px;
    height: 55px;
    background: url(/giftcard/common/img/icon_balloon.png) right center no-repeat;
}
.balloon_icon02 {
    position: relative;
}
.balloon_icon02:after {
    content: "";
    position: absolute;
    right: -90px;
    top: -25px;
    width: 77px;
    height: 55px;
    background: url(/giftcard/common/img/icon_balloon02.png) right center no-repeat;
}
.anchor_icon01 {
    position: relative;
}
.anchor_icon01:before {
    content: "";
    position: absolute;
    top: -15px;
    left: -55px;
    width: 47px;
    height: 46px;
    background: url(/giftcard/common/img/icon_anchor01.png) right center no-repeat;
    background-size: 50%;
}
.anchor_icon02 {
    position: relative;
}
.anchor_icon02:before {
    content: "";
    position: absolute;
    top: -10px;
    left: -58px;
    width: 52px;
    height: 38px;
    background: url(/giftcard/common/img/icon_anchor02.png) right center no-repeat;
    background-size: 50%;
}
.anchor_icon03 {
    position: relative;
}
.anchor_icon03:before {
    content: "";
    position: absolute;
    top: -10px;
    left: -58px;
    width: 52px;
    height: 38px;
    background: url(/giftcard/common/img/icon_anchor03.png) right center no-repeat;
    background-size: 50%;
}
.anchor_icon04 {
    position: relative;
    display: inline-block;
    padding-left: 25px;
}
.anchor_icon04:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 16px;
    height: 15px;
    background: url(/giftcard/common/img/icon_anchor04.png) right center no-repeat;
    background-size: 100%;
}
.shop_icon {
    position: relative;
}
.shop_icon:before {
    content: "";
    position: absolute;
    top: -11px;
    left: -55px;
    width: 47px;
    height: 46px;
    background: url(/giftcard/common/img/icon_shop.png) right center no-repeat;
    background-size: 50%;
}
.pc_icon {
    position: relative;
}
.pc_icon:before {
    content: "";
    position: absolute;
    top: -5px;
    left: -58px;
    width: 52px;
    height: 38px;
    background: url(/giftcard/common/img/icon_pc.png) right center no-repeat;
    background-size: 50%;
}
.call_icon {
    position: relative;
}
.call_icon:before {
    content: "";
    position: absolute;
    top: -5px;
    left: -58px;
    width: 52px;
    height: 38px;
    background: url(/giftcard/common/img/icon_call.png) right center no-repeat;
    background-size: 50%;
}
.notice_icon {
    position: relative;
}
.notice_icon:before {
    content: "";
    position: absolute;
    height: 45px;
    top: -13px;
    left: -50px;
    width: 45px;
    height: 45px;
    background: url(/giftcard/common/img/icon_notice.png) right center no-repeat;
    background-size: 50%;
}
.search_icon {
    position: relative;
    display: inline-block;
    padding-left: 25px;
}
.search_icon:before {
    content: "";
    position: absolute;
    left: -2px;
    top: 0px;
    width: 22px;
    height: 22px;
    background: url(/giftcard/common/img/icon_search.png) top center no-repeat;
    background-size: 80%;
}

/*矢印*/
.arrow {
    position: relative;
    display: inline-block;
    padding-left: 20px;
}
.arrow::before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 2px #004a3c;
    border-right: solid 2px #004a3c;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: -0;
    margin-top: -5px;
}
.arrow02 {
    position: relative;
    display: inline-block;
    padding-left: 20px;
}
.arrow02::before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: -0;
    margin-top: -5px;
}
.arrow03 {
    position: relative;
    display: inline-block;
    padding-left: 20px;
}
.arrow03::before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: -0;
    margin-top: -5px;
}
.arrow04 {
    position: relative;
}
.arrow04::after {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    float: right;
    border-top: solid 1px #004a3c;
    border-right: solid 1px #004a3c;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 5px;
    right: -15px;
}
.arrow05 {
    position: relative;
}
.arrow05:after {
    content: "";
    position: absolute;
    right: -35px;
    top: 110px;
    width: 13px;
    height: 15px;
    background: url(/prepaid/wearable-v/lp/img/icon_right_arrow.png) right center no-repeat;
}
.arrow06 {
    position: relative;
}
.arrow06::after {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    float: right;
    border-top: solid 1px #004a3c;
    border-right: solid 1px #004a3c;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 5px;
    right: -15px;
}
.arrow07 {
    position: relative;
    display: inline-block;
    padding-left: 20px;
}
.arrow07::before {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    float: right;
    border-top: solid 1px #004a3c;
    border-right: solid 1px #004a3c;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 2px;
    left: 0;
}


/*--------------------------------------
button
---------------------------------------*/
.btn_01 {
border: 2px solid #004a3c;
    background-color: #ebf6dd;
    border-radius: 3px;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    width: 100%;
}
.btn_01 a {
    color: #004a3c;
    padding: 15px;
    font-weight: bold;
    display: block;
}
.btn_01:hover {
    opacity: 0.8;
}
.btn_02 {
    border: 2px solid #000;
    background-color: #fff;
    border-radius: 3px;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    width: 100%;
}
.btn_02 a {
    color: #000;
    padding: 10px;
    font-weight: bold;
    display: block;
}
.btn_02:hover {
    opacity: 0.8;
}
.btn_03 {
    background-color: #004a3c;
    border-radius: 3px;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    width: 100%;
}
.btn_03 a {
    font-weight: bold;
    display: block;
    width: 315px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn_03 a p{
    color: #fff;
    line-height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn_03 a p span{
    color: #fff;
    display: flex;
}
.btn_03 a span{
    display: inline-block;
}
.btn_03:hover {
    opacity: 0.8;
}
.btn_04 {
    background-color: #e95903;
    box-shadow: 0px 3px #b94b09;
    border-radius: 3px;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    width: 100%;
    font-size: 20px;
}
.btn_04 a {
    color: #fff;
    padding: 15px;
    font-weight: bold;
    display: block;
}
.btn_04:hover {
    opacity: 0.8;
}
.btn_anchor {
    border: 1px solid #e5e5e5;
    text-align: center;
    margin: 30px 0; 
}
.btn_anchor li {
    float: left;
    text-align: center;
    width: 50%;
}
.btn_anchor li + li {
    border-left: 1px solid #e5e5e5;
}
.btn_anchor a {
    padding: 20px;
    display: block;
    color: #004a3c;
    text-decoration: underline;
}
.btn_anchor a:hover {
    text-decoration: none;
}
.btn_anchor02 {
    border: 1px solid #e5e5e5;
    text-align: center;
    margin: 30px 0; 
}
.btn_anchor02 li {
    float: left;
    text-align: center;
    width: 33.33%;
}
.btn_anchor02 li + li {
    border-left: 1px solid #e5e5e5;
}
.btn_anchor02 a {
    padding: 20px;
    display: block;
    color: #004a3c;
    text-decoration: underline;
}
.btn_anchor02 a:hover {
    text-decoration: none;
}

/*--------------------------------------
textリンク
---------------------------------------*/
.text_link li {
    margin-bottom: 15px;
}
.text_link a {
    color: #004a3c;
    text-decoration: underline;
    font-weight: bold;
}
.text_link a:hover {
    opacity: 1;
    text-decoration: none;
}
.underline {
    text-decoration: underline;
    cursor: pointer;
}
.underline:hover {
    text-decoration: none;
    opacity: 1;
}

/*--------------------------------------
title
---------------------------------------*/
.ttl_type {
    display: block;
    margin: 0 auto;
    width: 73px;
    height: 57px;
    background: url("/giftcard/common/img/ttl_type.png") top center no-repeat;
    background-size: 60%;
    padding-bottom: 25px;
}
.ttl_story {
    display: block;
    margin: 0 auto;
    width: 76px;
    height: 50px;
    background: url("/giftcard/common/img/ttl_story.png") top center no-repeat;
    background-size: 60%;
    padding-bottom: 25px;
}
.ttl_voice {
    display: block;
    margin: 0 auto;
    width: 76px;
    height: 42px;
    background: url("/giftcard/common/img/ttl_voice.png") top center no-repeat;
    background-size: 60%;
    padding-bottom: 25px;
}
.ttl_column {
    display: block;
    margin: 0 auto;
    width: 97px;
    height: 43px;
    background: url("/giftcard/common/img/ttl_column.png") top center no-repeat;
    background-size: 60%;
    padding-bottom: 25px;
}
.ttl_place {
    display: block;
    margin: 0 auto;
    width: 81px;
    height: 55px;
    background: url("/giftcard/common/img/ttl_place.png") top center no-repeat;
    background-size: 60%;
    padding-bottom: 25px;
}
.ttl_design {
    display: block;
    margin: 0 auto;
    width: 104px;
    height: 55px;
    background: url(/giftcard/common/img/ttl_design.png) top center no-repeat;
    background-size: 47%;
    padding-bottom: 25px;
}
.ttl_message {
    display: block;
    margin: 0 auto;
    width: 126px;
    height: 54px;
    background: url(/giftcard/common/img/ttl_message.png) top center no-repeat;
    background-size: 60%;
    padding-bottom: 25px;
}
.ttl_cards {
    display: block;
    margin: 0 auto;
    width: 101px;
    height: 54px;
    background: url(/giftcard/common/img/ttl_cards.png) top center no-repeat;
    background-size: 60%;
    padding-bottom: 25px;
}
.ttl_index {
    display: block;
    margin: 0 auto;
    width: 101px;
    height: 50px;
    background: url(/giftcard/common/img/ttl_index.png) top center no-repeat;
    background-size: 60%;
    padding-bottom: 25px;
}
.ttl_type span,
.ttl_story span,
.ttl_voice span,
.ttl_column span,
.ttl_place span,
.ttl_design span,
.ttl_message span,
.ttl_cards span,
.ttl_index span {
    display: none;
}
.sub_ttl {
    text-align: left;
    background-color: #fff;
    color: #1f6054;
    font-size: 20px;
    line-height: 1;
    font-weight: bold;
    border-left: 5px solid #1f6054;
    padding: 10px;
}
.ttl_answer {
    border-bottom :1px dotted #7fa49d;
    margin-top: 30px;
    color: #004a3c;
    font-size: 16px;
    padding-bottom: 10px;
}

/*--------------------------------------
ヘッダー
---------------------------------------*/
/* SP用非表示 */
.menu_btn_sp,
.menu_area_sp{
    display: none !important;
}
.global_header {
    min-height: 65px;
    width: 100%;
    background-color: #FFFFFF;
    top: 0;
    left: 0;
    min-width: 1020px;
    height: 82px;
}
.global_header .global_header_inner {
    width: 1000px;
    margin: 0 auto;
    padding: 0 10px;
}
.global_header .logo_area {
    float: left;
    margin: 7px 0 0;
}
.global_header .logo_area .logo {
    width: 220px;
    height: 30px;
    position:relative;
    top:18px;
    width: 220px;
    height: 30px;
    background: url("../img/logo_header.png") top left no-repeat;
}
.global_header .logo_area .logo span {
    display: none;
}
.global_header .logo_area .logo a:hover {
    opacity:1; 
}
.global_header .logo_area .logo_text {
    font-size: 12px;
    padding-left: 4px;
    margin: 10px 0;
}
.global_header .logo_area .logo_text a {
    text-decoration: underline;
}
.global_header .logo_area .logo_text a:hover {
    text-decoration: none;
    opacity: 1;
}
/*--------------------------------------
フッター
---------------------------------------*/
footer {
    display: block;
    width: 100%;
    height: 70px;
    background: #dae1cc;
}
.footer_inner{
  width: 1000px;
  height: 70px;
  margin: 0 auto;
}
.copylight{
  line-height: 70px;
  color: #000;
  text-align: center;
}--------------------------------
slick
---------------------------------------*/
.slick-slider {
    width: 1000px;
    height: 311px;
    margin: 0 auto;
    margin-bottom: 60px;
}
.slick-slider img {
    width: 100%;
    height: auto;
}

/*--------------------------------------
wrapper
---------------------------------------*/
.wrapper {
    padding: 30px 0;
    overflow: hidden;
}

/*--------------------------------------
contents
---------------------------------------*/
.contents_wrap {
    width: 1000px;
    margin: 0 auto;
    margin-bottom: 60px;
}
.contents_wrap02 {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    margin-bottom: 90px;
}
.column_article_wrap {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 35px 0;
    margin-bottom: 90px;
    background-color: #ebebe3;
}
.column_article_wrap .column_article_inner {
    background-color: #fff;
    width: 1000px;
    margin: 0 auto;
}
.contents_step_wrap {
    width: 810px;
    margin: 0 auto;
    margin-bottom: 90px;
}
.scene_catch_wrap {
    width: 1000px;
    margin: 0 auto;
    margin-bottom: 90px;
    background-color: #fff;
    margin-top: -45px;
    padding-top: 25px;
    position: relative;
}
.btn_wrap {
    padding: 0 325px;
    margin-top: 30px;
}
.btn_wrap02 {
    padding: 0 110px;
    margin-top: 30px;
}


/*--------------------------------------
accordion
---------------------------------------*/
/*ご質問*/
.gift_question li {
    border-top: 1px solid #eee;
}
.gift_question li:last-child {
    border-bottom: 1px solid #eee;
}
.gift_question dl dd li {
    border: none;
    margin-bottom: 20px
}
.gift_question dl dd li:last-child {
    border: none;
}
.gift_question dl.accordion dt {
    cursor: pointer;
    display: block;
    padding: 20px 50px 20px 30px;
    position: relative;
    line-height: 2;
}
.gift_question dl.accordion dt:hover {
    text-decoration: underline;
}
.gift_question dl.accordion dt::after {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    float: right;
    border-top: solid 1px #004a3c;
    border-right: solid 1px #004a3c;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 40%;
    right: 15px;
}
.gift_question dl.accordion dt.open::after {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    float: right;
    border-top: solid 1px #004a3c;
    border-right: solid 1px #004a3c;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: relative;
    position: absolute;
    top: 47%;
    right: 15px;
}
.gift_question dl.accordion ol {
    padding-left: 30px;
    padding-right: 100px;
}
.gift_question dl.accordion ol li {
    line-height: 2;
}

.gift_question dl.accordion ul.list{
    list-style-position: inside;
}

.gift_question dl.accordion ul.list li{
    line-height:1.5;
    margin-bottom:5px;
    padding-left: 1em;
    text-indent: -1em;
}

.gift_question dl.accordion ul.note{
    list-style-position: inside;
}

.gift_question dl.accordion ul.note li{
    line-height:1.5;
    margin-bottom:5px;
    padding-left: 1em;
    text-indent: -1em;
}

/*使えない場所*/
.gift_available li {
    background-color: #f0f0f0;
}
.gift_available .gift_available_text {
    margin-bottom: 30px;
}
.gift_available .gift_available_text_link {
    margin-top: 10px;
}
.gift_available dl dd li {
    border: none;
    margin-bottom: 20px
}
.gift_available dl.accordion dt {
    cursor: pointer;
    display: block;
    padding: 20px 50px 20px 30px;
    text-align: center;
    border: 1px solid #dbdbdb;
}
.gift_available dl.accordion dt span {
    position: relative;
    padding-left: 30px;
    font-weight: bold;
}
.gift_available dl.accordion dt:hover {
    opacity: 0.7;
}
.gift_available dl.accordion dt span::after {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    float: right;
    border-top: solid 1px #004a3c;
    border-right: solid 1px #004a3c;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 25%;
    right: -20px;
}
.gift_available dl.accordion dt.open span::after {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    float: right;
    border-top: solid 1px #004a3c;
    border-right: solid 1px #004a3c;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: relative;
    position: absolute;
    top: 37%;
    right: -20px;
}
.gift_available dl.accordion dd {
    padding: 30px 60px;
    border-bottom: 1px solid #dbdbdb;
    border-left: 1px solid #dbdbdb;
    border-right: 1px solid #dbdbdb;
}
.gift_available dl.accordion ol li {
    line-height: 2;
    text-align: center;
}
.gift_available dl.accordion ol li .item01 {
    float: left;
    width: 29.5%;
}
.gift_available dl.accordion ol li .item02 {
    float: left;
    width: 29.5%;
    margin-left: 6%;
}
.gift_available dl.accordion ol li .item03 {
    float: right;
    width: 29.5%;
}

.gift_available dl.accordion ul.list,
.gift_available dl.accordion ul.note{
    list-style-position: inside;
}

.gift_available dl.accordion ul.list,
.gift_available dl.accordion ul.note li{
    line-height:1.5;
    margin-bottom:5px;
    padding-left: 1em;
    text-indent: -1em;
}


/*--------------------------------------
お知らせ
---------------------------------------*/
.gift_notice li {
    border-top: 1px solid #e5e5e5;
}
.gift_notice li:last-child {
    border-bottom: 1px solid #e5e5e5;
}
.gift_notice .gift_notice_list dt {
    float: left;
    width: 13%;
    padding-left: 15px;
    padding: 20px 0;
}
.gift_notice .gift_notice_list dd {
    float: left;
    padding: 0;
    width: 87%;
    padding: 20px 0;
}
.gift_notice .gift_notice_list dd p {
    margin-top: 10px;
}
.gift_notice .gift_notice_list a {
    text-decoration: underline;
    color: #004a3c;
    display: block;
}
.gift_notice .gift_notice_list a:hover {
    text-decoration: none;
}

/*--------------------------------------
CV Area
---------------------------------------*/
.cvarea{
    padding:40px;
    background-color:#ebebe3;
}
.cvarea > .btn_wrap{
    margin:0;
}

/*--------------------------------------
info
---------------------------------------*/
.gift_info .gift_info_box {
    border: 1px solid #e5e5e5;
    font-size: 15px;
}
.gift_info .gift_info_box .ttl {
    border-bottom: 1px solid #e5e5e5;
    padding: 20px;
}
.gift_info .gift_info_box .gift_info_tel_box {
    padding: 20px;
    line-height: 2;
}
.gift_info .gift_info_box .gift_info_tel_box .tell {
    font-size: 28px;
    font-weight: bold;
}
.gift_info .gift_info_box .gift_info_tel_box .tell a {
    cursor: text;
    pointer-events: none;
}
.gift_info .gift_info_box .gift_info_tel_box .info_link {
    border-top: 1px solid #e5e5e5;
    margin-top: 15px;
    padding-top: 15px;
    line-height: 1;
}
.gift_info .gift_info_box .gift_info_tel_box .info_link li:last-child {
    margin-bottom: 0;
}

/*--------------------------------------
tableレイアウト
---------------------------------------*/
table.type01 {
    border-collapse: separate;
    margin-top: 30px;
}
table.type01 thead th {
    padding: 20px 0;
    text-align: left;
    border-bottom: 1px solid #e0e0e0;
}
table.type01 th,
table.type01 td {
    vertical-align: top;
    line-height: 1.5;
    overflow: hidden;
    padding: 20px 0;
    font-weight: normal;
}
th{
    border-left: 1px solid #c8c8c8;
    border-top: 1px solid #c8c8c8 !important;
    background: #eeeeee;
    font-weight: bold;
}
.FormBoxItemHeading:first-child,
th:first-child{
    border-left: none;
}
.FormBoxItem,
td{
    border-left: 1px solid #c8c8c8;
    border-top: 1px solid #c8c8c8 !important;
}

.FormBoxItem:first-child,
td:first-child{
    border-left: none;
}
.TextC{
    text-align: center;
}
.TextR{
    text-align: right;
}
/*--------------------------------------
giftレイアウト
---------------------------------------*/
/*type*/
.gift_type {
    margin: 0 auto;
    font-size: 13px;
}
.gift_type .notes {
    margin-top: -30px;
    margin-bottom: 30px;
}
.gift_type .gift_type_inner .visa_card {
    float: left;
    width: 385px;
}
.gift_type .gift_type_inner .vja_card {
    float: right;
    width: 385px;
}
.gift_type .gift_type_inner .text {
    line-height: 2;
    margin-bottom: 20px;
}
.gift_type .gift_type_inner .btn_area {
    margin-bottom: 20px;
}
.gift_type .gift_type_inner img {
    display: block;
    width: 310px;
    height: auto;
    padding: 50px 0;
    margin: 0 auto;
}
.gift_type .gift_type_inner .label_box .label_1 {
    margin-bottom: 10px;
}
.gift_type .gift_type_inner .label_box .label_2 {
    margin-bottom: 30px;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-1 span,
.gift_type .gift_type_inner .label_box .label_1 .label_1-2 span,
.gift_type .gift_type_inner .label_box .label_1 .label_1-2 span,
.gift_type .gift_type_inner .label_box .label_2 .label_1-1 span,
.gift_type .gift_type_inner .label_box .label_2 .label_1-2 span {
    font-size: 10px;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-1 {
    float: left;
    width: 63%;
    border: 1px solid #eaeaea;
    background-color: #eaeaea;
    border-radius: 4px;
    font-weight: bold;
    font-size: 11px;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-1 .item {
    float: left;
    width: 40%;
    text-align: center;
    padding: 10px 3px 0;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-1 .item_discription {
    float: right;
    width: 60%;
    background-color: #fff;
    padding: 3px;
    text-align: center;
    border-radius: 0 3px 3px 0;
    font-size: 13px;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-2 {
    float: right;
    width: 35%;
    border: 1px solid #eaeaea;
    background-color: #eaeaea;
    border-radius: 4px;
    font-weight: bold;
    font-size: 11px;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-2 .item {
    float: left;
    width: 60%;
    text-align: center;
    padding: 10px 3px;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-2 .item_discription {
    float: right;
    width: 40%;
    background-color: #fff;
    border-radius: 0 3px 3px 0;
    padding: 10px 3px;
    text-align: center;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-3 {
    float: left;
    width: 63%;
    border: 1px solid #eaeaea;
    background-color: #eaeaea;
    border-radius: 4px;
    font-weight: bold;
    font-size: 11px;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-3 .item {
    float: left;
    width: 40%;
    text-align: center;
    padding: 10px 3px;
}
.gift_type .gift_type_inner .label_box .label_1 .label_1-3 .item_discription {
    float: right;
    width: 60%;
    background-color: #fff;
    padding: 9px 3px;
    text-align: center;
    border-radius: 0 3px 3px 0;
    font-size: 13px;
}
.gift_type .gift_type_inner .label_box .label_2 .label_2-1 {
    float: left;
    width: 28%;
    border: 1px solid #eaeaea;
    background-color: #eaeaea;
    border-radius: 4px;
    font-weight: bold;
    font-size: 11px;
}
.gift_type .gift_type_inner .label_box .label_2 .label_2-1 .item {
    float: left;
    width: 60%;
    text-align: center;
    padding: 10px 3px;
}
.gift_type .gift_type_inner .label_box .label_2 .label_2-1 .item_discription {
    float: right;
    width: 40%;
    background-color: #fff;
    padding: 10px 3px;
    text-align: center;
    border-radius: 0 3px 3px 0;
}
.gift_type .gift_type_inner .label_box .label_2 .label_2-2 {
    float: left;
    width: 28%;
    margin-left: 2%;
    border: 1px solid #eaeaea;
    background-color: #eaeaea;
    border-radius: 4px;
    font-weight: bold;
    font-size: 11px;
}
.gift_type .gift_type_inner .label_box .label_2 .label_2-2 .item {
    float: left;
    width: 60%;
    text-align: center;
    padding: 10px 3px;
}
.gift_type .gift_type_inner .label_box .label_2 .label_2-2 .item_discription {
    float: right;
    width: 40%;
    background-color: #fff;
    border-radius: 0 3px 3px 0;
    padding: 10px 3px;
    text-align: center;
}
.gift_type .gift_type_inner .label_box .label_2 .label_2-3 {
    float: right;
    width: 40%;
    border: 1px solid #eaeaea;
    background-color: #eaeaea;
    border-radius: 4px;
    font-weight: bold;
    font-size: 11px;
}
.gift_type .gift_type_inner .label_box .label_2 .label_2-3 .item {
    float: left;
    width: 70%;
    text-align: center;
    padding: 10px 3px;
}
.gift_type .gift_type_inner .label_box .label_2 .label_2-3 .item_discription {
    float: right;
    width: 30%;
    background-color: #fff;
    border-radius: 0 3px 3px 0;
    padding: 10px 3px;
    text-align: center;
}
.gift_type .gift_type_choose {
    text-align: center;
    border-top: 2px solid #e5e5e5;
    padding-top: 90px;
}
.gift_type .gift_type_choose ul.cardtile {
    display: inline-block;
}
.gift_type .gift_type_choose ul.cardtile li {
    background-color: #f4f0d0;
    display: inline-block;
    float: left;
    margin-left: 15px;
    width: 140px;
    padding: 20px 0;
}

/*story*/
/*背景色あり*/
.gift_story {
    background: url("/giftcard/common/img/bg_story.jpg") center top no-repeat;
    padding: 90px 0 110px;
    background-size: cover;
}
.gift_story .gift_story_inner {
    padding: 0 25px;
    width: 1000px;
    margin: 0 auto;
}
.gift_story .gift_box p {
    line-height: 2;
}
.gift_story .gift_box li {
    width: 885px;
    background-color: #fff;
    margin-bottom: 30px;
    position: relative;
    padding: 15px;
}
.gift_story .ttl {
    font-size: 24px;
    margin-top: 10px;
}
.gift_story .lead {
    font-size: 14px;
}
.gift_story .gift_box .btn_box {
    margin: 10px 50px;
}
.gift_story .icon_ribbon_left:before {
    content: '';
    background: url(/giftcard/common/img/icon_ribbon_left.png) left top no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100px;
}
.gift_story .icon_ribbon_left .text_box {
    text-align: center;
    padding-top: 40px;
    padding-left: 30px;
    margin-top:50px;
}
.gift_story .icon_ribbon_right {
    margin-left: 65px;
}
.gift_story .icon_ribbon_right:before {
    content: '';
    background: url("/giftcard/common/img/icon_ribbon_right.png") right top no-repeat;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    height: 100px;
}
.gift_story .icon_ribbon_right .text_box {
    text-align: center;
    padding-top: 40px;
    padding-right: 30px;
    margin-top:50px;
}
.gift_story .text_box .scene_icon {
    text-align: center;
}

/*背景色なし*/
.gift_story02 .gift_story_inner {
    padding: 0 25px;
    width: 1000px;
    margin: 0 auto;
    border-bottom: 2px solid #e5e5e5;
    border-top: 2px solid #e5e5e5;
    padding: 90px 0;
}
.gift_story02 .gift_box p {
    line-height: 2;
}
.gift_story02 .gift_box li {
    width: 885px;
    background-color: #fff;
    margin-bottom: 30px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding: 15px;
    border: 1px solid #e5e5e5;
}
.gift_story02 .ttl {
    font-size: 24px;
    margin-top: 10px;
}
.gift_story02 .lead {
    font-size: 14px;
}
.gift_story02 .gift_box .btn_box {
    margin: 10px 50px;
}
.gift_story02 .icon_ribbon_left:before {
    content: '';
    background: url(/giftcard/common/img/icon_ribbon_left.png) left top no-repeat;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100px;
}
.gift_story02 .icon_ribbon_left .text_box {
    text-align: center;
    padding-top: 40px;
    padding-left: 30px;
    margin-top:50px;
}
.gift_story02 .icon_ribbon_right:before {
    content: '';
    background: url("/giftcard/common/img/icon_ribbon_right.png") right top no-repeat;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    height: 100px;
}
.gift_story02 .icon_ribbon_right .text_box {
    text-align: center;
    padding-top: 40px;
    padding-right: 30px;
    margin-top:50px;
}
.gift_story02 .text_box .scene_icon {
    text-align: center;
}

/*voice*/
.gift_voice ul li {
    margin-bottom: 35px;
}
.gift_voice ul li .voice_bg_01,
.gift_voice ul li .voice_bg_02 {
    content: '';
    background: url("/giftcard/common/img/bg_voice.jpg") top center;
    width: 490px;
    padding: 50px;
    position: relative;
    border-radius: 8px;
    box-shadow: 1px 1px 1px #b7b7b7;
}
.gift_voice ul li .voice_bg_01:before {
    content: '';
    background: url("/giftcard/common/img/icon_voice01.png") top left no-repeat;
    position: absolute;
    width: 120px;
    height: 120px;
    top: 15px;
    left: 15px;
}
.gift_voice ul li .voice_bg_01:after {
    content: '';
    background: url("/giftcard/common/img/icon_voice03.png") top left no-repeat;
    position: absolute;
    width: 120px;
    height: 120px;
    bottom: -65px;
    right: 0;
}
.gift_voice ul li .voice_bg_02:before {
    content: '';
    background: url("/giftcard/common/img/icon_voice04.png") top left no-repeat;
    position: absolute;
    width: 120px;
    height: 120px;
    top: 15px;
    left: 15px;
}
.gift_voice ul li .voice_bg_02:after {
    content: '';
    background: url("/giftcard/common/img/icon_voice02.png") top left no-repeat;
    position: absolute;
    width: 120px;
    height: 120px;
    bottom: -65px;
    right: 0;
}
.gift_voice ul li .voice_bg_01 p,
.gift_voice ul li .voice_bg_02 p {
    line-height: 3;
    border-bottom: 2px #bfbfbf dotted;
    display: inline;
}

/*column*/
.gift_column {
    background-color: #d9f0e5;
    padding: 90px 0;
}

.gift_column .img_area{
    height: 120px;
}

.gift_column img {
    width: 100%
}
.gift_column .gift_column_inner {
    width: 1000px;
    margin: 0 auto;
}
.gift_column .gift_column_box {
    background-color: #fff;
    width: 100%;
    position: relative;
    padding: 20px 20px 10px;
}
.gift_column .gift_column_box p {
    padding: 10px 0px 20px
}
.gift_column .gift_column_box .column_icon {
    text-align: center;
    margin-top: -50px;
}
.gift_column .gift_column_box .column_icon img {
    width: 61px;
    height: 61px;
    margin: 0 auto;
}

/*place*/
.gift_place .gift_place_box,
.gift_place .gift_place_box02,
.gift_place .gift_place_box03 {
    margin: 0 auto;
    text-align: center;
    padding: 0 60px 30px;
}
.gift_place .gift_place_box p,
.gift_place .gift_place_box02 p,
.gift_place .gift_place_box03 p {
    margin-top: 15px;
}
.gift_place .gift_place_box li,
.gift_place .gift_place_box02 li,
.gift_place .gift_place_box03 li {
    margin-bottom: 30px;
}
.gift_place .gift_place_box li.place01 {
    float: left;
    width: 29.5%;
}
.gift_place .gift_place_box li.place02 {
    float: left;
    width: 29.5%;
    margin-left: 6%;
}
.gift_place .gift_place_box li.place03 {
    float: right;
    width: 29.5%;
    text-align: center;
}
.gift_place .gift_place_box02 li.place01,
.gift_place .gift_place_box02 li.place02,
.gift_place .gift_place_box02 li.place03,
.gift_place .gift_place_box02 li.place04,
.gift_place .gift_place_box03 li.place01,
.gift_place .gift_place_box03 li.place02,
.gift_place .gift_place_box03 li.place03,
.gift_place .gift_place_box03 li.place04,
.gift_place .gift_place_box03 li.place05,
.gift_place .gift_place_box03 li.place06,
.gift_place .gift_place_box03 li.place07,
.gift_place .gift_place_box03 li.place08,
.gift_place .gift_place_box03 li.place09,
.gift_place .gift_place_box03 li.place10,
.gift_place .gift_place_box03 li.place11,
.gift_place .gift_place_box03 li.place12 {
    float: left;
    width: 25%;
    text-align: center;
}

/*order*/
.gift_order {
    background-color: #ebf6dd;
    padding: 60px 0;
    position: relative;
}
.gift_order .gift_cart {
    content: '';
    background: url("/giftcard/common/img/icon_cart.png") top center no-repeat;
    position: absolute;
    width: 84px;
    height: 84px;
    top: -20px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
}
.gift_order .gift_order_inner {
    width: 1000px;
    margin: 0 auto;
    text-align: center;
}
.gift_order .gift_order_inner li:last-child {
    padding-top: 4px;
}
.gift_order .gift_order_ttl {
    font-size: 20px;
    color: #004a3c;
    font-weight: bold;
    margin-bottom: 10px;
}
.gift_order .gift_order_text_link {
    margin-top: 30px;
    text-align: center;
}
.gift_order02 {
    background-color: #fff;
    padding-top: 60px;
    position: relative;
}
.gift_order02 .gift_cart {
    content: '';
    background: url("/giftcard/common/img/icon_cart02.png") top center no-repeat;
    position: absolute;
    width: 84px;
    height: 84px;
    top: -20px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
}
.gift_order02 .gift_order_inner {
    width: 1000px;
    margin: 0 auto;
    text-align: center;
    padding-bottom: 40px;
    border-bottom: 2px solid #e5e5e5;
}
.gift_order02 .gift_order_inner li:last-child {
    padding-top: 4px;
}
.gift_order02 .gift_order_ttl {
    font-size: 20px;
    color: #004a3c;
    font-weight: bold;
    margin-bottom: 10px;
}
.gift_order02 .gift_order_text_link {
    margin-top: 30px;
    text-align: center;
}
.gift_cart03 {
    content: '';
    background: url("/giftcard/common/img/icon_cart03.png") top center no-repeat;
    position: absolute;
    width: 84px;
    height: 84px;
    top: -20px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
}

/*design*/
.gift_design li {
    border-bottom: 1px solid #e5e5e5;
    margin-bottom: 40px;
    padding-bottom: 40px;
}
.gift_design li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.gift_design .gift_design_box .design_left {
    float: left;
    width: 55%;
}
.gift_design .gift_design_box .design_left .item01 {
    float: left;
    text-align: right;
    width: 50%;
}
.gift_design .gift_design_box .design_left .item02 {
    float: right;
    text-align: right;
    width: 50%;
}
.gift_design .gift_design_box .design_left .item03 {
    float: left;
    text-align: right;
    width: 80%;
}
.gift_design .gift_design_box .design_right {
    float: right;
    width: 35%;
    margin-top: 30px;
}
.gift_design .gift_design_box .design_right p {
    text-align: left;
}
.gift_design .gift_design_box .gift_design_ttl {
    color: #004a3c;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
}
.gift_design .gift_design_box .gift_design_read {
    line-height: 2
}

/* giftcard_design */
.giftcard_design li {
    border-bottom: 1px solid #e5e5e5;
    margin-bottom: 40px;
    padding-bottom: 40px;
}
.giftcard_design li:first-child {
    border-top: 1px solid #e5e5e5;
    margin-bottom: 40px;
    padding-top: 40px;
    padding-bottom: 40px;
}
.giftcard_design li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.giftcard_design .giftcard_design_box .design_left {
    float: left;
    width: 33%;
}
.giftcard_design .giftcard_design_box .design_left .item01 {
    float: left;
    text-align: right;
    width: 40%;
}
.giftcard_design .giftcard_design_box .design_left .item02 {
    float: right;
    text-align: right;
    width: 50%;
}
.giftcard_design .giftcard_design_box .design_left .item03 {
    float: left;
    text-align: right;
    width: 80%;
    padding-left:28px;
}
.giftcard_design .giftcard_design_box .design_right {
    float: right;
    width: 60%;
}
.giftcard_design .giftcard_design_box .design_right p {
    text-align: left;
}
.giftcard_design .giftcard_design_box .giftcard_design_ttl {
    color: #004a3c;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
}
.giftcard_design .giftcard_design_box .giftcard_design_read {
    line-height: 2
}

/*message*/
.gift_message {
    padding: 0 30px;
    margin: 0 auto;
    text-align: center;
    border-top: 2px solid #e5e5e5;
    padding-top: 90px;
}
.gift_message img {
    text-align: center;
    margin: 0 auto;
}
.gift_message .gift_message_box {
    text-align: center;
    margin-top: 30px;
}
.h2_readtext {
    margin-top: -30px;
    margin-bottom: 30px;
    text-align: center;
    line-height: 2;
}

/*case*/
.gift_case {
    margin-bottom: 50px;
}
.gift_case img {
    width: 100%;
    display:block;
}
.gift_case .text_box {
    background-color: #ebf6dd;
    color: #1f6054;
    padding: 15px 10px;
    font-size: 16px;
    font-weight: bold;
}
.gift_case p {
    line-height: 1.5;
    margin-top: 10px;
}

/*step*/
.gift_step {
    border-top: 1px solid #e5e5e5;
    padding-top: 30px;
    margin-bottom: 60px;
}
.gift_step p {
    line-height: 2;
}
.gift_step .label {
    margin-bottom: 20px;
}
.gift_step .label p {
    font-size: 20px;
    color: #004a3c;
    margin-left: 10px;
    vertical-align: middle;
    display: inline-block;
    font-weight: bold;
}
.gift_step .label img {
    display: inline-block;
    vertical-align: middle;
}
.gift_step .gift_step_box img {
    width: 100%;
    display: block;
}
.gift_step .gift_step_box .text_box {
    background-color: #f7f7f7;
    border: 1px solid #e5e5e5;
    padding: 15px 10px;
    font-size: 16px;
    text-align: center;
}

/*--------------------------------------
gray_box
---------------------------------------*/

.gray_box {
    background-color: #f0f0f0;
    padding: 30px 60px;
    margin-top: 30px;
    position: relative;
}
.gray_box p {
    line-height: 1.5;
}
.gray_box .balloon:after {
    content: '';
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    right: 130px;
    top: -20px;
    border-right: 20px solid transparent;
    border-bottom: 25px solid #f0f0f0;
    border-left: 20px solid transparent;
}
.gray_box .caution_text {
    margin-bottom: 20px;
    font-size: 16px;
    font-weight: bold;
}
.gray_box ul li {
    line-height: 2;
}

.gray_box ul.list li,
.gray_box ul.note li{
    line-height: 1.3;
}


.gray_box ul li + li {
    margin-top: 10px;
}
.gray_box ul li span {
    font-weight: bold;
    font-size: 16px;
}

.gray_box .img_box {
    margin-top: 30px;
    padding: 30px;
    background-color: #fff;
}
.gray_box .img_box02 {
    margin-top: 30px;
    padding: 30px 100px;
}

/*step内QR*/
.qr_box {
    background-color: #f0f0f0;
    border-top: 1px solid #fff;
    padding: 30px 60px;
}
.qr_box .caution_text {
    margin-bottom: 20px;
    font-size: 16px;
    font-weight: bold;
}

/*--------------------------------------
scene配下用
---------------------------------------*/

.gift_scene .gift_scene_box ul li {
    background-color: #f9f9f7;
    line-height: 2;
}
.gift_scene .gift_scene_box ul li.scene {
    float: left;
    text-align: center;
    margin: 0 18px;
    margin-bottom: 40px;
}
.gift_scene .gift_scene_box .text_box {
    width: 100%;
    position: relative;
    padding: 20px 20px 25px;
    width: 295px;
    text-align: center;
}
.gift_scene .gift_scene_box02 ul li {
    background-color: #f9f9f7;
    line-height: 2;
}
.gift_scene .gift_scene_box02 ul li.scene {
    float: left;
    text-align: center;
    margin: 0 18px;
    margin-bottom: 40px;
}

.gift_scene .gift_scene_box02 .text_box {
    width: 100%;
    position: relative;
    padding: 10px 20px 15px;
    width: 295px;
    text-align: center;
}

.gift_scene_card li {
    background-color: #fff;
    padding: 20px;
}
.gift_scene_card .gift_scene_card_ttl {
    color: #004a3c;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 15px;
    border-bottom: 1px solid #eee;
    padding-bottom: 15px;
}
.gift_scene_card .gift_scene_cardlink {
    text-align: right;
}

.gift_scene_info {
    border-top: 1px solid #ddd;
    padding-top: 50px;
}
.gift_scene_info .gift_scene_info_box ul {
    padding: 10px 10px 0;
    border: 1px solid #ddd;
    text-align: left;
}
.gift_scene_info .gift_scene_info_box img {
    width: 100%;
    height: auto;
}
.gift_scene_info .gift_scene_info_box ul {
    line-height: 2;
}
.gift_scene_info .gift_scene_info_box .info .item01 {
    float: left;
    width: 30%;
}
.gift_scene_info .gift_scene_info_box .info .item02 {
    float: right;
    width: 65%;
    font-size: 13px;
}

.gift_scene .gift_scene_box ul.list,
.gift_scene .gift_scene_box02 ul.list,
.gift_scene .gift_scene_box ul.note,
.gift_scene .gift_scene_box02 ul.note{
    list-style-position: inside;
}

.gift_scene .gift_scene_box ul.list li,
.gift_scene .gift_scene_box02 ul.list li,
.gift_scene .gift_scene_box ul.note li,
.gift_scene .gift_scene_box02 ul.note li{
    line-height:1.5;
    padding-left: 1em;
    text-indent: -1em;
}

/*--------------------------------------
column用
---------------------------------------*/

.column_article_ttl {
    text-align: center;
    background-color: #fff;
    border-bottom: 6px solid #66926c;
}
.column_article_ttl p {
    font-size: 14px;
    font-weight: bold;
    color: #004a3c;
    text-align: center;
    padding-bottom: 5px;
    margin: 30px 0; 
    border-bottom: 1px solid #004a3c;
}
.column_article_anchor {
    padding: 40px 60px;
    margin-bottom: 30px;
}
.column_article_anchor .column_article_anchor_box {
    margin-top: 10px;
}
.column_article_anchor .column_article_anchor_box ul + ul {
    margin-top: 30px;
}
.column_article_anchor .column_article_anchor_box li + li {
    margin-top: 10px;
    padding-left: 30px;
}
.column_article_contents {
    padding: 30px 130px;
}
.column_article_contents img {
    text-align: center;
}

.column_article_contents .graph{
    width: 450px;
    height: auto;
}

.column_article_contents p {
    line-height: 2;
    margin: 20px 0;
}
.column_article_contents .column_article_contents_box {
    margin-bottom: 70px;
}
.column_article_contents .anchor_point {
    font-size: 20px;
    font-weight: bold;
    color: #004a3c;
    padding-left: 20px;
    border-left: 1px dotted #7fa49d;
    margin-bottom: 20px;
}
.column_article_contents .anchor_point_small {
    font-size: 16px;
    font-weight: bold;
    color: #004a3c;
    padding-left: 10px;
    line-height: 1;
    border-left: 1px dotted #7fa49d;
    margin-bottom: 20px;
}
.column_article_contents .img_box {
    border: 1px solid #e5e5e5;
    padding: 30px;
}
.column_article_contents .text_box {
    background-color: #f7f7f7;
    border-left: 1px solid #e5e5e5;
    border-right: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
    padding: 15px 10px;
    font-size: 16px;
    text-align: center;
}
.column_article_contents .descriptio_box li + li {
    border-top: 1px dotted #7fa49d;
    padding-top: 15px;
    margin-top: 15px;
}

/*--------------------------------------
番号併記レイアウト
---------------------------------------*/
dl.number_box{
}

dl.number_box dt{
    width:30px;
    float:left;
}

dl.number_box dd{
    width:780px;
    margin-top:3px;
    float:left;
}

/*---------------------------------------------------
ご利用シーン用モジュール
----------------------------------------------------*/

/*--------------------------------------
見出し
---------------------------------------*/
.band_survey {
    content: '';
    background: url(/giftcard/common/img/band_survey.png) top center no-repeat;
    width: 100%;
    padding: 20px 40px;
    margin-bottom: 50px;
    position: relative;
}
.band_survey p {
    font-size: 18px;
    font-weight: bold;
    color: #004a3c;
    line-height: 1;
}


/*--------------------------------------
layout 固定レイアウト部分
---------------------------------------*/
.scene_catch {
    padding: 0 30px;
}
.scene_catch .text_box ul {
    margin-top: 55px;
}
.scene_catch .text_box ul li {
    font-size: 17px;
    border-bottom: 1px solid #ebeae6;
    text-align: center;
    padding: 20px 0;
}
.scene_catch .text_box ul li:first-child {
    border-top: 1px solid #ebeae6;
}


/* ------------------------------
layout survey_box
--------------------------------- */

.survey_box {
    content: '';
    background: url(/giftcard/common/img/frame_survey02.jpg) top center;
    width: 100%;
    padding: 50px 61px;
    position: relative;
}
.survey_box:before {
    content: '';
    background: url(/giftcard/common/img/frame_survey01.jpg) top center no-repeat;
    position: absolute;
    width: 100%;
    height: 62px;
    top: 0;
    right: 0;
}
.survey_box:after {
    content: '';
    background: url(/giftcard/common/img/frame_survey03.jpg) top center no-repeat;
    position: absolute;
    width: 100%;
    height: 52px;
    bottom: 0;
    right: 0;
}
.survey_box img {
    margin-bottom: 50px;
}
.survey_box .question_box {
    margin-bottom: 60px;
}

.survey_box img.graph {
    width:520px;
    height:auto;
}

/* ------------------------------
定義リスト（縦並び）
--------------------------------- */
.DefList01 {
  margin-top: 10px;
  margin-bottom: 10px;
}

.DefList01 dt {
  font-weight: bold;
  margin-top: 15px;
  margin-bottom: 5px;
  width: auto;
  padding: 0;
  display: block;
}

.DefList01 dt:first-child {
  margin-top: 0;
}

.DefList01 dd {
  margin-left: 1em;
  margin-bottom: 5px;
  width: auto;
  padding: 0;
  display: block;
}
.DefList01 dd:before{
    content: none;
}
/*--------------------※つきリスト--------------------*/
ul.Note{
    margin-left: 1.2em;
    margin-top: 10px;
    font-size: 12px;
    max-height: 100%;
    color: #666666;
}
ul.Note > li{
    line-height: 1.2;
    position: relative;
}
ul.Note > li + li{
    margin-top: 0.4em;
}
ul.Note > li:before{
    position: absolute;
    top: 0;
    left: -1.2em;
    content: "※";
}

ul.Note.FontN > li{
    font-size: 14px;
    max-height: 100%;
    color: #333333;
}

ul.Note.FontN > li:before{
    left: -1.15em;
}
/* 
 ■■■ 02-100-02 PDFアイコン
--------------------------------------------------------- */
.PdfLink {
  display: inline-block;
  background: url(/debit/common/img/icon_pdf_01.png) no-repeat left top;
  padding-top: 5px;
  padding-bottom: 10px;
  padding-left: 35px;
}
.PdfLink:hover {
  background: url(/debit/common/img/icon_pdf_02.png) no-repeat left top;
  text-decoration: none;
}
/*-----------------------リンク----------------------------*/
.ReadLink:before {
    border-left-color: #000000;
}

.ReadLink:before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 3px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 4px solid #0C1E89;
    margin-bottom: 1px;
    margin-right: 5px;
}
.PageBack {
    vertical-align: middle;
}

.PageBack:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 0px;
    border-top: 4px solid transparent;
    border-right: 4px solid #0C1E89;
    border-bottom: 4px solid transparent;
    border-left: 4px solid transparent;
    margin-bottom: 2px;
    margin-right: 5px;
}
/*新しいタブ*/
.NewWindow,.NewWindow_green {
    position: relative !important;
    display: inline-block;
    vertical-align: middle;
    text-indent: 0em;
    width: 20px;
    height: 18px;
}
.NewWindow:before,.NewWindow_green::before {
    display: inline-block;
    position: absolute;
    top: 2px;
    left: 2px;
    content: "";
    width: 10px;
    height: 8px;
    border: #FFF solid 1px;
    z-index: 3;
    background-color: #0C1E89;
}
.NewWindow:after,.NewWindow_green::after {
    display: inline-block;
    position: absolute;
    bottom: 3px;
    right: 3px;
    content: "";
    width: 10px;
    height: 8px;
    border: #FFF solid 1px;
    background-color: #0C1E89;
}
.NewWindow_green::before,.NewWindow_green::after{
   background-color: #023e28;
}
/*
 ■■ 02-120 表組（情報の比較）
========================================================= */

.FormBox,table{
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    margin: 10px 0 10px;
    border: 1px solid #c8c8c8;
    border-top: none;
}
.FormBoxItemHeading,.FormBoxItem,
th,td{
    padding: 10px;
    font-weight: normal;
    text-align: left;
    vertical-align: middle;
}
.DefTable,
.SortTable {
    table-layout: fixed;
}
.DefTable th:first-child{
    border-left: 1px solid #c8c8c8;
}

/* 背景色のレベル分け */
tr{
  border-top: 1px solid #c8c8c8;
}
th.lowTh {
  background-color: whitesmoke !important;
}

th.lowestTh {
  background-color: #fcfcfc !important;
}

td.cautionTd {
  background-color: #fcfcdd !important;
}
.DefTable td,
.SortTable td{
    background-color: #FFFFFF;
}
.FormBoxItemHeading,
th{
    border-top-color: #c8c8c8 !important;
    border-left-color: #c8c8c8;
    background-color: #eeeeee;
}

.FormBoxItem,
td{
    border-left-color: #c8c8c8;
    border-top-color: #c8c8c8 !important;
}
/* ------------------------------
audience_box
--------------------------------- */

.audience_box {
    padding: 30px 40px;
}
.audience_box .audience_comment {
    position: relative;
    padding: 0 30px;
    border-radius: 20px;
    margin-bottom: 40px;
}
.audience_box .audience_comment p {
    line-height: 2;
    margin: 20px 0;
}
.audience_box ul li:nth-child(1) {
    background-color: #ffecd3;
}
.audience_box ul li:nth-child(2) {
    background-color: #ffddd3;
}
.audience_box ul li:nth-child(3) {
    background-color: #ffddd3;
}
.audience_box ul li:nth-child(4) {
    background-color: #ffecd3;
}
.audience_box ul li:nth-child(5) {
    background-color: #ffecd3;
}
.audience_box ul li:nth-child(6) {
    background-color: #ffddd3;
}
.audience_box ul li:nth-child(7) {
    background-color: #ffddd3;
}
.audience_box ul li:nth-child(8) {
    background-color: #ffecd3;
}
.audience_box ul li:nth-child(9) {
    background-color: #ffecd3;
}
.audience_box ul li:nth-child(10) {
    background-color: #ffddd3;
}


/*--------------------------------------
  アコーディオン非表示用
---------------------------------------*/
dl.accordion dd{
    display: none;
}

/*--------------------------------------
SP PC表示非表示
---------------------------------------*/
.sp_block { display: none !important; }
.pc_block { display: block !important; }

/*--------------------------------------
汎用クラス
---------------------------------------*/
/*margin*/
.mgt0 { margin-top: 0 !important; }
.mgt5 { margin-top: 5px !important; }
.mgt10 { margin-top: 10px !important; }
.mgt15 { margin-top: 15px !important; }
.mgt20 { margin-top: 20px !important; }
.mgt25 { margin-top: 25px !important; }
.mgt30 { margin-top: 30px !important; }
.mgt35 { margin-top: 35px !important; }
.mgt40 { margin-top: 40px !important; }
.mgt45 { margin-top: 45px !important; }
.mgt50 { margin-top: 50px !important; }

.mgb0 { margin-bottom: 0 !important; }
.mgb5 { margin-bottom: 5px !important; }
.mgb10 { margin-bottom: 10px !important; }
.mgb15 { margin-bottom: 15px !important; }
.mgb20 { margin-bottom: 20px !important; }
.mgb25 { margin-bottom: 25px !important; }
.mgb30 { margin-bottom: 30px !important; }
.mgb35 { margin-bottom: 35px !important; }
.mgb40 { margin-bottom: 40px !important; }
.mgb45 { margin-bottom: 45px !important; }
.mgb50 { margin-bottom: 50px !important; }

.mgl0 { margin-left: 0 !important; }
.mgl5 { margin-left: 5px !important; }
.mgl15 { margin-left: 15px !important; }
.mgl20 { margin-left: 20px !important; }
.mgl25 { margin-left: 25px !important; }
.mgl30 { margin-left: 30px !important; }
.mgl35 { margin-left: 35px !important; }
.mgl40 { margin-left: 40px !important; }
.mgl45 { margin-left: 45px !important; }
.mgl50 { margin-left: 50px !important; }

.mgr0 { margin-right: 0 !important; }
.mgr5 { margin-right: 5px !important; }
.mgr10 { margin-right: 10px !important; }
.mgr15 { margin-right: 15px !important; }
.mgr20 { margin-right: 20px !important; }
.mgr25 { margin-right: 25px !important; }
.mgr30 { margin-right: 30px !important; }
.mgr35 { margin-right: 35px !important; }
.mgr40 { margin-right: 40px !important; }
.mgr45 { margin-right: 45px !important; }
.mgr50 { margin-right: 50px !important; }

.mg0 { margin: 0 !important; }
.mg5 { margin: 5px !important; }
.mg10 { margin: 10px !important; }
.mg15 { margin: 15px !important; }
.mg20 { margin: 20px !important; }
.mg25 { margin: 25px !important; }
.mg30 { margin: 30px !important; }
.mg35 { margin: 35px !important; }
.mg40 { margin: 40px !important; }
.mg45 { margin: 45px !important; }
.mg50 { margin: 50px !important; }

/*padding*/
.pdt0 { padding-top: 0 !important; }
.pdt5 { padding-top: 5px !important; }
.pdt10 { padding-top: 10px !important; }
.pdt15 { padding-top: 15px !important; }
.pdt20 { padding-top: 20px !important; }
.pdt25 { padding-top: 25px !important; }
.pdt30 { padding-top: 30px !important; }
.pdt35 { padding-top: 35px !important; }
.pdt40 { padding-top: 40px !important; }
.pdt45 { padding-top: 45px !important; }
.pdt50 { padding-top: 50px !important; }

.pdb0 { padding-bottom: 0 !important; }
.pdb5 { padding-bottom: 5px !important; }
.pdb10 { padding-bottom: 10px !important; }
.pdb15 { padding-bottom: 15px !important; }
.pdb20 { padding-bottom: 20px !important; }
.pdb25 { padding-bottom: 25px !important; }
.pdb30 { padding-bottom: 30px !important; }
.pdb35 { padding-bottom: 35px !important; }
.pdb40 { padding-bottom: 40px !important; }
.pdb45 { padding-bottom: 45px !important; }
.pdb50 { padding-bottom: 50px !important; }

.pdl0 { padding-left: 0 !important; }
.pdl5 { padding-left: 5px !important; }
.pdl15 { padding-left: 15px !important; }
.pdl20 { padding-left: 20px !important; }
.pdl25 { padding-left: 25px !important; }
.pdl30 { padding-left: 30px !important; }
.pdl35 { padding-left: 35px !important; }
.pdl40 { padding-left: 40px !important; }
.pdl45 { padding-left: 45px !important; }
.pdl50 { padding-left: 50px !important; }

.pdr0 { padding-right: 0 !important; }
.pdr5 { padding-right: 5px !important; }
.pdr10 { padding-right: 10px !important; }
.pdr15 { padding-right: 15px !important; }
.pdr20 { padding-right: 20px !important; }
.pdr25 { padding-right: 25px !important; }
.pdr30 { padding-right: 30px !important; }
.pdr35 { padding-right: 35px !important; }
.pdr40 { padding-right: 40px !important; }
.pdr45 { padding-right: 45px !important; }
.pdr50 { padding-right: 50px !important; }

.pd0 { padding: 0 !important; }
.pd5 { padding: 5px !important; }
.pd10 { padding: 10px !important; }
.pd15 { padding: 15px !important; }
.pd20 { padding: 20px !important; }
.pd25 { padding: 25px !important; }
.pd30 { padding: 30px !important; }
.pd35 { padding: 35px !important; }
.pd40 { padding: 40px !important; }
.pd45 { padding: 45px !important; }
.pd50 { padding: 50px !important; }

/*コンテンツを区切るboder*/
.bd_contents {
border-top: 1px solid #eee;
padding-top: 50px;
}
.bd_contents02 {
border-bottom: 1px solid #eee;
padding-bottom: 50px;
}
.bd_contents03 {
border-top: 3px solid #b2c8b5;
padding-top: 50px;
}

/*font*/
.center { text-align: center !important; }
.center_pc { text-align: center !important; }/*PC時center/SP時left*/
.left { text-align: left !important; }
.right { text-align: right !important; }
.strong { font-weight: bold !important; }
.nomal { font-weight: normal !important; }
.f10 { font-size: 10px !important; }
.f12 { font-size: 12px !important; }
.f14 { font-size: 14px !important; }
.f16 { font-size: 16px !important; }
.f18 { font-size: 18px !important; }
.f20 { font-size: 20px !important; }
.f22 { font-size: 22px !important; }
.f24 { font-size: 24px !important; }

/*line-height*/
.lh1 {line-height: 1;}
.lh15 {line-height: 1.5;}
.lh2 {line-height: 2;}

/*inline*/
.dib { display: inline-block !important; }

/*color*/
.green { color: #004a3c !important; }
.red { color: red !important; }
.orange { color: #e95903; }
.white { color: #fff; }

/*background*/
.bg_h_green { background-color: #004a3c !important; }
.bg_r_green { background-color: #ebf6dd !important;  }
.bg_gray { background-color: #f0f0f0 !important; }
.bg_white { background-color: #ffffff !important; }
.bg_blue { background-color: #ddf6f3 !important; }

/*width*/
.w100 { width: 100px !important; }
.w150 { width: 150px !important; }
.w200 { width: 200px !important; }
.w250 { width: 250px !important; }
.w300 { width: 300px !important; }
.w350 { width: 350px !important; }
.w400 { width: 400px !important; }
.w450 { width: 450px !important; }
.w500 { width: 500px !important; }
.w550 { width: 550px !important; }
.w600 { width: 600px !important; }

.wp10 { width: 10% !important; }
.wp15 { width: 15% !important; }
.wp20 { width: 20% !important; }
.wp25 { width: 25% !important; }
.wp30 { width: 30% !important; }
.wp35 { width: 35% !important; }
.wp40 { width: 40% !important; }
.wp45 { width: 45% !important; }
.wp50 { width: 50% !important; }
.wp55 { width: 55% !important; }
.wp60 { width: 60% !important; }
.wp65 { width: 65% !important; }
.wp70 { width: 70% !important; }
.wp75 { width: 75% !important; }
.wp80 { width: 80% !important; }
.wp90 { width: 90% !important; }
.wp100 { width: 100% !important; }
