@charset "UTF-8";


body{
	font-family: YakuHanRP, "Zen Maru Gothic", "M PLUS Rounded 1c", "游ゴシック体", "Yu Gothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
	--wp--preset--color--sm-text: #333;
}

.pc{
	display: none !important;
}

.sp{
	display: block !important;
}

.l-header--sticky-sm{
	box-shadow: none;
}

.l-header__content{
	padding-top: 10px;
	padding-bottom: 0;
	height: 125px;
}

.l-header .c-container, .c-fluid-container{
	padding: 0 15px;
}

.l-header .l-header__content .l-center-header__row > .c-row{
	align-items: flex-end !important;
}

.u-invisible-wall{
	display: none;
}

.l-header__content .site-catch{
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	text-align: left;
	margin: 0 0 3px !important;
}

.l-header .l-header__content .l-center-header__row > .c-row > .c-row__col.u-text-center{
	text-align: left !important;
}

.c-site-branding{
	margin: 0 0 0 -5px !important;
}

.c-site-branding__title{
	line-height: 1;
}

.c-site-branding__title .custom-logo{
	width: 100%;
	max-width: 300px;
}

.c-hamburger-btn{
	color: #333;
	margin-bottom: 12px;
}

.c-hamburger-btn__bars{
	height: 20px;
	width: 30px;
}

.l-header .c-hamburger-btn__bar{
	background-color: #333;
}

.c-hamburger-btn__bar:nth-of-type(2){
	top: 8px;
}

.c-hamburger-btn__bar:nth-of-type(3){
	top: 16px;
}

.c-drawer__item>a{
	font-size: 16px;
	font-weight: 500;
}

.p-header-content--sm{
	padding-top: 0;
}

.p-header-content .c-container{
	padding: 0 15px;
}

.l-contents-bottom-widget-area {
    margin-top: 0 !important;
}

.l-contents-bottom-widget-area>:not(:first-child) {
	margin-top: 0 !important;
}

.l-footer{
	background: #feecd2;
	border-top: none;
}

.l-footer-widget-area{
	background: #feecd2;
	padding-top: 30px !important;
	padding-bottom: 0;
}

.l-footer-widget-area .c-container{
	padding: 0 15px;
}

.l-footer-widget-area .l-footer-widget-area__item.c-row__col{
	margin-bottom: 0 !important;
}

.l-footer-widget-area .footer-menu{
	list-style: none;
	padding: 0;
	margin: 0;
}

.l-footer-widget-area .footer-menu li{
	margin: 0 0 5px;
	text-align: center;
}

.l-footer-widget-area .footer-menu li a{
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
	color: #333;
	text-decoration: none;
	font-feature-settings: "palt";
	transition: 0.3s;
}

.l-footer-widget-area .footer-menu li a:hover,
.l-footer-widget-area .footer-menu li a:active,
.l-footer-widget-area .footer-menu li a:focus{
	text-decoration: underline;
}

.l-footer--default .l-footer-widget-area .footer-info-conts > .c-row > .c-row__col:first-child{
	margin-bottom: 20px !important;
}

.l-footer-widget-area .footer-logo{
	width: 300px;
	line-height: 1;
	margin: 25px auto 0 !important;
}

.l-footer--default .l-footer-widget-area .footer-contact-conts > .c-row > .c-row__col:first-child{
	margin-bottom: 0 !important;
}

.l-footer-widget-area p{
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	margin: 0!important;
}

.l-footer--default .l-footer-widget-area .tel{
	width: fit-content;
	margin: 0 auto !important;
	padding: 0 0 0 25px;
	position: relative;
}

.l-footer--default .l-footer-widget-area .tel a{
	font-size: 36px;
	font-weight: 700;
	line-height: 1;
	color: #333;
	text-decoration: none;
}

.l-footer--default .l-footer-widget-area .tel::before{
	position: absolute;
	content: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/common/tel.svg);
	width: 22px;
	height: 22px;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	margin: auto;
}

.l-footer--default .l-footer-widget-area .tel-text{
	font-size: 16px;
	font-weight: 700;
}

.l-footer-widget-area .smb-buttons{
	margin-top: 10px !important;
	max-width: 230px;
}

.l-footer-widget-area .footer-contact-btn{
	max-width: 230px;
}

.l-footer-widget-area .footer-contact-btn .smb-btn{
	font-size: 16px;
	font-weight: 700;
	padding-top: 12px !important;
	padding-bottom: 12px !important;
}

.c-copyright--inverse{
	color: #333;
	background: #feecd2;
}

.c-page-top{
	background: #333;
}

.smb-section{
	--smb-section--color: #333;
}

.smb-section .c-container{
	padding-left: 15px;
	padding-right: 15px;
}


/* ローディングスクリーンのスタイル */
.my_loading {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100vw;
    height: 100vh;
    background-color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    animation: my_fadeOutBackground 1.0s 1.5s forwards;
}

.my_loading img {
    opacity: 0;
    animation: my_logo_fade 2s 0.1s forwards;
    width: 280px; /* ロゴのサイズ（スマホ） */
}

@media screen and (min-width: 1024px) {
    .my_loading img {
        width: 450px; /* ロゴのサイズ（PC） */
    }
}

/* 背景のフェードアウトアニメーション */
@keyframes my_fadeOutBackground {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}

/* ロゴのフェードイン・フェードアウトアニメーション */
@keyframes my_logo_fade {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    60% {
        opacity: 1;
        transform: translateY(0);
    }
    100% {
        opacity: 0;
    }
}


/* hide reCAPTCHA v3 badge */
.grecaptcha-badge { visibility: hidden; }


/* 固定ページ共通 */

.page .c-entry__header{
	display: none !important;
}

.page .page-header{
	height: 180px;
	position: relative;
}

.page .page-header .page-title{
	font-size: 44px;
	font-weight: 400;
	line-height: 1.1;
	margin-bottom: 0 !important;
}

.page .page-header .page-title .ja{
	display: block;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.3;
	margin: 3px 0 0;
}


.page .smb-section{
	padding: 60px 0;
	margin-top: 0 !important;
}

.page .my-breadcrumbs{
	padding: 10px 0;
}

.my-breadcrumbs{
	padding: 10px 0;
	margin-top: 0 !important;
}

.my-breadcrumbs .p-breadcrumbs-wrapper{
	margin-top: 0 !important;
}

.my-breadcrumbs p{
	display: none !important;
}

.page .smb-section h2{
	font-size: 30px;
	font-weight: 700;
	line-height: 1.3;
	background: none;
	border-left: none;
	padding: 0;
	margin: 0 0 30px;
	font-feature-settings: "palt";
}

.page .smb-section h2 .en{
	display: block;
	font-size: 18px;
	margin-bottom: 5px;
}

.page .smb-section p{
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
}

.page .smb-section figure{
	margin-top: 0 !important;
}

.page .smb-section .smb-buttons{
	max-width: 220px;
	margin: 20px 0 0;
}

.page .smb-section .smb-btn{
	font-size: 18px;
	font-weight: 700;
	padding-top: 6px;
	padding-bottom: 6px;
	font-feature-settings: "palt";
}



/* TOPページ */

.home .mv{
	height: 450px;
}

.home .usage-status-sec{
	padding: 40px 0;
}

.home .usage-status-sec::after{
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/common/textured-stripes.png) center top repeat;
	background-size: 256px 256px;
	margin: auto;
	z-index: 0;
}

