@charset "utf-8";

/* firefoxでページ移動の際、コンテンツが少なくても中心がずれないようにする */
html {
	overflow-y: scroll;
}
body,
div,
p,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
pre,
form,
input,
textarea,
header,
footer,
nav {
	margin: 0;
	padding: 0;
	zoom: 1;
	color : #000000;
	-webkit-text-size-adjust: 100%;
	font-family: 'Noto Sans JP', sans-serif;
}

ul,
ol {
	list-style-type: none;
}

img {
	border: none;
}

hr {
	display: none;
	margin: 0;
	padding: 0;
	width: 1px;
	height: 1px;
}

a {
	outline: none;
	text-decoration: none;
}
a.televe {
    pointer-events: none;
}
@media only screen and (max-width: 480px) {
	a.televe {
		pointer-events: auto;
	}
}
a.group1 {
	transition: 0.4s;
}
a.group1:hover {
	opacity : 0.7;
}

body {
	line-height: 1.6;
	color: #000000;
	font-style: normal;
	font-weight: normal;
	background-color: #ffffff;
}

main {
	margin-top : 80px;
}
@media only screen and (max-width: 480px) {
	main {
		margin-top : 54px;
	}
}

/* ソーシャルメディアポリシーのリンク：表示にする時はblockにするのでなく空欄にする */
.mdlink {

}
/* -------------------------------------------------------------------
 clearfix
------------------------------------------------------------------- */

.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

/* For IE 6/7 */
.clearfix {
	zoom: 1;
}

/* -------------------------------------------------------------------
 header
------------------------------------------------------------------- */
header {
	position : fixed;
	top : 0;
	left : 0;
	width : 100%;
	height : 80px;
	background-color : #ffffff;
	z-index : 90;
}
.headMenuInner {
	width : 100%;
	margin : 0 auto;
	position : relative;
}
.headLogo {
	position: relative;
	width : 300px;
	text-align: left;
	margin: 0;
	padding: 24px 0 0 30px;
	z-index: 12;
	transition: 0.3s;
}
.headLogo img {
	width: 286px;
}
@media only screen and (max-width: 480px) {
	header {
		height : 60px;
	}
	.headLogo {
		padding: 16px 0 0 12px;
	}
	.headLogo img {
		width: 200px;
	}
}

