@charset "UTF-8";
/**
細かいやつ
**/
.text-link-black, .text-link-white {
    opacity: 1;
}

.text-link-black:hover, .text-link-white:hover, .hovered.text-link-black, .hovered.text-link-white {
    opacity: 0.6;
}

.btn-round:hover, .btn-rectangle.middle:hover, .hovered.btn-round, .hovered.btn-rectangle.middle {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn-circle:hover, .list-company.hovered-shadow-lg:hover, .hovered.btn-circle, .hovered.list-company.hovered-shadow-lg {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn-big, .btn-circle {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    outline-width: 0px;
}

.btn-big:hover, .btn-circle:hover, .hovered.btn-big, .hovered.btn-circle {
    outline-width: 3px;
}

.text-link-black, .text-link-white, .btn-round, .btn-rectangle, .btn-big, .btn-circle {
    cursor: pointer;
}

.link-arrow, .btn-rectangle.middle, .btn-big {
    position: relative;
}

.link-arrow::after, .btn-rectangle.middle::after, .btn-big::after {
    content: ">";
    position: absolute;
    right: 1rem;
    -webkit-transform: scale(0.5, 1);
    transform: scale(0.5, 1);
}

.icon-lg.link-arrow::after, .icon-lg.btn-rectangle.middle::after, .icon-lg.btn-big::after {
    font-size: 2em;
}

.h0 {
    font-size: 2rem;
    font-weight: 600;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(92%, transparent), color-stop(0%, #D40000));
    background: linear-gradient(transparent 92%, #D40000 0%);
    padding: 0 0 0.25rem;
    line-height: 1.8;
}

.h2 {
    font-size: 2.1rem;
    font-weight: 600;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, black));
    background: linear-gradient(transparent 93%, black 0%);
    padding: 0 0 0.25rem;
    line-height: 1.6;
}

.h3 {
    font-size: 1.8rem;
    color: #d83232;
    font-weight: 500;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, black));
    background: linear-gradient(transparent 93%, black 0%);
    padding: 0 0 0.25rem;
    position: relative;
    line-height: 1.6;
}

.h3::after {
    content: "";
    position: absolute;
    height: 100%;
    width: 2em;
    top: 0;
    left: 0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, #d83232));
    background: linear-gradient(transparent 93%, #d83232 0%);
}

.h3-line {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, black));
    background: linear-gradient(transparent 93%, black 0%);
    padding: 0 0 0.25rem;
    position: relative;
}

