@charset "utf-8";
* {
	margin: 0;
	padding: 0;
	font-style: normal;
	font-weight: normal;
	font-size : 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	tap-highlight-color: rgba(0, 0, 0, 0);
	max-height: 999999px;
}
*,
*:before,
*:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.transition {
	-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;
}
.transparent {
	opacity: 0.05;
}
a {
	color: #231815;
	-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;
	text-decoration: none;
	outline: none;
	font-weight: inherit;
}
a:hover {
	text-decoration: underline;
}
a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

a img {
	-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;
}
sup,
sub {
	height: 0;
	line-height: 1;
	vertical-align: baseline;
	_vertical-align: bottom;
	position: relative;
	font-size: 75%;
	font-weight: inherit;
}
sup {
	bottom: 1ex;
	font-weight: inherit;
}
sub {
	top: .5ex;
	font-weight: inherit;
}
span {
	font-weight: inherit;
}
body {
	margin: 0px;
	padding: 0px;
	line-height: 1.5em;
	font-family: "ヒラギノ角ゴ Pro W4", "Hiragino Kaku Gothic Pro W4", "Hiragino Kaku Gothic Pro", Meiryo, Arial, verdana, 'Trebuchet MS', Helvetica, sans-serif;
	font-size: 1em;
	color: #000;
	background-color: #fff;
	-webkit-text-size-adjust: 100%;
	opacity: 0;
}

/* Common */
.clearBoth {
	margin: 0px;
	padding: 0px;
	clear: both;
}
.textindent {
	text-indent: -9999px;
}
.displaynone {
	display: none;
}
img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
  min-height: 1px;
}
strong {
	font-weight: bold;
}
#wrapper {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	min-width: 1280px;
	overflow: hidden;
}
.inner {
	display: block;
	position: relative;
	max-width: 1180px;
	margin-left: auto;
	margin-right: auto;
	clear: both;
}
#wrapper.sub {
	min-width: 1200px;
}
#wrapper.sub .inner {
	max-width: 1050px;
}
.pcOnly {
}
.spOnly {
	display: none !important;
}
.blueBG {
	background-color: #A5DBF7;
/*	padding-top: 1px;
	padding-bottom: 1px;*/
}
.skyblueBG {
	background-color: #D8EFFC;
}
.pinkBG {
	background-color: #FDEFF5;
}
.txtRed {
	color: #C30D23;
}

/* header___________________________________________________________________________________________________ */
header {
	border-bottom: 4px solid #8DC21F;
	height: 120px;
}
header h1 {
	position: absolute;
	left: 0;
	top: 40px;
	width: 496px;
	height: 58px;
}
header h1 a {
}
header h1 a img {
	width: 496px;
	height: 58px;
}
header h1 a:hover {
	opacity: 0.7;
	text-decoration: none;
}
header span.logo {
	position: absolute;
	top: 45px;
	right: 0;
}



/* footer___________________________________________________________________________________________________ */
footer {
	background-color: #8DC21F;
	padding: 30px 0 50px 0;
	text-align: center;
}
footer .inner {
}
footer .copyright {
	color: #FFF;
	font-size: 12px;
	margin-bottom: 10px;
}
footer ul.footerList {
	list-style: none;
	width: 860px;
	margin: auto auto 40px auto;
}
footer ul.footerList li {
	display: inline-block;
	margin-right: 20px;
	vertical-align: top;
}
footer ul.footerList li:last-child {
	margin-right: 0px;
}
footer ul.footerList li h2 {
	font-size: 16px;
	color: #FFF;
	font-weight: bold;
	text-align: left;
	margin-bottom: 10px;
	letter-spacing: 1em;
}
footer ul.footerList li p {
	text-align: left;
}
footer ul.footerList li:last-child p {
	display: flex;
	flex-wrap: wrap;
}
footer ul.footerList li p a {
	margin-right: 20px;
	margin-bottom: 10px;
	display: inline-block;
}
footer ul.footerList li p a img {
	border-radius: 10px;
}
footer ul.snsbtn {
	list-style: none;
	display: inline-block;
}
footer ul.snsbtn li {
	display: inline-block;
	margin: 0 8px 0 0;
	padding: 5px 5px 0 5px;
	border: 1px solid #8DC21F;
}



#gotoTopBtn {
	position: fixed;
	right: 40px;
	bottom: 20px;
	width: 127px;
	height: 128px;
	text-indent: -9999px;
	cursor: pointer;
	z-index: 900;
}
#gotoTopBtn::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 127px;
	height: 128px;
	background-image: url(../images/btn_gototop.png);
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 1000;
}
#gotoTopBtn::before {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 127px;
	height: 128px;
	background-color: rgba(255,255,255,1);
	border-radius: 8px;
	opacity: 0.7;
	-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;
	z-index: 800;
}
#gotoTopBtn:hover::before {
	opacity: 1;
	box-shadow:2px 2px 3px 1px rgba(0,0,0,0.35);
}
.preload * {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
    transition: none !important;
}



