/*!
Theme Name: 7base
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: temp_base
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

temp_base is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments



--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */ 
@media print, screen and (min-width:769px) { 

html {
    font-family: maru-maru-gothic-bsr-stdn, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 62.5%;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}
    
.pop-font {
    font-family: vdl-logomarupop-futoline, sans-serif;
    font-weight: 400;
    font-style: normal;
}

/* Box sizing
--------------------------------------------- */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #333333;
	font-family:inherit;
	font-size: 1.7rem;
	line-height: 1.7;
	letter-spacing: 0.08em;
}
b,
strong {
	font-weight: bolder;
}
small {
	font-size: 80%;
}
blockquote {
	margin: 0 1.5em 1.6em;
	padding: 15px;
	border: 1px solid #e2e2e2;
	border-radius: 5px;
}
address {
	margin: 0 0 1.5em;
}
/* Elements
--------------------------------------------- */
body {
	background: #fff;
	overflow-x: hidden;
    background-color: #E1FAFF;
}
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}
dt {
	font-weight: 700;
}
dd {
	margin: 0 1.5em 1.5em;
}
/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}
img {
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
figure {
	margin: 1em 0;
}
figcaption {
	padding: 5px 0;
}
table {
	margin: 0 0 1.5em;
	width: 100%;
}
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}
/*SP用の要素を非表示*/
.sp_show {
	display: none !important;
}

/* Links
--------------------------------------------- */
a {
	color: #000;
    text-decoration: none;
}
a:visited {
	color: #000;
    text-decoration: none;
}
a:hover,
a:focus,
a:active {
	color: #000;
	text-decoration: none;
}
a:focus {
	outline: none;
    text-decoration: none;
}
a:hover,
a:active {
	outline: 0;
    text-decoration: none;
}
#page a:hover img,
.site_header a:hover img,
.contents_1col_top a:hover img {
	opacity:0.78;
	-webkit-transition:0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.2em .5em 0.6em;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}
button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: inherit;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}
select {
	border: 1px solid #ccc;
}
textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
main.contents_top {
	margin: 0 auto;
}

main.contents_top p {
	font-size: clamp(1.4rem, 1.5vw, 1.8rem);
}

main.contents_page {
	padding: 0 50px;
}

main .contents_page_inner {
	margin: 6vw auto 100px;
	padding: 80px;
	max-width: 1400px;
    background-color: #fff;
    border-radius: 30px;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
    position: relative;
}
main .contents_page_inner.page_2col {
	display: flex;
	justify-content: space-between;
	
}
main .contents_page_inner.page_2col article {
	width: 72%;
}
main .contents_page_inner.page_2col aside {
	margin-left: 5%;
	width: clamp(250px, 28%, 340px);
}

/*要素をコンテナから開放*/
.breaking-out {
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}
/*子要素を内側にプレス*/
.press-inside {
	padding-right: calc(50vw - 50%);
	padding-left: calc(50vw - 50%);
}
    
/*フェードイン用のcss*/
/*下からフェードイン*/    
.js-fade {
    opacity: 0;
    visibility: hidden;
    transform: translateY(50px);
    transition: opacity 1.5s,visibility 1.5s, transform 1.5s;
}

.scroll {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
}
    
/*右からフェードイン*/
.js-fadeRight {
    opacity: 0;
    visibility: hidden;
    transform: translateX(80px);
    transition: opacity 1.5s,visibility 1.5s, transform 1.5s;
}
.js-fadeRight.scroll {
    opacity: 1;
    visibility: visible;
    transform: translateX(0px);
}


    
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* header
--------------------------------------------- */
.header {
	background: #FFF;
    width: 97%;
	max-width: 1500px;
    margin: 0 auto;
    border-radius: 15px;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
}
    
.header_inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	padding: 20px 5vw 25px;
    margin-top: 10px;
    
}
    
.header_inner ul {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 33vw;
    max-width: 400px;
}
    
.header_inner ul .header_nav a {
    position: relative;
    transition: .2s all;
    font-size: clamp(1.4rem, 1.5vw, 1.8rem);
}
    
.header_inner ul .header_nav a:hover::after {
    content: "●";
    font-size: 1.2rem;
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: .5;
}
    
.header_inner ul .header_nav.nav01 a:hover::after {
    color: #64bde3;
}
    
.header_inner ul .header_nav.nav02 a:hover::after {
    color: #ff7a7f;
}
    
.header_inner ul .header_nav.nav03 a:hover::after {
    color: #ffe047;
}
    
.header_inner ul .header_nav.nav04 a:hover::after {
    color: #8cc63f;
}
    
.header_inner ul .header_nav.nav05 a:hover::after {
    color: #ff6b42;
}
    
.header_inner ul .header_nav.nav06 a:hover::after {
    color: #b4f3ff;
    opacity: 1;
}
    
.site_title {
	max-width: 250px;
    width: 15vw;
}
.site_title a {
	display: block;
}
.header_links {
	width: 70%;
}

.header_links .upper {
	display: flex;
	justify-content: flex-end;
	flex-wrap: nowrap;
	margin-bottom: 10px;
}

/*検索*/
.search_wrap {
	margin: 0;
	display: flex;
	align-items: baseline;
	font-size: 1.3rem;
}
#sbox {
	margin: 0 1rem;
    padding: 0 7px;
    width: clamp(150px, 15vw , 200px);
    border: solid 1px #777;
    border-radius: 5px;
	font-size: 1.3rem;
}
#sbtn {
	padding: 0em .5em .4em;
    color: #777;
	font-size: 1.4rem;
    border: none;
    background: #fff;
	text-align: center;
}
#sbtn img {
	position: relative;
	top: .25em;
	left: -.15em;
	width: 17px;
	height: auto;
}
 
 /*文字サイズボタン*/
.font_wrap {
	display: flex;
	align-items: baseline;
	justify-content: flex-end;
	margin-left: 2rem;
	font-size: 1.3rem;
}
.font_wrap .font_btn {
	margin-left: .5em;
	padding: .2rem .4rem .35rem;
	color: #fff;
	background: #97C8B1;
	border: 1px solid #777;
	border-radius: 3px;
}
.font_wrap .font_btn:hover {
	cursor: pointer;
}
.font_wrap .font_btn.large {
	font-size: 115%;
}
.font_wrap .font_btn.active {
	background: #2E7755;
}


