@charset "UTF-8";
/*----------------------------------------------
 reset styles
----------------------------------------------*/
main { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; display:block; } 

/*----------------------------------------------
 formatting styles
----------------------------------------------*/
html { font-size: 62.5%; } 
body {
	font-family: "Hiragino Kaku Gothic ProN","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	font-size: 1.3em;/* =13px */
	line-height: 1.6;
	background-color: #FFFFC5;
}
@media all and (min-width: 768px) {
	body {
		min-width: 980px;
	}
}
@media screen and (max-width:767px) {
body {
	-webkit-text-size-adjust: 100%;
}
th, td {
}
}
a {
	font-weight: bold;
	color: #00A100;
}
a:visited {
	color: #00A100;
}
a:hover {
	text-decoration: none;
	color: #FF5C00;
}
img {
	border-style: none;
	vertical-align: bottom;
}

/*----------------------------------------------
 clearfix
----------------------------------------------*/
.clearfix:after {
    content:"";
    display:block;
    clear:both;
}

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

/* ----------------------------------------------
header
----------------------------------------------*/
#headerMain {
	display: -webkit-flex;
	display: flex;
	position: relative;
	flex-wrap: wrap;
	padding-bottom: 25px;
}
#headerMain::before {
	content: "";
	width: 100%;
	height: 14px;
	background-color: #FFED8B;
	z-index: -1;
	position: absolute;
	top: 70px;
	left: 0;
}
header h1 {
	width: 52%;
	padding: 7px 0 0 5px;
}
header h1 img {
	max-width: 100%;
}
#headerMain .contactBtn {
	display: -webkit-flex;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	width: 48%;
	min-height: 79px;
	padding: 2px 50px 5px 0;
	text-align: right;
}
#headerMain .contactBtn img {
	max-width: 100%;
}

header .yomiganaBox {
	width: 95%;
	margin: 15px auto 0;
	border: 2px solid #F7AC00;
	border-radius: 10px;
	background-color: #FFFFED;
	font-size: 1.3rem;
	line-height: 150%;
	display: -webkit-flex;
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
}
header .yomiganaBox::before {
	content: "";
	position: absolute;
	top: -26px;
	right: 136px;
	border: 11px solid transparent;
	border-bottom: 15px solid #FFFFED;
	z-index: 2;
}
header .yomiganaBox::after {
	content: "";
	position: absolute;
	top: -32px;
	right: 134px;
	border: 13px solid transparent;
	border-bottom: 17px solid #F7AC00;
	z-index: 1;
}
header .yomiganaBox .text {
	width: calc(100% - 253px);
	max-width: 180px;
	padding: 8px 5px 6px 5px;
	font-weight: bold;
	text-align: center;
}
@media all and (max-width: 360px) {
	header .yomiganaBox .text {
		padding: 8px 3px 6px 3px;
	}
}
header .yomiganaBox .btnBox {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	width: 253px;
	padding: 6px 8px 6px 0;
}
header .yomiganaBox .btnBox div {
	width: 120px;
}
header .yomiganaBox .btnBox a {
	width: 100%;
	height: 30px;
	display: block;
}
#yomiganaOn a {
	background: url(../img/btn-yomigana-on-over-sp.png) left -40px no-repeat;
	background-size: 120px auto;
}
#yomiganaOff a {
	background: url(../img/btn-yomigana-off-over-sp.png) left -40px no-repeat;
	background-size: 120px auto;
}
@media all and (min-width: 768px) {
	header .headerWrap {
		display: flex;
	}
	header .headerWrap::before,
	header .headerWrap::after {
		content: "";
		flex-grow: 1;
		height: 22px;
		background-color: #FFED8B;
		display: block;
		margin-top: 148px;
	}
	#headerMain {
		width: 980px;
		margin: 0 auto;
		flex-wrap: nowrap;
		padding-bottom: 20px;
		background: url(../img/header-back.png) center top no-repeat;
	}
	#headerMain::before {
		display: none;
	}
	header h1 {
		width: 494 px;
		padding: 26px 0 0 13px;
	}
	#headerMain .contactBtn {
		display: block;
		width: 335px;
		min-height: 79px;
		padding: 20px 0 0 48px;
		order: 2;
	}
	#headerMain .contactBtn img {
		width: 100%;
	}
	#headerMain .contactBtn a {
		display: block;
		width: 287px;
		height: 141px;
		background: url(../img/btn-contact-over.png) right -150px no-repeat;
		background-size: 287px auto;
	}
	#headerMain .contactBtn a:hover {
		background-position: right top;
	}
	#headerMain .contactBtn a:hover img {
		display: none;
	}
	header .yomiganaBox {
		width: 140px;
		margin: 23px auto 8px;
		display: block;
	}
	header .yomiganaBox::before {
		top: 50%;
		right: auto;
		left: -26px;
		margin-top: -10px;
		border: 10px solid transparent;
		border-right: 16px solid #FFFFED;
	}
	header .yomiganaBox::after {
		top: 50%;
		right: auto;
		left: -31px;
		margin-top: -12px;
		border: 12px solid transparent;
		border-right: 18px solid #F7AC00;
	}
	header .yomiganaBox .text {
		width: 100%;
		padding: 15px 5px 10px 5px;
	}
	header .yomiganaBox .btnBox {
		display: block;
		width: 100%;
		padding: 0 0 6px 0;
	}
	header .yomiganaBox .btnBox div {
		width: 120px;
		margin: 0 auto 7px;
	}
	header .yomiganaBox .btnBox a {
		width: 100%;
		height: 30px;
		display: block;
	}
	#yomiganaOn a {
		background: url(../img/btn-yomigana-on-over-sp.png) left -40px no-repeat;
		background-size: 120px auto;
	}
	#yomiganaOff a {
		background: url(../img/btn-yomigana-off-over-sp.png) left -40px no-repeat;
		background-size: 120px auto;
	}
}

