/*
フロント処理関連で使用するクラス
*/
/*-------------------------------------------------*
 *  テキスト
 *-------------------------------------------------*/
.text_bold {
    /*** あとでけす ****/
    font-weight: 700;
}
.text_orange {
    color: #f60;
}
.text_block {
    /*旧(.text_under)*/
    color: #333;
    font-size: 85%;
    padding-bottom: 5px;
    padding-top: 5px;
    padding-left: 10px;
    display: block;
}
.text_block_simple {
    color: #333;
    margin-bottom: 5px;
    display: block;
}
.text_normal_left {
    /*旧(.text_left) */
    color: #333;
    font-size: 85%;
    padding-bottom: 10px;
    line-height: 1.2;
}
/*-------------------------------------------------*
 *  編集・確認画面等での表示関連
 *-------------------------------------------------*/
/* 背景グレー・左寄せ */
.back_gray_left {
    color: #333;
    font-size: 85%;
    font-weight: normal;
    display: block;
    line-height: 1.2;
    padding: 5px 0px 5px 5px;
    margin-top: 2px 0px 5px 0px;
    background-color: #e3e3e3;
}
.teiki_banner.no .back_gray_left {
    background-color: #e3e3e3;
}
.teiki_banner .back_gray_left {
    background-color: #f8f3eb;
}
/* 背景グレー・左寄せ・強調 */
.back_gray_strong {
    color: #333;
    font-size: 85%;
    font-weight: bold;
    display: block;
    line-height: 1.2;
    padding: 5px 0px 5px 5px;
    margin-top: 2px 0px 5px 0px;
    background-color: #e3e3e3;
}
/* 中央 */
.text_block_center_bold {
    text-align: center;
    color: #333;
    font-size: 100%;
    font-weight: bold;
    /*    padding:15px 0px 15px 0px;
    margin: 15px 0px 15px 0px;*/
}
/* 太字・中央 */
.text_block_strong {
    text-align: center;
    color: #333;
    font-size: 120%;
    font-weight: bold;
    padding: 15px 0px 15px 0px;
    margin: 15px 0px 15px 0px;
}
/* 太字・左・フォント小さめ */
.text_block_bold {
    color: #333;
    font-size: 80%;
    font-weight: bold;
    margin: 5px;
    display: block;
}
/* 左・小さめ */
.text_block_small {
    color: #333;
    font-size: small;
    margin: 5px;
    display: block;
}
/* 黒字・太字 */
.text_strong {
    color: #333;
    font-weight: bold;
}
/* 黒字・80%サイズ・普通 */
.text_normal {
    color: #333;
    font-size: 80%;
    font-weight: normal;
}
/* 黒字・小さめ・普通 */
.text_small {
    color: #333;
    font-size: small;
    font-weight: normal;
}
/* 赤字・小さめ・普通 */
.red_small {
    color: #bb3c00;
    font-size: small;
    font-weight: normal;
}
/* 赤字・太字 */
.text_red_strong {
    color: #bb3c00;
    font-weight: bold;
}
/* 注意メッセージ用（赤字-中央） */
.text_caution {
    /**/
    color: red;
    text-align: center;
    font-weight: bold;
    margin: 10px 0px 10px 0px;
}
/* 注意メッセージ用（赤字-左） */
.text_caution_left {
    /**/
    color: red;
    text-align: left;
    font-size: 80%;
    font-weight: bold;
    margin: 10px 0px 10px 0px;
}
/*-------------------------------------------------*
 *  社内専用
 *-------------------------------------------------*/
/* 社内専用枠 */
.inHouse_waku {
    /* */
    border-width: 2px;
    border-style: solid;
    border-color: red;
    display: block;
    margin: 15px 0px 5px 0px;
    padding: 0px;
}
/* 社内専用枠内の上下タイトル */
.inHouse_banner {
    /*旧(.back_yellow_left をベースに修正) */
    background-color: #ff3;
    display: block;
    margin: 0px;
    padding: 5px 5px 5px 5px;
    line-height: 1.2;
    color: red;
    text-align: center;
    font-weight: bold;
    font-size: small;
}
/*-------------------------------------------------*
 *  フォーム入力関連
 *-------------------------------------------------*/
