@import url("//netdna.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.css");
@media screen and (max-width: 768px) {
	.only-pc {
		display: none !important; }
	.only-sp {
		display: block; } }

@media screen and (min-width: 769px) {
	.only-pc {
		display: block; }
	.only-sp {
		display: none !important; } }

/* mixin
----------------------------------------*/
/* onmouse
----------------------------------------*/
@-webkit-keyframes arrow-move-h {
	0% {
		-webkit-transform: translateX(0);
		        transform: translateX(0); }
	50% {
		-webkit-transform: translateX(5px);
		        transform: translateX(5px); }
	100% {
		-webkit-transform: translateX(0);
		        transform: translateX(0); } }
@keyframes arrow-move-h {
	0% {
		-webkit-transform: translateX(0);
		        transform: translateX(0); }
	50% {
		-webkit-transform: translateX(5px);
		        transform: translateX(5px); }
	100% {
		-webkit-transform: translateX(0);
		        transform: translateX(0); } }

@-webkit-keyframes arrow-move-v {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0); }
	50% {
		-webkit-transform: translateY(3px);
		        transform: translateY(3px); }
	100% {
		-webkit-transform: translateY(0);
		        transform: translateY(0); } }

@keyframes arrow-move-v {
	0% {
		-webkit-transform: translateY(0);
		        transform: translateY(0); }
	50% {
		-webkit-transform: translateY(3px);
		        transform: translateY(3px); }
	100% {
		-webkit-transform: translateY(0);
		        transform: translateY(0); } }

/* external fonts
----------------------------------------*/
.dammy {
	content: ''; }

/* bottom footer
----------------------------------------*/
body,
html {
	height: 100%; }

