@charset "utf-8";

/* firefoxでページ移動の際、コンテンツが少なくても中心がずれないようにする */
html {
	overflow-y: scroll;
}
body,
div,
p,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h3,
h5,
h6,
form,
input,
textarea,
header,
footer,
nav {
	margin: 0;
	padding: 0;
	zoom: 1;
	color : #4c4c4c;
	-webkit-text-size-adjust: 100%;
	font-family: 'Noto Sans JP', sans-serif;
}
.kiwi {
	font-family: 'Kiwi Maru', serif;
}
.jose {
	font-family: 'Josefin Sans', sans-serif;
}
.ore {
	color : #f19049;
}
.noto {
	font-family: 'Noto Sans JP', sans-serif !important;
}
.bold {
	font-weight : 700;
}

ul,
ol {
	list-style-type: none;
}

img {
	border: none;
}
.colb {
	color : #000000;
}
.colg {
	color : #157246;
}
b span {
	color : #cc0000;
}

hr {
	display: none;
	margin: 0;
	padding: 0;
	width: 1px;
	height: 1px;
}

a {
	outline: none;
	text-decoration: none;
	color : #000000;
	transition: 0.3s;
}
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;
}
html {
	width : 100%;
	overflow-x : hidden;
}

body {
	line-height: 1.6;
	font-style: normal;
	font-weight: normal;
	background-color : #ffffff;
	overflow : hidden;
}

#container {
	width: 100%;
	overflow: hidden;
}

@media only screen and (max-width: 400px) {
	#container {
		overflow: hidden;
	}
}

#nonimages,
#opnimages {
	position: absolute;
	top: -1000px;
	left: -1000px;
}

#nonimages div {
	display: none;
}

#nonimages div img {
	display: none;
}

#opnimages div {
	display: none;
}

#opnimages div img {
	display: none;
}

/* -------------------------------------------------------------------
 clearfix
------------------------------------------------------------------- */

.clearfix:before,
.clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

/* For IE 6/7 */
.clearfix {
	zoom: 1;
}
.wrapHeaderTop {
	width : 100%;
	position: fixed;
	top : 0;
	left : 0;
	z-index : 98;
	height : 124px;
	background-color : #1e9f9f;
	transition: 0.4s;
}
.wrapHeaderTop.else {
	background-color : #ffffff;
}
.wrapHeaderTop.active {
	height : 80px;
	background-color : #ffffff;
}
#header {
	width : 100%;
	position : relative;
	box-sizing: border-box;
	margin : 0 auto;
}
.wrapHeaderElse {
	width : 100%;
	position: fixed;
	top : 0;
	left : 0;
	z-index : 98;
	height : 124px;
}
.wrapHeaderTop .headMenuInner {
	position: absolute;
	width : 50%;
	max-width : 950px;
	top : 50px;
	left : 320px;
}
.wrapHeaderTop .headMenu a {
	font-size : 1rem;
	font-weight : 500;
	letter-spacing: 1px;
	color : #ffffff;
	position : relative;
	display : inline-block;
	transition: 0.4s;
}
.wrapHeaderTop.else .headMenu a {
	color : #000000;
}
.wrapHeaderTop .headMenu a::after {
	position: absolute;
	bottom: -10px;
	left: 50%;
	content: '';
	width: 0;
	height: 2px;
	background-color: #ffffff;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.wrapHeaderTop.else .headMenu a::after {
	background-color: #1e9f9f;
}
.wrapHeaderTop .headMenu a:hover {
	color : #e1e1e1;
}
.wrapHeaderTop.else .headMenu a:hover {
	color : #b1b1b1;
}
.wrapHeaderTop .headMenu a:hover::after {
	width: 60%;
}
.wrapHeaderTop.active .headMenuInner {
	top : 24px;
	left : 320px;
}
.wrapHeaderTop.active .headMenu a {
	color : #000000;
}
.wrapHeaderTop.active .headMenu a::after {
	position: absolute;
	bottom: -10px;
	left: 50%;
	content: '';
	width: 0;
	height: 2px;
	background-color: #1e9f9f;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.wrapHeaderTop.active .headMenu a:hover {
	color : #1e9f9f;
}
.wrapHeaderTop.active .headMenu a:hover::after {
	width: 60%;
}

.wrapHeaderTop .headLogo {
	position: absolute;
	top : 0px;
	left : 0px;
	transition: 0.3s;
	z-index : 10;
	padding: 40px 38px 36px 40px;
	background-color : #1e9f9f;
}
.wrapHeaderTop .headLogo img {
	width: 161px;
}
.wrapHeaderTop.active .headLogo {
	position: absolute;
	top : 0px;
	left : 50px;
	transition: 0.3s;
	z-index : 10;
	padding : 16px 16px 12px 16px;
	background-color : #1e9f9f;
}
.wrapHeaderTop.active .headLogo img {
	width: 80px;
}
.headLogoSub {
	height : 104px;
	padding : 14px 0 0 32px;
	box-sizing: border-box;
}
.headLogoSub img {
	width : 359px;
}
.admin_headMenuInner {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	position: relative;
}
.headTels {
	position: absolute;
	top : 30px;
	right : 330px;
	width : 60%;
	max-width : 860px;
	box-sizing: border-box;
	z-index: 97;
	transition: all 0.6s;
}
.headMenu ul {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.headMenu li {
	display: block;
	color: #4c2b0a;
}
.wrapHeaderTop .headMenu .main li a {
	color: #ffffff;
	font-size: 1.1rem;
	font-weight: 500;
	text-decoration: none;
	display: block;
	line-height: 1.6;
	padding: 10px 0;
	position: relative;
	transition: .5s;
}
.wrapHeaderTop .headMenu .main li a::after {
	position: absolute;
	bottom: 0px;
	left: 50%;
	content: '';
	width: 0;
	height: 2px;
	background-color: #ffffff;
	transition: .5s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.wrapHeaderTop.active .headMenu .main li a {
	color: #327851;
}
.wrapHeaderTop.active .headMenu .main li a::after {
	background-color: #327851;
}
.wrapHeaderTop .headMenu .main.dtl li a {
	color: #327851;
}
.wrapHeaderTop .headMenu .main.dtl li a::after {
	background-color: #327851;
}
.wrapHeaderTop .headMenu .main a:hover::after {
	width: 60%;
}
.wrapHeaderTop .headMenu .main li a h4 {
	font-size: 0.85rem;
}
.inMenuFlex .headMenu li {
	font-size: 20px;
}
.inMenuFlex .headMenu .main li a {
	font-size: 20px;
	padding: 14px 0;
}
.headMenu .main li span {
	display: inline-block;
	vertical-align: top;
	color: #b8b8b8;
	font-size: 24px;
	line-height: 1.0;
	padding: 0 12px;
	position: relative;
	top: -6px;
}
.headOver {
	position : absolute;
	bottom : 60px;
	left : 0;
	width : 100%;
	text-align : left;
	padding-left : 60px;
	box-sizing: border-box;
	z-index : 95;
	animation: ho-fadeIn 2s cubic-bezier(0.19, 1, 0.22, 1);;
}
.headOverInner {
	display : inline-block;
	padding : 0;
}
.headOverInner h2 {
	line-height : 1.4;
	font-weight : 600;
	color : #ffffff;
	margin-bottom : 8px;
}
.headOverInner h3 {
	font-size : 1rem;
	line-height : 1.6;
	letter-spacing: 2px;
	font-weight : 500;
	color : #ffffff;
	margin-left : 8px;
	padding-top : 8px;
	border-top : 2px solid #ffffff;
}
@keyframes ho-fadeIn {
  from {
    opacity: 0;
    transform: translateX(-600px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.wrapHeaderTop .headTel {
	display: block;
	position: absolute;
	top: 32px;
	right: 200px;
	z-index: 9;
	width: 174px;
	text-align: center;
}
.headTel a {
	display: inline-block;
	margin: 0 14px;
}
.headTel span {
	display: inline-block;
	text-align: left;
	width: calc(100% - 40px);
	height: 32px;
	line-height: 1.0;
	padding-top: 5px;
	padding-left: 40px;
	font-weight: 500;
	font-size: 24px;
	color: #010101;
	text-decoration: none;
	background: url(../img/tel_mark.png) no-repeat left top 3px;
	transition: .5s;
	vertical-align: top;
}
.wrapHeaderTop .headSns {
	position : absolute;
	top : 36px;
	right : 160px;
	z-index : 98;
	text-align : center;
}
.wrapHeaderTop.active .headSns {
	top : 12px;
}
.wrapHeaderTop .headSns a {
	position : relative;
	display : inline-block;
	margin : 8px 0;
	width : 50px;
	height : 40px;
	font-size : 0;
	transition: 0.3s;
}
.wrapHeaderTop .headSns span {
	font-size : 1rem;
	color : #ffffff;
	font-weight : 400;
	display : inline-block;
	margin-right : 20px;
}
.wrapHeaderTop.else .headSns span {
	color : #000000;
}
.wrapHeaderTop.active .headSns span {
	color : #000000;
}
.wrapHeaderTop .headSns #icon_ins {
	background : url(../img/ins.png) no-repeat center center;
}
.wrapHeaderTop .headSns #icon_x {
	background : url(../img/x.png) no-repeat center center;
}
.wrapHeaderTop .headSns #icon_line {
	background : url(../img/line.png) no-repeat center center;
}
.wrapHeaderTop.else .headSns #icon_ins {
	background : url(../img/ins2.png) no-repeat center center;
}
.wrapHeaderTop.else .headSns #icon_x {
	background : url(../img/x2.png) no-repeat center center;
}
.wrapHeaderTop.else .headSns #icon_line {
	background : url(../img/line2.png) no-repeat center center;
}
.wrapHeaderTop.active .headSns #icon_ins {
	background : url(../img/ins2.png) no-repeat center center;
}
.wrapHeaderTop.active .headSns #icon_x {
	background : url(../img/x2.png) no-repeat center center;
}
.wrapHeaderTop.active .headSns #icon_line {
	background : url(../img/line2.png) no-repeat center center;
}
.headSns a:hover {
	opacity : 0.7;
}
.openSns {
	text-align : center;
}
.openSns a {
	position : relative;
	display : inline-block;
	margin : 8px 0;
	width : 40px;
	height : 40px;
	font-size : 0;
	transition: 0.3s;
}
.openSns a img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.openSns a:hover {
	opacity : 0.7;
}
.headEig {
	padding : 40px 0 40px 94px;
}
.headEig div {
	color : #ffffff;
	font-weight : 500;
	letter-spacing: 1px;
}
.headEig a {
	color : #ffffff;
}
.headScroll {
	position: absolute;
	bottom : 20px;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
}
.headScroll.active {
	top : 60vh;
}
.headScroll .scrollDown {
	display: flex;
	align-items: center;
	width : 100%;
	font-size : 1rem;
	letter-spacing: 1px;
	color : #ffffff;
	font-weight : 400;
	text-align : center;
	opacity : 1;
	cursor : pointer;
}
.headScroll .scrollArrow {
	display ; block;
	margin : 10px auto;
	width : 2px;
	height : 50px;
	overflow : hidden;
}
.headScroll .scrollArrowInner {
	display ; inline-block;
	width : 2px;
	height : 50px;
	background-color : #ffffff;
	animation: arrowMove 2s infinite linear;
	transform: translate(0, -100px);
}
.headScroll .scrollArrowInner.active {
	background-color : #000000;
	animation: arrowMoveUp 2s infinite linear;
	transform: translate(0, 100px);
}
@keyframes arrowMove {
	to {
		  transform: translate(0, 100px);
	}
}
@keyframes arrowMoveUp {
	to {
		  transform: translate(0, -100px);
	}
}
@media only screen and (max-width: 1630px) {
	.headTels.sub {
		max-width : 720px;
	}
}
@media only screen and (max-width: 1580px) {
	.wrapHeaderTop .headMenuInner {
		width : calc(100% - 440px);
		top : 70px;
	}
	.wrapHeaderTop.active .headMenuInner {
		width: 50%;
		top : 24px;
	}
	.headMenu .main li a {
		font-size: 1rem;
	}
	.wrapHeaderTop .headTels {
		width : 50%;
	}
}
@media only screen and (max-width: 1530px) {
	.wrapHeaderTop .headTels {
		position: absolute;
		right : 100px;
		top : 57px;
		width : 60%;
	}
	.wrapHeaderTop .headSns {
		top : 8px;
	}
	.wrapHeaderTop.active .headSns span {
		display : none;
	}
}
@media only screen and (max-width: 1300px) {
	.wrapHeaderTop.active .headSns {
		display : none;
	}
	.wrapHeaderTop.active .headMenuInner {
		width : calc(100% - 400px);
		left : 240px;
	}
}
@media only screen and (max-width: 1240px) {
	.wrapHeaderTop .headLogo {
		padding: 30px 30px 26px 28px;
	}
	.wrapHeaderTop .headLogo img {
		width: 130px;
	}
	.wrapHeaderTop .headMenuInner {
		width : calc(100% - 400px);
		left : 240px;
		top : 70px;
	}
	.headOver {
		padding-left : 6vw;
	}
	.wrapHeaderTop .headTels.sub {
		width : 70%;
		right : 104px;
		top : 60px;
	}
	.headEig {
		padding : 40px 0 40px 40px;
	}
}
@media only screen and (max-width: 1140px) {
	.wrapHeaderTop .headLogo {
		padding : 30px 30px 26px 30px;
	}
	.wrapHeaderTop.active .headLogo {
		left : 0;
	}
	.wrapHeaderTop.active .headMenuInner {
		width : calc(100% - 280px);
		left : 140px;
	}
	.wrapHeaderTop .headMenuInner {
		width : calc(100% - 300px);
		left : 200px;
	}
	.wrapHeaderTop .headSns {
		right : 100px;
	}
}
@media only screen and (max-width: 1000px) {
	.lineWindow {
		display : none;
	}
}
@media only screen and (max-width: 900px) {
	.wrapHeaderTop {
		height : 80px;
	}
	.wrapHeaderTop.active .headMenuInner {
		display : none;
	}
	.wrapHeaderTop .headMenuInner {
		display : none;
	}
	.wrapHeaderTop .headSns {
		display : none;
	}
	.headScroll {
		top : auto;
		bottom : 20px;
	}
}
@media only screen and (max-width: 720px) {
	.wrapHeaderTop .headLogo {
		padding : 16px 16px 12px 16px;
	}
	.wrapHeaderTop .headLogo img {
		width: 80px;
	}
	.headEig {
		padding : 40px 0 40px 4vw;
	}
	.mgt100.dp720 {
		margin-top : 0 !important;
	}
	.headLogoSub img {
		width: 60vw;
		max-width : 359px;
		top: 50%;
		left: 0;
		transform: translateY(-60%);
		-webkit-transform: translateY(-60%);
		position : relative;
	}
	.headSns {
		top: 110px;
	}
	.headSns a {
	  display: inline-block;
	  margin: 6px;
	}
	.headOverInner h3 br {
 		display : none;
	}
}
@media only screen and (max-width: 640px) {
	.wrapHeaderTop {
		height : 78px;
	}
	.wrapHeaderElse {
		height : 78px;
	}
	.headLogo {
		top : 8px;
		left : 10px;
	}
	.wrapHeaderTop .headLogo h2 {
		width : 64px;
		height : 64px;
		background-size : 64px;
		font-size : 13px;
		letter-spacing: 0px;
		padding-top : 18px;
	}
	.wrapHeaderTop .headLogo h1 {
		padding-left : 0px;
	}
	.wrapHeaderTop .headLogo strong {
		font-size : 30px;
		letter-spacing: 3.5px;
	}
	.wrapHeaderTop .headLogo span {
		left : 4px;
		font-size : 20px;
		letter-spacing: 6px;
	}
	.headOver {
		width : 94%;
		top : 68%;
	}
	.headLogo img {
		width : 60vw;
		max-width: 319px;
	}
	.headOverInner h3 {
		letter-spacing: 1px;
		font-size : calc(1.25vw + 4.0px);
		margin-left : 0;
	}
}
@media only screen and (max-width: 480px) {
	.headScroll {
		left: 80%;
		white-space: nowrap;
	}
	.lineWindow {
		position : absolute;
		top : -5vw;;
		right : 0px;
		width : 100%;
		text-align : center;
	}
	.lineWindow img {
		width : 70vw;
		max-width : 354px;
	}
	.headSns a {
		width : 30px;
		height : 30px;
	  	margin: 6px 4px;
	}
	.headSns a img {
		transform: translateY(-50%) translateX(-50%) scale(0.6, 0.6);
		-webkit- transform: translateY(-50%) translateX(-50%) scale(0.6, 0.6);
	}
	.openMenu .headSns a img {
		transform: translateY(-50%) translateX(-50%) scale(0.6, 0.6);
		-webkit- transform: translateY(-50%) translateX(-50%) scale(0.6, 0.6);
	}
	.headMenu .main li a:hover::before {
		left: -24px;
	}
	.headMenu .main li:nth-of-type(1) a:hover {
		padding-left : 0px;
	}
	.headMenu .main li:nth-of-type(2) a:hover {
		padding-left : 0px;
	}
	.headMenu .main li:nth-of-type(3) a:hover {
		padding-left : 0px;
	}
	.headMenu .main li:nth-of-type(3) a:hover span {
		opacity : 0;
	}
	.headMenu .main li:nth-of-type(4) a:hover {
		padding-left : 0px;
	}
	.headMenu .main li:nth-of-type(5) a:hover {
		padding-left : 0px;
	}
	.headMenu .main li:nth-of-type(6) a:hover {
		padding-left : 0px;
	}
	.headMenu .main li:nth-of-type(7) a:hover {
		padding-left : 0px;
	}
	.headOverInner h3 {
		letter-spacing: 0px;
		font-size : calc(1.25vw + 6.0px);
		margin-left : 0;
	}
	.headOver {
		top : auto;
		bottom : 3vw;
		padding-left: 3vw;
	}
	.headScroll .scrollArrow {
	  margin: 6px auto;
	  height: 20px;
	}
	.headScroll .scrollArrowInner {
		height : 20px;
		transform: translate(0, -40px);
		animation: arrowMove2 2s infinite linear;
	}
	.headScroll .scrollArrowInner.active {
		animation: arrowMoveUp2 2s infinite linear;
		transform: translate(0, 40px);
	}
	.headEig {
		padding : 20px 0 20px 4.5vw;
	}
	.headScroll {
		bottom : 14px;
	}
}
@keyframes arrowMove2 {
	to {
		  transform: translate(0, 40px);
	}
}
@keyframes arrowMoveUp2 {
	to {
		  transform: translate(0, -40px);
	}
}
@media only screen and (max-width: 420px) {
	.headLogo {
		top : 4px;
		left : 4px;
	}
	.wrapHeaderTop .headLogo h2 {
		width : 52px;
		height : 52px;
		background-size : 52px;
		font-size : 10px;
		letter-spacing: 0px;
		padding-top : 14px;
	}
	.wrapHeaderTop .headLogo h1 {
		padding-left : 0;
	}
	.wrapHeaderTop .headLogo strong {
		font-size : 24px;
		letter-spacing: 2px;
	}
	.wrapHeaderTop .headLogo span {
		left : 2px;
		font-size : 15px;
		letter-spacing: 5px;
	}
}

