@charset "utf-8";

/* ===================================================================
 style info : コンテンツエリア関係 他

fonts
 10px = 77%     11px = 85%     12px = 93%     13px = 100%
 14px = 108%    15px = 116%    16px = 123.1%  17px = 131%
 18px = 138.5%  19px = 146.5%  20px = 153.9%  21px = 161.6%
 22px = 167%    23px = 174%    24px = 182%    25px = 189%
 26px = 197%
=================================================================== */

/*----------------------------------------------------
	共通
----------------------------------------------------*/
/* スクロールバーの有無によるズレ対策 */
html {
    overflow-y: scroll;
}

body {
    font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
}

input, textarea {
    font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
}

/* for IE6 */
* html body {
    font-family: "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}

* html input, * html textarea {
    font-family: "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}

/* リンク
----------------------------------------------------*/
a {
    color: #1D3992;
}

a:link {
    color: #1D3992;
}

a:visited {
    color: #1D3992;
}

a:hover {
    color: #199CCD;
    text-decoration: none;
}

a:active {
    color: #1D3992;
}

.overwhite:hover {
    cursor: pointer;
    filter: alpha(opacity=60); /* ie lt 8 */
    -ms-filter: "alpha(opacity=60)"; /* ie 8 */
    -moz-opacity: 0.6; /* FF lt 1.5, Netscape */
    -khtml-opacity: 0.6; /* Safari 1.x */
    opacity: 0.6;
    zoom: 1;
}

/* よく使いそうなCSS3
----------------------------------------------------*/
#selectors {
    /* 角丸 */
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;

    /* 角丸個別 */
    -webkit-border-top-right-radius: 15px;
    -moz-border-radius-topright: 15px;
    border-top-right-radius: 15px;

    /* ボックスに影 */
    -webkit-box-shadow: 1px 1px 3px #999;
    -moz-box-shadow: 1px 1px 3px #999;
    box-shadow: 1px 1px 3px #999;

    /* テキストに影 */
    text-shadow: 1px 1px 0px #999;
}

/* 汎用
----------------------------------------------------*/
/* clerfix */
#contents:after {
    content: ".";
    display: block;
    visibility: hidden;
    height: 0.1px;
    font-size: 0.1em;
    line-height: 0;
    clear: both;
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

.clearfix {
    min-height: 1px;
}

* html .clearfix {
    height: 1px;
    /*¥*/
    /*
  height: auto;
  overflow: hidden;
  */
}

/* 角丸 */
.round10 {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

.imgR {
    float: right;
    margin: 0 0 10px 10px;
}

.imgL {
    float: left;
    margin: 0 10px 10px 0;
}

.tC,
.btn {
    text-align: center;
    vertical-align: bottom;
}

a:hover .btn2 {
    opacity: 0.6;
    filter: alpha(opacity=60);
] -ms-filter: "alpha( opacity=60 )";
    background: #fff;
}

/*追加*/
img.btn3 {
    -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
}

img.btn3:hover {
    -webkit-box-shadow: 0 0 2px rgba(128, 128, 128, 0.1);
    box-shadow: 0 0 2px rgba(128, 128, 128, 0.1);
    transform: translateY(2px);
    zoom: 1;
}

img.btn3:active {
    cursor: pointer;
    filter: alpha(opacity=60); /* ie lt 8 */
    -ms-filter: "alpha(opacity=60)"; /* ie 8 */
    -moz-opacity: 0.6; /* FF lt 1.5, Netscape */
    -khtml-opacity: 0.6; /* Safari 1.x */
    opacity: 0.6;
    zoom: 1;
}

.tR,
.sign {
    text-align: right;
}

.tL {
    text-align: left;
}

/* アイコン */
.icon {
    padding-right: 5px;
    vertical-align: middle;
}

.icon_blank {
    padding-left: 5px;
    vertical-align: middle;
}

/* テキスト色 */
.txt_orange {
    color: #FF9900;
}

.txt_pink {
    color: #FF3366;
    margin-bottom: 0 !important;
}

.txt_red {
    color: #EE1C23;
}

/* テキストサイズ */
.txt12 {
    font-size: 93%;
    line-height: 1.4;
}

.txt16 {
    font-size: 123.1%;
    line-height: 1.4;
}

.txt18 {
    font-size: 138.5%;
    line-height: 1.4;
}

/* テキストスタイル */
b {
    font-weight: bold;
}

/* 余白 */
.pt10 {
    padding-top: 10px;
}

.pt20 {
    padding-top: 20px;
}

.pt30 {
    padding-top: 30px;
}

.pb10 {
    padding-bottom: 10px;
}

.pb20 {
    padding-bottom: 20px;
}

.pb30 {
    padding-bottom: 30px;
}

.pb40 {
    padding-bottom: 40px;
}

.pb60 {
    padding-bottom: 60px;
}

.pl10 {
    padding-left: 10px;
}

.pl20 {
    padding-left: 20px;
}

.pl30 {
    padding-left: 30px;
}

.pl40 {
    padding-left: 40px;
}

.mt5 {
    margin-top: 5px;
}

.mt10 {
    margin-top: 10px;
}

.mt20 {
    margin-top: 20px;
}

.mt30 {
    margin-top: 30px;
}

.mt40 {
    margin-top: 40px;
}

.mt50 {
    margin-top: 50px;
}

.mt80 {
    margin-top: 80px;
}

.ml10 {
    margin-left: 10px;
}

.ml20 {
    margin-left: 20px;
}

.ml30 {
    margin-left: 30px;
}

.ml50 {
    margin-left: 50px;
}

.mr20 {
    margin-right: 20px;
}

.mb8 {
    margin-bottom: 8px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mb60 {
    margin-bottom: 60px !important;
}

/* .boxをクリック */
.box {
    background: #FFF;
    cursor: pointer;
}

.box:hover {
    background: #E7F8FE;
}

.box_b {
    background: #FFF;
    cursor: pointer;
}

.box_b:hover {
    background: #E7F8FE;
}

/* ※などをつけたテキストの2行目以降行頭を1文字分空ける */
.notice p {
    padding-left: 1em;
    text-indent: -1em;
}

/* --------------------------------------------------------
	#backtotop
-------------------------------------------------------- */

.backtotop {
    position: fixed;
    right: 15px;
    bottom: 20px;
    z-index: 9000;
    display: none;
}

.backtotop a {
    display: block;
    margin: 0;
    background: url(../img/pagetop.png) no-repeat center center;
    text-decoration: none;
    width: 60px;
    height: 62px;
}

.backtotop a:hover {
    display: block;
    width: 60px;
    height: 62px;
    background: url(../img/pagetop_on.png) no-repeat center center;
}


/*----------------------------------------------------
	#page（ページ全体）
----------------------------------------------------*/
#page {
    width: 100%;
    font-size: 108%;
    color: #333;
    background: #FFF;
    margin-top: 70px;
    position: relative;
}


/*----------------------------------------------------
	#contents（メインとサイド）
----------------------------------------------------*/
#contents {
    width: 700px;
    zoom: 1;
    margin: 0 auto 10px;
}

