@charset "utf-8";
/* ===================================================================
 CSS Document
 file name  : top.css
 style info : 会社情報TOP
=================================================================== */

.cguide-icon {
	position: absolute;
	top: 40%;
	right: 4%;
	width: 20.7%;
	text-align: center;
	z-index: 100;
}

@media all and (max-width: 767px) {

	.cguide-icon {
	  top: 45%;
	}

	/*-----------------------------
	Section Common
	------------------------------*/
	#top .sec .ttl {
		margin: 0 auto 24px;
	}
	#top .sec .ttl img {
    	height: 32px;
 	}
	#top .sec .sttl {
		padding: 47% 0 0;
		position: relative;
		overflow: hidden;
	}
	#top .sec.sttl-visual-disabled .sttl {
		padding: 0;
	}
	#top .sec .sttl > img {
		position: absolute;
		top: 0;
		left: -100%;
		right: -100%;
		margin: auto;
		max-width: initial;
		width: 170%;
	}
	#top .sec .sttl span {
		display: block;
		background: #EDEDED;
		padding: 15px;
	}
	#top .sec .sttl span img {
		height: 28px;
	}
	#top .sec .s-menu {
		text-align: left;
		padding: 10px 4% 0;
		margin: 20px auto 20px;
		max-width: 520px;
	}
	#top .sec .s-menu.center {
		text-align: center;
	}
	#top .sec .s-menu ul {
		letter-spacing: -.4em;
		margin: 0 -58px 0;
	}
	#top .sec .s-menu li {
	    display: inline-block;
	    vertical-align: top;
	    letter-spacing: normal;
	    width: 32%;
	    margin-bottom: 6%;
	    text-align: center;
	}
	#top .sec .s-menu a {
		text-decoration: none;
		font-size: 12px;
		color: #333;
		line-height: 1.4;
		display: block;
		position: relative;
		white-space: nowrap;
	}
	#top .sec .s-menu li img {
		display: block;
		margin: 0 auto 8px;
		padding: 0 15%;
	}

	/*-----------------------------
	Section01
	------------------------------*/
	#top .sec01 {
		position: relative;
		margin: -55px 0 0;
		padding: 20px 0 0;
	}
	#top .sec01 h2 {
		width: 100%;
	}
	#top .sec01 h2 strong {
		position: absolute;
		top: 30%;
		right: 4%;
		width: 32%;
	}
	#top .sec01 h2 strong + img {
		width: 100%;
	}

	/*-----------------------------
	Section02
	------------------------------*/
	#top .sec02 {
		width: 100%;
		margin: -12% auto 0;
		overflow: hidden;
		text-align: center;
		position: relative;
	}
	#top .sec02 h2 img {
		height: 35px;
	}
	#top .sec02 .m-menu {
		letter-spacing: -.4em;
		padding: 14px 4% 0;
		max-width: 520px;
		margin: 0 auto;
	}
	#top .sec02 li {
		display: inline-block;
		vertical-align: top;
		letter-spacing: normal;
		width: 32%;
		margin-bottom: 6%;
	}
	#top .sec02 li a {
	    text-decoration: none;
	    font-size: 12px;
	    color: #666;
	    line-height: 1.4;
	    display: block;
	    white-space: nowrap;
	    position: relative;
	}
	#top .sec02 li img {
		display: block;
		margin: 0 0 7px;
		padding: 0 15%;
	}

	/*-----------------------------
	Section03
	------------------------------*/
	#top .sec03 {
		margin: 20px auto 0;
		text-align: center;
	}
	/*
	#top .sec03 .box04 .s-menu {
		text-align: center;
		padding: 10px 4% 0;
	}
	#top .sec03 .box04 .s-menu li {
		width: 23%;
	}
	*/
	#top .sec03 .box06 {
		padding: 0 15px;
		margin: 30px auto 50px;
		overflow: hidden;
	}
	#top .sec03 .box06 [class^="ul0"] {
		max-width: 480px;
		margin: 0 auto;
		letter-spacing: -.4em;
	}
	#top .sec03 .box06 .ul02 li {
		overflow: hidden;
		margin: 10px 0 0;
		display: table;
		width: 100%;
	}
	#top .sec03 .box06 .ul02 li a {
		font-size: 11px;
		color: #535353;
		height: 44px;
		display: table-cell;
		vertical-align: middle;
		text-align: left;
		width: 100%;
		border: #DDD 1px solid;
		letter-spacing: normal;
		text-decoration: none;
		padding: 0 0 0 16px;
		position: relative;
	}
	#top .sec03 .box06 .ul02 li a:after {
		content: '';
		display: block;
		width: 8px;
		height: 8px;
		border-top: #BBB 1px solid;
		border-left: #BBB 1px solid;
		transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		-ms-transform: rotate(135deg);
		-moz-transform: rotate(135deg);
		position: absolute;
		top: 50%;
		right: 12px;
		margin-top: -5px;
	}
	#top .sec03 .box06 .ul02 li a br {
		display: none;
	}
}