@keyframes hl-fadeIn {
  from {
    opacity: 0;
    transform: translateX(-102px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.openMenu {
	position: fixed;
	width : 100%;
	height: 100vh;
	overflow : auto;
	box-sizing: border-box;
	top: 0px;
	right: -120vw;
	z-index: 98;
	transition: all 0.6s;
	background-color : #1e9f9f;
}
.innerSmpTels {
	padding: 80px 0;
	box-sizing: border-box;
}
.inMenuLogo {
	width : 100%;
	box-sizing: border-box;
}
.innerSmpTels h3 {
	display : inline-block;
	width : 680px;
	color : #ffffff;
	padding : 0 0 20px 0;
	border-bottom : 2px solid #95d1d1;
}
.inMenuLogo img {
	width : 24vw;
	max-width : 221px;
	min-width: 140px;
}
.inMenuFlex {
	width : 100%;
	max-width : 680px;
	margin : 0 auto;
	box-sizing: border-box;
}
.inMenuFlex .inHeadMenu {
	width : 100%;
}
.inMenuFlex .inHeadMenu ul {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-around;
	justify-content : space-around;
	flex-wrap : wrap;
	position : relative;
	left : 20px;
}
.inMenuFlex .inHeadMenu li {
	width : 23%;
	padding : 20px 0;
	text-align : left;
}
.inMenuFlex .inHeadMenu li:nth-of-type(1) {
	width : 26%;
}
.inMenuFlex .inHeadMenu li:nth-of-type(5) {
	width : 26%;
}
.inMenuFlex .inHeadMenu li a {
	color : #ffffff;
	font-size : 1rem;
	transition: 0.4s;
	display : inline-block;
	position : relative;
	padding-left : 36px;
	white-space: nowrap;
}
.inMenuFlex .inHeadMenu li a::before {
	content: '\2192';
	position: absolute;
	top : 0;
	left: 0;
	width: 28px;
	height: 28px;
	line-height: 22px;
	background-color: #ffffff;
	color : #1e9f9f;
	font-size : 24px;
	text-align : center;
	border-radius : 50%;
	border : 1px solid #ffffff;
	font-family: "Dosis", sans-serif;
	transition: .4s;
}
.inMenuFlex .inHeadMenu li a:hover {
	color : #a4e1e1;
}
.inMenuFlex .inHeadMenu li a:hover::before {
	background-color: #1e9f9f;
	color : #ffffff;
}
.inMenuFlex .openInfo h4 {
	color : #ffffff;
	font-weight : 400;
}
.inMenuFlex .openInfo p {
	color : #ffffff;
	line-height : 2.0;
}
.inMenuFlex .openInfo p a {
	color : #ffffff;
}
.smpt40 {
	margin-top : 0;
}
@media only screen and (max-width: 800px) {
	.inMenuFlex .inHeadMenu .main li a {
		font-size : calc(1.46vw + 8.3px);
		padding: calc(1.67vw + 10.7px) 0;
	}
	.inMenuFlex .inHeadMenu li {
		padding : 8px 0;
	}
	.openMenuBlock h3 {
		font-size : calc(1.46vw + 8.3px);
	}
	.openMenuBlock h4 {
		font-size : 0.9rem;
	}
	.openMenuBlock .tel {
		font-size : calc(2.92vw + 8.7px);
	}
	.openMenuBlock .tel span {
		font-size : 1rem;
	}
	.openMenuBlock dt {
		padding : 3.2vw 0 3.2vw 5.2vw;
	}
	.openMenuBlock dd {
		padding : 3.2vw 0 3.2vw 5.2vw;
	}
	.smpt40 {
		margin-top : 40px !important;
	}
	.inMenuFlex .inHeadMenu li a {
		font-size : 14px;
	}
	.inMenuFlex .inHeadMenu ul {
		left : 10px;
	}
}
@media only screen and (max-width: 720px) {
	.innerSmpTels {
		padding: 28px 7.2vw 6.4vw 7.2vw;
	}
	.inMenuLogo {
		width : 100%;
		box-sizing: border-box;
	}
	.inMenuFlex {
		width : 100%;
		margin : 0 auto;
		padding-left : 0;
	}
	.innerSmpTels h3 {
		width : 100%;
	}
	.inMenuFlex .inHeadMenu li {
		width : 48%;
		padding : 20px 0;
		text-align : left;
	}
	.inMenuFlex .inHeadMenu li:nth-of-type(1) {
		width : 48%;
	}
	.inMenuFlex .inHeadMenu li:nth-of-type(5) {
		width : 48%;
	}
}
@media only screen and (max-width: 640px) {
	.innerSmpTels {
		padding: 8px 7.2vw 6.4vw 7.2vw;
	}
}
@media only screen and (max-width: 480px) {
	.openMenuBlock dt {
		padding : 3.2vw 0 3.2vw 2vw;
	}
	.openMenuBlock dd {
		padding : 3.2vw 0 3.2vw 2vw;
	}
	.innerSmpTels {
	  padding: 8px 3vw 8vw 3vw;
	}
	.inMenuFlex .inHeadMenu .left {
		width : 60%;
	}
	.inMenuFlex .inHeadMenu .right {
		width : 36%;
	}
	.inMenuFlex .inHeadMenu .main li a {
		font-size : calc(1.46vw + 8.3px);
		padding: calc(1.67vw + 2.7px) 0;
	}
	.inMenuLogo {
		position : relative;
		left : -10px;
		top : -4px;
	}
	.inMenuFlex .inHeadMenu li a {
		padding-left : 34px;
		padding-top : 2px;
	}
}

.wrapHeaderTop .smp_menu {
	position : absolute;
	top: 36px;
	right: 54px;
	width: 56px;
	height: 56px;
	text-align: center;
	background-color: #ffffff;
	border-radius : 50%;
	z-index : 99;
	transition: 0.5s;
}
.wrapHeaderTop.else .smp_menu {
	background-color: #1e9f9f;
}
.wrapHeaderTop .smp_menu p {
	display: block;
	position: absolute;
	top: 16px;
	left: 17px;
	width: 20px;
	text-align: center;
	color: #1e9f9f;
	font-weight: 400;
	font-size: 12px;
	letter-spacing: 1px;
}
.wrapHeaderTop.active .smp_menu {
	top: 12px;
	background-color: #1e9f9f;
	border-radius : 50%;
}
.wrapHeaderTop.else .smp_menu.is-open {
	background-color: #ffffff;
	border-radius : 50%;
}
.wrapHeaderTop.active .smp_menu.is-open {
	background-color: #ffffff;
	border-radius : 50%;
}
.wrapHeaderTop.active .smp_menu p {
	color: #ffffff;
}
.wrapHeaderTop.active .smp_menu.is-open p {
	color: #1e9f9f;
}
.wrapHeaderTop .menu-trigger {
	display: block;
	position: relative;
	top: 12px;
	left: 15px;
	width: 40px;
	height: 44px;
	margin : 0 auto;
	transition: all .4s;
}
.wrapHeaderTop .menu-trigger span {
	position: absolute;
	left: 0px;
	width: 22px;
	height: 3px;
	background-color: #1e9f9f;
	transition: all .4s;
}
.wrapHeaderTop.else .menu-trigger span {
	background-color: #ffffff;
}
.wrapHeaderTop.else .menu-trigger.is-open span {
  background-color: #1e9f9f;
}
.wrapHeaderTop.active .menu-trigger span {
	background-color: #ffffff;
}
.wrapHeaderTop .menu-trigger.subd span {
	background-color: #1e9f9f;
}
.wrapHeaderTop .menu-trigger.subd span {
	background-color: #1e9f9f;
}
.wrapHeaderTop.active .menu-trigger.is-open span {
	background-color: #1e9f9f;
}
.wrapHeaderTop .menu-trigger.subd.is-open span {
	background-color: #ffffff;
}
.wrapHeaderTop .menu-trigger strong {
	display : block;
	position : absolute;
	top: 32px;
	left: 0;
	width: 36px;
	color: #ffffff;
	font-size : 18px;
	font-weight : 700;
	letter-spacing: 3px;
	text-align : center;
}
.wrapHeaderTop.active .menu-trigger strong {
	color: #327851;
}
.wrapHeaderTop .menu-trigger.subd strong {
	color: #327851;
}
.wrapHeaderTop .menu-trigger em {
	display : none;
	position : absolute;
	top: 32px;
	left: 0;
	width: 36px;
	font-style : normal;
	color: #ffffff;
	font-size : 18px;
	font-weight : 700;
	letter-spacing: 2px;
	text-align : center;
}
.wrapHeaderTop.active .menu-trigger em {
	color: #ffffff;
}
.menu-trigger span:nth-of-type(1) {
	top: 5px;
}
.menu-trigger span:nth-of-type(2) {
	top: 15px;
}
.menu-trigger.is-open span:nth-of-type(1) {
	top: 13px;
	width: 27px;
	-webkit-transform: translate3d(-2px, -2px, 0) rotate(45deg);
	transform: translate3d(-2px, -2px, 0) rotate(45deg);
}
.menu-trigger.is-open span:nth-of-type(2) {
	top: 13px;
	width: 27px;
	-webkit-transform: translate3d(-2px, -2px, 0) rotate(-45deg);
	transform: translate3d(-2px, -2px, 0) rotate(-45deg);
}

.cp_overLeft {
	position: fixed;
	top: 50%;
	left: 0;
	z-index: 20;
}
.smplink {
	display :  none;
}
@media only screen and (max-width: 1140px) {
	.wrapHeaderTop .smp_menu {
		right: 16px;
	}
}
@media only screen and (max-width: 900px) {
	.wrapHeaderTop .smp_menu {
		top : 12px;
		right: 16px;
	}
	.wrapHeaderTop.else .menu-trigger.subp span {
		background-color: #ffffff;
	}
	.wrapHeaderTop .menu-trigger.subp span {
		background-color: #1e9f9f;
	}
	.wrapHeaderTop .menu-trigger.subp strong {
		color: #1e9f9f;
	}
	.wrapHeaderTop.else .menu-trigger.is-open span {
		background-color: #1e9f9f;
	}
}

@media only screen and (max-width: 720px) {
	.pc_headline .headMenu {
		display: none;
	}
	.headTel {
		display: none;
	}
	.headInqu {
		display: none;
	}
	.smplink {
		display : block;
	}
}
.snsButtons {
	display: block;
}

.whiteback {
	background-color : #1e9f9f;
	padding-top : 124px;
	position : relative;
}
@media only screen and (max-width: 900px) {
	.whiteback {
		padding-top : 80px;
	}
}
.topimages {
	width: 100%;
	max-width: 1980px;
}
#prev,
#next {
	display: block;
	height: 753px;
	position: absolute;
	top: 0px;
	width: 50%;
	z-index: 9999;
}
#prev {
	left: -600px;
}
#next {
	right: -600px;
}
#access {
	margin-top: -130px;
	padding-top: 130px;
}
#template {
	margin-top: -130px;
	padding-top: 130px;
}
#submit {
	margin-top: -130px;
	padding-top: 130px;
}

.submenu {
	background-color: #fff949;
	text-align: right;
	padding: 7px 0 16px 0;
}

.submenu h2 {
	text-align: center;
	color: #000000;
	margin: 20px 0;
	letter-spacing: 3px;
}

.submenu a {
	display: inline-block;
	padding: 0 8px 0 16px;
	background: url(../img/arrow.png) no-repeat left center;
	color: #303030;
	font-size: 12px;
	text-decoration: none;
}

.submenu a:hover {
	color: #000000;
	text-decoration: underline;
}

.pankuzu {
	font-size: 13px;
	color: #494949;
	padding: 6px 0 12px 4px;
	width: 100%;
	max-width: 1343px;
	margin: 0 auto;
	position: relative;
}

#wrapGlobalMenu {
	width: 100%;
	margin-bottom: 16px;
	margin-top: -17px;
	overflow: hidden;
	background-color: #4c4109;
	position: relative;
	z-index: 999;
}

#wrapTopMenu {
	width: 1183px;
	position: relative;
	margin: 0 auto;
}

.headMenu td a.bdnone {
	padding-left: 3px;
}

.smp_headbtn {
	display: none;
	text-align: center;
	width: 100%;
	position: absolute;
	left: 0;
	bottom: 6.5vw;
}

.smp_headbtn a img {
	width: 50%;
	min-width: 160px;
}

.pc_headbtn {
	display: block;
	position: absolute;
	left: 50%;
	margin-left: -70px;
	bottom: 20px;
}

.wrapContents {
	width: 100%;
	position: relative;
	padding-top: 140px;
}

#p_points {
	display: block;
}

#s_points {
	display: none;
}

.pc_headline {
	display: block;
}
.pc_headsns {
	display: block;
}
.smp_headline {
	display: none;
}

.smp_centerbtn {
	display: none;
}

.pc_topimg {
	display: inline;
}

.smp_topimg {
	display: none;
}

.smp_headTel {
	display: inline-block;
	width: 49%;
	padding: 14px 0;
	text-align: center;
}

.smp_headTel a {
	font-size: 16px;
	color: #010101;
	text-decoration: none;
	font-weight: 500;
}

.smp_headTel a img {
	position: relative;
	height: 20px;
	margin-right: 8px;
	top: 4px;
}

.smp_headInqu {
	display: inline-block;
	width: 49%;
	padding: 14px 0;
	text-align: center;
}

.smp_headInqu a {
	font-size: 14px;
	color: #010101;
	text-decoration: none;
}

.smp_headInqu a img {
	position: relative;
	height: 16px;
	margin-right: 8px;
	top: 2px;
}
.smp_headSns  {
	text-align : center;
	padding : 6px 0;
}
.smp_headSns a {
	display : inline-block;
	margin : 0 16px;
}
@media only screen and (max-width: 800px) {
	.pc_topimg {
		display: none;
	}
	.smp_topimg {
		display: inline;
	}
	.smp_headline {
		display: block;
		position: fixed;
		width: 100%;
		max-width: 100vw;
		height: 60px;
		top: 0;
		left: 0;
		box-sizing: border-box;
		transition: .5s;
	}
	.smp_headbtn {
		display: block;
	}
	.pc_headbtn {
		display: none;
	}
	.smp_centerbtn {
		display: block;
		text-align: center;
		margin-top: 36px;
	}
	.smp_centerbtn img {
		width: 60%;
		max-width: 386px;
	}
	#wrapHeaderTop {
		height: 60px;
	}
	#wrapHeaderTop #header {
		height: 60px;
	}
	#wrapHeaderTop .headLogo {
		top : 4px;
		left : 0;
		line-height: 28px;
		padding-top : 2px;
		padding-left : 4px;
	}
	.wrapContents {
		padding-top: 60px;
	}
}
@media only screen and (max-width: 860px) {
	.pc_headline {
		display: none;
	}
}
@media only screen and (max-width: 720px) {
	.pc_headsns {
		display: none;
	}
}


/* トップページコンテンツ */

.rightTab {
	position: fixed;
	top: calc(50vh - 8rem);
	right: 0;
	z-index: 99;
	opacity: 0;
	transition: 0.5s;
	width : 60px;
}
.rightTab.subp {
	opacity: 1;
}
.rightTab.active {
	opacity: 1;
}
.rightTab a {
	width : 58px;
	height : 240px;
	font-size : 1.1rem;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	background: #000000;
	border-top : 2px solid #000000;
	border-left : 2px solid #000000;
	border-bottom : 2px solid #000000;
	text-align: center;
	transition: 0.5s;
	letter-spacing: 1px;
	transition: 0.4s;
}
.rightTab a span {
	display: block;
	writing-mode: vertical-rl;
}
.rightTab a span em {
	display : inline;
	font-style : normal;
}
.rightTab a span::after {
	content: "\25B6";
	margin-top: .8rem;
	display : inline-block;
	width : 20px;
	height : 20px;
	color : #000000;
	background-color : #ffffff;
	border-radius : 50%;
	font-size : 8px;
	line-height : 20px;
}
.rightTab a:hover {
	color: #000000;
	background: #ffffff;
}
.rightTab a:hover span::after {
	color : #ffffff;
	background-color : #000000;
}
@media only screen and (max-width: 960px) {
	.rightTab {
		width : 50px;
	}
	.rightTab a {
		width : 48px;
	}
}
@media only screen and (max-width: 720px) {
	.rightTab {
		top: 12px;
		right: 90px;
		opacity: 0;
		width : 56px;
		height : 56px;
		border-radius : 50%;
	}
	.rightTab a {
		width : 55px;
		height : 55px;
		border : 1px solid #327951;
		border-radius : 50%;
	}
	.rightTab a span {
		font-size : 10px;
		display: block;
		writing-mode: horizontal-tb;
	}
	.rightTab a span em {
		display : none;
	}
	.rightTab a span::after {
		display : block;
		margin : 6px auto 0 auto;
	}
}


.lemmon {
	background : url(../img/back02.png) no-repeat bottom right 80px;
}
.topNewsFlex {
	width : 100%;
	background-color : #f0f9f4;
	box-sizing: border-box;
}
.topNews {
	width : 100%;
	box-sizing: border-box;
	padding : 0 10px;
}
.topNews .topNewsTitle h4 {
	line-height : 1.4;
	font-weight : 500;
	letter-spacing: 3px;
}
.topNews .topNewsTitle h3 {
	letter-spacing: 3px;
	font-weight : 500;
	line-height : 1.1;
}
.topNews .newsItem {
	width : 70%;
	padding-left : 0%;
}
.topNews .newsItem .newsInner {
	width : 100%;
	padding : 24px 0;
	border-bottom : 2px solid #0e1e80;
}
.topNews .newsItem .newsInner:last-child {
	border-bottom : none;
}
.topNews .newsItem p {
	color : #0e1e80;
	font-weight : 400;
	line-height : 1.6;
	text-align : left;
}
.topNews .newsItem p a {
	color : #0e1e80;
	transition: 0.3s;
}
.topNews .newsItem p.date {
	width : 106px;
	line-height : 1.8;
}
.topNews .newsItem p.comm {
	width : calc(100% - 110px);
	line-height : 1.8;
}
.topNews .newsItem p a:hover {
	color : #d7aa37;
}
.topMedia {
	width : 472px;
}
.topMedia img {
	width : 100%;
}
@media only screen and (max-width: 1700px) {
	.lemmon {
		background : url(../img/back02.png) no-repeat bottom right 10px;
		background-size : 15vw;
	}
}
@media only screen and (max-width: 1200px) {
	.topNews .newsItem {
		width : 100%;
	}
	.topNews .newsItem p.comm {
		width : calc(100% - 110px);
		height : 1.8em;
		overflow : hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	.topMedia {
		width : 44vw;
		padding-left : 3vw;
		box-sizing: border-box;
	}
	.topNews .newsItem .newsInner {
		padding : calc(0.91vw + 7.1px) 0;
	}
}
@media only screen and (max-width: 1080px) {
	.lemmon {
		background-image : none;
	}
}
@media only screen and (max-width: 720px) {
	.topNews .topNewsTitle {
		width : 50%;
		margin-bottom : 3vw;
	}
}
@media only screen and (max-width: 480px) {
	.topNews .newsItem {
		width : 100%;
	}
	.topMedia {
		width : 100%;
		padding-left : 0;
		text-align : center;
		margin-top : 20px;
	}
	.topMedia img {
		width : 90%;
		max-width : 380px;
		position : relative;
		left : -0.5vw;
	}
	.topNews .newsItem p.comm {
		width : 100%;
		height : 1.7em;
	}
}

.topImg  {
	width : 100%;
	height : calc(70vw + 104px);
	max-height : 881px;
	margin : 0 auto;
	overflow : hidden;
	position : relative;
}
.pos-rel {
	position : relative;
	background-color : #c4b266;
}
.slide_top  {
	position : relative;
	width : 90%;
	max-width : 1620px;
	margin : 0 auto;
}
.slide_all {
	width : 100%;
	height :48vw;
	max-height : 690px;
}
.slideDot {
	position : absolute;
	bottom : 20px;
    left: 50%;
    transform : translateX(-50%);
}
.slideDot span {
	display : inline-block;
	color : #d6d8ce;
	padding : 0 6px;
}
.slideDot span.active {
	color : #ffffff;
}
.no_slide {
	width : 100%;
	height : 48vw;
	max-height : 690px;
}
.pict {
	width : 100%;
	height : 48vw;
	max-height : 690px;;
	margin : 0 auto;
	position : absolute;
	top : 0;
	left : 0;
}
.slide_all img {
	width : 100%;
	height : 100%;
	object-fit : cover;
}

.slide_sub {
	position : relative;
	top : 0px;
	right : 0;
	width : 100%;
	margin : 0 auto;
	text-align : right;
}
.no_slide_sub {
	width : 100%;
	height : 60vw;
	max-height : 690px;
	margin : 0 auto;
	position : relative;
}
.pict_sub {
	width : 74%;
	height : 60vw;
	max-height : 690px;
	margin : 0 0 0 auto;
	position : absolute;
	top : 0;
	right : 0;
}
.slide_sub img {
	width : 100%;
	max-width : 1300px;
	height : 100%;
	object-fit : cover;
}
.pageTitle {
	position : absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	padding-bottom : 32px;
	color : #ffffff;
	font-weight : 700;
	background : url(../img/ttl_line.png) no-repeat bottom center;
}
.pageTitle.brk {
	color : #000000;
}

.overWrap  {
	position : absolute;
	bottom : 80px;
	left : 80px;
}
.overWrap .overLeft {
	font-size : 48px;
	color : #ffffff;
	line-height : 1.4;
	font-weight : bold;
}
.overWrap .overRight {
	font-size : 100px;
	color : #ffffff;
	line-height : 1.4;
	font-weight : bold;
}
.overWrap .overText {
	display : inline-block;
	font-size : 36px;
	color : #ffffff;
	line-height : 1.4;
	font-weight : bold;
	border : 7px solid #ffffff;
	padding : 10px 18px;
	margin-top : 12px;
}
.bottomScroll {
	position : absolute;
	bottom : 0;
	left: calc(50% - 25px);
	transition: 0.7s;
}
.bottomScroll.hide {
	bottom : -100px;
	transition: 0.7s;
}
.bottomScroll img {
	width : 50px;
}
@media only screen and (max-width: 1400px) {
	.overWrap .overLeft {
		left : -40px;
	}
	.subpage_title .slide_all {
		width : 100%;
		height : 60vw;
		max-height : 830px;
	}
}

@media only screen and (max-width: 1200px) {
	.overWrap  {
		bottom : 16vw;
		left : 4vw;
	}
	.overWrap .overLeft {
		font-size : calc(3.64vw + 4.4px);
	}
	.overWrap .overRight {
		font-size : calc(5.09vw + 21.3px);
	}
	.overWrap .overText {
		font-size : calc(2.5vw + 6.0px);
		border : 0.7vw solid #ffffff;
		padding : 1vw 1.8vw;
		margin-top : 1.2vw;
	}
}
@media only screen and (max-width: 1136px) {
	.overWrap .overLeft {
		left : -40px;
	}
}
@media only screen and (max-width: 900px) {
	.slide_sub {
		position : relative;
		top : 0px;
		right : 0;
		width : 100%;
		margin : 80px auto 0 auto;
		text-align : right;
	}
	.no_slide_sub {
		width : 100%;
		height : 60vw;
		max-height : 830px;
		margin : 0 auto;
		position : relative;
	}
}
@media only screen and (max-width: 800px) {
	.overWrap .overLeft {
		left : -80px;
	}
	.topImg  {
		overflow : visible;
	}
}
@media only screen and (max-width: 640px) {
	.slide_all {
		height : calc(100vw - 90px);
	}
	.no_slide {
		height : calc(100vw - 90px);
	}
	.pict {
		height : calc(100vw - 90px);
	}
	.slide_sub {
		margin : 78px auto 0 auto;
	}
	.pict_sub {
		width : 100%;
		height : 60vw;
		max-height : 830px;
		margin : 0 0 0 auto;
		position : absolute;
		top : 0;
		right : 0;
		background-color : #000000;
	}
	.pict_sub img {
		opacity : 0.7;
	}
}
@media only screen and (max-width: 420px) {
	.slide_sub {
		margin : 60px auto 0 auto;
	}
}
@media only screen and (max-width: 319px) {
	.slide_wrap {
		margin : 60px auto 0 auto;
	}
	.smp_headline {
		height : 60px;
	}
	.smp_headLogo {
		text-align : left;
		padding : 6px 0 0 10px;
	}
	.smp_headLogo img {
		width : 160px;
	}
	.smp_button {
		width : 60px;
		height : 60px;
	}
	.smp_button p {
		font-size : 12px;
		padding-top : 38px;
	}
	.smp_headline .menu-trigger {
		top: 13px;
		left: 16px;
		width: 27px;
		height: 22px;
	}
}
.top_container {
	position: absolute;
	font-size: 10px;
	color: #000000;
	padding: 0;
	top: 0px;
	right: 0px;
}


/*　ナビ包括-----------------------------*/
/* グローバルナビゲーション */
.panWrap  {
	width : 100%;
	max-width : 1470px;
	margin : 0 auto;
	overflow : hidden;
	box-sizing: border-box;
	position : relative;
	padding : 10px 10px 0 10px;
	color : #000000;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : flex-start;
	justify-content : flex-start;
	align-items: center;
}
.panWrap a {
	display: inline-block;
	color : #000000;
	transition: 0.3s;
}
.panWrap span {
	display: inline-block;
	color : #d1d1d1;
	font-size : 36px;
	font-weight : 300;
	transform: rotate(45deg);
	padding : 0 24px;
	position : relative;
	top : -4px;
}
.panWrap a.pantop{
	padding-left : 30px;
	background : url(../img/home.png) no-repeat center left;
}
.panWrap a:hover {
	opacity : 0.6;
}

/* コンテンツ包括
---------------------------------------------------------------------- */
.pcNavi {
	display: block;
}

.smpNavi {
	display: none;
}

.smp_mgb80 {
	margin-bottom: 0;
}

.top_images {
	position: relative;
}

.top_images p {
	position: absolute;
	top: 126px;
	left: 422px;
}

#news,
#commit,
#info {
	padding-top: 64px;
	margin-top: -64px;
}