.headMenu {
	position: absolute;
	top: 30px;
	right: 140px;
	text-align: right;
	z-index: 9;
	width : calc(100% - 480px);
	max-width : 820px;
}
.headMenu ul {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.headMenu li {
	display: inline-block;
	vertical-align: top;
}
.headMenu .main li a {
	color: #004ea0;
	font-size: 18px;
	font-weight: 500;
	text-decoration: none;
	display: inline-block;
	vertical-align: top;
	line-height: 1.0;
	position: relative;
	transition: .3s;
}
.headMenu .main li a::after {
	position: absolute;
	bottom: -32px;
	left: 50%;
	content: '';
	width: 0;
	height: 3px;
	background-color: #004ea0;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.headMenu li a:hover {
	color : #444444;
}
.headMenu li a:hover::after {
	width: 100%;
}
@media only screen and (max-width: 1320px) {
	.headMenu {
		right: 100px;
		width : 640px;
	}
	.headMenu .main li a {
		font-size: 16px;
	}
	.headMenu .main li a::after {
		bottom: -34px;
	}
}
@media only screen and (max-width: 1080px) {
	.headMenu {
		display : none;
	}
}

.openMenu {
	display: block;
	width: 100%;
	position: fixed;
	top: -900px;
	right: 0px;
	text-align: left;
	z-index: 14;
	background-color: #004ea0;
	transition: .5s;
}
.openMenu .mainTitle {
	text-align : center;
	color : #ffffff;
	font-size : 60px;
	font-weight : 400;
	padding-top : 40px;
	line-height : 1.4;
}
.openMenu .mainTitle span {
	display : block;
	color : #ffffff;
	font-size : 24px;
	font-weight : 500;
	letter-spacing: 1px;
}
.openMenu .menuItem {
	width : 100%;
	max-width : 860px;
	padding 0 10px;
	margin : 50px auto 30px auto;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
	box-sizing: border-box;
}
.openMenu .menuItem li {
	margin-bottom : 40px;
	padding-right : 16px;
	width : 27%;
	box-sizing: border-box;
}
.openMenu .menuItem li:nth-child(4) {
	width : 19%;
}
.openMenu .menuItem::after {
	content : "";
	width : 19%;
}
.openMenu .menuItem li a {
	color: #ffffff;
	font-size: 18px;
	font-weight: 400;
	transition: .3s;
	white-space: nowrap;
}
.openMenu .menuItem li a::before {
	content : ">";
	font-family: 'Source Serif Pro', serif;
	color : #ffffff;
	font-size : 24px;
	display : inline-block;
	padding : 6px 19px;
	border : 1px solid #ffffff;
	border-radius : 50%;
	position : relative;
	margin-right : 16px;
	transition: .3s;
}
.openMenu .menuItem li a:hover {
	text-decoration : underline;
	text-underline-offset : 5px;
}
.openMenu .menuItem li a:hover::before {
	color : #004ea0;
	background-color : #ffffff;
}
.whiteButton {
	width : 100%;
	max-width : 860px;
	margin : 0 auto 80px auto;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content :center;
}
.whiteButton a {
	display : block;
	width : 46%;
	margin : 0 2%;
	transition: 0.4s;
}
.whiteButton a img {
	width : 100%;
}
.whiteButton a:hover {
	opacity : 0.7;
}
@media only screen and (max-width: 1200px) {
	.openMenu .mainTitle {
		font-size : calc(4.09vw + 10.9px);
		padding-top : 56px;
	}
	.openMenu .mainTitle span {
		font-size : calc(1.14vw + 10.4px);
	}
	.openMenu .menuItem {
		padding : 0 10px;
	}
	.openMenu .menuItem li {
		width : 25%;
		margin-bottom : 4vw;
	}
	.openMenu .menuItem li:nth-child(5) {
		width : 32%;
	}
	.openMenu .menuItem li:nth-child(6) {
		width : 24%;
	}
	.openMenu .menuItem li:nth-child(7) {
		width : 24%;
	}
	.openMenu .menuItem::after {
		width : 16%;
	}
	.openMenu .menuItem li a {
		font-size : calc(0.57vw + 11.2px);
		padding-right : 10px;
	}
	.openMenu .menuItem li a::before {
		font-size : calc(1.14vw + 10.4px);
		padding : 0.5vw calc(1.3vw + 4px);
		margin-right : 1.6vw;
	}
}
@media only screen and (max-width: 480px) {
	.openMenu .menuItem {
		width : 300px;
		padding : 0 10px;
		margin : calc(5vw + 10px) auto calc(2vw + 10px) auto;
	}
	.openMenu .menuItem li {
		margin-bottom : 4vw;
	}
	.openMenu .menuItem::after {
		width : 49%;
	}
	.openMenu .menuItem li:nth-child(1) {
		width : 58%;
	}
	.openMenu .menuItem li:nth-child(2) {
		width : 40%;
	}
	.openMenu .menuItem li:nth-child(3) {
		width : 58%;
	}
	.openMenu .menuItem li:nth-child(4) {
		width : 40%;
	}
	.openMenu .menuItem li:nth-child(5) {
		width : 58%;
	}
	.openMenu .menuItem li:nth-child(6) {
		width : 40%;
	}
	.openMenu .menuItem li:nth-child(7) {
		width : 58%;
	}
	.openMenu .menuItem::after {
		width : 16%;
	}
	.openMenu .menuItem li a {
		font-size : calc(0.6vw + 12px);
		padding-right : 10px;
	}
	.openMenu .menuItem li a::before {
		font-size : calc(1.14vw + 10.4px);
		padding : 0.5vw calc(1.3vw + 4px);
		margin-right : 1.6vw;
	}
	.whiteButton {
		margin : 0 auto 8vw auto;
		display : block
	}
	.whiteButton a {
		width : 90%;
		margin : 10px auto;
		padding : 1.4vw 0;
		text-align : center;
	}
	.whiteButton a img {
		width : 80%;
	}
}

.smp_menu {
	position: fixed;
	top: 0;
	right: 0;
	width: 80px;
	height: 80px;
	text-align: center;
	background-color : #004ea0;
	z-index : 99;
}
.smp_menu p {
	display: block;
	position: absolute;
	top: 28px;
	left: 24px;
	width: 32px;
	text-align: center;
	height : 23px;
	transition: all .4s;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #ffffff;
	transition: all .4s;
}
.menu-trigger span:nth-of-type(1) {
    top: 0;
}
.menu-trigger span:nth-of-type(2) {
    bottom: 0;
}
.menu-trigger.is-open span:nth-of-type(1) {
	width: 100%;
	-webkit-transform: translate3d(2px, 3px, 0) rotate(45deg);
	transform: translate3d(2px, 3px, 0) rotate(45deg);
}
.menu-trigger.is-open span:nth-of-type(2) {
	width: 100%;
	-webkit-transform: translate3d(2px, -17px, 0) rotate(-45deg);
	transform: translate3d(2px, -17px, 0) rotate(-45deg);
}
.cp_overLeft {
	position: fixed;
	top: 50%;
	left: 0;
	z-index: 20;
}
.smplink {
	display :  none;
}
@media only screen and (max-width: 480px) {
	.smp_menu {
		width: 60px;
		height: 60px;
	}
	.smp_menu p {
		top: 20px;
		left: 18px;
		width: 24px;
		height : 18px;
	}
	.menu-trigger.is-open span:nth-of-type(2) {
		-webkit-transform: translate3d(2px, -12px, 0) rotate(-45deg);
		transform: translate3d(2px, -12px, 0) rotate(-45deg);
	}
}

.pankuzu {
	font-size: 13px;
	color: #494949;
	padding: 6px 0 12px 4px;
	width: 100%;
	max-width: 1343px;
	margin: 0 auto;
	position: relative;
}
.pc_headline {
	display: block;
}
.smp_headline {
	display: none;
}

@media only screen and (max-width: 860px) {
	.pc_headline {
		display: none;
	}
	.smp_headline {
		display: block;
	}
}

/* トップページコンテンツ */

.topImg  {
	width : 100%;
	height : calc(140vw + 100px);
	max-height : 853px;
	margin : 0 auto;
	overflow : hidden;
	position : relative;
}
.frontPannel {
	position : absolute;
	width : 100%;
	height : 100%;
	max-height : 853px;
	top : 0;
	left : 0;
}
.topScroll {
	position : fixed;
	top : 45vh;
	left : 0;
	width : 40px;
	text-align : center;
}
.topScroll .scrollDown {
	display: flex;
	align-items: center;
	width : 100%;
	font-size : 1rem;
	letter-spacing: 2px;
	color : #ffffff;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-weight : 700;
	text-align : center;
	opacity : 1;
	cursor : pointer;
}
.topScroll .scrollArrow {
	display ; block;
	margin : 10px auto;
	width : 2px;
	height : 100px;
	overflow : hidden;
}
.topScroll .scrollArrowInner {
	display ; inline-block;
	width : 2px;
	height : 50px;
	background-color : #ffffff;
	animation: arrowMove 2s infinite linear;
	transform: translate(0, -100px);
}
.topScroll .scrollArrowInner.active {
	animation: arrowMoveUp 2s infinite linear;
	transform: translate(0, 100px);
}
@keyframes arrowMove {
	to {
		  transform: translate(0, 100px);
	}
}
@keyframes arrowMoveUp {
	to {
		  transform: translate(0, -100px);
	}
}
.frontPannel .frontText {
	position : absolute;
	width : auto;
	top : 80px;
	left : 230px;
}
.frontPannel .frontText img {
	width : 561px;
	height : auto;
	display : block;
}
.frontOverPannel {
	position : relative;
	width : 100%;
	top : 640px;
}
.frontOverPannel .frontBanner {
	position : relative;
	width : auto;
	max-width : 820px;
	bottom : 0;
	left : 230px;
}
.frontOverPannel .frontBanner a {
	display : inline-block;
	width : 48%;
}
.frontOverPannel .frontBanner a:first-child {
	margin-right : 8px;
}
.frontOverPannel .frontBanner img {
	width : 100%;
	max-width : 400px;
}
.frontOverPannel .topNews {
	position : relative;
	width : 556px;
	margin-left : auto;
}
.frontOverPannel .topSns {
	position : absolute;
	width : 40px;
	bottom : 86px;
	right : 24px;
	/* SNS開設時に削除する */
	/*display : none;*/
}
.frontOverPannel .topSns a {
	display : block;
}
.frontOverPannel .topSns img {
	width : 34px;
}
.topImg .backPannel  {
	position : absolute;
	top : 0;
	left : 0;
	width : 100%;
	height : 853px;
	z-index : -1;
}
.topImg .backPannel img {
	width : 100%;
	height : 100%;
	object-fit : cover;
}
.topImg .backPannel video {
	width : 100%;
	height : 100%;
	object-fit : cover;
}
@media only screen and (max-width: 1700px) {
	.frontPannel .frontText {
		top : calc(3vw + 20px);
		left : 14vw;
	}
	.frontPannel .frontText img {
		width : 30vw;
		max-width : 561px;
		height : auto;
	}
	.frontOverPannel .frontBanner {
		position : relative;
		width : calc(100% - 14vw);
		bottom : 100px;
		left : 14vw;
	}
	.frontOverPannel .topSns {
		bottom : 46px;
	}
}
@media only screen and (max-width: 1400px) {
	.frontPannel .frontText img {
		width : 45vw;
	}
}
@media only screen and (max-width: 640px) {
	.frontPannel .frontText {
		position: absolute;
		top: 40%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit- transform: translateY(-50%) translateX(-50%);
	}
	.frontPannel .frontText img {
		width : 70vw;
		max-width : 538px;
		height : auto;
	}
	.frontOverPannel .frontBanner {
		width : 100%;
		text-align : center;
		left : 0;
	}
	.frontOverPannel .frontBanner img {
		width : 100%;
		max-width : 400px;
	}
	.frontOverPannel .frontBanner a:first-child {
		margin-right : 0;
	}
	.frontOverPannel .topSns {
		display : none;
	}
}
@media only screen and (max-width: 480px) {
	.topImg {
		overflow : visible;
		height: calc(66vw + 100vh + 50px);
		max-height : 2000px;
	}
	.topImg .backPannel  {
		height : 100vh;
	}
	.frontOverPannel .frontBanner a {
		display : block;
		width : 100%;
		margin : 6px auto;
		text-align : center;
	}
	.frontOverPannel .frontBanner a img {
		width : 90%;
		max-width : 400px;
	}
	.frontOverPannel .frontBanner a:first-child {
		margin-right : auto;
	}
	.frontOverPannel {
		top : 95vh;
	}
	.frontPannel {
		height : 100vh;
	}
}

.topNewsWrap {
	position : relative;
	bottom : 95px;
	right : 100px;
	width : 540px;
	z-index : 89;
	margin-left : auto;
}
.topNewsWrap .moreRev {
	font-size : 24px;
	font-weight : bold;
	color : #ffffff;
	transition: 0.4s;
}
.topNewsWrap .moreRev hr {
	display : inline-block;
	margin-left : 12px;
	font-size : 0;
	width : 40px;
	height : 24px;
	border-top : none;
	border-left : none;
	border-right : none;
	border-bottom : 2px solid #ffffff;
	position : relative;
	transition: 0.4s;
	overflow : hidden;
}
.topNewsWrap .moreRev hr::after {
	content : "";
	position : absolute;
	top : 12px;
	right : 0;
	height : 24px;
	border-right : 2px solid #ffffff;
	transform: rotate(-45deg);
	transition: 0.4s;
}
.topNewsWrap .moreRev:hover hr {
	transform:translate(12px, 0);
}
.topNewsItem {

}
.topNewsItem a {
	display : block;
	background-color : #ffffff;
	line-height : 50px;
	padding : 0 30px;
	border-radius : 25px;
	transition: 0.4s;
}
.topNewsItem .comm {
	display : -webkit-flex;
	display : flex;
}
.topNewsItem .comm .date {
	display : inline-block;
	font-size : 16px;
	color : #004ea0;
}
.topNewsItem .comm .new {
	display : inline-block;
	font-size : 14px;
	color : #000000;
	margin-left : 24px;
	width : 410px;
	white-space: nowrap;
	overflow : hidden;
	text-overflow: ellipsis;
}
.topNewsItem a:hover {
	background-color : #f1f4fb;
}
@media only screen and (max-width: 1700px) {
	.topNewsWrap {
		position : relative;
		bottom : 100px;
		right : 100px;
		width : 540px;
		z-index : 89;
		margin-left : auto;
	}
}
@media only screen and (max-width: 800px) {
	.topNewsWrap {
		right : 10vw;
		width : 72vw;
	}
}
@media only screen and (max-width: 640px) {
	.topNewsWrap {
		right : 10px;
		width : 95%;
	}
	.topNewsWrap .moreRev {
		font-size : 20px;
	}
	.topNewsItem .comm .date {
		font-size : 1rem;
	}
	.topNewsItem .comm .new {
		font-size : 0.9rem;
		margin-left : 1.5rem;
		width : 100%;
	}
}
@media only screen and (max-width: 480px) {
	.topNewsWrap .moreRev {
		color : #004ea0;
		padding-left : 12px;
	}
	.topNewsWrap .moreRev hr {
		border-bottom : 2px solid #004ea0;
	}
	.topNewsWrap .moreRev hr::after {
		border-right : 2px solid #004ea0;
	}
	.topNewsItem a {
		line-height : 1.8;
		padding : 16px;
		border-radius : 0;
		margin : 8px 0 24px 0;
		border-top : 1px solid #e1e1e1;
		border-bottom : 1px solid #e1e1e1;
	}
	.topNewsItem .comm {
		display : block;
	}
	.topNewsItem .comm .date {
		display : block;
		font-size : 14px;
	}
	.topNewsItem .comm .new {
		display : block;
		font-size : 13px;
		color : #000000;
		margin-left : 0;
		width : 100%;
		white-space: nowrap;
		overflow : hidden;
		text-overflow: ellipsis;
	}
}


/*　ナビ包括-----------------------------*/
/* グローバルナビゲーション */
.panWrap  {
	width : 100%;
	max-width : 1800px;
	margin : 0 auto;
	overflow : hidden;
	box-sizing: border-box;
	position : relative;
	padding : 40px 10px 0 10px;
}
.panWrap li {
	display: inline-block;
	margin-right : 7px;
	font-size : 0.9rem;
	color : #4b4b4b;
	font-weight : 500;
}
.panWrap li a {
	display: inline-block;
	color : #4b4b4b;
	transition: 0.3s;
}
.panWrap li a:hover {
	opacity : 0.6;
}
@media only screen and (max-width: 1340px) {
	.panWrap  {
		padding : 10px 0 0 10px;
	}
}
@media only screen and (max-width: 480px) {
	.panWrap li:first-child a {
		padding-left : 0;
	}
}

/* トップページ
---------------------------------------------------------------------- */

#news,
#commit,
#info {
	padding-top: 64px;
	margin-top: -64px;
}