@media screen and (max-width: 720px) {
    #contents {
        width: 100%;
        padding: 10px;
        box-sizing: border-box;
    }
}

/*----------------------------------------------------
	#main（メインコンテンツ）
----------------------------------------------------*/
#main {
    float: right;
    width: 100%;
    background: #FFF;
}

#main table,
#main ol,
#main ul,
#main dl,
#main blockquote,
#main pre,
#main p {
    margin-bottom: 10px;
}

/* タイトル装飾 */

#main .tit {
    clear: both;
    margin-bottom: 40px;
}

@media screen and (max-width: 720px) {
    #main .tit {
        width: 100%;
    }

    #main .tit img {
        width: 100% !important;
        height: auto;
    }
}

#main .tit2 {
    clear: both;
    background: url(../img/tit.png) left top no-repeat;
    height: 39px;
    margin-bottom: 30px;
    padding: 13px 0 0 25px;
    font-size: 167%;
    text-shadow: 1px 1px 0px #FFF;
    font-weight: normal;
    line-height: 1.3;
    overflow: hidden;
}

@media screen and (max-width: 720px) {
    #main .tit2 {
        box-sizing: border-box;
        height: 52px;
        border-right: solid 1px #ccc;
        border-radius: 5px;
    }
}


#main .main_txt_box .h4_tit {
    clear: both;
    border-left: 6px solid #6DCFF6;
    padding: 1px 0 1px 20px;
    font-size: 123.1%;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 20px;
}