/* テキスト入力：横幅普通 */
.input_text_normal {
    /* width: 280px; */
    width: 98%;
    height: 30px;
    font-size: 110%;
    vertical-align: middle;
    padding-right: 3px;
}
/* テキスト入力：横幅広め */
.input_text_wide {
    width: 85%;
    height: 30px;
    font-size: 110%;
    vertical-align: middle;
}
/* テキスト入力：横幅一杯 */
.input_text_full {
    width: 97%;
    height: 30px;
    font-size: 110%;
    vertical-align: middle;
    padding: 5px 3px 5px 3px;
    background: #fdfcfa;
    border: 1px solid #c3c3c3;
}
.input_text_full:focus{
    background: #fbf2e4;
}
.input_text_full:-webkit-autofill {
    background: #fbf2e4 !important ;
	box-shadow: 0 0 0 1000px #fbf2e4 inset;
}
/* 数字入力：*/
.input_number {
    ime-mode: disabled;
    width: 150px;
    height: 30px;
    font-size: 110%;
    vertical-align: middle;
}
.not_ime {
    ime-mode: disabled;
}
/* テキストエリア入力：*/
.input_textarea {
    vertical-align: baseline;
    font-size: 110%;
    width: 98%;
    height: 100px;
    white-space: pre-wrap;
    word-wrap: break-word;
    cursor: auto;
    flex-direction: column;
    -webkit-appearance: textarea;
    -webkit-rtl-ordering: logical;
    -webkit-user-select: text;
}
/* プルダウンテキスト：サイズ指定なし */
.input_select_full {
    font-size: 110%;
    margin: 5px;
    padding: 5px;
    vertical-align: middle;
}
/* プルダウンテキスト：横幅auto */
.input_select {
    font-size: 100%;
    height: 30px;
    vertical-align: middle;
}
/* プルダウンテキスト：横幅狭め */
.input_select_narrow {
    font-size: 110%;
    min-width: 60px;
    height: 30px;
    vertical-align: middle;
}
/* プルダウンテキスト：横幅普通 */
.input_select_normal {
    font-size: 100%;
    min-width: 160px;
    height: 30px;
    vertical-align: middle;
}
/* チェックボックス：*/
.input_checkbox {
    font-size: 100%;
    margin: 5px;
    padding: 5px;
    vertical-align: middle;
}
/*-------------------------------------------------*
 *  色いろ
 *-------------------------------------------------*/
/* テキスト通常色 */
.color_dglay {
    color: #333;
}
/* 赤字 */
.color_red {
    /*旧(.texcolR)*/
    color: #bb3c00;
}
.color_blue {
    color: blue;
}
/*-------------------------------------------------*
 *  注意喚起・小さめ系
 *-------------------------------------------------*/
/* 小さめ・太字 */
.small_strong {
    font-size: smaller;
    font-weight: bold;
}
.small_normal {
    font-size: smaller;
    font-weight: bold;
}
/* 小さめ・太字 */
.small_strong_red {
    color: #bb3c00;
    font-size: smaller;
    font-weight: bold;
}
/* テキスト表示[赤字・小さめ] */
.small_normal_red {
    color: #bb3c00;
    font-size: smaller;
    font-weight: normal;
}
/* 必須入力タイトル用：太字・アスタリスク付 */
.input_title_must {
    color: #333;
    font-weight: bold;
}
.input_title_must:after {
    color: #e32;
    content: "*";
    display: inline;
    font-weight: bold;
}
/*-------------------------------------------------*
 *  位置
 *-------------------------------------------------*/
/*  右寄せ　*/
.right_yose {
    float: right;
}
/* テキスト中央寄せ */
.center_text {
    width: auto;
    text-align: center;
}
/* 行隙間調整用*/
.line_gap_5px {
    margin-bottom: 5px;
}
/*-------------------------------------------------*
 *  枠で囲んだテキスト
 *-------------------------------------------------*/
/*
 *  枠で囲んだテキスト《枠線：指定なし》
 */
.text_waku {
    color: #333;
    font-size: 80%;
    border: thin solid #ccc;
    margin-bottom: 10px;
    padding: 10px;
}
/*
 *  枠で囲んだテキスト《枠線：赤》
 */
.text_waku_red {
    color: #333;
    font-size: 80%;
    border: thin solid #ccc;
    margin-bottom: 10px;
    padding: 10px;
    border-color: red;
}
/*
 *  枠で囲んだテキスト《枠線：オレンジ》
 */