.imageBack {
	background : url(/narasekisui/common/img/top_business_back.jpg) no-repeat center center;
	background-size : cover;
}
.topBusinessArea {
	
}
.topBusinessArea .leftBlock {
	margin-right : 35px;
	width : 40%;
}
.innerImage {
	text-align : left;
}
.innerImage img {
	width : 100%;
	max-width : 525px;
}
.topBusinessArea .rightBlock {
	padding-left : 35px;
	width : 50%;
}
.blueBack {
	background-color : #f1f4fb;
}
.movieArea {
	width : 100%;
	max-width : 700px;
	padding : 0 10px;
	box-sizing: border-box;
}
.movieArea video {
	width : 100%;
}
@media only screen and (max-width: 1480px) {
	.topBusinessArea .leftBlock {
		margin-right : 0;
		width : 45%;
	}
	.topBusinessArea .rightBlock {
		padding-left : 5%;
	}
}
@media only screen and (max-width: 640px) {
	.imageBack {
		background : url(/narasekisui/common/img/top_business_back.jpg) no-repeat center top 240px;
		background-size : cover;
	}
	.topBusinessArea .leftBlock {
		margin-right : 0;
		width : 100%;
	}
	.topBusinessArea .rightBlock {
		width : 100%;
		padding-left : 0%;
		margin : 6vw auto 12vw auto;
		max-width : 535px;
	}
	.innerImage {
		text-align : center;
	}
	.innerImage img {
		width : 100%;
		height : 56vw;
		object-fit: cover;
		border-radius : 16px;
	}
	.bottomImage {
		display : none !important;
	}
}
.normalTitle {
	
}
.normalTitle strong {
	color : #004ea0;
	font-weight : 700;
	display : block;
}
.normalTitle span {
	color : #000000;
	font-weight : 500;
	display : block;
	line-height : 1.3;
	margin-top : 10px;
}
.normalTitle span.shadow {
	text-shadow : 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff;
}
@media only screen and (max-width: 640px) {

}
.normalText p {
	color : #626262;
	line-height : 2.0;
}
.normalButton {
	
}
.normalButton a {
	color : #004ea0;
	font-weight : bold;
	position : relative;
	display : inline-block;
	padding-right : 40px;
	line-height : 36px;
	background : url(/narasekisui/common/img/arrow.png) no-repeat top 12px right;
	transition: 0.3s;
}
.normalButton a:hover {
	color : #000000;
}

.infomationArea {
	font-size : 0;
	background-color : #f1f4fb;
}
.infomationArea .leftText {
	padding : 10px 100px 10px 0;
	width : 50%;
	max-width : 730px;
	margin-left : auto;
	box-sizing: border-box;
}
.infomationArea .rightImage {
	width : 50%;
	text-align : right;
}
.infomationArea img {
	width : 100%;
}
.infomationArea .rightText {
	padding : 10px 0 10px 100px;
	width : 50%;
	max-width : 730px;
	margin-right : auto;
	box-sizing: border-box;
}
.infomationArea .leftImage {
	width : 50%;
	text-align : left;
}
.normalTitle span {
	font-size : 44px;
}
.normalTitle span br {
	display : block;
}
.bottomImage img {
	width : 48%;
	max-width : 280px;
}
@media only screen and (max-width: 1920px) {
	.infomationArea .leftText {
		padding : 10px 6vw 10px 10px;
	}
	.infomationArea .rightImage {
		width : 50%;
		text-align : right;
	}
	.infomationArea .rightImage img {
		width : 100%;
	}
	.infomationArea .rightText {
		padding : 10px 10px 10px 6vw;
	}
	.normalTitle span {
		font-size : calc(1.79vw + 9.7px);
	}
}
@media only screen and (max-width: 1400px) {
	.normalTitle span br {
		display : none;
	}
}
@media only screen and (max-width: 640px) {
	.infomationArea .leftText {
		width : 100%;
		max-width : 730px;
		margin-top : 6vw;
	}
	.infomationArea .rightImage {
		width : 100%;
	}
	.infomationArea .rightText {
		width : 100%;
		margin-top : 6vw;
		padding-bottom : 8vw;
	}
	.infomationArea .leftImage {
		width : 100%;
		padding-top : 4vw;
	}
	.normalTitle span br {
		display : block;
	}
	.normalTitle span {
		font-size : calc(5vw + 4.0px);
		line-height : 1.8;
	}
}

.topRecruitArea {
	
	background : url(/narasekisui/__icsFiles/afieldfile/2023/06/09/top_recruit_back.png) no-repeat center top;
	
	width : 100%;
	max-width : 1450px;
	height : 48vw;
	max-height : 616px;
	position : relative;
	background-size : 100%;
}
.topRecruitArea .leftBlock {
	position: absolute;
	top: 50%;
	left: 60px;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
}
.blueButton {
	width : 40vw;
	max-width : 400px;
	text-align : center;
}
.blueButton a {
	display : block;
	font-size : 0;
	margin-top : 30px;
	transition: 0.4s;
}
.blueButton a:hover {
	opacity : 0.7;
}
.blueButton img {
	width : 100%;
}
@media only screen and (max-width: 1400px) {
	.topRecruitArea {
		
		background : url(/narasekisui/__icsFiles/afieldfile/2023/06/09/top_recruit_back.png) no-repeat center top;
		
		width : 100%;
		max-width : 1450px;
		height : 48vw;
		max-height : 616px;
		position : relative;
		background-size : cover;
	}
	.topRecruitArea .leftBlock {
		left: 3vw;
	}
	.blueButton a {
		margin-top : 3vw;
	}
}
@media only screen and (max-width: 640px) {
	.topRecruitArea {
		
		background : url(/narasekisui/__icsFiles/afieldfile/2023/06/09/top_recruit_back.png) no-repeat center bottom;
		
		width : 100%;
		max-width : 1450px;
		height : auto;
		max-height : 616px;
		position : relative;
		background-size : contain;
		padding-bottom : calc(40vw + 40px);
	}
	.topRecruitArea .leftBlock {
		position: relative;
		top: 0;
		left: 0;
		transform: translateY(0%);
		-webkit- transform: translateY(0%);
		width : 90vw;
		margin : 0 auto;
		max-width : 400px;
	}
	.blueButton {
		width : 100%;
		max-width : 400px;
		text-align : center;
	}
	.smpleft {
		width : 90vw;
		margin : 0 auto;
		max-width : 400px;
		text-align : left !important;
	}
}

