@charset "UTF-8";

/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 2.12.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


body {
position: relative;
}
.top #content {
    padding-top: 0;
}
.l-content {
	margin: 0 auto;
}
.p-breadcrumb.-bg-on {
    background: #fff1db;
}
/*h2*/
h2.wp-block-heading.is-style-section_ttl.content_ttl {
    margin-bottom: 30px;
}
h2.wp-block-heading.is-style-section_ttl.content_ttl span.swl-fz.u-fz-l {
text-shadow:
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972;

	letter-spacing: 0.4rem;
	word-break: keep-all;
}
/*h2 注釈*/
.post_content .is-style-section_ttl small {
    letter-spacing: 0.3rem;
	color: #feb700;
}
/*見出し h3*/
h3.wp-block-heading.is-style-section_ttl.decoration {
    margin: 0 auto 10px;
}


/*メインビジュアル下文章*/
.bg_img::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 9%;
    transform: translateY(-50%);
    background-image: url(http://hirogaru-mirai.co.jp/example/wp-content/uploads/2026/02/family02.png);
    width: 20%;
    aspect-ratio: 100 / 70;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 2;
}
@media (max-width: 969px) {
	.bg_img::before {
display: none;
}
}

h1.wp-block-heading.has-text-align-center.is-style-section_ttl {
font-size: clamp(1.4rem, 4.7vw, 2rem);
    margin-bottom: 1em;
		text-shadow:
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972,
0 0 3px #fac972;
}
.top_about {
	position: relative; 
	margin-bottom: 0;
	word-break: keep-all;
}

.top_about::before {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: url(http://hirogaru-mirai.co.jp/example/wp-content/uploads/2026/02/cloud_orange_left.png);
    width: 350px;
    height: 175px;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}
.top_about::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    right: 0;
    background-image: url(http://hirogaru-mirai.co.jp/example/wp-content/uploads/2026/02/cloud_orange_right.png);
    width: 350px;
    height: 175px;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}
.swell-block-columns.logo_area {
    width: 100%;
    max-width: 550px;
    margin: auto;
}

.top_about_txt {
	position: relative;
}
.top_about_txt::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 30%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-image: url(http://hirogaru-mirai.co.jp/example/wp-content/uploads/2026/02/orange.png);
    width: 800px;
    height: 800px;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
}
.top_about_txt span.big {
    display: block;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    color: #f9bb1b;
    font-weight: bold;
font-size: clamp(1.4rem, 4.7vw, 1.6rem);
    margin: 10px auto;
}

/*画像ループスライダー*/
.loop-slider {
    display: flex;
    overflow: hidden;
	margin-top: -4px;
	margin-bottom: 0;
}

.loop-slider .wp-block-group__inner-container,
.loop-slider .swell-block-columns {
    display: contents;
}

.loop-slider .swell-block-columns__inner {
    flex-wrap: nowrap;
    animation: infinity-scroll-left 60s infinite linear; /* アニメーションの時間を指定 */
}

.loop-slider .swell-block-column figure {
    width: 300px; /* 画像の横幅を指定（パソコン） */
    position: relative;
}

.loop-slider .swell-block-column figure::before {
    padding-top: 65%; /* 画像の縦横比を指定 */
    display: block;
    content: "";
}

.loop-slider .swell-block-column figure img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center;
}

@media screen and (max-width: 959px) {
    .loop-slider .swell-block-column figure {
        width: 200px;
    }
}

@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

