@charset "utf-8";
 
/* ----------------------------------------------------------------------------------------
	slide
---------------------------------------------------------------------------------------- */ 

#side {
	min-width: 1280px;
	background: #80cef2 url(../images/top/side_bg.png) repeat-x center bottom;
}

.sideWrapBox {
	background: url(../images/top/sidewrap_wrap_wrap.png) no-repeat center center;
}

.sideWrap {
	box-sizing: border-box;
	position: relative;
	/* max-width: 1200px;
	width: 100%; */
	width: 1200px;
	height: 608px;
	margin: -10px auto 0;
	padding: 42px 0 0;
	text-align: center;
}

.sideWrap:after {
	position:absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/images/top/slide_wrap.png) no-repeat center top;
	z-index:100;
	content:"";
}

.sideWrap ul {
	margin: 0;
	padding: 0;
	background: transparent;
}

.sideWrap li {
	margin: 0;
	padding: 0;
	background: none !important;
	text-align: center;
}

.bx-wrapper img {
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	
	#side {
		min-width: inherit;
		padding-top: 5px;
		background: #80cef2 url(../images/top/side_bg_sp.png) repeat-x center bottom;
		background-size: contain;
	}
	
	.sideWrapBox {
		background: none;
	}
	
	.sideWrap {
		height: auto;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	.sideWrap:after {
		display: none;
	}
	
}

/* ----------------------------------------------------------------------------------------
	SIDE
---------------------------------------------------------------------------------------- */

#side02 {
	min-width: 1280px;
	background: url(../images/top/side02_bg.png) no-repeat center bottom;
}

#side03 {
	background: url(../images/top/side03_bg.png) no-repeat center top;
}

.topNav {
	padding: 0 0 240px;
}

.topNav .head {
	margin: 0 0 40px;
	padding: 100px 0 0;
	background: url(../images/top/topnav_head.png) no-repeat center top;
	text-align: center;
}

.topNav .head h2 {
	margin: 0 0 14px;
	padding: 0;
	background: none;
	border: none;
	color: #fff;
	font-size: 56px;
	line-height: 1.2;
	font-weight: bold;
}

.topNav .head h2 .small {
	font-size: 45px;
}

.topNav .head h2 strong {
	color: #fff799;
	font-weight: bold;
}

.topNav .head .en {
	font-size: 15px;
	color: #fff;
}

.topNav .body ul {
	display: table;
	width: 100%;
	padding: 0;
	background: transparent;
}

.topNav .body li {
	display: table-cell;
	box-sizing: border-box;
	width: 33.3333333333%;
	margin: 0;
	background: none !important;
	padding: 0 6px;
	vertical-align: middle;
}

.topNav .body li:nth-child(1) { text-align: left;}
.topNav .body li:nth-child(2) { text-align: center;}
.topNav .body li:nth-child(3) { text-align: right;}


@media screen and (max-width: 768px) {

	#side02,
	#side03 {
		min-width: inherit;
		background: none;
	}
	
	.topNav {
		padding: 0 0 180px;
	}
	
	.topNav .head {
		margin: 0;
		padding-top: 80px;
		background-position: center 30px;
		background-size: 360px auto;
	}

	.topNav .head h2 {
		font-size: 30px;
	}

	.topNav .head h2 .small {
		font-size: 22px;
	}

	.topNav .head .en {
		font-size: 12px;
	}

	.topNav .body ul {
		overflow: hidden;
		display: block;
		margin: 0;
		text-align: center;
	}

	.topNav .body li {
		display: block;
		float: left;
		width: 50%;
		padding: 0 5px;
		text-align: center;
	}

	.topNav .body li:nth-child(3) {
		clear: both;
		float: none;
		width: 50%;
		margin: 0 auto;
	}
	
}


/* ----------------------------------------------------------------------------------------
	UPPER
---------------------------------------------------------------------------------------- */ 

#upper {
	min-width: 1280px;
	padding: 0 0 60px;
	background: #2caa40 url(../images/top/upper_foot.png) repeat-x center bottom;
}

.topAlbum {
	min-width: 1280px;
	padding-bottom: 154px;
	background: url(../images/top/top_album.png) no-repeat center bottom;
}

.topAlbum .head {
	padding: 54px 0 60px;
	background: url(../images/top/h2_sun.png) no-repeat center top;
	text-align: center;
}

