.service-contents {
padding: 100px 0;
}

.service-contents:has(.column3-textlist) {
padding: 0;
}

.service-contents:has(.intro-content) {
padding: 50px 0;
}

.inner:has(.intro-content) {
width: 100%;
 margin: 0;
max-width: none;
padding: 0; 
}

@media screen and (max-width:834px) {
.service-contents {
padding: 50px 0;
}
}

/*画像＋テキスト（２カラムコンテンツ）*/
.column2_content {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.column2_content__img {
width: 50%;
}

.column2_content__img img {
width:100%;
}

.column2_content__ct {
width: 50%;
padding: 0 50px;
}

.column2_content__ct-ttl {
font-weight: 700;
font-size: 2.8rem;
line-height: 1.6071428571;
margin-bottom: 10px;
}

.column2_content__ct-tm {
font-weight: 700;
font-size: 20px;
font-size: 2rem;
line-height: 1.75;
margin-bottom: 5px;
}

.column2_content__ct-box {
color: #231815;
font-size: 1.6rem;
line-height: 1.625;
margin-bottom: 21px;
}

.column2_content__ct-box span {
display: block;
font-weight: 700;
color: #00acda;
margin-bottom: 5px;
}

.column2_content-list__note-item {
display: flex;
color: rgb(132, 130, 130);
font-size: 1.3rem;
line-height: 1.53846;
}

.column2_content-list__note-item span {
color: rgb(132, 130, 130);
font-weight: normal;
margin-bottom: 0px;
}

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

.column2_content__img {
text-align: center;
padding-top: 0;
margin-bottom: 10px;
width: 100%;
}

.column2_content__ct {
width: 100%;
padding: 0;
}

}



/*右寄せ画像＋テキスト（２カラムコンテンツ）*/

.right-img_content {
display: flex;
justify-content: space-between;
align-items: flex-start;
flex-wrap: wrap;
}

.right-img_content__ct {
width: 49.8%;
font-size: 1.6rem;
line-height: 1.625;
}

..right-img_content__ct p {
font-size: 28px; 
}

.right-img_content__ct-ttl {
font-weight: 700;
font-size: 3rem;
line-height: 1.5;
margin-bottom: 28px;
}

.right-img_content__ct-desc {
display: block;
color: #00acda;
font-weight: 700;
font-size: 2rem;
margin-bottom: 6px;
}

.right-img_content__list {
display: flex;
flex-wrap: wrap;
margin: 0 -10px 24px;
}

.right-img_content__list-item {
width: 33.333%;
padding: 0 10px;
}

.right-img_content__btn {
text-align: right;
}

.right-img_content__img {
    width: 41.1%;
}

.right-img_content__img-box {
width: auto;
margin-right: calc((1100px - 100vw) / 2);
}

.right-img_content__img-box img {
width: 100%;
}

@media screen and (max-width: 1400px) {
.right-img_content__img {
width: 46%;
}
}

@media screen and (max-width: 1130px) {
.right-img_content__img-box {
margin-right: -15px;
}
}

@media screen and (max-width: 1024px) {
.right-img_content__img {
width: 100%;
margin-bottom: 10px;
}

.right-img_content__ct {
width: 100%;
order: 1;
}
}