.header_links ul.lower {
	text-align: right;
}

@media print, screen and (max-width:1100px) { 
.header_links ul.lower img {
	width: 230px;
}

}

/*パンくずリスト*/
#breadcrumb {
	padding: 30px 0 35px;
	font-size: 75%;
	text-align: left;
}
#breadcrumb_inner {
	margin: 0 auto;
	padding: 0;
	width: 96%;
	max-width:1400px;
	color:#222;
}
#breadcrumb_inner a {
	display: inline-block;
	margin: 0 10px 0 5px;
	padding: 2px 1em;
	color: #000;
    background: #fff;
    text-decoration: none;
    border-radius: 5px;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
}
#breadcrumb_inner a:hover {
	background: #FF9C50;
    color: #fff;
	text-decoration:none;
	transition: all .2s;
}
#breadcrumb_inner .current-item {
	display: inline-block;
	margin: 0 5px;
	padding: 2px 1em 2px 0;
	color: #000;
	text-decoration: none;
	border-radius: 15px;
}


/* Navigation
--------------------------------------------- */
.pc_nav {
	background: #FFF6E9;
	border-bottom: 6px solid #FFBBBD;
	margin-top: 10px;
	transition: all .2s;
}
.pc_nav ul.pc_nav_menu {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	margin: 0 auto;
	width: 100%;
	max-width: 1400px;
	font-size: 97%;
}
.pc_nav ul.pc_nav_menu > li {
	flex-grow: 1;
	position: relative;
}
.pc_nav ul.pc_nav_menu > li.menu-item-home:before {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	display: inline-block;
	background: #FFBBBD;
	width: 30px;
	height: 8px;
}

/*リンクのスタイル*/
.pc_nav a,
.pc_nav a:hover,
.pc_nav a:active,
.pc_nav a:visited {
	color: #222;
	text-decoration: none;
	/*font-size: 100%;*/
	font-weight: 500;
	letter-spacing: 0.08em;
}
@media print, screen and (max-width:1100px) { 
.pc_nav a,
.pc_nav a:hover,
.pc_nav a:active,
.pc_nav a:visited {
	font-size: 84%;
}
}

/*親メニュー*/
.pc_nav ul.pc_nav_menu > li > a {
	position: relative;
	display: block;
	padding: 15px 5px;
	text-align: center;
}
.pc_nav ul.pc_nav_menu > li > a:hover,
.pc_nav ul.pc_nav_menu > li > a:active {
	background: rgba(253, 216, 217, 0.4);
}
/*#pc_nav ul.nav > li:not(.menu-item-has-children) > a:hover,
#pc_nav ul.nav > li:not(.menu-item-has-children) > a:active {
	background: rgba(253, 216, 217, 0.4);
}
*/
/*子メニュー*/
.pc_nav ul.pc_nav_menu > li > ul.sub-menu  {
	display: none;
	position: absolute;
	left: 0;
    top: 100%;
	background: #FFF4E5;
	border-left: 6px solid #FFBBBD;
	width: clamp(170px, 17vw, 220px);
	font-size: 93%;
	z-index: 10;
}

.pc_nav ul.pc_nav_menu > li > ul.sub-menu > li {

}
.pc_nav ul.pc_nav_menu > li > ul.sub-menu > li a {
	display: block;
	padding: 13px 8px 13px 13px;
}
.pc_nav ul.pc_nav_menu > li > ul.sub-menu > li a:hover,
.pc_nav ul.pc_nav_menu > li > ul.sub-menu > li a:active {
	background: rgba(253, 216, 217, 0.4);
}

/* TOP　コンテンツ
--------------------------------------------- */
h2.h2_top {
	color: #65240B;
	font-size: 4.0rem;
	font-weight: 500;
	letter-spacing: 0.9rem;
	text-align: center;
}
    
    .mv_container {
        max-width: 1400px;
		width: 95%;
        margin: 0 auto;
    }

.mv {
	width: 100%;
	height: 30vw;
    display: flex;
    max-width: 1400px;
    margin: 0 auto;
    justify-content: center;
    position: relative;
    padding: 0 20px;
}