.topAlbum .head h2 {
	display: table;
	margin: 0 auto;
	padding: 0;
	background: none;
	border: none;
	color: #fff;
	font-size: 45px;
	line-height: 1.3;
	font-weight: bold;
}

.topAlbum .head p {
	margin: 0;
}

.topAlbum .head h2 span {
	display: table-cell;
	padding: 0;
	vertical-align: middle;
	text-align: left;
}

.topAlbum .head h2 .small {
	padding-right: 12px;
	font-size: 21px;
	line-height: 1.2;
}

.topAlbum .head .en {
	font-size: 15px;
	color: #fff;
}

.topAlbum .body {
	text-align: center;
	color: #7a6a56;
	font-size: 15px;
}

.topAlbum .body p {
	margin-bottom: 16px;
}

.topAlbum .body ul {
	margin: 0 0 34px -20px;
	padding: 0;
	background: transparent;
}

.topAlbum .body li {
	box-sizing: border-box;
	float: left;
	width: 33.3333333333%;
	margin: 0;
	background: none !important;
	padding: 0 0 0 20px;
	background: none;
}

.topAlbum .body li a {
	position: relative;
	display: block;
	padding: 10px;
	background: #fff;
	box-shadow: 6px 10px 12px rgba(35,24,21,0.2);
	-moz-box-shadow: 6px 10px 12px rgba(35,24,21,0.2);
	-webkit-box-shadow: 6px 10px 12px rgba(35,24,21,0.2);
}

.topAlbum .body li:nth-child(2) {
	margin-top: 36px;
}

.topAlbum .body li a .tab {
	position: absolute;
	left: 50%;
	top: 0;
	z-index: 1;
	margin: 0 0 0 -80px;
}

.topAlbum .body li a:hover .tab {
	opacity: 1;
	-webkit-opacity: 1;
	-moz-opacity: 1;
	filter: alpha(opacity=100);
}

.topAlbum .bu {
	font-size: 16px;
	text-align: center;
}

.topAlbum .bu a {
	display: block;
	height: 90px;
	width: 320px;
	background: url(../images/top/bu_album.png) no-repeat center center;
	margin: 0 auto;
	font-size: 22px;
	color: #040000;
	text-decoration: none;
	line-height: 90px;
}

.topAlbum .bu a:hover {
	color: #404040;
}

@media screen and (max-width: 768px) {
	
	#upper {
		min-width: inherit;
		padding: 0 0 20px;
		background: #2caa40 url(../images/top/upper_foot_sp.png) repeat-x center bottom;
		background-size: 640px auto;
	}

	.topAlbum {
		min-width: inherit;
		padding-bottom: 0;
		background: none;
	}

	.topAlbum .head {
		padding: 26px 0 18px;
		background-size: 20px 20px;
	}

	.topAlbum .head h2 {
		font-size: 34px;
	}

	.topAlbum .head h2 .small {
		padding-right: 12px;
		font-size: 16px;
		line-height: 1.2;
	}

	.topAlbum .head .en {
		font-size: 12px;
	}
	
	.topAlbumBox {
		padding: 24px 0 80px;
		background: url(../images/top/topalbumbox_bg.png) no-repeat center center;
		background-size: cover;
	}

	.topAlbum .body > p {
		display: none;
	}

	.topAlbum .body ul {
		margin: 0;
	}

	.topAlbum .body li {
		float: none;
		width: 100%;
		padding: 0 22%;
	}

	.topAlbum .body li a {
		margin-bottom: 16px;
		padding: 5px;
	}

	.topAlbum .body li:nth-child(2) {
		margin-top: 0
	}
	
	.topAlbum .body li a .tab {
		width: 130px;
		margin-left: -65px;
	}
	
	.topAlbum .body li img + img {
		display: block;
		max-width: none;
		width: 100%;
	}

	.topAlbum .bu {	
		padding: 0 25%;
	}
	
	.topAlbum .bu a {
		display: block;
		height: auto;
		width: 100%;
		padding: 16px 0;
		background: #dbe000 none;
		line-height: 1.2;
		font-size: 14px;
	}
	
}


/* ----------------------------------------------------------------------------------------
	main
---------------------------------------------------------------------------------------- */ 

#main {
	min-width: 1280px;
	background: #fff;
}

#main .wrapper {
	/* max-width: 1280px; */
	width: 1280px;
	padding: 0;
}

.topRecruit {
	position: relative;
	margin-bottom: 40px;
	padding: 54px 0;
	background: url(../images/top/top_recruit.png) no-repeat center top;
}