/*2カラムカードコンテンツ*/
.column2-list {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.column2-list__img {
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 15px;
}

.column2-list__img img {
height: 100%;
width: auto;
object-fit: contain; 

}

.column2-list__ttl {
display: block;
color: #00addb;
font-weight: 700;
font-size: 20px;
font-size: 2rem;
line-height: 1.5;
margin-bottom: 9px;
}

.column2-list__item {
width: 46.9%;
margin-bottom: 0px;
font-size: 1.5rem;
line-height: 1.6666666667;
}

.column2-list__item:nth-child( n + 3 ) {
margin-top: 80px;
}

.column2-list__item p:not(:first-of-type) {
margin-top: 23px;
}

.column2-list__item p:last-of-type {
margin-bottom: 0;
}




@media screen and (max-width: 640px) {
.column2-list__item {
width: 100%;
}

.column2-list__item:nth-child( n + 3 ) {
margin-top: 0px;
}

.column2-list__item:nth-child( n + 2 ) {
margin-top: 30px;
}

.column2-list__ttl {
font-size: 1.8rem;
}

}

/*3カラムカードコンテンツ*/

.column3-list {
display: flex;
flex-wrap: wrap;
margin: 0px -15px;
}

.column3-list__item {
width: 33.333%;
padding: 0px 15px;
}

.column3-list__img {
position: relative;
overflow: hidden;
}

.column3-list__img:before {
content: "";
display: block;
padding-bottom: 91.9540229885%;
}

.column3-list__img img {
position: absolute;
width: 100%;
height: 100%;
object-fit: cover;
font-family: "object-fit: cover";
top: 0px;
left: 0px;
}

.column3-list__ct {
font-size: 1.5rem;
line-height: 1.66667;
background: rgb(255, 255, 255);
padding: 35px 27px 40px;
height: 198px;
}

.column3-list__ct-ttl {
display: block;
color: rgb(0, 173, 219);
font-weight: 700;
font-size: 2rem;
margin-bottom: 7px;
}

.column3-textlist {
opacity: 1;
justify-content: space-between;
display: flex;
flex-wrap: wrap;
margin-top: 40px;
}

.column3-textlist li {
width: 340px;
height: 340px;
border-radius: 12px;
background: #fff;
box-shadow: 3px 4px 20px rgba(0, 0, 0, 0.16);
margin-bottom: 40px;
padding: 0 15px;
}

.column3-textlist__title-box {
display: flex;
position: relativef;
height: 110px;
border-bottom: solid 1px #BEBEBE;
}

.column3-textlist__icon {
width: 68px;
padding: 10px;
object-fit: contain;
}

.column3-textlist__title {
font-size: 20px;
font-weight: bold;
color: hsl(193, 100%, 43%);
line-height: 1.3;
display: grid;
place-items: center;
padding: 10px;
}

.column3-textlist__text-box {
padding: 12px;
font-size: 16px;
margin-top: 10px;
line-height: 1.7;
}

@media screen and (max-width: 1100px) {
.column3-textlist li {
width: 48%;
}
}

@media screen and (max-width: 990px) {
.column3-list__ct {
padding: 20px 13px;
height: auto;
}

}

@media screen and (max-width: 834px) {
.column3-list__item {
width: 100%;
margin-bottom: 15px;
}

.column3-textlist li {
width: 100%;
height: fit-content;
}
}





/*リストコンテンツ*/

.normal-list .step-list {
counter-reset: a 0;
}

.normal-list__item {
position: relative;
display: flex;
align-items: center;
flex-wrap: wrap;
min-height: 78px;
border-bottom: 1px solid rgb(209, 209, 209);
padding: 10px 0px;
}

.normal-list__item:after {
width: 180px;
content: "";
position: absolute;
background: #00addb;
height: 1px;
bottom: -1px;
left: 0;
}

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

.normal-list__ttl {
padding-left: 0;
width: 180px;
position: relative;
color: #231815;
font-weight: 700;
font-size: 1.6rem;
}

.normal-list__ct {
width: calc(100% - 265px);
font-size: 1.6rem;
line-height: 1.5625;
padding-left: 15px;
}

.normal-list__ct p {
    max-width: 720px;
}

.step-list__item {
position: relative;
display: flex;
align-items: center;
flex-wrap: wrap;
padding-bottom: 19px;
margin-bottom: 33px;
border-bottom: 1px solid rgb(209, 209, 209);
}


.step-list__ttl {
position: relative;
display: flex;
align-items: center;
width: 263px;
font-weight: 700;
font-size: 2rem;
padding: 0px 0px 0px 76px;
}

.step-list__ttl-step {
position: absolute;
color: #00acda;
font-weight: 400;
font-size: 12px;
font-size: 1.2rem;
left: 10px;
text-align: center;
top: 50%;
transform: translateY(-50%);
}
.step-list__ttl-step > span {
font-size: 2rem;
font-weight: 700;
}

.step-list__ttl-img {
width: 58px;
margin-right: 13px;
}

.step-list__ct {
width: calc(100% - 263px);
color: #231815;
font-weight: 500;
font-size: 1.4rem;
padding-left: 46px;
}

.step-list__ct span {
position: relative;
display: inline-block;
padding-left: 9px;
margin: 0 15px 0px 0;
line-height: 30px;

}

.step-list__ct span:before {
content: "";
position: absolute;
background: #231815;
width: 4px;
height: 4px;
border-radius: 50%;
top: 14px;
left: 0;
}

.step-list__item:after {
content: "";
position: absolute;
background: #00addb;
width: 263px;
height: 1px;
bottom: -1px;
left: 0;
}

.step-list__item > p {
padding-left: 46px;
width: calc(100% - 263px);
color: #231815;
font-weight: 500;
font-size: 1.4rem;
}

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

.normal-list__item {
padding-bottom: 15px;
margin-bottom: 32px;
min-height: auto;
padding-top: 0;
border-bottom: none;
}

.normal-list__item:after {
display: none;
}

.normal-list__ttl {
width: 100%;
min-height: 38px;
border-bottom: 1px solid #00acda;
margin-bottom: 15px;
padding-bottom: 10px;

}

.normal-list__ct {
width: 100%;
padding-left: 0;
}

.step-list__item {
padding-bottom: 5px;
margin-bottom: 40px;
border-bottom: none;
}

.step-list__item:after {
display: none;
}

.step-list__ttl {
width: 100%;
border-bottom: 1px solid #00addb;
padding-bottom: 0px;
margin-bottom: 20px;
min-height: 55px;
}

.step-list__ct {
width: 100%;
padding-left: 0;
}

.step-list__item > p {
padding-left: 0;
width: 100%; 
}
}