.mv ul {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.mv ul li {
	background-color: #fff;
    padding: 10px 20px;
    border-radius: 15px;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
    margin-bottom: 20px;
    width: fit-content;
    font-size: clamp(1.8rem, 2vw, 3.2rem);
}

.mv .mv_img_wrap {
	position: relative;
	width: 38%;
	height: auto;
}
.mv .mv_img_wrap img {
	position: absolute;
	top: 2vw;
    left: 0px;
}
.mv .mv_img_wrap img.float_img {
	z-index: 10;
}


/*今日の行事予定*/
    .today_event {
        width: 60vw;
        display: flex;
        margin: 20px 0px 80px auto;
    }
    
    .today_event .airplane {
        width: 120px;
        height: 69px;
        margin-right: 2vw;
    }
    
    .today_event .today_event_inner {
        background-color: #fff;
        border-radius: 15px;
        padding: 16px 60px 20px;
        min-width: 500px;
        width: 100%;
        box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
        z-index: 20;
    }
    
    .today_event h2 {
        position: relative;
        font-size: clamp(2rem, 2vw, 3.2rem);
        padding-left: 3vw;
        margin: 0 0 10px;
    }
    
    .today_event h2::before {
        content: "●";
        color: #FF6B42;
        font-size: clamp(2rem, 2vw, 3.2rem);
        position: absolute;
        top: 0px;
        left: 0px;
    }
    
    .today_event .title {
        font-size: clamp(1.8rem, 1.5vw, 2.4rem);
        margin-bottom: 5px;
    }
    
    .today_event .description {
        font-size: clamp(1.6rem, 1vw, 1.8rem);
    }

    .upcoming_events_container {
        padding: 0 50px;
    }
    
/*これからの行事予定*/
    .upcoming_events {
        background-color: #fff;
        border-radius: 20px;
        padding: 30px 50px 50px;
        max-width: 1400px;
        margin: 0 auto 220px;
        box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
    }

    .upcoming_events h2 {
        position: relative;
        font-size: clamp(2rem, 2vw, 3.2rem);
        padding-left: 3vw;
        margin: 0 0 10px;
    }
    
    .upcoming_events h2::before {
        content: "●";
        color: #FF9C50;
        font-size: clamp(2rem, 2vw, 3.2rem);
        position: absolute;
        top: 0px;
        left: 0px;
    }
    
    .upcoming_events .event-list {
        display: flex;
        justify-content: space-between;
    }
    
    .upcoming_events .event-list .event-item {
        flex: 1; /* 幅を均等に分割 */
        margin-right: 10px; /* 右の余白 */
        padding: 10px;
        max-width: 324px;
    }
    
    /* 最後のイベントリストアイテムの余白を削除 */
    .upcoming_events .event-list .event-item:last-child {
        margin-right: 0;
    }

    /* 空のイベントリストアイテムのスタイル */
    .upcoming_events .event-list .event-item.empty {
        visibility: hidden; /* 空の場合は非表示 */
    }
    
    .upcoming_events .event-list li .date {
        font-size: clamp(4rem, 5vw, 8rem);
        color: #FF9C50;
    }
    
    .upcoming_events .event-list li .title {
        font-size: clamp(1.6rem, 2vw, 2.4rem);
    }
    
    .upcoming_events .event-list li .description {
        font-size: clamp(1.4rem, 1.8vw, 2rem);
    }
    
/*学童の特長*/
    .content_container1 {
        background-color: #F5F5F5;
        position: relative;
        padding: 80px 20px;
    }
    
    .content_container1::before {
        content: "";
        background-image: url("images/pages/content_container1_top.png");
        background-size: cover;
        position: absolute;
        width: 100%;
        height: 185px;
        top: -183px;
        left: 0;
    }
    
    .content_container1 #features {
        margin-top: 100px;
        padding: 60px 50px 110px;
        background-color: #fff;
        max-width: 1400px;
        margin: 0 auto 120px;
        border-radius: 30px;
        box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
    }
    
    .content_container1 #features h2 {
        font-size: clamp(3.2rem, 3vw, 4rem);
        text-align: center;
        margin: 0 auto 70px;
        position: relative;
        width: fit-content;
    }
    
    .content_container1 #features h2::before {
        content: "";
        background-image: url("images/pages/paper_airplane.png");
        background-size: cover;
        position: absolute;
        max-width: 264px;
        max-height: 133px;
        top: -180%;
        left: -120%;
        width: 18vw;
        height: 9vw;
    }
        
/*
    .content_container1 #features h2::after {
        content: "";
        background-image: url("images/pages/balloon01.png");
        background-size: cover;
        position: absolute;
        max-width: 142px;
        max-height: 235px;
        top: -150px;
        right: -200px;
        width: 15vw;
        height: 24vw;
    }
*/
    
    .floating-balloon {
        position: absolute;
        background-size: cover;
        transition: transform 0.5s ease-in-out;
    }
    
    .balloon01 {
        background-image: url("images/pages/balloon01.png");
        max-width: 142px;
        max-height: 235px;
        width: 15vw;
        height: 24vw;
        top: -150px;
        right: -200px;
    }
        
    .content_container1 #features .features_text {
        max-width: 1200px;
        margin: 0 auto;
    }
        
    .content_container1 #features .features_text p {
        margin-bottom: 20px;
    }
        
    .content_container1 .features_img {
        position: relative;
        top: -130px;
        left: 50%;
        transform: translate(-50%, -50%);
        max-width: 300px;
        max-height: 155px;
        width: 25vw;
    }
    
/*学童の一日*/
    .content_container1 #one_day {
        margin-top: 100px;
        padding: 60px 50px 50px;
        background-color: #fff;
        max-width: 1400px;
        margin: 0 auto 250px;
        border-radius: 30px;
        box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
    }
    
    .content_container1 #one_day .one_day_content {
        max-width: 1200px;
        margin: 0 auto;
    }
    
    .content_container1 #one_day h2 {
        font-size: clamp(3.2rem, 3vw, 4rem);
        text-align: center;
        margin: 0 auto 70px;
        position: relative;
        width: fit-content;
    }
    
