@charset "utf-8";
/* base
==================================*/
	h1,h2,h3,h4,h5,h6,p,pre,blockquote,ul,li,ol,dl,dd,tr {
		font-size: 16px;
	}
	.sp {
		display:none !important;
	}

	a {
		color:#000;
		text-decoration:none;
		transition: .3s;
	}
	a:visited {
		color:#000;
		text-decoration:none;
	}
	a:hover {
		color:#000;
		text-decoration: none;
	}
	a:active {
		color:#000;
		text-decoration: none;
	}

/* Contents
==================================*/
	div#AllBox{
	}
	a.tel{
		pointer-events: none;
		cursor: default;
	}

  #TitleArea {
	margin-bottom: 15px;
	background:url(/images/common/bg_under.jpg) no-repeat center bottom;
	background-size:cover;
    height: 200px;
  }
	@media screen and (-webkit-min-device-pixel-ratio:2),(min-resolution: 2dppx){
  #TitleArea {
	background:url(/images/common/bg_under@2x.jpg) no-repeat center bottom;
	background-size:cover;
  }
 	}
  #TitleArea h2 {
    text-align: center;
    font-size: 40px;
    font-weight: 500;
	color:#FFFFFF;
    padding: 78px 0 0;
  }

  #Pan {
	width: 88vw;
    max-width: 1090px;
    margin: 0 auto 74px;
  }
  #Pan ul {
	width:100%;
    clear: both;
    overflow: hidden;
  }
  #Pan ul li {
	float:left;
	padding-right:14px;
	margin-right:9px;
	background:url(/ooyagi/images/common/icon_arrow_green.svg) no-repeat right center;
	background-size:5px 7px;
	font-size: 14px;
  }
  #Pan ul li:last-child {
	padding-right:0;
	margin-right:0;
	background:none;
  }

/* main
==================================*/
	main {
		display: block; /*IE対策*/
		padding: 110px 0 0;
	}

/* header
==================================*/
	header {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 999;
		background: #fff;
		width: 100%;
		height: 110px;
	}
	header::after{
		position: absolute;
		left: 0;
		right: 0;
		bottom: -7px;
		content: "";
		background: url(/images/common/nav_shadow.png) repeat-x;
		width: 100%;
		height: 7px;
	}
	header .header_inner{
		display: flex;
		justify-content: space-between;
	}
	header h1{
		width: 178px;
		margin: 27px 0px 0 36px;
	}

	header nav{
	}
	header nav ul{
		display: flex;
	}
	header nav ul li a{
		box-sizing: border-box;
		display: block;
		width: 126px;
		height: 110px;
		padding: 25px 0;
		text-align: center;
	}
	header nav ul li.nav06 a{
		color: #fff;
		background: #59c444;
	}
	header nav ul li.nav07 a{
		color: #fff;
		background: #02a240;
	}
	header nav ul li a:hover,
	header nav ul li.nav01 a.here,
	header nav ul li.nav04 a.here,
	header nav ul li.nav05 a.here{
		color: #028534;
		background: #f2faf5;
	}
	header nav ul li.nav06 a:hover{
		color: #fff;
		background: #59c444;
		opacity: .7;
	}
	header nav ul li.nav07 a:hover{
		color: #fff;
		background: #02a240;
		opacity: .7;
	}
	header nav ul li.nav01 img{ width: 30px; padding: 2px 0 10px;}
	header nav ul li.nav02 img{ width: 30px; padding: 1px 0 8px;}
	header nav ul li.nav03 img{ width: 39px; padding: 2px 0 8px;}
	header nav ul li.nav04 img{ width: 30px; padding: 0 0 8px;}
	header nav ul li.nav05 img{ width: 22px; padding: 0 0 5px;}
	header nav ul li.nav06 img{ width: 30px; padding: 0 0 11px;}
	header nav ul li.nav07 img{ width: 24px; padding: 1px 0 7px;}
	header nav ul li a p{
		font-weight: 500;
		line-height: 20px;
		letter-spacing: 0.02em;
	}
  header nav ul > li.nav05 > a p{
    letter-spacing: -0.12em;
  }
	@media screen and (max-width: 1112px){
		header nav ul li a{
			width: 115px;
		}
		header nav ul li a p{
			font-size: 15px;
		}
	}


/* footer_recruit
==================================*/
	footer .footer_recruit{
    position: relative;
    background: url(/images/common/bannar_recruit.jpg) no-repeat;
    background-size: cover;
    background-position: center right;
    /*width: 88vw;*/
    max-width: 1200px;
    height: 222px;
    margin: auto;
  }
  @media screen and (max-width: 1260px){
    footer .footer_recruit{
      margin: 0 20px;
    }
  }
	@media screen and (-webkit-min-device-pixel-ratio:2),(min-resolution: 2dppx){
		footer .footer_recruit{
			background: url(/images/common/bannar_recruit@2x.jpg) no-repeat;
			background-size: contain;
			background-position: center;
		}
	}
	footer .footer_recruit h3{
		position: absolute;
		top: 50%;
		left: 13.4vw;
		color: #fff;
		font-size: 36px;
		font-weight: 500;
		transform: translateY(-50%);
	}
	footer .footer_recruit p{
		color: #fff;
		width: 448px;
    margin: auto;
		padding: 3.2vw 0 15px 152px;
		line-height: 26px;
	}
	@media screen and (min-width: 1366px){
		footer .footer_recruit p{
			padding-top: 44px;
		}
	}
	footer .footer_recruit a{
		box-sizing: border-box;
  	display: block;
  	color: #fff;
  	background: #02a240 url(/images/common/icon_arrow_wh.svg) no-repeat;
  	background-size: 10px 14px;
  	background-position: center right 15px;
  	width: 300px;
  	height: 60px;
  	margin: auto;
  	padding: 0 10px 0 0;
  	font-size: 20px;
  	font-weight: 500;
  	line-height: 60px;
  	letter-spacing: 0.2em;
  	text-align: center;
	}
	footer .footer_recruit a:hover{
		opacity: .7;
	}