.columnlist-wrap {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin: 0 -60px;
}

.columnlist-wrap__item {
width: 25%;
padding: 0 35px;
margin-bottom: 50px;
}

.columnlist-wrap__ttl {
display: block;
text-align: center;
color: #00acda;
font-weight: 700;
font-size: 2rem;
line-height: 1.75;
margin-bottom: 3px;
}

.columnlist-wrap__txt-item {
position: relative;
color: #231815;
border-bottom: 1px solid #d9d9d9;
font-weight: 500;
font-size: 1.4rem;
padding: 6px 0 7px 21px;
}

.columnlist-wrap__txt-item:before {
content: "";
position: absolute;
background: #231815;
width: 4px;
height: 4px;
border-radius: 50%;
top: 13px;
left: 12px;
}

@media screen and (max-width: 1200px) {
.columnlist-wrap {
margin: 0 -15px;
}
}

@media screen and (max-width: 990px) {
.columnlist-wrap {
margin: 0 -8px;
}

.columnlist-wrap__item {
 width: 33.333%;
padding: 0 8px;
margin-bottom: 30px;
}

}

@media screen and (max-width: 640px) {
.columnlist-wrap__item {
width: 50%;
}

.columnlist-wrap__txt-item {
font-size: 1.2rem;
padding-left: 10px;
}

.columnlist-wrap__txt-item:before {
left: 0;
}
}

@media screen and (max-width: 374px) {
.columnlist-wrap__item {
width: 100%;
}
}

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

.rightlist__left {
width: 30%;
max-width: 310px;
padding-right: 10px;
}

.rightlist_left .c-ttl__02 {
margin-bottom: 23px;
}

.rightlist__right {
max-width: 655px;
width: 70%;
margin-top: -32px;
}

.rightlist-list__item {
display: flex;
align-items: center;
flex-wrap: wrap;
padding: 20px 0;
border-bottom: 1px solid #d1d1d1;
position: relative;
}

.rightlist-list__item:after {
content: "";
display: inline-block;
position: absolute;
width: 150px;
height: 1px;
bottom: -1px;
background: #00addb;
left: 0;
}

.rightlist-list__title {
color: #00addb;
width: 150px;
}

.rightlist-list__ct {
width: calc(100% - 150px);
padding-left: 30px;
}

@media screen and (min-width: 835px) {
.rightlist-wrap {
line-height: 2.1875;
}
}

@media screen and (max-width: 834px) {
.rightlist__left {
width: 100%;
max-width: 100%;
padding-right: 0;
}

.rightlist__right {
max-width: 100%;
width: 100%;
margin-top: 10px;
}
}

/*画像コンテンツ*/
.column3-icon {
font-size: 2rem;
line-height: 1.5;
text-align: center;
font-weight: 700;
color: #00addb;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
max-width: 725px;
margin: 0 auto;
}

.column3-icon__item {
width: 33.33%;
max-width: 161px;
}

.column3-icon__img {
margin-bottom: 29px;
display: flex;
justify-content: center;
align-items: center;
}

.column1__img {
}

@media screen and (min-width: 835px) {
.column1__img .sp {
display: none !important;
}
}

