/* ==========================================================================
/* -- 画面の横幅が812pxまで
 ========================================================================== */
@media only screen and (max-width: 812px) {
	/*-------------------------------------------------------------------------------------*/
	header {
		padding: 0px 0px 0px 0px;
		margin: 0px 0px 0px 0px;
		width: 100%;
	}
	/*-------------------------------------------------------------------------------------*/
	#mainvis {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		position: relative;
		width: 100%;
		height: auto;
		min-height: 100%;
		display: block;
		overflow: hidden;
		border-right: 10px solid #1C5EA0;
		border-left: 10px solid #1C5EA0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	/*-------------------------------------------------------------------------------------*/
	.top_logo {
		padding: 0px 0px 0px 0px;
		margin: -0.0vh auto 0px;
		width: 90%;
		position: absolute;
		top: 40%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-moz-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.top_logo img {
		width: 100%;
	}
	.top_scroll {
		padding: 0px 0px 0px 0px;
		margin: -0.0vh auto 0px;
		width: 20%;
		position: absolute;
		bottom: 1.0vw;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-moz-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.top_scroll:hover #scroll02 {
		fill: #1c5ea0;
	}
	.top_scroll:hover #scroll03 {
		stroke: #ffe51a;
	}
	.top_scroll:hover #scroll04 {
		fill: #ffe51a;
	}
	.top_scroll img {
		width: 100%;
	}
	/*-------------------------------------------------------------------------------------*/
	#top_mesg {
		padding: 70.0px 0px 0.0vw 0px;
		margin: -60.0px 0px 0.0vw 0px;
		width: 100%;
		border-right: 10px solid #1C5EA0;
		border-left: 10px solid #1C5EA0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.top_mesg {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
	}
	.top_mesg img {
		width: 100%;
	}
	.top_mesg_title {
		padding: 5.0vw 0px 5.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		text-align: center;
	}
	.top_mesg_title img {
		width: 100%;
	}
	.top_mesg_title .icons {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 12%;
	}
	.top_mesg_title .title {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 2.0vw auto 2.0vw;
		width: 35%;
	}
	.top_mesg_title p {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		font-size: 4.0vw;
	}
	/*---------------------------------------------*/
	.top_mesg_reads {
		padding: 5.0vw 0px 5.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		text-align: center;
		width: 100%;
		height: inherit;
		position: inherit;
	}
	.top_mesg_reads p.top_mesg_read01 {
		padding: 0.0vw 0px 5.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 80%;
	}
	.top_mesg_reads p.top_mesg_illust1 {
		padding: 0.0vw 0px 5.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 30%;
	}
	.top_mesg_reads p.top_mesg_read02 {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		font-size: 3.7vw;
		line-height: 1.8em;
		color: #1C5EA0;
	}
	.top_mesg_reads p.top_mesg_illust2 {
		display: none;
	}
	.top_mesg_reads p.top_mesg_illust3 {
		display: none;
	}
	.top_mesg_reads p.top_mesg_illust4 {
		display: none;
	}
	.top_mesg_reads p.top_mesg_illust5 {
		display: none;
	}
	.top_mesg_reads p.top_mesg_illust6 {
		display: none;
	}
	.top_mesg_btm {
		padding: 5.0vw 0px 5.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 60%;
	}
	.top_mesg_btm:hover #tmesg01 {
		fill: #1c5ea0;
	}
	.top_mesg_btm:hover #tmesg02 {
		fill: #ffe51a;
	}
	.top_mesg_btm:hover #tmesg04 {
		fill: #ffe51a;
	}
	.top_mesg_btm:hover #tmesg05 {
		fill: none;
		stroke: #ffe51a;
	}
	/*-------------------------------------------------------------------------------------*/
	#top_news {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		border-right: 10px solid #1C5EA0;
		border-left: 10px solid #1C5EA0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.top_news_wrap {
		padding: 0.0vw 0px 5.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
		background-image: url("../img/top/top_news_bg_sp.jpg");
		background-repeat: no-repeat;
		background-position: top center;
		background-size: cover;
	}
	.top_news {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 80%;
	}
	.top_news img {
		width: 100%;
	}
	.top_news_title {
		padding: 10.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		float: inherit;
	}
	.top_news_title {
		padding: 8.0vw 0px 5.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		text-align: center;
	}
	.top_news_title img {
		width: 100%;
	}
	.top_news_title .title {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 2.0vw auto 2.0vw;
		width: 30%;
	}
	.top_news_title p.readstitle {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		font-size: 4.0vw;
		color: #FFFFFF;
		text-align: center;
	}
	.top_news_lists {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		float: inherit;
	}
	.top_news_lists .top_news_lists_wrap {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
	}
	.top_news_lists p.top_news_date {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 2.0vw 0px;
		width: 100%;
		font-size: 3.7vw;
		color: #FFFFFF;
		font-weight: normal;
		float: inherit;
	}
	.top_news_lists p.top_news_read {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 5.0vw 0px;
		width: 100%;
		font-size: 3.7vw;
		line-height: 1.5em;
		color: #FFFFFF;
		font-weight: normal;
		float: inherit;
	}
	.top_news_btm {
		padding: 5.0vw 0px 5.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 60%;
	}
	.top_news_btm:hover #tnews01 {
		fill: #1c5ea0;
	}
	.top_news_btm:hover #tnews02 {
		fill: #ffe51a;
	}
	.top_news_btm:hover #tnews04 {
		fill: #ffe51a;
	}
	.top_news_btm:hover #tnews05 {
		fill: none;
		stroke: #ffe51a;
	}
	/*-------------------------------------------------------------------------------------*/
	#top_bizz {
		padding: 10.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		border-right: 10px solid #1C5EA0;
		border-left: 10px solid #1C5EA0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.top_bizz {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
	}
	.top_bizz img {
		width: 100%;
	}
	.top_bizz_title {
		padding: 5.0vw 0px 5.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		text-align: center;
	}
	.top_bizz_title img {
		width: 100%;
	}
	.top_bizz_title .icons {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 12%;
	}
	.top_bizz_title .title {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 2.0vw auto 2.0vw;
		width: 42%;
	}
	.top_bizz_title p.readstitle {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		font-size: 4.0vw;
	}
	.top_bizz_title p.readcents01 {
		padding: 5.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		font-size: 3.7vw;
		line-height: 1.8em;
		color: #000000;
		text-align: center;
	}
	/*---------------------------------------------*/
	.top_bizz_case {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 85%;
	}
	.top_bizz_case img {
		width: 100%;
	}
	.top_bizz_case_infor01 {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		float: inherit;
	}
	.top_bizz_case_infor02 {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		float: inherit;
	}
	.top_bizz_case_photo_wrap {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		height: 55.0vw;
		position: relative;
	}
	.top_bizz_case .top_bizz_case_photo {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
	}
	.top_bizz_case .top_bizz_case_photo img {
		border-radius: 5px;
	}
	.top_bizz_illust1 {
		display: none;
	}
	.top_bizz_illust1_sp {
		display: block;
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 30%;
		position: absolute;
		bottom: -5.0vw;
		left: -8.0vw;
	}
	.top_bizz_illust2 {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 24%;
		position: absolute;
		bottom: -3.0vw;
		right: -6.0vw;
	}
	.top_bizz_illust3 {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 15%;
		position: absolute;
		bottom: -3.0vw;
		left: -6.0vw;
	}
	.top_bizz_illust4 {
		display: none;
	}
	.top_bizz_illust4_sp {
		display: block;
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 18%;
		position: absolute;
		bottom: -3.0vw;
		right: -8.0vw;
	}
	.top_bizz_illust5 {
		display: none;
	}
	.top_bizz_illust6 {
		display: none;
	}
	.top_bizz_case h3 {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		font-weight: bold;
		font-size: 5.0vw;
		text-align: center;
	}
	.top_bizz_case .top_bizz_case_read01 {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 3.0vw 0px 0.0vw 0px;
		font-size: 3.7vw;
		line-height: 1.8em;
	}
	.top_bizz_case .top_bizz_case_btm {
		padding: 0.0vw 0px 15.0vw 0px;
		margin: 5.0vw auto 0.0vw;
		width: 50%;
	}
	.top_bizz_case .top_bizz_case_btm a:hover .tbizz02 {
		stroke: #1c5ea0;
		fill: #1c5ea0;
	}
	.top_bizz_case .top_bizz_case_btm a:hover .tbizz03 {
		fill: #FFFFFF;
	}
	.top_bizz_case .top_bizz_case_btm a:hover .tbizz05 {
		fill: #FFFFFF;
	}
	.top_bizz_case .top_bizz_case_btm a:hover .tbizz06 {
		stroke: #FFFFFF;
		fill: #1c5ea0;
	}
	/*-------------------------------------------------------------------------------------*/
	#top_work {
		padding: 10.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		border-right: 10px solid #1C5EA0;
		border-left: 10px solid #1C5EA0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.top_work_wrap {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
		background-image: url("../img/top/top_work_bg_sp.png");
		background-repeat: no-repeat;
		background-position: top center;
		background-size: cover;
	}
	.top_work {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
	}
	.top_work img {
		width: 100%;
	}
	.top_work_title {
		padding: 15.0vw 0px 5.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		text-align: center;
	}
	.top_work_title img {
		width: 100%;
	}
	.top_work_title .icons {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 12%;
	}
	.top_work_title .title {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 2.0vw auto 2.0vw;
		width: 30%;
	}
	.top_work_title p.readstitle {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		font-size: 4.0vw;
	}
	.top_work_title p.readcents01 {
		padding: 5.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		font-size: 3.7vw;
		line-height: 1.8em;
		color: #000000;
		text-align: center;
	}
	/*---------------------------------------------*/
	.top_work_case {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 85%;
		height: inherit;
	}
	.top_work_case img {
		width: 100%;
	}
	.top_work_pc {
		display: none;
	}
	.top_work_sp {
		display: block;
	}
	.top_work_case .top_work_sp ul {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
	}
	.top_work_case .top_work_sp li {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 2.0vw 0px;
		width: 39.0vw;
		height: 39.0vw;
		float: left;
	}
	.top_work_case .top_work_sp li img {
		border-radius: 5px;
	}
	.top_work_case .top_work_sp li:nth-child(2n) {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 2.0vw 0px;
		width: 39.0vw;
		height: 39.0vw;
		float: right;
	}
	.top_work_case .top_work_sp li .caption {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 15.0vw 0px 0.0vw 0px;
		font-size: 4.0vw;
		font-weight: bold;
		text-align: center;
		color: #fff;
	}
	.top_work_case .top_work_sp li .read01 {
		padding: 0.0vw 0px 3.0vw 0px;
		margin: 2.0vw 0px 0.0vw 0px;
		font-size: 3.7vw;
		text-align: center;
		color: #fff;
	}
	.top_work_case .top_work_sp li .mask {
		width: 100%;
		height: 100%;
		border-radius: 5px;
		position: absolute; /* 絶対位置指定 */
		top: 0;
		left: 0;
		opacity: 0; /* マスクを表示しない */
		background-color: rgba(21, 84, 122, 0.8); /* マスクは半透明 */
		-webkit-transition: all 0.2s ease;
		transition: all 0.2s ease;
	}
	.top_work_case .top_work_sp li:hover .mask {
		opacity: 1; /* マスクを表示する */
	}
	.top_work_illust1 {
		display: none;
	}
	.top_work_illust2 {
		display: none;
	}
	.top_work_illust3 {
		display: none;
	}
	.top_work_illust4 {
		display: none;
	}
	.top_work_btm {
		padding: 5.0vw 0px 5.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 60%;
	}
	.top_work_btm:hover #tmesg01 {
		fill: #1c5ea0;
	}
	.top_work_btm:hover #tmesg02 {
		fill: #ffe51a;
	}
	.top_work_btm:hover #tmesg04 {
		fill: #ffe51a;
	}
	.top_work_btm:hover #tmesg05 {
		fill: none;
		stroke: #ffe51a;
	}
	/*-------------------------------------------------------------------------------------*/
	#top_recruit {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		border-right: 10px solid #1C5EA0;
		border-left: 10px solid #1C5EA0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.top_recruit_wrap {
		padding: 0.0vw 0px 22.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
		background-image: url("../img/top/top_recruit_bg02_sp.png"), url("../img/top/top_recruit_bg01_sp.png");
		background-repeat: no-repeat, repeat;
		background-position: bottom center, top center;
		background-size: contain, cover;
	}
	.top_recruit_icon01 {
		display: none;
	}
	.top_recruit_icon02 {
		display: none;
	}
	.top_recruit {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
	}
	.top_recruit img {
		width: 100%;
	}
	.top_recruit_title {
		padding: 5.0vw 0px 5.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		text-align: center;
	}
	.top_recruit_title img {
		width: 100%;
	}
	.top_recruit_title .icons {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 12%;
	}
	.top_recruit_title .title {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 2.0vw auto 2.0vw;
		width: 30%;
	}
	.top_recruit_title p.readstitle {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		font-size: 4.0vw;
	}
	.top_recruit_title p.readcents01 {
		padding: 5.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		font-size: 3.7vw;
		line-height: 1.8em;
		color: #2A2C2C;
		text-align: center;
	}
	.top_recruit_title .readcents_back {
		background-image: url("../img/top/top_recruit_bg03_sp.png");
		background-repeat: no-repeat;
		background-position: top center;
		background-size: contain;
	}
	.top_recruit_title p.readcents02 {
		padding: 10.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		font-size: 4.5vw;
		line-height: 1.8em;
		color: #2A2C2C;
		text-align: center;
	}
	.top_recruit_title p.photo_pc {
		display: none;
	}
	.top_recruit_title p.photo_sp {
		display: block;
		padding: 5.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
	}
	.top_recruit_title p.linkbtm01 {
		padding: 5.0vw 0px 2.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 80%;
	}
		.top_recruit_title p.linkbtm01 svg {
		width: 100%;

	}
	
	.top_recruit_title p.linkbtm01:hover #trecruit01 {
		fill: #FFFFFF;
	}
	.top_recruit_title p.linkbtm01:hover #trecruit02 {
		fill: #1c5ea0;
	}
	.top_recruit_title p.linkbtm01:hover #trecruit03 {
		fill: #1c5ea0;
	}
	.top_recruit_title p.linkbtm01:hover #trecruit04 {
		fill: none;
		stroke: #1c5ea0;
	}
	.top_recruit_title p.readcents03 a {
		padding: 5.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		font-size: 3.2vw;
		color: #2A2C2C;
		text-align: center;
		border-bottom: solid 1px #2A2C2C;
	}
	.top_recruit_title p.readcents03 a:hover {
		border-bottom: none;
	}
	/*---------------------------------------------*/
	/*-------------------------------------------------------------------------------------*/
	/** paddingはダミー  **/
	#hoge {
		padding: 50.0vw 0px 0.0vw 0px;
		margin: 0.0vw 0px 0.0vw 0px;
		width: 100%;
		border-right: 10px solid #1C5EA0;
		border-left: 10px solid #1C5EA0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}
	.hoge {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
	}
	.hoge02 {
		padding: 0.0vw 0px 0.0vw 0px;
		margin: 0.0vw auto 0.0vw;
		width: 100%;
	}
	.hoge img {
		width: 100%;
	}
}