@media all and (max-width: 320px) {
	#top .sec .s-menu a {
		font-size: 11px;
	}
}



@media all and (min-width: 768px) {

	/*-----------------------------
	Section Common
	------------------------------*/
	#top .sec .ttl {
		margin: 0 auto 62px;
	}
	#top .sec .sttl {
		width: 100%;
		height: 520px;
		position: relative;
		overflow: hidden;
	}
	#top .sec .sttl > img {
		position: absolute;
		top: 0;
		left: -100%;
		right: -100%;
		margin: auto;
	}
	#top .sec .sttl span {
		display: block;
		background: #EDEDED;
		margin: 400px 0 50px;
		padding: 40px 0;
	}
	#top .sec.sttl-visual-disabled .sttl {
		height: 120px;
	}
	#top .sec.sttl-visual-disabled .sttl span {
		margin: 0 0 50px;
	}
	#top .sec .s-menu {
		text-align: center;
		width: 980px;
		padding: 0 30px;
		margin: 42px auto 16px;
	}
	#top .sec .s-menu ul {
		letter-spacing: -.4em;
		margin: 0 -58px 0;
	}
	#top .sec .s-menu li {
		display: inline-block;
		vertical-align: top;
		letter-spacing: normal;
		margin: 0 1.7%;
		line-height: 1.4;
		width: 120px;
	}
	#top .sec .s-menu li:first-child {
		margin-left: 0;
	}
	#top .sec .s-menu li:last-child {
		margin-right: 0;
	}
	#top .sec .s-menu a {
		text-decoration: none;
		font-size: 15px;
		color: #333;
		line-height: 1.35;
		display: block;
		margin: 0 -10px;
	}
	#top .sec .s-menu li img {
		display: block;
		margin: 0 auto 12px;
	}

	/*-----------------------------
	Section01
	------------------------------*/
	#top .sec01 {
		width: 100%;
		position: absolute;
		max-height: 750px;
	}
	#top .sec01 h2 {
		width: 100%;
		min-width: 980px;
	}
	#top .sec01 h2 strong {
		position: absolute;
		top: 30%;
		right: 4%;
		margin: -30px auto 0;
		width: 20.7%;
	}
	#top .sec01 h2 strong img {
		max-width: 100%;
	}
	#top .sec01 h2 strong + img {
		width: 100%;
		min-width: 980px;
	}

	/*-----------------------------
	Section02
	------------------------------*/
	#top .sec02 {
		width: 100%;
		margin: 0 auto 0;
		overflow: hidden;
		text-align: center;
		position: relative;
		background: url(../png/sec01_bg_pc_white.png) center 400px no-repeat;
		padding-top: 570px;
		padding-bottom: 50px;
	}
	#top .sec02 .m-menu {
		letter-spacing: -.4em;
		margin: 30px auto 0;
		max-width: 1100px;
	}
	#top .sec02 li {
		display: inline-block;
		vertical-align: top;
		letter-spacing: normal;
		margin: 0 3.3%;
		width: 120px;
	}
	#top .sec02 li:first-child {
		margin-left: 0;
	}
	#top .sec02 li:last-child {
		margin-right: 0;
	}
	#top .sec02 a {
		text-decoration: none;
		font-size: 15px;
		color: #666;
		line-height: 1.3;
		display: block;
		transition-property: transform,opacity;
	}
	#top .sec02 li a:hover {
		opacity: .5;
		transform: translateY(-3px);
	}
	#top .sec02 li img {
		display: block;
		margin: 0 auto 12px;
	}

	/*-----------------------------
	Section03
	------------------------------*/
	#top .sec03 {
		margin: 62px auto 0;
		text-align: center;
	}
	#top .sec03 .box01 .sttl {
		background: #EDF1F2;
	}
	#top .sec03 .box02 .sttl {
		background: #F2F2F2;
	}
	#top .sec03 .box03 .sttl {
		background: #F4F1EC;
	}
	#top .sec03 .box04 .sttl {
		background: #E5CA9F;
	}
	#top .sec03 .box05 .sttl {
		background: #2D5A77;
	}
	#top .sec03 .box02 .s-menu {
		width: 950px;
	}
	#top .sec03 .box02 .s-menu li {
		margin: 0 5.5% 35px;
	}
	#top .sec03 .box04 .s-menu,
	#top .sec03 .box05 .s-menu {
		width: 770px;
	}
	#top .sec03 .box01 .s-menu li,
	#top .sec03 .box03 .s-menu li {
		margin: 0 5.5% 35px;
	}
	#top .sec03 .box04 .s-menu li,
	#top .sec03 .box05 .s-menu li {
		margin: 0 4.6% 35px;
	}
	#top .sec03 .box04 .s-menu li:nth-child(4),
	#top .sec03 .box05 .s-menu li:nth-child(4),
	#top .sec03 .box05 .s-menu li:nth-child(8),
	#top .sec03 .box05 .s-menu li:last-child {
		margin-right: 0;
	}
	#top .sec03 .box04 .s-menu li:nth-child(1),
	#top .sec03 .box05 .s-menu li:nth-child(1),
	#top .sec03 .box05 .s-menu li:nth-child(5) {
		margin-left: 0;
	}
	#top .sec03 .box06 {
		width: 980px;
		padding: 0 15px;
		margin: 70px auto 58px;
		overflow: hidden;
	}
	#top .sec03 .box06 .ul01 {
		width: 480px;
		float: left;
	}
	#top .sec03 .box06 .ul02 {
		width: 450px;
		float: right;
		letter-spacing: -.4em;
	}
	#top .sec03 .box06 .ul02 li {
		overflow: hidden;
		width: 220px;
		height: 80px;
		display: table;
		vertical-align: top;
		margin-bottom: 10px;
		float: left;
	}
	#top .sec03 .box06 .ul02 li:nth-child(even) {
		margin-left: 10px;
	}
	#top .sec03 .box06 .ul02 li a {
		color: #535353;
		display: table-cell;
		vertical-align: middle;
		text-align: left;
		width: 100%;
		border: #DDD 1px solid;
		letter-spacing: normal;
		text-decoration: none;
		line-height: 1.4;
		padding: 0 0 0 16px;
		position: relative;
	}
	#top .sec03 .box06 .ul02 li a:after {
		content: '';
		display: block;
		width: 10px;
		height: 10px;
		border-top: #BBB 1px solid;
		border-left: #BBB 1px solid;
		transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		-ms-transform: rotate(135deg);
		-moz-transform: rotate(135deg);
		position: absolute;
		top: 33px;
		right: 12px;
	}
}


@media all and (min-width: 768px) and (max-width: 1100px) {
	#top .sec02 li {
		margin: 0 2.5%;
	}
}

#top .sec.sttl-visual-disabled .sttl > img.sttl-visual {
	display: none;
}
