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

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

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

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

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

.btn-big, .btn-rectangle.middle, .link-arrow {
  position: relative;
}
.btn-big::after, .btn-rectangle.middle::after, .link-arrow::after {
  content: ">";
  position: absolute;
  right: 1rem;
  transform: scale(0.5, 1);
}
.icon-lg.btn-big::after, .icon-lg.btn-rectangle.middle::after, .icon-lg.link-arrow::after {
  font-size: 2em;
}

.h0 {
  font-size: 2rem;
  font-weight: 600;
  background: linear-gradient(transparent 92%, #df7919 0%);
  padding: 0 0 0.25rem;
  line-height: 1.8;
}

.h2 {
  font-size: 2.1rem;
  font-weight: 600;
  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: 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: linear-gradient(transparent 93%, #d83232 0%);
}

.h3-line {
  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: 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: linear-gradient(#df7919 0%, #df7919 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: linear-gradient(transparent 93%, #df7919 0%);
}

.h5 {
  font-size: 1.5rem;
  font-weight: bold;
  color: white;
  background-color: #df7919;
  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: linear-gradient(transparent 70%, #ffbb7d 0%);
}

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

.breakthrough {
  position: relative;
  line-height: 1.8;
  background: linear-gradient(transparent 53%, black 53%, black 58%, transparent 58%);
}

.link {
  color: #df7919;
  padding: 0.25rem 0 0.25rem;
  position: relative;
  line-height: 1.6;
  background: linear-gradient(transparent 93%, #df7919 0%);
}

.ccm-table.table {
  display: flex;
  flex-direction: column;
  border: 1px solid #d2d2d2;
  padding: 0 1.6rem;
}
.ccm-table.table .tr {
  flex: 1;
  display: flex;
  border-top: 1px solid #d2d2d2;
  padding: 1.6rem 0;
}
.ccm-table.table .tr:first-child {
  border: none;
}
.ccm-table.table .tr .th {
  flex: 1;
  max-width: 12rem;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 1.2rem;
}
.ccm-table.table .tr .td {
  flex: 1;
  max-width: 40vw;
  display: flex;
  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: #df7919;
}

.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: flex;
}

.flex-center, .next-rectangle, .btn-circle, .btn-big, .btn-round {
  display: flex;
  justify-content: center;
  align-items: center;
  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, .ccm-form .input.checkbox input[type=checkbox] + label::before, .ccm-form .input.checkbox input[type=checkbox] + label, .btn-rectangle {
  border-radius: 2px;
}

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

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

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

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

.hover-shadow-0:hover {
  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 {
  flex: 1;
}

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

.flex-row {
  flex-direction: row;
}

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

.w-full {
  width: 100%;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.static {
  position: static;
}

.items-start {
  align-items: flex-start;
}

.items-end {
  align-items: flex-end;
}

.items-streach {
  align-items: stretch;
}

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

.justify-center {
  justify-content: center;
}

.justify-between {
  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 {
    flex-wrap: wrap;
  }
  .sp-justify-between {
    justify-content: space-between;
  }
  .sp-hidden {
    display: none;
  }
  .sp-block {
    display: block;
  }
  .sp-flex {
    display: flex;
  }
  .sp-w-full {
    width: 100%;
  }
  .sp-w-half {
    width: 50%;
  }
}
html,
body {
  font-size: 16px;
}

.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: #df7919;
}

.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: #df7919;
  color: white;
  padding: 0.5rem 2em;
  outline: 3px solid transparent;
}
.btn-round:hover, .btn-round.hovered {
  background: white;
  outline-color: #df7919;
  color: #df7919;
}
.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.black {
  background-color: #424242;
  outline: 3px solid transparent;
}
.btn-round.black:hover, .btn-round.black.hovered {
  background: white;
  outline-color: #424242;
  color: #424242;
}
.btn-round.gradation.red-orange {
  background: rgb(251, 102, 77);
  background: linear-gradient(66deg, rgb(251, 102, 77) 0%, rgb(241, 141, 39) 100%);
  outline: 3px solid transparent;
}
.btn-round.gradation.red-orange:hover, .btn-round.gradation.red-orange.hovered {
  background: white;
  outline-color: #df7919;
  color: #df7919;
}
.btn-round.gradation.navy-dark {
  background: rgb(65, 77, 90);
  background: linear-gradient(66deg, rgb(65, 77, 90) 0%, rgb(47, 57, 69) 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: #df7919;
  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: flex;
  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: #df7919;
  outline: 3px solid transparent;
}
.btn-circle.white:hover, .btn-circle.white.hovered {
  background: #df7919;
  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 {
  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: 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;
  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 {
  transform: rotate(225deg) translate(0.75em, -0.75em);
}

.gradation.red-orange {
  background-color: rgb(251, 102, 77);
  background-image: linear-gradient(66deg, rgb(251, 102, 77) 0%, rgb(241, 141, 39) 100%);
  outline: 3px solid transparent;
}
.gradation.red-orange:hover, .gradation.red-orange.hovered {
  background: white;
  outline-color: #df7919;
  color: #df7919;
}
.gradation.navy-dark {
  background-color: rgb(65, 77, 90);
  background-image: linear-gradient(66deg, rgb(65, 77, 90) 0%, rgb(47, 57, 69) 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: rgb(0, 170, 228);
  background-image: linear-gradient(90deg, rgb(0, 170, 228) 0%, rgb(0, 81, 210) 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: rgb(0, 182, 141);
  background-image: linear-gradient(90deg, rgb(0, 182, 141) 0%, rgb(143, 217, 86) 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: rgb(0, 170, 228);
  background-image: linear-gradient(90deg, rgb(62, 182, 234) 0%, rgb(36, 87, 220) 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: rgb(251, 102, 77);
  background-image: linear-gradient(66deg, rgb(251, 102, 77) 0%, rgb(241, 141, 39) 100%);
}
.bg-gradation.navy-dark {
  background-color: rgb(65, 77, 90);
  background-image: linear-gradient(66deg, rgb(65, 77, 90) 0%, rgb(47, 57, 69) 100%);
}
.bg-gradation.sky-blue {
  background-color: rgb(0, 170, 228);
  background-image: linear-gradient(90deg, rgb(0, 170, 228) 0%, rgb(0, 81, 210) 100%);
}
.bg-gradation.green-yellow {
  background-color: rgb(0, 182, 141);
  background-image: linear-gradient(90deg, rgb(0, 182, 141) 0%, rgb(143, 217, 86) 100%);
}
.bg-gradation.sky-blue {
  background-color: rgb(0, 170, 228);
  background-image: linear-gradient(90deg, rgb(62, 182, 234) 0%, rgb(36, 87, 220) 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::-moz-placeholder, .ccm-form textarea::-moz-placeholder, .ccm-form select::-moz-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: flex;
  justify-content: flex-start;
  align-items: center;
  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: #df7919;
}
.ccm-form .input.checkbox input[type=checkbox]:checked + label, .ccm-form .input.checkbox input[type=checkbox].checked + label {
  outline-width: 2px;
  outline-color: #df7919;
}
.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 #df7919 #df7919 transparent;
  transform: rotate(45deg) skew(5deg, 5deg);
}
.ccm-form .input.radio {
  position: relative;
  left: -0.6rem;
}
.ccm-form .input.radio fieldset {
  display: flex;
  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: flex;
  justify-content: flex-start;
  align-items: center;
  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: #df7919;
}
.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: #df7919;
  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: #df7919;
}
.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: #df7919;
  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 {
  align-items: center;
  justify-content: center;
}
.ccm-paginate .paginate-arrow {
  padding: 0.8rem 1.1rem;
  background-color: #fff;
  border-radius: 50%;
  box-shadow: 0 0 7px #bdbdbd;
  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: #df7919;
}
.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%;
  box-shadow: 0 0 7px #bdbdbd;
  margin: 0 0.5rem;
  font-weight: bold;
  color: #df7919;
  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: #df7919;
  color: #fff;
}
.ccm-paginate .m-page-num:hover {
  color: #fff;
  background-color: #df7919;
}
.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 {
  transform: rotate(-35deg);
}
.ccm-sns-btn .sns-title:after {
  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;
}

#flashMessage {
  position: fixed;
  top: 0;
  transform: translateY(-100%);
  min-height: 80px;
  width: 100%;
  line-height: 26px;
  padding: 27px;
  background-color: rgba(0, 133, 178, 0.9);
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  opacity: 0;
  z-index: 9999;
}

#flashMessage.error {
  background-color: rgba(217, 52, 0, 0.9);
}

#flashMessage.close {
  display: none;
}

#flashMessage.floating {
  opacity: 1;
  transform: translateY(0%);
  transition: opacity 1s, transform 0.4s;
}

#flashMessage .m-close-btn {
  position: absolute;
  top: 30px;
  right: 40px;
}

.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;
  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 #df7919;
  justify-content: space-evenly;
}
#ccm-company-header .company-header-nav .nav-content {
  color: #df7919;
  font-weight: bold;
  font-size: 0.7rem;
  position: relative;
  text-align: center;
  display: block;
  padding: 0.4rem 0.5rem 0rem 0.4rem;
  flex: 1;
  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;
  transform: translateX(-50%);
  background-color: #df7919;
  border-radius: 2px;
}
#ccm-company-header .company-header-nav .nav-content:hover {
  color: #fff;
  background-color: #df7919;
}
#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: #df7919;
}
#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;
    align-items: center;
  }
  #ccm-company-header .company-info .company-header-logo {
    flex: 1;
  }
  #ccm-company-header .company-info .company-header-logo img {
    width: 100%;
    height: auto;
  }
  #ccm-company-header .company-info .company-detail {
    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 {
    flex-wrap: wrap;
    border-bottom: none;
  }
  #ccm-company-header .company-header-nav .nav-content {
    width: 50%;
    flex: initial;
    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;
    transform: translateX(-50%);
    background-color: #df7919;
    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;
    transform: translateY(-50%);
    background-color: #df7919;
    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;
    transform: translateY(-50%);
    background-color: #df7919;
    border-radius: 2px;
  }
  #ccm-company-header .company-header-nav .nav-content.active .arrow {
    display: none;
  }
}