.h3-line::after {
    content: "";
    position: absolute;
    height: 100%;
    width: 2em;
    top: 0;
    left: 0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, #d83232));
    background: linear-gradient(transparent 93%, #d83232 0%);
}

.h3-line i {
    position: relative;
    top: 0.4rem;
    margin-right: 0.5rem;
}

.h4 {
    font-size: 1.8rem;
    color: black;
    font-weight: 500;
    background: -webkit-gradient(linear, left top, left bottom, from(#D40000), color-stop(7%, #D40000), color-stop(7%, transparent));
    background: linear-gradient(#D40000 0%, #D40000 7%, transparent 7%);
    padding: 0 0 0.25rem;
    position: relative;
    line-height: 1.6;
}

.h4::after {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, #D40000));
    background: linear-gradient(transparent 93%, #D40000 0%);
}

.h5 {
    font-size: 1.5rem;
    font-weight: bold;
    color: white;
    background-color: #D40000;
    border-radius: 2rem;
    padding: 0.75rem 1rem;
}

.h6 {
    position: relative;
    font-size: 1.5rem;
    font-weight: bold;
    color: black;
    padding-left: 2rem;
}

.h6::after {
    position: absolute;
    content: "";
    left: 0rem;
    height: 1.1rem;
    width: 1rem;
    border-width: 0.8rem 1.2rem;
    border-color: transparent;
    border-left-color: #d83232;
    border-style: solid;
}

.h7 {
    left: 0.3rem;
    position: relative;
    font-size: 1.2rem;
    font-weight: bold;
    color: black;
    padding-left: 2rem;
}

.h7::after {
    position: absolute;
    content: "";
    top: 0.8rem;
    left: 0.1rem;
    height: 0.6rem;
    width: 0.6rem;
    border-width: 0.6rem 0.5rem;
    border-color: transparent;
    border-top-color: #d83232;
    border-style: solid;
}

.marker {
    line-height: 1.4;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #ffbb7d));
    background: linear-gradient(transparent 70%, #ffbb7d 0%);
}

.underline {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, black));
    background: linear-gradient(transparent 93%, black 0%);
    padding: 0 0 0.25rem;
    line-height: 1.8;
}

.breakthrough {
    position: relative;
    line-height: 1.8;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(53%, transparent), color-stop(53%, black), color-stop(58%, black), color-stop(58%, transparent));
    background: linear-gradient(transparent 53%, black 53%, black 58%, transparent 58%);
}

.link {
    color: #D40000;
    padding: 0.25rem 0 0.25rem;
    position: relative;
    line-height: 1.6;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, #D40000));
    background: linear-gradient(transparent 93%, #D40000 0%);
}

.ccm-table.table {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border: 1px solid #d2d2d2;
    padding: 0 1.6rem;
}

.ccm-table.table .tr {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-top: 1px solid #d2d2d2;
    padding: 1.6rem 0;
}

.ccm-table.table .tr:first-child {
    border: none;
}

.ccm-table.table .tr .th {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    max-width: 12rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.2rem;
}

.ccm-table.table .tr .td {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    max-width: 40vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding-left: 1.6em;
}

.red {
    color: #d83232;
}

.orange {
    color: orange;
}

.yellow {
    color: #c4ad43;
}

.green {
    color: #43c48f;
}

.blue {
    color: #324dd8;
}

.gray {
    color: #7d7d7d;
}

.bg-red {
    background-color: #d83232;
}

.bg-orange {
    background-color: orange;
}

.bg-yellow {
    background-color: #c4ad43;
}

.bg-green {
    background-color: #43c48f;
}

.bg-blue {
    background-color: #324dd8;
}

.bg-gray {
    background-color: #7d7d7d;
}

.bg-skyblue {
    background-color: #42c1c4;
}

.bg-wine {
    background-color: #ca4171;
}

.primary-color {
    color: #D40000;
}

.primary-light {
    color: #f3cba6;
}

.primary-lighter {
    color: #ffe181;
}

.primary-lightest {
    color: #ffffcf;
}

.white {
    color: white;
}

.block {
    display: block;
}

.inline {
    display: inline;
}

.inline-block {
    display: inline-block;
}

.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.flex-center, .btn-round, .btn-big, .btn-circle, .next-rectangle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.mr-2 {
    margin-right: 0.5rem;
}

.mr-4 {
    margin-right: 1rem;
}

.m-0 {
    margin: 0;
}

.m-2 {
    margin: 0.5rem;
}

.m-3 {
    margin: 0.75rem;
}

.m-4 {
    margin: 1rem;
}

.m-6 {
    margin: 1.5rem;
}

.m-8 {
    margin: 2rem;
}

.px-2 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.p-0 {
    padding: 0;
}

.p-2 {
    padding: 0.5rem;
}

.p-3 {
    padding: 0.75rem;
}

.p-4 {
    padding: 1rem;
}

.p-6 {
    padding: 1.5rem;
}

.p-8 {
    padding: 2rem;
}

.my-4 {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.round-xs, .btn-rectangle, .ccm-form .input.checkbox input[type="checkbox"] + label, .ccm-form .input.checkbox input[type="checkbox"] + label::before {
    border-radius: 2px;
}

.round-sm {
    border-radius: 5px;
}

.round-md {
    border-radius: 0.5rem;
}

.shadow, .btn-round, .btn-rectangle.middle {
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}

.shadow-lg, .btn-circle, .list-company.hovered-shadow-lg, .list-company {
    -webkit-box-shadow: 1px 1px 20px #bdbdbd;
    box-shadow: 1px 1px 20px #bdbdbd;
}

.hover-shadow-0:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.cursor-pointer {
    cursor: pointer;
}

.text-2xs {
    font-size: 0.61rem;
    line-height: 1rem;
}

.text-xs {
    font-size: 0.75rem;
    line-height: 1rem;
}

.text-sm {
    font-size: 0.833rem;
    line-height: 1.25rem;
}

.text-md {
    font-size: 0.889rem;
    line-height: 1.35rem;
}

.text-base {
    font-size: 1rem;
    line-height: 1.5rem;
}

.text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem;
}

.text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
}

.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
}

.text-3xl {
    font-size: 1.25rem;
    line-height: 2.25rem;
}

.font-thin {
    font-weight: 100;
}

.font-extralight {
    font-weight: 200;
}

.font-light {
    font-weight: 300;
}

.font-normal {
    font-weight: 400;
}

.font-medium {
    font-weight: 500;
}

.font-semibold {
    font-weight: 600;
}

.font-bold {
    font-weight: 700;
}

.font-extrabold {
    font-weight: 800;
}

.font-black {
    font-weight: 900;
}

.flex-1 {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.flex-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.flex-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.flex-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.w-full {
    width: 100%;
}

.absolute {
    position: absolute;
}

.relative {
    position: relative;
}

.static {
    position: static;
}

.items-start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.items-end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.items-streach {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.items-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.justify-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.justify-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.tracking-wide {
    letter-spacing: 0.025em;
}

.tracking-wider {
    letter-spacing: 0.05em;
}

.tracking-widest {
    letter-spacing: 0.1em;
}

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

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}

.hidden {
    display: none;
}

@media screen and (max-width: 768px) {
    .sp-m-0 {
        margin: 0;
    }
    .sp-m-4 {
        margin: 1rem;
    }
    .sp-mx-auto {
        margin-left: auto;
        margin-right: auto;
    }
    .sp-p-0 {
        padding: 0;
    }
    .sp-text-2xs {
        font-size: 0.61rem;
        line-height: 1rem;
    }
    .sp-text-xs {
        font-size: 0.75rem;
        line-height: 1rem;
    }
    .sp-text-sm {
        font-size: 0.833rem;
        line-height: 1.25rem;
    }
    .sp-text-md {
        font-size: 0.889rem;
        line-height: 1.35rem;
    }
    .sp-text-base {
        font-size: 1rem;
        line-height: 1.5rem;
    }
    .sp-text-lg {
        font-size: 1.125rem;
        line-height: 1.75rem;
    }
    .sp-text-xl {
        font-size: 1.25rem;
        line-height: 1.75rem;
    }
    .sp-text-2xl {
        font-size: 1.5rem;
        line-height: 2rem;
    }
    .sp-text-3xl {
        font-size: 1.25rem;
        line-height: 2.25rem;
    }
    .sp-text-left {
        text-align: left;
    }
    .sp-text-cente4r {
        text-align: center;
    }
    .sp-text-right {
        text-align: right;
    }
    .sp-flex-wrap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .sp-justify-between {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .sp-hidden {
        display: none;
    }
    .sp-block {
        display: block;
    }
    .sp-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .sp-w-full {
        width: 100%;
    }
    .sp-w-half {
        width: 50%;
    }
}

html,
body {
    font-size: 18px;
}

.font-gothic {
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-weight: normal;
}

.bg-white {
    background-color: white;
}

.bg-orange,
.bg-primary-color {
    background-color: #D40000;
}

.bg-lined {
    background-color: #fff7ed;
    background-image: repeating-linear-gradient(-45deg, #ebe4da, #ebe4da 1px, transparent 0, transparent 3px);
}

.bg-dark {
    background-color: #313131;
}

.bg-cube {
    background-image: url("/img/ccm/bg-box-gradation.png");
    background-repeat: no-repeat;
}

.break-wrapper {
    width: 100%;
}

@media screen and (max-width: 1900px) {
    .break-wrapper {
        margin-left: auto;
        margin-right: auto;
        max-width: 1280px;
    }
}

@media screen and (max-width: 1280px) {
    .break-wrapper {
        margin-left: auto;
        margin-right: auto;
        max-width: 980px;
    }
}

@media screen and (max-width: 980px) {
    .break-wrapper {
        margin-left: auto;
        margin-right: auto;
        max-width: 768px;
    }
}

@media screen and (max-width: 768px) {
    .break-wrapper {
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }
}

.w-max-4 {
    max-width: 100vw;
    max-width: calc(100vw - 1rem);
}

.text-link-black {
    color: black;
    text-decoration: underline;
}

.text-link-white {
    color: white;
}

.btn-round {
    border-radius: 3px;
    outline: 2px solid transparent;
    background-color: #D40000;
    color: white;
    padding: 0.5rem 2em;
    outline: 3px solid transparent;
}

.btn-round:hover, .btn-round.hovered {
    background: white;
    outline-color: #D40000;
    color: #D40000;
}

.btn-round.red {
    background-color: #d83232;
    outline: 3px solid transparent;
}

.btn-round.red:hover, .btn-round.red.hovered {
    background: white;
    outline-color: #d83232;
    color: #d83232;
}

.btn-round.gradation.red-orange {
    background: #fb664d;
    background: linear-gradient(66deg, #fb664d 0%, #f18d27 100%);
    outline: 3px solid transparent;
}

.btn-round.gradation.red-orange:hover, .btn-round.gradation.red-orange.hovered {
    background: white;
    outline-color: #D40000;
    color: #D40000;
}

.btn-round.gradation.navy-dark {
    background: #414d5a;
    background: linear-gradient(66deg, #414d5a 0%, #2f3945 100%);
    outline: 3px solid transparent;
}

.btn-round.gradation.navy-dark:hover, .btn-round.gradation.navy-dark.hovered {
    background: white;
    outline-color: #313b46;
    color: #313b46;
}

.btn-rectangle {
    background-color: #D40000;
    color: white;
    padding: 1em;
}

.btn-rectangle:hover, .btn-rectangle.hovered {
    color: #f3cba6;
}

.btn-rectangle.middle {
    padding-right: 4rem;
    line-height: 1.5;
    font-weight: 600;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    outline: 2px solid transparent;
}

.btn-big {
    color: white;
    font-size: 2rem;
    width: 100%;
    padding: 1rem 2rem;
    height: 5rem;
}

.btn-circle {
    color: white;
    font-size: 1.75rem;
    font-weight: bold;
    width: 100%;
    padding: 1rem 2rem;
    height: 5rem;
    border-radius: 5rem;
}

.btn-circle.white {
    background: #fff;
    color: #D40000;
    outline: 3px solid transparent;
}

.btn-circle.white:hover, .btn-circle.white.hovered {
    background: #D40000;
    outline-color: #fff;
    color: #fff;
}

.btn-circle.white:hover, .btn-circle.white.hovered {
    outline: none;
}

.btn-circle.medium {
    font-size: 1.5rem;
    height: 4rem;
}

.list-company {
    background: #fff;
    border-radius: 1rem;
    overflow: hidden;
}

.list-company .top-image img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.list-company .company-info {
    padding: 2rem 1rem;
}

.list-company .company-info .catch-copy {
    font-weight: bold;
    font-size: 1.25rem;
    margin-bottom: 1rem;
}

.list-company .company-info .region {
    font-size: 1rem;
    position: relative;
    padding-left: 1rem;
}

.list-company .company-info .region i.ccm {
    position: absolute;
    top: -0.25em;
    left: -0.5rem;
}

.list-company .company-info .company-name {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 1rem;
}

.list-company .company-info .company-name .logo {
    border: 1px solid #eeeeee;
    border-radius: 0.4rem;
    width: 4rem;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: 1rem;
}

.list-company .company-info .company-name .logo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.next-rectangle {
    width: 4rem;
    height: 4rem;
    color: white;
    background-color: black;
    border: 3px solid black;
    border-radius: 2px;
    position: relative;
}

.next-rectangle::after {
    content: "";
    width: 1.2rem;
    height: 1.2rem;
    border: 2px solid;
    border-color: white white black black;
    -webkit-transform: rotate(45deg) translate(-0.75em, 0.75em);
    transform: rotate(45deg) translate(-0.75em, 0.75em);
    right: 0.5em;
    position: absolute;
}

.next-rectangle:hover, .next-rectangle.hovered {
    background-color: white;
    color: black;
}

.next-rectangle:hover::after, .next-rectangle.hovered::after {
    -webkit-transform: rotate(225deg) translate(0.75em, -0.75em);
    transform: rotate(225deg) translate(0.75em, -0.75em);
}

.gradation.red-orange {
    background-color: #fb664d;
    background-image: linear-gradient(66deg, #fb664d 0%, #f18d27 100%);
    outline: 3px solid transparent;
}

.gradation.red-orange:hover, .gradation.red-orange.hovered {
    background: white;
    outline-color: #D40000;
    color: #D40000;
}

.gradation.navy-dark {
    background-color: #414d5a;
    background-image: linear-gradient(66deg, #414d5a 0%, #2f3945 100%);
    outline: 3px solid transparent;
}

.gradation.navy-dark:hover, .gradation.navy-dark.hovered {
    background: white;
    outline-color: #313b46;
    color: #313b46;
}

.gradation.sky-blue {
    background-color: #00aae4;
    background-image: -webkit-gradient(linear, left top, right top, from(#00aae4), to(#0051d2));
    background-image: linear-gradient(90deg, #00aae4 0%, #0051d2 100%);
    outline: 3px solid transparent;
}

.gradation.sky-blue:hover, .gradation.sky-blue.hovered {
    background: white;
    outline-color: #2144ce;
    color: #2144ce;
}

.gradation.green-yellow {
    background-color: #00b68d;
    background-image: -webkit-gradient(linear, left top, right top, from(#00b68d), to(#8fd956));
    background-image: linear-gradient(90deg, #00b68d 0%, #8fd956 100%);
    outline: 3px solid transparent;
}

.gradation.green-yellow:hover, .gradation.green-yellow.hovered {
    background: white;
    outline-color: #00b88d;
    color: #00b88d;
}

.gradation.sky-blue {
    background-color: #00aae4;
    background-image: -webkit-gradient(linear, left top, right top, from(#3eb6ea), to(#2457dc));
    background-image: linear-gradient(90deg, #3eb6ea 0%, #2457dc 100%);
    outline: 3px solid transparent;
}

.gradation.sky-blue:hover, .gradation.sky-blue.hovered {
    background: white;
    outline-color: #2144ce;
    color: #2144ce;
}

.bg-gradation.red-orange {
    background-color: #fb664d;
    background-image: linear-gradient(66deg, #fb664d 0%, #f18d27 100%);
}

.bg-gradation.navy-dark {
    background-color: #414d5a;
    background-image: linear-gradient(66deg, #414d5a 0%, #2f3945 100%);
}

.bg-gradation.sky-blue {
    background-color: #00aae4;
    background-image: -webkit-gradient(linear, left top, right top, from(#00aae4), to(#0051d2));
    background-image: linear-gradient(90deg, #00aae4 0%, #0051d2 100%);
}

.bg-gradation.green-yellow {
    background-color: #00b68d;
    background-image: -webkit-gradient(linear, left top, right top, from(#00b68d), to(#8fd956));
    background-image: linear-gradient(90deg, #00b68d 0%, #8fd956 100%);
}

.bg-gradation.sky-blue {
    background-color: #00aae4;
    background-image: -webkit-gradient(linear, left top, right top, from(#3eb6ea), to(#2457dc));
    background-image: linear-gradient(90deg, #3eb6ea 0%, #2457dc 100%);
}

.bg-text-clip {
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.ccm-form input::-webkit-input-placeholder,
.ccm-form textarea::-webkit-input-placeholder,
.ccm-form select::-webkit-input-placeholder {
    color: #b4b4b4;
    font-weight: 500;
}

.ccm-form input:-ms-input-placeholder,
.ccm-form textarea:-ms-input-placeholder,
.ccm-form select:-ms-input-placeholder {
    color: #b4b4b4;
    font-weight: 500;
}

.ccm-form input::-ms-input-placeholder,
.ccm-form textarea::-ms-input-placeholder,
.ccm-form select::-ms-input-placeholder {
    color: #b4b4b4;
    font-weight: 500;
}

.ccm-form input::placeholder,
.ccm-form textarea::placeholder,
.ccm-form select::placeholder {
    color: #b4b4b4;
    font-weight: 500;
}

.ccm-form .input.checkbox input[type="checkbox"] {
    display: none;
}

.ccm-form .input.checkbox input[type="checkbox"] + label {
    font-weight: normal;
    position: relative;
    outline: 1px solid #bdbdbd;
    padding: 0.2em 0.45em;
    background: white;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.ccm-form .input.checkbox input[type="checkbox"] + label::before {
    content: "";
    background: white;
    outline: 1px solid black;
    display: block;
    height: 0.8em;
    width: 0.8em;
    margin-right: 0.5em;
}

.ccm-form .input.checkbox input[type="checkbox"]:focus + label,
.ccm-form .input.checkbox input[type="checkbox"].focused + label {
    outline-color: #D40000;
}

.ccm-form .input.checkbox input[type="checkbox"]:checked + label,
.ccm-form .input.checkbox input[type="checkbox"].checked + label {
    outline-width: 2px;
    outline-color: #D40000;
}

.ccm-form .input.checkbox input[type="checkbox"]:checked + label::after,
.ccm-form .input.checkbox input[type="checkbox"].checked + label::after {
    content: "";
    position: absolute;
    top: 0.2em;
    left: 0.65em;
    width: 0.45em;
    height: 0.9em;
    border-style: solid;
    border-width: 0 2px 2px 0;
    border-color: transparent #D40000 #D40000 transparent;
    -webkit-transform: rotate(45deg) skew(5deg, 5deg);
    transform: rotate(45deg) skew(5deg, 5deg);
}

.ccm-form .input.radio {
    position: relative;
    left: -0.6rem;
}

.ccm-form .input.radio fieldset {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.ccm-form .input.radio legend {
    display: none;
}

.ccm-form .input.radio input[type="radio"] {
    display: none;
}

.ccm-form .input.radio input[type="radio"] + label {
    position: relative;
    padding: 0.3rem 0.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.ccm-form .input.radio input[type="radio"] + label::before {
    content: "";
    background: white;
    outline: 1px solid #bdbdbd;
    display: block;
    height: 1rem;
    width: 1rem;
    border-radius: 1rem;
    margin-right: 0.5em;
}

.ccm-form .input.radio input[type="radio"]:focus + label::before,
.ccm-form .input.radio input[type="radio"].focused + label::before {
    outline-color: #D40000;
}

.ccm-form .input.radio input[type="radio"]:checked + label::after,
.ccm-form .input.radio input[type="radio"].checked + label::after {
    content: "";
    position: absolute;
    top: calc(50% - 0.25rem);
    left: 0.85rem;
    background: #D40000;
    display: block;
    height: 0.5rem;
    width: 0.5rem;
    border-radius: 1rem;
    margin-right: 0.5em;
}

.ccm-form .input.text label, .ccm-form .input.email label, .ccm-form .input.tel label, .ccm-form .input.textarea label {
    display: none;
}

.ccm-form .input.text input[type="text"],
.ccm-form .input.email input[type="email"],
.ccm-form .input.tel input[type="tel"],
.ccm-form .input.date input[type="date"],
.ccm-form .input.password input[type="password"],
.ccm-form .input.textarea textarea {
    font-size: 16px;
    outline: 1px solid #898989;
    border-radius: 5px;
    padding: 0.2rem 0.5rem;
    caret-color: #D40000;
}

.ccm-form .input.text input[type="text"]:focus,
.ccm-form .input.email input[type="email"]:focus,
.ccm-form .input.tel input[type="tel"]:focus,
.ccm-form .input.date input[type="date"]:focus,
.ccm-form .input.password input[type="password"]:focus,
.ccm-form .input.textarea textarea:focus {
    outline-color: #D40000;
    outline-width: 2px;
}

.ccm-form .input.text input[type="text"],
.ccm-form .input.email input[type="email"],
.ccm-form .input.tel input[type="tel"],
.ccm-form .input.date input[type="date"],
.ccm-form .input.password input[type="password"] {
    min-height: 2rem;
}

.ccm-paginate {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.ccm-paginate .paginate-arrow {
    padding: 0.8rem 1.1rem;
    background-color: #fff;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 7px #bdbdbd;
    box-shadow: 0 0 7px #bdbdbd;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
}

.ccm-paginate .paginate-arrow i {
    height: 18px;
    font-size: 1.4rem;
}

.ccm-paginate .paginate-arrow:hover {
    color: #fff;
    background-color: #D40000;
}

.ccm-paginate .paginate-arrow:hover a {
    color: #fff;
}

.ccm-paginate .paginate-arrow:hover a:hover {
    color: #fff;
}

.ccm-paginate .prev {
    margin-right: 1.2rem;
}

.ccm-paginate .next {
    margin-left: 1.2rem;
}

.ccm-paginate .m-page-num {
    width: 2.5rem;
    height: 2.5rem;
    text-align: center;
    line-height: 2.5rem;
    background-color: #fff;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 7px #bdbdbd;
    box-shadow: 0 0 7px #bdbdbd;
    margin: 0 0.5rem;
    font-weight: bold;
    color: #D40000;
    cursor: pointer;
}

.ccm-paginate .m-page-num a {
    width: 2.5rem;
    height: 2.5rem;
    display: block;
    border-radius: 50%;
}

.ccm-paginate .m-page-num.m-page-active {
    background-color: #D40000;
    color: #fff;
}

.ccm-paginate .m-page-num:hover {
    color: #fff;
    background-color: #D40000;
}

.ccm-paginate .m-page-num:hover a {
    color: #fff;
}

.ccm-paginate .m-page-num:hover a:hover {
    color: #fff;
}

@media screen and (max-width: 500px) {
    .ccm-paginate .paginate-arrow {
        padding: 0.6rem 0.9rem;
    }
    .ccm-paginate .prev {
        margin-right: 0.5rem;
    }
    .ccm-paginate .next {
        margin-left: 0.5rem;
    }
    .ccm-paginate .m-page-num {
        margin: 0 0.3rem;
        width: 2rem;
        height: 2rem;
        line-height: 2rem;
    }
    .ccm-paginate .m-page-num a {
        width: 2rem;
        height: 2rem;
    }
}

.ccm-sns-btn {
    margin-top: 2.5rem;
}

.ccm-sns-btn .sns-title {
    position: relative;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
    font-size: 1rem;
}

.ccm-sns-btn .sns-title:before, .ccm-sns-btn .sns-title:after {
    position: relative;
    display: inline-block;
    content: "";
    background: #000;
    width: 2px;
    height: 2rem;
    margin: 0 1rem;
    margin-top: -0.2rem;
    vertical-align: middle;
}

.ccm-sns-btn .sns-title:before {
    -webkit-transform: rotate(-35deg);
    transform: rotate(-35deg);
}

.ccm-sns-btn .sns-title:after {
    -webkit-transform: rotate(35deg);
    transform: rotate(35deg);
}

.ccm-sns-btn .footer-social-share {
    background: transparent;
    margin-top: 1.25rem;
}

.ccm-sns-btn .footer-social-share.default {
    width: 16rem;
    margin-top: 0.8rem;
}

.ccm-sns-btn .footer-social-share.default a {
    border: none;
}

.company-inner {
    width: 768px;
    margin: auto;
}

.company-inner .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

.company-inner .only-sp {
    display: none;
}

@media screen and (max-width: 768px) {
    .company-inner {
        max-width: 100%;
    }
    .company-inner .only-sp {
        display: block;
    }
}

.bg-red {
    background-color: #d83232;
}

.btn-big {
    width: 280px;
    margin: auto;
    font-size: 0.8rem;
    font-weight: bold;
    height: initial;
    -webkit-box-orient: initial;
    -webkit-box-direction: initial;
    -ms-flex-direction: initial;
    flex-direction: initial;
    padding: 0.5rem 2rem;
}

.btn-big i {
    margin-right: 0.5rem;
}

.btn-big .base {
    display: none;
}

.btn-big:hover .white {
    display: none;
}

.btn-big:hover .base {
    display: inline-block;
}

#ccm-company-header {
    padding-top: 1.6rem;
}

#ccm-company-header .company-info {
    margin-bottom: 0.4rem;
}

#ccm-company-header .company-info .company-header-logo img {
    width: 100px;
    height: auto;
}

#ccm-company-header .company-info .company-detail {
    padding: 0.5rem 1rem;
}

#ccm-company-header .company-info .company-detail .company-header-name {
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
    letter-spacing: 2px;
}

#ccm-company-header .company-info .company-detail .company-header-follow {
    padding: 0.2rem 0.6rem;
    display: inline-block;
    font-size: 0.7rem;
    border-radius: 15px;
    cursor: pointer;
    border: solid 1px #d83232;
}

#ccm-company-header .company-info .company-detail .company-header-follow.white {
    background: #d83232;
    color: #fff;
}

#ccm-company-header .company-info .company-detail .company-header-follow.white:hover {
    opacity: 0.6;
}

#ccm-company-header .company-info .company-detail .company-header-follow.red {
    color: #d83232;
    background-color: #fff;
}

#ccm-company-header .company-info .company-detail .company-header-follow.red i {
    margin-right: 0.3rem;
}

#ccm-company-header .company-header-nav {
    background-color: #fff;
    border-bottom: solid 2px #D40000;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
}

#ccm-company-header .company-header-nav .nav-content {
    color: #D40000;
    font-weight: bold;
    font-size: 0.7rem;
    position: relative;
    text-align: center;
    display: block;
    padding: 0.4rem 0.5rem 0rem 0.4rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-width: -webkit-max-content;
    min-width: -moz-max-content;
    min-width: max-content;
    cursor: pointer;
}

#ccm-company-header .company-header-nav .nav-content i {
    vertical-align: middle;
    margin-bottom: 4px;
    margin-right: 0.1rem;
}

#ccm-company-header .company-header-nav .nav-content i.white {
    display: none;
}

#ccm-company-header .company-header-nav .nav-content:not(:first-child):before {
    content: "";
    position: absolute;
    left: 1px;
    top: 11px;
    display: inline-block;
    width: 1px;
    height: 15px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #D40000;
    border-radius: 2px;
}

#ccm-company-header .company-header-nav .nav-content:hover {
    color: #fff;
    background-color: #D40000;
}

#ccm-company-header .company-header-nav .nav-content:hover i.base {
    display: none;
}

#ccm-company-header .company-header-nav .nav-content:hover i.white {
    display: inline-block;
}

#ccm-company-header .company-header-nav .nav-content:hover + a:before {
    display: none;
}

#ccm-company-header .company-header-nav .nav-content.active {
    color: #fff;
    background-color: #D40000;
}

#ccm-company-header .company-header-nav .nav-content.active i.base {
    display: none;
}

#ccm-company-header .company-header-nav .nav-content.active i.white {
    display: inline-block;
}

#ccm-company-header .company-header-nav .nav-content.active + a:before {
    display: none;
}

@media screen and (max-width: 768px) {
    #ccm-company-header {
        padding-top: 0;
    }
    #ccm-company-header .company-info {
        margin-bottom: 0;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    #ccm-company-header .company-info .company-header-logo {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
    }
    #ccm-company-header .company-info .company-header-logo img {
        width: 100%;
        height: auto;
    }
    #ccm-company-header .company-info .company-detail {
        -webkit-box-flex: 2;
        -ms-flex: 2;
        flex: 2;
    }
    #ccm-company-header .company-info .company-detail .company-header-name {
        font-size: 1.2rem;
    }
    #ccm-company-header .company-info .company-detail .company-header-follow {
        font-size: 0.8rem;
        font-weight: bold;
    }
    #ccm-company-header .company-header-nav {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        border-bottom: none;
    }
    #ccm-company-header .company-header-nav .nav-content {
        width: 50%;
        -webkit-box-flex: initial;
        -ms-flex: initial;
        flex: initial;
        min-width: -webkit-max-content;
        min-width: -moz-max-content;
        min-width: max-content;
        text-align: start;
        padding: 0.9rem 1rem 0.8rem 0.7rem;
    }
    #ccm-company-header .company-header-nav .nav-content .arrow {
        position: absolute;
        top: 17px;
        right: 1rem;
    }
    #ccm-company-header .company-header-nav .nav-content:not(:first-child):before {
        background: none;
    }
    #ccm-company-header .company-header-nav .nav-content:nth-child(even):before {
        content: "";
        position: absolute;
        left: 1px;
        top: 12px;
        display: inline-block;
        width: 1px;
        height: 30px;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        background-color: #D40000;
        border-radius: 2px;
    }
    #ccm-company-header .company-header-nav .nav-content:nth-last-child(n + 3):after {
        content: "";
        position: absolute;
        right: 0.7rem;
        bottom: 0px;
        display: inline-block;
        width: calc(100% - 1.3rem);
        height: 1px;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        background-color: #D40000;
        border-radius: 2px;
    }
    #ccm-company-header .company-header-nav .nav-content:nth-last-child(even):after {
        content: "";
        position: absolute;
        right: 0.7rem;
        bottom: 0px;
        display: inline-block;
        width: calc(100% - 1.3rem);
        height: 1px;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        background-color: #D40000;
        border-radius: 2px;
    }
    #ccm-company-header .company-header-nav .nav-content.active .arrow {
        display: none;
    }
}

