@charset "utf-8";
/*
Theme Name: kodomonooka 2
Theme URI: http://kodomonooka-nursery.jp/
Description: 専用のベーステーマ
Author: y2.inc
Url: https://yyyyyy.in
Version: 2.0
*/


/* common
---------------------------------------------------------------------------*/
body {
	background-color: #FFFFFF;
	color: #000000;
	font-size: 18px;
	font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	line-height: 1;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}


body.noscroll { overflow-y: scroll; position: fixed; width: 100%; }

::-moz-selection { background: #CCCCCC; color: #333333; }
::selection { background: #CCCCCC; color: #333333; }

p { line-height: 2; letter-spacing: 0.1em; margin-bottom: 10px; }
p:last-of-type { margin-bottom: 0 !important; }
address,i { font-style: normal; }

.clearfix:after { content: ''; display: block; clear:both; }

.bg-pink { background: #FAE1E0; }
.bg-blue { background: /* #BEEBEE */#E9F7F8; }

body.pc .pc_view { display: block !important; }
body.pc .sp_view { display: none !important; }
body.sp .sp_view { display: block !important; }
body.sp .pc_view { display: none !important; }

/* txt
------------------------------------*/
.font-mg { font-family: '秀英丸ゴシック B', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif; }
.txt-v {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-feature-settings: 'palt' 0;
	text-orientation: upright;
}

/* link
------------------------------------*/
a { color: #000000; text-decoration: none; transition: .15s ease-out; -webkit-transform: translateZ(0); }
a:hover { text-decoration: none; opacity: 0.5; }

/* .btn
------------------------------------*/
.btn-link,
.btn-line {
	display: inline-block;
	background: #2A378F;
	border: solid 1px #2A378F;
	padding: 12px 22px 13px;
	border-radius: 24px;
	color: #FFFFFF;
	text-align: center;
	font-size: 15px;
	letter-spacing: 0.15em;
	-webkit-transform: perspective(0);
	white-space: nowrap;
}

.btn-line {
	background: #FFFFFF;
	color: #2A378F;
}

p.btn input {
	padding:0.5em 1em;
	text-align:center;
}

/* for title */
h2.form  {
	font-size: 100%;
	text-align: left;
	border-left: solid 4px #ef002d;
	border-bottom: 1px solid gray;
	padding: 4px 6px;
	margin: 1.5em 0;
	width: 500px;
}

header .btn-link,
header .btn-line {
	padding: 11px 16px 11px 18px;
	font-size: 14px;
}

.btn-link-blue a {
	display: block;
	background: #7ED6DC url(img/share/ico-arrow-blue.svg) no-repeat left 15px center;
	padding: 22px 22px 23px 50px;
	border-radius: 6px;
	color: #FFFFFF;
	text-align: center;
	font-size: 20px;
	letter-spacing: 0.18em;
	white-space: nowrap;
	font-weight:600;
}

.btn-icon a {
	display: block;
	box-sizing: border-box;
	background: #FFFFFF url(img/share/ico-arrow.svg) no-repeat right 16px center;
	border: solid 2px #E5555D;
	border-radius: 24px;
	padding: 10px 32px 11px;
	color: #E85059;
	font-size: 17px;
	text-align: center;
	letter-spacing: 0.15em;
	-webkit-transform: perspective(0);
	white-space: nowrap;
}


/* .sns-wrap
---------------------------------------------------------------------------*/
.sns-wrap {
	color: #E06168;
	padding-left: 72px;
	display: inline-block;
	transform: translateY(-11px);
}

.sns-wrap .ul-txt {
	border-bottom: solid 1px #E06168;
	font-size: 16px;
	padding-bottom: 2px;
	letter-spacing: 0.15em;
	margin-right: 19px;
	display: inline;
	padding-left: 2px;
	white-space: nowrap;
}

.sns-list {
	display: inline-block;
	transform: translateY(9px);
}

.sns-list li,
.sns-list li a {
	display: inline-block;
}

.sns-list li a i {
	display: inline-block;
}

.sns-list li {
	margin-right: 11px;
}

.sns-list li:last-of-type {
	margin-right: 0;
}

.sns-list li.facebook a i {
	background: url(img/share/ico-facebook.svg) no-repeat;
	width: 29px;
	height: 30px;
}

.sns-list li.instagram a i {
	background: url(img/share/ico-instagram.svg) no-repeat;
	width: 28px;
	height: 28px;
}

.sns-list li.line a i {
	background: url(img/share/ico-line-pink.svg) no-repeat;
	width: 30px;
	height: 28px;
}


/* .gnav
---------------------------------------------------------------------------*/
.gnav {
	width: 100%;
}

.gnav ul {
	display: flex;
}

.gnav ul li {
	display: inline-block;
	position: relative;
}

.gnav ul li:last-of-type::after {
	display: none !important;
}

.gnav ul li a {
	font-size: 18px;
	text-align: center;
	padding: 0 22px 0 22px;
	height: 82px;
	display: inline-flex;
	align-items: flex-end;
	justify-content: center;
	color: #2A378F;
	position: relative;
	white-space: nowrap;
}

.gnav ul li:first-of-type a { padding-left: 0 !important;}
.gnav ul li:last-of-type a { padding-right: 0 !important;}

.gnav ul li a strong { letter-spacing: 0.05em; }
.gnav ul li a strong.let { letter-spacing: 0.09em; }

.gnav ul li a i {	position: absolute; }

.gnav ul li.top a i      { background: url(img/img-nav-1.svg) no-repeat; width: 75px; height: 47px; top: 2px; left: 0px; }
.gnav ul li.about a i    { background: url(img/img-nav-2.svg) no-repeat; width: 75px; height: 47px; top: 2px; left: 35px; }
.gnav ul li.about2 a i    { background: url(img/img-nav-2-2.svg) no-repeat; width: 75px; height: 47px; top: 2px; left: 20px; }
.gnav ul li.facility a i { background: url(img/img-nav-3.svg) no-repeat; width: 75px; height: 47px; top: 2px; left: 20px; }
.gnav ul li.flow a i     { background: url(img/img-nav-4.svg) no-repeat; width: 75px; height: 47px; top: 2px; left: 40px; }
.gnav ul li.document a i { background: url(img/img-nav-5.svg) no-repeat; width: 75px; height: 47px; top: 5px; left: 5px; }



/* header
---------------------------------------------------------------------------*/
header {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	background-color: #FFFFFF;
	width: 100%;
	min-width: 1200px;
	height: 245px;
	margin: 0 auto;
	padding: 0;
	z-index: 2;
}

header .logo {
	display: inline-block;
	transform: translate(-4px, 1px);
}

header .header-leaf {
	position: absolute;
	top: 5px;
	left: 0;
}

header .header-leaf.leaf-r {
	right: 0;
	left: auto;
}

.header-inner {
	width: 1105px;
	padding-top: 43px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.header-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}

header .contact-wrap {
	display: inline-block;
	transform: translateY(-9px) translateX(-2px);
}

header .contact-wrap ul {
	display: flex;
}

header .contact-wrap li {
	margin-left: 10px;
}

header .gnav ul {
	justify-content: flex-end;
	margin-top: 45px;
	padding-right: 5px;
}

header .gnav ul li:first-of-type a { padding-right: 22px; }
header .gnav ul li:last-of-type a { padding-left: 19px;}	
	
header .gnav ul li::after {
	content: "";
	position: absolute;
	display: block;
	height: 50px;
	width: 1px;
	background: url(img/share/line-dot.svg) repeat-y;
	background-size: 1px 5px;
	right: 0;
	top: 13px;
}


/* footer
---------------------------------------------------------------------------*/
footer {

	background: #68C3F0;
	width: 100%;
	min-width: 1200px;
	margin: 0 auto;
	color: #FFFFFF;
}


.footer-wrap {
	position: relative;
	overflow: hidden;
	width: 100%;
	padding: 42px 0 0px;
}

.footer-wrap::after {
	content: "";
	position: absolute;
	display: block;
	height: 200px;
	width: 100%;
	background: url(https://weppy-sorairo.com/img/footer.gif) repeat-x;
	bottom: 0;
	left: 0;
	background-position: 0px 0;
}

.footer-inner {
	width: 1020px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;

}

footer .logo { margin-right: 45px;}

/* address
------------------------------------*/
footer .address-wrap {
	display: flex;
	align-items: flex-end;
}

footer .sns-list {
	transform: translateY(5px);
	float: left;
}

footer .sns-list li {
	margin-right: 12px;
}

footer .map {
	float: right;
	margin-right: 3px;
	margin-bottom: 26px;
}

footer address {
	display: inline-block;
	transform: translateY(7px);
}

footer address .strong {
	clear: both;
	font-size: 14px;
	line-height: 1.4;
	letter-spacing: 0.08em;
	margin-bottom: 12px;
}

footer address .strong strong {
	padding-left: 12px;
	font-size: 18px;
	letter-spacing: 0.14em;
}

footer address .address-small {
	letter-spacing: 0.12em;
	line-height: 1.7;
}

footer .sns-list li.facebook a i {
	background: url(img/share/ico-facebook-white.svg) no-repeat;
	width: 29px;
	height: 30px;
}

footer .sns-list li.instagram a i {
	background: url(img/share/ico-instagram-white.svg) no-repeat;
	width: 28px;
	height: 28px;
}

footer .sns-list li.line a i {
	background: url(img/share/ico-line-s-white.svg) no-repeat;
	background-size: 100% auto;
	width: 30px;
	height: 28px;
	transform: translateY(-1px);
}

footer .btn-link {
	background-color: #E5555D;
	border-color: #FFFFFF;
	color: #FFFFFF !important;
	font-size: 16px;
	letter-spacing: 0.05em;
	padding: 10px 20px;
	border-width: 2px;
}

/* .contact-wrap-footer
------------------------------------*/
.contact-wrap-footer {
	padding-top: 49px;
	transform: translate(-15px, 5px);
}

.contact-wrap-footer ul {
	display: flex;
}

.contact-wrap-footer ul li.document a {
	position: relative;
	background: #FFFFFF;
	color: #E5555D;
}

.contact-wrap-footer ul li.document a {
	padding-left: 54px;
	margin-right: 22px;
}

.contact-wrap-footer ul li.document a i {
	background: url(img/share/ico-paper-white.svg) no-repeat;
	background-size: 100% auto;
	width: 24px;
	height: 29px;
	position: absolute;
	top: 30px;
	left: 51px;
}

.contact-wrap-footer ul li.contact a i {
	background: url(img/share/ico-mail.svg) no-repeat;
	background-size: 100% auto;
	width: 28px;
	height: 21px;
	position: absolute;
	top: 36px;
	left: 49px;
}

.contact-wrap-footer ul li.contact em {
	padding-left: 2px;
	letter-spacing: 0.06em;
}

.contact-wrap-footer .btn-link {
	width: 126px;
	height: 126px;
	padding: 73px 0 0 2px !important;
	box-sizing: border-box;
	border-radius: 0;
	text-align: center;
	border: none;
	font-size: 15px;
	letter-spacing: 0.06em;
	background-color: transparent !important;
	background: none !important;
}

.contact-wrap-footer li.contact .btn-link {
	letter-spacing: 0.1em;
}

.contact-wrap-footer .btn-link:hover {
	opacity: 1;
}

.contact-wrap-footer .btn-link .loop-circle {	width: 126px;
	height: 126px;
	position: absolute;
	left: 0;
	top: 0;
	pointer-events: none; 
}

.contact-wrap-footer .btn-link .loop-circle div {
	width: 126px;
	height: 126px;
	background: url(img/share/ico-dashed-circle.svg) no-repeat;
	border-radius: 50%;
}

.contact-wrap-footer li a.notlink {
	pointer-events: none;
}

.contact-wrap-footer li .construction {
	display: block;
	position: absolute;
	top: 26px;
	left: 20px;
	opacity: 0;
	transition: .2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.contact-wrap-footer li:hover .construction {
	top: 20px;
	opacity: 1;
}

/* .copyright / .pagetop
------------------------------------*/
.copyright {
	display: block;
	position: absolute;
	right: 10px;
	top: 24px;
	width: 12px;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.13em;
	white-space: nowrap;
	transform-origin: left top;
	transform: rotate(90deg);
}

.pagetop-wrap {
	position: fixed;
	right: 35px;
	bottom: 50px;
	width: 64px;
	height: 146px;
	opacity: 0;
	transform: translateY(200px);
	transition: 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	z-index: 100;
}

.pagetop-wrap.btm {
	position: absolute;
	top: -210px;
	bottom: inherit;
}

.pagetop-wrap.active {
	transform: translateY(0);
	opacity: 1;
	transition: 1s cubic-bezier(0.77, 0, 0.175, 1);
}

.pagetop,
.pagetop span {
	display: block;
	width: 100%;
	height: 100%;
}

.pagetop .choucho {
	display: block;
	bottom: 0;
	left: -8px;
}

/* .gnav
------------------------------------*/
footer .gnav {
	margin-top: 58px;
}

footer .gnav ul li {
	position: relative;
}

footer .gnav ul li::after {
	content: "";
	position: absolute;
	display: block;
	height: 123px;
	width: 5px;
	background: url(img/share/line-dash.svg) no-repeat;
	background-size: 5px 123px;
	right: 0;
	top: -1px;
}

footer .gnav ul li a {
	color: #FFFFFF;
	height: 120px;
	padding: 17px 44px 17px 42px;
	box-sizing: border-box;
}

footer .gnav ul li a strong {
	letter-spacing: 0.16em;
}

footer .gnav ul li a strong.let {
	letter-spacing: 0.1em;
}

footer .gnav ul li.about a i { background-image: url(img/share/img-nav-about-white.svg); width: 51px; height: 58px; left: 11px; top: 12px; }
footer .gnav ul li.childcare a i { background-image: url(img/share/img-nav-childcare-white.svg); width: 85px; height: 53px; left: 48px; top: 17px; }
footer .gnav ul li.admission a i { background-image: url(img/share/img-nav-information-white.svg); width: 35px; height: 43px; top: 21px; left: 68px; }
footer .gnav ul li.sick a i { background-image: url(img/share/img-nav-sick-child-white.svg); width: 70px; height: 50px; top: 14px; left: 49px; }
footer .gnav ul li.lunch a i { background-image: url(img/share/img-nav-lunch-white.svg); width: 76px; height: 45px; top: 19px; left: 66px; }
footer .gnav ul li.cafe a i { background-image: url(img/share/img-nav-cafe-white.svg); width: 51px; height: 63px; top: 8px; left: 80px; }

footer .gnav ul li.cafe a strong {
	letter-spacing: 0.13em;
}


/* contents
---------------------------------------------------------------------------*/
#mainContents {
	display: block;
	width: 100%;
	min-width: 1200px;
	margin: 0 auto;
	padding: 0;
	text-align: left;
	opacity: 0;
}

/* .main-slide
------------------------------------*/
.main-slide-wrap {
	position: relative;
	display: block;
	width: 100%;
	height: auto;
}

.main-slide {
	width: 100%;
	position: relative;
}

.main-slide img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
}

.slide-side-leaf {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(calc(-50% + 10px));
}

.slide-side-leaf.right {
	left: auto;
	right: 0;
}

/* slick
------------------------------------*/
.slide-dots button {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.slide-dots {
	position: absolute;
	bottom: 90px;
	left: 50%;
	transform: translateX(-50%);
}

.slide-dots li {
	display: inline-block;
	margin: 0 23px 0 0;
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: #FFFFFF;
	transition: .15s ease;
	cursor: pointer;
	border: solid 1px #E5555D;
	box-sizing: border-box;
}

.slide-dots > li:last-of-type {
	margin-right: 0;
}

.slide-dots > li:first-of-type:last-of-type {
	display: none !important;
}

.slide-dots li:hover {
	opacity: .5;
}

.slide-dots li button {
	position: relative;
	text-indent: -9999px;
}

.slide-dots li.slick-active {
	background: #E5555D;
}

/* parts
---------------------------------------------------------------------------*/
.illust {
	display: block;
	position: absolute;
}

.side-leaf {
	position: absolute;
	top: 0;
	background: url(img/share/img-leaf-loop-short.svg) repeat-y;
	background-position: -7px 0;
	height: 100%;
	width: 97px;
}

.parts-tree {
	width: 146px;
	height: 245px;
	background: url(img/share/img-tree.svg) no-repeat;
	background-size: 100%;
}

.parts-grass1 {
	width: 118px;
	height: 47px;
	background: url(img/share/img-grass1.svg) no-repeat;
	background-size: 100%;
}

.parts-grass2 {
	width: 186px;
	height: 38px;
	background: url(img/share/img-grass2.svg) no-repeat;
	background-size: 100%;
}

.parts-mountain {
	width: 88px;
	height: 18px;
	background: url(img/share/img-mountain.svg) no-repeat;
	background-size: 100%;
}

.parts-book {
	width: 89px;
	height: 79px;
	background: url(img/share/img-book.svg) no-repeat;
	background-size: 100%;
}

.parts-cloud {
	width: 117px;
	height: 86px;
	background: url(img/share/img-cloud.svg) no-repeat;
}

/* .pointer-blink
------------------------------------*/
.pointer-blink .pointer {
	left: 7px;
	top: -7px;
	transform-origin: left top;
}

.pointer-blink .blink {
	left: -6px;
	top: -20px;
	transform-origin: center center;
	opacity: 0;
}


/* .section
---------------------------------------------------------------------------*/
section {
	position: relative;
	width: 100%;
}

/* .sec-common
------------------------------------*/
.sec-common {
	position: relative;
	padding: 250px 0 0px;
}

.topsec-common {
	position: relative;
	padding: 50px 0 0px;
}

.sec-common.bg-blue .bg-object1,
.sec-common.bg-blue .bg-object2,
.sec-common.bg-blue .bg-object3 {
	opacity: 0.4;
}

.sec-common .bg-object1 { left: 0; top: 240px; }
.sec-common .bg-object2 { right: 0; top: -100px; }
.sec-common .bg-object3 { left: calc(50% - 290px); bottom: 0; }

/* .sec-inner
------------------------------------*/
.sec-inner {
	max-width:1200px;
	min-width:1000px;
	margin: 0 auto;
	position: relative;
}

/* .home-wrap
------------------------------------*/
.home-wrap {
	position: relative;
	box-sizing: border-box;
	background: #FFFFFF;
	border-radius: 0 0 50px 50px;
	width: 990px;
	margin: 0 auto;
	padding-bottom: 90px;
}

.home-wrap:before {
	display: block;
	content: '';
	position: absolute;
	top: -200px;
	left: 0;
	background: url(img/share/bg-home.png) no-repeat;
	width: 100%;
	height: 200px;
	z-index: 0;
}

/* .book-wrap
------------------------------------*/
.book-wrap {
	background: #FFFFFF;
	width: 100%;
	height: auto;
	padding: 200px 5em 110px;
	margin: -200px auto -60px;
	position: relative;
	background-size: 100% !important;
}

.book-wrap::before {
	content: "";
	position: absolute;
	display: inline-block;
	background: url(img/share/img-bg-book-top.png) no-repeat;
	background-size: 100%;
	width: 100%;
	height: 32px;
	top: -32px;
	left: 0;
}

.book-wrap::after {
	content: "";
	position: absolute;
	display: inline-block;
	background: url(img/share/img-bg-book-bottom.png) no-repeat;
	background-size: 100%;
	width: 100%;
	height: 37px;
	bottom: -37px;
	left: 0;
}


/* .book-wrap
------------------------------------*/
.book-wrap2 {
	background: #FFFFFF;
	width: 100%;
	height: auto;
	padding: 50px 5em 50px;

	position: relative;
	background-size: 100% !important;
}

.book-wrap2::before {
	content: "";
	position: absolute;
	display: inline-block;
	background: url(img/share/img-bg-book-top.png) no-repeat;
	background-size: 100%;
	width: 100%;
	height: 32px;
	top: -32px;
	left: 0;
}

.book-wrap2::after {
	content: "";
	position: absolute;
	display: inline-block;
	background: url(img/share/img-bg-book-bottom.png) no-repeat;
	background-size: 100%;
	width: 100%;
	height: 37px;
	bottom: -37px;
	left: 0;
}

/* .book-wrap
------------------------------------*/
.book-wrap3 {
	background: #FFFFFF;
	width: 900px;
	height: auto;
	padding: 5em;
	margin: -200px auto -60px;
	position: relative;
	background-size: 100% !important;
}

.book-wrap3::before {
	content: "";
	position: absolute;
	display: inline-block;
	background: url(img/share/img-bg-book-top.png) no-repeat;
	background-size: 100%;
	width: 100%;
	height: 32px;
	top: -32px;
	left: 0;
}

.book-wrap3::after {
	content: "";
	position: absolute;
	display: inline-block;
	background: url(img/share/img-bg-book-bottom.png) no-repeat;
	background-size: 100%;
	width: 100%;
	height: 37px;
	bottom: -37px;
	left: 0;
}




.illust.hand {
	background: url(img/share/img-hand.svg) no-repeat;
	width: 192px;
	height: 319px;
	bottom: -140px;
}

.illust.finger {
	background: url(img/share/img-finger.svg) no-repeat;
	width: 138px;
	height: 232px;
	bottom: -85px;
}

.illust.hand.left {	left: -71px;}
.illust.finger.left {	left: -28px;}

.illust.hand.right { transform: scale(-1,1); right: -70px;}
.illust.finger.right { transform: scale(-1,1); right: -20px;}

/* .side-wrap-blue
------------------------------------*/
.side-wrap-blue {
	position: relative;
	background-color: #FFFFFF;
	width: 100%;
}

.side-wrap-blue:before,
.side-wrap-blue:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	background: url(img/share/img-leaf-loop-short.svg) repeat-y left top 30px;
	background-size: 95px auto;
	width: 104px;
	height: 100%;
	z-index: 0;
}

.side-wrap-blue:before { left: 0; }
.side-wrap-blue:after { right: 0; transform: scaleX(-1); }

/* .side-wrap-pink
------------------------------------*/
.side-wrap-pink {
	position: relative;
	background-color: #FFFFFF;
	width: 100%;
}

.side-wrap-pink:before,
.side-wrap-pink:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	background: url(img/share/img-leaf-loop-pink@2x.png) repeat-y;
	background-size: 104px 1240px;
	width: 104px;
	height: 100%;
	z-index: 0;
}

.side-wrap-pink:before { left: 0; }
.side-wrap-pink:after { right: 0; transform: scaleX(-1); }

/* .sec-lead-center
------------------------------------*/
.sec-lead-center {
	margin-bottom: 70px;
	text-align: center;
}


/* hline
---------------------------------------------------------------------------*/

/* .side-hline
------------------------------------*/
section .side-hline {
	font-size: 27px;
	color: #0099CB;
	letter-spacing: 0.15em;
	position: absolute;
	right: 0;
	top: 90px;
	padding: 25px 35px 0 0;
}

_::-webkit-full-page-media, _:future, :root section .side-hline {
	padding-right: 60px;
}

section .side-hline.pink {
	color: #E5555D;
}

section:first-of-type .side-hline {
	top: 0;
}

.side-hline::before {
	content: "";
	position: absolute;
	display: block;
	top: -4px;
	right: 0;
	background: url(img/share/ico-title-bar.svg) no-repeat;
	height: 8px;
	width: 104px;
}

.side-hline.pink::before {
	background: url(img/share/ico-title-bar-pink.svg) no-repeat;
}

.modal-zoom .side-hline {
	padding: 25px 35px 0 0 !important;
}

.modal-zoom .side-hline::before {
	width: 104px !important;
}

/* .over-hline
------------------------------------*/
.over-hline {
	font-size: 31px;
	color: #0099CB;
	letter-spacing: 0.12em;
	line-height: 1.8;
	padding: 35px 21px 0;
	background: #FFFFFF;
	display: inline-block;
	border: solid 3px #31acd4;
	border-radius: 3px;
	border-bottom: none;
	position: absolute;
	right: 56px;
	top: -136px;
	width: 162px;
}

.over-hline::after {
	content: "";
	position: absolute;
	display: inline-block;
	width: calc(100% + 6px);
	background: #FFFFFF;
	height: 22px;
	bottom: 0;
	left: -3px;
	z-index: 1;
}

/* .title-page
------------------------------------*/
.title-page {
	position: relative;
	margin-bottom: 10px;
	transform: translateY(-40px);
	text-align: center;
	white-space: nowrap;
	z-index: 2;
}

.title-page i {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	display: block;
}

#admissionContents .title-page i { top: -90px; width: 44px; margin-left: 8px; }
#sickContents .title-page i { top: -95px; width: 85px; }
#lunchContents .title-page i { top: -85px; width: 92px; margin-left: -2px; }
#cafeContents .title-page i { top: -100px; width: 60px; margin-left: -5px; }
#contactContents .title-page i { top: -100px; width: 69px; }

.title-page i img {
	width: 100%;
	height: auto;
}

.title-page strong {
	display: block;
	margin-bottom: 12px;
	font-size: 28px;
	color: #E5555D;
	letter-spacing: 0.2em;
	text-align: center;
}

.title-page em {
	font-size: 13px;
	color: #0099CB;
	letter-spacing: 0.2em;
}

/* .title-illust
------------------------------------*/
.title-illust {
	position: relative;
	margin-bottom: 35px;
	padding-left: 100px;
	color: #E5555D;
	font-size: 26px;
	letter-spacing: 0.15em;
}

.title-illust i {
	display: block;
	position: absolute;
	bottom: -4px;
	left: 0;
}

/* h4
------------------------------------*/
h4 {
	margin-bottom: 22px;
}

h4 .sub-hlead {
	display: inline-block;
	font-size: 19px;
	color: #0099CB;
	letter-spacing: 0.15em;
	margin-bottom: 18px;
	white-space: nowrap;
}

h4 strong {
	display: block;
	font-size: 32px;
	color: #E5555D;
	letter-spacing: 0.18em;
	line-height: 1.6;
	transform: translateX(-2px);
}


/* list
---------------------------------------------------------------------------*/

/* .line-dl
------------------------------------*/
.line-dl > div {
	display: flex;
	border-bottom: solid 1px #2A378F;
	padding: 11px 5px 14px;
	align-items: flex-start;
}

.line-dl > div:first-of-type {
	border-top: solid 1px #2A378F;
}

.line-dl > div > dt {
	width:12em;
	color: #2A378F;
	line-height: 1.9;
	letter-spacing: 0.1em;
	font-weight:600;
} 

.line-dl > div > dd {
	letter-spacing: 0.04em;
	color: #000;
	line-height: 1.9;
	display: inline-block;
	transform: translateY(3px);
}

/* .list-dot
------------------------------------*/
.list-dot li {
	position: relative;
	margin: 0 0 6px 4px;
	padding-left: 15px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.list-dot li:last-of-type {
	margin-bottom: 0;
}

.list-dot li:before {
	display: block;
	content: '�E';
	position: absolute;
	top: 0;
	left: 0;
	font-weight: bold;
}


/* .sec-question
---------------------------------------------------------------------------*/
.sec-question {
	position: relative;
	box-sizing: border-box;
	background-color: #FFFFFF;
	border-radius: 30px;
	width: 1140px;
	margin: 80px auto 0;
	padding: 75px 75px;
}

.sec-question .girl1 {
	position: absolute;
	top: -148px;
	right: -18px;
}

.sec-question .girl1 img {
	width: 124px;
	height: auto;
}

.sec-question .tree-set {
	position: absolute;
	bottom: -74px;
	left: 10px;
}

.sec-question h2 {
	position: absolute;
	top: 75px;
	left: 75px;
	font-size: 31px;
	color: #E5555D;
	letter-spacing: 0.15em;
}

.sec-question h2 i {
	display: inline-block;
	padding-right: 22px;
	transform: translateY(1px);
}

.sec-question dl {
	padding-left: 310px;
}

.sec-question dl > div {
	margin-bottom: 35px;
}

.sec-question dl > div:last-of-type {
	margin-bottom: 0;
}

.sec-question dt {
	position: relative;
	margin-bottom: 10px;
	font-size: 17px;
	color: #E5555D;
	line-height: 1.6;
	letter-spacing: 0.18em;
}

.sec-question dt i {
	display: block;
	position: absolute;
	top: 0;
	left: -65px;
	width: 50px;
	font-size: 17px;
	color: #0099CB;
	letter-spacing: 0.2em;
	text-align: right;
}

.sec-question dd {
	padding-right: 20px;
}

.sec-question dd p {
	font-size: 14px;
	text-align: justify;
}

.sec-question dd p a {
	color: #E5555D;
	text-decoration: underline;
}


/* .information-inner
---------------------------------------------------------------------------*/
.information-inner {
	width: 1000px;
	margin: 0 auto;
	padding: 50px 0 50px;
	display: flex;
	justify-content: space-between;
}

.information-inner2 {
	width: 1000px;
	margin: 0 auto;
	padding: 50px 0;
	display: flex;
	justify-content: space-between;
}

.detail-info {
	position: relative;
	width: 50%;
	display: block;
	transform: translateY(-2px);
}

.information-inner2 .detail-info {
	position: relative;
	width: 50%;
	display: block;
	transform: translateY(-2px);
}

.information-inner2 .map-wrap {
	position: relative;
	width: 50%;
/* 	overflow: hidden; */
}




.detail-info .sns-list {
	position: absolute;
	right: 10px;
	top: 2px;
	transform: none;
}

.detail-info h1 {
	color: #2A378F;
	margin-bottom: 22px;
	padding-left: 3px;
}

.detail-info h1 .txt-small {
	display: block;
	font-size: 14px;
	letter-spacing: 0.1em;
	line-height: 1.8;
}

.detail-info h1 strong {
	font-size: 24px;
	display: block;
	letter-spacing: 0.18em;
	margin-top: 12px;
	transform: translateX(-2px);
}

.detail-info .info-address {
	letter-spacing: 0.07em;
	line-height: 1.55;
	font-size: 15px;
	display: inline-block;
	transform: translateX(3px);
}

.detail-info .info-address .txt-small {
	font-size: 13px;
}

.detail-info .line-dl {
 
}

.detail-info .line-dl > div > dt {
	width: 10em;
	text-align: justify;
	box-sizing: border-box;
	letter-spacing: 0.15em;
	white-space: nowrap;
}

.detail-info .line-dl > div > dt.car2 { letter-spacing: 2.45em; }
.detail-info .line-dl > div > dt.car3 {	letter-spacing: 0.8em; }

.detail-info .line-dl > div > dd {
	width: calc(100% - 110px);
}

.detail-info .line-dl > div > dd dl {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 3px;
}

.detail-info .line-dl > div > dd dl dt { width: 90px; }
.detail-info .line-dl > div > dd dl dd { width: calc(100% - 90px); }

.information-inner .map-wrap {
	position: relative;
	width: 50%;
/* 	overflow: hidden; */
}


/* .sml-slide
---------------------------------------------------------------------------*/
.sml-slide {
	width: 100%;
	height: 300px;
}

.sml-slide .inner {
	margin-right: 10px;
}


/* .point-list
---------------------------------------------------------------------------*/
.point-list {
	width: 1140px;
	margin: 0 auto;
	text-align: center;
}

.point-list li {
	position: relative;
	display: inline-block;
	width: 306px;
	margin: 0 35px;
	text-align: left;
	vertical-align: top;
}

.point-list li i {
	display: block;
	position: absolute;
	top: -51px;
	left: -24px;
	width: 70px;
	height: 70px;
	z-index: 3;
}

.point-list li i .bg {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

.point-list li i .num {
	display: block;
	position: absolute;
	top: 24px;
	left: 26px;
}

.point-list li figure {
	position: relative;
}

.point-list li figcaption {
	position: absolute;
	top: -28px;
	right: 6px;
	color: #E3686B;
	font-size: 17px;
	letter-spacing: 0.08em;
}

.point-list li figure img {
	border-radius: 10px;
}

.point-list li h3 {
	position: relative;
	margin: -17px 0 17px;
	z-index: 2;
	white-space: nowrap;
}

.point-list li h3 strong {
	display: inline-block;
	background-color: #E3686B;
	padding: 6px 7px 6px 9px;
	color: #FFFFFF;
	font-size: 20px;
	letter-spacing: 0.18em;
}

.point-list li h3 em {
	display: inline-block;	
	background-color: #FFE5E6;
	padding: 9px 9px 11px 10px;
	font-size: 15px;
	color: #E3686B;
	letter-spacing: 0.18em;
}

.point-list li p {
	font-size: 14px;
	text-align: justify;
	letter-spacing: 0.07em;
	line-height: 1.9;
}

.point-list li .btn-icon {
	margin-top: 20px;
}



/* pagetop
---------------------------------------------------------------------------*/
body{
    scroll-behavior: smooth;
}

.go-top{
    position: fixed;
    bottom: 0;
    right: 0;
    width: 60px; //ボタンの横サイズ
    height: 60px; //ボタンの縦サイズ
    text-align: center;
    background: #213F98; //ボタンの色
}

.go-top a{
    fill: #FFF; //矢印の色
    line-height: 60px;
    display: inline-block;
    width: 100%;
}

.go-top svg{
    padding: 18px 0;
}




/* mediaquery
---------------------------------------------------------------------------*/
.narrow {
	display: none;
}

@media (min-width: 1500px) {
	.slide-side-leaf img {
		display: none;
	}
	.slide-side-leaf {
		background: url(img/share/img-leaf-loop.svg) repeat-x;
		width: 697px;
		height: 114px;
		top: 334px;
		left: -305px;
		transform: rotate(90deg);
		background-size: 108%;
		background-position: 0;
	}
	.slide-side-leaf.right {
		left: auto;
		right: -294px;
		background-size: 107%;
		width: 702px;
		transform: rotate(-90deg);
		background-position: 268px 19px;
	}
}

@media (min-width: 1650px) {
	.slide-side-leaf {
		width: 827px;
		height: 114px;
		top: 389px;
		left: -356px;
		background-size: 93%;
		background-position: 0 15px;
	}
	.slide-side-leaf.right {
		left: auto;
		right: -344px;
		background-size: 93%;
		width: 802px;
		top: 390px;
		background-position: 369px 18px;
	}
} 

@media (min-width: 1800px) {
	.slide-side-leaf {
		width: 889px;
		height: 114px;
		top: 430px;
		left: -395px;
		background-size: 83%;
		background-position: 0px 15px;
	}
	.slide-side-leaf.right {
		left: auto;
		top: 440px;
		right: -391px;
		background-size: 82%;
		width: 897px;
		background-position: 468px 22px;
	}
}

@media (max-width: 1440px) {
	.slide-side-leaf img {
		display: inline-block;
	}
	.slide-side-leaf {
		background: none;
	}
}

@media (max-width: 1380px) {
	.narrow {
		display: block;
	}
	header .header-leaf {
		transform: scale(0.85);
		left: -10px;
	}
	header .header-leaf.leaf-r {
		right: 0;
		margin-right: -6px;
	}
	.pagetop-wrap {
		right: 5px;
	}
	.slide-side-leaf {
		transform: translateY(calc(-50% + 5px)) scale(0.8);
		left: -10px;
	}
	.slide-side-leaf.right {
		right: 0;
		margin-right: -6px;
	}
	section .side-hline {
		padding: 26px 26px 0 0;
	}
	_::-webkit-full-page-media, _:future, :root section .side-hline {
		padding-right: 50px;
	}
	.side-hline::before {
		width: 84px;
	}
	.over-hline {
		top: -120px;
		right: 45px;
		transform-origin: right top;
		transform: scale(0.9);
	}
	.book-wrap {
		width: 80%;
	}
	.home-wrap {
		width: 1020px;
		padding-bottom: 70px;
	}	
	.home-wrap:before {
		background-size: 100% 100%;
	}
	.side-wrap-blue:before,
	.side-wrap-blue:after {
		background-size: 100% auto;
		width: 64px;
	}
	.side-wrap-pink:before,
	.side-wrap-pink:after {
		background-size: 100% auto;
		width: 64px;
	}
	.book-wrap::before { top: -27px;}
	.book-wrap::after { bottom: -37px;}
	.illust.hand,
	.illust.finger.left{ transform: scale(0.9); }
	.illust.hand.left { left: -4px; }
	.illust.finger.left { left: 39px; }	
	.illust.hand.right { transform: scale(-0.9,0.9); right: -4px; }
	.illust.finger.right { transform: scale(-0.9,0.9); right: 36px; }
	.sec-question {
		width: 1020px;
	}
	.point-list li { margin: 0 20px; }
}

@media (max-width: 1280px) {
	.header-inner {
		width: 1010px;
	}
	.header-inner .logo {
		transform: scale(0.97);
	}
	header .gnav ul {
		margin-top: 40px;
		padding-right: 0;
	}
	header .header-nav {
		padding-top: 5px;
	}
	header .sns-list {
		transform: translateY(7px);
	}
	header .contact-wrap {
		transform: translateY(-15px);
	}
	header .gnav ul li::after {
		top: 21px;
	}
	header .gnav ul li a { padding: 0 20px; font-size: 17px;}
	header .gnav ul li a strong { letter-spacing: 0.15em;}
	header .gnav ul li a strong.let { letter-spacing: 0.08em;}
	header .gnav ul li a i { transform: scale(0.96);}
	header .gnav ul li.childcare a i { left: 29px; top: 6px;}
	header .gnav ul li.admission a i { top: 12px; left: 48px;	}
	header .gnav ul li.sick a i { top: 5px; left: 29px;	}
	header .gnav ul li.lunch a i { top: 10px; left: 45px;	}
	header .gnav ul li.cafe a i { top: 4px; left: 53px;	}
	header .gnav ul li.about a i { top: 4px; left: 13px;	}
	header .sns-wrap .ul-txt {
		margin-right: 15px;
		letter-spacing: 0.1em;
	}
	header .sns-wrap {
		padding-left: 47px;
	}
	header .contact-wrap ul {
		transform: translateY(5px);
	}
	header .contact-wrap .btn-link {
		font-size: 14px;
	}
	header .sns-list li.facebook { margin-right: 6px;	}
	header .sns-list li.facebook a i { width: 26px; height: 27px; background-size: 100%;	}
	header .sns-list li.instagram a i { width: 26px; height: 25px; background-size: 100%;	}
}


