@charset "utf-8";
@import url("reset.css");
/*base*/
@import url("common.css");
/*
@import url("frame.css");
*/


/* top-visual */

.top-visual {
	max-width: 100%;
	height: 700px;
	margin: auto;
	text-align: center;
	background-image: url(../img/top-bg.jpg);
	background-attachment: fixed;
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
}

.top-visual h1 {
	color: white;
	padding-top: 100px;
	font-size: 48px;
	line-height: 60px;
}

.top-visual h1:before {
	content: "";
	display: block;
	width: 280px;
	height: 280px;
	background-image: url(../img/logomark.svg);
	background-image: url(../img/logo_salt_wh.gif);
	background-image: url(../img/salt_logo_wh.png);
	background-repeat: no-repeat;
	background-size: 280px 280px;
	margin: auto auto 20px;
}

/* ie 9to11 hack */
@media screen and (min-width: 0\0) and (min-resolution: +72dpi) {
.top-visual h1:before {
	background-image: url(../img/logomark.svg);
}
}

/* edge 12to14 hack */
@supports (-ms-ime-align: auto) and (not (-webkit-text-stroke: initial)) {
.top-visual h1:before {
	background-image: url(../img/logomark.svg);
}
}

/* edge 15 hack */
@supports (-ms-ime-align: auto) and (-webkit-text-stroke: initial) {
.top-visual h1:before {
	background-image: url(../img/logomark.svg);
}
}


.top-visual .btn {
	width: 200px;
	padding: 5px 0;
	color: #ffffff;
	border: 2px solid #ffffff;
	border-radius: 4px;
	background-color: transparent;
	text-align: center;
	text-decoration: none;
	display: block;
	margin: 30px auto 20px;
	transition-duration: 0.4s; 
	transition-delay: 0.2s; 
}

.top-visual .btn:hover {
	background: rgba(255,255,255,0.3);
	color: white;
}

@media screen and (max-width: 720px) {
.top-visual {
	height: 400px;
	background-size: auto;
}

.top-visual h1 {
	color: white;
	padding-top: 30px;
	font-size: 28px;
	line-height: 48px;
}

.top-visual h1:before {
	width: 140px;
	height: 140px;
	background-size: 140px 140px;
	margin: auto auto 20px;
}
}



/* philosophy */

.philosophy {
	max-width: 1200px;
	margin: 40px auto;
	text-align: center;
}
.philosophy div {
	margin: 50px auto;
}

.philosophy h1 {
	font-size: 20px;
	margin: 50px auto 10px;
	color: #999;
	width: 200px;
	border: solid 1px #999;
}

.philosophy div:last-of-type {
	margin-top: 70px;
}

.philosophy h2 {
	font-size: 36px;
	margin: -5px auto;
}
.philosophy h2.sub {
	font-size: 24px;
	color: #666;
	color: #80e6d9;
	
}

.philosophy p {
	line-height: 2.2;
	margin: 20px auto;
	color: #666;
}

.philosophy .btn {
	width: 200px;
	padding: 5px 0;
	border: 2px solid #4b618d;
	border-radius: 4px;
	background-color: transparent;
	text-align: center;
	text-decoration: none;
	display: block;
	opacity: 1;
	margin: -20px auto 80px;
	transition: 0.3s; 
}
.philosophy .btn:hover {
	background: #4b618d;
	color: white;
}

@media screen and (max-width: 720px) {
.philosophy div {
	margin: 20px auto;
}

.philosophy h1 {
	font-size: 14px;
	margin-top: 30px;
}

.philosophy div:last-of-type {
	margin-top: 10px;
}
.philosophy h2 {
	font-size: 18px;
	margin: -5px auto;
}
.philosophy h2.sub {
	font-size: 16px;
}

.philosophy p {
	font-size: 14px;
	line-height: 1.8;
	margin: 4px auto;
	color: #666;
	text-align: left;
	padding: 10px;
}
.philosophy .btn {
	margin: 30px auto 40px;
}
}

/* news */

.news {
	max-width: 1200px;
	text-align: center;
	margin: 40px auto;
	color: #4b618d;
}
.news h1 {
	font-size: 32px;
	margin: 20px auto;
}
.news dl {
	text-align: left;
	overflow: hidden;
	max-width: 600px;
	margin: auto;

	border: 5px solid #80e6d9;
	-moz-border-image: -moz-linear-gradient(top, #80e6d9 0%, #4b618d 100%);
	-webkit-border-image: -webkit-linear-gradient(top, #80e6d9 0%, #4b618d 100%);
	border-image: linear-gradient(to bottom, #80e6d9 0%, #4b618d 100%);
	border-image-slice: 1;
	padding: 40px 80px;

	line-height: 1.8em;
}
.news dl dt {
	float: left;
	clear: left;
	width: 25%;
	margin-top: 10px;
}
.news dl dd {
	float: left;
	width: 75%;
	margin-top: 10px;
}

@media screen and (max-width: 720px) {
.news {
	margin: 20px auto;
	padding: 0 10px;
}
.news h1 {
	font-size: 28px;
	margin: 20px auto;
}
.news dl {
	padding: 20px;
	font-size: 14px;
}
.news dl dt {
	float: none;
	width: 25%;
	margin-top: 0;
}
.news dl dd {
	float: none;
	width: 75%;
	margin-top: 0;
	margin-bottom: 10px;
}
}