.company-seminar-box {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.company-seminar-box .list-company {
    width: 372px;
    margin-bottom: 2rem;
    position: relative;
    overflow: initial;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-radius: 0.7rem;
}

.company-seminar-box .list-company .top-image {
    display: block;
}

.company-seminar-box .list-company .top-image img {
    border-radius: 0.7rem 0.7rem 0 0;
    width: 100%;
    height: auto;
}

.company-seminar-box .list-company .top-image:hover {
    opacity: 0.6;
}

.company-seminar-box .list-company .company-info {
    padding: 0.7rem 1rem;
}

.company-seminar-box .list-company .company-info .entry_type {
    color: #fff;
    font-size: 0.7rem;
    font-weight: bold;
    padding: 4px 10px;
    letter-spacing: 1px;
    margin-bottom: 0.3rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.company-seminar-box .list-company .company-info .entry_type .type_line {
    height: 100%;
    border-right: solid 1px #fff;
    margin: 0 8px;
}

.company-seminar-box .list-company .company-info .catch-copy {
    display: block;
    color: #D40000;
    letter-spacing: 1px;
    line-height: 1.3rem;
    font-size: 0.9rem;
    word-break: break-all;
    padding-right: 0.5rem;
    margin-bottom: 0.5rem;
}

.company-seminar-box .list-company .company-info .catch-copy a:hover {
    border-bottom: solid 1px #D40000;
    color: #D40000;
    display: inline;
}

.company-seminar-box .list-company .company-info .company-name {
    margin-bottom: 0.5rem;
}

.company-seminar-box .list-company .company-info .date-count {
    font-size: 0.5rem;
}

.company-seminar-box .list-company .company-info .date-count span {
    color: #ca4171;
    font-size: 1rem;
    font-weight: bold;
    margin: 0 0.2rem;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap {
    max-height: 340px;
    overflow: auto;
    padding: 1rem 15px 1rem 5px;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box {
    -webkit-box-shadow: 0 0 10px #bdbdbd;
    box-shadow: 0 0 10px #bdbdbd;
    padding: 0.3rem 1.5rem 0 0.5rem;
    margin-bottom: 1rem;
    display: block;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box.is_full_reserved {
    background: rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: none;
    box-shadow: none;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box.is_full_reserved::after {
    display: none;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box::after {
    top: 40%;
    right: 0.5rem;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box .seminar-time {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box .seminar-time .date {
    font-size: 0.8rem;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box .seminar-time .date i {
    vertical-align: middle;
    margin-bottom: 5px;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box .seminar-time .status-tag {
    color: #fff;
    font-size: 0.8rem;
    text-align: center;
    font-weight: bold;
    padding: 0.1rem 0.6rem;
    border-radius: 10px;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box .seminar-location {
    font-size: 0.8rem;
}

.company-seminar-box .list-company .company-info .seminar-date-wrap .seminar-date-box .seminar-location i {
    vertical-align: middle;
    margin-bottom: 5px;
}

.company-seminar-box-list {
    display: none;
}

.company-seminar-box-list .list-company {
    border-radius: 0.7rem;
    -webkit-box-shadow: none;
    box-shadow: none;
    width: 100%;
    padding: 1rem;
    position: relative;
    overflow: initial;
    margin-bottom: 1.5rem;
}

.company-seminar-box-list .list-company .seminnar-list-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 1rem;
}

.company-seminar-box-list .list-company .seminnar-list-top .top-image {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.company-seminar-box-list .list-company .seminnar-list-top .top-image img {
    width: 100%;
    height: auto;
}

.company-seminar-box-list .list-company .seminnar-list-top .top-image:hover {
    opacity: 0.6;
}

.company-seminar-box-list .list-company .seminnar-list-top .company-info {
    margin-left: 1rem;
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.company-seminar-box-list .list-company .seminnar-list-top .company-info .entry_type {
    color: #fff;
    font-size: 0.7rem;
    font-weight: bold;
    padding: 4px 10px;
    letter-spacing: 1px;
    margin-bottom: 0.3rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.company-seminar-box-list .list-company .seminnar-list-top .company-info .entry_type .type_line {
    height: 100%;
    border-right: solid 1px #fff;
    margin: 0 8px;
}

.company-seminar-box-list .list-company .seminnar-list-top .company-info .catch-copy {
    display: block;
    color: #D40000;
    letter-spacing: 1px;
    line-height: 1.3rem;
    font-size: 0.9rem;
    word-break: break-all;
    padding-right: 0.5rem;
    margin-bottom: 0.5rem;
}

.company-seminar-box-list .list-company .seminnar-list-top .company-info .catch-copy a:hover {
    border-bottom: solid 1px #D40000;
    color: #D40000;
    display: inline;
}

.company-seminar-box-list .list-company .seminnar-list-top .company-info .company-name {
    margin-top: auto;
}

.company-seminar-box-list .list-company .date-count {
    border-top: solid 2px #bdbdbd;
    font-size: 0.6rem;
    text-align: center;
    padding-top: 0.5rem;
}

.company-seminar-box-list .list-company .date-count span {
    color: #ca4171;
    font-size: 1.2rem;
    font-weight: bold;
    margin: 0 0.2rem;
}

.company-seminar-box-list .list-company .seminar-date-wrap {
    max-height: 260px;
    overflow: auto;
    padding: 1rem 15px 1rem 5px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box {
    -webkit-box-shadow: 0 0 10px #bdbdbd;
    box-shadow: 0 0 10px #bdbdbd;
    padding: 0.3rem 1.5rem 0 0.5rem;
    margin-bottom: 1rem;
    width: 340px;
    display: block;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box.is_full_reserved {
    background: rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: none;
    box-shadow: none;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box.is_full_reserved::after {
    display: none;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box::after {
    top: 40%;
    right: 0.5rem;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box .seminar-time {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box .seminar-time .date {
    font-size: 0.8rem;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box .seminar-time .date i {
    vertical-align: middle;
    margin-bottom: 5px;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box .seminar-time .status-tag {
    color: #fff;
    font-size: 0.8rem;
    text-align: center;
    font-weight: bold;
    padding: 0.1rem 0.6rem;
    border-radius: 10px;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box .seminar-location {
    font-size: 0.8rem;
}

.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box .seminar-location i {
    vertical-align: middle;
    margin-bottom: 5px;
}

@media screen and (max-width: 768px) {
    .company-seminar-box {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .company-seminar-box .list-company {
        padding-bottom: 1.5rem;
        margin-bottom: 2.4rem;
        -webkit-box-shadow: none;
        box-shadow: none;
    }
    .company-seminar-box .list-company .company-info > .seminar-date-wrap > .seminar-date-box > .seminar-time .date {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .company-seminar-box .list-company .company-info > .seminar-date-wrap > .seminar-date-box > .seminar-time .status-tag {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        margin-bottom: 0.2rem;
    }
}

/**
細かいやつ
**/
.bg-red {
    background-color: #d83232;
}

.bg-orange {
    background-color: orange;
}

.bg-yellow {
    background-color: #c4ad43;
}

.bg-green {
    background-color: #43c48f;
}

.bg-blue {
    background-color: #324dd8;
}

.bg-gray {
    background-color: #7d7d7d;
}

.bg-skyblue {
    background-color: #42c1c4;
}

.bg-wine {
    background-color: #ca4171;
}

.company-offer-box {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.company-offer-box .list-company {
    width: 348px;
    margin: 0 1.5rem 1.5rem 0;
    position: relative;
    overflow: visible;
    border-radius: 10px;
    -webkit-box-shadow: 0 0 5px 1px #bdbdbd;
    box-shadow: 0 0 5px 1px #bdbdbd;
}

.company-offer-box .list-company .js-pushOfferBookmark .cp-button {
    position: absolute;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    right: -18px;
    top: calc(150px + 1rem);
    padding: 0.2rem 0rem 0.5rem;
    font-size: 0.7rem;
    font-weight: bold;
    border-radius: 3px;
    background-color: #D40000;
    color: #fff;
    border: none;
    z-index: 1;
}

.company-offer-box .list-company .js-pushOfferBookmark .cp-button:hover {
    background-color: #de893a;
    opacity: initial;
}

.company-offer-box .list-company .js-pushOfferBookmark.active .cp-button {
    background-color: #fff;
    color: #D40000;
    border: solid 1px #D40000;
}

.company-offer-box .list-company .top-image {
    display: block;
}

.company-offer-box .list-company .top-image img {
    border-radius: 10px 10px 0 0;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.company-offer-box .list-company .top-image:hover {
    opacity: 0.6;
}

.company-offer-box .list-company .company-info {
    padding: 0.7rem 1rem;
    min-height: 205px;
}

.company-offer-box .list-company .company-info .stop-offer {
    background-color: #424242;
    color: #fff;
    font-size: 0.8rem;
    font-weight: bold;
    padding: 0.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

.company-offer-box .list-company .company-info .entry_type {
    color: #fff;
    font-size: 0.7rem;
    font-weight: bold;
    padding: 2px 10px;
    letter-spacing: 1px;
    display: inline-block;
    margin-bottom: 0.6rem;
}

.company-offer-box .list-company .company-info .catch-copy {
    color: #D40000;
    letter-spacing: 1px;
    line-height: 1.3rem;
    font-size: 0.9rem;
    word-break: break-all;
    padding-right: 0.5rem;
    margin-bottom: 0.5rem;
    font-weight: bold;
}

.company-offer-box .list-company .company-info .catch-copy a:hover {
    border-bottom: solid 1px #D40000;
    color: #D40000;
}

.company-offer-box .list-company .company-info .offer-feature-region {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.company-offer-box .list-company .company-info .offer-feature-region .special_features {
    color: #fff;
    background-color: #424242;
    font-size: 0.8rem;
    padding: 0.1rem 0.3rem;
    margin: 0 0.6rem 0.8rem 0;
    display: inline-block;
}

.company-offer-box .list-company .company-info .offer-feature-region .special_features i {
    font-size: 0.9rem;
    margin-top: 0.1rem;
}

.company-offer-box .list-company .company-info .offer-feature-region .region {
    margin-bottom: 0.5rem;
}

.company-offer-box .list-company .company-info .offer-feature-region .region i {
    font-size: 0.9rem;
}

.company-offer-box .list-company .company-info .offer-feature-region .region span {
    font-size: 0.8rem;
    color: #757575;
    margin-bottom: 0.5rem;
    display: inline-block;
}

.company-offer-box .list-company .company-info .job-tags {
    margin-bottom: 0.5rem;
}

.company-offer-box .list-company .company-info .job-tags .tag {
    border: 1px solid #bdbdbd;
    color: #757575;
    border-radius: 25px;
    display: inline-block;
    margin-bottom: 0.3rem;
    margin-right: 0.5rem;
    padding: 3px 6px;
    font-size: 0.7rem;
}

.company-offer-box .list-company .company-info .offer-feature {
    background-color: #fef4e1;
    padding: 0.1rem 0.5rem 0.25rem 0.5rem;
}

.company-offer-box .list-company .company-info .offer-feature .tag {
    font-size: 0.7rem;
    color: #757575;
    margin-right: 1rem;
    display: inline-block;
}

.company-offer-box .list-company .company-info .company-name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 1rem;
}

.company-offer-box .list-company .company-info .company-name .logo {
    border: 1px solid #eeeeee;
    border-radius: 0.4rem;
    width: 4rem;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: 1rem;
}

.company-offer-box .list-company .company-info .company-name .logo .lazy-padding {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: #fafafa;
    color: #212121;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
}

.company-offer-box .list-company .company-info .company-name .logo .lazy-padding::before {
    padding-top: 69.4444%;
    content: "";
    display: block;
    width: 100%;
}

.company-offer-box .list-company .company-info .company-name .logo .lazy-padding > * {
    position: absolute;
}

.company-offer-box .list-company .company-info .company-name .logo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.company-offer-box .list-company .company-info .company-name .name {
    font-size: 0.8rem;
}

.company-offer-box.display-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-right: 1rem;
}

.company-offer-box.display-list .list-company {
    overflow: visible;
    width: 100%;
    margin-bottom: 1rem;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 10px;
}

.company-offer-box.display-list .list-company .js-pushOfferBookmark .cp-button {
    position: absolute;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    right: -1rem;
    top: 1rem;
    padding: 0.2rem 0rem 0.5rem;
    font-size: 0.7rem;
    font-weight: bold;
    border-radius: 3px;
    background-color: #D40000;
    color: #fff;
    border: none;
}

.company-offer-box.display-list .list-company .js-pushOfferBookmark .cp-button:hover {
    background-color: #de893a;
    opacity: initial;
}

.company-offer-box.display-list .list-company .js-pushOfferBookmark.active .cp-button {
    background-color: #fff;
    color: #D40000;
    border: solid 1px #D40000;
}

.company-offer-box.display-list .list-company .top-image {
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 400px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1.5rem 0;
    border-radius: 0;
}

.company-offer-box.display-list .list-company .top-image img {
    width: 100%;
    height: auto;
    border-radius: 0;
}

.company-offer-box.display-list .list-company .company-info {
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    padding: 0.7rem 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.company-offer-box.display-list .list-company .company-info .entry_type {
    color: #fff;
    font-size: 0.7rem;
    font-weight: bold;
    padding: 2px 10px;
    letter-spacing: 1px;
    display: inline-block;
    margin-bottom: 0.6rem;
}

.company-offer-box.display-list .list-company .company-info .catch-copy {
    color: #D40000;
    letter-spacing: 1px;
    line-height: 1.3rem;
    font-size: 0.9rem;
    word-break: break-all;
    padding-right: 0.5rem;
    margin-bottom: 0.5rem;
}

.company-offer-box.display-list .list-company .company-info .catch-copy a:hover {
    border-bottom: solid 1px #D40000;
    color: #D40000;
}

.company-offer-box.display-list .list-company .company-info .offer-feature-region {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.company-offer-box.display-list .list-company .company-info .offer-feature-region .special_features {
    color: #fff;
    background-color: #424242;
    font-size: 0.8rem;
    padding: 0.1rem 0.3rem;
    margin: 0 0.6rem 0.3rem 0;
    display: inline-block;
}

.company-offer-box.display-list .list-company .company-info .offer-feature-region .special_features i {
    font-size: 0.9rem;
    margin-top: 0.1rem;
}

.company-offer-box.display-list .list-company .company-info .offer-feature-region .region {
    margin-bottom: 0.5rem;
}

.company-offer-box.display-list .list-company .company-info .offer-feature-region .region i {
    font-size: 0.9rem;
}

.company-offer-box.display-list .list-company .company-info .offer-feature-region .region span {
    font-size: 0.8rem;
    color: #757575;
    margin-bottom: 0;
    display: inline-block;
}

.company-offer-box.display-list .list-company .company-info .job-tags {
    margin-bottom: 0.5rem;
}

.company-offer-box.display-list .list-company .company-info .job-tags .tag {
    border: 1px solid #bdbdbd;
    color: #757575;
    border-radius: 25px;
    display: inline-block;
    margin-bottom: 0.3rem;
    margin-right: 0.5rem;
    padding: 3px 6px;
    font-size: 0.7rem;
}

.company-offer-box.display-list .list-company .company-info .offer-feature {
    display: none;
}

.company-offer-box.display-list .list-company .company-info .company-name {
    margin-top: auto;
    bottom: 0.7rem;
}

.company-offer-box.display-list .list-company .company-info .company-name .logo {
    border-radius: 0;
}

.company-offer-box.display-list .list-company .company-info .company-name .name {
    font-size: 0.8rem;
}

@media screen and (max-width: 768px) {
    .company-offer-box {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .company-offer-box .list-company {
        padding-bottom: 1.5rem;
        margin-right: 0;
        margin-bottom: 2.4rem;
    }
    .company-offer-box .list-company .js-pushOfferBookmark .cp-button {
        -webkit-writing-mode: initial;
        -ms-writing-mode: initial;
        writing-mode: initial;
        right: 1.5rem;
        top: initial;
        bottom: -20px;
        padding: 0.2rem 0;
        width: calc(100% - 3rem);
        background-color: #D40000;
        color: #fff;
        border: none;
    }
    .company-offer-box .list-company .js-pushOfferBookmark .cp-button i {
        vertical-align: middle;
    }
}

.sns-share {
    margin-top: 2rem;
}

.sns-share .share-text {
    font-weight: bold;
    font-size: 0.7rem;
    margin-bottom: 0.7rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.sns-share .share-text .left-line {
    width: 1.4rem;
    border-top: 2px solid #000;
    -webkit-transform: rotate(65deg);
    transform: rotate(65deg);
    margin-right: 0.5rem;
}

.sns-share .share-text .right-line {
    width: 1.4rem;
    border-top: 2px solid #000;
    -webkit-transform: rotate(295deg);
    transform: rotate(295deg);
    margin-left: 0.5rem;
}

.sns-share .sns-list {
    text-align: center;
}

.sns-share .sns-list a {
    margin-right: 15px;
}

.sns-share .sns-list a img {
    width: 40px !important;
    height: 40px !important;
}

.company-footer-button-box {
    margin: 2rem auto 0 auto;
}

.company-footer-button-box.standby {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    min-width: 768px;
    margin: 0;
    top: -170px;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
}

.company-footer-button-box.floating {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: fixed;
    top: auto;
    bottom: 0;
    width: 100vw;
    min-width: 1010px;
    margin: 0;
    padding: 10px 15px;
    background: rgba(0, 0, 0, 0.7);
    z-index: 999;
    -webkit-box-shadow: rgba(221, 221, 221, 0.701961) 0px 0px 6px 3px;
    box-shadow: rgba(221, 221, 221, 0.701961) 0px 0px 6px 3px;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: transform 0.2s ease;
    -webkit-transition: -webkit-transform 0.2s ease;
    transition: -webkit-transform 0.2s ease;
    transition: transform 0.2s ease;
    transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}

.company-footer-button-box.floating .button-inner {
    max-width: 768px;
    margin: 0 auto;
}

.company-footer-button-box .button-inner {
    width: 768px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.company-footer-button-box .button-inner .company-footer-submit {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: block;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 1rem;
    height: auto;
    padding: 0 2rem;
    margin: 0 0.5rem;
    height: 50px;
    line-height: 50px;
	width: calc(100% - 1rem);
}

.company-footer-button-box .button-inner .company-footer-submit i {
    vertical-align: middle;
    margin: 0 5px 5px 0;
}

.company-footer-button-box .button-inner .company-footer-submit.red-orange:hover {
    color: #D40000;
}

.company-footer-button-box .button-inner .company-footer-submit.sky-blue:hover {
    color: #2144ce;
}

.company-footer-button-box .button-inner .company-footer-submit.not-entry {
    background-color: #bdbdbd;
    color: #424242;
}

.company-footer-button-box .button-inner .company-footer-submit.not-entry i {
    margin-top: 0.1rem;
}

.company-footer-button-box .button-inner .company-footer-submit.not-entry:after {
    content: none;
}

@media screen and (max-width: 768px) {
    .company-footer-button-box .button-inner .company-footer-submit {
        margin-bottom: 0.5rem;
    }
    .company-footer-button-box.floating {
        min-width: initial;
        width: 100vw;
    }
    .company-footer-button-box.floating .button-inner {
        max-width: 100%;
    }
}

.company-feature {
    background-image: url("/img/ccm/bg_company_feature.png");
    padding: 1.5rem 1.5rem 0 1.5rem;
    margin-top: 1.5rem;
}

.company-feature .title {
    text-align: center;
    font-weight: bold;
    font-size: 1.5rem;
    letter-spacing: 2px;
    margin-bottom: 1.5rem;
}

.company-feature .point .point-num {
    background: -webkit-gradient(linear, left top, right top, color-stop(30%, #d83232), to(white));
    background: linear-gradient(90deg, #d83232 30%, white 100%);
    font-size: 1.4rem;
    color: #fff;
    padding: 0.2rem 0.8rem;
    font-weight: bold;
    width: 100%;
    letter-spacing: 3px;
    -webkit-transform: scaleX(0.7);
    transform: scaleX(0.7);
    -webkit-transform-origin: left;
    transform-origin: left;
    width: 142%;
}

.company-feature .point .feature-title {
    padding: 1rem 0;
    font-size: 1rem;
    font-weight: bold;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.company-feature .point .feature-title .detail-button {
    color: #fff;
    font-weight: bold;
    background: #616161;
    font-size: 0.7rem;
    padding: 0.4rem 2rem 0.4rem 1.2rem;
    margin-left: 1rem;
    position: relative;
    cursor: pointer;
}

.company-feature .point .feature-title .detail-button i {
    position: absolute;
    right: 16px;
    top: 10px;
}

.company-feature .point .feature-text {
    font-size: 0.8rem;
    line-height: 1.1rem;
    display: none;
    padding-bottom: 2rem;
}

.company-member-wrap {
    margin-top: 1.5rem;
}

.company-member-wrap .president {
    padding: 2rem;
    background-color: #fff;
    margin-bottom: 1rem;
    width: 100%;
    border-radius: 5px;
}

.company-member-wrap .president .icon {
    width: 30%;
}

.company-member-wrap .president .icon img {
    width: 100%;
    height: auto;
    border-radius: 50%;
}

.company-member-wrap .president .predident-info {
    margin-left: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.company-member-wrap .president .predident-info .name {
    font-size: 1.4rem;
    font-weight: bold;
}

.company-member-wrap .president .predident-info .depart {
    color: #424242;
    font-size: 0.7rem;
    margin-top: 0.3rem;
}

.company-member-wrap .president .predident-info .introduct {
    margin-top: 1.2rem;
    font-size: 0.9rem;
    line-height: 1.5rem;
}

.company-member-wrap .president .predident-info .sns-box {
    text-align: right;
}

.company-member-wrap .president .predident-info .sns-box img {
    width: 35px;
    height: auto;
    margin-left: 0.5rem;
    margin-top: 0.8rem;
}

.company-member-wrap .member-box {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.company-member-wrap .member-box .member {
    width: 24%;
    min-height: 220px;
    background-color: #fff;
    padding: 1rem 1rem 0rem 1rem;
    text-align: center;
    border-radius: 5px;
    margin-bottom: 1rem;
    position: relative;
}

.company-member-wrap .member-box .member.has_description {
    cursor: pointer;
}

.company-member-wrap .member-box .member::after {
    font-size: 1.2rem;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    right: 47%;
    bottom: 8px;
}

.company-member-wrap .member-box .member .icon {
    width: 60%;
    margin: 0 auto 1rem auto;
}

.company-member-wrap .member-box .member .icon img {
    width: 100%;
    height: auto;
    border-radius: 50%;
}

.company-member-wrap .member-box .member .name {
    font-size: 1rem;
    font-weight: bold;
    letter-spacing: 1px;
}

.company-member-wrap .member-box .member .depart {
    margin-top: 0.3rem;
    font-size: 0.8rem;
    color: #616161;
}

.company-member-wrap .member-box .member i {
    font-size: 2rem;
}

.company-member-wrap .member-box .member .member-introduct {
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 768px;
    background-color: #fff;
    font-size: 0.8rem;
    padding: 1rem 1.5rem;
    text-align: left;
    line-height: 1.2rem;
}

.company-member-wrap .member-box .member .member-introduct .sns-box {
    text-align: right;
}

.company-member-wrap .member-box .member .member-introduct .sns-box img {
    width: 35px;
    height: auto;
    margin-left: 0.5rem;
    margin-top: 0.5rem;
}

.company-member-wrap .member-box .member:nth-child(4n + 2) .member-introduct {
    left: -194px;
}

.company-member-wrap .member-box .member:nth-child(4n + 3) .member-introduct {
    left: -388px;
}

.company-member-wrap .member-box .member:nth-child(4n + 4) .member-introduct {
    left: -583px;
}

.company-member-wrap .member-box::before {
    content: "";
    display: block;
    width: 24%;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}

.company-member-wrap .member-box::after {
    content: "";
    display: block;
    width: 24%;
}

#ccm-company-index {
    padding-bottom: 2rem;
}

#ccm-company-index .company-image {
    margin-top: 1.2rem;
    width: 100%;
    height: auto;
}

#ccm-company-index .company-image img {
    width: 100%;
    height: auto;
}

#ccm-company-index .company-catchcopy {
    margin: 1rem 0 1.2rem 0;
}

#ccm-company-index .company-catchcopy .h2 {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, #D40000));
    background: linear-gradient(transparent 93%, #D40000 0%);
    padding: 0 0 0.2rem;
    font-size: 1.3rem;
    letter-spacing: 1.6px;
    line-height: 2.5rem;
}

#ccm-company-index .company-offer-wrap {
    margin-bottom: 2rem;
}

#ccm-company-index .company-seminar-wrap {
    margin-bottom: 2rem;
}

#ccm-company-index .company-timeline-wrap {
    margin-bottom: 2rem;
}

#ccm-company-index .company-timeline-wrap .company-timeline-box {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#ccm-company-index .company-timeline-wrap .company-timeline-box .list-timeline {
    border-radius: 8px;
    width: 23%;
    background-color: #fff;
    margin-bottom: 2rem;
}

#ccm-company-index .company-timeline-wrap .company-timeline-box .list-timeline .top-image {
    width: 100%;
    position: relative;
}

#ccm-company-index .company-timeline-wrap .company-timeline-box .list-timeline .top-image:before {
    content: "";
    display: block;
    padding-top: 100%;
}

#ccm-company-index .company-timeline-wrap .company-timeline-box .list-timeline .top-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 8px 8px 0 0;
}

#ccm-company-index .company-timeline-wrap .company-timeline-box .list-timeline .timeline-detail {
    padding: 0.8rem;
    min-height: 140px;
}

#ccm-company-index .company-timeline-wrap .company-timeline-box .list-timeline .timeline-detail .timeline-opendate {
    font-size: 0.7rem;
    margin-bottom: 0.8rem;
}

#ccm-company-index .company-timeline-wrap .company-timeline-box .list-timeline .timeline-detail .timeline-title {
    font-size: 0.7rem;
    line-height: 1.2rem;
}

#ccm-company-index .company-info-wrap .company-info-box {
    background-color: #fff;
    padding: 0 1rem;
    border-radius: 8px;
    margin-bottom: 2rem;
}

#ccm-company-index .company-info-wrap .company-info-box .info {
    padding: 1.5rem 1rem;
}

#ccm-company-index .company-info-wrap .company-info-box .info:not(:last-child) {
    border-bottom: solid 1px #bdbdbd;
}

#ccm-company-index .company-info-wrap .company-info-box .info .title {
    font-weight: bold;
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    font-size: 0.8rem;
}

#ccm-company-index .company-info-wrap .company-info-box .info .content {
    -webkit-box-flex: 7;
    -ms-flex: 7;
    flex: 7;
    font-size: 0.8rem;
}

@media screen and (max-width: 768px) {
    #ccm-company-index .company-image img {
        width: 100%;
        height: auto;
    }
    #ccm-company-index .company-catchcopy {
        padding: 0 1rem;
        margin: 2rem 0;
    }
    #ccm-company-index .company-catchcopy .h2 {
        font-size: 1.4rem;
        padding: 0 0 0.2rem;
        line-height: 2.5rem;
    }
    #ccm-company-index .company-offer-wrap {
        padding: 0 1rem;
    }
    #ccm-company-index .company-offer-wrap .h2 {
        margin-bottom: 1.5rem;
        font-size: 1.4rem;
        letter-spacing: 1.5px;
    }
    #ccm-company-index .company-offer-wrap .btn-big {
        width: 100%;
    }
    #ccm-company-index .company-seminar-wrap {
        padding: 0 1rem;
    }
    #ccm-company-index .company-seminar-wrap .h2 {
        margin-bottom: 1.5rem;
        font-size: 1.4rem;
        letter-spacing: 1.5px;
    }
    #ccm-company-index .company-seminar-wrap .btn-big {
        width: 100%;
    }
    #ccm-company-index .company-timeline-wrap {
        padding: 0 1rem;
    }
    #ccm-company-index .company-timeline-wrap .h2 {
        margin-bottom: 1.5rem;
        font-size: 1.4rem;
        letter-spacing: 1.5px;
    }
    #ccm-company-index .company-timeline-wrap .company-timeline-box .list-timeline {
        border-radius: 8px;
        width: 48%;
        background-color: #fff;
        margin-bottom: 2rem;
    }
    #ccm-company-index .company-timeline-wrap .btn-big {
        width: 100%;
    }
    #ccm-company-index .company-info-wrap {
        padding: 0 1rem;
    }
    #ccm-company-index .company-info-wrap .h2 {
        margin-bottom: 1.5rem;
        font-size: 1.4rem;
        letter-spacing: 1.5px;
    }
    #ccm-company-index .company-info-wrap .company-info-box {
        padding: 0.5rem 1rem;
    }
    #ccm-company-index .company-info-wrap .company-info-box .info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 1rem 0;
    }
    #ccm-company-index .company-info-wrap .company-info-box .info .title {
        font-size: 0.9rem;
        margin-bottom: 0.5rem;
    }
    #ccm-company-index .company-info-wrap .company-info-box .info .content {
        -webkit-box-flex: 7;
        -ms-flex: 7;
        flex: 7;
        font-size: 0.8rem;
    }
    #ccm-company-index .company-info-wrap .btn-big {
        width: 100%;
    }
}