/* メインコンテンツ包括---------------------------*/
.btmheaf {
	background: linear-gradient(180deg, #ffffff 0%, #ffffff 60%, #f4f5fa 60%, #f4f5fa 100%);
}
.topback {
	background: url(../img/back03.png) no-repeat top left 100px;
}
.grayback {
	background-color : #f3f2ee;
	box-sizing: border-box;
}
.thinback {
	background-color : #fefefe;
	box-sizing: border-box;
}
.conceptWrap {
	width : 100%;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.blockTitle {
	width : 300px;
	height : 70px;
	margin-left : auto;
	margin-right : auto;
	background : url(../img/ttil_back.png) no-repeat bottom center;
	position : relative;
}
.gimgback .blockTitle {
	background : url(../img/ttil_back_w.png) no-repeat bottom center;
}
.blockTitle_sub {
	position: absolute;
	top: 55%;
	left: calc(50% - 40vw);
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	width : 300px;
	height : 70px;
	margin-left : auto;
	margin-right : auto;
	background : url(../img/ttil_back.png) no-repeat bottom center;
}
.blockTitle h2 {
	text-align : center;
	font-size : 36px;
	font-weight : 700;
	color : #000000;
	margin-left : auto;
	margin-right : auto;
}
.blockTitle h2 strong {
	display : block;
	text-align : center;
	font-size : 36px;
	font-weight : 700;
	color : #000000;
	line-height : 1.1;
	letter-spacing: 3px;
}
.gimgback .blockTitle h2 strong {
	color : #ffffff;
}
.blockTitle h2 span {
	display : block;
	font-size : 16px;
	color : #000000;
	font-weight : 400;
	letter-spacing: 1px;
}
.gimgback .blockTitle h2 span {
	color : #ffffff;
}
.blockTitle_sub h1 {
	text-align : center;
	font-size : 36px;
	font-weight : 700;
	color : #000000;
	margin-left : auto;
	margin-right : auto;
}
.blockTitle_sub h1 strong {
	display : block;
	text-align : center;
	font-size : 36px;
	font-weight : 700;
	color : #000000;
	line-height : 1.1;
	letter-spacing: 3px;
}
.blockTitle_sub h1 span {
	display : block;
	font-size : 16px;
	color : #000000;
	font-weight : 400;
	letter-spacing: 1px;
}
@media only screen and (max-width: 960px) {
	.blockTitle_sub {
		left: 10px;
	}
	.blockTitle_sub {
		top: 55%;
		width : calc(14vw + 160px);
	}
}
@media only screen and (max-width: 640px) {
	.blockTitle_sub {
		position: absolute;
		top: 58%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit- transform: translateY(-50%) translateX(-50%);
		height : 70px;
		background : url(../img/ttil_back_w.png) no-repeat bottom center;
	}
	.blockTitle_sub h1 {
		font-size : calc(3.75vw + 12.0px);
		color : #ffffff;
	}
	.blockTitle_sub h1 strong {
		font-size : calc(3.75vw + 12.0px);
		color : #ffffff;
		letter-spacing: 2px;
	}
	.blockTitle_sub h1 span {
		font-size : 1rem;
		color : #ffffff;
		letter-spacing: 0px;
	}
}

.blockTitle .baseButton {
	border-left : 2px solid #d2d0d1;
}
.arrows {
	position : relative;
	display : block;
	padding : 0 60px 0 20px;
	line-height : 106px;
	font-weight : 600;
	letter-spacing: 1px;
}
.arrows::before {
	content: "";
	position: absolute;
	top: 53px;
	right: 1px;
	width: 32px;
	height: 2px;
	background: #000000;
	transition: 0.4s;
}
.arrows::after {
	content: "";
	position: absolute;
	top: 50px;
	right: 0px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #000000;
	border-right: 2px solid #000000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: 0.4s;
}
.arrows:hover {
	color : #327951;
}
.arrows:hover::before {
	background: #327951;
}
.arrows:hover::after {
	border-top: 2px solid #327951;
	border-right: 2px solid #327951;
}
a.morebtn {
	display: inline-block;
	width: 240px;
	text-align: left;
	padding:  0 0 2px 20px;
	font-size: 1.2rem;
	font-weight : 700;
	letter-spacing: 2px;
	line-height: 60px;
	color: #327951;
	background-color : #ffffff;
	border : 2px solid #92b89f;
	transition: 0.4s;
	position: relative;
	text-decoration: none;
}
a.morebtn.wte {
	right : 100px;
}
a.morebtn.grn {
	right : 100px;
	color: #ffffff;
	background-color : #327951;
	border : 2px solid #327951;
}
a.morebtn.long {
	text-align: center;
	width: 600px;
	line-height: 70px;
	color: #ffffff;
	background-color : #327951;
	border : 2px solid #327951;
	padding-right : 40px;
	box-sizing: border-box;
}
a.morebtn::before {
	content: "";
	position: absolute;
	top: 29px;
	right: 20px;
	width: 32px;
	height: 2px;
	background: #327951;
	transition: 0.4s;
}
a.morebtn::after {
	content: "";
	position: absolute;
	top: 26px;
	right: 21px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #327951;
	border-right: 2px solid #327951;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: 0.4s;
}
a.morebtn.grn::before {
	background: #ffffff;
}
a.morebtn.grn::after {
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
}
a.morebtn.long::before {
	background: #ffffff;
	top: 35px;
	right: calc(50% - 7em + 20px);
}
a.morebtn.long::after {
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	top: 32px;
	right: calc(50% - 7em + 21px);
}
a.morebtn:hover {
	opacity : 1;
	color: #ffffff;
	background-color : #327951;
}
a.morebtn:hover::before {
	background: #ffffff;
}
a.morebtn:hover::after {
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
}
a.morebtn.grn:hover {
	opacity : 1;
	color: #327951;
	background-color : #ffffff;
}
a.morebtn.grn:hover::before {
	background: #327951;
}
a.morebtn.grn:hover::after {
	border-top: 2px solid #327951;
	border-right: 2px solid #327951;
}
a.morebtn.long:hover {
	opacity : 1;
	color: #327951;
	background-color : #ffffff;
}
a.morebtn.long:hover::before {
	background: #327951;
}
a.morebtn.long:hover::after {
	border-top: 2px solid #327951;
	border-right: 2px solid #327951;
}
@media only screen and (max-width: 1260px) {
	a.morebtn {
		display: inline-block;
		width: 200px;
		line-height: 50px;
	}
	a.morebtn::before {
		top: 24px;
		right: 18px;
		width: 28px;
	}
	a.morebtn::after {
		top: 21px;
		right: 19px;
	}
	a.morebtn.grn::before {
		background: #ffffff;
	}
	a.morebtn.grn::after {
		border-top: 2px solid #ffffff;
		border-right: 2px solid #ffffff;
	}
	a.morebtn:hover {
		opacity : 1;
		color: #ffffff;
		background-color : #327951;
	}
	a.morebtn:hover::before {
		background: #ffffff;
	}
	a.morebtn:hover::after {
		border-top: 2px solid #ffffff;
		border-right: 2px solid #ffffff;
	}
	a.morebtn.grn:hover {
		opacity : 1;
		color: #327951;
		background-color : #ffffff;
	}
	a.morebtn.grn:hover::before {
		background: #327951;
	}
	a.morebtn.grn:hover::after {
		border-top: 2px solid #327951;
		border-right: 2px solid #327951;
	}
}
@media only screen and (max-width: 720px) {
	a.morebtn.long {
		width: 96%;
	}
}
@media only screen and (max-width: 640px) {
	.arrows {
		position : relative;
		display : block;
		padding : 0 36px 0 12px;
		line-height : calc(11vw + 18px);
		font-weight : 600;
		letter-spacing: 1px;
	}
	.arrows::before {
		content: "";
		position: absolute;
		top: calc(5vw + 10px);
		right: 1px;
		width: 32px;
		height: 2px;
		background: #327851;
		transition: 0.4s;
	}
	.arrows::after {
		content: "";
		position: absolute;
		top: calc(5vw + 7px);
		right: 0px;
		width: 6px;
		height: 6px;
		border-top: 2px solid #327851;
		border-right: 2px solid #327851;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		transition: 0.4s;
	}
	.arrows span {
		font-size : 0 !important;
	}
	.arrows span::after {
		content : "一覧を見る";
		font-size: 1.2rem;
		font-weight : 700;
		color : #327951;
	}
	.grayback .middleWrap {
		padding-bottom : 80px;
	}
	a.morebtn.long {
		width: 96%;
		line-height: 60px;
		padding-right : 40px;
	}
	a.morebtn.long::before {
		top: 29px;
		right: calc(50% - 7em + 21px);
	}
	a.morebtn.long::after {
		top: 26px;
		right: calc(50% - 7em + 20px);
	}
}
@media only screen and (max-width: 480px) {
	a.morebtn.long {
		width: 100%;
		line-height: 50px;
		padding-right : 40px;
	}
	a.morebtn.long::before {
		top: 24.5px;
		right: calc(50% - 7em + 21px);
	}
	a.morebtn.long::after {
		top: 21.5px;
		right: calc(50% - 7em + 20px);
	}
	.blockTitle {
		width : 240px;
		background-size : 115%;
	}
	.blockTitle h2  strong {
		font-size : 28px;
		letter-spacing: 2px;
	}
	.blockTitle h2 span {
		font-size : 14px;
		letter-spacing: 0;
	}
}

.aboutWrap01 {
	position : relative;
	width : 100%;
	max-width : 1530px;
	padding : 0 50px;
	box-sizing: border-box;
	margin : 0 auto;
}
.conceptWrap {
	position : relative;
	height : 82vw;
	max-height : 832px;
}
.conceptInner {
	
}
.conceptInner .aboutTitle {
	
}
.conceptInner .aboutTitle h2 {
	font-weight : 500;
}
.conceptInner .aboutTitle h2::after {
	content : "";
	display : block;
	position : relative;
	width : 72px;
	height : 2px;
	font-size : 0;
	background-color : #1e9f9f;
	margin-top : 14px;
}
.conceptInner .aboutFlex {
	
}
.conceptInner .aboutFlex .left {
	width : 35%;
	max-width : 400px;
}
.conceptInner .aboutFlex .left p {
	display : -webkit-flex;
	display : flex;
	align-items: center;
}
.conceptInner .aboutFlex .left p span {
	display : inline-block;
}
.conceptInner .aboutFlex .left p strong {
	display : inline-block;
	margin-left : 20px;
	font-weight : 500;
}
.conceptInner img {
	width : 100%;
}
.conceptInner .aboutFlex .right {
	width : 61%;
	padding-left : 4%;
}
.conceptInner .aboutFlex .right h3 {
	color : #1e9f9f;
	line-height : 1.6;
	font-weight : 400;
}
.conceptInner .aboutFlex .right p {
	color : #000000;
	line-height : 2.0;
}
.aboutImgTitle {
	width : 100%;
	max-width : 900px;
}
.aboutImgTitle .imageTitle_reason {
	width : 100%;
	height : 56vw;
	max-height : 500px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position : relative;
}
.aboutImgTitle h2 {
	position: absolute;
	top: 50%;
	left: 0;
	width : 100%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	background-color : rgba(22, 139, 139, 0.7);
}
.aboutImgTitle strong {
	display : block;
	text-align : center;
	line-height : 1.1;
	color : #ffffff;
}
.aboutImgTitle span {
	display : block;
	text-align : center;
	line-height : 2.0;
	color : #ffffff;
	padding : 0 0 6px 0;
	font-weight : 500;
}
@media only screen and (max-width: 640px) {
	.conceptInner .aboutFlex .left {
		width : 90%;
		max-width : 400px;
		margin-left : auto;
		margin-right : auto;
		text-align : center;
	}
	.conceptInner .aboutFlex .right {
		width : calc(100% - 20px);
		padding-left : 10px;
		padding-right : 10px;
		margin-top : 6vw;
	}
}

.reasonFlex {
	position : relative;
	width : 100%;
	max-width : 1032px;
	box-sizing: border-box;
	margin : 0 auto;
}
.reasonFlex.rev {
	flex-direction: row-reverse;
}
.reasonFlex .left {
	position : relative;
	padding : 0 5% 0 0;
	width : 50%;
	box-sizing: border-box;
}
.reasonFlex.rev .left {
	position : relative;
	padding : 0 0 0 5%;
	width : 50%;
	box-sizing: border-box;
}
.reasonFlex .left p {
	color : rgba(0, 110, 110, 0.7);
	font-size : 200px;
	font-weight : 700;
	line-height : 1.1;
	font-family: "Oswald", sans-serif;
	position : relative;
	z-index : 2;
}
.reasonFlex.rev .left p {
	text-align : right;
}
.reasonFlex .left span {
	display : inline-block;
	position : relative;
}
.reasonFlex .left img {
	width : 100%;
	max-width : 400px;
	height : 30vw;
	max-height : 300px;
	object-fit: cover;
	position : relative;
	top : -40px;
	left : 40px;
	z-index : 1;
}
.reasonFlex .left span::after {
	content : "";
	display : block;
	position : absolute;
	bottom : 21px;
	right : -70px;
	width : 170px;
	height : 48px;
	background : url(../img/ttil_back.png) no-repeat 0 0;
	z-index : 2;
}
.reasonFlex.rev .left span::after {
	right : auto;
	left : 10px;
}
.reasonFlex .right {
	position : relative;
	width : 50%;
}
.reasonFlex.rev .right {
	position : relative;
	width : calc(50% - 20px);
	padding-left : 20px;
}
.reasonFlex .right h3 {
	padding-left : 20px;
}
.reasonFlex .right p {
	line-height : 2.2;
	padding-right : 20px;
	padding-left : 20px;
}
.reasonFlex.rev .right p {
	padding-right : 0;
	padding-left : 20px;
}
@media only screen and (max-width: 1000px) {
	.reasonFlex .left p {
		font-size : calc(5.09vw + 96.4px);
	}
}
@media only screen and (max-width: 640px) {
	.reasonFlex .left {
		padding : 0;
		width : 100%;
		max-width : 480px;
		margin : 0 auto;
	}
	.reasonFlex.rev .left {
		padding : 0;
		width : 100%;
		max-width : 480px;
		margin : 0 auto;
	}
	.reasonFlex .left span {
		display : block;
		width : 100%;
		max-width : 480px;
		position : relative;
	}
	.reasonFlex .left span::after {
		right: 0;
		bottom : 2vw;
	}
	.reasonFlex .left img {
	  	height: 52vw;
		top: calc(-4vw - 10px);
		left: 20px;
		width: calc(100% - 40px);
	}
	.reasonFlex .right {
		padding : 0;
		width : 100%;
		margin-top : 5vw;
	}
	.reasonFlex.rev .right {
		padding : 0;
		width : 100%;
	}
	.reasonFlex .right p {
		line-height: 1.8;
	}
	.reasonFlex.rev .right p {
		padding : 0 20px;
		line-height: 1.8;
		box-sizing : border-box;
	}
}

.mindFlex {
	position : relative;
	width : 100%;
	max-width : 1000px;
	box-sizing: border-box;
	margin : 0 auto;
	background-color : #ffffff;
	border-radius : 40px;
}
.mindFlex .head {
	background-color : #1e9f9f;
	padding : 28px 34px;
}
.mindFlex .head p {
	background-color : #ffffff;
	color : #1f9f9f;
	font-size : 1rem;
	font-weight : 500;
	line-height : 2.0;
	padding : 0px 10px 2px 10px;
	white-space: nowrap;
}
.mindFlex .head h3 {
	font-size : 28px;
	color : #ffffff;
	padding-left : 32px;
	line-height : 1.4;
}
.mindFlex .main {
	padding : 46px;
}
.mindFlex .main p {
	padding-right : 40px;
	font-weight : 500;
	line-height : 1.8;
}
.mindFlex .main img {
	width : 100%;
	max-width : 199px;
	height : 19vw;
	max-height : 199px;
	object-fit: cover;
}

@media only screen and (max-width: 1260px) {
	.aboutWrap01 {
		padding : 0 50px;
	}
	.conceptInner .conceptRight {
		padding-left : 4vw;
	}
	.mindFlex .head h3 {
		font-size : calc(1.25vw + 12.0px);
		font-size : calc(1.67vw + 10.7px);
	}
}
@media only screen and (max-width: 1040px) {
	.mindFlex {
		width : calc(100% - 40px);
		border-radius : calc(3vw + 10px);
		margin : 0 20px;
	}
	.mindFlex .head {
		background-color : #1e9f9f;
		padding : calc(2vw + 8px) calc(2.2vw + 10px);
	}
	.mindFlex .main {
		padding : calc(4vw + 6px);
	}
}
@media only screen and (max-width: 800px) {
	.aboutWrap01 {
		padding : 0 50px;
	}
	.conceptWrap {
		height : auto;
		max-height : auto;
	}
	.conceptInner .conceptRight {
		padding-left : 0;
		margin-right : auto;
	}
	.conceptInner .conceptLeft {
		padding-top : 6vw;
		text-align : center;
	}
	.conceptRight h3 {
		font-weight : 600;
	}
	.conceptRight p {
		line-height : 1.8;
		max-width : 800px;
	}
}
@media only screen and (max-width: 480px) {
	.aboutWrap01 {
		padding : 0 20px 0 20px;
	}
	.mindFlex .head h3 {
		padding-left : 0;
	}
	.mindFlex .head p {
		display : inline-block;
		margin-bottom : 3vw;
	}
	.mindFlex.pdt70 {
		padding-top : calc(5vw + 20px) !important;
	}
	.mindFlex .main {
		text-align : center;
	}
	.mindFlex .main p {
		text-align : left;
		margin-bottom : 4vw;
		padding-right : 0;
	}
	.mindFlex .main img {
		height : 30vw;
	}
}
.aboutWrap03 {
	width : 100%;
	padding : 0 20px;
	position : relative;
	box-sizing: border-box;
}
.conceptOuter {
	width : 100%;
	position : relative;
}
.conceptOuter .df800 {
	align-items: flex-start;
}
.fullLeft {
	width : 38%;
	position : relative;
}
.fullLeft img.main {
	margin-left : 100px;
	width : 100%;
	max-width : 380px;
	height : 24vw;
	max-height : 380px;
	object-fit: cover;
}
.fullLeft img.sub {
	position : absolute;
	bottom : 0;
	left : 0;
	width : 40%;
	max-width : 180px;
	height : 24vw;
	max-height : 180px;
	object-fit: cover;
}
.fullRight {
	width : 34%;
	text-align : right;
	padding-right : 40px;
	box-sizing: border-box;
}
.fullRight img {
	width : 100%;
	max-width : 380px;
	height : 24vw;
	max-height : 380px;
	object-fit: cover;
}
.aboutWrap03 .conceptRight {
	width : 38%;
	max-width : 726px;
	box-sizing: border-box;
}
.aboutWrap03 .conceptRight h3 {
	color : #1e9f9f;
}
.aboutWrap03 .conceptRight p {
	line-height : 2.0;
}
@media only screen and (max-width: 1480px) {
	.fullLeft {
		width : 100%;
		max-width : 480px;
		margin : 0 auto;
		position : relative;
		padding-bottom : 10vw;
	}
	.fullLeft img.main {
		height : 50vw;
		width : calc(100% - 10vw);
		margin-left : 10vw;
	}
	.fullLeft img.sub {
		bottom : 0;
	}
	.aboutWrap03 .conceptRight {
		display : inline-block;
		width : 62%;
		max-width : 1200px;
		padding : 0 4%;
	}
	.aboutWrap03 .conceptRight h3 {
		text-align : left !important;
		padding-top : calc(3vw + 10px) !important;
	}
	.aboutWrap03 .conceptRight p {
		text-align : left !important;
	}
	.fullRight {
		display : inline-block;
		vertical-align : top;
		padding-top : calc(5vw + 10px) !important;
		width : 32%;
		max-width : 1200px;
		padding-right : 0;
	}
}
@media only screen and (max-width: 800px) {
	.aboutWrap03 {
		padding : 4vw 50px 0 50px;
		box-sizing: border-box;
	}
	.fullLeft {
		width : 70%;
	}
	.fullLeft img {
		width : 90%;
		max-width : 800px;
	}
}
@media only screen and (max-width: 640px) {
	.aboutWrap03 .conceptRight {
		display : block;
		width : 100%;
		padding : 0 4%;
	}
	.fullRight {
		display : block;
		padding-top : 4vw !important;
		width : 100%;
		text-align : center;
	}
	.fullRight img {
		width : 80%;
		height : 62vw;
	}
}
@media only screen and (max-width: 480px) {
	.aboutWrap03 {
		padding : 4vw 20px 0 20px;
	}
	.fullRight {
		right : 20px;
	}
	.baseButton.t_right {
		text-align : center !important;
	}
	a.morebtn.wte {
		right: 0;
	}
}

.greenTop {
	background : #327951 url(../img/tour_back_u.jpg) no-repeat top left;
}
.greenUnder {
	background : url(../img/tour_back_d.jpg) no-repeat bottom left;
}
.whiteTitle h2 strong {
	display : block;
	font-size : 80px;
	color : #ffffff;
	line-height : 1.1;
	letter-spacing: 3px;
}
.whiteTitle h2 span {
	display : block;
	font-size : 24px;
	color : #ffffff;
	font-weight : 600;
	letter-spacing: 2px;
}
@media only screen and (max-width: 1260px) {
	.whiteTitle h2 strong {
		font-size : calc(4.35vw + 25.2px);
	}
	.whiteTitle h2 span {
		font-size : calc(1.3vw + 7.6px);
	}
}

.lightTop {
	position : relative;
	z-index : 1;
	background : #f9f7f8 url(../img/frow_back_u.png) no-repeat top left;
}
.lightTop_j {
	position : relative;
	z-index : 1;
	background : #f9f7f8 url(../img/frow_back_u.jpg) no-repeat top left;
}
.lightUnder {
	background : url(../img/frow_back_d.jpg) no-repeat bottom left;
}
@media only screen and (max-width: 1900px) {
	.greenTop {
		background-size : 100%;
	}
	.greenUnder {
		background-size : 100%;
	}
	.lightTop {
		background-size : 100%;
	}
	.lightUnder {
		background-size : 100%;
	}
	.lightTop_j {
			background-size : 100%;
	}
}
.mgt-20 {
	margin-top : -30px !important;
}
.mgt-100 {
	margin-top : -200px !important;
}
.mgt-40 {
	margin-top : -40px !important;
}
@media only screen and (max-width: 480px) {
	.mgt-20 {
		margin-top : 0 !important;
	}
	.lightUnder h2 {
		padding-top : 3vw;
	}
	a.morebtn.grn {
		right: 0;
	}
}

.recruitWrap {
	width : 100%;
	max-width : 1450px;
	margin-left : auto;
	margin-right : auto;
}
.recruitTitle {
	font-weight : 700;
	position : relative;
}
.recruitTitle::after {
	content : "";
	width : 50px;
	height : 3px;
	background-color : #1e9f9f;
	display : block;
	margin : 16px auto;
}
.recruitInner {
	position : relative;
	padding : 70px 120px;
}
.recruitInner::before {
  content: "";
  position: absolute;
  top: -48px;
  left: 50%;
  margin-left: -24px;
  border: 24px solid transparent;
  border-bottom: 24px solid #f2f3ee;
}
.recruitInner dl {
	border-bottom : 1px solid #dcdcdc;
	padding : 32px 16px;
	box-sizing: border-box;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.recruitInner dl:first-of-type {
	border-top : 1px solid #dcdcdc;
}
.recruitInner dt {
	width : 15%;
	font-weight : 500;
	position : relative;
}
.recruitInner dd {
	width : 75%;
	position : relative;
}
i {
	display : inline-block;
	font-style : normal;
}
.sdgsInner {
	width : 100%;
	max-width : 1000px;
}
.sdgsInner p {
	width : 50%;
}
.sdgsInner p img:first-of-type {
	width : 96%;
	max-width : 446px;
}
.sdgsInner p img:last-of-type {
	width : 96%;
	max-width : 447px;
}
.sdgsWrap p.comm {
	font-size : 1rem;
	font-weight : 500;
}
.sdgsWrap p.bdr{
	border-left : 2px solid #b6b6b6;
	text-align : right;
}
@media only screen and (max-width: 960px) {
	.recruitInner {
		padding : 6vw 6vw;
	}
	.recruitInner.mgt40 {
		margin-top : 40px !important;
	}
}
@media only screen and (max-width: 720px) {
	.sdgsInner p {
		width : 100%;
		text-align : center;
	}
	.sdgsWrap p.bdr{
		border-left : none;
		text-align : center;
	}
	.sdgsInner p img {
		width : 90% !important;
		margin : 2vw 0;
	}
	.recruitInner dl {
		padding : 3.2vw 2vw;
	}
}
@media only screen and (max-width: 720px) {
	.recruitInner {
		padding : calc(4vw + 20px) 3vw;
	}
	.recruitInner dt {
		width : 30%;
	}
	.recruitInner dd {
		width : 70%;
	}
}

.access {
	width : 100%;
	max-width : 800px;
}
.access p {
	width : 45%;
}
.access p img {
	width : 100%;
}
.map {
	font-size : 0;
}
.traffic {
	line-height : 2.0;
}
@media only screen and (max-width: 640px) {
	.access .left {
		width : 100%;
		padding : 10px 0;
	}
	.access .center {
		width : 100%;
		border-left : none;
		border-top : 2px solid #cfcfcf;
		padding : 10px 0;
	}
	.access .right {
		width : 100%;
		border-left : none;
		border-top : 2px solid #cfcfcf;
		padding : 10px 0;
	}
}

.addhline {
	display : inline-block;
	padding-bottom : 6px;
	color : #157246;
	border-bottom : 4px solid #000000;
	position : relative;
}
.addhline::after {
	content : "";
	display : inline-block;
	position : absolute;
	bottom : -15px;
	left : calc(50% - 10px);
	background-color : #ffffff;
	width : 20px;
	height : 20px;
	border-left : 4px solid #000000;
	border-bottom : 4px solid #000000;
	transform: rotate(-45deg);
}
.addhline.gray::after {
	background-color : #f0f9f4;
}
.conceptWrap .conceptLeft {
	width : 45%;
	max-width : 600px;
	height : 45vw;
	max-height : 450px;
	position : absolute;
	top : 128px;
	left : 0;
	padding-bottom : 50px;
	z-index : 2;
}
.conceptWrap.rev .conceptLeft {
	left : auto;
	right : 0;
	top : 110px;
}
.conceptWrap  img {
	width : 100%;
	max-width : 600px;
	height : 45vw;
	max-height : 450px;
	object-fit: cover;
	border-radius : 24px;
}
.conceptWrap .conceptRight {
	width : 55%;
	max-width : 1000px;
	height : 55vw;
	max-height : 550px;
	position : relative;
	margin : 0 0 0 auto;
	z-index : 1;
	box-sizing: border-box;
}
.conceptWrap.rev .conceptRight {
	margin : 50px auto 0 0;
}
.conceptWrap .conceptRight p {
	width : 100%;
	max-width: 740px;
	line-height : 1.8;
	letter-spacing: 1px;
}
.conceptWrap .conceptRight h3 {
	width : 100%;
	line-height : 1.3;
	max-width: 740px;
}
.conceptWrap .conceptRight span {
	display : block;
	letter-spacing: 2px;
}
.conceptWrap .conceptRight h4 {
	width : 100%;
	letter-spacing: 2px;
	color : #d7aa37;
}
.conceptWrap .conceptRight h5 {
	width : 90%;
	letter-spacing: 2px;
	color : #d7aa37;
	max-width: 490px;
}
.mg30imp {
	margin-top : 30px !important;
}
.mg10imp {
	margin-top : 10px !important;
	margin-bottom : 0px !important;
}
.topContactWrap  {
	width : 100%;
	max-width : 1000px;
	margin : 0 auto 0 auto;
}
.contactBox .left {
	width : 50%;
	background-color : #f4f5fa;
	font-weight : 700;
}
.contactBox .right {
	width : 50%;
	background-color : #e1e4f3;
}
.contactBox a {
	display : block;
	color : #0f1e83;
}
.contactBox .left a {
	padding : 40px 0;
}
.contactBox .right a {
	opacity : 1;
	transition: 0.4s;
	padding : 46px 0 32px 0;
}
.contactBox .right span {
	display : inline-block;
	padding-top : 10px;
	font-weight : 400;
}
.contactBox .right a:hover {
	opacity : 0.7;
}
br.touten {
	display : block;
}
@media only screen and (max-width: 1700px) {
	.conceptWrap .conceptRight {
		padding : 0 0 4vw 10vw;
	}
	.conceptWrap.rev .conceptRight {
		padding : 0 2vw 4vw 0;
	}
}
@media only screen and (max-width: 1520px) {
	.topback {
		background: url(../img/back03.png) no-repeat top left 10px;
		background-size : 15vw;
	}
	br.touten {
		display : none;
	}
	.conceptLeft .inner img {
		border-radius: 0 calc(7vw + 10px) calc(7vw + 10px) 0;
	}
}
@media only screen and (max-width: 1080px) {
	.topback {
		background-image : none;
	}
	.topback.pdt120 {
		padding-top : 6vw !important;
	}
	.topBusinessItem .wrap {
		padding : 2vw 1vw;
	}
	.topBusinessItem .wrap::before {
		right: 10px;
		width: 24px;
	}
	.topBusinessItem .wrap::after {
		right: 9px;
	}
	.conceptWrap .conceptRight p {
		width : 90%;
		margin : 5vw auto;
		letter-spacing: 0;
	}
}
@media only screen and (max-width: 720px) {
	.conceptWrap .conceptInner {
		text-align : center;
	}
	.mgt-100 {
		margin-top : 0px !important;
	}
	.mgt-40 {
		margin-top : 40px !important;
	}
	.conceptWrap {
		display : block;
		position : relative;
		height : auto;
		max-height : 1832px;
		padding-bottom : 12vw;
	}
	.conceptWrap .conceptLeft {
		width : 100%;
		height : 65vw;
		position : relative;
		top : 0px;
		padding-bottom : 50px;
	}
	.conceptWrap.for .conceptLeft {
		top : 50px;
	}
	.conceptWrap.rev .conceptLeft {
		top : 50px;
	}
	.conceptWrap  img {
		height : 65vw;
	}
	.conceptWrap .conceptRight {
		width : 100%;
		height : auto;
		position : relative;
		margin : 0 auto0 auto;
		padding : 0 0 4vw 0;
	}
	.conceptWrap.for .backs {
		top : auto;
		bottom : 0;
		height: calc(tan(60deg) * 70vw);
		width: 90vw;
	}
	.conceptWrap.for .backs span {
		top : auto;
		bottom : 36vw;
		right : 50px;
		font-size : 40vw;
	}
	.conceptWrap.rev .backs {
		top : auto;
		bottom : 0;
		height: calc(tan(60deg) * 70vw);
		width: 90vw;
	}
	.conceptWrap.rev .backs span {
		top : auto;
		bottom : 36vw;
		left : 50px;
		font-size : 40vw;
	}
}

.menuWrap {
	
}
.menuWrap .left {
	width : 312px;
	padding : 5% 8%;
}
.menuWrap .rtl {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.menuWrap h4 {
	
}
.menuWrap h2 {
	line-height : 1.3;
}
.menuWrap .rtl p {
	height : 400px;
	font-weight : 500;
	line-height : 2.0;
	padding-right : 20px;
	letter-spacing: 2px;
}
.menuWrap .smpcomm {
	display : none;
	font-weight : 500;
	line-height : 1.8;
	letter-spacing: 1px;
}
.smpRight {
	display : block;
}
.menuWrap p br {
	display : block;
}
.menuWrap #arrows {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	width : 250px;
	margin-top : 30px;
}
.menuWrap #arrows div {
	width : 116px;
	height : 116px;
	border-radius : 50%;
	background-color : #ffffff;
	opacity : 1;
	transition: 0.3s;
	position : relative;
	display : block;
	cursor : pointer;
}
.menuWrap #arrows_s {
	display : none;
}
.menuWrap .out_slick-next {
	background : url(../img/prev_arrow.png) no-repeat center center;
}
.menuWrap .out_slick-prev {
	background : url(../img/next_arrow.png) no-repeat center center;
}
.menuWrap .out_slick-next_s {
	background : url(../img/prev_arrow.png) no-repeat center center;
}
.menuWrap .out_slick-prev_s {
	background : url(../img/next_arrow.png) no-repeat center center;
}
.menuWrap #arrows div:hover {
	opacity : 0.7;
}
.menuWrap .baseButton {
	
}
.creatorFlex {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
	width : calc(80% - 402px);
	height : 660px;
	background-color : rgba(179, 140, 60, 0.2);
	padding : 100px 0;
	border-radius : 64px 0 0 64px;
	position : relative;
}
.menuSlider {
	width : calc(100% + 240px);
	height : 660px;
	position : relative;
	left : -110px;
}
.menuFlex {
	border-bottom : 1px dashed #4c2b0a;
}

