@charset "UTF-8";

/*///////////////////// font-face 読み込み例 ///////////////////////////*/
/*Noto Sans JP 400*/
@font-face {
    font-family: 'Noto Sans JP';
    src: url(/fonts/NotoSansJP-Regular.ttf);
    font-weight: 400;
    font-display: swap;
}
/*Noto Sans JP 500*/
@font-face {
    font-family: 'Noto Sans JP';
    src: url(/fonts/NotoSansJP-Medium.ttf);
    font-weight: 500;
    font-display: swap;
}
/*Noto Sans JP 700*/
@font-face {
    font-family: 'Noto Sans JP';
    src: url(/fonts/NotoSansJP-Bold.ttf);
    font-weight: 700;
    font-display: swap;
}
/*///////////////////// font-face 読み込み例 ///////////////////////////*/



:root {
    --page-main-color:#6B9501;
    --page-bg-color: #F4FDF0;
    --page-sub-color: #9CD16A;
}

/* カスタムスタイル */
.l-main * {
    font-family: 'Noto Sans JP', sans-serif;
}
.l-main {
    width: 100%;
    max-width: 100%;
}
.l-main .section__space {
    padding-block: 102px 96px;
}
.l-main .section__ttl {
    font-weight: 700;
    margin-bottom: 35px;
}
.l-main .section__ttl span {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.2em;
    margin-top: 5px;

}

.main__bg--catch {
    height: 400px;
}
.main__bg--catch img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/* read--05 */
.section__wrapper--read--05 .content__subttl--read--05.tab_read--subttl {
    font-size: 18px;
    font-weight: 700;
    color: var(--page-main-color);
    text-align: center;
    margin-bottom: 12px;
}
.section__wrapper--read--05 .content__subttl--read--05.tab_read--subttl span {
    width: 30px;
    height: 1px;
    background: #DBDBDB;
    margin: 10px auto 0;
    display: block;
}
.section__wrapper--read--05 .content__list--uper {
    width: 740px;
    margin: 0 auto 78px;
    gap: 39px 20px;
    position: relative;
    z-index: 1;
}
.section__wrapper--read--05 .content__list--uper .content__items--read--05 {
    width: 360px;
    padding: 29px 20px 35px;
    background-color: #fff;
    border: 1px solid #DBDBDB;
}
.content__description--read--05.tab_read--description {
    font-size: 16px;
    font-weight: 400;
    color: #263238;
    text-align: center;
    line-height: 1.7;
}
.section__wrapper--read--05 .content__btn--read--05 a {
    border:none;
    background-color: inherit;
}
.section__wrapper--read--05 .content__btn--read--05 .content__icon--under--arrow {
    width: 40px;
    height: 40px;
}
.section__wrapper--read--05 .content__subttl--read--05 {
    font-size: 20px;
    font-weight: 700;
    color: var(--page-main-color);
    text-align: left;
    margin-bottom: 9px;
}
.content__description--read--05 {
    font-size: 16px;
    font-weight: 500;
    text-align: left;
    line-height: 1.8;
}
.section__wrapper--read--05 .content__block--read--05 .content__list--under {
    gap: 59px;
}
.section__wrapper--read--05 .content__list--under .content__items--read--05 .content__count--read--05 {
    height: 80px;
    top: -21px;
    left: 0px;
    box-sizing: border-box;
    padding: 19px 18px;
    font-size: 16px;
    background-color: #E69D2A;
    position: absolute;
    z-index: 1;
}
.content__list--under .content__count--read--05::after {
    font-weight: bold;
    line-height: 1.3;
}
.section__wrapper--read--05  .content__list--under .content__items--read--05:nth-of-type(even) .content__count--read--05 {
    left: inherit;
    top: -20px;
    right: 0px;
}
.section__wrapper--read--05 .content__img--read--05 {
    width: 340px;
    height: 250px;
    margin-left: 18px;
    position: relative;
    z-index: 0;
    top: -1px;
}
.section__wrapper--read--05 .content__list--under .content__items--read--05:nth-of-type(even)  .content__img--read--05 {
    margin-left: 0;
    margin-right: 21px;
}
#safety-link,
#reform-link,
#sale-link,
#plan-link {
    padding-top: 200px;
    margin-top: -200px;
}




/* business--02 */
.section__wrapper--business--02 {
    background-color: #FFFFFF;
}
.section__wrapper--business--02 .content__under--business--02 .content__items__inner--business--02 {
    background-color: #FFFFEA;
    align-items: center;
    padding: 68px 60px 60px;
}
.section__wrapper--business--02 .content__img--business--02 {
    width: 360px;
    height: 393px;
}
.section__wrapper--business--02 .content__subttl--business--02 {
    font-size: 20px;
    font-weight: 700;
    color: #263238;
    margin-bottom: 12px;
}
.section__wrapper--business--02 .content__description--business--02 {
    font-size: 16px;
    font-weight: 500;
    color: #263238;
    margin-bottom: 11px;
    line-height: 1.8;
}
.section__wrapper--business--02 .content__description--business--02:last-child {
    margin-bottom: 0;
}