@media screen and (max-width: 720px) {
    #main .main_txt_box .h4_tit {
        font-size: 16px;
    }
}

#main .main_txt_box .h4_tit2 {
    clear: both;
    background: url(../img/tit2.png) left top no-repeat;
    border-bottom: solid 2px #DDD9D5;
    width: 100%;
    height: 29px;
    padding-left: 15px;
    font-size: 123.1%;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 15px;
}

#main .main_txt_box .h5_tit {
    clear: both;
    border-left: 6px solid #6DCFF6;
    padding: 1px 0 1px 10px;
    font-size: 108%;
    font-weight: bold;
    margin-bottom: 15px;
    line-height: 1;
}

#main .main_txt_box .h5_tit2 {
    clear: both;
    font-size: 108%;
    font-weight: bold;
    margin-top: 20px;
    line-height: 1;
}

#main h2 img {
    vertical-align: bottom;
}

#main present img {
    vertical-align: bottom;
}

#main p {
    margin: 0;
    padding: 0;
    vertical-align: bottom;
}

/* レイアウトボックス */

#main .main_txt_box {
    /*padding: 0 20px;*/
    font-size: 100%;
    line-height: 1.8;
}

#main .main_box_l {
    width: 660px;
    padding-bottom: 40px;
}

#main .main_txt_box .main_half_box {
    width: 310px;
    float: left;
}

#main .main_txt_box .main_half_box p,
#main .main_txt_box .main_half_box_r p {
    margin-top: 15px;
    margin-bottom: 0;
}

#main .main_txt_box .main_half_box_r {
    width: 310px;
    float: left;
    margin-left: 40px;
}

#main .main_txt_box .main_f_box {
    margin-bottom: 10px;
    text-align: center;
}

#main .main_txt_box .main_c_box {
    text-align: center;
    margin: 0 0 40px 0;
    clear: both;
}

#main .main_txt_box .main_c_box .btn {
    margin: 30px 0 10px 0;
}

#main .main_txt_box .main_c_box a {
    color: #333;
    font-size: 123.1%;
}

#main .main_txt_box .main_c_box a:hover {
    color: #199CCD;
}

/* table */

#main table, #main ol, #main ul, #main dl, #main blockquote, #main pre, #main p {
    margin-bottom: 1em;
}

#main .main_txt_box .main_table {
    font-size: 100%;
    line-height: 1.4;
}

#main .main_txt_box .main_table ul {
    list-style: none;
}

#main .main_txt_box .main_table th {
    width: 30%;
    padding: 5px 10px;
    border: 1px solid #DAD6D1;
    background: url(../img/t_bg.gif) left top repeat;
    text-align: left;
    vertical-align: middle;
    font-size: 108%;
    line-height: 1.2;
}

#main .main_txt_box .main_table td {
    padding: 20px;
    border: 1px solid #DAD6D1;
}

@media screen and (max-width: 720px) {
    .main_table {
        width: 100%;
        box-sizing: border-box;
    }

    .main_table th,
    .main_table td {
        display: block;
        width: 100% !important;
        box-sizing: border-box;
    }

    #main .main_txt_box .main_table th {
        padding: 10px 10px 8px;
        border-bottom: hidden;
    }

    #main .main_txt_box .main_table td {
        margin-bottom: -1px;
    }

}

