﻿.origin_checkbox {
    display: none
}

.origin_checkbox + label {
    position: relative;
    display: inline-block;
    padding-left: 43px;
    min-height: 33px;
    line-height: 33px;
    cursor: pointer
}

.origin_checkbox + label::before {
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    width: 33px;
    height: 33px;
    content: url("/img/v_contractform/btn_checkbox_off.png")
}

.origin_checkbox:checked + label {
    color: #009943
}

.origin_checkbox:checked + label::before {
    content: url("/img/v_contractform/btn_checkbox_on.png")
}

.origin_checkbox:disabled + label {
    opacity: .3;
    cursor: not-allowed
}

.custom_radio {
    display: none
}

.custom_radio + label {
    position: relative;
    display: inline-block;
    padding-left: 43px;
    min-height: 33px;
    line-height: 33px;
    cursor: pointer
}

.custom_radio + label::before {
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    width: 33px;
    height: 33px;
    content: url("/img/v_contractform/btn_radio_off.png")
}

.custom_radio:checked + label {
    color: #009943
}

.custom_radio:checked + label::before {
    content: url("/img/v_contractform/btn_radio_on.png")
}

.custom_radio:disabled + label {
    opacity: .3;
    cursor: not-allowed
}

.login_checkbox {
    display: none
}

.login_checkbox + label {
    position: relative;
    display: inline-block;
    padding-left: 30px;
    min-height: 20px;
    line-height: 20px;
    cursor: pointer
}

.login_checkbox + label::before {
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    width: 20px;
    height: 20px;
    content: url("/img/common/btn_login_off.png")
}

.login_checkbox:checked + label::before {
    content: url("/img/common/btn_login_on.png")
}

.login_checkbox:disabled + label {
    opacity: .3;
    cursor: not-allowed
}

.login_radio {
    display: none
}

.login_radio + label {
    position: relative;
    display: inline-block;
    padding-left: 30px;
    min-height: 20px;
    line-height: 20px;
    cursor: pointer
}

.login_radio + label::before {
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    width: 20px;
    height: 20px;
    content: url("/img/common/btn_login_off.png")
}

.login_radio:checked + label::before {
    content: url("/img/common/btn_login_on.png")
}

.login_radio:disabled + label {
    opacity: .3;
    cursor: not-allowed
}

.drawer-hamburger {
    background: url("/img/common/btn_drawer.png") no-repeat !important
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
    display: block
}

body {
    line-height: 1.0;
    min-width: 100%
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none
}

table {
    border-spacing: 0
}

img, object {
    vertical-align: bottom
}

html {
    font-size: 62.5%
}

body {
    font-size: 1.0rem
}

select, input, button, textarea {
    color: #3e3e3e;
    font: 99% arial, helvetica, clean, sans-serif;
    ime-mode: disabled
}

.ime-on {
    ime-mode: active
}

table {
    font-size: inherit
}

pre, code, kbd, samp, tt {
    font-family: monospace;
    *font-size: 108%;
    line-height: 100%
}

strong, dt, th {
    font-weight: normal
}

input[type="submit"], input[type="reset"], input[type="button"], button {
    cursor: pointer
}

