@charset "UTF-8";

#wrapper {
       position: relative;
       width: 100%;
       height: 100%;
       margin: 0;

}

#content {
       position: relative;
       overflow: hidden;
}


.contact_box {
       position: relative;
       display: block;
       width: 100%;
       background: #1eb2cd;
       padding: 20px 0;
}

.contact_box .inner {
       position: relative;
       width: 90%;
       max-width: 1200px;
       margin: 0 auto;
       height: auto;
       display: flex;
       justify-content: center;
       align-items: center;
}

.contact_box .inner .left {
       background: #fff;
       width: 58%;
       padding: 15px;
       float: left;
}

.contact_box .inner .left .link01 {
       width: 49%;
       margin-right: 1%;
       float: left;
}

.contact_box .inner .left .link02 {
       padding-left: 17.5px;
       margin-left: 17.5px;
       border-left: solid 1px #bfbfbf;
       width: 49%;
       margin-left: 1%;
       float: right;

}

.contact_box .inner .left .link01img,
.contact_box .inner .left .link02 img {
       width: 100%;
       height: auto;
}

.contact_box .inner .right {
       width: 42%;
       padding: 5px;
       float: right;
}



@media screen and (max-width: 768px) {
       .contact_box {
              padding: 15px 0 0;
       }

       .contact_box .inner {
              position: relative;
              width: 90%;
              margin: 0 auto;
              height: auto;
              display: block;
       }

       .contact_box .inner .left {
              display: inline-block;
              background: #fff;
              width: 100%;
              padding: 10px 5px;
              float: none;
       }

       .contact_box .inner .left .link01 {
              width: 50%;
              margin-right: 1%;
              float: left;
       }

       .contact_box .inner .left .link02 {
              padding-left: 5px;
              margin-left: 10px;
              border-left: solid 1px #dcdcdc;
              width: 48%;
              margin-left: 1%;
              float: right;

       }

       .contact_box .inner .right {
              display: block;
              width: 100%;
              padding: 15px;
              float: none;
       }
}



/****sec01****/

.sec01 {
       position: relative;
       display: block;
       width: 100%;
       padding: 80px 0;
}

.sec01 .box01 {
       position: relative;
       width: 90%;
       max-width: 1200px;
       margin: 0 auto;
       height: auto;
       display: flex;
       justify-content: center;
       align-items: center;
}

.sec01 .box01 .left {
       width: 50%;
       padding-right: 40px;
       text-align: left;
       float: left;
}

.sec01 .box01 .left ul {
       display: block;
       width: 100%;
       margin: 35px auto 0;
}


.sec01 .box01 .left ul li {
       width: 30.3%;
       margin: 1.5%;
       float: left;
}

.sec01 .box01 .left ul li .image {
       width: 100%;
}

.sec01 .box01 .left ul li .txt {
       padding-top: 5px;
       font-weight: 700;
       text-align: center;

}

.sec01 .box01 .right {
       width: 50%;
       text-align: center;
       float: right;
}

.sec01 .box01 .right img {
       width: 100%;
       height: auto;
}




.sec01 .box02 {
       position: relative;
       width: 90%;
       max-width: 1200px;
       margin: 100px auto;
       height: auto;
       display: flex;
       justify-content: center;
       align-items: center;
}

.sec01 .box02 .left {
       width: 50%;
       text-align: center;
       float: left;
}

.sec01 .box02 .left img {
       width: 100%;
       height: auto;
}