/* パーツ */

.box_gray {
    padding: 10px;
    border: 1px solid #C2BCB4;
    outline: solid 3px #F3F1F0;
}

.box_gray_dot {
    margin-top: 40px;
    padding: 10px;
    border: 1px solid #C2BCB4;
    background: url(../img/t_bg.gif) left top repeat;
}

.box_gray_dot p {
    padding: 0 10px 0 10px;
    line-height: 1.4;
}

.box_gray ul {
    padding-left: 10px;
}

.inline_list {
    max-width: max-content;
    margin: auto;
}

.inline_list li {
    display: block;
    margin-right: 10px;
}

#price .inline_list li {
    display: inline;
    margin-right: 10px;
}

/* #main（メインコンテンツ）TOPページ
----------------------------------------------------*/

#main .slide_box {
    height: 271px;
}

#main .pickup {
    margin: 10px 0 50px 0;
    list-style: none;
}

#main .pickup li {
    float: left;
}

#main .pickup .first {
    margin-right: 10px;
}

#main .woman_box {
    background-color: #FFE5E5;
    width: 290px;
    padding: 1px 10px 20px 10px;
    margin-top: 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

/* #main subscription.html ご購読申し込み
----------------------------------------------------*/

/* 料金表パーツ */

.arrow_box {
    display: block;
    margin-left: 90px;
}

.arrow_bg {
    background: url(../img/arrow_bg.png) left top no-repeat;
    /*width: 410px;*/
    width: 480px;
    /*height: 68px;*/
    height: 50px;
    vertical-align: middle;
    padding-top: 8px;
    padding-left: 10px;
    display: block;
    float: left;
    margin-bottom: 10px;
    margin-right: 40px;
    text-align: left;
}

.arrow_bg .line_blue {
    background: url(../img/line_blue.png) left center no-repeat;
    padding: 1px 0 2px 20px;
    font-size: 108%;
    font-weight: bold;
}

.arrow_bg .line_light_blue {
    background: url(../img/line_light_blue.png) left center no-repeat;
    padding: 1px 0 1px 12px;
    font-size: 108%;
    font-weight: bold;
}

.arrow_bg .line_orange {
    background: url(../img/line_orange.png) left center no-repeat;
    padding: 1px 0 1px 12px;
    font-size: 108%;
    font-weight: bold;
}

.arrow_bg b {
    font-size: 153.9%;
    font-weight: bold;
    line-height: 1;
    float: right;
}

.arrow_bg .tax {
    font-size: 70%;
    font-weight: normal;
    /*	line-height: 1;
        float: right;
        margin-top: 5px;*/
}

.left_space {
    display: block;
    padding-top: 2px;
    padding-left: 10px;
}

@media screen and (max-width: 720px) {

    ul.arrow_box {
        display: flex;
        justify-content: stretch;
        margin: 0 auto;
        flex-wrap: wrap;
    }

    .arrow_bg {
        background: url(../img/arrow_bg.png) left top no-repeat;
        /*width: 410px;*/
        width: 100%;
        /*height: 68px;*/
        height: 40px;
        border-radius: 5px;
        margin-bottom: 40px;
        margin-left: auto;
        margin-right: auto;
    }

    .arrow_bg .line_blue {
        display: block;
        font-size: 14px;
    }

    .arrow_bg .line_light_blue {
        font-size: 14px;
    }

    .arrow_bg .line_orange {
        font-size: 14px;
    }

    .arrow_bg b {
        display: block;
        min-width: 240px;
        font-size: 18px;
        margin-top: 25px;
        font-weight: bold;
        line-height: 1;
        text-align: right;
    }

    .btn_link {
        width: 100%;
        max-width: 350px;
    }
}

/* #main store.html 販売店一覧
----------------------------------------------------*/