.text_waku_orange {
    color: #333;
    font-size: 100%;
    text-align: center;
    border: thin solid #ccc;
    border-color: #f60;
    margin: 0 10px 10px 10px;
    padding: 10px;
}
/*
 *  枠で囲んだテキスト《年間購入コース説明用の枠》
 */
.text_waku_nenkan {
    text-align: center;
    border: thin solid red;
    padding: 10px;
    margin: 10px 5px 10px 0px;
    display: block;
}
/*
 *  テキスト位置揃え用テーブル
 */
.tbl_invisible {
    margin-top: 3px;
    margin-bottom: 3px;
    border-collapse: collapse;
}
.tbl_invisible td {
    padding: 0px 10px 2px 0px;
    border: none;
}
/*-------------------------------------------------*
 *  見出し
 *-------------------------------------------------*/
/*
 *  見出し－オレンジ－
 */
.title_banner {
    /* 旧(.back_orange)*/
    color: #333;
    font-size: 85%;
    background-color: #f3dcb0;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    font-weight: 700;
    margin: 0 auto 20px;
}
.title_banner2 {
    color: #ffffff;
    font-size: 85%;
    background-color: #f3dcb0;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    font-weight: 700;
}
/* H30北達-処理票-03-022 対応 start   */
.title__left_banner {
    /* */
    color: #333;
    font-size: 85%;
    background-color: #fc6;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: left;
    font-weight: 700;
}
/* H30北達-処理票-03-022 対応 end     */
.add_title_banner {
    /**/
    color: white;
    background-color: green;
    font-size: 85%;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    font-weight: 700;
}
.add_guide_banner {
    /**/
    color: #333;
    font-size: 85%;
    background-color: #e3e3e3;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    font-weight: 700;
}
/*
 *  コース見出し－オレンジ－
 */
.course_banner {
    /* 旧(.back_orange)にmargin-bottom追加*/
    color: #333;
    font-size: 85%;
    background-color: #fc6;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    font-weight: 700;
    margin-bottom: 5px;
}
/*
 *  見出し－ピンク－
 */
.banner_pink {
    /* 旧(.back_pink)*/
    color: #333;
    font-weight: bold;
    background-color: #fcc;
    display: block;
    text-align: center;
    font-size: 85%;
    padding: 5px 10px;
}
/*
 *  見出し－ピンク－(マージン追加)
 */
.banner_pink_m {
    /* 旧(.back_pink)にmargin-bottom追加*/
    color: #333;
    font-weight: bold;
    background-color: #fcc;
    display: block;
    text-align: center;
    font-size: 85%;
    padding: 5px 10px;
    margin-top: 15px;
    margin-bottom: 5px;
}
/*-------------------------------------------------*
 *  商品追加・商品選択
 *-------------------------------------------------*/
/*
 *  商品リスト全体を囲む（一番外側）
 */
.item_waku {
    float: right;
    width: 100%;
    padding-top: 0;
    margin: 0 auto;
}
/*
 *  商品毎・商品全体を囲む〔div〕
 */
.item_panel {
    cursor: pointer;
    width: 150px;
    height: 200px;
    text-align: center;
    float: left;
    font-size: 75%;
    border: thin solid #e3e3e3;
    padding: 0;
    margin: 0 auto;
    vertical-align: baseline;
}
.item_waku :hover {
    background-color: #fff9c8;
}
.item_panel :hover {
    background-color: transparent;
}
.item_waku :active {
    background-color: #ff7f50;
}
/*
 *  商品毎・商品画像を囲む〔div〕
 */
.item_img {
    width: 106px;
    height: 106px;
    padding-top: 9px;
    margin: 0 auto;
    text-align: center;
}
.itemlist_img {
    width: 106px;
    height: 106px;
    cursor: pointer;
}
/*-------------------------------------------------*
 *  定期見出し・トグル
 *-------------------------------------------------*/
/*
 *  一定期ごと枠で囲みます
 */
.teiki_banner {
    /**/
    border-width: 1px;
    border-style: solid;
    border-color: #e9c68c;
    border-collapse: collapse;
    border-spacing: 0;
    margin: 0;
}
/*
 *  一定期ごと枠で囲みます CORE_SYSTEM-2246 定期専用マイページの商品追加画面の修正
 */