@media screen and (max-width: 834px) {
.column3-icon__img {
margin-bottom: 30px;
text-align: center;
}

.column3-icon__img img {
max-width: 120px;
width: 100%;
}

.column1__img {
text-align: center; 
}

.column1__img img {
max-width: 80%;
}

.column1__img .pc {
display: none !important;
}

}

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

.column3-icon__item {
width: 100%;
max-width: 100%;
}

.column3-icon__item:not(:last-child) {
margin-bottom: 40px;
}

}

/*バナー*/
.imgbanner-content {
position: relative;
display: block;
width: 100%;
max-width: 575px;
height: 154px;
color: #fff;
font-weight: 500;
font-size: 1.5rem;
margin: 0 auto;
}

.imgbanner-content:hover {
opacity: 1;
transition: all .3s;
}

.imgbanner-content img {
width: 100%;
height: 100%;
object-fit: cover;
font-family: object-fit\: cover;
transition: all .3s;
filter: grayscale(100%);
}

.imgbanner-content:hover img {
    transition: all .3s;
    filter: grayscale(0);
}

.imgbanner-content span {
position: absolute;
width: 75%;
max-width: 360px;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}

.imgbanner-content span:after, .imgbanner-content span:before {
content: "";
position: absolute;
top: 50%;
transform: translateY(-50%);
}

.imgbanner-content span:before {
width: 50px;
height: 50px;
border-radius: 50%;
border: 1px solid #fff;
right: 0;
}

.imgbanner-content:hover span:before {
background: #fff;
}

.imgbanner-content span:after {
background: url(../img/index/icon-link-white.svg) 50% no-repeat;
background-size: contain;
width: 13px;
height: 13px;
right: 18px;
}

.imgbanner-content:hover span:after {
background: url(../img/index/icon-link.svg) 50% no-repeat;
background-size: contain;
}

/*イントロ*/
.intro-content {
display: flex;
flex-wrap: wrap;
}

.intro-content__ct {
width: 55%;
padding: 0 40px;
position: relative;
color: #fff;
z-index: 1;
}

.intro-content__ct-textarea {
position: absolute;
top: 50%;
transform: translateY(-50%);
}

.intro-content__ct p {
padding-bottom: 13px;
}

.intro-content__ct:before {
content: "";
display: inline-block;
position: absolute;
width: 110%;
height: 100%;
top: 0;
background: #00addb;
z-index: -1;
left: 0;
}

.intro-content02 .intro-content__ct:before {
right: 0;
left: auto;

}

.intro-content__ct .c-ttl__02 {
line-height: 1.5;
margin-bottom: 29px;
}

.intro-content__ct-tm {
display: block;
font-weight: 700;
font-size: 2rem;
line-height: 1.75;
margin-bottom: 13px;
}

.intro-content__ct-btn {
text-align: right;
}

.intro-content__ct-btn a {
position: relative;
display: inline-flex;
justify-content: flex-end;
align-items: center;
color: #fff;
font-weight: 500;
font-size: 1.5rem;
word-break: keep-all;
}

.intro-content__ct-btn a:before {
content: "";
display: block;
background: url(../img/index/icon-link-white.svg) 50% no-repeat;
background-size: 19px;
width: 68px;
height: 68px;
border: 1px solid #fff;
border-radius: 50%;
margin-right: 21px;
transition: .3s ease;
}



.intro-content__img {
width: 45%;
top: 58px;
position: relative;
z-index: 2;
}

.intro-content02 .intro-content__img {
top: -58px;
}

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

.intro-content__ct-btn a:before {
width: 48px;
height: 48px;
background-size: 15px;
margin-right: 15px;
}
}

@media screen and (max-width: 834px) {
.intro-content {
background: #00addb;
padding: 0 15px;
margin: 0 -15px;
}

.intro-content02 {
flex-direction: column-reverse;
}

.intro-content__ct {
padding: 20px 15px;
width: 100%;
}

.intro-content__ct-textarea {
position: relative;
top: 0;
transform: translateY(0px);
}

.intro-content02 .intro-content__ct {
padding: 20px 15px;
width: 100%;
}

.intro-content__ct .c-ttl__02 {
font-size: 2rem;
margin-bottom: 20px;
}

.intro-content__img {
width: 100%;
top: 0;
}

.intro-content02 .intro-content__img {
top: 0;
}

.intro-content__img-img {
margin: 0 -15px;
}

.intro-content__img-img img {
width: 100%;
}

.intro-content02 .intro-content__img-img {
margin: 0 -15px;
}
}