/* contents___________________________________________________________________________________________________ */
#contents {
}
#contents ul.snsbtn {
	list-style: none;
	background-color: #FFFFFF;
	display: block;
	margin: -15px 0px -10px 0;
	text-align: right;
}
#contents ul.snsbtn li {
	display: inline-block;
	margin: 0;
	padding: 5px 5px 0 5px;
}
#contents ul.menuBtn {
	margin: 20px auto;
	text-align: center;
}
#contents ul.menuBtn li {
	display: inline-block;
	padding: 10px 0px 5px 25px;
	margin: 5px;
	position: relative;
	vertical-align: middle;
}
#contents ul.menuBtn li a {
}
#contents ul.menuBtn li a img {
	height: 28px;
}
#contents ul.menuBtn li:nth-child(1) {
/*	padding: 10px 0px 5px 0px;*/
}
#contents ul.menuBtn li:nth-child(1) a img {
/*	height: 36px;*/
}
#contents ul.menuBtn li a:hover {
}
#contents ul.menuBtn li a::before {
	content: "";
	display: block;
	position: absolute;
	left: -12px;
	top: 0px;
	width: 25px;
	height: 47px;
	background-image: url(../images/icon_menu_01.png);
	background-repeat: no-repeat;
	opacity: 0;
	-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;
}
#contents ul.menuBtn li:nth-child(1) a::before {
	background-image: url(../images/icon_menu_01.png);
}
#contents ul.menuBtn li:nth-child(2) a::before {
	background-image: url(../images/icon_menu_02.png);
}
#contents ul.menuBtn li:nth-child(3) a::before {
	background-image: url(../images/icon_menu_03.png);
}
#contents ul.menuBtn li:nth-child(4) a::before {
	background-image: url(../images/icon_menu_04.png);
}
#contents ul.menuBtn li:nth-child(5) a::before {
	background-image: url(../images/icon_menu_05.png);
}
#contents ul.menuBtn li:nth-child(6) a::before {
	background-image: url(../images/icon_menu_06.png);
}
#contents ul.menuBtn li:nth-child(7) a::before {
	background-image: url(../images/icon_menu_07.png);
}
#contents ul.menuBtn li:nth-child(8) a::before {
	background-image: url(../images/icon_menu_07.png);
}
#contents ul.menuBtn li a:hover::before {
	left: 2px;
	opacity: 1;
}
.manage #contents ul.menuBtn {
	display: flex;
}
.manage #contents ul.menuBtn li {
	padding: 0px;
}
.manage #contents ul.menuBtn li:nth-child(4) {
	margin-left:auto;
}
.manage #contents ul.menuBtn li a {
	padding: 12px;
	border: 2px dashed #8DC21F;
	border-radius: 8px;
	font-weight: bold;
}
.manage #contents ul.menuBtn li.current a,
.manage #contents ul.menuBtn li a:hover {
	text-decoration: none;
	background-color: #8DC21F;
	color: #fff;
}
.manage #contents ul.menuBtn li a::before {
	display: none;
}
.manage #contents ul.menuBtn li a img {
	width: 16px;
	height: 16px;
	vertical-align:middle;
	margin:  -3px 5px auto 0;
}
.manage #contents ul.menuBtn li a:hover img {
	filter: invert(100%);
}
#contents #anc01,
#contents #anc02,
#contents #anc03,
#contents #anc04,
#contents #anc05 {
	margin-bottom: 70px;
}
#contents h2 {
	font-size: 21px;
	padding: 0 20px;
	font-weight: bold;
	line-height: 50px;
	border-radius: 8px;
	background-color: #F4A342;
	margin: 20px auto;
}
#contents #anc01 h2 {
	background-color: #F4A342;
}
#contents #anc02 h2 {
	background-color: #F9DC62;
}
#contents #anc03 h2 {
	background-color: #F4B4D0;
}
#contents #anc04 h2 {
	background-color: #A1CC53;
}
#contents #anc05 h2 {
	background-color: #96C1E7;
}
#contents #anc05 h3 {
	font-weight: bold;
	font-size: 21px;
	border-bottom: solid 2px #C9CACA;
	padding: 10px;
	margin: 20px;
}
#contents #anc02 img.point {
	width: 100%;
	max-width: 797px;
	height: auto;
	margin: auto;
	display: block;
}
#contents #anc02 .photoscan {
	width: 100%;
	max-width: 809px;
	height: auto;
	margin: auto;
	display: block;
	position: relative;
}
#contents #anc02 .photoscan a {
	display: block;
	position: absolute;
	left:46.5%;
	right: 13%;
	top: 63%;
	bottom: 20%;
	background-color: #fff;
	opacity: 0;
}
#contents #anc02 .photoscan a:hover {
	opacity: 0.5;
}
#contents #anc02 p.attention {
	text-align: center;
	font-size: 130%;
	font-weight: bold;
	line-height: 1.5em;
}
#contents #anc02 p.attention img {
	margin-top: 20px;
	width: 100%;
	max-width: 425px;
}
#contents #anc02 p.attention.fliyer img {
	margin-top: 10px;
	width: 100%;
	max-width: 313px;
}
.essentials p.periodP.end,
#contents #anc02 p.periodP.end {
	background-color: #009245;
	border-radius: 3em;
	line-height: 1em;
	width: 400px;
	margin: 15px auto;
	color: #FFF;
	font-size: 175%;
	font-weight: bold;
	padding: 20px 10px;
	text-align: center;
}
.essentials p.periodP.end span,
#contents #anc02 p.periodP.end span {
	font-size: 58%;
	line-height: 1.2em;
}
#contents p {
	font-size: 15px;
	margin: 20px;
	line-height: 1.75em;
}
#contents p.redBox {
	font-size: 16px;
	padding: 10px;
	font-weight: bold;
	color: #E60F11;
	border: 2px solid #E60F11;
}
#contents p a {
	text-decoration: underline;
}
#contents p a:hover {
	text-decoration: none;
}
#contents img.iconPDF {
	margin-right: 10px;
	vertical-align: middle;
}
#contents dl.list {
	font-size: 14px;
	line-height: 1.75em;
	display: block;
	margin: 50px  20px;
}
#contents dl.list dt {
	clear: both;
	float: left;
	padding: 15px 5px;
	width: 120px;
	font-weight: bold;
	text-align: left;
}
#contents dl.list dd {
	clear: right;
	padding: 15px 5px 15px 120px;
	text-align: left;
	border-top: 1px dashed #8DC21F;
}
#contents dl.list dd strong {
	font-weight: bold;
	color: #0F8B43;
	font-size: 145%;
}
#contents dl.list dd span.list {
	text-indent: -1.3em;
	padding-left: 1.3em;
	display: inline-block;
}
#contents dl.list dd span.underLine {
	color: #E50012;
	font-weight: bold;
	background: linear-gradient(transparent 50%, #ffff7f 50%);
	padding-left: 3px;
	padding-right: 3px;
	margin-left: 3px;
	margin-right: 3px;
}
#contents dl.list dd  ruby {
	font-weight: inherit;
}
#contents dl.list dd  rt {
	font-size: 10px;
	font-weight: inherit;
}
#contents dl.list dd ul {
	list-style: none;
}
#contents dl.list dd ul {
	list-style: none;
}
#contents dl.list dd ul li {
	text-indent: -1em;
	margin-left: 1em;
	margin-bottom: 8px;
	line-height: 1.5em;
}
#contents dl.list dd ul li::before {
    content: "〇";
}
#contents dl.list dd a {
	color: #036EB8;
	text-decoration: underline;
}
#contents dl.list dd a:hover {
	text-decoration: none;
}
#contents dl.list dd a.toHint {
	clear: both;
	display: inline-block;
	height: 74px;
	background-color: #009245;
	border-radius: 10px;
	line-height: 74px;
	color: #FFF;
	font-size: 18px;
	font-weight: bold;
	width: 280px;
	margin: 20px 40px;
	text-decoration: none;
	text-align: center;
}
#contents dl.list dd a.toHint:hover {
	text-decoration: none;
	opacity: 0.7;
}
#contents dl.list dd img.icon {
	vertical-align: text-top;
	margin-right: 5px;
}
#contents dl.list dd img.floatR {
	 float: right;
	 margin-bottom: 20px;
}
#contents dl.list dd img.awardImg {
	margin: 10px auto 20px auto;
}
#contents dl.list dd ul.themeUL,
#contents dl.list dd ul.themeUL2 {
    content: "";
	margin-top: 20px;
	position: relative;
	float: left;
}
#contents dl.list dd ul.themeUL li,
#contents dl.list dd ul.themeUL2 li {
	text-indent: -1em;
	margin-left: 1em;
	margin-bottom: 8px;
	line-height: 40px;
	width: 170px;
}
#contents dl.list dd ul.themeUL li::before,
#contents dl.list dd ul.themeUL2 li::before {
    content: "";
}
#contents .addressBox {
	position: relative;
	background-color: #FFEEBE;
	border-radius: 8px;
	padding: 20px;
	margin: 20px;
}
#contents .addressBox h3 {
	font-size: 16px;
	position: absolute;
	left: 20px;
	top: 20px;
}
#contents .addressBox p {
	font-size: 16px;
	text-align: center;
	margin: 0;
}
#contents .mbsBox {
	position: relative;
}
#contents .mbsBox h3 {
	position: absolute;
	bottom: 0;
	left: 50px;
	font-weight: bold;
}
#contents .mbsBox p.address {
	padding-left: 180px;
	font-size: 13px;
}
#contents .mbsBox p span.redBorder {
	border: solid 2px #E94740;
	color: #E94740;
	padding: 5px;
	font-weight: bold;
	width: 450px;
	margin-left: 30px;
	margin-bottom: 30px;
	display: block;
	text-align: center;
}
#contents .mbsBox img.icon {
	position: absolute;
	left: 410px;
	top: -40px;
}
#contents .mbsBox img.photo {
	position: absolute;
	right: 40px;
	bottom: 0;
}
#contents #anc03 a {
	color: #036EB8;
	text-decoration: underline;
}
#contents #anc03 a:hover {
	text-decoration: none;
}
#contents dl.qa {
	padding: 0 30px;
	font: 16px;
	line-height: 1.75em;
}
#contents dl.qa dt {
	position: relative;
	padding-left: 20px;
}
#contents dl.qa dt::before {
	content: "Q. ";
	display: block;
	width: 20px;
	position: absolute;
	left: 0;
}
#contents dl.qa dd {
	position: relative;
	padding-left: 20px;
	margin-bottom: 30px;
}
#contents dl.qa dd a {
	text-decoration: underline;
}
#contents dl.qa dd a:hover {
	text-decoration: none;
}
#contents dl.qa dd::before {
	content: "A. ";
	display: block;
	width: 20px;
	position: absolute;
	left: 0;
}
#contents dl.qa .noBefore::before {
	display: none;
}
#contents #anc04 p {
	margin: 20px 30px;
}
#contents #anc04 p span {
	color: #C30D23;
}