/*サービス*/
.swell-block-columns[data-valign=top]>.swell-block-columns__inner {
    align-items: normal;
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s {
    background: #fff;
    padding: 15px;
    border-radius: 15px;
	display: flex;
    flex-direction: column;
	p {
    font-size: 14px;
}
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s span.service_catch {
    display: block;
    font-size: 1rem;
    font-weight: bold;
margin: 0 auto 10px;
    text-align: center;
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s.for_kids {
	    border: 3px solid #F5AED1;
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s.for_adults {
	    border: 3px solid #97d3e8;
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s.for_money {
	    border: 3px solid #f9c972;
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s.for_health {
	    border: 3px solid #c59bd4;
	
	.is-style-btn_line a {
    background: none;
    border: 1px solid #c59bd4;
    color: #c59bd4;
    position: relative;
    transition: background-color .25s;
}
		.is-style-btn_line a:hover {
    background: #c59bd4;
    border: 1px solid #c59bd4;
    color: #fff;
}
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s h3 {
word-break: auto-phrase;
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s.for_kids h3 {
	margin: 22px 0;
text-shadow:
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6,
0 0 3px #f399c6;

}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s.for_adults h3 {
		margin: 22px 0;
	text-shadow: 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8, 0 0 3px #82cee8;
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s.for_money h3 {
	margin: 22px 0;
	text-shadow: 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972, 0 0 3px #fac972;
}
.swell-block-columns.service_column .swell-block-column.swl-has-mb--s.for_health h3 {
	margin: 22px 0;
	text-shadow:
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4,
	  0 0 3px #c59bd4;
}

.service_category a {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.2rem;
    border-radius: 20px;
	padding: 3px;
}
.for_kids .service_category a {
	    background: #F5AED1;
}
.for_adults .service_category a {
	    background: #97d3e8;
}
.for_money .service_category a{
	    background: #f9c972;
}
.for_health .service_category a{
	    background: #c59bd4;
}

.swell-block-columns.service_column .swell-block-button.-size-s.is-style-btn_line.custom {
width: 100%;
	flex-grow: 1;
  display: flex;
  align-items: flex-end;
}
.swell-block-button.-size-s.is-style-btn_line.custom a {
    padding: 7px 25px;
	width: 100%;
}
.swell-block-button.-size-s.is-style-btn_line.custom a span {
	font-size: 13px;
}
/*イベント*/
.event {
	position: relative;
}
.p-postList.-type-simple {
    border-top: 1px solid #f7c646;
}
.-type-simple .p-postList__link {
    border-bottom: 1px solid #f7c646;
}
/*イベント END*/

/*エーカオグループ*/
img.wp-image-1630, img.wp-image-1638, img.wp-image-1637 {
    border: 5px solid #ffc387;
    border-radius: 10px;
}

/*エーカオグループ END*/

/*コーチ・講師紹介*/
.introduction::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: -60px;
    left: 1%;
	transform: translate(0, -50%);
    background-image: url(http://hirogaru-mirai.co.jp/example/wp-content/uploads/2026/02/takenoko03@3x.png);
width: 300px;
    aspect-ratio: 953 / 421;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 1;
}
.introduction  figure.wp-block-image.size-full.u-lb-off {
	margin-bottom: 0;
}
.introduction .swell-block-columns__inner {
    justify-content: center;
}
.introduction .swell-block-column.swl-has-mb--s {
    border: 3px solid #fbc972;
    padding: 10px;
    background: #ffffff;
    border-radius: 10px;
	max-width: 360px;
}

/*NEWS*/
/*NEWバッジ*/
.wp-block-latest-posts:not(.is-grid) {
    border-top: none;
}
.new-mark .wp-block-latest-posts__post-title::before {
content: "NEW";
    display: inline-block;
    background-color: #f7c646;
    color: #fff;
    line-height: 1;
    margin-right: .5em;
    padding: .5em .7em;
    font-size: .7em;
    vertical-align: text-bottom;
    border-radius: 5px;
}
.news_area {
	position: relative;
	z-index: 1;
}
.news_area::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 5%;
    right: 9%;
    background-image: url(http://hirogaru-mirai.co.jp/example/wp-content/uploads/2026/02/cloud02.png);
    width: 230px;
    height: 155px;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 0;
    animation: move-y 1.5s infinite alternate ease-in-out;
}
.news_area::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 5%;
    background-image: url(http://hirogaru-mirai.co.jp/example/wp-content/uploads/2026/02/cloud.png);
    width: 420px;
    height: 215px;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -2;
	animation: move-y 2s infinite alternate ease-in-out;
}
@keyframes move-y {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(20px);
    }
}

ul.wp-block-latest-posts__list.has-dates.wp-block-latest-posts {
    width: 100%;
    max-width: 500px;
    margin: auto;
}
.wp-block-latest-posts:not(.is-grid) li {
    display: flex;
    border-bottom: none;
    justify-content: center;
    flex-direction: row-reverse;
    gap: 20px;
    align-items: center;
}
.wp-block-latest-posts__post-title {
    flex: 1;
    margin-right: 1em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 90%;
}
.wp-block-latest-posts__post-date {
    white-space: nowrap;
    flex-shrink: 0;
	font-weight: bold;
}
/*CTA*/
.cta .is-style-clmn-shadow>.swell-block-columns__inner>.swell-block-column {
    background-color: #ffffffde;
    box-shadow: var(--swl-box_shadow);
    color: #333;
}

/*フッター*/
.swell-block-columns.footer_logo_3 {
    width: 100%;
    max-width: 350px;
    margin: auto;
}

