@charset "UTF-8";

*,
*::after,
*::before {
    box-sizing: border-box;
}

body,
button,
input,
select,
textarea {
    font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3",
        "Hiragino Kaku Gothic Pro", "MS PGothic", sans-serif;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary,
div,
span,
p,
ul,
ol,
li,
dl,
dt,
dd,
table,
tr,
th,
td,
a,
img,
label,
form,
input,
textarea {
    margin: 0;
    padding: 0;
}

ol,
ul {
    list-style: none;
}

img {
    border: 0;
    height: auto;
    line-height: 1;
    vertical-align: bottom;
    max-width: 100%;
}

a {
    background: transparent;
    cursor: pointer;
    outline: 0 none;
}

html {
    display: flex;
    flex-direction: column;
    font-size: 62.5%;
}

body {
    color: #333;
    display: flex;
    flex-direction: column;
    font-size: 1.4rem;
    min-height: 100vh;
    line-height: 1.6;
}

main {
    flex: 1 1 auto;
}

.mg_tp5 {
    margin-top: 5px;
}

.mg_bt5 {
    margin-bottom: 5px;
}

.mg_tp10 {
    margin-top: 10px;
}

.mg_bt10 {
    margin-bottom: 10px;
}

.mg_tp15 {
    margin-top: 15px;
}

.mg_bt15 {
    margin-bottom: 15px;
}

.mg_tp20 {
    margin-top: 20px;
}

.mg_bt20 {
    margin-bottom: 20px;
}

.mg_tp25 {
    margin-top: 25px;
}

.mg_bt25 {
    margin-bottom: 25px;
}

.mg_tp30 {
    margin-top: 30px;
}

.mg_bt30 {
    margin-bottom: 30px;
}

.mg_tp35 {
    margin-top: 35px;
}

.mg_bt35 {
    margin-bottom: 35px;
}

.mg_tp40 {
    margin-top: 40px;
}

.mg_bt40 {
    margin-bottom: 40px;
}

.mg_tp45 {
    margin-top: 45px;
}

.mg_bt45 {
    margin-bottom: 45px;
}

.mg_tp50 {
    margin-top: 50px;
}

.mg_bt50 {
    margin-bottom: 50px;
}

.mg_rg20 {
    margin-right: 20px;
}

html {
    height: 100%;
}

_:-ms-lang(x)::-ms-backdrop,
html {
    height: auto;
}

body {
    background: #f7f7f6;
    height: 100%;
    overflow-x: hidden;
    overflow-wrap: break-word;
}

@media (max-width: 767px) {
    body {
        min-height: auto;
    }
}

body.fixed {
    overflow: hidden;
}

#main {
    flex: 1 1 auto;
}

footer {
    color: #928576;
}

@media (min-width: 768px),
print {
    footer {
        font-size: 1.2rem;
        padding: 0 20px 10px;
        text-align: right;
    }
}

@media (max-width: 767px) {
    footer {
        font-size: 1rem;
        padding-bottom: 10px;
        text-align: center;
    }
}

.body_cmn {
    background: #fff;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

a {
    color: #03f;
    text-decoration: underline;
}

a:hover {
    color: #f08200;
}

@media (min-width: 768px),
print {
    a[href^="tel:"] {
        pointer-events: none;
    }
}

img {
    vertical-align: middle;
}

textarea,
input[type],
select {
    border: 2px solid #e1dedb;
    border-radius: 3px;
    font-size: 1.6rem;
    width: 100%;
    -webkit-appearance: none;
}

@media (min-width: 768px),
print {

    textarea,
    input[type],
    select {
        padding: 15px;
    }
}

@media (max-width: 767px) {

    textarea,
    input[type],
    select {
        line-height: normal;
        padding: 12px 10px;
    }
}

textarea:focus,
input[type]:focus,
select:focus {
    outline: none;
}

textarea:disabled,
input[type]:disabled,
select:disabled {
    background: #f1f0ef;
}

textarea.error,
input[type].error,
select.error {
    background: #fff5f5 !important;
    border-color: #e13510 !important;
}

select {
    background: #fff;
    position: relative;
}

select::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0c9";
    font-size: 2.3rem;
}

input[type="submit"],
input[type="button"] {
    border: none;
    cursor: pointer;
    padding: 15px 30px;
}

@media (max-width: 767px) {

    input[type="submit"],
    input[type="button"] {
        padding: 8px 30px;
    }
}

input[type="submit"]:disabled,
input[type="button"]:disabled {
    cursor: default;
    opacity: 0.5;
    pointer-events: none;
}

::placeholder {
    color: #ccc;
}

:-ms-input-placeholder {
    color: #ccc;
}

::-webkit-input-placeholder {
    color: #ccc;
}

input::-ms-reveal {
    visibility: hidden;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
}

select::-ms-expand {
    display: none;
}

@media (min-width: 768px),
print {
    .pc_hide {
        display: none !important;
    }
}

@media (max-width: 767px) {
    .sp_hide {
        display: none !important;
    }
}

.btn_cmn,
.btn01,
.btn02 {
    align-items: center;
    border-radius: 3px;
    box-shadow: 0 3px 0 0 #d2690c;
    color: #fff;
    display: flex;
    font-size: 1.6rem;
    font-weight: bold;
    justify-content: center;
    height: 100%;
    padding: 10px 30px;
    position: relative;
    text-align: center;
    text-decoration: none;
}

.btn_cmn:hover,
.btn01:hover,
.btn02:hover {
    box-shadow: none;
    color: #fff;
    position: relative;
    top: 3px;
}

.btn_cmn {
    background: #f08200;
    border: 1px solid #f08200;
}

.btn_cmn.disabled {
    opacity: 0.5;
    pointer-events: none;
}

.btn_cmn:hover {
    background: #d2690c;
}

.btn01 {
    background: #928576;
    border: 1px solid #928576;
    box-shadow: 0 3px 0 0 #736759;
}

.btn01.disabled {
    opacity: 0.5;
    pointer-events: none;
}

.btn01:hover {
    background: #736759;
}

.btn02 {
    background: #f7f7f6;
    border: 1px solid #d0cbc6 !important;
    box-shadow: 0 3px 0 0 #d0cbc6;
    color: #595049;
}

.btn02.disabled {
    opacity: 0.5;
    pointer-events: none;
}

.btn02:hover {
    background: #d0cbc6;
    color: #595049;
}

.btn_balloon {
    background: #fff;
    border: 2px solid #e13510;
    border-radius: 5px;
    bottom: 95%;
    color: #e13510;
    display: block;
    padding: 10px 20px;
    line-height: 1.5rem;
    position: absolute;
}

@media (max-width: 767px) {
    .btn_balloon {
        bottom: 90%;
        padding: 3px 15px;
    }
}

.btn_balloon::before,
.btn_balloon::after {
    content: "";
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
}

.btn_balloon::before {
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 5px solid #e13510;
    bottom: -5px;
}

.btn_balloon::after {
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 4px solid #fff;
    bottom: -3px;
}

.btn_balloon_sub_text {
    font-size: 0.8em;
}

.btn_balloon_sub_text::before {
    content: var(--annotation);
}

.cmn_select {
    position: relative;
}

.cmn_select::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #928576;
    content: "\f078";
    font-size: 1.2rem;
    pointer-events: none;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

.input_error {
    color: #e13510;
    margin: 5px 0;
}

.input_success {
    background: #e7fafc;
    border-radius: 3px;
    color: #0c64a2;
    font-weight: bold;
    margin-bottom: 15px;
    padding: 10px;
}

.att_txt {
    color: #e13510;
}

header {
    display: none;
}

@media (max-width: 999px) {
    header {
        align-items: center;
        background: #f7f7f6;
        border-bottom: 1px solid #e1dedb;
        display: flex;
        justify-content: center;
        height: 50px;
        left: 0;
        position: fixed;
        text-align: center;
        top: 0;
        width: 100%;
        z-index: 90;
    }
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

#sidebar {
    position: fixed;
    left: 0;
}

@media (min-width: 1200px) {
    #sidebar {
        transition: width 0.3s;
        background: #f7f7f6;
        border-right: 1px solid #e1dedb;
        height: 100vh;
        top: 0;
        width: 280px;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    #sidebar {
        transition: width 0.3s;
        background: #f7f7f6;
        border-right: 1px solid #e1dedb;
        height: 100vh;
        top: 0;
        width: 200px;
    }
}

@media (max-width: 999px) {
    #sidebar {
        z-index: 9999;
        height: 100vh;
        left: -100%;
        max-width: 400px;
        top: 0;
    }

    #sidebar.showmenu {
        transition: all 0.3s;
        left: 0;
        width: 80%;
    }

    #sidebar .sd_logo {
        display: none;
    }
}

.sd_inner {
    background: #f7f7f6;
    height: 100dvh;
    overflow-y: scroll;
}

.sd_content {
    position: relative;
}

@media (min-width: 1200px) {
    #content {
        margin-left: 280px;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    #content {
        margin-left: 200px;
    }
}

@media (max-width: 999px) {
    #content {
        margin-top: 50px;
        width: 100%;
    }
}

.sd_btn_menu {
    cursor: pointer;
    left: 5px;
    position: absolute;
    top: 7px;
    width: 40px;
}

.sd_btn_menu:hover::before {
    color: #452c18;
}

.sd_btn_menu::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #928576;
    content: "\f0c9";
    font-size: 2.3rem;
}

.sd_btn_menu_close {
    cursor: pointer;
    display: none;
}

@media (max-width: 999px) {
    .sd_btn_menu_close {
        display: block;
        height: 40px;
        padding-top: 10px;
        position: absolute;
        right: 0px;
        vertical-align: middle;
        text-align: center;
        top: 5px;
        width: 40px;
    }

    .sd_btn_menu_close .fas {
        color: #928576;
        font-size: 2.3rem;
    }
}