.slide-box {
	width : 100%;
	position : relative;
}
.slide-box .slide {
	width : 80%;
	max-width : 750px;
	margin : 0 auto;
	position : relative;
	z-index : 2;
}
.slide-box .slide li {
	width : 100%;
}
.slide-box .slide li img {
	width : 100%;
	height : 50vw;
	max-height : 500px;
	object-fit: cover;
}
.slide-arrow {
	position: absolute;
	top: 30%;
	width : 5vw;
	max-width : 38px;
}
.prev-arrow {
	left: -4vw;
}
.prev-arrow::after {
	content : "";
	display : block;
	width : 12px;
	height : 12px;
	border-top : 2px solid #999999;
	border-right : 2px solid #999999;
	transform: rotate(-135deg);
}
.next-arrow {
	right: -6vw;
}
.next-arrow::after {
	content : "";
	display : block;
	width : 12px;
	height : 12px;
	border-top : 2px solid #999999;
	border-right : 2px solid #999999;
	transform: rotate(45deg);
}
.elseMenu {
	width: 100%;
	position: relative;
	box-sizing: border-box;
	padding : 220px 40px 60px 40px;
	background-color : #f4f5fa;
	margin-top : -160px;
	z-index : 1;
}
.elseMenu .image {
	width : 100%;
	height : 8.8vw;
	max-height : 93px;
	border-radius : 50%;
	overflow : hidden;
	padding : 0 10px;
	box-sizing: border-box;
}
.elseMenu .image img {
	width : 100%;
	height : 100%;
	border-radius : 50%;
	object-fit : cover;
	opacity : 0.6;
}
.elseMenu .slick-current img {
	opacity : 1;
}
.pcOpen {
	display : block;
}
.smpOpen {
	display : none;
}
@media only screen and (max-width: 1000px) {
	.smpRight {
		width : 70%;
		padding-left : 5vw;
		padding-right : 2vw;
		box-sizing: border-box;
	}
	.elseMenu {
		padding : 22vw 4vw 6vw 4vw;
		margin-top : -16vw;
	}
}
@media only screen and (max-width: 720px) {
	.elseMenu .image {
		height : 12.8vw;
		padding : 0 1vw;
	}
}
@media only screen and (max-width: 480px) {
	.elseMenu .image {
		height : 20vw;
		padding : 0 1vw;
	}
	.smpRight {
		width : 66%;
		padding-left : 5vw;
		padding-right : 0;
		box-sizing: border-box;
	}
	.pcOpen {
		display : none;
	}
	.smpOpen {
		display : block;
		margin-top : 5vw;
		text-align : center;
	}
}

.newsListWrap {
	width : 100%;
	max-width : 1470px;
	padding : 0 10px;
	box-sizing: border-box;
	margin : 0 auto;
}
.newsType {
	
}
.newsListWrap span.cate {
	display : inline-block;
	background-color : #f5371f;
	color : #ffffff;
	line-height : 1.6;
	padding : 2px 8px;
	margin-right : 8px;
}
.newsListWrap a.cate {
	display : inline-block;
	background-color : #d9d9d9;
	color : #666666;
	line-height : 1.6;
	padding : 2px 10px;
	margin : 4px 12px 4px 0;
	transition: 0.3s;
}
.newsListWrap a.cate:hover {
	background-color : #666666;
	color : #d9d9d9;
}
.newsList {
	
}
.newsListWide {
	width : 100%;
	max-width : 1320px;
	margin : 0 auto;
}
.newsListFlex {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
}
.newsListItem {
	width : calc(33% - 20px);
	max-width : 400px;
	margin-bottom : 40px;
	position : relative;
	padding : 8px 10px 0 10px;
	box-sizing: border-box;
}
.newsListWide .newsListItem {
	background-color : #ffffff;
	padding : 20px;
	box-sizing: border-box;
}
@media only screen and (max-width: 1260px) {
	.newsListWide .newsListItem {
		background-color : #ffffff;
		padding : 2vw;
	}
}
.newsListItem.repo {
	border-bottom : 2px solid #e0e0e0;
}
.newsListItem.repo::after {
	content : "";
	position : absolute;
	bottom : -2px;
	left : 0;
	width : 40px;
	height : 1px;
	font-size : 0;
	border-bottom : 2px solid #7d7d7d;
	transition: 0.4s;
}
.newsListItem.repo:hover::after {
	width : 100%;
}
.newsListTrans {
	width : calc(33% - 20px);
}
.newsListItem .cate {
	position : absolute;
	top : 0;
	left : 0;
	font-size : 1rem;
	background-color : #1e9f9f;
	color : #ffffff;
	padding : 2px 20px 3px 20px;
	z-index : 9;
}
.newsListItem .img {
	width : 100%;
	max-width : 440px;
	height : 18vw;
	max-height : 245px;
	overflow : hidden;
}
.newsListItem .img img {
	width : 100%;
	max-width : 440px;
	height : 18vw;
	max-height : 245px;
	object-fit : cover;
	transition: 0.4s;
}
.newsListItem .img:hover img {
	transform:scale(1.1, 1.1);
}
.newsListItem .date {
	font-size : 0.9rem;
	font-weight : 700;
	color : #a6a6a6;
	line-height : 40px;
	box-sizing: border-box;
}
.newsListItem .date span {
	display : inline-block;
	padding : 0 14px;
	line-height : 24px;
	background-color : #8ec11f;
	color : #ffffff;
	font-weight : 500;
	border-radius : 12px;
	margin : 0 4px;
}
.newsListItem.sche .date span {
	background-color : #8ec11f;
}
.newsListItem.repo .date span {
	background-color : #167247;
}
.newsListItem .title {
	font-weight : 600;
	line-height : 1.6;
	height : 2.6em;
	color : #1e9f9f;
	word-break : break-word;
	overflow : hidden;
}
.newsListItem .comm {
	font-weight : 400;
	box-sizing: border-box;
	position : relative;
	line-height : 1.6;
}
.newsListItem .comm a {
	color : #000000;
}
.newsListItem .cate a {
	color : #000000;
	text-decoration: underline;
	text-underline-offset: 6px;
}
@media only screen and (max-width: 960px) {
	.newsListItem {
		width : calc(33% - 1vw);
		margin-bottom : 4vw;
	}
}
@media only screen and (max-width: 640px) {
	.newsListWrap {
		padding : 20px 10px 0 10px;
	}
	.messageWrap .newsListWrap {
		padding : 20px 0 0 0;
	}
	.newsListItem {
		width : 46%;
		max-width : 400px;
		margin : 0 10px 4vw 10px;
	}
	.newsListItem .img {
		height : 23vw;
	}
	.newsListItem .img img {
		height : 23vw;
	}
	.newsListItem .date {
		line-height : 30px;
	}
	.newsListItem .comm {
		padding-top : 10px;
	}
}
@media only screen and (max-width: 480px) {
	.newsListItem {
		width : 90%;
		max-width : 440px;
		margin : 0 10px 4vw 10px;
	}
	.messageWrap .newsListItem {
		width : 100%;
		margin : 0 0 5vw 0;
		padding : 0 10px;
		position : relative;
	}
	.newsListItem .cate {
		top : -6px;
	}
	.newsListItem .img {
		height : 50vw;
	}
	.newsListItem .img img {
		height : 50vw;
	}
}
.grayWrap {
	background-color : #f3f2ee;
}
.serviceWrap {
	width : 100%;
	max-width : 1430px;
	margin : 0 auto;
	border-radius : 40px;
	padding : 20px 0 0 0;
	box-sizing: border-box;
}
.serviceItem {
	width : calc(33% - 20px);
	max-width : 400px;
	position : relative;
	padding : 0 10px;
	box-sizing: border-box;
}
.serviceWide .serviceItem {
	background-color : #ffffff;
	padding : 20px;
	box-sizing: border-box;
}
@media only screen and (max-width: 1430px) {
	.serviceWrap {
		width : calc(100% - 20px);
		margin : 0 10px;
	}
}
@media only screen and (max-width: 1260px) {
	.serviceItem {
		width : calc(33% - 10px);
		max-width : 400px;
		margin : 0 0 4vw 0;
	}
}
.serviceItem .inner {
	background-color : #ffffff;
	padding : 16px 24px 24px 24px;
	box-sizing: border-box;
}
.serviceTrans {
	width : calc(33% - 20px);
}
.serviceItem .cate {
	position : absolute;
	top : -8px;
	left : 0;
	font-size : 36px;
	font-weight : 500;
	background-color : #1e9f9f;
	color : #ffffff;
	width : 60px;
	line-height : 60px;
	text-align : center;
	z-index : 9;
}
.serviceItem .img {
	display : block;
	width : 100%;
	max-width : 440px;
	height : 18vw;
	max-height : 245px;
	overflow : hidden;
}
.serviceItem .img img {
	width : 100%;
	max-width : 440px;
	height : 18vw;
	max-height : 245px;
	object-fit : cover;
	transition: 0.4s;
}
.serviceItem .img:hover img {
	transform:scale(1.1, 1.1);
}
.serviceItem .title {
	font-weight : 700;
	line-height : 1.6;
	color : #1e9f9f;
}
.serviceItem .comm {
	font-weight : 400;
	box-sizing: border-box;
	position : relative;
	line-height : 1.8;
}
.serviceItem .inner a {
	display : block;
	margin : 20px auto 0 auto;
	width : 40px;
	line-height : 30px;
	padding-bottom : 10px;
	text-align : center;
	font-size : 36px;
	font-weight : 200;
	background-color : #1e9f9f;
	color : #ffffff;
	border-radius : 50%;
	font-family: "Dosis", sans-serif;
	border : 2px solid #1e9f9f;
	transition: 0.4s;
}
.serviceItem .inner a:hover {
	background-color : #ffffff;
	color : #1e9f9f;
}
@media only screen and (max-width: 720px) {
	.serviceWrap {
		width : calc(100% - 20px);
		padding : 20px 0 0 0;
		margin : 0 10px;
		box-sizing: border-box;
	}
	.serviceWrap .middleWrap {
		padding : 0 20px;
	}
	.serviceItem {
		width : 48%;
		max-width : 400px;
		margin : 0 0 4vw 0;
	}
	.serviceItem .img {
		height : 23vw;
	}
	.serviceItem .img img {
		height : 23vw;
	}
	.serviceItem .date {
		line-height : 30px;
	}
	.serviceItem .comm {
		padding-top : 10px;
	}
	.serviceItem .cate {
		top : -8px;
		font-size : 28px;
		color : #ffffff;
		width : 48px;
		line-height : 48px;
	}
}
@media only screen and (max-width: 480px) {
	.serviceWrap .middleWrap {
		padding : 0 0px;
	}
	.serviceItem {
		width : 100%;
		max-width : 440px;
		margin : 0 0 calc(4vw + 10px) 0;
	}
	.serviceItem .img {
		height : 50vw;
	}
	.serviceItem .img img {
		height : 50vw;
	}
}