/* case--05  */
.section__wrapper--case--05 {
    background: var(--page-bg-color);
}
.section__wrapper--case--05 .section__ttl {
    margin-bottom: 30px;
}
.section__wrapper--case--05 .content__block--case--05 .content__list--vertical {
    align-items: center;
    justify-content: center;
}
.section__wrapper--case--05 .content__items--case--05 {
    border: 1px solid #DBDBDB;
    background: #fff;
    height: 274px;
    box-sizing: border-box; 
}
.section__wrapper--case--05  .content__img--case--05 {
    margin-bottom: 22px;
}
.section__wrapper--case--05  .content__img--case--05.case__img--height {
    margin-bottom: 8px;
}
.section__wrapper--case--05 .content__subttl--case--05 {
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    color: #263238;
}


/* matrix--07 */
.section__wrapper--matrix--07 {
    background-color: #fff;
}
.section__wrapper--matrix--07 .section__ttl {
    margin-bottom: 33px;
}
.section__wrapper--matrix--07 .content__inner--matrix--07 {
    width: 470px;
    height: 389px;
    background: #FFFFEA;
    padding: 25px 26px;
}
.section__wrapper--matrix--07 .content__inner--matrix--07:last-of-type {
    background: #F8F8F8;
}
.section__wrapper--matrix--07 .content__inner--matrix--07 .content__list--horizontal {
    justify-content: flex-start;
}
.section__wrapper--matrix--07 .content__block--matrix--07 {
    background-color: #fff;
}
.section__wrapper--matrix--07 .content__subttl--matrix--07 {
    font-size: 20px;
    font-weight: 700;
    text-align: left;
    color: #263238;
}
.section__wrapper--matrix--07 .content__txt--matrix--07 {
    font-size: 18px;
    font-weight: 700;
    color: #263238;
    text-align: center;
    margin-bottom: 12px;
}
.section__wrapper--matrix--07 .content__description--matrix--07 {
    font-size: 16px;
    font-weight: 500;
    color: #263238; 
}
.section__wrapper--matrix--07 .content__icon--matrix--07 {
    border: none;
    background-color: inherit;
    padding: 0;
}


/* blog--01 */
.section__wrapper--blog--01 .section__ttl {
    margin-bottom: 33px;
}
.section__wrapper--blog--01 .tab__items--blog--01 {
    width: 280px;
}
.section__wrapper--blog--01 .tab__btn--blog--01  {
    padding: 10px 0 10px;
}
.section__wrapper--blog--01 .tab__btn--blog--01.is-active {
    font-size: 20px;
    font-weight: 700;
    color: #333;
}
.section__wrapper--blog--01 .card__items--blog--01 {
    padding: 20px 20px 15px;
}
.section__wrapper--blog--01 .tab__btn--blog--01 {
    font-size: 20px;
    font-weight: 700;
    color: #A3A3A3;
}
.section__wrapper--blog--01 .card__date--blog--01 {
    background-color: #E69D2A;
    color: #fff;
}
.section__wrapper--blog--01 .card__img--blog--01 {
    margin-bottom: 10px;
}
.section__wrapper--blog--01 .card__subttl--blog--01 {
    margin-bottom: 7px;
}
.section__wrapper--blog--01 .swiper__wrap--pagination {
    margin: 0px auto 50px;
}
.section__wrapper--blog--01 .content__btn--blog--01 a {
    font-size: 16px;
    font-weight: 700;
    color: var(--page-main-color);
    border: 1px solid var(--page-sub-color);
}
.section__wrapper--blog--01 .content__icon--btn--01 {
    color: var(--page-sub-color);
}
.section__wrapper--blog--01 .swiper-button-prev, 
.section__wrapper--blog--01 .swiper-button-next {
    color: var(--page-sub-color);
}



/* contact--03 */
.l-main .section__wrapper--contact--03 {
    background-color: #E69D2A;
}
.section__wrapper--contact--03 .section__ttl {
    color: #fff;
    margin-bottom: 33px;
}
.section__wrapper--contact--03 .section__ttl span {
    color: #fff;
}
.section__wrapper--contact--03 .content__btn--contact--mail a {
    background-color: #E69D2A;
    justify-content: flex-start;
    padding-left: 49px;
}
.section__wrapper--contact--03 .content__btn--contact--line a {
    justify-content: flex-start;
    padding-left: 42px;
}
.section__wrapper--contact--03 .content__wrap--contact--03  {
    gap: 30px;
}
.section__wrapper--contact--03 .content__wrap--contact--03 .content__block--contact--03 {
    border-radius: 4px;
    height: 170px;
}
.section__wrapper--contact--03 .content__wrap--contact--03 .content__block--contact--03:first-of-type {
    padding: 31px 40px;
}
.section__wrapper--contact--03 .content__txt--tel {
    font-size: 36px;
    font-weight: 700;
    color: #333331;
    letter-spacing: 0.01em;
}
.section__wrapper--contact--03 .content__icon--tel {
    width: 26px;
    height: 26px;
    color: var(--page-main-color);
}
.section__wrapper--contact--03 .content__ttl--contact--03.contact--tel {
    margin-bottom: 12px;
}
.content__info--contact--03 {
    justify-content: center;
}