@charset "UTF-8";

.kaizen .area_1 .box
{ display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}

.kaizen .area_1 .box.third
{ 
  margin-bottom: 260px;
}

.kaizen .area_1 .box .left
{ width: 42%;}

.kaizen .area_1 .box .right
{ width: 50%;
  font-size: 16px;
}

.kaizen .area_1 .box .right h2
{ font-size: 120%;
  margin-bottom: 50px;
  position: relative;
  padding-left: 25px;
  line-height: 1.8em;
}

.kaizen .area_1 .box .right h2 span
{ color: #0079ba;
  font-size: 140%;
  margin-right: 5px;
  position: absolute;
  left: 0;
}

.kaizen .area_1 .box .right div
 {
    line-height: 2.1;
    letter-spacing: 0.05em;
    margin-bottom: 60px;
}

.kaizen .area_1 .box .right div p
{
  margin-bottom: 15px;
}


@media (max-width:1023px) {
.kaizen .area_1 .box{ display: block;}
.kaizen .area_1 .box .left,
.kaizen .area_1 .box .right{ width: 100%;}
.kaizen .area_1 .box .left { margin-bottom: 30px;}
}

.kaizen .area_2{
  background: #edf7fb; /* 好きな背景 */
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
  padding: 100px 0;
}

.kaizen .area_2 p{
  font-size: 80%;
  line-height: 1.5em;
  padding-top: 20px;
  padding-bottom: 15px;
}

.kaizen .area_2 .img_wrapper{
  overflow-x: auto;
  width: 100%;
  -webkit-overflow-scrolling: touch; /* iOSスムーズスクロール対応（任意） */
  position: relative;
}

.kaizen .area_2 .img_wrapper img {
  display: inline-block;
  min-width: 1200px; /* 画像サイズ */
  height: auto;
  position: relative;
}

.text_container {
  position: absolute;
  display: flex;
  justify-content: center; /* 横方向の中央 */
  align-items: center;     /* 縦方向の中央 */
  height: 100vh;           /* 必要に応じて高さを指定 */
  writing-mode: vertical-rl; /* 縦書き */
  z-index: 9;
  font-weight: 1000;
  text-overflow: ellipsis;
}

.vertical-text {
  writing-mode: vertical-rl; /* 縦書き */
  text-align: center;
}

.text_1 {
  left: 158px;
  top: 57px;
  height: 367px;
  width: 53px;
}

.text_2 {
  left: 216px;
  top: 57px;
  height: 367px;
  width: 53px;
}

.text_3 {
    left: 277px;
    top: 130px;
    height: 281px;
    width: 53px;
}

.text_4 {
    left: 344px;
    top: 57px;
    height: 355px;
    width: 68px;
}

.text_5 {
    left: 422px;
    top: 57px;
    height: 355px;
    width: 68px;
}

.text_6 {
  left: 507px;
  top: 57px;
  height: 367px;
  width: 53px;
}

.text_7 {
    left: 565px;
    top: 131px;
    height: 209px;
    width: 53px;
}

.text_8 {
    left: 625px;
    top: 131px;
    height: 209px;
    width: 91px;
}

.text_9 {
   left: 725px;
   top: 131px;
   height: 209px;
   width: 53px;
}

.text_10 {
   left: 792px;
   top: 131px;
   height: 209px;
   width: 53px;
}

.text_11 {
   left: 852px;
   top: 131px;
   height: 209px;
   width: 53px;
}

.text_12 {
   left: 910px;
   top: 131px;
   height: 209px;
   width: 53px;
}

.text_13 {
   left: 970px;
   top: 131px;
   height: 209px;
   width: 53px;
}

.text_14 {
  left: 1037px;
  top: 57px;
  height: 367px;
  width: 53px;
}

.text_15 {
    left: 1097px;
    top: 57px;
    height: 137px;
    width: 93px;
}

.text_16 {
    position: absolute;
    left: 159px;
    top: 432px;
    height: 55px;
    width: 331px;
    z-index: 9;
    text-align: center;
    font-weight: 1000;
}

.text_16 p{
    margin: 0 23px;
}


.kaizen .area_2 .button {
    border: 2pt solid #ed1b2e;
    background-color: #ffffff;
    color: #ed1b2e;
    margin-left: 30px;
    position: relative;
    width: 400px;
}

@media (max-width:600px) {
.kaizen .area_2 .button {
    width: auto;
    max-width: 400px;
}}


.kaizen .area_2 .button::after {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    width: 21px;
    height: 15px;
    background-image: url(../images/top/arrow-red.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.kaizen .area_2 .btn_box{
  padding-top: 50px;
}

.kaizen .area_2 .btn_box a{
   margin: 0 auto;
}

@media (max-width:600px) {

.kaizen .area_2 .btn_box a{
  font-size: 12px!important;
}

}

/* TB */
@media (max-width:1023px) {
}

/* SP */
@media (max-width:600px) {

}

@media screen and (max-width: 375px) {}


/* SP */
@media (max-width:767px) {}

/* SE */
@media (max-width:374px) {}