 @charset "utf-8";
 @import url(css/reset.css);

 /*
theme Name:sl2022
Author: sl2022
Description:sl2022
*/

 html {
     font-size: 16px;
 }

 body {
     margin: 0;
     padding: 0;
     font-size: 1rem;
     font-weight: 400;
     line-height: 160%;
     color: #000;
     box-sizing: border-box;
     text-size-adjust: 100%;
     -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
     -ms-text-size-adjust: 100%;
     -o-text-size-adjust: 100%;
     letter-spacing: 0.05em;
     font-family: "Hiragino Kaku Gothic ProN", "メイリオ", Verdana, "Helvetica Neue", Helvetica, sans-serif;
 }

 body,
 html {
     height: 100%;
     margin: 0;
 }

 .fixed {
     position: fixed;
     width: 100%;
     height: 100%;
 }

 .grid-1200 {
     width: 80%;
     max-width: 1200px;
     margin: 0 auto 0 auto;
     position: relative;
 }

 * {
     box-sizing: border-box;
 }

 *::after {
     box-sizing: border-box;
 }

 *::before {
     box-sizing: border-box;
 }

 img {
     max-width: 100%;
     height: auto;
     vertical-align: bottom;
 }

 /* パソコンで見たときはclass名"pc"が表示される */
 .pc {
     display: block !important;
 }

 .sp {
     display: none !important;
 }

 /* スマートフォンで見たときはclass名"sp"が表示される */
 @media (max-width:767px) {
     .pc {
         display: none !important;
     }

     .sp {
         display: block !important;
     }
 }

 a:hover,
 a:visited,
 a:focus {
     outline: none;
     border: none;
 }

 /*
 a,
 button {
     color: inherit;
     text-decoration: none;
     -webkit-transition: all 0.5s;
     -moz-transition: all 0.5s;
     -o-transition: all 0.5s;
     transition: all 0.5s;
 }
*/

 input,
 textarea,
 button,
 select {
     outline: none;
     resize: none;
 }



 .hv-o:hover {
     opacity: 0.8;
 }

 .anchor_fixtop {
     display: block;
     position: relative;
     top: -11rem;
     width: 100%;
     visibility: hidden;
 }

 a {
     color: #000;
     text-decoration: none;
 }

 a:hover {
     opacity: 0.8;
 }

 a[href^="tel:"] {
     cursor: default;
     pointer-events: none;
 }

 a[href^="tel:"]:hover {
     text-decoration: none;
 }

 #pagetop {
     position: fixed;
     bottom: 200px;
     right: 4.8vw;
     border: none;
     cursor: pointer;
     outline: none;
     z-index: 50;
 }

 li {
     list-style: none;
 }

 ul {
     padding: 0;
 }

 /* ---------- スタイル全般 ---------- */
 main {
     overflow: hidden;
 }

 .gp__txt_default {
     font-size: 0.875rem;
     font-weight: 400;
     line-height: 140%;
     color: #4B4B4B;
 }

 .gp__reset_img {
     font-size: 0;
     line-height: 100%;
     display: inline-block;
 }

 .logo img {
     padding: 3px;
 }

 .gflex {
     display: flex;
     padding: 0;
     margin: 0;
 }

 .gflex2 {
     display: flex;
     padding: 0;
     margin: 0;
     justify-content: center;
 }

 .gfixed {
     position: fixed;
     left: 0;
     top: 0;
 }

 .sp_shows,
 .sp_shows_1 {
     display: none !important;
 }

 .po {
     height: 10.875rem;
     bottom: 0;
     position: absolute;
     left: 50%;
     transform: translateX(-50%);
     z-index: 5;
 }

 /* ---------- ヘッダーページ ---------- */

 .gp__header_menu {
     width: 100%;
     z-index: 99;
     height: 80px;
     padding: 0 5rem;
     align-items: center;
     justify-content: space-between;
     /*transition: ease all 0.35s;*/
     background-color: rgba(255, 255, 255, 0.9);
 }

 .gp__header_menu.active {
     height: 80px;
     background-color: #fff;
 }

 /* ---------- メニューヘッダー ---------- */

 .menu {
     margin-right: 2.313rem;
 }

 .menu > li > a {
     height: 2.5rem;
     display: flex;
     align-items: center;
     justify-content: center;
     padding-left: 2rem;
     padding-right: 2rem;
     border-right: 2px solid #305D89;
     font-size: 1rem;
 }

 .menu > li:first-child > a {
     border-left: 2px solid #305D89;
     border-right: 2px solid #305D89;
 }

 .menu > li > a > span {
     white-space: nowrap;
 }

 @media screen and (max-width: 1250px) {
     .menu > li > a {
         padding-left: 1rem;
         padding-right: 1rem;
     }
 }


 /*---------- フッター ----------*/
 .sum__fo_01 {
     height: 70px;
     align-items: center;
     background-color: #FCFBFA;
 }

 .menuFo {
     justify-content: center;
 }

 .menuFo > li > a {
     font-weight: 400;
     height: 2.5rem;
     padding-left: 2.5rem;
     padding-right: 2.5rem;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .menuFo > li:not(:last-child) a {
     border-right: 1px solid #707070;
 }

 .Firefox .menuFo > li > a > span {
     top: 0.05rem;
 }

 .SafariChrome .menuFo > li > a > span {
     top: 0.1rem;
 }

 .sum__fo_02 {
     padding-top: 3.563rem;
     padding-bottom: 3.75rem;
     background-color: #F2F1EC;
 }

 .sum__fo_02 .lv__0 {
     align-items: center;
     justify-content: space-between;
 }

 .gp__list_logo {
     align-items: center;
 }

 .gp__list_logo li:not(:last-child) {
     margin-right: 2.188rem;
     width: 220px;
 }

 .desc__f0_02 {
     width: 23.5rem;
     display: flex;
     padding: 0.5rem;
     align-items: center;
     border: 1px solid #707070;
     justify-content: center;
     line-height: 1.7;
 }

 .title__fo_02 {
     font-size: 0.938rem;
     letter-spacing: 0;
     font-weight: 600;
     line-height: 130%;
     color: #4B4B4B;
     margin-bottom: 0.375rem;
 }

 .desc__f0_02 p {
     font-weight: 300;
 }

 .desc__f0_02 a {
     color: #305D89;
 }

 .sum__fo_03 {
     width: 100%;
     height: 2.5rem;
     align-items: center;
     justify-content: center;
     background-color: #000;
 }

 .sum__fo_03 p {
     color: #fff;
     font-weight: 300;
     position: relative;
     top: 0.25rem;
 }

 .Firefox .sum__fo_03 p {
     top: 0.05rem;
 }

 .SafariChrome .sum__fo_03 p {
     top: 0rem;
 }

 @media screen and (max-width: 767px) {
     .menuFo > .menu-item-138:not(:last-child) a {
         border-right: none;
     }
 }

 /*---------- TOP ----------*/
 /*アニメーション*/
 /* 下からフェードイン */
 .slide-bottom {
     opacity: 0;
     transform: translate(0, 30px);
     transition: all 0.8s ease-out;
     transition-delay: 0.1s;
 }

 /* 左からフェードイン */
 .slide-left {
     opacity: 0;
     transform: translate(-80px, 0);
     transition: all 1s ease-out;
 }

 /* 右からフェードイン */
 .slide-right {
     opacity: 0;
     transform: translate(80px, 0);
     transition: all 1s ease-out;
 }

 /*背景画像*/
 .mainimg {
     position: relative;
     max-width: 1920px;
     height: 702px;
 }

 .mainbg {
     position: absolute;
     z-index: 1;
     content: "";
     display: block;
     width: 100%;
     height: 100%;
     top: 0;
     background: url(img/sum__01.jpg) no-repeat center center;
     -webkit-background-size: cover;
     -moz-background-size: cover;
     -ms-background-size: cover;
     background-size: cover;
     -webkit-transition: all 0.3s ease-out;
     -moz-transition: all 0.3s ease-out;
     -ms-transition: all 0.3s ease-out;
     transition: all 0.3s ease-out;
     -webkit-animation: animeA 9s 0s forwards;
     animation: animeA 9s 0s forwards;
 }

 @media screen and (max-width: 767px) {
     .mainimg {
         height: 530px;
     }

     .mainbg {
         background: url(img/sum__01_sp.jpg) no-repeat center center;
     }
 }

 @keyframes animeA {
     0% {
         transform: scale(1.1);
     }

     100% {
         transform: scale(1);
     }
 }

 /* 1. gp__sum_one */
 .gp__sum_one {
     position: relative;
     height: 52rem;
     background-position: center;
     background-size: cover;
     background-repeat: no-repeat;
 }

 .gp__content_mv {
     position: absolute;
     left: 0;
     bottom: 4rem;
     width: 100%;
     z-index: 3;
 }

 .gp__desc_mv {
     position: relative;
     height: 7rem;
     display: flex;
     align-items: center;
     font-size: 1.5rem;
     font-weight: bold;
     line-height: 135%;
     margin-top: 2rem;
 }

 .gp__desc_mv p {
     line-height: 170%;
     padding-left: 1.063rem;
 }

 .gp__desc_mv::before {
     content: "";
     position: absolute;
     left: 0;
     top: 0;
     width: 100%;
     max-width: 79.948vw;
     height: 100%;
     background: linear-gradient(45deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 100%);
 }


 .title__mv {
     font-size: 4rem;
     font-weight: bold;
     line-height: 125%;
     color: #fff;
     margin-bottom: 0.375rem;
     text-shadow: 0px 0px 8px #6e6868;
 }

 .scroll {
     position: absolute;
     right: 0;
     bottom: 0;
     padding-bottom: 8rem;
 }

 .scroll::before {
     content: "";
     position: absolute;
     left: 50%;
     bottom: 0;
     width: 1px;
     height: 7.375rem;
     background-color: #000;
 }

 .scroll a {
     position: relative;
     display: block;
 }

 /* 2. gp__sum_two */
 .gp__sum_two {
     padding-top: 5rem;
     padding-bottom: 3.4rem;
 }

 .gp__two_content {
     position: relative;
 }

 .item__sum_two {
     width: 29.063rem;
 }

 .item__sum_two:first-child {
     width: calc(100% - 29.063rem);
     padding-right: 3.125rem;
     padding-top: 3rem;
 }

 .gp__main_two {
     font-size: 1.188rem;
     color: #4B4B4B;
     margin-top: 3rem;
 }

 .gp__main_two p {
     line-height: 160%;
 }

 .gp__main_two p:last-child {
     letter-spacing: 0;
 }

 .gp__main_two p:not(:last-child) {
     margin-bottom: 1rem;
 }

 .gp__header_two {
     width: 100%;
     font-size: 1.25rem;
     font-weight: bold;
     color: #305D89;
     line-height: 140%;
     letter-spacing: 0;
 }

 .title__sum_two {
     font-size: 2.2rem;
     margin-top: 1.2rem;
 }

 /* 3. gp__sum_three */
 .wp__sum_three {
     padding-top: 6.5rem;
     padding-bottom: 5.938rem;
     background-size: cover;
     background-position: center;
     background-repeat: no-repeat;
 }

 .wp__sum_three > div {
     display: flex;
     align-items: center;
     justify-content: flex-end;
 }

 .wp__sum_three:nth-child(2n) > div {
     justify-content: flex-start;
 }

 .wp__sum_three:nth-child(2n) > div .gp__three_content {
     background-color: #A5C6DE;
 }

 .gp__desc_2n {
     width: 100%;
     padding-left: 2rem;
     padding-right: 2rem;
     text-align: center;
     border: 1px solid #fff;
 }

 .gp__three_content .gp__desc_2n > p {
     font-size: 1rem;
     font-weight: 300;
     letter-spacing: 0;
     line-height: 187%;
     text-align: left;
     margin-top: 0.1rem;
     margin-bottom: 1.5rem;
 }

 .gp__title_sub_three {
     font-size: 1.125rem;
     font-weight: bold;
     line-height: 150%;
     text-align: center;
     margin-top: 1rem;
 }

 .gp__three_content {
     width: 100%;
     max-width: 43rem;
     color: #fff;
     padding: 3rem;
     background-color: #305D89;
 }

 .gp__title_three {
     font-size: 2.4rem;
     font-weight: bold;
     letter-spacing: 0;
     line-height: 130%;
 }

 .gp__three_content > p {
     font-size: 1.25rem;
     line-height: 200%;
     margin-top: 1.563rem;
     margin-bottom: 2rem;
 }

 .gp__button_01_1 {
     align-items: center;
 }

 .gp__button_01_1 span:last-child {
     margin-left: 1.25rem;
     font-size: 1.125rem;
     font-weight: bold;
     line-height: 120%;
     position: relative;
 }


 .line_btn_01 {
     width: 3rem;
     height: 3rem;
     border-radius: 100%;
     border: 0.094rem solid #fff;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .line_btn_01.vs--1 {
     border: 0.094rem solid #000;
 }

 .line_btn_01.vs--2 {
     width: 3.5rem;
     height: 3.5rem;
     border: 0.094rem solid #000;
 }

 /* 4. gp__sum_four */
 .gp__sum_four {
     padding-top: 5rem;
     padding-bottom: 5rem;
     background-color: #D1E1EC;
 }

 .item__rows_four {
     width: 21.25rem;
     color: #000;
 }

 .item__rows_four:last-child {
     width: calc(100% - 21.25rem);
     padding-left: 9.063rem;
     padding-top: 1.1rem;
 }

 .title__rows_four {
     font-size: 2.5rem;
     letter-spacing: 0;
     line-height: 140%;

 }

 .item__rows_four p {
     font-size: 1.188rem;
     line-height: 170%;
     letter-spacing: normal;
     margin: 1.875rem 0;
 }

 .title_sum_row {
     text-align: center;
     font-size: 1.875rem;
     line-height: 140%;
     letter-spacing: 0;
     font-weight: bold;
     color: #305D89;
     margin-top: 3rem;
 }

 .title_sum_row img {
     display: block;
     margin: 2.25rem auto 0 auto;
 }

 /* 5. gp__sum_five */

 .gp__sum_five {
     padding-bottom: 9.688rem;
 }

 .title_sum_row_01 {
     color: #305D89;
     font-weight: bold;
     font-size: 2.2rem;
     line-height: 150%;
     text-align: center;
 }

 .wrap__content_four {
     padding-top: 2rem;
 }

 .item__rows_five li {
     width: 25%;
     height: 362px;
     padding-top: 1.563rem;
     padding-bottom: 1.563rem;
     background-position: center;
     background-repeat: no-repeat;
     background-size: cover;
     display: flex;
     align-items: flex-end;
     justify-content: center;
 }

 .item__rows_five li:nth-child(2n) {
     align-items: flex-start;
 }

 .gp__sum_fives {
     margin-top: 2.188rem;
     display: flex;
     align-items: center;
     background-color: #D1E1EC;
 }

 .item__rows_five:first-child {
     width: calc(100% - 22.188rem);
 }

 .item__rows_five:last-child {
     width: 22.188rem;
     padding-left: 2rem;
     padding-right: 2rem;
 }

 .wrap__content_four:not(:nth-child(2n)) {
     padding-top: 5rem;
 }

 .item_txt_radius {
     width: 10rem;
     height: 10rem;
     background-color: rgba(255, 255, 255, 0.8);
     border-radius: 100%;
     display: flex;
     align-items: center;
     justify-content: center;
     text-align: center;
     font-size: 1rem;
     font-weight: bold;
     color: #4B4B4B;
 }

 .item_txt_radius span {
     position: relative;
     top: 0.25rem;
 }

 .item_txt_radius span.line {
     top: 0;
     display: block;
     line-height: 100%;
     margin-top: -0.188rem;
     margin-bottom: -0.188rem;
 }

 .item__rows_five p {
     font-size: 1.063rem;
     line-height: 180%;
     color: #000;
     margin-bottom: 3.313rem;
 }

 .item__rows_five .gp__button_01_1 span:last-child {
     font-size: 1rem;
     font-weight: 300;
 }

 /* 6. gp__sum_six */
 .gp__sum_six {
     width: 100%;
     padding-top: 5.7rem;
     padding-bottom: 5.75rem;
     position: relative;
     background-position: bottom center;
     background-repeat: no-repeat;
     background-size: cover;
 }

 .gp__sum_six::before {
     content: "";
     position: absolute;
     left: 0;
     top: 0;
     opacity: 0.9;
     width: 100%;
     height: 100%;
     background: linear-gradient(360deg, rgba(255, 255, 255, 1) 0%, rgba(226, 244, 242, 1) 100%);
 }

 .title__six_01 {
     text-align: center;
     width: 100%;
     color: #4B4B4B;
     font-size: 1.938rem;
     font-weight: bold;
     line-height: 180%;
     letter-spacing: 0.1em;
 }

 .gp__rows_six {
     width: 100%;
     max-width: 930px;
     margin-left: auto;
     margin-right: auto;
     margin-top: 1.8rem;
 }

 .item__six:first-child {
     width: calc(100% - 10rem);
     padding-right: 6rem;
     padding-top: 1.7rem;
 }

 .item__six:last-child {
     width: 10rem;
 }

 .item__six p {
     font-size: 1.2rem;
     line-height: 170%;
 }

 .item__six p:not(:last-child) {
     margin-bottom: 1.2rem;
 }


 /* 7. gp__sum_sevent */
 .gp__sum_sevent {
     padding-top: 5rem;
     padding-bottom: 4.78rem;
 }

 .title__sum_sevent {
     text-align: center;
     color: #4B4B4B;
     font-size: 2.5rem;
     letter-spacing: 0;
     line-height: 140%;
     font-weight: bold;
     margin-bottom: 1.55rem;
 }

 .gp__button_07 {
     width: 100%;
     justify-content: center;
 }

 .wp__btn_7 {
     width: 17rem;
     height: 3rem;
     display: flex;
     align-items: center;
     justify-content: center;
     border-radius: 50px;
     border: 2px solid #2F5D88 !important;
 }

 .wp__btn_7 span {
     font-size: 1rem;
     color: #305D89;
     position: relative;
     top: 0.25rem;
 }


 .list__sum_news {
     display: block;
     width: 100%;
     position: relative;
     margin-bottom: 2.85rem;
     padding: 0;
 }

 .list__sum_news li {
     padding: 2rem 0;
     border-top: 1px solid #707070;
 }

 .list__sum_news li:last-child {
     border-bottom: 1px solid #707070;
 }

 .item__sum_news a {
     font-size: 1rem;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .sub_item_news1 {
     display: flex;
     align-items: center;
     justify-content: space-between;
     width: 31%;
     margin-right: 4%;
 }

 .sub_item_news1 .tag {
     display: block;
     white-space: nowrap;
     padding: 4px 10px;
     color: #fff;
     border-radius: 0.25rem;
     text-align: center;
 }

 .sub_item_news1 .press {
     background-color: #A5C6DE;
 }

 .sub_item_news1 .info {
     background-color: #9D9D9D;
 }

 .sub_item_news2 {
     width: 65%;
 }

 @media (max-width: 1200px) {
     .item__sum_news a {
         display: block;
         font-size: 14px;
     }

     .sub_item_news1 {
         width: 100%;
         justify-content: flex-start;
     }

     .sub_item_news1 .tag {
         margin-right: 3%;
         font-size: 13px;
         padding: 9px 10px 6px;
         width: 120px;
         border-radius: 6px;
     }

     .sub_item_news2 {
         width: 100%;
         justify-content: flex-start;
         padding-top: 0.5em;
     }
 }

 @media all and (-ms-high-contrast:none) {
     .fixIe {
         position: relative;
         top: 0.125rem;
     }

     html {
         overflow-x: hidden;
     }

     .sub_item_news a span {
         top: 0.3rem;
     }

     .wp__btn_7 span {
         top: 0;
     }

     .menu > li > a > span {
         top: 0.12rem;
     }

     .gp__button_01_1 span:last-child {
         top: 0.15rem;
     }

     .menuFo > li > a > span {
         top: 0.165rem;
     }

     .sum__fo_03 p {
         top: 0;
     }
 }

 /* --------------- RWD --------------- */
 @media (max-width: 1500px) {
     html {
         font-size: 1.067vw;
     }

     .gp__desc_mv::before {
         max-width: 84rem;
     }
 }

 @media (max-width: 1250px) {
     html {
         font-size: 1.280vw;
     }

     .grid-1200 {
         width: 85%;
         padding-left: 1.25rem;
         padding-right: 1.25rem;
     }

     .gp__desc_mv::before {
         max-width: 75rem;
     }

     .logo img {
         width: 17.5rem;
     }
 }

 @media (max-width: 950px) {
     .menu > li > a {
         border-right: 1px solid #305D89;
     }

     .menu > li:first-child > a {
         border-left: 1px solid #305D89;
         border-right: 1px solid #305D89;
     }

     .item__rows_five li {
         height: 300px;
     }
 }

 @media (max-width: 850px) {

     .menu > li > a {
         height: 2.8rem;
         padding-left: 2rem;
         padding-right: 2rem;
     }

     .gp__txt_default {
         font-size: 1.2rem;
     }

     .gp__main_two,
     .gp__button_01_1 span:last-child {
         font-size: 1.6rem;
     }

     .gp__header_two,
     .gp__three_content > p,
     .item__rows_four p {
         font-size: 1.5rem;
     }

     .item__six:first-child {
         padding-right: 3rem;
     }

     .gp__three_content > p {
         max-width: 100%;
     }

     .gp__three_content > p br,
     .gp__main_two p br {
         display: none;
     }

     .item__rows_four:last-child {
         padding-left: 6rem;
     }

     .gp__three_content > p {
         line-height: 160%;
     }

     .gp__sum_fives {
         flex-direction: column;
     }

     .item__rows_five:first-child {
         width: 100%;
     }

     .item__rows_five:last-child {
         width: 100%;
         padding-top: 3rem;
         padding-bottom: 3rem;
         text-align: center;
     }

     .item__rows_five:last-child .gp__button_01_1 {
         justify-content: center;
     }

     .item__rows_five li {
         height: 362px;
     }

     .item_txt_radius {
         width: 14rem;
         height: 14rem;
         font-size: 1.4rem;
     }

     .gp__three_content {
         padding-left: 3rem;
         padding-right: 3rem;
     }

     .item__rows_five p {
         font-size: 14px;
     }

     .line_btn_01 {
         width: 5.625rem;
         height: 5.625rem;
     }

     .line_btn_01.vs--2 {
         width: 4.5rem;
         height: 4.5rem;
     }

     .item__rows_five .gp__button_01_1 span:last-child {
         font-size: 14px;
     }

     .item__six:first-child {
         padding-top: 0;
     }

     .item__six p {
         font-size: 15px;
     }

     .gp__title_sub_three {
         font-size: 1.6rem;
     }

     .gp__three_content .gp__desc_2n > p {
         font-size: 1.4rem;
     }



     .gp__desc_2n {
         max-width: 100%;
     }

     .gp__list_logo li:first-child img {
         width: 17.5rem;
     }

     .gp__list_logo li:last-child img {
         width: 10.375rem;
     }

     .title__fo_02 {
         font-size: 1.2rem;
     }

     .desc__f0_02 {
         width: 29.5rem;
         height: 7.25rem;
     }

     .sum__fo_03 {
         height: 4.5rem;
     }

     .wp__btn_7 {
         width: 21rem;
         height: 5rem;
     }

     .wp__btn_7 span {
         font-size: 1.6rem;
     }

     .sum__fo_01 {
         height: 5.625rem;
     }

     .scroll {
         padding-bottom: 11rem;
     }

     .scroll::before {
         height: 9.375rem;
     }

 }

 @media (max-width:790px) {
     .desc__f0_02 {
         width: 31.5rem;
     }
 }

 @media (max-width:767px) {

     .grid-1200 {
         width: 90%;
     }

     .item__header_menu:first-child {
         width: 100%;
         display: flex;
         justify-content: space-between;
         align-items: center;
     }

     .item__header_menu:last-child {
         position: fixed;
         width: 76.923vw;
         height: 100vh;
         right: -100%;
         top: 0;
         /*transition: ease all 0.35s;*/
         background: #F2F1EC;
         overflow-y: scroll;
     }

     .item__header_menu.active {
         right: 0;
     }

     .menu {
         flex-wrap: wrap;
         padding-left: 3vw;
         padding-right: 0;
         margin-top: 30px;
         padding-bottom: 35vw;
     }

     .menu > li {
         width: 100%;
         border-bottom: 1px solid #707070;
     }

     .menu > li:first-child > a {
         border-left: 0;
         border-right: 0;
     }

     .menu > li > a {
         border-right: 0;
         height: auto;
         padding: 3.6vw 2vw 3.4vw;
         justify-content: flex-start;
     }

     .menu > li > a span {
         font-size: 14px;
     }

     .gp__header_menu,
     .gp__header_menu.active {
         height: 11.6vw;
     }

     .logo img {
         width: 37.179vw;
     }

     .gp__sum_one {
         height: 135.897vw;
         background-image: url(img/sum__01_sp.jpg) !important;
     }

     .gp__two_content,
     .sum__fo_02 .lv__0,
     .gp__list_logo {
         flex-wrap: wrap;
     }

     .item__sum_two,
     .item__fo_02,
     .gp__list_logo li,
     .item__six {
         width: 100% !important;
     }


     .title__mv {
         font-size: 6.410vw;
         line-height: 150%;
     }

     .sum__fo_03 {
         height: 10.256vw;
     }

     .sum__fo_03 p {
         font-size: 1vw;
     }

     .sum__fo_01 {
         height: auto;
         padding: 6vw 0 6vw;
     }

     .menuFo {
         flex-wrap: wrap;
         max-width: 85.385vw;
         margin-left: auto;
         margin-right: auto;
         margin-bottom: -7.5vw;
         padding-left: 0;
     }

     .sum__fo_01 li {
         margin-bottom: 4vw;
         font-size: 3.3vw;
     }

     .menuFo > li > a {
         height: 6.795vw;
         padding-left: 5.7vw;
         padding-right: 5.7vw;
     }

     .gp__list_logo {
         text-align: center;
     }

     .gp__list_logo li:first-child img {
         width: 54.359vw;
     }

     .gp__list_logo li:last-child img {
         width: 28vw;
     }

     .gp__list_logo li:not(:last-child) {
         margin-right: 0;
         margin-bottom: 3.333vw;
     }

     .desc__f0_02 {
         width: 100%;
         height: auto;
         padding: .1.5rem 1rem;
     }

     .sum__fo_02 {
         padding-top: 10.256vw;
         padding-bottom: 10.256vw;
     }

     .title__fo_02 {
         font-size: 12px;
         margin-bottom: 1.795vw;
         margin-top: 7.462vw;
     }

     .item__fo_02:last-child {
         padding-left: 1.923vw;
         padding-right: 1.923vw;
     }

     .title__sum_sevent {
         font-size: 5.128vw;
         margin-bottom: 3rem;
     }

     .wp__btn_7 {
         width: 69.744vw;
         height: 9vw;
     }

     .wp__btn_7 span {
         font-size: 4.103vw;
         top: 0;
     }


     .gp__sum_sevent {
         padding-top: 14.103vw;
         padding-bottom: 19.231vw;
     }

     .desc__f0_02 p {
         font-size: 12px;
     }

     .title__six_01 {
         font-size: 5vw;
     }

     .gp__sum_six {
         padding-top: 15vw;
         padding-bottom: 15vw;
     }

     .gp__rows_six {
         flex-wrap: wrap;
         margin-top: 5vw;
     }

     .item__six:last-child {
         text-align: center;
         margin-top: 5vw;
     }

     .item__six:last-child img {
         width: 40vw;
     }

     .item__six:first-child {
         padding-right: 0;
     }

     .item__six p {
         text-align: justify;
         line-height: 180%;
     }

     .item__six p:not(:last-child) {
         margin-bottom: 3vw;
     }

     .title_sum_row_01 {
         font-size: 16px;
     }

     .item__rows_five li {
         height: 42vw;
         padding-top: 2.564vw;
         padding-bottom: 2.564vw;
     }

     .item_txt_radius {
         width: 17.692vw;
         height: 17.692vw;
         font-size: 8px;
     }

     .item__rows_five p {
         text-align: justify;
         margin-bottom: 5vw;line-height: 140%;
     }

     .item__rows_five:last-child .gp__button_01_1 {
         justify-content: flex-start;
     }

     .item__rows_five:last-child {
         padding-left: 3.846vw;
         padding-right: 3.846vw;
         padding-top: 5.897vw;
         padding-bottom: 5.897vw;
     }

     /* .item__rows_five .gp__button_01_1 img {
		width: 10.256vw;
	} */

     .line_btn_01.vs--2 {
         width: 10.385vw;
         height: 10.385vw;
         border: 0.385vw solid #000;
     }

     .gp__button_01_1 span:last-child {
         margin-left: 3.846vw;
     }

     .wrap__content_four:not(:nth-child(2n)) {
         padding-top: 15vw;
     }

     .gp__sum_five {
         padding-top: 0;
         padding-bottom: 11vw;
     }

     .gp__sum_fives {
         margin-top: 3.641vw;
     }

     .title_sum_row {
         font-size: 16px;
     }

     .title_sum_row img {
         width: 7.179vw;
     }

     .wrap__content_four {
         padding-top: 6rem;
     }

     .item__sum_two:first-child {
         padding-right: 0;
         padding-top: 0;
     }

     .item__sum_two:last-child {
         text-align: center;
         margin-top: 3.5vw;
     }

     .gp__header_two,
     .gp__main_two {
         font-size: 14px;
     }

     .title__sum_two {
         font-size: 5.128vw;
         margin-top: 2.308vw;
     }

     .gp__main_two p:not(:last-child) {
         margin-bottom: 3vw;
     }

     .gp__sum_two {
         padding-top: 8vw;
         padding-bottom: 12.821vw;
     }

     .gp__rows_four {
         flex-wrap: wrap;
     }

     .item__rows_four {
         width: 100% !important;
     }

     .item__rows_four:first-child {
         order: 1;
         padding-left: 8.718vw;
         padding-right: 8.718vw;
         margin-top: 10vw;
         text-align: center;
     }

     .item__rows_four:last-child {
         order: 0;
         padding-left: 0rem;
     }

     .gp__sum_four {
         padding-top: 11vw;
         padding-bottom: 14vw;
     }

     .title__rows_four {
         font-size: 18px;
         text-align: center;
     }

     .item__rows_four p {
         font-size: 14px;
         line-height: 1.5;
         margin-top: 4vw;
         margin-bottom: 6vw;
     }

     .gp__button_01_1 span:last-child {
         font-size: 13px;
     }

     /* .gp__button_01 img {
		width: 12.051vw;
	} */
     .gp__desc_mv {
         height: 9rem;
     }

     .line_btn_01 {
         width: 8vw;
         height: 8vw;
         border: 0.385vw solid #fff;
     }

     .line_btn_01.vs--1 {
         border: 0.385vw solid #000;
     }

     .wp__sum_three,
     .wp__sum_three > div {
         padding: 0;
     }

     .gp__three_content {
         max-width: 100%;
         padding: 7vw 7.5vw;
     }

     .gp__title_three {
         font-size: 18px;
     }

     .gp__three_content > p {
         font-size: 14px;
         margin-top: 3vw;
         margin-bottom: 3vw;
     }

     .gp__title_sub_three {
         font-size: 4.103vw;
     }

     .gp__three_content .gp__desc_2n > p {
         font-size: 3.590vw;
         line-height: 1.5;
     }

     .gp__desc_2n {
         padding-left: 3vw;
         padding-right: 3vw;
         padding-top: 2vw;
     }

     span.bg_js_sp.vs--1 {
         width: 100%;
         height: 63.077vw;
         display: block;
         background-size: cover;
         background-position: center;
         background-repeat: no-repeat;
     }

     #pagetop {
         right: 3.846vw;
         bottom: 50vw !important;
     }

     .scroll {
         display: none;
     }

     .gp__desc_mv::before {
         max-width: calc(100% - 3.846vw);
     }

     .gp__desc_mv p {
         position: relative;
         font-size: 8px;
     }

     .gp__content_mv {
         bottom: 38.974vw;
     }

     .gp__header_menu {
         padding-right: 0;
     }

     /*toggle menu */
     .chane-x {
         display: block;
         position: relative;
         cursor: pointer;
         display: flex;
         align-items: center;
         justify-content: center;
         padding: 0 3.846vw;
         height: 11.6vw;
         z-index: 100;
     }

     .chane-x.change {
         position: fixed;
         right: 3%;
         top: 1%;
         z-index: 99;
     }

     .chane-x > div {
         height: 4.5vw;
     }

     .bar1,
     .bar2,
     .bar3 {
         width: 5.641vw;
         height: 0.513vw;
         border-radius: 5px;
         margin: 1.538vw auto;
         background-color: #707070;
         transition: .4s;
     }

     .bar1 {
         margin-top: 0
     }

     .bar3 {
         margin-bottom: 0;
     }

     .change .bar2 {
         opacity: 0
     }

     .change .bar3 {
         -webkit-transform: rotate(45deg) translate(-1.2vw, -1.6vw);
         transform: rotate(45deg) translate(-1.2vw, -1.6vw);
         -moz-transform: rotate(45deg) translate(-1.2vw, -1.6vw);
         -ms-transform: rotate(45deg) translate(-1.2vw, -1.6vw);
         -o-transform: rotate(45deg) translate(-1.2vw, -1.6vw);
     }

     .change .bar1 {
         -webkit-transform: rotate(-45deg) translate(-1.3vw, 1.600vw);
         transform: rotate(-45deg) translate(-1.3vw, 1.600vw);
         -moz-transform: rotate(-45deg) translate(-1.3vw, 1.600vw);
         -ms-transform: rotate(-45deg) translate(-1.3vw, 1.600vw);
         -o-transform: rotate(-45deg) translate(-1.3vw, 1.600vw);
     }

     /* end toggle */

 }

 @media (max-width:480px) {
     .logo img {
         width: 145px;
         padding: 0;
     }

     .gp__header_menu,
     .gp__header_menu.active,
     .chane-x {
         height: 45px;
     }

     .bar1,
     .bar2,
     .bar3 {
         height: 2px;
     }

     .wp__btn_7 {
         width: 40vw;
         height: 10vw;
     }

     .wp__btn_7 span {
         font-size: 3.5vw;
     }
 }

 @media (max-width:390px) {
     .item_txt_radius {
         width: 69px;
         height: 69px;
     }
 }


 /* PAGE CHILD */

 /* 企業紹介 – concept */

 .gp__breadcrumb {
     margin-top: 80px;
     width: 100%;
     padding: 0.813rem 0;
     background-color: #E9E8E8;
 }

 .gp__breadcrumb * {
     line-height: 100%;
     color: #707070;
     position: relative;
 }

 .gp__breadcrumb .line {
     padding-left: 0.65rem;
 }

 .gp__breadcrumb .gflex {
     align-items: center;
     font-size: 1rem;
 }

 .current {
     padding-left: 0.5rem;
 }

 section.page__content {
     padding-top: 3.125rem;
     padding-bottom: 9.3rem;
 }

 .title__page_child_01 {
     width: 100%;
     text-align: center;
     font-size: 2rem;
     color: #4B4B4B;
     letter-spacing: 0;
     line-height: 150%;
     margin-bottom: -1.25rem;
 }

 .title__page_child_02 {
     margin-bottom: 3rem;
 }

 .gp__tab_rows {
     margin-top: 5.313rem;
 }

 .item__tab {
     width: 33.33%;
 }

 .item__tab a {
     display: flex;
     align-items: center;
     justify-content: center;
     width: 100%;
     height: 5.313rem;
     border-right: 0.188rem solid #305D89;
 }

 .item__tab:first-child a {
     border-left: 0.188rem solid #305D89;
     border-right: 0.188rem solid #305D89;
 }


 .item__tab a img {
     height: 37px;
 }

 .item__tab a span:last-child {
     font-size: 1rem;
     font-weight: bold;
     line-height: 150%;
     font-weight: bold;
     color: #305D89;
     margin-left: 1rem;
 }


 .item__tab a.active,
 .item__tab a:hover {
     background-color: #305D89;
     opacity: 1;
 }

 .item__tab a.active span,
 .item__tab a:hover span {
     color: #fff;
 }

 .item__tab a.active img,
 .item__tab a:hover img {
     display: none;
 }

 .item__tab a.active img.hover,
 .item__tab a:hover img.hover {
     display: block;
 }

 .hover {
     display: none;
 }

 .gp__concept_child {
     width: 100%;
     max-width: 975px;
     margin-left: auto;
     margin-right: auto;
 }

 .mg_t95 {
     margin-top: 5.938rem;
 }

 .gp__concept_child img {
     margin: 0 auto;
     display: block;
 }

 .gp__concept_child p {
     text-align: center;
     letter-spacing: -0.1px;
 }

 .gp__concept_child p,
 .gp__message_child p {
     font-size: 1rem;
     font-weight: 400;
     line-height: 170%;
     margin-top: 3.125rem;
     margin-bottom: 3.125rem;
 }

 .message__img {
     text-align: right;
     margin-top: 4.3rem;
 }

 .message__img img {
     width: 300px;
 }

 .gp__message_child p {
     margin-top: 1.9rem;
     margin-bottom: 1.9rem;
 }

 .gp__message_child {
     width: 100%;
     max-width: 975px;
     margin-left: auto;
     margin-right: auto;
 }

 @media (max-width:767px) {
     .message__img {
         margin: 4.3rem 0 0 auto;
         width: 70%;
     }

 }


 /* プライバシーポリシー */
 .gp__privacy_child {
     max-width: 820px;
     margin-left: auto;
     margin-right: auto;
     padding-bottom: 3.6vw;
 }

 .gp__privacy_child h3 {
     font-weight: bold;
 }

 .gp__privacy_child > h3 {
     margin-bottom: 39px;
 }

 .gp__privacy_child h3,
 .gp__privacy_child p {
     font-size: 16px;
     color: #4B4B4B;
     letter-spacing: 0;
     line-height: 150%;
 }

 .gp__privacy_child p {
     font-weight: 300;
 }

 .item__privacy {
     margin-top: 27px;
 }

 .item__privacy p {
     margin-top: 6px;
 }

 /* サイトマップ */
 .wrap_sitemap {
     max-width: 830px;
     margin-left: auto;
     margin-right: auto;
     padding-bottom: 2.4rem;
     margin-bottom: 2.4vw;
     border-bottom: 1px solid #707070;
 }

 .ie .wrap_sitemap {
     margin-bottom: 1.9vw;
 }

 .wrap_sitemap h3 {
     font-size: 16px;
     font-weight: bold;
     letter-spacing: 0;
     line-height: 150%;
     color: #4B4B4B;
     margin-bottom: -0.5rem;
 }

 .wrap_sitemap ul {
     display: flex;
     margin-top: 1.313rem;
     margin-bottom: -0.5rem;
 }

 .wrap_sitemap ul li:not(:last-child) {
     margin-right: 75px;
 }

 .wrap_sitemap ul a {
     font-size: 16px;
     font-weight: 300;
     color: #4B4B4B;
     line-height: 150%;
     letter-spacing: 0;
 }

 .wrap_sitemap ul.strong {
     justify-content: space-between;
 }

 .wrap_sitemap ul.vs--1 a {
     font-weight: bold;
 }

 .wrap_sitemap:last-child {
     margin-bottom: -0.813rem;
 }

 /* 採用情報 */
 .gp__recruit_child {
     max-width: 830px;
     margin-left: auto;
     margin-right: auto;
     margin-top: 4rem;
     margin-bottom: -2.3rem;
 }

 .gp__recruit_child table {
     width: 100%;
 }

 .gp__recruit_child td:first-child {
     width: 160px;
 }

 .gp__recruit_child td {
     font-size: 16px;
     font-weight: 300;
     letter-spacing: 0;
     line-height: 150%;
     color: #4B4B4B;
     padding-top: 30px;
     padding-bottom: 22px;
     vertical-align: middle;
     border-bottom: 1px solid #707070;
 }

 .ie .gp__recruit_child td {
     padding-top: 27px;
 }

 .gp__recruit_btn {
     width: 200px;
     height: 25px;
     line-height: 25px;
     display: flex;
     border: 1px solid #305D89 !important;
     color: #305D89;
     border-radius: 50px;
     align-items: center;
     justify-content: center;
     font-weight: 600 color: #305D89;
 }

 .gp__recruit_child tr:last-child td {
     border-bottom: 0;
 }

 /* トピック */
 .gp__news_child {
     margin-left: auto;
     margin-right: auto;
     max-width: 825px;
     padding-bottom: 7.4rem;
 }

 .gp__news_child .item__sum_news {
     width: 16.563rem;
 }

 .gp__news_child .item__sum_news:last-child {
     width: calc(100% - 16.563rem);
 }

 .gp__news_child .sub_item_news > span {
     margin-left: 2.5rem;
 }

 .gp__news_child .list__sum_news li {
     padding-bottom: 1.5rem;
 }

 .recruit-detail {
     display: block;
     margin-bottom: 10px;

 }

 /* .gp__news_child .list__sum_news li .gp__txt_default{
	font-size: 14px;
} */


 @media (max-width:850px) {
     .item__tab span {
         display: flex;
         align-items: center;
     }

     .item__tab a img {
         width: 55%;
         padding-bottom: 0;
         margin: 0 auto;
     }

     .gp__news_child .sub_item_news a {
         min-width: 12.438rem;
         margin-right: 1rem;
     }
 }

 @media (max-width:767px) {
     .item__tab * {
         text-align: center;
     }

     .gp__breadcrumb .gflex {
         align-items: center;
         font-size: 3vw;
     }

     .gp__news_child .list__sum_news li {
         padding: 8.205vw 0 7.205vw 0;
     }

     .gp__news_child .list__sum_news li .gp__txt_default {
         font-size: 3.590vw;
     }

     .gp__news_child .sub_item_news a {
         min-width: 34.872vw;
     }
 }


 /* 点検・アフターサービス */
 .gflex-inspection {
     display: flex;
     justify-content: space-around;
 }

 .inspection__one_rows {
     position: relative;
     padding-top: 10.5vw;
 }

 .title__ins_01 {
     display: block;
     text-align: center;
     font-size: 1.7rem;
     font-weight: 600;
     color: #4B4B4B;
     line-height: 150%;
     margin-top: -0.188rem;
     margin-bottom: 3.125rem;
 }

 .item__ins_one {
     width: 50%;
 }

 .item__ins_one:not(:last-child) {
     padding-right: 3.125rem;
 }

 .item__ins_one:nth-child(2) {
     padding-left: 3.125rem;
 }

 .ins_img_01 {
     text-align: center;
     width: 60%;
     margin: 0 auto;
 }

 .item__ins_one {
     font-size: 1rem;
     letter-spacing: 0.1px;
     color: #4B4B4B;
     padding-bottom: 0.438rem;
 }

 .item__ins_one h4 {
     font-size: 1.5rem;
     color: #305D89;
     font-weight: 600;
     margin-top: 1.438rem;
     margin-bottom: 2rem;
 }

 .item__ins_one_box_h span {
     color: #F2354B;
 }

 .item__ins_one_box {
     background: #E9F1F6;
     text-align: center;
     padding: 20px 35px;
     height: 302.09px;
     margin-top: 20px;
 }

 .item__ins_one p {
     line-height: 170%;
     letter-spacing: 0.12px;
     text-align: left;
 }
 @media (max-width:767px) {
    .item__ins_one p {
        line-height: 150%;
    }
 }
 .item__ins_one p:not(:last-child) {
     margin-bottom: 1.313rem;
 }

 .ins__main_img {
     margin-top: 4.375rem;
     margin-bottom: 6.25rem;
     text-align: center;
 }

 .ins__main_img img {
     width: 85%;
     margin: 0 auto;
 }

 .inspection__two_rows {
     padding-top: 5.625rem;
     padding-bottom: 6.25rem;
     position: relative;
     background-color: #D1E1EC;
 }

 .banner__rows li {
     width: 49.5%;
     border-right: 2px solid #fff;
 }

 .banner__rows li a::before {
     content: "";
     position: absolute;
     left: 0;
     top: 0;
     width: 100%;
     height: 100%;
     z-index: 0;
     background-color: rgba(0, 0, 0, 0.6);
 }

 .banner__rows a {
     height: 150px;
     color: #fff;
     align-items: center;
     justify-content: center;
     position: relative;
     background-repeat: no-repeat;
     background-position: center;
     background-size: cover;
 }

 .banner__rows a span {
     position: relative;
     z-index: 5;
 }

 .inspection__three_rows {
     padding-top: 3.75rem;
     margin-bottom: -2.4rem;
 }

 .ins__desc_2 {
     text-align: center;
     font-size: 0.938rem;
     color: #4B4B4B;
     letter-spacing: 0;
     margin-top: -1.4rem;
     margin-bottom: 2.188rem;
 }

 .ins__desc_2 p {
     line-height: 180%;
 }

 .item__ins_02:first-child {
     width: 45%;
 }

 .item__ins_02:last-child {
     width: 45%;
 }

 .wp__ins_02 {
     margin-top: 1.688rem;
     border: 5px solid #305D89;
     padding: 2rem;
     background: #fff;
     height: 240px;
 }

 .wp__ins_02 h4 {
     display: block;
     text-align: center;
     position: relative;
     color: #305D89;
     font-size: 1.25rem;
     letter-spacing: 0.5px;
     font-weight: 600;
     margin-top: -0.625rem;
 }

 .item__point:not(:last-child) {
     border-right: 1px solid #305D89;
 }

 .ins__desc__02 {
     display: flex;
     align-items: center;
     padding-bottom: 0.875rem;
 }

 .ins__desc__02 p {
     width: calc(100% - 120px);
     color: #305D89;
     line-height: 150%;
     margin-right: 30px;
     font-size: 15px;
 }

 .ins__desc__02 span {
     display: block;
     text-align: right;
 }

 .ins__desc__02 img {
     width: 100%;
 }

 .item__point h5 {
     font-size: 1.25rem;
     font-weight: bold;
     line-height: 150%;
     text-align: center;
     color: #305D89;
     margin-bottom: 1rem;
     margin-top: 0;
 }

 .item__point h5 span:first-child {
     background-color: #305D89;
     color: #fff;
     font-size: 0.938rem;
     line-height: 100%;
     padding-top: 0.688rem;
     padding-bottom: 0.25rem;
     padding-left: 0.938rem;
     padding-right: 0.938rem;
     margin-right: 1.25rem;
 }

 .item__point h5 span:last-child {
     position: relative;
     top: 0.313rem;
 }

 .mgt33 {
     margin-top: 2.063rem;
 }

 /* トピック */

 .gp__btn_new_item {
     display: flex;
     justify-content: center;
 }

 .gp__btn_new_item a {
     font-size: 16px;
 }

 .gp__news_item {
     max-width: 830px;
     margin-left: auto;
     margin-right: auto;
     margin-top: 10.2rem;
     padding-bottom: 17.7rem;
 }

 .wp__cate_news {
     display: flex;
     justify-content: flex-start;
 }

 .wp__cate_news a {
     min-width: 136px;
     height: 24px;
     border-radius: 4px;
     display: inline-block;
     color: #fff;
     text-align: center;
     padding-left: 10px;
     padding-right: 10px;
     padding-top: 4px;
     background-color: #A5C6DE;
     margin-right: 15px;
     margin-bottom: 15px;
     font-size: 14px;
     font-weight: bold;
     letter-spacing: 0;
     line-height: 150%;
 }

 .ie .wp__cate_news a {
     padding-top: 3px;
 }

 .wp__time_title {
     display: flex;
     align-items: flex-start;
     font-size: 16px;
     font-weight: bold;
     letter-spacing: 0;
     color: #4B4B4B;
     line-height: 150%;
     margin-top: 20px;
 }

 .new_item_time:first-child {
     font-weight: bold;
     width: 160px;
 }

 .new_item_time:last-child {
     width: calc(100% - 160px);
     font-weight: 300;
     font-size: 14px;
 }

 .gp__news_content {
     font-size: 16px;
     letter-spacing: 0;
     line-height: 150%;
     color: #4B4B4B;
     padding: 41px 0 38px 0;
 }

 .gp__news_content p {
     line-height: 150%;
 }

 /* お問い合わせ */
 .gp__contact_form {
     width: 100%;
     padding-bottom: 78px;
     padding-left: 15px;
     padding-right: 15px;
     padding-top: 58px;
     background-color: #D1E1EC;
 }

 .gp__contact_form h3 {
     font-size: 20px;
     letter-spacing: 0;
     font-weight: 300;
     line-height: 150%;
     color: #4B4B4B;
     display: block;
     text-align: center;
 }

 .gp__contact_form table {
     width: 100%;
     max-width: 810px;
     margin-left: auto;
     margin-right: auto;
     border-collapse: separate;
     border-spacing: 0 40px;
 }

 .gp__contact_form td:first-child {
     width: 250px;
     position: relative;
     top: 3px;
 }

 .gp__contact_form td {
     font-size: 16px;
     font-weight: 300;
     color: #4B4B4B;
     letter-spacing: 0;
     line-height: 166%;
     position: relative;
     vertical-align: middle;
 }

 .gp__contact_form td .gflex {
     align-items: center;
 }

 .gp__contact_form tr.vs1 td {
     vertical-align: top;
 }

 .gp__contact_form tr.vs1 .gflex {
     position: relative;
     top: 4px;
 }

 .ie .gp__contact_form tr.vs1 .gflex {
     top: 7px;
 }

 .ie .gp__contact_form td:first-child {
     top: 0;
 }

 #nameFile {
     margin-left: 15px;
     position: relative;
     top: 3px;
 }

 .mgt15 {
     margin-top: 15px;
 }

 .poa {
     position: absolute;
     top: -24px;
     left: 0;
 }

 .item__td:last-child {
     font-size: 13px;
     color: #fff;
     width: 38px;
     height:1.5em;
     line-height: 1.5em;
     text-align: center;
     margin-left: 15px;
     background-color: #305D89;
 }

 .item__td:first-child {
     position: relative;
 }

 .ie .item__td:first-child {
     top: 1.5px;
 }

 .ie .item__td:last-child {
     padding-top: 4px;
     padding-bottom: 2px;
 }

 .gp__input,
 textarea {
     width: 100%;
     height: 40px;
     border: 0;
     background-color: #ffff;
     outline: none;
     resize: none;
     padding-left: 15px;
     padding-right: 15px;
     font-size: 15px;
     color: #4B4B4B;
     font-weight: 300;
     line-height: 160%;
 }

 textarea {
     height: 174px;
     padding: 10px 15px;
 }

 .gp__submit_form {
     width: 100%;
     margin-top: 22px;
     margin-bottom: 2rem;
     text-align: center;
     display: flex;
     justify-content: center;
 }

 .gp__submit_form > div {
     display: none;
 }

 .confirm__btn {
     width: 272px;
     height: 48px;
     display: flex;
     border: 2px solid #305D89 !important;
     border-radius: 50px;
     align-items: center;
     justify-content: center;
     font-weight: 600;
     color: #305D89;
     cursor: pointer;
     font-size: 16px;
     font-weight: bold;
     transition: ease all 0.35s;
     background-color: #fff;
 }

 .confirm__btn:hover {
     opacity: 0.8;
 }

 @media (max-width:767px) {

     .gp__input,
     textarea {
         width: 79vw;
     }
 }

 /* File Custom */


 label {
     font-weight: 100;
 }

 span.ChosesFile {
     font-size: 13px;
     margin: 4px 0 0 0;
     padding: 0 20px 20px;
     width: 152px;
     height: 40px;
     display: flex;
     align-items: center;
     justify-content: center;
     background-color: #E9E8E8;
     text-align: center;
 }

 input[type=file] {
     position: relative;
     margin: 0px 0 0 -14px;
     font-size: 13px;
     width: 430px;
 }

 input[type=file]:focus {
     outline: none;
 }

 input[type=file]::before {
     content: "";
     position: absolute;
     background: #D1E1EC;
     font-size: 13px;
     width: 300px;
     height: 26px;
     line-height: 1.8;
     text-align: left;
 }

 /* Send */
 .gp__send {
     text-align: center;
     padding-bottom: 58px;
     font-size: 16px;
     color: #4B4B4B;
     letter-spacing: 0;
     font-weight: 300;
 }

 .gp__send p {
     line-height: 170%;
 }

 .gp__send p:not(:last-child) {
     margin-bottom: 20px;
 }


 /* confirmation */
 .gp__contact_form.confirmation h3,
 .confirmation .item__td:last-child,
 .confirmation td p {
     display: none;
 }

 .confirmation td textarea,
 .confirmation td p.mgt15 ~ input,
 .confirmation .ChosesFile {
     display: none;
 }

 .confirmation #nameFile {
     margin-left: 0;
 }

 .confirmation .gp__input,
 .confirmation textarea {
     background-color: transparent;
     padding-left: 0;
     padding-right: 0;
 }


 .confirmation ~ .gp__submit_form > .confirm__btn {
     display: none;
 }

 .confirmation ~ .gp__submit_form > div {
     display: flex;
 }

 .confirmation ~ .gp__submit_form > div .confirm__btn:not(:last-child) {
     margin-right: 20px;
 }


 @media (max-width:767px) {

     .gflex-inspection {
         display: block;
     }

     .item__ins_one:nth-child(2) {
         margin-top: 10px;
     }

     .ins__desc_2 p {
         line-height: 160%;
         text-align: left;
     }

     .confirmation ~ .gp__submit_form > div {
         flex-direction: column;
     }

     .confirmation ~ .gp__submit_form > div .confirm__btn:not(:last-child) {
         margin-right: 0;
         margin-bottom: 20px;
     }

     .confirmation .gp__input,
     .confirmation textarea {
         font-size: 3.846vw;
         height: auto;
     }

     .confirmation.gp__contact_form td:first-child {
         font-weight: bold;
     }

     .confirm__btn {
         font-size: 3.846vw;
     }
 }


 /* 会社概要 */
 .gp__about_child {
     width: 100%;
     max-width: 960px;
     margin-top: 4.5rem;
     margin-left: auto;
     margin-right: auto;
     margin-bottom: -2.7rem;
 }

 .gp__about_child table {
     width: 100%;
 }

 .gp__about_child td {
     color: #4B4B4B;
     font-size: 16px;
     line-height: 170%;
     padding-top: 32px;
     padding-bottom: 29px;
     border-bottom: 1px solid #707070;
 }

 .gp__about_child td:first-child {
     width: 170px;
     font-weight: bold;

 }

 .gp__about_child tr:last-child td {
     border-bottom: 0px;
 }

 .gp__about_child li {
     line-height: 160%;
     margin-bottom: 20px;
 }

 .gp__about_child li:last-child {
     margin-bottom: 0;
 }

 .gp__maps_item {
     display: inline-block;
     background-color: #305D89;
     color: #fff;
     padding-left: 15px;
     padding-right: 15px;
     font-weight: bold;
     font-size: 14px;
     margin-left: 30px;
 }

 .gp__about_child .item span {
     padding-right: 20px;
 }

 .gp__about_child tr {}

 .gp__recruit_child tr {}

 @media all and (-ms-high-contrast:none) {
     .item__point h5 span:first-child {
         padding-top: 0.563rem;
         padding-bottom: 0.375rem;
     }

     .item__point h5 span:last-child {
         top: 0.125rem;
     }
 }

 /* Rwd Child */
 @media (max-width:1500px) {

     .gp__concept_child p,
     .gp__message_child p {
         font-size: 16px;
     }
 }

 @media (max-width:1250px) {
     .item__ins_02:first-child {
         width: 45%;
     }

     .item__ins_02:last-child {
         width: 45%;
     }

     .wrap_sitemap ul li:not(:last-child) {
         margin-right: 5.859vw;
     }

     .wp__ins_02 {
         padding: 4vw;
         height: 100%;
         border: 3px solid #305D89;
     }



 }

 @media (max-width:1024px) {

     .banner__rows a {
         height: 10.688rem;
     }

     .item__tab a span:last-child {
         font-size: 1.4rem;
         top: 0.3rem;
     }

     /* 点検アフターサービス */
     .item__ins_one {
         font-size: 1.4rem;
     }

     .item__ins_one h4 {
         font-size: 1.6rem;
         margin-top: 2rem;
         margin-bottom: 1.5rem;
     }

     .item__ins_one:first-child img {
         width: 13.25rem;
     }

     .item__ins_one:last-child img {
         width: 14.375rem;
     }

     .ins__main_img img {
         width: 100%;
     }

     .ins__desc_2 {
         font-size: 1.2rem;
     }

     .gp__breadcrumb {
         padding: 1.5rem 0;
     }

     .item__ins_one:not(:last-child) {
         padding-right: 2rem;
     }

     .item__ins_one:nth-child(2) {
         padding-left: 2rem;
     }

     .item__ins_one_box {
         height: auto;
     }

     .title__ins_01 {
         font-size: 2rem;
     }

     .wp__ins_02 h4 {
         font-size: 1.8rem;
         margin-top: -0.5rem;
     }

     .wp__ins_02 h4 span {
         padding-left: 1rem;
         padding-right: 1rem;
     }

     .item__point h5 span:first-child {
         font-size: 1.5rem;
         padding-top: 1rem;
     }

     .item__point h5 {
         font-size: 17px;
         display: block;
         text-align: center;
     }

     .item__point h5 span:last-child {
         top: 0.5rem;
     }

     .ins__desc__02 p {
         font-size: 1.2rem;
     }
 }

 @media (max-width:950px) {


     .gp__about_child tr:last-child {
         border-bottom: none;

     }

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

     .item__ins_02 {
         width: 100% !important;
     }

     .item__ins_02:first-child {
         text-align: center;
         margin-bottom: 2rem;
     }

     .wrap_sitemap h3,
     .wrap_sitemap ul a {
         font-size: 15px;
     }

     .wrap_sitemap {
         padding-bottom: 3.4vw;
         margin-bottom: 4.4vw;
     }

     .wrap_sitemap ul {
         margin-top: 1.5rem;
     }

     /* 企業紹介 */
     .gp__concept_child p,
     .gp__message_child p {
         line-height: 180%;
     }

     .gp__privacy_child h3,
     .gp__privacy_child p,
     .gp__concept_child p,
     .gp__message_child p,
     .gp__recruit_child td,
     .gp__btn_new_item a,
     .gp__send {
         font-size: 15px;
     }

     .gp__contact_form h3 {
         font-size: 18px;
     }

     .gp__contact_form {
         padding-bottom: 48px;
     }

     .gp__about_child td:first-child {
         width: 140px;
     }

 }

 @media (max-width:767px) {
     .sp_shows_1 {
         display: block !important;
         margin-left: auto;
         margin-right: auto;
     }

     .sp_shows_2 {
         display: flex !important;
     }

     .gp__breadcrumb {
         margin-top: 12.5vw;
         padding-top: 2.75vw;
         padding-bottom: 2.75vw;
     }

     .title__page_child_01,
     .title__ins_01,
     .wp__ins_02 h4,
     .item__point h5 span:last-child {
         font-size: 17px;
     }

     section.page__content {
         padding-top: 8.8vw;
         padding-bottom: 9.3rem;
     }

     .item__tab a {
         flex-direction: column;
         height: 16.67vw;
         padding-top: 0.5vw;
         border-right: 0.769vw solid #305D89;
     }

     .item__tab:first-child a {
         border-left: 0.769vw solid #305D89;
         border-right: 0.769vw solid #305D89;
     }

     .item__tab a span:last-child {
         font-size: 3.4vw;
         margin-left: 0;
         padding-bottom: 5px;
     }

     .gp__tab_rows {
         margin-top: 9vw;
         margin-bottom: 10vw;
     }

     .mg_t95 {
         margin-top: 0;
     }

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

     /* 点検アフターサービス */

     .item__ins_one {
         width: 100%;
         padding-right: 0;
     }

     .item__ins_one:not(:last-child) {
         margin-right: 0;
     }

     .title__ins_01 {
         margin-bottom: 9vw;
     }

     .item__ins_one:first-child img {
         width: 31.5vw;
     }

     .item__ins_one:last-child img {
         width: 32.1vw;
     }

     .item__ins_one_box {
         height: auto;
         padding: 20px;
     }

     .item__ins_one h4 {
         font-size: 14px;
         margin-bottom: 4vw;
         line-height: 160%;
     }

     .item__ins_one {
         font-size: 14px;
     }

     .item__ins_one p:not(:last-child) {
         margin-bottom: 2vw;
         line-height: 150%;
     }

     .item__ins_one:nth-child(2) {
         padding-left: 0;
     }

     .ins__main_img {
         margin-top: 11vw;
         margin-bottom: 14vw;
     }

     .inspection__two_rows {
         padding-top: 10.5vw;
         padding-bottom: 10.5vw;
     }

     .ins__desc_2 {
         font-size: 14px;
         margin-top: -3.6vw;
         margin-bottom: 6.8vw;
     }

     .item__ins_02:first-child {
         margin-bottom: 2vw;
     }

     .wp__ins_02 h4 span {
         position: relative;
         top: -1.4vw;
         line-height: 100%;
     }

     .inspection__three_rows {
         padding-top: 13vw;
         margin-bottom: 1.4vw;
     }

     .inspection__three_rows > div {
         padding-left: 0;
         padding-right: 0;
     }

     .banner__rows {
         flex-direction: column;
         padding: 0;
     }

     .banner__rows li {
         width: 100%;
         border-right: none;
         border-bottom: 2px solid #fff;
     }

     .banner__rows a {
         height: 33.85vw;
     }

     .banner__rows .gp__button_01_1 span:last-child {
         font-size: 4.62vw;
         margin-left: 7.083vw;
     }

     .item__point {
         width: 100%;
         padding-right: 0;
     }

     .item__point:not(:last-child) {
         border-right: 0;
         padding-bottom: 2.7vw;
         margin-bottom: 6vw;
         border-bottom: 1px solid #305D89;
     }

     .item__point h5 span:first-child {
         font-size: 4vw;
         padding-left: 4.2vw;
         padding-right: 4.2vw;
         margin-right: 5.128vw;
         padding-top: 2.4vw;
         padding-bottom: 1.6vw;
     }

     .item__point:last-child {
         padding-left: 0;
         padding-right: 0;
     }

     .item__point h5 span:last-child {
         top: 0vw;
     }

     .ins__desc__02 p {
         font-size: 14px;
         line-height: 150%;
     }

     .mgt33 {
         margin-top: 8vw;
     }

     .item__point h5 {
         margin-bottom: 14px;
         font-size: 16px;
         ;
     }

     .ins__desc__02 span {
         width: 20.282vw;
         padding-right: 2.051vw;
     }

     .ins__desc__02 p {
         width: calc(100% - 20.282vw);
     }

     .item__point:last-child .ins__desc__02 span {
         padding-right: 0;
         margin: 10px auto 0;
     }

     .item__point:last-child .ins__desc__02 p {
         width: 100%;
         text-align: left;
     }

     .sp_hides {
         display: none;
     }

     .ins__desc__02 {
         align-items: flex-start;
         display: block;
     }

     /* プライバシーポリシー */
     .gp__privacy_child h3,
     .gp__privacy_child p {
         font-size: 14px;
         margin-top: 20px;
     }

     .sp__span {
         display: block;
         position: relative;
         left: -2.051vw;
     }

     .sp__span ~ br {
         display: none;
     }

     .gp__privacy_child h3 span {
         display: block;
     }

     .item__privacy {
         margin-top: 6.667vw;
     }

     .item__privacy p {
         margin-top: 1.538vw;
     }

     /* END プライバシーポリシー */

     /* サイトマップ */
     .wrap_sitemap h3,
     .wrap_sitemap ul a {
         font-size: 14px;
     }


     .wrap_sitemap ul {
         flex-wrap: wrap;
         margin-bottom: -2vw;
     }

     .wrap_sitemap ul li {
         margin-bottom: 2vw;
     }

     .wrap_sitemap ul.strong {
         justify-content: flex-start;
     }

     .wrap_sitemap:last-child {
         margin-bottom: 5vw;
     }

     /* END サイトマップ */

     /* 企業紹介 */
     .gp__concept_child p,
     .gp__message_child p {
         font-size: 14px;
         text-align: justify;
     }

     .gp__message_child {
         padding-left: 0;
         padding-right: 0;
     }

     .gp__recruit_child td {
         width: 100% !important;
         float: left;
         border-bottom: 0;
     }

     .gp__recruit_child td:first-child {
         color: #4B4B4B;
         font-weight: bold;
         padding-right: 3.846vw;
         padding-top: 2.6vw;
     }

     .gp__recruit_child td {
         font-size: 14px;
         padding-top: 0;
         padding-bottom: 2.6vw;
     }

     .gp__recruit_child tr {
         padding-bottom: 20px;
     }

     .gp__recruit_child .border {
         border-bottom: 1px solid #707070 !important;

     }

     .gp__recruit_btn span {
         top: 0;
     }

     .gp__recruit_child {
         margin-bottom: 1.7rem;
     }

     .gp__news_content,
     .wp__time_title {
         font-size: 15px;
     }

     .wp__time_title {
         flex-wrap: wrap;
     }

     .new_item_time {
         width: 100% !important;
     }

     .wp__cate_news a {
         min-width: 34.872vw;
         height: 6.154vw;
         padding-top: 0.5vw;
         font-size: 3.590vw;
     }

     .gp__news_content {
         padding: 8.974vw 0 8.974vw 0;
     }

     .gp__news_content p {
         text-align: justify;
     }


     /* お問い合わせ */

     .gp__contact_form {
         padding: 8vw 3.846vw 4vw;
     }

     .gp__contact_form h3 {
         font-size: 14px;
         margin-bottom: 7vw;
     }
     .gp__contact_form table, .gp__contact_form tr{
         width: 100%;
     }
     .gp__contact_form td {
         font-size: 14px;
         float: left;
     }

     .gp__contact_form td:first-child {
         top: 0;
         padding-bottom: 1vw;
     }

     .gp__contact_form td:last-child {
         padding-bottom: 4vw;
     }

     .mgt15 {
         width: 230px;

     }

     .poa {
         position: relative;
         top: 0;
         left: 0;
         margin-top: 3px;
         width: 230px;
     }

     .ChosesFile {
         width: 39.744vw;
         height: 10.256vw;
     }

     .ChosesFile span {
         top: 0vw;
     }

     .gp__contact_form table {
         border-spacing: 0 0;
     }

     .gp__contact_form tr.vs1 .gflex {
         top: 0;
     }

     label[for="FileForm"] {
         align-items: flex-start;
         flex-direction: column;
     }

     #nameFile {
         margin-left: 0;
         top: 6px;
         text-align: justify;
         word-break: break-all;
     }

     .gp__send {
         font-size: 4.103vw;
     }

     label {
         font-weight: 100;
     }

     input[type=file] {
         position: relative;
         margin: 0px 0 0 -14px;
         font-size: 13px;
         width: 430px;
     }

     input[type=file]:focus {
         outline: none;
     }

     input[type=file]::before {
         content: "";
         position: absolute;
         background: #D1E1EC;
         font-size: 13px;
         width: 60%;
         text-align: left;
     }

     .gp__about_child td:first-child {
         width: 100% !important;
         padding-left: 0;
     }

     .gp__about_child td {
         width: 100%;
         float: left;
         padding-left: 0;
     }

     .gp__about_child td {
         font-size: 3.8vw;
     }

     .gp__about_child li {
         margin-bottom: 4.5vw;
     }


     .gp__about_child td:first-child {
         color: #4B4B4B;
         font-weight: bold;
         padding-right: 3.846vw;
         padding-top: 2.6vw;
     }

     .gp__about_child td {
         border-bottom: 1px solid #fff;
         font-size: 14px;
         padding-top: 0vw;
         padding-bottom: 2.6vw;
     }

     .gp__about_child .border {
         border-bottom: 1px solid #707070 !important;

     }

     .gp__about_child .border p {
         font-size: 14px;
         padding-bottom: 0.5em;
     }

     .gp__about_child .border p.title {
         font-size: 14px;
         padding-bottom: 1vw;
     }

     .gp__about_child {
         margin-top: 0;
     }

     .gp__about_child li .sp_hides {
         display: block;
     }

     .gp__maps_item {
         padding-top: 2px;
         padding-bottom: 2px;
         padding-left: 3.846vw;
         padding-right: 3.846vw;
         font-size: 3vw;
         margin-left: 5.128vw;
     }

     .item__td:last-child {
         font-size: 12px;
         width: 4em;
         border-radius: 10px;
     }
 }

 @media (max-width:380px) {}

 @media (max-width:370px) {

     .title__page_child_01,
     .title__ins_01,
     .wp__ins_02 h4,
     .item__point h5 span:last-child {
         font-size: 16px;
     }

     .grid-1200 {}

     .grid-footer {
         width: 100%;
     }

     .item__tab a {
         border-right: 1px solid #305D89;
     }

     .item__tab:first-child a {
         border-left: 1px solid #305D89;
         border-right: 1px solid #305D89;
     }
 }

 /* Custom CSS */
 .gp__breadcrumb .sub-page-link {
     padding-left: 0.5rem;
 }

 .sub-page-banner {
     background: url('img/solar-img-1.png') no-repeat top center / cover;
     margin-top: 5.313rem;
     text-align: center;
     padding: 6.25rem 20px 4.875rem 20px;
 }

 .sub-page-banner__title {
     display: inline-block;
     width: 28.375rem;
     max-width: 100%;
     background-color: #fff;
     color: #305D89;
     font-size: 1.688rem;
     font-weight: 700;
     line-height: 1.2;
     padding: 1rem 20px;
 }

 .sub-page-banner__para {
     font-size: 1.4rem;
     line-height: 1.7;
     margin-top: 2.188rem;
     text-shadow: 0px 0px 6px #fff;
 }

 .y-layout-1 {
     width: 85%;
     margin: 0 auto;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
 }

 .y-layout-1__txt {
     width: 63%;
     padding: 6rem 3.125rem 0 2.313rem;
 }

 .y-layout-1__img {
     width: 35.25%;
     padding: 8rem 0 0 0;
 }

 .y-layout-1__title {
     font-size: 1.6rem;
     font-weight: 700;
     color: #305D89;
     margin-bottom: 2rem;
     line-height: 160%;
 }

 .y-layout-1__para {
     font-size: 1.15rem;
     line-height: 1.6;
     margin-bottom: 1.375rem;
     color: #4B4B4B;
 }

 .y-layout-1__para:last-child {
     margin-bottom: 0;
 }

 .solar-sec-1 {
     padding-bottom: 4.375rem;
 }

 .solar-sec-2 {
     background-color: #D1E1EC;
 }

 .solar-sec-3 {
     padding-bottom: 3.75rem;
 }

 .solar-sec-4 {
     background-color: #D1E1EC;
     padding-bottom: 8.438rem;
 }

 /*オール電化
 ---------------------------------------------*/
 .all-sec .sub-page-banner {
     background: url('img/all-electric-img.png') no-repeat top center / cover;
     margin-top: 5.313rem;
     text-align: center;
     padding: 6.25rem 20px 4.875rem 20px;
 }

 .all-sec-1,
 .all-sec-3 {
     background-color: #D1E1EC;
 }

 .all-sec-3 .ih-flexbox {
     display: flex;
     justify-content: space-between;
 }

 .all-sec-1 .y-layout-1,
 .all-sec-2 .y-layout-1,
 .all-sec-4 .y-layout-1 {
     align-items: center;
     padding: 62px 0;
 }

 .all-sec-1 .y-layout-1__txt,
 .all-sec-1 .y-layout-1__img {
     padding: 0;
 }

 .all-sec-1-box {
     background: #fff;
     padding: 31px 27px;
     display: flex;
     justify-content: space-between;
     align-items: center;
     width: 474px;
 }

 .all-sec-1-box .left p {
     font-size: 0.97rem;
     font-weight: bold;
     color: #305D89;
     padding-bottom: 0.3em;
 }

 .all-sec-1-box h2 {
     display: flex;
     align-items: center;
     height: 74px;
     justify-content: center;
     color: #fff;
     background: #305D89;
     text-align: center;
 }

 .all-sec-1-box .right ul li {
     font-size: 1rem;
     font-weight: bold;
     padding-bottom: 0.1em;
 }

 .all-sec-2 .y-layout-1__txt,
 .all-sec-2 .y-layout-1__img {
     padding: 0;
 }

 .all-sec-2 .y-layout-1__txt {
     width: 60%;
     padding-right: 3%;
 }

 .all-sec-2 .y-layout-1__para {
     line-height: 1.8;
 }

 .all-sec-3 .y-layout-1__txt {
     width: 66%;
     padding: 0;
 }

 .all-sec-3 .y-layout-1__img {
     width: 30%;
     padding: 0;
     padding-right: 2%;
 }

 .all-sec-3 .grid-1200 {
     padding: 39px 0;
 }

 .all-sec-3 .y-layout-1__title {
     margin-bottom: 1rem;
 }

 .ih-3-0 {
     width: 85%;
     margin: 0 auto;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     align-items: center;
     padding: 23px 0 0;
 }

 .ih-3 {
     width: 85%;
     margin: 0 auto;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     align-items: center;
     flex-flow: row-reverse;
     padding: 23px 0;
 }

 .all-sec-3 h3 {
     font-size: 1.16rem;
     color: #fff;
     display: inline-block;
     background: #305D89;
     width: 248px;
     height: 38px;
     line-height: 38px;
     text-align: center;
 }

 .all-sec-3 h4 {
     font-size: 1.4rem;
     color: #305D89;
     padding-top: 1em;
     padding-bottom: 0.5em;
 }

 .all-sec-4 {
     padding-bottom: 70px;
 }

 .all-sec-4 .y-layout-1__txt {
     width: 55%;
 }

 .all-sec-4 .y-layout-1__img {
     width: 45%;
 }

 .all-sec-4 .y-layout-1__txt,
 .all-sec-4 .y-layout-1__img {
     padding: 0;
 }

 .all-sec-4 .all-sec-4-box {
     width: 470px;
     background: #D1E1EC;
     padding: 36px 76px;
     font-size: 1.2rem;
     margin-bottom: 25px;
 }

 .all-sec-4 .all-sec-4-box h2 {
     padding-bottom: 1em;
 }

 .all-sec-4 .all-sec-4-box ul {
     line-height: 180%;
 }

 .all-sec-4 .flex-area {
     width: 470px;
     display: flex;
     justify-content: space-between;
 }

 @media screen and (max-width: 1200px) {
     .all-sec-1-box {
         width: 100%;
         padding: 4vw;
         display: block;
     }

     .all-sec-1-box .right ul li {
         font-size: 13px;
         line-height: 2;
     }

     .all-sec-1 .grid-1200,
     .all-sec-2 .grid-1200,
     .all-sec-3 .grid-1200,
     .all-sec-4 .grid-1200 {
         padding: 0;
     }

     .all-sec-1 .y-layout-1,
     .all-sec-2 .y-layout-1 {
         padding: 54px 0;
     }


     .all-sec-2 .y-layout-1__txt,
     .all-sec-2 .y-layout-1__img {
         width: 100%;
         padding: 0;
     }

     .all-sec-2 .y-layout-1__txt {
         margin-bottom: 20px;
     }

     .all-sec-2 .y-layout-1__img {
         text-align: center;
     }

     .all-sec-3 {
         padding: 47px 0 30px;
     }

     .all-sec-3 .y-layout-1__title {
         margin-bottom: 4rem;
     }

     .all-sec-3 .y-layout-1__txt,
     .all-sec-3 .y-layout-1__img {
         width: 100%;
         padding: 0;
     }

     .all-sec-3 .y-layout-1__txt {
         margin-bottom: 6vw;
     }

     .all-sec-3 .y-layout-1__img {
         margin-bottom: 17px;
     }

     .all-sec-1 h2 {
         font-size: 13px;
         line-height: 1.5;
         height:35px;
     }

     .all-sec-2 h2,
     .all-sec-3 h2,
     .all-sec-4 h2 {
         font-size: 18px;
     }

     .ih-3-0 {
         padding: 0;
     }

     .ih-3 {
         display: block;
         padding: 0;
     }

     .all-sec-3 h3 {
         font-size: 14px;
         line-height: 39px;
         width: 100%;
     }

     .all-sec-3 h4,
     .all-sec-3 p {
         font-size: 14px;
         line-height: 1.4;
     }

     .all-sec-4 {
         padding-bottom: 0;
     }

     .all-sec-4 .y-layout-1 {
         display: block;
         padding: 24px 0;
     }

     .all-sec-4 .y-layout-1__txt,
     .all-sec-4 .y-layout-1__img {
         width: 100%;
     }

     .all-sec-4 .y-layout-1__img {
         margin-top: 3.5vw;
     }

     .all-sec-4 .all-sec-4-box {
         margin-bottom: 3.5vw;
         padding: 7vw 7vw 4vw;
     }

     .all-sec-4 .all-sec-4-box,
     .all-sec-4 .flex-area {
         width: 100%;
     }

     .all-sec-4 .all-sec-4-box ul li {
         font-size: 14px;
         padding-bottom: 0.5em;
     }

     .all-sec-4 .flex-area img {
         width: 48%;
     }
 }
 @media screen and (max-width: 767px) {
    .ih-3-0{
        width: 100%;
    }
    .ih-3{
        width: 94%;
    }
 }

 /*設備・リフォーム
 ---------------------------------------------*/
 .facility .sub-page-banner {
     background: url('img/facility-img.png') no-repeat top center / cover;
     margin-top: 5.313rem;
     text-align: center;
     padding: 6.25rem 20px 4.875rem 20px;
 }

 .grid-1140 {
     max-width: 1140px;
     margin: 125px auto;
 }

 .facility .flex {
     width: 100%;
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-bottom: 79px;
 }

 .facility .flex:last-child {
     margin-bottom: 0;
 }

 .facility .flex-item {
     width: 556px;
     height: 264px;
     display: flex;
 }

 .facility .flex-item .flex-item-img {
     width: 354px;
     height: 264px;
     margin-right: 46px;
 }

 .facility h5 {
     display: block;
     width: 126px;
     height: 31px;
     line-height: 31px;
     background: #305D89;
     text-align: center;
     font-size: 17px;
     color: #fff;
     font-weight: bold;
     margin-bottom: 29px;
 }

 .facility ul li {
     font-size: 17px;
     font-weight: bold;
     color: #305D89;
     padding-bottom: 0.5em;
 }

 .hidden {
     display: block;
 }

 @media screen and (max-width: 1400px) {
     .facility .flex-item .flex-item-img {
         margin-right: 20px;
     }
 }

 @media screen and (max-width: 1200px) {
     .grid-1140 {
         max-width: 700px;
         margin: 51px auto;
     }

     .facility .flex {
         display: block;
         margin-bottom: 0;
     }

     .facility .flex-item {
         margin-bottom: 50px;
     }
 }

 @media screen and (max-width: 700px) {
     .grid-1140 {
         width: 85%;
         margin: 51px auto;
     }

     .facility .flex-item {
         width: 100%;
         height: 155px;
         display: flex;
         margin-bottom: 30px;
     }

     .facility .flex-item .flex-item-img {
         width: 58%;
         height: 155px;
         margin-right: 4%;
     }

     .facility .flex-item .flex-item-img img {
         width: 100%;
         height: 155px;
         object-fit: cover;
     }

     .facility .flex-item .flex-item-txt {
         width: 38%;
     }

     .facility h5 {
         width: 100%;
         height: 27px;
         line-height: 27px;
         font-size: 14px;
         margin-bottom: 14px;
     }

     .facility ul li {
         font-size: 13px;
         padding-bottom: 0.5em;
     }

     .facility .hidden {
         display: none;
     }
 }

 /*その他リフォーム
 ---------------------------------------------*/
 .other .sub-page-banner {
     background: url('img/other-img.png') no-repeat top center / cover;
     margin-top: 5.313rem;
     text-align: center;
     padding: 6.25rem 20px 4.875rem 20px;
 }

 .other .flex-item {
     display: flex;
     flex-direction: row-reverse;
     margin-bottom: 40px;
 }

 .other .flex-item-txt {
     width: 60%;
 }

 .other h4 {
     font-size: 17px;
     font-weight: bold;
     color: #fff;
     text-align: center;
     display: block;
     width: 248px;
     height: 38px;
     line-height: 38px;
     background: #305D89;
     margin-bottom: 30px;
 }

 .other h5 {
     font-size: 16px;
     font-weight: bold;
     color: #305D89;
     margin-bottom: 27px;
 }

 .other p {
     font-size: 16px;
 }

 .other .flex-item-img {
     width: 40%;
     padding-left: 30px;
     text-align: right;
 }

 .other .flex-item-img img {
     width: 353px;
     height: 225px;
 }

 @media screen and (max-width: 700px) {
     .other .flex-item-img img {
         width: 100%;
         height: 208px;
     }

     .other h4 {
         margin-bottom: 20px;
         width: 100%;
     }

     .other h5 {
         margin-bottom: 20px;
     }
 }

 @media screen and (max-width: 500px) {
     .other .flex-item {
         display: block;
         margin-bottom: 50px;
     }

     .other .flex-item-img {
         width: 100%;
         padding-left: 0;
         margin-bottom: 10px;
     }

     .other .flex-item-txt {
         width: 100%;
     }
 }



 .y-layout-1__img--ct-1 img {
     margin-bottom: 1.375rem;
 }

 .y-layout-1__img--ct-1 img:last-child {
     margin-bottom: 0;
 }

 .y-layout-1__txt--ct-1 {
     padding-top: 6rem;
 }

 .y-layout-1__img--ct-1 {
     padding-top: 6.25rem;
     padding-bottom: 2rem;
 }

 .y-layout-1__title--ct-1 {
     margin-bottom: 2rem;
 }

 .y-layout-1__title--ct-3 {
     margin-bottom: 1.375rem;
 }

 .y-layout-1__para--ct-1 {
     margin-bottom: 1.5rem;
 }

 .y-layout-1__para--ct-2 {
     margin-bottom: 1.5rem;
 }

 .y-layout-1__txt--ct-2 {
     padding-top: 5.625rem;
     padding-bottom: 0;
 }

 .y-layout-1__title--ct-2 {
     margin-bottom: 2rem;
 }

 .y-layout-1__para--ct-3 {
     margin-bottom: 1.5rem;
 }

 .y-layout-1__para--ct-4 {
     margin-bottom: 2.063rem;
 }

 .y-layout-1__img--ct-2 {
     padding-top: 7.5rem;
 }

 .y-layout-1__txt--ct-3 {
     width: 78.84%;
     padding-top: 5.313rem;
 }

 .y-layout-1__img--ct-3 {
     width: 21.16%;
     padding-top: 7.188rem;
 }

 .y-layout-1__para--ct-5 {
     max-width: 786px;
 }

 .y-img-1 {
     width: 65%;
     margin: 0 auto 2rem;
     text-align: center;
 }

 .y-layout-2__item {
     background-color: #fff;
     padding: 0 3rem;
     margin-bottom: 1.25rem;
 }

 .y-layout-2__item:last-child {
     margin-bottom: 0;
 }

 .y-layout-2__item__wrap {
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
 }

 .y-layout-2__item__txt {
     width: 65%;
     padding: 2rem 0;
 }

 .y-layout-2__item__img {
     width: 30.2%;
 }

 .y-layout-2__item__title {
     font-size: 1.3rem;
     font-weight: 700;
     color: #305D89;
     margin-bottom: 1rem;
 }

 .y-layout-2__item__para {
     font-size: 1rem;
     line-height: 1.5;
     color: #4B4B4B;
     margin-bottom: 1.25rem;
 }

 .y-layout-2__item__para:last-child {
     margin-bottom: 0;
 }

 .y-layout-2__item__img--ct-1 {
     padding: 0 0 1.25rem 0;
 }

 .y-layout-2__item__txt--ct-1 {
     padding-top: 4.063rem;
 }

 .y-layout-2__item__img--ct-2 {
     padding-top: 3.125rem;
     padding-bottom: 3rem;
 }

 section.page__content--ct-1 {
     padding-bottom: 0;
 }

 .sub-page-banner__title-2 {
     display: none;
 }

 .inspect__case-list {
     max-width: 960px;
     width: 100%;
     margin: 0 auto;
 }

 .inspect__case-list__item {
     display: flex;
     flex-wrap: wrap;
     margin-bottom: 6rem;
 }

 .inspect__case-list__item:last-child {
     margin-bottom: 0;
 }

 .inspect__case-list__item__img__list {
     display: flex;
     margin: 0 auto;
 }

 .inspect__case-list__item__txt {
     margin: 1rem auto;
 }

 .inspect__case-list__item__title {
     font-size: 1.25rem;
     letter-spacing: 0.2px;
     color: #4B4B4B;
     line-height: 1.4;
     margin-bottom: 0.625rem;
 }

 .inspect__case-list__item__years {
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     margin-bottom: 2rem;
 }

 .inspect__case-list__item__year {
     font-size: 1rem;
     background-color: #D1E1EC;
     line-height: 1.5em;
     width: 5em;
     color: #4B4B4B;
     text-align: center;
 }

 .inspect__case-list__item__year:last-child {
     margin-right: 0;
 }

 .inspect__case-list__item__year--ct-1 {
     background-color: transparent;
     padding-right: 0;
     padding-left: 0;
 }

 .inspect__case-list__item__para {
     font-size: 1.25rem;
     color: #4B4B4B;
     letter-spacing: 0.2px;
     line-height: 1.5;
     margin-bottom: 0.625rem;
 }

 .inspect__case-list__item__para:last-child {
     margin-bottom: 0;
 }

 .inspect__case-list__item__img {
     position: relative;
     margin: 0 1rem 1rem;
 }

 .inspect__case-list__item__img:last-child {
     margin-bottom: 0;
 }

 .inspect__case-list__item__img::before {
     font-size: 0.938rem;
     font-weight: bold;
     content: '';
     display: block;
     position: absolute;
     top: 0;
     left: 0;
     letter-spacing: 0.2px;
     color: #fff;
     line-height: 1.2;
     padding: 0.5rem 1.813rem 0.313rem 1.813rem;
 }

 .inspect__case-list__item__img--before::before {
     content: 'Before';
     background-color: #4B4B4B;
 }

 .inspect__case-list__item__img--after::before {
     content: 'After';
     background-color: #305D89;
 }

 .title__ins_01--ct-1 {
     margin-bottom: 4.375rem;
 }

 .inspection__three_rows--ct-1 {
     padding-top: 8.75rem;
 }

 section.page__content--ct-2 {
     padding-bottom: 12.5rem;
 }

 .inspect-process-sec-1 {
     background: #D1E1EC;
     padding: 4.063rem 20px 4.063rem 20px;
 }

 .inspect .blue .title__ins_01--ct-2 {
     margin-bottom: 1.875rem;
 }

 .inspect-steps {
     display: flex;
     flex-wrap: wrap;
     margin-bottom: 1.25rem;
 }

 .inspect-steps__step {
     width: 24.4585%;
     border-left: 1px solid #707070;
     padding: 0.5rem 1.688rem 0 1.688rem;
     min-height: 18.438rem;
 }

 .inspect-steps__step:last-child {
     border-left: none;
     border-right: 1px solid #707070;
 }

 .inspect-steps__step-big {
     width: 51.083%;
     position: relative;
     min-height: 18.438rem;
     padding: 0.5rem 0 0 0;
 }

 .inspect-steps__step-big::before {
     content: '';
     position: absolute;
     top: 0;
     left: 0;
     width: 0.75rem;
     height: 100%;
     display: block;
     background: url('img/flow-border-right.png') no-repeat top center / cover;
 }

 .inspect-steps__step-big::after {
     content: '';
     position: absolute;
     top: 0;
     right: 0;
     width: 0.75rem;
     height: 100%;
     display: block;
     background: url('img/flow-border-right.png') no-repeat top center / cover;
 }

 .inspect-steps__title {
     text-align: center;
     font-weight: bold;
     margin-bottom: 1.688rem;
 }

 .inspect-steps__title__en {
     display: inline-block;
     background-color: #305D89;
     color: #fff;
     line-height: 1.2;
     font-size: 1rem;
     padding: 0.5rem 1.875rem;
     margin-bottom: 0.313rem;
 }

 .inspect-steps__title__ja {
     display: block;
     color: #305D89;
     font-size: 1.063rem;
 }

 .inspect-steps__img {
     text-align: center;
     margin-bottom: 1rem;
 }

 .inspect-steps__para {
     font-size: 0.875rem;
     line-height: 1.3;
     color: #4B4B4B;
 }

 .inspect-steps__small-row {
     display: flex;
     flex-wrap: wrap;
 }

 .inspect-steps__small-row__item {
     width: 49.26%;
     border-right: 1px solid #707070;
     padding: 0 2.25rem 0 2.25rem;
 }

 .inspect-steps__small-row__item--ct {
     width: 50.74%;
     border-right: none;
     padding: 0 2.375rem 0 2rem;
 }

 .inspect-steps-time {
     text-align: center;
     position: relative;
 }

 .inspect-steps-time__txt {
     display: inline-block;
     background-color: #fff;
     font-size: 1.063rem;
     font-weight: bold;
     line-height: 1.2;
     color: #305D89;
     padding: 1rem 20px;
     position: relative;
     z-index: 1;
 }

 .inspect-steps-time__border {
     position: absolute;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     width: calc(100% - 3.75rem);
     height: 6px;
     background-color: #fff;
 }

 .inspect-steps-time::before {
     content: '';
     display: block;
     position: absolute;
     top: 3px;
     left: 0;
     width: 1.875rem;
     height: 2.5rem;
     background: url('img/left-triangle.png') no-repeat top center / cover;
 }

 .inspect-steps-time::after {
     content: '';
     display: block;
     position: absolute;
     top: 3px;
     right: 0;
     width: 1.875rem;
     height: 2.5rem;
     background: url('img/right-triangle.png') no-repeat top center / cover;
 }


 .inspect-process-sec-2 {
     padding: 4.563rem 20px 0 20px;
 }

 .inspect-process-img {
     text-align: center;
     margin-bottom: 6.875rem;
 }

 .inspect-process-img img {
     max-width: 800px;
     width: 100%;
 }

 .inspect-process-list {
     counter-reset: step-order;
 }

 .inspect-process-list li {
     margin-bottom: 8rem;
 }

 .inspect-process-list li:last-child {
     margin-bottom: 0;
 }

 .inspect-process-list__part-1 {
     display: flex;
     flex-wrap: wrap;
     margin-bottom: 2.875rem;
 }

 .inspect-process-list__part-1__img {
     width: 47.33%;
     padding-top: 4px;
 }

 .inspect-process-list__part-1__txt {
     width: 52.67%;
     padding: 0 0 0 4rem;
 }

 .inspect-process-list__part-1__title {
     font-size: 1.875rem;
     font-weight: bold;
     color: #4B4B4B;
     position: relative;
     line-height: 1.2;
     padding: 0.5em 0 0 3.313rem;
     margin-bottom: 2.5rem;
 }

 .inspect-process-list__part-1__title::before {
     counter-increment: step-order;
     content: counter(step-order);
     display: block;
     box-sizing: border-box;
     position: absolute;
     top: 0.5em;
     left: 0;
     width: 2.625rem;
     height: 2.625rem;
     color: #fff;
     font-weight: bold;
     font-size: 1.563rem;
     line-height: 2.625rem;
     background-color: #305D89;
     border-radius: 50%;
     text-align: center;
 }

 .inspect-process-list__part-1__para {
     font-size: 1.25rem;
     line-height: 1.5;
     color: #4B4B4B;
 }

 .inspect-process-list__part-2 {
     display: flex;
     flex-wrap: wrap;
 }

 .inspect-process-list__part-2__item {
     width: 17.91%;
     margin-right: 2.6125%;
 }

 .inspect-process-list__part-2__item:nth-child(5n) {
     margin-right: 0;
 }

 .inspect-process-list__part-2__item__txt {
     font-size: 0.938rem;
     line-height: 1.3;
     color: #4B4B4B;
     margin-top: 0.5rem;
 }

 .inspect-process-time-sp {
     display: none;
 }

 .maintain-para {
     color: #4B4B4B;
     text-align: center;
     font-size: 1.1rem;
     line-height: 1.7;
     margin-bottom: 4.375rem;
 }

 .title__ins_01--ct-4 {
     margin-bottom: 1.25rem;
 }

 .maintain-list__title {
     font-size: 1.7rem;
     font-weight: bold;
     line-height: 1.4;
     color: #305D89;
     margin-bottom: 1.875rem;
 }

 .maintain-list__gal {
     display: flex;
     flex-wrap: wrap;
     align-items: flex-start;
 }

 .maintain-list__gal__img {
     display: flex;
     flex-wrap: wrap;
     width: 23.33%;
 }

 .maintain-list__gal__img__item {
     width: 50%;
 }

 .maintain-list__tb {
     width: 76.67%;
     padding: 0 0 0 2.188rem;
 }

 .maintain-list__tb table {
     width: 100%;
     table-layout: fixed;
     color: #4B4B4B;
     line-height: 1.6;
 }

 .maintain-list__tb th {
     width: 25%;
     background-color: #D1E1EC;
     font-weight: bold;
     text-align: center;
     border-right: 2px solid #fff;
     vertical-align: middle;
     padding: 1rem 20px 0.5rem 20px;
 }

 .maintain-list__tb td {
     text-align: center;
     vertical-align: middle;
     font-size: 0.875rem;
     padding: 0.813rem 20px 0.375rem 20px;
     line-height: 1.5;
 }

 .maintain-list__tb tr:nth-child(odd) td {
     background-color: #E9E8E8;
 }

 .maintain-list li {
     margin-bottom: 4.375rem;
 }

 .maintain-note {
     font-size: 0.875rem;
     color: #4B4B4B;
     padding: 0.5rem 0 0 0;
 }

 .maintain-list__tb__small-row {
     display: flex;
     flex-wrap: wrap;
     align-items: center;
 }

 .maintain-list__tb__small-row__right {
     margin-left: auto;
     padding-right: 0.938rem;
 }

 .maintain-list__tb__small-row__index {
     margin-bottom: 1.375rem;
 }

 .maintain-list__tb__small-row__index:last-child {
     margin-bottom: 0;
 }

 .maintain-list li:last-child {
     margin-bottom: 0;
 }

 section.page__content--ct-3 {
     padding-bottom: 6.188rem;
 }

 .inspection__three_rows--ct-3 {
     padding-top: 4.813rem;
 }

 .important-layout-1__wrap {
     display: flex;
     flex-wrap: wrap;
 }

 .important-layout-1__item {
     width: 30.083%;
     background-color: #A5C6DE;
     color: #305D89;
     min-height: 165px;
     padding: 1.688rem 2.188rem 1rem 2rem;
     margin-bottom: 3.438rem;
     position: relative;
     z-index: 1;
 }

 .important-layout-1__item::before {
     content: '1';
     display: block;
     position: absolute;
     top: -1.063rem;
     left: 0;
     width: 3.938rem;
     height: 3.938rem;
     border: 4px solid #3B5C85;
     border-radius: 8px;
     background-color: #fff;
     text-align: center;
     font-size: 2.5rem;
     font-weight: bold;
     line-height: 1.2;
     padding: 0.3rem;
 }

 .important-layout-1__item__p {
     font-size: 1rem;
     line-height: 1.625;
 }

 .important-layout-1__item__title {
     font-size: 1.125rem;
     padding: 0 0 0 3.125rem;
     margin-bottom: 0.938rem;
 }

 .important-layout-1__item:nth-child(2n) {
     margin-left: auto;
 }

 .title__ins_01--ct-5 {
     margin-bottom: 6.25rem;
 }

 .important-layout-1__item--ct-order::before {
     content: '2';
 }

 .important-layout-1__item--ct-order-2::before {
     content: '3';
 }

 .important-layout-1__item--ct-order-3::before {
     content: '4';
 }

 .important-layout-1 {
     position: relative;
 }

 .important-layout-1__img {
     position: absolute;
     width: 42.583%;
     top: 0.875rem;
     left: 50%;
     transform: translateX(-50%);
 }

 .important-layout-2 {
     display: flex;
     flex-wrap: wrap;
 }

 .important-layout-2__img {
     width: 35%;
     padding: 1.875rem 1.875rem 0 0.813rem;
 }

 .important-layout-2__txt {
     width: 65%;
     padding: 0 0.813rem 0 0;
 }

 .maintain-2-sec-1 {
     padding: 0 0 6rem 0;
 }

 .gp__inspection_child--ct-2 {
     margin-top: 3.125rem;
 }

 .important-layout-2__row {
     display: flex;
     flex-wrap: wrap;
     padding-bottom: 2.063rem;
     margin-bottom: 2.375rem;
     border-bottom: 3px solid #3B5C85;
 }

 .important-layout-2__row:last-child {
     border-bottom: none;
     margin-bottom: 0;
     padding-bottom: 0;
 }

 .important-layout-2__row__item {
     display: flex;
     flex-wrap: wrap;
 }

 .important-layout-2__row__item__txt {
     background-color: #E9E8E8;
     width: 63.27%;
     font-size: 0.875rem;
     font-weight: bold;
     line-height: 1.57;
     color: #4B4B4B;
     display: flex;
     flex-wrap: wrap;
     justify-content: flex-start;
     align-items: center;
     padding: 1.313rem 1rem 1rem 1rem;
 }

 .important-layout-2__row__item {
     display: flex;
     flex-wrap: wrap;
     width: 31.94%;
     margin-right: 2.09%;
 }

 .important-layout-2__row__item:nth-child(3n) {
     margin-right: 0;
 }

 .important-layout-2__row__item__img {
     width: 36.73%;
     min-height: 90px;
     background-size: cover;
     background-position: top center;
     background-repeat: no-repeat;
 }

 .important-layout-2__row__item__img-2 {
     width: 32.65%;
     padding-right: 20px;
 }

 .important-layout-2__row__item__txt-2 {
     width: 67.35%;
     font-size: 1.375rem;
     font-weight: bold;
     color: #305D89;
     padding: 0.313rem 0 0 0;
 }

 .important-layout-2__row__item--ct {
     align-items: center;
 }

 .important-layout-2__row--ct .important-layout-2__row__item {
     margin-bottom: 0.813rem;
 }

 .maintain-2-list {
     display: flex;
     flex-wrap: wrap;
     margin-bottom: 5rem;
 }

 .maintain-2-list li {
     width: 30.5%;
     margin-right: 4.25%;
 }

 .maintain-2-list li:nth-child(3n) {
     margin-right: 0;
 }

 .maintain-2__layout__title {
     font-size: 1.875rem;
     color: #305D89;
     border-bottom: 4px solid #3A5C85;
     padding-bottom: 1.063rem;
     margin-bottom: 1.563rem;
 }

 .maintain-2-sec-3 {
     padding: 5.625rem 0 0 0;
 }

 .maintain-2-list__title {
     font-size: 1.25rem;
     letter-spacing: 0.2px;
     color: #4B4B4B;
     margin-bottom: 0.813rem;
 }

 .maintain-2-list__img {
     position: relative;
     margin-bottom: 1rem;
 }

 .maintain-2-list__img__badge {
     position: absolute;
     top: 0;
     left: 0;
     display: block;
     color: #fff;
     font-size: 0.875rem;
     font-weight: bold;
     letter-spacing: 0.4px;
     background-size: cover;
     background-repeat: no-repeat;
     background-position: top center;
     width: 5rem;
     height: 2.25rem;
     line-height: 2.255rem;
     text-align: center;
 }

 .maintain-2-list__para {
     font-size: 1rem;
     line-height: 1.56;
     color: #4B4B4B;
 }

 li.maintain-2-list--ct-li {
     margin-right: 1.75%;
 }

 li.maintain-2-list--ct-li-2 {
     width: 33%;
     display: flex;
     flex-wrap: wrap;
     padding: 2.375rem 0 0 0;
 }

 .maintain-2-list--ct-li-2__img {
     width: 27.78%;
     padding-right: 20px;
 }

 .maintain-2-list--ct-li-2__txt {
     width: 72.22%;
     padding: 2.188rem 0 0 0;
 }

 .maintain-2-list--ct-li-2__txt__bold {
     font-size: 1.625rem;
     font-weight: bold;
     text-align: center;
     color: #fff;
     background-color: #F8BD1B;
     padding: 1.625rem 20px;
     border-radius: 5px;
     margin-bottom: 1.875rem;
 }

 .maintain-2-list--ct-li-2__txt__p {
     color: #4B4B4B;
     font-size: 1.125rem;
     line-height: 1.61;
     font-weight: bold;
 }

 .maintain-2-list--ct li {
     margin-bottom: 3.75rem;
 }

 .maintain-2-list--ct-li-2__txt__bold--ct {
     background-color: #ED2918;
 }

 .maintain-2__layout-2 {
     max-width: 998px;
     width: 100%;
     margin: 0 auto;
     background-color: #FDEAB6;
     padding: 3.125rem 20px 3.75rem 20px;
 }

 .maintain-2__layout-2__title {
     text-align: center;
     font-size: 1.375rem;
     font-weight: bold;
     color: #ED2918;
     margin-bottom: 1.5rem;
 }

 .maintain-2__layout-2__list {
     display: flex;
     flex-wrap: wrap;
     max-width: 838px;
     width: 100%;
     margin: 0 auto 2.5rem auto;
 }

 .maintain-2__layout-2__list li {
     width: 23.15%;
     margin-right: 2.467%;
     background-color: #ED2918;
     text-align: center;
     color: #fff;
     font-size: 1.375rem;
     font-weight: bold;
     line-height: 1.31;
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     padding: 1.438rem 20px;
 }

 .maintain-2__layout-2__list li:nth-child(4n) {
     margin-right: 0;
 }

 .maintain-2__layout-2__p {
     text-align: center;
     color: #4B4B4B;
     font-size: 1.125rem;
     font-weight: bold;
     line-height: 1.77;
     margin-bottom: 1.875rem;
 }

 .maintain-2__layout-2__compare {
     max-width: 838px;
     width: 100%;
     margin: 0 auto;
     background-color: #fff;
     padding: 2.063rem 2.688rem 2.5rem 2.688rem;
 }

 .maintain-2__layout-2__compare__wrap {
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     justify-content: center;
 }

 .maintain-2__layout-2__compare__item {
     width: 46%;
 }

 .maintain-2__layout-2__compare__item__img {
     border: 1px solid #707070;
 }

 .maintain-2__layout-2__compare__item__arrow {
     width: 5.85%;
     text-align: center;
 }

 .maintain-2__layout-2__compare__item__txt {
     text-align: center;
     margin-top: -1.875rem;
 }

 .maintain-2__layout-2__compare__item__txt span {
     display: inline-block;
     background-color: #F8BD1B;
     min-width: 156px;
     text-align: center;
     color: #fff;
     font-size: 1.2rem;
     font-weight: bold;
     padding: 1rem 20px;
     letter-spacing: 0.2em;
 }

 .maintain-2__layout-2__compare__item__txt--ct span {
     background-color: #4099D9;
 }

 .maintain-2-list--ct {
     margin-bottom: 1.438rem;
 }

 .maintain-2-sec-4 {
     padding: 9.688rem 0 0 0;
 }

 .maintain-2-sec-4__wrap {
     max-width: 950px;
     width: 100%;
     margin: 0 auto;
 }

 .title__ins_01--ct-6 {
     margin-bottom: 4.875rem;
 }

 .title__ins_01--ct-7 {
     margin-bottom: 3rem;
 }

 .maintain-2-step__row {
     display: flex;
     flex-wrap: wrap;
     margin-bottom: 4.375rem;
 }

 .maintain-2-step__row__title {
     width: 15.68%;
     background-color: #305D89;
     color: #fff;
     font-size: 1.25rem;
     font-weight: bold;
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     position: relative;
 }

 .maintain-2-step__row__title span {
     display: inline-block;
     position: relative;
     top: 5px;
 }

 .maintain-2-step__row__title::after {
     content: '';
     display: block;
     width: 52.34%;
     height: 4.375rem;
     background-color: #A5C6DE;
     position: absolute;
     bottom: -4.375rem;
     left: 50%;
     transform: translateX(-50%);
 }

 .maintain-2-step__row__data {
     width: 84.32%;
     padding: 0 0 0 2.313rem;
 }

 .maintain-2-step__row__data__wrap {
     display: flex;
     flex-wrap: wrap;
     position: relative;
 }

 .maintain-2-step__row__data__item {
     width: 17.93%;
     margin-right: 6.99%;
     position: relative;
 }

 .maintain-2-step__row__data__item::after {
     position: absolute;
     top: 50%;
     width: 40.87%;
     height: 38px;
     right: -40.87%;
     transform: translateY(-50%);
     display: block;
     content: '';
     background-color: #D1E1EC;
 }

 .maintain-2-step__row__data__item:last-child {
     margin-right: 0;
 }

 .maintain-2-step__row__data__item:last-child::after {
     display: none;
 }

 .maintain-2-step__row__data__item__txt {
     text-align: center;
     background-color: #D1E1EC;
     color: #4B4B4B;
     font-size: 0.875rem;
     font-weight: bold;
     padding: 0.438rem 0 0.188rem 0;
 }

 .maintain-2-step__row__data__item--ct {
     width: 21.85%;
     margin-right: 9.16%;
 }

 .maintain-2-step__row__data__item__p {
     white-space: nowrap;
     font-size: 1rem;
     font-weight: bold;
     color: #4B4B4B;
     position: absolute;
     bottom: -2.9rem;
     left: 0;
 }

 .maintain-2-step__row__data__item-2 {
     width: 17.93%;
     margin-right: 2.48%;
     position: relative;
 }

 .maintain-2-step__row__data__item-2:last-child {
     margin-right: 0;
 }

 .maintain-2-step__row__data__item--ct::after {
     display: none;
 }

 .maintain-2-step__row__data__item-2__para {
     white-space: nowrap;
     position: absolute;
     bottom: -1.875rem;
     left: 0;
     font-size: 1rem;
     font-weight: bold;
     color: #4B4B4B;
 }

 .maintain-2-step__notice {
     background-color: #305D89;
     color: #fff;
     font-size: 1.875rem;
     text-align: center;
     font-weight: bold;
     padding: 2.75rem 20px;
 }

 .inspection__three_rows--ct-4 {
     padding-top: 11.5rem;
 }

 section.page__content--ct-4 {
     padding-bottom: 9.688rem;
 }

 .important-layout-2__row__title {
     display: none;
 }

 .maintain-list__tb tr.vertical-top td {
     vertical-align: top;
 }

 .show-on-767 {
     display: none;
 }


 @media screen and (max-width: 1250px) {
     .y-layout-1__title {
         font-size: 1.8rem;
     }

     .y-layout-1__para {
         font-size: 1.3rem;
     }

     .y-layout-2__item__title {
         font-size: 1.3rem;
     }

     .y-layout-2__item__para {
         font-size: 1.3rem;
     }

     .sub-page-banner__para {
         font-size: 1.3rem;
     }

     .y-layout-1__img--ct-1 {
         padding-bottom: 6rem;
     }

     .y-layout-2__item__img {
         padding-bottom: 4rem;
     }

     .inspect__case-list__item__title {
         font-size: 1.7rem;
     }

     .inspect__case-list__item__year {
         font-size: 1.3rem;
         padding-top: 0.9rem;
         padding-bottom: 0.4rem;
     }

     .inspect__case-list__item__para {
         font-size: 1.3rem;
     }

     .inspect__case-list__item__img::before {
         font-size: 1.3rem;
         padding-top: 0.7rem;
     }

     .inspect-steps__para {
         font-size: 1.2rem;
     }

     .inspect-steps__title__en {
         font-size: 1.4rem;
         margin-bottom: 1rem;
     }

     .inspect-steps__title__ja {
         font-size: 1.5rem;
     }

     .inspect-steps-time__txt {
         font-size: 1.2rem;
     }

     .inspect-steps__step-big::before,
     .inspect-steps__step-big::after {
         width: 1rem;
     }

     .inspect-process-sec-1,
     .inspect-process-sec-2 {
         padding-right: 0;
         padding-left: 0;
     }

     .inspect-process-list__part-1__title {
         font-size: 2rem;
     }

     .inspect-process-list__part-1__para {
         font-size: 1.2rem;
     }

     .inspect-process-list__part-2__item__txt {
         font-size: 1.1rem;
     }

     .maintain-para {
         font-size: 1.2rem;
     }

     .maintain-list__tb td {
         font-size: 1.2rem;
         padding-right: 10px;
         padding-left: 10px;
     }

     .maintain-list__tb th {
         font-size: 1.3rem;
         padding-right: 10px;
         padding-left: 10px;
     }

     .maintain-list__title {
         font-size: 1.9rem;
     }

     .maintain-note {
         font-size: 1.2rem;
         padding: 1rem 0 0 1rem;
     }

     .maintain-list__tb__small-row__right {
         padding-right: 0.5rem;
     }

     .maintain-list__tb {
         padding-left: 1.5rem;
     }

     .important-layout-1__item__title {
         font-size: 1.3rem;
     }

     .important-layout-1__item__p {
         font-size: 1.1rem;
     }

     .important-layout-2__img,
     .important-layout-2__txt {
         width: 100%;
     }

     .important-layout-2__img {
         text-align: center;
         margin-bottom: 4vw;
         display: none;
     }

     .important-layout-2__img img {
         max-width: 35vw;
     }

     .important-layout-2__txt {
         padding: 0;
     }

     .important-layout-2__row__item__txt {
         font-size: 1.2rem;
     }

     .important-layout-2__row__item__txt-2 {
         font-size: 1.5rem;
     }

     .important-layout-2__row__item__img-2 {
         width: 22%;
         padding-right: 1.5vw;
     }

     .important-layout-2__row__item__txt-2 {
         width: 78%;
     }

     .maintain-2__layout__title {
         font-size: 2rem;
     }

     .maintain-2-list__title {
         font-size: 1.5rem;
     }

     .maintain-2-list__para {
         font-size: 1.2rem;
     }

     .maintain-2-list__img__badge {
         font-size: 1.6vw;
         width: 10.417vw;
         height: 4.688vw;
         padding: 1.7vw 0;
     }

     .maintain-2-list--ct-li-2__txt__bold {
         font-size: 1.8rem;
     }

     .maintain-2-list--ct-li-2__txt__p {
         font-size: 1.3rem;
     }

     .maintain-2__layout-2__title {
         font-size: 1.6rem;
     }

     .maintain-2__layout-2__list li {
         font-size: 1.35rem;
     }

     .maintain-2__layout-2__p {
         font-size: 1.3rem;
     }

     .maintain-2__layout-2__compare__item__txt span {
         font-size: 1.2rem;
     }

     .maintain-2-step__row__title {
         font-size: 1.4rem;
     }

     .maintain-2-step__row__data__item__txt {
         font-size: 1.1rem;
     }

     .maintain-2-step__row__data__item__p,
     .maintain-2-step__row__data__item-2__para {
         font-size: 1.2rem;
         bottom: -4vw;
     }

     .maintain-2-step__notice {
         font-size: 2rem;
     }

     .important-layout-2__row__title {
         display: block;
         font-size: 1.6rem;
         font-weight: bold;
         margin-bottom: 1rem;
         color: #305D89;
     }

     .y-layout-2__item__txt {
         padding-bottom: 4.063rem;
     }
 }

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

     .other h4,
     .other h5,
     .other p {
         font-size: 14px;
     }

     .all-sec-4 .all-sec-4-box ul {
         line-height: 17px;
     }

     .all-sec-2 h2,
     .all-sec-3 h2,
     .all-sec-4 h2 {
         font-size: 16px;
     }

     .all-sec-1-box .left p {
         font-size: 15px;
         text-align: center;
     }

     .y-layout-1 {
         width: 100%;
     }
     .all-sec-1-box .right ul{
         padding-top: 10px;
     }
     .all-sec-1-box .right ul li{
         line-height: 1.5;
     }
     .sub-menu li a .fixIe:before {
         content: "-";
         color: #305D89;
         padding-right: 0.5em;
     }

     .gp__breadcrumb--ct-1 .gp__txt_default {
         font-size: 3.077vw;
     }

     .gp__breadcrumb--ct-1 {
         padding: 2.564vw 0;
     }

     .gp__breadcrumb--ct-1 .grid-1200 {
         padding-right: 4.103vw;
         padding-left: 4.103vw;
     }

     .page__content--ct-1 .title__page_child_01 {
         font-size: 5.128vw;
     }

     section.page__content--ct-1 {
         padding-top: 9.487vw;
         margin-bottom: 13.846vw;
     }

     .sub-page-banner {
         padding: 5.385vw 7.179vw;
         margin-top: 8.462vw;
         background-image: url('img/solar-img-12.png');
     }

     .sub-page-banner__title {
         font-size: 14px;
         width: 70%;
         margin-bottom: 4.359vw;
     }

     .sub-page-banner__para {
         font-size: 12px;
         line-height: 1.8;
         margin-top: 5.128vw;
     }

     .sub-page-banner__title-2 {
         display: block;
         font-size: 14px;
         line-height: 1.2;
         color: #fff;
         text-shadow: 0px 1px 7px rgba(0, 0, 0, 0.44);
     }

     .y-layout-1__txt {
         width: 100%;
         padding: 13.846vw 0 2vw;
         margin-bottom: 3.846vw;
     }

     .y-layout-1__img {
         width: 100%;
         padding: 0 2.564vw 0 3.077vw;
         text-align: center;
     }

     .y-layout-1__img img {
         margin: 0 auto;
     }

     .y-layout-1__title {
         font-size: 16px;
         margin-bottom: 5.897vw;
     }

     .y-layout-1__para {
         font-size: 14px;
         line-height: 1.57;
     }
     .all-sec-2 .y-layout-1__para{
         list-style: 1.5;
     }
     .solar-sec-1 .grid-1200,
     .solar-sec-2 .grid-1200,
     .solar-sec-3 .grid-1200,
     .solar-sec-4 .grid-1200 {
         padding: 0;
     }

     .solar-sec-1 {
         padding-bottom: 12.821vw;
     }

     .y-layout-1__para--ct-1 {
         margin-bottom: 6.154vw;
     }

     .y-layout-1__txt--ct-1 {
         padding: 14.103vw 0 0 0;
     }

     .y-layout-1__title--ct-1 {
         padding: 0 8.718vw;
     }

     .sp-ct-pd {
         padding: 0 3.077vw 0 3.846vw;
         margin-bottom: 9.231vw;
         text-align: center;
     }

     .y-layout-1__img--ct-1 {
         padding: 0;

     }

     .y-layout-1__para--ct-2 {
         margin-bottom: 3.846vw;
     }

     .solar-sec-2 {
         padding-bottom: 10.256vw;
     }

     .y-layout-1__txt--ct-3 {
         padding-top: 14.872vw;
         margin-bottom: 14.615vw;
     }

     .y-layout-1__img--ct-3 {
         text-align: center;
     }

     .y-layout-1__title--ct-1 {
         padding: 0;
         margin-bottom: 5.128vw;
     }

     .y-img-1 {
         margin: 3rem auto 8rem;
         width: 100%;
     }

     .y-layout-2 {
         padding: 0 3.077vw;
     }

     .y-layout-2__item__txt,
     .y-layout-2__item__img {
         width: 100%;
     }

     .y-layout-2__item__title {
         font-size: 14px;
         margin-bottom: 4.872vw;
     }

     .y-layout-2__item__para {
         font-size: 13px;
         line-height: 1.5;
         margin-bottom: 0;
     }

     .y-layout-2__item__txt {
         padding: 0;
         line-height: 1.6;
         margin-bottom: 0;
     }

     .y-layout-2__item {
         width: 100%;
         margin: 0 auto 3vw;
         padding: 8.974vw 15px 0;
         margin-bottom: 9.487vw;
     }

     .y-layout-2__item__img {
         text-align: center;
         padding: 0;
     }

     .y-layout-2__item__txt--ct-2 {
         margin-bottom: 5.897vw;
     }

     .y-layout-2__item__img--ct-1 {
         padding-bottom: 5.128vw;
     }

     .y-layout-2__item__txt--ct-1 {
         margin-bottom: 16.667vw;
     }

     .y-layout-2__item__img--ct-2 {
         padding-bottom: 9.744vw;
     }

     .solar-sec-4 {
         padding-bottom: 13.846vw;
     }

     .y-layout-1__para--ct-3 {
         margin-bottom: 7.692vw;
     }

     .y-layout-1__para--ct-4 {
         margin-top: 10.769vw;
         margin-bottom: 0;
     }

     .solar-sec-3 {
         padding-bottom: 10.513vw;
     }

     .y-layout-1__title--ct-3 {
         padding: 0 3vw;
     }

     .margin-auto-sp {
         margin: 0 auto;
     }

     .inspect__case-list__item__img__list {
         width: 100%;
         display: flex;
         flex-wrap: wrap;
     }

     .inspection__one_rows--ct-1 {}

     .inspection__one_rows--ct-1 .grid-1200 {
         padding: 0;
     }

     .inspect__case-list__item__img {
         width: 46%;
         margin-right: 3.58%;
     }

     .inspect__case-list__item__img img {
         width: 100%;
     }

     .inspect__case-list__item__img:nth-child(2n) {
         margin-right: 0;
     }

     .inspect__case-list__item__img::before {
         font-size: 10px;
         line-height: 1.2;
         padding: 0.9vw 5.128vw 0.9vw 5.128vw;
     }

     .title__ins_01--ct-1 {
         margin-bottom: 7.692vw;
         font-size: 14px;
     }

     .inspect__case-list__item__para {
         font-size: 14px;
     }

     .inspect__case-list__item__txt {
         width: 100%;
         padding: 0;

     }

     .inspect__case-list__item__title {
         font-size: 14px;
         margin-bottom: 0;
     }

     .inspect__case-list__item__year {
         font-size: 14px;
     }

     .inspect__case-list__item__year--ct-1 {
         padding-right: 0;
         padding-left: 0;
     }

     .inspect__case-list__item__years {
         margin-bottom: 5.641vw;
         margin-top: 5px;
     }

     .inspect__case-list__item__para--ct-1 {
         font-size: 4.103vw;
     }

     .inspect__case-list__item__para {
         margin-bottom: 1.538vw;
     }

     section.page__content--ct-2 {
         padding-bottom: 12.821vw;
     }

     .inspect-steps-time {
         display: none;
     }

     .gp__inspection_child--ct {
         margin-top: 0;
     }

     .inspect-process-sec-1 {
         padding: 11.538vw 0 9.744vw;
     }

     .title__ins_01--ct-2 {
         /* font-size: 16px; */
         margin-bottom: 3.846vw;
     }

     .inspect-process-time-sp {
         letter-spacing: 0.13px;
         text-align: center;
         font-size: 14px;
         color: #4B4B4B;
         display: block;
         margin-bottom: 9.231vw;
     }

     .inspect-steps__step,
     .inspect-steps__step-big {
         width: 100%;
         border-left: none;
         padding: 0;
         min-height: auto;
     }

     .inspect-steps__title__en {
         font-size: 3.590vw;
         padding: 2.308vw 6.667vw;
         line-height: 1.2;
         margin-bottom: 2.308vw;
     }

     .inspect-steps__title__ja {
         font-size: 14px;
         line-height: 1.2;
     }

     .inspect-steps__step__wrap {
         display: flex;
         flex-wrap: wrap;
     }

     .inspect-process-sec-1 .grid-1200 {
         padding: 0;
     }

     .inspect-steps__img {
         width: 40%;
         margin-bottom: 0;
         text-align: left;
     }

     .inspect-steps__img img {
         width: 100%;
     }

     .inspect-steps__para {
         width: 60%;
         font-size: 13px;
         line-height: 1.57;
         padding: 0 0 0 3.077vw;
         margin-top: 0;
     }

     .inspect-steps__title {
         margin-bottom: 4.359vw;
     }

     .inspect-steps__step {
         position: relative;
         margin-bottom: 6vw;
     }

     .inspect-steps__step::after {
         content: '';
         display: block;
         width: 100%;
         height: 3.077vw;
         background: url('img/flow-border-bottom.png') no-repeat top center / cover;
         margin: 6.667vw 0 0 0;
     }

     .inspect-steps__small-row {
         display: block;
     }

     .inspect-steps__small-row__item {
         width: 100%;
         display: flex;
         flex-wrap: wrap;
         padding: 0 0 3.077vw 0;
         border-right: none;
         border-bottom: 1px solid #707070;
         margin-bottom: 5.128vw;
     }

     .inspect-steps__small-row__item:last-child {
         margin-bottom: 0;
         border-bottom: none;
         margin-bottom: 0;
         padding-bottom: 0;
     }

     .inspect-steps__step-big {
         margin-bottom: 5.641vw;
     }

     .inspect-steps__step-big::before {
         display: none;
     }

     .inspect-steps__step-big::after {
         content: '';
         display: block;
         width: 100%;
         height: 3.077vw;
         background: url('img/flow-border-bottom.png') no-repeat top center / cover;
         margin: 7.179vw 0 0 0;
         position: static;
     }



     .inspect-steps__step:last-child {
         border-right: none;
         border-bottom: 1px solid #707070;
         margin-bottom: 0;
         padding-bottom: 8.974vw;
     }

     .inspect-steps__step:last-child::after {
         display: none;
     }

     .inspect-steps {
         margin-bottom: 0;
         padding: 0;
     }

     .inspect-process-sec-2 {
         padding: 11.282vw 0 0 0;
     }

     .title__ins_01--ct-3 {
         /* font-size: 14px; */
         margin-bottom: 8.974vw;
     }

     .inspect-process-sec-2 .grid-1200 {}

     .inspect-process-list__part-1__img,
     .inspect-process-list__part-1__txt {
         width: 100%;
     }

     .inspect-process-list__part-1__img {
         padding: 0;
         background-color: transparent;
         margin-bottom: 3vw;
     }

     .inspect-process-list__part-1__img img {
         width: 100%;
         height: 120px;
         object-fit: cover;
     }

     .inspect-process-img {
         margin-bottom: 15.385vw;
     }

     .inspect-process-list__part-1__title {
         font-size: 16px;
         padding: 1.4vw 0 0 12.308vw;
         margin-bottom: 3vw;
     }

     .inspect-process-list__part-1__title::before {
         width: 8.205vw;
         height: 8.205vw;
         line-height: 30px;
         top: 0;
         font-size: 4.872vw;
     }

     .SafariChrome .inspect-process-list__part-1__title::before {
         padding: 1rem 0;
         top: 0.5rem;
     }

     .inspect-process-list__part-1__txt {
         padding: 0;
     }

     .inspect-process-list__part-1__para {
         letter-spacing: 0.2px;
         font-size: 14px;
         line-height: 1.5;
     }

     .inspect-process-list__part-1 {
         margin-bottom: 7.179vw;
     }

     .inspect-process-list__part-2__item {
         width: 48%;
         margin-right: 4%;
         margin-bottom: 3.846vw;
     }

     .inspect-process-list__part-2__item:nth-child(2n) {
         margin-right: 0;
     }

     .inspect-process-list__part-2__item img {
         width: 100%;
     }

     .inspect-process-list__part-2__item__txt {
         font-size: 12px;
         margin-top: 1vw;
     }

     .inspect-process-list li {
         margin-bottom: 7.692vw;
     }

     .inspection__three_rows--ct-2 {
         padding-top: 8.205vw;
     }

     .inspection__tabs--ct-1 .item__tab a span {
         font-size: 2.564vw;
         letter-spacing: 0;
     }

     .title__ins_01--ct-4 {
         margin-bottom: 2.564vw;
     }

     .maintain-para {
         font-size: 14px;
         text-align: left;
         line-height: 150%;
         margin-bottom: 8.974vw;
         padding: 0;
     }

     .maintain-list__gal__img {
         width: 100%;
         margin-bottom: 6.410vw;
         padding: 0 3.846vw;
     }

     .maintain-list__tb {
         width: 100%;
         padding: 0;
     }

     .maintain-list__title {
         font-size: 4.8vw;
     }

     .maintain-1-sec-1 {
         padding: 0 10px;
     }

     .maintain-1-sec-1 .grid-1200 {
         padding: 0;
         width: 95%;
         margin: 0 auto;
     }

     .maintain-list__gal__img__item img {
         width: 100%;
     }

     .maintain-list__tb th {
         font-size: 10px;
         padding: 2.564vw 5px 1.282vw 5px;
     }

     .maintain-list__tb td {
         font-size: 10px;
         line-height: 1.67;
         padding: 2.051vw 5px 0.769vw 5px;
     }

     .maintain-list li {
         margin-bottom: 14.103vw;
     }

     .maintain-note {
         font-size: 2.564vw;
         padding: 2.564vw 0 0 1.795vw;
         line-height: 1.6;
     }

     .maintain-list__tb__small-row__index {
         margin-bottom: 2.821vw;
     }

     .maintain-list__tb__small-row__index--ct-1 {
         font-size: 10px;
     }

     .maintain-list__tb__small-row__right {
         padding-right: 1.538vw;
     }

     .inspection__three_rows--ct-3 {
         padding-top: 13.846vw;
     }

     .gp__inspection_child--ct-2 {
         margin-top: 0;
     }

     .important-layout-1__item__title {
         font-size: 13px;
         line-height: 1.6;
         margin-bottom: 1.282vw;
         padding: 0;
     }

     .important-layout-1__item::before {
         border-radius: 1.282vw;
         border-width: 0.385vw;
         height: 6vw;
         width: 6vw;
         font-size: 10px;
         padding: 1vw 0;
         top: -1.026vw;
     }

     .Safari.SafariChrome .important-layout-1__item::before {
         padding-top: 1rem;
     }

     .important-layout-1__item__p {
         font-size: 12px;
         line-height: 1.33;
     }

     .important-layout-1__item {
         padding: 5vw 4vw 4vw 4vw;
         width: 100%;
         min-height: auto;
         margin-bottom: 3vw;
     }

     .maintain-2-sec-1 .grid-1200 {}

     .important-layout-1__img {
         width: 25%;
         top: 35%;
     }

     .important-layout-1__img img {
         width: 100%;
     }

     .important-layout-2__img {
         display: none;
     }

     .title__ins_01--ct-5 {
         margin-bottom: 8.462vw;
     }

     .maintain-2-sec-1 {
         padding-bottom: 8.974vw;
     }

     .important-layout-2__row__item {
         width: 100%;
         margin-right: 0;
         margin-bottom: 3.333vw;
     }

     .important-layout-2__row__item:last-child {
         margin-bottom: 0;
     }

     .maintain-2-sec-2 .grid-1200 {}

     .title__ins_01--ct-6 {
         margin-bottom: 4.5vw;
     }

     .important-layout-2__row__title {
         font-size: 14px;
         line-height: 1.2;
         margin-bottom: 3.590vw;
     }

     .important-layout-2__row__item__txt {
         font-size: 12px;
         line-height: 1.69;
         padding: 2.564vw 3.077vw;
         width: 77.1%;font-weight: 400;
     }

     .important-layout-2__row__item__img {
         width: 22.9%;
         min-height: 15.385vw;
     }

     .important-layout-2__row {
         padding-bottom: 5vw;
         margin-bottom: 5vw;
     }

     .important-layout-2__row__item__txt-2 {
         font-size: 14px;
         text-align: center;
         width: 100%;
         line-height: 1.2;
     }

     .important-layout-2__row--ct .important-layout-2__row__item {
         margin-bottom: 3.333vw;
     }

     .important-layout-2__row__item__img-2 {
         width: 100%;
         padding: 0;
         margin-bottom: 2.564vw;
     }

     .important-layout-2__row__item__img-2 img {
         margin: 0 auto;
     }

     .important-layout-2__row--ct .important-layout-2__row__item--ct {
         margin-bottom: 7.692vw;
     }

     .important-layout-2__row--ct .important-layout-2__row__item--ct:last-child {
         margin-bottom: 0;
     }

     .maintain-2-sec-3 .grid-1200 {
         padding-right: 0;
         padding-left: 0;
     }

     .maintain-2-sec-3 {
         padding-top: 15.385vw;
         padding-bottom: 0;
     }

     .maintain-2__layout__title {
         line-height: 1.2;
         font-size: 14px;
         padding-bottom: 1.795vw;
         border-width: 3px;
         margin-bottom: 5.128vw;
     }

     .maintain-2-list li {
         width: 100%;
         margin-right: 0;
         margin-bottom: 6.154vw;
         display: flex;
         flex-wrap: wrap;
     }

     .maintain-2-list__title {
         width: 100%;
         font-size: 14px;
         letter-spacing: 0.2px;
         margin-bottom: 1.282vw;
         line-height: 1.2;
     }

     .maintain-2-list__img {
         margin: 0;
         width: 34.47%;
     }

     .maintain-2-list__para {
         width: 65.53%;
         font-size: 13px;
         line-height: 1.5;
         padding: 0 0 0 2.308vw;
         margin: 0;
     }

     .maintain-2-list__img__badge {
         width: 16.923vw;
         height: 6vw;
         font-size: 3.077vw;
         text-align: left;
         padding: 2vw 2.051vw;
     }

     .maintain-2-list li:last-child {
         margin-bottom: 0;
     }

     .maintain-2-list {
         margin-bottom: 11.026vw;
     }

     li.maintain-2-list--ct-li-2 {
         padding: 0;
         margin-bottom: 10.769vw;
     }

     .maintain-2-list--ct-li-2__img {
         width: 100%;
         padding: 0;
     }

     .maintain-2-list--ct-li-2__img img {
         margin: 0 auto;
     }

     .maintain-2-list--ct-li-2__txt {
         width: 100%;
         padding-top: 4.359vw;
     }

     .maintain-2-list--ct-li-2__txt__bold {
         font-size: 14px;
         padding: 15px 0 10px;
         margin: 0 auto;
         width: 59.487vw;
     }

     .maintain-2-list--ct-li-2__txt__p {
         font-size: 14px;
         line-height: 1.81;
         margin-top: 4.615vw;
     }

     .maintain-2-list--ct {
         margin-bottom: 0;
     }

     .maintain-2__layout {
         padding-bottom: 10.769vw;
     }

     .maintain-2__layout-2__title {
         font-size: 14px;
         line-height: 1.2;
         margin-bottom: 3.077vw;
     }

     .maintain-2__layout-2 {
         padding: 9vw 3.846vw 9vw 3.846vw;
     }

     .maintain-2__layout-2__list {
         max-width: 82.564vw;
         margin-bottom: 3.077vw;
     }

     .maintain-2__layout-2__list li {
         width: 46.27%;
         margin-right: 7.46%;
         margin-bottom: 2.564vw;
         font-size: 14px;
         line-height: 1.43;
         height: 15.641vw;
         padding: 0;
     }

     .maintain-2__layout-2__list li:nth-child(2n) {
         margin-right: 0;
     }

     .maintain-2__layout-2__p {
         font-size: 13px;
         line-height: 180%;
         max-width: 82.564vw;
         width: 100%;
         margin: 0 auto 2.564vw auto;
     }

     .maintain-2__layout-2__compare {
         padding: 5.897vw 4.872vw 8.974vw 4.872vw;
     }

     .maintain-2__layout-2__compare__item {
         width: 46.89%;
     }

     .maintain-2__layout-2__compare__item__arrow {
         width: 6.22%;
     }

     .maintain-2__layout-2__compare__item__arrow img {
         margin: 0 auto;
     }

     .maintain-2__layout-2__compare__item__txt span {
         font-size: 14px;
         min-width: 17.436vw;
         padding: 1.051vw 0 0.769vw 0;
         line-height: 1.2;
     }

     .maintain-2__layout-2__compare__item__txt {
         margin-top: -4.359vw;
     }

     .maintain-2-sec-4 {
         padding: 12.821vw 0 0 0;
     }

     .title__ins_01--ct-7 {
         margin-bottom: 7.179vw;
     }

     .maintain-2-step__row__data__item::after {
         height: 3.590vw;
     }

     .maintain-2-step__row__title span {
         top: 0;
     }

     .maintain-2-step__row__title {
         font-size: 8px;
         line-height: 1.22;
     }
     
     

     .maintain-2-step__row__data__item {
         width: 21%;
         margin-right: 3%;
     }

     .maintain-2-step__row__data__item--ct {
         width: 26%;
         margin-right: 4%;
     }

     .maintain-2-step__row__data__item__txt {
         font-size: 9px;
         padding: 1.282vw 0 0.513vw 0;
         line-height: 1.2;
     }

     .maintain-2-step__row__data__item__p,
     .maintain-2-step__row__data__item-2__para {
         font-size: 8px;
     }

     .maintain-2-step__row {
         margin-bottom: 6.667vw;
     }

     .maintain-2-step__row__title::after {
         height: 6.667vw;
         bottom: -6.667vw;
     }

     .maintain-2-step__notice {
         padding: 3.590vw 0 2.308vw 0;
         font-size: 14px;
         line-height: 1.2;
     }

     .inspect__case-list__item__para strong {
         font-size: 14px;
     }

     .only-sp-css .maintain-list__tb th {
         padding: 2.564vw 5px 2.564vw 5px;
     }

     .only-sp-css .maintain-list__tb td {
         padding: 2.051vw 5px 2.051vw 5px;
     }

     .only-sp-css .sub-page-banner__title {
         padding: 1.795vw 0;
     }

     .only-sp-css .inspect__case-list__item__img--before::before {
         padding: 0.9vw 5.128vw 0.9vw 5.128vw;
     }

     .only-sp-css .inspect__case-list__item__img--after::before {
         padding: 0.9vw 5.128vw 0.9vw 5.128vw;
     }



     .only-sp-css .inspect-steps__title__en {
         padding: 1.795vw 6.667vw;
         line-height: 1;
     }

     .only-sp-css .inspect-process-list__part-1__title::before {
         padding: 1.4vw 0;
         top: 1rem;
     }

     .only-sp-css .important-layout-1__item::before {
         padding: 0.5vw 0;
     }

     .only-sp-css .maintain-2__layout-2__compare__item__txt span {
         padding: 1.5vw 0;
     }

     .only-sp-css .maintain-2-step__row__data__item__txt {
         padding: 1vw 0 0.513vw 0;
     }

     .only-sp-css .maintain-2-step__notice {
         padding: 3.590vw 0;
     }

     .Safari.SafariChrome .maintain-2-list__img__badge {
         padding: 3vw 2.051vw;
     }

     .show-on-767 {
         display: block;
     }

     .not-show-on-767 {
         display: none;
     }
 }

 /* linece */
 .page-license .item__tab {
     width: 25%;
 }

 .license-part {
     padding-top: 0;
 }

 .license-part .tlt-list {
     font-size: 1.875rem;
     text-align: center;
     line-height: 150%;
     font-weight: 700;
     color: #4B4B4B;
 }

 .license-part .part {
     max-width: 750px;
     width: 100%;
     margin: auto;
     padding-top: 3rem;
 }

 .license-part .part-item {
     display: flex;
     justify-content: space-between;
     flex-wrap: wrap;

 }

 .license-part .part .col {
     width: 40%;
 }

 .license-part .part .col .item {
     display: flex;
     justify-content: space-between;
     flex-wrap: wrap;
     border-bottom: 1px solid #BFBFBF;
     font-size: 1.2rem;
     color: #4B4B4B;
     line-height: 150%;
     padding-bottom: 1rem;
     padding-top: 1.5rem;
 }

 section.page__content.page-license {
     padding-bottom: 7.5rem;
 }

 @media screen and (max-width: 767px) {
     .license-part .part .col {
         width: 100%;
     }

     .license-part .part .col .item {
         font-size: 3.590vw;
         max-width: 80%;
         margin: auto;
         padding: 4vw 0;
     }

     .item__tab:first-child a span:last-child {
         font-size: 2.821vw;
     }

     .license-part .tlt-list {
         font-size: 4.615vw;
     }

     .license-part {
         padding-top: 12.308vw;
     }

     .license-part .part {
         padding-top: 6.410vw;
     }
 }

 /* end linece */
 .sub-menu {
     display: none;
 }

 @media screen and (max-width: 767px) {
     .sub-menu {
         display: block;
     }

     .sub-menu li:last-child {
         border-bottom: none;
     }

     .sub-menu li a {
         padding: 3vw 0 3vw 2vw;
         display: block;
         font-size: 13.5px;
     }

     .sub-menu li:first-child a {
         padding: 5vw 0 3vw 2vw;
     }

     .sub-menu li:last-child a {
         padding: 3vw 0 5vw 2vw;
     }

     .menu > li > a:first-child {
         border-bottom: 1px solid #707070;
     }
 }


 /* End Custom CSS */

 /* commingsoon */

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

 .commingsoon-content .commingsoon-title {
     color: #305D89;
     font-size: 30px;
     margin-bottom: 40px;
     margin-top: 40px;
 }

 .commingsoon-content p {
     font-size: 20px;
     margin-bottom: 40px;

 }

 @media screen and (max-width: 767px) {
     .commingsoon-content {
         width: 80%;
         margin: 0 auto;
     }

     .commingsoon-content .commingsoon-title {
         font-size: 18px;
         margin-bottom: 20px;
     }

     .commingsoon-content p {
         font-size: 14px;
         margin-bottom: 20px;

     }

 }


 /* リフォーム箇所 */
 .gp-title-remodeling p {
     text-align: center;
     line-height: 150%;
     font-size: 1.25rem;
     color: #000;
     letter-spacing: 0;
     font-weight: 300;
     margin-top: 30px;
 }

 .gp-title-remodeling .title__page_child_01 {
     margin-bottom: 0;
 }

 .gp-content-remodeling {
     display: flex;
     flex-wrap: wrap;
     margin-top: 50px;
 }

 .gp-box-remodeling {
     display: flex;
     width: calc((100% - 5.1rem) / 2);
     margin-right: 5rem;
     margin-bottom: 5rem;
 }

 .gp-box-remodeling:nth-child(2n),
 .gp-box-remodeling:last-child {
     margin-right: 0;
 }

 .item-img-remodeling {
     width: 270px;
 }

 .item-content-remodeling {
     background: #305D89;
     text-align: center;
     width: calc(100% - 270px);
     display: flex;
     flex-direction: column;
     justify-content: space-between;
     align-items: center;
     padding-top: 80px;
     padding-bottom: 70px;
 }

 .item-content-remodeling h4 {
     font-size: 1.125rem;
     line-height: 140%;
     color: #FFFFFF;
     letter-spacing: 0;
     font-weight: 700;
     padding-bottom: 0.625rem;

 }

 .item-content-remodeling p {
     line-height: 153%;
     font-size: 15px;
     color: #FFFFFF;
     letter-spacing: 0px;
     font-weight: 300;

 }

 .item-content-remodeling a {
     line-height: 150%;
     font-size: 14px;
     color: #FFFFFF;
     letter-spacing: 0px;
     font-weight: normal;

 }

 .item-content-remodeling .gp__button_01_1 span:last-child {
     font-weight: 300;
 }

 span.line_btn_01.vs--46 {
     width: 2.875rem;
     height: 2.875rem;
 }

 span.line_btn_01.vs--46 ~ span {
     text-align: left;
     margin-left: 0.563rem;
     letter-spacing: 0px;
 }

 .gp__button_01_1 span.vs--47:last-child {
     font-size: 14px;
     line-height: 150%;
     position: relative;
     top: 4px;
 }

 .Firefox .gp__button_01_1 span.vs--47:last-child,
 .SafariChrome .gp__button_01_1 span.vs--47:last-child {
     top: 0;
 }

 section.page__content.re_01 {
     padding-bottom: 9.8rem;
 }

 br.in_sp,
 img.img_sp {
     display: none;
 }

 .pd-002 {
     padding-left: 0.5rem;
 }

 @media (max-width: 1250px) {
     .item-img-remodeling {
         width: 21.600vw;
     }

     .item-content-remodeling {
         width: calc(100% - 21.600vw);
         padding-top: 6.400vw;
         padding-bottom: 5.600vw;
     }

     .gp-box-remodeling {
         display: flex;
         width: calc((100% - 6.408vw) / 2);
         margin-right: 6.400vw;
         margin-bottom: 6.400vw;
     }
 }

 @media (max-width: 950px) {
     .gp-box-remodeling {
         display: flex;
         width: calc((100% - 3.1vw) / 2);
         margin-right: 3.05vw;
         margin-bottom: 3.05vw;
     }

     span.line_btn_01.vs--46 {
         width: 5vw;
         height: 5vw;
     }

     .gp-title-remodeling p {
         font-size: 15px;
     }

     .gp-content-remodeling {
         margin-top: 7vw;
     }

     .gp-box-remodeling:last-child {
         margin-bottom: 2vw;
     }

     span.line_btn_01.vs--46 ~ span {
         letter-spacing: -2px;
     }
 }

 @media (max-width:767px) {
     .item-content-remodeling h4 {
         padding-bottom: 3vw;
     }

     span.line_btn_01.vs--46 ~ span {
         margin-left: 2.608vw;
         letter-spacing: 1px;
     }

     .item-content-remodeling p {
         letter-spacing: 2px;
     }
 }

 /* 防蟻工事 */
 .gp-maintain-3-box-1 {
     display: flex;
 }

 .gp-maintain-item-1 {
     padding: 47px 60px 58px 60px;
     width: 614px;
     background: #D1E1EC;
 }

 .gp-maintain-item-1 h3 {
     line-height: 205%;
     font-size: 1.375rem;
     color: #4B4B4B;
     letter-spacing: 0;
     font-weight: 700;
     padding-bottom: 0.313rem;
 }

 .gp-maintain-item-1 p {
     line-height: 150%;
     font-size: 16px;
     color: #4B4B4B;
     letter-spacing: 0;
     font-weight: 300;
     text-align: justify;

 }

 .gp-maintain-item-2 {
     width: calc(100% - 614px);
     text-align: right;
     padding-top: 35px;
     padding-right: 15px;
     padding-left: 15px;
 }

 .maintain-2-txt {
     padding-right: 1.563rem;
     padding-top: 5.125rem;
 }

 .maintain-2-txt p {
     position: relative;
     padding: 0.5rem 0.813rem 0.5rem 1.063rem;
     border-radius: 0.938rem;
     line-height: 150%;
     font-size: 0.875rem;
     color: #4B4B4B;
     background: #FFE164;
     height: 1.875rem;
     letter-spacing: 0px;
     font-weight: 600;
     margin-left: -0.625rem;
     width: 7.188rem;
 }

 .maintain-2-txt p::before {
     content: "";
     position: absolute;
     width: 9.125rem;
     height: 0.375rem;
     left: -1rem;
     top: 50%;
     z-index: -1;
     transform: translateY(-50%);
     background: #FFE164 url(img/icon-maintenance-3.png) no-repeat;
 }

 .maintain-2-txt p::after {
     content: "";
     position: absolute;
     width: 0.875rem;
     height: 1.477rem;
     left: auto;
     top: 50%;
     right: -1.563rem;
     z-index: -1;
     transform: translateY(-50%);
     background: url(img/icon-maintenance-3.png) no-repeat;
     background-size: contain;
 }

 .gp-maintain-3-box-2 {
     width: 100%;
     max-width: 752px;
     margin: 65px auto 0 auto;
     padding: 38px 35px 18px;
     border: solid #1A4972 3px;
 }

 .gp-maintain-3-box-2 h3 {
     padding-bottom: 1.188rem;
     line-height: 150%;
     font-size: 20px;
     color: #305D89;
     letter-spacing: 0px;
     font-weight: 700;
     text-align: center;
 }

 .gp-maintain-3-box-2 li {
     line-height: 220%;
     font-size: 18px;
     color: #305D89;
     letter-spacing: 1.5px;
     font-weight: 700;
     position: relative;
     padding-left: 28px;
 }

 .gp-maintain-3-box-2 li::before {
     content: "";
     width: 18px;
     height: 18px;
     position: absolute;
     left: 0;
     top: 8px;
     border-radius: 100%;
     background-color: #305D89;
 }

 .Firefox .gp-maintain-3-box-2 li::before {
     top: 12px;
 }

 .ie .gp-maintain-3-box-2 li::before {
     top: 10px;
 }

 .SafariChrome .gp-maintain-3-box-2 li::before {
     top: 11px;
 }

 .gp-maintain-3-box-2 li span {
     font-size: 18px;
     float: left;
 }

 .ie .gp-maintain-3-box-2 li span {
     font-size: 18px;
 }

 .page_maintain_3_421 {
     padding-bottom: 130px;
 }

 .gp-maintain-3-box-3 {
     display: flex;
     align-items: center;
     justify-content: space-between;
     margin-top: 1.875rem;
 }

 .gp-maintain-3-item-4 {
     width: calc(100% - 614px);
     position: relative;
     padding-left: 40px;
     padding-right: 40px;
 }

 .maintain-3-item-right {
     padding: 4.063rem 3.375rem 2.8rem;
     width: 614px;
     background: #D1E1EC;
 }

 .gp-maintain-3-item-5 h3 {
     line-height: 205%;
     font-size: 1.375rem;
     color: #4B4B4B;
     letter-spacing: 0px;
     font-weight: 700;
     padding-bottom: 0.25rem;
 }

 .gp-maintain-3-item-5 p {
     line-height: 150%;
     font-size: 1rem;
     color: #4B4B4B;
     letter-spacing: 0;
     font-weight: 300;
 }

 .gp-maintain-3-item-4 p {
     position: absolute;
     line-height: 175%;
     font-size: 1.063rem;
     color: #4B4B4B;
     background: rgba(246, 244, 242, 0.8);
     letter-spacing: 0px;
     font-weight: 300;
     width: 10rem;
     height: 10rem;
     border-radius: 100%;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 p.maintenance-3-txt1 {
     top: 0;
     right: 0;
 }

 p.maintenance-3-txt2 {
     left: 0;
     bottom: 0;
 }

 .Firefox .maintain-2-txt p,
 .ie .maintain-2-txt p {
     width: 7.3rem;
 }

 h3.page_maintain_3_0012 {
     padding-top: 0.375rem;
 }

 .grid-380 {
     max-width: 380px;
     margin-left: auto;
     margin-right: auto;
 }

 /*end maintenance-3 */
 @media (max-width: 1250px) {

     .gp-maintain-item-1,
     .maintain-3-item-right {
         padding: 3.6vw;
         width: 49.200vw;
     }

     .gp-maintain-item-2,
     .gp-maintain-3-item-4 {
         width: calc(100% - 49.200vw);
         padding-right: 0;
     }

     .gp-maintain-3-item-4 {
         padding-left: 3.200vw;
         padding-right: 3.200vw;
     }
 }

 @media (max-width: 1100px) {

     .gp-maintain-item-1 h3,
     .maintain-3-item-right h3 {
         font-size: 18px;
     }

     .gp-maintain-item-1 p,
     .gp-maintain-3-item-5 p,
     .gp-maintain-3-box-2 li {
         font-size: 14px;
     }

     .gp-maintain-3-box-2 h3 {
         font-size: 16px;
     }

     .gp-maintain-3-box-2 li::before {
         width: 14px;
         height: 14px;
         top: 4px;
     }

     .gp-maintain-3-box-2 {
         padding: 35px;
     }

     .page_maintain_3_421 {
         padding-bottom: 100px;
     }
 }


 @media (max-width: 920px) {
     .gp-box-remodeling {
         display: flex;
         width: calc((100% - 2.1rem) / 2);
         margin-right: 2rem;
         margin-bottom: 2rem;
     }
 }

 @media (max-width: 850px) {
     .item-content-remodeling p {
         font-size: 14px;
     }

     .item-content-remodeling span:last-child {
         font-size: 1.4rem;
     }

     .item-content-remodeling h4 {
         font-size: 18px;
     }

     .gp-box-remodeling {
         display: flex;
         width: calc((100% - 15.1px) / 2);
         margin-right: 15px;
         margin-bottom: 15px;
     }

     .gp-maintain-3-box-2 {
         max-width: 560px;
     }

     .gp-maintain-3-item-4 {
         padding-left: 0;
     }

     .gp-maintain-3-box-2 {
         margin-top: 35px;
     }
 }

 @media (max-width: 767px) {
     img.img_pc {
         display: none;
     }

     br.in_sp,
     img.img_sp {
         display: block;
     }

     .gp-title-remodeling .title__page_child_01 {
         margin-bottom: 3.5vw;
         margin-top: 0.3vw;
     }

     .gp-title-remodeling p {
         font-size: 3.651vw;
     }

     .gp-content-remodeling {
         margin-top: 12.7vw;
     }

     .gp-box-remodeling {
         flex-wrap: wrap;
         width: 100%;
         margin-right: 0;
         margin-bottom: 9.126vw;
     }

     .gp__button_01_1 span.vs--47:last-child {}

     .item-img-remodeling,
     .item-content-remodeling {
         width: 100%;
     }

     .item-img-remodeling img {
         margin: 0 auto;
         width: 100%;
         object-fit: cover;
         height: 200px;
     }

     .item-content-remodeling h4 {}

     .item-content-remodeling p {
         padding-bottom: 8.6vw;
     }

     .item-content-remodeling span:last-child {
         font-size: 3.651vw;
     }

     .item-content-remodeling {
         padding-top: 12.386vw;
         padding-bottom: 12.386vw;
     }

     span.line_btn_01.vs--46 {
         width: 10.430vw;
         height: 10.430vw;
     }

     span.line_btn_01.vs--46 ~ span {
         letter-spacing: 0px;
         line-height: 150%;
     }

     .gp-maintain-3-box-1 {
         flex-wrap: wrap;
     }

     .gp-maintain-item-1,
     .maintain-3-item-right {
         width: 100%;
         padding: 8.735vw 8.866vw 8.475vw 8.866vw;
     }

     .gp-maintain-item-1 {
         order: 1;

     }

     h3.page_maintain_3_0012 {
         padding-top: 0.391vw;
     }

     .gp-maintain-item-2 {
         width: 100%;
     }

     .gp-maintain-item-1 {
         margin: 4vw -6.41vw 0 -6.41vw;
         padding-left: 8.866vw;
         padding-right: 8.866vw;
         width: calc(100% + 12.82vw);
     }

     .gp-maintain-item-2 {
         padding: 0;
         text-align: center;
     }

     .gp-maintain-item-2 img,
     .gp-maintain-3-item-4 img {
         width: 83.963vw;
     }

     .maintain-2-txt p {
         width: 18.553vw;
         height: 4.881vw;
         border-radius: 4.881vw;
         font-size: 2.086vw;
         padding: 1.565vw 0 0 3.129vw;
     }

     .maintain-2-txt p::before {
         width: 23.760vw;
         height: 0.975vw;
         left: -2.608vw;
     }

     .maintain-2-txt p::after {
         background: url(img/icon-maintenance-3-sp.png) no-repeat;
         background-size: contain;
         height: 3.911vw;
         width: 2.347vw;
         right: -3.911vw;
     }

     h3.page_maintain_3_0012 {
         margin-bottom: 7.562vw;
     }

     .maintain-2-txt {
         padding-top: 13.038vw;
     }

     .gp-maintain-item-1 h3,
     .maintain-3-item-right h3 {
         font-size: 14px;
         padding-bottom: 2.608vw;
     }

     .gp-maintain-item-1 p,
     .gp-maintain-3-item-5 p,
     .gp-maintain-3-box-2 li {
         font-size: 14px;
     }

     .gp-maintain-3-box-2 {
         margin: 9.126vw -2.608vw 0 -2.608vw;
         width: calc(100% + 5.215vw);
         padding: 7.432vw 4.563vw;
         max-width: calc(100% + 5.215vw);
     }

     .gp-maintain-3-box-2 .grid-380 {
         max-width: 76.923vw;
     }

     .gp-maintain-3-box-2 li {
         padding-left: 5.737vw;
         line-height: 200%;
     }

     .gp-maintain-3-box-2 li::before {
         width: 3.39vw;
         height: 3.39vw;
         top: 1.434vw
     }

     .gp-maintain-3-box-2 h3 {
         font-size: 14px;
         padding-bottom: 2.2vw;
     }

     .gp-maintain-3-box-2 li span {
         font-size: 4.433vw;
     }

     .gp-maintain-3-item-4 {
         width: 100%;
         padding-right: 0;
         text-align: center;
         margin-bottom: 5.215vw;
     }

     .gp-maintain-3-box-3 {
         flex-wrap: wrap;
         margin-top: 10.43vw;
     }

     .page_maintain_3_421 {
         padding-bottom: 13.5vw;
     }

     .gp-maintain-3-item-5 {
         margin: 0 -6.41vw;
         width: calc(100% + 12.84);
     }

     .gp-maintain-3-item-4 p {
         width: 31.291vw;
         height: 31.291vw;
         font-size: 2.868vw;
     }

     .Firefox .maintain-2-txt p {
         width: 18.553vw;
     }


 }


 @media (max-width:480px) {
     .gp-maintain-3-box-2 .grid-380 {
         max-width: 100%;
     }

     .gp-maintain-3-box-2 li::before {
         top: 2.134vw;
     }
 }

 /* ... */

 .gp__main_3_02 .title__ins_01--ct-5 {
     margin-bottom: 40px;
 }

 .gp__main_3_rows_01 {
     width: 100%;
     max-width: 875px;
     margin: 0 auto;
     overflow: hidden;
     position: relative;
 }

 .item__main_3_rows_01 {
     width: 432px;
 }

 .item__main_3_rows_01:first-child {
     width: calc(100% - 432px);
     padding-right: 95px;
     padding-top: 15px;
 }

 .title-abc {
     width: 100%;
     height: 2em;
     line-height: 2em;
     color: #fff;
     font-size: 17px;
     font-weight: bold;
     text-align: center;
     background-color: #305D89;
 }

 .SafariChrome .title-abc span {
     top: 0;
 }

 .ie .title-abc span {
     top: 1px;
 }

 .Firefox .title-abc span {
     top: 0px;
 }

 .rows-abc {
     margin-top: 42px;
 }

 .item-row-abc {
     font-size: 15px;
     font-weight: bold;
     letter-spacing: 0;
     color: #4B4B4B;
 }

 .item-row-abc:not(:last-child) {
     margin-bottom: 26px;
 }

 .Firefox .item-row-abc:not(:last-child) {
     margin-bottom: 23px;
 }

 .item-row-abc p {
     line-height: 135%;
 }

 .sub-title-abc {
     display: flex;
     align-items: center;
     font-size: 20px;
     color: #305D89;
     line-height: 170%;
     margin-bottom: 10px;
 }

 .sub-title-abc > span:first-child {
     color: #fff;
     width: 30px;
     height: 30px;
     line-height: 100%;
     display: flex;
     align-items: center;
     justify-content: center;
     background-color: #305D89;
     border-radius: 100%;
 }

 .sub-title-abc > span:first-child span {
     position: relative;
     top: 1px;
 }

 .Safari.SafariChrome .sub-title-abc > span:first-child span {
     top: 1px;
 }

 .SafariChrome .sub-title-abc > span:first-child span {
     top: 0px;
 }

 .ie .sub-title-abc > span:first-child span {
     top: 1.5px;
 }

 .Firefox .sub-title-abc > span:first-child span {
     top: 0px;
 }

 .sub-title-abc > span:last-child {
     position: relative;
     margin-left: 10px;
 }

 .ie .sub-title-abc > span:last-child {
     top: 2px;
 }

 .SafariChrome .sub-title-abc > span:last-child,
 .Firefox .sub-title-abc > span:last-child {
     top: 0px;
 }

 .gp__main_3_rows_02 {
     width: 100%;
     max-width: 1080px;
     margin: 98px auto 0 auto;
     position: relative;
 }

 .title-main-32 {
     font-size: 20px;
     font-weight: bold;
     letter-spacing: 0;
     line-height: 150%;
     color: #A5C6DE;
     text-align: center;
     margin-bottom: 19px;
 }

 .title-main-32.vs--1 {
     color: #305D89;
 }

 .item__main3_02 {
     width: 50%;
 }

 .item__main3_02:not(:last-child) {
     margin-right: 135px;
 }

 .sub-row-02-1 {
     border: 3px solid #A5C6DE;
     text-align: center;
     position: relative;
     padding-bottom: 6px;
     margin-bottom: 20px;
 }

 .sub-row-02-1.vs--1 {
     border: 3px solid #305D89;
 }

 .title--main-02-1 {
     background-color: #A5C6DE;
     color: #fff;
     font-size: 20px;
     font-weight: bold;
     letter-spacing: 0;
     line-height: 145%;
     margin-bottom: 25px;
 }

 .title--main-02-1.vs--1 {
     background-color: #305D89;
 }


 .SafariChrome .title--main-02-1 span {
     top: -1px;
 }


 .ie .title--main-02-1 span {
     top: 0;
 }

 .Firefox .title--main-02-1 span {
     top: -1.5px;
 }

 .sub-row-02-1 p {
     font-size: 16px;
     font-weight: bold;
     letter-spacing: 0;
     line-height: 150%;
     color: #4B4B4B;
 }

 .sub-row-02-1 .color-305D89 {
     color: #305D89;
     padding-bottom: 10px;
 }

 .sub-row-02-1 .color-A5C6DE {
     color: #A5C6DE;
     padding-bottom: 10px;
 }

 .item-sub-02-2 p > span {
     display: block;
     color: #A5C6DE;
 }

 .item-sub-02-2 p:not(:last-child) {
     margin-bottom: 10px;
 }

 .item-sub-02-2 .title--main-02-1 {
     margin-bottom: 15px;
 }

 .item-sub-02-2 {
     padding-bottom: 12px;
 }

 .sub-row-02-2 {
     display: flex;
     flex-wrap: wrap;
 }

 .item-sub-02-2 {
     width: calc((100% - 13.2px) / 2);
     margin-right: 13px;
     margin-bottom: 19px;
     display: flex;
     flex-direction: column;
     justify-content: space-between;
     align-items: stretch;
 }

 .item-sub-02-2:nth-child(1) > div:last-child,
 .item-sub-02-2:nth-child(2) > div:last-child {
     margin-top: 10px;
 }

 .item-sub-02-2:nth-child(2n),
 .item-sub-02-2:last-child {
     margin-right: 0;
 }

 .mh48 {
     padding: 9px 0 15px 0;
 }

 .mh48 > span {
     display: inline-block !important;
 }

 .item-sub-02-2 p > span.vs--1 {
     color: #305D89;
 }

 .item-sub-02-2 p > span.fz15 {
     font-size: 15px;
 }

 .item-sub-02-2.mb-0 {
     padding-bottom: 0;
 }

 .grid-1000 {
     width: 100%;
     max-width: 1000px;
     margin-left: auto;
     margin-right: auto;
     position: relative;
 }

 .wrap-nspect-steps-cutsoms {
     margin-bottom: 30px;
 }

 .wrap-nspect-steps-cutsoms > li {
     width: 33.33%;
     padding-left: 47px;
     padding-right: 47px;
     min-height: 292px;
     padding-bottom: 13px;
     height: 100%;
 }

 .wrap-nspect-steps-cutsoms .inspect-steps__step-big::after {
     right: -0.75rem;
 }

 .gp__main_3_rows_03 {
     margin-top: 112px;
     padding-top: 38px;
     padding-bottom: 23px;
     background: #d1e1ec;
 }

 .wrap-nspect-steps-cutsoms .inspect-steps__title__en {
     margin-bottom: 17px;
 }

 .Firefox .wrap-nspect-steps-cutsoms .inspect-steps__title__en {
     margin-bottom: 11px;
 }

 .wrap-nspect-steps-cutsoms .inspect-steps__title {
     margin-bottom: 10px;
 }

 .wrap-nspect-steps-cutsoms .inspect-steps__img {
     margin-bottom: 34px;
 }

 .gp__main_3_rows_03 .inspect-steps-time__txt {
     min-width: 226px;
 }

 .mg70.inspection__three_rows {
     margin: 0 !important;
     padding: 77px 0;
 }

 .page__content--ct-4.pb-0 {
     padding-bottom: 0;
 }

 .ie .inspect-steps__title__en span {
     position: relative;
     top: 2px;
 }

 @media (max-width:1100px) {
     .item__main3_02:not(:last-child) {
         margin-right: 4.545vw;
     }

     .sub-row-02-1 p {
         padding-left: 5px;
         padding-right: 5px;
         font-size: 14px;
     }

     .item-sub-02-2 p > span.fz15 {
         font-size: 14px;
     }
 }

 @media (max-width:980px) {
     .item__main3_02:not(:last-child) {
         margin-right: 2.551vw;
     }
 }

 @media (max-width:950px) {
     .gp__main_3_rows_02 {
         flex-wrap: wrap;
         margin-top: 10.821vw;
     }

     .item__main3_02 {
         width: 100%;
     }

     .item__main3_02:not(:last-child) {
         margin-right: 0;
         margin-bottom: 40px;
     }

     .sub-row-02-1 p {
         font-size: 16px;
     }

     .item-sub-02-2 p > span.fz15 {
         font-size: 16px;
     }

     .title--main-02-1 {
         font-size: 18px;
     }
 }

 .sp_shows_5 {
     display: none !important;
 }

 .sp_hides_5 {
     display: block !important;
 }

 @media (max-width:1250px) {
     .gp__main_3_rows_03 .inspect-steps__title__ja {
         font-size: 17px;
     }

     .gp__main_3_rows_03 .inspect-steps__para {
         font-size: 14px;
     }

     .gp__main_3_rows_03 .inspect-steps__step-big::before,
     .gp__main_3_rows_03 .inspect-steps__step-big::after {
         background-position: left center;
         background-size: auto;
         width: 12px;
     }

     .gp__main_3_rows_03 .inspect-steps__title__en {
         font-size: 16px;
         padding-top: 10px;
     }

     .gp__main_3_rows_03 .inspect-steps-time__txt {
         font-size: 17px;
     }
 }


 @media (max-width:1050px) {
     .grid-1000 {
         padding-left: 15px;
         padding-right: 15px;
     }

     .wrap-nspect-steps-cutsoms > li {
         padding-left: 20px;
         padding-right: 20px;
     }

     .wrap-nspect-steps-cutsoms .inspect-steps__title {
         margin-bottom: 15px;
     }

     .wrap-nspect-steps-cutsoms .inspect-steps__step-big::after {
         right: -1rem;
     }

     .gp__main_3_rows_03 {
         margin-top: 10vw;
         padding-top: 3.8vw;
         padding-bottom: 2.3vw;
     }

     .item__main_3_rows_01:first-child {
         padding-right: 9.048vw;
     }

     .rows-abc {
         margin-top: 3.81vw;
     }
 }

 @media (max-width:850px) {
     .gp__main_3_rows_03 .inspect-steps__title__ja {
         font-size: 15px;
     }

     .gp__main_3_rows_03 .inspect-steps__title__en {
         font-size: 15px;
         padding-top: 7px;
     }

     .wrap-nspect-steps-cutsoms > li {
         padding-left: 15px;
         padding-right: 15px;
         min-height: 280px;
     }

     .gp__main_3_rows_03 .inspect-steps-time__txt {
         padding-top: 12px;
         padding-bottom: 4px;
     }

     .inspect-steps-time::before,
     .inspect-steps-time::after {
         top: 0;
         width: 36px;
         height: 36px;
         background-size: contain;
     }

     .item__main_3_rows_01 {
         width: 50.824vw;
     }

     .item__main_3_rows_01:first-child {
         width: calc(100% - 50.824vw);
         padding-right: 20px;
         padding-top: 0;
     }

     .item-row-abc {
         font-size: 14px;
     }

     .title-abc {
         padding-top: 10px;
         padding-bottom: 10px;
     }

     .gp__main_3_02 .title__ins_01--ct-5 {
         margin-bottom: 35px;
     }
 }

 @media (max-width:767px) {
     .title-main-32 {
         font-size: 14px;
         margin-bottom: 1.956vw;
     }

     .item-sub-02-2 {
         width: calc((100% - 2.894vw) / 2);
         margin-right: 2.868vw;
         margin-bottom: 4.172vw;
     }

     .title--main-02-1 {
         font-size: 4.172vw;
         height: 7.823vw;
         margin-bottom: 4.694vw;
         display: flex;
         align-items: center;
         justify-content: center;
         width: calc(100% + 2px);
         margin-left: -1px;
         margin-top: -1px;
     }

     .gp-content-remodeling .gp__button_01_1 span:last-child {
         top: 0;
     }

     .title--main-02-1 span,
     .title-abc span,
     .inspect-steps__title__en span {
         top: 0vw;
     }

     .sub-row-02-1 p,
     .item-sub-02-2 p > span.fz15 {
         font-size: 3.651vw;
         letter-spacing: -0.5px;
     }

     .sub-row-02-1 {
         border: 6px solid #A5C6DE;
         padding-bottom: 1.043vw;
         margin-bottom: 3.911vw;
     }

     .sub-row-02-1.item-sub-02-2 {
         padding-bottom: 3.911vw;
     }

     .sp_hides_5 {
         display: none !important;
     }

     .sp_shows_5 {
         display: block !important;
     }

     .item-sub-02-2 > div:last-child img {
         width: 35.463vw;
     }

     .item-sub-02-2.mb-0 {
         padding-bottom: 1.434vw;
     }

     .item__main3_02:not(:last-child) {
         margin-bottom: 5vw;
     }

     .gp__main_3_rows_03 {
         margin-top: 9.5vw;
         padding-top: 0;
         padding-bottom: 0;
         background: #d1e1ec;
     }

     .gp__main_3_rows_01 {
         max-width: 644px;
         flex-wrap: wrap;
     }

     .item__main_3_rows_01:first-child {
         width: 100%;
         order: 1;
         padding-right: 0;
         padding-top: 7.301vw;
     }

     .item__main_3_rows_01:last-child {
         order: 0;
         width: 100%;
     }

     .gp__main_3_02 .title__ins_01--ct-5 {
         margin-bottom: 5.085vw;
     }

     .title-abc {
         font-size: 14px;
         padding: 3vw 0.652vw;
         height: 3em;
     }

     .sub-title-abc {
         font-size: 14px;
         margin-bottom: 2vw;
     }

     .sub-title-abc > span:first-child {
         width: 25px;
         height: 25px;
         padding-top: 2px;
     }

     .item-row-abc {
         font-size: 14px;
         font-weight: bold;
         letter-spacing: 0;
         color: #4B4B4B;
     }

     .item-row-abc p{
         font-weight: 400;line-height: 20px;
     }

     .item-row-abc:not(:last-child) {
         margin-bottom: 4vw;
     }

     .mg70.inspection__three_rows {
         padding: 14.342vw 0;
     }

     .wrap-nspect-steps-cutsoms > li {
         width: 100%;
     }

     .wrap-nspect-steps-cutsoms {
         margin-bottom: 2vw;
     }

     .gp__main_3_rows_03 .inspect-steps__title__en {
         font-size: 3.651vw;
         padding-top: 1.565vw;
         padding-bottom: 1.565vw;
         margin-bottom: 3vw;
     }

     .gp__main_3_rows_03 .inspect-process-sec-1 {
         padding-left: 25px;
         padding-right: 25px;
     }

     .gp__main_3_rows_03 .inspect-process-sec-1 .grid-1000,
     .wrap-nspect-steps-cutsoms > li {
         padding-left: 0;
         padding-right: 0;
     }

     .gp__main_3_rows_03 .inspect-process-time-sp {
         margin-bottom: 9vw;
     }

     .gp__main_3_rows_03 .inspect-steps__title__ja,
     .gp__main_3_rows_03 .inspect-steps__para {
         font-size: 3.651vw;
     }

     .inspect-steps__title__ja span.sp_shows_5 {
         display: inline-block !important;
     }

     .wrap-nspect-steps-cutsoms .inspect-steps__img {
         width: 34vw;
         margin-bottom: 0;
     }

     .gp__main_3_rows_03 .inspect-steps__para {
         width: calc(100% - 34vw);
         padding: 0 0 0 2.5vw;
         letter-spacing: 0;
         letter-spacing: -1px;
     }

     .wrap-nspect-steps-cutsoms .inspect-steps__title {
         margin-bottom: 3.911vw;
     }

     .wrap-nspect-steps-cutsoms .inspect-steps__step-big::after,
     .wrap-nspect-steps-cutsoms .inspect-steps__step::after {
         margin-top: 8.667vw;
         width: 100%;
         background-image: url(img/mainten--0010.png);
         background-size: contain;
     }

     .wrap-nspect-steps-cutsoms > li {
         min-height: auto;
     }

     .sub-title-abc > span:first-child span {
         top: 0;
     }

     .sub-title-abc > span:last-child {
         top: 0;
     }
 }

 @media (max-width:650px) {
     .gp__main_3_rows_01 {
         padding-left: 3.846vw;
         padding-right: 3.846vw;
     }
 }

 @media (max-width:480px) {
     .sub-row-02-1 {
         border: 2px solid #A5C6DE;
     }

     .title--main-02-1 {
         font-size: 14px;
     }

     .sub-row-02-1 p,
     .item-sub-02-2 p > span.fz15,
     .gp__main_3_rows_03 .inspect-steps__title__ja,
     .gp__main_3_rows_03 .inspect-steps__para,
     .gp__main_3_rows_03 .inspect-process-time-sp {
         font-size: 13px;
     }
 }


 .loading {
     position: fixed;
     left: 0;
     top: 0;
     width: 100%;
     height: 100vh;
     display: flex;
     align-items: center;
     justify-content: center;
     z-index: 999999999999;
     background: #ffffff;
     animation: loading 0.4s 1.5s;
     animation-fill-mode: forwards;
     opacity: 1;
 }



 @keyframes loading {
     0% {
         z-index: 999999999999;
         opacity: 1;
     }

     100% {
         z-index: -5;
         opacity: 0;
         cursor: default;
     }
 }

 .lds-spinner {
     color: official;
     display: inline-block;
     position: relative;
     width: 80px;
     height: 80px;
     animation: icon 1.5s;
     animation-fill-mode: forwards;
 }

 .lds-spinner div {
     transform-origin: 40px 40px;
     animation: lds-spinner 1.2s linear infinite;
 }

 .lds-spinner div:after {
     content: " ";
     display: block;
     position: absolute;
     top: 3px;
     left: 37px;
     width: 6px;
     height: 18px;
     border-radius: 20%;
     background: #473732;
 }

 .lds-spinner div:nth-child(1) {
     transform: rotate(0deg);
     animation-delay: -1.1s;
 }

 .lds-spinner div:nth-child(2) {
     transform: rotate(30deg);
     animation-delay: -1s;
 }

 .lds-spinner div:nth-child(3) {
     transform: rotate(60deg);
     animation-delay: -0.9s;
 }

 .lds-spinner div:nth-child(4) {
     transform: rotate(90deg);
     animation-delay: -0.8s;
 }

 .lds-spinner div:nth-child(5) {
     transform: rotate(120deg);
     animation-delay: -0.7s;
 }

 .lds-spinner div:nth-child(6) {
     transform: rotate(150deg);
     animation-delay: -0.6s;
 }

 .lds-spinner div:nth-child(7) {
     transform: rotate(180deg);
     animation-delay: -0.5s;
 }

 .lds-spinner div:nth-child(8) {
     transform: rotate(210deg);
     animation-delay: -0.4s;
 }

 .lds-spinner div:nth-child(9) {
     transform: rotate(240deg);
     animation-delay: -0.3s;
 }

 .lds-spinner div:nth-child(10) {
     transform: rotate(270deg);
     animation-delay: -0.2s;
 }

 .lds-spinner div:nth-child(11) {
     transform: rotate(300deg);
     animation-delay: -0.1s;
 }

 .lds-spinner div:nth-child(12) {
     transform: rotate(330deg);
     animation-delay: 0s;
 }

 @keyframes lds-spinner {
     0% {
         opacity: 1;
     }

     100% {
         opacity: 0;
     }
 }


 @keyframes icon {
     0% {
         opacity: 1;
     }

     100% {
         opacity: 0;
     }
 }
