:root {
    --page-main-color: #19A214;
    --page-sub-color: #E68715;
    --page-bg-color:#FDF8F2;
}

/* 共通 */

.l-main * {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
.l-main .section__space {
    padding-block: 73px 80px;
}
.l-main .section__ttl {
    font-weight: 700;
    margin-bottom: 30px;
}
.l-main .section__ttl span {
    letter-spacing: 0.25em;
    font-weight: 400;
}


/* business--03 */
.section__wrapper--business--03 .content__block--business--03 .content__list--vertical {
    gap: 29px;
}
.section__wrapper--business--03 .content__img--business--03 {
    height: 425px;
}
.content__wrap--business--03 {
    padding: 38px 40px;
    background: #fff;
}
.section__wrapper--business--03 .content__subttl--flow--06 {
    text-align: center;
    color: var(--page-sub-color);
    font-weight: 700;
    line-height: 160%;
    margin-bottom: 17px;
}
.section__wrapper--business--03 .content__description--business--03 {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.65;
    color: #333;
}

/* case--06 */
.section__wrapper--case--06 {
    background-color: #fff;
}
.section__wrapper--case--06 .content__block--case--06 .content__list--vertical {
    gap: 99px;
}

.section__wrapper--case--06 .section__ttl {
    margin-bottom: 101px;
}
.section__wrapper--case--06  .content__wrap--case--06 {
    padding: 39px 48px;
}
.section__wrapper--case--06 .content__subttl--case--06 {
    color:  var(--page-sub-color);
    font-weight: 700;
    line-height: 160%;
    margin-bottom: 14px;
}
.content__description--case--06 {
    font-size: 16px;
    font-weight: 500;
    color: #333;
    line-height: 1.7;
}


/* contact--03 */
.l-main .section__wrapper--contact--03 {
    background: #C49D6C;
}
.l-main .section__wrapper--contact--03 .section__inner {
    padding-block: 57px 60px;
}
.content__info--contact--03 {
    flex-wrap: wrap;
    justify-content: center;
    gap: 0;
    color: #7A7A7A;
}
.l-main .section__wrapper--contact--03 .content__wrap--contact--03 {
    justify-content: flex-start;
    gap: 30px;
}
.l-main .section__wrapper--contact--03  .content__wrap--contact--03 .content__block--contact--03:first-child {
    padding: 34px 28px; 
}
.l-main .section__wrapper--contact--03  .content__wrap--contact--03 .content__block--contact--03 {
    padding: 34px 20px;
    border-radius: 4px;
    height: 170px;
}
.l-main .section__wrapper--contact--03 .section__ttl,
.l-main .section__wrapper--contact--03 .section__ttl span {
    color: #fff;
    margin-bottom: 31px;
}
.l-main .section__wrapper--contact--03 .content__txt--tel {
    color: var(--page-sub-color);
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.25;
}
.l-main .section__wrapper--contact--03 .content__icon--tel {
    color: var(--page-sub-color);
}
.l-main .section__wrapper--contact--03 .content__txt--contact--03 {
    font-size: 12px;
    margin-bottom: 4px;
}
.l-main .section__wrapper--contact--03 .content__ttl--contact--03 {
    margin-bottom: 9px;
}
.l-main .section__wrapper--contact--03 .content__btn--contact--mail a {
    background-color:var(--page-sub-color);
    justify-content: flex-start;
    padding-left: 49px;
    font-weight: 700;
}
.l-main .section__wrapper--contact--03 .content__icon--mail {
    width: 26px;
    height: 22px;
}
.l-main .section__wrapper--contact--03 .content__btn--contact--line a {
    justify-content: flex-start;
    padding-left: 43px;
    font-weight: 700;
}
.l-main .section__wrapper--contact--03 .content__icon--line {
    width: 25px;
    height: 27px;
}
.l-main [class*="content__btn--"] [class*="content__icon--btn--"] {
    width: 18px;
    height: 7px;
}



/* business--01 */
.l-main .section__wrapper--business--01 {
    background-color: #fff;
}
.section__wrapper--business--01 .content__items--business--01 {
    border: 1px solid #DBDBDB;
    height: 528px;
}
.section__wrapper--business--01 .content__items--business--01:nth-child(odd) {
    border-right: none;
}
.section__wrapper--business--01 .content__items--business--01:nth-child(n+3) {
    height: 523px;
    border-top: none;
}
.section__wrapper--business--01 .content__img--business--01 {
    margin-bottom: 28px;
}
.section__wrapper--business--01 .content__subttl--business--01 {
    font-weight: 700;
    color: #333;
    margin-bottom: 7px;
}
.l-main .section__wrapper--business--01 .content__description--business--01 {
    font-size: 16px;
    font-weight: 500;
    color: #333;
    line-height: 1.65;
}

/* case--02 */
.content__items--case--02 {
    background-color: #fff;
    height: 548px;
}
.section__wrapper--case--02 .content__img--case--02 {
    margin-bottom: 18px;
}
.section__wrapper--case--02 .content__subttl--case--02 {
    margin-bottom: 12px;
    font-weight: 700;
}
.section__wrapper--case--02 .content__description--case--02 {
    font-size: 16px;
    font-weight: 400;
    color: #333;
    line-height: 1.75;
    margin-bottom: 12px;
}
.section__wrapper--case--02 .content__description--case--02.case_height {
    margin-bottom: 39px;
}
.content__status--case--02 {
    text-align: right;
}


/* faq--01 */
.l-main .section__wrapper--faq--01 {
    background-color: #fff;
}
.content__items--faq--01 {
    padding-bottom: 29px;
    margin-bottom: 1px;
    border-bottom: 1px solid #DBDBDB;;

}
.content__subttl--faq {
    position: relative;
    font-size: 20px;
    color: #333;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
}
.faq__question {
    width: 36px;
    height: 36px;
    background-color: #fff;
    border: 1px solid #726250;
    font-size: 17px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    color: #726250;
    flex-shrink: 0;
}
.content__description--faq {
    font-size: 16px;
    color: #333;
    font-weight: 500;
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-top: 14px;
    line-height: 1.7;
}
.faq__answer {
    width: 36px;
    height: 36px;
    background-color: #E68715;
    border: 1px solid #E68715;
    font-size: 17px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    color: #FFF;
    flex-shrink: 0;
}
.content__subttl--faq::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    width: 2px;
    height: 22px;
    background-color: #7D7D7D;
    transition: opacity 0.3s;
    border-radius: 10px;
    transform: translateY(-50%);
}
details[open] .content__subttl--faq::before {
    opacity: 0;
}
.content__subttl--faq::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    width: 22px;
    height: 2px;
    margin-left: 10px;
    background-color: #7D7D7D;
    transform: translateY(-50%);
}
.content__subttl--faq::before,
.content__subttl--faq::after {
    transition: transform 0s;
}

/* company--01 */
.l-main .section__wrapper--company--01 {
    background: #FDF8F1;
}
.l-main .section__wrapper--company--01 .section__space {
    padding-block: 73px 0;
}
.section__wrapper--company--01 .content__subttl--company--01 {
    font-size: 20px;
    font-weight: 700;
    color: #333;
}
.section__wrapper--company--01 .content__items--company--01 dt {
    width: 64px;
    flex-shrink: 0;
    font-size: 16px;
    font-weight: 700;
    color: #333;
}
.section__wrapper--company--01 .content__items--company--01 dd {
    font-weight: 16px;
    font-weight: 500;
    color: #333;
}
.content__btn--company--01 a {
    border: 1px solid var(--page-sub-color);
    background: #FFF;
    font-size: 16px;
    color: var(--page-sub-color);
}
.section__wrapper--company--01 .content__icon--btn--01 {
    color: var(--page-sub-color);
}
