@charset "UTF-8";
:root {
  --animate-duration: 1s;
  --animate-delay: .6s;
  --animate-repeat: 1;
}

@-webkit-keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  25% {
    -webkit-transform: scale(0.96);
            transform: scale(0.96);
  }
  50% {
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
  }
  75% {
    opacity: 1;
    -webkit-transform: scale(0.99);
            transform: scale(0.99);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  25% {
    -webkit-transform: scale(0.96);
            transform: scale(0.96);
  }
  50% {
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
  }
  75% {
    opacity: 1;
    -webkit-transform: scale(0.99);
            transform: scale(0.99);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes rhythm {
  0% {
    opacity: 1;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  35% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  to {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@keyframes rhythm {
  0% {
    opacity: 1;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  35% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  to {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@-webkit-keyframes rhythm-2 {
  0% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  35% {
    opacity: 1;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  to {
    opacity: 1;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
}
@keyframes rhythm-2 {
  0% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  35% {
    opacity: 1;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  to {
    opacity: 1;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
}
@-webkit-keyframes rhythm-3 {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
  }
  0% {
    opacity: 1;
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
  35% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
  to {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@keyframes rhythm-3 {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: linear;
            animation-timing-function: linear;
  }
  0% {
    opacity: 1;
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
  35% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  70% {
    opacity: 1;
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
  to {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
.company__archive .archive .inner {
  max-width: min(77.027vw, 1140px);
}
@media only screen and (max-width: 767px) {
  .company__archive .archive .inner {
    max-width: none;
  }
}
.company__archive .archive__list {
  padding-bottom: min(14.459vw, 214px);
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list {
    padding-bottom: 30.769vw;
  }
}
.company__archive .archive__list li {
  position: relative;
  margin-bottom: min(3.378vw, 50px);
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list li {
    margin-bottom: 12.821vw;
  }
}
.company__archive .archive__list li:last-child {
  margin-bottom: 0;
}
.company__archive .archive__list a {
  position: relative;
  z-index: 2;
  display: block;
  padding-left: min(13.514vw, 200px);
  padding-top: min(4.73vw, 70px);
}
@media print, screen and (min-width: 768px) {
  .company__archive .archive__list a {
    -webkit-transition: all ease-out 0.3s;
    transition: all ease-out 0.3s;
  }
  .company__archive .archive__list a:hover {
    -webkit-transition: all ease-out 0.3s;
    transition: all ease-out 0.3s;
  }
  .company__archive .archive__list a:hover .archive__list__thumb img {
    -webkit-transition: all ease-out 0.3s;
    transition: all ease-out 0.3s;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list a {
    padding-top: 38.462vw;
    padding-left: 0;
  }
}
.company__archive .archive__list__thumb {
  width: min(22.703vw, 336px);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  border-radius: min(1.622vw, 24px);
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list__thumb {
    width: 71.795vw;
    border-radius: 6.154vw;
  }
}
.company__archive .archive__list__thumb img {
  display: block;
  -webkit-transition: all ease-out 0.3s;
  transition: all ease-out 0.3s;
}
.company__archive .archive__list__thumb.border {
  border: 4px solid #F6B07E;
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list__thumb.border {
    border: 1.026vw solid #F6B07E;
  }
}
.company__archive .archive__list__contents {
  position: relative;
}
.company__archive .archive__list__contents:before {
  content: "";
  display: block;
  position: absolute;
  top: min(1.351vw, 20px);
  left: min(1.351vw, 20px);
  z-index: 1;
  width: 100%;
  height: 100%;
  background: url(/assets/img/dots01.png);
  background-size: 8px auto;
  border-radius: 24px;
  opacity: 0.4;
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list__contents:before {
    top: 2.051vw;
    left: 2.051vw;
  }
}
.company__archive .archive__list__contents__inner {
  border: 1px solid #F47F2C;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-radius: 24px;
  background-color: #fff;
  position: relative;
  z-index: 2;
  padding: min(4.189vw, 62px) min(2.027vw, 30px) min(4.189vw, 62px) min(14.189vw, 210px);
  min-height: min(16.216vw, 240px);
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list__contents__inner {
    padding: 33.333vw 12.821vw 15.385vw;
    display: block;
    min-height: 1px;
  }
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list__contents__inner .ico {
    position: absolute;
    bottom: 6.41vw;
    right: 8.205vw;
  }
}
.company__archive .archive__list__contents h2 {
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list__contents h2 {
    font-size: 6.667vw;
    margin-bottom: 7.692vw;
  }
}
.company__archive .archive__list__contents h2 span {
  font-weight: 400;
  display: block;
  padding-top: 1em;
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list__contents h2 span {
    font-size: 3.59vw;
  }
}
.company__archive .archive__list__contents p {
  max-width: min(21.622vw, 320px);
  line-height: 1.8;
}
@media only screen and (max-width: 767px) {
  .company__archive .archive__list__contents p {
    font-size: 4.103vw;
    max-width: none;
  }
}
.company__message .mv__type02 .inner .left__02 p:not(.small) {
  position: relative;
}
.company__message .mv__type02 .inner .left__02 p:not(.small):before {
  content: "";
  display: block;
  width: min(41.486vw, 614px);
  height: min(4.459vw, 66px);
  left: min(-6.757vw, -100px);
  top: min(-1.351vw, -20px);
  position: absolute;
  background-image: url(/assets/img/company/message/message_mv_bg.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
@media only screen and (max-width: 767px) {
  .company__message .mv__type02 .inner .left__02 p:not(.small):before {
    width: 86.154vw;
    height: 10.641vw;
    top: -10.513vw;
    left: -6.154vw;
    background-image: url(/assets/img/company/message/message_mv_bg_sp.png);
  }
}
.company__message .contents {
  padding: min(3.378vw, 50px) 0 min(6.554vw, 97px);
}
@media only screen and (max-width: 767px) {
  .company__message .contents {
    padding: 5.128vw 0 23.077vw;
  }
}
.company__message .contents .inner {
  max-width: min(67.568vw, 1000px);
}
@media only screen and (max-width: 767px) {
  .company__message .contents .inner {
    max-width: none;
  }
}
.company__message .contents .inner p {
  font-size: clamp(12px, 1.351vw, 20px);
  line-height: 2.2;
}
@media only screen and (max-width: 767px) {
  .company__message .contents .inner p {
    font-size: 4.615vw;
  }
}
.company__message .contents__illustration {
  padding: min(3.378vw, 50px) 0 0;
  text-align: right;
  margin-right: min(-3.378vw, -50px);
}
@media only screen and (max-width: 767px) {
  .company__message .contents__illustration {
    margin: 0 -7.692vw;
    padding: 15.385vw 0 0;
  }
}
.company__message .contents__illustration img {
  width: min(44.662vw, 661px);
}
@media only screen and (max-width: 767px) {
  .company__message .contents__illustration img {
    width: 100%;
  }
}
.company__about .contents .inner {
  max-width: min(70.27vw, 1040px);
}
@media only screen and (max-width: 767px) {
  .company__about .contents .inner {
    max-width: none;
  }
}
.company__about .contents .inner dl {
  border-radius: 24px;
  border: 1px solid #000;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  overflow: hidden;
  margin-bottom: min(10.811vw, 160px);
}
@media only screen and (max-width: 767px) {
  .company__about .contents .inner dl {
    margin-bottom: 23.077vw;
  }
}
.company__about .contents .inner dl dt, .company__about .contents .inner dl dd {
  border-bottom: 1px dotted #333333;
  padding: min(3.851vw, 57px) 0;
  text-align: center;
  line-height: 1.8;
}
@media only screen and (max-width: 767px) {
  .company__about .contents .inner dl dt, .company__about .contents .inner dl dd {
    padding: 3.846vw;
  }
}
.company__about .contents .inner dl dt:last-of-type, .company__about .contents .inner dl dd:last-of-type {
  border: none;
}
.company__about .contents .inner dl dt {
  background-color: #FAF7F4;
  width: min(16.216vw, 240px);
}
@media only screen and (max-width: 767px) {
  .company__about .contents .inner dl dt {
    font-size: 4.103vw;
    width: 100%;
    border-bottom: none;
    padding: 2.564vw;
  }
}
.company__about .contents .inner dl dd {
  padding-left: min(3.851vw, 57px);
  width: calc(100% - min(16.216vw, 240px));
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .company__about .contents .inner dl dd {
    font-size: 3.59vw;
    width: 100%;
    padding: 3.846vw;
  }
}
.company__about .contents .inner dl dd img {
  width: min(42.568vw, 630px);
}
@media only screen and (max-width: 767px) {
  .company__about .contents .inner dl dd img {
    width: 100%;
  }
}
.company__about .contents .inner dl dd .flex {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.company__about .contents .inner dl dd .flex li {
  margin: 0 min(0.338vw, 5px);
  width: min(10.135vw, 150px);
  margin-bottom: min(1.959vw, 29px);
}
@media only screen and (max-width: 767px) {
  .company__about .contents .inner dl dd .flex li {
    width: 50%;
    margin: 0 0 3.846vw;
  }
}

.company__about .contents .inner dl dd a:hover{
  color: #D90000;
  transition: color 0.3s ease;
}

.company__about h2 {
  font-size: clamp(12px, 3.784vw, 56px);
  text-align: center;
  margin-bottom: min(4.324vw, 64px);
}
@media only screen and (max-width: 767px) {
  .company__about h2 {
    font-size: 12.308vw;
    margin-bottom: 9.231vw;
  }
}
.company__about h2 span {
  padding-top: min(2.432vw, 36px);
  display: block;
  font-size: clamp(12px, 1.081vw, 16px);
}
@media only screen and (max-width: 767px) {
  .company__about h2 span {
    font-size: 4.103vw;
  }
}
.company__about .sec01 h3 {
  font-size: clamp(12px, 2.162vw, 32px);
  text-align: center;
  font-weight: 500;
  margin-bottom: min(4.595vw, 68px);
}
@media only screen and (max-width: 767px) {
  .company__about .sec01 h3 {
    font-size: 6.154vw;
    margin-bottom: 9.487vw;
  }
}
.company__about .sec01 h3 span {
  color: #F47F2C;
}
.company__about .sec01__contents {
  padding-bottom: min(4.73vw, 70px);
  position: relative;
}
@media only screen and (max-width: 767px) {
  .company__about .sec01__contents {
    padding-bottom: 17.949vw;
  }
}
.company__about .sec01__contents:before {
  content: "";
  display: block;
  background-color: #FAF7F4;
  width: 100%;
  height: min(31.554vw, 467px);
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .company__about .sec01__contents:before {
    height: 114.103vw;
  }
}
.company__about .sec01__contents img, .company__about .sec01__contents p {
  position: relative;
  z-index: 2;
}
.company__about .sec01__contents img {
  margin-bottom: min(4.054vw, 60px);
}
@media only screen and (max-width: 767px) {
  .company__about .sec01__contents img {
    margin-bottom: 15.385vw;
  }
}
.company__about .sec01__contents p {
  font-size: clamp(12px, 1.081vw, 16px);
  text-align: center;
  line-height: 2.2;
  font-weight: 600;
}
@media only screen and (max-width: 767px) {
  .company__about .sec01__contents p {
    font-size: 4.615vw;
    line-height: 2;
  }
}
.company__about .sec01__contents p span {
  color: #F47F2C;
}
.company__about .sec02 {
  padding: min(7.432vw, 110px) 0 min(10.811vw, 160px);
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 {
    padding: 17.949vw 0 23.077vw;
  }
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 h2 {
    margin-bottom: 16.41vw;
  }
}
.company__about .sec02 ul {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 ul {
    display: block;
  }
}
.company__about .sec02 ul li {
  border: 1px solid #F47F2C;
  border-radius: 24px;
  font-size: clamp(12px, 0.946vw, 14px);
  text-align: center;
  padding: min(7.432vw, 110px) min(2.703vw, 40px) min(2.703vw, 40px);
  position: relative;
  width: min(20.27vw, 300px);
  -webkit-box-shadow: 10px 10px 0 #FAF7F4;
          box-shadow: 10px 10px 0 #FAF7F4;
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 ul li {
    width: 100%;
    padding: 26.667vw 7.692vw 7.692vw;
    margin-bottom: 17.436vw;
    border-radius: 6.154vw;
    -webkit-box-shadow: 2.564vw 2.564vw 0 #FAF7F4;
            box-shadow: 2.564vw 2.564vw 0 #FAF7F4;
  }
}
.company__about .sec02 ul li:last-child {
  margin-bottom: 0;
}
.company__about .sec02 ul li img {
  position: absolute;
  top: min(-1.892vw, -28px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.company__about .sec02 ul li h4 {
  font-size: clamp(12px, 1.892vw, 28px);
  font-weight: 500;
  margin-bottom: min(2.027vw, 30px);
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 ul li h4 {
    font-size: 8.205vw;
    margin-bottom: 11.538vw;
  }
}
.company__about .sec02 ul li h4 span {
  display: block;
  font-weight: 400;
  font-size: clamp(12px, 0.946vw, 14px);
  padding-top: 1em;
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 ul li h4 span {
    font-size: 4.103vw;
  }
}
.company__about .sec02 ul li p {
  line-height: 2;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 ul li p {
    font-size: 4.615vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company__about .sec02 ul li:first-child img {
    max-width: min(8.446vw, 125px);
  }
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 ul li:first-child img {
    width: 31.795vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company__about .sec02 ul li:nth-child(2) img {
    max-width: min(9.932vw, 147px);
  }
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 ul li:nth-child(2) img {
    width: 37.436vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company__about .sec02 ul li:last-child img {
    max-width: min(10.541vw, 156px);
  }
}
@media only screen and (max-width: 767px) {
  .company__about .sec02 ul li:last-child img {
    width: 39.744vw;
  }
}
.company__group .figure {
  background: -webkit-gradient(linear, left top, left bottom, from(#FAF7F4), color-stop(89%, #FFF));
  background: -webkit-linear-gradient(top, #FAF7F4 0%, #FFF 89%);
  background: linear-gradient(180deg, #FAF7F4 0%, #FFF 89%);
  text-align: center;
  padding: min(4.189vw, 62px) 0 min(7.432vw, 110px);
  border-bottom: 10px solid #F47F2C;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .company__group .figure {
    overflow: scroll;
  }
}
.company__group .figure img {
  width: min(73.243vw, 1084px);
}
@media only screen and (max-width: 767px) {
  .company__group .figure img {
    width: 166.667vw;
    max-width: none;
    padding: 0 5.128vw;
  }
}
.company__group .figure__swipe {
  margin-top: 11.538vw;
  background: url(/assets/img/company/group/ico_swipe.svg) no-repeat center center;
  background-size: 15.385vw auto;
  height: 7.692vw;
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  left: 0;
  width: 100%;
}
.company__group .sec01 {
  padding: min(10.541vw, 156px) 0 min(8.108vw, 120px);
  background: url(/assets/img/company/group/map.png) no-repeat center top min(-6.757vw, -100px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 {
    padding: 33.333vw 0 20.513vw;
    background: url(/assets/img/company/group/map.png) no-repeat left -121.795vw top -25.641vw;
    background-size: 328.205vw auto;
  }
}
.company__group .sec01 .inner {
  max-width: min(77.027vw, 1140px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner {
    max-width: none;
  }
}
.company__group .sec01 .inner h2 {
  text-align: center;
  margin-bottom: min(3.378vw, 50px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner h2 {
    width: 28.205vw;
    margin: 0 auto 12.821vw;
  }
}
.company__group .sec01 .inner h2 + p {
  max-width: min(54.054vw, 800px);
  width: 100%;
  margin: 0 auto min(4.73vw, 70px);
  font-size: clamp(12px, 1.081vw, 16px);
  line-height: 2.4;
  text-align: justify;
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner h2 + p {
    font-size: 4.103vw;
    max-width: none;
    margin-bottom: 5.128vw;
  }
}
.company__group .sec01 .inner ul {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul {
    display: block;
  }
}
.company__group .sec01 .inner ul li {
  width: min(35.811vw, 530px);
  position: relative;
  border: 1px solid #F47F2C;
  border-radius: 24px;
  background-color: #FFF;
  margin-bottom: min(2.432vw, 36px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul li {
    width: 100%;
    margin-bottom: 5.128vw;
  }
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul li:last-child {
    margin-bottom: 0;
  }
}
.company__group .sec01 .inner ul li a {
  display: block;
  padding: min(2.432vw, 36px) min(3.378vw, 50px) min(3.649vw, 54px);
  height: 100%;
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul li a {
    padding: 7.692vw 5.128vw 15.385vw;
  }
}
.company__group .sec01 .inner ul li figure {
  margin-bottom: min(1.622vw, 24px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul li figure {
    margin-bottom: 5.128vw;
  }
}
.company__group .sec01 .inner ul li figure img {
  margin-bottom: min(-0.676vw, -10px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul li figure img {
    margin-bottom: -1.282vw;
  }
}
.company__group .sec01 .inner ul li figure figcaption {
  font-size: clamp(12px, 1.351vw, 20px);
  line-height: 1.8;
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul li figure figcaption {
    font-size: 4.615vw;
  }
}
.company__group .sec01 .inner ul li .tag {
  font-size: clamp(10px, 0.811vw, 12px);
  padding: 0.5em 1em;
  border: 1px solid #F47F2C;
  border-radius: 24px;
  display: inline-block;
  margin-bottom: min(1.622vw, 24px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul li .tag {
    font-size: 3.077vw;
    margin-bottom: 5.128vw;
    border-radius: 6.154vw;
  }
}
.company__group .sec01 .inner ul li ul li {
  padding: 0;
  border: none;
  font-size: clamp(11px, 0.946vw, 14px);
  position: relative;
  padding-left: 1.4em;
  margin-bottom: 1em;
  width: auto;
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul li ul li {
    font-size: 3.59vw;
  }
}
.company__group .sec01 .inner ul li ul li:last-child {
  margin-bottom: 0;
}
.company__group .sec01 .inner ul li ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
.company__group .sec01 .inner ul li .ico {
  position: absolute;
  bottom: min(2.027vw, 30px);
  right: min(1.351vw, 20px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec01 .inner ul li .ico {
    bottom: 5.128vw;
    right: 5.128vw;
  }
}
.company__group .sec02 {
  padding: min(6.757vw, 100px) 0 min(4.73vw, 70px);
  background-color: #FAF7F4;
}
@media only screen and (max-width: 767px) {
  .company__group .sec02 {
    padding: 20.513vw 0 17.949vw;
  }
}
.company__group .sec02 .inner {
  max-width: min(54.054vw, 800px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec02 .inner {
    max-width: none;
  }
}
.company__group .sec02 .inner h2 {
  font-size: clamp(12px, 1.892vw, 28px);
  text-align: center;
  margin-bottom: min(4.054vw, 60px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec02 .inner h2 {
    font-size: 6.154vw;
    margin-bottom: 8.974vw;
    line-height: 1.6;
  }
}
.company__group .sec02 .inner h2 span {
  display: block;
  font-size: clamp(12px, 1.351vw, 20px);
  color: #A84C3D;
  padding-top: min(2.703vw, 40px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec02 .inner h2 span {
    font-size: 4.103vw;
    padding-top: 7.692vw;
  }
}
.company__group .sec02 .inner p.txt {
  font-size: clamp(12px, 1.081vw, 16px);
  line-height: 2.4;
  width: 100%;
  margin: 0 auto min(3.378vw, 50px);
}
@media only screen and (max-width: 767px) {
  .company__group .sec02 .inner p.txt {
    font-size: 3.59vw;
    margin-bottom: 10.256vw;
  }
}
.company__group .sec02 .inner .btn {
  text-align: right;
}
.company__group .sec02 .inner .btn a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.company__group .sec02 .inner .btn a .ico {
  display: inline-block;
}
.company__numbers.numbers .contents {
  background-color: #FAF7F4;
  padding: min(6.081vw, 90px) 0 min(10.811vw, 160px);
}
@media only screen and (max-width: 767px) {
  .company__numbers.numbers .contents {
    padding: 15.385vw 0 25.641vw;
  }
}
.company__numbers.numbers .contents .inner {
  max-width: min(77.027vw, 1140px);
}
@media only screen and (max-width: 767px) {
  .company__numbers.numbers .contents .inner {
    max-width: none;
  }
}
.company__numbers .numbers__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list {
    display: block;
  }
}
.company__numbers .numbers__list__block {
  max-width: min(36.486vw, 540px);
  width: 50%;
  background-color: #fff;
  text-align: center;
  display: grid;
  place-content: center;
  margin-bottom: min(1.351vw, 20px);
  border-radius: min(1.622vw, 24px);
  position: relative;
  min-height: min(40.541vw, 600px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block {
    padding: 23.077vw 7.692vw 11.538vw;
    width: 100%;
    max-width: none;
    border-radius: 6.154vw;
    min-height: 1px;
    margin-bottom: 5.128vw;
  }
}
.company__numbers .numbers__list__block__01 img {
  width: min(23.581vw, 349px);
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__01 img {
    width: 100%;
  }
}
.company__numbers .numbers__list__block__01 .bar {
  width: min(23.581vw, 349px);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: end;
      -ms-flex-align: end;
          align-items: end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: absolute;
  left: min(6.486vw, 96px);
  bottom: min(4.865vw, 72px);
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__01 .bar {
    width: 64.103vw;
    bottom: 17.949vw;
    left: 9.744vw;
  }
}
.company__numbers .numbers__list__block__01 .bar .ele {
  height: 0;
  display: block;
  width: min(5.405vw, 80px);
  background-color: #C5CCD3;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__01 .bar .ele {
    width: 14.359vw;
  }
}
.company__numbers .numbers__list__block__01 .bar.anim-ON .ele {
  -webkit-transition: height 0.4s ease-out;
  transition: height 0.4s ease-out;
}
.company__numbers .numbers__list__block__01 .bar.anim-ON .ele__01 {
  height: min(6.689vw, 99px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__01 .bar.anim-ON .ele__01 {
    height: 19.231vw;
  }
}
.company__numbers .numbers__list__block__01 .bar.anim-ON .ele__02 {
  height: min(10.946vw, 162px);
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__01 .bar.anim-ON .ele__02 {
    height: 29.231vw;
  }
}
.company__numbers .numbers__list__block__01 .bar.anim-ON .ele__03 {
  height: min(15.27vw, 226px);
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__01 .bar.anim-ON .ele__03 {
    height: 39.231vw;
  }
}
.company__numbers .numbers__list__block__01 .bar.anim-ON .ele__04 {
  background-color: #F47F2C;
  height: min(18.243vw, 270px);
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__01 .bar.anim-ON .ele__04 {
    height: 46.154vw;
  }
}
.company__numbers .numbers__list__block__02 img {
  width: min(27.365vw, 405px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__02 img {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__03 {
    padding-bottom: 6.41vw;
    padding-top: 20.513vw;
  }
}
.company__numbers .numbers__list__block__03 img {
  width: min(30.473vw, 451px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__03 img {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__04 {
    padding-bottom: 7.692vw;
    padding-top: 17.949vw;
  }
}
.company__numbers .numbers__list__block__04 img {
  width: min(29.932vw, 443px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__04 img {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__05 {
    padding-bottom: 3.333vw;
    padding-top: 16.667vw;
  }
}
.company__numbers .numbers__list__block__05 img {
  width: min(31.284vw, 463px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__05 img {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__06 {
    padding-bottom: 4.359vw;
    padding-top: 17.949vw;
  }
}
.company__numbers .numbers__list__block__06 img {
  width: min(29.932vw, 443px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__06 img {
    width: 100%;
  }
}
.company__numbers .numbers__list__block__07 figure img {
  -webkit-transition: opacity ease 0.4s;
  transition: opacity ease 0.4s;
  width: min(31.081vw, 460px);
  position: relative;
  z-index: 2;
  opacity: 0;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__07 figure img {
    width: 100%;
  }
}
.company__numbers .numbers__list__block__07 .circle {
  height: min(17.027vw, 252px);
  width: min(17.027vw, 252px);
  position: absolute;
  bottom: min(8.243vw, 122px);
  left: min(9.865vw, 146px);
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__07 .circle {
    width: 39.744vw;
    height: 39.744vw;
    bottom: 19.872vw;
    left: 23.077vw;
  }
}
.company__numbers .numbers__list__block__07 .circle img {
  width: min(17.027vw, 252px);
  height: auto;
  -webkit-transition: all ease-in-out 0.6s;
  transition: all ease-in-out 0.6s;
  -webkit-transform: scale(0) rotate(180deg);
          transform: scale(0) rotate(180deg);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__07 .circle img {
    width: 39.744vw;
  }
}
.company__numbers .numbers__list__block__07.anim-ON figure img {
  -webkit-transition: opacity ease 0.4s;
  transition: opacity ease 0.4s;
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
  opacity: 1;
}
.company__numbers .numbers__list__block__07.anim-ON .circle img {
  -webkit-transition: all ease-in-out 0.6s;
  transition: all ease-in-out 0.6s;
  -webkit-transform: scale(1) rotate(0);
          transform: scale(1) rotate(0);
}
.company__numbers .numbers__list__block__08 figure img {
  -webkit-transition: opacity ease 0.4s;
  transition: opacity ease 0.4s;
  width: min(31.149vw, 461px);
  position: relative;
  z-index: 2;
  opacity: 0;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__08 figure img {
    width: 100%;
  }
}
.company__numbers .numbers__list__block__08 .circle {
  height: min(17.162vw, 254px);
  width: min(17.162vw, 254px);
  position: absolute;
  bottom: min(10vw, 148px);
  left: min(9.459vw, 140px);
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__08 .circle {
    width: 39.744vw;
    height: 39.744vw;
    bottom: 26.282vw;
    left: 23.077vw;
  }
}
.company__numbers .numbers__list__block__08 .circle img {
  width: min(17.162vw, 254px);
  height: auto;
  -webkit-transition: all ease-in-out 0.6s;
  transition: all ease-in-out 0.6s;
  -webkit-transform: scale(0) rotate(180deg);
          transform: scale(0) rotate(180deg);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__08 .circle img {
    width: 39.744vw;
  }
}
.company__numbers .numbers__list__block__08.anim-ON figure img {
  -webkit-transition: opacity ease 0.4s;
  transition: opacity ease 0.4s;
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
  opacity: 1;
}
.company__numbers .numbers__list__block__08.anim-ON .circle img {
  -webkit-transition: all ease-in-out 0.6s;
  transition: all ease-in-out 0.6s;
  -webkit-transform: scale(1) rotate(0);
          transform: scale(1) rotate(0);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__09 {
    padding-bottom: 7.692vw;
    padding-top: 19.231vw;
  }
}
.company__numbers .numbers__list__block__09 img {
  width: min(31.554vw, 467px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__09 img {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__10 {
    padding-bottom: 10.256vw;
    padding-top: 19.231vw;
  }
}
.company__numbers .numbers__list__block__10 img {
  width: min(30.946vw, 458px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__10 img {
    width: 100%;
  }
}
.company__numbers .numbers__list__block__11 img {
  width: min(28.919vw, 428px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block__11 img {
    width: 100%;
  }
}
.company__numbers .numbers__list__block.numbers__small {
  min-height: min(19.595vw, 290px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block.numbers__small {
    min-height: 1px;
  }
}
.company__numbers .numbers__list__block.numbers__small.ex figure img {
  top: 0;
}
.company__numbers .numbers__list__block figure {
  margin-bottom: 0;
}
.company__numbers .numbers__list__block figure.anim-ON img.before {
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-name: bounceIn;
          animation-name: bounceIn;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.company__numbers .numbers__list__block figure.anim-ON img.rhythm {
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-name: rhythm;
          animation-name: rhythm;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.company__numbers .numbers__list__block figure.anim-ON img.rhythm-2 {
  -webkit-animation-duration: calc(var(--animate-duration) * 1);
          animation-duration: calc(var(--animate-duration) * 1);
  -webkit-animation-name: rhythm-2;
          animation-name: rhythm-2;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.company__numbers .numbers__list__block figure.anim-ON img.rhythm-3 {
  -webkit-animation-duration: calc(var(--animate-duration) * 1);
          animation-duration: calc(var(--animate-duration) * 1);
  -webkit-animation-name: rhythm-3;
          animation-name: rhythm-3;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.company__numbers .numbers__list__block figure img {
  position: relative;
  top: min(2.027vw, 30px);
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block figure img {
    top: 0;
  }
}
.company__numbers .numbers__list__block figure img.before, .company__numbers .numbers__list__block figure img.rhythm {
  position: absolute;
  top: min(2.027vw, 30px);
  left: 0;
  opacity: 0;
  -webkit-transform-origin: center;
          transform-origin: center;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block figure img.before, .company__numbers .numbers__list__block figure img.rhythm {
    top: 0;
  }
}
.company__numbers .numbers__list__block figure img.rhythm {
  opacity: 1;
}
.company__numbers .numbers__list__block figure .imgWrap {
  position: relative;
}
.company__numbers .numbers__list__block figure figcaption {
  font-weight: 500;
  font-size: clamp(12px, 2.162vw, 32px);
  position: absolute;
  top: min(2.703vw, 40px);
  left: 0;
  width: 100%;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__list__block figure figcaption {
    font-size: 7.179vw;
    top: 8.462vw;
  }
}
.company__numbers .numbers__grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__grid {
    display: block;
  }
}
.company__numbers .numbers__grid .column {
  max-width: min(36.486vw, 540px);
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__grid .column {
    width: 100%;
    max-width: none;
  }
}
.company__numbers .numbers__grid .column .numbers__list__block {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .company__numbers .numbers__grid__00 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.company__numbers .caution {
  padding-top: 1em;
}
.company__philosophy .vision {
  margin-bottom: min(2.703vw, 40px);
}
@media only screen and (max-width: 767px) {
  .company__philosophy .vision {
    margin-bottom: 15.385vw;
  }
}
@media only screen and (max-width: 767px) {
  .company__philosophy .vision .flex {
    display: block;
  }
}
.company__philosophy .vision .flex .left {
  width: calc(100% - min(37.973vw, 562px));
}
@media only screen and (max-width: 767px) {
  .company__philosophy .vision .flex .left {
    width: 100%;
  }
}
.company__philosophy .vision .flex .left h3 {
  margin-bottom: min(4.324vw, 64px);
}
@media only screen and (max-width: 767px) {
  .company__philosophy .vision .flex .left h3 {
    width: 56.41vw;
    margin: 0 auto 11.538vw;
  }
}
.company__philosophy .vision .flex .left p {
  font-size: clamp(12px, 1.081vw, 16px);
  line-height: 2.2;
}
@media only screen and (max-width: 767px) {
  .company__philosophy .vision .flex .left p {
    font-size: 4.103vw;
    text-align: center;
  }
}
.company__philosophy .vision .flex .left p span {
  font-size: clamp(12px, 1.622vw, 24px);
  display: block;
  font-weight: 500;
  padding-top: 0.5em;
}
@media only screen and (max-width: 767px) {
  .company__philosophy .vision .flex .left p span {
    font-size: 5.128vw;
    padding-top: 1em;
  }
}
.company__philosophy .vision .flex .left p span em {
  color: #F57F2A;
}
.company__philosophy .vision .flex .right {
  width: min(37.973vw, 562px);
  position: relative;
}
@media only screen and (max-width: 767px) {
  .company__philosophy .vision .flex .right {
    width: 100%;
    padding-top: 7.179vw;
  }
}
.company__philosophy .vision .flex .right img {
  top: min(-2.162vw, -32px);
  position: relative;
  right: min(-3.784vw, -56px);
}
@media only screen and (max-width: 767px) {
  .company__philosophy .vision .flex .right img {
    top: auto;
    right: -7.692vw;
    left: 0;
    width: calc(100% + 7.692vw);
    max-width: none;
  }
}