.smallTitle {
	font-weight : 500;
}
.bannerArea {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.bannerArea a {
	display : block;
	width : 23%;
	transition: 0.3s;
}
.bannerArea img {
	width : 100%;
	max-width : 274px;
}
.bannerArea a:hover {
	opacity : 0.7;
}
@media only screen and (max-width: 640px) {
	.bannerArea a {
		width : 100%;
		text-align : center;
		margin : 6px 0;
	}
}


/* サブページ共通---------------------------*/

.subPageImg {
	width : 100%;
	height : 450px;
}
.subPageImg .backPannel  {
	position : absolute;
	top : 80px;
	left : 0;
	width : 100%;
	height : 450px;
	z-index : -1;
}
.subPageImg .backPannel img {
	width : 100%;
	height : 100%;
	object-fit : cover;
}
.baseTitle {
	margin-top : 70px;
	text-align : center;
}
.topLine {
	border-top : 1px solid #e4e4e4;
}
.baseTitle strong {
	font-size : 36px;
	color : #004ea0;
	font-weight : 700;
	line-height : 1.5;
	display : block;
	letter-spacing : 1px;
}
.baseTitle span {
	font-size : 18px;
	color : #bdbdbd;
	font-weight : 700;
	display : block;
	line-height : 1.5;
}
@media only screen and (max-width: 1200px) {
	.baseTitle {
		margin-top : calc(6vw + 10px);
	}
	.baseTitle strong {
		font-size : calc(1.36vw + 19.7px);
	}
	.baseTitle span {
		font-size : calc(0.45vw + 12.6px);
	}
}
@media only screen and (max-width: 480px) {
	.subPageImg {
		height : 52vw;
	}
	.subPageImg .backPannel  {
		top : 60px;
		height : 52vw;
	}
}

.business_back {
	border-top : 1px solid #e4e4e4;
}
#breadcrumb {
	padding-top : 12px;
}
#breadcrumb ul {
	display : -webkit-flex;
	display : flex;
	white-space: nowrap;
	overflow : hidden;
	text-overflow: ellipsis;
}
#breadcrumb ul li {
	color : #7f7f7f;
	font-size : 14px;
	white-space: nowrap;
}
#breadcrumb ul li a {
	color : #7f7f7f;
	transition: 0.3s;
}
#breadcrumb ul li.pdl24 a {
	padding-left : 20px;
}
#breadcrumb ul li span {
	display : inline-block;
	padding : 0 20px;
}
#breadcrumb ul li a::after {
	content : ">";
	font-family: 'Source Serif Pro', serif;
	color : #a1a1a1;
	font-size : 1rem;
	display : inline-block;
	padding-left : 18px;
	position : relative;
	top : -1px;
}
#breadcrumb ul li a:hover {
	color : #004ea0;
}
.termTitle {
	font-weight : 500;
}
.termSubTitle {
	color : #626262;
	font-size : 1.2rem;
	line-height : 2.0;
}
.bottomBanner {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
}
.bottomBanner a {
	display : block;
	margin : 6px 16px;
	transition: 0.4s;
	box-sizing: border-box;
}
.bottomBanner a img {
	width : 100%;
	max-width : 400px;
}
.bottomBanner a:hover {
	opacity : 0.7;
}
@media only screen and (max-width: 480px) {
	.bottomBanner {
		display : block;
	}
}

/* 事業内容ページ---------------------------*/