#main2 {
    float: right;
    width: 940px;
    background: #fff;
}

#main2 table,
#main2 ol,
#main2 ul,
#main2 dl,
#main2 blockquote,
#main2 pre,
#main2 p {
    margin-bottom: 10px;
}

/* 販売店一覧 タイトル装飾 */

#main2 .tit2 {
    clear: both;
    background: url(../img/tit_l.png) left top repeat;
    height: 39px;
    width: 875px;
    margin-bottom: 30px;
    padding: 13px 0 0 25px;
    font-size: 167%;
    text-shadow: 1px 1px 0px #FFF;
    font-weight: normal;
    line-height: 1.3;
}

#main2 .main_txt_box .h4_tit {
    clear: both;
    border-left: 6px solid #6DCFF6;
    padding: 1px 0 1px 10px;
    font-size: 123.1%;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 1;
}

/* 販売店一覧 レイアウトボックス */

#main2 .main_txt_box {
    padding: 0 20px;
    font-size: 100%;
    line-height: 1.8;
    margin: 30px 0 60px 0;
}

/* 販売店一覧 ナビゲーション */

#main2 .store_nav {
    list-style: none;
    margin-bottom: 40px;
}

#main2 .store_nav table {
    width: 900px;
    list-style: none;
}

#main2 .store_nav table th {
    width: 100px;
    background: url(../img/t_bg_b.gif) left top repeat;
    color: #333333;
    font-weight: bold;
}

#main2 .store_nav ul {
    width: 800px;
    overflow: hidden;
    line-height: 1.2;
}

#main2 .store_nav ul li {
    display: block;
    float: left;
    margin-left: -1px;
    padding: 0 7px 0 11px;
    border-left: 1px #DAD6D1 solid;
    list-style-type: none;
    zoom: 1;
    margin-top: 5px;
    margin-bottom: 5px;
}

/* 販売店一覧 table */

#main2 table, #main ol, #main ul, #main dl, #main blockquote, #main pre, #main p {
    margin-bottom: 1.5em;
}

#main2 table {
    font-size: 93%;
    line-height: 1.4;
}

#main2 table .area {
    background: url(../img/t_bg_b.gif) left top repeat;
}


#main2 table ul {
    list-style: none;
}

#main2 table th {
    padding: 5px;
    border: 1px solid #DAD6D1;
    background-color: #3399FF;
    text-align: center;
    vertical-align: middle;
    font-size: 108%;
    line-height: 1.2;
    color: #FFFFFF;
    font-weight: bold;
}

#main2 table td {
    padding: 5px;
    border: 1px solid #DAD6D1;
}


/* #main campaign.html キャンペーン一覧
----------------------------------------------------*/

/*#main .campaign_box {
	border-top: 2px solid #DAD6D1;
}
*/
#main .campaign {
    padding: 20px 10px 10px 10px;
    border-bottom: 2px solid #DAD6D1;
}

#main .campaign p {
    margin: 0;
    padding: 0;
}

#main .campaign p b {
    color: #1572E2;
}


#main .campaign .p_t {
    margin: 0;
    padding: 10px 0 10px 0;
    line-height: 1.4;
}

#main .campaign a {
    /*    font-size: 123.1%;*/
    color: #000;
    width: 100%;
}

#main .campaign .campaign_r {
    width: 430px;
    float: right;
}

#main .campaign .btn {
    margin-top: 20px;
    text-align: center;
}


/*.campaign {
    position: relative;
}
.campaign a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent:-999px;
}*/

/* キャンペーン応募ボタン */