/* ----------------------------------------------
nav
----------------------------------------------*/
.pcNav {
	display: none;
}
.spNav ul {
	width: 100%;
	padding-top: 55px;
	padding-bottom: 30px;
	background-color: #F7FFD2;
}
.spNav .drawer-menu li {
	width: 100%;
	display: block;
	border-bottom: 2px solid #FFD764;
	font-size: 1.4rem;
	line-height: 130%;
	background-color: #FFFFF0;
}
.spNav .drawer-menu li:first-child {
	border-top: 2px solid #FFD764;
}
.spNav .drawer-menu li a {
	width: 100%;
	display: block;
	min-height: 52px;
	background: url(../img/arrow01.svg) right 15px center no-repeat;
	background-size: 15px auto;
	padding: 18px 30px 14px 20px;
	color: #00A100;
	text-decoration: none;
	font-weight: bold;
}
.spNav .drawer-menu li:nth-child(3) ul {
	padding: 0;
}
.spNav .drawer-menu li:nth-child(3) li {
	border-bottom: 2px dashed #FFD764;
}
.spNav .drawer-menu li:nth-child(3) li:first-child {
	border-top: 2px dashed #FFD764;
}
.spNav .drawer-menu li:nth-child(3) li a {
	padding-left: 40px
}
.spNav .drawer-menu li:nth-child(3) li:last-child {
	border-bottom: none;
}

@media all and (min-width: 768px) {
	.spNav {
		display: none;
	}
	.pcNav {
		display: block;
		width: 980px;
		margin: 0 auto;
		padding-bottom: 35px;
		position: relative;
		z-index: 5;
	}
	.pcNav ul {
		height: 111px;
		list-style: none;
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
		margin-top: -20px;
		padding: 0 25px 0 26px;
	}
	.pcNav li a {
		display: block;
	}
	.pcNav li:first-child a {
		width: 168px;
		background: url(../img/btn-home-over.png) left -100px no-repeat;
	}
	.pcNav li:first-child a:hover {
		height: 96px;
	}
	.pcNav li:nth-child(2) a {
		width: 169px;
		background: url(../img/btn-news-over.png) left -100px no-repeat;
	}
	.pcNav li:nth-child(2) a:hover {
		height: 91px;
	}
	.pcNav li:nth-child(3) a {
		width: 170px;
		background: url(../img/btn-mamechishiki-over.png) left -120px no-repeat;
	}
	.pcNav li:nth-child(3) a:hover {
		height: 110px;
	}
	.pcNav li:nth-child(4) a {
		width: 169px;
		background: url(../img/btn-zoo-over.png) left -110px no-repeat;
	}
	.pcNav li:nth-child(4) a:hover {
		height: 103px;
	}
	.pcNav li:nth-child(5) a {
		width: 167px;
		background: url(../img/btn-quiz-over.png) left -120px no-repeat;
	}
	.pcNav li:nth-child(5) a:hover {
		height: 111px;
	}
	.pcNav li a:hover {
		background-position: left bottom;
	}
	.pcNav li a:hover img {
		display: none;
	}
}
/* ----------------------------------------------
main
----------------------------------------------*/
main {
}

