/*==================== 定義済サイトデザインパーツ */
.blcomp-crate {
    position: relative;
    width: 100%;
    margin: 0 auto 20px;
    background-color: #FFFFFF;
}

.blcomp-crate:last-of-type {
    margin-bottom: 0;
}

.blcomp-partition {
    box-sizing: border-box;
    padding: 20px;
}

.blcomp-partition.-partition-crate_cover {
    padding: 0px;
}

.pouring_columns {
    column-count: 2;
    column-gap: 20px;
}

.pouring_columns > .heading_title {
    /* 大タイトル用 */
    column-span: all;
}

.pouring_columns .convex {
    break-inside: avoid;
    padding: 20px 0;
}

@media screen and (max-width: 950px) {
    .blcomp-partition {
        padding-right: 10px;
        padding-left: 10px;
    }

    .pouring_columns {
        columns: unset;
        padding-right: 0;
        padding-left: 0;
        padding-bottom: 0;
    }

    .pouring_columns .convex {
        padding-bottom: 0;
    }

    .pouring_columns > *:not(.convex) {
        margin-right: 10px;
        margin-left: 10px;
    }
}


/* heading_titleがガイドライン定義されるまでは以下を付与 */
.blcomp-crate .heading_title,
.blcomp-crate .heading_title > h1,
.blcomp-crate .heading_title > h2,
.blcomp-crate .heading_title > h3,
.blcomp-crate .heading_title > h4 {
    padding-top: 0 !important;
    padding-left: 0 !important;
}

@media screen and (max-width: 950px) {
    .convex .heading_title {
        margin-left: 10px;
    }
}



/* heading_titleがガイドライン定義されるまでは以下を付与 */
.blcomp-crate .heading_title,
.blcomp-crate .heading_title > h1,
.blcomp-crate .heading_title > h2,
.blcomp-crate .heading_title > h3,
.blcomp-crate .heading_title > h4 {
    padding-top: 0 !important;
    padding-left: 0 !important;
}

/*==================== 以降 旧design_module.css */
/* 画面サイズに関わらず共通で必要になるクラス */
.heading_title {
    position: relative;
    background-color: #FFF;
}
/* PC */
.heading_title .large {
    font-size: 26px;
    font-weight: bold;
    padding: 20px;
    display: inline-block;
    line-height: 26px;
}
.heading_title .middle {
    font-size: 22px;
    font-weight: bold;
    padding: 20px;
    display: inline-block;
    line-height: 22px;
}
.heading_title .small {
    font-size: 18px;
    font-weight: normal;
    padding: 0 0 10px 10px;
}
.heading_title.add_pickup_link .large,
.heading_title.add_pickup_link .middle {
    padding-right: 75px;
}
.heading_title.add_pickup_link .small {
    padding: 20px;
    line-height: 20px;
}
.heading_title.add_pickup_link .pickup_link {
    position: absolute;
    right: 0;
    top: 0;
    text-align: right;
}
.heading_title.add_pickup_link .pickup_link > a {
    padding:20px;
    font-size: 16px;
    line-height: 22px;
    display: inline-block;
}

.content_inner {
    padding: 0 20px;
}