#ccm-company-offer_index {
    padding-bottom: 2rem;
}

#ccm-company-offer_index .no-offer {
    margin: 3rem 0 5rem 0;
    text-align: center;
}

#ccm-company-offer_index .company-offer-box {
    padding-top: 2rem;
}

@media screen and (max-width: 768px) {
    #ccm-company-offer_index .company-offer-box {
        padding: 2rem 1.5rem;
    }
}

#ccm-company-offer {
    padding-bottom: 2rem;
}

#ccm-company-offer .offer-image {
    margin-top: 2rem;
    width: 100%;
    height: auto;
}

#ccm-company-offer .offer-image img {
    width: 100%;
    height: auto;
    max-height: 600px;
    object-fit: cover;
}
#ccm-company-offer .offer-image img.no-img{
    background: #fff;
}

#ccm-company-offer .offer-tag {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 0.8rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#ccm-company-offer .offer-tag .entry_type {
    color: #fff;
    font-size: 0.8rem;
    padding: 0 0.5rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.2rem;
    height: 1.2rem;
    margin-right: 0.5rem;
    margin-bottom: 0.5rem;
}

#ccm-company-offer .offer-tag .special_features {
    color: #fff;
    background-color: #424242;
    font-size: 0.8rem;
    padding: 0 0.5rem;
    line-height: 1.2rem;
    margin-right: 0.5rem;
    height: 1.2rem;
    margin-bottom: 0.5rem;
}