/* award___________________________________________________________________________________________________ */
#contents #award {
}
#contents #award .awardmainPic {
	float: left;
	margin: 0px 30px 60px 0;
}
#contents #award p {
	margin: 45px auto 30px auto;
	font-size: 16px;
}
#contents #award ul {
	list-style: none;
}
#contents #award ul li {
	display: inline-block;
	margin-right: 40px;
}
#contents #award ul li:nth-child(2) {
	margin-right: 100px;
}
#contents #award ul li a {
	font-size: 15px;
	font-weight: bold;
	padding: 5px 10px;
	position: relative;
}
#contents #award ul li a:before {
	content: "";
	display: block;
	position: absolute;
	bottom: -2px;
	right:0;
	left:0;
	margin: auto;
	height: 2px;
	width: 0px;
	background-color: transparent;
	-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;
}
#contents #award ul li a:hover {
	text-decoration: none;
	opacity: 0.7
}
#contents #award ul li:nth-child(1) a:hover:before {
	width: 100%;
	background-color: #00A8B8;
}
#contents #award ul li:nth-child(2) a:hover:before {
	width: 100%;
	background-color: #F2971B;
}
#contents #award ul li:nth-child(1) a {
	border-bottom: 2px dashed #00A8B8;
}
#contents #award ul li:nth-child(2) a {
	border-bottom: 2px dashed #F2971B;
}
#contents #award ul li:nth-child(3) a {
	border-bottom: 4px solid #8DC21F;
}
#contents #award01 {
	margin: 40px auto;
	clear: both;
}
#contents #award02 {
	margin: 40px auto;
	clear: both;
}
#contents #award03 {
	margin: 40px auto;
	clear: both;
}
#contents #award01 .inner.margin:after,
#contents #award02 .inner.margin:after,
#contents #award03 .inner.margin:after {
	content: "";
	display: block;
	clear: both;
	height: 60px;
}
#contents #award01 .inner.margin2:after,
#contents #award02 .inner.margin2:after,
#contents #award03 .inner.margin2:after {
	content: "";
	display: block;
	clear: both;
	height: 10px;
}
#contents ul.listLink {
	list-style: none;
	text-align: center;
}
#contents ul.listLink li {
	display: inline-block;
	margin-right: 25px;
}
#contents ul.listLink li:last-child {
	margin-right: 0px;
}
#contents ul.listLink li a {
	font-size: 16px;
	font-weight: bold;
	position: relative;
	background-color: #129FAE;
	border-radius: 10px;
	padding: 12px 10px 10px 10px;
	min-width: 160px;
	color: #fff;
	display: block;
}
#contents ul.listLink li:nth-child(2) a {
	background-color: #e99324;
}
#contents ul.listLink li:nth-child(3) a {
	background-color: #e85298;
}
#contents ul.listLink li a:hover {
	text-decoration: none;
	opacity: 0.7
}
#contents #award03 #anc03 {
	margin-bottom: 40px;
}
#contents #award03 #anc03 h2 {
	margin-top: 0;
	border-radius: 0;
	text-align: center;
	background-color: #8DC21F;
	font-size: 24px;
	line-height: 44px;
	padding-bottom: 2px;
}
#contents #award03 .mbsBox img.icon {
	position: absolute;
	left: 410px;
	top: -60px;
}
#contents #award03 .mbsBox p span.redBorder {
	border: solid 3px #E94740;
	color: #E94740;
	padding: 5px;
	font-weight: bold;
	width: 450px;
	margin-left: 20px;
	margin-bottom: 20px;
	display: block;
	text-align: center;
}
#contents #award03 .mbsBox p span.redBorder span.big {
	font-size: 180%;
}
#contents #award01 h1 {
	border-bottom: 7px solid #00A8B8;
	margin-bottom: 40px;
}
#contents #award02 h1 {
	border-bottom: 7px solid #F2971B;
	margin-bottom: 40px;
}
#contents #award03 h1 {
	border-bottom: 7px solid #e85298;
	margin-bottom: 40px;
}
#contents #award01 h1 .inner:before,
#contents #award02 h1 .inner:before,
#contents #award03 h1 .inner:before {
	content: "";
	display: inline-block;
	vertical-align: bottom;
	width: 38px;
	height: 53px;
	background-image: url(../images/icon_trophies.png);
	background-repeat: no-repeat;
	background-position: left bottom;
	margin-right: 15px;
}
.manage #contents #award01 h1 .inner:before,
.manage #contents #award02 h1 .inner:before,
.manage #contents #award03 h1 .inner:before {
	display: none;
}
#contents #award01 h1 .inner,
#contents #award02 h1 .inner,
#contents #award03 h1 .inner {
	font-size: 20px;
	font-weight: bold;
	line-height: 43px;
	position: relative;
}
#contents #award01 h1 .inner span.small,
#contents #award02 h1 .inner span.small,
#contents #award03 h1 .inner span.small {
	display: inline-block;
	position: absolute;
	right: 0px;
	bottom: 0px;
	font-size: 14px;
	font-weight: normal;
}
#contents #award01 hr,
#contents #award02 hr,
#contents #award03 hr {
	clear: both;
	background-color: #fff;
	border-top: 1px dashed #00A8B8;
	border-bottom: none;
	border-right: none;
	border-left: none;
	margin: 30px -10px 30px -10px;
}
#contents #award02 hr{
	border-top: 1px dashed #F2971B;
}
#contents #award01 .rightBox,
#contents #award02 .rightBox,
#contents #award03 .rightBox {
	float: right;
	width: 590px;
}
#contents #award01 .leftBox,
#contents #award02 .leftBox,
#contents #award03 .leftBox {
	float: left;
	width: 440px;
	text-align: center;
}
#contents #award01 .leftBox img,
#contents #award02 .leftBox img,
#contents #award03 .leftBox img {
	max-width: 400px;
	max-height: 400px;
	height: auto;
}
#contents #award01 h2,
#contents #award02 h2,
#contents #award03 h2 {
	border-radius: 0;
	background-color: transparent;
	padding: 0;
	font-size: 26px;
	line-height: 1.5em;
	margin-top: -10px;
	margin-bottom: 10px;
}
#contents #award01 h2 span,
#contents #award02 h2 span,
#contents #award03 h2 span {
	display: block;
	font-size: 19px;
	line-height: 1.5em;
	text-indent: 0;
}
#contents #award01 h2.gold,
#contents #award02 h2.gold,
#contents #award03 h2.gold {
	text-indent: 35px;
	background-image: url(../images/icon_ranking_1.png);
	background-repeat: no-repeat;
	background-position: left 8px;
}
#contents #award01 h2.silver,
#contents #award02 h2.silver,
#contents #award03 h2.silver {
	text-indent: 30px;
	background-image: url(../images/icon_ranking_2.png);
	background-repeat: no-repeat;
	background-position: left 10px;
}
#contents #award01 h2.copper,
#contents #award02 h2.copper,
#contents #award03 h2.copper {
	text-indent: 30px;
	background-image: url(../images/icon_ranking_3.png);
	background-repeat: no-repeat;
	background-position: left 10px;
}
#contents #award01 h3,
#contents #award02 h3,
#contents #award03 h3 {
	font-size: 14px;
	font-weight: bold;
	border-top: 1px solid #B5B5B6;
	padding: 10px 0 5px 0;
	color: #00A8B8;
}
#contents #award02 h3 {
	color: #F2971B;
}
#contents #award01 p,
#contents #award02 p,
#contents #award03 p {
	font-size: 15px;
	line-height: 1.5em;
	margin: 0 0 20px 0;
}
#contents #award01 p.category01,
#contents #award02 p.category01,
#contents #award03 p.category01 {
	display: block;
	width: 100%;
	height: 26px;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	margin: 0 auto 10px 0;
	padding: 0;
	line-height: 26px;
	background-color: #F2971B;
	border-radius: 4px;
	min-height: 26px;
}
#contents #award01 p.category02,
#contents #award02 p.category02,
#contents #award03 p.category02 {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	margin: 0 auto 10px 0;
	padding: 0;
	line-height: 26px;
	background-color: #8FC31F;
	border-radius: 4px;
	min-height: 26px;
}
#contents #award01 p.category03,
#contents #award02 p.category03,
#contents #award03 p.category03 {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	margin: 0 auto 10px 0;
	padding: 0;
	line-height: 26px;
	background-color: #1F7EC3;
	border-radius: 4px;
	min-height: 26px;
}
#contents #award01 p.category04,
#contents #award02 p.category04,
#contents #award03 p.category04 {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	margin: 0 auto 10px 0;
	padding: 0;
	line-height: 26px;
	background-color: #E7E628;
	border-radius: 4px;
	min-height: 26px;
}
#contents #award01 p.category05,
#contents #award02 p.category05,
#contents #award03 p.category05 {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	margin: 0 auto 10px 0;
	padding: 0;
	line-height: 26px;
	background-color: #CD67DF;
	border-radius: 4px;
	min-height: 26px;
}
#contents #award01 p.category06,
#contents #award02 p.category06,
#contents #award03 p.category06 {
	display: block;
	width: 100%;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	margin: 0 auto 10px 0;
	padding: 0;
	line-height: 26px;
	background-color: #FF5050;
	border-radius: 4px;
	min-height: 26px;
}
#contents #award01 ul,
#contents #award02 ul,
#contents #award03 ul {
	list-style: none;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#contents #award01 ul li,