.btn_center_line {
    display: flex;
    justify-content: center;
}
#container .btn_center_line > * {
    margin: 0 5px;
}
/* hover */
#container input.btn_module:hover,
#container a.btn_module:hover {
    transition-duration: .5s;
    text-decoration: none;
}
a.btn_module.buy_action:hover,
a.btn_module.free_reading:hover,
a.btn_module.reservation_action.reservation_in:hover {
    background: #D44B00;
    border: 1px solid #D44B00;
    box-shadow: none;
}
#container a.btn_module.cart_action.cart_in:hover {
    background: #007374;
    border: 1px solid #007374;
    box-shadow: none;
}
a.btn_module.keep_action:hover,
#container a.btn_module.tachiyomi_btn:hover,
a.btn_module.read_action:hover,
#container a.btn_module.cart_action:not(.cart_in):hover,
a.btn_module.reservation_action:not(.reservation_in):hover,
a.btn_module.reservation_action.reserved:hover,
a.btn_module.trial_reading_increase:hover {
    opacity: 0.5;
    box-shadow: none;
}
.btn_module.btn_white:hover {
    color: #999999;
    background: #FFFFFF;
    border: 1px solid #DADADA;
}
.btn_module.btn_orange:hover {
    background: #D44B00;
    border: 1px solid #D44B00;
}
.btn_module.btn_green:hover {
    background: #007374;
    border: 1px solid #007374;
}
.btn_module.btn_red:hover {
    background: #D10000;
    border: 1px solid #D10000;
}
.btn_module:hover .btn_icon.delete_icon{
    opacity: 0.5;
    transition-duration: .5s;
}
/* SP */
.heading_title.large {
    font-size: 20px;
    font-weight: bold;
    padding: 15px;
    display: block;
    line-height: 22px;
}
.heading_title.middle {
    font-size: 18px;
    font-weight: bold;
    padding: 15px 10px 15px 15px;
    display: block;
    line-height: 22px;
}
.heading_title.small {
    font-size: 16px;
    font-weight: normal;
    padding: 10px 0 10px 10px;
}
.add_pickup_link .heading_title.large,
.add_pickup_link .heading_title.middle {
    padding-right: 80px;
}
#container .btn_module.cart_all_action {
    color: #FFFFFF;
    background: #009C9D;
    border: 1px solid #009C9D;
}
#container .btn_module.cart_all_action:not(.cart_in) {
    color: #333333;
    background: #FFFFFF;
    border: 1px solid #B4B4B4;
}
#container .btn_module.cart_all_action:not(.cart_in) svg.cart_icon {
    fill: #333333;
}

.btn_module span.cssicon_follow_bfr,
.header_tools_keep .icon-follow .cssicon_follow_bfr {
    display: inline-block;
    line-height: 1;
    width: 14px;
    height: 2px;
    background: currentColor;
    border-radius: 1px;
    position: relative;
    vertical-align: middle;
}
.btn_module span.cssicon_follow_bfr,
.header_tools_keep .icon-follow .cssicon_follow_bfr {
    color: #4D4D4D;
}
.btn_module span.cssicon_follow_bfr::before,
.header_tools_keep .icon-follow .cssicon_follow_bfr::before {
    content: '';
    color: #4D4D4D;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    border-radius: inherit;
    transform: rotate(90deg);
}
#header .header_tools li.header_tools_keep div.icon-follow {
    margin: 0 auto;
    display: inline-block;
}
.header_tools_keep .icon-follow .cssicon_follow_bfr {
    width: 20px;
    height: 4px;
    top: 7px;
}
.header_tools_keep.disabled .icon-follow .cssicon_follow_bfr,
.header_tools_keep.disabled .icon-follow .cssicon_follow_bfr::before {
    color: #B4B4B4;
}
.btn_module.keep_action:not(.keep_off) span.cssicon_follow_aft {
    width: 15px;
    height: 9px;
    border-left: 2px solid #FF5A00;
    border-bottom: 2px solid #FF5A00;
    transform: rotate(-45deg);
    display: inline-block;
    vertical-align: text-top;
    box-sizing: border-box;
    margin-right: 5px;
}
.cssicon_arrow {
    position: relative;
}
.cssicon_arrow::before {
    content: "";
    margin: auto;
    position: absolute;
    top: -2px;
    bottom: 0;
    left: -5px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #B4B4B4;
    border-right: 2px solid #B4B4B4;
}
.cssicon_arrow.arrow_right::before {
    transform: rotate(45deg);
}