.home .usage-status-sec .smb-section__inner{
	position: relative;
	z-index: 5;
}

.home .usage-status-sec h2{
	font-size: 26px;
	margin: 0 0 25px;
}

.home .usage-status-sec .usage-status-table01{
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 0;
	border: 2px solid #008071;
	border-radius: 8px;
	overflow: hidden;
}

.home .usage-status-sec .usage-status-table01 th,
.home .usage-status-sec .usage-status-table01 td{
	padding: 0.75em;
	border: none;
}

.home .usage-status-sec .usage-status-table01 th{
	width: 235px;
	font-size: 18px;
	line-height: 1.4;
	background: #d5ebe1;
}

.home .usage-status-sec .usage-status-table01 th a{
	color: #333;
	transition: 0.3s;
}

.home .usage-status-sec .usage-status-table01 th a:hover,
.home .usage-status-sec .usage-status-table01 th a:active,
.home .usage-status-sec .usage-status-table01 th a:focus{
	color: #e88c3e;
}

.home .usage-status-sec .usage-status-table01 td{
	line-height: 1;
	background: #fff;
	text-align: center;
}

.home .usage-status-sec .usage-status-table02{
	width: 100%;
	max-width: 800px;
	margin: 30px auto 0;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
}

.home .usage-status-sec .usage-status-table02 thead th{
	font-size: 18px;
	line-height: 1.3;
	color: #fff;
	background: #e88c3e;
	padding: 15px 5px;
	border-radius: 8px 8px 0 0;
}

.home .usage-status-sec .usage-status-table02 thead th:first-child{
	visibility: hidden;
}

.home .usage-status-sec .usage-status-table02 tbody th,
.home .usage-status-sec .usage-status-table02 tbody td{
	padding: 0.75em;
	border: none;
}

.home .usage-status-sec .usage-status-table02 tbody th{
	width: 145px;
	font-size: 18px;
	line-height: 1.4;
	background: #feecd2;
	border-left: 2px solid #e88c3e;
	border-bottom: 1px solid #e88c3e;
}

.home .usage-status-sec .usage-status-table02 tbody th .time{
	display: block;
	font-size: 16px;
}

.home .usage-status-sec .usage-status-table02 tbody tr:first-of-type th{
	border-top: 2px solid #e88c3e;
	border-radius: 8px 0 0 0;
}

.home .usage-status-sec .usage-status-table02 tbody tr:last-of-type th{
	border-radius: 0 0 0 8px;
	border-bottom: 2px solid #e88c3e;
}

.home .usage-status-sec .usage-status-table02 tbody td{
	line-height: 1;
	background: #fff;
	text-align: center;
	border-bottom: 1px solid #e88c3e;
}

.home .usage-status-sec .usage-status-table02 tbody tr:first-of-type td{
	border-top: 2px solid #e88c3e;
}

.home .usage-status-sec .usage-status-table02 tbody tr td:last-child{
	border-right: 2px solid #e88c3e;
}

.home .usage-status-sec .usage-status-table02 tbody tr:last-of-type td{
	border-bottom: 2px solid #e88c3e;
}

.home .usage-status-sec .usage-status-table02 tbody tr:last-of-type td:last-child{
	border-radius: 0 0 8px 0;
}

.home .usage-status-sec .usage-status-table01 td img,
.home .usage-status-sec .usage-status-table02 td img{
	width: 30px;
}

.home .top-about-sec{
	padding-top: 50px;
}

.home .top-about-sec .top-link-btn{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 0;
	max-width: 360px;
	margin: 0 auto 50px;
}

.home .top-about-sec .top-link-btn li{
	width: 50%;
	line-height: 1.3;
	text-align: center;
	margin: 0;
	padding: 3px 10px;
	border-right: 1px solid #e88c3e;
}

.home .top-about-sec .top-link-btn li:nth-child(odd){
	border-left: 1px solid #e88c3e;
}

.home .top-about-sec .top-link-btn li:nth-child(n+3){
	margin-top: 10px;
}

.home .top-about-sec .top-link-btn li a{
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	color: #333;
	transition: 0.3s;
}

.home .top-about-sec .top-link-btn li a:hover,
.home .top-about-sec .top-link-btn li a:active,
.home .top-about-sec .top-link-btn li a:focus{
	color: #e88c3e;
}

.home .top-about-sec .service-conts .c-row > .c-row__col:not(:last-child){
	margin-bottom: 0;
}

.home .top-about-sec .service-conts .c-row > .c-row__col:nth-child(n+2){
	margin-top: 50px;
}

.home .top-about-sec .service-conts .service-img{
	width: 67.7%;
	max-width: 400px;
	margin: 0 auto;
}

.home .top-about-sec .service-conts .service-img img{
	border-radius: 10px;
}

.home .top-about-sec .service-conts h2{
	font-size: 26px;
	line-height: 1.3;
	padding: 0;
	border-left: none;
	background: none;
	margin: 10px 0 15px;
}

.home .top-about-sec .service-conts p{
	line-height: 1.6;
	margin: 0;
}

.home .top-about-sec .service-conts .smb-btn{
	position: relative;
}

.home .top-about-sec .service-conts .smb-btn::after{
	position: absolute;
	content: "";
	display: block;
	top: 50%;
	transform: translateY(-50%);
	right: 15px;
	width: 0;
	height: 0;
	border-top: 7px solid transparent;
	border-bottom: 7px solid transparent;
	border-left: 12px solid #fff;
}

.home .top-about-sec .text-block{
	margin: 60px 0 0;
}

.home .top-about-sec .text-block.text-block01{
	padding: 60px 0;
	background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/about_back_sp.webp) center no-repeat;
	background-size: contain;
}

.home .top-about-sec .text-block h2.sec-title01{
	font-size: 36px !important;
}

.home .top-about-sec .text-block h2 .fukidashi{
	display: block;
	font-size: 20px;
	margin: 0 auto 10px;
	width: fit-content;
	letter-spacing: 0;
	position: relative;
}

.home .top-about-sec .text-block h2 .fukidashi::after{
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 35px;
  height: 2px;
  background-color: #e88c3e;
  -webkit-transform: rotate(-65deg);
  transform: rotate(-65deg);
}

.home .top-about-sec .text-block h2 .fukidashi::before{
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 35px;
  height: 2px;
  background-color: #e88c3e;
  -webkit-transform: rotate(65deg);
  transform: rotate(65deg);
}

.home .top-about-sec .text-block h2 .fukidashi::before{
  left: -30px;
}

.home .top-about-sec .text-block h2 .fukidashi::after{
  right: -30px;
}

.home .top-about-sec .text-block p{
	font-size: 16px;
	line-height: 1.8;
}

.home .top-about-sec .text-block02 h2{
	margin-bottom: 20px !important;
}

.home .top-about-sec .text-block .support-img{
	max-width: 600px;
	margin: 0 auto;
}

.home .top-about-sec .text-block .support-box{
	max-width: 600px;
	padding: 25px 20px;
	margin: 20px auto 0;
}

.home .top-about-sec .text-block .support-box .smb-box__background{
	border-radius: 12px;
}

.home .top-about-sec .text-block .support-box ul{
	list-style: none;
	width: fit-content;
	margin: 0 auto;
	padding: 0;
}