* {
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

::-moz-selection {
    background: rgba(0, 153, 67, 0.2);
    text-shadow: none
}

::selection {
    background: rgba(0, 153, 67, 0.2);
    text-shadow: none
}

body {
    letter-spacing: .02rem;
    font-family: Verdana, Roboto, "Droid Sans", "Yu Gothic", "游ゴシック体", YuGothic, "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic Pro W3", "メイリオ", sans-serif;
    color: #3e3e3e;
    margin: 0 auto
}

a {
    text-decoration: none
}

a:link, a:after, a:before {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s
}

table, th, td {
    width: auto;
    word-break: break-all;
    word-wrap: break-word;
    text-overflow: ellipsis
}

.container {
    margin: 0 auto
}

.required_item {
    display: inline-block;
    padding: 0.3rem .8rem;
    background: #b91616;
    border-radius: 3px;
    color: #fff;
    font-size: 1.1rem;
    margin-left: 1rem;
    margin-right: 1rem
}

.adminbar {
    color: #fff;
    position: fixed;
    z-index: 5000;
    width: 100%;
    height: 64px;
    border-bottom: 4px solid #000;
    background: url("/img/common/bg_adminbar.png")
}

.adminbar h1 {
    display: block;
    font-weight: bold;
    padding-top: 1.7rem;
    margin-left: 60px;
    padding-left: 20px;
    height: 60px;
    border-left: 10px solid #025d40
}

.adminbar h1 .siteid {
    font-size: 1.8rem
}

.adminbar h1 .en {
    font-size: 1.4rem
}

.adminbar h1 .ver {
    font-size: 1.2rem
}

.adminbar h1 .ja {
    font-size: 1.1rem;
    font-weight: normal;
    margin-top: .2rem;
    display: block
}

.adminbar .util {
    background: url("/img/common/bg_affiliation.png");
    width: 30%;
    position: fixed;
    right: 0;
    top: 0;
    text-align: right
}

.adminbar .util dl {
    margin-top: 1.8rem;
    text-align: right;
    float: right
}

.adminbar .util dt {
    font-size: 1.1rem
}

.adminbar .util dd {
    font-size: 1.4rem
}

.adminbar .util .btn {
    display: block;
    float: right;
    width: 60px;
    height: 60px;
    cursor: pointer
}

.contentswrap {
    padding-top: 64px;
    background: #e1e6e3
}

.contentswrap h1.pagetitle {
    position: fixed;
    z-index: 5001;
    width: 100%;
    color: #fff;
    text-align: center;
    font-size: 1.8rem;
    line-height: 38px;
    background: #b1b5b3
}

.contentswrap .contentsinner {
    padding-top: 38px
}

.contentswrap .contractflow {
    letter-spacing: -0.1rem;
    font-size: 1.4rem;
    margin: 26px;
    background: #f6f6f2;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px
}

.contentswrap .contractflow ul {
    font-size: 1.6rem;
    display: table !important;
    table-layout: fixed;
    width: 100%;
    text-align: center
}

.contentswrap .contractflow li {
    background: url("/img/v_contractform/bg_contractflow_separate.png") no-repeat right center;
    display: table-cell !important
}

.contentswrap .contractflow li.lastChild {
    background: none
}

.contentswrap .contractflow a {
    word-wrap: break-word;
    white-space: nowrap;
    color: #3e3e3e;
    display: block;
    padding: 2.6rem 0
}

.contentswrap .contractflow .current {
    padding: 0 30px 0 20px
}

.contentswrap .contractflow .current a {
    background: url("/img/v_contractform/bg_currentborder.png") repeat-x left 54px;
    color: #009943
}

.contentswrap .contractlist table {
    width: 100%
}

.contentswrap .contractlist th, .contentswrap .contractlist td {
    border-bottom: 1px solid #ddd;
    text-align: center;
    vertical-align: middle;
    padding: 1rem .8rem;
    line-height: 1.4
}

.contentswrap .contractlist th {
    background: #343434;
    color: #fff;
    font-size: 1.3rem;
    border-bottom: 4px solid #0d6d36;
    border-bottom: 4px solid #008437
}

.contentswrap .contractlist td:nth-child(3) {
    text-align: left;
    white-space: nowrap
}

.contentswrap .pagination {
    padding: 2rem;
    position: relative;
    overflow: hidden
}

.contentswrap .pagination ul {
    float: left;
    left: 50%;
    position: relative
}

.contentswrap .pagination li {
    float: left;
    left: -50%;
    margin: 1rem;
    position: relative
}

.contentswrap .pagination a {
    display: block;
    padding: 1.6rem 1.8rem;
    color: #fff;
    background: #bfbfbf
}

.contentswrap .pagination .current {
    background: #009943
}

#footer {
    text-align: center;
    font-size: 1.2rem;
    color: #a2a3a2;
    padding: 2rem 0 3rem
}

.sitefooter {
    line-height: 3.0
}

.w130 {
    width: 130px !important
}

.input_mb {
    margin-bottom: 1.4rem
}

.ovfh {
    overflow: hidden
}

::-moz-focus-inner {
    padding: 0;
    border: 0
}

:-moz-placeholder {
    color: #879fa6 !important
}

::-webkit-input-placeholder {
    color: #879fa6
}

:-ms-input-placeholder {
    color: #879fa6 !important
}

input, textarea, select, label {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: none
}