@media screen and (max-width: 1200px) {
	
	#main .wrapper {
		width: 100%;
		padding: 0 10px;
	}
	
	.topRecruit {
		padding-left: 18%;
		padding-right: 18%;
	}
	
}

.topRecruit .head {
	padding: 54px 0 0;
	background: url(../images/top/h2_sun.png) no-repeat center top;
	text-align: center;
}

.topRecruit .head h2 {
	margin: 0 0 10px;
	padding: 0;
	background: none;
	border: none;
	color: #e62669;
	font-size: 38px;
	line-height: 1.3;
	font-weight: bold;
}

.topRecruit .head h2 p {
	margin: 0;
}

.topRecruit .head h2 .small {
	font-size: 28px;
}

.topRecruit .head .en {
	font-size: 15px;
	color: #e62669;
}

.topRecruit .body {
	text-align: center;
}

.topRecruit .body .up {
	font-size: 20px;
}

.topRecruit .body .up p {
	margin-bottom: 1em;
}

.topRecruit .bu {
	margin-top: 40px;
	text-align: center;
}

.topRecruit .bu:before {
	display: inline-block;
	content: url(../images/top/top_recruit_l.png);
	vertical-align: middle;
}

.topRecruit .bu:after {
	display: inline-block;
	content: url(../images/top/top_recruit_r.png);
	vertical-align: middle;
}

.topRecruit .bu p {
	display: inline-block;
}

.topRecruit .bu a {
	display: inline-block;
	padding: 16px 72px;
	background: #e62669 url(../images/top/arrow_white10.png) no-repeat right center;
	color: #fff;
	font-size: 24px;
	text-decoration: none;
}

.topRecruit .bu a:hover {
	background: #ed6796 url(../images/top/arrow_white10.png) no-repeat right center;
}

.topRecruit .photo ul {
	margin: 0;
	padding: 0;
	background: transparent;
}

.topRecruit .photo li {
	position: absolute;
	margin: 0;
	padding: 0;
	background: none !important;
}

.topRecruit .photo li:nth-child(1) { top: 14px; left: 84px; width: 13.492063%;}
.topRecruit .photo li:nth-child(2) { top: 50%; left: 0; margin-top: -80px; width: 16.9115423%;}
.topRecruit .photo li:nth-child(3) { bottom: 22px; left: 90px; width: 14.126984%;}
.topRecruit .photo li:nth-child(4) { top: 0; right: 40px; width: 15.396825%;}
.topRecruit .photo li:nth-child(5) { top: 50%; right:  0; margin-top: -85px; width: 13.492063%;}
.topRecruit .photo li:nth-child(6) { bottom: 0; right: 0; width: 17.03125%;}

@media screen and (max-width: 768px) {
	
	#main {
		min-width: inherit;
		padding-bottom: 16px;
	}
	
	.topRecruit {
		position: static;
		margin-bottom: 0;
		padding: 40px 0 12px;
		background: url(../images/top/top_recruit_sp.png) no-repeat center top;
		background-size: 300px auto;
	}

	.topRecruit .head {
		padding: 26px 0 18px;
		background-size: 20px 20px;
	}

	.topRecruit .head h2 {
		margin: 0 0 10px;
		font-size: 20px;
	}

	.topRecruit .head h2 .small {
		font-size: 14px;
	}

	.topRecruit .head .en {
		margin: 0;
		font-size: 12px;
	}

	.topRecruit .body .up {
		font-size: 16px;
	}

	.topRecruit .bu:before,
	.topRecruit .bu:after {
		display: inline-block;
		width: 55px;
		height: 50px;
		content: ' ';
		vertical-align: top;
	}
	
	.topRecruit .bu:before {
		background: url(../images/top/top_recruit_l.png) no-repeat center center;
		background-size: contain;
	}
	
	.topRecruit .bu:after {
		background: url(../images/top/top_recruit_r.png) no-repeat center center;
		background-size: contain;
	}
	
	.topRecruit .bu {
		margin: 0;
	}

	.topRecruit .bu a {
    	height: auto;
    	padding: 16px 32px;
    	background: #e62669 none;
    	line-height: 1.2;
    	font-size: 14px;
	}

	.topRecruit .bu a:hover {
    	background: #e62669 none;
	}

	.topRecruit .photo li {
		box-sizing: border-box;
		position: static;
		float: left;
		width: 33.3333333333% !important;
		padding: 0 6px;
		text-align: center;
	}
	
	.topRecruit .photo li:nth-child(2) {
		margin: 0;
	}

	.topRecruit .photo li:nth-child(4),
	.topRecruit .photo li:nth-child(5),
	.topRecruit .photo li:nth-child(6) {
		display: none;
	}
	
}