/*
    .content_container1 #one_day h2::before {
        content: "";
        background-image: url("images/pages/balloon02.png");
        background-size: cover;
        position: absolute;
        max-width: 161px;
        max-height: 255px;
        top: -150px;
        left: -200px;
        width: 16vw;
        height: 25vw;
    }
*/
    
    .balloon02 {
        background-image: url("images/pages/balloon02.png");
        max-width: 161px;
        max-height: 255px;
        top: -150px;
        left: -200px;
        width: 16vw;
        height: 25vw;
    }

    
    .content_container1 #one_day .timeline_block {
        display: flex;
        justify-content: space-around;
        margin: 50px 1%;
    }
    
    .content_container1 #one_day .timeline_block .after_school .title {
        width: fit-content;
        font-size: 2.8rem;
        color: #fff;
        background-color: #8CC63F;
        padding: 12px 35px;
        border-radius: 15px;
        position: relative;
        top: 70px;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
    }
    
    .content_container1 #one_day .timeline_block .after_school .title p {
        font-size: clamp(1.8rem, 2vw, 2.8rem);
    }
    
    .content_container1 #one_day .timeline_block .after_school .timeline {
        background-color: #FFFFF8;
        padding: 70px 3vw 3vw;
        position: relative;
        border-radius: 15px;
        box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
    }
    
    .content_container1 #one_day .timeline_block .after_school .timeline::after {
        content: "";
        background-image: url("images/pages/after_school_img.png");
        background-size: cover;
        max-width: 250px;
        max-height: 327px;
        position: absolute;
        top: 60%;
        right: -14%;
        width: 13vw;
        height: 17vw;
        z-index: 10;
    }
    
    .content_container1 #one_day .timeline_block .after_school .timeline ul li {
        margin-bottom: clamp(14%, 2vw, 20%);
        position: relative;
        font-size: clamp(1.4rem, 1.8vw, 2.4rem);
    }
    
    .content_container1 #one_day .timeline_block .after_school .timeline ul li.triangle::after {
        content: "";
        background-image: url("images/pages/triangle_green.png");
        background-size: cover;
        width: 12px;
        height: 11px;
        position: absolute;
        bottom: -85%;
        left: 10.5%;
        transform: translate(-50%, -50%);
    }
    
    .content_container1 #one_day .timeline_block .after_school .timeline ul li span {
        margin-left: 40px;
    }
    
    .content_container1 #one_day .timeline_block .all_day .title {
        width: fit-content;
        font-size: 2.8rem;
        color: #fff;
        background-color: #FF9C50;
        padding: 12px 35px;
        border-radius: 15px;
        position: relative;
        top: 70px;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
    }
    
    .content_container1 #one_day .timeline_block .all_day .title p {
        font-size: clamp(1.8rem, 2vw, 2.8rem);
    }
    
    .content_container1 #one_day .timeline_block .all_day .timeline {
        background-color: #FFFFF8;
        padding: 70px 3vw 3vw;
        position: relative;
        border-radius: 15px;
        box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
    }
    
    .content_container1 #one_day .timeline_block .all_day .timeline::after {
        content: "";
        background-image: url("images/pages/all_day_img.png");
        background-size: cover;
        max-width: 130px;
        max-height: 154px;
        position: absolute;
        bottom: -20px;
        right: -15%;
        width: 7vw;
        height: 8vw;
    }
    
    .content_container1 #one_day .timeline_block .all_day .timeline ul li {
        margin-bottom: clamp(14%, 2vw, 20%);
        position: relative;
        font-size: clamp(1.4rem, 1.8vw, 2.4rem);
    }
    
    .content_container1 #one_day .timeline_block .all_day .timeline ul li.triangle::after {
        content: "";
        background-image: url("images/pages/triangle_orange.png");
        background-size: cover;
        width: 12px;
        height: 11px;
        position: absolute;
        bottom: -80%;
        left: 10.5%;
        transform: translate(-50%, -50%);
    }
    
    .content_container1 #one_day .timeline_block .all_day .timeline ul li span {
        margin-left: 40px;
    }
    
/*年間行事*/
.content_container1 #annual_events {
    margin-top: 100px;
    padding: 60px 50px 50px;
    background-color: #fff;
    max-width: 1400px;
    margin: 0 auto 50px;
    border-radius: 30px;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
}

.content_container1 #annual_events h2 {
    font-size: clamp(3.2rem, 3vw, 4rem);
    text-align: center;
    margin: 0 auto 70px;
    position: relative;
    width: fit-content;
}

/*
.content_container1 #annual_events h2::before {
    content: "";
    background-image: url("images/pages/balloon03.png");
    background-size: cover;
    position: absolute;
    max-width: 202px;
    max-height: 260px;
    top: -170px;
    right: -280px;
    width: 17vw;
    height: 24vw;
}
*/
    
.balloon03 {
    background-image: url("images/pages/balloon03.png");
    max-width: 202px;
    max-height: 260px;
    top: -170px;
    right: -280px;
    width: 17vw;
    height: 24vw;
}


.content_container1 #annual_events .annual_events_text {
    max-width: 1200px;
    margin: 0 auto;
}

.annual_events_content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 80px 0 0;
}

.annual_events_content .event01,
.annual_events_content .event02,
.annual_events_content .event03,
.annual_events_content .event04,
.annual_events_content .event05,
.annual_events_content .event06,
.annual_events_content .event07,
.annual_events_content .event08,
.annual_events_content .annual_event_img {
    width: 30%; /* 幅を30%に設定 */
    box-sizing: border-box; /* ボックスサイズを考慮 */
    padding: 10px;
    margin-right: 20px; /* 右の余白 */
    margin-bottom: 60px; /* 下の余白 */
}
    
/*最後のイベントリストの余白を削除*/
.annual_events_content .event03,
.annual_events_content .event06,
.annual_events_content .event09 {
    margin-right: 0; /* 右の余白を削除 */
}

.annual_event .title {
    text-align: center;
    padding: 0 0 5px;
}

.event01 .title {
    border-bottom: 2px dashed #FF4471;
}

.event02 .title {
    border-bottom: 2px dashed #FFDD9A;
}

.event03 .title {
    border-bottom: 2px dashed #44E5FF;
}

.event04 .title {
    border-bottom: 2px dashed #4489FF;
}

.event05 .title {
    border-bottom: 2px dashed #058A24;
}

.event06 .title {
    border-bottom: 2px dashed #FFD31E;
}

.event07 .title {
    border-bottom: 2px dashed #FF4444;
}

.event08 .title {
    border-bottom: 2px dashed #44FF4A;
}

.annual_events_content .annual_event_img img {
    text-align: center;
}

.annual_event .title {
    font-size: clamp(1.4rem, 1.5vw, 2.4rem);
}
    
.annual_event .description {
    padding: 10px 5px 0px;
    font-size: clamp(1.4rem, 1vw, 1.6vw);
}
    
/* 1000px以下で2列に変更 */
@media (max-width: 1000px) {
    .annual_events_content .event01,
    .annual_events_content .event02,
    .annual_events_content .event03,
    .annual_events_content .event04,
    .annual_events_content .event05,
    .annual_events_content .event06,
    .annual_events_content .event07,
    .annual_events_content .event08 {
        width: 48%; /* 幅を48%に設定して2列に */
        margin-right: 0; /* 右の余白を削除 */
    }
    
    .annual_events_content .annual_event_img {
        width: 100%;
        text-align: center;
    }
}
    
/*年間行事下の波線*/
.content_container1::after {
    content: "";
    background-image: url("images/pages/content_container1_bottom.png");
    background-size: cover;
    position: absolute;
    width: 100%;
    height: 110px;
    bottom: -108px;
    left: 0;
}

/*お知らせ～footerまで*/
.content_container2 {
    background-color: #FFFEEB;
    padding: 270px 50px 50px;
    overflow-x: hidden;
}
    
/*お知らせ*/
section#news {
	padding: 60px 50px 150px;
    background-color: #fff;
    max-width: 1400px;
    margin: 0 auto 200px;
    border-radius: 30px;
    position: relative;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
}
    