#main .entry_btn {
    /* 背景色 */
    background: #666666; /* Old browsers */
    background: -moz-linear-gradient(top, #666666 0%, #2c2c2c 50%, #000000 51%, #131313 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #666666), color-stop(50%, #2c2c2c), color-stop(51%, #000000), color-stop(100%, #131313)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #666666 0%, #2c2c2c 50%, #000000 51%, #131313 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #666666 0%, #2c2c2c 50%, #000000 51%, #131313 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #666666 0%, #2c2c2c 50%, #000000 51%, #131313 100%); /* IE10+ */
    background: linear-gradient(to bottom, #666666 0%, #2c2c2c 50%, #000000 51%, #131313 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#666666', endColorstr='#131313', GradientType=0); /* IE6-9 */
    /* 影 */
    -webkit-box-shadow: 1px 1px 3px #999;
    -moz-box-shadow: 1px 1px 3px #999;
    box-shadow: 1px 1px 3px #999;
    /* 角丸 */
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    /* その他 */
    width: 496px;
    padding: 20px 20px 0 20px;
    margin: 0 auto;
    display: block;
    border: #131313 2px solid;
    /* テキスト */
    color: #FFF;
    font-weight: bold;
    text-shadow: 2px 2px 0px #000;
    text-decoration: none;
    line-height: 1.4;
    font-size: 15px;
    text-align: center;
}

#main .entry_btn:hover {
    /* 背景色 */
    background: #8e92a0; /* Old browsers */
    background: -moz-linear-gradient(top, #8e92a0 0%, #5a5d60 50%, #090b0c 51%, #1e1f28 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #8e92a0), color-stop(50%, #5a5d60), color-stop(51%, #090b0c), color-stop(100%, #1e1f28)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #8e92a0 0%, #5a5d60 50%, #090b0c 51%, #1e1f28 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #8e92a0 0%, #5a5d60 50%, #090b0c 51%, #1e1f28 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #8e92a0 0%, #5a5d60 50%, #090b0c 51%, #1e1f28 100%); /* IE10+ */
    background: linear-gradient(to bottom, #8e92a0 0%, #5a5d60 50%, #090b0c 51%, #1e1f28 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#8e92a0', endColorstr='#1e1f28', GradientType=0); /* IE6-9 */
}

/*----------------------------------------------------
	#main キャンペーン一覧　詳細ページ用
----------------------------------------------------*/

/* #main campaign 詳細ページ汎用
----------------------------------------------------*/

/* 応募方法 */
#main .entry_box {
    border: 2px solid #2674CC;
    padding: 20px;
    border-radius: 6px; /* 角丸 */
    -webkit-border-radius: 6px; /* Safari,Google Chrome用 */
    -moz-border-radius: 6px; /* Firefox用 */
}

/* 応募方法 料金表 */

#main .arrow_table {
    color: #2674CC;
    margin: 0 auto;
    font-size: 108%;
    border-bottom: 2px solid #2674CC;
}

#main .arrow_table .arrow_table_t {
    border-bottom: 2px solid #2674CC;
    padding-left: 0;
}

#main .arrow_table .arrow_table_t2 {
    border-top: 2px solid #2674CC;
    padding-left: 0;
}

#main .arrow_table th {
    color: #FFFFFF;
    background-color: #2674CC;
    padding: 2px;
    font-size: 116%;
}

#main .arrow_table td {
    padding: 2px 2px 2px 20px;
    border: 0;
    border-top: 1px dashed #2674CC;
}

/* #main campaign moving お引っ越しキャンペーン
----------------------------------------------------*/

#main .revive_tit_b {
    background: #0082D6;
    padding: 8px 10px;
    color: #FFFFFF;
    font-size: 138.5%;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.2;
    border-radius: 6px; /* 角丸 */
    -webkit-border-radius: 6px; /* Safari,Google Chrome用 */
    -moz-border-radius: 6px; /* Firefox用 */
}

/* #main campaign revive ふるさと復興味自慢キャンペーン第3弾
----------------------------------------------------*/

#main .revive_tit_r {
    background: #FF6C70;
    padding: 8px 10px;
    color: #FFFFFF;
    font-size: 138.5%;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1;
    border-radius: 6px; /* 角丸 */
    -webkit-border-radius: 6px; /* Safari,Google Chrome用 */
    -moz-border-radius: 6px; /* Firefox用 */
}