@media not all and (max-width: 950px) {
    /* PC */
    /* ボタン共通のスタイル */
    .btn_module {
        font-size: 13px;
        font-weight: 700;
        padding-top: 10px;
        padding-bottom: 10px;
        width: auto;
        line-height: 24px;
        color: #333333;
        background: #FFFFFF;
        border-radius: 3px;
        display: block;
        text-align: center;
        -webkit-appearance: none;
    }
    .btn_module.small {
        font-size: 11px;
        font-weight: normal;
        line-height: 20px;
        padding-top: 8px;
        padding-bottom: 8px;
    }
    #container .btn_module.large {
        font-size: 15px;
        font-weight: 700;
        line-height: 28px;
        padding-top: 12px;
        padding-bottom: 12px;
    }
    #container .btn_module.huge {
        font-size: 17px;
        font-weight: 700;
        line-height: 32px;
        padding-top: 14px;
        padding-bottom: 14px;
    }
    a.btn_module {
        text-decoration: none;
    }

    /* 各ボタンのスタイル */
    .btn_module span.cssicon_follow_bfr {
        width: 15px;
        height: 2px;
        right: 6px;
        margin-top: -3px;
    }
    .btn_module.keep_action {
        border: 1px solid #B4B4B4;
        background: #FFFFFF;
    }
    .btn_module.keep_action:not(.keep_off) {
        color: #FF5A00;
        border: 1px solid #B4B4B4;
    }
    .btn_module.keep_action.disabled,
    #container .btn_module.tachiyomi_btn.disabled,
    .btn_module.read_action.disabled,
    .btn_module.purchase_btn.disabled,
    #container .btn_module.trial_reading_increase.disabled {
        color: #333333;
        border: 1px solid #B4B4B4;
        opacity: .3;
    }
    #container .btn_module.cart_action {
        color: #FFFFFF;
        background: #009C9D;
        border: 1px solid #009C9D;
    }
    #container .btn_module.cart_action:not(.cart_in),
    #container .btn_module.tachiyomi_btn,
    .btn_module.read_action,
    #container .btn_module.trial_reading_increase {
        color: #333333;
        background: #FFFFFF;
        border: 1px solid #B4B4B4;
    }
    .btn_module.buy_action,
    .btn_module.free_reading,
    .btn_module.reservation_action,
    .btn_module.reservation_action.reservation_in {
        color: #FFFFFF;
        background: #FF5A00;
        border: 1px solid #FF5A00;
    }
    .btn_module.reservation_action.reserved,
    .btn_module.reservation_action {
        color: #FF5A00;
        background: #FFFFFF;
        border: 1px solid #B4B4B4;
    }
    #container .btn_module.download.btn_link {
        height: 24px;
        display: flex;
        align-items: center;
    }
    #container .btn_module.download.btn_link .btn_txt {
        line-height: 24px;
    }
    .btn_module.download.btn_link .right_arrow {
        margin-left: auto;
    }

    /* svgのスタイル */
    .btn_module svg {
        fill: #4D4D4D;
        width: 24px;
        height: 24px;
        margin-right: 4px;
        display: inline-block;
        vertical-align: top;
    }
    #container .btn_module.small svg {
        width: 20px;
        height: 20px;
    }
    #container .btn_module.large svg {
        width: 28px;
        height: 28px;
    }
    /* 各svgアイコンのスタイル */
    .btn_module svg.auto_icon,
    #container .btn_module svg.cart_icon,
    .btn_module svg.dl_icon,
    .btn_module svg.reservation_icon,
    .btn_module svg.free_reading {
        fill: #FFFFFF;
    }
    .btn_module.reservation_action:not(.reservation_in) svg.auto_icon,
    .btn_module.reservation_action.reserved svg.reservation_icon {
        fill: #FF5A00;
    }
    .btn_module.keep_action:not(.keep_off) span.cssicon_follow_bfr {
        display: none;
    }
    .btn_module.keep_off span.cssicon_follow_aft {
        display: none;
    }
    #container .btn_module.cart_action:not(.cart_in) svg.cart_icon {
        fill: #333333;
    }

    #container .btn_module.download .dl_icon {
        display: inline;
        background-position: 0 0;
        background-color: transparent;
        background-image: url("/resources/a/pc/v2/images/download/img_dl_arrow_pc.png");
        background-repeat: no-repeat;
        background-size: auto 30px;
        overflow: hidden;
        padding: 7px 20px 8px 20px;
    }

    /* 汎用ボタンのスタイル */
    .btn_module.btn_white {
        color: #333333;
        background: #FFFFFF;
        border: 1px solid #B4B4B4;
    }
    .btn_module.btn_white.disabled {
        color: #C2C2C2;
        background: #FFFFFF;
        border: 1px solid #E9E9E9;
    }
    .btn_module.btn_orange {
        color: #FFFFFF;
        background: #FF5A00;
        border: 1px solid #FF5A00;
    }
    .btn_module.btn_orange.disabled {
        background: #FFBD99;
        border: 1px solid #FFBD99;
    }
    .btn_module.btn_green {
        color: #FFFFFF;
        background: #009C9D;
        border: 1px solid #009C9D;
    }
    .btn_module.btn_green.disabled {
        background: #A6DCDC;
        border: 1px solid #A6DCDC;
    }
    .btn_module.btn_red {
        color: #FFFFFF;
        background: #FF0000;
        border: 1px solid #FF0000;
    }
    .btn_module.btn_red.disabled {
        color: #B9B8B7;
        background: #FFFFFF;
        border: 1px solid #B7B7B7;
    }
    .btn_module.btn_pink {
        color: #FFFFFF;
        background: #EC2B4D;
        border: 1px solid #EC2B4D;
    }
    .btn_module.btn_blue {
        color: #FFFFFF;
        background: #0074BF;
        border: 1px solid #0074BF;
    }
    .btn_module.btn_blue.disabled {
        color: #C2C2C2;
        background: #FFFFFF;
        border: 1px solid #E9E9E9;
    }
    .btn_module.btn_black {
        color: #FFFFFF;
        background: #000000;
        border: 1px solid #000000;
    }
    .btn_module.btn_orange,
    .btn_module.btn_white,
    .btn_module.btn_green,
    .btn_module.btn_red,
    .btn_module.btn_pink,
    .btn_module.btn_blue,
    .btn_module.btn_black {
        width: 100%;
        box-sizing: border-box;
        cursor: pointer;
    }
    .btn_module.disabled {
        cursor: default;
    }
    .btn_module.default_wdt {
        width: 180px;
    }
    .btn_module .btn_icon.delete_icon {
        background-position: -172px -2px;
    }
    .btn_icon.delete_icon {
        opacity: 0.5;
        transition-duration: .5s;
    }
    .btn_module .btn_icon {
        background-image: url("/resources/a/pc/common/images/btn_icons_m.png");
        height: 24px;
        width: 20px;
        margin-right: 4px;
        margin-left: -4px;
    }
    .btn_module.small .btn_icon.delete_icon {
        background-position: -172px -4px;
    }
    .btn_module.small .btn_icon {
        height: 20px;
    }
    .btn_module.large .btn_icon {
        height: 26px;
    }

    /* form */
    .form_items:not(:last-of-type) {
        margin-bottom: 24px;
    }
    .form_date {
        display: flex;
        justify-content: flex-start;
        align-items: baseline;
    }
    .form_date_parts {
        margin-right: 1em;
    }
    .form_date_parts select {
        padding: 8px 4px 6px;
        margin-right: .5em;
        border-color: #ccc;
        background-color:#fff;
        font-size:13px;
    }
    .annotation {
        margin-top: .8em;
        color: #666;
        font-size: 11px;
    }
    #validator_alert_year {
        display: block;
    }

    /* checkbox */
    .module_chekckbox_label {
        cursor: pointer;
    }
}