.sec01 .box02 .right {
       width: 50%;
       padding: 0 20px;
       text-align: left;
       float: right;
}
.mainlead {
    font-size: 20px;
    line-height: 1.8;
    text-align: center;
    font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    margin-top: 6rem;
}
.mainlead br.sp {
	display: none;
}
.sec01-bnr {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 90%;
    margin: 0 auto 80px;
    max-width: 1200px;
    grid-row-gap: 60px;
    column-gap: 40px;
}
.sec01-bnr a {
    position: relative;
    display: block;
    width: 48%;
    border-radius: 10px;
    overflow: hidden;
}
.sec01-bnr .bnr__text {
	text-align: center;
    position: absolute;
	width: 100%;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 30px;
    line-height: 1.6;
    color: #fff;
    font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.sec01-bnr .bnr__text span {
    font-size: 24px; 
    line-height: 1.5;
    display: block;
}

@media screen and (max-width: 1111px) {
	
.mainlead {
    font-size: clamp(14px,3vw,20px);
    width: 90%;
    padding: 0 5px;
	margin: 4rem auto 0;
}
.mainlead br.sp {
	display: block;
}
.sec01-bnr {
    margin: 0 auto 40px;
        grid-row-gap: 20px;
        column-gap: 0;
}
.sec01-bnr a {
    width: 100%;
    text-align: center;
}
.sec01-bnr .bnr__text {
    font-size: clamp(16px, 3vw, 23px);
}
.sec01-bnr .bnr__text span {
   font-size: clamp(13px, 3vw, 18px);
}
}


.sp1024 {
       display: none;
}

.pc1024 {
       display: block;
}

@media screen and (max-width: 1024px) {
       .pc1024 {
              display: none;
       }

       .sp1024 {
              display: block;
       }

       .sec01 {
              position: relative;
              display: block;
              width: 90%;
              margin: 40px auto;
              padding: 0 5px;
       }

       .sec01 .box03 {
              position: relative;
              width: 100%;
              margin: 0 auto 50px;
              height: auto;
              display: block;
       }

       .sec01 .box03 .left {
              width: 100%;
              text-align: left;
              float: none;
       }

       .sec01 .box03 .left .images {
              width: 100%;
              text-align: center;
              margin: 0 auto 20px;
       }


       .sec01 .box03 .left ul {
              display: block;
              width: 100%;
              margin: 35px auto 0;
       }


       .sec01 .box03 .left ul li {
              width: 31.3%;
              margin: 1%;
              float: left;
       }

       .sec01 .box03 .left ul li .image {
              width: 100%;
              padding: 0;
       }

       .sec01 .box03 .left ul li .txt {
              padding-top: 0;
              font-weight: 500;
              text-align: center;
              letter-spacing: 0;
       }

       .sec01 .box03 .right {
              width: 100%;
              margin: 20px auto 0;
              text-align: center;
              float: none;
       }

       .sec01 .box03 .right img {
              width: 100%;
              height: auto;
       }

       .sec01-bnr {
              margin-bottom: 40px;
       }
}


@media screen and (max-width: 768px) {
       .sec01 .box03 .left ul {
              margin: 15px auto 0;
       }

       .sec01 .box03 .left ul li .txt {
              font-size: 13px;
              font-size: 1.3rem;
       }

}



/****sec02****/

.sec02 {
       position: relative;
       display: block;
       width: 100%;
       padding: 200px 0 100px;
}

.sec02 .inner {
       position: relative;
       display: block;
       width: 100%;
       margin: 0 auto;
       padding: 0 0 80px;
       background-image: url("../img/top/bg2.jpg");
       background-size: cover;
}



.sec02 .inner .title {
       width: 100%;
       position: absolute;
       top: -40px;
       left: 0;
       text-align: center;
}

.sec02 .inner .tit {
       position: relative;
       display: block;
       width: 80%;
       max-width: 1000px;
       margin: 0 auto 50px;
       padding-top: 150px;
       text-align: center;
       color: #fff;
}

.sec02 .inner .tit .txt01 {
       display: block;
    font-weight: 700;
      font-family: "Noto Sans JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      -webkit-font-family: "Noto Sans JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 19px;
       font-size: 1.9rem;
       padding-bottom: 10px;
}

.sec02 .inner .tit .txt02 {
       display: inline-block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       -webkit-font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: 700;
       font-size: 38px;
       font-size: 3.8rem;
       border-top: solid 1px #fff;
       border-bottom: solid 1px #fff;
       padding: 5px;
}

.sec02 .txt03 {
       font-family: 'Crimson Text', serif;
       font-size: 100px;
       font-size: 10.0rem;
       line-height: 1;
       font-weight: 600;
       color: rgba(255, 255, 255, 0.1);
       text-align: center;
}

.sec02 .inner .box {
       display: block;
       width: 90%;
       max-width: 1200px;
       margin: 0 auto;
}

.sec02 .inner .box ul {
       display: block;
       width: 100%;
       margin: 0 auto;
}

.sec02 .inner .box ul li {
       width: 30.3%;
       margin: 1.5%;
       background: #fff;
       float: left;
       text-align: left;
}


.sec02 .inner .box ul li .image {
       width: 100%;
       text-align: center;
       position: relative;
       padding-bottom: 40px;
}


.sec02 .inner .box ul li .reason_num {
       font-family: 'Crimson Text', serif;
       position: absolute;
       font-size: 110px;
       font-size: 11rem;
       color: #e4e4e4;
       opacity: .5;
       z-index: 2;
       right: .1em;
       bottom: -.2em;
       line-height: 1em;
}

@media screen and (max-width: 675px) {
       .sec02 .inner .box ul li .reason_num {
              font-size: 9rem;
              bottom: -.1em;
       }

}

.sec02 .inner .box ul li .image img {
       width: 100%;
       height: auto;
}


.sec02 .inner .box ul li .boxin {
       padding: 0 35px 20px;
       min-height: 296px;
}

@media screen and (max-width: 1184px) {
       .sec02 .inner .box ul li .boxin {
              min-height: 347px;
       }
}

.sec02 .inner .box ul li .en {}

.sec02 .inner .box ul li .tit2 {
       font-weight: 700;
       font-size: 19px;
       font-size: 1.9rem;
       /*text-align: center;*/
       line-height: 1.5;
       padding-bottom: 15px;
}

.sec02 .inner .box ul li .tit2 .line2 {
       /*border-bottom: 6px solid #d3ff00;*/
       background: -moz-linear-gradient(top, #fff, #fff 30%, #fff 76%, #d3ff00);
       background: -webkit-linear-gradient(top, #fff, #fff 30%, #fff 76%, #d3ff00);
       background: linear-gradient(to bottom, #fff, #fff 30%, #fff 76%, #d3ff00);
}

.sec02 .inner .box ul li .memo {
       font-size: 70%;
}

.sec02 .inner .box ul li .small {
       display: block;
       font-size: 70%;
       padding-top: 10px;
}

@media screen and (max-width: 1024px) {
       .sec02 {
              position: relative;
              display: block;
              width: 100%;
              padding: 50px 0 50px;
       }

       .sec02 .inner {
              position: relative;
              display: block;
              width: 100%;
              margin: 0 auto;
              padding: 0 0 40px;
              background-image: none;
              background-size: cover;        
              background: #65C7DC;
       }

       sec02 .inner .title {
              width: 100%;
              position: absolute;
              top: 10px;
              left: 0;
              text-align: center;
       }

       .sec02 .inner .tit {
              position: relative;
              display: block;
              width: 80%;
              max-width: 1000px;
              margin: 0 auto 30px;
              padding-top: 100px;
              text-align: center;
              color: #fff;
       }

       .sec02 .inner .tit .txt01 {
              font-size: 19px;
              font-size: 1.9rem;
              padding-bottom: 10px;
       }

       .sec02 .inner .tit .txt02 {
              font-size: 38px;
              font-size: 3.8rem;
              padding: 5px;
       }

       .sec02 .txt03 {
              font-size: 65px;
              font-size: 6.5rem;
              line-height: 1;
              font-weight: 600;
              color: rgba(255, 255, 255, 0.1);
              text-align: center;
       }


       .sec02 .inner .box {
              width: 96%;
       }

       .sec02 .inner .box ul {
              display: block;
              width: 100%;
              margin: 0 auto;
       }

       .sec02 .inner .box ul li {
              width: 31.3%;
              margin: 1%;
              background: #fff;
              float: left;
              text-align: left;
       }


       .sec02 .inner .box ul li .boxin {
              padding: 0 10px 10px;
              min-height: 276px;
       }

}

@media screen and (max-width: 930px) {
       .sec02 {
              position: relative;
              display: block;
              width: 100%;
              padding: 40px 0 40px;
       }

       .sec02 .inner .tit {
              position: relative;
              display: block;
              width: 80%;
              max-width: 1000px;
              margin: 0 auto 25px;
              padding-top: 70px;
              text-align: center;
              color: #fff;
       }

       .sec02 .inner .tit .txt01 {
              font-size: 16px;
              font-size: 1.6rem;
              padding-bottom: 5px;
       }

       .sec02 .inner .tit .txt02 {
              font-size: 30px;
              font-size: 3.0rem;
              padding: 5px;
              line-height: 1.4;
       }

       .sec02 .txt03 {
              font-size: 50px;
              font-size: 5.0rem;
              line-height: 1;
              font-weight: 600;
              color: rgba(255, 255, 255, 0.1);
              text-align: center;
       }

       .sec02 .inner .box {
              width: 100%;
       }

       .sec02 .inner .box ul {
              display: block;
              width: 96%;
              margin: 30px auto 0;
       }

       .sec02 .inner .box ul li {
              width: 90%;
              margin: 0 auto;
              margin-bottom: 30px;
              float: none;
              text-align: left;
       }


       .sec02 .inner .box ul li .boxin {
              padding: 0 20px 20px;
              min-height: initial;
       }

       .sec02 .inner .box ul li .tit2 {
              font-weight: 700;
              font-size: 18px;
              font-size: 1.8rem;
              text-align: center;
              line-height: 1.4;
              padding: 5px 0 15px;
       }

}


@media screen and (max-width: 675px) {
       .sec02 .txt03 {
              font-size: 25px;
              font-size: 2.5rem;
              line-height: 1;
              font-weight: 600;
              color: rgba(255, 255, 255, 0.2);
              text-align: center;
       }

       .sec02 .inner .box ul li .memo {
              font-size: 60%;
       }
}



/****sec03****/

.sec03 {
       position: relative;
       display: block;
       background: linear-gradient(0deg, #ecf6fc 0%, #ecf6fc 70%, #fff 70%, #fff 100%);
       width: 100%;
       padding: 50px 0;
}

.sec03 .inner {
       position: relative;
       display: block;
       width: 90%;
       max-width: 1600px;
       margin: 0 auto;
}

.sec03 .inner .title {
       display: block;
       width: 80%;
       max-width: 1000px;
       margin: 0 auto;
}


.sec03 .inner .title .sub {
       display: block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 19px;
       font-size: 1.9rem;
       padding-bottom: 5px;
       text-align: center;
}

.sec03 .inner .title .main {
       display: block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 40px;
       font-size: 4.0rem;
       font-weight: 500;
       padding-bottom: 30px;
       text-align: center;
}

.sec03 .inner .title p {
       text-align: left;
}

.sec03 .inner .box3 {
       display: block;
       width: 90%;
       max-width: 1400px;
       margin: 50px auto;
       background: #2c354c;
       padding: 15px;

}

.sec03 .inner .box3 .left {
       width: 50%;
       padding-right: 10px;
       float: left;
}

.sec03 .inner .box3 .left img {
       width: 100%;
       height: auto;
}


.sec03 .inner .box3 .right {
       position: relative;
       width: 50%;
       padding-left: 25px;
       float: right;
       color: #fff;
}

.sec03 .inner .box3 .right .copy_en {
       width: 100%;
       position: absolute;
       top: 0;
       right: 10px;
       text-align: right;
       letter-spacing: 0.16rem;
       font-family: 'Crimson Text', serif;
       font-size: 75px;
       font-size: 7.5rem;
       line-height: 1;
       font-weight: 500;
       color: rgba(255, 255, 255, 0.1);
}


.sec03 .inner .box3 .right .tit {
       display: block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 25px;
       font-size: 2.5rem;
       font-weight: 500;
       padding: 30px 0;
       text-align: left;
}

.sec03 .inner .box3 .right .inbox {
       display: block;
       width: 100%;
       margin: 25px auto 0;
       border: solid 1px #fff;
       padding: 20px;
}


.sec03 .inner .box3 .right .inbox .name {
       display: inline-block;
       background: #fff;
       margin-right: 10px;
       font-size: 16px;
       font-size: 1.6rem;
       font-weight: 500;
       padding: 10px 5px;
       text-align: center;
       color: #2c354c;
       line-height: 1;
       float: left;
}

.sec03 .inner .box3 .right .inbox .txt {
       font-size: 85%;
       line-height: 1.4;
}

@media screen and (max-width: 1545px) {
       .sec03 .inner .box3 {
              display: block;
              width: 100%;
              margin: 50px auto;
              background: #2c354c;
              padding: 20px;

       }

       .sec03 .inner .box3 .right {
              position: relative;
              width: 50%;
              padding-left: 15px;
              float: right;
              color: #fff;
       }

       .sec03 .inner .box3 .right .tit {
              display: block;
              font-size: 25px;
              font-size: 2.5rem;
              font-weight: 500;
              padding: 15px 0;
              text-align: left;
       }

       .sec03 .inner .box3 .right .inbox {
              display: block;
              width: 100%;
              margin: 25px auto 0;
              border: solid 1px #fff;
              padding: 10px;
       }
}


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


       .sec03 .inner .box3 .left {
              width: 100%;
              padding-right: 0;
              float: none;
       }

       .sec03 .inner .box3 .right {
              position: relative;
              width: 100%;
              padding-left: 0;
              float: none;
       }

       .sec03 .inner .box3 .right .inbox .name {
              display: inline-block;
              background: #fff;
              margin-right: 10px;
              font-size: 15px;
              font-size: 1.5rem;
              font-weight: 500;
              padding: 5px;
              text-align: center;
              color: #2c354c;
              line-height: 1;
              float: left;
       }

       .sec03 .inner .box3 .right .inbox .txt {
              font-size: 90%;
              line-height: 1.4;
       }
}

@media screen and (max-width: 768px) {
       .sec03 {
              position: relative;
              display: block;
              background: linear-gradient(0deg, #ecf6fc 0%, #ecf6fc 75%, #fff 75%, #fff 100%);
              width: 100%;
              padding: 0 0 30px;
       }

       .sec03 .inner {
              position: relative;
              display: block;
              width: 94%;
       }

       .sec03 .inner .title {
              display: block;
              width: 90%;
              margin: 0 auto;
       }


       .sec03 .inner .title .sub {
              display: block;
              font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
              font-size: 14px;
              font-size: 1.4rem;
              padding-bottom: 3px;
              text-align: center;
       }

       .sec03 .inner .title .main {
              display: block;
              font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
              font-size: 26px;
              font-size: 2.6rem;
              font-weight: 500;
              padding-bottom: 15px;
              text-align: center;
       }

       .sec03 .inner .box3 {
              display: block;
              width: 100%;
              margin: 30px auto;
              padding: 20px;

       }

       .sec03 .inner .box3 .right .copy_en {
              width: 100%;
              position: absolute;
              top: 0;
              right: 0;
              text-align: right;
              letter-spacing: 0.16rem;
              font-family: 'Crimson Text', serif;
              font-size: 55px;
              font-size: 5.5rem;
              line-height: 1;
              font-weight: 500;
              color: rgba(255, 255, 255, 0.1);
       }

       .sec03 .inner .box3 .right .tit {
              display: block;
              font-size: 22px;
              font-size: 2.2rem;
              font-weight: 500;
              padding: 15px 0;
              text-align: left;
       }

       .sec03 .inner .box3 .right .inbox {
              display: block;
              width: 100%;
              margin: 20px auto 0;
              border: solid 1px #fff;
              padding: 10px;
       }

       .sec03 .inner .box3 .right .inbox .name {
              display: block;
              background: #fff;
              margin-right: 0;
              margin: 0 auto 10px;
              font-size: 13px;
              font-size: 1.3rem;
              font-weight: 500;
              padding: 2px;
              text-align: center;
              color: #2c354c;
              line-height: 1;
              float: none;
       }

       .sec03 .inner .box3 .right .inbox .txt {
              font-size: 91%;
              line-height: 1.5;
       }
}


.sec03 .inner .box3a {
       display: block;
       width: 90%;
       max-width: 1400px;
       margin: 80px auto;

}


.sec03 .inner .box3a .copy {
       display: block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 30px;
       font-size: 3.0rem;
       font-weight: 500;
       padding-bottom: 15px;
       text-align: center;

}

.sec03 .inner .box3a .copy span {
       background: -moz-linear-gradient(top, #ecf6fc, #ecf6fc 30%, #ecf6fc 76%, #d3ff00);
       background: -webkit-linear-gradient(top, #ecf6fc, #ecf6fc 30%, #ecf6fc 76%, #d3ff00);
       background: linear-gradient(to bottom, #ecf6fc, #ecf6fc 30%, #ecf6fc 76%, #d3ff00);
}


.sec03 .inner .box3a ul {
       display: block;
       width: 100%;
       margin: 30px auto;
}

.sec03 .inner .box3a ul li {
       width: 30.3%;
       margin: 1.5%;
       float: left;
}

@media screen and (max-width: 768px) {
       .sec03 .inner .box3a {
              display: block;
              width: 100%;
              margin: 40px auto 0;

       }

       .sec03 .inner .box3a .copy {
              font-size: 20px;
              font-size: 2.0rem;
              padding-bottom: 15px;
              text-align: center;

       }

       .sec03 .inner .box3a ul {
              display: block;
              width: 100%;
              margin: 20px auto 0;
       }

       .sec03 .inner .box3a ul li {
              width: 46%;
              margin: 2%;
              float: left;
       }
}


/****sec04****/

.sec04 {
       position: relative;
       display: block;
       width: 100%;
       padding: 120px 0;
}

.sec04 .inner {
       position: relative;
       display: block;
       width: 90%;
       max-width: 1400px;
       margin: 0 auto;
}

.sec04 .inner .title {
       display: block;
       width: 80%;
       max-width: 1000px;
       margin: 0 auto;
       text-align: center;
}

.sec04 .inner .box1 {
       position: relative;
       width: 100%;
       margin: 120px auto;
       display: flex;
       justify-content: center;
       align-items: center;
}

.sec04 .inner .box1 .left {
       width: 40%;
       float: left;
}

.sec04 .inner .box1 .left img {
       width: 100%;
       height: auto;
}

.sec04 .inner .box1 .right {
       width: 60%;
       float: right;
       padding: 0 80px;
}

.sec04 .inner .box2 {
       position: relative;
       width: 100%;
       margin: 50px auto;
       height: auto;
       display: block;
}

.sec04 .inner .box2 .left {
       width: 10%;
       float: left;
}

.sec04 .inner .box2 .left .copy_en {
       font-family: 'Crimson Text', serif;
       font-size: 95px;
       font-size: 9.5rem;
       line-height: 1;
       font-weight: 500;
       color: #e7eaf2;
       letter-spacing: 0;

       -ms-writing-mode: tb-rl;
       -webkit-writing-mode: vertical-rl;
       writing-mode: vertical-rl;
}



.sec04 .inner .box2 .right {
       width: 90%;
       float: right;
}

.sec04 .inner .box2 .right ul {
       width: 100%;
}

.sec04 .inner .box2 .right ul li {
       width: 46%;
       margin: 0 2%;
       float: left;
}

.sec04 .inner .box2 .right ul li .image {
       width: 100%;
}

.sec04 .inner .box2 .right ul li .image img {
       width: 100%;
       height: auto;
}

.sec04 .inner .box2 .right ul li .txt {
       padding-top: 20px;
       text-align: left;

}

.sec04 .inner .box3 {
       display: block;
       width: 100%;
       margin: 80px auto 40px;
}

.sec04 .inner .box3 ul {
       width: 100%;
       display: -webkit-flex;
       display: flex;
       gap: 0 5px;
       align-items: flex-start;
}

.sec04 .inner .box3 ul li {
       width: 49%;
       margin: 0 1% 1% 0;

}

.sec04 .inner .box3 ul li p.image {
       height: 100%;
}

.sec04 .inner .box3 ul li img {
       object-fit: cover;
       aspect-ratio: 3/2;
}

.sp1230 {
       display: none;
}

.pc1230 {
       display: block;
}


@media screen and (max-width: 1230px) {
       .pc1230 {
              display: none;
       }

       .sp1230 {
              display: block;
       }

       .sec04 .inner .box1 .left {
              width: 40%;
              float: left;
       }


       .sec04 .inner .box1 .right {
              width: 60%;
              float: right;
              padding: 0 0 0 40px;
       }

       .sec04 .inner .box2 .left .copy_en {
              font-size: 75px;
              font-size: 7.5rem;
       }
}

@media screen and (max-width: 768px) {
       .sec04 {
              position: relative;
              display: block;
              width: 100%;
              padding: 40px 0 20px;
       }

       .sec04 .inner {
              position: relative;
              display: block;
              width: 90%;
              margin: 0 auto;
       }

       .sec04 .inner .title {
              display: block;
              width: 80%;
              margin: 0 auto;
              text-align: center;
       }

       .sec04 .inner .box1 {
              position: relative;
              width: 100%;
              margin: 40px auto 0;
              display: block;
       }

       .sec04 .inner .box1 .left {
              width: 100%;
              float: none;
       }



       .sec04 .inner .box1 .right {
              width: 100%;
              float: none;
              padding: 20px 0;
       }


       .sec04 .inner .box2 {
              position: relative;
              width: 100%;
              margin: 10px auto;
              height: auto;
              display: block;
       }

       .sec04 .inner .box2 .left {
              display: none;
       }




       .sec04 .inner .box2 .right {
              width: 100%;
              float: none;
       }

       .sec04 .inner .box2 .right ul {
              width: 100%;
              margin: 0 auto;
       }

       .sec04 .inner .box2 .right ul li {
              width: 100%;
              margin: 0 auto 20px;
              float: none;
       }


       .sec04 .inner .box2 .right ul li .txt {
              padding-top: 10px;
              text-align: left;

       }

       .sec04 .inner .box3 {
              display: block;
              width: 100%;
              margin: 20px auto;
       }

       .sec04 .inner .box3 ul {
              width: 100%;
              flex-wrap: wrap;
              gap: 0;
       }

       .sec04 .inner .box3 ul li {
              width: 49%;
              margin: 0 1% 1% 0;
       }
}


/****sec05****/

.sec05 {
       position: relative;
       display: block;
       background: #ecf6fc;
       width: 100%;
       padding: 100px 0;
}

.sec05 .inner {
       position: relative;
       display: block;
       width: 90%;
       max-width: 1600px;
       margin: 0 auto;
}

.sec05 .inner .title {
       display: block;
       width: 80%;
       max-width: 1000px;
       margin: 0 auto;
}


.sec05 .inner .title .main {
       display: block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 40px;
       font-size: 4.0rem;
       font-weight: 500;
       padding-bottom: 15px;
       text-align: center;
}

.sec05 .inner .title .sub2 {
       display: block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 17px;
       font-size: 1.7rem;
       text-align: center;
}

@media screen and (max-width: 768px) {
       .sec05 .inner .title .main {
              font-size: 24px;
              font-size: 2.4rem;
              padding-bottom: 10px;
       }

       .sec05 .inner .title .sub2 {
              font-size: 15px;
              font-size: 1.5rem;
       }
}


.sec05 .inner ul {
       position: relative;
       display: block;
       wodth: 100%;
       margin: 80px auto 0;
}

.sec05 .inner ul li {
       position: relative;
       width: 30.3%;
       margin: 1.5%;
       margin-bottom: 50px;
       float: left;
}

.sec05 .inner ul li .image {
       width: 100%;
       text-align: center;
}

.sec05 .inner ul li .image img {
       width: 100%;
       height: auto;
}


.sec05 .inner ul li .tit {
       font-weight: 700;
       font-size: 19px;
       font-size: 1.9rem;
       text-align: center;
       line-height: 1.5;
       padding: 15px 0 10px;
}

.sec05 .inner ul li .num {
       position: absolute;
       top: -20px;
       left: -20px;
       background: #04b2cf;
       color: #fff;
       width: 70px;
       height: 70px;
       font-family: 'Questrial', serif;
       font-size: 26px;
       font-size: 2.6rem;
       line-height: 70px;
       font-weight: 400;
       text-align: center;
       -webkit-border-radius: 50%;
       -moz-border-radius: 50%;
       border-radius: 50%;
       box-shadow: 0 2px 2px rgba(0, 0, 0, 0.19);
}

@media screen and (max-width: 1450px) {
       .sec05 .inner ul li .num {
              position: absolute;
              top: -20px;
              left: -20px;
              background: #04b2cf;
              color: #fff;
              width: 60px;
              height: 60px;
              font-family: 'Questrial', serif;
              font-size: 24px;
              font-size: 2.4rem;
              line-height: 60px;
       }
}

@media screen and (max-width: 960px) {
       .sec05 .inner ul li {
              position: relative;
              width: 46%;
              margin: 2%;
              margin-bottom: 50px;
              float: left;
       }
}

@media screen and (max-width: 768px) {
       .sec05 {
              position: relative;
              display: block;
              width: 100%;
              padding: 40px 0 20px;
       }

       .sec05 .inner {
              position: relative;
              display: block;
              width: 90%;
              margin: 0 auto;
       }

       .sec05 .inner .title {
              display: block;
              width: 100%;
       }

       .sec05 .inner ul {
              position: relative;
              display: block;
              wodth: 100%;
              margin: 45px auto 0;
       }

       .sec05 .inner ul li .tit {
              font-weight: 700;
              font-size: 17px;
              font-size: 1.7rem;
              text-align: center;
              line-height: 1.5;
              padding: 7px 0 5px;
       }

       .sec05 .inner ul li .num {
              position: absolute;
              top: -15px;
              left: -5px;
              background: #04b2cf;
              color: #fff;
              width: 50px;
              height: 50px;
              font-family: 'Questrial', serif;
              font-size: 18px;
              font-size: 1.8rem;
              line-height: 50px;
              font-weight: 400;
              text-align: center;
              -webkit-border-radius: 50%;
              -moz-border-radius: 50%;
              border-radius: 50%;
       }

}

@media screen and (max-width: 640px) {
       .sec05 .inner ul {
              position: relative;
              display: block;
              width: 90%;
              margin: 45px auto 0;
       }

       .sec05 .inner ul li {
              position: relative;
              width: 100%;
              margin: 0 auto 45px;
              float: none;
       }

       .sec05 .inner ul li .image {
              width: 90%;
              margin: 0 auto;
              text-align: center;
       }
}

/****sec06****/

.sec06 {
       position: relative;
       display: block;
       width: 100%;
       background-image: url("../img/top/bg6.jpg");
       background-size: cover;
       padding: 120px 0;
       color: #fff;
}

.sec06 .inner {
       position: relative;
       display: block;
       width: 90%;
       max-width: 1600px;
       margin: 0 auto;
}

.sec06 .inner .title {
       display: block;
       width: 80%;
       max-width: 1000px;
       margin: 0 auto;
}

.sec06 .inner .title .main {
       display: block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 40px;
       font-size: 4.0rem;
       font-weight: 500;
       padding-bottom: 30px;
       text-align: center;
       line-height: 1.4;
}

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

.sec06 .inner ul {
       position: relative;
       display: block;
       width: 100%;
       margin: 80px auto 0;
}

.sec06 .inner ul li {
       position: relative;
       width: 30.3%;
       margin: 1.5%;
       float: left;
       border: solid 1px #f0f0f0;
       padding: 50px 0;
       text-align: center;
}

.sec06 .inner ul li .tit {
       display: block;
       font-size: 20px;
       font-size: 2.0rem;
       font-weight: 700;
}

.sec06 .inner ul li .copy {
       display: block;
       font-family: "Crimson Text", serif;
       font-size: 53px;
       font-size: 5.3rem;
       font-weight: 600;
       line-height: 1.0;
       padding-bottom: 10px;
}

.sec06 .inner ul li .copy span {
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 15px;
       font-size: 1.5rem;
       font-weight: 400;
}

.sec06 .inner ul li .small {
       font-size: 70%;
}

@media screen and (max-width: 1031px) {
       .sec06 .inner .title {
              display: block;
              width: 90%;
              margin: 0 auto;
       }

       .sec06 .inner ul li {
              position: relative;
              width: 46%;
              margin: 2%;
              float: left;
              padding: 50px 0;
              text-align: center;
       }
}

@media screen and (max-width: 768px) {
       .sec06 {
              background-image: none;
              background-image: linear-gradient(#007BC3 0%, #00cccc 100%);
              padding: 40px 0;
              color: #fff;
       }


       .sec06 .inner .title .main {
              display: block;
              font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
              font-size: 24px;
              font-size: 2.4rem;
              font-weight: 500;
              padding-bottom: 15px;
              text-align: center;
       }

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

       .sec06 .inner ul {
              position: relative;
              display: block;
              width: 100%;
              margin: 40px auto 0;
       }

       .sec06 .inner ul li {
              position: relative;
              width: 49%;
              margin: 0.5%;
              float: left;
              padding: 35px 0;
              text-align: center;
       }

       .sec06 .inner ul li .tit {
              display: block;
              font-size: 14px;
              font-size: 1.4rem;
              font-weight: 600;
              line-height: 1.3;
              padding-bottom: 10px;
       }

       .sec06 .inner ul li .copy {
              display: block;
              font-family: "Crimson Text", serif;
              font-size: 28px;
              font-size: 2.8rem;
              font-weight: 600;
              line-height: 1.0;
              padding-bottom: 13px;
       }

       .sec06 .inner ul li .copy span {
              font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
              font-size: 12px;
              font-size: 1.2rem;
              font-weight: 400;
       }

       .sec06 .inner ul li .small {
              font-size: 75%;
       }
}


/****sec07****/

.sec07 {
       position: relative;
       display: block;
       width: 100%;
       padding: 120px 0 80px;
}

.sec07 .inner {
       position: relative;
       display: block;
       width: 90%;
       max-width: 1400px;
       margin: 0 auto;
}

.sec07 .inner .title {
       display: block;
       width: 80%;
       max-width: 1000px;
       margin: 0 auto;
       text-align: center;
}

.sec07 .inner .box1 {
       position: relative;
       width: 100%;
       margin: 120px auto;
       display: flex;
       justify-content: center;
       align-items: center;
}


.sec07 .inner .box1 .left {
       width: 60%;
       float: left;
       padding: 0 80px;
}

.sec07 .inner .box1 .left .tit {
       display: block;
       padding: 20px 0;
       font-size: 70%;
       line-height: 1.3;
}

.sec07 .inner .box1 .left .tit {
       display: block;
       padding: 30px 0 15px;
       font-size: 80%;
       line-height: 1.4;
}

.sec07 .inner .box1 .left .name {
       display: block;
       font-size: 22px;
       font-size: 2.2rem;
       font-weight: 600;
       line-height: 1.0;
}

.sec07 .inner .box1 .left .name span {
       font-family: "Crimson Text", serif;
       font-size: 20px;
       font-size: 2.0rem;
       font-weight: 600;
       line-height: 1.0;
       color: #c5c7cd;
       padding-left: 15px;
}

.sec07 .inner .box1 .right {
       width: 40%;
       float: right;
}

.sec07 .inner .box1 .right img {
       width: 100%;
       height: auto;
}

.sec07 .inner .box2 {
       position: relative;
       width: 100%;
       margin: 30px auto;
       display: block;
       padding: 80px;
       border: solid 1px #ededeb;
}

.sec07 .inner .box2 .center {
       display: block;
       width: 100%;
}

.sec07 .inner .box2 .center h2 {
       display: inline-block;
       padding: 0 35px 50px 0;
       float: left;
}

.sec07 .inner .box2 .center .memo {
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


.sec07 .inner .box2 ul {
       display: block;
       width: 100%;
       margin: 70px auto 0;
}

.sec07 .inner .box2 ul li {
       float: left;
}

.sec07 .inner .box2 ul li.left1 {
       width: 34%;
       margin: 0;
       margin-right: 1%;
       border-left: solid 8px #f3f3f3;
       padding-left: 25px;
}


.sec07 .inner .box2 ul li.center1 {
       width: 24%;
       margin-right: 1%;
       border-left: solid 8px #f3f3f3;
       padding-left: 25px;
}

.sec07 .inner .box2 ul li.right1 {
       width: 40%;
       border-left: solid 8px #f3f3f3;
       padding-left: 25px;
}


@media screen and (max-width: 1424px) {
       .sec07 .inner .box2 {
              position: relative;
              width: 100%;
              margin: 30px auto;
              display: block;
              padding: 50px;
       }

       .sec07 .inner .box2 ul {
              display: block;
              width: 100%;
              margin: 50px auto 0;
       }

       .sec07 .inner .box2 ul li {
              font-size: 90%;
       }
}

@media screen and (max-width: 1248px) {
       .sec07 .inner .box2 {
              position: relative;
              width: 100%;
              margin: 30px auto;
              display: block;
              padding: 50px;
       }

       .sec07 .inner .box2 ul {
              display: block;
              width: 100%;
              margin: 40px auto 0;
       }

       .sec07 .inner .box2 ul li {
              font-size: 80%;
       }
}

@media screen and (max-width: 1091px) {
       .sec07 .inner .box2 ul li {
              font-size: 95%;
       }

       .sec07 .inner .box2 ul li.left1 {
              width: 60%;
              margin: 0;
              margin-right: 1%;
              border-left: solid 8px #f3f3f3;
              padding-left: 25px;
       }


       .sec07 .inner .box2 ul li.center1 {
              width: 35%;
              margin-right: 0;
              border-left: solid 8px #f3f3f3;
              padding-left: 25px;
       }

       .sec07 .inner .box2 ul li.right1 {
              width: 70%;
              margin-top: 25px;
              border-left: solid 8px #f3f3f3;
              padding-left: 25px;
       }
}

sp975 {
       display: none;
}

.pc975 {
       display: block;
}

.sec07 .inner .box5 {
       display: none;
}

@media screen and (max-width: 975px) {
       .pc975 {
              display: none;
       }

       .sp975 {
              display: block;
       }

       .sec07 .inner .box1 {
              display: none;
       }

       .sec07 .inner .box5 {
              position: relative;
              width: 90%;
              margin: 50px auto;
              display: block;
       }


       .sec07 .inner .box5 .left {
              display: block width: 100%;
              margin: 0 auto;
              padding: 0;
              float: none;
       }

       .sec07 .inner .box5 .left .images {
              width: 35%;
              padding-right: 20px;
              float: left;
       }

       .sec07 .inner .box5 .left .images img {
              width: 100%;
              height: auto;
       }

       .sec07 .inner .box5 .left .tit {
              display: block;
              padding: 30px 0 15px;
              font-size: 80%;
              line-height: 1.4;
       }

       .sec07 .inner .box5 .left .name {
              display: block;
              font-size: 22px;
              font-size: 2.2rem;
              font-weight: 600;
              line-height: 1.0;
       }

       .sec07 .inner .box5 .left .name span {
              font-family: "Crimson Text", serif;
              font-size: 24px;
              font-size: 2.4rem;
              font-weight: 600;
              line-height: 1.0;
              color: #c5c7cd;
              padding-left: 15px;
       }
}

@media screen and (max-width: 768px) {
       .sec07 {
              position: relative;
              display: block;
              width: 100%;
              padding: 40px 0;
       }

       .sec07 .inner .box5 {
              position: relative;
              width: 90%;
              margin: 30px auto;
              display: block;
       }

       .sec07 .inner .box5 h2 {
              text-align: left;
       }

       .sec07 .inner .box5 .left .tit {
              display: block;
              padding: 20px 0 10px;
              font-size: 80%;
              line-height: 1.4;
       }

       .sec07 .inner .box5 .left .name {
              display: block;
              font-size: 18px;
              font-size: 1.8rem;
              font-weight: 600;
              line-height: 1.0;
       }

       .sec07 .inner .box5 .left .name span {
              font-family: "Crimson Text", serif;
              font-size: 11px;
              font-size: 1.1rem;
              font-weight: 600;
              line-height: 1.0;
              color: #c5c7cd;
              padding-left: 10px;
       }

       .sec07 .inner .box2 {
              position: relative;
              width: 100%;
              margin: 20px auto;
              display: block;
              padding: 20px;
       }

       .sec07 .inner .box2 ul {
              display: block;
              width: 100%;
              margin: 25px auto 15px;
       }

       .sec07 .inner .box2 .center h2 {
              display: block;
              padding: 0 0 10px;
              float: none;
              text-align: left;
       }

       .sec07 .inner .box2 ul li {
              font-size: 90%;
       }


       .sec07 .inner .box2 ul li.left1 {
              width: 100%;
              margin-right: 0;
              margin: 0 auto 10px;
              border-left: solid 4px #f3f3f3;
              padding-left: 15px;
       }


       .sec07 .inner .box2 ul li.center1 {
              width: 100%;
              margin-right: 0;
              margin: 0 auto 10px;
              border-left: solid 4px #f3f3f3;
              padding-left: 10px;
       }

       .sec07 .inner .box2 ul li.right1 {
              width: 100%;
              margin-right: 0;
              margin: 0 auto 10px;
              border-left: solid 4px #f3f3f3;
              padding-left: 10px;
       }

}

@media screen and (max-width: 640px) {
       .sec07 .inner .box2 {
              position: relative;
              width: 100%;
              margin: 20px auto;
              display: block;
              padding: 20px 10px 0;
       }

       .sec07 .inner .box5 .left .images {
              width: 100%;
              padding-right: 0;
              margin: 0 auto 10px;
              float: none;
       }
}

/****sec08****/

.sec08 {
       position: relative;
       display: block;
       width: 100%;
       padding: 40px 0 100px;
}

.sec08 .inner {
       position: relative;
       display: block;
       width: 90%;
       max-width: 1000px;
       margin: 0 auto;
}

.sec08 .inner .title {
       display: block;
       width: 80%;
       max-width: 1000px;
       margin: 0 auto 80px;
       text-align: center;
}


.accordion {
       width: 100%;
}

.accordion li {
       margin: 0 auto 30px;
}


.button {
       padding: 20px 40px;
       width: 100%;
       background-color: #e6f3fa;
       color: #2c354c;
       cursor: pointer;
       position: relative;
       font-size: 19px;
       font-size: 1.9rem;
       font-weight: 600;
       text-align: left;
}

.button.button_1 {
       background-color: #fff;
       color: #2c354c;
       font-size: 16px;
       font-size: 1.6rem;
       font-weight: 400;
       border: solid 1px #ededeb;
       border-top: none;
}

.button:after {
       content: "\f0fe";
       font-family: FontAwesome;
       position: absolute;
       top: 9px;
       right: 30px;
       font-size: 34px;
       font-size: 3.4rem;
       color: #fff;
}

.button.active:after {
       content: "\f146";
}


.button.button_1:after {
       display: none;
}


.button span {
       font-family: 'Crimson Text', serif;
       padding-right: 10px;
       font-size: 24px;
       font-size: 2.4rem;
}


@media screen and (max-width: 768px) {
       .sec08 {
              position: relative;
              display: block;
              width: 100%;
              padding: 0 0 30px;
       }

       .sec08 .inner .title {
              display: block;
              width: 80%;
              margin: 0 auto 30px;
              text-align: center;
       }

       .accordion li {
              margin: 0 auto 20px;
       }


       .button {
              padding: 10px 10px;
              width: 100%;
              background-color: #e6f3fa;
              color: #2c354c;
              cursor: pointer;
              position: relative;
              font-size: 15px;
              font-size: 1.5rem;
              font-weight: 600;
              text-align: left;
       }

       .button.button_1 {
              background-color: #fff;
              color: #2c354c;
              font-size: 14px;
              font-size: 1.4rem;
              font-weight: 400;
              border: solid 1px #ededeb;
              border-top: none;
       }

       .button:after {
              content: "\f0fe";
              font-family: FontAwesome;
              position: absolute;
              top: 8px;
              right: 8px;
              font-size: 20px;
              font-size: 2.0rem;
              color: #fff;
       }

       .button span {
              font-family: 'Crimson Text', serif;
              padding-right: 3px;
              font-size: 18px;
              font-size: 1.8rem;
       }
}


/****sec09****/

.sec09 {
       position: relative;
       display: block;
       width: 100%;
       margin: 0 auto;
       padding: 100px 0;
       background-color: #2c354c;
       color: #fff;
}

.sec09 .inner {
       position: relative;
       display: block;
       width: 90%;
       max-width: 1400px;
       margin: 0 auto;
}

.sec09 .inner .title {
       display: block;
       width: 80%;
       max-width: 1000px;
       margin: 0 auto 80px;
       text-align: center;
}

.sec09 .inner .box_in {
       display: block;
       width: 90%;
       max-width: 1200px;
       margin: 0 auto;
       text-align: center;
}

.sec09 .inner .box_in .map {
       display: block;
       width: 100%;
       text-align: center;
}

.sec09 .inner .box_in .left {
       width: 49%;
       margin-right: 1%;
       margin-top: 40px;
       float: left;
}

.sec09 .inner .box_in .left .map {
       position: relative;
       padding-bottom: 50%;
       /*56.25%*/
       padding-top: 30px;
       margin-bottom: 60px;
       height: 0;
       overflow: hidden;
}

.sec09 .inner .box_in .left .map iframe,
.sec09 .inner .box_in .left .map object,
.sec09 .inner .box_in .left .map embed {
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
}

.sec09 .inner .box_in .right {
       width: 49%;
       margin-left: 1%;
       margin-top: 50px;
       float: right;
}

.sec09 .inner .box_in .right .name {
       display: block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 28px;
       font-size: 2.8rem;
       font-weight: 500;
       text-align: left;
       padding: 30px 0 20px;
}

.sec09 .inner .box_in .right .add {
       display: block;
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-size: 17px;
       font-size: 1.7rem;
       font-weight: 400;
       line-height: 1.3;
       padding-bottom: 30px;
       text-align: left;
}

.sec09 .inner .box_in .right .add span {
       padding-right: 10px;
}

.sec09 .inner .box_in .right .txt {
       display: block;
       line-height: 1.3;
       padding-bottom: 20px;
       text-align: left;
}

.sec09 .inner .box_in .right .link-btn {
       display: block;
       width: 70%;
       background-color: #1eb2cd;
       padding: 15px 0px;
       margin-top: 20px;
       text-align: center;
       border-radius: 6px;
       -webkit-border-radius: 6px;
       -moz-border-radius: 6px;
}

.sec09 .inner .box_in .right .link-btn a {
       /*font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
       font-size: 16px;
       font-size: 1.6rem;
       font-weight: 600;
       line-height: 1.3;
       color: #fff;
       letter-spacing: 0;
}

.sec09 .inner .box_in .right .link-btn:hover {
       opacity: 0.7;
       -webkit-transition: all 0.3s ease-in;
       -moz-transition: all 0.3s ease-in;
       -ms-transition: all 0.3s ease-in;
       -o-transition: all 0.3s ease-in;
       transition: all 0.3s ease-in;
}

@media screen and (max-width: 1255px) {
       .sec09 .inner .box_in {
              display: block;
              width: 100%;
       }
}

@media screen and (max-width: 1157px) {
       .sec09 .inner .box_in .left {
              width: 45%;
              margin-right: 1%;
              float: left;
       }

       .sec09 .inner .box_in .right {
              width: 53%;
              margin-left: 1%;
              margin-top: 30px;
              float: right;
       }

}

@media screen and (max-width: 990px) {
       .sec09 .inner .box_in .left {
              width: 100%;
              margin-right: 0;
              margin: 0 auto;
              float: none;
       }

       .sec09 .inner .box_in .right {
              width: 100%;
              margin-left: 0;
              margin-top: 0;
              margin: 0 auto 0;
              float: none;
              padding: 0 20px;
       }

       .sec09 .inner .box_in .right .link-btn {
              display: block;
              width: 50%;
              background-color: #1eb2cd;
              padding: 15px 0px;
              margin: 30px auto;
              text-align: center;
              border-radius: 6px;
              -webkit-border-radius: 6px;
              -moz-border-radius: 6px;
       }

}

@media screen and (max-width: 768px) {
       .sec09 {
              position: relative;
              display: block;
              width: 100%;
              margin: 0 auto;
              padding: 40px 0;
       }

       .sec09 .inner .title {
              display: block;
              width: 80%;
              margin: 0 auto 30px;
              text-align: center;
       }

       .sec09 .inner .box_in .right {
              width: 100%;
              margin-left: 0;
              margin-top: 0;
              margin: 0 auto 0;
              float: none;
              padding: 0;
       }

       .sec09 .inner .box_in .right .name {
              display: block;
              font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
              font-size: 22px;
              font-size: 2.2rem;
              font-weight: 500;
              text-align: left;
              padding: 20px 0 10px;
       }

       .sec09 .inner .box_in .right .add {
              display: block;
              font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
              font-size: 15px;
              font-size: 1.5rem;
              font-weight: 400;
              line-height: 1.3;
              padding-bottom: 20px;
              text-align: left;
       }

       .sec09 .inner .box_in .right .link-btn {
              display: block;
              width: 100%;
              background-color: #1eb2cd;
              padding: 15px 0px;
              margin: 30px auto;
              text-align: center;
              border-radius: 6px;
              -webkit-border-radius: 6px;
              -moz-border-radius: 6px;
       }

       .sec09 .inner .box_in .right .link-btn a {
              /*font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
              font-size: 14px;
              font-size: 1.4rem;
              font-weight: 600;
              line-height: 1.3;
              color: #fff;
              letter-spacing: 0;
       }
}


/**** MV ****/
.mv {
       position: relative;
       display: block;
       width: 100%;
}

.mv img {
       width: 100%;
       height: auto;
}


/****sec10****/



.sec10 {
       position: relative;
       display: block;
       /*background-color: #f0f0f0;*/
       width: 100%;
       padding: 80px 0 80px;
}

.sec10 .inner {
       position: relative;
       display: block;
       width: 90%;
       max-width: 1400px;
       margin: 0 auto;
}

.sec10 .inner .title {
       display: block;
       width: 80%;
       max-width: 1000px;
       margin: 0 auto;
       text-align: center;
}

.sec10 .inner .title .txt {
       display: block;
       margin: 30px auto;
}



.sec10 .inner .box2 {
       position: relative;
       width: 100%;
       margin: 50px auto;
       height: auto;
       display: block;
}

.sec10 .inner .box2 .left {
       width: 10%;
       margin-left: 10%;
       float: left;
}

.sec10 .inner .box2 .left .copy_en {
       font-family: 'Crimson Text', serif;
       font-size: 95px;
       font-size: 9.5rem;
       line-height: 1;
       font-weight: 500;
       color: #e7eaf2;
       -webkit-writing-mode: vertical-rl;
       -ms-writing-mode: tb-rl;
       -o-writing-mode: vertical-rl;
       writing-mode: vertical-rl;
       text-orientation: upright;
}

.sec10 .inner .box2 .right {
       width: 65%;
       margin-right: 15%;
       float: right;
}

.sp1230 {
       display: none;
}

.pc1230 {
       display: block;
}


@media screen and (max-width: 1230px) {
       .pc1230 {
              display: none;
       }

       .sp1230 {
              display: block;
       }

       .sec10 .inner .box1 .left {
              width: 40%;
              float: left;
       }


       .sec10 .inner .box1 .right {
              width: 60%;
              float: right;
              padding: 0 0 0 40px;
       }

       .sec10 .inner .box2 .left .copy_en {
              font-size: 75px;
              font-size: 7.5rem;
       }
}

@media screen and (max-width: 768px) {
       .sec10 {
              position: relative;
              display: block;
              width: 100%;
              padding: 40px 0 20px;
       }

       .sec10 .inner {
              position: relative;
              display: block;
              width: 90%;
              margin: 0 auto;
       }

       .sec10 .inner .title {
              display: block;
              width: 100%;
              margin: 0 auto;
              text-align: center;
       }

       .sec10 .inner .box2 {
              position: relative;
              width: 100%;
              margin: 10px auto;
              height: auto;
              display: block;
       }

       .sec10 .inner .box2 .left {
              display: none;
       }

       .sec10 .inner .box2 .right {
              width: 100%;
              float: none;
       }
}



.photo {
       width: 100%;
       margin: 0 auto;
       text-align: center;
       padding: 10px 0;
}

.photo ul li {
       width: 47%;
       height: auto;
       float: left;

       margin: 1.5%;

       -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
       -ms-box-sizing: border-box;
       -o-box-sizing: border-box;
       box-sizing: border-box;
       overflow: hidden;
       aspect-ratio: 1/1;
}

.photo ul li .example-image img {
       object-fit: cover;
       height: 100%;
       width: 100%;
}

.photo .style_img {
       position: relative;
}

.photo .style_img figure {
       height: 100%
}

.photo .style_img img.thumb {
       -webkit-transition: all 0.5s linear;
       -moz-transition: all 0.5s linear;
       -ms-transition: all 0.5s linear;
       -o-transition: all 0.5s linear;
       transition: all 0.5s linear;
}

.photo .style_img .mask {
       position: absolute;
       top: 0;
       width: 100%;
       height: 100%;

       opacity: 0;
       -webkit-transition: all 0.4s ease-in-out;
       -moz-transition: all 0.4s ease-in-out;
       -ms-transition: all 0.4s ease-in-out;
       -o-transition: all 0.4s ease-in-out;
       transition: all 0.4s ease-in-out;
       background: rgba(255, 255, 255, 0.6);
}

.photo .style_img:hover .mask {

       opacity: 1;
}



@media screen and (max-width: 990px) {
       .photo ul li {
              width: 23%;
              height: auto;
              float: left;

              margin: 1%;
       }
}



@media screen and (max-width: 768px) {
       .photo ul li {
              width: 49%;
              height: auto;
              float: left;

              margin: 0.5%;
       }
}


#page-top {
       position: fixed;
       bottom: 5px;
       right: 5px;
       z-index: 1000;
}

#page-top a {
       background-color: rgba(42, 42, 42, 0.3);
       text-decoration: none;
       color: #fff;
       width: 40px;
       height: 40px;
       line-height: 40px;
       font-size: 2rem;
       text-align: center;
       display: block;

}

#page-top a:hover {
       text-decoration: none;
       background-color: rgba(42, 42, 42, 0.6);
}

footer {
       background: #fff;
       padding: 40px 0;
       text-align: center;
       position: relative;
}


footer small {
       font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
       font-weight: 500;
       font-size: 14px;
       font-size: 1.4rem;
       line-height: 1.3;
       letter-spacing: 0;
}


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

       #page-top {
              position: fixed;
              bottom: 10px;
              right: 2px;
              z-index: 1000;
       }

       #page-top a {

              width: 30px;
              height: 30px;
              line-height: 30px;
              font-size: 1.6rem;
              text-align: center;
              display: block;

       }

       footer {
              padding: 15px 0;
              text-align: center;
              position: relative;
       }

       footer small {
              font-size: 10px;
              font-size: 1.0rem;
       }
}


/*追記*/

.memo-las {
       display: block;
       width: 100%;
       background: rgba(30, 178, 205, 0.1);
       /*#B0E0E6;*/
       margin: 0 auto;
}

.memo-las .inner {
       display: block;
       width: 90%;
       max-width: 1200px;

       margin: 0 auto;
       padding: 20px;
       font-size: 11px;
       font-size: 1.1rem;
       font-weight: normal;
       line-height: 1.8;
       color: rgba(42, 42, 42, 1.0);
       letter-spacing: 0;
}


@media screen and (max-width: 640px) {
       .memo-las .inner {
              width: 96%;
              margin: 0 auto;
              padding: 20px 10px;
              font-size: 11px;
              font-size: 1.1rem;
              font-weight: normal;
              line-height: 1.7;
       }

}

/*-------------------------------add_20221118---*/
.sp_flating {
       display: none;
}

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

       .float01,
       .float02,
       .float03 {
              display: none;
       }

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

       .sp_flating ul {
              width: 70%;
       }

       .sp_flating ul li:first-child,
       .sp_flating ul li:nth-child(2) {
              border-bottom: 1px solid #eee;
       }

       .sp_flating ul li a {
              background: #fcfcfc;
              padding: 10px 0;
              display: flex;
              align-items: center;
              font-size: 12px;
              color: #000;
       }

       .sp_flating ul li a svg {
              font-size: 20px;
              margin-left: 20px;
              margin-right: 10px;
              color: #2464dd;
       }

       .contact_btn {
              width: 30%;
       }

       /* .contact_btn a {
background: #2464dd;
display: block;
color: #fff;
widows: 100%;
text-align: center;
padding: 36px 0;
} */
       .contact_btn a {
              background: #2464dd;
              display: flex;
              align-items: center;
              flex-direction: column;
              justify-content: center;
              color: #fff;
              width: 100%;
              text-align: center;
              padding: 36px 0;
              height: 100%;
       }

       .contact_btn a svg {
              display: block;
              font-size: 20px;
              margin: 0 auto;
       }
}


/*202407226 修正*/

.sec02 .inner .box ul {
    display: flex;
    align-items: stretch;
    width: 100%;
    margin: 0 auto;
}

.sec02 .inner .tit .txt02 span {
    color: #E9FF7F;
}
.sec02 .reason-textDeco {
    position: absolute;
    right: -12%;
    top: 110px;
    width: 216px;
    height: 216px;
    border-radius: 50%;
    background: #2464DD;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.sec02 .reason-textDeco .subTxt {
    font-size: 20px;
    font-weight: 700;        
    font-family: "Noto Sans JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.sec02 .reason-textDeco .numText {
    font-size: 30px;
    color: #E9FF7F;    
    font-family: "Noto Serif Japanese", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: 700;
}
.sec02 .reason-textDeco .numText .count {
    font-size: 36px;
}
.sec02 .inner .box ul li .image {
    overflow: hidden;
    height: 218px;
}

@media screen and (max-width: 1120px) and (min-width:1024px) {
    .sec02 .inner .tit {
        margin: 0 auto 77px;
    }
    .sec02 .reason-textDeco {
        right: 0;
        top: 320px;
    }
}
@media screen and (max-width: 1024px)and (min-width:770px) {
    .sec02 .reason-textDeco {
        right: 0;
        top: 160px;
        width: 100px;
        height: 100px;
    }
    .sec02 .reason-textDeco .subTxt {
        font-size: 11px;
        font-weight: 700;
    }
    .sec02 .reason-textDeco .numText {
        font-size: 16px;
        color: #E9FF7F;
    }
    .sec02 .reason-textDeco .numText .count {
        font-size: 18px;
    }
}
@media screen and (max-width: 769px) {
    .sec02 .inner .box ul {
        flex-direction: column;
    }
    .sec02 .inner .tit {
        margin: 0 auto 77px;
    }
    .sec02 .reason-textDeco {
        right: 0;
        top: 240px;
        width: 100px;
        height: 100px;
    }
    .sec02 .reason-textDeco .subTxt {
        font-size: 11px;
        font-weight: 700;
    }
    .sec02 .reason-textDeco .numText {
        font-size: 16px;
        color: #E9FF7F;
    }
    .sec02 .reason-textDeco .numText .count {
        font-size: 18px;
    }
}