/* footer_bannar
==================================*/
  footer .footer_bannar{
  	padding: 40px 20px 79px;
  }
  footer .footer_bannar ul{
  	display: flex;
  	justify-content: space-between;
  	max-width: 1200px;
  	margin: auto;
  }
  footer .footer_bannar ul li{
    width: calc((100% - 40px) / 5);
  }
  footer .footer_bannar ul li a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 230px;
    height: 5.637vw;
    max-height: 79px;
    border: 1px solid #e2e2e2;
  }
  footer .footer_bannar ul li a:hover{
  	opacity: .7;
  }
  footer .footer_bannar ul li.bannar01 img{ width: 13.983vw; max-width: 191px; height: 29px; }
  footer .footer_bannar ul li.bannar02 img{ width: 13.104vw; max-width: 179px; height: 34px; }
  footer .footer_bannar ul li.bannar03 img{ width: 12.153vw; max-width: 166px; height: 42px; }
  footer .footer_bannar ul li.bannar04 img{ width: 11.347vw; max-width: 155px; height: 42px; }
  footer .footer_bannar ul li.bannar05 img{ width: 14.495vw; max-width: 198px; height: 31px; }


/* footer_contact
==================================*/
  footer .footer_contact{
  	background: url(/images/common/bg_contact.jpg);
  	text-align: center;
  	padding: 50px 0;
  }
  footer .footer_contact h3{
  	font-size: 36px;
  	font-weight: 500;
  }
  footer .footer_contact > p{
  	padding: 30px 0 20px;
  }
  footer .footer_contact .wrap{
  	display: flex;
  	justify-content: center;
  	align-items: flex-end;
  }
  footer .footer_contact .wrap p{
  	color: #02a240;
  	margin: 0 39px 0 0;
  	font-family: 'Yantramanav', sans-serif;
  	font-size: 26px;
  }
  footer .footer_contact .wrap p a{
  	color: #02a240;
  	font-size: 40px;
  }
  footer .footer_contact .wrap p span{
  	display: block;
  	color: #777777;
  	font-size: 14px;
  	font-weight: 500;
  	text-align: right;
  }
  footer .footer_contact .wrap > a{
  	box-sizing: border-box;
  	display: block;
  	color: #fff;
  	background: #02a240 url(/images/common/icon_arrow_wh.svg) no-repeat;
  	background-size: 10px 14px;
  	background-position: center right 15px;
  	width: 300px;
  	height: 60px;
  	padding: 0 10px 0 0;
  	font-size: 20px;
  	font-weight: 500;
  	line-height: 60px;
  	text-align: center;
  }
  footer .footer_contact .wrap > a:hover{
  	opacity: .7;
  }


/* footer_links
==================================*/
  footer .footer_links{
  	background: #303030;
  	padding: 45px 0 0;
  }
  footer .footer_links nav{
  	margin: 0 0 64px;
  }
  footer .footer_links nav ul{
    display: flex;
    justify-content: center;
  	color: #fff;
  	font-weight: 500;
  }
  footer .footer_links nav ul li{
  	background: url(/images/common/icon_arrow_wh.svg) no-repeat;
  	background-size: 5px 7px;
  	background-position: center left 1px;
    margin: 0 46px 0 0;
  	padding: 0 0 0 14px;
  	transition: .3s;
  }
  footer .footer_links nav ul li:last-child{
    margin: 0;
  }
  footer .footer_links nav ul li:hover{
  	background-position: center left 5px;
  }
  footer .footer_links nav ul li a{
  	color: #fff;
  	font-weight: 500;
  	line-height: 36px;
  }
  footer .footer_links nav ul li a:hover{
  	text-decoration: underline;
  }
  footer .footer_links .footer_info{
  	display: flex;
  	justify-content: center;
  	align-items: flex-end;
  	padding: 0 0 40px;
  }
  footer .footer_links .footer_info .logo{
  	width: 176px;
  	margin: 0 20px 0 0;
  }
  footer .footer_links .footer_info address{
  	color: #fff;
  	font-style: normal;
  	font-size: 14px;
  	font-weight: 500;
  	line-height: 20px;
  }
  footer .footer_links .footer_info address a{
  	color: #fff;
  }
  footer .footer_links .copy{
  	background: #fff;
  	padding: 20px 0;
  	text-align: center;
  }
  footer .footer_links .copy small{
  	font-size: 14px;
  	opacity: .6;
  }

  #pageTop{
  	opacity: 0;
  	position: fixed;
  	right: 20px;
  	bottom: 94px;
  	z-index: 888;
  	transition: .3s;
  }
  #pageTop.active{
  	opacity: 1;
  }
  #pageTop a{
  	display: block;
  	color: #59c444;
  	width: 63px;
  	font-family: 'Yantramanav', sans-serif;
  	font-size: 13px;
  	text-align: center;
  }
  #pageTop a img{
  	padding: 0 0 5px;
  }
  #pageTop a:hover{
  	opacity: .7;
  }