#ccm-company-offer .job-tags {
    margin-bottom: 0.5rem;
    margin-top: 0.5rem;
}

#ccm-company-offer .job-tags .tag {
    border: 1px solid #bdbdbd;
    background-color: #fff;
    color: #757575;
    border-radius: 25px;
    display: inline-block;
    margin-bottom: 0.3rem;
    margin-right: 0.5rem;
    padding: 5px 10px;
    font-size: 0.8rem;
    font-weight: 500;
}

#ccm-company-offer .offer-catchcopy {
    margin: 0.5rem 0 1.2rem 0;
}

#ccm-company-offer .offer-catchcopy .h2 {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, #D40000));
    background: linear-gradient(transparent 93%, #D40000 0%);
    padding: 0 0 0.2rem;
    font-size: 1.3rem;
    letter-spacing: 1.6px;
    line-height: 2.5rem;
}

#ccm-company-offer .company-job {
    margin-top: 2rem;
    overflow-wrap: break-word;
}

#ccm-company-offer .company-job .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-offer .company-job .company-job-box {
    border-radius: 5px;
    margin-top: 1rem;
    padding: 1.5rem;
    background-color: #fff;
    position: relative;
}

#ccm-company-offer .company-job .company-job-box .job-img-box {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 -0.5rem;
}