.newsDetail {
	border-bottom : 
}
.newsDetail .date {
	font-weight : 700;
	line-height : 40px;
	color : #000000;
}
.newsDetail .date span {
	display : inline-block;
	color : #ffffff;
	padding : 2px 14px 4px 14px;
	line-height : 24px;
	background-color : #8ec220;
	border-radius : 16px;
	margin : 0 4px;
}
.newsDetail .date span.repo {
	background-color : #167346;
}
.newsDetail .ttle {
	color : #4c4c4c;
	font-weight : 700;
	line-height : 1.5;
	border-bottom : 1px solid #c8c8c8;
}
.newsDetail .fsdetailComm {
	line-height : 2.0;
	box-sizing: border-box;
}
.newsDetail .photo img {
	width : 100%;
	height : auto;
	object-fit : cover;
	transition: 0.4s;
}
.newsLeft .detailComm {
	font-size : 1.2rem;
	line-height : 1.8;
	font-weight : 400;
}
.newsDetail .sns {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
.newsDetail .sns p {
	margin-left : 30px;
}
.newsDetail .baseButton {
	border-top : 4px dotted #327851;
	padding-top : 30px;
}
@media only screen and (max-width: 960px) {
	.newsDetail .fsdetailComm {
		padding : 8vw 5vw;
	}
}
@media only screen and (max-width: 480px) {
	.newsDetail .fsdetailComm {
		padding : 8vw 0;
	}
	.detailFlex .newsDetail {
		padding : 0;
	}
}
.backbtn {
	position : relative;
	display : block;
	padding : 0 0 0 54px;
	line-height : 30px;
	font-weight : 600;
	letter-spacing: 1px;
	color : #327851;
}
.backbtn::before {
	content: "";
	position: absolute;
	top: 14px;
	left : 8px;
	border-left: 1px;
	width: 32px;
	height: 2px;
	background: #327851;
	transition: 0.4s;
}
.backbtn::after {
	content: "";
	position: absolute;
	top: 11px;
	left: 7px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #327851;
	border-right: 2px solid #327851;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	transition: 0.4s;
}
.backbtn:hover {
	color : #000000;
}
.backbtn:hover::before {
	background: #000000;
}
.backbtn:hover::after {
	border-top: 2px solid #000000;
	border-right: 2px solid #000000;
}
.returnbtn {
	position : relative;
	display : inline-block;
	line-height : 30px;
	font-weight : 600;
	color : #327851;
	border-bottom : 1px solid #327851;
	transition: 0.4s;
}
.returnbtn:hover {
	color : #000000;
	border-bottom : 1px solid #000000;
}

.aboutInner {
	width : 100%;
	max-width : 1550px;
	margin-left : 60px;
	margin-right : auto;
}
.aboutInner.rev {
	margin-left : auto;
	margin-right : 60px;
}
.aboutInner .left {
	width : 25%;
}
.aboutInner .right {
	width : 75%;
	max-width : 1235px;
}
.aboutInner .right img {
	width : 100%;
}
@media only screen and (max-width: 960px) {
	.aboutInner {
		box-sizing: border-box;
		margin-left : 0;
		padding : 0 50px;
		margin-top : -6vw;
	}
	.aboutInner .left {
		width : 100%;
		margin-bottom : 6vw;
	}
	.aboutInner .right {
		width : 100%;
	}
}
@media only screen and (max-width: 480px) {
	.aboutInner {
		padding : 0 20px;
	}
}

.aboutInner .nmComment {
	width : 100%;
	max-width : 920px;
	margin : 0 25% 0 auto;
	box-sizing : border-box;
}
.aboutInner.rev .nmComment {
	margin : 0 auto 0 25%;
}
.nmComment p {
	line-height : 2.0;
}
@media only screen and (max-width: 960px) {
	.aboutInner.rev .nmComment {
		margin : 0 auto;
	}
}

.smgt40 {
	padding-top : 0px;
}
@media only screen and (max-width: 1200px) {
	.conceptLeft p {
		font-size : calc(0.34vw + 11.9px);
		line-height : 2.0;
	}
}

.contactpage_title {
	width : 100%;
	margin-top : 112px;
}
.contactpage_title .contact_all {
	width : 100%;
	height : 38vw;
	max-height : 380px;
	position : relative;
}
.contactpage_title .contact_sub {
	position : absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.contactpage_title .contact_btn {
	width : 330px;
	margin-bottom : 30px;
}
.contactpage_title .contact_btn a {
	font-size : 18px;
	font-weight : 500;
	line-height : 38px;
	text-align : center;
	width : 48%;
	color : #327851;
	border : 2px solid #91b7a0;
	margin : 0 10px;
	padding : 0 12px;
}
.contactpage_title .contact_btn span {
	position : relative;
	font-size : 18px;
	font-weight : 500;
	line-height : 38px;
	text-align : center;
	width : 48%;
	color : #ffffff;
	border : 2px solid #327851;
	background-color : #327851;
	margin : 0 10px;
	padding : 0 12px;
}
.contactpage_title .contact_btn span::after{
	content: "";
	position: absolute;
	right: 0;
	bottom: -12px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #327851 transparent transparent transparent;
	border-width: 12px 8px 0 8px;
}
.contactpage_title .contact_sub h1 strong {
	display : block;
	font-size : 80px;
	color : #327851;
	line-height : 1.2;
	letter-spacing: 3px;
	text-align : center;
}
.contactpage_title .contact_sub h1 span {
	display : block;
	font-size : 24px;
	color : #989898;
	text-align : center;
	line-height : 1.2;
	font-weight : 700;
	letter-spacing: 2px;
}
.contactpage_title .blockTitle span {
	
}
@media only screen and (max-width: 960px) {
	.contactpage_title .contact_sub h1 strong {
		font-size : calc(4.35vw + 25.2px);
	}
	.contactpage_title .contact_sub h1 span {
		font-size : calc(1.3vw + 7.6px);
	}
	.contactpage_title .contact_btn a {
		font-size : calc(0.78vw + 10.5px);
		line-height : calc(1.56vw + 23.0px);
		padding : 0 calc(0.47vw + 7.5px);
	}
	.contactpage_title .contact_btn span {
		font-size : calc(0.78vw + 10.5px);
		line-height : calc(1.56vw + 23.0px);
		padding : 0 calc(0.47vw + 7.5px);
	}
}

.top_images {
	width: 100%;
	position: relative;
	z-index: 2;
	text-align: center;
	background: url(../img/top_image.jpg) repeat-x top center;
	max-height: 576px;
	font-size: 0;
	line-height: 0;
}

@media only screen and (max-width: 1080px) {
	.aboutWrap p {
		font-size : calc(0.53vw + 12.3px);
		line-height : 2.0;
	}
}
@media only screen and (max-width: 640px) {
	.aboutWrap p {
		text-align : left !important;
	}
	.detailpage_title {
		margin-top : 78px;
	}
}
@media only screen and (max-width: 480px) {
	.detailpage_title .pict_dtl img {
		height : 65vw;
	}
}

@media only screen and (max-width: 400px) {
	.aboutWrap p {
		line-height : 1.8;
		letter-spacing: 0px;
	}
	.detailpage_title {
		margin-top : 60px;
	}
}
.centerWrap {
	padding : 100px 0;
	background-repeat : no-repeat;
	background-position : center center;
	background-size : cover;
}
.centerTitle {
	background : url(../img/box.png) repeat 0 0;
	position : relative;
	width : 720px;
	padding : 50px 0;
	text-align : center;
	margin : 0 auto;
}
.centerTitle h2 {
	color : #157246;
	line-height : 1.8;
}
.centerTitle span {
	display : block;
	width : 40px;
	height : 40px;
	position : absolute;
}
.centerTitle span:nth-of-type(1) {
	top : 0;
	left : 0;
	border-top : 4px solid #157246;
	border-left : 4px solid #157246;
}
.centerTitle span:nth-of-type(2) {
	top : 0;
	right : 0;
	border-top : 4px solid #157246;
	border-right : 4px solid #157246;
}
.centerTitle span:nth-of-type(3) {
	bottom : 0;
	left : 0;
	border-bottom : 4px solid #157246;
	border-left : 4px solid #157246;
}
.centerTitle span:nth-of-type(4) {
	bottom : 0;
	right : 0;
	border-bottom : 4px solid #157246;
	border-right : 4px solid #157246;
}
.newsWrapOuter {
	background : url(../img/haikei3.jpg) no-repeat 0 0;
	height : 481px;
}
.normalTitle h4 {
	letter-spacing: 2px;
	font-weight : 500;
	color : #d7aa37;
	line-height : 1.1;
	font-family: 'Josefin Sans', sans-serif;
}
.normalTitle h2 {
	letter-spacing: 1px;
	font-weight : 500;
	color : #d7aa37;
	line-height : 1.4;
}
.normalTitle.downbar::after {
	content : "";
	display : inline-block;
	width : 1px;
	height : 60px;
	border-right : 1px solid #0f1e83;
	margin-top : 20px;
}
.reverceTitle {
	text-align : center;
	font-family : 'Yu Mincho', 'YuMincho', 'メイリオ', 'Meiryo', serif;
	font-size : 36px;
	font-weight : 500;
	letter-spacing: 2px;
	color : #ffffff;
	line-height : 1.4;
	height : 102px;
	padding-top : 38px;
}
.reverceTitle.t_news {
	background : url(../img/news_ttl.png) no-repeat center top;
}
.reverceTitle.e_profile {
	background : url(../img/profile_ttl.png) no-repeat center top;
	position : relative;
	left : 24px;
}
.reverceTitle.e_recruit {
	background : url(../img/recruit_ttl.png) no-repeat center top;
}
.contactTitle {
	text-align : center;
	font-family : 'Yu Mincho', 'YuMincho', 'メイリオ', 'Meiryo', serif;
	font-size : 36px;
	font-weight : 500;
	letter-spacing: 2px;
	color : #707070;
	line-height : 1.4;
	height : 82px;
	padding-top : 38px;
	background : url(../img/contact_ttl.png) no-repeat center top;
}
.contactTitle.e_essential {
	background : url(../img/essential_ttl.png) no-repeat center top;
}
@media only screen and (max-width: 720px) {
	.normalTitle.downbar::after {
		height : calc(3vw + 30px);
		margin-top : 2vw
	}
	.centerWrap {
		padding : 13vw 0 12vw 0;
		background-repeat : no-repeat;
		background-position : center center;
		background-size : cover;
	}
	.centerTitle {
		width : 86%;
		padding : 7vw;
		box-sizing: border-box;
	}
	.supportInner p {
		line-height : 2.0;
		padding : 20px 0;
	}
}
@media only screen and (max-width: 480px) {
	.newsWrapOuter {
		height : auto;
		padding-bottom : 6vw;
	}
	.newsItem a {
		display : block;
		padding : 0px 10px 8px 10px;;
	}
	.newsItem p {
		font-size : 13px;
	}
	.newsItem .date {
		width : 100%;
	}
	.newsItem .comm {
		width : 100%
	}
	.newsItem .new {
		position : absolute;
		top : 16px;
		right : 0px;
		width : 70px;
		color : #44ac67;
		font-size : 12px;
	}
}
@media only screen and (max-width: 480px) {
	.topContactWrap p {
		text-align : left !important;
	}
}

.pager {
	width: 100%;
	text-align: center;
}
.pager li {
	display: inline-block;
	font-size: 24px;
	line-height: 1.0;
	vertical-align: top;
}
.pager span {
	display: inline-block;
	font-size : 18px;
	margin: 0 4px;
	width : 40px;
	line-height : 38px;
	padding-bottom : 2px;
	color: #ffffff;
	background-color : #1e9f9f;
	font-weight: bold;
	vertical-align: middle;
	border-radius : 20px;
}
.pager span.disable {
	display: none;
}
.pager a.number {
	display: inline-block;
	font-size : 18px;
	margin: 0 4px;
	width : 40px;
	line-height : 38px;
	padding-bottom : 2px;
	color : #1e9f9f;
	font-weight: bold;
	vertical-align: middle;
	transition: 0.3s;
	border-radius : 20px;
	background-color : #ffffff;
}
.pager a.arrow {
	display: inline-block;
	font-size : 18px;
	margin: 0 4px;
	width : 40px;
	line-height : 38px;
	padding-bottom : 2px;
	color : #1e9f9f;
	font-weight: bold;
	vertical-align: middle;
	transition: 0.3s;
	border-radius : 20px;
	background-color : #ffffff;
}
.pager em {
	display: inline-block;
	margin: 0 14px;
	color: #ffffff;
	font-style: normal;
	vertical-align: top;
}
.pager a.gray {
	background-color : #b3b3b3;
	border : 1px solid #b3b3b3;
	font-family: 'Arsenal', sans-serif;
	font-size : 36px;
}
.pager a:hover {
	color: #000000;
	background-color : #e6fafa;
}
@media only screen and (max-width: 480px) {
	.pager li {
		font-size: 18px;
	}
	.pager span {
		font-size : 16px;
		width : 30px;
		margin: 0 3px;
		line-height : 28px;
		border-radius : 18px;
	}
	.pager a.number {
		display: inline-block;
		font-size : 16px;
		margin: 0 3px;
		width : 16px;
		line-height : 28px;
		border-radius : 18px;
	}
	.pager a.arrow {
		display: inline-block;
		font-size : 16px;
		margin: 0 3px;
		width : 16px;
		line-height : 28px;
		border-radius : 18px;
	}
}
.infomationItem {
	position : relative;
	width : 47%;
}
.infomationItem img {
	width : 100%;
}
.infomationItem .title {
	position : absolute;
	top : -12px;
	left : -12px;
	background-color : #327851;
	color : #ffffff;
	font-weight : 700;
	line-height : 1.8;
	padding : 0 8px;
	letter-spacing: 2px;
}
@media only screen and (max-width: 480px) {
	.infomationItem {
		width : 100%;
	}
	.infomationItem.mgt60 {
		margin-top : calc(6vw + 12px) !important;
	}
}

.companyText {
	text-align: left;
	color: #464646;
	font-size: 16px;
	line-height: 2.0;
	padding: 20px 0 12px 0;
}

.companyText span {
	display: block;
	margin-bottom: 24px;
}

.companyText .name {
	text-align: right;
	color: #464646;
	font-size: 16px;
	padding: 20px 0 0 0;
}

.newsWrap {
	width : 100%;
	max-width : 831px;
}
.newsFlex {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	width : 100%;
	max-width : 1200px;
	margin : 0 auto;
	box-sizing: border-box;
}
.overNews {
	width : 68%;
	max-width : 860px;
	box-sizing: border-box;
}
.overNews .newsListWrap {
	width : 100%;
	background-color : #ffffff;
	padding : 60px 60px 80px 60px;
	box-sizing: border-box;
	z-index : 90;
	border-radius : 50px;
	box-sizing: border-box;
}
.overNews .newsItem {
	text-align : left;
	font-size : 1rem;
	color : #2e2d33;
	font-weight : 500;
}
.overNews .newsItem .newsInner {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	position : relative;
	padding : 36px 0;
	border-bottom : 1px dotted #4c2b0a;
}
.overNews .newsItem p {
	color : #4c2b0a;
	line-height : 1.2;
	text-align : left;
}
.overNews .newsItem .date {
	width : 120px;
	font-weight : 700;
}
.overNews .newsItem .comm {
	width : calc(100% - 150px);
	margin-left : 2%;
	height : 24px;
	font-weight : 500;
	overflow : hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.overNews .newsItem .new {
	width : 36px;
	padding-left : 0;
	position : relative;
	top : -5px;
}
.overNews .newsItem .new img {
	width : 8vw;
	max-width : 36px;
}
.overNews .newsItem .newsInner a {
	color : #2e2d33;
	padding : 0 !important;
}
.newsRight {
	width : 24%;
	max-width : 420px;
	z-index : 90;
}
.newsRight .arcive {
	box-sizing: border-box;
}
.newsRight h3 {
	font-weight : 500;
	color : #000000;
	position : relative;
}
.newsRight h3::after {
	content : "";
	text-align : left;
	width : 50px;
	height : 3px;
	background-color : #1e9f9f;
	display : block;
	margin : 10px 0 16px 0;
}
.newsRight a {
	font-size : 1.2rem;
	font-weight : 600;
	color : #4c4c4c;
	line-height : 2.0;
	transition: 0.3s;
}
.newsRight a.active {
	font-weight : 700;
	color : #1e9f9f;
	text-decoration : underline !important;
}
.newsRight a:hover {
	color : #6a6a6a;
}
.newsRight a span {
	font-weight : 300;
}
.selecter {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
}
.selecter a {
	display : block;
	line-height : 2.0;
	font-size : 16px;
	color : #0f1c84;
	background-color : #ffffff;
	border : 2px solid #0f1c84;
	padding : 0 24px;
	margin : 0 10px;
}
.selecter a.active {
	color : #ffffff;
	background-color : #0f1c84;
}

.newsItem {
	width : 100%;
	max-width : 988px;
	border : 15px solid #f9f2ee;
	border-radius : 40px;
	padding : 20px 42px 35px 42px;
	box-sizing: border-box;
}
.newsItem.non {
	border-style : none;
	border-radius : 0;
	padding : 20px 60px 35px 0;
}
.newsItem.non .photo img{
	width : 100%;
}
.newsInner {
	padding : 40px 0 32px 0;
	border-bottom : 1px solid #f0f0f0;
}
.newsItem .newsInner a {
	position : relative;
	transition: 0.4s;
}
.newsItem .newsInner a::after {
	content : "\2192";
	position : absolute;
	top : -4px;
	right : 6px;
	width : 40px;
	line-height : 30px;
	padding-bottom : 10px;
	text-align : center;
	font-size : 36px;
	font-weight : 200;
	background-color : #1e9f9f;
	color : #ffffff;
	border-radius : 50%;
	font-family: "Dosis", sans-serif;
	border : 2px solid #1e9f9f;
	transition: 0.4s;
}
.newsItem .newsInner a:hover {
	opacity : 0.6;
}
.newsItem .newsInner a:hover::after {
	background-color : #ffffff;
	color : #1e9f9f;
}
.newsItem .date {
	font-weight : 400;
	line-height : 1.6;
	text-align : left;
	margin-right : 20px;
	color : #a5a5a5;
}
.newsItem .cate {
	padding : 0 10px;
	line-height : 1.8;
	min-width : 58px;
	background-color : #1e9f9f;
	color : #ffffff;
	border-radius : 20px;
}
.newsItem .comm {
	padding-left : 2%;
	padding-right : 80px;
	height : 24px;
	overflow : hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.newsItem .new {
	width : 14%;
	padding-left : 4%;
}
.newsParts {
	display : -webkit-flex;
	display : flex;
}
.newsParts .date {
	font-size : 1rem;
	color : #000000;
	font-weight : 500;
	line-height : 1.6;
	text-align : left;
	margin-right : 20px;
}
.newsParts .cate {
	font-size : 14px;
	color : #ffffff;
	background-color : #024886;
	padding : 0 10px;
	line-height : 1.8;
}
.newsListWrap h2 {
	font-size : 36px;
	color : #1a1a1a;
	padding : 20px 0 10px 0;
	line-height : 1.8;
}
.newsListWrap .photo img {
	width : 100%;
}
.newsListWrap .detailComm {
	font-size : 1rem;
	color : #000000;
	font-weight : 400;
	line-height : 1.8;
	text-align : left;
}
#newsmenuTab {
	display : none;
}
@media only screen and (max-width: 960px) {
	.newsItem {
		border : 10px solid #f9f2ee;
		border-radius : calc(3vw + 10px);
		padding : 2vw 4.2vw 3.5vw 4.2vw
	}
	.newsWrapOuter .normalWrap {
		padding : 0 10vw;
	}
	.newsFlex .newsWrap {
		width : calc(82% - 6vw);
		padding-right : 6vw;
	}
	.newsWrap .imageTitle img {
		width : 50%;
		max-width : 269px;
	}
	.newsRight h3 {
		font-size : calc(0.62vw + 14.0px);
		letter-spacing: 1px;
	}
	.newsListWrap h2 {
		font-size : calc(2.81vw + 9.0px);
		line-height : 1.6;
	}
	.newsItem a::after {
		right : -10px;
	}
}
@media only screen and (max-width: 640px) {
	.newsInner {
		padding : calc(3vw + 10px) 0 calc(2.2vw + 10px) 0;
	}
	.newsWrapOuter .rtlPageTitle {
  		top: 0;
	}
	.newsWrapOuter .normalWrap {
		padding : 0 4vw;
	}
	.newsItem .date {
		display : inline-block;
		width: auto;
	}
	.newsItem .cate {
		display : inline-block;
	}
	.newsItem .comm {
		padding-left : 0;
		padding-right : 100px;
		margin-top : 10px;
	}
	.newsItem a::after {
		top : 6px;
		right : 0px;
		width : 30px;
		line-height : 22px;
		padding-bottom : 8px;
		font-size : 24px;
	}
}
@media only screen and (max-width: 480px) {
	.newsWrapOuter {
		height : auto;
		padding-bottom : 12vw;
	}
	.newsItem a {
		flex-wrap : wrap;
	}
	.newsItem a .comm {
		width : calc(100% - 40px);
		padding-left : 0;
		padding-right : 0;
		margin-top : 6px;
	}
	.newsItem .cate {
		font-size: 12px;
		text-align : center;
	}
	.newsItem p {
		font-size : 13px;
	}
	.newsFlex .newsWrap {
		width : 100%;
		padding-right : 0;
	}
	.newsFlex .newsRight {
		width : 160px;
		position : absolute;
		right : -228px;
		transition: 0.5s;
		padding : 10px 32px;
		background-color : #ffffff;
		border : 2px solid #009ac0;
	}
	#newsmenuTab {
		display : block;
		color : #ffffff;
		font-size : 16px;
		background-color : #009ac0;
		position : absolute;
		width : 24px;
		height : 24px;
		top : -2px;
		left : -36px;
		padding : 12px 4px 19px 8px;
		border-radius : 8px 0 0 8px;
	}
	.newsFlex .newsRight.active {
		right : -2px;
	}
	.newsItem .newsInner a::after {
		top : calc(50% - 20px);
		right : 4px;
		width : 30px;
		line-height : 22px;
		padding-bottom : 8px;
		font-size : 24px;
	}
}
.newsParts {
	display : -webkit-flex;
	display : flex;
}
.newsParts .date {
	font-size : 1rem;
	font-weight : 500;
	line-height : 1.6;
	text-align : left;
	margin-right : 20px;
}
.newsParts .cate {
	font-size : 14px;
	color : #ffffff;
	background-color : #024886;
	padding : 0 10px;
	line-height : 1.8;
}
.newsListWrap .photo img {
	width : 100%;
}
.newsListWrap .photo img.contain {
	width : 100%;
	object-fit : cover;
	height : 56vw;
	max-height : 600px;
}
#newsmenuTab {
	display : none;
}
.pdt80k {
	padding-top : 80px;
}
@media only screen and (max-width: 960px) {
	.overNews .newsListWrap {
		padding : 4vw 6vw 5vw 6vw;
	}
	.overNews .newsItem .newsInner {
		padding : 3.6vw 0;
	}
	.newsItem.non {
		padding: 32px 0px 20px 0;
	}
	.newsItem.non.dtl {
		padding: 32px 10px 20px 10px;
	}
	.newsRight .categori {
		padding : 0 4vw;
	}
	.newsRight .arcive {
		padding : 4vw;
	}
	.newsWrapOuter .normalWrap {
		padding : 0 10vw;
	}
	.newsFlex .newsWrap {
		width : calc(82% - 1vw);
		padding-right : 1vw;
	}
	.newsWrap .imageTitle img {
		width : 50%;
		max-width : 269px;
	}
	.reverceTitle {
		font-size : 28px;
		height : 92px;
		padding-top : 30px;
	}
	.contactTitle {
		font-size : 28px;
		height : 70px;
		padding-top : 38px;
	}
	.newsRight h3 {
		font-size : calc(0.62vw + 14.0px);
		letter-spacing: 1px;
	}
	.newsListWrap h2 {
		font-size : calc(2.81vw + 9.0px);
		line-height : 1.6;
	}
	.pdt80k {
		padding-top : 4vw;
	}
}
@media only screen and (max-width: 720px) {
	.pdt80k {
		padding-top : 0vw;
	}
}
@media only screen and (max-width: 640px) {
	.selecter a {
		font-size : calc(1.25vw + 8.0px);
		border : 1px solid #0f1c84;
		padding : 0 2.4vw;
		margin : 0 1vw;
	}
	.newsWrapOuter .rtlPageTitle {
  		top: 0;
	}
	.newsWrapOuter .normalWrap {
		padding : 0 4vw;
	}
	.overNews .newsItem .newsInner {
		display : block;
		padding : 3vw 0;
		border-bottom : 1px dotted #4c2b0a;
	}
	.overNews .newsItem .date {
		width : 100%;
	}
	.overNews .newsItem .comm {
		width : 95%;
		margin-left : 5%;
		height : 1.5em;
		padding-top : 8px;
	}
}
@media only screen and (max-width: 480px) {
	.newsWrapOuter {
		height : auto;
		padding-bottom : 12vw;
	}
	.reverceTitle {
		font-size : 24px;
		height : 48px;
		padding-top : 24px;
	}
	.contactTitle {
		font-size : 24px;
		height : 62px;
		padding-top : 36px;
	}
	.newsFlex .newsWrap {
		width : 100%;
		padding-right : 0;
	}
	.newsFlex .newsRight {
		width : 160px;
		position : absolute;
		right : -165px;
		transition: 0.5s;
		padding : 0;
		background-color : #ffffff;
		border : 2px solid #1e9f9f;
	}
	#newsmenuTab {
		display : block;
		color : #ffffff;
		font-size : 16px;
		background-color : #1e9f9f;
		position : absolute;
		width : 24px;
		height : 24px;
		top : -2px;
		left : -36px;
		padding : 12px 4px 19px 8px;
		border-radius : 8px 0 0 8px;
	}
	.newsFlex .newsRight.active {
		right : -2px;
	}
}
@media only screen and (max-width: 400px) {
	.pdt80k {
		padding-top : 6vw;
	}
}