@media (min-width: 1200px) {
    .sd_logo {
        margin: 20px 30px 18px;
    }

    .sd_logo img {
        max-width: 205px;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    .sd_logo {
        margin: 20px 15px 18px;
    }

    .sd_logo img {
        max-width: 205px;
    }
}

@media (max-width: 999px) {
    .sd_logo {
        margin: 3px 10px;
        text-align: center;
    }

    .sd_logo img {
        max-width: 130px;
    }
}

.sd_logo img {
    width: 100%;
}

.sd_logo a {
    display: inline-block;
}

.sd_infor {
    line-height: 1.7;
}

@media (min-width: 1200px) {
    .sd_infor {
        padding: 0 30px 20px;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    .sd_infor {
        padding: 0 15px 20px;
    }
}

@media (max-width: 999px) {
    .sd_infor {
        padding: 15px 40px 15px 15px;
    }
}

.sd_infor span {
    display: block;
    position: relative;
}

.sd_control {
    padding-bottom: 20px;
}

.sd_control li {
    height: 46px;
    margin-bottom: 4px;
}

.sd_control li a {
    align-items: center;
    color: #333;
    display: flex;
    height: 100%;
    position: relative;
    text-decoration: none;
}

@media (min-width: 1200px) {
    .sd_control li a {
        padding: 0 12px 0 30px;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    .sd_control li a {
        padding: 0 12px 0 15px;
    }
}

@media (max-width: 999px) {
    .sd_control li a {
        padding: 0 12px 0 15px;
    }
}

.sd_control li a.active,
.sd_control li a:hover {
    background: #f1f0ef;
    color: #f08200;
}

.sd_control li a.active .fas,
.sd_control li a:hover .fas {
    color: #f08200;
}

.sd_control li a .fas {
    color: #cbc5bf;
    font-size: 2rem;
    margin-right: 18px;
    text-align: center;
    width: 22px;
}

.sd_count,
.contact_count {
    background: #e13510;
    border-radius: 100%;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    height: 20px;
    line-height: 1.8;
    min-width: 20px;
    position: absolute;
    text-align: center;
}

.sd_count {
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
}

@media (min-width: 1200px) {
    .content_inner {
        padding: 40px;
    }

    .content_inner.content_inner_width {
        margin: auto;
        max-width: 1180px;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    .content_inner {
        padding: 30px 20px;
    }
}

@media (max-width: 999px) {
    .content_inner {
        padding: 15px 10px 30px;
    }
}

.cmn_ttl_grp {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    padding-left: 15px;
    position: relative;
}

@media (min-width: 768px),
print {
    .cmn_ttl_grp {
        margin-bottom: 10px;
    }
}

@media (max-width: 767px) {
    .cmn_ttl_grp {
        align-items: flex-start;
        flex-direction: column;
        line-height: 1.4;
        margin-bottom: 5px;
    }
}

.cmn_ttl_grp::before {
    background: #f08200;
    content: "";
    left: 0;
    position: absolute;
    width: 4px;
}

@media (min-width: 768px),
print {
    .cmn_ttl_grp::before {
        height: calc(100% - 10px);
        top: 4px;
    }
}

@media (max-width: 767px) {
    .cmn_ttl_grp::before {
        height: 100%;
        top: 0;
    }
}

.cmn_ttl_grp--multi-span {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    padding-left: 15px;
    position: relative;
}

@media (min-width: 768px),
print {
    .cmn_ttl_grp--multi-span {
        margin-bottom: 10px;
    }
}

@media (max-width: 767px) {
    .cmn_ttl_grp--multi-span {
        align-items: flex-start;
        flex-direction: column;
        line-height: 1.4;
        margin-bottom: 5px;
    }
}

.cmn_ttl_grp--multi-span::before {
    background: #f08200;
    content: "";
    left: 0;
    position: absolute;
    width: 4px;
}

@media (min-width: 768px),
print {
    .cmn_ttl_grp--multi-span::before {
        height: calc(100% - 10px);
        top: 4px;
    }
}

@media (max-width: 767px) {
    .cmn_ttl_grp--multi-span::before {
        height: 100%;
        top: 0;
    }
}

.cmn_ttl {
    font-size: 1.8rem;
    padding-right: 5px;
    position: relative;
}

@media (max-width: 767px) {
    .cmn_ttl {
        font-size: 1.6rem;
    }
}

.cmn_ttlspn {
    color: #928576;
    display: inline-block;
    font-weight: normal;
    position: relative;
}

@media (min-width: 768px),
print {
    .cmn_ttlspn {
        font-size: 1.3rem;
    }

    .cmn_ttlspn br {
        display: none;
    }
}

@media (max-width: 767px) {
    .cmn_ttlspn {
        font-size: 1.2rem;
    }
}

.cmn_ttlspn::before {
    content: "-";
    padding-right: 5px;
}

.cmn_ttlspn a {
    display: inline-block;
}

.cmn_ttlspn__multi_line {
    display: flex;
    flex-direction: column;
}

@media (min-width: 768px) {
    .cmn_ttlspn__multi_line {
        padding-top: 0.2em;
    }
}

.cmn_topttl_grp {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding-bottom: 12px;
}

.cmn_topttl_grp .cmn_topttl {
    padding-bottom: 0;
}

.cmn_topttl {
    font-size: 2rem;
}

@media (min-width: 768px),
print {
    .cmn_topttl {
        padding-bottom: 12px;
    }
}

@media (max-width: 767px) {
    .cmn_topttl {
        padding-bottom: 3px;
    }
}

.cmn_box {
    border: 1px solid #e1dedb;
    border-radius: 3px;
    margin-bottom: 28px;
}

@media (min-width: 768px),
print {
    .cmn_box {
        padding: 20px 25px;
    }
}

.cmn_address {
    background: #f8f3ed;
    height: 100%;
    text-align: center;
    width: 100%;
}

@media (min-width: 768px),
print {
    .cmn_address {
        padding: 12px 10px;
    }
}

@media (max-width: 767px) {
    .cmn_address {
        align-items: center;
        display: flex;
        flex-wrap: nowrap;
        padding: 10px;
    }
}

.cmn_ttl,
.cmn_topttl,
.cmn_add_name,
.cmn_add_phone,
.hm_add_ttl,
.pwchange_label,
.cont_term_subttl {
    color: #452c18;
    font-weight: bold;
}

@media (min-width: 768px),
print {
    .cmn_add_name br {
        display: none;
    }
}

@media (max-width: 767px) {
    .cmn_add_name {
        line-height: 1.4;
        width: 90px;
    }
}

@media (max-width: 767px) {
    .cmn_add_cont {
        margin: 0 5px;
        text-align: center;
        width: calc(100% - 45px);
    }
}

.cmn_add_phone {
    background: url("../image/common/freecall_ic.png") left center no-repeat;
    display: inline-block;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.4;
}

@media (min-width: 768px),
print {
    .cmn_add_phone {
        background-size: 45px auto;
        font-size: 2.6rem;
        padding-left: 50px;
    }
}

@media (max-width: 767px) {
    .cmn_add_phone {
        background-size: 28px auto;
        font-size: 2.5rem;
        padding-left: 30px;
    }
}

.cmn_add_phone a {
    color: #452c18;
    text-decoration: none;
}

.cmn_add_wrktime {
    line-height: 1;
    font-size: 10px;
}

.cmn_add_wrktime img {
    max-width: 195px;
    width: 100%;
}

@media (min-width: 768px),
print {
    .cmn_add_call {
        display: none !important;
    }
}

.cmn_add_call a {
    align-items: center;
    background: #928576;
    border-radius: 6px;
    box-shadow: 0px 3px 0px 0px #736759;
    display: flex;
    justify-content: center;
    height: 40px;
    text-decoration-line: none;
    width: 40px;
}

.cmn_add_call .fas {
    color: #fff;
    font-size: 2.5rem;
}

body.fixed .modal_content_common {
    overflow-x: hidden;
    overflow-y: auto;
}

.modal-overlay {
    background-color: rgba(0, 0, 0, 0.6);
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99;
}

.modal-overlay-sd {
    background-color: rgba(0, 0, 0, 0.6);
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 90;
}

.modal_content_common {
    display: none;
    height: 100%;
    left: 0;
    overflow: hidden;
    outline: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1050;
}

.modal_content_dialog {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100%;
    padding: 10px;
    pointer-events: none;
    position: relative;
    width: auto;
}

@media (min-width: 768px),
print {
    .modal_content_dialog {
        height: 100%;
    }
}

@media (max-width: 767px),
print {
    .modal_content_dialog {
        justify-content: flex-start;
    }
}

.modal_content_inner {
    background-color: #fff;
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    max-height: 100%;
    max-width: 800px;
    outline: 0;
    overflow: hidden;
    pointer-events: auto;
    position: relative;
    width: 100%;
}

.modal-header {
    border-bottom: 1px solid #e1dedb;
    position: relative;
}

@media (min-width: 768px),
print {
    .modal-header {
        padding: 25px 60px 25px 30px;
    }
}

@media (max-width: 767px) {
    .modal-header {
        padding: 15px 40px 15px 15px;
    }
}

.modal-form {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    position: relative;
}

.modal-footer {
    align-items: center;
    border-top: 1px solid #e1dedb;
    display: flex;
    justify-content: flex-end;
    padding: 20px;
}

@media (max-width: 767px) {
    .modal-footer {
        min-height: 68px;
        padding: 15px 15px 5px;
    }
}

.modal-body {
    flex: 1 1 0%;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
}

.modal_txt {
    padding-bottom: 5px;
}

.modal_btn_close {
    position: absolute;
}

@media (min-width: 768px),
print {
    .modal_btn_close {
        right: 30px;
        top: 25px;
    }
}

@media (max-width: 767px) {
    .modal_btn_close {
        right: 15px;
        top: 15px;
    }
}

.modal_btn_close .fas {
    color: #cbc5bf;
}

@media (min-width: 768px),
print {
    .modal_btn_close .fas {
        font-size: 2.8rem;
    }
}

@media (max-width: 767px) {
    .modal_btn_close .fas {
        font-size: 2.4rem;
    }
}

.modal_btn_close a:hover .fas {
    color: #d2690c;
}

.modal_alert_txt {
    margin-bottom: 20px;
    text-align: center;
}

@media (min-width: 768px),
print {
    .modal_alert_btn {
        display: flex;
        justify-content: center;
    }
}

@media (min-width: 768px),
print {
    .modal_alert_btn li {
        width: calc(50% - 5px);
    }

    .modal_alert_btn li:nth-of-type(2n + 1) {
        margin-right: 10px;
    }
}

@media (max-width: 767px) {
    .modal_alert_btn li {
        margin-top: 10px;
        width: 100%;
    }
}

.modal_tbl {
    table-layout: fixed;
    width: 100%;
}

.modal_tbl tr:nth-child(odd) {
    background: #fcf8f5;
}

@media (max-width: 767px) {

    .modal_tbl th,
    .modal_tbl td {
        display: block;
        width: 100%;
    }
}

.modal_tbl th {
    font-weight: normal;
    vertical-align: top;
    text-align: left;
}

.modal_tbl th .required {
    color: #e36c00;
    font-weight: bold;
    padding-left: 10px;
}

@media (min-width: 768px),
print {
    .modal_tbl th {
        padding: 24px 10px 24px 30px;
        width: 180px;
    }
}

@media (max-width: 767px) {
    .modal_tbl th {
        padding: 12px 15px 8px;
    }

    .modal_tbl th br {
        display: none;
    }
}

@media (min-width: 768px),
print {
    .modal_tbl td {
        padding: 15px 30px 15px 0;
    }
}

@media (max-width: 767px) {
    .modal_tbl td {
        padding: 0 15px 16px;
    }
}

.modal_tbl td .ipt_required {
    background: #ffffcc;
    border-color: #e36c00;
}

.modal_tbl td input,
.modal_tbl td select {
    border-color: #d0cbc6;
}

.mber_radio {
    align-items: center;
    display: flex;

}

.move_out_radio {
    display: flex;
    flex-wrap: wrap;
}

.move_out_radio li:nth-child(2n + 1) {
    margin-right: 10px;
}

.mber_radio li {
    margin-left: 10px;
}

@media (min-width: 768px),
print {
    .mber_radio li {
        width: 150px;
    }

    .mber_radio li:nth-of-type(4n + 1) {
        margin-left: 0;
    }
}

@media (max-width: 767px) {
    .mber_radio li {
        width: calc(50% - 5px);
    }

    .mber_radio li:nth-of-type(2n + 1) {
        margin-left: 0;
    }
}

.mber_radio .comp_single_ro_check,
.move_out_radio .comp_single_ro_check {
    width: 100%;
}

.mber_radio .comp_single_ro_check,
.mber_radio li,
.move_out_radio .comp_single_ro_check,
.move_out_radio li {
    line-height: normal;
    position: relative;
}

.mber_radio .comp_single_ro_check input,
.mber_radio li input,
.move_out_radio .comp_single_ro_check input,
.move_out_radio li input {
    cursor: pointer;
    display: block;
    height: 100%;
    left: 0;
    line-height: normal;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}

.mber_radio .comp_single_ro_check label,
.mber_radio li label,
.move_out_radio .comp_single_ro_check label,
.move_out_radio li label {
    align-items: center;
    background: #fff;
    border: 2px solid #d0cbc6;
    border-radius: 3px;
    display: flex;
    font-size: 1.6rem;
    line-height: normal;
    position: relative;
    width: 100%;
}

@media (min-width: 768px),
print {

    .mber_radio .comp_single_ro_check label,
    .mber_radio li label,
    .move_out_radio .comp_single_ro_check label,
    .move_out_radio li label {
        padding: 3px 10px 3px 35px;
    }
}

@media (max-width: 767px) {

    .mber_radio .comp_single_ro_check label,
    .mber_radio li label,
    .move_out_radio .comp_single_ro_check label,
    .move_out_radio li label {
        padding: 6px 10px 6px 35px;
    }
}

.mber_radio .comp_single_ro_check label.slect_required,
.mber_radio li label.slect_required,
.move_out_radio .comp_single_ro_check label.slect_required,
.move_out_radio li label.slect_required {
    background: #ffffcc;
}

.mber_radio .comp_single_ro_check label::before,
.mber_radio li label::before,
.move_out_radio .comp_single_ro_check label::before,
.move_out_radio li label::before {
    background: #fff;
    border: 2px solid #d0cbc6;
    border-radius: 100%;
    content: "";
    height: 15px;
    left: 10px;
    padding: 0 5px;
    position: absolute;
    width: 15px;
}

@media (min-width: 768px),
print {

    .mber_radio .comp_single_ro_check label::before,
    .mber_radio li label::before,
    .move_out_radio .comp_single_ro_check label::before,
    .move_out_radio li label::before {
        top: 7px;
    }
}

@media (max-width: 767px) {

    .mber_radio .comp_single_ro_check label::before,
    .mber_radio li label::before,
    .move_out_radio .comp_single_ro_check label::before,
    .move_out_radio li label::before {
        top: 9px;
    }
}

.mber_radio .comp_single_ro_check label::after,
.mber_radio li label::after,
.move_out_radio .comp_single_ro_check label::after,
.move_out_radio li label::after {
    background: #fff;
    border-radius: 100%;
    content: "";
    height: 9px;
    left: 13px;
    position: absolute;
    width: 9px;
}

@media (min-width: 768px),
print {

    .mber_radio .comp_single_ro_check label::after,
    .mber_radio li label::after,
    .move_out_radio .comp_single_ro_check label::after,
    .move_out_radio li label::after {
        top: 10px;
    }
}

@media (max-width: 767px) {

    .mber_radio .comp_single_ro_check label::after,
    .mber_radio li label::after,
    .move_out_radio .comp_single_ro_check label::after,
    .move_out_radio li label::after {
        top: 12px;
    }
}

.mber_radio li input:checked+label,
.comp_single_ro_check input:checked+label,
.move_out_radio li input:checked+label {
    background: #f8f3ed;
    border: 2px solid #f08200;
}

.mber_radio li input:checked+label::before,
.comp_single_ro_check input:checked+label::before,
.move_out_radio li input:checked+label::before {
    border-color: #f08200;
}

.mber_radio li input:checked+label::after,
.comp_single_ro_check input:checked+label::after,
.move_out_radio li input:checked+label::after {
    background: #f08200;
}

@media (min-width: 768px),
print {
    .mber_checkbox {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        max-width: 410px;
    }
}

@media (min-width: 768px),
print {
    .mber_checkbox li {
        width: calc((100% - 10px) / 2);
    }
}

@media (max-width: 767px) {
    .mber_checkbox li {
        margin-bottom: 10px;
        width: 100%;
    }
}

.mber_checkbox .comp_single_check,
.mber_checkbox li {
    position: relative;
}

.mber_checkbox .comp_single_check input,
.mber_checkbox li input {
    cursor: pointer;
    display: block;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}

.mber_checkbox .comp_single_check label,
.mber_checkbox li label {
    align-items: center;
    background: #fff;
    border: 2px solid #d0cbc6;
    border-radius: 3px;
    display: flex;
    font-size: 1.6rem;
    line-height: normal;
    position: relative;
    width: 100%;
}

@media (min-width: 768px),
print {

    .mber_checkbox .comp_single_check label,
    .mber_checkbox li label {
        padding: 3px 10px 3px 40px;
    }
}

@media (max-width: 767px) {

    .mber_checkbox .comp_single_check label,
    .mber_checkbox li label {
        padding: 6px 10px 6px 40px;
    }
}

.mber_checkbox .comp_single_check label.slect_required,
.mber_checkbox li label.slect_required {
    background: #ffffcc;
}

.mber_checkbox .comp_single_check label::before,
.mber_checkbox li label::before {
    background: #fff;
    border: 2px solid #d0cbc6;
    border-radius: 3px;
    content: "";
    height: 15px;
    left: 10px;
    padding: 0 5px;
    position: absolute;
    width: 15px;
}

@media (min-width: 768px),
print {

    .mber_checkbox .comp_single_check label::before,
    .mber_checkbox li label::before {
        top: 7px;
    }
}

@media (max-width: 767px) {

    .mber_checkbox .comp_single_check label::before,
    .mber_checkbox li label::before {
        top: 9px;
    }
}

.mber_checkbox li input:checked+label,
.comp_single_check input:checked+label {
    background: #f8f3ed;
    border: 2px solid #f08200;
}

.mber_checkbox li input:checked+label::before,
.comp_single_check input:checked+label::before {
    background: #f08200;
    border-color: #f08200;
}

.mber_checkbox li input:checked+label::after,
.comp_single_check input:checked+label::after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    height: 9px;
    left: 15px;
    position: absolute;
    transform: rotate(45deg);
    width: 5px;
}

@media (min-width: 768px),
print {

    .mber_checkbox li input:checked+label::after,
    .comp_single_check input:checked+label::after {
        top: 9px;
    }
}

@media (max-width: 767px) {

    .mber_checkbox li input:checked+label::after,
    .comp_single_check input:checked+label::after {
        top: 11px;
    }
}

.mber_radio li input:disabled+label,
.comp_single_ro_check input:disabled+label,
.mber_checkbox li input:disabled+label,
.comp_single_check input:disabled+label {
    background: #f1f0ef;
}

.modal_content_inner_dialog {
    max-width: 400px;
}

.modal_content_inner_dialog .modal-header {
    border: none;
    padding-bottom: 20px;
}

.modal_content_inner_dialog .modal-body {
    padding: 0 30px;
}

@media (max-width: 767px) {
    .modal_content_inner_dialog .modal-body {
        padding: 0 15px;
    }
}

.modal_content_inner_dialog .modal-footer {
    border: none;
}

@media (max-width: 767px) {
    .modal_content_inner_dialog .modal-footer {
        padding: 15px;
    }
}

.modal_dialog_btn {
    display: flex;
}

.modal_dialog_btn li {
    margin-left: 10px;
}

.modal_dialog_btn li:first-of-type {
    margin-left: 0;
}

.modal_dialog_btn input[type="button"] {
    font-size: 1.4rem;
    padding: 10px 20px;
    min-width: 100px;
}

.pagination {
    display: flex;
    justify-content: flex-end;
}

@media (min-width: 768px),
print {
    .pagination {
        padding: 20px 0 10px;
    }
}

@media (min-width: 768px),
print {
    .pagination-pc {
        display: flex;
    }

    .pagination-sp {
        display: none;
    }
}

@media (max-width: 767px) {
    .pagination-pc {
        display: none;
    }

    .pagination-sp {
        display: flex;
    }
}

.pagination a {
    border: 1px solid #e3e0dd;
    border-radius: 3px;
    color: #928576;
    display: block;
    margin-left: 5px;
    text-align: center;
    text-decoration: none;
}

@media (min-width: 768px),
print {
    .pagination a {
        height: 30px;
        line-height: 30px;
        min-width: 30px;
    }
}

@media (max-width: 767px) {
    .pagination a {
        height: calc(30px + 10px);
        line-height: calc(30px + 10px);
        min-width: calc(30px + 10px);
    }
}

.pagination a.active,
.pagination a:hover {
    background: #928576;
    border: 1px solid #928576;
    color: #fff;
    font-weight: bold;
}

.pagination a.active {
    pointer-events: none;
}

.pagination a.disabled {
    background: #f7f7f6;
    color: #cbc5bf;
    pointer-events: none;
}

.ui-widget.ui-widget-content {
    font-size: 1.6rem;
    width: calc(100% - 60px);
}

@media (min-width: 768px),
print {
    .ui-widget.ui-widget-content {
        max-width: 300px;
    }
}

@media (max-width: 767px) {
    .ui-widget.ui-widget-content {
        max-width: 350px;
    }
}

.ui-datepicker td span,
.ui-datepicker td a {
    padding: 0.3em !important;
}

@media (max-width: 767px) {

    .ui-datepicker td span,
    .ui-datepicker td a {
        font-size: 1.6rem;
    }
}

.error_ttl {
    color: #452c18;
    font-size: 2rem;
    margin: 15px 0;
    text-align: center;
}

.error_txt {
    margin-bottom: 10px;
    text-align: center;
}

.hm_news_list {
    display: flex;
    flex-wrap: wrap;
}

@media (min-width: 768px),
print {

    .hm_news_list dt,
    .hm_news_list dd {
        padding: 3px 0;
    }
}

@media (max-width: 767px) {

    .hm_news_list dt,
    .hm_news_list dd {
        border-top: 1px dotted #e1dedb;
        padding: 14px 0;
    }

    .hm_news_list dt:first-child,
    .hm_news_list dt:nth-child(2),
    .hm_news_list dd:first-child,
    .hm_news_list dd:nth-child(2) {
        border: none;
        margin-top: 0px;
    }
}

.hm_news_list dt {
    width: 110px;
}

@media (max-width: 767px) {
    .hm_news_list dt {
        padding-left: 15px;
        width: 110px;
    }
}

.hm_news_list dd {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: calc(100% - 110px);
}

@media (max-width: 767px) {
    .hm_news_list dd {
        padding-right: 15px;
    }
}

.hm_news_cat {
    color: #888;
    display: block;
    font-size: 1.2rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hm_news_cat_ttl::after {
    content: "：";
}

.hm_notice_spec {
    background: #fff5f5;
    border-color: #e23510;
    color: #e23510;
    overflow-y: auto;
    max-height: 155px;
}

@media (max-width: 767px) {
    .hm_notice_spec {
        padding: 8px 15px;
    }
}

@media (max-width: 767px) {

    .hm_notice_spec dt,
    .hm_notice_spec dd {
        border: none;
        margin: 3px 0;
        padding: 0;
    }
}

@media (max-width: 767px) {
    .hm_notice_spec dt {
        display: none;
    }
}

@media (max-width: 767px) {
    .hm_notice_spec dd {
        overflow: inherit;
        padding-left: 8px;
        position: relative;
        text-overflow: inherit;
        white-space: normal;
        width: 100%;
    }

    .hm_notice_spec dd::before {
        background: #e23510;
        border-radius: 100%;
        content: "";
        height: 2px;
        left: 0;
        position: absolute;
        top: 11px;
        width: 2px;
    }
}

.hm_block {
    width: 100%;
}

@media (min-width: 768px),
print {
    .hm_block_dual {
        display: flex;
        justify-content: space-between;
    }
}

@media (max-width: 1360px) {
    .hm_notice .cmn_ttl_grp {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (min-width: 768px),
print {
    .hm_notice {
        display: flex;
        flex-direction: column;
        width: calc((100% - 20px) / 2);
    }

    .hm_notice .cmn_box {
        flex: 1 1 auto;
    }
}

@media (max-width: 767px) {
    .hm_notice {
        margin-bottom: 20px;
        width: 100%;
    }
}

.hm_no_notice {
    align-items: center;
    color: #888;
    display: flex;
    justify-content: center;
}

@media (min-width: 768px),
print {
    .hm_no_notice {
        height: 115px;
    }
}

@media (max-width: 767px) {
    .hm_no_notice {
        min-height: 100px;
    }
}

.hm_notice_more {
    text-align: right;
}

@media (min-width: 768px),
print {
    .hm_notice_more {
        padding: 5px 0 4px;
    }
}

@media (max-width: 767px) {
    .hm_notice_more {
        border-top: 1px dotted #e1dedb;
        padding: 13px 10px;
    }
}

.hm_roominuse {
    overflow-y: auto;
}

@media (min-width: 768px),
print {
    .hm_roominuse {
        max-height: 295px;
    }
}

@media (max-width: 767px) {
    .hm_roominuse {
        max-height: 250px;
    }
}

.hm_roominuse_list dt {
    border-top: 1px dotted #e1dedb;
    font-size: 1.6rem;
    margin-top: 10px;
    padding-top: 12px;
}

.hm_roominuse_list dt:first-child {
    border: none;
    margin-top: 0px;
    padding-top: 0px;
}

.hm_roominuse_list dd {
    color: #888;
}

.hm_roominuse_block {
    border-top: 1px dotted #e1dedb;
    padding-top: 12px;
    position: relative;
}

@media (min-width: 768px),
print {
    .hm_roominuse_block {
        margin-top: 10px;
        padding-right: 200px;
    }
}

@media (max-width: 767px) {
    .hm_roominuse_block {
        margin: 10px 15px;
    }
}

.cmn_box .hm_roominuse_block:first-child {
    border: none;
}

@media (min-width: 768px),
print {
    .cmn_box .hm_roominuse_block:first-child {
        margin: 0;
        padding-top: 0;
    }
}

@media (max-width: 767px) {
    .cmn_box .hm_roominuse_block:first-child {
        padding-top: 6px;
    }
}

.hm_roominuse_up a {
    display: flex;
    flex-wrap: wrap;
}

@media (min-width: 768px),
print {
    .hm_roominuse_up a {
        font-size: 1.6rem;
    }
}

@media (max-width: 767px) {
    .hm_roominuse_up a {
        flex-direction: column;
        font-size: 1.5rem;
    }
}

.hm_roominuse_date {
    position: relative;
}

.hm_roominuse_date::before {
    content: "[";
}

.hm_roominuse_date::after {
    content: "]";
}

.hm_roomdate_from::after {
    content: "～";
}

@media (min-width: 768px),
print {
    .hm_roomdate_status {
        margin-left: 10px;
    }
}

@media (max-width: 767px) {
    .hm_roomdate_status {
        display: inline-block;
    }
}

.hm_roomdate_status::before {
    content: "-";
}

@media (min-width: 768px),
print {
    .hm_roomdate_status::before {
        margin-right: 10px;
    }
}

.hm_roominuse_street {
    position: relative;
}

@media (min-width: 768px),
print {
    .hm_roominuse_street::before {
        color: #fff;
        content: "-";
    }

    .hm_roominuse_street::after {
        content: " -";
    }
}

.hm_roominuse_name {
    position: relative;
}

@media (min-width: 768px),
print {
    .hm_roominuse_name::before {
        color: #fff;
        content: "-";
    }
}

.hm_roominuse_down {
    display: flex;
    flex-wrap: wrap;
}

.hm_roominuse_down li {
    color: #888;
    display: inline-block;
    padding-right: 5px;
    position: relative;
}

.hm_roominuse_down li:last-child::after {
    display: none;
}

.hm_roominuse_down li::after {
    content: "/";
    padding-left: 5px;
}

@media (max-width: 767px) {
    .hm_roominuse_down li {
        font-size: 1.2rem;
        line-height: 1.5;
    }

    .hm_roominuse_down li.hm_roominuse_add::after {
        display: none;
    }
}

.hm_roominuse_stt {
    color: #888;
}

@media (max-width: 767px) {
    .hm_roominuse_stt {
        font-size: 1.2rem;
    }
}

.hm_roominuse_stt_spn {
    color: #e13510;
    position: relative;
}

.hm_roominuse_stt_spn::before {
    color: #888;
    content: "-";
    padding-left: 5px;
    padding-right: 5px;
}

.hm_roominuse_btn {
    width: 150px;
}

@media (min-width: 768px),
print {
    .hm_roominuse_btn {
        position: absolute;
        right: 5px;
        padding-top: 12px;
        top: 50%;
        transform: translateY(-50%);
    }
}

@media (max-width: 767px) {
    .hm_roominuse_btn {
        margin: 0 auto 18px;
    }
}

.hm_roominuse_btn.disabled {
    opacity: 0.5;
    pointer-events: none;
}

.hm_roominuse_btn a {
    font-size: 1.4rem;
    padding: 8px 10px 4px;
}

.hm_contact_box {
    position: relative;
}

@media (min-width: 768px),
print {
    .hm_contact_box {
        display: flex;
        justify-content: space-between;
        margin-bottom: 22px;
    }

    .hm_contact_box::before {
        border-left: 1px dotted #e1dedb;
        content: "";
        height: 100%;
        left: 0;
        margin: 0 auto;
        position: absolute;
        right: 0;
        top: 0;
        width: 2px;
    }
}

@media (max-width: 767px) {
    .hm_contact_box {
        margin: 10px 10px 10px 5px;
    }
}

@media (min-width: 768px),
print {
    .hm_contact_box li {
        width: calc((100% - 40px) / 2);
    }

    /* .hm_contact_box li:first-child .cmn_address {
        justify-content: flex-end; }  */
}

@media (max-width: 767px) {
    .hm_contact_box li {
        padding: 5px 0;
        width: 100%;
    }
}

.hm_contact_box .cmn_address {
    align-items: center;
    background: none;
    display: flex;
    flex-wrap: nowrap;
    padding: 0;
}

@media (max-width: 767px) {
    .hm_contact_box .cmn_address {
        justify-content: center;
    }
}

.hm_contact_box .cmn_add_name {
    text-align: left;
}

@media (min-width: 768px),
print {
    .hm_contact_box .cmn_add_name {
        margin-right: 15px;
        min-width: 55px;
    }
}

@media (max-width: 767px) {
    .hm_contact_box .cmn_add_name {
        margin-right: 5px;
        text-align: center;
        width: 84px;
    }
}

.hm_contact_box .cmn_add_name br {
    display: block;
}

@media (max-width: 767px) {
    .hm_contact_box .cmn_add_cont {
        max-width: calc(100% - 140px);
        width: auto;
    }
}

@media (min-width: 768px),
print {
    .hm_contact_box .cmn_add_phone {
        background-size: 54px auto;
        font-size: 3rem;
        padding-left: 60px;
    }
}

@media (max-width: 767px) {
    .hm_contact_box .cmn_add_phone {
        background-size: 36px auto;
        display: block;
        font-size: 2.5rem;
        padding-left: 32px;
    }
}

.hm_address {
    width: auto;
}

@media (min-width: 768px),
print {
    .hm_address {
        display: flex;
        justify-content: left;
        padding: 1px;
    }
}

@media (max-width: 767px) {
    .hm_address {
        margin: 10px;
        padding: 3px 3px 0;
    }
}

@media (min-width: 768px),
print {
    .hm_add_box {
        display: flex;
    }
}

@media (max-width: 767px) {
    .hm_add_box {
        width: 100%;
    }
}

.hm_add_ttl {
    background: #fff;
    padding: 4px 10px;
    text-align: center;
}

@media (min-width: 768px),
print {
    .hm_add_ttl {
        align-items: center;
        display: flex;
        font-size: 1.2rem;
        justify-content: center;
    }
}

@media (max-width: 767px) {
    .hm_add_ttl {
        margin-bottom: 10px;
    }
}

@media (min-width: 768px),
print {
    .hm_add_box .cmn_address {
        flex: 1 1 0%;
        /*padding: 5px 10px;*/
    }
}

@media (max-width: 767px) {
    .hm_add_box .cmn_address {
        padding: 0 5px 15px;
    }
}

@media (min-width: 768px),
print {
    .hm_add_box .cmn_add_name {
        padding-bottom: 5px;
    }
}

@media (max-width: 767px) {
    .hm_add_box .cmn_add_name {
        font-size: 1.2rem;
        width: 185px;
    }
}

.hm_add_box .cmn_add_phone {
    background: none;
    line-height: 1;
    padding-left: 0;
}

@media (min-width: 1200px) {
    .hm_add_box .cmn_add_phone {
        font-size: 3rem;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    .hm_add_box .cmn_add_phone {
        font-size: 2.1vw;
    }
}

.wrapper_all {
    flex: 1 1 auto;
    padding: 15px;
    position: relative;
}

.login_wrap {
    bottom: 0;
    left: 0;
    outline: 0;
    overflow-x: hidden;
    overflow-y: auto;
    position: fixed;
    right: 0;
    top: 0;
}

.login_inner {
    margin: 20px auto;
    max-width: 540px;
    min-height: calc(100% - (20px * 2));
    position: relative;
    width: auto;
}

@media (min-width: 768px),
print {
    .login_inner {
        padding-top: 10%;
    }
}

@media (max-width: 767px) {
    .login_inner {
        padding-top: 20px;
    }
}

_:-ms-lang(x)::-ms-backdrop,
.login_inner {
    height: calc(100% - (1.75rem * 2));
}

.login_block {
    padding: 0 20px;
    width: 100%;
}

.login_block_up {
    background: #fff;
    border: 1px solid #e1dedb;
    border-radius: 3px;
}

@media (min-width: 768px),
print {
    .login_block_up {
        padding: 45px 50px;
    }
}

@media (max-width: 767px) {
    .login_block_up {
        padding: 25px 20px;
    }
}

.login_logo {
    padding-top: 5px;
    text-align: center;
}

@media (min-width: 768px),
print {
    .login_logo {
        padding-bottom: 20px;
    }
}

@media (max-width: 767px) {
    .login_logo {
        padding-bottom: 25px;
    }
}

.login_logo img {
    max-width: 205px;
}

@media (min-width: 768px),
print {
    .login_ttl {
        padding-bottom: 15px;
    }
}

@media (max-width: 767px) {
    .login_ttl {
        padding-bottom: 10px;
    }
}

.login_txt {
    line-height: 1.5;
    margin-bottom: 25px;
}

.login_txt span {
    color: #e13510;
    display: block;
}

.login_field {
    margin-bottom: 5px;
    margin-top: 10px;
}

.login_btn {
    margin: 20px auto 5px;
    max-width: 300px;
    width: 100%;
}

.login_link {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding-bottom: 5px;
    padding-top: 10px;
}

.login_exlink {
    align-items: center;
    display: flex;
    margin-top: 18px;
    position: relative;
}

@media (min-width: 768px),
print {
    .login_exlink {
        justify-content: center;
    }
}

@media (max-width: 767px) {
    .login_exlink {
        justify-content: space-around;
    }
}

.login_exlink::after {
    content: "";
    background: #e1dedb;
    height: 20px;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
}

.login_exlink li {
    line-height: 1.4;
    position: relative;
}

@media (min-width: 768px),
print {
    .login_exlink li {
        margin: 0 20px;
    }
}

@media (max-width: 767px) {
    .login_exlink li {
        margin: 0 10px;
        text-align: center;
        width: calc((100% - 10px) / 2);
    }
}

.login_exlink li span {
    color: #03f;
    cursor: pointer;
    text-decoration: underline;
}

.login_exlink li span:hover {
    color: #f08200;
}

@media (min-width: 768px),
print {
    .login_add_group {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}

.login_add_group li {
    margin-top: 10px;
}

@media (min-width: 768px),
print {
    .login_add_group li {
        width: calc((100% - 10px) / 2);
    }

    .login_add_group li:last-child {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .login_add_group li {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .login_add_group .cmn_add_name {
        font-size: 1.3rem;
        width: 80px;
    }

    .login_add_group .cmn_add_cont {
        width: calc(100% - 130px);
    }

    .login_add_group .cmn_add_phone {
        font-size: 2.1rem;
    }
}

@media (min-width: 768px),
print {
    .login_user_mail {
        align-items: center;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        padding: 12px 10px;
    }

    .login_user_mail p {
        margin: 0 12px;
    }
}

.login_mail {
    font-weight: bold;
}

@media (min-width: 768px),
print {
    .login_mail {
        font-size: 1.8rem;
    }
}

@media (max-width: 767px) {
    .login_mail {
        font-size: 1.5rem;
        margin-left: 10px;
        width: calc(100% - 100px);
    }
}

.login_field_error {
    color: #e13510;
}

.login-modal-dialog {
    max-width: 600px;
}

.login_modal_content {
    max-width: 600px;
}

@media (min-width: 768px),
print {
    .login_modal_content {
        padding: 28px 30px;
    }
}

@media (max-width: 767px) {
    .login_modal_content {
        padding: 18px 15px;
    }
}

.login_modal_content .modal-header {
    border: none;
    margin-bottom: 18px;
    padding: 0;
}

.login_modal_content .modal_btn_close {
    right: 0;
    top: 0;
}

.cookie_box {
    background: rgba(0, 0, 0, 0.8);
    bottom: 0;
    color: #fff;
    left: 0;
    position: fixed;
    right: 0;
    transition: 1s bottom;
}

.cookie_box a {
    color: #fff;
}

.cookie_box a:hover {
    color: #f08200;
}

@media (min-width: 768px),
print {
    .cookie_box {
        align-items: center;
        display: flex;
        justify-content: space-between;
        padding: 30px 50px;
    }
}

@media (max-width: 767px) {
    .cookie_box {
        padding: 15px;
    }
}

.cookie_box.cookie_show {
    bottom: -500px;
}

@media (min-width: 768px),
print {
    .cookie_box_txt {
        flex: 1 1 0%;
    }
}

.cookie_box_btn {
    border: 1px solid #fff;
    cursor: pointer;
    padding: 10px;
    text-align: center;
    transition: 0.3s background;
}

.cookie_box_btn:hover {
    background: rgba(255, 255, 255, 0.3);
}

@media (min-width: 768px),
print {
    .cookie_box_btn {
        margin-left: 30px;
        width: 200px;
    }
}

@media (max-width: 767px) {
    .cookie_box_btn {
        margin: 10px auto 0;
        width: 80%;
        min-width: 150px;
        max-width: 300px;
    }
}

.modal_sub_body {
    margin: 25px 30px;
}

@media (max-width: 767px) {
    .modal_sub_body {
        margin: 15px;
    }
}

.modal_cookie_txt {
    margin-bottom: 20px;
}

.modal_cookie_list dt,
.modal_cookie_list dd {
    padding-left: 10px;
}

.modal_cookie_list dt {
    position: relative;
}

.modal_cookie_list dt::before {
    background: #333;
    border-radius: 100%;
    content: "";
    height: 4px;
    left: 0;
    position: absolute;
    top: 8px;
    width: 4px;
}

.modal_cookie_list dd {
    margin-bottom: 10px;
    word-break: break-all;
}

.pwchange_block {
    margin: 0 auto;
    max-width: 540px;
    width: 100%;
}

.pwchange_box {
    padding: 30px;
}

@media (min-width: 768px),
print {
    .pwchange_box .pwchange_input {
        width: calc(100% - 180px);
    }
}

@media (max-width: 767px) {
    .pwchange_box .pwchange_input {
        width: 100%;
    }
}

@media (min-width: 768px),
print {
    .pwchange_field {
        display: flex;
        margin-bottom: 20px;
    }
}

@media (max-width: 767px) {
    .pwchange_field {
        margin-bottom: 15px;
    }
}

@media (min-width: 768px),
print {
    .pwchange_label {
        margin-top: 10px;
        width: 180px;
    }
}

@media (max-width: 767px) {
    .pwchange_label {
        display: block;
        margin-bottom: 8px;
    }
}

.pwchange_input {
    position: relative;
}

@media (min-width: 768px),
print {
    .pwchange_input input {
        padding: 9px 30px 9px 15px;
    }
}

@media (max-width: 767px) {
    .pwchange_input input {
        padding: 9px 30px 6px 15px;
    }
}

.pwchange_ico_eys {
    cursor: pointer;
    display: block;
    padding: 7px;
    position: absolute;
    right: 0;
    top: 0;
}

.pwchange_ico_eys::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    color: #928576;
    content: "\f070";
    font-size: 1.6rem;
}

.pwchange_ico_eys.active::before {
    content: "\f06e";
}

.pwchange_note {
    color: #888;
    padding-bottom: 15px;
}

.pwchange_btn {
    display: flex;
    justify-content: flex-end;
    padding-top: 10px;
}

.pwchange_btn input {
    padding: 13px 30px 9px;
    width: 188px;
}

@media (min-width: 768px),
print {
    .login_pass_reset {
        padding: 45px 50px 50px;
    }
}

@media (min-width: 768px),
print {
    .login_pass_reset .pwchange_input input {
        padding: 14px 30px 14px 15px;
    }
}

@media (max-width: 767px) {
    .login_pass_reset .pwchange_input input {
        padding: 11px 30px 11px 15px;
    }
}

@media (min-width: 768px),
print {
    .login_pass_reset .pwchange_input .pwchange_ico_eys {
        padding: 14px;
    }
}

@media (max-width: 767px) {
    .login_pass_reset .pwchange_input .pwchange_ico_eys {
        padding: 12px;
    }
}

.login_pass_reset .pwchange_btn {
    margin-top: 10px;
}

.login_pass_reset .pwchange_btn input {
    padding: 19px 10px 14px;
    width: 220px;
}

.mber_tbl {
    table-layout: fixed;
    width: 100%;
}

@media (min-width: 768px),
print {
    .mber_tbl th {
        color: #928576;
        font-size: 1.3rem;
        font-weight: normal;
        text-align: left;
    }
}

@media (max-width: 767px) {

    .mber_tbl colgroup,
    .mber_tbl th {
        display: none;
    }

    .mber_tbl tr {
        border-radius: 3px;
        display: block;
        margin-bottom: 10px;
        padding: 7px 0 0 0;
        table-layout: fixed;
    }

    .mber_tbl td {
        min-height: 26px;
    }
}

.mber_tbl_single .mber_per_col_th01,
.contract_tbl .mber_per_col_th01 {
    width: 16%;
}

.mber_tbl_single .mber_per_col_th02,
.contract_tbl .mber_per_col_th02 {
    width: 13%;
}

.mber_tbl_single .mber_per_col_th03,
.contract_tbl .mber_per_col_th03 {
    width: 15%;
}

.mber_tbl_single .mber_per_col_th05,
.contract_tbl .mber_per_col_th05 {
    width: 18%;
}

.mber_tbl_single .mber_per_col_th06,
.contract_tbl .mber_per_col_th06 {
    width: 110px;
}

@media (max-width: 767px) {

    .mber_tbl_single tr,
    .contract_tbl tr {
        border: 1px solid #e1dedb;
    }

    .mber_tbl_single tr:first-child,
    .contract_tbl tr:first-child {
        display: none;
    }

    .mber_tbl_single td,
    .contract_tbl td {
        display: block;
        min-height: 24px;
        position: relative;
    }

    .mber_tbl_single td:last-child,
    .contract_tbl td:last-child {
        border-top: 1px dotted #e1dedb;
        margin-top: 5px;
        padding: 13px 15px;
        text-align: right;
    }

    .mber_tbl_single td:last-child::before,
    .contract_tbl td:last-child::before {
        display: none;
    }
}

.mber_tbl_single td {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (min-width: 768px),
print {

    .mber_tbl_single th,
    .mber_tbl_single td {
        padding: 1px 10px 1px 20px;
    }
}

@media (max-width: 767px) {
    .mber_tbl_single tr {
        border: none;
        margin-bottom: 0;
    }

    .mber_tbl_single tr:first-child {
        display: none;
    }

    .mber_tbl_single td {
        padding: 2px 15px 2px 130px;
    }
}

.mber_tbl_lbl_sp {
    color: #928576;
    font-size: 1.3rem;
    left: 15px;
    position: absolute;
    top: 2px;
}

@media (min-width: 768px),
print {
    .mber_tbl_lbl_sp {
        display: none !important;
    }
}

.mber_tbl_infor .mber_per_col_th01 {
    width: 18%;
}

.mber_tbl_infor .mber_per_col_th02 {
    width: 18%;
}

.mber_tbl_infor .mber_per_col_th03 {
    width: 12%;
}

.mber_tbl_infor .mber_per_col_th04 {
    width: 15%;
}

.mber_tbl_infor .mber_per_col_th06 {
    width: 110px;
}

@media (max-width: 767px) {
    .mber_tbl_infor tr {
        border: 1px solid #e1dedb;
    }

    .mber_tbl_infor tr:first-child {
        display: none;
    }
}

@media (min-width: 768px),
print {
    .mber_tbl_infor td {
        overflow: hidden;
        padding: 14px 10px 14px 20px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

@media (max-width: 767px) {
    .mber_tbl_infor td {
        display: block;
        min-height: 24px;
        padding: 2px 15px 2px 130px;
        position: relative;
    }

    .mber_tbl_infor td::before {
        color: #928576;
        content: "";
        font-size: 1.3rem;
        left: 15px;
        position: absolute;
        top: 2px;
    }

    .mber_tbl_infor td:last-child {
        border-top: 1px dotted #e1dedb;
        margin-top: 5px;
        padding: 13px 15px;
        text-align: right;
    }

    .mber_tbl_infor td:last-child::before {
        display: none;
    }
}

.mber_infor_wrap {
    position: relative;
}

@media (min-width: 768px),
print {
    .mber_infor_wrap {
        border: 1px solid #e1dedb;
        border-radius: 3px;
    }

    .mber_infor_wrap .mber_tbl tbody tr:first-child {
        border-bottom: 1px solid #e1dedb;
    }
}

.mber_infor_wrap .mber_tbl tbody tr:nth-child(even) {
    background: #fcf8f5;
}

.mber_infor_wrap .mber_tbl tbody tr.disabled:nth-child(even) {
    background: #eaeaea;
}

.mber_infor_wrap .mber_tbl tbody tr.disabled:nth-child(odd) {
    background: #e3e3e3;
}

@media (min-width: 768px),
print {
    .mber_department {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

.mber_personal {
    border: 1px solid #e1dedb;
    border-radius: 3px;
}

@media (min-width: 768px),
print {
    .mber_personal {
        margin-bottom: 35px;
        padding: 16px 0;
    }
}

@media (max-width: 767px) {
    .mber_personal {
        margin-bottom: 30px;
    }
}

.tbl_sort_inner {
    cursor: pointer;
    display: block;
    padding: 10px 10px 9px 20px;
    position: relative;
}

.tbl_sort_inner:hover {
    font-weight: bold;
}

.tbl_sort_inner::before,
.tbl_sort_inner::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #cbc5bf;
    font-size: 1.7rem;
    position: absolute;
    right: 0;
}

.tbl_sort_inner::before {
    content: "\f0d8";
    top: 1px;
}

.tbl_sort_inner::after {
    content: "\f0d7";
}

.tbl_sort_asc {
    font-weight: bold;
}

.tbl_sort_asc::before {
    color: #928576;
}

.tbl_sort_desc {
    font-weight: bold;
}

.tbl_sort_desc::after {
    color: #928576;
}

.mber_firstname {
    padding-right: 10px;
}

.mber_housemate {
    border: 1px solid #928576;
    border-radius: 3px;
    color: #928576;
    font-size: 1.1rem;
    line-height: 1.1;
    margin-right: 5px;
    padding: 1px 3px;
    vertical-align: middle;
}

@media (min-width: 768px),
print {
    .mber_ttl_grp {
        justify-content: space-between;
    }
}

@media (max-width: 767px) {
    .mber_ttl_grp {
        display: block;
    }

    .mber_ttl_grp::before {
        height: 20px;
    }
}

.mber_sort_select {
    align-items: center;
    display: flex;
}

@media (min-width: 768px),
print {
    .mber_sort_select {
        display: none !important;
    }
}

.mber_sort_select label {
    width: 55px;
}

.mber_sort_select .cmn_select {
    width: auto !important;
    max-width: 180px;
}

.mber_sort_select select {
    border-width: 1px;
    padding: 10px 10px 10px 17px;
}

@media (max-width: 767px) {
    .mber_sort_control {
        display: flex;
        justify-content: space-between;
        margin: 10px 0 10px -15px;
        width: calc(100% + 15px);
    }
}

@media (max-width: 767px) {
    .mber_signup_btn {
        margin-left: 5px;
        min-width: 80px;
    }
}

.mber_signup_btn a {
    font-size: 1.4rem;
}

@media (min-width: 768px),
print {
    .mber_signup_btn a {
        padding: 6px 30px;
    }
}

@media (max-width: 767px) {
    .mber_signup_btn a {
        padding: 5px 10px;
    }
}

@media (min-width: 768px),
print {
    .mber_detail_top {
        align-items: center;
        display: flex;
    }
}

@media (max-width: 767px) {
    .mber_detail_top {
        padding: 5px 15px 2px;
    }
}

.mber_detail_top li {
    display: flex;
    position: relative;
}

@media (min-width: 768px),
print {
    .mber_detail_top li {
        width: 50%;
    }
}

@media (max-width: 767px) {
    .mber_detail_top li {
        margin: 6px 0;
        width: 100%;
    }
}

.mber_detail_top_lbl {
    color: #928576;
    font-size: 1.3rem;
    width: 120px;
}

.mber_detail_top_txt {
    width: calc(100% - 150px);
}

@media (min-width: 768px),
print {
    .mber_detail_wrap {
        display: flex;
        justify-content: space-between;
    }
}

@media (min-width: 768px),
print {
    .mber_detail_part {
        width: calc((100% - 20px) / 2);
    }
}

@media (max-width: 767px) {
    .mber_detail_part {
        width: 100%;
    }
}

.mber_detail_block {
    margin-bottom: 28px;
}

@media (min-width: 768px),
print {
    .mber_detail_ident_btn {
        margin-top: 20px;
    }
}

@media (max-width: 767px) {
    .mber_detail_ident_btn {
        margin: 0 15px 20px;
    }
}

.mber_detail_ident_btn a {
    border: 2px solid #cbc5bf;
    border-radius: 3px;
    color: #cbc5bf;
    cursor: pointer;
    display: block;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 2px 10px;
    text-align: center;
    text-decoration: none;
}

.mber_detail_ident_btn a:hover {
    background: #cbc5bf;
    color: #fff;
}

.mber_detail_ident_btn a:hover::before {
    color: #fff;
}

.mber_detail_ident_btn a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f067";
    font-size: 2rem;
    padding-right: 8px;
}

.mber_detail_list {
    display: flex;
    flex-wrap: wrap;
}

@media (max-width: 767px) {
    .mber_detail_list {
        padding: 15px;
    }
}

@media (min-width: 768px),
print {

    .mber_detail_list dt,
    .mber_detail_list dd {
        margin-bottom: 12px;
    }
}

@media (max-width: 767px) {

    .mber_detail_list dt,
    .mber_detail_list dd {
        margin-bottom: 6px;
        margin-top: 6px;
    }
}

.mber_detail_list dt {
    color: #928576;
    font-size: 1.3rem;
    width: 120px;
}

.mber_detail_list dd {
    word-break: break-all;
    width: calc(100% - 120px);
}

.mber_detail_list dd a {
    display: inline-block;
}

.mber_detail_address .mber_detl_smspan {
    display: block;
}

.mber_detail_link {
    text-align: right;
}

@media (max-width: 767px) {
    .mber_detail_link {
        padding: 0 15px 10px;
    }
}

.mber_cert_name {
    position: relative;
}

.mber_cert_del {
    cursor: pointer;
    color: #999;
    text-decoration: underline;
    padding-left: 8px;
    position: relative;
}

.mber_cert_del:hover {
    color: #f08200;
}

.mber_cert_del::before,
.mber_cert_del::after {
    color: #333;
    display: inline-block;
    text-decoration: none;
}

.mber_cert_del::before {
    content: "（";
    padding-right: 5px;
}

.mber_cert_del::after {
    content: "）";
    padding-left: 5px;
}

.mber_certificate_box .mber_detail_list:not(:first-child) {
    border-top: 1px dotted #e1dedb;
    margin-top: 15px;
    padding-top: 18px;
}

.no_top {
    border-top: none !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
}

.mber_photo_list {
    display: flex;
    flex-wrap: wrap;
    padding: 5px 0 10px;
}

.mber_photo_list li {
    margin-bottom: 5px;
    margin-right: 10px;
    width: 100px;
}

.mber_photo_pdf {
    border: 1px solid #e1dedb;
    position: relative;
    width: 100px;
}

.mber_photo_pdf a {
    display: block;
}

.mber_photo_pdf::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    background: rgba(146, 133, 118, 0.8);
    border-radius: 100%;
    bottom: 0px;
    color: #fff;
    content: "\f00e";
    font-size: 2rem;
    height: 34px;
    pointer-events: none;
    position: absolute;
    right: 0px;
    text-align: center;
    width: 34px;
}

.mber_photo_pdf img {
    height: 50px;
    width: 100px;
}

.thumbnail-image {
    image-orientation: none;
}

.mber_detail_delete {
    position: relative;
}

@media (max-width: 767px) {
    .mber_detail_delete {
        padding-bottom: 10px;
    }
}

.mber_detail_delete a {
    color: #999;
}

.mber_detail_delete a:hover {
    color: #f08200;
}

@media (min-width: 768px),
print {
    .cmn_box_viewall .mber_detail_contract_box:first-child {
        padding-top: 0;
    }
}

@media (max-width: 767px) {
    .cmn_box_viewall {
        padding: 0 15px 20px;
    }
}

.cmn_box_viewall .mber_detail_contract_box:nth-child(n + 2) {
    display: none;
}

.cmn_box_viewall.active .mber_detail_contract_box:nth-child(n + 2) {
    display: flex;
}

.mber_detail_contract_box {
    align-items: center;
    border-bottom: 1px dotted #e1dedb;
    display: flex;
    justify-content: space-between;
    padding: 15px 0;
}

.mber_detail_contract_cont {
    width: calc(100% - 40px);
}

.mber_detail_contract_stt {
    padding-left: 5px;
}

.mber_detail_contract_check {
    text-align: right;
    width: 40px;
}

.mber_modal_content_inner {
    padding: 0;
}

@media (max-width: 767px) {
    .mber_modal_btn {
        margin-bottom: 10px;
        width: calc(50% - 5px);
    }
}

.mber_modal_btn input {
    padding: 10px 40px;
}

@media (max-width: 767px) {
    .mber_modal_btn input {
        font-size: 1.4rem;
        padding: 8px 10px;
    }
}

@media (max-width: 767px) {
    .mber_modal_delete {
        margin-bottom: 10px;
        width: 100%;
    }
}

.mber_modal_delete a {
    color: #999;
}

@media (max-width: 767px) {
    .mber_modal_left_link {
        margin-bottom: 10px;
        width: 100%;
    }

    .mber_modal_left_link br {
        display: none;
    }
}

@media (min-width: 768px),
print {

    .modal_tbl input,
    .modal_tbl select {
        padding: 6px 15px;
        max-width: 310px;
    }
}

@media (max-width: 767px) {

    .modal_tbl input,
    .modal_tbl select {
        padding: 6px 10px;
        width: 100%;
    }
}

@media (min-width: 768px),
print {
    .modal_tbl .cmn_select {
        max-width: 310px;
    }
}

@media (max-width: 767px) {
    .modal_tbl .cmn_select {
        width: 100%;
    }
}

@media (min-width: 768px),
print {
    .modal_tbl .cmn_select2 {
        max-width: 400px;
    }
}

@media (max-width: 767px) {
    .modal_tbl .cmn_select2 {
        width: 400px;
    }
}

@media (min-width: 768px),
print {
    .modal_tbl .pwchange_input {
        max-width: 310px;
    }
}

@media (max-width: 767px) {
    .modal_tbl .pwchange_input {
        width: 100%;
    }
}

.modal_tbl .pwchange_input input {
    padding: 6px 30px 6px 15px;
}

@media (min-width: 768px),
print {
    .modal_tbl .pwchange_ico_eys {
        padding: 5px 6px;
    }
}

@media (min-width: 768px),
print {
    .mber_in_lg {
        max-width: 470px !important;
    }
}

@media (max-width: 767px) {
    .mber_in_lg {
        max-width: 100%;
    }
}

.mber_in_md {
    max-width: 200px !important;
}

.mber_in_sm {
    max-width: 150px !important;
}

.mber_in_xs {
    max-width: 100px !important;
}

.mber_pw_note {
    color: #888;
    padding-top: 6px;
}

@media (min-width: 768px),
print {
    .mber_pass_content_inner .modal_tbl th {
        width: 210px;
    }
}

.mber_modal_dual {
    display: flex;
    justify-content: space-between;
}

@media (min-width: 768px),
print {
    .mber_modal_dual {
        max-width: 310px;
    }
}

@media (max-width: 767px) {
    .mber_modal_dual {
        width: 100%;
    }
}

.mber_modal_dual li {
    width: calc((100% - 10px) / 2);
}

.mber_modal_date {
    display: flex;
    justify-content: space-between;
}

@media (min-width: 768px),
print {
    .mber_modal_date {
        max-width: 430px;
    }
}

.mber_modal_date li {
    margin-right: 25px;
    position: relative;
}

@media (min-width: 768px),
print {
    .mber_modal_date li:nth-child(3n + 1) {
        width: 150px;
    }

    .mber_modal_date li:nth-child(3n + 2) {
        width: 100px;
    }

    .mber_modal_date li:nth-child(3n + 3) {
        width: 100px;
    }
}

@media (max-width: 767px) {
    .mber_modal_date li {
        margin-bottom: 10px;
        width: 20%;
    }

    .mber_modal_date li:first-of-type {
        width: 140px;
    }
}

@media (min-width: 768px),
print {
    .mber_modal_date.mber_modal_date_l {
        width: 590px;
    }
}

@media (min-width: 768px),
print {
    .mber_modal_date.mber_modal_date_l li:first-of-type {
        width: 200px;
    }
}

.mber_modal_date_txt {
    content: "";
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
}


.mber_modal_datetime {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 10px 25px;
}

@media (min-width: 768px),
print {
    .mber_modal_datetime {
        max-width: 640px;
    }
}

.mber_modal_datetime ul {
    display: flex;
    justify-content: flex-start;
    column-gap: 25px;
}

@media (max-width: 389px),
print {
    .mber_modal_datetime ul {
        width: 100%;
    }
}

.mber_modal_datetime li {
    width: 75px;
    position: relative;
}

.mber_modal_datetime li:has(select[name="arrival_year"]) {
    width: 140px;
}

@media (min-width: 768px),
print {
    .mber_modal_datetime.mber_modal_datetime_l {
        width: 590px;
    }
}

@media (min-width: 768px),
print {
    .mber_modal_datetime.mber_modal_datetime_l li:has(select[name="arrival_year"]) {
        width: 200px;
    }
}

.mber_modal_datetime_txt {
    content: "";
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
}

.mber_photo_front_side li {
    align-items: center;
    display: flex;
    margin-top: 5px;
}

.mber_photo_front_side li:first-child {
    margin-top: 0;
}

.mber_photo_front_side li .mber_cert_name {
    font-size: 1.6rem;
    margin-left: 15px;
}

.mber_fileupload label {
    cursor: pointer;
    display: inline-block;
    padding: 6px 18px 3px;
}

.mber_fileupload input[type="file"],
.mber_fileupload input[type="button"] {
    display: none;
}

.mber_list_address {
    display: flex;
    flex-wrap: wrap;
    max-width: 570px;
    width: 100%;
}

@media (min-width: 768px),
print {
    .mber_list_address {
        align-items: center;
        justify-content: space-between;
    }
}

.mber_list_address dt,
.mber_list_address dd {
    margin-bottom: 10px;
}

@media (max-width: 767px) {

    .mber_list_address dt,
    .mber_list_address dd {
        width: 100%;
    }
}

@media (min-width: 768px),
print {

    .mber_list_address dt:last-of-type,
    .mber_list_address dd:last-of-type {
        margin-bottom: 0;
    }
}

.mber_list_address dt {
    line-height: 1.1;
}

@media (min-width: 768px),
print {
    .mber_list_address dt {
        width: 110px;
    }
}

@media (max-width: 767px) {
    .mber_list_address dt.mber_english_btn {
        margin-right: 10px;
        width: 80px;
    }

    .mber_list_address dt br {
        display: none;
    }
}

@media (min-width: 768px),
print {
    .mber_list_address dd {
        width: calc(100% - 110px);
    }
}

@media (max-width: 767px) {
    .mber_list_address dd.mber_english_add {
        width: calc(100% - 90px);
    }
}

.mber_list_address dd input {
    width: 100%;
}

.mber_add_statesity {
    display: flex;
    justify-content: space-between;
}

.mber_add_state {
    width: 150px;
}

.mber_add_city {
    width: calc(100% - 160px);
}

.mber_btn_enconvert {
    width: 80px;
}

.mber_btn_enconvert input {
    font-size: 1.4rem;
    padding: 10px 10px 9px;
}

.mber_ephone_main {
    padding-bottom: 10px;
}

.mber_list_morefield li {
    margin: 5px 0;
    width: 100%;
}

@media (min-width: 768px),
print {
    .mber_list_morefield li {
        max-width: 470px;
    }
}

@media (max-width: 767px) {
    .mber_list_morefield li {
        margin-bottom: 10px;
    }
}

.mber_list_morefield li input {
    max-width: 100%;
    width: 100%;
}

@media (min-width: 768px),
print {
    .mber_list_mrfl_phone {
        max-width: 310px !important;
    }
}

@media (min-width: 768px),
print {
    .mber_detail_possession .comp_single_check {
        width: 310px;
    }
}

@media (max-width: 767px) {
    .mber_detail_possession .comp_single_check {
        width: 100%;
    }
}

.mber_detail_comttl {
    line-height: 1.5;
}

.magm_tbl_single .mber_magm_col_th01 {
    width: 20%;
}

.magm_tbl_single .mber_magm_col_th03 {
    width: 18%;
}

.magm_tbl_single .mber_magm_col_th04 {
    width: 18%;
}

.magm_tbl_single .mber_magm_col_th05 {
    width: 110px;
}

@media (min-width: 768px),
print {

    .magm_tbl_single th,
    .magm_tbl_single td {
        padding: 1px 10px 1px 20px;
    }
}

@media (max-width: 767px) {
    .magm_tbl_single tr {
        border: none;
        margin-bottom: 0;
    }

    .magm_tbl_single tr:first-child {
        display: none;
    }

    .magm_tbl_single td {
        display: block;
        padding: 2px 15px 2px 130px;
        position: relative;
    }

    .magm_tbl_single td::before {
        color: #928576;
        content: "";
        font-size: 1.3rem;
        left: 15px;
        position: absolute;
        top: 2px;
    }

    .magm_tbl_single td:not(:last-child) a {
        color: #333;
        text-decoration: none;
    }

    .magm_tbl_single td:last-child {
        border-top: 1px dotted #e1dedb;
        margin-top: 5px;
        padding: 13px 15px;
        text-align: right;
    }

    .magm_tbl_single td:last-child::before {
        display: none;
    }
}

.magm_infor_wrap {
    border: 1px solid #e1dedb;
    border-radius: 3px;
    position: relative;
}

.magm_postalcode {
    display: inline-block;
    margin-right: 15px;
}

@media (min-width: 768px),
print {
    .magm_address {
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
        width: 100%;
    }
}

.magm_infor_wrap .magm_depart_infor:nth-child(even) {
    background: #fcf8f5;
}

.magm_depart_infor.active .magm_depart_ttl::before {
    content: "\f077";
}

.magm_depart_up {
    display: flex;
    justify-content: space-between;
    padding: 0 20px 0 0;
}

.magm_depart_ttl {
    cursor: pointer;
    display: inline;
    flex: 1 1 0%;
    padding: 14px 10px 14px 50px;
    position: relative;
    word-wrap: break-word;
    width: calc(100% - 90px);
}

@media (max-width: 767px) {
    .magm_depart_ttl {
        padding-left: 40px;
        width: calc(100% - 80px);
    }
}

.magm_depart_ttl::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #928576;
    content: "\f078";
    font-size: 1.2rem;
    position: absolute;
    top: 14px;
}

@media (min-width: 768px),
print {
    .magm_depart_ttl::before {
        left: 20px;
    }
}

@media (max-width: 767px) {
    .magm_depart_ttl::before {
        left: 15px;
    }
}

.magm_depart_link {
    padding-top: 14px;
    text-align: right;
    width: 90px;
}

@media (max-width: 767px) {
    .magm_depart_link {
        width: 80px;
    }
}

.magm_depart_content {
    display: none;
}

@media (min-width: 768px),
print {
    .magm_depart_content {
        padding-left: 50px;
    }
}

@media (max-width: 767px) {
    .magm_depart_content {
        padding-left: 40px;
    }
}

.magm_depart_content .mber_tbl tr {
    background: none;
    border-top: 1px dotted #e1dedb;
}

.magm_depart_content .mber_tbl tr:first-child {
    border-bottom: none !important;
}

.magm_depart_content .mber_tbl tr:nth-child(even) {
    background: none !important;
}

.magm_tbl_infor .mber_magmdep_col_th01 {
    width: 200px;
}

@media (min-width: 768px),
print {
    .magm_tbl_infor td {
        padding: 14px 20px;
    }
}

@media (max-width: 767px) {
    .magm_tbl_infor td {
        display: block;
        padding: 1px 0;
    }
}

.magm_tbl_infor td a {
    color: #333;
    display: inline-block;
    position: relative;
    text-decoration: underline;
}

.magm_tbl_infor td a:hover {
    color: #f08200;
}

.company_name_modal {
    display: flex;
}

.comp_issue {
    max-width: 480px;
}

.comp_name_pos {
    margin-right: 10px;
    width: 150px;
}

.comp_name_reign {
    width: calc(100% - 165px);
}

.comp_payment {
    max-width: 410px;
}

@media (max-width: 767px) {
    .comp_payment {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (min-width: 768px),
print {
    .comp_payment li {
        width: 200px;
    }
}

@media (max-width: 767px) {
    .comp_payment li {
        margin: 3px 0;
        width: 100%;
    }
}

.comp_certificate {
    margin-bottom: 10px;
}

@media (min-width: 768px),
print {
    .comp_certificate {
        padding-top: 10px;
    }
}

.comp_fileupload {
    margin-top: 10px;
}

.comp_note_modal {
    margin-bottom: 5px;
    margin-top: 10px;
}

.comp_modal_togg {
    display: none;
    margin-top: 10px;
}

.comp_modal_untogg {
    display: none;
    margin-top: 10px;
}

.comp_single_check {
    width: auto;
}

.comp_ttl_grp {
    justify-content: space-between;
}

@media (max-width: 767px) {
    .comp_ttl_grp {
        align-items: center;
        flex-direction: row;
        margin-bottom: 10px;
    }
}

.comp_photo_list {
    padding: 0;
}

@media (min-width: 768px),
print {
    .comp_detail_wrap {
        display: flex;
        justify-content: space-between;
        padding-top: 8px;
    }
}

.contract_top_controls {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
    overflow: hidden;
    width: 100%;
}

.contract_top_controls li {
    min-height: 40px;
    margin-left: 10px;
    text-align: center;
    width: calc((100% - 55px) / 5);
}

.contract_top_controls li:first-child {
    margin-left: 0px;
}

.contract_top_controls li:first-child span::before {
    display: none;
}

.contract_top_controls li span {
    align-items: center;
    background: #e3e0dd;
    color: #333;
    display: flex;
    height: 100%;
    justify-content: center;
    padding: 6px 0 6px 3px;
    pointer-events: none;
    position: relative;
    text-decoration: none;
    width: 100%;
}

@media (max-width: 767px) {
    .contract_top_controls li span {
        font-size: 1.2rem;
    }
}

.contract_top_controls li span::before,
.contract_top_controls li span::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.contract_top_controls li span::before {
    border-width: 60px 0 60px 10px;
    border-style: solid;
    border-color: #e3e0dd #e3e0dd #e3e0dd transparent;
    left: -10px;
}

.contract_top_controls li span::after {
    border-top: 60px solid transparent;
    border-bottom: 60px solid transparent;
    border-left: 10px solid #e3e0dd;
    right: -10px;
}

.contract_top_controls li span.current {
    background: #f08200;
    color: #fff;
    font-weight: bold;
}

.contract_top_controls li span.current::before {
    border-color: #f08200 #f08200 #f08200 transparent;
}

.contract_top_controls li span.current::after {
    border-left-color: #f08200;
}

.contract_detail_bracketlink {
    display: inline-block;
    position: relative;
}

.contract_detail_bracketlink::before {
    content: " (";
}

.contract_detail_bracketlink::after {
    content: ") ";
}

.contract_dtl_list a {
    color: #333;
    text-decoration: none;
}

.contract_dtl_list .contract_dtl_list_cancel {
    font-size: 1.3rem;
}

.contract_dtl_list .contract_dtl_list_cancel a {
    color: #03f;
    text-decoration: underline;
}

.contract_tbl .contract_col_th03 {
    width: 200px;
}

@media (min-width: 768px),
print {
    .contract_tbl .contract_col_th01 {
        width: 82px;
    }

    .contract_tbl .contract_col_th09 {
        width: 10%;
    }

    .contract_tbl .contract_col_th03 {
        width: 18%;
    }

    .contract_tbl .contract_col_th04 {
        width: 8%;
    }

    .contract_tbl .contract_col_th05 {
        width: 8%;
    }

    .contract_tbl .contract_col_th06 {
        width: 6%;
    }

    .contract_tbl .contract_col_th07 {
        width: 13%;
    }

    .contract_tbl .contract_col_th08 {
        width: 110px;
    }
}

@media (min-width: 768px),
print {

    .contract_tbl th,
    .contract_tbl td {
        position: relative;
    }

    .contract_tbl th:nth-child(6),
    .contract_tbl th:nth-child(7),
    .contract_tbl td:nth-child(6),
    .contract_tbl td:nth-child(7) {
        text-align: center;
    }

    .contract_tbl th:first-child {
        padding-left: 10px;
    }

    .contract_tbl td {
        padding: 14px 10px 14px 10px;
    }

    .contract_tbl td:first-child {
        text-align: center;
    }
}

@media (max-width: 767px) {
    .contract_tbl tr {
        position: relative;
    }

    .contract_tbl td {
        padding: 2px 15px 2px 140px;
    }

    .contract_tbl td:first-child {
        position: absolute;
        left: 10px;
        padding: 0;
        top: 70px;
    }

    .contract_tbl td .mber_tbl_lbl_sp {
        left: 50px;
    }
}

.contract_col_ttl {
    padding: 10px;
}

@media (min-width: 768px),
print {
    .contract_status_sp {
        display: none !important;
    }
}

.contract_ttl_status {
    cursor: pointer;
    display: inline-block;
    position: relative;
}

@media (min-width: 768px),
print {
    .contract_ttl_status:hover {
        font-weight: bold;
    }
}

@media (max-width: 767px) {
    .contract_ttl_status {
        border: 1px solid #e1dedb;
        border-radius: 3px;
        color: #928576;
        display: block;
        margin-bottom: 10px;
        padding: 10px 15px;
    }
}

.contract_ttl_status::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f078";
    font-size: 1.2rem;
    padding-left: 8px;
}

@media (max-width: 767px) {
    .contract_ttl_status::after {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
    }
}

.contract_ttl_status.active::after {
    content: "\f077";
}

.contract_ttl_status.contract_ttl_status_sort::after {
    content: "\f0b0";
}

@media (min-width: 1200px) {
    .contract_plan_name {
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
        width: 100%;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    .contract_plan_name {
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
        width: 100%;
    }
}

.contract_plan_name a {
    color: #333;
}

.contract_plan_name a:hover {
    color: #f08200;
}

.contract_notice {
    position: relative;
}

@media (max-width: 767px) {
    .contract_notice {
        z-index: 9;
    }
}

.contract_notice_count {
    cursor: pointer;
    display: inline-block;
    position: relative;
    text-align: center;
}

.contract_notice_count i {
    color: #e13510;
    font-size: 2rem;
}

.contract_notice_count span {
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: -1px;
}

.contract_notice_cont {
    background: #fff5f5;
    border-radius: 3px;
    border: 1px solid #e13510;
    display: none;
    position: absolute;
    text-align: left;
    z-index: 9;
}

@media (min-width: 768px),
print {
    .contract_notice_cont {
        left: -20px;
        padding: 20px 30px;
        top: 30px;
        width: 520px;
    }
}

@media (max-width: 767px) {
    .contract_notice_cont {
        left: -15px;
        padding: 10px 15px;
        top: 35px;
        width: 92vw;
    }
}

.contract_notice_cont:after,
.contract_notice_cont:before {
    bottom: 100%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}

@media (min-width: 768px),
print {

    .contract_notice_cont:after,
    .contract_notice_cont:before {
        left: 50px;
        left: 50px;
    }
}

@media (max-width: 767px) {

    .contract_notice_cont:after,
    .contract_notice_cont:before {
        left: 24px;
    }
}

.contract_notice_cont:after {
    border-color: rgba(255, 245, 245, 0);
    border-bottom-color: #fff5f5;
    border-width: 10px;
    margin-left: -10px;
}

.contract_notice_cont:before {
    border-color: rgba(225, 53, 16, 0);
    border-bottom-color: #e13510;
    border-width: 11px;
    margin-left: -11px;
}

.contract_notice_list li {
    color: #e13510;
    padding: 2px 0 2px 8px;
    position: relative;
}

.contract_notice_list li::before {
    background: #e13510;
    border-radius: 100%;
    content: "";
    height: 2px;
    left: 0;
    position: absolute;
    top: 10px;
    width: 2px;
}

.contract_status_checkbox {
    background: #fff;
    border: 1px solid #e1dedb;
    display: none;
    position: absolute;
    z-index: 99;
}

@media (min-width: 768px),
print {
    .contract_status_checkbox {
        padding: 7px 0;
        top: 40px;
        width: 190px;
    }
}

@media (max-width: 767px) {
    .contract_status_checkbox {
        border-radius: 3px;
        padding: 10px 0;
        top: 43px;
        width: 100%;
    }
}

.contract_status_checkbox .mber_checkbox {
    flex-direction: column;
    width: 100%;
}

.contract_status_checkbox .mber_checkbox li {
    width: 100%;
}

@media (max-width: 767px) {
    .contract_status_checkbox .mber_checkbox li {
        margin-bottom: 0;
    }
}

.contract_status_checkbox .mber_checkbox li label {
    border: none;
    color: #333;
    font-size: 1.3rem;
    height: auto;
    line-height: 1.4;
    padding: 6px 10px 6px 30px;
}

@media (max-width: 767px) {
    .contract_status_checkbox .mber_checkbox li label::before {
        top: 7px;
    }
}

.contract_status_checkbox ul li input:checked+label {
    background: none;
    border: none;
}

.contract_status_checkbox ul li input:checked+label::before {
    background: #f08200;
    border-color: #f08200;
}

.contract_status_checkbox ul li input:checked+label::after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    height: 9px;
    left: 15px;
    position: absolute;
    transform: rotate(45deg);
    top: 9px;
    width: 5px;
}

.contract_status_checkbox_btn {
    margin: 5px 10px;
}

.contract_status_checkbox_btn .btn01 {
    font-size: 1.4rem;
    padding: 8px 10px;
}

.contract_dtl_spcl_box {
    background: #fff5f5;
    border-color: #e13510;
    color: #e13510;
    margin-bottom: 15px;
}

@media (max-width: 767px) {
    .contract_dtl_spcl_box {
        padding: 8px 15px;
    }
}

.contract_dtl_spcl {
    padding: 0 5px;
}

.contract_dtl_spcl li {
    padding: 3px 0 3px 8px;
    position: relative;
}

@media (max-width: 767px) {
    .contract_dtl_spcl li {
        display: flex;
    }
}

.contract_dtl_spcl li::before {
    background: #e13510;
    border-radius: 100%;
    content: "";
    height: 3px;
    left: 0;
    position: absolute;
    top: 10px;
    width: 3px;
}

.contract_dtl_spcl li:last-child {
    padding-bottom: 0;
}

@media (max-width: 767px) {
    .contract_dtl_spcl_txt {
        flex: 1 1 0%;
    }
}

.contract_dtl_spcl_check {
    color: #03f;
    cursor: pointer;
}

@media (max-width: 767px) {
    .contract_dtl_spcl_check {
        margin-left: 10px;
    }
}

@media (min-width: 768px),
print {

    .contract_dtl_spcl_check::before,
    .contract_dtl_spcl_check::after {
        color: #e13510;
        display: inline-block;
        text-decoration: none;
    }

    .contract_dtl_spcl_check::before {
        content: "（";
    }

    .contract_dtl_spcl_check::after {
        content: "）";
    }
}

@media (min-width: 768px),
print {
    .contract_dtl_contrl {
        align-items: center;
        display: flex;
        justify-content: space-between;
    }
}

@media (min-width: 768px),
print {
    .contract_dtl_contrl .mber_detail_list {
        width: calc(100% - 320px);
    }
}

@media (max-width: 767px) {
    .contract_dtl_contrl .mber_detail_list {
        padding-bottom: 30px;
        width: 100%;
    }
}

.contract_dtl_contrl .mber_detail_list dt:nth-last-child(2) {
    margin-bottom: 0;
}

.contract_dtl_contrl .mber_detail_list dd:last-child {
    margin-bottom: 0;
}

.contract_dtl_btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media (min-width: 768px),
print {
    .contract_dtl_btns {
        width: 310px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_btns {
        margin: 0 auto 15px;
        max-width: 340px;
        padding: 0 15px;
        width: 100%;
    }
}

.contract_dtl_btns li {
    margin: 5px 0;
    width: 100%;
}

.contract_dtl_btns li a {
    font-size: 1.4rem;
    padding: 7px 10px 5px;
}

.contract_dtl_btn_request a {
    color: #999;
}

.contract_dtl_btn_request.disabled {
    opacity: 0.5;
    pointer-events: none;
}

.contract_dtl_btns_haft {
    width: calc((100% - 10px) / 2) !important;
}

.contract_dtl_note,
.contract_dtl_note_mod li,
.contract_emergency_txt,
.contact_option_note {
    padding-left: 15px;
    position: relative;
}

.contract_dtl_note::before,
.contract_dtl_note_mod li::before,
.contract_emergency_txt::before,
.contact_option_note::before {
    content: var(--annotation);
    left: 0;
    position: absolute;
    top: 0;
}

.contract_dtl_note2 {
    padding-left: 15px;
    position: relative;
}

.contract_dtl_note3 {
    padding-left: 3px;
    padding-top: 3px;
    color: #03f;
    cursor: pointer;
    position: relative;
}

.contract_dtl_no_translate {
    padding-left: 15px;
    position: relative;
}

.contract_dtl_note_red {
    padding-left: 15px;
    position: relative;
    color: red;
    font-size: 1.6rem;
}

.contract_dtl_note_red::before {
    content: var(--annotation);
    left: 0;
    position: absolute;
    top: 0;
}

.contract_dtl_postcode {
    display: block;
}

.contract_dtl_postcode a {
    color: #333;
    text-decoration: none;
}

.contract_dtl_structure li {
    color: #333;
}

.contract_dtl_thumb {
    border: 1px solid #e1dedb;
    position: relative;
    width: 152px;
}

.contract_dtl_thumb a {
    display: block;
    position: relative;
}

.contract_dtl_thumb a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    background: rgba(146, 133, 118, 0.8);
    border-radius: 100%;
    bottom: 4px;
    color: #fff;
    content: "\f00e";
    font-size: 2rem;
    height: 34px;
    pointer-events: none;
    position: absolute;
    right: 4px;
    text-align: center;
    width: 34px;
}

.contract_dtl_thumb img {
    height: 150px;
    width: 150px;
}

.contract_content_thumber {
    max-width: 600px;
    text-align: center;
}

.contract_content_thumber .modal_btn_close {
    position: absolute;
    right: 20px;
    top: 20px;
}

.contract_dtl_szdrect {
    display: flex;
    flex-wrap: nowrap;
}

.contract_dtl_size {
    position: relative;
}

.contract_dtl_size::after {
    content: "\033a1 /";
}

.contract_dtl_block {
    border-top: 1px dotted #e1dedb;
    padding-top: 20px;
    position: relative;
}

.contract_block_ex {
    border-top: 1px dotted #e1dedb;
    position: relative;
}

@media (min-width: 768px),
print {
    .contract_block_ex {
        margin-top: 20px;
    }
}

@media (max-width: 767px) {
    .contract_block_ex {
        margin-top: 10px;
        padding-top: 20px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_option_box {
        padding: 20px 15px 0px;
    }
}

.contract_dtl_option_box .contract_dtl_option_part:last-child {
    border: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.contract_dtl_option_part {
    border-bottom: 1px dotted #e1dedb;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 18px;
    padding-bottom: 15px;
    position: relative;
}

@media (min-width: 768px),
print {
    .contract_dtl_option_part dt {
        padding-right: 20px;
        width: 210px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_option_part dt {
        padding-bottom: 2px;
        width: 110px;
    }
}

.contract_dtl_option_part dd {
    padding-bottom: 2px;
    padding-right: 35px;
    position: relative;
}

@media (min-width: 768px),
print {
    .contract_dtl_option_part dd {
        width: calc(100% - 210px);
    }
}

@media (max-width: 767px) {
    .contract_dtl_option_part dd {
        width: calc(100% - 110px);
    }
}

.contract_dtl_option_link {
    position: absolute;
    right: 0;
    top: 0;
}

.contract_dtl_option_spec {
    color: #e13510;
}

.contract_dtl_option_viewall {
    padding-top: 20px;
    text-align: right;
}

.contract_dtl_option_box .contract_dtl_option_viewall {
    padding-top: 0;
}

.note_spec {
    color: #e13510;
}

.contract_dtl_corona_spn {
    display: block;
    padding-left: 15px;
}

.contract_dtl_box_ex {
    position: relative;
}

.contract_dtl_box_ex .mber_detail_link {
    bottom: 0;
    padding: 0;
    position: absolute;
    right: 0;
}

.contract_dtl_payment_cont {
    padding-left: 45px;
    position: relative;
}

.contract_dtl_payment_cont span {
    left: 0;
    position: absolute;
    top: 0;
}

.contract_dtl_foreign_box {
    background: #f7f7f6;
    border-radius: 3px;
    margin-bottom: 15px;
    padding: 15px 20px;
}

@media (max-width: 767px) {
    .contract_dtl_foreign_box {
        margin: 15px 15px 0 15px;
    }
}

@media (min-width: 768px),
print {
    .contract_dtl_btn_pdf {
        margin-bottom: 5px;
        margin-top: 10px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_btn_pdf {
        padding: 0 15px 20px;
    }
}

.contract_dtl_hope .comp_single_check {
    width: 200px;
}

.purpose-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 1fr;
    grid-column-gap: 4px;
    grid-row-gap: 4px;
}

@media (max-width: 767px) {
    .purpose-container {
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
}

.purpose-container__item {
    width: 100%;
}

.purpose-container__item--other {
    width: 100%;
    grid-column-start: 1;
}

@media (max-width: 767px) {
    .purpose-container__item--other {
        grid-column-start: auto;
        grid-column-end: auto;
    }
}

.purpose-container .purpose-item {
    position: relative;
    height: 100%;
}

.purpose-container .purpose-item input {
    cursor: pointer;
    display: block;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    line-height: normal;
    opacity: 0;
    position: absolute;
    z-index: 1;
}

.purpose-container .purpose-item input+label {
    align-items: center;
    background: #ffffcc;
    border: 2px solid #d0cbc6;
    border-radius: 3px;
    display: flex;
    font-size: 1.6rem;
    line-height: normal;
    position: relative;
    width: 100%;
    height: 100%;
    padding-left: 30px;
    padding-top: 2px;
    padding-bottom: 2px;
}

@media (max-width: 767px) {
    .purpose-container .purpose-item input+label {
        padding-left: 35px;
        padding-right: 6px;
        padding-top: 6px;
        padding-bottom: 6px;
    }
}

.purpose-container .purpose-item input+label::before {
    background: #fff;
    border: 2px solid #d0cbc6;
    border-radius: 100%;
    content: "";
    height: 15px;
    left: 10px;
    padding: 0 5px;
    position: absolute;
    width: 15px;
}

.purpose-container .purpose-item input+label::after {
    background: #fff;
    border-radius: 100%;
    content: "";
    height: 9px;
    left: 13px;
    position: absolute;
    width: 9px;
}

.purpose-container .purpose-item input:checked+label {
    background: #f8f3ed;
    border: 2px solid #f08200;
}

.purpose-container .purpose-item input:checked+label::before {
    border-color: #f08200;
}

.purpose-container .purpose-item input:checked+label::after {
    background-color: #f08200;
}

.purpose-container .purpose-item-other-text {
    grid-column-start: 2;
    grid-column-end: -1;
}

@media (max-width: 767px) {
    .purpose-container .purpose-item-other-text {
        grid-column-start: 1;
    }
}

.purpose-container .purpose-item-other-purpose {
    display: grid;
    grid-template-rows: 1fr;
    grid-column-gap: 2px;
    align-items: center;
}

@media (max-width: 767px) {
    .purpose-container .purpose-item-other-purpose {
        grid-column-gap: 4px;
    }
}

.purpose-container .purpose-item-other-purpose--with-suffix {
    grid-template-areas: "input label label";
}

.purpose-container .purpose-item-other-purpose--with-suffix .purpose-item-other-purpose__label {
    text-align: left;
}

@media (max-width: 767px) {
    .purpose-container .purpose-item-other-purpose--with-suffix {
        grid-template-areas: "input label";
    }
}

.purpose-container .purpose-item-other-purpose--with-prefix {
    grid-template-areas: "label label input";
}

.purpose-container .purpose-item-other-purpose--with-prefix .purpose-item-other-purpose__label {
    text-align: right;
}

@media (max-width: 767px) {
    .purpose-container .purpose-item-other-purpose--with-prefix {
        grid-template-areas: "label input";
    }
}

.purpose-container .purpose-item-other-purpose__label {
    grid-area: label;
    font-size: 1.6rem;
}

.purpose-container .purpose-item-other-purpose__input {
    grid-area: input;
}

.contract_dtl_calender {
    display: flex;
    justify-content: space-between;
    max-width: 435px;
    width: 100%;
}

.contract_dtl_calender li {
    position: relative;
    width: calc((100% - 35px) / 2);
}

.contract_dtl_calender li::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    color: #928576;
    content: "\f073";
    font-size: 2rem;
    pointer-events: none;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
}

.contract_calender_to::before {
    color: #928576;
    content: "～";
    font-size: 1.6rem;
    left: -24px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.contract_period {
    position: relative;
}

.contract_dtl_date {
    cursor: pointer;
    display: inline-block;
    padding-right: 15px;
    position: relative;
}

.contract_dtl_date::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #928576;
    content: "\f078";
    font-size: 1.2rem;
    right: 0;
    position: absolute;
    top: 2px;
}

.contract_dtl_date.active::after {
    content: "\f077";
}

.contract_period_list {
    display: none;
}

.contract_period_list li {
    cursor: pointer;
    padding-top: 5px;
}

.contract_dtl_note_mod {
    padding-top: 10px;
}

@media (max-width: 767px) {
    .contract_dtl_note_mod.contract_dtl_note_mod_top {
        padding-top: 0;
    }
}

.contract_payment_reason {
    align-items: center;
    display: flex;
    margin-top: 10px;
}

.contract_payment_reason label {
    width: 50px;
}

.contract_delivery_method {
    max-width: 500px !important;
}

.contract_delivery_method select {
    max-width: 100%;
}

.contract_address_btn {
    margin-bottom: 10px;
}

.contract_address_btn input[type="button"],
.contract_address_btn input[type="submit"] {
    font-size: 1.4rem;
    padding: 10px 30px;
    width: auto;
}

.contract_deliver {
    display: flex;
}

.contract_deliver li {
    margin-right: 40px;
    position: relative;
    width: 100px;
}

.contract_deliver li::after {
    color: #333;
    position: absolute;
    right: -22px;
    top: 50%;
    transform: translateY(-50%);
}

.contract_deliver_hour::after {
    content: "時";
}

.contract_deliver_minute::after {
    content: "分";
}

.contract_dtl_col_ttl {
    background: #928576;
    color: #fff;
    font-weight: bold !important;
}

@media (min-width: 768px),
print {
    .contract_dtl_col_ttl {
        padding: 9px 30px !important;
    }
}

@media (max-width: 767px) {
    .contract_dtl_col_ttl {
        padding: 10px 15px !important;
    }
}

.contract_dtl_col_group {
    padding: 0 !important;
}

@media (min-width: 768px),
print {
    .contract_emergency {
        display: flex;
    }
}

@media (min-width: 768px),
print {
    .contract_emergency_ttl {
        width: 150px;
    }
}

.contract_emergency_txt {
    font-weight: normal;
}

@media (min-width: 768px),
print {
    .contract_emergency_txt {
        width: calc(100% - 150px);
    }
}

@media (max-width: 767px) {
    .contract_emergency_txt br {
        display: none;
    }
}

.contract_mid_txt {
    padding-bottom: 5px;
}

.contract_mid_txt.contract_padtop {
    padding-top: 8px;
}

.contract_th_ex {
    width: 320px;
}

.contract_dtl_extbl {
    padding: 0 !important;
}

@media (min-width: 768px),
print {
    .contract_ex_tbl {
        display: flex;
        justify-content: space-between;
    }
}

.contract_ex_tbl_ttl {
    display: flex;
    flex-wrap: wrap;
}

@media (min-width: 768px),
print {
    .contract_ex_tbl_ttl {
        padding: 24px 10px 10px 30px;
        width: 360px;
    }
}

@media (max-width: 767px) {
    .contract_ex_tbl_ttl {
        padding: 12px 15px 8px;
    }

    .contract_ex_tbl_ttl br {
        display: none;
    }
}

.contract_ex_tbl_ttl .required {
    width: 50px;
}

@media (min-width: 768px),
print {
    .contract_ex_tbl_cont {
        padding: 15px 30px 15px 0;
        width: calc(100% - 360px);
    }
}

@media (max-width: 767px) {
    .contract_ex_tbl_cont {
        padding: 0 15px 16px;
    }
}

.contract_ex_cvd_radio {
    display: flex;
    flex-wrap: wrap;
    max-width: 365px;
}

.contract_ex_cvd_radio .mber_radio {
    margin-bottom: 10px;
    width: 150px;
}

.contract_ex_cvd_radio input {
    border-color: #d0cbc6;
}

.contract_ex_calender {
    margin-bottom: 10px;
    margin-left: 10px;
    position: relative;
    max-width: 200px;
    width: calc(100% - 160px);
}

.contract_ex_calender::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    color: #928576;
    content: "\f073";
    font-size: 2rem;
    pointer-events: none;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
}

.contract_calender {
    position: relative;
    max-width: 200px;
    width: 100%;
}

.contract_calender::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    color: #928576;
    content: "\f073";
    font-size: 2rem;
    pointer-events: none;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
}

.contract_list_dd_cov {
    padding-right: 35px;
}

@media (max-width: 767px) {
    .contract_dtl_option_btn {
        padding-top: 15px;
    }
}

.contract_dtl_purpose_wrap {
    position: relative;
}

@media (min-width: 768px),
print {
    .contract_dtl_purpose_wrap {
        padding-bottom: 40px;
    }
}

.contract_dtl_purpose {
    flex-wrap: wrap;
    justify-content: flex-start;
    max-width: 100%;
}

@media (max-width: 767px) {
    .contract_dtl_purpose {
        justify-content: space-between;
    }
}

.contract_dtl_purpose li {
    margin-left: 0;
}

@media (min-width: 768px),
print {
    .contract_dtl_purpose li {
        margin-bottom: 5px;
        margin-right: 5px;
        width: calc((100% - 25px) / 5);
    }
}

@media (max-width: 767px) {
    .contract_dtl_purpose li {
        margin-bottom: 10px;
        width: calc((100% - 10px) / 2);
    }
}

.contract_dtl_purpose li label {
    padding-left: 30px;
    padding-right: 0px;
}

@media (min-width: 768px),
print {
    .contract_dtl_purpose_other {
        left: 0;
        position: absolute !important;
        top: 78px;
    }
}

@media (min-width: 768px),
print {
    .contract_purpose_other_input {
        left: 20%;
        position: absolute !important;
        top: 78px;
        width: calc(80% - 5px);
    }
}

.contract_purpose_other_input input {
    max-width: 100%;
}

.contract_dtl_person {
    padding-top: 8px;
}

.contract_preferselected {
    display: none;
}

@media (min-width: 768px),
print {
    .contract_term_txt {
        margin: 20px 30px;
    }
}

@media (max-width: 767px) {
    .contract_term_txt {
        margin: 10px 15px;
    }
}

@media (min-width: 768px),
print {
    .contract_term_part {
        padding: 0 30px 30px;
    }
}

@media (max-width: 767px) {
    .contract_term_part {
        padding: 0 15px 20px;
    }
}

.contract_term_tbl {
    margin-bottom: 10px;
    width: 100%;
}

@media (max-width: 767px) {
    .contract_term_tbl {
        border: 1px solid #e1dedb;
        border-top: none;
    }
}

.contract_term_tbl th,
.contract_term_tbl td {
    padding: 8px 15px;
}

@media (min-width: 768px),
print {

    .contract_term_tbl th,
    .contract_term_tbl td {
        border: 1px solid #e1dedb;
    }
}

@media (max-width: 767px) {

    .contract_term_tbl th,
    .contract_term_tbl td {
        display: block;
        width: 100%;
    }
}

.contract_term_tbl th {
    background: #f7f7f6;
    color: #928576;
    font-weight: normal;
    text-align: left;
    vertical-align: top;
}

@media (min-width: 768px),
print {
    .contract_term_tbl th {
        width: 180px;
    }
}

@media (max-width: 767px) {
    .contract_term_tbl th {
        border-top: 1px solid #e1dedb;
    }
}

.contract_term_tbl_mrbt {
    margin-bottom: 10px;
}

.contact_dtl_nopadtb td {
    padding: 0 !important;
}

.contract_dtl_coltbl_spec {
    padding: 0 !important;
}

.contract_dtl_coltbl {
    width: 100%;
}

@media (min-width: 768px),
print {
    .contract_dtl_coltbl {
        display: flex;
        flex-wrap: nowrap;
    }
}

@media (min-width: 768px),
print {
    .contract_dtl_coltbl_td {
        padding: 8px 15px;
        width: calc((100% - 182px) / 2);
    }
}

@media (max-width: 767px) {
    .contract_dtl_coltbl_td {
        padding: 8px 15px;
    }
}

.contract_dtl_coltbl_td a {
    color: #333;
    text-decoration: none;
}

@media (min-width: 768px),
print {
    .contract_dtl_coltbl_td_ex1 {
        padding: 8px 15px;
        width: calc((100% - 182px)/2);
    }
}

@media (max-width: 767px) {
    .contract_dtl_coltbl_td_ex1 {
        padding: 8px 15px;
    }
}

.contract_dtl_coltbl_td_ex1 a {
    color: #333;
    text-decoration: none;
}

@media (min-width: 768px),
print {
    .contract_dtl_coltbl_td_ex2 {
        padding: 8px 15px;
        width: 130px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_coltbl_td_ex2 {
        padding: 8px 15px;
    }
}

.contract_dtl_coltbl_td_ex2 a {
    color: #333;
    text-decoration: none;
}

.contract_dtl_bango a {
    color: #333;
    text-decoration: none;
}

@media (max-width: 767px) {
    .contract_dtl_postalcode .magm_postalcode {
        display: block;
    }
}

.contract_dtl_coltbl_th {
    background: #f7f7f6;
    color: #928576;
    font-weight: normal;
    text-align: left;
}

@media (min-width: 768px),
print {
    .contract_dtl_coltbl_th {
        border-left: 1px solid #e1dedb;
        border-right: 1px solid #e1dedb;
        padding: 8px 15px;
        width: 180px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_coltbl_th {
        border-top: 1px solid #e1dedb;
        padding: 8px 15px;
    }
}

.contract_dtl_coltbl_th_ex {
    background: #f7f7f6;
    color: #928576;
    font-weight: normal;
    text-align: left;
}

@media (min-width: 768px),
print {
    .contract_dtl_coltbl_th_ex {
        border-left: 1px solid #e1dedb;
        border-right: 1px solid #e1dedb;
        padding: 8px 15px;
        width: 180px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_coltbl_th_ex {
        border-top: 1px solid #e1dedb;
        padding: 8px 15px;
    }
}

.cont_term_list {
    counter-reset: itemlist;
    margin-bottom: 15px;
}

.cont_term_list li.cont_term_line {
    margin-left: 10px;
    padding-left: 25px;
    position: relative;
}

.cont_term_list li.cont_term_line::before {
    counter-increment: itemlist;
    content: counter(itemlist) ".";
    left: 0;
    position: absolute;
    top: 0;
}

.cont_term_list li.cont_term_line a {
    color: #333;
    text-decoration: none;
}

.cont_term_list02 {
    counter-reset: itemlist;
    padding-left: 10px;
}

.cont_term_list02 li.cont_term_line02 {
    padding-left: 30px;
    position: relative;
}

.cont_term_list02 li.cont_term_line02::before {
    counter-increment: itemlist;
    content: "(" counter(itemlist) ")";
    left: 0;
    position: absolute;
    top: 0;
}

.cont_term_list03 {
    list-style: upper-roman;
    margin-left: 20px;
}

.cont_term_subttl {
    margin-bottom: 5px;
    margin-top: 15px;
    position: relative;
}

@media (min-width: 768px),
print {
    .cont_term_subttl {
        font-size: 1.8rem;
        padding-left: 20px;
    }
}

@media (max-width: 767px) {
    .cont_term_subttl {
        font-size: 1.6rem;
        padding-left: 15px;
    }
}

.cont_term_subttl::before {
    background: #f08200;
    content: "";
    left: 0;
    position: absolute;
    width: 4px;
}

@media (min-width: 768px),
print {
    .cont_term_subttl::before {
        height: calc(100% - 10px);
        top: 4px;
    }
}

@media (max-width: 767px) {
    .cont_term_subttl::before {
        height: 25px;
        top: 0;
    }
}

.contract_rental_period {
    font-size: 1.8rem;
    font-weight: bold;
}

.contract_rental_txt {
    font-size: 1.4rem;
    font-weight: normal;
}

.contract_dtl_tbl_price {
    line-height: 1.2;
}

.contract_dtl_tbl_price_bold {
    font-size: 1.8rem;
    font-weight: bold;
}

.contract_dtl_note01 {
    font-size: 1.3rem;
    margin-bottom: 20px;
}

.contract_dtl_roomlist {
    background: #fcf8f5;
    border: 1px solid #e1dedb;
    border-radius: 3px;
}

@media (min-width: 768px),
print {
    .contract_dtl_roomlist {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0 30px 30px;
        padding: 20px 30px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_roomlist {
        margin: 0 15px 20px;
        padding: 10px 15px;
    }
}

@media (min-width: 768px),
print {
    .contract_dtl_roomlist li {
        padding: 7px 0;
        width: 50%;
    }
}

@media (max-width: 767px) {
    .contract_dtl_roomlist li {
        padding: 7px 0;
        width: 100%;
    }
}

.contract_dtl_roomlist li a {
    display: block;
    padding-left: 20px;
    position: relative;
}

@media (min-width: 768px),
print {
    .contract_dtl_roomlist li a {
        font-size: 1.6rem;
    }
}

@media (max-width: 767px) {
    .contract_dtl_roomlist li a {
        font-size: 1.5rem;
    }
}

.contract_dtl_roomlist li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #928576;
    content: "\f054";
    font-size: 1.2rem;
    left: 0;
    position: absolute;
    top: 3px;
}

.contract_content_room .modal-header {
    border: none;
}

@media (min-width: 768px),
print {
    .contract_content_room .modal-header {
        padding: 28px 30px 15px;
    }
}

@media (min-width: 768px),
print {
    .contract_dtl_room_txt {
        padding: 0 30px 15px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_room_txt {
        padding: 0 15px 15px;
    }
}

@media (min-width: 768px),
print {
    .cmn_ttl_grp .cmn_select {
        width: 250px;
    }
}

@media (max-width: 767px) {
    .cmn_ttl_grp .cmn_select {
        position: relative;
        width: 180px;
    }
}

.cmn_ttl_grp .cmn_select select {
    border-width: 1px;
    font-size: 1.4rem;
    padding: 5px 25px 5px 10px;
}

@media (max-width: 767px) {
    .cmn_ttl_grp {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }
}

.contract_options_modal_ft {
    display: flex;
}

@media (min-width: 768px),
print {
    .contract_options_modal_ft {
        align-items: center;
        justify-content: flex-end;
    }
}

@media (max-width: 767px) {
    .contract_options_modal_ft {
        width: 100%;
    }

    .contract_options_modal_ft li:nth-of-type(2n) {
        margin-left: 10px;
    }
}

@media (min-width: 768px),
print {
    .contract_options_modal_ft li {
        margin-left: 10px;
    }
}

.contract_option_cancel input {
    border: 1px solid #d0cbc6 !important;
}

@media (min-width: 768px),
print {
    .contract_option_choose {
        padding: 20px 30px 10px;
    }
}

@media (max-width: 767px) {
    .contract_option_choose {
        padding: 15px;
    }
}

.contract_option_choose_menu {
    background: #fff;
    border: 1px solid #e1dedb;
    border-bottom: none;
    border-right: none;
    border-radius: 3px;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
    width: 100%;
}

.contract_option_choose_menu li {
    border-bottom: 1px solid #e1dedb;
    border-right: 1px solid #e1dedb;
}

@media (min-width: 768px),
print {
    .contract_option_choose_menu li {
        width: 20%;
    }
}

@media (max-width: 767px) {
    .contract_option_choose_menu li {
        width: 50%;
    }

    .contract_option_choose_menu li.contract_option_lastchoose {
        width: 100%;
    }
}

.contract_option_choose_menu li a {
    color: #333;
    display: block;
    font-size: 1.3rem;
    height: 100%;
    padding: 10px 10px 10px 28px;
    position: relative;
    text-decoration: none;
}

.contract_option_choose_menu li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #928576;
    content: "\f078";
    font-size: 1.2rem;
    left: 10px;
    position: absolute;
    top: 10px;
}

.contract_option_choose_menu li a.current {
    background: #f1f0ef;
    color: #f08200;
}

.contract_option_choose_menu li a.current::before {
    color: #f08200;
}

.contract_option_list {
    align-items: stretch;
    flex-wrap: wrap;
    max-width: 100%;
}

@media (max-width: 767px) {
    .contract_option_list {
        flex-direction: column;
    }
}

.contract_option_list li {
    margin-bottom: 10px;
}

@media (min-width: 768px),
print {
    .contract_option_list li {
        margin-left: 10px;
        width: calc((100% - 22px) / 3);
    }

    .contract_option_list li:nth-of-type(4n + 1) {
        margin-left: 10px;
    }

    .contract_option_list li:nth-of-type(3n + 1) {
        margin-left: 0;
    }
}

@media (max-width: 767px) {
    .contract_option_list li {
        margin-left: 0;
        width: 100%;
    }
}

.contract_option_list li label {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    height: 100%;
    min-height: 74px;
    padding: 5px 5px 5px 30px;
}

.contract_option_list li label::before {
    left: 8px;
    top: 50%;
    transform: translateY(-50%);
}

.contract_option_list li label::after {
    left: 11px;
    top: 50%;
    transform: translateY(-50%);
}

.contact_option_thumb {
    width: 50px;
}

.contact_option_thumb img {
    border-radius: 3px;
    height: 50px;
    overflow: hidden;
    width: 50px;
}

.contact_option_content {
    flex: 1 1 0%;
    font-size: 1.3rem;
    line-height: 1.5;
    padding-left: 10px;
}

.contact_option_note {
    color: #928576;
}

@media (max-width: 767px) {

    .contract_related_doc,
    .contract_dtl_other {
        padding: 15px;
    }
}

.contract_option_modal_tbl tr:nth-child(even) {
    background: #fcf8f5;
}

.contract_option_modal_tbl tr:nth-child(odd) {
    background: #fff;
}

@media (min-width: 768px),
print {
    .contract_option_payment {
        display: flex;
    }
}

@media (max-width: 767px) {
    .contract_option_payment .mber_radio {
        flex-wrap: wrap;
    }

    .contract_option_payment .mber_radio li {
        margin-bottom: 10px;
        margin-left: 0;
    }

    .contract_option_payment .mber_radio li:first-of-type {
        margin-right: 50%;
    }

    .contract_option_payment .mber_radio li.contract_option_payment_select {
        margin-left: 10px;
    }
}

@media (min-width: 768px),
print {
    .contract_option_payment_user {
        margin-left: 10px;
        width: 150px;
    }
}

.contract_option_deliver {
    align-items: center;
    display: flex;
    margin-left: 10px;
}

.contract_option_deliver .cmn_select {
    margin-right: 10px;
}

@media (min-width: 768px),
print {
    .contract_option_deliver .cmn_select {
        width: 100px;
    }
}

@media (max-width: 767px) {
    .contract_option_deliver .cmn_select {
        flex: 1 1 0%;
    }
}

.contract_user_modal_subttl {
    color: #333;
    font-size: 1.65rem;
    font-weight: normal;
}

@media (max-width: 767px) {
    .contract_user_modal_subttl {
        margin-right: -5px;
    }
}

.contract_user_modal_subttl span {
    color: #76982c;
    font-weight: bold;
}

.contract_user_dtl_hope .comp_single_check {
    width: 200px;
}

.keiyakurequired {
    color: #76982c;
    font-weight: bold;
    padding-left: 10px;
}

.contract_user_modal_note {
    margin-top: 10px;
}

.nopadd {
    padding-left: 0;
}

.contract_user_add_list {
    flex-direction: column;
    max-width: 100%;
}

.contract_user_add_list.mber_checkbox li label {
    align-items: flex-start;
    flex-direction: column;
}

.contract_user_add_list li {
    margin-bottom: 0;
    margin-left: 0;
    width: 100%;
}

.contract_user_add_list li:nth-child(odd) {
    background: #fcf8f5;
}

.contract_user_add_list li label {
    background: none;
    border: none;
    font-size: 1.4rem;
}

@media (min-width: 768px),
print {
    .contract_user_add_list li label {
        padding-bottom: 14px;
        padding-left: 70px;
        padding-top: 14px;
    }
}

@media (max-width: 767px) {
    .contract_user_add_list li label {
        font-size: 1.4rem;
        padding: 10px 10px 10px 40px;
    }
}

.contract_user_add_list li label::before {
    top: 50%;
    transform: translateY(-50%);
}

@media (min-width: 768px),
print {
    .contract_user_add_list li label::before {
        left: 28px;
    }
}

@media (max-width: 767px) {
    .contract_user_add_list li label::before {
        left: 15px;
    }
}

.contract_user_add_list li label::after {
    top: 50%;
    transform: translateY(-50%);
}

@media (min-width: 768px),
print {
    .contract_user_add_list li label::after {
        left: 31px;
    }
}

@media (max-width: 767px) {
    .contract_user_add_list li label::after {
        left: 18px;
    }
}

.contract_user_add_list.mber_checkbox li input:checked+label::after {
    left: 33px;
    top: calc(50% - 1px);
    transform: translateY(-50%) rotate(45deg);
}

@media (max-width: 767px) {
    .contract_user_add_list.mber_checkbox li input:checked+label::after {
        left: 20px;
    }
}

.contract_user_add_list li input:checked+label {
    border: none;
}

.contract_user_add_department,
.contract_user_add_depart_ttl {
    padding-right: 10px;
}

@media (min-width: 768px),
print {

    .contract_user_add_department,
    .contract_user_add_depart_ttl {
        width: 280px;
    }
}

@media (max-width: 767px) {

    .contract_user_add_department,
    .contract_user_add_depart_ttl {
        width: 220px;
    }
}

.contract_user_add_name,
.contract_user_add_name_ttl {
    flex: 1 1 0%;
}

.contract_user_indivu_add_list .contract_user_add_department {
    padding-right: 0;
    width: 100%;
}

.contract_user_add_hd {
    flex-direction: column;
    padding: 0;
}

.contract_user_add_top {
    position: relative;
    width: 100%;
}

@media (min-width: 768px),
print {
    .contract_user_add_top {
        padding: 25px 60px 25px 30px;
    }
}

@media (max-width: 767px) {
    .contract_user_add_top {
        padding: 15px 40px 15px 15px;
    }
}

.contract_user_add_midd {
    border-bottom: 1px solid #e1dedb;
    border-top: 1px solid #e1dedb;
    display: flex;
    width: 100%;
}

@media (min-width: 768px),
print {
    .contract_user_add_midd {
        align-items: center;
        display: flex;
        justify-content: space-between;
        padding: 22px 30px 22px;
    }
}

@media (max-width: 767px) {
    .contract_user_add_midd {
        flex-direction: column-reverse;
        padding: 15px 15px 10px;
    }
}

.contract_user_add_search {
    align-items: center;
    display: flex;
}

.contract_user_add_search label {
    width: 90px;
}

.contract_user_add_search input {
    height: 34px;
}

@media (min-width: 768px),
print {
    .contract_user_add_search input {
        width: 200px;
    }
}

@media (max-width: 767px) {
    .contract_user_add_search input {
        width: calc(100% - 160px);
    }
}

.contract_user_add_search_submit {
    margin-left: 10px;
}

.contract_user_add_search_submit button {
    font-size: 1.4rem;
    padding: 8px 15px;
}

@media (max-width: 767px) {
    .contract_user_add_search_submit button {
        padding: 8px;
        width: 60px;
    }
}

@media (max-width: 767px) {
    .contract_user_add_search_btn {
        margin: 0 0 15px auto;
        max-width: 220px;
        text-align: center;
    }
}

.contract_user_add_search_btn a {
    font-size: 1.4rem;
    padding: 8px 30px;
}

.contract_user_add_bott {
    color: #928576;
    display: flex;
    font-size: 1.3rem;
    justify-content: space-between;
}

@media (min-width: 768px),
print {
    .contract_user_add_bott {
        padding: 9px 0 9px 70px;
        width: calc(100% - 70px);
    }
}

@media (max-width: 767px) {
    .contract_user_add_bott {
        padding: 9px 0 9px 40px;
        width: calc(100% - 30px);
    }
}

.contract_dtl_btn_mgbt {
    margin-bottom: 20px;
}

@media (min-width: 768px),
print {
    .contract_ind_work {
        display: flex;
        justify-content: space-between;
    }
}

@media (min-width: 768px),
print {
    .contract_ind_work_input {
        width: calc(100% - 160px);
    }
}

@media (max-width: 767px) {
    .contract_ind_work_input {
        margin-bottom: 10px;
        width: 100%;
    }
}

.contract_ind_checkbox {
    width: 150px;
}

.contract_ind_checkbox .comp_single_check {
    width: 100%;
}

.contract_emergency_nonot {
    padding-left: 0;
}

.contract_emergency_nonot::before {
    display: none;
}

@media (min-width: 768px),
print {
    .contract_options_th_nopad {
        padding: 20px 30px !important;
    }
}

.contract_option_desired {
    display: flex;
}

.contract_option_desired .contract_dtl_calender {
    margin-right: 10px;
    width: 200px;
}

.contract_option_desired .contract_dtl_calender li {
    width: 100%;
}

@media (min-width: 768px),
print {
    .contract_userinfor_ft {
        justify-content: space-between;
    }
}

@media (max-width: 767px) {
    .contract_userinfor_ft {
        flex-wrap: wrap;
    }
}

@media (min-width: 768px),
print {
    .contract_changeperiod {
        padding: 0 30px;
    }
}

@media (max-width: 767px) {
    .contract_changeperiod {
        padding-top: 15px;
    }
}

.contract_changeperiod_ttl {
    color: #452c18;
    font-weight: bold;
    padding-bottom: 5px;
}

.contract_userinfor_modal_tbl tr:first-child {
    display: none;
}

.contract_modal_inner_userregister {
    display: none;
}

.modal02 .contract_modal_inner_useradd {
    display: none;
}

.modal02 .contract_modal_inner_userregister {
    display: flex;
}

.contract_dtl_col_ttl_ex {
    background: #928576;
    color: #fff;
    font-weight: bold;
}

@media (min-width: 768px),
print {
    .contract_dtl_col_ttl_ex {
        padding: 9px 30px;
    }
}

@media (max-width: 767px) {
    .contract_dtl_col_ttl_ex {
        padding: 10px 15px;
    }
}

@media (max-width: 767px) {
    .contract_term_other {
        margin-bottom: 10px;
    }
}

@media (min-width: 768px),
print {
    .contract_term_ttl {
        margin-bottom: 20px;
    }
}

@media (max-width: 767px) {
    .contract_term_ttl {
        margin-bottom: 10px;
    }
}

.contract_list_info {
    width: 100%;
}

.contract_list_name,
.contract_list_id,
.contract_list_date_start,
.contract_list_date_end,
.contract_list_status,
.contract_list_status_num {
    display: inline-block;
}

.contract_list_id {
    margin-right: 10px;
}

.contract_list_id::before {
    content: " (ID:";
}

.contract_list_id::after {
    content: ") ";
}

.contract_list_status::before {
    content: "-";
    margin-right: 10px;
}

.contract_list_status_num::before {
    content: "（";
}

.contract_list_status_num::after {
    content: "）";
}

.contract_list_date_start::after {
    content: "～";
}

.contract_input_sub {
    margin-top: 10px;
}

.contr_member {
    cursor: pointer;
    padding-right: 20px;
    position: relative;
}

.contr_member::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #928576;
    content: "\f078";
    font-size: 1.2rem;
    padding-left: 8px;
    position: absolute;
    right: 0;
    top: 0;
}

.contr_member.active::after {
    content: "\f077";
}

.contr_member_list {
    display: none;
}

.ft_btn {
    background: rgba(0, 0, 0, 0.7);
    bottom: 0;
    position: fixed;
    right: 0;
    transition: left 0.3s;
}

@media (min-width: 1200px) {
    .ft_btn {
        left: 280px;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    .ft_btn {
        left: 200px;
    }
}

@media (max-width: 999px) {
    .ft_btn {
        left: 0;
    }
}

.ft_btn_list {
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 7px 0 10px;
    width: 100%;
}

.ft_btn_list li {
    padding: 0 10px;
    width: 100%;
    max-width: 500px;
}

.ft_btn_list li input {
    line-height: normal;
    padding: 8px 10px;
    width: 100%;
}

@media (min-width: 768px),
print {

    .invoice_tbl th,
    .invoice_tbl td {
        position: relative;
    }

    .invoice_tbl th {
        padding: 10px 10px 10px 0;
    }

    .invoice_tbl td {
        padding: 14px 10px 14px 0;
    }
}

@media (max-width: 767px) {
    .invoice_tbl tr {
        margin-bottom: 0;
        padding: 10px 0;
    }

    .invoice_tbl td {
        display: block;
        padding: 2px 15px 2px 140px;
        position: relative;
    }

    .invoice_tbl td:first-child {
        position: absolute;
        left: 10px;
        padding: 0;
        top: 10px;
    }

    .invoice_tbl td:last-child {
        bottom: 0;
        display: block;
        position: absolute;
        right: -15px;
        text-align: right;
    }

    .invoice_tbl td:last-child a {
        display: block;
        padding: 8px 15px;
    }

    .invoice_tbl td .mber_tbl_lbl_sp {
        left: 50px;
    }
}

@media (max-width: 1360px) {
    .invoice_tbl .invoice_col_th02 {
        width: 65px;
    }
}

@media (min-width: 1200px) {
    .invoice_tbl .invoice_ttl_notice {
        padding-right: 8px;
        text-align: right;
    }

    .invoice_tbl .invoice_col_th01 {
        width: 120px;
    }

    .invoice_tbl .invoice_col_th03 {
        width: 10%;
    }

    .invoice_tbl .invoice_col_th08,
    .invoice_tbl .invoice_col_th09 {
        width: 8%;
    }

    .invoice_tbl .invoice_col_th04,
    .invoice_tbl .invoice_col_th06,
    .invoice_tbl .invoice_col_th07 {
        width: 12%;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    .invoice_tbl .invoice_ttl_notice {
        text-align: right;
    }

    .invoice_tbl .invoice_col_th01 {
        width: 75px;
    }

    .invoice_tbl .invoice_col_th03 {
        width: 11%;
    }

    .invoice_tbl .invoice_col_th08,
    .invoice_tbl .invoice_col_th09 {
        width: 9%;
    }

    .invoice_tbl .invoice_col_th04,
    .invoice_tbl .invoice_col_th06,
    .invoice_tbl .invoice_col_th07 {
        width: 12.5%;
    }
}

@media (max-width: 999px) {
    .invoice_tbl .invoice_ttl_notice {
        text-align: right;
    }

    .invoice_tbl .invoice_col_th01 {
        width: 75px;
    }

    .invoice_tbl .invoice_col_th03 {
        width: 11%;
    }

    .invoice_tbl .invoice_col_th08,
    .invoice_tbl .invoice_col_th09 {
        width: 9%;
    }

    .invoice_tbl .invoice_col_th04,
    .invoice_tbl .invoice_col_th06,
    .invoice_tbl .invoice_col_th07 {
        width: 12.5%;
    }
}

.invoice_tbl .invoice_col_th10 {
    width: 40px;
}

.invoice_tbl .invoice_col_th010 {
    width: 60px;
}

.invoice_spn_tax {
    display: inline-block;
}

.invoice_pos {
    display: block;
}

.invoice_price_bld {
    font-weight: bold;
}

.invoice_notice_group {
    display: flex;
}

@media (max-width: 767px) {
    .invoice_notice_group {
        flex-direction: column-reverse;
    }
}

@media (min-width: 768px),
print {
    .invoice_notice_group .contract_notice {
        display: inline;
        padding: 13px 10px 7px;
        width: 50%;
    }
}

@media (max-width: 767px) {
    .invoice_notice_group .contract_notice {
        margin-left: 5px;
    }
}

@media (min-width: 768px),
print {
    .invoice_notice_group .contract_notice .contract_notice_cont {
        left: -32px;
        top: 44px;
    }
}

.invoice_btn_chevron {
    cursor: pointer;
    text-align: center;
    z-index: 6;
}

@media (min-width: 768px),
print {
    .invoice_btn_chevron {
        padding: 10px 20px;
        width: 50%;
    }
}

@media (max-width: 767px) {
    .invoice_btn_chevron {
        padding: 10px;
    }
}

.invoice_btn_chevron .fas {
    color: #928576;
    font-size: 1.2rem;
}

.invoice_btn_chevron_payment {
    cursor: pointer;
    text-align: center;
    z-index: 6;
}

@media (min-width: 768px),
print {
    .invoice_btn_chevron_payment {
        padding-left: 10px;
    }
}

@media (max-width: 767px) {
    .invoice_btn_chevron_payment {
        padding-left: 10px;
    }
}

.invoice_btn_chevron_payment .fas {
    color: #928576;
    font-size: 1.8rem;
}

.invoice_td_name .mber_lastname {
    display: inline-block;
}

.invoice_wrap_block .invoice_block:nth-child(odd) {
    background: #fcf8f5;
}

.invoice_wrap_block .invoice_block.invoice_special {
    background: #fff5f5 !important;
}

.invoice_wrap_block .invoice_block.invoice_special:nth-child(odd) {
    background: #ffefef !important;
}

.invoice_wrap_block .invoice_block.disabled:nth-child(even) {
    background: #eaeaea;
}

.invoice_wrap_block .invoice_block.disabled:nth-child(odd) {
    background: #e3e3e3;
}

.invoice_block {
    position: relative;
}

@media (max-width: 767px) {
    .invoice_block {
        border: 1px solid #e1dedb;
        border-radius: 3px;
        margin-bottom: 10px;
    }
}

.invoice_content {
    display: none;
}

@media (min-width: 768px),
print {
    .invoice_content {
        padding-left: 45px;
    }
}

@media (max-width: 767px) {
    .invoice_content {
        padding-bottom: 30px;
        padding-left: 50px;
    }
}

.invoice_content_list {
    border-top: 1px dotted #e1dedb;
}

@media (min-width: 768px),
print {
    .invoice_content_list {
        display: flex;
        justify-content: space-between;
        flex-wrap: nowrap;
    }
}

@media (max-width: 767px) {
    .invoice_content_list {
        padding: 7px 0;
    }
}

@media (min-width: 768px),
print {
    .invoice_content_list li {
        padding: 14px 15px;
        width: calc((100% - 215px) / 2);
    }

    .invoice_content_list li:first-child {
        width: 215px;
    }
}

@media (max-width: 767px) {
    .invoice_content_list li {
        padding: 2px 0;
    }
}

.invoice_content_ttl {
    color: #928576;
    font-size: 1.3rem;
    left: 0;
    position: absolute;
    top: 0;
}

.invoice_content_ttl::after {
    content: " : ";
}

.invoice_contract_num {
    padding-left: 75px;
    position: relative;
}

.invoice_contract_name {
    padding-left: 75px;
    position: relative;
}

@media (min-width: 768px),
print {
    .invoice_contract_name {
        padding-left: 75px;
    }
}

.invoice_contract_period {
    padding-left: 75px;
    position: relative;
}

.invoice_up .invoice_tbl tr {
    border: none !important;
}

@media (min-width: 768px),
print {
    .invoice_up .invoice_tbl .contract_date .invoice_roomdate_form::after {
        position: absolute;
    }

    .invoice_up .invoice_tbl .contract_date .hm_roomdate_to {
        display: block;
    }
}

.invoice_note {
    padding-bottom: 5px;
}

.invoice_dtl_infor_box {
    margin-bottom: 28px;
}

.invoice_dtl_infor_box .mber_detail_top {
    border-bottom: 1px dotted #e1dedb;
}

@media (min-width: 768px),
print {
    .invoice_dtl_infor_box .mber_detail_top {
        margin-bottom: 16px;
        padding-bottom: 20px;
        padding-top: 2px;
    }
}

.invoice_dtl_infor_box .mber_detail_top_txt {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.2;
}

.invoice_dtl_infor_box .contract_dtl_contrl {
    align-items: center;
}

@media (min-width: 768px),
print {
    .invoice_dtl_list {
        width: calc(100% - 210px) !important;
    }
}

.invoice_dtl_controlbtns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media (min-width: 768px),
print {
    .invoice_dtl_controlbtns {
        width: 200px;
    }
}

@media (max-width: 767px) {
    .invoice_dtl_controlbtns {
        margin: 0 auto 15px;
        max-width: 340px;
        padding: 0 15px;
        width: 100%;
    }
}

.invoice_dtl_controlbtns li {
    margin-bottom: 6px;
    margin-top: 5px;
    width: 100%;
}

.invoice_dtl_controlbtns li a {
    font-size: 1.4rem;
    padding: 7px 10px 5px;
}

.invoice_dtl_block {
    border: 1px solid #e1dedb;
    border-radius: 3px;
}

@media (min-width: 768px),
print {
    .invoice_dtl_block {
        margin-bottom: 25px;
    }
}

@media (max-width: 767px) {
    .invoice_dtl_block {
        margin-bottom: 15px;
    }
}

.transfer_dtl_block {
    border: 1px solid #e1dedb;
    border-radius: 3px;
}

@media (min-width: 768px),
print {
    .invoice_dtl_block {
        margin-bottom: 25px;
    }
}

@media (max-width: 767px) {
    .invoice_dtl_block {
        margin-bottom: 15px;
    }
}

@media (min-width: 768px),
print {
    .invoice_dtl_infor_up {
        display: flex;
        justify-content: space-between;
        padding: 20px 25px 2px 25px;
    }
}

@media (max-width: 767px) {
    .invoice_dtl_infor_up {
        padding: 10px 15px;
    }
}

@media (min-width: 768px),
print {
    .invoice_dtl_infor_up .mber_detail_list {
        width: calc((100% - 10px) / 2);
    }
}

@media (max-width: 767px) {
    .invoice_dtl_infor_up .mber_detail_list {
        padding: 0;
    }
}

.invoice_dtl_company_name {
    padding-right: 10px;
}

.invoice_dtl_usage_period {
    display: block;
}

.invoice_dtl_contractor {
    display: flex;
    flex-wrap: wrap;
}

.invoice_dtl_user {
    display: block;
}

.invoice_dtl_infor_content {
    border-top: 1px solid #e1dedb;
}

.invoice_dtl_content_up {
    border: none;
}

.invoice_dtl_tbl .invoice_dtl_col_th02 {
    width: 230px;
}

.invoice_dtl_tbl .invoice_dtl_col_th03 {
    width: 110px;
}

.invoice_dtl_tbl .invoice_dtl_col_th04 {
    width: 110px;
}

.invoice_dtl_tbl .invoice_dtl_col_th05 {
    width: 110px;
}

@media (min-width: 768px),
print {

    .invoice_dtl_tbl tr th:nth-child(3),
    .invoice_dtl_tbl tr th:nth-child(4) {
        text-align: right;
    }

    .invoice_dtl_tbl tr td:nth-child(3),
    .invoice_dtl_tbl tr td:nth-child(4) {
        text-align: right;
    }

    .invoice_dtl_tbl th {
        padding: 5px 20px;
    }

    .invoice_dtl_tbl td {
        padding: 14px 20px;
    }
}

@media (max-width: 767px) {
    .invoice_dtl_tbl tr {
        margin-bottom: 0;
        padding: 5px 0;
    }

    .invoice_dtl_tbl tr:nth-child(even) {
        background: #fcf8f5;
    }

    .invoice_dtl_tbl tr:first-child {
        display: none;
    }

    .invoice_dtl_tbl td {
        display: block;
        padding: 2px 15px 2px 135px;
        position: relative;
    }
}

/* 2023/09/28 インボイス対応で請求情報のテーブルの下2行（合計部）の色指定を排除 */
/* .invoice_dtl_tbl tr:last-child, .invoice_dtl_tbl tr:nth-last-child(2) {
  background: #fff !important; } */
.invoice_dtl_tbl tr.disabled {
    background: #eaeaea !important;
}

/* 2023/09/28 インボイス対応で請求情報のテーブルの下2行（合計部）の罫線を排除 */
/* .invoice_dtl_tbl tr:nth-last-child(2) {
  border-bottom: 1px solid #e1dedb;
  border-top: 1px solid #e1dedb; } */

.invoice_dtl_nohastax_amount,
.invoice_dtl_nohastax_internal {
    position: relative;
}

.invoice_dtl_nohastax {
    text-align: right;
}

.invoice_dtl_nohastax li {
    margin: 4px 0;
}

.invoice_dtl_nohastax_lbl {
    color: #928576;
    font-size: 1.3rem;
    position: absolute;
    right: 0;
    top: -32px;
}

@media (min-width: 768px),
print {
    .invoice_dtl_nohastax_lbl {
        display: none !important;
    }
}

.invoice_dtl_total_rgt {
    text-align: right;
}

.invoice_allocation_modal {
    background: #fcf8f5;
}

@media (min-width: 768px),
print {
    .invoice_allocation_modal {
        padding: 20px 30px 10px;
    }
}

@media (max-width: 767px) {
    .invoice_allocation_modal {
        padding: 10px 15px;
    }
}

.invoice_allo_ttl {
    padding-bottom: 8px;
}

.invoice_allo_textarea textarea {
    min-height: 200px;
    resize: none;
}

.invoice_allo_textarea textarea.ipt_required {
    background: #ffffcc;
    border-color: #e36c00;
}

.invoice_payment li {
    display: flex;
    margin-top: 5px;
}

@media (max-width: 767px) {
    .invoice_payment li {
        flex-wrap: wrap;
    }
}

.invoice_payment li:first-of-type {
    margin-top: 0;
}

.invoice_payment_date {
    width: 6em;
}

@media (max-width: 767px) {
    .invoice_payment_date {
        width: 100%;
    }
}

.invoice_payment_price {
    margin-left: 10px;
    margin-right: 10px;
    padding-left: 16px;
    position: relative;
    text-align: right;
    width: 8em;
}

@media (max-width: 767px) {
    .invoice_payment_price {
        margin-left: 0;
        margin-right: 5px;
    }
}

.invoice_payment_price::before {
    content: "-";
    left: 0;
    position: absolute;
}

@media (max-width: 767px) {
    .invoice_radio {
        flex-wrap: wrap;
    }
}

@media (min-width: 768px),
print {
    .invoice_radio li {
        width: auto;
        min-width: 150px;
    }
}

@media (max-width: 767px) {
    .invoice_radio li {
        margin: 0 0 10px;
        width: 100%;
    }

    .invoice_radio li:last-of-type {
        margin-bottom: 0;
    }
}

.invoice_receipt_address {
    max-width: 500px !important;
}

.invoice_select_receipt_address select {
    max-width: 100%;
}

.invoice_receipt_address_modal_ft {
    display: flex;
}

@media (min-width: 768px),
print {
    .invoice_receipt_address_modal_ft {
        align-items: center;
        justify-content: flex-end;
    }
}

@media (max-width: 767px) {
    .invoice_receipt_address_modal_ft {
        width: 100%;
    }

    .invoice_receipt_address_modal_ft li:nth-of-type(2n) {
        margin-left: 10px;
    }
}

@media (min-width: 768px),
print {
    .invoice_receipt_address_modal_ft li {
        margin-left: 10px;
    }
}

.invoice_receipt_address_select {
    max-width: 500px !important;
}

.invoice_receipt_address_select select {
    max-width: 100%;
}

.contact_tbl {
    cursor: pointer;
}

@media (min-width: 768px),
print {

    .contact_tbl th,
    .contact_tbl td {
        position: relative;
    }

    .contact_tbl th {
        padding: 9px 10px;
    }

    .contact_tbl td {
        padding: 14px 10px;
        vertical-align: top;
    }
}

@media (max-width: 767px) {
    .contact_tbl tr {
        margin-bottom: 0;
        padding: 7px 0;
        position: relative;
    }

    .contact_tbl td {
        display: block;
        padding: 2px 15px 2px 140px;
        position: relative;
        vertical-align: top;
    }

    .contact_tbl td:first-child {
        position: absolute;
        height: 100%;
        left: 10px;
        padding: 0;
        top: 10px;
        width: 30px;
    }

    .contact_tbl td .mber_tbl_lbl_sp {
        left: 50px;
    }
}

.contact_col_th01 {
    width: 80px;
}

.contact_col_th03 {
    width: 50px;
}

.contact_col_th04 {
    width: 70px;
}

.contact_col_th05 {
    width: 120px;
}

@media (min-width: 768px),
print {
    .contact_td_center {
        text-align: center !important;
    }
}

.contact_td_attach {
    color: #928576;
}

@media (max-width: 767px) {
    .contact_td_attach {
        display: none !important;
    }
}

@media (min-width: 768px),
print {
    .contact_tbl .contact_mess_ttl_group {
        align-items: center;
        display: flex;
        flex: 0 0 auto;
        height: auto;
    }

    .contact_tbl .contact_mess_ttl_group .contact_mess_ttl_lay03 {
        flex-shrink: 1;
    }

    .contact_tbl .contact_mess_ttl_lay01 {
        flex: 1 1 auto;
    }

    .contact_tbl .contact_mess_ttl_lay03,
    .contact_tbl .contact_mess_ttl_lay01 {
        overflow: hidden;
        white-space: nowrap;
    }

    .contact_tbl .contact_mess_ttl_lay02 {
        align-items: baseline;
        display: flex;
        white-space: nowrap;
        overflow: hidden;
    }

    .contact_tbl .contact_mess_ttl_lay03 {
        align-items: baseline;
        display: inline-flex;
        flex-shrink: 0;
    }

    .contact_tbl .contact_mess_ttl_lay04 {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .contact_tbl .contact_mess_ttl_lay02 {
        align-items: baseline;
        display: flex;
        white-space: nowrap;
        overflow: hidden;
    }

    .contact_tbl .contact_mess_ttl {
        flex-shrink: 1;
        align-items: baseline;
        display: inline-flex;
        flex-shrink: 0;
        line-height: 20px;
        overflow: hidden;
    }

    .contact_tbl .contact_mess_ttlin {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .contact_tbl .contact_mess_subttl {
        flex-basis: 0;
        flex-grow: 1;
        flex-shrink: 1;
        overflow: hidden;
        text-overflow: ellipsis;
        text-align: left;
        white-space: nowrap;
    }
}

@media (max-width: 767px) {
    .contact_tbl_header {
        display: none;
    }
}

.contact_mess_subttl {
    color: #7d7d7d;
    position: relative;
}

@media (max-width: 767px) {
    .contact_mess_subttl {
        display: -webkit-box;
        overflow: hidden;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
    }
}

.contact_mess_subttl::before {
    content: "-";
    padding-right: 5px;
}

.contact_mess_category {
    display: none;
}

.contact_mess_cats_list {
    color: #928576;
    display: flex;
    flex-wrap: wrap;
    font-size: 1.3rem;
    position: relative;
}

.contact_mess_cats_list li {
    padding-right: 5px;
    position: relative;
}

.contact_mess_cats_list_ttl::after {
    content: " : ";
}

.contact_mess_room_field::before {
    content: " / ";
}

.contact_mess_room_number {
    display: inline-block;
    padding: 0 5px;
    position: relative;
}

.contact_mess_room_id {
    position: relative;
}

.contact_mess_room_id::before {
    content: " (ID:";
}

.contact_mess_room_id::after {
    content: ") ";
}

.contact_col_countarr {
    position: relative;
}

@media (max-width: 767px) {
    .contact_col_countarr {
        align-items: center;
        display: flex;
        flex-direction: column-reverse;
    }
}

.contact_col_countarr.contact_count_hasno .contact_count {
    display: none;
}

@media (min-width: 768px),
print {
    .contact_count {
        right: 0px;
        top: 0;
    }
}

@media (max-width: 767px) {
    .contact_count {
        margin: 0 auto;
        position: relative;
        width: 20px;
    }
}

@media (min-width: 768px),
print {
    .contact_mess_close_arr {
        margin-left: 10px;
    }
}

@media (max-width: 767px) {
    .contact_mess_close_arr {
        font-size: 1.2rem;
        margin-top: 10px;
    }
}

.contact_mess_close_arr .fas {
    color: #928576;
    font-size: 1.2rem;
}

.contact_up.showcase .contact_count {
    display: none;
}

.contact_up.showcase .contact_mess_ttl {
    font-weight: normal;
}

.contact_up.showcase .contact_mess_subttl {
    display: none;
}

.contact_up.showcase .contact_mess_category {
    display: block;
}

.contact_up .contact_tbl tr {
    border: none !important;
}

@media (max-width: 767px) {
    .contact_up_attach {
        position: relative;
    }

    .contact_up_attach::after {
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        bottom: 10px;
        color: #928576;
        content: "\f0c6";
        font-size: 1.6rem;
        line-height: 1;
        position: absolute;
        right: 10px;
    }
}

.contact_tbl.contact_tbl_notseen .contact_mess_ttl_lay03 {
    font-weight: bold;
}

.contact_content {
    display: none;
}

.contact_content_inner .contact_part:last-child .contact_part_content {
    display: block;
}

.contact_content_inner .contact_part .contact_part_content {
    display: none;
    padding-top: 10px;
}

@media (min-width: 768px),
print {
    .contact_part {
        padding-left: 60px;
    }
}

@media (max-width: 767px) {
    .contact_part {
        padding-left: 30px;
    }
}

.contact_part.active .contact_part_up_ttline {
    display: none;
}

.contact_part_inner {
    border-top: 1px dotted #e1dedb;
    display: block;
}

@media (min-width: 768px),
print {
    .contact_part_inner {
        padding: 15px 20px 13px 50px;
    }
}

@media (max-width: 767px) {
    .contact_part_inner {
        padding: 10px 15px;
    }
}

.contact_part_exbg {
    background: #f8eee6;
}

.contact_part_up {
    cursor: pointer;
}

.contact_part_up_name {
    color: #928576;
    display: flex;
    font-size: 1.3rem;
}

.contact_part_up_fullname {
    flex: 1 1 0%;
}

.contact_part_up_time {
    padding-left: 15px;
}

.contact_part_up_ttline {
    overflow: hidden;
    position: relative;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.contact_mess_line {
    padding: 2px 0 18px;
}

@media (min-width: 768px),
print {
    .contact_mess_reply {
        padding: 0 25px 20px 110px;
    }
}

@media (max-width: 767px) {
    .contact_mess_reply {
        padding: 0 15px 20px 45px;
    }
}

.contact_mess_reply_btn01 {
    cursor: pointer;
    font-size: 1.4rem;
    height: 36px;
    width: 120px;
}

.contact_mess_reply_content {
    display: none;
}

.contact_mess_reply_area {
    margin-bottom: 10px;
}

@media (min-width: 768px),
print {
    .contact_mess_reply_area {
        height: 230px;
    }
}

@media (max-width: 767px) {
    .contact_mess_reply_area {
        height: 150px;
    }
}

.contact_mess_reply_area textarea {
    border-width: 1px;
    height: 100%;
    resize: none;
}

.contact_mess_reply_link {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.contact_mess_reply_pp {
    flex: 1 1 0%;
    margin-right: 15px;
}

@media (max-width: 767px) {
    .contact_mess_reply_pp {
        font-size: 1rem;
        margin-right: 10px;
    }
}

.contact_mess_reply_send {
    cursor: pointer;
    height: 36px;
    width: 120px;
}

.contact_mess_reply_send input {
    font-size: 1.4rem;
}

@media (min-width: 768px),
print {
    .contact_mess_reply_send input {
        padding: 10px;
    }
}

@media (max-width: 767px) {
    .contact_mess_reply_send input {
        padding: 8px;
    }
}

.contact_mailbox {
    background: #fff;
    border: 1px solid #928576;
    border-bottom: none;
    border-radius: 5px 5px 0 0;
    height: 100%;
}

.contact_mailbox_inner {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.contact_mail_hd {
    position: relative;
}

.contact_mail_hd_grp01 {
    align-items: center;
    background: #928576;
    display: flex;
    justify-content: space-between;
}

@media (min-width: 768px),
print {
    .contact_mail_hd_grp01 {
        padding: 6px 30px;
    }
}

@media (max-width: 767px) {
    .contact_mail_hd_grp01 {
        padding: 8px 15px;
    }
}

.contact_mail_hd_grp01 .modal_btn_close {
    cursor: pointer;
}

@media (min-width: 768px),
print {
    .contact_mail_hd_grp01 .modal_btn_close {
        right: 22px;
        top: 6px;
    }
}

@media (max-width: 767px) {
    .contact_mail_hd_grp01 .modal_btn_close {
        right: 15px;
        top: 8px;
    }
}

.contact_mail_hd_grp01 .modal_btn_close:hover .fas {
    color: #d2690c;
}

.contact_mail_hd_grp02 {
    padding: 0 22px;
}

@media (max-width: 767px) {
    .contact_mail_hd_grp02 {
        padding: 0 15px;
    }
}

.contact_mail_ttl {
    color: #fff;
}

@media (min-width: 768px),
print {
    .contact_mail_ttl {
        font-size: 1.8rem;
    }
}

@media (max-width: 767px) {
    .contact_mail_ttl {
        font-size: 1.6rem;
    }
}

.contact_mail_ft {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
}

@media (min-width: 768px),
print {
    .contact_mail_ft {
        padding: 10px 22px 20px 22px;
    }
}

@media (max-width: 767px) {
    .contact_mail_ft {
        padding: 0 15px 15px;
    }
}

@media (min-width: 768px),
print {
    .contact_mail_selectbox {
        padding-top: 10px;
    }
}

.contact_mail_selectbox li {
    align-items: center;
    border-bottom: 1px dotted #e1dedb;
    display: flex;
    flex-wrap: wrap;
    position: relative;
}

@media (min-width: 768px),
print {
    .contact_mail_selectbox li {
        padding: 10px 0 10px 8px;
    }

    .contact_mail_selectbox li .contact_mail_lbl {
        width: 60px;
    }
}

.contact_mail_selectbox li .cmn_select {
    flex: 1 1 0%;
}

.contact_mail_selectbox li .cmn_select select {
    border: none;
}

@media (min-width: 768px),
print {
    .contact_mail_selectbox li .cmn_select select {
        font-size: 1.4rem;
        padding: 8px 30px 8px 15px;
    }
}

@media (max-width: 767px) {
    .contact_mail_selectbox li .cmn_select select {
        font-size: 1.6rem;
        margin: 5px 0;
        padding: 5px 30px 5px 10px;
    }
}

.contact_mail_selectbox li .input_error {
    width: 100%;
}

@media (min-width: 768px),
print {
    .contact_mail_selectbox li .input_error {
        margin-bottom: 0;
        padding-left: 60px;
    }
}

@media (max-width: 767px) {
    .contact_mail_selectbox li .input_error {
        margin-top: 0;
        padding-left: 70px;
    }
}

.contact_mail_lbl {
    color: #928576;
    font-size: 1.3rem;
}

@media (min-width: 768px),
print {
    .contact_mail_lbl {
        width: 60px;
    }
}

@media (max-width: 767px) {
    .contact_mail_lbl {
        width: 70px;
    }
}

.contact_mail_subject {
    align-items: center;
    border-bottom: 1px dotted #e1dedb;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media (min-width: 768px),
print {
    .contact_mail_subject {
        padding: 10px 0 10px 8px;
    }
}

.contact_mail_subject input {
    border: none;
    flex: 1 1 auto;
}

@media (min-width: 768px),
print {
    .contact_mail_subject input {
        padding: 8px 15px;
        width: calc(100% - 60px);
    }
}

@media (max-width: 767px) {
    .contact_mail_subject input {
        margin: 5px 0;
        padding: 5px 10px;
        width: calc(100% - 70px);
    }
}

.contact_mail_subject input::placeholder {
    color: #928576;
}

.contact_mail_subject input:-ms-input-placeholder {
    color: #928576;
}

.contact_mail_subject input::-webkit-input-placeholder {
    color: #928576;
}

.contact_mail_subject .input_error {
    width: 100%;
}

@media (min-width: 768px),
print {
    .contact_mail_subject .input_error {
        margin-bottom: 0;
        padding-left: 60px;
    }
}

@media (max-width: 767px) {
    .contact_mail_subject .input_error {
        margin-top: 0;
        padding-left: 70px;
    }
}

.contact_mailbox_wrap {
    bottom: 0;
    display: none;
    height: 520px;
    max-width: 800px;
    right: 20px;
    position: fixed;
    width: 100%;
}

@media (max-width: 999px) {
    .contact_mailbox_wrap {
        left: 10px;
        height: auto;
        max-width: 100%;
        width: calc(100% - 20px);
    }
}

.contact_mail_ct {
    flex: 1 1 auto;
}

@media (min-width: 768px),
print {
    .contact_mail_ct {
        display: flex;
        flex-direction: column;
        margin: 0 22px;
    }
}

@media (max-width: 767px) {
    .contact_mail_ct {
        margin: 0 15px;
    }
}

.contact_mail_ct .input_error {
    margin: 0;
    width: 100%;
}

.contact_mail_messagebody {
    padding: 10px 0;
}

@media (max-width: 767px) {
    .contact_mail_messagebody {
        flex: 1 1 0%;
    }
}

@media (min-width: 1200px) {
    .contact_mail_messagebody {
        height: 100%;
    }
}

@media (min-width: 1000px) and (max-width: 1199px) {
    .contact_mail_messagebody {
        height: 100%;
    }
}

@media (max-width: 999px) {
    .contact_mail_messagebody {
        padding-bottom: 0;
    }
}

.contact_mail_messagebody .contact_mail_textarea {
    border: none;
    height: 100%;
    padding: 10px;
    resize: none;
    width: 100%;
}

@media (max-width: 999px) {
    .contact_mail_messagebody .contact_mail_textarea {
        height: 26vh;
    }
}

@media (max-width: 767px) {
    .contact_mail_messagebody .contact_mail_textarea {
        padding: 10px 0;
    }
}

.contact_mail_submit input {
    font-size: 1.4rem;
    padding: 12px 40px 8px;
}

@media (min-width: 768px),
print {
    .contact_policy_list {
        padding: 25px 30px 25px 60px;
    }
}

@media (max-width: 767px) {
    .contact_policy_list {
        padding: 15px 15px 15px 30px;
    }
}

.contact_policy_list>li {
    line-height: 1.5;
    list-style-type: decimal;
    padding: 0 0 2px 5px;
}

.contact_policy_sublist li {
    list-style-type: none;
    padding-left: 15px;
    position: relative;
}

.contact_policy_sublist li::before {
    background: #333;
    border-radius: 100%;
    content: "";
    height: 2px;
    left: 5px;
    position: absolute;
    top: 9px;
    width: 2px;
}

.contact_attach_list {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
}

.contact_attach_list.contact_attach_list_reply {
    margin-bottom: 10px;
}

.contact_attach_list li {
    border: 1px solid #e1dedb;
    background: #f8f3ed;
    margin-left: 5px;
    padding: 0 30px 0 0;
    position: relative;
}

@media (min-width: 768px),
print {
    .contact_attach_list li {
        margin-top: 5px;
        width: calc((100% - 10px) / 3);
    }

    .contact_attach_list li:nth-of-type(3n + 1) {
        margin-left: 0;
    }

    .contact_attach_list li:nth-of-type(-n + 3) {
        margin-top: 0;
    }
}

@media (max-width: 767px) {
    .contact_attach_list li {
        margin-bottom: 5px;
        width: calc((100% - 5px) / 2);
    }

    .contact_attach_list li:nth-of-type(2n + 1) {
        margin-left: 0;
    }
}

.contact_attach_list li a {
    color: #333;
    display: block;
    overflow: hidden;
    padding: 5px 0 5px 10px;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 767px) {
    .contact_attach_list li a {
        font-size: 1.2rem;
    }
}

.contact_attach_list li a:hover {
    color: #f08200;
}

@media (min-width: 768px),
print {
    .contact_attach_list.contact_part_content_attach {
        margin-top: 15px;
    }
}

@media (max-width: 767px) {
    .contact_attach_list.contact_part_content_attach {
        margin-top: 10px;
    }
}

.contact_attach_list.contact_part_content_attach li {
    padding: 0;
}

@media (max-width: 767px) {
    .contact_attach_list.contact_part_content_attach li:nth-last-of-type(-n + 2) {
        margin-bottom: 0;
    }
}

.contact_attach_list.contact_part_content_attach a {
    padding-right: 30px;
    position: relative;
}

.contact_attach_list.contact_part_content_attach a::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #928576;
    content: "\f019";
    position: absolute;
    right: 10px;
}

.contact_attach_list_del {
    color: #928576;
    cursor: pointer;
    padding: 0 10px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.contact_attach_list_del:hover {
    color: #452c18;
}

.contact_mess_attach {
    margin-right: 10px;
}

.contact_mess_attach input {
    display: none;
}

.contact_mess_attach label {
    cursor: pointer;
    height: 36px;
    padding: 0;
    width: 40px;
}

.contact_part_up_attach {
    margin: 0 20px;
}

.notice_tbl {
    cursor: pointer;
}

@media (min-width: 768px),
print {
    .notice_tbl tr {
        border: none !important;
    }

    .notice_tbl th,
    .notice_tbl td {
        font-size: 1.4rem;
        position: relative;
    }

    .notice_tbl th {
        padding: 0 10px;
    }

    .notice_tbl td {
        padding: 14px 10px 14px 10px;
        position: relative;
        vertical-align: top;
    }

    .notice_tbl td:first-child::before {
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        color: #928576;
        content: "\f078";
        font-size: 1.2rem;
        left: 20px;
        position: absolute;
        top: 14px;
    }
}

@media (max-width: 767px) {
    .notice_tbl tr {
        margin-bottom: 0;
        padding-bottom: 7px;
        position: relative;
    }

    .notice_tbl tr::before {
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        color: #928576;
        content: "\f078";
        font-size: 1.2rem;
        left: 17px;
        position: absolute;
        top: 25px;
    }

    .notice_tbl td {
        display: block;
        padding: 2px 15px 2px 140px;
        position: relative;
        vertical-align: top;
    }

    .notice_tbl td .mber_tbl_lbl_sp {
        left: 50px;
    }
}

@media (min-width: 768px),
print {
    .notice_wrap_main .notice_col_th02 {
        width: 140px;
    }

    .notice_wrap_main .notice_col_th03 {
        width: 120px;
    }

    .notice_wrap_main .notice_tbl th:first-child {
        padding-left: 90px;
    }

    .notice_wrap_main .notice_tbl td:first-child {
        padding-left: 80px;
    }

    .notice_wrap_main .contract_status_checkbox {
        width: 135px;
    }
}

.notice_wrap_main .notice_ttl {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (min-width: 768px),
print {
    .notice_wrap_main .notice_content {
        margin-left: 80px;
    }
}

@media (max-width: 767px) {
    .notice_wrap_main .notice_content {
        margin-left: 50px;
    }
}

@media (max-width: 767px) {
    .notice_tbl_ttl {
        display: none;
    }
}

@media (min-width: 768px),
print {
    .notice_wrap_block {
        border-top: 1px solid #e1dedb;
    }
}

.notice_category {
    display: block;
    position: relative;
}

@media (min-width: 768px),
print {
    .notice_category {
        padding: 9px 0;
    }
}

@media (min-width: 768px),
print {
    .notice_up.active .notice_tbl td:first-child::before {
        content: "\f077";
    }
}

@media (max-width: 767px) {
    .notice_up.active .notice_tbl tr::before {
        content: "\f077";
    }
}

.notice_up_spec .notice_ttl {
    font-weight: bold;
}

.notice_up_spec .notice_tbl tr td:first-child::after {
    background: #e13510;
    border-radius: 100%;
    content: "";
    height: 10px;
    position: absolute;
    width: 10px;
}

@media (min-width: 768px),
print {
    .notice_up_spec .notice_tbl tr td:first-child::after {
        left: 50px;
        top: 18px;
    }
}

@media (max-width: 767px) {
    .notice_up_spec .notice_tbl tr td:first-child::after {
        left: 17px;
        top: 4px;
    }
}

.notice_ttl {
    position: relative;
}

.notice_content {
    border-top: 1px dotted #e1dedb;
    display: none;
    line-height: 1.5;
}

@media (min-width: 768px),
print {
    .notice_content {
        padding: 25px 20px 25px 0;
    }
}

@media (max-width: 767px) {
    .notice_content {
        padding: 15px 10px 15px 0;
    }
}

@media (min-width: 768px),
print {

    .document_tbl th,
    .document_tbl td {
        position: relative;
        vertical-align: top;
    }

    .document_tbl th {
        padding: 10px 0 10px 30px;
    }

    .document_tbl td {
        padding: 14px 0 14px 30px;
    }
}

@media (max-width: 767px) {
    .document_tbl tr {
        border: 1px solid #e1dedb;
        margin-bottom: 10px;
        padding: 10px 0 5px;
    }

    .document_tbl tr:first-child {
        display: none;
    }

    .document_tbl td {
        display: block;
        padding: 2px 15px 2px 100px;
        position: relative;
    }
}

.document_col_th01 {
    width: 25%;
}

.document_col_th03 {
    width: 130px;
}

@media (min-width: 768px),
print {
    .document_destination {
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
        width: 100%;
    }
}

.document_contract {
    cursor: pointer;
}

@media (min-width: 768px),
print {
    .document_contract {
        display: flex;
    }
}

.document_contract.active .document_contract_first::after {
    content: "\f077";
}

.document_contract_less {
    pointer-events: none;
}

.document_contract_less .document_contract_first::after {
    display: none;
}

.document_case {
    position: relative;
}

@media (min-width: 768px),
print {
    .document_case {
        width: 90px;
    }
}

.document_contract_first {
    padding-right: 20px;
    position: relative;
}

@media (min-width: 768px),
print {
    .document_contract_first {
        width: calc(100% - 90px);
    }
}

.document_contract_first::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #928576;
    content: "\f078";
    font-size: 1.2rem;
    padding-left: 8px;
    position: absolute;
    right: 0;
    top: 0;
}

.document_list {
    display: none;
}

@media (min-width: 768px),
print {
    .document_list {
        padding-left: 90px;
    }
}

.document_list li {
    padding-top: 2px;
}

.document_contract_name,
.document_contract_number,
.document_contract_id {
    display: inline-block;
    padding-right: 10px;
    position: relative;
}

.document_contract_number {
    padding-right: 5px;
}

.document_contract_id a {
    color: #333;
    text-decoration: none;
}

.document_contract_id::before {
    content: " (ID:";
}

.document_contract_id::after {
    content: ")";
}

.doc_modal_content_inner {
    max-width: 1000px;
}

@media (min-width: 768px),
print {
    .doc_modal_content_inner .modal-body {
        overflow: hidden;
    }
}

.doc_refine_calender {
    padding: 15px 0;
    width: 100%;
}

.doc_refine_calender .doc_refine_calender_box {
    margin-top: 10px;
}

@media (max-width: 767px) {
    .doc_refine_calender .doc_refine_calender_box {
        padding: 0 15px;
    }
}

.doc_refine_calender .doc_refine_calender_box:first-child {
    margin-top: 0;
}

@media (min-width: 768px),
print {
    .invoice_refine_calender .doc_refine_calender_lbl {
        text-align: right;
        width: 135px;
    }
}

@media (min-width: 768px),
print {
    .doc_refine_calender_box {
        align-items: center;
        display: flex;
        justify-content: center;
    }
}

.doc_refine_calender_box .contract_dtl_calender {
    max-width: 435px;
}

@media (min-width: 768px),
print {
    .doc_refine_calender_box .contract_dtl_calender input {
        padding: 6px 15px;
    }
}

@media (max-width: 767px) {
    .doc_refine_calender_box .contract_dtl_calender input {
        padding: 6px 10px;
    }
}

.doc_refine_calender_lbl {
    color: #928576;
    font-weight: bold;
}

@media (min-width: 768px),
print {
    .doc_refine_calender_lbl {
        padding-right: 25px;
        text-align: right;
    }
}

@media (max-width: 767px) {
    .doc_refine_calender_lbl {
        padding-bottom: 4px;
    }
}

@media (min-width: 768px),
print {

    .doc_column_checkbox,
    .invoice_column_checkbox {
        display: flex;
        flex: 1 1 auto;
        justify-content: space-between;
    }

    .doc_column_checkbox .doc_column_block_cat,
    .invoice_column_checkbox .doc_column_block_cat {
        width: 35%;
    }

    .doc_column_checkbox .doc_column_block_id,
    .invoice_column_checkbox .doc_column_block_id {
        width: 25%;
    }

    .doc_column_checkbox .doc_column_block_room,
    .invoice_column_checkbox .doc_column_block_room {
        flex: 1 1 0%;
    }

    .doc_column_checkbox .doc_column_block_destination,
    .invoice_column_checkbox .doc_column_block_destination {
        width: 26%;
    }

    .doc_column_checkbox .invoice_column_block_billingnum,
    .doc_column_checkbox .invoice_column_block_contractnum,
    .invoice_column_checkbox .invoice_column_block_billingnum,
    .invoice_column_checkbox .invoice_column_block_contractnum {
        width: 21%;
    }
}

.doc_column_checkbox .doc_column_block:first-child,
.invoice_column_checkbox .doc_column_block:first-child {
    border: none;
}

@media (min-width: 768px),
print {
    .doc_column_checkbox {
        height: calc(100% - 64px);
    }
}

@media (min-width: 768px),
print {
    .invoice_column_checkbox {
        height: calc(100% - 108px);
    }
}

@media (min-width: 768px),
print {
    .doc_column_block {
        border-left: 1px solid #e3e0dd;
    }
}

@media (max-width: 767px) {
    .doc_column_block {
        border-top: 1px solid #e3e0dd;
        width: 100%;
    }
}

.doc_column_block .mber_checkbox {
    display: block;
}

@media (min-width: 768px),
print {
    .doc_column_block .mber_checkbox {
        padding: 13px 0 13px 10px;
    }
}

@media (max-width: 767px) {
    .doc_column_block .mber_checkbox {
        padding: 5px 0 15px 5px;
    }
}

.doc_column_block .mber_checkbox li {
    width: 100%;
}

@media (max-width: 767px) {
    .doc_column_block .mber_checkbox li {
        margin-bottom: 0;
    }
}

.doc_column_block .mber_checkbox li label {
    border: none;
    flex-wrap: wrap;
    font-size: 1.4rem;
    height: auto;
}

@media (min-width: 768px),
print {
    .doc_column_block .mber_checkbox li label {
        margin-bottom: 2px;
        padding-top: 5px;
    }
}

@media (max-width: 767px) {
    .doc_column_block .mber_checkbox li label {
        padding-top: 7px;
    }

    .doc_column_block .mber_checkbox li label br {
        display: none;
    }
}

@media (min-width: 768px),
print {
    .doc_column_wrap_checklist {
        display: block !important;
        flex: 1 1 auto;
        height: calc(100% - 40px);
        overflow-x: hidden;
        overflow-y: auto;
        position: relative;
    }
}

@media (max-width: 767px) {
    .doc_column_wrap_checklist {
        display: none;
    }
}

.doc_column_block .mber_checkbox li input:checked+label {
    background: none;
    border: none;
}

.doc_column_ttl,
.doc_column_ttl_sp {
    background: #928576;
    color: #fff;
    cursor: pointer;
    font-weight: bold;
    position: relative;
    width: 100%;
}

@media (min-width: 768px),
print {

    .doc_column_ttl,
    .doc_column_ttl_sp {
        padding: 9px 10px 9px 20px;
    }
}

@media (max-width: 767px) {

    .doc_column_ttl,
    .doc_column_ttl_sp {
        padding: 9px 10px 9px 15px;
    }
}

@media (max-width: 767px) {
    .doc_column_ttl {
        display: none !important;
    }
}

.doc_column_ttl::before,
.doc_column_ttl::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #fff;
    font-size: 1.7rem;
    position: absolute;
    right: 10px;
}

.doc_column_ttl::before {
    content: "\f0d8";
    top: 1px;
}

.doc_column_ttl::after {
    content: "\f0d7";
}

.doc_column_ttl.doc_column_sort_asc::after {
    color: #cbc5bf;
}

.doc_column_ttl.doc_column_sort_desc::before {
    color: #cbc5bf;
}

@media (min-width: 768px),
print {
    .doc_column_ttl_sp {
        display: none !important;
    }
}

.doc_column_ttl_sp::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #fff;
    content: "\f078";
    font-size: 1.2rem;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.doc_column_ttl_sp.active::after {
    content: "\f077";
}

.doc_column_ttl_sp02 {
    display: block !important;
}

.doc_col_roomspn {
    display: inline-block;
    padding-right: 15px;
}

.doc_col_issuerrom {
    display: inline-block;
}

.doc_column_sort {
    margin: 15px 15px 5px;
}

@media (min-width: 768px),
print {
    .doc_column_sort {
        display: none !important;
    }
}

.doc_column_sort select {
    padding: 6px 10px;
}

/* 以下システム側で追加 */
.ajax_loading {
    background: url("/assets/image/common/loading.gif") center center no-repeat;
    height: 70px;
}

app-root {
    flex: 1 1 auto;
}

.contract_term_ttl--not_agreed {
    background: #f08200 !important;
}

.enhanced_character {
    font-weight: bold;
    color: #f08200;
}

.no_file_icon {
    display: none;
}

@media (min-width: 768px),
print {
    .cmn_box_viewall .contract_dtl_option_part:first-child {
        padding-top: 0;
    }
}

@media (max-width: 767px) {
    .cmn_box_viewall {
        padding: 0 15px 20px;
    }
}

.cmn_box_viewall .contract_dtl_option_part:nth-child(n + 11) {
    display: none;
}

.cmn_box_viewall.active .contract_dtl_option_part:nth-child(n + 11) {
    display: flex;
}

button.ui-datepicker-current {
    display: none;
}

.contract_required_error {
    font-weight: bold;
    font-size: 15px;
}

.detail_link {
    font-size: 15px;
}

.bold {
    font-weight: bold;
}

.contract_purpose_other_input input {
    width: 50% !important;
}

.contract_purpose_other_input label {
    font-size: 1.6rem;
}

.invoice_tbl.mber_tbl td.line_through {
    text-decoration: line-through;
}

.input-group {
    position: relative;
    display: flex;
    align-items: center;
}

.input-group .input-right-icon {
    position: absolute;
    right: 8px;
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #928576;
    font-weight: 400;
    font-size: 1.6rem;
}

.input-group .password-input {
    padding-right: calc(1.6rem + 8px + 15px);
}

ul>li.emphasis {
    font-weight: bold;
    color: #e36c00;
}

a[href^="http"]:after,
a[href^="//"]:after {
    margin: 0 0 0 3px;
    font-family: "Font Awesome 5 Free";
    content: "\f35d";
    font-weight: 900;
}

a[href^="https://mypage.atinn.jp"]:after,
a[href^="http://localhost"]:after {
    margin: inherit;
    font-family: inherit;
    content: "";
    font-weight: inherit;
}

.rental-housing-insurance-guide--important {
    color: #e13510;
    font-weight: bold;
}

.rental-housing-insurance-guide--company {
    color: #928576;
    font-weight: bold;
}

.global-translate {
    position: absolute;
    bottom: 4rem;
    left: 4rem;
}

/* google翻訳側で用意されているパーツを一部非表示 */
.goog-te-banner-frame {
    display: none !important;
}

#goog-gt-tt {
    display: none !important;
}

.goog-text-highlight {
    background-color: #00000000 !important;
    box-shadow: none !important;
}

/* 退去確認ダイアログ */
.moveout-confirm-modal {
    display: flex;
}

.moveout-confirm-keycount {
    margin-right: 10px;
    width: 100px;
}

.move_out_message {
    margin-right: 10px;
}

.moveout-confirm-keys {
    display: flex;
    align-items: center;
}

/* 状態をあらわすアイコン */
.status-image {
    height: 25px;
    width: 25px;
    margin: 1px 1px 3px 3px;
}

/* 状態をあらわす＠ラベル型 */
.status-label {
    display: inline-block;
    position: relative;
    height: 25px;
    line-height: 25px;
    box-sizing: border-box;
    padding: 0 6px;
    margin: 1px 1px 3px 3px;
    border-radius: 6px;
    color: #fff;
    font-weight: normal;
    text-align: center;
}

.status-label:not([class*="bgcolor-"]) {
    background: #999;
}

.status-label:before,
.status-label:after {
    display: block;
    position: absolute;
}

/* 利用者へのコメント */
.enduser-comment {
    align-items: left;
    display: flex;
    justify-content: left;
    padding: 3px;
}

@media (max-width: 767px) {
    .modal-footer {
        min-height: 68px;
        padding: 15px 15px 5px;
    }
}

/* 青 シアン*/
.bgcolor-blue1 {
    background-color: #00a1e9 !important;
}

.bgcolor-blue2 {
    background-color: #74c5e8 !important;
}

.bgcolor-blue3 {
    background-color: #c5dde8 !important;
}

/* 緑 若竹色*/
.bgcolor-green1 {
    background-color: #51a778 !important;
}

.bgcolor-green2 {
    background-color: #68be8d !important;
}

.bgcolor-green3 {
    background-color: #9dd4b2 !important;
}

/* ローディング */
.loading-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}

.loading-backdrop {
    position: absolute;
    width: 100%;
    height: 100%;
}

.loading-spinner-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

.loading-spinner {
    width: 48px;
    height: 48px;
    margin: 0 auto 10px;
}

.loading-spinner img {
    display: block;
    margin: 0 auto;
}

.loading-text {
    color: #fff;
    font-size: 16px;
}

.attention-text {
    color: red;
}