.productBlock {
	
}
.productBlock .productItem {
	width : 50%;
	padding : 0 5%;
	box-sizing: border-box;
}
.productBlock .productItem:first-child {
	width : calc(50% - 1px);
	border-right : 1px solid #e4e4e4;
}
.productBlock h4 {
	color : #004ea0;
	text-align : center;
}
.productBlock .sub {
	color : #7e7e7e;
	text-align : center;
}
.productBlock .photoBack {
	width : 100%;
	max-width : 400px;
	min-height : 400px;
	background-size : 100%;
	margin : 0 auto;
	position : relative;
}
.productBlock .photoBack.left {
	
	background : url(/narasekisui/business/__icsFiles/afieldfile/2023/06/09/busi_back01.png) no-repeat 0 0;
	
}
.productBlock .photoBack.right {
	
	background : url(/narasekisui/business/__icsFiles/afieldfile/2023/06/09/busi_back02.png) no-repeat 0 0;
	
}
.productBlock .innerPos {
	position: absolute;
	top: 50%;
	left: 50%;
	width : 80%;
	max-width : 220px;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.productBlock .innerBox {
	background-color : rgba(255, 255, 255, 0.9);
	text-align : center;
	padding : 16px 0;
	margin : 30px 0;
}
.productBlock .innerBox.notitle {
	padding : 28px 0;
}
.productBlock .innerBox p {
	font-size : 1.1rem;
	color : #000000;
	font-weight : 400;
	line-height : 1.6;
}
.productBlock h5 {
	font-size : 1.1rem;
	color : #004ea0;
	font-weight : 500;
	line-height : 1.6;
}
.productBlock .introduction {
	font-size : 1.1rem;
	padding-bottom : 10px;
	border-bottom : 1px solid #e4e4e4;
	font-weight : 500;
}
.productBlock .introduction br {
	display : none;
}
.productBlock .introBanner {
	margin-top : 16px;
}
.productBlock .item {
	width : 30%;
}
.productBlock .item p {
	text-align : center;
	font-size : 1rem;
}
.productBlock img {
	border : 1px solid #e4e4e4;
	width : calc(100% - 2px);
}
.water_back {
	background : url(/narasekisui/common/img/busi_water_back.jpg) no-repeat center top;
	background-size : 100%;
}
.reverse {
	transform: scale(-1, 1);
}
.waterInner {
	position : relative;
}
.waterInner .image {
	width : 80%;
	max-width : 800px;
}
.waterInner .image.t_right {
	margin-left : auto;
}
.waterInner .image img {
	width : 100%;
}
.waterInner .textBox {
	position : absolute;
	top: 50%;
	width : 50%;
	max-width : 700px;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	background-color : #004ea0;
	border-radius : 12px;
	padding : 7% 6.5%;
	box-sizing : border-box;
}
.waterInner .textBox.posRight {
	left : 43%;
}
.waterInner .textBox.posLeft {
	right : 43%;
}
.waterInner .textBox h3 {
	color : #ffffff;
	line-height : 1.3;
	font-weight : 400;
	letter-spacing: 3px;
}
.waterInner .textBox p {
	color : #ffffff;
	font-size : 1.1rem;
	line-height : 2.2;
	letter-spacing: 1px;
}
.contactButton {
	border-bottom : 1px solid #e4e4e4;
}
.contactButton a {
	display : block;
	margin : 0 auto;
	width : 240px;
	color : #004ea0;
	font-size : 1rem;
	font-weight : 500;
	line-height : 4.0;
	text-align : center;
	border : 1px solid #004ea0;
	background-color : #ffffff;
	border-radius : 40px;
	transition: 0.4s;
}
.contactButton a:hover {
	color : #ffffff;
	background-color : #004ea0;
}
@media only screen and (max-width: 1000px) {
	.productBlock .photoBack {
		height : 40vw;
		min-height : 0;
		background-size : 100%;
		border-radius : 20px;
	}
	.waterInner .textBox {
		padding : 6% 5%;
	}
	.waterInner .textBox.posRight {
		left : 49%;
	}
	.waterInner .textBox.posLeft {
		right : 49%;
	}
	.waterInner .textBox p {
		line-height : 2.0;
		letter-spacing: 0px;
	}
}
@media only screen and (max-width: 640px) {
	.productBlock .productItem {
		width : 100%;
		padding : 0 5%;
		box-sizing: border-box;
	}
	.productBlock .productItem:first-child {
		width : 100%;
		border-right : none;
		padding-bottom : 6vw;
		border-bottom : 1px solid #e4e4e4;
	}
	.productBlock .productItem:last-child {
		margin-top : 8vw;
	}
	.productBlock .photoBack {
		height : 84vw;
		max-height : 400px;
	}
	.waterInner .image {
		width : 100%;
	}
	.waterInner .image.t_right {
		margin-left : 0;
	}
	.waterInner .textBox {
		position : relative;
		top: -50px;
		width : 90%;
		transform: translateY(0%);
		-webkit- transform: translateY(0%);
	}
	.waterInner .textBox.posRight {
		left : 5%;
	}
	.waterInner .textBox.posLeft {
		right : 0;
		left : 5%;
	}
}
@media only screen and (max-width: 480px) {
	.productBlock .introduction br {
		display : block;
	}
}

/* 企業情報ページ---------------------------*/

.infomation_back {
	width : 100%;
	height : auto;
	position : relative;
	overflow : visible !important;
	top : -80px;
}
.infomation_back .msback01 {
	width : 100%;
	height : calc(100% + 80px);
	
	background : url(/narasekisui/information/__icsFiles/afieldfile/2023/06/09/info_main.jpg) no-repeat top 80px left;
	
	background-size : 100%;
	background-attachment: scroll;
	position : absolute;
	top : 0;
	left : 0;
	z-index : 1;
}
.infomation_back .msback01.show {
	background-attachment: fixed;
}
.infomationInner {
	width : 50%;
	max-width : 800px;
	padding-left : 4%;
	box-sizing: border-box;
	position : relative;
	z-index : 2;
	padding-top : 100px;
	padding-left : 240px;
}
.infomationInner h3 {
	color : #004ea0;
	font-weight : 500;
	letter-spacing: 3px;
}
.infomationInner h4 {
	color : #626262;
	font-weight : 500;
	letter-spacing: 3px;
}
.greetingText h4 {
	color : #004ea0;
	font-weight : 500;
	letter-spacing: 3px;
}
.infomationInner p {
	color : #626262;
	font-size : 1.15rem;
	font-weight : 500;
	line-height : 2.0;
	margin-top : 20px;
}
.greetingText p {
	color : #626262;
	font-size : 1.15rem;
	font-weight : 500;
	line-height : 2.0;
	margin-top : 20px;
}
.greetingText p span {
	color : #004ea0;
}
@media only screen and (max-width: 1500px) {
	.infomationInner {
		padding-left : calc(12vw - 40px);
	}
}
@media only screen and (max-width: 1000px) {
	.infomationInner {
		width : 100%;
		max-width : 1000px;
		padding : calc(70vw - 40px) 4% 0 4%;
	}
	.infomation_back .msback01 {
		width : 100%;
		height : 64vw;
		
		background : url(/narasekisui/information/__icsFiles/afieldfile/2023/06/09/info_main_s.jpg) no-repeat top 80px left;
		
		background-size : contain;
		background-attachment: scroll;
		position : absolute;
		top : 0;
		left : 0;
		z-index : 1;
	}
}
@media only screen and (max-width: 480px) {
	.infomationInner {
		padding : calc(74vw - 20px) 4% 0 4%;
	}
	.greetingText p {
		line-height : 1.8;
		margin-top : 2vw;
		text-align : left;
		padding : 0 10px;
		box-sizing: border-box;
	}
}
.gray_back {
	background-color : #f4f4f4;
}
.infoTitle {
	font-weight : 500;
}
.aboutTable {
	width : 100%;
	max-width : 882px;
	margin : 0 auto;
}
.aboutTable dl {
	display : -webkit-flex;
	display : flex;
}
.aboutTable dt {
	width : 20%;
	color : #ffffff;
	font-size : 1rem;
	font-weight : 400;
	background-color : #626262;
	margin-bottom : 14px;
	text-align : center;
	padding : 16px 0;
}
.aboutTable dd {
	width : calc(80% - 14px);
	color : #626262;
	font-size : 1rem;
	font-weight : 400;
	background-color : #ffffff;
	margin-bottom : 14px;
	margin-left : 14px;
	padding : 16px 0 16px 32px;
	box-sizing: border-box;
}
.graphItem {
	width : 48%;
	max-width : 416px;
	margin-top : 40px;
	box-sizing: border-box;
}
.graphItem img {
	width : 100%;
}
.graphTable img {
	width : 100%;
}
.historyWrap {
	position : relative;
}
.historyWrap::after {
	content : "";
	display : block;
	position : absolute;
	top : 0;
	left : 145px;
	width : 1px;
	height : 100%;
	border-left : 2px solid #004ea0;
	font-size : 0;
}
.historyItem {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	align-items: center;
	padding : 20px 0 16px 0;
	border-bottom : 1px solid #e4e4e4;
}
.historyItem h4 {
	width : 144px;
	color : #004ea0;
	font-weight : 700;
	font-style : italic;
	font-size : 40px;
	font-family: 'Roboto Mono', monospace;
	text-align : left;
	position : relative;
}
.historyItem h4::after {
	content : "";
	font-size : 0;
	position : absolute;
	top : 24px;
	right : -11px;
	width : 18px;
	height : 17.5px;
	background : url(/narasekisui/common/img/circle.png) no-repeat 0 0;
	background-size : 100%;
}
.historyItem p {
	width : calc(100% - 344px);
	text-align : left;
	color : #626262;
	font-size : 1.1rem;
	font-weight : 500;
	line-height : 2.0;
	padding : 0 50px;
	box-sizing: border-box;
	letter-spacing: 1px;
}
.historyItem .image {
	width : 200px;
	height : 150px;
}
.historyItem .image img {
	width : 100%;
}
@media only screen and (max-width: 640px) {
	.graphItem {
		width : 100%;
		max-width : 416px;
		margin-top : 4vw;
		margin-left : auto;
		margin-right : auto;
	}
	.historyItem {
		display : block;
	}
	.historyItem h4 {
		display : inline-block;
		vertical-align: top;
		width : 75px;
		font-size : 20px;
	}
	.historyItem h4::after {
		top : 9px;
		right : -11px;
	}
	.historyItem p {
		display : inline-block;
		width : calc(100% - 90px);
		line-height : 1.8;
		padding : 3px 0 0 5vw;
		letter-spacing: 0px;
	}
	.historyItem .image {
		width : calc(100% - 90px);
		max-width : 200px;
		height : auto;
		margin-left : auto;
	}
	.historyWrap::after {
		left : 76px;
	}
}
@media only screen and (max-width: 480px) {
	.aboutTable dt {
		margin-bottom : 12px;
		padding : 12px 0;
	}
	.aboutTable dd {
		width : calc(80% - 12px);
		margin-bottom : 12px;
		margin-left : 12px;
		padding : 12px 0 12px 3vw;
		box-sizing: border-box;
	}
}

/* サステナビリティページ---------------------------*/

.sdgsImage img {
	width : 100%;
	max-width : 1086px;
}
.sdgsBlock {
	border-top : 1px solid #e4e4e4;
}
.bottomLine {
	border-bottom : 1px solid #e4e4e4;
}
.sdgsItem {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	margin-top : 100px !important;
}
.sdgsItem .sdgsLeft {
	width : 53%;
}
.sdgsItem .sdgsLeft h4 {
	font-size : 34px;
	color : #004ea0;
}
.sdgsItem .sdgsLeft h3 {
	font-size : 36px;
	color : #000000;
	margin-top : 40px;
}
.sdgsItem .sdgsLeft p {
	font-size : 1.1rem;
	color : #626262;
	line-height : 2.0;
	margin-top : 40px;
}
.sdgsItem .sdgsRight {
	width : 40%;
	text-align : right;
}
.sdgsItem .sdgsRight img {
	width : 100%;
	max-width : 450px;
}
.sdgsTerm {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	margin-top : 60px !important;
}
.sdgsTerm .termBox {
	width : 48%;
	background-color : #f4f4f4;
	border-top : 5px solid #004ea0;
	min-height : 175px;
}
.sdgsTerm .termBox h4 {
	display : inline-block;
	background-color : #004ea0;
	font-size : 1.1rem;
	color : #ffffff;
	font-weight : 500;
	line-height : 1.5;
	padding : 6px 10px 11px 10px;
}
.sdgsTerm .termBox p {
	font-size : 1.1rem;
	color : #626262;
	font-weight : 500;
	line-height : 2.0;
	padding : 12px 24px;
}
.sdgsTerm .icons {
	display : -webkit-flex;
	display : flex;
	padding : 28px 0 28px 32px;
	box-sizing : border-box;
}
.sdgsTerm .icons img {
	width : 18%;
	max-width : 80px;
	margin-left : 28px;
}
.sdgsTerm .icons img:first-child {
	margin-left : 0;
}
@media only screen and (max-width: 1200px) {
	.sdgsItem .sdgsLeft h4 {
		font-size : calc(1.82vw + 12.2px);
	}
	.sdgsItem .sdgsLeft h3 {
		font-size : calc(1.82vw + 14.2px);
		margin-top : 4vw;
	}
	.sdgsTerm .icons {
		padding : 2.8vw 2vw;
	}
	.sdgsTerm .icons img {
		margin-left : 2.8vw
	}
}
@media only screen and (max-width: 640px) {
	.sdgsItem {
		display : block;
		margin-top : 10vw !important;
	}
	.sdgsItem .sdgsLeft {
		width : 100%;
	}
	.sdgsItem .sdgsRight {
		width : 100%;
		text-align : center;
		margin-top : 5vw;
	}
	.sdgsTerm {
		display : block;
		margin-top : 6vw !important;
	}
	.sdgsTerm .termBox {
		width : 100%;
		min-height : 0;
	}
	.sdgsTerm .termBox:last-child {
		margin-top : 4vw;
	}
}

/* 採用情報ページ---------------------------*/

.voiceTerm img {
	width : 90%;
	max-width : 843px;
}
.voiceItem {
	position : relative;
	cursor : pointer;
	margin : 0 5px;
	box-sizing: border-box;
}
.voiceItem img {
	width : 100%;
	max-width : 300px;
	position : relative;
	z-index : 1;
}
.voiceItem .voiceName {
	width : 86%;
	margin : -60px auto 0 auto;
	background-color : #ffffff;
	position : relative;
	padding : 20px;
	z-index : 2;
	box-sizing : border-box;
}
.voiceName h4 {
	display : inline-block;
	font-size : 1rem;
	color : #ffffff;
	font-weight : 400;
	line-height : 2.0;
	text-align : center;
	padding : 0 12px;
	background-color : #004ea0;
}
.voiceName h3 {
	font-size : 36px;
	color : #000000;
	font-weight : 500;
	line-height : 1.8;
}
.voiceName p {
	font-size : 1.1rem;
	color : #000000;
	font-weight : 400;
	line-height : 1.6;
}
.voiceName {
	box-shadow: 5px 5px 0px 0px rgba(228, 228, 228, 1);
}
.voiceItem .voiceName::after {
	content : "\025BC";
	display : block;
	text-align : center;
	font-size : 1.1rem;
	color : #004ea0;
	margin-top : 16px;
}
.voiceLeft .voiceName {
	width : 340px;
	background-color : #ffffff;
	position : relative;
	padding : 40px;
	box-sizing : border-box;
}
.voiceLeft .voiceName .word {
	margin-top : 20px;
	font-size : 0.95rem;
	line-height : 2.0;
}
.voiceBlock {
	background-color : #ffffff;
	overflow : visible !important;
}
.voiceDetail {
	overflow : visible !important;
	position : relative;
	display : none;
	transition: 0.8s;
}
.voiceDetail.active {
	display : block;
}
.voiceDetail .normalWrap {
	overflow : visible !important;
}
.voiceLeft {
	position : relative;
	top : -180px;
	width : 42%;
	max-width : 520px;
}
.voiceFaq {
	margin-top : 24px;
}
.voiceFaq h3 {
	font-size : 1.1rem;
	color : #004ea0;
	padding : 10px 0;
}
.voiceFaq h3::before {
	content : "Q";
	display : inline-block;
	margin-right : 6px;
	font-size : 1.2rem;
	color : #ffffff;
	font-weight : 500;
	line-height : 1.65;
	padding : 0 8px;
	background-color : #004ea0;
	border-radius : 50%;
	font-family: 'Inter', sans-serif;
}
.voiceFaq p {
	margin-top : 6px;
	font-size : 1.1rem;
	line-height : 2.0;
}
.voiceRight {
	position : absolute;
	top : -100px;
	right : 0;
	width : 50%;
	max-width : 960px;
}
.voiceRight img {
	width : 100%;
	
}
.onedayBlock {
	position : relative;
	display : none;
	transition: 0.8s;
}
.onedayBlock.active {
	display : block;
	padding-bottom : 100px;
}
.onedayBlock::before {
	content : "";
	position : absolute;
	top : 0;
	left : calc(50% - 2px);
	width : 4px;
	height : calc(100% - 160px);
	background-color : #004ea0;
}
.onedayTitle {
	width : 276px;
	height : 140px;
	background-color : #004ea0;
	margin-left : auto;
	margin-right : auto;
	border-radius : 0 0 140px 140px;
	position : relative;
	font-size : 0;
}
.onedayTitle h2 {
	width : 100%;
	text-align : center;
	font-size : 24px;
	color : #ffffff;
	line-height : 1.4;
	padding-bottom : 30px;
	margin-left : auto;
	margin-right : auto;
	border-radius : 0 0 50% 50%;
	position : absolute;
	top : 4px;
	left : 0;
}
.onedayTitle h2 span {
	font-size : 18px;
	display : block;
	line-height : 2.4;
}
.timeBlock {

}
.timeBlock .timeItem {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	align-items: center;
	margin-top : 60px;
}
.timeBlock .timeItem .timeLeft {
	width : 41%;
}
.timeBlock .timeItem .timeCenter {
	width : 16%;
	text-align : center;
	background-color : #004ea0;
	font-size : 0;
	width : 88px;
	height : 88px;
	position : relative;
	border-radius : 50%;
}
.timeBlock .timeItem .timeCenter span {
	position: absolute;
	top: 49%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	font-size : 24px;
	font-weight : 700;
	line-height : 1.0;
	color : #ffffff;
}
.timeBlock .timeItem .timeRight {
	width : 41%;
}
.timeBlock .workText {
	background-color : #ffffff;
	padding : 24px 30px;
	position : relative;
}
.timeBlock .workText h4 {
	font-size : 30px;
	color : #004ea0;
	margin-bottom : 10px;
}
.timeBlock .workText h4::before {
	content : "";
	display : inline-block;
	width : 20px;
	height : 20px;
	padding-right : 8px;
	background : url(/narasekisui/common/img/point.png) no-repeat center center;
}
.timeBlock .workText p {
	font-size : 1rem;
	line-height : 2.0;
}
.timeBlock .workImage {
	
}
.timeBlock .workImage img {
	width : 100%;
}
.timeLeft .workText::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 30px solid #ffffff;
}
.timeRight .workText::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -45px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-right: 30px solid #ffffff;
}
.blue_back {
	background-color : #004ea0;
}
.voiceChange {
	text-align : center;
	padding : 48px 0;
}
.voiceChange a {
	display : inline-block;
	position : relative;
	text-align : left;
	width : 45%;
	max-width : 356px;
	color : #004ea0;
	font-size : 1rem;
	font-weight : 700;
	letter-spacing: 1px;
	line-height : 3.6;
	margin : 0 1%;
	padding : 0 2.5%;
	background-color : #ffffff;
	border : 1px solid #ffffff;
	box-sizing: border-box;
	border-radius : 30px;
	transition: 0.3s;
}
.voiceChange a::after {
	content: '';
	width: 10px;
	height: 10px;
	border-top: solid 2px #004ea0;
	border-right: solid 2px #004ea0;
	position: absolute;
	right : 50px;
}
.voiceChange a.downer::after {
	transform: rotate(135deg);
	top: calc(50% - 8px);
}
.voiceChange a.upper::after {
	transform: rotate(-45deg);
	top: calc(50% - 2px);
}
.voiceChange a:hover {
	color : #ffffff;
	background-color : #004ea0;
}
.voiceChange a:hover::after {
	color : #ffffff;
}
.requireItem {
	width : 100%;
	max-width : 1000px;
	margin-left : auto;
	margin-right : auto;
	border : 1px solid #e4e4e4;
	padding : 60px;
	box-sizing: border-box;
}
.requireItem h2 {
	font-weight : 500;
}
.requireItem dl {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	border-bottom : 1px solid #e4e4e4;
}
.requireItem dl:first-of-type {
	border-top : 1px solid #e4e4e4;
}
.requireItem dt {
	width : 25%;
	font-size : 1rem;
	color : #004ea0;
	padding : 20px 0;
}
.requireItem dd {
	width : 75%;
	font-size : 1rem;
	padding : 20px 0;
}
.requireButton a {
	display : inline-block;
	margin : 10px auto;
	width : 240px;
	color : #004ea0;
	font-size : 1rem;
	font-weight : 500;
	line-height : 3.6;
	text-align : center;
	border : 1px solid #004ea0;
	background-color : #ffffff;
	border-radius : 40px;
	transition: 0.4s;
}
.requireButton a:hover {
	color : #ffffff;
	background-color : #004ea0;
}
.no-recruiting {
	border-top : 1px solid #c1c1c1;
	color : #ff0000;
}
@media only screen and (max-width: 1200px) {
	.voiceName h3 {
		font-size : calc(2.5vw + 6.0px);
	}
	.voiceItem .voiceName {
		padding : 2vw;
	}
}
@media only screen and (max-width: 1200px) {
	.voiceItem .voiceName {
		padding : 1.5vw;
		width : 90%;
	}
	.voiceName {
		box-shadow: 3px 3px 0px 0px rgba(228, 228, 228, 1);
	}
	.voiceName h4 {
		font-size : 0.9rem;
		line-height : 1.6;
		padding : 0 1.2vw;
	}
	.voiceName p {
		font-size : 0.9rem;
	}
	.voiceLeft .voiceName {
		width : 300px;
		padding : 4vw;
	}
}
@media only screen and (max-width: 640px) {
	.onedayBlock::before {
		top : 240px;
		left : 38px;
		height : calc(100% - 200px);
	}
	.onedayBlock.active {
		display : block;
		padding-bottom : 0px;
		background-color: #f4f4f4;
	}
	.voiceLeft {
		position : relative;
		top : -180px;
		width : 100%;
		max-width : 640px;
	}
	.voiceRight {
		position : relative;
		top : -140px;
		bottom : 0px;
		right : 0;
		width : 100%;
		max-width : 640px;
	}
	.onedayBlock {
		top : -146px;
	}
	.onedayTitle {
		width : 220px;
		height : 120px;
		border-radius : 0 0 120px 120px;
	}
	.onedayTitle h2 {
		width : 100%;
		text-align : center;
		font-size : 18px;
		color : #ffffff;
		line-height : 1.4;
		padding-bottom : 30px;
		margin-left : auto;
		margin-right : auto;
		border-radius : 0 0 50% 50%;
		position : absolute;
		top : 4px;
		left : 0;
	}
	.timeBlock .timeItem {
		display : -webkit-flex;
		display : flex;
		-webkit-justify-content : space-between;
		justify-content : space-between;
		flex-wrap : wrap;
		margin-top : 60px;
	}
	.timeBlock .timeItem .timeLeft {
		width : calc(100% - 80px);
	}
	.timeBlock .timeItem .timeCenter {
		display : inline-block;
		width : 60px;
		height : 60px;
		border-radius : 50%;
	}
	.timeBlock .timeItem .timeCenter  {
		-webkit-order: -1;
		order: -1;
	}
	.timeBlock .timeItem .timeCenter span {
		font-size : 16px;
	}
	.timeBlock .timeItem .timeRight {
		width : calc(100% - 80px);
		margin-left : 80px;
	}
	.timeBlock .workText {
		padding : 2.4vw 3vw;
	}
	.timeBlock .workText h4 {
		font-size : 1.6rem;
		margin-bottom : 14px;
	}
	.timeBlock .workText h4::before {
		position : relative;
		top : 2px;
	}
	.timeLeft .workText::before {
		left: -30px;
		margin-top: -10px;
		border: 10px solid transparent;
		border-right: 20px solid #ffffff;
	}
	.timeRight .workText {
		position : relative;
		top : -40px;
	}
	.timeRight .workText::before {
		left: -30px;
		margin-top: -10px;
		border: 10px solid transparent;
		border-right: 20px solid #ffffff;
	}
	.timeBlock .workImage {
		width : 100%;
	}
	.timeBlock .workImage img {
		width : 100%;
	}
	.voiceChange {
		padding : 5vw 0;
		margin-top : -120px;
	}
	.voiceChange a::after {
		right : 5vw;
	}
	.requireItem {
		width : calc(100% - 20px);
		margin-left : 10px;
		margin-right : 10px;
		padding : 6vw;
	}
	#hs_require {
		margin-top : 4vw;
	}
}
@media only screen and (max-width: 480px) {
	.voiceChange a {
		width : 90%;
		margin : 10px 0;
	}
}