#contents #award02 ul li,
#contents #award03 ul li {
	width: 31%;
	margin-bottom: 40px;
	text-align: center;
	vertical-align: top;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
}
#contents #award01 ul::after,
#contents #award02 ul::after,
#contents #award03 ul::after{
	content:"";
	display: block;
	width:30%;
}
.manage #contents #award01 ul li,
.manage #contents #award02 ul li,
.manage #contents #award03 ul li {
	border-bottom-width: 1px;
	border-bottom-style: dashed;
}
#contents #award01 ul li a,
#contents #award02 ul li a,
#contents #award03 ul li a {
	display: flex;
	height: auto;
	height: 240px;
	width: 100%;
	margin-bottom: 10px;
	text-align: center;
}
.manage #contents #award01 ul li a,
.manage #contents #award02 ul li a,
.manage #contents #award03 ul li a {
	height: 320px;
}
#contents #award01 ul li.over a,
#contents #award02 ul li.over a,
#contents #award03 ul li.over a {
	height: 320px;
}
#contents #award01 ul li h2,
#contents #award02 ul li h2,
#contents #award03 ul li h2 {
	line-height: 1.25em;
	font-size: 14px;
	margin-top: 2px;
	margin-bottom: 10px;
/*	min-height: 6em;*/
	display: flex;
	align-items: center;
}
#contents #award01 ul li p,
#contents #award02 ul li p,
#contents #award03 ul li p{
	text-align: left;
	font-size: 14px;
}
#contents #award01 ul li p.explanation,
#contents #award02 ul li p.explanation,
#contents #award03 ul li p.explanation{
	flex-grow: 1;
}
#contents #award01 ul li:nth-child(3n),
#contents #award02 ul li:nth-child(3n),
#contents #award03 ul li:nth-child(3n) {
	margin-right: 0;
}
#contents #award01 ul li img,
#contents #award02 ul li img,
#contents #award03 ul li img {
	max-width: 100%;
	max-height: 320px;
	height: auto;