section#news::after {
	content: "";
    background-image: url("images/pages/news_img.png");
    background-size: cover;
    width: 100px;
    height: 272px;
    position: absolute;
    bottom: 30px;
    right: -85px;
}
    
.content_container2 section#news h2 {
    font-size: clamp(3.2rem, 3vw, 4rem);
    text-align: center;
    margin: 0 auto 70px;
    position: relative;
    width: fit-content;
}
    
/*
.content_container2 section#news h2::before {
    content: "";
    background-image: url("images/pages/balloon04.png");
    background-size: cover;
    position: absolute;
    max-width: 201px;
    max-height: 296px;
    top: -170px;
    left: -230px;
    width: 15vw;
    height: 23vw;
}
*/

.balloon04 {
    background-image: url("images/pages/balloon04.png");
    max-width: 201px;
    max-height: 296px;
    top: -170px;
    left: -230px;
    width: 15vw;
    height: 23vw;
}


section#news .news_container {
	display: flex;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
}

/*過去一覧*/
.news_more {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 20%;
}
    
.news_more a {
    position: relative;
    padding-bottom: 60px;
    text-align: center;
}
    
.news_more a::after {
    content: "";
    background-image: url("images/pages/arrow_green.png");
    background-size: cover;
    position: absolute;
    width: 45px;
    height: 45px;
    bottom: -15px;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: transparent;
    border-radius: 50%;
    transition: .2s background-color;
}
    
.news_more a:hover::after {
    background-color: #8CC63F;
}
    
/*アイキャッチ無しの場合*/
ul.news_wrapper {
	width: 75%;
}
    
ul.news_wrapper li.news_box {
	border-bottom: 1px dashed #707070;
}
    
ul.news_wrapper li.news_box:first-child {
	border-top: 1px dashed #707070;
}
    
ul.news_wrapper li.news_box a {
	display: flex;
    position: relative;
    padding: 2em 1em;
}

ul.news_wrapper li.news_box a::after {
	content: "";
    background-image: url("images/pages/arrow_orange.png");
    background-size: cover;
    width: 45px;
    height: 45px;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translate(-50%, -50%);
    background-color: transparent;
    border-radius: 50%;
    transition: .5s background-color;
}

ul.news_wrapper li.news_box a:hover::after {
    background-color: #FF6B42;
}

ul.news_wrapper li.news_box a time.date span {
	border-right: 1px solid #202020;
    padding: 5px 30px 5px 0;
    transition: .5s all;
}

ul.news_wrapper li.news_box a:hover time.date span {
	border-right: 1px solid #FF6B42;
}

ul.news_wrapper li.news_box a .title {
    padding: 0 0 0 30px;
}


/*リンク色*/
ul.news_wrapper li.news_box a:hover,
ul.news_wrapper li.news_box a:active {
	color: #FF6B42;
	transition: all .5s;
}
img.mark_new {
	position: relative;
	top: -.5em;
    right: 0px;
}

/*保育所概要*/
section#overview {
	padding: 60px 50px 8vw;
    background-color: #fff;
    max-width: 1400px;
    margin: 0 auto 200px;
    border-radius: 30px;
    position: relative;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
}
    
section#overview::after {
	content: "";
    background-image: url("images/pages/overview_img.png");
    background-size: cover;
    max-width: 227px;
    max-height: 133px;
    position: absolute;
    bottom: -5px;
    right: 50px;
    width: 17vw;
    height: 10vw;
}

.content_container2 section#overview h2 {
    font-size: clamp(3.2rem, 3vw, 4rem);
    text-align: center;
    margin: 0 auto 70px;
    position: relative;
    width: fit-content;
	z-index: 10;
}
    
/*.content_container2 section#overview h2::before {
    content: "";
    background-image: url("images/pages/balloon05.png");
    background-size: cover;
    position: absolute;
    max-width: 178px;
    max-height: 308px;
    top: -170px;
    right: -230px;
    width: 12vw;
    height: 21vw;
}*/
    
.balloon05 {
    background-image: url("images/pages/balloon05.png");
    max-width: 178px;
    max-height: 308px;
    top: -170px;
    right: -230px;
    width: 12vw;
    height: 21vw;
}

section#overview .overview_img {
	margin: 0 auto 2vw;
	text-align: center;
}
section#overview .overview_img img {
	border-radius: 10px;
}
section#overview .overview_img.flex_2col {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1000px;
}
section#overview .overview_img.flex_2col figure {
	width: 48%;
}
    
    .content_container2 section#overview #tablepress-1 {
        max-width: 1000px;
        margin: 0 auto;
    }
    
    .content_container2 section#overview #tablepress-1 tbody tr td {
        border-top: 1px dashed #707070;
        padding: 2em 1em;
    }
    
    .content_container2 section#overview #tablepress-1 tbody tr.row-4 td {
        border-bottom: 1px dashed #707070;
    }
    
/*アクセス*/
section#access {
    padding: 60px 50px 50px;
    background-color: #fff;
    max-width: 1400px;
    margin: 0 auto 50px;
    border-radius: 30px;
    position: relative;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
}

.content_container2 section#access h2 {
    font-size: clamp(3.2rem, 3vw, 4rem);
    text-align: center;
    margin: 0 auto 70px;
    position: relative;
    width: fit-content;
}

/*
.content_container2 section#access h2::before {
    content: "";
    background-image: url("images/pages/balloon06.png");
    background-size: cover;
    position: absolute;
    max-width: 166px;
    max-height: 284px;
    top: -170px;
    left: -230px;
    width: 15vw;
    height: 24vw;
}
*/
    
.balloon06 {
    background-image: url("images/pages/balloon06.png");
    max-width: 166px;
    max-height: 284px;
    top: -170px;
    left: -230px;
    width: 15vw;
    height: 24vw;
}


.content_container2 section#access #tablepress-2 {
    max-width: 1000px;
    margin: 0 auto 50px;
}

.content_container2 section#access #tablepress-2 tbody tr td {
    border-top: 1px dashed #707070;
    padding: 2em 1em;
}
    
