/* CSS Document */

@charset "UTF-8";

@import url('reset.css');
@import url('style.css');

/*----------------------------------------------------------------------
main-top
-----------------------------------------------------------------------*/
main#main-top {
	width: 100%;
	padding-bottom: 42px;
	overflow: hidden;
}

main#main-top a:visited {
	color: #333;
}

main#main-top a:hover {
	color: #AAA;
}

main#main-top h1 {
	width: 550px;
}
main#main-top h1:before {
	content: none;
	margin-right: 0;
}

main#main-top h1 img {
	width: 100%;
}

p.caption {
	margin: 34px 0px 20px;
	font-size: 27px;
	font-weight: bold;
	line-height: 1.3em;
	color: #4A435A;
}

main p:nth-of-type(2) {
	font-size: 16px;
}

#main-top ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 42px;
}

#main-top ul li {
	width: 27%;
	margin-top: 66px;
	padding: 16px;
	background-color: #EAE9E8;
	line-height: 1.6em;
	text-align: center;
}

#main-top ul li figure {
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 140px;
	height: 140px;
	margin: -50px auto 9px;
	border-radius: 70px;
	background-color: #5E6989;
}
#main-top ul li:nth-of-type(2) figure {
	background-color: #F1AC1C;
}
#main-top ul li:nth-of-type(3) figure {
	background-color: #D75F54;
}

#main-top ul li:first-of-type figure img {
	width: 68%;
	margin-top: -8px;
}
#main-top ul li:nth-of-type(2) figure img {
	width: 76%;
}
#main-top ul li:nth-of-type(3) figure img {
	width: 70%;
	margin-left: 8px;
}

#main-top ul li p {
	font-size: 14px;
}

#main-top ul li h3 {
	margin-bottom: 11px;
	font-size: 22px;
	line-height: 1.2em;
	color: #4A435A;
}

div.left {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	width: 44%;
	height: 159.33px;
}

div.left figure {
	margin-top: 32px;
	text-align: center;
	line-height: 1.3em;
}

div.left figure img {
	height: 75px;
}

a.member {
	float: right;
	width: 50%;
	line-height: 0;
}

a.links img {
	width: 100%;
	border-radius: 15px;
}

div.left a:hover img, a.links:hover img {
	opacity: 0.8;
	filter : alpha(opacity=80);
}

/*----------------------------------------------------------------------
スライダー
-----------------------------------------------------------------------*/
section#slider {
	width: 100%;
	background-color: #FFF;
}

section#slider div.inner {
	width: 940px;
	padding: 32px 80px;
}

section#slider h2 {
	margin: 0px 0px 20px -40px;
	font-size: 24px;
	letter-spacing: -1px;
	line-height: 1em;
}
section#slider h2::before {
	content: url("../images/com_img/h1_before.png");
	display: inline-block;
	vertical-align: middle;
	margin: -5px 10px 0px 0px;
}
section#slider h2::after {
	content: url("../images/index_img/h2_after.gif");
	display: inline-block;
	vertical-align: middle;
	margin: -5px 0px 0px 17px;
}

/*----------------------------------------------------------------------
ログイン
-----------------------------------------------------------------------*/
section#login {
	width: 100%;
	padding: 4px 0px 30px;
	background-color: #B1A5A0;
}

section#login form {
	margin-left: 88px;
}

section#login div.inner {
	width: 940px;
	padding: 32px 80px;
}

section#login h2 {
	margin: 0px 0px 20px -40px;
	font-size: 24px;
	letter-spacing: -1px;
	line-height: 1em;
	color: #FFF;
}
section#login h2::before {
	content: url("../images/com_img/h1_login_before.png");
	display: inline-block;
	vertical-align: middle;
	margin: -5px 10px 0px 0px;
}

section#login h2 span {
	vertical-align: middle;
	margin-left: 26px;
	font-size: 15px;
	font-weight: normal;
	letter-spacing: 0;
}

section#login input {
	width: 236px;
	margin-right: 22px;
	padding: 6px 8px;
	font-size: 16px;
}
section#login input::placeholder {
  color: #BBB;
}

section#login form p {
	font-size: 16px;
	color: #FFF;
}

section#login form p a {
	margin-left: 2px;
	color: #FFF;
}

section#login input[type="submit"] {
	width: auto !important;
	padding: 14px 44px;
	border: 2px solid #FFF;
	border-radius: 10px;
	background-color: transparent !important;
	background-image: url("../images/header/login_bg.png");
	background-size: 49px 41px;
	background-position: 25px center;
	background-repeat: no-repeat;
	font-weight: bold;
	color: #FFF;
	text-indent: 45px;
	text-decoration: none;
}

/*----------------------------------------------------------------------
twitter
-----------------------------------------------------------------------*/
section#bottom {
	width: 100%;
	background-color: #FFF;
}

section#bottom div.inner {
	width: 940px;
	padding: 32px 80px;
	text-align: center;
}

a.twitter {
	display: inline-block;
	width: 414px;
	line-height: 0;
}

a.twitter img {
	width: 100%;
}

/*----------------------------------------------------------------------
レスポンシブル
-----------------------------------------------------------------------*/
@media screen and (max-width: 801px) {
	main#main-top  {
		padding-bottom: 0;
	}

	main#main-top h1 {
		width: 100%;
	}

	p.caption {
		font-size: 20px;
	}

	#main-top ul {
		width: 100%;
		flex-direction: column;
	}

	#main-top ul li {
		width: 100%;
		box-sizing: border-box;
	}

	div.left {
		width: 91%;
	}
	
	a.member {
		display: table;
		float: none;
		width: 100%;
		margin: 0 auto;
	}

	section#login {
		padding-bottom: 0;
	}

	section#login form {
		margin-left: 0;
	}

	section#slider div.inner, section#login div.inner, section#bottom div.inner {
		width: 92%;
		padding: 23px 4%;
	}

	section#slider h2, section#login h2 {
		margin-left: 0;
	}

	section#login div.inner h2 span {
		display: block;
	}

	section#login input {
		width: 100%;
		margin: 0px 0px 10px 0px;
		box-sizing: border-box;
	}

	section#login input[type="submit"] {
		display: table;
		margin: 15px auto;
	}

	section#login p {
		display: table;
		margin: 0 auto;
	}

	a.twitter {
		width: 80%;
	}
}