.select {
    padding: 1.4rem;
    font-size: 2rem;
    outline: none;
    display: block;
    position: relative;
    overflow: hidden;
    background: white;
    border: 1px solid #dfdfdb;
    border-radius: 4px
}

.select:before, .select:after {
    content: '';
    position: absolute;
    right: 14px;
    width: 0;
    height: 0;
    border-left: 6px outset transparent;
    border-right: 6px outset transparent
}

.select:before {
    top: 14px;
    border-bottom: 9px solid #7f9298
}

.select:after {
    top: 36px;
    border-top: 9px solid #7f9298
}

.select > select {
    font-size: 2.0rem;
    position: relative;
    z-index: 2;
    width: 132%;
    line-height: 26px;
    padding: 5px 9px;
    padding-right: 30px;
    background: transparent;
    background: transparent;
    border: 0;
    -webkit-appearance: none
}

.select > select:focus {
    color: #4d5a5e;
    outline: 0
}

.short {
    width: 130px
}

.short > select {
    outline: none;
    width: 140% !important;
    line-height: 17px;
    padding: 5px 9px;
    padding-right: 0;
    background: transparent;
    background: transparent;
    border: 0;
    -webkit-appearance: none
}

.refine_select {
    padding: 0.3rem;
    font-size: 1.4rem;
    outline: none;
    margin: 1rem 0.6rem;
    display: block;
    position: relative;
    overflow: hidden;
    background: white;
    border: 1px solid #dfdfdb;
    border-radius: 4px
}

.refine_select:before, .refine_select:after {
    content: '';
    position: absolute;
    right: 8px;
    width: 0;
    height: 0;
    border-left: 4px outset transparent;
    border-right: 4px outset transparent
}

.refine_select:before {
    top: 7px;
    border-bottom: 6px solid #7f9298
}

.refine_select:after {
    top: 23px;
    border-top: 6px solid #7f9298
}

.refine_select > select {
    font-size: 1.4rem;
    position: relative;
    z-index: 2;
    width: 132%;
    line-height: 26px;
    padding: 5px 9px;
    padding-right: 30px;
    background: transparent;
    background: transparent;
    border: 0;
    -webkit-appearance: none
}

.refine_select > select:focus {
    color: #4d5a5e;
    outline: 0
}

.radio_wrap {
    overflow: hidden;
    border: 1px solid #dfdfdb;
    padding: 1.4rem 1.4rem .4rem 1.4rem;
    border-radius: 4px;
    background: #fff;
    display: inline-block
}

.radio_wrap li {
    margin-right: 2rem;
    margin-bottom: 1rem;
    display: inline-block
}

.radio_wrap li.firstChild {
    margin-right: 2rem
}

.radio_wrap label {
    font-size: 1.9rem
}

.contract_list_dp {
    margin-left: 140px
}

.consent {
    border: none !important;
    background: none !important;
    margin: 0 !important
}

.consent li.firstChild {
    margin: 0 0 2rem 0 !important
}

.consent li {
    display: block;
    margin: 0 0 2rem 0 !important
}

.consent #tosy {
    background: #2e336d;
    color: #fff
}

.consent #tosy.disabledthis {
    color: #fff;
    background: #808080;
    cursor: default
}

.userfunc {
    position: fixed;
    background: rgba(0, 0, 0, 0.5);
    z-index: 6000;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 1.8rem
}

.userfunc ul {
    padding: 2rem 0;
    width: 300px;
    height: 100%;
    float: right;
    background: #111
}

.userfunc a {
    display: block;
    padding: 2rem 0;
    background: url("/img/common/ar_usermenu_item.png") no-repeat 3rem center;
    padding-left: 5rem;
    color: #b4b8b6
}

.userfunc a:hover {
    background-position: 2.6rem center
}

.dp button {
    border: none;
    background: no-repeat;
    position: absolute;
    bottom: 15px
}

.dp .hasDatepicker {
    display: none
}

body {
    background: #e1e6e3
}

@media screen and (min-width: 768px) {
    body {
        background: #e1e6e3
    }
}

@media screen and (min-width: 1024px) {
    body {
        background: #e1e6e3
    }
}

@media screen and (min-width: 1200px) {
    body {
        background: #e1e6e3
    }
}