.home .top-about-sec .text-block .support-box ul li{
	font-size: 18px;
	font-weight: 500;
	line-height: 1.4;
	margin: 0;
	padding: 0 0 0 28px;
	background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/check.svg) left 2px no-repeat;
	background-size: 22px 22px;
}

.home .top-about-sec .text-block .support-box ul li:nth-child(n+2){
	margin-top: 10px;
}

.home .top-activities-sec h2{
	margin-bottom: 85px;
}

.home .top-activities-sec .program-conts .c-row > .c-row__col{
	position: relative;
}

.home .top-activities-sec .program-conts .c-row > .c-row__col:nth-child(n+2){
	margin-top: 40px;
}

.home .top-activities-sec .program-conts .program-icon{
	position: absolute;
	top: -48px;
	left: 0;
	right: 0;
	width: 76px;
	margin: auto;
	z-index: 10;
}

.home .top-activities-sec .program-conts .program-img{
	max-width: 300px;
}

.home .top-activities-sec .program-conts .program-img img{
	border-radius: 15px;
}

.home .top-activities-sec .program-conts h3{
	font-size: 20px;
	line-height: 1.3;
	padding: 0;
	border-bottom: none;
	margin: 15px 0 10px;
}

.home .top-activities-sec .program-conts p{
	font-weight: 400;
	line-height: 1.6;
}

.home .top-bnr-sec{
	padding: 35px 0;
}

.home .top-bnr-sec .top-bnr-conts{
	max-width: 450px;
}

.home .top-bnr-sec .top-bnr-conts .c-row > .c-row__col.c-row__col:not(:last-child){
	margin-bottom: 20px;
}

.home .top-bnr-sec .top-bnr-conts .smb-box{
	padding: 5px 15px 5px 20px;
}

.home .top-bnr-sec .top-bnr-conts .smb-box .c-row[data-columns="2"]{
    --_item-width: auto !important;
}

.home .top-bnr-sec .top-bnr-conts .smb-box .c-row > .c-row__col:first-child{
	width: 100%;
	flex: 1;
}

.home .top-bnr-sec .top-bnr-conts .smb-box .c-row > .c-row__col:last-child{
	width: 120px;
}

.home .top-bnr-sec .top-bnr-conts .smb-box p{
	font-size: 22px;
	line-height: 1.3;
	margin: 0;
	font-feature-settings: "palt";
}

.home .top-download-sec .materials-wrapper{
	display: grid;
	gap: 25px;
	grid-template-columns: 1fr;
	max-width: 600px;
}

.home .top-download-sec .material-section{
	text-align: center;
	background: #f5f2e9;
	padding: 20px 15px;
	border-radius: 8px;
	position: relative;
}

.home .top-download-sec .material-section:nth-of-type(1)::after{
	position: absolute;
	content: "";
	display: block;
	top: -15px;
	left: 0;
	width: 77px;
	height: 98px;
	background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/cat.webp) center no-repeat;
	background-size: contain;
	margin: auto;
	z-index: 0;
}

.home .top-download-sec .material-section:nth-of-type(3)::after{
	position: absolute;
	content: "";
	display: block;
	bottom: 50px;
	right: 0;
	width: 60px;
	height: 85px;
	background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/child01.webp) center no-repeat;
	background-size: contain;
	margin: auto;
	z-index: 0;
}

.home .top-download-sec .material-section:nth-of-type(5)::after{
	position: absolute;
	content: "";
	display: block;
	bottom: 55px;
	left: -16px;
	width: 77px;
	height: 84px;
	background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/child02.webp) center no-repeat;
	background-size: contain;
	margin: auto;
	z-index: 0;
}

.home .top-download-sec .material-section:nth-of-type(7)::after{
	position: absolute;
	content: "";
	display: block;
	bottom: 10px;
	right: -11px;
	width: 70px;
	height: 98px;
	background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/child03.webp) center no-repeat;
	background-size: contain;
	margin: auto;
	z-index: 0;
}

.home .top-download-sec .material-section:nth-of-type(9)::after{
	position: absolute;
	content: "";
	display: block;
	bottom: 0;
	left: 0;
	width: 56px;
	height: 88px;
	background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/mouse.webp) center no-repeat;
	background-size: contain;
	margin: auto;
	z-index: 0;
}

.home .top-download-sec .material-section .main-title{
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: 10px;
	position: relative;
	z-index: 5;
}

.home .top-download-sec .material-section .main-title .subtitle{
	display: block;
	font-size: 18px;
	color: #e88c3e;
	margin-bottom: 3px;
}

.home .top-download-sec .download-buttons{
	display: grid;
	gap: 15px;
	position: relative;
	z-index: 5;
}

.home .top-download-sec .download-buttons.two-col{
	display: flex;
	justify-content: center;
}

.home .top-download-sec .download-buttons.one-col{
	grid-template-columns: 1fr;
	justify-items: center;
}

.home .top-download-sec .download-btn{
	width: 100%;
	max-width: 240px;
	display: inline-block;
	background: #e88c3e;
	color: #fff;
	text-align: center;
	padding: 8px 10px;
	border-radius: 6px;
	text-decoration: none;
	transition: 0.3s;
}

.home .top-download-sec .download-btn:hover{
	filter: brightness(0.9);
}

.home .top-download-sec .download-btn .btn-text{
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	padding: 3px 0 3px 30px;
	position: relative;
}

.home .top-download-sec .download-btn .btn-text::before{
	position: absolute;
	content: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/btn_arrow.svg);
	top: 50%;
    left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	width: 18px;
	height: 18px;
	margin: auto;
}

.home .top-access-sec h2{
	margin-bottom: 40px;
}

.home .top-access-sec .access-conts{
	max-width: 600px;
}

.home .top-access-sec .access-conts:first-of-type{
	margin-bottom: 50px;
}

.home .top-access-sec .access-conts h3{
	font-size: 20px;
	line-height: 1.3;
	padding: 5px 20px;
	border-radius: 30px;
	border-bottom: none;
	width: fit-content;
	margin: 0 auto 10px;
}

.home .top-access-sec .access-conts table th,
.home .top-access-sec .access-conts table td{
	font-size: 16px;
	line-height: 1.5;
	border-bottom: 1px dashed #e88c3e !important;
}

.home .top-access-sec .access-conts table th{
	width: 80px;
	padding: 0.65em 0.65em 0.65em 0;
}

.home .top-access-sec .access-conts table td{
	padding: 0.65em 0 0.65em 0.65em;
}

.home .top-access-sec .access-conts .map{
	height: 210px;
}

.home .top-contact-sec{
	padding-bottom: 0 !important;
}

.home .top-contact-sec p{
	line-height: 1.5;
	width: fit-content;
	margin: 0 auto 30px;
}

.home .top-contact-sec .contact-form{
    margin-top: 20px;
    position: relative;
    width: 100%;
    overflow: hidden;
    padding-top: 3300px;
}