@media screen and (max-width:950px) {
    /* SPモード */
    /* ボタン共通のスタイル */
    .btn_module {
        display: block;
        font-size: 13px;
        line-height: 24px;
        font-weight: 700;
        text-align: center;
        padding-top: 10px;
        padding-bottom: 10px;
        height: auto;
        width: auto;
        border-radius: 3px;
        color: #333333;
        background: #fff;
        opacity: 1.0;
        -webkit-appearance: none;
    }
    #container .btn_module.small {
        font-size: 11px;
        line-height: 20px;
        font-weight: normal;
        padding-top: 8px;
        padding-bottom: 8px;
    }
    .btn_module.large {
        font-size: 15px;
        line-height: 28px;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    #container .btn_module span {
        white-space: nowrap;
        font-size: 13px;
        text-align: left;
    }
    #container .btn_module.small span {
        font-size: 11px;
    }
    .btn_module span.cssicon_follow_bfr {
        margin-top: -2px;
        margin-right: 5px;
    }
    .btn_module.small span.cssicon_follow_bfr {
        width: 13px;
        height: 1.5px;
        margin-right: 2px;
    }
    #container .btn_module.small span.cssicon_follow_aft {
        width: 11px;
        height: 7px;
        margin-right: 2px;
    }
    #container .btn_module.large span {
        font-size: 15px;
    }
    a.btn_module {
        text-decoration: none;
        color: #333333
    }
    @media only screen and (min-width: 600px) {
        #container .btn_module.small,
        #container .btn_module.small span {
            font-size: 13px;
        }
    }

    /* 各ボタンのスタイル */
    .btn_module.keep_action {
        border: 1px solid #B4B4B4;
        background: #FFFFFF;
    }
    .btn_module.keep_action:not(.keep_off) {
        color: #FF5A00;
        border: 1px solid #B4B4B4;
    }
    #container .btn_module.tachiyomi_action {
        height: auto;
    }
    .btn_module.keep_action.disabled,
    #container .btn_module.tachiyomi_btn.disabled,
    .btn_module.read_action.disabled,
    .btn_module.purchase_btn.disabled,
    #container .btn_module.trial_reading_increase.disabled {
        color: #333333;
        border: 1px solid #B4B4B4;
        opacity: .3;
    }
    #container .btn_module.cart_action {
        color: #FFFFFF;
        background: #009C9D;
        border: 1px solid #009C9D;
    }
    #container .btn_module.cart_action:not(.cart_in),
    #container .btn_module.tachiyomi_btn,
    .btn_module.read_action,
    #container .btn_module.trial_reading_increase {
        color: #333333;
        background: #FFFFFF;
        border: 1px solid #B4B4B4;
    }
    .btn_module.buy_action,
    .btn_module.free_reading,
    .btn_module.reservation_action,
    .btn_module.reservation_action.reservation_in {
        color: #FFFFFF;
        background: #FF5A00;
        border: 1px solid #FF5A00;
    }
    .btn_module.reservation_action.reserved,
    .btn_module.reservation_action {
        color: #FF5A00;
        background: #FFFFFF;
        border: 1px solid #B4B4B4;
    }
    #container .btn_module.btn_download_link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        color: #333333;
        background: #FFFFFF;
        border: 1px solid #B4B4B4;
        padding-left: 20px;
        padding-right: 20px;
    }
    #container .btn_module.btn_download_link .arrow_icon {
        background: url("/resources/a/sp/common/images/bg_list_arrow_orange.png") no-repeat right center;
        background-size: 14px 14px;
        height: 14px;
        width: 14px;
    }
    #container .btn_module .app_name_download_l{
        display: block;
        text-align: center;
    }

    /* テキストが2段のスタイル */
    #container .btn_module.reservation_action.two_line,
    #container .btn_module.free_reading.two_line {
        line-height: 12px;
    }
    #container .btn_module.trial_reading_increase.two_line {
        line-height: 16px;
        padding-top: 7px;
        padding-bottom: 5px;
    }
    #container .btn_module.reservation_action.two_line.small,
    #container .btn_module.read_action.two_line.small,
    #container .btn_module.trial_reading_increase.two_line.small,
    #container .btn_module.free_reading.two_line.small {
        padding-top: 6px;
        padding-bottom: 6px;
    }
    #container .btn_module.reservation_action.two_line span,
    #container .btn_module.read_action.two_line span,
    #container .btn_module.trial_reading_increase.two_line span,
    #container .btn_module.free_reading.two_line span {
        display: inline-block;
    }
    #container .btn_module.reservation_action.two_line svg,
    #container .btn_module.read_action.two_line svg,
    #container .btn_module.trial_reading_increase.two_line svg {
        vertical-align: top;
    }
    #container .btn_module.free_reading.two_line svg {
        vertical-align: baseline;
    }
    #container .btn_module.reservation_action.two_line svg.auto_icon {
        transform: translate(-2px, 3px);
    }
    #container .btn_module.read_action.two_line svg.browser_icon,
    #container .btn_module.trial_reading_increase.two_line svg.browser_icon,
    #container .btn_module.free_reading.two_line svg.browser_icon {
        transform: translate(3px, 2px);
    }
    #container .btn_module.small.two_line svg.app_icon,
    #container .btn_module.trial_reading_increase.two_line svg.app_icon {
        transform: translate(4px, 3px);
    }

    #container .btn_module.two_line.small {
        line-height: 12px;
        padding-top: 6px;
        padding-bottom: 6px;
    }

    /* svgのスタイル */
    .btn_module svg {
        width: 24px;
        height: 24px;
        vertical-align: top;
        fill: #4D4D4D;
    }
    #container .btn_module.small svg {
        width: 20px;
        height: 20px;
    }
    #container .btn_module.large svg {
        width: 28px;
        height: 28px;
    }
    /* 各svgアイコンのスタイル */
    .btn_module svg.auto_icon,
    #container .btn_module svg.cart_icon,
    #container .btn_module svg.dl_icon,
    .btn_module svg.reservation_icon,
    .btn_module svg.free_reading {
        fill: #FFFFFF;
    }
    .btn_module svg.search-keyword__links__icon {
        fill: #4d4d4d;
    }
    .btn_module.reservation_action:not(.reservation_in) svg.auto_icon,
    .btn_module.reservation_action.reserved svg.reservation_icon {
        fill: #FF5A00;
    }
    .btn_module.keep_action:not(.keep_off) span.cssicon_follow_bfr {
        display: none;
    }
    .btn_module.keep_off span.cssicon_follow_aft {
        display: none;
    }
    #container .btn_module.cart_action:not(.cart_in) svg.cart_icon {
        fill: #333333;
    }
    .btn_module svg.browser_icon {
        margin-left: -8px;
        padding-right: 3px;
        transform: translateY(-1px);
    }
    .btn_module svg.app_icon {
        margin-left: -4px;
        padding-right: 2px;
        transform: translate(-7px, 0);
    }
    .btn_module svg.reservation_icon,
    .btn_module svg.auto_icon {
        transform: translate(-3px, -2px);
    }
    #container .btn_module svg.buy {
        transform: translate(-3px, 1px);
    }
    .btn_module.small svg.browser_icon {
        transform: translate(4px, -1px);
    }
    .btn_module.small svg.app_icon {
        transform: translate(4px, 0);
    }
    #container .btn_module.small svg.cart_icon ,
    .btn_module.small svg.reservation_icon ,
    .btn_module.small svg.auto_icon {
        transform: translate(-2px, -1px);
    }

    /* 汎用ボタンのスタイル */
    .btn_module.btn_white {
        color: #333333;
        background: #FFFFFF;
        border: 1px solid #B4B4B4;
    }
    .btn_module.btn_white.disabled {
        color: #C2C2C2;
        background: #FFFFFF;
        border: 1px solid #E9E9E9;
    }
    .btn_module.btn_orange {
        color: #FFFFFF;
        background: #FF5A00;
        border: 1px solid #FF5A00;
    }
    .btn_module.btn_orange.disabled {
        background: #FFBD99;
        border: 1px solid #FFBD99;
    }
    .btn_module.btn_green {
        color: #FFFFFF;
        background: #009C9D;
        border: 1px solid #009C9D;
    }
    .btn_module.btn_green.disabled {
        background: #A6DCDC;
        border: 1px solid #A6DCDC;
    }
    .btn_module.btn_red {
        color: #FFFFFF;
        background: #FF0000;
        border: 1px solid #FF0000;
    }
    .btn_module.btn_red.disabled {
        color: #B9B8B7;
        background: #FFFFFF;
        border: 1px solid #B7B7B7;
    }
    .btn_module.btn_pink {
        color: #FFFFFF;
        background: #EC2B4D;
        border: 1px solid #EC2B4D;
    }
    .btn_module.btn_blue {
        color: #FFFFFF;
        background: #0074BF;
        border: 1px solid #0074BF;
    }
    .btn_module.btn_blue.disabled {
        color: #C2C2C2;
        background: #FFFFFF;
        border: 1px solid #E9E9E9;
    }
    .btn_module.btn_black {
        color: #FFFFFF;
        background: #000000;
        border: 1px solid #000000;
    }
    .btn_module.btn_orange,
    .btn_module.btn_white,
    .btn_module.btn_green,
    .btn_module.btn_red,
    .btn_module.btn_pink,
    .btn_module.btn_blue,
    .btn_module.btn_black {
        width: 100%;
        box-sizing: border-box;
    }
    #container .btn_module .btn_icon {
        background-image: url("/resources/a/sp/common/images/btn_icons_new.png?date=150126");
        background-size: 256px 38px;
        display: inline-block;
        vertical-align: bottom;
        width: 24px;
        height: 24px;
        margin: 0;
    }
    #container .btn_module.small .btn_icon.delete_icon {
        background-position: -200px -11px;
    }
    #container .btn_module.small .btn_icon {
        height: 20px;
    }
    #container .btn_module.large .btn_icon {
        height: 26px;
    }

    /* ボタンを囲うモジュール */
    #container .btn_module_wrapper {
        padding: 10px;
    }

    .reserved.btn_module.small svg.reservation_icon {
        transform: translate(-4px, -1px);
    }
    .reserved.btn_module span {
        margin-left: -8px;
        letter-spacing: -0.8px;
    }

    /* form */
    .form_items:not(:last-of-type) {
        margin-bottom: 24px;
    }
    .form_date {
        display: flex;
        justify-content: flex-start;
        align-items: baseline;
    }
    .form_date_parts {
        margin-right: 1em;
    }
    .form_date_parts select {
        padding: 8px 4px 6px;
        margin-right: .5em;
        border-color: #ccc;
        background-color:#fff;
        font-size:13px;
    }
    .annotation {
        margin-top: .8em;
        color: #666;
        font-size: 11px;
    }
    #validator_alert_year {
        display: block;
        margin-top: 16px;
    }
}