#ccm-company-offer .company-job .company-job-box .job-img-box .job-img {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin: 0.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#ccm-company-offer .company-job .company-job-box .job-img-box .job-img img {
    width: 100%;
    height: auto;
    margin-bottom: 0.5rem;
}

#ccm-company-offer .company-job .company-job-box .job-img-box .job-img p {
    font-size: 0.7rem;
    border-bottom: 2px solid #D40000;
    line-height: 1.4rem;
}

#ccm-company-offer .company-job .company-job-box .company-job-text {
    font-size: 0.8rem;
    line-height: 1.1rem;
    margin-bottom: 1rem;
}

#ccm-company-offer .company-offer {
    margin-top: 2rem;
}

#ccm-company-offer .company-offer .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-offer .company-offer .offer-text {
    border-radius: 5px;
    margin-top: 1rem;
    padding: 1.5rem;
    background-color: #fff;
    position: relative;
    font-size: 0.8rem;
    line-height: 1.1rem;
}

#ccm-company-offer .offer-message {
    margin-top: 2rem;
}

#ccm-company-offer .offer-message .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-offer .offer-message .offer-text {
    border-radius: 5px;
    margin-top: 1rem;
    padding: 1.5rem;
    background-color: #fff;
    position: relative;
    font-size: 0.8rem;
    line-height: 1.1rem;
}

#ccm-company-offer .company-offer-content {
    margin-top: 2rem;
}

#ccm-company-offer .company-offer-content .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-offer .company-offer-content .offer-content {
    background-color: #fff;
    padding: 0 1rem;
    border-radius: 8px;
    margin-bottom: 2rem;
}

#ccm-company-offer .company-offer-content .offer-content .content-box {
    padding: 1.5rem 1rem;
}

#ccm-company-offer .company-offer-content .offer-content .content-box:not(:last-child) {
    border-bottom: solid 1px #bdbdbd;
}

#ccm-company-offer .company-offer-content .offer-content .content-box .title {
    font-weight: bold;
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    font-size: 0.8rem;
}

#ccm-company-offer .company-offer-content .offer-content .content-box .content {
    -webkit-box-flex: 7;
    -ms-flex: 7;
    flex: 7;
    font-size: 0.8rem;
}

#ccm-company-offer .company-member-wrap .member:nth-child(4n + 2) .member-introduct {
    left: -194px;
}

#ccm-company-offer .company-member-wrap .member:nth-child(4n + 3) .member-introduct {
    left: -388px;
}

#ccm-company-offer .company-member-wrap .member:nth-child(4n + 4) .member-introduct {
    left: -583px;
}

#ccm-company-offer .company-info-wrap {
    margin-top: 2rem;
    padding-bottom: 2rem;
}

#ccm-company-offer .company-info-wrap .company-info-box {
    background-color: #fff;
    padding: 0 1rem;
    border-radius: 8px;
    margin-bottom: 2rem;
}

#ccm-company-offer .company-info-wrap .company-info-box .info {
    padding: 1.5rem 1rem;
}

#ccm-company-offer .company-info-wrap .company-info-box .info:not(:last-child) {
    border-bottom: solid 1px #bdbdbd;
}

#ccm-company-offer .company-info-wrap .company-info-box .info .title {
    font-weight: bold;
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    font-size: 0.8rem;
}

#ccm-company-offer .company-info-wrap .company-info-box .info .content {
    -webkit-box-flex: 7;
    -ms-flex: 7;
    flex: 7;
    font-size: 0.8rem;
}

@media screen and (max-width: 768px) {
    #ccm-company-offer .offer-image img {
        width: 100%;
        height: auto;
    }
    #ccm-company-offer .offer-wrap {
        padding: 0 1rem;
    }
    #ccm-company-offer .offer-wrap .offer-catchcopy {
        margin: 2rem 0;
    }
    #ccm-company-offer .offer-wrap .offer-catchcopy .h2 {
        font-size: 1.4rem;
        padding: 0 0 0.5rem;
        line-height: 2.5rem;
    }
    #ccm-company-offer .offer-wrap .company-feature .point .feature-title {
        display: block;
    }
    #ccm-company-offer .offer-wrap .company-feature .point .feature-title .detail-button {
        margin-left: 0;
        margin-top: 1rem;
        width: 50%;
    }
    #ccm-company-offer .offer-wrap .company-feature .point .feature-text {
        font-size: 1rem;
        line-height: 1.4rem;
        display: none;
        padding-bottom: 2rem;
    }
    #ccm-company-offer .offer-wrap .company-job .company-job-box .job-img-box .job-img {
        width: 100%;
        height: auto;
        margin: 0;
    }
    #ccm-company-offer .offer-wrap .company-offer-content .offer-content .content-box .title {
        margin-bottom: 0.5rem;
    }
    #ccm-company-offer .offer-wrap .company-info-wrap .company-info-box .info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    #ccm-company-offer .offer-wrap .company-info-wrap .company-info-box .info .content {
        margin-top: 0.5rem;
    }
    #ccm-company-offer .offer-wrap .company-member-wrap {
        margin: 1.5rem 0.5rem;
    }
    #ccm-company-offer .offer-wrap .company-member-wrap .member {
        width: 48%;
        min-height: 240px;
    }
    #ccm-company-offer .offer-wrap .company-member-wrap .member .icon {
        width: 75%;
    }
    #ccm-company-offer .offer-wrap .company-member-wrap .member .member-introduct {
        width: calc(100vw - 3rem);
        padding: 1.5rem 1rem;
    }
    #ccm-company-offer .offer-wrap .company-member-wrap .member:nth-child(4n + 2) .member-introduct {
        left: 0;
    }
    #ccm-company-offer .offer-wrap .company-member-wrap .member:nth-child(4n + 3) .member-introduct {
        left: 0;
    }
    #ccm-company-offer .offer-wrap .company-member-wrap .member:nth-child(4n + 4) .member-introduct {
        left: 0;
    }
    #ccm-company-offer .offer-wrap .company-member-wrap .member:nth-child(2n) .member-introduct {
        left: -45vw;
    }
}

#ccm-company-offer_confirm .company-inner .offer-info {
    padding-top: 2rem;
}

#ccm-company-offer_confirm .company-inner .offer-info .company-name {
    text-align: center;
    font-size: 1rem;
    margin-bottom: 0.5rem;
}

#ccm-company-offer_confirm .company-inner .offer-info .offer-name {
    text-align: center;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, #D40000));
    background: linear-gradient(transparent 93%, #D40000 0%);
    padding: 0 0 0.2rem;
    font-size: 1.5rem;
    letter-spacing: 1.6px;
    line-height: 2.5rem;
}

#ccm-company-seminar {
    padding-bottom: 2rem;
}

#ccm-company-seminar .no-seminar {
    margin: 3rem 0 5rem 0;
    text-align: center;
}

#ccm-company-seminar .company-seminar-box {
    padding-top: 2rem;
}

@media screen and (max-width: 768px) {
    #ccm-company-seminar .company-seminar-box {
        padding: 2rem 1.5rem;
    }
}

#ccm-company-seminar-detail {
    padding-bottom: 2rem;
}

#ccm-company-seminar-detail .seminar-top-info {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 0.8rem;
}

#ccm-company-seminar-detail .seminar-top-info .status-tag {
    color: #fff;
    font-size: 0.8rem;
    padding: 0 0.5rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.2rem;
    border-radius: 10px;
    height: 1.2rem;
}

#ccm-company-seminar-detail .seminar-top-info .date {
    margin-top: 0.5rem;
    margin-left: 0.5rem;
    font-size: 0.9rem;
}

#ccm-company-seminar-detail .seminar-top-info .date i {
    vertical-align: middle;
    margin-bottom: 5px;
}

#ccm-company-seminar-detail .seminar-top-info .seminar-location {
    margin-top: 0.5rem;
    margin-left: 0.5rem;
    font-size: 0.9rem;
}

#ccm-company-seminar-detail .seminar-top-info .seminar-location i {
    vertical-align: middle;
    margin-bottom: 5px;
}

#ccm-company-seminar-detail .entry_type {
    color: #fff;
    font-size: 0.7rem;
    font-weight: bold;
    padding: 4px 10px;
    letter-spacing: 1px;
    margin: 0.8rem 0;
    margin-right: 0.5rem;
}

#ccm-company-seminar-detail .entry_type .type_line {
    height: 100%;
    border-right: solid 1px #fff;
    margin: 0 8px;
}

#ccm-company-seminar-detail .seminar-catchcopy {
    margin: 0 0 1.2rem 0;
}

#ccm-company-seminar-detail .seminar-catchcopy .h2 {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, #D40000));
    background: linear-gradient(transparent 93%, #D40000 0%);
    padding: 0 0 0.2rem;
    font-size: 1.3rem;
    letter-spacing: 1.6px;
    line-height: 2.5rem;
}

#ccm-company-seminar-detail .seminar-content-wrap {
    margin-top: 1rem;
}

#ccm-company-seminar-detail .seminar-content-wrap .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box {
    border-radius: 5px;
    margin-top: 1rem;
    padding: 1.5rem;
    background-color: #fff;
    position: relative;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-content-text {
    font-size: 0.8rem;
    line-height: 1.1rem;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-info-box {
    background-color: #fff;
    padding: 0.5rem;
    border-radius: 8px;
    margin-top: 0.5rem;
    border: solid 1px #e3e3e3;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-info-box .info {
    padding: 0.5rem;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-info-box .info:not(:last-child) {
    border-bottom: solid 1px #bdbdbd;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-info-box .info .title {
    font-weight: bold;
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    font-size: 0.8rem;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-info-box .info .content {
    -webkit-box-flex: 7;
    -ms-flex: 7;
    flex: 7;
    font-size: 0.8rem;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-image {
    width: 50%;
    margin-top: 1rem;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-image img {
    width: 100%;
    height: auto;
}

#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-image p {
    font-size: 0.7rem;
    border-bottom: 2px solid #D40000;
    line-height: 1.4rem;
}

#ccm-company-seminar-detail .seminar-info-wrap {
    margin-top: 2rem;
}

#ccm-company-seminar-detail .seminar-info-wrap .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-seminar-detail .seminar-info-wrap .seminar-info-box {
    background-color: #fff;
    padding: 0 1rem;
    border-radius: 8px;
    margin-bottom: 2rem;
}

#ccm-company-seminar-detail .seminar-info-wrap .seminar-info-box .info {
    padding: 1.5rem 1rem;
}

#ccm-company-seminar-detail .seminar-info-wrap .seminar-info-box .info:not(:last-child) {
    border-bottom: solid 1px #bdbdbd;
}

#ccm-company-seminar-detail .seminar-info-wrap .seminar-info-box .info .title {
    font-weight: bold;
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    font-size: 0.8rem;
}

#ccm-company-seminar-detail .seminar-info-wrap .seminar-info-box .info .content {
    -webkit-box-flex: 7;
    -ms-flex: 7;
    flex: 7;
    font-size: 0.8rem;
}

#ccm-company-seminar-detail .seminar-reserve-button .btn-big {
    width: 100%;
    height: 50px;
}

#ccm-company-seminar-detail .seminar-date-wrap {
    padding-top: 1rem;
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 1rem;
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date {
    border-radius: 5px;
    -webkit-box-shadow: 0 0 5px 1px #bdbdbd;
    box-shadow: 0 0 5px 1px #bdbdbd;
    padding: 0.3rem 1.5rem 0 0.5rem;
    margin-bottom: 1rem;
    display: block;
    background-color: #fff;
    width: 47%;
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date.is_full_reserved {
    background: rgba(0, 0, 0, 0.5);
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date::after {
    top: 40%;
    right: 0.5rem;
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date .seminar-time {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date .seminar-time .date {
    font-size: 0.8rem;
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date .seminar-time .date i {
    vertical-align: middle;
    margin-bottom: 5px;
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date .seminar-time .status-tag {
    color: #fff;
    font-size: 0.8rem;
    text-align: center;
    font-weight: bold;
    padding: 0.1rem 0.6rem;
    border-radius: 10px;
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date .seminar-location {
    font-size: 0.8rem;
}

#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date .seminar-location i {
    vertical-align: middle;
    margin-bottom: 5px;
}

#ccm-company-seminar-detail .attention {
    color: #D40000;
    font-weight: bold;
    text-align: center;
}

#ccm-company-seminar-detail .register-parts {
    max-width: 700px;
    margin: 1rem auto;
}

#ccm-company-seminar-detail .register-parts .register {
    font-size: 1.25rem;
    font-weight: bold;
    color: #D40000;
    margin-bottom: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#ccm-company-seminar-detail .register-parts .register:before,
#ccm-company-seminar-detail .register-parts .register:after {
    content: "";
    height: 2px;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    background-color: #D40000;
    width: 100px;
    margin: 0 2rem;
}

#ccm-company-seminar-detail .register-parts .home-register-btn {
    margin-top: 2rem;
}

#ccm-company-seminar-detail .register-parts .home-register-btn.flex {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#ccm-company-seminar-detail .register-parts .home-register-btn a {
    font-size: 0.889rem;
    padding: 0.889rem;
    max-width: 420px;
    margin: 0.75rem;
    height: auto;
    letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
    #ccm-company-seminar-detail .register-parts .home-register-btn {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    #ccm-company-seminar-detail .register-parts .home-register-btn a {
        width: 100%;
    }
}