/* 各ポリシー共通---------------------------*/

.ppWrap {
	margin-top : 60px;
}
.ppNormal {
	margin-top : 40px;
	font-size : 1rem;
	color : #626262;
	line-height : 2.0;
}
.ppNormal.nomgt {
	margin-top : 6px;
}
.ppTitle {
	font-size : 1.2rem;
	color : #626262;
	font-weight : 500;
}
.ppWrap dl {
	display : -webkit-flex;
	display : flex;
	margin-top : 6px;
}
.ppWrap dt {
	width : 1.4em;
	font-size : 1rem;
	color : #626262;
	line-height : 2.0;
}
.ppWrap dd {
	width : calc(100% - 1.4em);
	font-size : 1rem;
	color : #626262;
	line-height : 2.0;
}
.ppWrap dd p {
	font-size : 1rem;
	color : #626262;
	line-height : 2.2;
}
.ppWrap dd a {
	text-decoration : underline;
	text-underline-offset: 5px;
	color : #009ee8;
	transition: 0.3s;
}
.ppWrap dd a:hover {
	color : #000000;
}
.ppNormal a {
	color : #009ee8;
	transition: 0.3s;
}
.ppNormal a:hover {
	color : #000000;
}
.c-btnText {
	display : inline-block;
	line-height : 2.0;
	color : #004ea0;
	transition: 0.3s;
	position : relative;
	padding-right : 40px;
}
.c-btnText::after {
	content : "\025B6";
	position : absolute;
	top : 7px;
	right : 0;
	font-size : 10px;
	color : #004ea0;
	transition: 0.3s;
}
.c-btnText:hover {
	color : #000000;
}
.c-btnText:hover::after {
	color : #000000;
}