#main .revive_tit_o {
    background: #F58220;
    padding: 8px 10px;
    color: #FFFFFF;
    font-size: 138.5%;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.2;
    border-radius: 6px; /* 角丸 */
    -webkit-border-radius: 6px; /* Safari,Google Chrome用 */
    -moz-border-radius: 6px; /* Firefox用 */
}

@media screen and (max-width: 720px) {
    #main .revive_tit_o {
        font-size: 16px !important;
        line-height: 1.5em !important;
    }

    .txt18 {
        font-size: 15px !important;
        line-height: 1.8em !important;
    }
}

/*----------------------------------------------------
	#main キャンペーン一覧　詳細ページ用
----------------------------------------------------*/

/* #main campaign 詳細ページ汎用
----------------------------------------------------*/

/* 応募方法 */
#main .entry_box {
    border: 2px solid #2674CC;
    padding: 20px;
    border-radius: 6px; /* 角丸 */
    -webkit-border-radius: 6px; /* Safari,Google Chrome用 */
    -moz-border-radius: 6px; /* Firefox用 */
}

/* 応募方法 料金表 */

#main .arrow_table {
    color: #2674CC;
    margin: 0 auto;
    font-size: 108%;
    border-bottom: 2px solid #2674CC;
}

#main .arrow_table .arrow_table_t {
    border-bottom: 2px solid #2674CC;
    padding-left: 0;
}

#main .arrow_table .arrow_table_t2 {
    border-top: 2px solid #2674CC;
    padding-left: 0;
}

#main .arrow_table th {
    color: #FFFFFF;
    background-color: #2674CC;
    padding: 2px;
    font-size: 116%;
}

#main .arrow_table td {
    padding: 2px 2px 2px 20px;
    border: 0;
    border-top: 1px dashed #2674CC;
}

/* #main campaign moving お引っ越しキャンペーン
----------------------------------------------------*/

#main .revive_tit_b {
    background: #0082D6;
    padding: 8px 10px;
    color: #FFFFFF;
    font-size: 138.5%;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.2;
    border-radius: 6px; /* 角丸 */
    -webkit-border-radius: 6px; /* Safari,Google Chrome用 */
    -moz-border-radius: 6px; /* Firefox用 */
}

/* #main campaign revive ふるさと復興味自慢キャンペーン第3弾
----------------------------------------------------*/

#main .revive_tit_r {
    background: #FF6C70;
    padding: 8px 10px;
    color: #FFFFFF;
    font-size: 138.5%;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1;
    border-radius: 6px; /* 角丸 */
    -webkit-border-radius: 6px; /* Safari,Google Chrome用 */
    -moz-border-radius: 6px; /* Firefox用 */
}

#main .revive_tit_o {
    background: #F58220;
    padding: 8px 10px;
    color: #FFFFFF;
    font-size: 138.5%;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.2;
    border-radius: 6px; /* 角丸 */
    -webkit-border-radius: 6px; /* Safari,Google Chrome用 */
    -moz-border-radius: 6px; /* Firefox用 */
}


/*----------------------------------------------------
	#side（サイドバー）
----------------------------------------------------*/

#side_box {
    float: left;
    width: 220px;
}

#side {
    float: left;
    width: 198px;
    background: #fff;
    padding: 0 10px 5px 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    border: 1px solid #DAD6D1;
    margin-bottom: 20px;
}

#side ul {
    overflow: hidden;
    padding: 0;
    list-style: none;
    zoom: 1;
}

#side ul li {
    margin-bottom: -1px;
    border-bottom: 1px solid #DAD6D1;
    margin-bottom: -1px;
    display: block;
}

#side ul .side_menu_on {
    margin-bottom: -1px;
    border-bottom: 1px solid #DAD6D1;
    padding: 10px 0;
    margin-bottom: -1px;
    display: block;
    background: url(../img/side_bg.png) left 6px no-repeat;
    font-weight: bold;
    color: #199CCD;
}