/* ----------------------------------------------
googleAds
----------------------------------------------*/
#googleAds {
	padding: 20px 0 50px;
}
@media all and (min-width: 768px) {
	#googleAds {
		padding: 20px 0 50px;
		width: 980px;
		margin: 0 auto;
	}
}
/* ----------------------------------------------
footoer
----------------------------------------------*/
footer {
	padding-bottom: 90px;
}
footer .footerNav {
	padding: 17px 8px 11px 7px;
	background-color: #FFED8B;
}
footer .footerNav ul {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	
	list-style: none;
}
footer .footerNav li {
	width: 33%;
	width: calc(100% / 3);
	padding: 0 2px 6px 3px;
}
footer .footerNav li a {
	display: -webkit-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	min-height: 45px;
	padding: 6px 5px 4px;
	background-color: #fff;
	text-align: center;
	font-size: 1.4rem;
	line-height: 130%;
}
footer .footerBox {
	padding: 28px 10px 20px;
	text-align: center;
}
footer .footerBox h2 {
	font-size: 1.5rem;
	line-height: 140%;
	padding-bottom: 6px;
}
footer .footerBox p {
	font-size: 1.2rem;
	line-height: 140%;
	color: #666;
}
footer .footerAddress {
	padding-top: 20px;
}
footer .footerAddress p {
	color: #333;
	padding-bottom: 8px;
}
footer .footerAddress p:first-child {
	color: #DD5A00;
	font-size: 1.4rem;
	line-height: 140%;
}
footer .footerAddress a {
	color: #DD5A00;
	text-decoration: none;
}
footer .cpyright {
	border-top: 4px solid #FFED8B;
	padding: 17px 10px;
	color: #946D26;
	font-size: 1rem;
	line-height: 140%;
	text-align: center;
	font-weight: bold;
}
#pagetop {
	width: 74px;
	position: fixed;
	right: 5px;
	bottom: -100px;
	z-index: 10;
}
#pagetop img {
	width: 100%;
}
@media all and (min-width: 768px) {
	footer {
		padding-bottom: 60px;
	}
	footer .footerNav {
		padding: 20px 0 18px 10px;
	}
	footer .footerNav ul {
		width: 980px;
		margin: 0 auto;
		justify-content: flex-end;
	}
	footer .footerNav li {
		width: auto;
		padding: 0 11px 0 10px;
		position: relative;
	}
	footer .footerNav li::before {
		content: "";
		width: 1px;
		height: 70%;
		margin: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		background-color: #666;
	}
	footer .footerNav li:last-child::before {
		display: none;
	}
	footer .footerNav li a {
		display: inline;
		min-height: 1px;
		padding: 0;
		background: none;
		font-size: 1.4rem;
		line-height: 130%;
	}
	footer .footerBox {
		width: 980px;
		margin: 0 auto;
		padding: 18px 10px 10px;
		text-align: left;
	}
	footer .footerBox h2 {
		padding-bottom: 10px;
	}
	footer .footerBox p {
		font-size: 1.3rem;
		line-height: 140%;
	}
	footer .footerAddress {
		display: -webkit-flex;
		display: flex;
		padding-top: 24px;
	}
	footer .footerAddress p {
		color: #333;
		padding: 0 45px 0 0;
	}
	footer .footerAddress a:hover {
		text-decoration: underline;
	}
	footer .footerAddress .telLink {
		color: #DD5A00;
	}
	footer .cpyright {
		font-size: 1.1rem;
		line-height: 140%;
		text-align: right;
	}
	footer .cpyright span {
		display: block;
		width: 980px;
		margin: 0 auto;
	}
	#pagetop {
		width: 92px;
		position: fixed;
		right: 24px;
		bottom: -100px;
		z-index: 10;
	}
	#pagetop a {
		display: block;
		width: 100%;
		height: 71px;
		background: url(../img/pagetop-over.png) left -81px no-repeat;
	}
	#pagetop a:hover {
		height: 81px;
		background: url(../img/pagetop-over.png) left top no-repeat;
	}
	#pagetop a:hover img {
		display: none;
	}
}