/*
Theme Name: CAT Child
Version: 1.1
Template: cat-so01
*/


/************************************
変数
*************************************/
:root{
	--color_main: #AA8800;
	--color_text: #4A5357;
	--color_bg_glay: #fcfdfd;
	--text_mincho: 'Shippori Mincho', serif;
	--text_sans: 'Noto Sans JP', sans-serif;
}

/************************************
共通
*************************************/
body{color: var(--color_text); font-family: 'Noto Sans JP', sans-serif; line-height: 2; letter-spacing: 0.05em;}

h1,h2,h3,h4{font-family: var(--text_mincho); color: var(--main-color); font-weight: 500;}

.inner{width: 87.2%; max-width: 1080px; margin: 0 auto;}

.mincho{font-family: var(--text_mincho);}
.font-big{font-size: 1.2em;}
.font-mini{font-size: 0.8em;}
.font-red{color: #ff0000;}
a.btn{display: inline-block; background-color: var(--main-color); width: 100%; max-width: 440px; border-radius: 3px; padding: 1.6875em 3.75em; box-shadow: 0 4px 16px 0px #a6a6a6; text-align: center; color: #fff; font-family: var(--text_mincho); line-height: 1.5; transition: opacity 0.2s; position: relative;}
a.btn:before{content: "\f061"; font-family: "Font Awesome 6 Free"; font-weight: 800; position: absolute; top: 50%; right: 1.6875em; transform: translatey(-50%);}
a.btn:hover{color: #fff; opacity: 0.7;}

.cf7-acceptance{margin: 40px 0; text-align: center;}

i.fa-youtube{color: #ff0000;}
i.fa-x-twitter{color: #0f1419;}
i.fa-tiktok{color: #000000; text-shadow: -1px -1px 0 #25F4EE, 1px 1px 0 #FE2C55;}


/************************************
ヘッダー
*************************************/
#header{height: 90px;}
.header__inner{height: 100%;}
.header__menu-list > li{padding: 0; margin-right: 40px;}
.header__menu-list li a{padding: 0 ; color: var(--color_text); position: relative;}
.header__menu-list li a::after{content: ''; position: absolute; bottom: -5px; left: 50%; width: 0; height: 1px; background-color: var(--main-color); transition: width 0.3s ease, left 0.3s ease;}
.header__menu-list li a:hover::after {width: 100%; left: 0;}
.header__menu-list li.current-menu-item a,
.home .header__menu-list li:first-child a{color: var(--main-color); position: relative;}
.header__menu-list li.current-menu-item a::after,
.home .header__menu-list li:first-child a::after{content: ''; position: absolute; bottom: -5px; left: 0; width: 100%; height: 1px; background-color: var(--main-color);}


/************************************
トップ
*************************************/
.home h2{margin-bottom: 52px; font-size: 32px; text-align: center;}
.home h2 .en{display: block; font-size: 0.4375em;}

.hero__wrap{margin-top: 90px;}
.hero__inner{padding-left: 0;}
.hero__cover{width: 1080px; height: 24%; background-color: var(--main-color); opacity: 0.8; top: auto; right: auto; bottom: 15%; left: 0;}
.hero__img img{width: 100%; height: 700px; object-position: 50% 40%;}
.hero__content{ color: #fff; font-weight: 500; left: 150px;}
.hero__main-text{font-size: 48px; line-height: 1.3; font-weight: 500;}
.hero__sub-text{font-size: 28px;}

.ms{width: 100%; background: linear-gradient(90deg, rgba(244,245,246,0), rgba(244,245,246,1), rgba(244,245,246,0)); padding: 120px 0 64px;}
#msSlider .splide__slide{width: 198px !important; flex: 0 0 auto; font-size: 14px;}
#msSlider .ms-thum{width: 100%;}
#msSlider .ms-thum img{width: 100%; aspect-ratio: 1 / 0.667; object-fit: cover; border: 1px solid #ddd;}
.ms__link{margin-top: 64px; text-align: center;}

.philosophy{padding: 120px 0 124px; font-size: 18px; text-align: center;}
.philosophy h2{font-size: 40px;}
.philosophy h3{font-size: 32px;}
.philosophy p + h3{margin: 64px 0 24px;}
.philosophy__flex{display: flex; justify-content: space-between; gap: 3.704%; counter-reset: box-counter;}
.philosophy__flex .box{width: 22.222%; padding: 2.778% 3.056%; border: 1px solid var(--main-color); text-align: left; position: relative;}
.philosophy__flex .box::before{content: counter(box-counter, decimal-leading-zero); counter-increment: box-counter; position: absolute; top: -16px; left: -16px; width: 56px; height: 56px; background-color: var(--main-color); color: #fff; font-family: var(--text_mincho); border-radius: 50%; display: flex; align-items: center; justify-content: center;}
.philosophy__flex .box p{margin-bottom: 0;}

/*.bg-para{background-attachment: fixed; background-size: cover; background-position: center; width: 100%; height: 380px;}*/

.business{padding: 120px 0 124px;}
.business h2{font-size: 40px;}
.business__bg{width: 100%; background-size: cover; background-position: center; padding: 120px 0;}
.business__box{margin-bottom: 120px;}
.inner .business__box:last-child{margin-bottom: 0;}
.business__box h3{margin-bottom: 48px; font-size: 32px; text-align: center;}
.business__box h3 .num{background-color: var(--main-color); display: inline-block; padding: 0.25em 0.325em 0.40em; margin-right: 0.25em; border-radius: 50%; color: #fff; line-height: 1;}
.business__box .flex{display: flex; gap: 9%;}
.business__box .flex.rev{flex-direction: row-reverse;}
.business__box .flex .image{width: 50%}
.business__box .flex .text{width: 41%}
.business__box .flex .text ul{display: flex; gap: 30px; flex-wrap: wrap; margin-top: 30px;}
.business__box .flex .text ul li{font-size: 32px; transition: opacity 0.3s;}
.business__box .flex .text ul li:hover{opacity: 0.7;}

/************************************
フッター
*************************************/
.cta{width: 100%; height: 390px; background-size: cover; background-position: center; position: relative;}
.cta .inner{height: 100%; display: flex; justify-content: flex-end; position: absolute; top : 0; left: 50%; transform: translatex(-50%);}
.cta .inner .contents{width: 50%; background-color: rgba(244, 245, 246, 0.8); padding: 40px 64px; display: flex; justify-content: center; align-items: center; flex-direction: column; color: #4A5357; font-size: 24px; line-height: 1.5;}
.cta .inner .contents hr{width: 100%; margin: 36px 0;}

/*.cta .inner .contents .link a,
.contact__box .link a{padding-left: 56px; color: #4A5357; position: relative;}
.cta .inner .contents .link a::before,
.contact__box .link a::before{content: "\f095"; font-family: "Font Awesome 6 Free"; font-weight: 800; position: absolute; top: 50%; left: 0.35em; transform: translatey(-50%); color: var(--main-color); font-size: 28px;}
.cta .inner .contents .link a::after,
.contact__box .link a::after{content: ""; width: 1.75em; height: 1.75em; border: 2px solid var(--main-color); border-radius: 50%; position: absolute; top: 50%; left: 0; transform: translatey(-50%); font-size: 28px;}
.cta .inner .contents .link.tel,
.contact__box .link.tel{font-size: 40px;}
.cta .inner .contents .link.tel .info,
.contact__box .link.tel .info{display: block; padding-left: 18px; font-size: 12px; text-align: center;}
.cta .inner .contents .link.mail,
.contact__box .link.mail{font-size: 28px;}
.cta .inner .contents .link.mail a::before,
.contact__box .link.mail a::before{content: "\f0e0";}
.cta .inner .contents .link.mail i,
.contact__box .link.mail i{margin-left: 10px; color: var(--main-color); font-size: 0.5em; position: relative; top: -10px;}*/
.cta .inner .contents .link a,
.contact__box .link a{padding-left: 56px; color: #4A5357; position: relative;}
.cta .inner .contents .link a::before,
.contact__box .link a::before{content: ""; background: url('https://demo1.step1-server.com/wp-content/uploads/2025/06/icon_phone.svg') no-repeat; width: 49px; height: 49px; position: absolute; top: 50%; left: 0em; transform: translatey(-50%); color: var(--main-color); font-size: 28px;}
.cta .inner .contents .link.tel,
.contact__box .link.tel{font-size: 40px;}
.cta .inner .contents .link.tel .info,
.contact__box .link.tel .info{display: block;padding-left: 18px;font-size: 12px;text-align: center;}
.cta .inner .contents .link.mail,
.contact__box .link.mail{font-size: 28px;}
.cta .inner .contents .link.mail a::before{background: url('https://demo1.step1-server.com/wp-content/uploads/2025/06/icon_mail.svg') no-repeat; width: 42px; height: 42px; left: 0.35em;}
.contact__box .link.mail a::before{background: url('https://demo1.step1-server.com/wp-content/uploads/2025/06/icon_mail.svg') no-repeat;}
.cta .inner .contents .link.mail i,
.contact__box .link.mail i{margin-left: 10px; color: var(--main-color); font-size: 0.5em; position: relative; top: -10px;}

footer{background-color: var(--main-color);}
.footer__inner{width: 87.2%; max-width: 1080px; padding: 60px 0 68px;}
#footer__nav{margin-bottom: 40px;}
#footer__nav ul{gap: 40px; flex-wrap: wrap;}
#footer__nav ul li{padding: 0;}
#footer__nav ul li a{color: #fff;}
#footer__nav02 ul{display: flex; justify-content: center; gap: 40px; flex-wrap: wrap; font-size: 1.4rem;}
#footer__nav02 ul li{padding: 0;}
#footer__nav02 ul li a{color: #fff;}
footer hr{width: 100%; background-color: #fff;}
.footer__info{width: 87.2%; max-width: 1080px; margin: 0 auto; padding: 40px 0; display: flex; gap: 40px; align-items: center; color: #fff;}
.footer__info a{color: #fff;}
.footer__info .left{width: calc(50% - 20px); display: flex; gap: 40px; align-items: center;}
.footer__info .left .c-name{font-size: 14px;}
.footer__info .left .c-name .address{font-size: 12px;}
.footer__logo,
.footer__logo__text{margin-top: 0;}
.footer__info .right{width: calc(50% - 20px); font-size: 12px; text-align: right;}

/************************************
固定ページ
*************************************/
.page:not(.home) h2 {position: relative; font-family: 'Shippori Mincho', serif; font-size: 28px; font-weight: 500; line-height: 1.5; margin: 0 0 30px; padding: 24px 0 0; color: var(--main-color); border: none;}
.page:not(.home) h2::before{content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 1px; background: linear-gradient(90deg, var(--main-color) 40px, #D0D6D8 40px);}

.page__hero-img{width: 60%; margin-left: auto;}
.page__hero-img img{height: 240px;}
.page-id-115 .page__hero-img img{object-position: 50% 30%;}
.page__inner{max-width: 1080px; padding: 80px 0;}
.page__hero-cover{position: absolute; top: 0; left: 0; width: 55%; height: 100%; background: linear-gradient(to left,rgba(255,255,255,0) 0, #ffffff 25%); opacity: 1;}
.page__hero-content.middle{width: 87.2%; max-width: 1080px; text-align: left;}
.page__hero-content h1{font-size: 48px;}

#breadcrumbs{background-color: transparent;}
.breadcrumbs__inner{width: 87.2%; max-width: 1080px; padding: 12px 0 0; color: #848D91; font-size: 11px;}
.breadcrumbs__inner ul{justify-content: flex-end;}
.breadcrumbs__inner ul li{margin-right: 0;}
.breadcrumbs__inner ul li:after{content: "/"; margin: 0 10px; right: 0;}
.breadcrumbs__inner a{color: #848D91; text-decoration: underline;}

.page__inner a{color: var(--main-color); text-decoration: underline;}
.page__inner a:hover{text-decoration: none;}

.wp-block-table table{text-align: left; line-height: 1.5;}
.wp-block-table table th,
.wp-block-table table td{border: 1px solid #D0D6D8;}
.wp-block-table table th{background-color: #F4F5F6; width: 19%; padding: 1em; font-weight: 400;}
.wp-block-table table td{padding: 1em;}

.wp-block-query{margin-top: 60px;}
.wp-block-query ul{margin-left: 0; list-style: none;}
.wp-block-query ul li{width: 330px; margin-bottom: 70px;}
.wp-block-group{width: 100%; padding: 0 !important;}
.wp-block-post-featured-image{margin-bottom: 30px;}
.wp-block-post-featured-image img{width: 100%; height: 250px; object-fit: cover;}
.wp-block-post-date{font-size: 14px;}
h3.wp-block-post-title{border-left: none; padding: 0; margin: 0; color: var(--color_text); font-size: 16px; font-family: var(--font_sans);}
.wp-block-query-no-results{margin-bottom: 70px;}

/*** メディア実績用 ***/
.ml__flex{display: grid; grid-template-columns: repeat(3, 330px); gap: 70px 45px; margin: 60px 0 70px;}
.ml__flex .box{width: 330px;}
.ml__flex .box a{text-decoration: none; color: var(--text_color); transition: opacity 0.3s;}
.ml__flex .box a:hover{opacity: 0.7;}
.ml__flex .box-thumb{width: 100%; margin-bottom: 30px;}
.ml__flex .box-thumb img{width: 100%; height: 250px; object-fit: cover;}
.ml__flex .box-meta{font-size: 14px;}
.ml__flex .box-meta time{display: inline-block; margin-right: 5px;}
.ml__flex .box-decoration{display: inline-block; padding: 0 0.5em; border-radius: 3px; font-size: 0.8em; font-weight: bold; position: relative; bottom: 1px;}
.ml__flex .box-decoration p{margin-bottom: 0;}
.ml__flex h3.box-title{border-left: none; padding: 0; margin: 0; color: var(--color_text); font-size: 16px; font-family: var(--font_sans);}
/*** メディア実績用（ここまで） ***/

/*** お知らせ用 ***/
.page-id-77 .wp-block-query{margin-top: 0;}
.page-id-77 .wp-block-query ul li{width: 100%; margin: 0; padding: 32px 0 24px; border-bottom: 1px solid #E3E7E9;}
.page-id-77 .wp-block-post-date{display: inline-block; font-size: 16px;}
.page-id-77 .taxonomy-category{display: inline-block; background-color: #F4F5F6; padding: 1px 8px 2px; margin: 0 0 0 12px; font-size: 12px; text-align: center;}
.page-id-77 .taxonomy-category a{color: var(--color_text); text-decoration: none; pointer-events: none;}
.page-id-77 h2.wp-block-post-title{padding: 0; margin: 8px 0 0; font-size: 16px; color: var(--color_text); font-family: var(--font_sans);}
.page-id-77 h2.wp-block-post-title::before{display: none;}
/*** お知らせ用（ここまで） ***/

.wp-block-query-pagination{margin-top: 60px;}
.wp-block-query-pagination-numbers .page-numbers{background-color: var(--main-color); padding: 7px; color: #fff; line-height: 1; color: #fff; font-size: 12px; font-weight: bold; text-decoration: none; transition: opacity 0.3s;}
.wp-block-query-pagination-numbers .page-numbers:hover{opacity: 0.7;}
.wp-block-query-pagination-numbers .page-numbers.dots:hover{opacity: 1;}
.wp-block-query-pagination-numbers .page-numbers.current{background-color: #999;}

.contact__box{background-color: rgba(244, 245, 246, 0.8); height: 100%; padding: 40px 64px; display: flex; justify-content: center; align-items: center; flex-direction: column; color: #4A5357; font-size: 24px; line-height: 1.5;}
.contact__box a{text-decoration: none;}

ul.wsp-pages-list{margin-left: 0; list-style: none;}
ul.wsp-pages-list li{padding: 10px 0; border-bottom: 1px solid #ddd; line-height: 1.5; font-weight: bold;}

.snow-monkey-form{max-width: 820px; margin: 0 auto; font-family: var(--text_mincho);}
ol.smf-progress-tracker{margin: 0 0 60px; padding: 0;}
.smf-progress-tracker__item{flex-direction: row; justify-content: center; background-color: #E3E7E9; padding: 20px 0; line-height: 1.3; font-weight: 400; text-align: center; font-size: 22px; overflow: hidden;}
.smf-progress-tracker__item::before,
.smf-progress-tracker__item::after{content: ""; background-color: transparent; width: 0; height: 0; border-style: solid; border-top: 50px solid transparent; border-bottom: 50px solid transparent; border-right: 0; position: absolute; top: 50%; left: auto;transform: translateY(-50%);}
.smf-progress-tracker__item::before{border-left: 11px solid #fff; right: 0;}
.smf-progress-tracker__item::after{border-left: 11px solid #E3E7E9; right: 4px;}
.smf-progress-tracker__item.smf-progress-tracker__item--complete::before,
.smf-progress-tracker__item.smf-progress-tracker__item--complete::after{display: none;}
.smf-progress-tracker__item[aria-current="true"]{background-color: #4A5357; color: #fff;}
.smf-progress-tracker__item[aria-current="true"]::before{display: block; background-color: #E3E7E9;}
.smf-progress-tracker__item[aria-current="true"]::after{border-left: 11px solid #4A5357;}
.smf-progress-tracker__item__number{display: inline-block; background-color: transparent; width: auto; height: auto; border-radius: 0; padding-left: 30px; margin-right: 16px; font-size: 14px; color: var(--color_text);}
.smf-progress-tracker__item__number::before{content: "Step"; position:absolute; left: 0;}
.smf-progress-tracker__item[aria-current=true] .smf-progress-tracker__item__number{background-color: transparent; font-weight: 400; color: #fff;}
.smf-progress-tracker__item__text{margin-top: 0; color: var(--color_text);}
.smf-progress-tracker__item[aria-current=true] .smf-progress-tracker__item__text{font-weight: 400; color: #fff;}
.smf-form--simple-table .smf-item{width: 100%; border-top: 1px solid  #ddd; border-bottom: 1px solid  #ddd; padding: 32px 0;}
.smf-item__label{font-weight: 500;}
.smf-form input[type="text"].smf-text-control__control,
.smf-form input[type="tel"].smf-text-control__control,
.smf-form input[type="email"].smf-text-control__control,
.smf-form .smf-textarea-control__control{width: 100%; background: #F4F5F5; padding: 14px 16px; border: 1px solid #ECEFEF; border-radius: 0; box-sizing: border-box; font-size: 16px; font-family: var(--text_mincho); -webkit-appearance: none; -moz-appearance: none; appearance: none; box-shadow: none;}
.smf-radio-button-control__label,
.smf-checkbox-control__label{line-height: 1.3;}
.smf-form input[name="your-name"].smf-text-control__control,
.smf-form input[name="your-name-kana"].smf-text-control__control{width: 40%;}
.smf-form input[name="your-company"].smf-text-control__control,
.smf-form input[name="your-company-kana"].smf-text-control__control,
.smf-form input[name="your-position"].smf-text-control__control,
.smf-form input[name="your-tel"].smf-text-control__control,
.smf-form input[type="email"].smf-text-control__control{width: 60%;}
.smf-form--simple-table+.smf-action{margin-top: 40px;}
.smf-action .smf-button-control__control{display: block; width: 400px; height: 66px; border: 1px solid var(--main-color); margin: 0 auto; font-size: 16px; font-family: 'Shippori Mincho', serif; font-weight: 500; color: var(--main-color); line-height: 1.6; text-align: center; background: transparent; border-radius: 0;}
input::placeholder{color: #818B8B;}
.smf-action .smf-button-control__control[data-action="back"]{display: inline-block; width: 48%; border-color: #818B8B; color: #818B8B;}
.smf-action .smf-button-control__control[data-action="complete"]{display: inline-block; width: 48%;}
.custom-error-message{margin-top: 12px;}

/************************************
レスポンシブ
*************************************/
@media screen and (max-width:1280px) {
	.hero__cover{width: 962px;}
	.hero__content{left: 6.4%;}
	.cta .inner .contents{width: 60%;}
}
@media screen and (max-width:1080px) {
	.page__inner{width: 100%; padding-right: 6.4%; padding-left: 6.4%;}
	.ml__flex{display: flex; gap: 40px 2%; flex-wrap: wrap;}
	.ml__flex .box{width: 49%;}
	
	.contact__box{padding: 40px 1%;}
	.contact__box .link.tel{font-size: 36px;}
	.contact__box .link.mail{font-size: 24px;}
	.contact__box .link a{padding-left: 52px;}
	.contact__box .link a::before{width: 44px; height: 44px;}
	/*.page-id-92 .wp-container-core-columns-is-layout-9d6595d7{flex-direction: column;}*/
}
@media screen and (max-width:1000px) {
	.pc{display: none;}
    .sp{display: block;}
	
	.header__inner{padding: 0 3%;}
	.toggle_btn{right: 0;}
	.toggle_btn::before{content: "MENU"; font-size: 10px; color: var(--main-color); font-family: var(--text_sans); position: absolute; bottom: -14px; left: 50%; transform: translateX(-50%);}
	#navHam.open .toggle_btn::before{content: "CLOSE"; color: #fff;}
	.toggle_btn span{height: 1px; background-color: var(--main-color);}
	.toggle_btn span:nth-child(1){top: 0;}
	.toggle_btn span:nth-child(2){top: 10px;}
	.toggle_btn span:nth-child(3){top: 20px;}
	
	.hero__cover{width: 90%; height: auto;}
	.hero__content{padding: 1.5em 6.4% 2em; position: relative; top: auto; right: auto; bottom: auto; left: auto;}
	.hero__sub-text{font-size: clamp(14px,2.4vw,28px);}
	.hero__main-text{font-size: clamp(24px,4vw,48px);}
	
	.philosophy__flex{flex-wrap: wrap; gap: 40px 4%;}
	.philosophy__flex .box{width: 48%;}
	.philosophy__flex .box::before{width: 40px; height: 40px; font-size: 14px;}
	
	.business__box .flex,
	.business__box .flex.rev{flex-direction: column;}
	.business__box .flex .image{width: 100%; margin-bottom: 40px;}
	.business__box .flex .text{width: 100%;}
	
	.cta{height: 308px;}
	.cta .inner{width: 100%;}
	.cta .inner .contents{width: 100%; padding: 4% 6.4%;}
	
	.footer__inner{padding: 34px 0 28px;}
	#footer__nav{margin-bottom: 0;}
	#footer__nav ul,
	#footer__nav02 ul{gap: 0 4%; margin-bottom: 0;}
	#footer__nav ul li,
	#footer__nav02 ul li{width: auto;}
	.footer__info{flex-direction: column;}
	.footer__info .left{width: 100%;}
	.footer__info .right{width: 100%; text-align: center;}
	.footer__logo, .footer__logo__text{width: 30%;}
	.footer__info .left .c-name{width: 70%;}
}
@media screen and (max-width:896px) {
	.hero__main-text{margin-bottom: 0;}
	
	.contact__box{padding: 40px 1%;}
	
	.smf-form--simple-table .smf-item{flex-direction: column;}
	.smf-form--simple-table .smf-item__col--label{flex: 0; width: 100%; max-width: 100%; margin-bottom: 10px; padding: 0;}
	.smf-form--simple-table .smf-item__col--controls{flex: 0; width: 100%; max-width: 100%;}
}
@media screen and (max-width:480px) {
	#header{height: 64px;}
	.header__inner{padding: 0 4%;}
	.toggle_btn::before{bottom: -10px;}
	.toggle_btn span{width: 22px; left: 50%; transform: translateX(-50%);}
	.toggle_btn span:nth-child(1){top: 3px;}
	.toggle_btn span:nth-child(2){top: 10px;}
	.toggle_btn span:nth-child(3){top: 17px;}
	.open .toggle_btn span:nth-child(1){transform: translate(-50%, 7px) rotate(-315deg);}
	.open .toggle_btn span:nth-child(3){transform: translate(-50%, -7px) rotate(315deg);}
	.header__menu-list li.current-menu-item a::after, .home .header__menu-list li:first-child a::after{display: none;}
	
	.hero__wrap{margin-top: 64px;}
	.hero__img img{height: 100vw;}
	.hero__cover{bottom: -15vw;}
	
	.home h2{font-size: 26px;}
	#msSlider .splide__slide{font-size: 12px;}
	.ml__flex h3.box-title{font-size: 14px;}
	.ms__link{width: 87.2%; margin-right: auto; margin-left: auto;}
	.philosophy{font-size: 16px;}
	.philosophy h2{font-size: 36px;}
	.philosophy h3{font-size: 24px;}
	.philosophy__flex{gap: 32px 0;}
	.philosophy__flex .box{width: 100%; padding: 30px 33px;}
	.philosophy__flex .box::before{width: 56px; height: 56px; font-size: 20px;}
	.business{padding: 0 0 80px;}
	.business h2{margin-bottom: 30px; font-size: 36px;}
	.business__bg{padding: 80px 0;}
	.business__box{margin-bottom: 64px;}
	.business__box h3{display: flex;flex-direction: column;align-items: center;margin-bottom: 20px;font-size: 24px;}
	.business__box h3 .num{margin-right: 0; padding: 0.45em 0.525em 0.60em; font-size: 24px;}
	.business__box .flex .image{margin-bottom: 20px;}
	.business__box .flex .text ul{margin-top: 20px;}
	
	/*.cta{height: auto;}
	.cta .inner{position: relative;}
	.cta .inner .contents{padding: 40px 6.4%; font-size: clamp(12px, 4.8vw, 24px);}
	.cta .inner .contents .link.tel,
	.contact__box .link.tel{font-size: clamp(18px,10.666vw, 40px);}
	.cta .inner .contents .link a,
	.contact__box .link a{padding-left: 12.5vw;}
	.cta .inner .contents .link a::before,
	.contact__box .link a::before{font-size: clamp(14px, 6.4vw, 24px);}
	.cta .inner .contents .link a::after,
	.contact__box .link a::after{font-size: clamp(14px, 6.4vw, 24px);}
	.cta .inner .contents .link.mail,
	.contact__box .link.mail{font-size: clamp(14px, 6.4vw, 24px);}
	.cta .inner .contents hr{margin: 26px 0;}*/
	.cta{height: auto;}
	.cta .inner{position: relative;}
	.cta .inner .contents{padding: 40px 6.4%; font-size: 18px;}
	.cta .inner .contents .link.tel,
	.contact__box .link.tel{font-size: 36px;}
	.cta .inner .contents .link a,
	.contact__box .link a{padding-left: 49px;}
	.cta .inner .contents .link a::before,
	.contact__box .link a::before{width: 42px; height: 42px;}
	.cta .inner .contents .link.mail,
	.contact__box .link.mail{font-size: 22px;}
	.cta .inner .contents .link.mail a{padding-left: 50px;}
	.contact__box .link.mail a{padding-left: 42px;}
	.cta .inner .contents .link.mail a::before{width: 38px; height: 38px;}
	.contact__box .link.mail a::before{width: 40px; height: 40px;}
	.cta .inner .contents hr{margin: 26px 0;}
	
	.my-page{padding-top: 0;}
	.page__hero-img img{height: 200px;}
	.page:not(.home) h2{font-size: 24px;}
	.page__inner{padding-top: 40px; padding-bottom: 40px;}
	.ml__flex{margin: 30px 0 40px;}
	.ml__flex .box{width: 100%;}
	.ml__flex .box-thumb{margin-bottom: 20px;}
	.ml__flex .box-thumb img{height: auto; aspect-ratio: 1 / 0.75;}
	
	.page-id-77 .wp-block-post-date{font-size: 12px;}
	.page-id-77 .taxonomy-category{margin-left: 10px; padding: 0 6px; font-size: 10px; position: relative; bottom: 1px;}
	.page-id-77 h2.wp-block-post-title{margin-top: 6px; font-size: 14px;}
	
	ol.smf-progress-tracker{margin-bottom: 30px;}
	.smf-progress-tracker__item{font-size: 16px;}
	.smf-progress-tracker__item__number{margin-right: 5px; font-size: 12px;}
	.smf-form input[name="your-name"].smf-text-control__control,
	.smf-form input[name="your-name-kana"].smf-text-control__control,
	.smf-form input[name="your-company"].smf-text-control__control,
	.smf-form input[name="your-company-kana"].smf-text-control__control,
	.smf-form input[name="your-position"].smf-text-control__control,
	.smf-form input[name="your-tel"].smf-text-control__control,
	.smf-form input[type="email"].smf-text-control__control{width: 100%;}
	.smf-action .smf-button-control__control{width: 100%; max-width: 400px;}
}
@media screen and (max-width:320px) {
	.cta .inner .contents .link.tel, .contact__box .link.tel{font-size: 30px;}
	.cta .inner .contents .link a, .contact__box .link a{padding-left: 36px;}
	.cta .inner .contents .link a::before, .contact__box .link a::before{width: 32px; height: 32px;}
	.cta .inner .contents .link.tel .info, .contact__box .link.tel .info{padding-left: 32px; font-size: 10px;}
	.cta .inner .contents .link.mail, .contact__box .link.mail{font-size: 18px;}
	.contact__box .link.mail a{padding-left: 36px;}
	.contact__box .link.mail a::before{width: 32px; height: 32px;}
	.cta .inner .contents .link.mail a{padding-left: 46px}
	.cta .inner .contents .link.mail a::before{width: 32px; height: 32px;}
}

/************************************
アニメーション
*************************************/
/*.hero__wrap,
.animate__wrap{overflow: hidden;}

.animate01{position: relative;}
.animate01::before{content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: #FFF; z-index: 2; transition: .5s;}
.animate01.show::before{transform: translateX(100%);}
.animate01 img{opacity: 0; transition: .5s;}
.animate01.show img{opacity: 1;}
.animate01 p,
.animate01 h1,
.animate01 h2,
.animate01 .sub-title{opacity: 0; transform: translateX(-40px); transition: .5s; transition-delay: .5s; z-index: 1; overflow: hidden;}
.animate01.show p,
.animate01.show h1,
.animate01.show h2,
.animate01.show .sub-title{opacity: 1; transform: translateX(0);}
.animate01 p::before,
.animate01 h1::before,
.animate01 h2::before,
.animate01 .sub-title::before{content: ''; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: #FFF; transition: .5s; transition-delay: 1s;}
.animate01.show p::before,
.animate01.show h1::before,
.animate01.show h2::before,
.animate01.show .sub-title::before{transform: translateX(101%);}

.animate02 img{opacity: 0; transform: translateY(40px); transition: .5s;}
.animate02.show img{opacity: 1; transform: translateY(0);}
.animate02 .animate__content{opacity: 0; transform: translateX(40px); transition: .5s; transition-delay: .5s;}
.animate02.show .animate__content{opacity: 1; transform: translateX(0);}*/