#side ul li a {
    color: #333;
    display: block;
    padding: 10px 0;
    font-weight: bold;
}

#side ul li span {
    display: block;
    margin-bottom: 10px;
}

#side ul li a:hover {
    color: #199CCD;
    font-weight: bold;
}

#side ul li .side_menu:hover {
    color: #199CCD;
    font-weight: bold;
    background: url(../img/side_bg_ov.png) left 6px no-repeat;
}

#side ul li ul {
    padding-left: 20px;
    padding-right: 10px;
}

#side ul li ul li {
    border: none;
    background: url(../img/side_icon.png) left center no-repeat #FFF;
    padding-left: 10px;
}

#side ul li ul li a {
    font-weight: normal;
}

#side ul li ul li a:hover {
    font-weight: normal;
}

#side .nav_img {
    padding-top: 20px;
}

.change {
    padding: 2px;
    background: #E94F6E;
    text-align: center;
}

.change a {
    text-decoration: none;
}

.change a:hover {
    text-decoration: underline;
}

.inner {
    color: #FFF;
}

#side_box .side_banner {
    padding: 0 10px 20px 10px;
    display: block;
}

#side_box .side_banner a {
    color: #333;
    font-size: 93%;
}

#side_box .side_banner p {
    padding: 5px 5px 0 5px;
}


#side_box .side_banner a:hover {
    color: #199CCD;
}

#side_box .side_banner img {
    vertical-align: bottom;
}

@media screen and (max-width: 720px) {
    .shidoku.tC img {
        width: 100%;
        height: auto;
    }

    #main .entry_btn {
        width: 100%;
        margin: 0 auto;
        font-size: 16px;
        box-sizing: border-box;
    }
}

#nav .tit2 {
    margin-bottom: 20px;
}

.menu__list {
    list-style-type: none;
    display: grid;
    grid-template-columns: auto auto;
    grid-gap: 10px;
    margin: auto;
    text-align: left;
    font-size: 17px;
}

.menu {
    position: relative;
    border: solid 1px #ccc;
}

.menu > a {
    padding: 15px;
}

.menu::after {
    position: absolute;
    content: ">";
    top: calc(50% - 8px);
    right: 20px;
    color: #ccc;
}

.menu > a {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    display: block;
    padding: 10px;
}

@media screen and (max-width: 540px) {
    .menu__list {
        grid-template-columns: auto;
        font-size: 16px;
    }

    .menu {
        border: hidden;
        border-bottom: dotted 1px #ccc;
    }

    .menu > a {
        padding: 15px;
    }
}

.menu__button {
    position: fixed;
    top: 0;
    right: 0;
    padding: 10px;
    background: rgba(255, 255, 255, 0.4);
    color: black !important;
    text-decoration: none;
    text-align: center;
    z-index: 999;
}

.menu__button > img {
    height: 40px;
    width: 40px;
}

.menu__button-text {
    font-size: 12px;
}

#sonota_koudoku {
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

#sonota_koudoku::after {
    display: block;
    content: "";
    top: calc(50% - 10px);
    right: 10px;
    height: 23px;
    width: 23px;
    background: url('../img/open.svg') no-repeat;
    background-size: contain;
    position: absolute;
}

#hikkoshi {
    font-size: 15px !important;
}

/*.closeButtonWrap {
    height: 0;
    overflow: hidden;
}

.closeButtonWrap.open {
    height: auto;
}*/

#page_top {
    width: 60px;
    height: 60px;
    position: fixed;
    right: 0;
    bottom: 10px;
    opacity: 0;
    z-index: 999;
    transition: opacity 0.2s ease-in;
}

#page_top.open {
    opacity: 0.6;
}

#page_top a {
    width: 60px;
    height: 60px;
    text-decoration: none;
}

#page_top a::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f139';
    font-size: 50px;
    color: #3fefee;
}