.content_container2 section#access #tablepress-2 tbody tr.row-2 td {
    border-bottom: 1px dashed #707070;
}
    
.content_container2 section#access .map {
    position: relative;
    width: fit-content;
    margin: 0 auto;
}
    
.content_container2 section#access .map::after {
    content: "";
    background-image: url("images/pages/access_img.png");
    background-size: cover;
    max-width: 353px;
    max-height: 125px;
    position: absolute;
    top: -5vw;
    right: 2vw;
    width: 23vw;
    height: 8vw;
}
    
.content_container2 section#access iframe {
    margin: 0 auto;
    display: block;
    position: relative;
}
    
/* Posts and pages
--------------------------------------------- */
.entry-content p {
	margin-bottom: 1.6em;
}
.entry-content ul,
.entry-content ol {
	margin: 0 0 1.5em 3em;
}

.entry-content ul {
	list-style: disc;
}

.entry-content ol {
	list-style: decimal;
}

.entry-content li > ul,
.entry-content li > ol {
	margin-bottom: 0;
	margin-left: 1.2em;
}
.entry-content .entry_meta {
	margin: 0 10px 50px;
	text-align: left;
	font-size: clamp(1.4rem, 1.5vw, 1.8vw);
}
.entry-content a,
.entry-content a:visited {
	color: #0a89a7;
	text-decoration: underline;
}
.entry-content a:hover,
.entry-content a:active {
	text-decoration: none;
}

.sticky {
	display: block;
}

/*.post,
.page {
	margin: 0 0 1.5em;
}*/

.updated:not(.published) {
	display: none;
}

/*.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}*/

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}


/* Posts and pages（見出し）
--------------------------------------------- */
/* H1 */
h1.entry-title,
h1.category_name {
	padding: .8em;
	font-size: clamp(3.2rem, 3vw, 4.0rem);
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.08em;
    margin: 0 auto 20px;
    width: fit-content;
}
    
.single h1.entry-title {
	font-size: clamp(2.7rem, 2.5vw, 3.4rem);
}
/* H2 */
.entry-content h2 {
	margin: 20px 0;
	padding: 8px 0;
	font-size: 2.4rem;
	font-weight: 700;
}
.entry-content h2:before {
	content: "●";
	color: #FF6B42;
	position: relative;
	left: -8px;
}
/* H3 */
.entry-content h3 {
	margin: 8px 0;
	padding: 8px .5em;
	font-size: 2rem;
	font-weight: 500;
}
.entry-content h3:before {
	content: "〇";
	color: #FF6B42;
	position: relative;
	left: -5px;
}

/* Posts and pages（ページナビ）
--------------------------------------------- */
.wp-pagenavi {
	margin: 30px 0 0;
	text-align: center;
	font-size: 90%;
}
.wp-pagenavi span,
.wp-pagenavi a {
	display: inline-block;
	padding: 2px 8px 3px;
	color: #222;
	border-radius: 4px;
	border: 1px solid #aaa;
}
.wp-pagenavi a 
,.wp-pagenavi a:visited {
	color: #222;
}
.wp-pagenavi a:hover
,.wp-pagenavi a:active {
	background: #FFD6D7;
	text-decoration: none;
	color: #222;
	border: 1px solid #aaa;
}

.wp-pagenavi span.pages {
	display: block;
	text-align: center;
	border: none;
}
.wp-pagenavi span.current {
	color: #fff;
	background: #ff9191;
	border: 1px solid #ff9191;
}

.wp-pagenavi span.extend {
	border: none;
}

/* Posts and pages（検索結果ぺージ）
--------------------------------------------- */
/*ul.search_result {
	list-style: disc;
	padding-left: 30px;
}
ul.search_result li {
	margin-bottom: 0.6em;
}*/


/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* sidebar
--------------------------------------------- */
/* ▼side（これまでのお知らせ） */
aside.past_entry  {
	background: #fff;
	border: 1px solid #ccc;
}
.past_entry h2 {
	padding: 15px 5px;
	font-size: 95%;
	font-weight: 500;
	text-align: center;
	background: #EFEFEF;
}
.past_entry ul.past_entry_list {
	margin: 4%;
}
.past_entry ul li {
	position: relative;
	display: flex;
	flex-direction: column;
	margin-bottom: 13px;
	padding:0 5px 13px 10px;
	border-bottom: 1px dotted #777;
}
.past_entry ul li time {
	order: 1;
	margin-bottom: 5px;
	font-size: 95%;
	font-weight: 500;
}
.past_entry ul li a {
	order: 2;
	font-size: 90%;
}
.past_entry .more {
	margin: 15px 10px;
	text-align: right;
}


/* Widgets
--------------------------------------------- */
/* ▼side（これまでのお知らせ） */
.recent_entry_list section {
	padding: 15px;
	background: #fff6e9;
	border-radius: 10px;
	border: 1px solid #efe4d3;
}
.recent_entry_list a,
.recent_entry_list a:visited {
	color: #222;
	text-decoration: none;
}
.recent_entry_list a:hover,
.recent_entry_list a:active {
	color: #f99ea1;
	transition: all .2s;
}

.recent_entry_list h2 {
	margin: 13px 0 25px;
	/*font-size: 110%;*/
	font-weight: 500;
	text-align: center;
}
.recent_entry_list ul li {
	position: relative;
	display: flex;
	flex-direction: column;
	margin-bottom: 13px;
	padding: 0 0 13px 15px;
	border-bottom: 1px dotted #555;
}
.recent_entry_list ul li:before {
	content: "●";
	position: absolute;
	top: .7em;
	left: 0;
	color: #ffbbbd;
	font-size: .8rem;
	
}
.recent_entry_list ul li time {
	order: 1;
	margin-bottom: 5px;
	font-size: 78%;
	font-weight: 500;
}
.recent_entry_list ul li a {
	order: 2;
	font-size: 90%;
}

/* ▲side（これまでのお知らせ） */

.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}



/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/* お知らせ一覧
--------------------------------------------- */
/*
.category-news .contents_page_inner::before {
    content: "";
    background-image: url("images/pages/balloon02.png");
    background-size: cover;
    position: absolute;
    max-width: 161px;
    max-height: 255px;
    top: -20px;
    left: 30%;
    transform: translate(-50%, -50%);
    width: 16vw;
    height: 25vw;
}
*/
    