.mediaWrap {
	width : 100%;
}
.mediaWrap .mediaListWrap {
	width : 100%;
}
.mediaWrap .mediaDetailWrap {
	width : 100%;
	max-width : 862px;
	padding : 50px 50px 80px 50px;
	background-color : #ffffff;
	border-radius : 50px;
	box-sizing: border-box;
	margin : 0 auto;
}
.mediaWrap .mediaDetailWrap .photo img{
	max-width : 100%;
}
.mediaWrap .mediaItem {
	width : 30%;
	text-align : center;
	background-color : #ffffff;
	padding : 30px;
	border-radius : 30px;
	box-sizing: border-box;
}
.mediaWrap .mediaItem p {
	color : #4c2b0a;
	line-height : 1.2;
	text-align : center;
}
.mediaWrap .mediaItem .image img {
	width : 100%;
	height : 20vw;
	max-height : 200px;
	object-fit: cover;
}
.mediaWrap .mediaItem .date {
	font-weight : 400;
}
.mediaWrap .mediaItem .comm {
	display : inline-block;
	color : #f2914a;
	font-weight : 500;
	text-decoration: underline;
	text-underline-offset: 12px;
	height : calc(1.4em + 12px);
	width : 100%;
	overflow : hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.mediaWrap .mediaItem .new {
	width : 36px;
	padding-left : 0;
	position : relative;
	top : -5px;
}
.mediaWrap .mediaItem .new img {
	width : 8vw;
	max-width : 36px;
}
.mediaWrap .mediaItem .newsInner a {
	color : #2e2d33;
	padding : 0 !important;
}
.newsDetailParts {
	align-items: flex-end;
	border-bottom : 2px solid #f1914a;
	padding-bottom : 10px;
}
.newsDetailParts .ttle {
	font-weight : 500;
}
@media only screen and (max-width: 800px) {
	.mediaWrap .mediaDetailWrap {
		padding : 6vw 6vw 8vw 6vw;
		background-color : #ffffff;
		border-radius : 6vw;
	}
	.mediaWrap .mediaItem {
		width : 46%;
		padding : 4vw;
		border-radius : 4vw;
	}
	.mediaWrap .mediaItem .image img {
		height : 32vw;
		max-height : 200px;
	}
}
.mgtopmessInner h2 span {
	color : #1e9f9f;
}
.imgFlex {
	width : 96%;
	max-width : 820px;
	position : relative;
	top : -40px;
}
.imgFlex img {
	width : 16%;
	max-width : 120px;
}
.aboutIcons {
	width : 100%;
	max-width : 1200px;
	padding : 0px 60px 0px 60px;
	box-sizing: border-box;
	background-color : rgba(255, 255, 255, 0.7);
}
.aboutIcons p {
	line-height : 2.2;
	color : #4c4c4c;
	position : relative;
	top : -40px;
}
br.kg_smp {
    display : none;
}
@media only screen and (max-width: 1200px) {
	.imgFlex {
		width : 100%;
	}
	.aboutIcons p {
		line-height : 1.8;
	}
	.aboutIcons {
		padding : 0px calc(4vw + 10px);
	}
}
@media only screen and (max-width: 710px) {
	.imgFlex {
		top : -4vw;
	}
	.aboutIcons p {
		top : -4vw;
	}
}
@media only screen and (max-width: 480px) {
    br.kg_smp {
        display : block;
    }
}

/* 各ページ */

/* 仕事内容 */

.pageTops {
	width : 100%;
	height : 569px;
}
.topTitle {
	margin: 0 auto;
	position: absolute;
	top : 0;
	left : 50%;
}
.topTitle {
	margin: 0 auto;
	position: absolute;
	top : 0;
	left : 50%;
	transform: translateX(-25%);
	white-space: nowrap;
}
.subTopTitle {
	display : inline-block;
}
.subTopTitle h2 {
	display : inline-block;
}

.busiWrap {
	width : 100%;
	max-width : 1676px;
}
.flexRev {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
	margin-left : auto;
}
.flexFor {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	margin-right : auto;
}
.busiWrap .busiImg {
	width : 60%;
	max-width : 922px;
}
.busiWrap .busiImgInner {
	
}
.busiWrap .busiImgInner img {
	width : 100%;
}
.busiMain {
	width : 40%;
}
.busiMain .normalTitle {
	width : 244px;
	font-size : 30px;
}
.busiWrap dl {
	display : table;
	width : 100%;
}
.busiWrap dt {
	display : table-cell;
	vertical-align: top;
	width : 100px;
	font-size : 60px;
	font-weight : 700;
	font-style : italic;
	color : #e0e0e0;
	line-height : 1.0;
	font-family : 'Helvetica Neue', 'Helvetica Neue OTS', Helvetica, sans-serif;
}
.busiMain dd {
	display : table-cell;
	vertical-align: top;
}
.busiMain dd h3 {
	font-size : 20px;
	font-weight : 500;
	font-style : italic;
	color : #16aa20;
}
.busiMain dd p {
	font-size : 16px;
	font-weight : 500;
	color : #000000;
	line-height : 1.4;
	margin-top : 16px;
}
.galleryItem {
	width : 19.5%;
}
.galleryTrans {
	width : 19.5%;
	font-size : 0;
	height : 0;
}
.galleryItem .img img {
	width : 100%;
	height : 18vw;
	max-height : 184px;
	object-fit: cover;
}
.galleryItem .comm h3 {
	color : #000000;
	font-size : 16px;
	font-weight : 500;
	line-height : 2.0;
}
.galleryItem .comm p {
	color : #000000;
	font-size : 14px;
	font-weight : 500;
}
.galleryItem .comm p.bline {
	border-bottom : 1px dashed #afafaf;
	padding-bottom : 10px;
	margin-bottom : 6px;
}
.galleryMore {
	text-align : center;
}
@media only screen and (max-width: 1560px) {
	.busiWrap .busiImg {
		width : calc(50vw + 100px);
	}
	.busiWrap .busiImgInner img {
		width : 100%;
		height : 42vw;
		max-height : 585px;
		object-fit : cover;
	}
}
@media only screen and (max-width: 1380px) {
	.galleryItem {
		width : 260px;
		padding : 10px;
	}
	.galleryTrans {
		width : 260px;
		padding : 0 11px;
	}
}
@media only screen and (max-width: 1180px) {
	.galleryItem {
		width : 22%;
		padding : 1vw;
	}
	.galleryTrans {
		width : 22%;
		padding : 0 calc(1vw + 1px);
	}
	.galleryItem .img img {
		height : 15vw;
		max-height : 184px;
	}
	.galleryItem .img span {
		height : 15vw;
		max-height : 184px;
	}
}
@media only screen and (max-width: 1200px) {
	.subTopTitle {
		padding-top : 20px;
	}
	.busiWrap dt {
		width : 8vw;
		font-size : 5vw
	}
	.busiMain dd h3 {
		font-size : calc(1vw + 8.0px);
	}
	.busiMain dd p {
		font-size : calc(0.75vw + 7.0px);
		margin-top : calc(0.75vw + 7.0px);
	}
	.busiMain dl {
		padding : 0 10px;
		box-sizing: border-box;
	}
	.busiMain dl.mgt40 {
		margin-top : 2vw !important;
	}
}
@media only screen and (max-width: 1000px) {
	.busiMain .normalTitle {
		font-size : 24px;
		width : 200px;
		padding-left : 16px;
		text-align : left;
	}
}
@media only screen and (max-width: 800px) {
	.topTitle {
		margin: 0 auto;
		top : -6vw;
		left : 2vw;
		transform: translateX(0);
		text-align : center;
		width : 100%;
	}
	.subTopTitle {
		display : inline-block;
	}
	.flexRev {
		display : block;
		margin-left : 0;
	}
	.flexFor {
		display : block;
		margin-right : 0;
	}
	.busiWrap .busiImg {
		width : 100%;
	}
	.busiWrap .busiImgInner img {
		width : 100%;
	}
	.busiMain {
		width : 100%;
	}
	.busiWrap dt {
		width : calc(8vw + 20px);
		font-size : calc(5.09vw + 17.5px);
	}
	.busiMain dd h3 {
		font-size : calc(1.25vw + 10.0px);
	}
	.busiMain dd p {
		font-size : calc(0.62vw + 11.0px);
		margin-top : calc(0.62vw + 11.0px);
	}
	.galleryItem {
		width : 30%;
		padding : 1.2vw;
	}
	.galleryTrans {
		width : 30%;
		padding : 0 calc(1.2vw + 1px);
	}
	.galleryItem .img img {
		height : 20vw;
	}
	.galleryItem .img span {
		height : 20vw;
	}
	.galleryItem .comm h3 {
		font-size : calc(0.62vw + 11.0px);
	}
	.galleryItem .comm p {
		font-size : calc(0.62vw + 10.0px);
	}
	.busiMain .normalTitle {
		margin-left : auto;
		margin-right : auto;
		padding-left : 0;
		padding-right : 10px;
		text-align : center;
	}
}
@media only screen and (max-width: 720px) {
	.topTitle {
		top : 20px;
		left : 0vw;
	}
	.subTopTitle {
		margin-top : 70px !important;
	}
}
@media only screen and (max-width: 480px) {
	.busiMain .normalTitle {
		font-size : 20px;
		width : 160px;
		padding-left : 1vw;
		letter-spacing: 0;
	}
	.galleryItem {
		width : 44%;
		padding : 1.4vw;
	}
	.galleryTrans {
		width : 44%;
		padding : 0 calc(1.4vw + 1px);
	}
	.galleryItem .img img {
		height : 28vw;
	}
	.galleryItem .img span {
		height : 28vw;
	}
}

/* 会社案内 */

.messageBlock {
	width : 100%;
	height : 769px;
	background : url(../img/preg_img.jpg) no-repeat center center;
	background-size : cover;
	padding-top : 74px;
	padding-left : 67px;
	box-sizing: border-box;
}
.messageWrap .messageInner {
	width : 60%;
	max-width : 736px;
	background-color : rgba(255, 255, 255, 0.8);
	padding : 48px 54px;
	box-sizing: border-box;
}
.messageInner p {
	font-size : 17px;
	color : #000000;
	font-weight : 500;
	line-height : 2.0;
}
.plofTable {
	width : 100%;
	max-width : 930px;
}
.plofTable table {
	width : 100%;
	border-collapse: collapse;
	font-size : 14px;
}
.plofTable table th {
	width : 25%;
	background-color : #f6f6f6;
	padding : 12px 24px;
	text-align : left;
	vertical-align: middle;
	font-weight : 500;
	color : #000000;
	border : 1px solid #d7d7d7;
}
.plofTable table td {
	width : 75%;
	background-color : #ffffff;
	padding : 12px 24px;
	text-align : left;
	vertical-align: middle;
	font-weight : 500;
	color : #6d6d6d;
	border : 1px solid #d7d7d7;
}

.serviceWrap .tel {
	text-align : center;
	margin-top : 20px;
}
.serviceWrap .tel p {
	display : inline-block;
	color : #000000;
	font-size : 36px;
	padding : 0 64px 0 32px;
	border : 1px solid #000000;
	letter-spacing: 2px;
}
.serviceWrap .tel p a {
	color : #000000;
	font-size : 48px;
	letter-spacing: 3px;
}
.map iframe {
	width : 100%;
	height : 418px;
}
.bannerWrap a {
	display : block;
	width : 31%;
	font-size : 0;
}
.bannerImg {
	width : 100%;
}
.mgtopmessInner p br {
	display : none;
}
@media only screen and (max-width: 1300px) {
	.messageBlock {
		height : 68vw;
		max-height : 769px;
		padding-top : 7vw;
		padding-left : 6.5vw;
	}
	.messageWrap .messageInner {
		padding : 6vw 4vw;
	}
	.messageWrap .messageInner p {
		font-size : calc(0.41vw + 11.7px);
	}
}
@media only screen and (max-width: 1100px) {
	.messageBlock {
		height : 68vw;
		max-height : 769px;
		padding-top : 4vw;
		padding-left : 3vw;
	}
	.messageWrap .messageInner {
		padding : 4vw 3vw;
	}
	.messageWrap .messageInner p {
		line-height : 1.8;
	}
	.messageInner .mgb30 {
		margin-bottom : 2vw !important;
	}
	.messageInner .mgt50 {
		margin-top : 3vw !important;
	}
}
@media only screen and (max-width: 800px) {
	.serviceWrap .tel p {
		font-size : calc(4.33vw + 8.4px);
		padding : 0 6.4vw 0 3.2vw;
		letter-spacing: 1px;
	}
	.serviceWrap .tel p a {
		font-size : calc(4.58vw + 11.4px);
		letter-spacing: 1px;
	}
	.messageBlock {
		height : auto;
		padding-top : 0;
		padding-left : 0;
	}
	.messageWrap .messageInner {
		padding : 4vw 3vw;
	}
	.messageWrap .messageInner p {
		line-height : 1.8;
	}
	.messageInner .mgb30 {
		margin-bottom : 2vw !important;
	}
	.messageInner .mgt50 {
		margin-top : 3vw !important;
	}
	.plofTable table {
		font-size : calc(0.42vw + 10.7px);
	}
	.plofTable table th {
		padding : 1.2vw 2.4vw
	}
	.plofTable table td {
		padding : calc(1vw + 6px) 2.4vw
	}
}
@media only screen and (max-width: 760px) {
	.messageBlock {
		width : 100%;
		height : auto;
		max-height : auto;
		background : url(../img/preg_img.jpg) no-repeat top right;
		background-size : 100%;
		padding-top : 0;
		padding-left : 0;
	}
	.messageWrap .messageInner {
		width : 100%;
		max-width : 760px;
		background-color : transparent;
		padding : 56vw 4vw 8vw 4vw;
	}
	.messageInner p {
		font-size : calc(0.91vw + 10.1px);
		line-height : 1.8;
	}
}
@media only screen and (max-width: 680px) {
	.mgtopmessInner p br {
		display : block;
	}
}
@media only screen and (max-width: 480px) {
	.bannerWrap a {
		width : 70%;
		margin : 3vw auto;
	}
}
@media only screen and (max-width: 400px) {
	.messageWrap .messageInner {
		padding : 56vw 0 8vw 0;
	}
	.messageWrap .messageInner div img{
		width : 180px;
	}
}

.addheader {
	margin-top : -140px;
	padding-top : 140px;
}
.normalWrap2 .topcomm {
	width : 100%;
	padding-left : 20px;
	padding-right : 20px;
	box-sizing: border-box;
}
.menuTag {
	width : 100%;
	max-width : 1100px;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
	margin : 60px auto;
	padding : 0 10px;
	box-sizing: border-box;
}
.menuTag p {
	display : block;
	width : 23%;
	margin-bottom : 20px;
}
.menuTag a {
	display : block;
	position : relative;
	font-size : 1rem;
	width : 100%;
	text-align : left;
	line-height : 1.0;
	padding : 18px 30px;
	color : #1e9f9f;
	font-weight : 500;
	background-color : #ffffff;
	border : 1px solid #1e9f9f;
	box-sizing: border-box;
	transition: 0.3s;
}
.menuTag a::after {
	content : "\2193";
	position : absolute;
	top: 40%;
	right : 12px;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	display : block;
	font-size : 1.8rem;
	width : 30px;
	font-family: "Dosis", sans-serif;
	font-weight : 200;
	line-height : 1.0;
	color : #1e9f9f;
	transition: 0.3s;
}
.menuTag a:hover {
	color : #ffffff;
	background-color : #1e9f9f;
}
@media only screen and (max-width: 960px) {
	.menuTag p {
		width : 32%;
		margin-bottom : 20px;
	}
}
@media only screen and (max-width: 720px) {
	.menuTag a {
		padding : calc(1vw + 8px) 3vw;
	}
	.menuTag a::after {
		right : 0px;
	}
}
@media only screen and (max-width: 540px) {
	.menuTag p {
		width : 48%;
		margin-bottom : calc(1vw + 10px);
	}
	.menuTag a::after {
		right : -8px;
	}
}

.serviceParts {
	width : 100%;
	max-width : 1100px;
}
.serviceParts.bdr {
	border-top : 2px solid #b7b6b4;
}
.serviceFlex {
	width : 100%;
	align-items: flex-end;
}
.serviceFlex.rev {
	flex-direction: row-reverse;
}
.serviceFlex .menuItemInner {
	width : 50%;
	padding-right : 4%;
	padding-left : 0;
	box-sizing: border-box;
	padding-bottom : 20px;
}
.serviceFlex .menuItemInner p.comm {
	font-size : 1rem;
	line-height : 1.8;
	min-height : 7em;
}
.serviceFlex.rev .menuItemInner {
	padding-right : 0;
	padding-left : 4%;
}
.serviceFlex .menuItemInner .title .ttl {
	color : #1e9f9f;
	padding-left : 30px;
}
.serviceFlex .menuItemInner .title .ttl::after {
	content: "";
	display: block;
	position: relative;
	width: 72px;
	height: 2px;
	font-size: 0;
	background-color: #1e9f9f;
	margin-top: 14px;
}
.serviceFlex .image {
	width : 50%;
}
.serviceFlex .image img {
	width : 100%;
	max-width : 550px;
}
.serviceWork {
	background-color : #ffffff;
	padding : 40px;
	box-sizing: border-box;
}
.serviceWork h4 {
	font-weight : 400;
}
.serviceWork li {
	line-height : 1.8;
	padding : 2px 0;
}
@media only screen and (max-width: 720px) {
	.serviceFlex .menuItemInner {
		width : 100%;
		padding-left : 0;
		padding-right : 0;
		box-sizing: border-box;
		padding-bottom : 20px;
	}
	.serviceFlex.rev .menuItemInner {
		width : 100%;
		padding-left : 0;
		padding-right : 0;
		box-sizing: border-box;
		padding-bottom : 20px;
	}
	.serviceFlex .image {
		width : 100%;
		text-align : center;
	}
	.serviceWork {
		padding : calc(3vw + 10px);
	}
}
.gimgback {
	background: url(../img/gimg_back.jpg) no-repeat top center;
	padding-top: 10px;
	max-height: 720px;
	height: auto;
	box-sizing: border-box;
}
.graphWrap {
	width : 100%;
	max-width : 860px;
}
.graphWrap li {
	width : 24%;
	max-width : 200px;
}
.graphWrap li img {
	width : 100%;
	height : 15vw;
	max-height : 150px;
	object-fit: cover;
}
.graphWrap .comm {
	color : #ffffff;
	line-height : 1.8;
	max-width : 710px;
}
.flowWrap {
	
}
.flowWrap h3 {
	line-height : 1.8;
}
.flowWrap h3 span {
	color : #1e9f9f;
}
.flowWrap p {
	line-height : 1.8;
	border-bottom : 2px solid #bababa;
}
.flowItem {
	width : 20.2%;
	text-align : center;
	position : relative;
}
.flowItem::after {
	content : "";
	position : absolute;
	top : 30%;
	right : -12%;
	width : 20px;
	height : 20px;
	border-top : 2px solid #1e9f9f;
	border-right : 2px solid #1e9f9f;
	transform: rotate(45deg);
	border-radius : 2px;
}
.flowItem.none::after {
	top : 0;
	right : 0;
	width : 0;
	height : 0;
	border-top : none;
	border-right : none;
}
.flowItem.arw4n::after {
	top : 0;
	right : 0;
	width : 0;
	height : 0;
	border-top : none;
	border-right : none;
}
.flowTrans {
	width : 20.2%;
	font-size : 0;
	height : 1px;
}
.flowList .step {
	display : inline-block;
	background-color : #1e9f9f;
	font-size : 1.2rem;
	font-weight : 700;
	line-height : 1.6;
	padding : 0 10px;
	color : #ffffff;
}
.flowList .img {
	
}
.flowList .img img {
	width : 80%;
	max-width : 142px;
}
.flowList h4 {
	color : #1e9f9f;
}
.flowList .comm {
	font-size : 1rem;
	text-align : left;
}
@media only screen and (max-width: 900px) {
	.flowItem {
		width : 30.2%;
	}
	.flowItem.arw3n::after {
		top : 0;
		right : 0;
		width : 0;
		height : 0;
		border-top : none;
		border-right : none;
	}
	.flowItem.arw4n::after {
		top : 30%;
		right : -12%;
		width : 20px;
		height : 20px;
		border-top : 2px solid #1e9f9f;
		border-right : 2px solid #1e9f9f;
	}
}
@media only screen and (max-width: 560px) {
	.flowItem {
		width : 45.2%;
	}
	.flowItem.arw3n::after {
		top : 30%;
		right : -12%;
		width : 20px;
		height : 20px;
		border-top : 2px solid #1e9f9f;
		border-right : 2px solid #1e9f9f;
	}
	.flowItem.arw2n::after {
		top : 0;
		right : 0;
		width : 0;
		height : 0;
		border-top : none;
		border-right : none;
	}
}


.imgback { 
	background: url(../img/back.jpg) no-repeat top center;
	padding-top: 90px;
	max-height: 1080px;
	height: auto;
	box-sizing: border-box;
}
.contWrap {
	text-align: center;
	padding: 0 10px;
}
.contWrap .centerWord {
	margin: 50px 0 32px 0;
}

.centerComm  {
	font-size : 16px;
	color : #000000;
	text-align : center;
	font-weight : 400;
}
.formButton  {
	text-align : center;
}
.formButton a {
	text-align : center;
	display : inline-block;
	font-size : 32px;
	color : #ffffff;
	font-weight : 700;
	width : 80%;
	max-width : 625px;
	padding : 20px 0 24px 0;
	line-height : 1.6;
	background-color : #000000;
	transition: 0.4s;
}
.formButton a img {
	position : relative;
	top : 10px;
	left : -12px;
}
.formButton a:hover {
	opacity : 0.7;
}
@media only screen and (max-width: 1060px) {
	.imgback {
		padding-top: 9vw;
	}
	.contWrap .centerWord {
		margin: 5vw 0 3vw 0;
	}
	.centerComm  {
		font-size : calc(0.41vw + 10.7px);
	}
	.contSlideInner .comm {
		padding: 4vw 3vw 8vw 3vw;
	}
	.contSlideInner .comm .check {
		font-size : calc(0.81vw + 15.4px);
		margin-bottom: 2vw;
		border-bottom: calc(0.4vw + 3px) solid #000000;
	}
	.contSlideInner .comm p {
		font-size : calc(0.41vw + 11.7px);
	}
	.navi-btn {
		width: calc(5.09vw + 23.9px);
		height: calc(5.09vw + 23.9px);
		background-size : cover;
		top : 38vw;
	}
	.feed-prev-btn {
		left : calc(-2.55vw - 12px);
	}
	.feed-next-btn {
		right : calc(-2.55vw - 12px);
	}
	.formButton a {
		font-size : calc(2.16vw + 9.1px);
		width : 90%;
		padding : calc(2vw + 6px) 0 calc(2vw + 8px) 0;
	}
	.formButton a img {
		position : relative;
		top : 0.6vw;
		left : -12px;
		width : calc(1.8vw + 18px);
	}
}
@media only screen and (max-width: 640px) {
	.map iframe {
		height : 400px;
	}
}
@media only screen and (max-width: 480px) {
	.menuTag {
		padding : 0 10px;
		box-sizing: border-box;
		margin: 6vw auto;
	}
	.menuInner .image {
		width : 48%;
		margin : 1vw 0;
	}
	.menuInner .left {
		width : 100%;
	}
	.menuInner .right {
		width : 100%;
		margin-top : 5vw;
	}
}

.cateWrap {
	background-color : #f3f2ee;
	padding : 30px;
	box-sizing: border-box;
}
.cateWrap p {
	display : inline-block;
	margin-right : 10px;
}
.cateWrap a {
	display : inline-block;
	color : #c0c0c0;
	background-color : #ffffff;
	font-size : 1rem;
	font-weight : 500;
	line-height : 2.0;
	padding : 4px 20px;
	transition: 0.3s;
}
.cateWrap a.chk {
	background-color : #1e9f9f;
	color : #ffffff;
}
.cateWrap a:hover {
	background-color : #1e9f9f;
	color : #ffffff;
}
@media only screen and (max-width: 640px) {
	.cateWrap {
		padding : 3vw;
	}
	.cateWrap p {
		margin-right : 1vw;
	}
	.cateWrap a {
		padding : 3px 2vw;
	}
}
.woksHeadLine {
	display : -webkit-flex;
	display : flex;
	flex-wrap : wrap;
	align-items: center;
}
.woksHeadLine .date {
	color : #a5a5a5;
	font-size : 1rem;
	margin-right : 24px;
}
.woksHeadLine .cate {
	color : #ffffff;
	background-color : #1e9f9f;
	font-size : 1rem;
	line-height : 2.0;
	padding : 1px 20px;
	margin-right : 24px;
}
.woksHeadLine .cate.radius {
	border-radius : 20px;
}
.woksHeadLine .item {
	color : #4c4c4c;
	font-size : 1rem;
}
@media only screen and (max-width: 480px) {
	.woksHeadLine .cate {
		padding : 1px 16px;
		margin-right : 0px;
		text-align : center;
	}
}

.compWrap {
	position: relative;
	padding-bottom: 72px;
}
.smp_compTitle {
	display: none;
}
.compImg {
	position: relative;
	width: 100%;
	z-index: 2;
}
.compImgRec {
	position: relative;
	width: 100%;
	z-index: 2;
}
.compImgInner {
	position: relative;
	display : inline-block;
	width: 60%;
	max-width: 1152px;
}
.compImgInnerRec {
	position: relative;
	display : inline-block;
	width: 60%;
	max-width: 928px;
}
.compImg img {
	width: 100%;
	max-width: 1152px;
	height: 50vw;
	max-height: 800px;
	object-fit: cover;
}
.compImgRec img {
	width: 100%;
	max-width: 928px;
	height: 50vw;
	max-height: 675px;
	object-fit: cover;
}
.recback {
	background : url(../img/recruit_left.png) no-repeat 0 0;
}
.compMain {
	position: absolute;
	top: 64px;
	z-index: 3;
	width: 41%;
	height: 37.3vw;
	max-height: 620px;
	background-color: #ffffff;
	padding-top: 50px;
}
.compMainRec {
	position: absolute;
	top: 120px;
	z-index: 3;
	width: 780px;
	height: 32.3vw;
	max-height: 438px;
	padding : 48px 80px;
	box-sizing: border-box;
}
h2.normalTitleLeft {
	font-size: 32px;
	color: #000000;
	font-weight: 700;
	line-height: 1.4;
	text-align: left;
}
.recTitle {
	font-size: 34px;
	color: #000000;
	font-weight: 700;
	line-height: 1.4;
	text-align: left;
}
.leftWord {
	display: inline-block;
	font-weight: 400;
	line-height: 1.0;
	font-size: 18px;
	color: #ffffff;
	background-color: #000000;
	padding: 6px 12px 8px 12px;
	margin-top: 32px;
}
.rc_img {
	text-align: left;
}
.rc_shadow {
	right: 0;
}
.rc_main {
	right: 8%;
	background-color: #f8f8f8;
}
.co_img {
	text-align: right;
}
.co_shadow {
	left: 0;
}
.compMain.co_main {
	left: 8%;
	background-color: #f8f8f8;
}
.compMainRec.co_main {
	right : 830px;
	background-color: #f8f8f8;
}
.compMain .check {
	font-size: 24px;
	line-height: 1.0;
	font-weight: 700;
	display: inline-block;
	padding-bottom: 4px;
	margin-bottom: 20px;
}
.co_main .check {
	color: #000000;
	border-bottom: 6px solid #000000;
}

.rc_main .check {
	color: #000000;
	border-bottom: 6px solid #000000;
}

.compMain .word {
	font-size: 18px;
	line-height: 2.4;
	width: 80%;
	max-width: 825px;
}
.compMainRec .word {
	font-size: 16px;
	line-height: 2.0;
	width: 100%;
	max-width: 825px;
}
.co_main .word {
	color: #000000;
}
.rc_main .word {
	color: #000000;
}
.rc_main .normalTitleLeft {
	color: #000000 !important;
}
.compMain .buttons {
	width: 90%;
	max-width: 825px;
	text-align: right;
	margin-top: 36px;
}
.co_main .buttons {
	text-align: right;
}
.rc_main .buttons {
	text-align: left;
}
a.addArrow_b {
	display: inline-block;
	width: 180px;
	text-align: left;
	padding:  0 20px 2px 20px;
	font-weight : 400;
	line-height: 50px;
	color: #1e9f9f;
	background-color : #ffffff;
	border : 2px solid #1e9f9f;
	transition: 0.4s;
	position: relative;
	text-decoration: none;
}
a.addArrow_b:hover {
	color: #ffffff;
	background-color : #1e9f9f;
}
a.addArrow_b::after {
	content : "\2192";
	position : absolute;
	top : -4px;
    right: 18px;
	font-size : 36px;
	color: #1e9f9f;
	font-family: "Dosis", sans-serif;
	font-weight : 200;
	transition: 0.4s;
}
a.addArrow_b:hover::after {
	color: #ffffff;
}
a.addArrow_w {
	display: inline-block;
	width: 180px;
	text-align: left;
	padding:  0 20px 2px 20px;
	font-weight : 400;
	line-height: 50px;
	color: #ffffff;
	background-color : transparent;
	border : 1px solid #ffffff;
	transition: 0.4s;
	position: relative;
	text-decoration: none;
}
a.addArrow_w:hover {
	background-color : #1e9f9f;
}
a.addArrow_w::after {
	content : "\2192";
	position : absolute;
	top : -4px;
    right: 18px;
	font-size : 36px;
	color: #ffffff;
	font-family: "Dosis", sans-serif;
	font-weight : 200;
	transition: 0.4s;
}
a.workbtn {
	display: inline-block;
	width: 260px;
	text-align: left;
	padding:  0 0 2px 20px;
	font-size: 1.2rem;
	font-weight : 500;
	line-height: 60px;
	color: #ffffff;
	background-color : #02c701;
	border : 1px solid #02c701;
	transition: 0.4s;
	position: relative;
	text-decoration: none;
	border-radius : 30px;
}
a.workbtn::after {
	content : "";
	position : absolute;
	top : 26px;
    right: 19px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
	transition: 0.4s;
}
a.workbtn:hover {
	opacity : 1;
	color: #02c701;
	background-color : #ffffff;
}
a.workbtn:hover::after {
    border-top: 2px solid #02c701;
    border-right: 2px solid #02c701;
}

button.workbtn {
	display: inline-block;
	width: 280px;
	text-align: left;
	padding:  0 0 0 40px;
	font-size: 1.2rem;
	font-weight : 700;
	line-height: 72px;
	color: #ffffff;
	background-color : #f2914a;
	border : 1px solid #f2914a;
	transition: 0.4s;
	position: relative;
	text-decoration: none;
	border-radius : 36px;
}
button.workbtn::after {
	content : "→";
	color : #ffffff;
	font-size : 1.2rem;
	font-weight : 700;
	position : absolute;
	top : 0;
	right : 40px;
	transition: 0.4s;
}
button.workbtn:hover {
	opacity : 1;
	color: #f2914a;
	background-color : #ffffff;
}
button.workbtn:hover::after {
	opacity : 1;
	color: #f2914a;
}
a.worksnobtn {
	display: inline-block;
	width: 210px;
	padding:  0 40px;
	font-size: 1.2rem;
	font-weight : 700;
	line-height: 72px;
	color: #ffffff;
	background-color : #f2914a;
	border : 1px solid #f2914a;
	transition: 0.4s;
	position: relative;
	text-decoration: none;
	border-radius : 36px;
	letter-spacing: 2px;
}
a.worksnobtn:hover {
	opacity : 1;
	color: #f2914a;
	background-color : #ffffff;
}
@media only screen and (max-width: 480px) {
	a.addArrow_b {
		width: 160px;
		padding:  0 12px 2px 12px;
		line-height: 40px;
		font-size : 14px;
	}
	a.addArrow_b::after {
		top : -4px;
		right: 12px;
		font-size : 30px;
	}
}


.moreRev_w:hover {
	color: #000000;
	background-color: #ffffff;
}

.moreRev_w:hover::after {
	color: #000000;
}

@media only screen and (max-width: 1660px) {
	.compMain .word {
		font-size: 16px;
		line-height: 1.9;
	}
	.co_main .word {
		margin-top: 16px;
	}
	.compMainRec {
		top: 7.2vw;
		width: 45%;
		height: auto;
		max-height: 438px;
		padding : 4vw 3vw;
	}
	.compMainRec.co_main {
		right : 52%;
	}
	.recback {
		background : url(../img/recruit_left.png) no-repeat 0 0;
		background-size : 52%;
	}
	.recTitle {
		font-size : calc(1.8vw + 3px);
	}
	.compImgRec img {
		width: 100%;
		max-width: 928px;
		height: 45vw;
		max-height: 675px;
		object-fit: cover;
	}
	.compMainRec .word {
		font-size : calc(0.35vw + 10.2px);
	}
}
@media only screen and (max-width: 1480px) {
	.compWrap {
		padding-bottom: 7vw;
	}
	h2.normalTitleLeft {
		font-size: 28px;
	}
	.leftWord {
		font-size: 16px;
		margin-top: 2vw;
	}
	.compMain .check {
		font-size: 20px;
		margin-bottom: 16px;
	}
	.compMain .buttons {
		margin-top: 3vw;
	}
	.compMain {
		top : 3vw;
		height: 40.8vw;
		padding-top : 3vw;
	}
	.compMain .word {
		font-size : calc(0.54vw + 8.1px);
		line-height: 1.8;
	}
	.co_main .word {
		margin-top : 1vw;
	}
}
@media only screen and (max-width: 1240px) {
	h2.normalTitleLeft {
		font-size: 26px;
	}
	.leftWord {
		font-size: 14px;
		margin-top: 2vw;
	}
	.compMain .check {
		font-size: 18px;
		margin-bottom: 12px;
	}
	.compMain .buttons {
		margin-top: 2vw;
	}
	.compMain {
		top : 2vw;
		height: 44.6vw;
		padding-top : 5vw;
		padding-left : 2vw;
		padding-right : 2vw;
	}
	.compMain .word {
		font-size : calc(0.54vw + 8.1px);
		line-height: 1.8;
		width : 94%;
		margin-top : -1vw;
	}
	.moreRev_w {
		width: 200px;
		font-size: 14px;
		line-height: 50px;
	}
	.moreRev_w::after {
		top: 24%;
	}
}
@media only screen and (max-width: 1000px) {
	.compMain {
		width : 480px;
	}
	.compMain.co_main {
		left: 0;
	}
	.compMain .word {
		margin-top : -3vw;
	}
	.rc_main {
		right : 0;
	}
	.rc_main .word {
		margin-top : -3vw;
	}
	h2.normalTitleLeft {
		font-size: 24px;
	}
	.co-btn {
		width: 32px;
		height: 32px;
		background-size : cover;
	}
	.rc-btn {
		width: 32px;
		height: 32px;
		background-size : cover;
	}
}
@media only screen and (max-width: 860px) {
	.compImgInnerRec {
		position: relative;
		display : inline-block;
		width: 100%;
		max-width: 928px;
	}
	.compImgRec img {
		width: 100%;
		max-width: 928px;
		height: auto;
		max-height: 675px;
		object-fit: cover;
	}
	.compMainRec {
		position: relative;
		top: -6px;
		z-index: 3;
		width: 100%;
		height: auto;
		max-height: 1000px;
		padding : 5vw 8vw;
		box-sizing: border-box;
	}
	.compMainRec.co_main {
		right : 0;
	}
	.recback {
		background : none;
	}
	.recTitle {
		font-size : calc(2.59vw + 7.7px);
	}
	.compMainRec .word {
		font-size : calc(0.56vw + 11.2px);
		line-height : 1.8;
		padding-top : 16px;
	}

}
@media only screen and (max-width: 800px) {
	.recruitMain a.workbtn {
		max-width: 160px;
		padding:  0 0 0 5vw;
	}
	.recruitMain a.workbtn::after {
		right : 20px;
	}
	a.worksnobtn {
		width: 200px;
		padding:  0 4vw;
		font-size: 1.2rem;
		line-height: 54px;
		border-radius : 27px;
		letter-spacing: 1px;
	}
}
@media only screen and (max-width: 800px) {
	a.workbtn.short {
		font-size: 1.2rem;
		margin : 0 2px;
		width : 48%;
		max-width : 200px;
		border-radius : 32px;
		line-height : 48px;
		padding-left : 20px;
	}
	a.workbtn.short::after {
		top : 20px !important;
	}
}
@media only screen and (max-width: 640px) {
	h2.normalTitleLeft {
		font-size : calc(2vw + 10.1px);
	}
	.compMain {
		width: calc(100% - 20px);
	}
	.compImgInner {
		width: calc(100% - 20px);
	}
	.compImg img {
		height: 68vw;
	}
}
@media only screen and (max-width: 480px) {
	.compMain {
		padding : 4vw; 3vw 6vw 3vw;
	}
	.leftWord {
		font-size: 12px;
	}
	.compMain .word {
		font-size : 12px;
	}
	.recruitMain a.workbtn {
		max-width: 110px;
		padding:  0 0 0 5vw;
		line-height: 12vw;
		border-radius : 7vw
	}
	.recruitMain a.workbtn::after {
		right : 12px;
	}
	button.workbtn {
		width: 220px;
		padding:  0 0 0 30px;
		font-size: 1.1rem;
		line-height: 56px;
		border-radius : 28px;
	}
	button.workbtn::after {
		font-size : 1.1rem;
		top : 0;
		right : 30px;
	}
}
@media only screen and (max-width: 360px) {
	a.workbtn.short {
		font-size: 1.1rem;
	}
}

.worksListWrap {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
}
.centerMark {
	text-align: center;
}
.centerMark .mark01 {
	width : 25vw;
	max-width : 144px;
}
.centerMark .mark02 {
	width : 22vw;
	max-width : 109px;
}
.centerMark .mark03 {
	width : 33vw;
	max-width : 222px;
}

.creListWrap {
	text-align : center;
}
.creListFlex {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
}
.creListItem {
	width : 29%;
	padding : 0 2%;
}
.creListTrans {
	width : 29%;
	padding : 0 2%;
	font-size : 0;
	height : 1px;
}
.creListItem h4 {
	color : #2e2d32;
	font-size : 0.9rem;
	font-weight : 400;
	margin-bottom : 8px;
}
.creListItem .image {
	width : 100%;
	border-radius : 20px;
}
.creListItem .image img {
	width : 100%;
	max-width : 500px;
	height : 24vw;
	max-height : 350px;
	object-fit: cover;
	border-radius : 20px;
}
@media only screen and (max-width: 800px) {
	.creListItem {
		width : 46%;
		padding : 0 2%;
	}
	.creListTrans {
		width : 46%;
		padding : 0 2%;
	}
	.creListItem .image img {
		height : 32vw;
	}
}
@media only screen and (max-width: 480px) {
	.creListItem {
		width : 46%;
		padding : 0 1%;
	}
	.creListTrans {
		width : 46%;
		padding : 0 1%;
	}
	.creListItem .image img {
		height : 32vw;
	}
}
.creListItem .name {
	border-left : 5px solid #2e2d32;
	padding-left : 12px;
	line-height : 1.1;
	margin : 12px 0;
}
.creListItem .name a {
	color : #2e2d32;
	font-size : 1.3rem;
	font-weight : 700;
}
.creListItem .comm {
	color : #2e2d32;
	font-size : 1rem;
	font-weight : 400;
}

/* 施工実績詳細 */

.detailWrap {
	width : 100%;
	max-width : 1204px;
}
.detailWrap h4 {
	font-size : 1.05rem;
	color : #2e2d33;
	font-weight : 500;
	padding-bottom : 10px;
	border-bottom : 5px solid #2e2d33;
}
.detailNames {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.detailNames .sns a {
	display : inline-block;
	margin-left : 30px;
}
.detailWrap .detailTitle {
	font-size : 40px;
	font-weight : 700;
	color : #2e2d33;
	position : relative;
}
.detailFlex {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	align-items: flex-start;
}
.photoWrap {
	width : 100%;
}
.photoWrap img {
	width : 100%;
	height : 50vw;
	max-height : 500px;
	object-fit: cover;
}
.photoThumb {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	flex-wrap: wrap;
	list-style: none;
}
.photoThumb li {
	width: 20%;
	max-width: 147px;
	margin : 0 10px 10px 10px;
}
.photoThumb li a {
	display: block;
	position: relative;
	opacity: 0.5;
	transition: 0.3s;
}
.photoThumb img {
	width: 100%;
	max-width: 147px;
	height: 10vw;
	max-height: 100px;
	object-fit: cover;
}
.photoThumb li a.active {
    opacity : 1.0;
}
.profWrap {
	width : 53%;
	padding-left : 4%;
}
.profWrap h3 {
	font-size : 0px;
	border-bottom : 2px solid #2e2d33;
	position : relative;
	top : -40px;
}
.profWrap p {
	font-size : 1.05rem;
	color : #2e2d33;
	line-height : 1.8;
}
.profWrap h3 span {
	display : inline-block;
	position : relative;
	top : 30px;
	font-size : 42px;
	color : #2e2d33;
	font-style : italic;
	letter-spacing: 3px;
	font-weight : 700;
	background-color : #ffffff;
	padding-right : 12px;
}
.detailActual {
	border : 3px solid #929196;
	padding : 0 24px 24px 24px;
	margin-top : 50px;
}
.detailActual h3 {
	display : inline-block;
	position : relative;
	top : -21px;
	font-size : 24px;
	color : #2e2d33;
	letter-spacing: 1px;
	font-weight : 500;
	background-color : #ffffff;
	padding : 0 10px;
	position : relative;
	top : -22px;
}
.detailActual p {
	font-size : 1.05rem;
	color : #2e2d33;
	line-height : 2.0;
}
.blackTitle {
	display : inline-block;
	text-align : center;
	color : #2e2d33;
	font-size : 40px;
	font-weight :  700;
	letter-spacing: 3px;
	line-height : 1.2;
	padding-bottom : 24px;
	background : url(../img/line01.png) no-repeat bottom left;
}
.detailWrap .sizeWrap {
	background-color : #ececec;
	padding : 32px 45px 12px 45px;
	box-sizing: border-box;
}
.worksWrap {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
}
.worksItem {
	width : 48%;
}
.worksItem p {
	text-align : left;
	font-size : 1.1rem;
	color : #2e2d33;
	line-height : 2.0;
	font-weight : 500;
}
.worksItem img {
	width : 100%;
	max-width : 580px;
	height : 40vw;
	max-height : 410px;
	object-fit: cover;
}
.selectWrap {
	display : inline-block;
	border : 1px solid #2e2d33;
	border-radius : 28px;
	padding : 2px 18px;
}
.selectItem select {
	font-size : 1rem;
	color : #2e2d33;
	font-weight : 500;
	padding : 12px 0;
	border-style : none;
	background-color : #ffffff;
}
.selectItem select option {
	font-size : 1rem;
	color : #2e2d33;
	font-weight : 500;
}
.pageNav01 {
	list-style: none;
	margin : 0 auto 2px auto;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
}
.pageNav01 span.active {
	display: block;
	width : 36px;
	padding: 4px 0;
	font-size: 18px;
	text-align : center;
	margin-right: 12px;
	color: #ffffff;
	background-color: #167247;
	border: 1px solid #167247;
	font-weight: bold;
	border-radius : 50%;
}
.pageNav01 span.between {
	color: #2e2d33;
	background-color: #ffffff;
	font-weight: 400;
	margin-right : 12px;
	padding-top : 6px;
}
.pageNav01 a {
	display: block;
	padding: 4px 0;
	font-size: 18px;
	font-weight : bold;
	text-align : center;
	margin-right: 12px;
	color: #4c2b0a;
	text-decoration: none;
	transition: 0.3s;
	border-radius : 50%;
}
.pageNav01 a.arrow {
	width : 36px;
	font-weight : 700;
}
.pageNav01 a.number {
	width : 38px;
	color: #4c2b0a;
}
.pageNav01 a.ya {

}
.pageNav01 a.ya:hover {

}
@media only screen and (max-width: 960px) {
	.profWrap h3 span {
		top : calc(2.34vw + 7.5px);
		font-size : calc(3.12vw + 12.0px);
		letter-spacing: 2px;
	}
	.detailNames .sns a {
		margin-top : 4px;
		margin-left : calc(1.5vw + 12.0px);;
	}
	.detailNames .sns img {
		height : calc(1.25vw + 16.0px);
	}
	.blackTitle {
		font-size : calc(2.81vw + 13.0px);
		padding-bottom : calc(2.81vw + 13.0px);
	}
}
@media only screen and (max-width: 640px) {
	.detailFlex {
		display : block;
	}
	.photoWrap {
		width : 100%;
		max-width : 500px;
		margin-left : auto;
		margin-right : auto;
	}
	.photoWrap img {
		height : 56vw;
	}
	.photoThumb img {
		height : 12vw;
	}
	.profWrap {
		width : 100%;
		padding-left : 0%;
		margin-top : 6vw;
	}
	.profWrap p {
		margin-bottom : 12px;
	}
	.detailActual {
		padding : 0 18px 18px 18px;
		margin-top : 40px;
	}
	.detailActual h3 {
		top : -18px;
		font-size : 20px;
	}
	.photoThumb li {
		margin : 0 1vw 10px 1vw;
	}
}
@media only screen and (max-width: 480px) {
	.detailFlex {
		padding : 0 20px;
	}
	.worksWrap {
		display : block;
	}
	.worksItem {
		width : 100%;
		margin-bottom : 6vw;
	}
	.worksItem img {
		height : 62.5vw;
	}
}
@media only screen and (max-width: 360px) {
	.detailActual h3 {
		top : -16px;
		font-size : 18px;
	}
}


.bx-wrapper {
    background-color: transparent;
    margin: 0px auto 20px auto !important;
    border: none;
    box-shadow: none;
}
.bx-wrapper img {
    display: block;
    width: 100%;
}
.detailMore {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	border-top : 1px solid #afafaf;
	border-bottom : 1px solid #afafaf;
	padding : 16px 0;
}
.detailMore div {
	width : 33.3%;
}
.detailMore a {
	font-size : 1rem;
	font-weight : 500;
	color : #797979;
	text-decoration: underline;
	transition: 0.3s;
}
.detailMore a:hover {
	color : #000000;
}
.detailMore a span {
	display : inline;
}
@media only screen and (max-width: 1080px) {
	.detailWrap .detailTitle {
		font-size : calc(2.37vw + 10.4px);
	}
	.detailWrap .detailTitle::after {
		height : calc(3.16vw + 21.9px);
	}
	.detailWrap .sizeWrap {
		padding : 4vw 4.5vw 1.2vw 4.5vw
	}
}
@media only screen and (max-width: 480px) {
	.detailWrap .sizeTable {
		display : block;
		margin-bottom : 16px;
	}
	.detailWrap .sizeTable dt {
		display : block;
		width : 100%;
		padding : 8px 10px 8px 24px;
		border-right : none;
		border-bottom : 1px solid #ececec;
	}
	.detailWrap .sizeTable dt::before {
		border-width: 16px 16px 0 0;
	}
	.detailWrap .sizeTable dd {
		display : block;
		width : 100%;
		padding : 8px 10px 8px 24px;
	}
	.detailMore a span {
		display : none;
	}
}

/* お問い合わせ */

.contactWrap {
	width : 100%;
	border : 10px solid #1e9f9f;
	padding : 8px;
	box-sizing: border-box;
}
.contactWrap .contactInner {
	width : 100%;
	border : 2px solid #1e9f9f;
	padding : 26px 36px 36px 36px;
	box-sizing: border-box;
	position : relative;
}
.contactWrap .contactInner h2 {
	color : #1e9f9f;
	line-height : 1.4;
	font-weight : 700;
	padding-right : 100px;
}
.contactWrap .contactInner h2 br {
	display : none;
}
.contactWrap .contactInner p {
	margin-top : 6px;
	color : #1e9f9f;
	line-height : 1.8;
	font-weight : 500;
	padding-right : 100px;
}
.contactWrap .contactInner p br.b1200 {
	display : block;
}
@media only screen and (max-width: 1200px) {
	.contactWrap .contactInner {
		width : 100%;
		border : 2px solid #1e9f9f;
		padding : 2.6vw 3.6vw 3.6vw 3.6vw;
		box-sizing: border-box;
		position : relative;
	}
	.contactWrap .contactInner h2 br {
		display : block;
	}
	.contactWrap .contactInner p br.b1200 {
		display : none;
	}
}
.contactWrap .btn a {
	position: absolute;
	top: 50%;
	right: 5%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	display : block;
	width : 60px;
	line-height : 44px;
	padding-bottom : 16px;
	text-align : center;
	font-size : 48px;
	font-weight : 200;
	background-color : #1e9f9f;
	color : #ffffff;
	border-radius : 50%;
	font-family: "Dosis", sans-serif;
	border : 2px solid #1e9f9f;
	transition: 0.4s;
}
.contactWrap .btn a:hover {
	background-color : #ffffff;
	color : #1e9f9f;
}
@media only screen and (max-width: 680px) {
	.contactWrap {
		border : 8px solid #1e9f9f;
		padding : 6px;
	}
	.contactWrap .contactInner {
		padding : 2.6vw 3.6vw 3.6vw 3.6vw;
	}
	.contactWrap .contactInner h2 {
		padding-right : 0px;
	}
	.contactWrap .contactInner h2 br {
		display : block !important;
	}
	.contactWrap .contactInner p {
		padding-right : 0px;
	}
	.contactWrap .contactInner p br.b1200 {
		display : none;
	}
	.contactWrap .btn a {
		position: relative;
		top: 0;
		right: 0;
		transform: translateY(0%);
		-webkit- transform: translateY(0%);
		margin : 20px auto 0 auto;
	}
}

.contactForm {
	width : 100%;
	max-width : 1100px;
	margin : 0 auto;
	position : relative;
	left : -5px;
}
.contactForm .precomm {
	font-size : 1rem;
	font-weight : 400;
}
.progress .step {
	display : table;
	width : 100%;
}
.progress .step br {
	display : none
}
.progress .step li {
	display : table-cell;
	vertical-align: middle;
	width : 29%;
	font-size : 1.1rem;
	letter-spacing: 1px;
	font-weight : 600;
	color : #989898;
	text-align : center;
	height : 60px;
	position : relative;
}
.progress .step li.n_arrow::after {
	content : "\25B6";
	position : absolute;
	font-size : 1.1rem;
	color : #989898;
	top : 18px;
	right : -24px;
	width: 12px;
	height: 12px;
	margin: 0 10px;
}
.progress .step li span {
	font-weight : bold;
}
.progress .step li.is-current {
	color : #327851;
}
.progress .step li.is-current.n_arrow::after {
	color : #327851;
}

.formWrap {
	box-sizing: border-box;
}
.pretitle {
	color : #327851;
}
.contactForm dl {
	display : table;
	width : 100%;
	border-collapse: collapse;
	table-layout : fixed;
	border-bottom : 1px solid #f2f2f2;
	word-wrap: break-word;
}
.contactForm dl.first {
	border-top : 1px solid #f2f2f2;
}
.contactForm dl.no-border {
	border-bottom : none;
}
.contactForm dt {
	display : table-cell;
	vertical-align: top;
	font-size : 1.2rem;
	font-weight : 700;
	width : 25%;
	padding : 42px 0 40px 0px;
	text-align : left;
}
.contactForm dl.no-border dt {
	padding : 30px 0 0 40px;
}
.contactForm dt p {
	position : relative;
	color : #4c4c4c;
	padding : 0 80px 0 0px;
}
.contactForm dd {
	display : table-cell;
	vertical-align: top;
	font-size : 1rem;
	color : #000000;
	font-weight : 400;
	width : 70%;
	padding : 42px 0 40px 5%;
	word-wrap: break-word;
}
.contactForm dl.no-border dd {
	padding : 24px 0 0 24px;
}
.contactForm dd select {
	font-size : 1rem;
	color : #4c4c4c;
	font-weight : 400;
	padding : 7px 8px;
	border-style : none;
	background: #f5f5f7;
	border-radius : 6px;
	border : 1px solid #acacac;
}
.contactForm dd option {
	font-size : 1rem;
	color : #4c4c4c;
	font-weight : 400;
	background: #f5f5f7;
}
.contactForm dd label {
	display : inline-block;
	font-size : 0.85rem;
	width : 10em;
	color : #0f1c84;
	border : 1px solid #aaaaaa;
	border-radius : 6px;
	padding : 8px;
	margin-right : 10px;
	margin-bottom : 6px;
}
.contactForm dd label input {
	display : inline-block;
	margin-right : 10px;
}
.contactForm dt span  {
	position : absolute;
	top : 4px;
	right : 20px;
	display : inline-block;
	padding : 3px 20px 5px 20px;
	font-size : 1rem;
	background-color : #1e9f9f;
	color : #ffffff;
	border : 1px solid #ffffff;
	font-weight : 500;
	line-height : 1.0;
	border-radius : 4px;
}
.privWrap  {
	margin-top : 20px;
	background-color : #ffffff;
	padding : 30px;
	font-size : 16px;
	width : 100%;
	box-sizing: border-box;
}
.privWrap h3 {
	font-size : 24px;
	font-weight : 700;
	text-align : center;
	margin-bottom : 36px;
}
.privWrap h4 {
	font-size : 1.15rem;
	font-weight : 700;
	margin-top : 24px;
}
.privWrap p {
	font-size : 1rem;
	font-weight : 400;
}
.privWrap dt {
	display : inline-block;
	vertical-align: top;
	width : 20px;
	font-size : 1rem;
	font-weight : 400;
}
.privWrap dd {
	display : inline-block;
	vertical-align: top;
	width : calc(100% - 30px);
	font-size : 1rem;
	font-weight : 400;
}
.progress .step span {
	display : inline-block;;
	margin-right : 12px;
}
@media only screen and (max-width: 1100px) {
	.contactForm dt {
		padding : 4vw 0 4vw 20px;
	}
	.contactForm dd {
		padding : 4vw 0 4vw 20px;
	}
	.contactForm dl.no-border dt {
		padding : 30px 0 0 30px;
	}
	.contactForm dt p {
		padding : 0 74px 0 0px;
	}
	.contactForm dt span  {
		right : 2px;
		padding : 3px 16px 5px 16px;
	}
}
@media only screen and (max-width: 720px) {
	.formWrap {
		padding : 6vw 0;
	}
	.contactForm dt {
		display : block;
		font-size : 1.2rem;
		color : #0f1c84;
		font-weight : 500;
		width : 100%;
		padding : 2vw 0 2vw 0;
		text-align : left;
	}
	.contactForm dt p {
		padding : 0 74px 0 16px;
	}
	.contactForm dl.no-border dt {
		padding : 4vw 0 0 0;
	}
	.contactForm dd {
		display : block;
		font-size : 1rem;
		color : #0f1c84;
		font-weight : 400;
		width : 100%;
		padding : 2.4vw 0 2.4vw 2.4vw;
		word-wrap: break-word;
	}
	.contactForm dl.no-border dd {
		padding : 2.4vw 0 0 0;
	}
}
@media only screen and (max-width: 480px) {
	.contactForm {
		left: 0;
	}
	.contactWrap h3 {
		padding-bottom : 12px;
		margin-bottom : 32px;
	}
	.contactWrap h3 strong {
		font-size : 24px;
		padding-top : 6px;
	}
	.privWrap h3 {
		padding-bottom : 12px;
		margin-bottom : 32px;
	}
	.privWrap h3 strong {
		font-size : 24px;
		padding-top : 6px;
	}
	.contactWrap .comm p {
		font-size : 16px;
		color : #000000;
		line-height : 1.8;
	}
	.compBottom  {
		margin-bottom : 16vw;
	}
	.contactForm dt {
		display : block;
		padding : 10px 0 10px 3vw;
		width : 100%;
		box-sizing: border-box;
	}
	.contactForm dd {
		display : block;
		padding : 10px 3vw;
		width : 100%;
		box-sizing: border-box;
	}
	.contactWrap dd div label {
		display : block;
		font-size : 13px;
		margin : 8px 0;;
		padding : 8px;
	}
	.contactForm dd label {
		margin : 8px 2px 10px 2px;
		padding : 8px 6px;
	}
	.progress .step li {
		width : 22%;
	}
	.progress .step li.n_arrow {
		width : 29%;
	}
	.progress .step li.n_arrow::after {
		right : calc(-3vw - 10px);
	}
	.progress .step li span {
		display : block;
	}
	.progress .step br {
		display : block;
	}
	.contactForm dt span  {
		right : 20px;
	}
}

/*お問い合わせ*/

.formTable option  {
	font-size : 14px;
	padding : 3px;
}
.formTable select  {
	font-size : 14px;
	padding : 3px;
	background: #f5f5f7;
}
.formBtn  {
	margin-bottom : 80px;
}
.form-field {
	border-style : none;
	background: #f5f5f7;
	color : #000000;
	padding : 8px 16px;
	font-size : 1.1rem;
	width: calc(100% - 80px);
	border-radius : 6px;
	border : 1px solid #acacac;
}
.form-herf {
	border-style : none;
	background: #f5f5f7;
	color : #000000;
	padding : 8px 16px;
	font-size : 1.1rem;
	width: calc(45% - 80px);
	border-radius : 6px;
	border : 1px solid #acacac;
}
.form-name {
	border: 1px solid #ababab;
	background: #f5f5f7;
	color : #000000;
	padding : 6px;
	font-size : 1.1rem;
	width: calc(70% - 80px);
	max-width: 300px;
}
.form-long {
	border: 1px solid #ababab;
	background: #f4f5fa;
	color : #0f1c84;
	padding : 6px;
	font-size : 16px;
	width: calc(80% - 80px);
}
.inputarea1  {
	border: 1px solid #ababab;
	color : #0f1c84;
	padding : 6px;
	font-size : 16px;
}
span.hissu {
	display : inline-block;
	vertical-align: top;
	padding-left : 8px;
	padding-top : 6px;
	font-size  : 14px;
	color : #fe0000;
}
.w120   {
	width: 120px !important;
}
.w240   {
	width: 240px !important;
}
#comment  {
	height : 240px;
	line-height : 22px;
}
.uploadArea  {
	border : 1px solid #cccccc;
	display : inline-block;
}
.uploadArea p.ttl {
	font-size : 13px;
	color : #ffffff;
	background-color : #0eb1dc;
	padding : 4px;
	display : inline-block;
}
.uploadArea div {
	padding : 8px 10px;
}
.thanks  { margin-bottom : 80px; }
.thanks h2  {
	font-size : 18px;
	line-height : 36px;
	text-align : center;
	color : #000000;
}
.thanks p  {
	width : 100%;
	max-width : 530px;
	margin : 10px auto;
	color : #000000;
}
a.hinbanbutton  {
	display : inline-block;
	padding : 8px 14px;
	background-color : #0eb1dc;
	color : #ffffff;
	font-size : 12px;
	font-weight : bold;
	text-decoration : none;
}
a.hinbanbutton:hover  {
	background-color : #27caf3;
	color : #ffffaa;
}

.form-field:focus {
   background: #fff;
   color: #725129;
}
.form-container h2 {
   text-shadow: #fdf2e4 0 1px 0;
   font-size:18px;
   margin: 0 0 10px 0;
   font-weight:bold;
   text-align:center;
}
.form-title {
   margin-bottom:10px;
   color: #725129;
   text-shadow: #fdf2e4 0 1px 0;
}

.pp {
	margin:			0 0 10px 0;
}
/* ラベルのスタイル　*/
.pp label {
	padding-left:	0;
	font-size:		24px;
	line-height:	32px;
	display:		block;
	cursor:			pointer;
	position:		relative;
}

/* ボックスのスタイル */
.pp label:before {
	content:		'';
	width:			32px;			/* ボックスの横幅 */
	height:			32px;			/* ボックスの縦幅 */
	display:		inline-block;
	position:		absolute;
	top : -48px;
	left:			calc(50% - 16px);
	background-color:	#ffffff;
	border : 1px solid #acacac;
	border-radius:		6px 6px 6px 6px;
}
/* 元のチェックボックスを表示しない */
.pp input[type=checkbox] {
	display:		none;
}
/* チェックした時のスタイル */
.pp input[type=checkbox]:checked + label:before {
	content:		'\2713';		/* チェックの文字 */ 
	font-size:		34px;			/* チェックのサイズ */
	color:			#fff;			/* チェックの色 */
	background-color:	#06f;			/* チェックした時の色 */
	line-height: 30px;
}
.pp a {
	color : #000000;
	text-decoration : underline;
	text-decoration-color: #acacac;
	text-underline-offset: 6px;
}
.submit-container {
	width: 300px;
	text-align: center;
	position : relative;
}
.submit-button {
	width: 300px;
	color: #9f9f9f;
	border : none;
	padding: 18px 0 16px 30px;
	font-size : 20px;
	font-weight: 500;
	text-decoration: none;
	vertical-align: middle;
	cursor : pointer;
	background-color : #e1e1e1;
	border : 1px solid #a1a1a1;
	position : relative;
	text-align : left;
	transition: 0.4s;
}
.submit-button.active {
	color: #1e9f9f;
	background-color : #ffffff;
	border : 1px solid #1e9f9f;
}
.submit-container::after {
	content : "\2192";
	position : absolute;
	top : 0px;
	right : 20px;
	text-align : center;
	font-size : 36px;
	font-weight : 200;
	color : #9f9f9f;
	font-family: "Dosis", sans-serif;
	transition: 0.4s;
}
.submit-container.active::after {
	color : #1e9f9f;
}
.submit-button.active:hover  {
	color: #ffffff;
	background-color : #1e9f9f;
}
.submit-button.active:hover::after {
	color: #ffffff;
}
.contactTop dl {
	width : 100%;
}
.contactTop dl dt {
	font-size : 32px;
	font-weight : 600;
}
.contactTop dl dd {
	font-size : 1rem;
	font-weight : 400;
	line-height : 1.8;
}
.contactTop dl dd a {
	color : #00b6ef;
	transition: 0.3s;
}
.contactTop dl dd a:hover {
	color : #0000ff;
}
.nallowWrap {
	width : 100%;
	max-width : 800px;
	padding : 0 10px;
	box-sizing: border-box;
	margin : 80px auto;
}
.telContactTitle {
	font-size : 1.3rem;
	font-weight : 600;
}
.topTelWrap a {
	font-size : 80px;
	font-weight : bold;
	color : #0f1c84;
}
.topTelWrap span {
	display : block;
	font-size : 1rem;
	font-weight : 300;
}
.pp-container  {
	margin : 32px 0 12px 0;
	text-align : left;
	background-color : #f0f0f0;
	padding : 16px;
}
.pp-container h4 {
	font-size : 16px;
	text-align : center;
	margin-bottom : 16px;
}
.pp-container p {
	font-size : 14px;
	text-align : left;
	margin-bottom : 16px;
}
.pp-container a {
	display : block;
	font-size : 13px;
	text-align : left;
}
.pp-check  {
	text-align : center;
	font-size : 16px;
	font-weight : 500;
	margin : 0 20px 10px 0;
}
.pp-check input[type=checkbox] {
	width:			20px;
	height:			20px;
	-moz-transform:		scale(1.3);
	-webkit-transform:	scale(1.3);
	transform:		scale(1.3);
}
.pp-check label a {
	color : #000000;
	text-decoration: underline;
	text-decoration-color : #6d6d6d;
}
.pp-check span  {
	display : inline-block;
	vertical-align : top;
	margin-left : 6px;
	position : relative;
	top : -1px;
}
.errorText  {
	color : #ff0000;
	font-size : 13px;
}
.sendmes    {
	text-align : center;
	line-height : 1.6;
	margin-bottom : 120px;
}
.errorText  {
	font-size : 12px !important;
	color : #ff0000 !important;
}
.formLeft  {
	display : inline-block;
	vertical-align : top;
}
.formRight  {
	display : inline-block;
	font-size : 12px;
	color : #4b4b4b;
	padding-left : 24px;
}
.formRight a {
	display : inline-block;
	padding : 4px 0;
	color : #4b4b4b;
}
.formRight dt {
	display : inline-block;
	color : #4b4b4b;
	font-size : 12px;
	line-height : 20px;
	padding : 0px 0;
	width : 18px;
	text-align : left;
	vertical-align : top;
}
.formRight dd {
	display : inline-block;
	color : #4b4b4b;
	font-size : 12px;
	line-height : 20px;
	padding : 0px 0;
	width : calc(100% - 18px);
	text-align : left;
	vertical-align : top;
}
@media only screen and (max-width: 960px) {
	.nallowWrap {
		margin : 8vw auto;
	}
	.topTelWrap a {
		font-size : calc(5.09vw + 21.4px);
	}
	.contactTop dl {
		display : block;
		width : 100%;
	}
	.contactTop dl dt {
		display : block;
		width : 100%;
		padding : 0 0 1.5vw 0;
		border-right : none;
		border-bottom : 1px solid #000000;
		font-size : 1.4rem;
		
	}
	.contactTop dl dd {
		display : block;
		text-align : left;
		width : 100%;
		padding : 1.5vw 0 0 0;
	}
}
@media only screen and (max-width: 480px) {
	.form-field {
		padding : 5px;
		font-size : 14px;
		width: 96%;
	}
	.form-herf {
		padding : 5px;
		font-size : 14px;
		width: 60%;
	}
	.form-name {
		padding : 5px;
		font-size : 14px;
		width: calc(88% - 40px);
	}
	.form-long {
		padding : 5px;
		font-size : 14px;
		width: calc(92% - 40px);
	}
	.inputarea1  {
		padding : 5px;
		font-size : 14px;
	}
	.submit-button {
		width: 240px;
		padding: 10px 0 11px 20px;
		font-size : 16px;
		font-weight : 500;
		letter-spacing: 0;
	}
	.submit-button::before {
		top: 22px;
		right: 12px;
		width: 26px;
	}
	.submit-button::after {
		top: 19px;
		right: 13px;
	}
	.pp-check  {
		text-align : center;
		font-size : 14px;
		font-weight : 500;
		color : #000000;
		margin : 30px 0 40px 0;
	}
	.pp-check input[type=checkbox] {
		width:			20px;
		height:			20px;
		-moz-transform:		scale(1.2);
		-webkit-transform:	scale(1.2);
		transform:		scale(1.2);
	}
	.submit-container {
		text-align: center;
		position : relative;
		margin-top : 36px !important;
	}
	.pp label {
		font-size : calc(2vw + 9.6px);
		line-height:	1.8;
	}
	.pp.mgt80 {
		margin-top : 80px !important;
	}
}

.partsWrap{
}

.partsWrap table {
	border-collapse : collapse;
	border-spacing : 0;
	width : 100%;
	table-layout: fixed;
}
.partsWrap table th {
	width : 14.8%;
	border : 1px solid #ebebeb;
	background-color : #327851;
	font-size : 1.2rem;
	color : #ffffff;
	line-height : 2.2;
}
.partsWrap table td {
	width : 14.8%;
	border : 1px solid #ebebeb;
	padding : 0;
	background-color : #eff6ee;
}
.partsWrap table td div {
	width : 100%;
	position : relative;
	margin : 0;
	font-size : 0;
	line-height : 0;
}
.partsWrap table td div a {
	width : 100%;
	display : block;
	position : relative;
	text-align : center;
	font-size : 1.8rem;
	font-weight : 900;
	color : #a80001;
	padding : 36px 0 20px 0;
	font-family: "Noto Sans JP", sans-serif;
	background-color : #ffffff;
	transition: 0.3s;
	line-height : 1.6;
}
.partsWrap table td div span {
	width : 100%;
	display : block;
	position : relative;
	text-align : center;
	font-size : 2.2rem;
	font-weight : 900;
	color : #327851;
	padding : 36px 0 20px 0;
	font-family: "Noto Sans JP", sans-serif;
	background-color : #ffffff;
	line-height : 1.0;
}
.partsWrap table td div.kyu span {
	background-color : #eff6ee;
}
.partsWrap table td div a:hover {
	color : #ff0000;
	background-color : #ffffdd;
}
.partsWrap table p {
	position : absolute;
	top : 4px;
	right : 5px;
	text-align : right;
	color : #327851;
	font-size : 1rem;
	font-weight : 600;
	line-height : 1.0;
	z-index : 2;
}

/* フッター包括---------------------------*/

footer {
	position: relative;
	z-index: 3;
	background-color : #1e9f9f;
	font-size : 0;
	color : #ffffff;
}
footer p {
	color : #ffffff;
	font-size : 1rem;
	font-weight : 400;
	line-height : 2.0;
}
.footerTable {
	width : 100%;
	max-width : 1200px;
	margin : 0 auto;
	padding : 360px 10px 60px 10px;
	box-sizing: border-box;
	text-align : center;
}
.footLine02 {
	border-top : 2px solid #96d2d2;
}
.footLogo {
	position: relative;
	text-align : center;
	transition: 0.3s;
}
.footLogo h1 a img {
	width : 161px;
}
.footLogo h2 {
	color : #ffffff;
	font-size : 1rem;
	font-weight : 400;
	padding-right : 6%;
}
.footMenu {
	width : 60%;
}
.footMenu li a {
	color : #ffffff;
	font-weight : 500;
	font-size : 1rem;
	transition: 0.3s;
}
.footLine01 {
	position : relative;
}
.footLine01 .inner p {
	position : relative;
	padding-left : 40px;
}
.footLine01 .inner p::before {
	content : "";
	position : absolute;
	top : 17px;
	left : 0;
	width : 32px;
	height : 2px;
	background-color : #96d2d2;
}
.snsMenu a {
	display : inline-block;
	margin : 0 16px;
}
.mgt0 {
	margin-top: 0 !important;
	padding: 0 !important;
}
.footBtn {
	display : block;
}
.footLine01 .inner {
	width : 38%;
}
.footLine01 .footAddr {
	width : 58%;
	padding-left : 4%;
}
.footBtn a {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	display : block;
	width : 90px;
	line-height : 66px;
	padding-bottom : 24px;
	text-align : center;
	font-size : 80px;
	font-weight : 200;
	background-color : #ffffff;
	color : #1e9f9f;
	border-radius : 50%;
	font-family: "Dosis", sans-serif;
	border : 2px solid #1e9f9f;
	transition: 0.4s;
}
.footBtn a:hover {
	background-color : #1e9f9f;
	color : #ffffff;
	border : 2px solid #ffffff;
}
.copyright {
	width : calc(40% - 140px);
	font-size: 12px;
	color: #ffffff;
	position : relative;
	text-align : center;
	padding-top : 6px;
}
.footTels .addr {
	font-size : 1rem;
	color : #ffffff;
	font-weight : 400;
}
.footSns {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	width : 120px;
}
.footSns a {
	position: relative;
	display: inline-block;
	transition: 0.3s;
}
.footSns a:hover {
	opacity : 0.7;
}
.footLine01 .inner p br.fcbr {
	display : none;
}
@media only screen and (max-width: 1900px) {
	footer {
		background-size : 100%;
	}
	.footerTable {
		padding : 24vw 10px 60px 10px;
	}
}
@media only screen and (max-width: 1120px) {
	.footMenu {
		width : 100%;
	}
	.copyright {
	  width: 50%;
	  padding-top: 30px;
	}
	.footSns {
	 	margin-top : 24px;
	}
}
@media only screen and (max-width: 880px) {
	.footLogo h2 {
		padding-right : 0;
		padding-top : 20px;
	}
}
@media only screen and (max-width: 720px) {
	.footMenu li {
		padding : 10px 0;
	}
	.footLine01 .footAddr {
		display : none;
	}
	.footLogo {
		text-align : center;
		width : 100%;
	}
	.footLine01 .inner {
		width : 100%;
		text-align : center;
	}
	.footLogo h2 {
		padding-right : 0;
		padding-top : 12px;
	}
	.footLine01 .inner p {
		display : inline-block;
		position : relative;
		padding-left : 40px;
		text-align : center;
	}
	.footLine01 .inner p::before {
		top : 15px;
	}
	.footLine01 .inner p br.fcbr {
		display : inline-block;
	}
	.footMenu {
		display : none;
	}
	.copyright {
		width : 100%;
		padding-top : 6px;
	}
	.footSns {
		text-align : center;
		width : 120px;
		margin : 16px auto 0 auto;
	}
	.footBtn a {
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		-webkit- transform: translateY(-50%);
		display : block;
		width : 64px;
		line-height : 50px;
		padding-bottom : 14px;
		font-size : 54px;
	}
	.footLogo h1 a img {
		width : 40%;
		max-width : 161px;
	}
}
@media only screen and (max-width: 480px) {
	.footBtn a {
		top: 25%;
		right: 0px;
	}
}

.wrapContact {
    cursor: pointer;
    display: block;
    position: fixed;
    right: 0;
    bottom: 0;
	width : 279px;
	height : 69px;
	font-size : 0;
	line-height : 0;
	z-index : 999;
}
.wrapContact {
	cursor: pointer;
	display: block;
	position: fixed;
	right: 0;
	bottom: 0;
	width: 279px;
	height: 69px;
	font-size: 0;
	line-height: 0;
	z-index: 999;
}
.footIns {
	position : relative;
	top : -4px;
}

/* 管理画面フッター */
#admin_contener {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.admin_footer {
	margin-top: auto;
	background-color: #474747;
	position: relative;
}