/* お知らせページ---------------------------*/

.newsMenu {
	display : -webkit-flex;
	display : flex;
	align-items: center;
}
.newsMenu .arcive_select {

}
.newsMenu .arcive_select select {
	display : inline-block;
	border : 1px solid #e4e4e4;
	font-size : 1.1rem;
	color : #004ea0;
	padding : 20px 48px;
	border-radius : 12px;
	background-color : #ffffff;
	margin-right : 16px;
}
.newsMenu .arcive_select option {
	font-size : 1.1rem;
	color : #004ea0;
}
.newsMenu .arcive_select button {
	border : 1px solid #004ea0;
	background-color : #004ea0;
	font-size : 1.1rem;
	color : #ffffff;
	padding : 12px 32px;
	border-radius : 36px;
	cursor : pointer;
	transition: 0.3s;
}
.newsMenu .arcive_select button:hover {
	background-color : #ffffff;
	color : #004ea0;
}
.newsMenu .category_select {
	width : 100%;
	max-width : 520px;
	margin-left : 80px;
}
.newsMenu .category_select span {
	font-size : 1.1rem;
	color : #626262;
	cursor : pointer;
	transition: 0.3s;
}
.newsMenu .category_select span.active {
	color : #004ea0;
	cursor : default;
	text-decoration: underline;
	text-underline-offset: 7px;
}
.newsMenu .category_select span:hover {
	color : #004ea0;
}
.newsMenu .category_select span::before {
	content : "";
	display : inline-block;
	width : 8px;
	height : 8px;
	border : 6px solid #cadbeb;
	border-radius : 50%;
	position : relative;
	top : 3px;
	margin-right : 8px;
	transition: 0.3s;
}
.newsMenu .category_select span.active::before {
	border : 6px solid #004ea0;
}
.newsMenu .category_select span:hover::before {
	border : 6px solid #004ea0;
}
.newsItem {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	align-items: center;
	padding : 30px 0;
	border-bottom : 1px solid #e4e4e4;
}
.newsItem h5 {
	font-size : 1rem;
	color : #626262;
	font-weight : 500;
	letter-spacing : 1px;
	width : 152px;
}
.newsItem p,
.caregoryIcon {
	font-size : 1rem;
	color : #626262;
	font-weight : 400;
	border : 1px solid #626262;
	line-height : 2.0;
	text-align : center;
	width : 98px;
	border-radius : 24px;
}
.newsItem a {
	display : inline-block;
	font-size : 1rem;
	font-weight : 500;
	color : #004ea0;
	letter-spacing : 1px;
	width : calc(100% - 250px);
	padding-left : 40px;
	box-sizing: border-box;
	transition: 0.3s;
}
.newsItem a:hover {
	color : #000000;
}
.newsDetailWrap h3 {
	font-size : 28px;
	letter-spacing: 2px;
	font-weight : 700;
	color : #004ea0;
	padding : 6px 0;
}
.newsDetailWrap .date p {
	font-size : 1rem;
	letter-spacing: 1px;
	font-weight : 400;
	color : #626262;
}
.newsDetailItem p {
	font-size : 1.1rem;
	font-weight : 400;
	color : #626262;
	line-height : 2.0;
}
.newsDetailImage img {
	width : 100%;
	max-width : 1000px;
}
@media only screen and (max-width: 1000px) {
	.newsMenu {
		display : block;
	}
	.newsMenu .category_select {
		width : 100%;
		max-width : 520px;
		margin-left : 0px;
		margin-top : 40px;
	}
}
@media only screen and (max-width: 640px) {
	.newsItem {
		-webkit-justify-content : flex-start;
		justify-content : flex-start;
		flex-wrap : wrap;
		padding : 3vw 0;
	}
	.newsItem h5 {
		width : 152px;
	}
	.newsItem p,
	.caregoryIcon {
		width : 98px;
	}
	.newsItem a {
		display : block;
		letter-spacing : 0;
		width : calc(100% - 10px);
		padding-left : 10px;
		padding-top : 10px;
	}
	.newsDetailWrap h3 {
		font-size : calc(2.5vw + 10.0px);
		letter-spacing: 1px;
	}
}
@media only screen and (max-width: 480px) {
	.newsMenu .category_select span::before {
		margin-right : 4px;
	}
	.newsMenu .arcive_select select {
		padding : 2vw 4.8vw;
	}
	.newsMenu .arcive_select button {
		padding : 1.2vw 3.2vw;
	}
}