/* ----------------------------------------------------------------------------------------
	opt3
---------------------------------------------------------------------------------------- */  

#opt3Head {
	min-width: 1280px;
	height: 70px;
	background: #fff url(../images/top/opt3_head.png) repeat-x center top;
}

#opt3 {
	padding: 26px 0 0;
}

#opt3Con {
	padding-bottom: 180px;
	background: url(../images/top/opt3_con.png) no-repeat center top;
}

.infoDigest .head {
	padding: 54px 0 0;
	background: url(../images/top/h2_sun02.png) no-repeat center top;
	text-align: center;
}

.infoDigest .head h2 {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	font-size: 45px;
	color: #fff;
	line-height: 1.2;
	font-weight: bold;
}

.infoDigest .head .en {
	font-size: 15px;
	color: #fff;
}

.infoDigest .body ol {
	list-style: none;
	margin: 0 0 50px -25px;
	padding: 0;
}

.infoDigest .body li {
	box-sizing: border-box;
	float: left;
	width: 33.3333333333%;
	padding: 0 0 0 25px;
}

.infoDigest .body li a {
	box-sizing: border-box;
	display: block;
	padding: 20px;
	background: #fff;
	text-decoration: none;
	box-shadow: 6px 10px 12px rgba(35,24,21,0.2);
	-moz-box-shadow: 6px 10px 12px rgba(35,24,21,0.2);
	-webkit-box-shadow: 6px 10px 12px rgba(35,24,21,0.2);
}

.infoDigest .body li .photo {
	margin-bottom: 8px;
}

.infoDigest .body li img {
	display: block;
	max-width: none;
	width: 100%;
}

.infoDigest .body dt {
	color: #e61773;
}

.infoDigest .body dd {
	color: #3f3b3a;
}

.infoDigest .body a:hover dt {
	color: #f28bb9;
}

.infoDigest .body a:hover dd {
	color: #9f9d9c;
}

.infoDigest .bu {
	text-align: center;
}

.infoDigest .bu a {
	display: inline-block;
	padding: 16px 72px;
	background: #fff799 url(../images/top/arrow_pink10.png) no-repeat right center;
	color: #e61773;
	font-size: 24px;
	text-decoration: none;
}

.infoDigest .bu a:hover {
	background: #fff9b7 url(../images/top/arrow_pink10.png) no-repeat right center;
}

@media screen and (max-width: 768px) {
	
	#opt3Head {
		min-width: inherit;
		margin: 0;
		height: 20px;
		background: #fff url(../images/top/opt3_head_sp.png) repeat-x center top;
		background-size: 640px auto;
	}

	#opt3Con {
		padding-bottom: 90px;
		background: url(../images/top/opt3_con_sp.png) no-repeat center -10px;
		background-size: 640px auto;
	}
	
	.infoDigest .head {
		padding: 26px 0 18px;
		background-size: 20px 20px;
	}

	.infoDigest .head h2 {
		font-size: 30px;
	}

	.infoDigest .head .en {
		margin: 0;
		font-size: 10px;
	}
	
	.infoDigest .body ol {
		margin: 0;
	}

	.infoDigest .body li {
		float: none;
		width: 100%;
		margin: 0 0 10px;
		padding: 0;
	}

	.infoDigest .body li a {
		overflow: hidden;
		padding: 8px;
		text-decoration: none;
		box-shadow: none;
		-moz-box-shadow: none;
		-webkit-box-shadow: none;
	}

	.infoDigest .body li .photo {
		float: left;
		width: 46.6666667%;
		margin: 0;
	}

	.infoDigest .body dl {
		box-sizing: border-box;
		float: left;
		width: 53.3333333%;
		padding: 8px 0 0 16px;
	}
	
	.infoDigest .bu {
		margin-top: 4px;
		padding: 0 25%;
	}
	
	.infoDigest .bu a {
		display: block;
		height: auto;
		width: 100%;
		padding: 16px 0;
		background: #fff799 none;
		background-size: 12px auto;
		color: #e61773;
		line-height: 1.2;
		font-size: 14px;
	}
	
}