.company-seminar-box {
  justify-content: space-between;
  flex-wrap: wrap;
}
.company-seminar-box .list-company {
  width: 372px;
  margin-bottom: 2rem;
  position: relative;
  overflow: initial;
  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;
  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: #df7919;
  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 #df7919;
  color: #df7919;
  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 {
  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);
  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 {
  justify-content: space-between;
  align-items: center;
  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;
  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: flex;
  padding-bottom: 1rem;
}
.company-seminar-box-list .list-company .seminnar-list-top .top-image {
  flex: 1;
  height: auto;
  display: flex;
  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;
  flex: 2;
  padding: 0;
  display: flex;
  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;
  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: #df7919;
  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 #df7919;
  color: #df7919;
  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;
  flex-wrap: wrap;
  justify-content: space-between;
}
.company-seminar-box-list .list-company .seminar-date-wrap .seminar-date-box {
  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);
  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 {
  justify-content: space-between;
  align-items: center;
  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 {
    justify-content: center;
  }
  .company-seminar-box .list-company {
    padding-bottom: 1.5rem;
    margin-bottom: 2.4rem;
    box-shadow: none;
  }
  .company-seminar-box .list-company .company-info > .seminar-date-wrap > .seminar-date-box > .seminar-time .date {
    order: 2;
  }
  .company-seminar-box .list-company .company-info > .seminar-date-wrap > .seminar-date-box > .seminar-time .status-tag {
    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 {
  justify-content: space-between;
  flex-wrap: wrap;
  display: flex;
}
.company-offer-box .list-company {
  width: 348px;
  /*margin: 0 1.5rem 1.5rem 0;*/
  position: relative;
  overflow: visible;
  border-radius: 10px;
  box-shadow: 0 0 5px 1px #bdbdbd;
}
.company-offer-box .list-company .js-pushOfferBookmark .cp-button {
  position: absolute;
  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: #df7919;
  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: #df7919;
  border: solid 1px #df7919;
}
.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: flex;
  align-items: 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: #df7919;
  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 #df7919;
  color: #df7919;
}
.company-offer-box .list-company .company-info .offer-feature-region {
  display: flex;
  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: flex;
  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: 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: flex;
  justify-content: center;
  align-items: center;
  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 {
  flex-direction: column;
  padding-right: 1rem;
}
.company-offer-box.display-list .list-company {
  overflow: visible;
  width: 100%;
  margin-bottom: 1rem;
  position: relative;
  display: flex;
  border-radius: 10px;
}
.company-offer-box.display-list .list-company .js-pushOfferBookmark .cp-button {
  position: absolute;
  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: #df7919;
  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: #df7919;
  border: solid 1px #df7919;
}
.company-offer-box.display-list .list-company .top-image {
  flex: 2;
  height: auto;
  display: flex;
  max-width: 400px;
  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 {
  flex: 2;
  padding: 0.7rem 1rem;
  display: flex;
  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: #df7919;
  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 #df7919;
  color: #df7919;
}
.company-offer-box.display-list .list-company .company-info .offer-feature-region {
  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 {
    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 {
    writing-mode: initial;
    right: 1.5rem;
    top: initial;
    bottom: -20px;
    padding: 0.2rem 0;
    width: calc(100% - 3rem);
    background-color: #df7919;
    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;
  justify-content: center;
}
.sns-share .share-text .left-line {
  width: 1.4rem;
  border-top: 2px solid #000;
  transform: rotate(65deg);
  margin-right: 0.5rem;
}
.sns-share .share-text .right-line {
  width: 1.4rem;
  border-top: 2px solid #000;
  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: flex;
  position: fixed;
  min-width: 768px;
  margin: 0;
  top: -170px;
  transform: translateY(100%);
}
.company-footer-button-box.floating {
  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;
  box-shadow: rgba(221, 221, 221, 0.701961) 0px 0px 6px 3px;
  transform: translateY(0);
  transition: 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;
  flex-wrap: wrap;
}
.company-footer-button-box .button-inner .company-footer-submit {
  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;
}
.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: #df7919;
}
.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: linear-gradient(90deg, rgb(216, 50, 50) 30%, rgb(255, 255, 255) 100%);
  font-size: 1.4rem;
  color: #fff;
  padding: 0.2rem 0.8rem;
  font-weight: bold;
  width: 100%;
  letter-spacing: 3px;
  transform: scaleX(0.7);
  transform-origin: left;
  width: 142%;
}
.company-feature .point .feature-title {
  padding: 1rem 0;
  font-size: 1rem;
  font-weight: bold;
  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;
  align-items: center;
  width: 100%;
}
.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 {
  flex-wrap: wrap;
  justify-content: space-between;
  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;
  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%;
  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: linear-gradient(transparent 93%, #df7919 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 {
  flex-wrap: wrap;
  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;
  flex: 2;
  font-size: 0.8rem;
}
#ccm-company-index .company-info-wrap .company-info-box .info .content {
  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 {
    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 {
    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;
}
#ccm-company-offer .offer-tag {
  align-items: center;
  margin-top: 0.8rem;
  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;
}
#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: linear-gradient(transparent 93%, #df7919 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 {
  justify-content: space-between;
  margin: 0 -0.5rem;
}
#ccm-company-offer .company-job .company-job-box .job-img-box .job-img {
  flex: 1;
  margin: 0.5rem;
  display: flex;
  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 #df7919;
  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;
  flex: 2;
  font-size: 0.8rem;
}
#ccm-company-offer .company-offer-content .offer-content .content-box .content {
  flex: 7;
  font-size: 0.8rem;
}
#ccm-company-offer .company-offer-content .offer-content .content-box .selection-flow-box {
  border-radius: 5px;
  margin-top: 1rem;
  background-color: #fff;
  position: relative;
  font-size: 0.8rem;
}
#ccm-company-offer .company-offer-content .offer-content .content-box .start,
#ccm-company-offer .company-offer-content .offer-content .content-box .finish {
  background-color: #43c48f;
  color: #fff;
}
#ccm-company-offer .company-offer-content .offer-content .content-box .start:after,
#ccm-company-offer .company-offer-content .offer-content .content-box .finish:after {
  border-color: transparent transparent transparent #43c48f;
}
#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;
  flex: 2;
  font-size: 0.8rem;
}
#ccm-company-offer .company-info-wrap .company-info-box .info .content {
  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 {
    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: linear-gradient(transparent 93%, #df7919 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 {
  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: linear-gradient(transparent 93%, #df7919 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;
  flex: 2;
  font-size: 0.8rem;
}
#ccm-company-seminar-detail .seminar-content-wrap .seminar-content-box .seminar-info-box .info .content {
  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 #df7919;
  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;
  flex: 2;
  font-size: 0.8rem;
}
#ccm-company-seminar-detail .seminar-info-wrap .seminar-info-box .info .content {
  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 {
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 1rem;
}
#ccm-company-seminar-detail .seminar-date-wrap .seminar-date-box .seminar-date {
  border-radius: 5px;
  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 {
  justify-content: space-between;
  align-items: center;
  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: #df7919;
  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: #df7919;
  margin-bottom: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#ccm-company-seminar-detail .register-parts .register:before,
#ccm-company-seminar-detail .register-parts .register:after {
  content: "";
  height: 2px;
  flex-grow: 1;
  background-color: #df7919;
  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 {
  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 {
    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 {
    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 {
    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 {
    flex-direction: column;
    align-items: flex-start;
  }
  #ccm-company-seminar-detail .seminar-detail-wrap .seminar-date-wrap .seminar-date-box .seminar-date .seminar-time .date {
    order: 2;
  }
  #ccm-company-seminar-detail .seminar-detail-wrap .seminar-date-wrap .seminar-date-box .seminar-date .seminar-time .status-tag {
    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 {
  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 #df7919;
  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 {
  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 #df7919;
  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;
  flex: 2;
  font-size: 0.8rem;
}
#ccm-company-detail .company-info-wrap .company-info-box .info .content {
  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 {
    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 {
    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 {
    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 {
  flex-wrap: wrap;
  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;
  position: relative;
  z-index: 2;
}
#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 {
    flex-wrap: wrap;
    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 {
  flex-wrap: wrap;
  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;
  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: linear-gradient(transparent 93%, #df7919 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 .company-message-detail-wrap .message-content a {
  color: #df7919;
  text-decoration: underline;
}
#ccm-company-message-detail .company-message-detail-wrap .message-content a:hover {
  color: rgba(51, 51, 51, 0.7);
  text-decoration: none;
}
#ccm-company-message-detail .company-message-detail-wrap .company-member-wrap {
  margin-bottom: 2rem;
}
#ccm-company-message-detail .company-message-detail-wrap .company-member-wrap .author-title {
  font-weight: bold;
  margin-bottom: 0.5rem;
  font-size: 1rem;
}
#ccm-company-message-detail .company-message-detail-wrap .company-member-wrap .president .icon {
  width: 20%;
}
#ccm-company-message-detail .company-message-detail-wrap .company-member-wrap a {
  color: #df7919;
  text-decoration: underline;
}
#ccm-company-message-detail .company-message-detail-wrap .company-member-wrap a:hover {
  color: rgba(51, 51, 51, 0.7);
  text-decoration: none;
}
#ccm-company-message-detail .message-nextprev-box {
  justify-content: space-between;
  width: 100%;
  color: #df7919;
}
#ccm-company-message-detail .message-nextprev-box .message-guide-box {
  display: block;
  width: 48%;
  border-radius: 5px;
  background-color: #fff;
  position: relative;
  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;
  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;
  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 {
  flex-wrap: wrap;
  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;
  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 .company-message-detail-wrap .company-member-wrap .president {
    padding: 2rem 1rem;
  }
  #ccm-company-message-detail .company-message-detail-wrap .company-member-wrap .president .icon {
    width: 70%;
    margin: 0 auto;
    margin-bottom: 1.5rem;
  }
  #ccm-company-message-detail .company-message-detail-wrap .company-member-wrap .president .predident-info {
    margin: 0;
  }
  #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%;
  box-shadow: 0 0 7px #bdbdbd;
  color: #df7919;
  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: #df7919;
}
@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;
  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;
  align-items: 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;
  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;
    justify-content: center;
  }
  #appeal-entry-modal-window .appeal-feature-box .feature-content {
    width: 100%;
    padding-left: 1rem;
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
  }
  #appeal-entry-modal-window .appeal-feature-box .feature-content .img-box {
    height: auto;
    align-items: 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;
    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;
  }
}