.admin_footer .footerCopy {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	text-align: right;
	color: #ffffff;
	font-size: 12px;
	padding: 32px 0;
}

.admin_footer .safety {
	position: absolute;
	top: 4px;
	left: 4px;
}

.footLine {
	position : fixed;
	bottom : 0;
	left : 0;
	text-align : center;
	z-index : 98;
	width : 100%;
	display : none;
	transform: translate(0, 110px);
	transition: 0.6s;
}
.footLine.active {
	transform: translate(0, 0px);
}
.footLine a {
	display : inline-block;
	background-color : #22ad38;
	padding : 2vw 32px 1.6vw 32px;
	font-size : 1.1rem;
	color : #ffffff;
	font-weight : 700;
	border-radius : 24px 24px 0 0;
	transition: 0.3s;
}
.footLine a:hover {
	opacity : 0.7;
}
@media only screen and (max-width: 1000px) {
	.footLine {
		display : block;
	}
}

.bshadow {
	box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
	-webkit-box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
	-moz-box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
}

.cshadow {
	border: 3px solid #ffffff;
	box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
	-webkit-box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
	-moz-box-shadow: rgba(115, 116, 117, 0.65) 2px 2px 4px 0px;
}

.servWrap00 {
	width: 960px;
	margin: 0 auto;
}

.servWrap01 {
	width: 1080px;
	margin: 0 auto;
}