/*	margin: auto auto 0 auto;*/
	margin: auto;
}




/* hint___________________________________________________________________________________________________ */
#hint {
	padding-bottom: 50px;
}
#hint h2 {
	font-size: 28px;
	padding: 0;
	font-weight: bold;
	line-height: 1.25em;
	border-radius: none;
	background-color: transparent;
	margin: 60px 20px 20px 20px;
}
#hint p {
	font-size: 20px;
	line-height: 2em;
}
#hint .blueBG {
	background-color: #BBE2F1;
	padding: 25px 40px 10px 40px;
	border-radius: 20px;
	position: relative;
}
#hint .blueBG p {
	margin: 0;
}
#hint .blueBG .leftImg {
}
#hint .blueBG .rightImg {
	position: absolute;
	right: 40px;
	top: 25px;
}
#hint .blueBG .bottomImg {
	position: absolute;
	left: 50%;
	bottom: -40px;
	margin-left: -75px;
}
#hint .normalBG {
	position: relative;
}
#hint .normalBG .topImg {
	position: absolute;
	top: 15px;
	right: 0;
	left: 0;
}
#hint .normalBG .leftTxt {
	position: absolute;
	top: 140px;
	left: 0;
	font-size: 18px;
	font-weight: bold;
	text-align: left;
	line-height: 1.5em;
}
#hint .normalBG .bottomImg {
	margin: 20px 0 0 auto;
	text-align: right;
}
#hint ul.hintUL {
	list-style: none;
}
#hint ul.hintUL li {
	display: inline-block;
	width: 48%;
	margin-right: 4%;
}
#hint ul.hintUL li:nth-child(even) {
	margin-right: 0;
}
#hint ul.hintUL h2 {
	margin-left: 0;
	margin-right: 0;
}
#hint ul.hintUL h3 {
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 20px;
	padding-bottom: 20px;
	font-size: 28px;
	font-weight: bold;
	color: #37A6C6;
	text-align: center;
	background-image: url(../images/hint_h3_bg.png);
	background-position: center bottom;
	background-repeat: no-repeat;
}
#hint ul.hintUL p {
	margin-left: 0;
	margin-right: 0;
	font-size: 18px;
	line-height: 1.5em;
}
#hint ul.hintUL img {
	margin-left: 0;
	margin-right: 0;
}
.skyblueBG {
	padding: 30px 0;
}
.skyblueBG h2 {
	font-size: 28px;
	font-weight: bold;
	color: #00A8B8;
	line-height: 1.25em;
	text-align: center;
	background-image: url(../images/hint_h2_bg.png);
	background-position: center center;
	background-repeat: no-repeat;
	padding-top: 10px;
	padding-bottom: 10px;
}
.youtubeBox {
	max-width: 800px;
	margin: 40px auto;
}
.youtubeBox .movieBox {
	width: 100%;
	height: 0;
	position: relative;
	padding-top: 56.25%;
	overflow: hidden;
}
.youtubeBox .movieBox iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}