.category-news .contents_page_inner .balloon02 {
    left: 20vw;
}
    
.category-news .news_wrapper {
    margin: 0 auto;
    max-width: 1000px;
}
    
.category-news .news_wrapper .news_box .news_title a {
    display: flex;
}
    
.news_wrapper .news_box {
	border-bottom: 1px dashed #707070;
}
    
.news_wrapper .news_box:first-child {
	border-top: 1px dashed #707070;
}
    
.news_wrapper .news_box .news_title a {
	display: flex;
    position: relative;
    padding: 2em 1em;
    transition: .2s all;
}

.news_wrapper .news_box .news_title a::after {
	content: "";
    background-image: url("images/pages/arrow_orange.png");
    background-size: cover;
    width: 45px;
    height: 45px;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translate(-50%, -50%);
    background-color: transparent;
    border-radius: 50%;
    transition: .2s background-color;
}

.news_wrapper .news_box .news_title a:hover {
    color: #FF6B42;
}

.news_wrapper .news_box .news_title a:hover::after {
    background-color: #FF6B42;
}

.news_wrapper .news_box .news_title a .news_ptitle {
    padding: 0 10px;
}
    
.news_wrapper .news_box .news_title a img {
    padding: 7px 0;
}
    
    .pagenation_block {
        width: fit-content;
        margin: 50px auto;
    }
    
    .pagenation_block {
        display: flex;
        column-gap: 30px;
    }
        
    .pagenation_block a.page-numbers,
    .pagenation_block .page-numbers,
    .pagenation_block span.page-numbers {
        align-content: center;
    }
    
    .pagenation_block a.prev img,
    .pagenation_block a.next img {
        background-color: transparent;
        border-radius: 50%;
        transition: .2s background-color;
    }
    
    .pagenation_block a.prev:hover img,
    .pagenation_block a.next:hover img {
        background-color: #8CC63F;
    }
    
    .pagenation_block a.page-numbers:hover {
        color: #8CC63F;
    }

    
/* お知らせ個別ページ
--------------------------------------------- */
/*
.single .contents_page_inner::before {
    content: "";
    background-image: url("images/pages/balloon03.png");
    background-size: cover;
    position: absolute;
    max-width: 202px;
    max-height: 260px;
    top: -20px;
    left: 70%;
    transform: translate(-50%, -50%);
    width: 17vw;
    height: 24vw;
}
*/

.single .contents_page_inner .balloon03 {
    top: -150px;
    left: 60%;
}

    
    .back {
        text-align: center;
        margin-top: 100px;
    } 
    
    .back a {
        padding-right: 60px;
        position: relative;   
        transition: .2s all;
    } 
    
    .back a:hover {
        color: #8CC63F;
    } 
    
    .back a::after {
        content: "";
        background-image: url("images/pages/arrow_green.png");
        background-size: cover;
        position: absolute;
        width: 45px;
        height: 45px;
        bottom: -10px;
        right: -20px;
        background-color: transparent;
        border-radius: 50%;
        transition: .2s background-color;
    }

    .back a:hover::after {
        background-color: #8CC63F;
    }
    
/* 欠席・遅刻連絡
--------------------------------------------- */
.btn_club a,
.btn_club a:visited {
	display: inline-block;
	padding: 10px;
	width: 250px;
	color: #fff;
	font-size: 115%;
	text-decoration: none;
	background: #50c0d6;
	border-radius: 15px;
	transition: all .2s;
}
.btn_club a:hover,
.btn_club a:active {
	background: #059FBD;
	text-decoration: none;
}


.inquiry_list {
	margin: 100px 0 0;
}

.inquiry_list dd,
.inquiry_list dd {
	margin: 0 0 2em;
}
.inquiry_list p {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 1em;
}
.inquiry_list p span.con_notification span {
	width: 100px;
}
.inquiry_list p span.con_notification span input {
	width: auto;
}
.inquiry_list p span.con_notification span span {
	padding: 0 0 2px 5px;
}
.inquiry_list p span.span_text {
	margin: 0 15px;
	align-content: center;
}
.inquiry_list dd.children_name p input.con_gakunen {
	width: 50px;
	text-align: end;
}
.inquiry_list dd.children_name p input.con_namae {
	width: 300px;
}
.inquiry_list dd p input.con_month,
.inquiry_list dd p input.con_day {
	width: 50px;
}
.inquiry_list p span input,
.inquiry_list p span textarea {
	border: none;
	background-color: #f5f5f5;
	padding: 10px;
	border-radius: 10px;
	/*width: 100%;*/
	max-width: 750px;
}
.inquiry_list dd p input.con_parent {
	width: 300px;
}
.inquiry_list .must {
	display: block;
	flex-grow: 0;
	flex-shrink: 0;
	padding: 2px max(6px,.44vw) 4px;
	margin: 0 0 2px 10px;
	font-size: 12px;
	line-height: 24px;
	border-radius: max(6px,.44vw);
	color: #fff;
	background-color: #cf1d05;
	height: 30px;
}
.inquiry_list #agreement input,
.inquiry_list #agreement input#tsugi {
	border: 2px solid #8CC63F;
	padding: 20px 40px;
	background-color: #fff;
	transition: all .2s;
}
.inquiry_list #agreement input#modoru {
	border: 2px solid #ddd;
	padding: 20px 40px;
	background-color: #fff;
	transition: all .2s;
}
.inquiry_list #agreement input:hover,
.inquiry_list #agreement input:active,
.inquiry_list #agreement input#tsugi:hover,
.inquiry_list #agreement input#tsugi:active {
	background-color: #8CC63F;
	color: #fff;
}
.inquiry_list #agreement input#modoru:hover,
.inquiry_list #agreement input#modoru:active {
	background-color: #ddd;
}

    
/* 保護者様一斉メール登録フォーム
--------------------------------------------- */    
.mailpoet_paragraph label {
	margin: 0 auto 5px 0;
}