.teiki_banner2 {
    border-width: 1px;
    border-style: solid;
    border-color: #1a7205;
    border-collapse: collapse;
    border-spacing: 0;
    margin: 0;
}
/*
 *  一定期ごと枠で囲みます(解約済み)
 */
.teiki_banner_canceld {
    color: #333;
    background-color: #ddd;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    font-size: 85%;
    font-weight: 700;
    position: relative; /**/
}
.toggle_button {
    position: absolute;
    top: 70px;
    right: 10px;
    font-weight: normal;
}
.toggle_button2 {
    position: absolute;
    top: 70px;
    right: 10px;
    font-weight: normal;
    border-bottom: #ffffff 1px solid;
}

@media screen and (max-width: 480px) {
    .toggle_button2 {
        top: 50px;
    }
}

.toggle dd {
    color: #000;
    font-size: 85%;
}

.toggle dd a {
    color: #39c;
}

.toggle dt,
.toggle_open dt {
    margin-top: -1px;
    font-size: 95%;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 5px;
}

.toggle dt span {
    display: block;
    background: url(../img/icon_under.png) no-repeat right center;
    -webkit-background-size: 20px 20px;
    padding-right: 20px;
    cursor: pointer;
}

.toggle_open dt span {
    display: block;
    background: url(../img/icon_top.png) no-repeat right center;
    -webkit-background-size: 20px 20px;
    padding-right: 20px;
    cursor: pointer;
}
/*-------------------------------------------------*
 *  ボタン画像関連
 *-------------------------------------------------*/
/*  画像中央寄せ　*/
.cente_image {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
/* 画像ボタン用 */
.submit_button {
    border-style: none;
    padding: 0;
    background-color: transparent;
    cursor: pointer;
}
/* フォームボタン用 */
.input_button {
    padding: 0px 10px;
    cursor: pointer;
}

/* Buttons and button links */
input[type="submit"],
.actions ul li a,
.actions a {
    font-weight: normal;
    padding: 4px 8px;
    background: #dcdcdc;
    background-image: -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(#fefefe),
        to(#dcdcdc)
    );
    background-image: -webkit-linear-gradient(top, #fefefe, #dcdcdc);
    background-image: -moz-linear-gradient(top, #fefefe, #dcdcdc);
    background-image: -ms-linear-gradient(top, #fefefe, #dcdcdc);
    background-image: -o-linear-gradient(top, #fefefe, #dcdcdc);
    background-image: linear-gradient(top, #fefefe, #dcdcdc);
    color: #333;
    border: 1px solid #bbb;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    text-decoration: none;
    text-shadow: #fff 0px 1px 0px;
    min-width: 0;
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3),
        0px 1px 1px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3),
        0px 1px 1px rgba(0, 0, 0, 0.2);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3),
        0px 1px 1px rgba(0, 0, 0, 0.2);
    -webkit-user-select: none;
    user-select: none;
}
.actions ul li a:hover,
.actions a:hover {
    background: #ededed;
    border-color: #acacac;
    text-decoration: none;
}
input[type="submit"]:active,
.actions ul li a:active,
.actions a:active {
    background: #eee;
    background-image: -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(#dfdfdf),
        to(#eee)
    );
    background-image: -webkit-linear-gradient(top, #dfdfdf, #eee);
    background-image: -moz-linear-gradient(top, #dfdfdf, #eee);
    background-image: -ms-linear-gradient(top, #dfdfdf, #eee);
    background-image: -o-linear-gradient(top, #dfdfdf, #eee);
    background-image: linear-gradient(top, #dfdfdf, #eee);
    text-shadow: #eee 0px 1px 0px;
    -moz-box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3);
    box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.3);
    border-color: #aaa;
    text-decoration: none;
}
input#logout_botton {
    margin: 0px 5px 8px 5px;
    padding: 5px 15px;
    border: 1px solid #dddddd;
    background: #fdfcfa;
    border-radius: 0;
    text-shadow: none;
    box-shadow: none;
}
/*-------------------------------------------------*
 *  マイページログイン　パスワード設定ページ
 *-------------------------------------------------*/
#login_info_auth {
    border: #008ece 2px solid;
    padding: 15px;
    margin: 10px auto;
    max-width: 400px;
    text-align: left;
    font-weight: normal;
    justify-content: space-between;
}