/* toppage___________________________________________________________________________________________________ */
body.top {
}
/* header___________________________________________________________________________________________________ */
body.top header {
	border-bottom: none;
	height: 170px;
	position: relative;
	z-index: 100;
}
body.top header .inner {
	padding-top: 40px;
}
body.top header h1 {
	position: absolute;
	top: 30px;
	right: 10px;
	left: auto;
	width: 1044px;
	height: 467px;
	display: block;
}
body.top header span.logo {
	position: relative;
	top: auto;
	right: auto;
	display: block;
	margin: 0 auto 20px 0;
	width: 257px;
	z-index: 10000;
}
body.top header .wBar {
	background-color: #fff;
}
body.top header .wBar .inner {
	max-width: 1280px;
	text-align: center;
	margin: 0 auto;
	padding: 35px 0;
}
body.top header .wBar img {
	width: 100%;
	max-width: 928px;
	vertical-align: bottom;
}
/* contentsTop___________________________________________________________________________________________________ */
#contentsTop {
	text-align: center;
	position: relative;
	z-index: 10;
	padding-top: 380px;
}
#contentsTop .inner {
	max-width: 1280px;
}
#contentsTop img.mainIMG {
}
#contentsTop .mainimgBox {
	max-width: 1282px;
	margin: 0 auto 0px auto;
}
#contentsTop .mainimgBox p {
	margin: 0;
	font-size: 12px;
	line-height: 1.5em;
}
#contentsTop .mainimgBox p span {
	font-weight: bold;
	background-color: #948a54;
	color: #fff;
	display: inline-block;
	padding: 3px 8px;
	border-radius: 5px;
	margin: 0 10px;
}
#contentsTop .awardBox {
	margin-top: -70px;
	margin-bottom: 50px;
}
#contentsTop .awardBox img {
}
#contentsTop .awardBox a img {
}
.normalBG {
	text-align: center;
	padding-top: 50px;
	padding-bottom: 30px;
}
.normalBG img {
	margin-bottom: 10px;
}
.normalBG p.btnP a {
	display: inline-block;
	margin: 5px 12px;
}
p.top_btnP {
	width: 900px;
	text-align: center;
	margin: 0px auto 40px auto;
}
p.top_btnP a {
	display: inline-block;
	margin: 5px 5px;
}
#main-img {
	position: absolute;
	top: 0px;
	left: 0;
	right: 0;
	width: 1139px;
	height: 1356px;
	margin: 0 auto;
	background-image: url("../images/top_bg_balloon.png");
	animation: cloudMove 3s infinite;
	background-repeat: no-repeat;
	background-position: center center;
}
@keyframes cloudMove {
    0% {background-position: center 0;}
    50% {background-position: center 20px;}
    100% {background-position: center 0;}
}
.essentials .greenBox {
	border: 7px solid #009245;
	border-radius: 15px;
	padding: 10px 0 0 0;
	max-width: 840px;
	margin: 10px auto 50px auto;
}
.essentials h1 {
	font-size: 27px;
	font-weight: bold;
	line-height: 2em;
	margin: 10px;
}
.essentials h1 span {
	font-size: 16px;
	font-weight: bold;
	background-color: #8DC21F;
	border-radius: 5px;
	color: #FFF;
	padding: 5px 10px;
	line-height: 14px;
	vertical-align: middle;
	display: inline-block;
	margin-right: 10px;
	margin-bottom: 5px;
}
.essentials h1 ruby {
	font-weight: bold;
}
.essentials h1 rt {
	font-size: 11px;
	font-weight: normal;
}
.essentials h2 {
	margin-bottom: 10px;
	position: relative;
	margin: 20px auto;
}
.essentials a.hintBtn {
	display: block;
	height: 42px;
	max-width: 430px;
	background-color: #fff000;
	border-radius: 10px;
	line-height: 42px;
	color: #231815;
	font-size: 24px;
	font-weight: bold;
	margin: 20px auto 40px auto;
}
.essentials a.hintBtn:hover {
	text-decoration: none;
	opacity: 0.7;
}
.essentials h3 {
	font-size: 18px;
	margin-bottom: 10px;
}
.essentials p {
	font-size: 20px;
	line-height: 2em;
	margin-top: 30px;
}
.essentials p.annotation {
	font-size: 20px;
	line-height: 1.75em;
	margin-bottom: 30px;
	margin-top: -10px;
	font-weight: bold;
}
.essentials p.btn a {
	margin: 10px 20px;
}
.essentials p.annotation span {
	background:linear-gradient(transparent 40%, #fff000 40%);
	padding-left: 10px;
}
.essentials p span.green {
	font-size: 20px;
	font-weight: bold;
	line-height: 2em;
	margin-bottom: 30px;
	color: #009245;
}
.essentials p ruby {
	font-weight: inherit;
}
.essentials p rt {
	font-size: 10px;
	font-weight: inherit;
}
.essentials ul {
	list-style: none;
	margin-bottom: 10px;
	font-size: 110%;
}
.essentials ul li {
	display: inline-block;
	padding: 5px 20px;
	border-right: solid 1px #000;
	font-weight: bold;
}
.essentials ul li:last-child {
	border-right: none;
}
.essentials p.periodP {
	background-color: #009245;
	border-radius: 19px;
	line-height: 38px;
	width: 560px;
	margin: 15px auto;
	color: #FFF;
	font-size: 110%;
}
.essentials p img {
	margin: 5px;
}
.detailBox {
}
.detailBox img {
	margin-left: -20px;
}
#contentsTop .watase {
	position: relative;
	max-width: 833px;
	margin: auto;
	background-image: url(../images/top_photo_bg.png);
	background-repeat: no-repeat;
	background-position: 255px 20px;
	padding-bottom: 50px;
}
#contentsTop .watase h2 {
	background-color: #C11920;
	font-size: 22px;
	color: #fff;
	text-align: left;
	border-radius: 5px;
	padding: 7px 7px 7px 80px;
	width: 570px;
	margin: 15px auto;
	font-weight: bold;
	position: absolute;
	right: 0;
	top:0;
}
#contentsTop .watase h2 span.whiteBox {
	background-color: #fff000;
	font-size: 19px;
	font-weight: bold;
	text-align: center;
	color: #231815;
	display: block;
	position: absolute;
	left: -10px;
	top:-20px;
	padding: 13px 0px;
	margin-right: 10px;
	width: 78px;
	height: 78px;
	border-radius: 78px;
	line-height: 1.25em;
}
#contentsTop .watase h2 span.txtSmall {
	font-size: 18px;
}
#contentsTop .watase h3 {
	font-size: 16px;
	margin: 0px auto 10px auto;
	font-weight: bold;
	clear: both;
	position: relative;
	text-align: left;
}
#contentsTop .watase h3::after {
	display: block;
	position: absolute;
	content: "";
	height: 2px;
	right: 0;
	top: 50%;
	left: 7.54em;
	background-color: #000;
}
#contentsTop .watase p.photoP {
	font-size: 18px;
	margin: 15px auto;
	line-height: 24px;
	font-weight: bold;
	position: relative;
	padding: 70px 140px 40px 260px;
	text-align: center;
	color: #014FA1;
}
#contentsTop .watase p.photoP span.space {
	display: block;
	margin: 0.6em auto;
}
#contentsTop .watase p.photoP img.pic {
	position: absolute;
	top: 14px;
	left: 0;
}
#contentsTop .watase p.photoP img.photo {
	position: absolute;
	top: -20px;
	right: 0;
}
#contentsTop .watase p.photoP a {
	display: block;
	font-size: 13px;
	line-height: 30px;
	width: 176px;
	color: #fff;
	font-weight: bold;
	background-color: #014fa1;
	text-align: center;
	position: absolute;
	right: 0;
	top: 290px;
	padding: 0;
	-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;
}
#contentsTop .watase p.photoP a:hover {
	text-decoration: none;
	opacity: 0.7;
}
#contentsTop .watase p.photoP.small {
	font-size: 13px;
	line-height: 1.5em;
	padding: 0;
	color: #000000;
	text-align: left;
}