.mailpoet_paragraph input.mailpoet_text {
	width: 30% !important;
	min-width: 300px;
	margin: 0 auto 10px 0 !important;
	background-color: #f5f5f5;
	padding: 10px;
	border-radius: 10px;
	border: none;
}

.mailpoet_paragraph input#form_email_1 {
	width: 50% !important;
	min-width: 500px;
}

.mailpoet_paragraph input.mailpoet_submit {
	width: 50% !important;
	min-width: 500px;
	margin: 50px auto 10px !important;
	border: 2px solid #8CC63F;
	padding: 20px 40px !important;
	border-radius: 10px;
	display: block;
	transition: all .4s;
}

.mailpoet_paragraph input.mailpoet_submit:hover {
	background-color: #8CC63F;
	color: #fff;
}

/* Posts and pages（一斉メール関連ページ）
--------------------------------------------- */
/*登録解除ぺージ*/
.page-id-243 .link {
	text-align: center;
}



/* footer
--------------------------------------------- */    
#site_footer {
	background: #fffeeb;
    position: relative;
    padding: 5vw 50px 0;
}
    
#site_footer::after {
	content: "";
    background-image: url("images/footers/footer_img.png");
    background-size: cover;
    max-width: 239px;
    max-height: 141px;
    position: absolute;
    bottom: 3vw;
    left: 5vw;
    width: 17vw;
    height: 10vw;
}
    
.footer_innerwrap .footer_nav_menu {
	display: flex;
    justify-content: space-between;
    font-size: clamp(1.4rem, 1.5vw, 1.8rem);
    margin: 0 auto;
	padding: 40px 5vw;
	max-width: 1400px;
    background-color: #fff;
    border-radius: 20px;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
}
    
.footer_innerwrap .footer_nav_menu .nav_menu a {
    position: relative;
    transition: .2s all;
}
    
.footer_innerwrap .footer_nav_menu .nav_menu a:hover::after {
    content: "●";
    font-size: 1.2rem;
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: .5;
}
    
.footer_innerwrap .footer_nav_menu .nav_menu.nav01 a:hover::after {
    color: #64bde3;
}
    
.footer_innerwrap .footer_nav_menu .nav_menu.nav02 a:hover::after {
    color: #ff7a7f;
}
    
.footer_innerwrap .footer_nav_menu .nav_menu.nav03 a:hover::after {
    color: #ffe047;
}
    
.footer_innerwrap .footer_nav_menu .nav_menu.nav04 a:hover::after {
    color: #8cc63f;
}
    
.footer_innerwrap .footer_nav_menu .nav_menu.nav05 a:hover::after {
    color: #ff6b42;
}
    
.footer_innerwrap .footer_nav_menu .nav_menu.nav06 a:hover::after {
    color: #b4f3ff;
    opacity: 1;
}


.footer_innerwrap img {
	display: block;
    margin: 50px auto;
}

/*フッターの共通スタイル*/

/*コピーライト*/
#copyright {
	padding: 15px 0 10px;
	font-size: 1.0rem;
	text-align: center;
	letter-spacing: 0.25em;
}
#copyright a,
#copyright a:visited {
	color: #222;
	text-decoration: none;
}
#copyright a:hover,
#copyright a:active {
	text-decoration: underline;
}
    
/* pc用画面右固定ボタン
--------------------------------------------- */
    
.notification_btn {
    position: fixed;
    background-color: #fff;
    border-radius: 15px 0 0 15px;
    top: calc(50% - 150px);
    right: 0;
    min-width: 60px;
    width: 4vw;
    height: auto;
    text-align: center;
    box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
    z-index: 1000;
}
  
/*欠席・遅刻連絡と採用情報を両方サイドに固定する場合*/    
/*
    .notification_btn {
        position: fixed;
        background-color: #fff;
        border-radius: 15px 0 0 15px;
        top: calc(50% - 300px - 1vw);
        right: 0;
        min-width: 60px;
        width: 4vw;
        height: auto;
        text-align: center;
        box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
        z-index: 1000;
    }

    .recruit_btn {
        position: fixed;
        background-color: #fff;
        border-radius: 15px 0 0 15px;
        bottom: calc(50% - 220px - 1vw);
        right: 0;
        min-width: 60px;
        width: 4vw;
        height: auto;
        text-align: center;
        box-shadow: 5px 5px 10px rgba(20, 20, 20, .2);
        z-index: 1000;
    }
*/

    .notification_btn a,
    .recruit_btn a {
        display: block;
        padding: 30px 0 80px;
    }
    
    .notification_btn a span,
    .recruit_btn a span {
        position: relative;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-size: clamp(1.8rem, 2vw, 2.4rem);
    }
    
    .notification_btn a span::after {
        content: "";
        background-image: url("images/pages/arrow_orange.png");
        background-size: cover;
        position: absolute;
        width: 45px;
        height: 45px;
        bottom: -80px;
        left: 50%;
        transform: translate(-50%, -50%);
        background-color: transparent;
        border-radius: 50%;
        transition: .2s background-color;
    }

    .notification_btn a:hover span::after {
        background-color: #FF6B42;
    }
    
    .recruit_btn a span::after {
        content: "";
        background-image: url("images/pages/arrow_green.png");
        background-size: cover;
        position: absolute;
        width: 45px;
        height: 45px;
        bottom: -80px;
        left: 50%;
        transform: translate(-50%, -50%);
        background-color: transparent;
        border-radius: 50%;
        transition: .2s background-color;
    }
    
    .recruit_btn a:hover span::after {
        background-color: #8CC63F;
    }
    
/* 1000px以下で2列に変更 */
@media (max-width: 1100px) {
    .notification_btn {
        top: calc(50% - 280px - 0.5vw);
    }
    
    .recruit_btn {
        bottom: calc(50% - 210px - 0.5vw);
    }
}


/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}


/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}
.alignleft:after {
   content: "";
   display: block;
   clear: both;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/*PDFアイコン*/
a[href $='.pdf'] {
    background:url(../nijiirobase/icon/ico_pdf.gif) no-repeat right 70%;
    padding:0 18px 0 0;
}
a[href $='.pdf'] a {
    text-decoration:none;
}

a[href $='.pdf'] a:hover {
    text-decoration:none;
}

}