/* お問い合わせページ---------------------------*/

.contactWrap {
	width : 100%;
	max-width : 1000px;
	margin-left: auto;
	margin-right: auto;
}
.contactWrap h3 {
	font-size : 1.1rem;
	color : #535353;
	font-weight : 500;
}
.contactWrap .tel a {
	color : #535353;
	font-weight : 400;
	line-height : 2.0;
}
.contactWrap h4 {
	font-size : 1.2rem;
	color : #333333;
	font-weight : 400;
}
.contactWrap p {
	font-size : 1.1rem;
	color : #535353;
	font-weight : 400;
}
.contactWrap .mailButton {
	
}
.contactWrap .mailButton a {
	display : inline-block;
	width : 80%;
	max-width : 280px;
	color : #ffffff;
	font-size : 0.95rem;
	background : #004ea0 url(/narasekisui/common/img/mail.png) no-repeat center left 20px;
	border : 1px solid #004ea0;
	padding : 16px 0;
	position : relative;
	transition: 0.3s;
}
.contactWrap .mailButton a::after {
	content : "";
	display : block;
	position : absolute;
	width : 10px;
	height : 10px;
	top : 22px;
	right : 20px;
	border-left : 2px solid #ffffff;
	border-top : 2px solid #ffffff;
	transform: rotate(135deg);
	transition: 0.3s;
}
.contactWrap .mailButton a:hover {
	color : #004ea0;
	background : #ffffff url(/narasekisui/common/img/mail.png) no-repeat center left 20px;
}
.contactWrap .mailButton a:hover::after {
	border-left : 2px solid #004ea0;
	border-top : 2px solid #004ea0;
}

/* 採用情報ページ---------------------------*/

.siteWrap {
	width : 100%;
	background-color : #ffffff;
	padding : 64px;
	box-sizing: border-box;
}
.siteWrap .homeLink {
	font-size : 20px;
	font-weight : 500;
}
.siteWrap .homeLink a {
	color : #004ea0;
}
.siteWrap .pages {
	border : 1px solid #e4e4e4;
	padding : 20px 24px 50px 24px;
	position : relative;
	margin-top : 50px;
}
.siteWrap .pages h3 {
	display : inline-block;
	background-color : #ffffff;
	position : relative;
	top : -37px;
	padding : 0 6px;
	color : #004ea0;
	font-size : 20px;
	font-weight : 500;
}
.siteWrap .pages ul {
	display : -webkit-flex;
	display : flex;
	flex-wrap : wrap;
}
.siteWrap .pages li {
	margin-left : 40px;
}
.siteWrap .pages a {
	font-size : 16px;
	color : #000000;
	transition: 0.3s;
}
.siteWrap .pages a:hover {
	color : #004ea0;
}
@media only screen and (max-width: 1200px) {
	.siteWrap {
		padding : 6.4vw;
	}
	.siteWrap .pages {
		border : 1px solid #e4e4e4;
		padding : 20px 2.4vw 50px 2.4vw;
		position : relative;
		margin-top : 50px;
	}
	.siteWrap .pages li {
		margin-left : 20px;
	}
}
@media only screen and (max-width: 480px) {
	.siteWrap .pages {
		margin-top : 36px;
	}
	.siteWrap .pages ul {
		display : block;
	}
	.siteWrap .pages a {
		line-height : 2.2;
		display : block;
	}
}

/* フッター包括---------------------------*/

footer {
	position: relative;
	z-index: 3;
	background-color : #f4f4f4;
	text-align : center;
}
.footMenu {
	width : 100%;
	max-width : 800px;
	margin : 0 auto;
	padding : 40px 10px;
	box-sizing: border-box;
}
.footMenu a {
	display : inline-block;
	font-size : 1rem;
	color : #000000;
	letter-spacing: 1px;
	transition: 0.3s;
}
.footMenu a::before {
	content : ">";
	font-family: 'Source Serif Pro', serif;
	color : #a1a1a1;
	font-size : 1.4rem;
	display : inline-block;
	padding-right : 6px;
	position : relative;
	top : 1px;
}
.footMenu a:hover {
	color : #004ea0;
}
.footSns {
	text-align : center;
	margin-bottom : 60px;
	/* SNS開設時に削除する */
	/*display : none;*/
}
.footSns a {
	display : inline-block;
	margin : 0 10px;
	transition: 0.3s;
}
.footSns a:hover {
	opacity : 0.7;
}
.footLogo {
	margin-bottom : 40px;
}
.footLogo img {
	width : 148px;
}
.footAddr p {
	font-size : 1rem;
	letter-spacing: 1px;
	color : #606060;
}
.footAddr a {
	color : #606060;
}
.footMap {
	margin-top : 20px;
}
.footMap a {
	display : inline-block;
	color : #ffffff;
	background-color : #404040;
	border : 1px solid #404040;
	width : 180px;
	text-align : center;
	padding : 12px 0;
	transition: 0.3s;
}
.footMap a:hover {
	color : #404040;
	background-color : #ffffff;
}
.copyright {
	text-align: center;
	font-size: 14px;
	color: #808080;
	padding: 40px 0 76px 0;
}
@media only screen and (max-width: 640px) {
	.footMenu {
		margin : 0 auto;
		padding : 8vw 10px 4vw 10px;
	}
	.footMenu a {
		display : inline-block;
		min-width : 16em;
		letter-spacing: 1px;
		white-space: nowrap;
		text-align: left;
	}
	.footSns {
		margin-bottom : 6vw;
	}
	.copyright {
		font-size: 12px;
		padding: 4vw 0 7.6vw 0;
	}
}

.wrapPageTopPc  {
    position: fixed;
    bottom : 20px;
    right: 6px;
    z-index: 99;
	text-align : center;
    width : 64px;
	cursor : pointer;
}
.wrapPageTopPc p {
    text-align : center;
	background-color : #96bf97;
	font-size : 16px;
	font-weight : bold;
	color : #ffffff;
	border : 2px solid #96bf97;
	border-radius : 14px;
	line-height : 1.4;
	padding : 8px 0 7px 0;
	transition: 0.4s;
}
.wrapPageTopPc p span {
	display : block;
	font-size : 16px;
}
.wrapPageTopPc p:hover {
	background-color : #ffffff;
	color : #96bf97;
}