#application {
	margin: 50px auto;
}
#application img {
	display: block;
	margin: auto;
	width: 100%;
	max-width: 923px;
}
#form {
}
#form p {
	text-align: center;
	font-weight: bold;
	margin-bottom: 30px;
}
#form p.lastP {
	text-align: left;
	font-weight: bold;
	margin: 30px;
	font-size: 115%;
	line-height: 1.75em;
}
#form p.lastP.right {
	text-align: right;
}
#form p.bottomP {
	text-align: left;
	font-weight: bold;
	margin-bottom: 30px;
}
#form p.bottomP span {
	color: #FF0004;
}
#form p.bottomP a {
	text-decoration: underline;
	font-weight: inherit;
}
#form dl {
	display: flex;
	flex-wrap: wrap;
}
#form dl dt {
	width: 30%;
	margin-bottom: 40px;
	padding-right: 1em;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.25em;
}
#form dl dt span {
	color: #FF0000;
	margin-left: 5px;
	height: 0;
	line-height: 1;
	vertical-align: baseline;
	_vertical-align: bottom;
	position: relative;
	font-size: 75%;
	font-weight: inherit;
	bottom: 0.5ex;
}
#form dl label {
	font-weight: bold;
}
#form dl dd {
	width: 70%;
	padding-left: 1em;
	margin-bottom: 40px;
	font-size: 22px;
	word-wrap: break-word;
}
#form dl dd span {
	color: #FF0000;
	display: block;
	margin-top: 1em;
	font-size: 75%;
	font-weight: inherit;
}
#form dl input[type=text],
#form dl input[type=email] {
	width: 100%;
	border: none;
	padding: 7px;
	font-size: 20px;
	background-color: #fff !important;
	height: 40px;
	border-radius: 0;
}
#form dl input[type=tel] {
	width: 100%;
	max-width: 280px;
	border: none;
	padding: 7px;
	font-size: 20px;
	background-color: #fff !important;
	height: 40px;
	border-radius: 0;
}
#form dl select {
	width: 7em;
	border: none;
	padding: 5px;
	font-size: 20px;
	background-color: #fff !important;
	height: 40px;
	border-radius: 0;
}
#form dl input#address {
	margin-top: 15px;
	border-radius: 0;
}
#form dl input.zip {
	width: 8em;
	margin: 0 5px;
}
#form dl input.email {
	width: 70%;
}
#form dl input.checkText {
	width: 50%;
}
#form dl input#email {
	margin-top: 15px;
}
#form dl button.zipAuto {
	background-color: #888888;
	border: none;
	padding: 10px;
	vertical-align: top;
	color: #fff;
	font-size: 15px;
	cursor: pointer;
	height: 40px;
}
#form dl button.zipAuto:hover {
	opacity: 0.7;
}
#form dl input[type=radio] {
	transform:scale(2.0);
	margin: 0 10px 0px 10px;
}
#form dl input[type=checkbox] {
	transform:scale(2.0);
	margin: 0 10px 0px 10px;
}
#form dl dd label {
	font-weight: normal;
	display: inline-block;
	margin-bottom: 20px;
}
#form dl textarea {
	width: 100%;
	border: none;
	padding: 7px;
	font-size: 20px;
	background-color: #fff !important;
	height: 15em;
	border-radius: 0;
}
#form dl #upFileWrap #drop-zone {
	background-color: #fff;
	padding: 30px;
}
#form dl #upFileWrap #drop-zone p {
	font-size: 15px;
	color: #898989;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom-width: 2px;
	border-bottom-style: dashed;
}
#form dl #upFileWrap #drop-zone p + p {
	border: none;
	margin-bottom: 0;
}
#form dl #upFileWrap #drop-zone #file-input {
	position: absolute;
	left: 0;
	bottom:0;
	width: 1px;
	height: 60px;
	overflow: hidden;
	opacity: 0;
}
#form dl #upFileWrap #drop-zone label.file-inputBtn {
	border: 3px solid #898989;
	margin: auto;
	width: 240px;
	display: block;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	padding: 15px 5px;
	border-radius: 10px;
	background-image: linear-gradient(180deg, rgba(255, 255, 255, 1) 30%, rgba(172, 172, 172, 1));
	cursor: pointer;
	position: relative;
}
#form dl #upFileWrap #drop-zone label.file-inputBtn:hover {
	opacity: 0.7;
}
#form dl #upFileWrap #drop-zone #preview {
	text-align: center;
}
#form dl #upFileWrap #drop-zone #preview img {
	margin-top: 20px;
	max-width: 100%;
}
#form dl dd span.small {
	display: block;
	font-size: 80%;
	margin-bottom: 20px;
}
#form dl dd span.small2 {
	display: block;
	font-size: 60%;
	margin-bottom: 20px;
}
#form dl dd span.small a {
	text-decoration: underline;
	color: #036EB8;
}
#form input[type=submit].submitBtn {
	background-image: url(../images/form_btn_check.png);
	background-repeat: no-repeat;
	background-size: cover;
	width: 485px;
	height: 96px;
	border: none;
	display: block;
	cursor: pointer;
}
#form input[type=submit].submitBtn:hover {
	opacity: 0.7;
}
#form .btnArea {
	display: flex;
	justify-content: center;
	margin: 30px auto 50px auto;
}
#form .btnArea .backBtn {
	display: block;
	width: 185px;
	height: 96px;
	background-image: url(../images/form_btn_back.png);
	background-repeat: no-repeat;
	border: none;
	cursor: pointer;
	color: transparent;
	margin-right: 40px;
}
#form .btnArea .backBtn:hover {
	opacity: 0.7;
}