@media screen and (max-width: 630px) {
    #ccm-company-seminar-detail .register-parts .register:before,
    #ccm-company-seminar-detail .register-parts .register:after {
        margin: 0 1rem;
    }
}

@media screen and (max-width: 550px) {
    #ccm-company-seminar-detail .register-parts .register:before,
    #ccm-company-seminar-detail .register-parts .register:after {
        content: none;
    }
}

@media screen and (max-width: 768px) {
    #ccm-company-seminar-detail .seminar-detail-wrap {
        padding: 0 1rem;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-top-info {
        margin-top: 1.5rem;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-top-info .date {
        margin-left: 0;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-top-info .seminar-location {
        margin-top: 0;
        margin-left: 0;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-catchcopy .h2 {
        padding: 0;
        font-size: 1.5rem;
        line-height: 2.4rem;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-content-wrap .seminar-content-box .seminar-info-box .info .title {
        -webkit-box-flex: 3;
        -ms-flex: 3;
        flex: 3;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-content-wrap .seminar-content-box .seminar-image {
        width: 100%;
        margin-top: 1rem;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-info-wrap .seminar-info-box .info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-info-wrap .seminar-info-box .info .title {
        font-size: 1rem;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-info-wrap .seminar-info-box .info .content {
        font-size: 0.9rem;
        margin-top: 1rem;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-date-wrap .seminar-date-box .seminar-date {
        margin-bottom: 1.5rem;
        width: 100%;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-date-wrap .seminar-date-box .seminar-date .seminar-time {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-date-wrap .seminar-date-box .seminar-date .seminar-time .date {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .seminar-date-wrap .seminar-date-box .seminar-date .seminar-time .status-tag {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        margin-bottom: 0.2rem;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .company-member-wrap {
        margin: 1.5rem 0.5rem;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .company-member-wrap .member {
        width: 48%;
        min-height: 240px;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .company-member-wrap .member .icon {
        width: 75%;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .company-member-wrap .member .member-introduct {
        width: calc(100vw - 3rem);
        padding: 1.5rem 1rem;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .company-member-wrap .member:nth-child(4n + 2) .member-introduct {
        left: 0;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .company-member-wrap .member:nth-child(4n + 3) .member-introduct {
        left: 0;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .company-member-wrap .member:nth-child(4n + 4) .member-introduct {
        left: 0;
    }
    #ccm-company-seminar-detail .seminar-detail-wrap .company-member-wrap .member:nth-child(2n) .member-introduct {
        left: -45vw;
    }
}

#ccm-company-detail {
    padding-bottom: 2rem;
}

#ccm-company-detail .company-movie {
    margin-top: 2rem;
}

#ccm-company-detail .company-movie .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-detail .company-story {
    margin-top: 2rem;
}

#ccm-company-detail .company-story .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-detail .company-story .story-box {
    border-radius: 5px;
    margin-top: 1rem;
    padding: 1.5rem;
    background-color: #fff;
    position: relative;
}

#ccm-company-detail .company-story .story-box .story-img-box {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#ccm-company-detail .company-story .story-box .story-img-box .story-img {
    width: 48%;
}

#ccm-company-detail .company-story .story-box .story-img-box .story-img img {
    width: 100%;
    height: auto;
    margin-bottom: 0.5rem;
}

#ccm-company-detail .company-story .story-box .story-img-box .story-img p {
    font-size: 0.7rem;
    border-bottom: 2px solid #D40000;
    line-height: 1.4rem;
}

#ccm-company-detail .company-story .story-box .company-story-text {
    font-size: 0.8rem;
    line-height: 1.1rem;
    margin-top: 1.2rem;
}

#ccm-company-detail .company-story .story-box .company-story-text.close {
    overflow: hidden;
}

#ccm-company-detail .company-story .story-box .company-story-down {
    display: none;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    padding: 1rem;
    font-size: 0.8rem;
    text-align: center;
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    cursor: pointer;
}

#ccm-company-detail .company-story .story-box .company-story-down i {
    margin-left: 1rem;
    font-size: 1rem;
    vertical-align: middle;
}

#ccm-company-detail .company-job {
    margin-top: 2rem;
}

#ccm-company-detail .company-job .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-detail .company-job .company-job-box {
    border-radius: 5px;
    margin-top: 1rem;
    padding: 1.5rem;
    background-color: #fff;
    position: relative;
}

#ccm-company-detail .company-job .company-job-box .job-img-box {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#ccm-company-detail .company-job .company-job-box .job-img-box .job-img {
    width: 48%;
}

#ccm-company-detail .company-job .company-job-box .job-img-box .job-img img {
    width: 100%;
    height: auto;
    margin-bottom: 0.5rem;
}

#ccm-company-detail .company-job .company-job-box .job-img-box .job-img p {
    font-size: 0.7rem;
    border-bottom: 2px solid #D40000;
    line-height: 1.4rem;
}

#ccm-company-detail .company-job .company-job-box .company-job-text {
    font-size: 0.8rem;
    line-height: 1.1rem;
    margin-top: 1.2rem;
}

#ccm-company-detail .company-info-wrap {
    margin-top: 2rem;
}

#ccm-company-detail .company-info-wrap .company-info-box {
    background-color: #fff;
    padding: 0 1rem;
    border-radius: 8px;
    margin-bottom: 2rem;
}

#ccm-company-detail .company-info-wrap .company-info-box .info {
    padding: 1.5rem 1rem;
}

#ccm-company-detail .company-info-wrap .company-info-box .info:not(:last-child) {
    border-bottom: solid 1px #bdbdbd;
}

#ccm-company-detail .company-info-wrap .company-info-box .info .title {
    font-weight: bold;
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
    font-size: 0.8rem;
}

#ccm-company-detail .company-info-wrap .company-info-box .info .content {
    -webkit-box-flex: 7;
    -ms-flex: 7;
    flex: 7;
    font-size: 0.8rem;
}

@media screen and (max-width: 768px) {
    #ccm-company-detail .company-inner {
        padding: 0 1.5rem;
    }
    #ccm-company-detail .company-inner .company-feature .point .feature-title {
        display: block;
    }
    #ccm-company-detail .company-inner .company-feature .point .feature-title .detail-button {
        margin-left: 0;
        margin-top: 1rem;
        width: 50%;
    }
    #ccm-company-detail .company-inner .company-feature .point .feature-text {
        font-size: 1rem;
        line-height: 1.4rem;
        display: none;
        padding-bottom: 2rem;
    }
    #ccm-company-detail .company-inner .company-movie .frame_wrap {
        max-width: 100%;
        margin-bottom: 1rem;
    }
    #ccm-company-detail .company-inner .company-story .story-box .story-img-box {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    #ccm-company-detail .company-inner .company-story .story-box .story-img-box .story-img {
        width: 108%;
        margin-bottom: 1.5rem;
    }
    #ccm-company-detail .company-inner .company-story .story-box .company-story-text {
        margin-top: 0.5rem;
    }
    #ccm-company-detail .company-inner .company-job .company-job-box .job-img-box {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    #ccm-company-detail .company-inner .company-job .company-job-box .job-img-box .job-img {
        width: 100%;
        margin-bottom: 1.5rem;
    }
    #ccm-company-detail .company-inner .company-job .company-job-box .company-job-text {
        margin-top: 0.5rem;
    }
    #ccm-company-detail .company-inner .company-info-wrap .company-info-box .info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    #ccm-company-detail .company-inner .company-info-wrap .company-info-box .info .title {
        font-size: 0.8rem;
    }
    #ccm-company-detail .company-inner .company-info-wrap .company-info-box .info .content {
        font-size: 0.8rem;
        margin-top: 1rem;
    }
}

#ccm-company-member {
    padding-bottom: 2rem;
}

#ccm-company-member .company-album-wrap {
    margin: 2rem 0;
}

#ccm-company-member .company-album-wrap .h2 {
    margin-bottom: 1rem;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-member .company-album-wrap .company-album-box {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#ccm-company-member .company-album-wrap .company-album-box li {
    position: relative;
    width: 250px;
}

#ccm-company-member .company-album-wrap .company-album-box li iframe {
    min-width: initial !important;
    width: 250px;
}

#ccm-company-member .company-album-wrap .company-album-box li .loading {
    color: #9e9e9e;
    font-weight: bold;
    height: 20px;
    left: 0;
    line-height: 20px;
    margin-top: -10px;
    position: absolute;
    text-align: center;
    top: 40%;
    width: 100%;
    z-index: 1;
}

#ccm-company-member .company-album-wrap .company-album-box .company-album {
    width: 32%;
    margin-bottom: 1.5rem;
}

#ccm-company-member .company-album-wrap .company-album-box .company-album img {
    width: 100%;
    height: auto;
    border-radius: 5%;
}

#ccm-company-member .company-album-wrap .company-album-box .company-album p {
    margin-top: 0.5rem;
    font-size: 0.8rem;
}

@media screen and (max-width: 768px) {
    #ccm-company-member .company-member-wrap {
        margin: 1.5rem 0.5rem;
    }
    #ccm-company-member .company-member-wrap .president {
        display: block;
        padding: 2rem 1rem;
    }
    #ccm-company-member .company-member-wrap .president .icon {
        width: 70%;
        margin: 0 auto;
        margin-bottom: 1.5rem;
    }
    #ccm-company-member .company-member-wrap .president .predident-info {
        margin-left: 0;
    }
    #ccm-company-member .company-member-wrap .president .predident-info .depart {
        margin-top: 0.5rem;
    }
    #ccm-company-member .company-member-wrap .member {
        width: 48%;
        min-height: 240px;
    }
    #ccm-company-member .company-member-wrap .member .icon {
        width: 75%;
    }
    #ccm-company-member .company-member-wrap .member .member-introduct {
        width: calc(100vw - 1rem);
        padding: 1.5rem 1rem;
    }
    #ccm-company-member .company-member-wrap .member:nth-child(4n + 2) .member-introduct {
        left: 0;
    }
    #ccm-company-member .company-member-wrap .member:nth-child(4n + 3) .member-introduct {
        left: 0;
    }
    #ccm-company-member .company-member-wrap .member:nth-child(4n + 4) .member-introduct {
        left: 0;
    }
    #ccm-company-member .company-member-wrap .member:nth-child(2n) .member-introduct {
        left: -50vw;
    }
    #ccm-company-member .company-album-wrap {
        margin: 2rem 0.5rem 0rem 0.5rem;
    }
    #ccm-company-member .company-album-wrap .company-album-box {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    #ccm-company-member .company-album-wrap .company-album-box .company-album {
        width: 100%;
        margin-bottom: 1.5rem;
    }
    #ccm-company-member .company-album-wrap .company-album-box .company-album p {
        margin-top: 1rem;
    }
    #ccm-company-member .company-album-wrap .company-album-box li {
        position: relative;
        width: 100%;
    }
    #ccm-company-member .company-album-wrap .company-album-box li iframe {
        min-width: initial !important;
        width: 100%;
    }
    #ccm-company-member .company-album-wrap .company-album-box li .loading {
        color: #9e9e9e;
        font-weight: bold;
        height: 20px;
        left: 0;
        line-height: 20px;
        margin-top: -10px;
        position: absolute;
        text-align: center;
        top: 40%;
        width: 100%;
        z-index: 1;
    }
}

#ccm-company-message {
    padding-bottom: 2rem;
}

#ccm-company-message .company-message-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 1rem;
}

#ccm-company-message .company-message-wrap .message-box {
    width: 22%;
    background-color: #fff;
    border-radius: 8px;
    margin-bottom: 2rem;
    -webkit-box-shadow: 0 0 10px gray;
    box-shadow: 0 0 10px gray;
}

#ccm-company-message .company-message-wrap .message-box .message-img {
    width: 100%;
    position: relative;
}

#ccm-company-message .company-message-wrap .message-box .message-img:before {
    content: "";
    display: block;
    padding-top: 100%;
}

#ccm-company-message .company-message-wrap .message-box .message-img img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 8px 8px 0 0;
}

#ccm-company-message .company-message-wrap .message-box .message-info {
    padding: 0.8rem;
    min-height: 8rem;
}

#ccm-company-message .company-message-wrap .message-box .message-info .message-date {
    font-size: 0.7rem;
    margin-bottom: 0.5rem;
}