body {
	background-color: #f1f1f1; }

@media screen and (min-width: 769px) {
	body.fixed {
		width: 100%;
		position: fixed;
		overflow-y: scroll; }
		body.fixed .header {
			top: 0; }
		body.fixed .menu-background {
			position: fixed; } }

.container {
	width: 100%;
	position: relative;
	min-height: 100%;
	height: 100%;
	min-width: 1024px; }
	@media screen and (max-width: 768px) {
		.container {
			min-width: initial; } }

.contents {
	position: relative;
	padding-top: 80px;
	overflow: hidden;
	min-height: calc(100% - 0px - 160px); }
	@media screen and (max-width: 768px) {
		.contents {
			padding-top: 45px; } }
	@media screen and (max-width: 768px) {
		.contents {
			height: auto;
			padding-bottom: 0;
			min-height: auto; } }

.footer {
	width: 100%;
	height: 160px; }

/* common
----------------------------------------*/
* {
	margin: 0;
	padding: 0; }

body {
	font-family: 'Noto Sans', sans-serif;
	color: #333; }

ul {
	list-style-type: none; }

a {
	color: #333;
	text-decoration: none;
	cursor: pointer; }
	a:hover {
		color: #1e51a2;
		text-decoration: none; }
	a:link {
		color: #333; }
	a:visited {
		color: #333; }

img {
	vertical-align: bottom; }

/* v-cloak
----------------------------------------*/
[v-cloak] {
	visibility: hidden; }

/* shadow
----------------------------------------*/
.shadow {
	-webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); }

/* header
----------------------------------------*/
.header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 80px;
	background-color: #FFF;
	border-bottom: 1px solid #dcdcdc;
	z-index: 100; }
	@media screen and (max-width: 768px) {
		.header {
			height: 45px; } }
	.header .header-inner {
		position: relative;
		width: 1024px;
		height: 100%;
		margin: 0 auto; }
		@media screen and (max-width: 768px) {
			.header .header-inner {
				width: 100%; } }
	.header .header-title {
		position: absolute;
		left: 20px;
		height: 100%;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		    -ms-flex-align: center;
		        align-items: center;
		vertical-align: middle;
		font-size: 12px;
		color: #333; }
		@media screen and (max-width: 768px) {
			.header .header-title {
				left: auto;
				font-size: 11px;
				left: 4%; } }
		.header .header-title .header-logo {
			display: inline-block;
			vertical-align: middle;
			margin-right: 12px;
			width: 150px;
			height: 42px;
			background: url("/saiyo/group/common/common/img/alsok_logo_pc.png") no-repeat;
			background-size: cover;
			font-size: 0; }
			@media screen and (max-width: 768px) {
				.header .header-title .header-logo {
					width: 81px;
					height: 12px;
					background: url("/saiyo/group/common/common/img/alsok_logo_sp.png") no-repeat;
					background-size: cover; }
					.header .header-title .header-logo img {
						width: 100%;
						vertical-align: middle; } }
		.header .header-title .header-sitename {
			display: inline-block;
			vertical-align: middle; }
		.header .header-title .header-employ-type {
			display: inline-block;
			vertical-align: middle; }
	.header .header-menu-pc {
		position: absolute;
		right: 0;
		height: 100%;
		overflow: hidden; }
		.header .header-menu-pc a {
			position: relative;
			display: table;
			float: left;
			font-size: 14px;
			padding: 0 14px;
			height: 100%;
			background-color: transparent;
			-webkit-transition: background-color 0.3s ease-out;
			transition: background-color 0.3s ease-out;
			-webkit-box-sizing: border-box;
			        box-sizing: border-box;
			border-bottom: 2px solid transparent; }
			.header .header-menu-pc a:hover {
				background-color: #EEE; }
			.header .header-menu-pc a.active div {
				border-bottom: 2px solid #1e51a2; }
			.header .header-menu-pc a div {
				display: table-cell;
				vertical-align: middle;
				text-align: center; }
				.header .header-menu-pc a div:before {
					content: '';
					display: inline-block;
					vertical-align: middle;
					width: 28px;
					height: 28px;
					margin-right: 10px; }
			.header .header-menu-pc a:after {
				content: '';
				position: absolute;
				right: 0;
				top: 0;
				bottom: 0;
				margin: auto;
				width: 2px;
				height: 26px;
				background-color: #dedede; }
			.header .header-menu-pc a.menu-region div:before {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
				background-size: 300% 200%;
				background-position: 50% 100%; }
				.header .header-menu-pc a.menu-region div:before:after {
					content: '';
					display: block;
					padding-top: 100%; }
			.header .header-menu-pc a.menu-job div:before {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
				background-size: 300% 200%;
				background-position: 50% 0%; }
				.header .header-menu-pc a.menu-job div:before:after {
					content: '';
					display: block;
					padding-top: 100%; }
			.header .header-menu-pc a.menu-company div:before {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
				background-size: 300% 200%;
				background-position: 0% 0%; }
				.header .header-menu-pc a.menu-company div:before:after {
					content: '';
					display: block;
					padding-top: 100%; }
			.header .header-menu-pc a.menu-search {
				text-align: center; }
				.header .header-menu-pc a.menu-search div:before {
					white-space: nowrap;
					text-indent: 100%;
					overflow: hidden;
					font-size: 0;
					background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
					background-size: 300% 200%;
					background-position: 100% 0%;
					margin: 0; }
					.header .header-menu-pc a.menu-search div:before:after {
						content: '';
						display: block;
						padding-top: 100%; }
				.header .header-menu-pc a.menu-search div span {
					display: block; }
			.header .header-menu-pc a.menu-notice {
				text-align: center; }
				.header .header-menu-pc a.menu-notice div:before {
					white-space: nowrap;
					text-indent: 100%;
					overflow: hidden;
					font-size: 0;
					background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
					background-size: 300% 200%;
					background-position: 0% 100%;
					margin: 0; }
					.header .header-menu-pc a.menu-notice div:before:after {
						content: '';
						display: block;
						padding-top: 100%; }
				.header .header-menu-pc a.menu-notice div span {
					display: block; }
				.header .header-menu-pc a.menu-notice:after {
					display: none; }
	@media screen and (max-width: 768px) {
		.header .header-menu-btn {
			position: absolute;
			display: block;
			top: 0;
			right: 0;
			width: 45px;
			height: 45px;
			background: url("/saiyo/group/common/common/img/header_menu_btn.png") no-repeat;
			background-size: cover;
			font-size: 0; } }

/* drop-menu
----------------------------------------*/
.drop-menu-container {
	top: 0;
	padding-top: 80px;
	position: fixed;
	z-index: 90;
	width: 100%; }
	@media screen and (max-width: 768px) {
		.drop-menu-container {
			padding-top: 45px;
			visibility: hidden;
			height: 0;
			opacity: 0;
			-webkit-transform: translateY(-100px);
			    -ms-transform: translateY(-100px);
			        transform: translateY(-100px);
			-webkit-transition: all 0.3s ease-out;
			transition: all 0.3s ease-out;
			overflow: hidden; }
			.drop-menu-container.is-visible {
				visibility: visible;
				height: auto;
				opacity: 1;
				-webkit-transform: translateY(0);
				    -ms-transform: translateY(0);
				        transform: translateY(0); }
			.drop-menu-container.old-android {
				position: absolute; } }

@media screen and (max-width: 768px) {
	.drop-menu-container-inner {
		overflow-y: scroll;
		position: relative;
		width: 100%;
		height: calc(100vh - 45px); }
		.old-android .drop-menu-container-inner {
			overflow-y: auto;
			height: auto; } }

.drop-menu {
	position: absolute;
	width: 100%;
	background-color: #FFF;
	padding: 40px 0; }
	@media screen and (max-width: 768px) {
		.drop-menu {
			position: relative;
			padding: 0;
			border-bottom: 1px solid #c3c3c3;
			overflow: hidden; } }
	.drop-menu.drop-menu-region .menu-thumbnails {
		width: 820px; }
		@media screen and (max-width: 768px) {
			.drop-menu.drop-menu-region .menu-thumbnails {
				width: 100%; } }
		@media screen and (max-width: 768px) {
			.drop-menu.drop-menu-region .menu-thumbnails:after {
				content: '';
				display: block;
				width: 43.33333%; } }
	.drop-menu.drop-menu-job .menu-thumbnails {
		width: 630px; }
		@media screen and (max-width: 768px) {
			.drop-menu.drop-menu-job .menu-thumbnails {
				width: 100%; } }
	@media screen and (min-width: 769px) {
		.drop-menu {
			visibility: hidden;
			opacity: 0;
			-webkit-transform: translateY(-100px);
			    -ms-transform: translateY(-100px);
			        transform: translateY(-100px);
			-webkit-transition: all 0.3s ease-out;
			transition: all 0.3s ease-out; }
			.drop-menu.is-visible {
				visibility: visible;
				opacity: 1;
				-webkit-transform: translateY(0);
				    -ms-transform: translateY(0);
				        transform: translateY(0); } }
	.drop-menu .menu-thumbnails {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-flex-wrap: wrap;
		    -ms-flex-wrap: wrap;
		        flex-wrap: wrap;
		margin: 0 auto; }
		@media screen and (max-width: 768px) {
			.drop-menu .menu-thumbnails {
				display: block;
				overflow: hidden; } }
		.drop-menu .menu-thumbnails li {
			margin-bottom: 25px;
			width: 190px; }
			@media screen and (max-width: 768px) {
				.drop-menu .menu-thumbnails li {
					width: 43.33333%;
					float: left;
					margin-left: 4.4%; } }
		.drop-menu .menu-thumbnails a {
			display: block;
			-webkit-transition: opacity 0.3s ease-out;
			transition: opacity 0.3s ease-out;
			width: 100%;
			height: 109px; }
			.drop-menu .menu-thumbnails a.hokkaido {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 503.20856%;
				background-position: 100% 100%; }
				.drop-menu .menu-thumbnails a.hokkaido:after {
					content: '';
					display: block;
					padding-top: 57.53846%; }
			.drop-menu .menu-thumbnails a.tohoku {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 503.20856%;
				background-position: 50% 100%; }
				.drop-menu .menu-thumbnails a.tohoku:after {
					content: '';
					display: block;
					padding-top: 57.53846%; }
			.drop-menu .menu-thumbnails a.hokuriku {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 503.20856%;
				background-position: 100% 50%; }
				.drop-menu .menu-thumbnails a.hokuriku:after {
					content: '';
					display: block;
					padding-top: 57.53846%; }
			.drop-menu .menu-thumbnails a.kanto {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 497.8836%;
				background-position: 50% 50.26596%; }
				.drop-menu .menu-thumbnails a.kanto:after {
					content: '';
					display: block;
					padding-top: 58.15385%; }
			.drop-menu .menu-thumbnails a.tokai {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 500.53191%;
				background-position: 100% 25.0996%; }
				.drop-menu .menu-thumbnails a.tokai:after {
					content: '';
					display: block;
					padding-top: 57.84615%; }
			.drop-menu .menu-thumbnails a.kansai {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 503.20856%;
				background-position: 0% 75.19894%; }
				.drop-menu .menu-thumbnails a.kansai:after {
					content: '';
					display: block;
					padding-top: 57.53846%; }
			.drop-menu .menu-thumbnails a.chugoku {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 503.20856%;
				background-position: 50% 75.19894%; }
				.drop-menu .menu-thumbnails a.chugoku:after {
					content: '';
					display: block;
					padding-top: 57.53846%; }
			.drop-menu .menu-thumbnails a.shikoku {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 503.20856%;
				background-position: 0% 100%; }
				.drop-menu .menu-thumbnails a.shikoku:after {
					content: '';
					display: block;
					padding-top: 57.53846%; }
			.drop-menu .menu-thumbnails a.kyushu {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 503.20856%;
				background-position: 100% 75.19894%; }
				.drop-menu .menu-thumbnails a.kyushu:after {
					content: '';
					display: block;
					padding-top: 57.53846%; }
			.drop-menu .menu-thumbnails a.guard {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 497.8836%;
				background-position: 0% 0%; }
				.drop-menu .menu-thumbnails a.guard:after {
					content: '';
					display: block;
					padding-top: 58.15385%; }
			.drop-menu .menu-thumbnails a.sales {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 497.8836%;
				background-position: 50% 25.13298%; }
				.drop-menu .menu-thumbnails a.sales:after {
					content: '';
					display: block;
					padding-top: 58.15385%; }
			.drop-menu .menu-thumbnails a.technical {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 497.8836%;
				background-position: 0% 50.26596%; }
				.drop-menu .menu-thumbnails a.technical:after {
					content: '';
					display: block;
					padding-top: 58.15385%; }
			.drop-menu .menu-thumbnails a.office {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 497.8836%;
				background-position: 50% 0%; }
				.drop-menu .menu-thumbnails a.office:after {
					content: '';
					display: block;
					padding-top: 58.15385%; }
			.drop-menu .menu-thumbnails a.nursing {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 497.8836%;
				background-position: 100% 0%; }
				.drop-menu .menu-thumbnails a.nursing:after {
					content: '';
					display: block;
					padding-top: 58.15385%; }
			.drop-menu .menu-thumbnails a.other {
				white-space: nowrap;
				text-indent: 100%;
				overflow: hidden;
				font-size: 0;
				background-image: url("/saiyo/group/common/common/img/menu_sprite.png");
				background-size: 300% 497.8836%;
				background-position: 0% 25.13298%; }
				.drop-menu .menu-thumbnails a.other:after {
					content: '';
					display: block;
					padding-top: 58.15385%; }
			@media screen and (max-width: 768px) {
				.drop-menu .menu-thumbnails a {
					height: 0;
					padding-bottom: 57.53846%; } }
			@media screen and (min-width: 769px) {
				.drop-menu .menu-thumbnails a:hover {
					opacity: 0.7; } }
			.drop-menu .menu-thumbnails a img {
				width: 100%; }
		.drop-menu .menu-thumbnails span {
			display: block;
			font-size: 14px;
			margin-top: 0.5em; }
			@media screen and (max-width: 768px) {
				.drop-menu .menu-thumbnails span {
					font-size: 12px; } }
	@media screen and (min-width: 769px) {
		.drop-menu .menu-initials {
			display: -webkit-box;
			display: -webkit-flex;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-pack: center;
			-webkit-justify-content: center;
			    -ms-flex-pack: center;
			        justify-content: center;
			-webkit-flex-wrap: wrap;
			    -ms-flex-wrap: wrap;
			        flex-wrap: wrap; } }
	@media screen and (max-width: 970px) and (min-width: 769px) {
		.drop-menu .menu-initials {
			width: 490px;
			margin: 0 auto 0; } }
	@media screen and (max-width: 768px) {
		.drop-menu .menu-initials {
			overflow: hidden;
			width: 92%;
			margin: 0 auto 4%; } }
	.drop-menu .menu-initials a {
		position: relative;
		display: block;
		font-size: 14px;
		width: 98px;
		height: 98px;
		line-height: 98px;
		text-align: center;
		border: 1px solid #c3c3c3;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		pointer-events: none;
		background-color: #FFF;
		color: #ccc; }
		.drop-menu .menu-initials a.active {
			pointer-events: all;
			color: #333; }
		@media screen and (min-width: 769px) {
			.drop-menu .menu-initials a {
				-webkit-transition: background-color 0.3s ease-out;
				transition: background-color 0.3s ease-out; }
				.drop-menu .menu-initials a:hover {
					background-color: #EEE; }
				.drop-menu .menu-initials a + a {
					margin-left: -1px; }
				.drop-menu .menu-initials a:first-child {
					border-radius: 5px 0 0 5px; }
				.drop-menu .menu-initials a:last-child {
					border-radius: 0 5px 5px 0; } }
		@media screen and (max-width: 970px) and (min-width: 769px) {
			.drop-menu .menu-initials a:nth-child(1) {
				border-radius: 5px 0 0 0; }
			.drop-menu .menu-initials a:nth-child(5) {
				border-radius: 0 5px 0 0; }
			.drop-menu .menu-initials a:nth-child(6) {
				border-radius: 0 0 0 5px;
				margin-left: 0; }
			.drop-menu .menu-initials a:nth-child(10) {
				border-radius: 0 0 5px 0; }
			.drop-menu .menu-initials a:nth-child(n+6) {
				margin-top: -1px; } }
		@media screen and (max-width: 768px) {
			.drop-menu .menu-initials a {
				width: 25%;
				height: 0;
				padding-bottom: 25%;
				float: left;
				font-size: 12px;
				margin-left: -1px; }
				.drop-menu .menu-initials a span {
					position: absolute;
					display: block;
					top: 50%;
					-webkit-transform: translateY(-50%);
					    -ms-transform: translateY(-50%);
					        transform: translateY(-50%);
					width: 100%;
					text-align: center; }
				.drop-menu .menu-initials a:nth-child(4n+1) {
					margin-left: 0; }
				.drop-menu .menu-initials a:nth-child(n+5) {
					margin-top: -1px; } }

.menu-header {
	position: relative;
	display: block;
	text-align: center;
	padding: 6.66667% 0; }
	.menu-header:before {
		content: '';
		display: inline-block;
		vertical-align: middle;
		width: 7.46667%;
		padding-bottom: 7.46667%;
		margin-right: 4%; }
	.menu-header:after {
		content: '';
		position: absolute;
		right: 4%;
		top: 50%;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
		display: inline-block;
		vertical-align: middle;
		width: 6.66667%;
		padding-bottom: 6.66667%;
		background: url("/saiyo/group/common/common/img/icon_circle_arrow_right.png") no-repeat;
		background-size: 100%; }
	.menu-header span {
		font-size: 12px;
		display: inline-block;
		vertical-align: middle; }
	.menu-header.is-open:after {
		background: url("/saiyo/group/common/common/img/icon_circle_close.png") no-repeat;
		background-size: 100%; }
	.menu-header.menu-header-region:before {
		white-space: nowrap;
		text-indent: 100%;
		overflow: hidden;
		font-size: 0;
		background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
		background-size: 300% 200%;
		background-position: 50% 100%; }
		.menu-header.menu-header-region:before:after {
			content: '';
			display: block;
			padding-top: 100%; }
	.menu-header.menu-header-job:before {
		white-space: nowrap;
		text-indent: 100%;
		overflow: hidden;
		font-size: 0;
		background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
		background-size: 300% 200%;
		background-position: 50% 0%; }
		.menu-header.menu-header-job:before:after {
			content: '';
			display: block;
			padding-top: 100%; }
	.menu-header.menu-header-company:before {
		white-space: nowrap;
		text-indent: 100%;
		overflow: hidden;
		font-size: 0;
		background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
		background-size: 300% 200%;
		background-position: 0% 0%; }
		.menu-header.menu-header-company:before:after {
			content: '';
			display: block;
			padding-top: 100%; }
	.menu-header.menu-header-search:before {
		white-space: nowrap;
		text-indent: 100%;
		overflow: hidden;
		font-size: 0;
		background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
		background-size: 300% 200%;
		background-position: 100% 0%; }
		.menu-header.menu-header-search:before:after {
			content: '';
			display: block;
			padding-top: 100%; }
	.menu-header.menu-header-notice:before {
		white-space: nowrap;
		text-indent: 100%;
		overflow: hidden;
		font-size: 0;
		background-image: url("/saiyo/group/common/common/img/menu_icon_sprite.png");
		background-size: 300% 200%;
		background-position: 0% 100%; }
		.menu-header.menu-header-notice:before:after {
			content: '';
			display: block;
			padding-top: 100%; }

@media screen and (max-width: 768px) {
	.menu-content {
		display: none; } }

/* menu-background
----------------------------------------*/
.menu-background {
	position: absolute;
	top: 0;
	width: 100%;
	height: 0;
	opacity: 0;
	visibility: hidden;
	background-color: rgba(0, 0, 0, 0.3);
	-webkit-transition: opacity 0.3s ease-out;
	transition: opacity 0.3s ease-out;
	z-index: 80; }
	.menu-background.is-visible {
		visibility: visible;
		height: 100%;
		opacity: 1;
		-webkit-transform: translateY(0);
		    -ms-transform: translateY(0);
		        transform: translateY(0); }
	@media screen and (max-width: 768px) {
		.menu-background {
			display: none; } }

@media screen and (max-width: 768px) {
	.sp-menu-background {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 0;
		opacity: 0;
		visibility: hidden;
		background-color: rgba(0, 0, 0, 0.8);
		-webkit-transition: opacity 0.3s ease-out;
		transition: opacity 0.3s ease-out;
		z-index: 80; }
		.sp-menu-background.is-visible {
			visibility: visible;
			height: 100%;
			opacity: 1;
			-webkit-transform: translateY(0);
			    -ms-transform: translateY(0);
			        transform: translateY(0); } }

/* footer
----------------------------------------*/
/* main
----------------------------------------*/
.main {
	position: relative;
	width: 1024px;
	margin: 0 auto 100px; }
	@media screen and (max-width: 768px) {
		.main {
			position: relative;
			display: block;
			width: 92%;
			margin: 0 auto 13.33333%; } }

/* topicpath
----------------------------------------*/
.topicpath {
	position: relative;
	width: 1024px;
	height: 30px;
	line-height: 30px;
	margin: 0 auto;
	z-index: 70; }
	.topicpath ul {
		overflow: hidden;
		margin-left: 20px; }
	.topicpath li {
		display: inline-block; }
		.topicpath li:after {
			content: '>';
			margin: 0 10px; }
		.topicpath li:last-child {
			margin-right: 30px; }
			.topicpath li:last-child:after {
				display: none; }
	.topicpath a:hover {
		text-decoration: underline; }
	@media screen and (max-width: 768px) {
		.topicpath {
			display: none; } }

.topicpath-white {
	color: #FFF; }
	.topicpath-white a {
		color: inherit; }

/* pulldown menu
----------------------------------------*/
.pulldown-menu {
	font-size: 14px;
	color: #333;
	text-align: center; }
	@media screen and (max-width: 768px) {
		.pulldown-menu {
			font-size: 12px; } }
	.pulldown-menu .toggle-btn {
		display: inline-block;
		background-color: #FFF;
		width: 100%;
		height: 40px;
		line-height: 40px;
		border-radius: 20px;
		margin-bottom: 7px; }
		@media screen and (max-width: 768px) {
			.pulldown-menu .toggle-btn {
				height: 35px;
				line-height: 35px;
				border-radius: 17.5px; } }
		.pulldown-menu .toggle-btn:after {
			content: '';
			display: inline-block;
			vertical-align: middle;
			width: 18px;
			height: 18px;
			background: url("/saiyo/group/common/common/img/icon_circle_arrow_bottom.png") no-repeat;
			background-size: cover;
			margin-left: 8px; }
			@media screen and (max-width: 768px) {
				.pulldown-menu .toggle-btn:after {
					width: 15px;
					height: 15px; } }
	.pulldown-menu ul {
		position: absolute;
		display: none;
		width: 100%;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		border: 1px solid #bbbbbb;
		border-radius: 5px; }
		.pulldown-menu ul li {
			display: block;
			background-color: #FFF;
			height: 32px;
			line-height: 32px;
			-webkit-box-sizing: border-box;
			        box-sizing: border-box;
			border-bottom: 1px solid #bbbbbb; }
			.pulldown-menu ul li:last-child {
				border-bottom: none; }
			.pulldown-menu ul li a {
				display: block;
				color: #CCC;
				pointer-events: none;
				cursor: default; }
				@media screen and (min-width: 769px) {
					.pulldown-menu ul li a:hover {
						text-decoration: underline; } }
				.pulldown-menu ul li a.active {
					color: inherit;
					pointer-events: all;
					cursor: pointer; }

/*
----------------------------------------*/
.fixed-wrapper {
	position: fixed;
	width: 100%;
	pointer-events: none; }
	.fixed-wrapper.is-absolute {
		position: absolute;
		bottom: 0; }

.fixed-wrapper-inner {
	position: relative;
	width: 1200px;
	margin: 0 auto;
	height: 100vh; }
	@media screen and (max-width: 1199px) {
		.fixed-wrapper-inner {
			display: none; } }

/* anchor-navi
----------------------------------------*/
.anchor-navi {
	pointer-events: all;
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%); }
	.anchor-navi a.anchor-btn {
		position: relative;
		display: block;
		text-decoration: none;
		margin-bottom: 30px;
		padding-right: 24px;
		opacity: 0.5;
		pointer-events: none;
		font-size: 12px;
		color: #FFF;
		height: 16px;
		line-height: 16px;
		text-align: right; }
		.anchor-navi a.anchor-btn:hover {
			text-decoration: underline; }
		.anchor-navi a.anchor-btn span {
			position: absolute;
			display: inline-block;
			right: 0;
			width: 16px;
			height: 16px;
			border-radius: 50%;
			-webkit-box-sizing: border-box;
			        box-sizing: border-box;
			border: 1px solid #FFF; }
			.anchor-navi a.anchor-btn span:after {
				content: '';
				position: absolute;
				left: 50%;
				top: 50%;
				-webkit-transform: translateX(-50%) translateY(-50%);
				    -ms-transform: translateX(-50%) translateY(-50%);
				        transform: translateX(-50%) translateY(-50%);
				width: 4px;
				height: 4px;
				border-radius: 50%;
				-webkit-box-sizing: border-box;
				        box-sizing: border-box;
				background-color: #FFF;
				display: none; }
		.anchor-navi a.anchor-btn.active {
			opacity: 1;
			pointer-events: all;
			cursor: pointer; }
		.anchor-navi a.anchor-btn.selected span:after {
			display: block; }

/* rounded-btn
----------------------------------------*/
a.rounded-btn {
	position: relative;
	display: block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	border-radius: 20px;
	color: #333;
	background-color: #FFF;
	text-align: center; }
	@media screen and (max-width: 768px) {
		a.rounded-btn {
			height: 36px;
			line-height: 36px;
			border-radius: 18px;
			font-size: 12px; } }
	a.rounded-btn:after {
		content: '';
		position: relative;
		display: inline-block;
		vertical-align: middle;
		width: 5px;
		height: 8px;
		background: url("/saiyo/group/common/common/img/icon_arrow_right.png") center center no-repeat;
		background-size: cover;
		margin-left: 10px; }
	@media screen and (min-width: 769px) {
		a.rounded-btn {
			-webkit-transition: opacity 0.3s ease-out;
			transition: opacity 0.3s ease-out; }
			a.rounded-btn:hover {
				opacity: 0.8; }
				a.rounded-btn:hover:not(.ext-link):after {
					-webkit-animation: arrow-move-h 0.6s ease-out 0s 1 normal;
					        animation: arrow-move-h 0.6s ease-out 0s 1 normal; } }
	a.rounded-btn.down:after {
		width: 10px;
		height: 6px;
		background: url("/saiyo/group/common/common/img/icon_arrow_down_w.png") center center no-repeat;
		background-size: cover; }
	a.rounded-btn.down:hover:after {
		-webkit-animation: arrow-move-v 0.6s ease-out 0s 1 normal;
		        animation: arrow-move-v 0.6s ease-out 0s 1 normal; }
	a.rounded-btn.border {
		border: 1px solid #bbb; }

a.rounded-btn.ext-link:after {
	width: auto;
	height: auto;
	background: none;
	font-family: FontAwesome;
	vertical-align: middle;
	content: '\f08e'; }

a.rounded-btn-blue {
	color: #FFF;
	background-color: #3462ab; }
	a.rounded-btn-blue:after {
		background: url("/saiyo/group/common/common/img/icon_arrow_right_w.png") center center no-repeat;
		background-size: cover; }
	a.rounded-btn-blue.border {
		border: 1px solid #FFF; }

.news-item a[target="_blank"] .text:after {
	margin-left: 0.25em;
	font-family: FontAwesome;
	vertical-align: middle;
	content: '\f08e'; }

@media screen and (min-width: 769px) {
	.news-item {
		-webkit-transition: background-color 0.3s ease-out;
		transition: background-color 0.3s ease-out; }
		.news-item:hover {
			background-color: #EEE; } }

/* company-list-item
----------------------------------------*/
.company-list-item a {
	background-color: #FFF; }
	@media screen and (min-width: 769px) {
		.company-list-item a {
			-webkit-transition: background-color 0.3s ease-out;
			transition: background-color 0.3s ease-out; }
			.company-list-item a:hover {
				background-color: #EEE; }
				.company-list-item a:hover:after {
					-webkit-animation: arrow-move-h 0.6s ease-out 0s 1 normal;
					        animation: arrow-move-h 0.6s ease-out 0s 1 normal; } }

/* modal
----------------------------------------*/
.modal-overlay {
	position: fixed;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 110;
	display: none; }
	.modal-overlay.is-visible {
		display: block; }

.modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 120;
	display: none; }
	.modal.is-visible {
		display: table; }
	.modal .modal-content {
		display: table-cell;
		vertical-align: middle;
		text-align: center; }
	.modal .modal-detail {
		position: relative;
		width: 590px;
		padding: 150px 0;
		background-color: #e4e4e4;
		margin: 0 auto; }
		@media screen and (max-width: 768px) {
			.modal .modal-detail {
				width: 92%;
				padding: 21.73913% 0; } }
		.modal .modal-detail p {
			font-size: 24px;
			margin-bottom: 30px;
			line-height: 1.5em; }
			@media screen and (max-width: 768px) {
				.modal .modal-detail p {
					font-size: 12px; } }
		.modal .modal-detail ul {
			text-align: center; }
			.modal .modal-detail ul li {
				display: inline-block;
				width: 220px; }
				@media screen and (max-width: 768px) {
					.modal .modal-detail ul li {
						width: 140px; } }
				.modal .modal-detail ul li + li {
					margin-left: 20px; }
					@media screen and (max-width: 768px) {
						.modal .modal-detail ul li + li {
							margin-left: 10px; } }
				.modal .modal-detail ul li a {
					font-size: 15px;
					height: 60px;
					line-height: 60px;
					border-radius: 30px; }
					@media screen and (max-width: 768px) {
						.modal .modal-detail ul li a {
							font-size: 12px;
							height: 30px;
							line-height: 30px;
							border-radius: 15px; } }

/* page-top-btn
----------------------------------------*/
.page-top-btn {
	position: fixed;
	width: 100%;
	bottom: 0;
	pointer-events: none;
	display: none; }
	.page-top-btn.is-visible {
		display: block; }
	.page-top-btn.is-absolute {
		position: absolute; }
	.page-top-btn > div {
		position: relative;
		width: 1024px;
		margin: 0 auto;
		overflow: hidden; }
		@media screen and (max-width: 768px) {
			.page-top-btn > div {
				width: 92%; } }
	.page-top-btn a {
		pointer-events: all;
		display: block;
		width: 33px;
		height: 33px;
		background: url("/saiyo/group/common/common/img/page_top_btn.png") no-repeat;
		background-size: cover;
		cursor: pointer;
		float: right;
		margin-bottom: 33px; }

/* loading
----------------------------------------*/
.loading {
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #FFF;
	z-index: 200;
	-webkit-transition: opacity 1.0s ease-out;
	transition: opacity 1.0s ease-out; }
	.loading .loading-icon {
		width: 150px;
		height: 42px;
		background: url("/saiyo/group/common/common/img/alsok_logo_pc.png") no-repeat;
		background-size: cover;
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		-webkit-animation: blink 1.5s infinite linear;
		        animation: blink 1.5s infinite linear; }
	.loading.end {
		opacity: 0; }
		.loading.end .loading-icon {
			display: none; }

@-webkit-keyframes blink {
	0% {
		opacity: 0.2; }
	50% {
		opacity: 1; }
	100% {
		opacity: 0.2; } }

@keyframes blink {
	0% {
		opacity: 0.2; }
	50% {
		opacity: 1; }
	100% {
		opacity: 0.2; } }

.container {
	min-height: 768px; }
	@media screen and (max-width: 768px) {
		.container {
			height: auto;
			min-height: 0; } }

.contents {
	height: calc(100% - 52px); }
	@media screen and (max-width: 768px) {
		.contents {
			height: auto; } }

/* main
----------------------------------------*/
.textshadow, .title-area .main-title, .title-area p {
	text-shadow: 0 0 10px #000; }

.contents {
	overflow: hidden; }

.main {
	position: relative;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	width: 1024px;
	height: 100%;
	margin: 0 auto; }
	@media screen and (max-width: 768px) {
		.main {
			display: block;
			width: 100%;
			height: auto; } }

/* title-area
----------------------------------------*/
.title-area {
	position: relative;
	float: right;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 50%;
	height: 100%;
	color: #FFF; }
	@media screen and (max-width: 768px) {
		.title-area {
			width: 100%;
			float: none;
			display: block;
			padding: 5.33333% 0; } }
	.title-area .title-area-inner {
		width: 418px;
		margin: 0 auto; }
		@media screen and (max-width: 768px) {
			.title-area .title-area-inner {
				width: 100%;
				padding: 0 4%; } }
	.title-area .main-title {
		border-top: 1px solid #FFF;
		border-bottom: 1px solid #FFF;
		padding: 30px 0;
		margin-bottom: 45px;
		text-align: center; }
		@media screen and (max-width: 768px) {
			.title-area .main-title {
				padding: 6.4% 0;
				margin-bottom: 7.46667%; } }
		.title-area .main-title .main-title-main {
			display: block;
			font-size: 33px;
			padding-left: 0.5em;
			margin-bottom: 20px; }
			@media screen and (max-width: 768px) {
				.title-area .main-title .main-title-main {
					font-size: 24px;
					margin-bottom: 0.5em; } }
		.title-area .main-title .main-title-sub {
			display: block;
			font-size: 15px; }
			@media screen and (max-width: 768px) {
				.title-area .main-title .main-title-sub {
					font-size: 11px; } }
	.title-area p {
		font-size: 14px; }
		@media screen and (max-width: 768px) {
			.title-area p {
				font-size: 12px; } }
		.title-area p.text-1 {
			line-height: 2em;
			margin-bottom: 50px; }
			@media screen and (max-width: 768px) {
				.title-area p.text-1 {
					margin-bottom: 2em; } }
		.title-area p.text-2 {
			text-align: center;
			margin-bottom: 20px;
			line-height: 1.5em; }
			@media screen and (max-width: 768px) {
				.title-area p.text-2 {
					margin-bottom: 2em; } }
	.title-area .start-btn-area {
		text-align: center;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		    -ms-flex-pack: justify;
		        justify-content: space-between; }
		.title-area .start-btn-area a {
			display: block;
			font-size: 15px;
			background-color: #FFF;
			width: 199px;
			height: 60px;
			line-height: 60px;
			-webkit-box-sizing: border-box;
			        box-sizing: border-box;
			border-radius: 30px;
			text-decoration: none; }
			@media screen and (max-width: 768px) {
				.title-area .start-btn-area a {
					font-size: 12px;
					width: 46.66667%;
					height: 50px;
					border-radius: 25px;
					line-height: 50px; } }
			.title-area .start-btn-area a span {
				position: relative; }
			.title-area .start-btn-area a:after {
				width: 7px;
				height: 13px; }
				@media screen and (max-width: 768px) {
					.title-area .start-btn-area a:after {
						width: 6px;
						height: 11px; } }

/* .region-container
----------------------------------------*/
.region-container {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%; }

@-webkit-keyframes bg-fadein {
	0% {
		opacity: 0; }
	25% {
		opacity: 1; }
	100% {
		opacity: 1; } }

@keyframes bg-fadein {
	0% {
		opacity: 0; }
	25% {
		opacity: 1; }
	100% {
		opacity: 1; } }

@-webkit-keyframes bg-zoom-fadein {
	0% {
		opacity: 0;
		-webkit-transform: scale(1);
		        transform: scale(1); }
	25% {
		opacity: 1; }
	100% {
		-webkit-transform: scale(1.1);
		        transform: scale(1.1); } }

@keyframes bg-zoom-fadein {
	0% {
		opacity: 0;
		-webkit-transform: scale(1);
		        transform: scale(1); }
	25% {
		opacity: 1; }
	100% {
		-webkit-transform: scale(1.1);
		        transform: scale(1.1); } }

@-webkit-keyframes map-fadeInOut {
	0% {
		opacity: 0; }
	35% {
		opacity: 1; }
	75% {
		opacity: 1; }
	98% {
		opacity: 0; } }

@keyframes map-fadeInOut {
	0% {
		opacity: 0; }
	35% {
		opacity: 1; }
	75% {
		opacity: 1; }
	98% {
		opacity: 0; } }

/* bg-img-area
----------------------------------------*/
.bg-img-area {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #000; }
	.bg-img-area .bg-img {
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
		opacity: 0; }
		.bg-img-area .bg-img.current {
			-webkit-animation: bg-zoom-fadein 15s linear 0s 1 normal forwards;
			        animation: bg-zoom-fadein 15s linear 0s 1 normal forwards; }
		.bg-img-area .bg-img.hokkaido {
			background: url("/saiyo/group/top/img/bg_hokkaido_pc.jpg") center top no-repeat;
			background-size: cover; }
			@media screen and (max-width: 768px) {
				.bg-img-area .bg-img.hokkaido {
					background: url("/saiyo/group/top/img/bg_hokkaido_sp.jpg") center top no-repeat;
					background-size: 100%; } }
		.bg-img-area .bg-img.tohoku.next {
			background: url("/saiyo/group/top/img/bg_tohoku_pc.jpg") center top no-repeat;
			background-size: cover; }
			@media screen and (max-width: 768px) {
				.bg-img-area .bg-img.tohoku.next {
					background: url("/saiyo/group/top/img/bg_tohoku_sp.jpg") center top no-repeat;
					background-size: 100%; } }
		.bg-img-area .bg-img.hokuriku.next {
			background: url("/saiyo/group/top/img/bg_hokuriku_pc.jpg") center top no-repeat;
			background-size: cover; }
			@media screen and (max-width: 768px) {
				.bg-img-area .bg-img.hokuriku.next {
					background: url("/saiyo/group/top/img/bg_hokuriku_sp.jpg") center top no-repeat;
					background-size: 100%; } }
		.bg-img-area .bg-img.kanto.next {
			background: url("/saiyo/group/top/img/bg_kanto_pc.jpg") center top no-repeat;
			background-size: cover; }
			@media screen and (max-width: 768px) {
				.bg-img-area .bg-img.kanto.next {
					background: url("/saiyo/group/top/img/bg_kanto_sp.jpg") center top no-repeat;
					background-size: 100%; } }
		.bg-img-area .bg-img.tokai.next {
			background: url("/saiyo/group/top/img/bg_tokai_pc.jpg") center top no-repeat;
			background-size: cover; }
			@media screen and (max-width: 768px) {
				.bg-img-area .bg-img.tokai.next {
					background: url("/saiyo/group/top/img/bg_tokai_sp.jpg") center top no-repeat;
					background-size: 100%; } }
		.bg-img-area .bg-img.kansai.next {
			background: url("/saiyo/group/top/img/bg_kansai_pc.jpg") center top no-repeat;
			background-size: cover; }
			@media screen and (max-width: 768px) {
				.bg-img-area .bg-img.kansai.next {
					background: url("/saiyo/group/top/img/bg_kansai_sp.jpg") center top no-repeat;
					background-size: 100%; } }
		.bg-img-area .bg-img.chugoku.next {
			background: url("/saiyo/group/top/img/bg_chugoku_pc.jpg") center top no-repeat;
			background-size: cover; }
			@media screen and (max-width: 768px) {
				.bg-img-area .bg-img.chugoku.next {
					background: url("/saiyo/group/top/img/bg_chugoku_sp.jpg") center top no-repeat;
					background-size: 100%; } }
		.bg-img-area .bg-img.shikoku.next {
			background: url("/saiyo/group/top/img/bg_shikoku_pc.jpg") center top no-repeat;
			background-size: cover; }
			@media screen and (max-width: 768px) {
				.bg-img-area .bg-img.shikoku.next {
					background: url("/saiyo/group/top/img/bg_shikoku_sp.jpg") center top no-repeat;
					background-size: 100%; } }
		.bg-img-area .bg-img.kyushu.next {
			background: url("/saiyo/group/top/img/bg_kyushu_pc.jpg") center top no-repeat;
			background-size: cover; }
			@media screen and (max-width: 768px) {
				.bg-img-area .bg-img.kyushu.next {
					background: url("/saiyo/group/top/img/bg_kyushu_sp.jpg") center top no-repeat;
					background-size: 100%; } }
	.bg-img-area.is-ie .bg-img.current {
		-webkit-animation: bg-fadein 15s linear 0s 1 normal forwards;
		        animation: bg-fadein 15s linear 0s 1 normal forwards; }

/* japan-map-area
----------------------------------------*/
.japan-map-area {
	position: absolute;
	height: 100%;
	width: 1024px;
	margin: auto;
	top: 0;
	left: 0;
	right: 0; }
	@media screen and (max-width: 768px) {
		.japan-map-area {
			display: none; } }

.japan-map-wrapper {
	position: absolute;
	top: 50%;
	right: 50%; }
	@media screen and (max-width: 768px) {
		.japan-map-wrapper {
			right: 20%;
			-webkit-transform: scale(0.5);
			    -ms-transform: scale(0.5);
			        transform: scale(0.5); } }

.japan-map {
	position: absolute;
	width: 2928px;
	height: 4396px;
	background: url("/saiyo/group/common/common/img/map_japan.svg") no-repeat;
	background-size: 100%;
	opacity: 0; }
	.japan-map.hokkaido {
		width: 1276px;
		height: 1916px;
		top: -245px;
		right: 0; }
	.japan-map.tohoku {
		width: 1499px;
		height: 2251px;
		top: -811px;
		right: -136px; }
	.japan-map.hokuriku {
		width: 1898px;
		height: 2849px;
		top: -1538px;
		right: -608px; }
	.japan-map.kanto {
		width: 2641px;
		height: 3962px;
		top: -2260px;
		right: -544px; }
	.japan-map.tokai {
		width: 2356px;
		height: 3535px;
		top: -2323px;
		right: -737px; }
	.japan-map.kansai {
		width: 2456px;
		height: 3686px;
		top: -2555px;
		right: -1241px; }
	.japan-map.chugoku {
		width: 2164px;
		height: 3251px;
		top: -2274px;
		right: -1393px; }
	.japan-map.shikoku {
		width: 2814px;
		height: 4223px;
		top: -3257px;
		right: -1688px; }
	.japan-map.kyushu {
		width: 2126px;
		height: 3193px;
		top: -2736px;
		right: -1639px; }
	.japan-map.current {
		-webkit-animation: map-fadeInOut 10s linear 0s 1 normal forwards;
		        animation: map-fadeInOut 10s linear 0s 1 normal forwards; }

/* map-area
----------------------------------------*/
.region-map-area {
	position: relative;
	height: 100%;
	width: 1024px;
	margin: 0 auto; }
	@media screen and (max-width: 768px) {
		.region-map-area {
			display: none; } }
	.region-map-area .region-map-wrapper {
		position: absolute;
		right: 50%;
		top: 50%;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%); }
		@media screen and (max-width: 768px) {
			.region-map-area .region-map-wrapper {
				right: 20%;
				-webkit-transform: scale(0.5);
				    -ms-transform: scale(0.5);
				        transform: scale(0.5); } }
	.region-map-area .region-map {
		position: absolute;
		top: 50%;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
		right: 0;
		opacity: 0; }
		.region-map-area .region-map.current {
			-webkit-animation: map-fadeInOut 10s linear 0s 1 normal forwards;
			        animation: map-fadeInOut 10s linear 0s 1 normal forwards; }
		.region-map-area .region-map.hokkaido {
			width: 521px;
			height: 492px;
			background: url("/saiyo/group/common/common/img/map_hokkaido.png") no-repeat; }
		.region-map-area .region-map.next.tohoku {
			top: 50px;
			margin-right: 150px;
			width: 266px;
			height: 641px;
			background: url("/saiyo/group/common/common/img/map_tohoku.png?v=2") no-repeat; }
		.region-map-area .region-map.next.hokuriku {
			width: 500px;
			height: 639px;
			background: url("/saiyo/group/common/common/img/map_hokuriku.png") no-repeat; }
		.region-map-area .region-map.next.kanto {
			width: 496px;
			height: 522px;
			background: url("/saiyo/group/common/common/img/map_kanto.png") no-repeat; }
		.region-map-area .region-map.next.tokai {
			width: 513px;
			height: 607px;
			background: url("/saiyo/group/common/common/img/map_tokai.png") no-repeat; }
		.region-map-area .region-map.next.kansai {
			width: 382px;
			height: 493px;
			background: url("/saiyo/group/common/common/img/map_kansai.png") no-repeat; }
		.region-map-area .region-map.next.chugoku {
			width: 515px;
			height: 534px;
			background: url("/saiyo/group/common/common/img/map_chugoku.png") no-repeat; }
		.region-map-area .region-map.next.shikoku {
			width: 519px;
			height: 513px;
			background: url("/saiyo/group/common/common/img/map_shikoku.png") no-repeat; }
		.region-map-area .region-map.next.kyushu {
			width: 488px;
			height: 681px;
			background: url("/saiyo/group/common/common/img/map_kyushu.png") no-repeat; }
		.region-map-area .region-map .pin {
			position: absolute;
			display: block;
			opacity: 0.4; }
			.region-map-area .region-map .pin:before {
				content: '';
				position: absolute;
				display: block;
				width: 31px;
				height: 39px;
				top: -41px;
				left: -15px;
				background: url("/saiyo/group/common/common/img/pin.png") no-repeat; }
		.region-map-area .region-map .tokyo-pin {
			left: 312px;
			top: 320px; }
			.region-map-area .region-map .tokyo-pin .balloon {
				position: absolute;
				left: 22px;
				top: -35px;
				color: #FFF;
				font-size: 13px;
				width: 25px;
				height: 25px;
				line-height: 25px;
				text-align: center;
				background-color: #7a7a7a;
				border-radius: 3px; }
				.region-map-area .region-map .tokyo-pin .balloon:after {
					content: '';
					position: absolute;
					display: block;
					top: 50%;
					-webkit-transform: translateY(-50%);
					    -ms-transform: translateY(-50%);
					        transform: translateY(-50%);
					left: -4px;
					border-style: solid;
					border-width: 4px 4px 4px 0;
					border-color: transparent #7a7a7a transparent transparent; }

/* .news-area
----------------------------------------*/
.news-area {
	position: relative;
	width: 100%;
	background-color: #f1f1f1;
	color: #333;
	font-size: 13px; }
	@media screen and (max-width: 768px) {
		.news-area {
			font-size: 12px; } }
	.news-area .news-container {
		display: table;
		width: 100%;
		max-width: 1024px;
		padding: 10px 0 30px;
		margin: 0 auto;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box; }
		@media screen and (max-width: 768px) {
			.news-area .news-container {
				display: block;
				max-width: none;
				padding: 4%; } }
	.news-area .news-head {
		position: relative;
		display: table-cell;
		width: 124px;
		padding: 0 20px;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box; }
		@media screen and (max-width: 768px) {
			.news-area .news-head {
				display: block;
				width: 100%;
				padding: 0; } }
		.news-area .news-head:after {
			content: '';
			position: absolute;
			right: 20px;
			top: 14px;
			width: 1px;
			height: 15px;
			background-color: #919191; }
			@media screen and (max-width: 768px) {
				.news-area .news-head:after {
					display: none; } }
	.news-area .news-list {
		display: table-cell;
		width: calc(100% - 124px); }
	.news-area .news-item {
		position: relative;
		top: 0;
		width: 100%; }
		.news-area .news-item a {
			position: relative;
			display: table;
			color: inherit;
			border-bottom: 1px solid #d8d8d8;
			line-height: 1.5em;
			padding: 1em 0; }
			@media screen and (max-width: 768px) {
				.news-area .news-item a {
					display: block;
					height: auto;
					line-height: normal;
					padding: 1em 0; } }
			.news-area .news-item a .date {
				display: table-cell;
				width: 90px; }
				@media screen and (max-width: 768px) {
					.news-area .news-item a .date {
						display: block;
						width: 100%;
						margin-bottom: 0.5em; } }
			.news-area .news-item a .text {
				display: table-cell; }
				@media screen and (max-width: 768px) {
					.news-area .news-item a .text {
						display: block; } }

.ticker-enter-active,
.ticker-leave-active {
	-webkit-transition: all 1s ease-out;
	transition: all 1s ease-out; }

.ticker-enter,
.ticker-leave-to {
	opacity: 0; }

.ticker-enter {
	-webkit-transform: translateX(100%);
	    -ms-transform: translateX(100%);
	        transform: translateX(100%); }

.ticker-leave-to {
	-webkit-transform: translateX(-100%);
	    -ms-transform: translateX(-100%);
	        transform: translateX(-100%); }