input:-webkit-autofill {
    box-shadow: 0 0 0 1000px white inset;
}


.manage #loginArea{
	width: 600px;
	margin: 100px auto;
}
.manage #loginArea .loginBox {
}
.manage #loginArea .loginBox h1 {
	text-align: center;
	font-weight: bold;
	border-bottom: 2px solid #8DC21F;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.manage #loginArea .loginBox p.attention {
	color: #FF0004;
	text-align: center;
	font-size: 120%;
}
.manage #loginArea .loginBox form {
	text-align: center;
	padding: 20px;
	font-size: 22px;
}
.manage #loginArea .loginBox form label {
	width: 4em;
	display: inline-block;
	margin-bottom: 40px;
	line-height: 40px;
	text-align: left;
}
.manage #loginArea .loginBox form input[type=text],
.manage #loginArea .loginBox form input[type=password] {
	width: 300px;
	padding: 7px;
	font-size: 20px;
	background-color: #fff !important;
	height: 40px;
	border-radius: 0;
	border: 1px solid #000000;
}
.manage #loginArea .loginBox form input[type=submit] {
	padding: 12px 30px;
	border: none;
	border-radius: 8px;
	font-weight: bold;
	text-decoration: none;
	background-color: #8DC21F;
	color: #fff;
	-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;
	cursor: pointer;
}
.manage #loginArea .loginBox form input[type=submit]:hover {
	opacity: 0.7;
}


.preload * {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
    transition: none !important;
}