.home .top-contact-sec .contact-form iframe{
	padding: 0;
	position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.home .top-contact-sec .children-img{
	max-width: 360px;
	margin: 30px auto 0;
}



/* サービス詳細ページ（全体） */

.mv-conts.pc-only{
	display: none !important;
}

.mv-conts{
	height: 450px;
}

.mv-conts .c-row__col--1-2{
	--_item-width: 60%;
}

@media not all and (min-width: 1024px) {
    .alignfull.smb-section-break-the-grid>.smb-section__inner>.c-container>.smb-section__contents-wrapper>.c-row>.c-row__col>.smb-section-break-the-grid__figure {
        margin-left: 50px !important;
    }
}

.mv-conts h1{
	font-size: 42px;
	line-height: 1.8;
	margin-top: 200px !important;
}

.mv-conts h1 .has-sm-accent-background-color{
    background: rgba(232, 140, 62, 0.90) !important;
    padding: 0.05em 0.35em 0.075em !important;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

@media not all and (min-width: 1024px) {
    .smb-section-break-the-grid--mobile-nowrap.smb-section-break-the-grid--right>.smb-section__inner>.c-container>.smb-section__contents-wrapper>.c-row>.c-row__col>.smb-section-break-the-grid__figure {
        left: 28%;
        right: 0;
    }
}

.mv-conts img{
	border-radius: 20px 0 0 20px;
}

.page .feature-sec{
	margin-top: 50px !important;
}

.feature-sec .feature-conts:not(:first-of-type){
	margin-top: 40px !important;
}

.feature-sec .feature-conts .c-row > .c-row__col:first-child{
	margin-bottom: 20px;
}

.feature-sec .feature-conts .feature-img{
	max-width: 500px;
}

.feature-sec .feature-conts .feature-img img{
	border-radius: 10px;
}

.feature-sec .feature-conts h3{
	font-size: 24px;
	line-height: 1.3;
	text-align: center;
	padding: 0;
	border-bottom: none;
	margin: 0 0 10px;
}

.page .daily-sec h2{
	text-align: center;
	margin-bottom: 40px;
}

.daily-sec .daily-flow-conts .daily-list{
	list-style: none;
	width: fit-content;
	margin: 0 auto;
	padding: 0 0 0 55px;
	position: relative;
}

.daily-sec .daily-flow-conts .daily-list::before{
	background-color: #e88c3e;
    content: "";
    margin: auto;
    position: absolute;
    left: 22px;
    top: 22px;
    height: calc(100% - 22px);
    width: 2px;
}

.daily-sec .daily-flow-conts .daily-list li{
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	margin: 0;
	position: relative;
}

.daily-sec .daily-flow-conts .daily-list li:nth-child(n+2){
	margin-top: 30px;
}

.daily-sec .daily-flow-conts .daily-list li .clock{
	position: absolute;
    top: -5px;
    left: -55px;
    width: 44px;
    height: 44px;
    margin: auto;
}

.daily-sec .daily-flow-conts .daily-list li h3{
	font-size: 24px;
	font-weight: 700;
	line-height: 1.3;
	color: #e88c3e;
	width: 85px;
	margin: 0 40px 0 0;
	padding: 0;
	border-bottom: none;	
}

.daily-sec .daily-flow-conts .daily-list li p{
	font-size: 20px;
	font-weight: 500;
	line-height: 1.3;
	margin: 3px 0 0;
	position: relative;
}

.daily-sec .daily-flow-conts .daily-list li p::before{
	position: absolute;
	content: "";
	top: 13px;
	left: -35px;
	width: 30px;
	height: 100%;
	border-top: 3px dotted #333;
}

.daily-sec .daily-flow-conts .c-row > .c-row__col:first-child{
	margin-bottom: 45px;
}

.daily-sec .daily-flow-conts .flow-img{
	max-width: 550px;
}

.daily-sec .daily-flow-conts .flow-img img{
	border-radius: 10px;
}

.usage-flow-sec .smb-section__fixed-background::after{
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/common/textured-stripes.png) center top repeat;
	background-position: center top;
	background-repeat: repeat;
	background-size: 256px 256px;
	z-index: 0;
}

.usage-flow-sec .smb-section__divider{
	z-index: 5;
}

.usage-flow-sec .usage-list{
	list-style: none;
	width: fit-content;
	margin: 0 auto;
	padding: 0 0 0 95px;
	position: relative;
}

.usage-flow-sec .usage-list::before{
	position: absolute;
    content: "";
    left: 40px;
    top: 40px;
    height: calc(100% - 150px);
    width: 2px;
	border-left: 3px dotted #e88c3e;
	margin: auto;
}

.usage-flow-sec .usage-list li{
	margin: 0;
	position: relative;
}

.usage-flow-sec .usage-list li:nth-child(n+2){
	margin-top: 30px;
}

.usage-flow-sec .usage-list li .step-num{
	position: absolute;
    top: 0;
    left: -95px;
    width: 80px;
    height: 80px;
    margin: auto;
}

.usage-flow-sec .usage-list li h3{
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3;
	color: #e88c3e;
	margin: 0 0 5px;
	padding: 0;
	border-bottom: none;	
}

.usage-flow-sec .usage-list li p{
	font-weight: 400;
	line-height: 1.6;
	margin: 0;
}

.requirements-sec{
	padding-bottom: 0 !important;
}

.page .requirements-sec .children-img{
	max-width: 360px;
	margin: 30px auto 0 !important;
}

.requirements-sec .requirements-box{
	padding: 0;
}

.requirements-sec .requirements-box:nth-of-type(n+2){
	margin-top: 20px;
}

.requirements-sec .requirements-box .smb-box__background{
	border-radius: 5px;
}

.requirements-sec .requirements-box h3{
	font-size: 20px;
	line-height: 1.3;
	text-align: center;
	padding: 8px 15px;
	border-bottom: none;
	border-radius: 5px 5px 0 0;
	margin: 0;
}

.requirements-sec .requirements-box .requirements-box-in{
	padding: 20px 15px;
}

.requirements-sec .requirements-box p{
	font-size: 18px;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
	margin: 0;
}

.requirements-sec .requirements-box p .tyuui{
	display: block;
	font-size: 14px;
	margin: 3px 0 0;
}

.requirements-sec .requirements-box .area-text{
	text-align: left;
}

.page .contact-sec{
	padding: 40px 0;
}

.page .contact-sec h2{
	margin-bottom: 20px;
}

.contact-sec .contact-conts .c-row > .c-row__col:first-child{
	margin-bottom: 25px;
}

.contact-sec .contact-conts .smb-box{
	max-width: 450px;
	padding: 15px;
    min-height: 120px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.contact-sec .contact-conts .smb-box__background{
	border-radius: 8px;
}

.contact-sec .contact-conts .contact-box-in .c-row[data-columns="2"]{
    --_item-width: auto !important;
}

.contact-sec .contact-conts .contact-box-in .c-row > .c-row__col:first-child{
	width: 94px;
}

.contact-sec .contact-conts .contact-box-in .c-row > .c-row__col:last-child{
	width: 100%;
	flex: 1;
	padding: 0;
}

.contact-sec .contact-conts .contact-box-in .contact-text{
	font-size: 24px;
	line-height: 1.3;
	margin: 0;
	font-feature-settings: "palt";
}

.contact-sec .contact-conts .contact-box-in .tel{
	font-size: 32px;
	line-height: 1;
	margin: 0;
}

.contact-sec .contact-conts .contact-box-in .tel-time{
	font-size: 16px;
	line-height: 1.3;
	margin: 3px 0;
}


/* 放課後等デイサービスページ */

@media not all and (min-width: 1024px) {
    .after-school-daycare .smb-section-break-the-grid--mobile-nowrap>.smb-section__inner>.c-container>.smb-section__contents-wrapper>.c-row>.c-row__col>.smb-section-break-the-grid__figure img {
        object-position: 0 50%;
    }
}

.after-school-daycare .daily-sec .daily-flow-conts .flow-img{
	max-width: 550px;
}

.after-school-daycare .daily-sec .daily-flow-conts .flow-img img{
	border-radius: 10px;
}



/* PRIVACY POLICYページ */

.privacy-policy .privacy-sec{
	padding-top: 30px;
}

.privacy-policy .privacy-sec h1{
	font-size: 28px;
	line-height: 1.3;
}

.privacy-policy .privacy-sec h2{
	font-size: 20px !important;
	line-height: 1.3;
	margin: 35px 0 10px;
}

.privacy-policy .privacy-sec p{
	font-weight: 400;
}

.privacy-policy .privacy-sec ol li{
	font-size: 15px;
	line-height: 1.6;
}



/* 404ページ */

.error404 .c-entry__content {
    padding: 60px 15px;
}








@media (min-width:640px){
	
	.l-header .c-container, .c-fluid-container{
		padding: 0 25px;
	}

	.smb-section .c-container,
	.l-footer .c-container{
		padding-left: 25px;
		padding-right: 25px;
	}

	.l-header__content .site-catch{
		font-size: 14px;
	}



	/* 固定ページ共通 */
	
	.page .page-header{
		height: 350px;
	}



	/* TOPページ */

	.home .usage-status-sec .usage-status-table01 th{
		width: 55.7%;
	}

	.home .usage-status-sec .usage-status-table01 th .sp{
		display: none !important;
	}

	.home .usage-status-sec .usage-status-table02 tbody th{
		width: 40%;
	}

	.home .usage-status-sec .usage-status-table02 tbody td{
		width: 30%;
	}
	
	.home .usage-status-sec .usage-status-table02 tbody th .time{
		display: inline;
	}

	.home .top-about-sec .text-block02 h2 .pc{
		display: block !important;
	}

	.home .top-about-sec .text-block .support-box ul li .sp{
		display: none !important;
	}

	.home .top-activities-sec .program-conts .c-row > .c-row__col:nth-child(2){
		margin-top: 0;
	}

	.home .top-access-sec .access-conts table th{
        width: 125px;
    }

	.home .top-access-sec .access-conts table th .sp{
		display: none !important;
	}

	.home .top-access-sec .access-conts table td .sp{
		display: none !important;
	}

	.home .top-access-sec .access-conts .map{
		height: 260px;
	}

	.home .top-contact-sec .contact-form{
		padding-top: 3000px;
	}

	.home .top-contact-sec .children-img{
		max-width: 500px;
		margin: 60px auto 0 !important;
	}



	/* サービス詳細ページ（全体） */

	.mv-conts.sp-only{
		display: none !important;
	}

	.mv-conts.pc-only{
		display: flex !important;
	}

	.mv-conts h1{
		font-size: 44px;
	}

	.mv-conts img{
		border-radius: 25px 0 0 25px;
	}

	.usage-flow-sec .usage-list::before{
		position: absolute;
		content: "";
		left: 40px;
		top: 40px;
		height: calc(100% - 105px);
		width: 2px;
		border-left: 3px dotted #e88c3e;
		margin: auto;
	}

	.page .requirements-sec .children-img{
		max-width: 500px;
		margin: 60px auto 0 !important;
	}

	.contact-sec .contact-conts .contact-box-in .contact-text .sp{
		display: none !important;
	}


	
	/* 404ページ */
	
	.error404 .c-entry__content {
		padding: 60px 25px;
	}





	

	
}






@media (min-width: 1024px){
	
	.pc{
		display: block !important;
	}
	
	.sp{
		display: none !important;
	}

	.l-1row-header__branding{
		padding: 0;
	}

	.l-header .c-container, .c-fluid-container{
        padding: 0 40px;
    }

	.l-header__content{
		padding-top: 15px;
		height: 240px;
	}

	.l-header .l-header__content .l-center-header__row{
		margin: 0 0 25px !important;
	}

	.u-invisible-wall{
		display: block;
	}

	.l-header__content .site-catch{
		font-size: 18px;
		text-align: center;
		margin: 0 0 15px !important;
	}

	.c-site-branding__title {
		max-width: 430px !important;
		margin: 5px auto 0;
	}

	.c-site-branding__title .custom-logo{
		max-width: none;
	}

	.c-navbar{
		max-width: 690px;
		margin: 0 auto;
	}

	.l-center-header .p-global-nav .c-navbar__item{
		flex: 1;
	}

	.p-global-nav .c-navbar__item>a{
		font-size: 18px;
		font-weight: 700;
		line-height: 1.4;
		padding: 3px 15px !important;
		font-feature-settings: "palt";
		border-right: 1px solid #e88c3e;
	}

	.p-global-nav .c-navbar__item>a:first-child{
		border-left: 1px solid #e88c3e;
	}

	.p-drop-nav .c-container{
		padding: 15px 40px;
	}

	.p-drop-nav .p-global-nav{
		display: block;
		margin: 0 auto;
	}

	.p-drop-nav .p-global-nav .c-navbar__item{
		flex: 1;
	}

	.c-header-content .contact-btn{
		position: fixed;
		top: 260px;
		right: 0;
		width: 60px;
	}	
	
	.c-header-content .contact-btn a{
		display: flex;
		justify-content: center;
		align-items: center;
		height: 160px;
		padding: 20px;
		font-size: 18px;
		font-weight: 700;
		line-height: 1.3;
		color: #fff;
		background: #e88c3e;
		text-align: center;
		text-decoration: none;
		border-radius: 10px 0 0 10px;
		font-feature-settings: "palt";
		letter-spacing: 0.03em;
		transition: 0.3s;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
	
	.c-header-content .contact-btn a:hover,
	.c-header-content .contact-btn a:active,
	.c-header-content .contact-btn a:focus{
		filter: brightness(0.9);
	}

	.l-footer--default .l-footer-widget-area{
		padding-top: 50px !important;
	}

	.l-footer--default .l-footer-widget-area .c-container{
		padding: 0 40px;
	}

	.l-footer--default .l-footer-widget-area .footer-menu{
		display: flex;
		width: 690px;
		margin: 0 auto 50px;
	}

	.l-footer--default .l-footer-widget-area .footer-menu li{
		flex: 1;
		margin: 0;
		padding: 3px 15px !important;
		border-right: 1px solid #e88c3e;
	}

	.l-footer--default .l-footer-widget-area .footer-menu li:first-child{
		border-left: 1px solid #e88c3e;
	}

	.l-footer--default .l-footer-widget-area .footer-menu li a{
		font-size: 18px;
		line-height: 1.4;
		margin: 0;
	}

	.l-footer--default .l-footer-widget-area .footer-info-conts{
		margin-bottom: 25px;
	}

	.l-footer--default .l-footer-widget-area .footer-info-conts > .c-row[data-lg-columns="2"]{
		--_item-width: auto !important;
		justify-content: space-between !important;
	}

	.l-footer--default .l-footer-widget-area .footer-info-conts > .c-row > .c-row__col{
		margin-bottom: var(--_gap) !important;
	}

	.l-footer--default .l-footer-widget-area .footer-info-conts > .c-row > .c-row__col:first-child{
		width: 40%;
		max-width: 460px;
	}

	.l-footer--default .l-footer-widget-area .footer-info-conts > .c-row > .c-row__col:last-child{
		width: 100%;
		flex: 1;
	}

	.l-footer--default .l-footer-widget-area .footer-logo{
		width: 100%;
		max-width: 430px;
		margin: 0 0 0 -5px !important;
	}

	.l-footer--default .l-footer-widget-area .footer-contact-conts > .c-row[data-lg-columns="2"]{
		--_item-width: auto !important;
	}

	.l-footer--default .l-footer-widget-area .footer-contact-conts > .c-row{
		justify-content: flex-end !important;
	}

	.l-footer--default .l-footer-widget-area .footer-contact-conts > .c-row > .c-row__col:first-child{
		width: 320px;
		margin-bottom: var(--_gap) !important;
	}

	.l-footer--default .l-footer-widget-area .footer-contact-conts > .c-row > .c-row__col:last-child{
		width: 260px;
	}

	.l-footer--default .l-footer-widget-area p{
		font-size: 16px;
	}
	
	.l-footer--default .l-footer-widget-area .tel{
		padding-left: 30px;
		margin: 0 auto !important;
	}

	.l-footer--default .l-footer-widget-area .tel a{
		font-size: 40px;
	}
	
	.l-footer--default .l-footer-widget-area .tel::before{
		width: 25px;
		height: 25px;
	}

	.l-footer--default .l-footer-widget-area .tel-text{
		font-size: 18px;
	}

	.l-footer-widget-area .footer-contact-btn{
		margin: 0 !important;
	}

	.l-footer-widget-area .footer-contact-btn .smb-btn{
		font-size: 18px;
		padding-top: 10px !important;
		padding-bottom: 10px !important;
	}



	.p-footer-sub-nav{
		display: none !important;
	}
	
	.smb-section .c-container{
		padding-left: 40px;
		padding-right: 40px;
	}


	/* 固定ページ共通 */

	.page .page-header{
		height: 550px;
	}

	.page .page-header .page-title{
		font-size: 68px;
	}
	
	.page .page-header .page-title .ja{
		font-size: 30px;
	}

	.page .smb-section{
		max-width: none;
		padding: 120px 0;
	}

	.page .my-breadcrumbs{
		padding: 10px 0;
	}
	
	.my-breadcrumbs{
		padding: 10px 0;
	}

	.page .smb-section h2{
		font-size: 40px !important;
		margin: 0 0 50px;
	}
	
	.page .smb-section h2 .en{
		font-size: 24px;
	}
	
	.page .smb-section p{
		font-size: 16px;
	}

	.page .smb-section figure{
		margin-top: 0 !important;
	}

	.page .smb-section .smb-buttons{
		max-width: 240px;
	}

	.page .smb-section .smb-btn{
		font-size: 20px;
	}
	


	/* TOPページ */

	.home .mv{
		height: 800px;
	}

	.home .usage-status-sec{
		padding: 80px 0;
	}

	.home .usage-status-sec h2{
		font-size: 36px;
		margin: 0 0 40px;
	}

	.home .usage-status-sec .usage-status-table01{
		border: 3px solid #008071;
		border-radius: 10px;
	}
	
	.home .usage-status-sec .usage-status-table01 th,
	.home .usage-status-sec .usage-status-table01 td{
		padding: 0.75em;
	}
	
	.home .usage-status-sec .usage-status-table01 th{
		width: 540px;
		font-size: 24px;
	}
	
	.home .usage-status-sec .usage-status-table02{
		margin: 40px auto 0;
	}
	
	.home .usage-status-sec .usage-status-table02 thead th{
		font-size: 22px;
		padding: 15px;
		border-radius: 10px 10px 0 0;
	}

	.home .usage-status-sec .usage-status-table02 tbody th,
	.home .usage-status-sec .usage-status-table02 tbody td{
		padding: 0.75em;
	}

	.home .usage-status-sec .usage-status-table02 tbody th{
		width: 58%;
	}

	.home .usage-status-sec .usage-status-table02 tbody td{
		width: 21%;
	}
	
	.home .usage-status-sec .usage-status-table02 tbody th{
		font-size: 24px;
		border-left: 3px solid #e88c3e;
	}
	
	.home .usage-status-sec .usage-status-table02 tbody th .time{
		font-size: 24px;
	}
	
	.home .usage-status-sec .usage-status-table02 tbody tr:first-of-type th{
		border-top: 3px solid #e88c3e;
		border-radius: 10px 0 0 0;
	}
	
	.home .usage-status-sec .usage-status-table02 tbody tr:last-of-type th{
		border-radius: 0 0 0 10px;
		border-bottom: 3px solid #e88c3e;
	}

	.home .usage-status-sec .usage-status-table02 tbody tr:first-of-type td{
		border-top: 3px solid #e88c3e;
	}
	
	.home .usage-status-sec .usage-status-table02 tbody tr td:last-child{
		border-right: 3px solid #e88c3e;
	}
	
	.home .usage-status-sec .usage-status-table02 tbody tr:last-of-type td{
		border-bottom: 3px solid #e88c3e;
	}
	
	.home .usage-status-sec .usage-status-table02 tbody tr:last-of-type td:last-child{
		border-radius: 0 0 10px 0;
	}
	
	.home .usage-status-sec .usage-status-table01 td img,
	.home .usage-status-sec .usage-status-table02 td img{
		width: 36px;
	}
	
	.home .top-about-sec{
		padding-top: 100px;
	}
	
	.home .top-about-sec .top-link-btn{
		max-width: 800px;
		margin: 0 auto 60px;
	}
	
	.home .top-about-sec .top-link-btn li{
		width: 25%;
		padding: 3px 15px;
		margin: 0 !important;
	}
	
	.home .top-about-sec .top-link-btn li:nth-child(3){
		border-left: none;
	}
	
	.home .top-about-sec .top-link-btn li a{
		font-size: 18px;
	}

	.home .top-about-sec .service-conts .c-row > .c-row__col:not(:last-child){
		margin-bottom: var(--_gap);
	}
	
	.home .top-about-sec .service-conts .c-row > .c-row__col:nth-child(n+2){
		margin-top: 0;
	}

	.home .top-about-sec .service-conts .service-img{
		width: 100%;
	}
	
	.home .top-about-sec .service-conts h2{
		font-size: 28px !important;
	}

	.home .top-about-sec .service-conts .smb-btn::after{
		right: 20px;
	}
	
	.home .top-about-sec .text-block{
		margin: 120px 0 0;
	}
	
	.home .top-about-sec .text-block h2.sec-title01{
		font-size: 55px !important;
	}
	
	.home .top-about-sec .text-block h2 .fukidashi{
		font-size: 28px;
		margin: 0 auto 15px;
	}
	
	.home .top-about-sec .text-block h2 .fukidashi::after{
		content: '';
		position: absolute;
		top: 50%;
		display: inline-block;
		width: 45px;
		height: 2px;
		background-color: #e88c3e;
		-webkit-transform: rotate(-65deg);
		transform: rotate(-65deg);
	}
	
	.home .top-about-sec .text-block h2 .fukidashi::before{
		content: '';
		position: absolute;
		top: 50%;
		display: inline-block;
		width: 45px;
		height: 2px;
		background-color: #e88c3e;
		-webkit-transform: rotate(65deg);
		transform: rotate(65deg);
	}
	
	.home .top-about-sec .text-block h2 .fukidashi::before{
		left: -45px;
	}
	
	.home .top-about-sec .text-block h2 .fukidashi::after{
		right: -45px;
	}

	.home .top-about-sec .text-block.text-block01{
		padding: 90px 0 80px;
		max-width: 900px;
		background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/about_back_pc.webp) center no-repeat;
		background-size: contain;
	}
	
	.home .top-about-sec .text-block p{
		font-size: 18px;
		font-feature-settings: "palt";
	}

	.home .top-about-sec .text-block02 h2{
		margin-bottom: 40px !important
	}	
	
	.home .top-about-sec .text-block .support-box{
		max-width: 720px;
		padding: 40px 25px;
		margin-top: 30px;
	}
	
	.home .top-about-sec .text-block .support-box .smb-box__background{
		border-radius: 20px;
	}
	
	.home .top-about-sec .text-block .support-box ul li{
		font-size: 24px;
		padding: 0 0 0 40px;
		background-position: left 2px no-repeat;
		background-size: 32px 32px;
	}
	
	.home .top-about-sec .text-block .support-box ul li:nth-child(n+2){
		margin-top: 15px;
	}

	.home .top-activities-sec{
		padding-bottom: 80px;
	}
	
	.home .top-activities-sec h2{
		margin-bottom: 80px;
	}

	.home .top-activities-sec .program-conts .c-row > .c-row__col{
		margin-top: 0 !important;
	}
	
	.home .top-activities-sec .program-conts .program-icon{
		top: -53px;
		width: 84px;
	}

	.home .top-activities-sec .program-conts .program-img{
		max-width: none;
	}
	
	.home .top-activities-sec .program-conts h3{
		font-size: 24px;
	}
	
	.home .top-bnr-sec{
		padding: 40px 0;
	}
	
	.home .top-bnr-sec .top-bnr-conts{
		max-width: none;
		margin: 0;
	}
	
	.home .top-bnr-sec .top-bnr-conts .c-row > .c-row__col.c-row__col:not(:last-child){
		margin-bottom: var(--_gap);
	}
	
	.home .top-bnr-sec .top-bnr-conts .smb-box{
		padding: 10px 20px;
	}
	
	.home .top-bnr-sec .top-bnr-conts .smb-box .c-row > .c-row__col:last-child{
		width: 44.5%;
		max-width: 150px;
	}
	
	.home .top-bnr-sec .top-bnr-conts .smb-box p{
		font-size: 25px;
	}
	
	.home .top-download-sec{
		padding: 100px 0;
	}

	.home .top-download-sec .materials-wrapper{
		grid-template-columns: repeat(2, 1fr);
		gap: 40px;
		max-width: none;
	}

	.home .top-download-sec .material-section{
		padding: 25px;
		border-radius: 10px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.home .top-download-sec .material-section:nth-of-type(1)::after{
		top: -25px;
		width: 110px;
		height: 140px;
	}
	
	.home .top-download-sec .material-section:nth-of-type(3)::after{
		content: none;
	}

	.home .top-download-sec .material-section:nth-of-type(4)::after{
		position: absolute;
		content: "";
		display: block;
		bottom: 45px;
		right: 0;
		width: 85px;
		height: 120px;
		background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/child01.webp) center no-repeat;
		background-size: contain;
		margin: auto;
		z-index: 0;
	}
	
	.home .top-download-sec .material-section:nth-of-type(5)::after{
		bottom: 35px;
		left: -24px;
		width: 110px;
		height: 120px;
	}
	
	.home .top-download-sec .material-section:nth-of-type(7)::after{
		content: none;
	}

	.home .top-download-sec .material-section:nth-of-type(8)::after{
		position: absolute;
		content: "";
		display: block;
		bottom: 30px;
		right: -16px;
		width: 100px;
		height: 140px;
		background: url(/sunny-place/wp2025/wp-content/plugins/my-snow-monkey/images/top/child03.webp) center no-repeat;
		background-size: contain;
		margin: auto;
		z-index: 0;
	}
	
	.home .top-download-sec .material-section:nth-of-type(9)::after{
		bottom: 15px;
		width: 80px;
		height: 125px;
	}
	
	.home .top-download-sec .material-section .main-title{
		font-size: 26px;
		margin-bottom: 15px;
	}
	
	.home .top-download-sec .material-section .main-title .subtitle{
		font-size: 22px;
	}
	
	.home .top-download-sec .download-buttons{
		gap: 20px;
	}
	
	.home .top-download-sec .download-btn{
		padding: 12px 15px;
		border-radius: 8px;
	}
	
	.home .top-download-sec .download-btn .btn-text{
		font-size: 18px;
		padding: 3px 0 3px 30px;
	}
	
	.home .top-download-sec .download-btn .btn-text::before{
		width: 20px;
		height: 20px;
	}

	.home .top-access-sec{
		padding: 100px 0;
	}
	
	.home .top-access-sec h2{
		margin-bottom: 60px;
	}
	
	.home .top-access-sec .access-conts{
		max-width: none;
	}
	
	.home .top-access-sec .access-conts:first-of-type{
		margin-bottom: 70px;
	}

	.home .top-access-sec .access-conts .c-row{
		flex-direction: row-reverse;
	}
	
	.home .top-access-sec .access-conts h3{
		font-size: 22px;
		padding: 5px 25px;
		margin: 0 0 15px !important;
	}
	
	.home .top-access-sec .access-conts table th,
	.home .top-access-sec .access-conts table td{
		font-size: 18px;
	}
	
	.home .top-access-sec .access-conts table th{
		padding: 0.65em 0.65em 0.65em 0;
	}
	
	.home .top-access-sec .access-conts table td{
		padding: 0.65em 0 0.65em 0.65em;
	}
	
	.home .top-access-sec .access-conts .map{
		height: 360px;
	}
	
	.home .top-contact-sec p{
		line-height: 1.6;
		margin: 0 auto 50px;
	}

	.home .top-contact-sec .children-img{
		max-width: 1000px;
		margin: 100px auto 0 !important;
	}

	.home .top-contact-sec .children-img img{
		width: 100% !important;
	}



	/* サービス詳細ページ（全体） */

	.page .mv-conts{
		height: 550px;
		margin-top: 10px !important;
	}

	.smb-section-break-the-grid--match-height.smb-section-break-the-grid--right>.smb-section__inner>.c-container>.smb-section__contents-wrapper>.c-row>.c-row__col>.smb-section-break-the-grid__figure.smb-section-break-the-grid__figure--w-60 {
        left: 25% !important;
    }

	.mv-conts h1{
		font-size: 60px;
		margin-top: 30px !important;
	}

	.mv-conts img{
		border-radius: 30px 0 0 30px;
	}

	.page .feature-sec{
		margin-top: 120px !important;
	}

	.page .feature-sec h2{
		margin-bottom: 70px;
	}

	.feature-sec .feature-conts{
		max-width: 950px;
	}
	
	.feature-sec .feature-conts:not(:first-of-type){
		margin-top: 80px !important;
	}

	.feature-sec .feature-conts .c-row[data-lg-columns="2"]{
		--_item-width: auto !important;
	}

	.feature-sec .feature-conts:nth-of-type(even) .c-row{
		flex-direction: row-reverse;
	}
	
	.feature-sec .feature-conts .c-row > .c-row__col:first-child{
		width: 54.9%;
		margin-bottom: var(--_gap);
	}
	
	.feature-sec .feature-conts .feature-img{
		max-width: none;
	}

	.feature-sec .feature-conts .c-row > .c-row__col:last-child{
		width: 45.1%;
	}
	
	.feature-sec .feature-conts h3{
		font-size: 30px;
		text-align: left;
		margin: 0 0 15px;
	}

	.daily-sec .daily-flow-conts .c-row[data-lg-columns="2"] {
        --_item-width: auto !important;
    }
	
	.daily-sec .daily-flow-conts .c-row > .c-row__col:first-child{
		width: 485px;
		margin-bottom: var(--_gap);
	}
	
	.page .daily-sec h2{
		text-align: left;
		margin-bottom: 65px;
	}
	
	.daily-sec .daily-flow-conts .daily-list{
		margin: 0 !important;
		padding: 0 0 0 75px;
	}
	
	.daily-sec .daily-flow-conts .daily-list::before{
		background-color: #e88c3e;
		content: "";
		margin: auto;
		position: absolute;
		left: 30px;
		top: 30px;
		height: calc(100% - 30px);
		width: 2px;
	}
	
	.daily-sec .daily-flow-conts .daily-list li:nth-child(n+2){
		margin-top: 55px;
	}
	
	.daily-sec .daily-flow-conts .daily-list li .clock{
		position: absolute;
		top: -10px;
		left: -75px;
		width: 60px;
		height: 60px;
		margin: auto;
	}
	
	.daily-sec .daily-flow-conts .daily-list li h3{
		font-size: 28px;
		width: 100px;
		margin: 0 75px 0 0;
	}
	
	.daily-sec .daily-flow-conts .daily-list li p{
		font-size: 22px;
		margin: 5px 0 0;
	}
	
	.daily-sec .daily-flow-conts .daily-list li p::before{
		position: absolute;
		content: "";
		top: 14px;
		left: -75px;
		width: 65px;
		height: 100%;
		border-top: 3px dotted #333;
	}

	.daily-sec .daily-flow-conts .c-row > .c-row__col:last-child{
		width: 100%;
		flex: 1;
		max-width: 680px;
		margin: 0;
	}

	.daily-sec .daily-flow-conts .flow-img{
		max-width: none;
	}
	
	.usage-flow-sec .usage-list{
		padding: 0 0 0 125px;
	}
	
	.usage-flow-sec .usage-list::before{
		position: absolute;
		content: "";
		left: 50px;
		top: 50px;
		height: calc(100% - 100px);
		width: 2px;
		border-left: 3px dotted #e88c3e;
		margin: auto;
	}
	
	.usage-flow-sec .usage-list li:nth-child(n+2){
		margin-top: 55px;
	}
	
	.usage-flow-sec .usage-list li .step-num{
		left: -125px;
		width: 100px;
		height: 100px;
	}
	
	.usage-flow-sec .usage-list li h3{
		font-size: 28px;
		margin: 0 0 10px;
	}
	
	.usage-flow-sec .usage-list li p{
		line-height: 1.8;
	}
	
	.requirements-sec .requirements-box{
		max-width: 900px;
		margin: 0 auto;
	}

	.requirements-sec .requirements-box .smb-box__body{
		display: flex;
		flex-wrap: nowrap;
		align-items: stretch;
	}
	
	.requirements-sec .requirements-box:nth-of-type(n+2){
		margin-top: 30px;
	}
	
	.requirements-sec .requirements-box .smb-box__background{
		border-radius: 10px;
	}
	
	.requirements-sec .requirements-box h3{
		display: flex;
		align-items: center;
		width: 260px;
		font-size: 22px;
		line-height: 1.5;
		padding:25px;
		border-radius: 10px 0 0 10px;
	}
	
	.requirements-sec .requirements-box .requirements-box-in{
		width: 100%;
		flex: 1;
		padding: 20px 30px;
		align-self: center;
	}
	
	.requirements-sec .requirements-box p{
		font-size: 18px;
		text-align: left;
	}
	
	.requirements-sec .requirements-box p .tyuui{
		display: inline-block;
		font-size: 16px;
		margin: 0 0 0 15px;
	}

	.page .requirements-sec .children-img{
		max-width: 1000px;
		margin: 100px auto 0 !important;
	}

	.requirements-sec .children-img img{
		width: 100% !important;
	}
	
	.page .contact-sec{
		padding: 80px 0;
	}
	
	.page .contact-sec h2{
		margin-bottom: 30px;
	}

	.page .contact-sec .contact-lead{
		font-size: 18px;
		text-align: center;
	}

	.contact-sec .contact-conts{
		max-width: 1080px;
	}
	
	.contact-sec .contact-conts .c-row > .c-row__col:first-child{
		margin-bottom: var(--_gap);
	}
	
	.contact-sec .contact-conts .smb-box{
		max-width: none;
		padding: 20px 25px;
		min-height: 150px;
	}
	
	.contact-sec .contact-conts .smb-box__background{
		border-radius: 10px;
	}
	
	.contact-sec .contact-conts .contact-box-in .c-row > .c-row__col:first-child{
		width: 110px;
	}
	
	.contact-sec .contact-conts .contact-box-in .contact-text{
		font-size: 30px;
	}
	
	.contact-sec .contact-conts .contact-box-in .tel{
		font-size: 38px;
		margin: 5px 0 0;
	}
	
	.contact-sec .contact-conts .contact-box-in .tel-time{
		font-size: 18px;
		margin: 3px 0;
	}

	
	
	/* 放課後等デイサービスページ */

	.after-school-daycare  .daily-sec .daily-flow-conts .c-row > .c-row__col:last-child{
		max-width: 570px;
	}

	



	/* PRIVACY POLICYページ */

	.privacy-policy .privacy-sec{
		padding-top: 80px;
	}

	.privacy-policy .privacy-sec h1{
		font-size: 38px;
		margin: 0 0 50px;
	}
	
	.privacy-policy .privacy-sec h2{
		font-size: 26px !important;
		line-height: 1.3;
		margin: 50px 0 15px;
	}
	
	.privacy-policy .privacy-sec ol li{
		font-size: 16px;
	}
	


	/* 404ページ */

	.error404 .c-entry__content {
		max-width: 1080px;
		padding: 120px 40px;
	}
	

	
	
}



@media (min-width: 1280px){


	/* 固定ページ共通 */

	.page .mv-conts{
		height: 600px;
	}


	/* TOPページ */

	.home .top-about-sec{
		background: url(images/common/bg04.webp) 30px 34% no-repeat, url(images/common/bg05.webp) 98% 57% no-repeat, url(images/common/bg06.webp) 80px 98% no-repeat;
		background-size: 256px 344px, 244px 320px, 260px 390px;
	}

	.home .top-contact-sec{
		background: url(images/common/bg01.webp) 40px 50px no-repeat, url(images/common/bg02.webp) 98% 40% no-repeat, url(images/common/bg03.webp) 50px 80% no-repeat;
		background-size: 228px 340px, 310px 337px, 264px 350px;
	}


	/* サービス詳細ページ（全体） */

	.daily-sec{
		background: url(images/common/bg04.webp) 30px 6% no-repeat, url(images/common/bg05.webp) 98% 100% no-repeat;
		background-size: 256px 344px, 244px 320px;
	}

	.requirements-sec{
		background: url(images/common/bg01.webp) 40px 50px no-repeat, url(images/common/bg02.webp) 98% 40% no-repeat, url(images/common/bg03.webp) 50px 80% no-repeat;
		background-size: 228px 340px, 310px 337px, 264px 350px;
	}

}