#ccm-company-message .company-message-wrap .message-box .message-info .message-title {
    font-size: 0.7rem;
    line-height: 1rem;
}

@media screen and (max-width: 768px) {
    #ccm-company-message .company-message-wrap {
        margin: 2rem 1rem;
    }
    #ccm-company-message .company-message-wrap .message-box {
        width: 47%;
    }
}

#ccm-company-message-detail {
    padding-bottom: 2.4rem;
}

#ccm-company-message-detail .message-detail-img {
    margin-top: 1rem;
    width: 100%;
    text-align: center;
}

#ccm-company-message-detail .message-detail-img img {
    width: 100%;
    height: auto;
}

#ccm-company-message-detail .company-message-detail-wrap .message-date {
    font-size: 0.9rem;
    margin-top: 2.5rem;
}

#ccm-company-message-detail .company-message-detail-wrap .h2 {
    color: #000;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(93%, transparent), color-stop(0%, #D40000));
    background: linear-gradient(transparent 93%, #D40000 0%);
    font-size: 1.7rem;
    letter-spacing: 1.5px;
    line-height: 2.4rem;
    margin-top: 0.5rem;
}

#ccm-company-message-detail .company-message-detail-wrap .message-content {
    margin: 2rem 0;
    padding: 2rem 1.5rem;
    background-color: #fff;
    border-radius: 5px;
    font-size: 1rem;
    line-height: 1.5rem;
}

#ccm-company-message-detail .message-nextprev-box {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    color: #D40000;
}

#ccm-company-message-detail .message-nextprev-box .message-guide-box {
    display: block;
    width: 48%;
    border-radius: 5px;
    background-color: #fff;
    position: relative;
    -webkit-box-shadow: 0 0 5px #bdbdbd;
    box-shadow: 0 0 5px #bdbdbd;
}

#ccm-company-message-detail .message-nextprev-box .message-guide-box i {
    position: absolute;
}

#ccm-company-message-detail .message-nextprev-box .message-guide-box .guide {
    font-weight: bold;
    font-size: 1rem;
    margin-bottom: 0.8rem;
}

#ccm-company-message-detail .message-nextprev-box .message-guide-box .message-nextprev-title {
    font-size: 0.8rem;
}

#ccm-company-message-detail .message-nextprev-box .message-guide-box.prev {
    padding: 1rem 2rem 1rem 4rem;
}

#ccm-company-message-detail .message-nextprev-box .message-guide-box.prev i {
    top: 50%;
    left: 1rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#ccm-company-message-detail .message-nextprev-box .message-guide-box.next {
    padding: 1rem 4rem 1rem 2rem;
}

#ccm-company-message-detail .message-nextprev-box .message-guide-box.next i {
    top: 50%;
    right: 1rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#ccm-company-message-detail .h2 {
    margin: 1rem 0;
    font-size: 1.3rem;
    letter-spacing: 1.4px;
}

#ccm-company-message-detail .company-message-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 1.5rem;
}

#ccm-company-message-detail .company-message-wrap .message-box {
    width: 22%;
    background-color: #fff;
    border-radius: 8px;
    margin-bottom: 2rem;
    -webkit-box-shadow: 0 0 10px #bdbdbd;
    box-shadow: 0 0 10px #bdbdbd;
}

#ccm-company-message-detail .company-message-wrap .message-box .message-img {
    width: 100%;
    position: relative;
}

#ccm-company-message-detail .company-message-wrap .message-box .message-img:before {
    content: "";
    display: block;
    padding-top: 100%;
}

#ccm-company-message-detail .company-message-wrap .message-box .message-img img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 8px 8px 0 0;
}

#ccm-company-message-detail .company-message-wrap .message-box .message-info {
    padding: 0.8rem;
    min-height: 8rem;
}

#ccm-company-message-detail .company-message-wrap .message-box .message-info .message-date {
    font-size: 0.7rem;
    margin-bottom: 0.5rem;
}

#ccm-company-message-detail .company-message-wrap .message-box .message-info .message-title {
    font-size: 0.7rem;
    line-height: 1rem;
}

@media screen and (max-width: 768px) {
    #ccm-company-message-detail .company-message-detail-wrap {
        margin: 1rem 1rem;
    }
    #ccm-company-message-detail .company-message-detail-wrap .message-date {
        margin-bottom: 1rem;
    }
    #ccm-company-message-detail .company-message-detail-wrap .h2 {
        font-size: 1.2rem;
    }
    #ccm-company-message-detail .company-message-detail-wrap .message-content {
        font-size: 0.8rem;
    }
    #ccm-company-message-detail .company-message-detail-wrap .message-box {
        width: 47%;
    }
    #ccm-company-message-detail .message-nextprev-box .message-guide-box .guide {
        font-weight: bold;
        font-size: 0.9rem;
        margin-bottom: 0;
    }
    #ccm-company-message-detail .message-nextprev-box .message-guide-box.prev {
        padding: 1rem 1rem 1rem 3rem;
    }
    #ccm-company-message-detail .message-nextprev-box .message-guide-box.next {
        padding: 1rem 3rem 1rem 1rem;
    }
    #ccm-company-message-detail .h2 {
        margin: 0 1rem;
    }
    #ccm-company-message-detail .company-message-wrap {
        margin: 2rem 1rem 0 1rem;
    }
    #ccm-company-message-detail .company-message-wrap .message-box {
        width: 47%;
    }
}

#ccm-company-comic {
    padding-bottom: 2.4rem;
}

#ccm-company-comic .bx-wrapper {
    margin-bottom: 0;
}

#ccm-company-comic .m-carousel-manga-outer {
    margin-top: 1rem;
    position: relative;
}

#ccm-company-comic .m-carousel-manga-outer .m-carousel-manga img {
    width: 587px;
    margin: auto;
    max-width: 100%;
}

#ccm-company-comic .m-carousel-manga-outer .bx-controls-direction a {
    position: absolute;
    z-index: 100;
    top: initial;
    bottom: -60px;
    width: 45px;
    height: 45px;
    background-image: none;
    padding: 0.7rem 1rem;
    background-color: #fff;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 7px #bdbdbd;
    box-shadow: 0 0 7px #bdbdbd;
    color: #D40000;
    cursor: pointer;
}

#ccm-company-comic .m-carousel-manga-outer .bx-controls-direction a.bx-prev {
    left: 38%;
    padding: 0.7rem 1rem 0.7rem 0.9rem;
}

#ccm-company-comic .m-carousel-manga-outer .bx-controls-direction a.bx-next {
    right: 38%;
}

#ccm-company-comic .m-carousel-manga-outer .slide-counter {
    margin-top: 1.5rem;
    text-align: center;
}

#ccm-company-comic .m-carousel-manga-outer .slide-counter span {
    color: #D40000;
}

@media screen and (max-width: 768px) {
    #ccm-company-comic .m-carousel-manga-outer {
        margin: 1.5rem 0.5rem;
    }
    #ccm-company-comic .m-carousel-manga-outer .bx-controls-direction a.bx-prev {
        left: 22%;
    }
    #ccm-company-comic .m-carousel-manga-outer .bx-controls-direction a.bx-next {
        right: 22%;
    }
}

#appeal-entry-modal-window {
    padding: 1.5rem 1.5rem 1rem 1.5rem;
    display: none;
    width: 768px;
    top: auto !important;
    bottom: 25%;
}

@media screen and (max-width: 768px) {
    #appeal-entry-modal-window {
        top: auto !important;
        bottom: 8%;
    }
}

#appeal-entry-modal-window .sp-only {
    display: none;
}

#appeal-entry-modal-window .apeal-title-box {
    font-size: 1.2rem;
    text-align: center;
    margin: 0 auto;
}

#appeal-entry-modal-window .apeal-title-box div {
    position: relative;
    padding-left: 3.5rem;
    display: inline-block;
    border-bottom: solid 4px #bdbdbd;
    padding-bottom: 0.4rem;
}

#appeal-entry-modal-window .apeal-title-box div i {
    margin-top: 1rem;
    position: absolute;
    top: -25px;
    left: 0;
}

#appeal-entry-modal-window .apeal-title-box div .red {
    font-size: 2rem;
    font-weight: bold;
    margin-right: 0.5rem;
}

#appeal-entry-modal-window .appeal-feature-box {
    margin-top: 2rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#appeal-entry-modal-window .appeal-feature-box .feature-content {
    width: 32%;
}

#appeal-entry-modal-window .appeal-feature-box .feature-content .img-box {
    height: 120px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#appeal-entry-modal-window .appeal-feature-box .feature-content .img-box img {
    width: auto;
    height: 100px;
    vertical-align: middle;
}

#appeal-entry-modal-window .appeal-feature-box .feature-content .img-box.profile img {
    height: 120px;
}

#appeal-entry-modal-window .appeal-feature-box .feature-content .text {
    margin-top: 0.5rem;
    font-size: 0.8rem;
    text-align: center;
    line-height: 1.4;
}

#appeal-entry-modal-window .button-box {
    margin-top: 2rem;
    padding: 0 1rem;
    width: 100%;
}

#appeal-entry-modal-window .button-box .btn-big {
    padding: 0.5rem 0;
    font-size: 1.1rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: inherit;
    position: relative;
}

#appeal-entry-modal-window .button-box .btn-big.no-entry {
    background-color: #757575;
    margin-right: 1rem;
    pointer-events: none;
}

#appeal-entry-modal-window .button-box .btn-big.no-entry .appeal-alert {
    background-color: #d83232;
    color: #fff;
    position: absolute;
    top: -16px;
    font-size: 0.6rem;
    height: 24px;
    line-height: 24px;
    padding: 0 2rem 0.2rem 0.5rem;
}

#appeal-entry-modal-window .button-box .btn-big.no-entry .appeal-alert i {
    margin-right: 0.5rem;
}

#appeal-entry-modal-window .button-box .btn-big.no-entry::after {
    content: none;
}

#appeal-entry-modal-window .button-box .btn-big.appeal-entry {
    margin-right: 1rem;
}

#appeal-entry-modal-window .button-box .btn-big.appeal-entry span {
    font-size: 0.8rem;
}

#appeal-entry-modal-window .under-text {
    font-size: 0.5rem;
    margin-top: 0.5rem;
    padding: 0 1rem;
}

@media screen and (max-width: 768px) {
    #appeal-entry-modal-window {
        padding: 1.5rem 0.5rem;
        width: 95%;
        margin-left: 2.5%;
    }
    #appeal-entry-modal-window .apeal-title-box {
        font-size: 1.2rem;
    }
    #appeal-entry-modal-window .apeal-title-box div {
        display: inline;
        padding-bottom: 0.2rem;
        line-height: 2.4rem;
    }
    #appeal-entry-modal-window .apeal-title-box div i {
        top: -35px;
    }
    #appeal-entry-modal-window .apeal-title-box div .red {
        font-size: 1.6rem;
    }
    #appeal-entry-modal-window .appeal-feature-box {
        margin-top: 2rem;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    #appeal-entry-modal-window .appeal-feature-box .feature-content {
        width: 100%;
        padding-left: 1rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 1rem;
    }
    #appeal-entry-modal-window .appeal-feature-box .feature-content .img-box {
        height: auto;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    #appeal-entry-modal-window .appeal-feature-box .feature-content .img-box img {
        width: 3rem;
        height: auto;
        vertical-align: middle;
        margin-right: 1.5rem;
    }
    #appeal-entry-modal-window .appeal-feature-box .feature-content .img-box.profile img {
        height: auto;
    }
    #appeal-entry-modal-window .appeal-feature-box .feature-content .text {
        margin-top: 0;
        text-align: left;
    }
    #appeal-entry-modal-window .button-box {
        margin-top: 2rem;
        padding: 0 1rem;
        width: 100%;
    }
    #appeal-entry-modal-window .button-box .btn-big {
        padding: 1rem 0;
        font-size: 1.1rem;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: inherit;
        position: relative;
        margin-bottom: 1rem;
    }
    #appeal-entry-modal-window .button-box .btn-big.no-entry {
        background-color: #757575;
        margin-right: 1rem;
        pointer-events: none;
    }
    #appeal-entry-modal-window .button-box .btn-big.no-entry .appeal-alert {
        background-color: #d83232;
        color: #fff;
        position: absolute;
        top: -16px;
        font-size: 0.6rem;
        height: 24px;
        line-height: 24px;
        padding: 0 2rem 0.2rem 0.5rem;
    }
    #appeal-entry-modal-window .button-box .btn-big.no-entry .appeal-alert i {
        margin-right: 0.5rem;
    }
    #appeal-entry-modal-window .button-box .btn-big.no-entry::after {
        content: none;
    }
    #appeal-entry-modal-window .button-box .btn-big.appeal-entry {
        margin-right: 1rem;
    }
    #appeal-entry-modal-window .button-box .btn-big.appeal-entry span {
        font-size: 0.8rem;
    }
    #appeal-entry-modal-window .under-text {
        font-size: 0.5rem;
        margin-top: 0.5rem;
        padding: 0 1rem;
    }
}
.company-offer p{
    margin-bottom: 15px;
}
#thank_form{width:100%;}