@charset "utf-8";

/* firefoxでページ移動の際、コンテンツが少なくても中心がずれないようにする */
html {
	overflow-y: scroll;
}
body,
div,
p,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
pre,
form,
input,
textarea,
header,
footer,
nav {
	margin: 0;
	padding: 0;
	zoom: 1;
	color : #595959;
	-webkit-text-size-adjust: 100%;
	font-family: 'Noto Sans JP', sans-serif;
}

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

img {
	border: none;
}

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

a {
	outline: none;
	text-decoration: none;
}
a.televe {
    pointer-events: none;
}
@media only screen and (max-width: 480px) {
	a.televe {
		pointer-events: auto;
	}
}
a.group1 {
	transition: 0.4s;
}
a.group1:hover {
	opacity : 0.7;
}
a.auto {
	transition: 0.4s;
}
a.auto:hover {
	opacity : 0.7;
}

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

#container {
	width: 100%;
	background-color: #ffffff;
	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;
}

main {
	position : relative;
	z-index : 2;
	background-color : #ffffff;
}
main.top {
	margin-top : 0;
}
main.else {
	margin-top : 0;
}
.colbl {
	color : #0164c9;
}

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

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

.clearfix:after {
	clear: both;
}

/* For IE 6/7 */
.clearfix {
	zoom: 1;
}

#wrapper {
	height: 883px;
	overflow: hidden;
	position: relative;
	z-index: 10;
	margin-top: 100px;
}

#wrapHeaderTop {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 90;
	height: 120px;
	background-color : #fefefe;
	transition: all .3s;
}
.headMenuInner {
	width : 100%;
}
#wrapHeaderTop .headMenuInner h1 {
	display : inline-block;
	position : relative;
	z-index : 10;
	padding : 16px 0 0 24px;
	transition: 0.4s;
}
#wrapHeaderTop .headMenuInner h1 img {
	width : 283px;
	transition: 0.4s;
}
#wrapHeaderTop.active .headMenuInner h1 {
	padding : 5px 0 0 12px;
}
#wrapHeaderTop.active .headMenuInner h1 img {
	width : 170px;
}
.headLogo strong {
	display: inline-block;
	vertical-align: middle;
	font-size: 20px;
	color: #1d208a;
	position: relative;
	top: -10px;
	left: 20px;
}
.admin_headMenuInner {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
}
#wrapHeaderTop #header {
	display: block;
	position: relative;
	width: 100%;
	top: 0px;
	max-width: 1980px;
	margin: 0 auto;
	height: 100px;
	z-index: 10;
	transition: all .3s;
}
@media only screen and (max-width: 1180px) {
	#wrapHeaderTop .headMenuInner h1 {
		padding : 20px 0 0 24px;
	}
	#wrapHeaderTop .headMenuInner h1 img {
		width : 240px;
	}
}

@media only screen and (max-width: 1100px) {
	.headMenuInner h1 {
		padding : 11px 0 0 14px;
	}
	.headMenuInner h1 img {
		width : 200px;
	}
	#wrapHeaderTop #header {
		height: 60px;
	}
}
@media only screen and (max-width: 960px) {
	#wrapHeaderTop {
		height: 60px;
	}
	#wrapHeaderTop .headMenuInner h1 {
		padding : 5px 0 0 12px;
	}
	#wrapHeaderTop .headMenuInner h1 img {
		width : 170px;
	}
}
#wrapHeaderTop #header.sub {
	background-color : #ffffff;
	box-shadow: 0px 10px 10px -6px rgba(200, 200, 200, 0.3);
}
#wrapHeaderTop.active {
	height: 80px;
	background-color : rgba(255, 255, 255, 1);
	box-shadow: 0px 5px 5px -5px rgba(45, 177, 200, 0.3);
}
#wrapHeaderTop.active #header {
	height: 80px;
}
@media only screen and (max-width: 960px) {
	#wrapHeaderTop.active {
		height: 60px;
	}
	#wrapHeaderTop.active #header {
		height: 60px;
	}
}
#wrapHeaderTop.active #header.sub {
	box-shadow: none;
}
#wrapHeaderTop.active .headLogo {
	margin : 13px 0 0 30px;
	background : url(../img/foot_logo.png) no-repeat 0 0;
	background-size : 100%;
}
#wrapHeaderTop.active .headLogo_sub {
	margin : 13px 0 0 30px;
}
#wrapHeaderTop .wrk_topbg {
	background-color : rgba(0, 0, 0, 1);
}
#smp_header {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 78px;
	text-align: right;
	padding-top: 6px;
	background-color: #ffffff;
	z-index: 10;
}
.thinback {
	width : 100%;
	height : 30vw;
	max-height : 300px;
	position : relative;
	background-color : #252525;
}
#wrapHeaderTop .headMenu {
	display: flex;
	position: absolute;
	width : calc(100% - 240px);
	top: 56px;
	right: 144px;
	text-align: right;
	z-index: 9;
	transition: .5s;
}
#wrapHeaderTop .headSns {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	position: absolute;
	width : 120px;
	top: 25px;
	right: 100px;
	text-align: right;
	z-index: 9;
	transition: .5s;
}
#wrapHeaderTop.active .headMenu {
	top : 42px;
}
#wrapHeaderTop .headMenu .main {
	width : calc(100% - 160px);
	text-align : right;
	margin-left: auto;
}
#wrapHeaderTop .headMenu .main li {
	display: inline-block;
	vertical-align: top;
	color: #000000;
	font-size: 16px;
	transition: .5s;
}
#wrapHeaderTop .headMenu .main li a {
	color: #0066ca;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	display: inline-block;
	vertical-align: top;
	line-height: 1.3;
	padding: 5px 24px;
	position: relative;
	transition: .5s;
	min-width : 2em;
	text-align : center;
}
.main li a span {
	display : inline-block;
	position : relative;
	top : -4px;
	left : 4px;
}
#wrapHeaderTop .headMenu.sub .main li a {
	color: #000000;
}
#wrapHeaderTop .headMenu .main li a strong {
	display : block;
	text-align : center;
	color : #000000;
}
#wrapHeaderTop .headMenu .main li a::after {
	position: absolute;
	bottom: -10px;
	left: 50%;
	content: '';
	width: 0;
	height: 2px;
	background-color: #0164c9;
	transition: .5s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
#wrapHeaderTop .headMenu.sub .main li a::after {
	background-color: #000000;
}
#wrapHeaderTop.active .headMenu.sub .main li a::after {
	background-color: #ffffff;
}
#wrapHeaderTop .headMenu .main_sub li {
	display: inline-block;
	vertical-align: top;
	font-size: 16px;
	transition: .5s;
	color: #252525;
}
#wrapHeaderTop .headMenu .main_sub li a {
	font-size: 16px;
	font-weight: 500;
	text-decoration: none;
	display: inline-block;
	vertical-align: top;
	line-height: 1.0;
	padding: 0 20px;
	position: relative;
	transition: .5s;
	color: #252525;
}
#wrapHeaderTop .headMenu .main_sub li a::after {
	position: absolute;
	bottom: -10px;
	left: 50%;
	content: '';
	width: 0;
	height: 2px;
	transition: .5s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #01a0cb;
}
#wrapHeaderTop.active .headSns {
	top: 10px;
	right: 100px;
	text-align: right;
	z-index: 9;
	transition: .5s;
}
#wrapHeaderTop.active .headMenu .main li {
	color: #ffffff;
}
#wrapHeaderTop.active .headMenu .main li a::after {
	background-color: #2db1c4;
}
#wrapHeaderTop.active .headMenu .main li a img {
	filter:invert(100%);
}
#wrapHeaderTop.active .headMenu .main li a img.sub {
	filter:invert(0);
}
#wrapHeaderTop .headMenu .main a:hover {
	color : #000000;
}
#wrapHeaderTop .headMenu .main a:hover::after {
	width: 60%;
}
#wrapHeaderTop.active .headMenu .main a {
	color : #252525;
}
#wrapHeaderTop.active .headMenu .main a:hover {
	color : #8b8b8b;
}
#wrapHeaderTop.active .headMenu .main a:hover {
	color : #8b8b8b;
}
#wrapHeaderTop.active .headMenu .main a:hover::after {
	color : #8b8b8b;
	width: 60%;
}
#wrapHeaderTop .headMenu .main_sub a:hover {
	color : #8b8b8b;
}
#wrapHeaderTop .headMenu .main_sub a:hover::after {
	width: 60%;
}

#wrapHeaderTop .headInqu {
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	z-index: 9;
	width: 200px;
	height: 100px;
	background-color : #fef000;
	text-align : center;
}
#wrapHeaderTop .headInqu a {
	color: #000000;
	font-size: 16px;
	font-weight: 400;
	text-decoration: none;
	display: block;
	width : 100%;
	height: 100px;
	padding-top : 30px;
	line-height: 1.3;
	position: relative;
	transition: .5s;
	text-align : center;
	box-sizing: border-box;
}
#wrapHeaderTop.active .headInqu {
	height: 72px;
}
#wrapHeaderTop.active .headInqu a {
	height: 72px;
	padding-top : 16px;
}
#wrapHeaderTop .headInqu a strong {
	display : block;
	text-align : center;
	color : #252525;
	transition: .5s;
}
#wrapHeaderTop .headInqu a:hover {
	background-color : #252525;
	color : #ffffff;
}
#wrapHeaderTop .headInqu a:hover strong {
	color: #fef000;
}

#wrapHeaderTop .headTel {
	position: absolute;
	width : calc(100% - 240px);
	top: 24px;
	right: 160px;
	text-align: right;
	z-index: 9;
	transition: .5s;
}
#wrapHeaderTop.active .headTel {
	top: 12px;
}
#wrapHeaderTop .headTel a {
	display: inline-block;
	margin: 0 12px;
	font-size : 1rem;
	font-weight : 700;
	color : #595959;
	letter-spacing : 1px;
	padding-left : 20px;
	transition: 0.3s;
	background : url(../img/tel.png) no-repeat top 7px left;
	background-size : 14px;
}
#wrapHeaderTop .headTel a:hover {
	opacity : 0.7;
}
#wrapHeaderTop .headTel span {
	display: inline-block;
	font-size : 0.9em;
}
#wrapHeaderTop .headTel #snsicon01 {
	background: url(../img/ins.png) no-repeat center center;
}
#wrapHeaderTop .headTel #snsicon02 {
	background: url(../img/tw.png) no-repeat center center;
}
#wrapHeaderTop .headTel #snsicon03 {
	background: url(../img/fb.png) no-repeat center center;
}
#wrapHeaderTop .headTel #snsicon01_sub {
	background: url(../img/ins2.png) no-repeat center center;
}
#wrapHeaderTop .headTel #snsicon02_sub {
	background: url(../img/tw2.png) no-repeat center center;
}
#wrapHeaderTop .headTel #snsicon03_sub {
	background: url(../img/fb2.png) no-repeat center center;
}
#wrapHeaderTop.active .headTel #snsicon01 {
	background: url(../img/ins2.png) no-repeat center center;
}
#wrapHeaderTop.active .headTel #snsicon02 {
	background: url(../img/tw2.png) no-repeat center center;
}
#wrapHeaderTop.active .headTel #snsicon03 {
	background: url(../img/fb2.png) no-repeat center center;
}
@media only screen and (max-width: 1500px) {
	#wrapHeaderTop .headMenu {
		right: 120px;
	}
	#wrapHeaderTop .headMenu .main {
		width : 100%;
		text-align : right;
		margin-left: auto;
	}
	#wrapHeaderTop .headTel {
		top: 15px;
		right: 150px;
	}
	#wrapHeaderTop.active .headTel {
		top: 10px;
	}
	#wrapHeaderTop .headMenu .main li a {
		padding: 0 12px;
	}
	#wrapHeaderTop .headInqu {
		width: 140px;
	}
}
@media only screen and (max-width: 1250px) {
	#wrapHeaderTop .headMenu .main li a {
		padding: 0 8px;
	}
}
@media only screen and (max-width: 1130px) {
	#wrapHeaderTop .headMenu {
		display : none;
	}
	#wrapHeaderTop .headTel {
		top: 48px;
	}
	#wrapHeaderTop.active .headTel {
		top: 27px;
	}
}
@media only screen and (max-width: 1100px) {
	#wrapHeaderTop .headMenu {
		display : none;
	}
	.headContact {
		display : none;
	}
	.subOpenMenu {
		display : block;
		position : fixed;
		top : 0;
		right : 0;
		z-index : 99;
		width : 10%;
		min-width : 108px;
		text-align : center;
	}
}
@media only screen and (max-width: 640px) {
	#wrapHeaderTop .headLogo {
		margin : 3vw 0 0 3vw;
		z-index: 12;
		width : 50%;
		max-width : 266px;
		height : 16vw;;
		background-size: contain;
	}
	#wrapHeaderTop #header.sub {
		height : 70px;
	}
	#wrapHeaderTop.active #header.sub {
		height : 64px;
	}
	#wrapHeaderTop .headLogo.sub {
		margin : 14px 0 0 3vw;
		z-index: 12;
		width : 160px;
		height : 16vw;;
		background-size: contain;
	}
	#wrapHeaderTop #header.sub .headSns {
		top: 19px;
	}
	#wrapHeaderTop.active .headLogo.sub {
		margin-top : 12px;
	}
	#wrapHeaderTop.active #header.sub .headSns {
		top: 10px;
	}
	#wrapHeaderTop.active #header.sub .smp_headline {
		top: 24px;
	}
}
@media only screen and (max-width: 480px) {
	#wrapHeaderTop .headSns {
		display : none;
	}
}

.smp_headBtn {
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	z-index: 10;
	background-color: #ffffff;
	width: 100%;
	height: 51px;
	padding-top: 4px
}

.smp_headMenu {
	display: block;
	width: 100%;
	position: absolute;
	top: -600px;
	right: 0px;
	text-align: left;
	z-index: 9;
	background-color: #ffffff;
	transition: .5s;
}

.smp_headMenu li {
	display: block;
	border-bottom: 1px solid #c1c1c1;
}

.smp_headMenu li a.main {
	color: #464646;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none;
	display: block;
	line-height: 1.0;
	padding: 14px 0 12px 8px;
	position: relative;
	transition: .3s;
}

.smp_headMenu li a.main strong {
	display: inline-block;
	width: 130px;
	vertical-align: middle;
}

.smp_headMenu li a.main span {
	display: inline-block;
	color: #979797;
	font-size: 13px;
	font-weight: normal;
	text-align: left;
	margin-left: 30px;
	vertical-align: middle;
}

.subMenu {
	position: absolute;
	top: -200px;
	right: 80px;
	padding: 10px 16px;
	background-color: #ffffff;
	font-weight: bold;
	border: 2px solid #c1c1c1;
	z-index: 9;
	transition: all 0.3s;
}

.subMenu dl {
	display: inline-block;
	vertical-align: top;
	margin: 0 20px;
	line-height: 1.6;
}

.subMenu dt {
	padding-top: 6px;
}

.subMenu dt a {
	font-size: 14px;
	color: #646464;
	text-decoration: none;
	transition: all 0.2s;
}

.subMenu dd a {
	font-size: 13px;
	color: #868686;
	text-decoration: none;
	transition: all 0.2s;
}

.subMenu dt a:hover {
	color: #000000;
}

.subMenu dd a:hover {
	color: #3f3f3f;
}

.smp_subMenu {
	display: none;
	padding-bottom: 10px;
	transition: all .3s;
}

.openMenuArea {
	transition: all .3s;
}

.ttlimgWrap {
	text-align: center;
}

.ttlimgWrap img {
	width: 100%;
	max-width: 1678px;
}

.smp_subMenu a {
	color: #ffffff;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
	display: block;
	line-height: 1.0;
	padding: 7px 0 7px 20px;
}
.smp_headline .smp_menu strong {
	display : block;
	text-align : center;
	color: #ffffff;
	font-size : 16px;
	position : relative;
	letter-spacing: 1px;
	top : -3px;
	left : 0;
}
.smp_headline .menu-trigger {
	display: inline-block;
	position: relative;
	width: 46px;
	height: 32px;
	transition: all .4s;
	margin : 0 auto;
	font-size : 12px;
}
#menu-trigger02 {
	display : block;
	position : absolute;
	top : 0;
	right : 0;
	box-sizing: border-box;
	color : #ffffff;
	width : 120px;
	height : 120px;
	box-sizing: border-box;
	z-index : 99;
	font-size : 16px;
}
.smp_headline .menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #0164c9;
	transition: all .4s;
}
.smp_headline .menu-trigger span:nth-of-type(1) {
	top : 0;
}
.smp_headline .menu-trigger span:nth-of-type(2) {
	top : 14px;
}
.smp_headline .menu-trigger span:nth-of-type(3) {
	top : 28px;
}
.menu-trigger.is-open span:nth-of-type(1) {
	-webkit-transform: translate3d(0, 14px, 0) rotate(45deg);
	transform: translate3d(0, 14px, 0) rotate(45deg);
}
.menu-trigger.is-open span:nth-of-type(2) {
	-webkit-transform: translate3d(0, 0, 0) rotate(-45deg);
	transform: translate3d(0, 0px, 0) rotate(-45deg);
}
.menu-trigger.is-open span:nth-of-type(3) {
	top : 14px;
	-webkit-transform: translate3d(0, 0, 0) rotate(-45deg);
	transform: translate3d(0, 0, 0) rotate(-45deg);
}
.cp_overLeft {
	position: fixed;
	top: 50%;
	left: 0;
	z-index: 20;
}
.smplink {
	display :  none;
}

@media only screen and (max-width: 960px) {
	.smp_headline .menu-trigger {
		width: 34px;
		height: 22px;
		font-size : 10px;
	}
	#menu-trigger02 {
		width : 60px;
		height : 60px;
		font-size : 12px;
	}
	.menu-trigger.is-open span:nth-of-type(1) {
		-webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
		transform: translate3d(0, 10px, 0) rotate(45deg);
	}
	.smp_headline .menu-trigger span:nth-of-type(2) {
		top : 10px;
	}
	.smp_headline .menu-trigger span:nth-of-type(3) {
		top : 20px;
	}
	.menu-trigger.is-open span:nth-of-type(3) {
		top : 10px;
	}
	.smp_headline .smp_menu strong {
		font-size : 12px;
		letter-spacing: 0px;
		top : -3px;
	}
}

@media only screen and (max-width: 800px) {
	#wrapHeaderTop .smp_topbg {
		background-color : rgba(0, 0, 0, 0.9);
	}
	#smp_header {
		display: block;
	}
	.headMenu {
		display: none;
	}
	.headTel {
		display: none;
	}
	.headInqu {
		display: none;
	}
	.smplink {
		display : block;
	}
}

.snsButtons {
	display: block;
}

.topimages {
	width: 100%;
	max-width: 1980px;
}

.slide_all {
	margin: 0 auto;
	position: relative;
	width: 100%;
}

.slide_wrap {
	left: 50%;
	margin-left: -1800px;
	position: absolute;
	width: 3600px;
}

.noslide {
	width: 100%;
	max-width: 1200px;
	position: relative;
	margin: 0 auto;
}

.noslide img {
	width: 100%;
	max-width: 1200px;
}

#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: inline;
}

#wrapHeaderTop .smp_headline {
	display: block;
	width : 50px;
	position : absolute;
	top : 45px;
	right : 25px;
	z-index : 99;
}
#wrapHeaderTop.active .smp_headline {
	top : 24px;
}
#wrapHeaderTop .smp_menu {
	width : 50px;
	position : relative;
	transition: 0.3s;
}
@media only screen and (max-width: 960px) {
	#wrapHeaderTop .smp_headline {
		width : 40px;
		top : 18px;
		right : 10px;
	}
	#wrapHeaderTop.active .smp_headline {
		top : 18px;
	}
	#wrapHeaderTop .smp_menu {
		width : 40px;
	}
}
.smp_headall {
	position : fixed;
	width : 100%;
	height : 100vh;
	background-color : #ffffff;
	top : -110vh;
	z-index : 97;
	transition: all 0.6s ease-in;
}
.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;
	position: absolute;
	top: 0px;
	right: 60px;
	z-index: 9;
	width: 60px;
	height: 60px;
}
.smp_headInqu a {
	display: block;
	text-align: center;
	width: 100%;
	height: 46px;
	padding: 14px 0 0 0;
	font-size: 10px;
	line-height : 1.4;
	color: #ffffff;
	font-weight : bold;
	text-decoration: none;
	background-color : #01a0cb;
	transition: .5s;
}
.smp_headInqu a:hover {
	background-color : #252525;
}
.smp_headInqu a img {
	width : 24px;
}
@media only screen and (max-width: 1300px) {
	#wrapHeaderTop .smp_menu {
		display: block;
	}
}
@media only screen and (max-width: 1200px) {
	.slide_wrap {
		left: 0;
		margin-left: 0;
		position: absolute;
		width: 100%;
	}
}
.smp_headSnsWrap  {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
	margin-top : 8px;
}
.smp_headSns  {
	text-align : center;
	padding : 6px 0;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
}
.smp_headSns a {
	display : inline-block;
	margin : 0 16px;
}
.smp_headSns a img {
	height : 22px;
}
.innerSmpTels {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 99;
	margin-bottom: 6px;
	transition: .5s;
}
.innerSmpTels h1 {
	padding : 32px 0 0 14px;
}
.innerSmpTels h1 img {
	width : 266px;
}
.innerSmpTels ul.menu {
	width : 100%;
	max-width : 800px;
	margin : 40px auto 10px auto;
}
.innerSmpTels .menu li {
	width : 100%;
}
.innerSmpTels .menu li a {
	text-decoration: none;
	font-size: 16px;
	color: #ffffff;
	display: block;
	width: calc(100% - 12px);
	padding: 18px 0 18px 12px;
	text-align: left;
	border-bottom : 1px solid #c1c1c1;
	display : -webkit-flex;
	display : flex;
	align-items: center;
	position : relative;
	transition: 0.3s;
}
.innerSmpTels .menu li a span {
	position : relative;
	display : inline-block;
	font-size: 14px;
	color : #0164c9;
	width : 30%;
}
.innerSmpTels .menu li a strong  {
	font-size: 18px;
	display : inline-block;
	width : 40%;
	max-width : 130px;
	color : #0164c9;
}
.innerSmpTels .menu li a:hover {
	color: #c1c1f1;
}
.innerSmpTels ul.sns {
	width : 100%;
	max-width : 300px;
	margin : 40px auto 10px auto;
}
.innerSmpTels .sns li {
	width : 100%;
}
.innerSmpTels .sns li a {
	text-decoration: none;
	display: block;
	text-align: center;
	transition: 0.3s;
}
.innerSmpTels a.insta {
	text-decoration: none;
	font-size: 14px;
	color: #ffffff;
	display: block;
	width: calc(100% - 12px);
	padding: 18px 0 18px 12px;
	text-align: center;
	transition: 0.3s;
}
.innerSmpTels a.insta span  {
	display : inline-block;
	padding-left : 4px;
	position : relative;
	top : -4px;
}
.innerSmpTels a.insta:hover {
	color: #c1c1f1;
}
@media only screen and (max-width: 960px) {
	.slide img {
		width: 100%;
		height: 60vw;
		object-fit: cover;
	}
	.pc_headline {
		display: none;
	}
	.pc_topimg {
		display: none;
	}
	.smp_topimg {
		display: inline;
	}
	.smp_headline.all {
		width: 100%;
		max-width: 100vw;
		height: 72px;
		top: -450px;
	}
	#wrapHeaderTop.active .smp_menu {
		top: 0;
	}
	.smp_headline .innerSmpTels h3 {
		margin-bottom: 8px;
	}
	.innerSmpTels {
		position: absolute;
		width: 100%;
		top: 0;
		left: 0;
		z-index: 99;
		margin-bottom: 6px;
		transition: .5s;
		overflow: auto;
		height: 100%;
	}
	.innerSmpTels li a {
		text-decoration: none;
		font-size: 1.2rem;
		color: #000000;
		display: block;
		width: calc(100% - 12px);
		padding: 12px 0 12px 12px;
	}
	.innerSmpTels .sns li {
		width: 20%;
	}
	.innerSmpTels .sns li a {
		width: 60px;
		border-bottom : none;
		text-align: center;
	}
	.innerSmpTels li a strong  {
		font-size: 1.2rem !important;
		margin-right : 0;
	}
	.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 .headLogo_sub {
		top : 4px;
		left : 0;
		line-height: 28px;
		padding-top : 2px;
		padding-left : 4px;
		width : calc(100% - 120px);
	}
	.wrapContents {
		padding-top: 72px;
	}
	.spline {
		margin-top : -20px;
		padding-top : 20px;
	}
	.innerSmpTels ul {
		margin : 40px auto 10px auto;
	}
}
@media only screen and (max-width: 640px) {
	.innerSmpTels h1 {
		padding : 10px 0 0 12px;
	}
	.innerSmpTels h1 img {
		width : 48vw;
	}
	.innerSmpTels ul.menu {
		margin : 4vw auto 10px auto;
	}
}
@media only screen and (max-width: 600px) {
	#p_points {
		display: none;
	}

	#s_points {
		display: block;
	}
}

@media only screen and (max-width: 500px) {
	.headLogo strong {
		margin-bottom: 1px;
	}
}
@media only screen and (max-width: 480px) {
	.slide img {
		width: 100%;
		height: 63vw;
	}
}
@media only screen and (max-width: 360px) {
	.innerSmpTels li a {
		padding: 8px 0 8px 12px;
	}
}



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

.anker {
	margin-top : -80px;
	padding-top : 80px;
}
.mgtopmess {
	position : relative;
	font-size : 0;
}
.topWrap {
	width : 100%;
}
.topOuter {
	width : 100%;
	position : relative;
}
.topInner {
	width : 100%;
	max-width : 1680px;
	margin-left : auto;
	margin-right : auto;
	padding : 0 10px 0 10px;
	box-sizing: border-box;
	position : relative;
}
.topShift {
	width : 100%;
}
.topShift h2 {
	font-size : 140px;
	line-height : 1.1;
	position : relative;
	z-index : 2;
}
.topShift h2 span {
	display : inline-block;
	background : #ffffff;
	position : relative;
	z-index : 2;
	padding : 0 24px;
}
.topShift h2::after {
	content : "";
	position : absolute;
	width : 100%;
	height : 1px;
	background-color : #000000;
	font-size : 0;
	top : 49%;
	left : 0;
	z-index : 1;
}
.topFlex {
	position : relative;
	margin-bottom : 60px;
}
.topFlex.non {
	margin-bottom : 0;
}
.topFlex .left {
	position : relative;
	width : 43%;
	height : 46vw;
	max-height : 680px;
	position : relative;
	text-align : right;
}
.topFlex .left.small {
	width : 35%;
	height : auto;
	max-height : 589px;
	text-align : left;
}
.topFlex .left .main img {
	position : relative;
	width : 80%;
	max-width : 520px;
	transition-delay: 0.5s;
}
.topFlex .left .main.dh img {
	position : relative;
	width : 100%;
	max-width : 589px;
	transition-delay: 0.5s;
}
.topFlex .left .sub.up img {
	z-index : 1;
	width : 40%;
}
.topFlex .left span {
	position : absolute;
	top : 0;
	left : -100%;
	width : 100%;
	max-width : 600px;
	height : 48vw;
	max-height : 650px;
	font-size : 0;
	z-index : 2;
	background-color : rgba(0, 51, 137, 1);
	transition: 0.5s;
}
.topFlex .right {
	width : 55%;
	padding-left : 4%;
	position : relative;
	box-sizing: border-box;
}
.topFlex .right.wide {
	width : 65%;
	box-sizing : border-box;
}
.topFlex .right.wide .inner {
	width : 100%;
	max-width : 580px;
	box-sizing : border-box;
	margin-right : auto;
}
.topFlex.sub .right {
	width : 70%;
}
.topInner.rev .right img {
	width : 100%;
}
.topFlex .right.gree {
	top : -48px;
}
.topFlex .right.gree h3 {
	font-size: 36px;
	font-weight: 800;
	color: #252525;
	line-height: 1.4;
}
.topFlex .right.gree p {
	line-height: 2.0;
	font-weight : 500;
}
.topBannerInner img {
	width : calc(100% - 20px);
	max-width : 1001px;
}
.midline img {
	width : 96%;
	max-width : 1650px;
}
.bdr-bottom {
	border-bottom : 2px solid #ededed;
}
.midline p {
	font-size : 160px;
	font-weight : 700;
	color : #efefef;
	font-style : italic;
	white-space: nowrap;
	padding-right : 1em;
}
.scrolling-text li {
    font-size : 160px;
	font-weight : 700;
	color : #efefef;
	font-style : italic;
}
#scrolltext ul {
    display : flex;
}
#scrolltext ul li {
    margin-right: 80px;
	white-space: nowrap;
	line-height : 1.4;
}
@media only screen and (max-width: 1360px) {
	.topFlex .left.small {
		width : 42%;
	}
	.topFlex .right.wide {
		width : 58%;
		margin-right : auto !important;
	}
}
@media only screen and (max-width: 1260px) {
	.topFlex .right.wide {
		padding-left : 20px;
		margin-top : 0 !important;
	}
	.scrolling-text li {
		font-size : calc(12.5vw + 10px);
	}
}

@media only screen and (max-width: 1200px) {
	.topFlex .left h2 {
		margin-left : 24%;
	}
	.topShift h2 {
		font-size : calc(3.18vw + 71.8px);
	}
}
@media only screen and (max-width: 640px) {
	.topFlex .left {
		text-align : center;
		width : 100%;
		height : auto;
	}
	.topFlex.sub .left {
		text-align : center;
		width : 100%;
	}
	.topFlex .left h2 {
		margin : 0 auto;
		display : inline-block;
		text-align : left;
		padding-top : 0;
	}
	.topFlex.sub .left h2 {
		margin : 0 auto;
		display : inline-block;
		text-align : left;
		padding-top : 0;
	}
	.topInner::before {
		width : 80vw;
		height : 74vw;
	}
	.midline img {
		width : 100%;
		height : 64vw;
		object-fit: cover;
	}
	.topFlex {
		margin-bottom : 10px;
	}
	.topFlex .right.wide {
		padding-bottom : 6vw;
	}
	.topShift h2 {
		font-size : calc(6vw + 30px);
	}
}
@media only screen and (max-width: 480px) {
	.topFlex .left.small {
		width : 100%;
	}
	.topFlex .right.wide {
		width : 100%;
		padding : 4vw 0 6vw 0;
	}
}

.cateBtns {
	width : 100%;
	margin : 0 auto;
}

.leftMag {
	width : 100%;
	max-width : 1610px;
	margin-left : auto;
}
.rightMag {
	width : 100%;
	max-width : 1610px;
	margin-right : auto;
}
.mainTitle {
	font-weight : 400;
	line-height : 1.4;
	position : relative;
	padding-bottom : 16px;
	border-bottom : 2px solid #f0f0f0;
}
.bottomLine p {
	font-weight : 400;
	color : #000000;
	line-height : 2.0;
}
.bottomLine.sml p {
	line-height : 1.7;
}
.bottomLine.sml p strong {
	font-size : 1.05rem;
	font-weight : 600;
}
.bottomLine.sml p strong img {
	width : 6em;
	position : relative;
	top : 7px;
}
.addNumber h2 {
	display : -webkit-flex;
	display : flex;
	align-items: center;
	line-height : 1.0;
}
.addNumber h2.cwd {
	width : 100%;
	max-width : 530px;
	margin : 0 auto;
}
.addNumber h2 strong {
	display : block;
	width : 1.4em;
	font-size : 64px;
	font-weight : 700;
	color : #ffffff;
}
.addNumber h2 span {
	display : block;
	width : calc(100% - 3em);
	font-style : normal;
	font-weight : 700;
	color : #000000;
	line-height : 1.1;
}
.addNumber h2 span em {
	font-size : 18px;
	font-style : normal;
}
.addNumber p {
	line-height : 1.8;
}
.plus p {
	font-size : 1.1rem;
	line-height : 2.0;
}
.safe p {
	font-size : 1.05rem;
	line-height : 1.8;
}
.deltabacks {
	position : absolute;
	bottom : -90px;
	right : 0;
	width : 50%;
	max-width : 960px;
	z-index : -1;
}
.deltabacks img {
	width : 100%;
}
.deltabacks.rev {
	right : auto;
	left : 0;
}
.deltabacks.rev img {
	transform: scale(-1, 1);
}
.topWorkFlex {
	position : relative;
	box-sizing: border-box;
}
.topWorkFlex .left {
	width : 46%;
	max-width : 756px;
	box-sizing: border-box;
}
.leftMag .topWorkFlex .left {
	padding-right : 5%;
	margin-left : auto;
}
.rightMag .topWorkFlex .left {
	padding-left : 5%;
	margin-right : auto;
}
.topWorkFlex .right {
	width : 50%;
}
.topWorkFlex .item {
	padding : 0;
	width : 32%;
}
.topWorkFlex .itemTrans {
	padding : 0;
	width : 32%;
	font-size : 0;
	height : 0;
}
.itemTrans.narrow {
	width : 23.5%;
	padding : 0;
	font-size : 0;
	height : 0;
}
.topWorkFlex .item.narrow {
	padding : 0;
	width : 23.5%;
	background-color : #ffffff;
	padding : 2px;
	box-sizing : border-box;
	position : relative;
	font-size : 0;
	overflow : hidden;
}
.topWorkFlex .item.narrow .comm {
	width : 100%;
	height : 6.5em;
	overflow: hidden;
}
.topWorkFlex .item.narrow::before {
	content : "";
	position : absolute;
	top : -29px;
	left : -60px;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 60px solid transparent;
	border-left: 60px solid transparent;
	border-bottom: 60px solid #93c3e7;
	border-top: 0;
	transform: rotate(315deg);
}
.topWorkFlex .item.narrow::after {
	content : "";
	position : absolute;
	right : -60px;
	bottom : -29px;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 60px solid transparent;
	border-left: 60px solid transparent;
	border-bottom: 60px solid #93c3e7;
	border-top: 0;
	transform: rotate(135deg);
}
.topWorkFlex .item.narrow .itemInner01 {
	padding : 32px 28px 48px 28px;
	box-sizing : border-box;
	background:
		linear-gradient(45deg,  transparent 0px, #3395f3 0px),
		linear-gradient(135deg,  transparent 30px, #3395f3 30px),
		linear-gradient(225deg, transparent 0px, #3395f3 0px),
		linear-gradient(315deg, transparent 30px, #3395f3 30px);
	background-position: bottom left, top left, top right, bottom right;
	background-size: 50% 50%;
	background-repeat: no-repeat;
}
.topWorkFlex .item.narrow .itemInner02 {
	padding : 32px 28px 48px 28px;
	box-sizing : border-box;
	background:
		linear-gradient(45deg,  transparent 0px, #0164cb 0px),
		linear-gradient(135deg,  transparent 30px, #0164cb 30px),
		linear-gradient(225deg, transparent 0px, #0164cb 0px),
		linear-gradient(315deg, transparent 30px, #0164cb 30px);
	background-position: bottom left, top left, top right, bottom right;
	background-size: 50% 50%;
	background-repeat: no-repeat;
}
.topWorkFlex .img {
	width : 100%;
	font-size : 0;
	position : relative;
}
.topWorkFlex .img span {
	position : absolute;
	top : 0;
	left : 0;
	display : inline-block;
	line-height : 2.0;
	padding : 0 12px;
	background-color : #ffffff;
	color : #0164c9;
}
.topWorkFlex .img img {
	width : 100%;
	height : 22vw;
	max-height : 300px;
	object-fit: cover;
	transition: 0.4s;
}
.topWorkFlex .image img {
	width : 100%;
	height : 12vw;
	max-height : 180px;
	object-fit: cover;
	transition: 0.4s;
}
.topWorkFlex .item a .comms {
	width : 100%;
	box-sizing: border-box;
	padding : 28px 22px 16px 22px;
	background-color : #ffffff;
	transition: 0.4s;
	position : relative;
}
.topWorkFlex .item a .comms h3 {
	color : #0164c9;
}
.rightImg {
	position : absolute;
	top : -240px;
	right : 0;
	width : 28vw;
	max-width : 287px;
}
.rightImg img {
	width : 100%;
}
.workFlex {

}
.workFlex .item {
	
}
.workFlex .item .itemInner {
	
}
.workFlex .item .itemInner .image {
	width : 38%;
}
.workFlex .item .itemInner .image img {
	width : 100%;
	max-width : 400px;
	height : 24.5vw;
	max-height : 300px;
	object-fit: cover;
}
.workFlex .item .itemInner .comm {
	width : 58%;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-direction: column;
	position : relative;
	top : -8px;
}
.workFlex .item .itemInner .comm h3 {
	text-decoration: underline;
	text-underline-offset : 0.35em;
	text-decoration-thickness : 3px;
}
.workFlex .item .itemInner .comm .btn {
	margin-top : auto;
}
.itemtop {

}
@media only screen and (max-width: 1200px) {
	.rightImg {
		top : -19vw;
		width : 22vw;
	}
	.topWorkFlex .item.narrow::before {
		top : -29px;
		left : -68px;
	}
	.topWorkFlex .item.narrow::after {
		right : -68px;
		bottom : -29px;
	}
	.topWorkFlex .item.narrow .itemInner01 {
		padding : 3vw 2vw 4.4vw 2vw;
		background:
			linear-gradient(45deg,  transparent 0px, #3395f3 0px),
			linear-gradient(135deg,  transparent 24px, #3395f3 24px),
			linear-gradient(225deg, transparent 0px, #3395f3 0px),
			linear-gradient(315deg, transparent 24px, #3395f3 24px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 50% 50%;
		background-repeat: no-repeat;
	}
	.topWorkFlex .item.narrow .itemInner02 {
		padding : 3vw 2vw 4.4vw 2vw;
		background:
			linear-gradient(45deg,  transparent 0px, #0164cb 0px),
			linear-gradient(135deg,  transparent 24px, #0164cb 24px),
			linear-gradient(225deg, transparent 0px, #0164cb 0px),
			linear-gradient(315deg, transparent 24px, #0164cb 24px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 50% 50%;
		background-repeat: no-repeat;
	}
}
@media only screen and (max-width: 960px) {
	.topWorkFlex .item.narrow {
		width : 47.5%;
		margin-top : 4vw;
	}
	.topWorkFlex .item a .comms {
		padding : 2.8vw 2.2vw 1.6vw 2.2vw;
	}
	.topWorkFlex .image img {
		height : 26vw;
		max-height : 300px;
	}
}
@media only screen and (max-width: 720px) {
	.topWorkFlex .item {
		padding : 0;
		width : 48%;
	}
	.topWorkFlex .img img {
		height : 32vw;
	}
}
@media only screen and (max-width: 480px) {
	.workFlex .item .itemInner .image {
		width : 100%;
		text-align : center;
	}
	.workFlex .item .itemInner .image img {
		height : 56.5vw;
	}
	.workFlex .item .itemInner .comm {
		width : 100%;
		top : 0px;
	}
	.workFlex .item .itemInner .comm h3 {
		margin-top : 3vw;
		text-underline-offset : 0.35em;
		text-decoration-thickness : 2px;
	}
	.topWorkFlex .image img {
		height : 52vw;
		max-height : 300px;
	}
}

.topPropFlex {
	position : relative;
	box-sizing: border-box;
}
.topPropFlex .left {
	width : 46%;
	max-width : 756px;
	box-sizing: border-box;
}
.leftMag .topPropFlex .left {
	padding-right : 5%;
	margin-left : auto;
}
.rightMag .topPropFlex .left {
	padding-left : 5%;
	margin-right : auto;
}
.topPropFlex .right {
	width : 50%;
}
.topPropFlex .item {
	padding : 0;
	width : 31%;
	border : 2px solid #cbcbcb;
	background-color : #ffffff;
}
.topPropFlex .itemTrans {
	padding : 0;
	width : 31%;
	height : 0;
	font-size : 0;
}
.topPropFlex .img {
	width : 100%;
	font-size : 0;
	position : relative;
}
.topPropFlex .img span {
	position : absolute;
	top : 10px;
	left : -10px;
	display : inline-block;
	line-height : 2.0;
	padding : 0 12px;
	background-color : #0164c9;
	color : #ffffff;
	font-size : 1rem;
}
.topPropFlex .img img {
	width : 100%;
	height : 24vw;
	max-height : 240px;
	object-fit: cover;
	transition: 0.4s;
}
.topPropFlex .item a .comms {
	width : 100%;
	box-sizing: border-box;
	padding : 10px 18px 16px 18px;
	background-color : #ffffff;
	transition: 0.4s;
	position : relative;
}
.topPropFlex .item a .comms h3 {
	color : #595959;
	border-bottom : 1px solid #c9c9c9;
}
.topPropFlex .item a .comms h4 {
	color : #0164c9;
}
@media only screen and (max-width: 720px) {
	.topPropFlex .item {
		width : 48%;
	}
	.topPropFlex .itemTrans {
		width : 48%;
	}
	.topPropFlex .img img {
		height : 32vw;
	}
}
@media only screen and (max-width: 480px) {
	.topPropFlex .item {
		width : 100%;
	}
	.topPropFlex .img img {
		height : 62vw;
	}
	.topWorkFlex .item.narrow {
		width : 100%;
		margin-bottom : 4vw;
	}
	.topWorkFlex .item a .img img {
		height : 62vw;
	}
	.topWorkFlex .item a .img::after {
		height : 62vw;
	}
}
.topWorkFlex .item a p.ya {
	font-size : 1rem;
	color : #ffffff;
	border-top : 1px solid #ffffff;
	transition: 0.4s;
}
.topWorkFlex .item a p.comm {
	font-size : 0.85rem;
	line-height : 1.8;
	color : #ffffff;
	transition: 0.4s;
}
.topWorkFlex .item a:hover .img img {
	filter: brightness(1.4);
}
.topWorkFlex .item a:hover .img::after {
	background-color : #fefefe;
}
.topWorkFlex .item a:hover .comms {
	background-color : #9aeafc;
}
.topWorkFlex .item a:hover p.comm {
	color : #ffffff;
	border-bottom : 1px solid #79799e;
}
.topWorkFlex .item a:hover p.ya {
	color : #79799e;
}

.resultWrap {
	background-color : #e2eaf5;
	padding : 12px;
	box-sizing : border-box;
}
.resultWrap .result {
	background-color : #ffffff;
	padding : 6px 12px;
	box-sizing : border-box;
	margin-bottom : 12px;
}
.resultWrap .hit {
	background-color : #ffffff;
	padding : 6px 12px;
	box-sizing : border-box;
}
.resultWrap .hit strong {
	line-height : 1.0;
	color : #a40102;
}
.resultWrap .hit .buttons {

}
.resultWrap .hit .buttons a.search {
	background : #02458a url(../img/search.png) no-repeat left 12px center;
	display : inline-block;
	padding : 3px 14px 4px 45px;
	box-sizing : border-box;
	color : #ffffff;
	border : 1px solid #02458a;
	font-size : 1.2rem;
	font-weight : 700;
	margin-right : 6px;
	transition: 0.3s;
}
.resultWrap .hit .buttons a.reset {
	background-color : #ececec;
	display : inline-block;
	padding : 3px 20px 4px 20px;
	box-sizing : border-box;
	border : 1px solid #02458a;
	color : #02458a;
	font-size : 1.2rem;
	font-weight : 700;
	transition: 0.3s;
}
.resultWrap .hit .buttons a.search:hover {
	background : #0164cb url(../img/search.png) no-repeat left 12px center;
}
.resultWrap .hit .buttons a.reset:hover {
	background-color : #ffffff;
	color : #0164cb;
}
@media only screen and (max-width: 720px) {
	.resultWrap .hit .buttons a.search {
		background-size : calc(1.18vw + 10.4px);
		padding : 3px 12px 4px calc(1.2vw + 30px);
		font-size : 1.1rem;
		margin-right : 6px;
	}
	.resultWrap .hit .buttons a.reset {
		padding : 3px 16px 4px 16px;
		font-size : 1.1rem;
	}
	.resultWrap .hit .buttons a.search:hover {
		background : #0164cb url(../img/search.png) no-repeat left 12px center;
		background-size : calc(1.18vw + 10.4px);
	}
}

.rightMag .names {
	position : relative;
	top : 0;
	left : 160px;
	font-size : 1.1rem;
	color : #000000;
	opacity : 1;
}
.topWorkFlex .right img {
	width : 100%;
	max-width : 952px;
	height : 32vw;
	max-height : 546px;
	object-fit: cover;
}
.topWorkFlex .right span {
	position : absolute;
	top : 0;
	left : -100%;
	width : 100%;
	max-width : 800px;
	height : 24vw;
	max-height : 400px;
	font-size : 0;
	z-index : 2;
	background-color : rgba(0, 51, 137, 1);
	transition: 0.5s;
}
.topWorkFlex .right.sht img {
	max-width : 500px;
	height : 18vw;
	max-height : 300px;
}
.topWorkFlex .right.sht span {
	max-width : 500px;
	height : 18vw;
	max-height : 300px;
}
.topWorkFlex .right.hum img {
	max-width : 900px;
	height : 32vw;
	max-height : 600px;
}
.topWorkFlex .right.hum span {
	max-width : 900px;
	height : 32vw;
	max-height : 600px;
}
.topWorkFlex .right.mid img {
	max-width : 560px;
	height : 32vw;
	max-height : 360px;
}
.topWorkFlex .right.mid p.inner {
	max-width : 560px;
	height : 32vw;
	max-height : 360px;
	background-color : #f4fee9;
	position : relative;
}
.topWorkFlex .right.mid p.inner img {
	width : 45%;
	max-width : 200px;
	height : auto !important;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.topWorkFlex .right.mid span {
	max-width : 560px;
	height : 32vw;
	max-height : 360px;
}
.topWorkFlex .right span.move {
	left : 0;
}
.topWorkFlex .right img.open {
	opacity : 1;
}
.topWorkFlex .right.mid p.inner img.open {
	opacity : 1;
}
.topWorkFlex .right span.move.leave {
	left : 100%;
}

.sinceTitle {
	border-bottom : 1px solid #000000;
}
.sinceTitle strong {
	font-size : 140px;
	display : inline-block;
	padding-left : 30px;
}
.sinceWrap {
	width : 100%;
	max-width : 1320px;
	margin : 0 auto;
}
.sinceWrap .item h2 {
	font-size : 24px;
	line-height : 1.4;
	padding : 0 10px;
}
.sinceWrap .item h2 em {
	font-style : normal;
	text-orientation : mixed;
}
.sinceWrap .item h3 {
	font-size : 1rem;
	font-weight : 500;
	color : #8b8b8b;
}
.sinceWrap .item h3 span {
	display : inline-block;
	font-size : 24px;
	font-weight : 700;
	color : #ffffff;
	background-color : #404040;
	padding : 24px 10px;
	line-height : 1.0;
	border-radius : 24px;
	margin-bottom : 24px;
}
.sinceWrap .item {
	height : 422px;
}
.sinceWrap .item p {
	font-size : 1rem;
	line-height : 2.0;
}
.lineupButton {

}
.lineupButton.bdr {
	border-bottom : 1px solid #8b8b8b;
}
.lineupButton a {
	display : -webkit-flex;
	display : flex;
	align-items: center;
	background-color : #252525;
	color : #ffffff;
	font-weight : 700;
	line-height : 2.0;
	padding : 0 14px 2px 14px;
	border-radius : 24px;
	margin : 10px 10px 10px 0;
}
.lineupButton a.non {
	background-color : #ffffff;
	color : #d1d1d1;
	border : 1px solid #d1d1d1;
	transition: 0.3s;
}
.lineupButton a strong {
	display : inline-block;
	color : #ffffff;
	font-size : 22px;
	padding-right : 16px;
}
.lineupButton a em {
	display : inline-block;
	font-style : normal;
	font-size : 18px;
}
.lineupButton a.non:hover {
	color : #000000;
	border : 1px solid #000000;
}
.safetyTitle {
	font-size : 24px;
	line-height : 1.4;
	color : #252525;
	padding-bottom : 16px;
	position : relative;
	top : -2px;
}
.safetyTitle::after {
	content : "";
	display : block;
	width : 16%;
	height : 1px;
	background-color : #252525;
	margin-top : 16px;
}
.submenuWrap {
	background-color : #ffffff;
	border-radius : 6px;
}
.submenuWrap .worksMenu {
	padding-left : 30px;
	padding-right : 30px;
}
.submenuWrap li a {
	display : inline-block;
	padding : 10px 20px;
	color : #cbcbcb;
	background-color : #eff4f9;
	transition: 0.3s;
	position : relative;
	margin-right : 10px;
}
.submenuWrap li span {
	display : inline-block;
	padding : 10px 20px;
	color : #ffffff;
	background-color : #0164c9;
	font-weight : 700;
	position : relative;
	margin-right : 10px;
}
.submenuWrap li a br {
	display : none;
}
.submenuWrap li a:hover {
	opacity : 1 !important;
	color : #0164c9;
}
.submenuWrap .worksSelecter {
	display : none;
}
@media only screen and (max-width: 960px) {
	.submenuWrap li a {
		padding : 1vw 2vw;
		margin-right : 6px;
	}
	.submenuWrap li span {
		padding : 1vw 2vw;
		margin-right : 6px;
	}
	.submenuWrap .worksMenu {
		padding-left : 2vw;
		padding-right : 0.5vw;
	}
}
@media only screen and (max-width: 640px) {
	.submenuWrap .worksMenu {
		display : none;
	}
	.submenuWrap .worksSelecter {
		display : block;
	}
}
.buySelect {
	
}
.buySelect .selecter {
	width : 100%;
	border-bottom : 1px solid #556a7f;
}
.buySelect .selecter ul {
	width : 88%;
	margin : 0 auto;
}
.buySelect .selecter ul li {
	width : 23%;
}
.buySelect .selecter ul li a {
	display : block;
	background-color : #ffffff;
	border-left : 1px solid #0164c9;
	border-right : 1px solid #0164c9;
	border-top : 1px solid #0164c9;
	color : #adcff2;
	font-size : 20px;
	font-weight : 700;
	border-radius : 12px 12px 0 0;
	text-align : center;
	line-height : 52px;
}
.buySelect .selecter ul li a.active {
	color : #ffffff;
	background-color : #0164c9;
}
@media only screen and (max-width: 720px) {
	.buySelect .selecter ul li a {
		font-size : calc(2.25vw + 3.8px);
		line-height : calc(3vw + 22px);
		border-radius : calc(0.5vw + 7px) calc(0.5vw + 7px) 0 0;
	}
}
@media only screen and (max-width: 720px) {
	.buySelect .selecter ul {
		width : 100%;
	}
	.buySelect .selecter ul li {
		width : 24%;
	}
}
.ttl_comm {
	text-align : center;
	font-size : 1.05rem;
	padding-bottom : 20px;
	padding-top : 20px;
	border-bottom : 2px solid #f0f0f0;
}
.ttl_comm span {
	display : inline-block;
}
.fld_item {
	width : 48%;
	margin-top : 40px;
}
.fld_item.dm {
	width : 100%;
}
.fld_item.sec {
	margin-top : 60px;
}
.fld_cont h3 {
	padding-top : 10px;
	padding-bottom : 10px;
}
.fld_item .imgArea img {
	width : 100%;
	height : 31.25vw;
	max-height : 300px;
	object-fit: cover;
}
.fld_lim .imgArea.dm {
	width : 48%;
}
.fld_lim .fld_cont.dm {
	width : 48%;
}
.ttl_comm br {
	display : block;
}
@media only screen and (max-width: 1400px) {
	.mainTitle {
		padding-bottom : calc(0.5vw + 8px);
	}
}
@media only screen and (max-width: 1200px) {
	.sinceWrap .item h2 {
		font-size : calc(0.91vw + 13.1px);
		padding : 0 5px;
	}
	.sinceWrap .item h3 span {
		font-size : calc(0.91vw + 13.1px);
	}
	.sinceWrap .item p {
		line-height : 1.8;
	}
}
@media only screen and (max-width: 960px) {
	.lineupButton a {
		padding : 0 14px 2px 14px;
		border-radius : 24px;
		margin : 10px 10px 10px 0;
	}
	.lineupButton a strong {
		font-size : calc(0.91vw + 11.1px);
		padding-right : 1.6vw
	}
	.lineupButton a em {
		font-size : calc(0.57vw + 11.2px);
	}
	.sinceTitle strong {
		font-size : calc(11vw + 35px);
		padding-left : 3vw;
	}
	.sinceWrap .item {
		height : auto;
		margin-bottom : 5vw;
		padding : 0 10px;
		box-sizing: border-box;
	}
	.sinceWrap .item h3 span {
		padding : calc(1vw + 2px) 2.4vw;
		margin-right : 16px;
		margin-bottom : 1vw;
	}
	.sinceWrap .item p {
		margin-top : 1vw;
	}
}
@media only screen and (max-width: 640px) {
	.topWorkFlex .item {
		flex-wrap : wrap;
		align-items: center;
	}
	.topWorkFlex .item .ttl {
		width : 80%;
		padding-left : 4%;
	}
	.topWorkFlex .item .ttl h3 {
		font-size : calc(2.5vw + 8.0px);
	}
	.topWorkFlex .item .ttl p {
		font-size : 12px;
	}
	.topWorkFlex .item .comm {
		width : 100%;
		max-width : 640px;
		font-size : 1rem;
		line-height : 1.8;
		padding-left : 0;
		margin-top : 3vw;
	}
	.topWorkFlex .item .right {
		width : 100%;
		text-align : right;
	}
	.topWorkFlex .right img {
		height : 64vw;
	}
	.leftMag .topWorkFlex .left {
		padding : 0 20px;
	 	margin : 0;
	}
	.rightMag .topWorkFlex .left {
		padding : 0 20px;
	 	margin : 0;
	}
	.submenuWrap {
		width : calc(100% - 20px);
		margin-left : auto;
		margin-right : auto;
		padding : 2vw 2.4vw 2vw 2.4vw;
	}
	.submenuWrap li {
		text-align : left;
	}
	.submenuWrap li a {
		padding: 0 9vw 0 1.6vw;
	}
	.submenuWrap li a::before {
		width : 16px;
		height : 16px;
		top : 2px;
		right : 1.6vw;
		border-radius : 16px;
	}
	.submenuWrap li a::after {
		width : 6px;
		height : 6px;
		top : 8px;
		right : calc(1.6vw + 6px);
	}
}
@media only screen and (max-width: 480px) {
	.topWorkFlex .item {
		width : 100%;
		padding : 2vw 0;
	}
	.lineupButton a {
		padding : 0 8px 2px 8px;
		border-radius : 20px;
		margin : 6px 5px 6px 0;
		font-size : 0.9rem;
		line-height : 1.8;
	}
	.sinceWrap br.smp {
		display : none;
	}
	.fld_item {
		width : 100%;
		margin-top : 4vw;
	}
	.fld_item.sec {
		margin-top : 6vw;
	}
	.fld_item .imgArea img {
		width : 100%;
		height : 64vw;
	}
	.fld_lim .imgArea.dm {
		width : 100%;
	}
	.fld_lim .fld_cont.dm {
		width : 100%;
	}
	.ttl_comm br {
		display : none;
	}
	.submenuWrap li a br {
		display : block;
	}
}

.bnrTitle {
	background : url(../img/top_sv_btn.jpg) no-repeat bottom right;
	height : 32vw;
	max-height : 250px;
	min-height : calc(6vw + 110px);
	position : relative;
	padding : 30px 40px;
	box-sizing : border-box;
	background-size: cover;
}
@media only screen and (max-width: 700px) {
	.bnrTitle {
		padding : 2vw 4vw 2vw 4vw;
	}
}

.flowLeft {
	width : 284px;
	position : absolute;
	top : 0;
	bottom : auto;
	left : 12px;
	height : auto;
	overflow : visible;
	background-color : #ffffff;
	z-index : 9;
}
.flowLeft.active {
	position: fixed;
	top : 80px;
}
.flowLeft.stop {
	position : absolute;
	top : auto;
	bottom : 0;
	left : 12px;
}
.flowLeft nav {
	width : 282px;
	height : auto;
	position : relative;
	margin-left : auto;
}
.flowLeft nav dl {
	width : 100%;
	border-left : 1px solid #bebebe;
	border-right : 1px solid #bebebe;
	border-bottom : 1px solid #bebebe;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.flowLeft nav dl:first-of-type {
	border-top : 1px solid #bebebe;
}
.flowLeft nav dt {
	width : 2em;
	font-size : 1rem;
	color : #000000;
	font-weight : 700;
	margin-left : 30px;
	padding : 16px 0;
}
.flowLeft nav dd {
	width : calc(100% - 2em);
}
.flowLeft nav dd a {
	display : block;
	font-size : 1rem;
	color : #000000;
	padding : 16px 0;
	transition: 0.3s;
}
.flowLeft nav dd a:hover {
	color : #2bb1c2;
}
.flowRight {
	width : calc(100% - 284px);
	margin-left : auto;
	padding-right : 3%;
	box-sizing: border-box;
	position : relative;
}
.flowRight::after {
	content : "";
	position : absolute;
	width : 1px;
	top : 0;
	left : 12%;
	height : 100%;
	font-size : 0;
	background-color : #bebebe;
	z-index : 1;
}
.flowContents {
	display : -webkit-flex;
	display : flex;
}
.flowContents .number {
	width : 25%;
	text-align : center;
	position : relative;
}
.flowContents .number.last::after {
	content : "";
	display : block;
	height : 100%;
	width : 100%;
	background-color : #ffffff;
	position : relative;
	z-index : 2;
}
.flowContents .number span {
	display : inline-block;
	position : relative;
	z-index : 2;
	width : 62px;
	height : 62px;
	line-height : 60px;
	font-size : 24px;
	font-weight : 700;
	background-color : #2db1c2;
	color : #ffffff;
	font-family: "Roboto", sans-serif;
	border-radius : 50%;
}
.flowContents .inner {
	width : 75%;
}
.flowContents .inner h2 {
	font-size : 32px;
	font-weight : 500;
	margin-bottom : 20px;
}
.flowContents .inner .image img {
	width : 100%;
	max-width : 900px;
	height : 30.25vw;
	max-height : 500px;
	object-fit: cover;
}
.flowContents .inner .text {
	font-size : 1.05em;
	font-weight : 400;
	margin-top : 20px;
	line-height : 1.8;
}
.flowContents .inner .text a {
	display : inline-block;
	color : #ffffff;
	background-color : #2db1c2;
	font-size : 1rem;
	line-height : 2.4;
	padding : 0 20px;
	border : 1px solid #2db1c2;
	border-radius : 24px;
	margin-top : 20px;
	transition: 0.3s;
}
.flowContents .inner .text a:hover {
	opacity : 1 !important;
	color : #2db1c2;
	background-color : #ffffff;
}
.flowContents .inner .text p.ffp03 {
	font-size : 26px;
	font-weight : 700;
	color : #2db1c2;
	line-height : 61px;
	padding-left : 80px;
	margin-top : 40px;
	background : url(../img/recicle.png) no-repeat 0 0;
}
.flowLeft .open_tab {
	display : none;
}
@media only screen and (max-width: 1400px) {
	.flowContents .inner h2 {
		font-size : calc(2.06vw + 3.2px);
	}
}
@media only screen and (max-width: 800px) {
	.flowLeft {
		width : 212px;
		left : 12px;
	}
	.flowLeft nav {
		width : 210px;
	}
	.flowLeft nav dt {
		margin-left : 10px;
	}
	.flowRight {
		width: calc(100% - 212px);
		padding-right: 0;
	}
	.flowContents .inner .text {
		font-size: 1em;
	}
}
@media only screen and (max-width: 720px) {
	.flowContents .inner h2 {
		font-size : calc(2vw + 9.6px);
	}
	.flowLeft {
		left : -214px;
		transition: 0.5s;
	}
	.flowLeft.open {
		left : 0;
		z-index : 9;
	}
	.flowLeft.stop {
		left : -220px;
	}
	.flowLeft .open_tab {
		display : block;
		position : absolute;
		top : 0;
		right : -32px;
		width : 32px;
		height : 80px;
		font-size : 16px;
		line-height : 76px;
		background-color : #2db1c2;
		color : #ffffff;
		border-radius : 0 10px 10px 0;
		text-align : center;
	}
	.flowLeft .open_tab span {
		transform: rotate(0);
		position: relative;
		left: 0px;
		font-size: 24px;
		display : inline-block;
		line-height : 1.0;
	}
	.flowLeft.open .open_tab span {
		transform: rotate(180deg);
		top : 8px;
	}
	.flowRight {
		width: calc(100% - 30px);
		padding-right: 0;
		margin-left : 30px;
	}
	.flowContents .number span {
		width : 46px;
		height : 46px;
		line-height : 46px;
		font-size : 18px;
	}
	.flowContents .inner .text p.ffp03 {
		font-size : calc(3vw + 4.4px);
		line-height : 8vw;
		padding-left : calc(8vw + 10px);
		margin-top : 4vw;
		background-size : 8vw;
	}
}
@media only screen and (max-width: 480px) {
	.flowLeft nav dt {
		padding : 12px 0;
	}
	.flowLeft nav dd a {
		padding : 12px 0;
	}
}
@media only screen and (max-width: 350px) {
	.flowContents .number.last::after {
		height : 90%;
	}
}

.macineInner h2 {
	font-weight : 400;
	color : #000000;
	background-color : #e9ecf1;
	border : 2px solid #dbdbdb;
	padding : 36px 0;
	text-align : center;
}
.galleryBox {
	width : 48%;
}
.galleryBox .gr_img img {
	width : 100%;
	max-width : 560px;
	height : 32vw;
	max-height : 360px;
	object-fit: cover;
}
.galleryBox .gr_maker span {
	display : inline-block;
	background-color : #000000;
	color : #ffffff;
	font-weight : 500;
	line-height : 1.8;
	border-radius : 14px;
	margin-right : 6px;
	padding : 0 10px 2px 10px;
}
@media only screen and (max-width: 640px) {
	.galleryBox {
		width : 100%;
		max-width : 560px;
		margin-left : auto;
		margin-right : auto;
	}
	.galleryBox .gr_img img {
		height : 56vw;
	}
	.macineInner h2 {
		padding : 4vw 0;
	}
}

.nendoBtns .s_wrap {
	display : inline-block;
	position : relative;
}
.nendoBtns select {
	font-size : 16px;
	padding : 8px 12px;
	border : 1px solid #aaaaaa;
	width : 160px;
	background-color : #ffffff;
	border-radius : 4px;
	-webkit-appearance: none;
	appearance: none; /* デフォルトの矢印を非表示 */
}
.nendoBtns .s_wrap::after {
	content : "\25BC";
	position: absolute;
	right: 12px;
	top: 9px;
	font-size : 12px;
	color : #2bc1c2;
}
.cateBtns a {
	display : inline-block;
	width : 24%;
	position : relative;
	font-size : 1rem;
	color : #0164c9;
	text-align : left;
	background-color : #ffffff;
	border : 1px solid #d7d7d7;
	line-height : 1.8;
	padding : 14px 40px 16px 30px;
	margin-left : 0;
	transition: 0.3s;
	border-radius : 40px;
	box-sizing : border-box;
}
.cateBtns a.active {
	color : #ffffff;
	background-color : #2db1c2;
	border : 1px solid #2db1c2;
}
.cateBtns a:hover {
	color : #2db1c2;
	border : 1px solid #2db1c2;
}
.cateBtns a.active:hover {
	color : #ffffff;
	border : 1px solid #2db1c2;
}
.worksContents h2 {
	color : #0164c9;
	line-height : 50px;
	padding-bottom : 2px;
	border-bottom : 3px solid #e5e5e5;
}
@media only screen and (max-width: 720px) {
	.cateBtns a {
		width : 49%;
		padding : 12px 40px 14px 18px;
		margin-left : 0;
		margin-bottom : 2vw;
	}
}
@media only screen and (max-width: 480px) {
	.cateBtns a {
		padding : 8px 8px 48px 8px;
		border-radius : 10px;
		text-align : center;
		position : relative;
	}
	.worksContents h2 {
		line-height : 2.2;
	}
}

.worksContents h2 strong {
	display : inline-block;
	position : relative;
	white-space: nowrap;
}
.worksContents h2 strong::after {
	content : "";
	position : absolute;
	bottom : -5px;
	left : 0;
	width : 100%;
	height : 3px;
	font-size : 0;
	display : inline-block;
	background-color :  #0164c9;
}
.worksContents h2 span {
	display : inline-block;
	font-weight : 500;
	padding-left : 40px;
	line-height: 1.4;
}
.worksContents h3 {

}
.worksContents h3 strong {
	display : inline-block;
	background-color : #0164c9;
	color : #ffffff;
	padding : 0 10px 2px 10px;
	position : relative;
}
.worksContents h3 span {
	display : inline-block;
	font-weight : 500;
	padding-left : 10px;
	color : #0164c9;
}
.worksBox {
	width : 23.5%;
}
.worksTrans {
	width : 23.5%;
	font-size : 0;
	height ; 0;
}
.worksBox p.ttl {
	font-weight : 700;
	color : #0164c9;
	padding-left : 10px;
	padding-bottom : 3px;
	border-left : 5px solid #d1d0e2;
	line-height : 1.0;
}
.worksBox p.com {
	font-weight : 400;
	color : #000000;
	line-height : 2.0;
}
.worksBox .wk_imgs img {
	width : 100%;
	max-width : 372px;
	height : 21vw;
	max-height : 210px;
	object-fit: cover;
}
.worksBox .wk_cate {
	display : inline-block;
	color : #ffffff;
	font-weight : 500;
	background-color : #000000;
	line-height : 1.8;
	padding : 0 12px 2px 12px;
	border-radius : 16px;
	vertical-align: middle;
}
.worksBox em {
	display : inline-block;
	font-size : 0.9rem;
	color : #000000;
	font-style : normal;
	line-height : 2.4;
	padding : 0 0 0 16px;
	vertical-align: middle;
	position : relative;
	top : 4px;
}
@media only screen and (max-width: 720px) {
	.worksBox {
		width : 48%;
	}
	.worksBox .wk_imgs img {
		height : 32vw;
	}
}
@media only screen and (max-width: 480px) {
	.worksContents {
		width : 100%;
		margin-left : auto;
		margin-right : auto;
	}
	.worksBox {
		width : 100%;
	}
	.worksBox.pdb40 {
		padding-bottom : 8vw !important;
	}
	.worksBox .wk_imgs {
		text-align : center;
	}
	.worksBox .wk_imgs img {
		height : 62vw;
		max-height : 210px;
		margin : 0 auto;
	}
	.worksContents h2 span {
		padding-left : 4vw
	}
}

.conceptWrap {
	background-color : #252525;
}
.conceptWrap .defWorkFlex  {
	width : 100%;
	height : 54vw;
	max-height : 600px;
	box-sizing: border-box;
}
.conceptWrap.rev .defWorkFlex  {
	
}
.defWorkFlex .left {
	width : 64%;
}
.defWorkFlex .left li img {
	width : 100%;
	height : 54vw;
	max-height : 600px;
	object-fit: cover;
}
.defWorkFlex .right {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
	width : 36%;
	height : 54vw;
	max-height : 600px;
	position : relative;
	padding : 40px;
	box-sizing: border-box;
}
.defWorkFlex .right h4 {
	display : block;
	width : 100%;
    border-bottom : 1px solid #ffffff;
}
.defWorkFlex .right dl {
	display : -webkit-flex;
	display : flex;
	width : 100%;
}
.defWorkFlex .right dt {
	width : 8em;
}
.defWorkFlex .right dd {
	width : calc(100% - 8em);
}
.defWorkFlex .btline {
	display : block;
	width : 100%;
    border-top : 1px solid #ffffff;
}
.bx-controls {
	position : absolute;
	width : 100%;
	top : 50%;
	left : 0;
}

.left04WorkFlex  {
	width : 100%;
	max-width : 1620px;
	padding : 0 10px;
	box-sizing: border-box;
	margin : 0 0 0 auto;
}
.left04WorkFlex .left {
	width : 32%;
}
.left04WorkFlex .right {
	width : 64%;
	max-width : 1049px;
	height : 64vw;
	max-height : 758px;
	position : relative;
	font-size : 0;
	overflow : hidden;
}
.conceptWrap.for .defWorkFlex .left {
	padding-right : 5%;
	box-sizing: border-box;
}
.conceptWrap.rev .defWorkFlex .left {
	padding-left : 5%;
	box-sizing: border-box;
}
.defWorkFlex .right img {
	width : 100%;
	max-width : 750px;
	height : 36vw;
	max-height : 550px;
	object-fit: cover;
	opacity : 0;
	transition-delay : 0.5s;
}
.defWorkFlex .right span {
	
}
.defWorkFlex .right span.move {
	left : 0;
}
.defWorkFlex .right img.open {
	opacity : 1;
}
.defWorkFlex .right span.move.leave {
	left : 100%;
}
.left04WorkFlex .right img {
	width : 100%;
	max-width : 1049px;
	height: 48vw;
	max-height: 758px;
	object-fit: contain;
	opacity : 0;
	transition-delay : 0.5s;
}
.left04WorkFlex .right span {
	position : absolute;
	top : 0;
	left : -100%;
	width : 100%;
	max-width : 1049px;
	height: 48vw;
	max-height : 758px;
	font-size : 0;
	z-index : 2;
	background-color : rgba(0, 51, 137, 1);
	transition: 0.5s;
}
.left04WorkFlex .right span.move {
	left : 0;
}
.left04WorkFlex .right img.open {
	opacity : 1;
}
.left04WorkFlex .right span.move.leave {
	left : 100%;
}
.left04tag {
	margin-top : -140px;
}
.left04inner {
	padding : 20px 20px 0 0px;
	box-sizing: border-box;
}
.left05tag {
	width : 100%;
	max-width : 920px;
	padding : 0 10px;
	margin : 0 auto;
	box-sizing: border-box;
}
.leftmagNw {
	padding : 0;
}
.blinepoint {
	font-size : 24px;
	color : #000000;
	line-height : 1.6;
	padding-bottom : 8px;
	border-bottom : 1px solid #f0f0f0;
	position : relative;
}
.blinepoint::after {
	content : "";
	position : absolute;
	bottom : -1px;
	left : 0;
	width : 20%;
	height : 3px;
	background-color : #252525;
}

.mgt780 {
	padding-top : 600px;
}
.innerGray {
	position : relative;
	z-index : 3;
}
.innerGray::after {
	content : "";
	position : absolute;
	top : 50px;
	left : 5%;
	display : block;
	width : 90%;
	height : 100%;
	max-width : 1620px;
	margin : 0 auto;
	background-color : #f4f4f4;
	z-index : -1;
}
.bgimage img {
	width : 100%;
}
.borderTitle {
	border : 4px solid #252525;
	padding : 64px 46px 46px 46px;
	box-sizing: border-box;
	position : relative;
}
.borderTitle.int {
	padding : 56px 46px 46px 46px;
}
.borderTitle h2 {
	position : absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	font-size : 64px;
	font-weight : 600;
	font-style : italic;
	color : #252525;
	line-height : 1.0;
	background-color : #ffffff;
	padding : 0 24px;
	letter-spacing: 2px;
}
.borderTitle h3 {
	font-size : 24px;
	font-weight : 700;
	text-align : center;
}
.borderTitle.int h3 {
	position : absolute;
	top: 0;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	font-size : 36px;
	font-weight : 600;
	color : #252525;
	line-height : 1.0;
	padding : 0 24px 4px 80px;
	white-space: nowrap;
	background : #ffffff url(../img/check.png) no-repeat left 24px top;
}
.borderTitle.int p {
	line-height : 1.8;
}
.advTable {
	display : table;
}
.advTable dl {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	margin-bottom : 32px;
}
.advTable dl dt {
	width : 50px;
}
.advTable dl dt img {
	width : 41px;
}
.advTable dl dd {
	width : calc(100% - 70px);
	white-space: nowrap;
	font-size : 24px;
	font-weight : 700;
}
.advUnder {
	border-top : 2px solid #cfcfcf;
	text-align : center;
	position : relative;
}
.advUnder p {
	font-size : 18px;
	font-weight : 500;
	line-height : 1.6;
	display : inline-block;
	text-align : left;
}
.advUnder::after {
	content : "";
	position : absolute;
	bottom : 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #252525 transparent transparent transparent;
	border-width: 30px 30px 0 30px;
}
.innerImage {
	background : url(../img/d_back.jpg) no-repeat top left;
	background-size : 100%;
	padding-left : 100px;
	padding-top : 10px;
}
.rinenWrap {
	position : relative;
	width : 100%;
	padding : 0 0 80px 0;
}
.rinenWrap .titBlock {
	position : relative;
	width : 50%;
	padding : 100px 120px 100px 0;
	background : url(../img/rinen_back_l.png) no-repeat top right;
}
.rinenWrap .titBlock h2 {
	position : relative;
	z-index : 2;
	font-size : 44px;
	font-weight : 700;
	line-height : 1.2;
	color : #ffffff;
	letter-spacing: 2px;
	text-align : right;
	padding-right : 50px;
}
.rinenWrap .titBlock_r {
	position : absolute;
	z-index : 1;
	bottom : 0;
	right : 0;
	width : 58%;
	padding : 0 40px 0 120px;
	margin-left: auto;
	background : url(../img/rinen_back_r.png) no-repeat top left;
	height: 250px;
	display: flex;
	align-items: center;
	box-sizing: border-box;
}
.rinenWrap .titBlock_r p {
	position : relative;
	font-weight : 500;
	line-height : 2.0;
	color : #000000;
	text-align : left;
	padding-left : 100px;
	display : -webkit-flex;
	display : flex;
	align-items: center;
}
.mgt-60 {
	position : relative;
	top : -48px;
}
.holidayArea {
	width : 100%;
	max-width : 1000px;
	margin : 0 auto;
	line-height : 1.8;
}
.holidayArea img {
	width : 48%;
}
br.pc720 {
	display : block;
}
.lineupPad {
	padding-top : 0;
}
@media only screen and (max-width: 1620px) {
	.left04tag {
		margin-top : -10vw;
	}
}
@media only screen and (max-width: 1480px) {
	.addNumber h2 strong {	
		font-size : calc(4.21vw + 1.7px);
		width : 1.8em;
	}
	.addNumber h2 span em {
		font-size : calc(0.43vw + 11.6px);
	}
	.left04inner {
		padding : 40px 0 0 0;
	}
	.rightMag .names {
		left : 10vw;
	}
}
@media only screen and (max-width: 1280px) {
	.topInner {
		width: 100%;
		margin-bottom : 5vw;
	}
	.topInner.mid {
		margin-bottom : 0;
	}
	.topInner.rev {
		width: 85%;
		padding: 0 10px 0 10px;
	}
	.rightMag {
		margin-top : 4vw;
		margin-bottom : 4vw;
	}
	.rightMag.mid {
		margin-top : 0;
	}
	.safetyTitle {
		font-size : calc(1.1vw + 11px);
	}
	.safe p {
		font-size : calc(0.42vw + 10.7px);
	}
	.rinenWrap .titBlock h2 {
		font-size : calc(2.5vw + 12.0px);
		padding-right : 5vw
	}
	.rinenWrap .titBlock {
		width : calc(48% + 3vw);
		padding : 100px 8vw 100px 0;
	}
	.borderTitle h2 {
		top: -0.6em;
		font-size : calc(3.33vw + 21.4px);
		padding : 0 24px;
		letter-spacing: 2px;
	}
	.borderTitle h3 {
		font-size : calc(1.04vw + 10.7px);
	}
	.borderTitle.int h3 {
		font-size : calc(2.27vw + 8.8px);
		padding : 0 2.4vw 4px calc(5vw + 10px);
		background : #ffffff url(../img/check.png) no-repeat left 2vw top;
		background-size : calc(2.27vw + 10.8px);
	}
	.borderTitle {
		padding : calc(6vw + 10px) 4.6vw 4.6vw 4.6vw;
	}
	.borderTitle.int {
		padding : calc(4vw + 10px) 4.6vw 4.6vw 4.6vw;
	}
	.advTable dl {
		align-items : center;
	}
	.advTable dl dt {
		width : calc(4vw + 12px);
	}
	.advTable dl dt img {
		width : 92%;
		max-width : 41px;
	}
	.advTable dl dd {
		width : calc(100% - 5vw - 18px);
		font-size : calc(1.04vw + 10.7px);
	}
	.advUnder p {
		font-size : calc(0.52vw + 11.3px);
	}
}
@media only screen and (max-width: 1150px) {
	.topFlex .right.gree h3 {
		font-size : calc(1.18vw + 6.4px);
	}
	.topFlex .left .underBox p strong {
		font-size : calc(2vw + 12.2px);
	}
	.topFlex .left .underBox p span {
		font-size : calc(1vw + 6.6px);
	}
	.topFlex .right img {
		width : 65%;
		max-width : 415px;
	}
	.topFlex.sub .right img {
		width : 100%;
		max-width : 720px;
	}
	.topWrap {
	  top: -48vw;
	}
	.topFlex .left .underBox {
		padding: 4vw 3vw 4.3vw 3.1vw;
		width : 30vw;
		margin: 16vw 0 0 0px;
	}
	.topFlex .left h3 {
		font-size : calc(2vw + 6.0px);
		padding : 0 1rem 0 1.5rem
	}
	.topFlex .left h3::after {
		height : calc(150px + 5vw);
	}
	.blinepoint {
		font-size : calc(0.96vw + 13.0px);
	}
	.rinenWrap .titBlock_r {
		padding : 0 20px 0 80px;
		width : 64%;
	}
	.innerImage {
		padding-left: 6vw;
		background-size: 110%;
		background-position: bottom right -40px;
	}
}
@media only screen and (max-width: 960px) {
	.mgt780 {
		padding-top : 0px;
		margin-top : -280px;
	}
	.topFlex .right br.smp {
		display : none;
	}
	.deltabacks {
		bottom : -9vw;
		width : 50%;
	}
	.defWorkFlex .right {
		padding : 3vw 4vw;
	}
	.defWorkFlex .right dt {
		width : 6em;
	}
}
@media only screen and (max-width: 960px) {
	.left04inner {
		padding : 80px 0 0 0;
	}
}
@media only screen and (max-width: 860px) {
	.rinenWrap .titBlock {
		width: 90%;
		padding: 10vw 8vw 10vw 0;
		background: url(../img/rinen_back_sl.png) no-repeat top right;
	}
	.rinenWrap .titBlock_r {
		position : relative;
		padding: 0 2vw 0 2vw;
		width: 98%;
		height: 200px;
		background: url(../img/rinen_back_sr.png) no-repeat bottom left;
	}
	.rinenWrap .titBlock_r p {
		line-height : 1.6;
		padding-left: calc(10vw + 20px);
	}
}
@media only screen and (max-width: 720px) {
	.rightMag {
		width : 100%;
		max-width : 1610px;
		margin : 0 auto;
	}
	.innerImage {
		padding-left: 0;
		background : url(../img/d_back_s.jpg) no-repeat top left;
		background-size: 100%;
		background-position: top right 0px;
	}
	.topWorkFlex .left.sml {
		width: 100%;
		padding: 0 4vw;
		box-sizing: border-box;
	}
	.bottomLine.sml p.messtop {
		margin-top : 60vw;
	}
	.bottomLine.sml h2 {
		font-size : calc(3.8vw + 2.0px);
		color : #252525;
		font-weight : 700;
		line-height : 1.4;
		position : relative;
	}
	br.pc720 {
		display : none;
	}
	.conceptWrap .defWorkFlex {
		height: auto;
		max-height : 100%;
	}
	.defWorkFlex .left {
		width : 100%;
	}
	.defWorkFlex .left li img {
		height : 70vw;
		max-height : 600px;
	}
	.defWorkFlex .right {
		width : 100%;
		height : auto;
		max-height : 100%;
	}
	.addNumber h2 strong {	
		font-size : calc(5.09vw + 12.6px);
	}
	.defWorkFlex .right h4 {
		margin-top : 4vw !important;
	}
	.lineupPad {
		padding-top : 40px;
		margin-top : -40px;
	}
	.topFlex .left img {
		margin : 0 auto;
		width: 100%;
		object-fit: fill;
		height: auto;
	}
}
@media only screen and (max-width: 640px) {
	.topWorkFlex .right {
		height : auto;
	}
	.leftMag {
		margin-left : auto;
		margin-right : auto;
	}
	.rightMag {
		margin-left : auto !important;
		margin-right : auto !important;
	}
	.rightMag.mid {
		width : 100%;
	}
	.conceptWrap .defWorkFlex {
		padding-bottom : 6vw;
	}
	.topWorkFlex .rightOuter {
		width: 100%;
		margin-top : 4vw;
	}
	.topWorkFlex .right.hum {
		height: 56vw;
	}
	.topWorkFlex .right.hum img {
		height: 56vw;
	}
	.topWorkFlex .right.hum span {
		height: 56vw;
	}
	.mgtopmess {
		padding-bottom :  0;
	}
	.topInner {
		padding: 0 10px 0 10px;
		width : 100%;
	}
	.topFlex .right h2 br {
		display : block;
	}
	.topFlex .right {
		width : 100%;
		top : 0;
		margin-top : 4vw;
		padding: 0 4vw 0 4vw;
		text-align: center !important;
		box-sizing: border-box;
	}
	.topFlex .right.gree {
		width : 100%;
		top : 0;
		margin-top : 4vw;
		padding: 0 4vw 0 0;
		text-align: center !important;
		box-sizing: border-box;
	}
	.topFlex .left p {
		width: 100%;
		padding : 0 10px;
		box-sizing: border-box;
	}
	.topFlex .left p.wide {
		padding : 0;
	}
	.topFlex .left span {
		margin : 0 auto;
		width : 60vw;
		height : 78vw;
	}
	.topFlex .left .underBoxOuter {
		width : 50vw;
		height : 65vw;
	}
	.topFlex .right p {
		text-align : left !important;
		padding : 0;
	}
	.topWorkFlex .left {
		width : 100%;
		box-sizing: border-box;
	}
	.topWorkFlex .left.plus {
		padding : 0
	}
	.topWorkFlex .left.safe {
		padding : 0;
	}
	.defWorkFlex .left {
		width : 100%;
		padding : 0;
		box-sizing: border-box;
	}
	.normalTitle h4 {
		text-align : left !important;
	}
	.normalTitle p {
		text-align : left !important;
	}
	.normalTitle p.all {
		text-align : center !important;
	}
	.topWorkFlex .right {
		width : 100%;
		padding : 0;
		margin-top : 4vw;
		box-sizing: border-box;
	}
	.topWorkFlex .right.plus {
		padding : 0;
	}
	.topWorkFlex .right.mid {
		padding : 0;
	}
	.defWorkFlex .right {
		width : 100%;
		padding : 0 4vw;
		box-sizing: border-box;
		margin-top : 4vw;
	}
	.bottomLine h2 {
		font-size : calc(3.12vw + 6.0px);
		color : #252525;
		font-weight : 700;
		line-height : 1.4;
		margin-top : 7vw;
		position : relative;
	}
	.bottomLine h2.cmp::after {
		content : "";
		display : none;
	}
	.bottomLine.sml p.messtop {
		margin-top : 50vw;
	}
	.addNumber p {
		font-size : 1rem;
		line-height : 1.8;
	}
	.deltabacks {
		bottom : -12vw;
		width : 80%;
	}
	.left04WorkFlex .left {
		width : 100%;
	}
	.left04WorkFlex  {
		padding : 0 20px;
		margin : 0 auto;
	}
	.left04WorkFlex .right {
		width : 100%;
		height : 64vw;
	}
	.left04WorkFlex .right img {
		height: 64vw;
	}
	.left04WorkFlex .right span {
		height: 64vw;
	}
	.left04inner {
		padding : calc(4vw + 40px) 0 0 0;
	}
	.topWorkFlex .right.sht {
		height : 42vw;
		max-height : 300px;
		margin : 4vw auto 0 auto;
	}
	.topWorkFlex .right.sht img {
		height : 42vw;
		max-height : 300px;
		margin : 0 auto;
	}
	.topWorkFlex .right.sht span {
		height : 42vw;
		max-height : 300px;
		margin : 0 auto;
	}
	.topWorkFlex .right.mid {
		height : 56vw;
		margin : 4vw auto 0 auto;
	}
	.topWorkFlex .right.mid img {
		height : 56vw;
		margin : 0 auto;
	}
	.topWorkFlex .right.mid span {
		height : 56vw;
		margin : 0 auto;
	}
	.topWorkFlex .right.mid p.inner {
		height : 56vw;
		margin : 0 auto;
	}
	.leftmagNw {
		padding : 0 10px;
		box-sizing: border-box;
	}
	.rightmagNw {
		padding : 0 10px;
		box-sizing: border-box;
	}
	.blinepoint {
		padding-bottom : 8px;
	}
	.safetyTitle {
		padding-top : 3vw;
	}
	.innerGray::after {
		left : 2%;
		width : 96%;
		box-sizing: border-box;
	}
	.addNumber h2 {
		width : 100%;
	}
}
@media only screen and (max-width: 480px) {
	.topFlex .left h3 {
		top : -1vw;
	}
	.mgt780 {
		padding-top : 0px;
		margin-top : -300px;
	}
	.topFlex .right img {
		width : 74%;
		max-width : 415px;
	}
	p.smp480 {
		padding : 0 10px;
		box-sizing: border-box;
	}
	.advTable dl dd {
		white-space: normal;
	}
}
@media only screen and (max-width: 400px) {
	.mgt780 {
		margin-top : -340px;
	}
}
@media only screen and (max-width: 360px) {
	.mgt780 {
		margin-top : -360px;
	}
}

.privacyWrap  {
	width : 100%;
	max-width : 810px;
	margin : 0 auto;
	padding : 0 10px;
	overflow : hidden;
	box-sizing: border-box;
	position : relative;
}
.privacyWrap p {
	font-size : 1rem;
	font-weight : 400;
	line-height : 2.0;
}
.privacyWrap div {
	font-size : 1rem;
	font-weight : 700;
	line-height : 2.0;
	color : #01479c;
}
.lineTitle h2.lin {
	border-bottom : 3px solid #252525;
}
.sitemapInner div {
	width : 48%;
}
.sitemapInner div.trans {
	font-size : 0;
	height : 0px;
}
.sitemapInner div.main a {
	width : 100%;
	display : block;
	color : #000000;
	font-size : 1.2rem;
	line-height : 2.0;
	border-bottom : 2px solid #f4f4f4;
	padding-top : 30px;
	padding-bottom : 4px;
	transition: 0.3s;
}
.sitemapInner div.sub a {
	width : 100%;
	display : block;
	line-height : 2.0;
	font-size : 1.2rem;
	color : #8b8b8b;
	transition: 0.3s;
}
.sitemapInner div.main a:hover {
	color : #8b8b8b;
	border-bottom : 2px solid #c1c1c1;
}
.sitemapInner div.sub a:hover {
	color : #a1a1a1;
}
@media only screen and (max-width: 480px) {
	.sitemapInner div {
		width : 100%;
	}
}

.memberList {

}
.memberList .item {
	width : 31.5%;
	padding : 0 16px 16px 0;
	box-sizing : border-box;
}
.memberList .itemTrans {
	width : 31.5%;
	height : 0;
	font-size : 0;
}
.memberList .inner {
	width : 100%;
	max-width : 390px;
	background-color : #ffffff;
	font-size : 0;
	box-shadow: 16px 16px 0px 0px rgba(202, 202, 202, 1);
}
.memberList .item .img {
	width : 100%;
	box-sizing : border-box;
	position : relative;
	font-size : 0;
}
.memberList .item .img img {
	width : 100%;
	max-width : 390px;
	height : 44vw;
	max-height : 440px;
	object-fit: cover;
	position : relative;
}
.memberList .item .img span {
	position : absolute;
	bottom : 0;
	left : 0;
	width : 50%;
	display : block;
	text-align : center;
	min-width : 120px;
	line-height : 2.4;
	background-color : #0164c2;
	color : #ffffff;
}
.memberList .item h3 strong {
	color : #0164c9;
	display : block;
	padding : 0 10px;
}
.memberList .item h3 span {
	color : #595959;
	display : inline-block;
	padding : 0 10px;
}
@media only screen and (max-width: 640px) {
	.memberList .inner {
		width : 100%;
		max-width : 390px;
		background-color : #ffffff;
		font-size : 0;
		box-shadow: 10px 10px 0px 0px rgba(202, 202, 202, 1);
	}
}
@media only screen and (max-width: 480px) {
	.memberList .item {
		width : 100%;
		padding : 0 10px 10px 0;
		margin-bottom : 3vw;
		box-sizing : border-box;
	}
	.memberList .inner {
		max-width : 480px;
		display : -webkit-flex;
		display : flex;
		-webkit-justify-content : space-between;
		justify-content : space-between;
	}
	.memberList .item .img {
		width : 45%;
	}
	.memberList .item .comm p {
		padding : 0 10px;
		box-sizing : border-box;
	}
	.memberList .item .img span {
		min-width : 91px;
	}
}

.staffList {

}
.staffList .item {
	width : 100%;
	box-sizing : border-box;
}
.staffList .inner {
	width : 100%;
	background-color : #ffffff;
	font-size : 0;
}
.staffList .inner .left {
	width : 30%;
	max-width : 330px;
}
.staffList .inner .right {
	width : 70%;
	padding-left : 5%;
	box-sizing : border-box;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
}
.staffList .inner .right h3 {
	color : #0164c9;
}
.staffList .inner .right .smwaku {
	background-color : #eff4f8;
	padding : 20px;
	box-sizing : border-box;
}
.staffList .inner .right .smwaku h4 {
	color : #0164c9;
	padding-left : 40px;
	position : relative;
}
.staffList .inner .right .smwaku h4::before {
	content : "";
	display : block;
	position : absolute;
	top : 17px;
	left : 0;
	width : 30px;
	height : 2px;
	font-size : 0;
	background-color : #0164c9;
}
.staffList .item .img {
	width : 100%;
	max-width : 330px;
	height : 44vw;
	max-height : 455px;
	box-sizing : border-box;
	position : relative;
	font-size : 0;
	overflow : hidden;
}
.staffList .item .img::before {
	content : "";
	position : absolute;
	top : -35px;
	left : -35px;
	display : block;
	background-color : #ffffff;
	width : 72px;
	height : 72px;
	transform: rotate(45deg);
	z-index : 1;
}
.staffList .item .img::after {
	content : "";
	position : absolute;
	bottom : -35px;
	right : -35px;
	display : block;
	background-color : #ffffff;
	width : 72px;
	height : 72px;
	transform: rotate(-45deg);
	z-index : 1;
}
.staffList .item .img img {
	width : 100%;
	max-width : 330px;
	height : 44vw;
	max-height : 455px;
	object-fit: cover;
	position : relative;
}
.staffList .item .yaku {
	display : inline-block;
	text-align : center;
	padding : 0 12px;
	line-height : 1.8;
	background-color : #0164c2;
	color : #ffffff;
}
.staffList .item h3 strong {
	color : #0164c9;
	display : inline-block;
	padding : 0 10px 0 0;
}
.staffList .item h3 span {
	color : #595959;
	display : inline-block;
	padding : 0 10px 0 0;
}
@media only screen and (max-width: 640px) {
	.staffList .item .img::before {
		top : -3.5vw;
		left : -3.5vw;
		width : 7.2vw;
		height : 7.2vw;
	}
	.staffList .item .img::after {
		bottom : -3.5vw;
		right : -3.5vw;
		width : 7.2vw;
		height : 7.2vw;
	}
}
@media only screen and (max-width: 480px) {
	.staffList .inner .left {
		width : 100%;
		max-width : 480px;
		display : -webkit-flex;
		display : flex;
		-webkit-justify-content : space-between;
		justify-content : space-between;
	}
	.staffList .inner .left .img {
		width : 35%;
	}
	.staffList .inner .left .pref {
		width : 60%;
	}
	.staffList .item .img::before {
		top : -3.5vw;
		left : -3.5vw;
		width : 7.2vw;
		height : 7.2vw;
	}
	.staffList .item .img::after {
		bottom : -3.5vw;
		right : -3.5vw;
		width : 7.2vw;
		height : 7.2vw;
	}
	.staffList .inner .right {
		width : 100%;
		padding-left : 0;
		-webkit-align-items: flex-start;
		align-items: flex-start;
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	.staffList .inner .right .topline {
		margin-top : 3vw;
	}
}

.newsAcv select.arcive {
	font-size : 16px;
	border : 1px solid #676767;
	padding : 8px 20px;
	width : 160px;
	background-color : #ffffff;
	position : relative;
	-webkit-appearance: none;
	appearance: none;
}
.newsAcv p {
	display : inline-block;
	position : relative;
}
.newsAcv p::after {
	content : "▼";
	position : absolute;
	top : 9px;
	right : 20px;
	font-size : 12px;
	color : #000000;
	pointer-events: none;
}
.newsListItem {
	
}
.newsListItem .img {
	width : 30%;
	max-width : 298px;
	height : 18vw;
	max-height : 164px;
	border-radius : 16px;
	overflow : hidden;
}
.newsListItem .img img {
	width : 100%;
	max-width : 298px;
	height : 18vw;
	max-height : 164px;
	object-fit: cover;
	border-radius : 16px;
	transition: 0.4s;
}
.newsListItem .img img:hover {
	transform: scale(1.05);
}
.newsListItem .main {
	width : 70%;
	padding : 0 10% 0 3%;
	box-sizing : border-box;
	position : relative;
}
.newsListItem .main a .title {
	color : #0164c9;
}
.newsListItem .main a .date {
	color : #595959;
}
.newsListItem .main a .comm {
	width : 100%;
	height : 3em;
	overflow : hidden;
	white-space : nowrap;
	text-overflow: ellipsis;
}
.newsListItem .main a:hover .title {
	color : #0000ff;
}
.newsListItem .main a:hover .date {
	color : #000000;
}
.newsListItem .main a:hover .comm {
	color : #000000;
}
.newsListFlex {
	padding : 2px;
	box-sizing : border-box;
	background:
		linear-gradient(45deg,  transparent 0px, #c0d7e9 0px),
		linear-gradient(135deg,  transparent 30px, #c0d7e9 30px),
		linear-gradient(225deg, transparent 0px, #c0d7e9 0px),
		linear-gradient(315deg, transparent 30px, #c0d7e9 30px);
	background-position: bottom left, top left, top right, bottom right;
	background-size: 50% 50%;
	background-repeat: no-repeat;
}
.newsListFlex .newsListItem {
	padding : 40px;
	box-sizing : border-box;
	background:
		linear-gradient(45deg,  transparent 0px, #ffffff 0px),
		linear-gradient(135deg,  transparent 30px, #ffffff 30px),
		linear-gradient(225deg, transparent 0px, #ffffff 0px),
		linear-gradient(315deg, transparent 30px, #ffffff 30px);
	background-position: bottom left, top left, top right, bottom right;
	background-size: 50% 50%;
	background-repeat: no-repeat;
	transition: 0.4s;
}
.newsListFlex .newsListItem:hover {
	padding : 40px;
	box-sizing : border-box;
	background:
		linear-gradient(45deg,  transparent 0px, #eff4f8 0px),
		linear-gradient(135deg,  transparent 30px, #eff4f8 30px),
		linear-gradient(225deg, transparent 0px, #eff4f8 0px),
		linear-gradient(315deg, transparent 30px, #eff4f8 30px);
	background-position: bottom left, top left, top right, bottom right;
	background-size: 50% 50%;
	background-repeat: no-repeat;
}
@media only screen and (max-width: 960px) {
	.newsListFlex .newsListItem {
		padding : 4vw 0 4vw 4vw;
	}
	.newsListFlex .newsListItem:hover {
		padding : 4vw 0 4vw 4vw;
	}
}
@media only screen and (max-width: 720px) {
	.newsListFlex {
		background:
			linear-gradient(45deg,  transparent 0px, #c0d7e9 0px),
			linear-gradient(135deg,  transparent 20px, #c0d7e9 20px),
			linear-gradient(225deg, transparent 0px, #c0d7e9 0px),
			linear-gradient(315deg, transparent 20px, #c0d7e9 20px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 50% 50%;
		background-repeat: no-repeat;
	}
	.newsListFlex .newsListItem {
		background:
			linear-gradient(45deg,  transparent 0px, #ffffff 0px),
			linear-gradient(135deg,  transparent 20px, #ffffff 20px),
			linear-gradient(225deg, transparent 0px, #ffffff 0px),
			linear-gradient(315deg, transparent 20px, #ffffff 20px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 50% 50%;
		background-repeat: no-repeat;
		transition: 0.4s;
	}
	.newsListFlex .newsListItem:hover {
		background:
			linear-gradient(45deg,  transparent 0px, #eff4f8 0px),
			linear-gradient(135deg,  transparent 20px, #eff4f8 20px),
			linear-gradient(225deg, transparent 0px, #eff4f8 0px),
			linear-gradient(315deg, transparent 20px, #eff4f8 20px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 50% 50%;
		background-repeat: no-repeat;
	}
	.newsListItem .img img {
		border-radius : 1.6vw;
	}
}
@media only screen and (max-width: 360px) {
	.newsListFlex {
		background:
			linear-gradient(45deg,  transparent 0px, #c0d7e9 0px),
			linear-gradient(135deg,  transparent 15px, #c0d7e9 15px),
			linear-gradient(225deg, transparent 0px, #c0d7e9 0px),
			linear-gradient(315deg, transparent 15px, #c0d7e9 15px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 50% 50%;
		background-repeat: no-repeat;
	}
	.newsListFlex .newsListItem {
		padding : 2vw 0 2vw 2vw;
		background:
			linear-gradient(45deg,  transparent 0px, #ffffff 0px),
			linear-gradient(135deg,  transparent 15px, #ffffff 15px),
			linear-gradient(225deg, transparent 0px, #ffffff 0px),
			linear-gradient(315deg, transparent 15px, #ffffff 15px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 50% 50%;
		background-repeat: no-repeat;
		transition: 0.4s;
	}
	.newsListFlex .newsListItem:hover {
		padding : 2vw 0 2vw 2vw;
		background:
			linear-gradient(45deg,  transparent 0px, #eff4f8 0px),
			linear-gradient(135deg,  transparent 15px, #eff4f8 15px),
			linear-gradient(225deg, transparent 0px, #eff4f8 0px),
			linear-gradient(315deg, transparent 15px, #eff4f8 15px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 50% 50%;
		background-repeat: no-repeat;
	}
}
.grayback {
	background-color : #eff4f8;
}
.blueback {
	background-image: linear-gradient(180deg, rgba(1, 100, 203, 1), rgba(51, 149, 255, 1));
	position : relative;
	margin-top : -60px;
}
.blueback::before {
	content : "";
	position : absolute;
	top : -12px;
	left : -62px;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 72px solid transparent;
	border-left: 72px solid transparent;
	border-bottom: 72px solid #eff4f8;
	border-top: 0;
	transform: rotate(315deg);
}
.blueback::after {
	content : "";
	position : absolute;
	right : -62px;
	bottom : -12px;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 72px solid transparent;
	border-left: 72px solid transparent;
	border-bottom: 72px solid #ffffff;
	border-top: 0;
	transform: rotate(135deg);
}
.blueback_b {
	background-image: linear-gradient(180deg, rgba(1, 100, 203, 1), rgba(51, 149, 255, 1));
	position : relative;
	margin-top : -60px;
}
.blueback_b::before {
	content : "";
	position : absolute;
	top : -12px;
	left : -62px;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 72px solid transparent;
	border-left: 72px solid transparent;
	border-bottom: 72px solid #ffffff;
	border-top: 0;
	transform: rotate(315deg);
}
.blueback_b::after {
	content : "";
	position : absolute;
	right : -62px;
	bottom : -12px;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 72px solid transparent;
	border-left: 72px solid transparent;
	border-bottom: 72px solid #ffffff;
	border-top: 0;
	transform: rotate(135deg);
}
.skyback {
	padding : 32px 24px 48px 24px;
	box-sizing : border-box;
	background:
		linear-gradient(45deg,  transparent 0px, #93c3e7 0px),
		linear-gradient(135deg,  transparent 50px, #93c3e7 50px),
		linear-gradient(225deg, transparent 0px, #93c3e7 0px),
		linear-gradient(315deg, transparent 50px, #93c3e7 50px);
	background-position: bottom left, top left, top right, bottom right;
	background-size: 51% 51%;
	background-repeat: no-repeat;
	position : relative;
}
.skyback02 {
	padding : 48px;
	box-sizing : border-box;
	background:
		linear-gradient(45deg,  transparent 0px, #3395f3 0px),
		linear-gradient(135deg,  transparent 36px, #3395f3 36px),
		linear-gradient(225deg, transparent 0px, #3395f3 0px),
		linear-gradient(315deg, transparent 36px, #3395f3 36px);
	background-position: bottom left, top left, top right, bottom right;
	background-size: 51% 51%;
	background-repeat: no-repeat;
	position : relative;
}
.skyback_f {
	background-color : #93c3e7;
	position : relative;
}
@media only screen and (max-width: 960px) {
	.blueback::before {
		left : -82px;
	}
	.blueback::after {
		right : -82px;
	}
	.blueback_b::before {
		left : -82px;
	}
	.blueback_b::after {
		right : -82px;
	}
	.skyback02 {
		padding : 4.8vw;
		background:
			linear-gradient(45deg,  transparent 0px, #3395f3 0px),
			linear-gradient(135deg,  transparent 30px, #3395f3 30px),
			linear-gradient(225deg, transparent 0px, #3395f3 0px),
			linear-gradient(315deg, transparent 30px, #3395f3 30px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 51% 51%;
		background-repeat: no-repeat;
		position : relative;
	}
}
@media only screen and (max-width: 720px) {
	.blueback::before {
		left : -92px;
	}
	.blueback::after {
		right : -92px;
	}
	.blueback_b::before {
		left : -92px;
	}
	.blueback_b::after {
		right : -92px;
	}
	.skyback {
		padding : 3vw 2vw 4.8vw 2vw;
		background:
			linear-gradient(45deg,  transparent 0px, #93c3e7 0px),
			linear-gradient(135deg,  transparent 40px, #93c3e7 40px),
			linear-gradient(225deg, transparent 0px, #93c3e7 0px),
			linear-gradient(315deg, transparent 40px, #93c3e7 40px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 51% 51%;
		background-repeat: no-repeat;
		position : relative;
	}
}
@media only screen and (max-width: 640px) {
	.skyback02 {
		padding : 4.8vw;
		background:
			linear-gradient(45deg,  transparent 0px, #3395f3 0px),
			linear-gradient(135deg,  transparent 24px, #3395f3 24px),
			linear-gradient(225deg, transparent 0px, #3395f3 0px),
			linear-gradient(315deg, transparent 24px, #3395f3 24px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 51% 51%;
		background-repeat: no-repeat;
		position : relative;
	}
}
@media only screen and (max-width: 480px) {
	.blueback::before {
		left : -112px;
	}
	.blueback::after {
		right : -112px;
	}
	.blueback_b::before {
		left : -112px;
	}
	.blueback_b::after {
		right : -112px;
	}
	.skyback {
		padding : 3vw 2vw 4.8vw 2vw;
		box-sizing : border-box;
		background:
			linear-gradient(45deg,  transparent 0px, #93c3e7 0px),
			linear-gradient(135deg,  transparent 24px, #93c3e7 24px),
			linear-gradient(225deg, transparent 0px, #93c3e7 0px),
			linear-gradient(315deg, #eff4f8 24px, #93c3e7 24px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 51% 51%;
		background-repeat: no-repeat;
		position : relative;
	}
	.skyback02 {
		padding : 8vw 5vw;
		background:
			linear-gradient(45deg,  transparent 0px, #3395f3 0px),
			linear-gradient(135deg,  transparent 20px, #3395f3 20px),
			linear-gradient(225deg, transparent 0px, #3395f3 0px),
			linear-gradient(315deg, transparent 20px, #3395f3 20px);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 51% 51%;
		background-repeat: no-repeat;
		position : relative;
	}
}
.imgTitle {
	position : absolute;
	top : -80px;
	left : 64px;
}
.imgTitle img {
	width : 80%;
	max-width : 547px;
}
.itemWrap {
	padding-top : 130px;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
}
.itemWrap.dtl {
	padding-top : 0;
	display : block;
}
.itemWrap.dtl .itemInner {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
}
.itemWrap.dtl .itemInner table {
	width : 100%;
	border-collapse: collapse;
}
.itemWrap.dtl dl {
	display : -webkit-flex;
	display : flex;
	margin-bottom : 24px;
}
.itemWrap.dtl dl em {
	font-style : normal;
	font-weight : 700;
	color : #0164c9;
	line-height : 1.0;
}
.itemWrap.dtl dl span.dsib {
	display : inline-block;
}
.itemWrap.dtl dt {
	width : 5em;
	min-width : 57px;
	white-space: nowrap;
	font-size : 0.9rem;
	font-weight : 500;
	background-color : #ffffff;
	line-height : 2.0;
	text-align : center;
	border : 1px solid #595959;
	letter-spacing: 1px;
}
.itemWrap.dtl dd {
	width : auto;
	font-size : 0.9rem;
	font-weight : 500;
	line-height : 2.0;
	text-align : left;
	padding : 1px 24px 1px 10px;
	letter-spacing: 1px;
}
.itemWrap.dtl dd strong {
	line-height : 1.0;
	color : #0164c9;
}
.inquWrap h3 {
	position : relative;
	padding-left : 60px;
}
.inquWrap h3::before {
	content: "";
	position: absolute;
	top: 18px;
	left: 0;
	width: 48px;
	height: 2px;
	background-color: #0164c9;
}
.inquWrap .inquInner {
	background-color : #ffffff;
	padding : 18px;
	border : 1px solid #0164c9;
	margin-top : 8px;
}
.inquWrap .inquInner div.tel {
	width : 32.5%;
}
.inquWrap .inquInner div.mail {
	width : 32.5%;
}
.inquWrap .inquInner div.line {
	width : 32.5%;
}
.inquWrap .inquInner div a {
	display : block;
	width : 100%;
	height : 60px;
	font-size : 1rem;
	color : #ffffff;
	font-weight : 700;
	padding-left : 60px;
	box-sizing : border-box;
	opacity : 1;
	transition: 0.3s;
}
.inquWrap .inquInner .tel a {
	background : #0164c9 url(../img/tel2.png) no-repeat left 10px center;
	padding-top : 6px;
	font-size : 18px;
}
.inquWrap .inquInner .tel a span {
	display : block;
	font-size : 10px;
	font-weight : 400;
}
.inquWrap .inquInner .mail a {
	background : #3395f3 url(../img/mail2.png) no-repeat left 10px center;
	display : -webkit-flex;
	display : flex;
	align-items: center;
}
.inquWrap .inquInner .line a {
	background : #7fa3bd url(../img/line.png) no-repeat left 10px center;
	display : -webkit-flex;
	display : flex;
	align-items: center;
}
.inquWrap .inquInner a:hover {
	opacity : 0.6;
}
.detailTitle {
	display: block;
	font-size: 1.1rem;
	color: #5a6f83;
	padding-left: 24px;
	line-height: 47px;
	background: url(../img/point.png) no-repeat top 18px left;
}
.detailList dl {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	width : 100%;
	word-wrap: break-word;
	border-bottom : 1px solid #abb5bf;
}
.detailList dl.first {
	border-top : 1px solid #596e80;
}
.detailList dl.last {
	border-bottom : 1px solid #596e80;
}
.detailList dt {
	display : -webkit-flex;
	display : flex;
	align-items: center;
	font-size : 0.9rem;
	letter-spacing: 1px;
	color : #595959;
	font-weight : 500;
	width : 18%;
	text-align : left;
	position : relative;
	padding : 30px 10px;
	background-color : #e3ebf6;
}
.detailList dt p {
	position : relative;
	width : calc(100% - 44px);
}
.detailList dd {
	font-size : 0.9rem;
	color : #595959;
	font-weight : 400;
	width : 82%;
	padding : 30px 0 30px 20px;
	word-wrap: break-word;
	box-sizing: border-box;
}
.detailList dt.sel {
	padding : 12px 10px;
}
.detailList dd.sel {
	padding : 16px 0 16px 20px;
}
.detailList dd p {
	display : inline-block;
	min-width : 10em;
	background-color : #596e80;
	color : #ffffff;
	text-align : center;
	font-size : 13px;
	font-weight : 500;
	padding : 4px 4px 6px 4px;
	box-sizing : border-box;
	margin : 4px 8px 4px 0;
	border-radius : 4px;
}
.detailList.dbl dt {
	width : 16%;
	padding : 5px 10px;
}
.detailList.dbl dd {
	width : 34%;
	padding : 5px 10px;
	box-sizing : border-box;
}
.simuWrap {
	width : 100%;
	padding : 6px 18px 18px 18px;
	box-sizing : border-box;
	background-color : #e2eaf6;
	border : 1px solid #0164c9;
}
.simuList dl {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	border-bottom : 1px solid #01479c;
}
.simuList dt {
	width : 18%;
	padding : 16px;
	box-sizing : border-box;
	background-color : #f4f4f4;
	font-size : 0.9em;
	font-weight : 500;
	letter-spacing: 1px;
}
.simuList dd {
	width : 82%;
	padding : 12px 16px;
	box-sizing : border-box;
	background-color : #ffffff;
}
.simuList dd input[type="number"] {
	font-size : 0.9em;
	padding : 2px 3px;
	background-color : #ffffff;
	border : 1px solid #596e82;
}
.simuList dd select {
	font-size : 0.9em;
	padding : 3px 3px 2px 3px;
	background-color : #ffffff;
	border : 1px solid #596e82;
	border-radius : 3px;
}
.simuList dd label {
	display : inline-block;
	font-size : 0.9em;
	padding : 3px 8px 2px 6px;
	background-color : #ffffff;
	border : 1px solid #596e82;
	border-radius : 3px;
}
.simuList dd label.btm {
	margin-bottom : 4px;
}
.simuList dd span {
	display : inline-block;
	font-size : 0.9em;
	padding : 3px 8px 2px 6px;
}
.simuList .btnArea {
	background-color : #ffffff;
	padding : 8px 0;
	text-align : center;
}
.simuList .btnArea button {
	display : inline-block;
	background-color : #0164c9;
	border : 1px solid #0164c9;
	padding : 6px 24px 4px 24px;;
	text-align : center;
	font-size : 1.05rem;
	font-weight : 700;
	color : #ffffff;
	letter-spacing: 2px;
	transition: 0.3s;
	border-radius : 4px;
	cursor : pointer;
}
.simuList .btnArea button:hover {
	color : #0164c9;
	background-color : #ffffff;
}
.simuWrap .resultList {
	background-color : #01479c;
	padding : 20px;
	box-sizing : border-box;
}
.simuWrap .resultList dl {
	width : 32%;
}
.simuWrap .resultList dt {
	padding : 10px 0;
	box-sizing : border-box;
	background-color : #eff4f8;
	text-align : center;
	font-size : 0.9em;
	font-weight : 500;
	letter-spacing: 1px;
	border-bottom : 1px solid #01479c;
}
.simuWrap .resultList dd {
	padding : 16px 0 20px 0;
	box-sizing : border-box;
	background-color : #ffffff;
	text-align : center;
	font-size : 24px;
	font-weight : 700;
	letter-spacing: 1px;
}
.simuWrap .resultList dd.red {
	color : #ea6a43;
}
.simuWrap p {
	font-size : 12px;
	line-height : 1.2;
	padding-top : 8px;
}
@media only screen and (max-width: 900px) {
	.inquWrap .inquInner div.tel {
		width : 265px;
	}
	.inquWrap .inquInner div.mail {
		width : calc((100% - 275px) / 2);
	}
	.inquWrap .inquInner div.line {
		width : calc((100% - 275px) / 2);
	}
}
@media only screen and (max-width: 720px) {
	.itemWrap.dtl .itemInner table {
		display : block;
	}
	.itemWrap.dtl .itemInner table tbody {
		display : block;
	}
	.itemWrap.dtl .itemInner table tr {
		display : block;
	}
	.itemWrap.dtl .itemInner table td {
		display : inline-block;
	}
	.itemWrap.dtl dl {
		margin-bottom : 2.4vw;
	}
	.detailList dd p {
		min-width : 9em;
		font-size : 0.9rem;
		padding : 3px 3px 5px 3px;
		margin : 3px 4px 3px 0;
	}
	.detailList dd p {
		min-width : 9em;
		font-size : 0.9rem;
		padding : 3px 3px 5px 3px;
		margin : 3px 4px 3px 0;
	}
	.inquWrap h3 {
		padding-left : calc(5.09vw + 19.6px);
	}
	.inquWrap h3::before {
		top: calc(1.5vw + 5.2px);
		width: calc(5.09vw + 9.6px);
	}
	.simuWrap .resultList dd {
		padding : 1.6vw 0 2vw 0;
		font-size : calc(2.5vw + 6.0px);
		letter-spacing: 0px;
	}
}
@media only screen and (max-width: 640px) {
	.inquWrap .inquInner div.tel {
		width : 100%;
		margin-bottom : 10px;
	}
	.inquWrap .inquInner div.mail {
		width : 49%;;
	}
	.inquWrap .inquInner div.line {
		width : 49%;
	}
	.inquWrap .inquInner div a {
		height : 52px;
		padding-left : 40px;
	}
	.inquWrap .inquInner .tel a {
		background : #0164c9 url(../img/tel2.png) no-repeat left 8px center;
		background-size : 24px;
		padding-top : 2px;
	}
	.inquWrap .inquInner .mail a {
		background : #3395f3 url(../img/mail2.png) no-repeat left 8px center;
		background-size : 24px;
	}
	.inquWrap .inquInner .line a {
		background : #7fa3bd url(../img/line2.png) no-repeat left 8px center;
		background-size : 24px;
	}
	.simuWrap .resultList {
		padding : 10px;
	}
}
@media only screen and (max-width: 480px) {
	.detailList dt {
		letter-spacing: 0px;
		padding : 20px 6px;
		background-color : #e3ebf6;
	}
	.detailList dd {
		padding : 20px 0 20px 10px;
	}
	.detailList dt.sel {
		padding : 8px 6px;
	}
	.detailList dd.sel {
		padding : 8px 0 8px 10px;
	}
	.detailList.dbl dt {
		padding : 4px 2px;
	}
	.detailList.dbl dd {
		display : flex;
		align-items: center;
		padding : 4px 8px 4px 4px;
	}
	.simuWrap {
		padding : 6px 10px 18px 10px;
	}
	.simuList dt {
		width : 28%;
		padding : 12px 2px;
		letter-spacing: 0px;
	}
	.simuList dd {
		width : 72%;
		padding : 10px 4px;
	}
	.inquWrap .inquInner {
		padding : 10px;
	}
	.simuWrap .resultList dt {
		letter-spacing: 0px;
	}
}
@media only screen and (max-width: 360px) {
	.simuWrap .resultList dt {
		padding : 8px 0;
		height : 4.6em;
	}
}

.businessItem {
	width : 23%;
	background-color : #ffffff;
}
.businessItem .imgArea img {
	width : 100%;
}
.businessItem .imgArea {
	position : relative;
}
.businessItem .imgArea span {
	position : absolute;
	top : 0;
	left : 0;
	font-size : 16px;
	font-weight : 500;
	line-height : 32px;
	padding : 0 16px;
	color : #ffffff;
	background-color : #01a0c8;
	letter-spacing: 2px;
}
.businessItem .imgArea strong {
	position : absolute;
	top : 0;
	left : 0;
	font-size : 24px;
	font-weight : 600;
	line-height : 40px;
	padding : 0 16px;
	color : #ffffff;
	background-color : #01a0c8;
	letter-spacing: 1px;
}
.businessItem .worksInner {
	padding : 25px;
}
.businessItem h3 {
	color : #060e21;
	font-size : 16px;
	line-height : 1.8;
	letter-spacing: 1px;
}
.businessItem .comm {
	color : #060e21;
	font-size : 13px;
	line-height : 2.0;
	margin-top : 12px;
	height: 14em;
}
@media only screen and (max-width: 1200px) {
	.itemWrap {
		padding-top : calc(12vw + 20px);
	}
	.imgTitle {
		position : absolute;
		top : calc(-8vw - 20px);
		left : 4vw;
	}
	.businessItem {
		width : 48%;
		background-color : #ffffff;
		margin-bottom : 8vw;
	}
}
@media only screen and (max-width: 540px) {
	.businessItem {
		width : 100%;
		background-color : #ffffff;
	}
	.businessItem .worksInner {
		padding : 5vw 4vw;
	}
}
@media only screen and (max-width: 400px) {
	.businessItem h3 {
		font-size : 14px;
		line-height : 1.6;
		letter-spacing: 0px;
	}
	.businessItem .comm {
		font-size : 12px;
		line-height : 1.8;
	}
}
.addArrow::before {
	content : "";
	position : absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	right : 15px;
	width: 22px;
	height: 22px;
	border : 3px solid #cecee8;
	background-color : #ffffff;
	border-radius : 50%;
	transition: 0.3s;
}
.addArrow::after {
	content : "\2192";
	display : inline-block;
	position : absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	right : 21px;
	font-size : 16px;
	color : #0164c9;
	line-height : 1.0;
	background-color : transparent;
	font-weight : 400;
	transition: 0.3s;
}
.addArrow_k::before {
	content : "";
	position : absolute;
	top: 55%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	right : 55px;
	width: 22px;
	height: 22px;
	border : 3px solid #cecee8;
	background-color : #ffffff;
	border-radius : 50%;
	transition: 0.3s;
}
.addArrow_k::after {
	content : "\2192";
	display : inline-block;
	position : absolute;
	top: 55%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	right : 61px;
	font-size : 16px;
	color : #0164c9;
	line-height : 1.0;
	background-color : transparent;
	font-weight : 400;
	transition: 0.3s;
}
.addArrow_n::before {
	content : "";
	position : absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	right : 15px;
	width: 22px;
	height: 22px;
	border : 3px solid #ffffff;
	background-color : transparent;
	border-radius : 50%;
	transition: 0.3s;
}
.addArrow_n::after {
	content : "\2192";
	display : inline-block;
	position : absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	right : 21px;
	font-size : 16px;
	color : #ffffff;
	line-height : 1.0;
	background-color : transparent;
	font-weight : 400;
	transition: 0.3s;
}
.addArrow_w {
	display : inline-block;
	font-size : 13px;
	color : #ffffff;
	background-color : #0b152b;
	border : 2px solid #0b152b;
	text-align : center;
	line-height : 48px;
	padding : 0 60px;
	letter-spacing: 1px;
	position : relative;
	transition: 0.3s;
}
.addArrow_w::after {
	content : "";
	position : absolute;
	top : 22px;
	right : 26px;
	width: 8px;
	height: 8px;
	margin: 0 10px;
	border-top: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
	transform: rotate(45deg);
	transition: 0.3s;
}
.addArrow:hover::before {
	right : 14px;
	width: 25px;
	height: 25px;
	border : 3px solid #aeaec8;
}
.addArrow:hover::after {
	color : #000000;
	font-weight : 700;
}
.addArrow_k:hover::before {
	right : 54px;
	width: 25px;
	height: 25px;
	border : 3px solid #aeaec8;
}
.addArrow_k:hover::after {
	color : #000000;
	font-weight : 700;
}
.addArrow_n:hover::before {
	right : 14px;
	width: 25px;
	height: 25px;
	border : 3px solid #aeaec8;
}
.addArrow_n:hover::after {
	color : #aeaec8;
	font-weight : 700;
}
.addArrow_w:hover {
	color : #0b152b;
	background-color : #ffffff;
}
.addArrow_w:hover::after {
	color : #000000;
}
@media only screen and (max-width: 960px) {
	.addArrow_k::before {
		right : 20px;
	}
	.addArrow_k::after {
		right : 26px;
	}
	.addArrow_k:hover::before {
		right : 19px;
	}
}
@media only screen and (max-width: 480px) {
	.cateBtns .addArrow::before {
		top: auto;
		bottom : 10px;
		right : calc(50% - 29px);
		transform: translateY(0%) translateX(-50%);
		-webkit- transform: translateY(0%) translateX(-50%);
	}
	.cateBtns .addArrow::after {
		top: auto;
		bottom : 16px;
		right : calc(50% - 17px);
		transform: translateY(0%) translateX(-50%);
		-webkit- transform: translateY(0%) translateX(-50%);
	}
	.cateBtns .addArrow:hover::before {
		right : calc(50% - 32px);
		bottom : 8px;
	}
	.addArrow_k::before {
		right : 5px;
	}
	.addArrow_k::after {
		right : 11px;
	}
	.addArrow_k:hover::before {
		right : 4px;
	}
}
.slide_else {
	height : 100%;
}
.slide_sub {
	position: relative;
	height : 100%;
}
.no_slide_sub {
	position: absolute;
	top: 54%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.pageTitle {
	text-align : center;
	color : #ffffff;
}
.pageTitle span {
	display : block;
	text-align : center;
	color : #ffffff;
}
.rtlPageTitle {
	position : absolute;
	top : 60px;
}
.rtl_left {
	left : 20px;
}
.rtl_right {
	right : 20px;
}
.rtlPageTitle strong {
	font-size : 14px;
	font-weight : 500;
	display : block;
	position : relative;
}
.rtlPageTitle strong::after {
	content : "";
	width : 1px;
	height : 36px;
	position : absolute;
	top : 24px;
	left : 7px;
	border-left : 1px solid #252525;
}
.rtlPageTitle span {
	font-size : 13px;
	font-weight : 500;
	writing-mode: vertical-rl;
	display : block;
	padding : 46px 0 0 0;
	position : relative;
	left : -3px;
	letter-spacing: 2px;
}
@media only screen and (max-width: 400px) {
	.rtl_left {
		left : 1vw;
	}
	.rtl_right {
		right : 1vw;
	}
	.rtlPageTitle {
		top : 7vw;
	}
}
.blueback_l {
	position : relative;
	background : linear-gradient(90deg, #ffffff 0%, #ffffff 15%, #00a0c8 15%, #00a0c8 100%);
}
.blueback_r {
	position : relative;
	background : linear-gradient(90deg, #00a0c8 0%, #00a0c8 85%, #ffffff 85%, #ffffff 100%);
}
.topImg  { 
	width : 100%;
	height : calc(50vw + 100px);
	max-height : 930px;
	margin : 120px auto 0 auto;
	overflow : hidden;
	position : relative;
}
@media only screen and (max-width: 960px) {
	.topImg  { 
		margin : 60px auto 0 auto;
	}
}
.pos-rel {
	position : relative;
	background-color : #c4b266;
}
.slide_all {
	width : 100%;
	height : calc(50vw + 100px);
	max-height : 930px;
	margin : 0 auto;
}
.no_slide {
	width : 100%;
	height : calc(50vw + 100px);
	max-height : 930px;
	margin : 0 auto;
}
.pict {
	width : 100%;
	height : calc(50vw + 100px);
	max-height : 930px;
	margin : 0 auto;
	position : absolute;
	top : 0;
	left : 0;
}
.slide_all img {
	width : 100%;
	height : 100%;
	object-fit : cover;
}
.overWrap  {
	position : absolute;
	top : 0;
	left : 0;
	width : 100%;
	height : calc(50vw + 100px);
	max-height : 930px;
	margin : 0 auto;
}
.overWrap .overLeft {
	position : absolute;
	top : 0;;
	left : 0px;
}
.overWrap .overLeft img {
	height : calc(50vw + 100px);
	max-height : 930px;
}
.overWrap .overRight {
	position : absolute;
	width : 100%;
	top: calc(50% - 100px);
	left: 0;
	text-align : center;
}
.overWrap .overRight img {
	width : 90%;
	max-width : 482px;
}
.overWrap .overText {
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	z-index : 90;
}
.overWrap .overText h2 {
	line-height : 0.9;
	color : #0164c9;
	text-shadow: 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1);
	font-weight : 600;
	text-align : left;
	white-space: nowrap;
}
.overWrap .overText h3 {
	display : inline-block;
	line-height : 1.6;
	color : #ffffff;
	font-weight : 700;
	text-align : left;
	padding : 8px 0 0 0;
	position : relative;
}
.overWrap .overText_s h3 {
	display : block;
	line-height : 1.4;
	color : #ffffff;
	font-weight : 700;
	text-align : left;
	position : relative;
}
.overWrap .overText h3 br {
	display : none;
}
.headScroll {
	position : absolute;
	bottom : 0;
	left : 10px;
	width : 40px;
	text-align : center;
	z-index : 99;
}
.headScroll .scrollDown {
	display: flex;
	align-items: center;
	width : 100%;
	font-size : 0.85rem;
	letter-spacing: 2px;
	color : #ffffff;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-weight : 500;
	text-align : center;
	opacity : 1;
	cursor : pointer;
}
.bottomScroll {
	position : fixed;
	bottom : 10vh;
	right : 0;
	width : 50px;
	text-align : center;
	z-index : 99;
	color : #ffffff;
	background-color : #000000;
	padding : 10px 0;
}
.bottomScroll .scrollUp {
	display: flex;
	align-items: center;
	width : 100%;
	font-size : 0.85rem;
	letter-spacing: 2px;
	color : #ffffff;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-weight : 500;
	text-align : center;
	cursor : pointer;
}
.headScroll .scrollArrow {
	display ; block;
	margin : 10px auto;
	width : 1px;
	height : 100px;
	overflow : hidden;
	position: relative;
	left: -1px;
}
.headScroll .scrollArrowInner {
	display ; inline-block;
	width : 2px;
	height : 50px;
	background-color : #ffffff;
	animation: arrowMove 2s infinite linear;
	transform: translate(0, -100px);
}
.bottomScroll .scrollArrow {
	display ; block;
	margin : 10px auto;
	width : 1px;
	height : 60px;
	overflow : hidden;
	position: relative;
	left: -1px;
}
.bottomScroll .scrollArrowInner {
	display ; inline-block;
	width : 2px;
	height : 50px;
	background-color : #ffffff;
	animation: arrowMoveUp 2s infinite linear;
	transform: translate(0, 100px);
}

@keyframes arrowMove {
	to {
		  transform: translate(0, 100px);
	}
}
@keyframes arrowMoveUp {
	to {
		  transform: translate(0, -70px);
	}
}
@media only screen and (max-width: 1630px) {
	.headTels.sub {
		max-width : 720px;
	}
}
@media only screen and (max-width: 920px) {
	.headScroll {
		margin-top : 30px;
	}
	.headScroll .scrollArrow {
		height : 60px;
	}
}
@media only screen and (max-width: 800px) {
	.headScroll {
		margin-top : calc(5vw + 10px);
	}
}
@media only screen and (max-width: 640px) {
	.headScroll .scrollArrow {
		height : 40px;
	}
	.overWrap .overText {
		position: absolute;
		width : 100%;
		z-index : 90;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit- transform: translateY(-50%) translateX(-50%);
		text-align : center;
	}
	.overWrap .overText h3 {
		padding : 0 0 0 6px;
	}
	.headScroll {
		bottom : 60px;
	}
	.bottomScroll {
		width : 30px;
	}
}
@media only screen and (max-width: 480px) {
	.overWrap  {
		height : 50vh;
	}
	.overWrap .overText h2 {
		text-align : center;
	}
}

.topNewsWrap {
	width : 60%;
	max-width : 800px;
	height : 100px;
	box-sizing : border-box;
	padding : 36px;
	background-color : #ffffff;
	margin-left : auto;
	margin-top : -100px;
	position : relative;
	z-index : 90;
}
.topNewsInner h2 {
	position : relative;
	color : #0164c9;
	padding-left : 60px;
	line-height : 32px;
}
.topNewsInner h2::before {
	content : "";
	position : absolute;
	top : 18px;
	left : 0;
	width : 48px;
	height : 1px;
	background-color : #0164c9;
}
@media only screen and (max-width: 1160px) {
	.topNewsWrap {
		padding : 24px 3.6vw;
		margin-top : -100px;
		height : 80px;
	}
	.topNewsInner h2 {
		padding-left : 50px;
		line-height : 32px;
	}
	.topNewsInner h2::before {
		width : 40px;
	}
}
@media only screen and (max-width: 800px) {
	.topNewsWrap {
		padding : 10px 3vw;
		margin-top : -100px;
		height : 80px;
	}
	.topNewsInner h2 {
		padding-left : 50px;
		line-height : 32px;
	}
	.topNewsInner h2::before {
		width : 40px;
	}
}
@media only screen and (max-width: 720px) {
	.topNewsWrap {
		width : 100%;
		height : auto;
		padding : 4px 3.6vw;
		margin-left : 0;
		margin-top : 0;
	}
}
.topNewsItem {
	width : calc(100% - 196px);
	line-height : 32px;
	position: relative;
	right: 30px;
}
.topNewsItem a {
	display : block;
}
.topNewsItem .comm {
	width : 100%;
	display : -webkit-flex;
	display : flex;
	align-items: center;
}
.topNewsItem .comm strong {
	display : inline-block;
	width : 9em;
}
.topNewsItem .comm span {
	display : inline-block;
	width : calc(100% - 9em);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
@media only screen and (max-width: 1160px) {
	.topNewsItem {
		width : calc(100% - 116px);
		right: -20px;
	}
}

.headContact {
	position : absolute;
	bottom : 40px;
	right : 0;
	z-index : 90;
	transition: 0.3s;
}
.headContact.active {
	position : fixed;
	bottom : 160px;
}
.headContact .image img {
	width : 253px;
}
.headContactInner {
	position : relative;
	width : 258px;
	background-color : #252525;
	padding : 24px 12px;
}
.headContactInner .image {
	position : relative;
	margin-top : -80px;
}
.headContactInner .text {
	color : #ffffff;
	font-size : 18px;
	font-weight : 700;
	padding : 0 10px;
}
.headContactInner .text span {
	color : #ffffff;
	font-size : 26px;
	font-weight : 700;
}
.headContactInner .tel {
	font-size : 28px;
	font-style : italic;
	font-weight : 700;
	padding : 0 10px;
	margin-top : 16px;
}
.headContactInner .tel a {
	color : #ffffff;
	margin-top : 18px;
}
.headContactInner .tel img {
	width : 32px;
}
.headContactInner .tel span {
	display : inline-block;
	padding-left : 6px;
	position : relative;
	top : -4px;
}
.headContactInner .mail {
	margin-top : 16px;
	margin-left : 10px;
	margin-right : 10px;
	margin-bottom : 12px;
}
.headContactInner .mail a {
	display : block;
	color : #000000;
	background-color : #ffffff;
	font-size : 16px;
	font-weight : 500;
	padding : 4px 12px;
}
.headContactInner .mail a img {
	border : 2px solid #ffffff;
	width : 24px;
}
.headContactInner .mail span {
	display : inline-block;
	padding-left : 6px;
	position : relative;
	top : -4px;
}

.movieArea {
	width : 100%;
	max-width : 1120px;
	margin : 0 auto;
	padding : 0 10px;
	box-sizing: border-box;
}
.movieArea iframe {
	width : 100%;
	height : 62vw;
	max-height : 620px;
}
.pickupWrap {
	background : url(../img/rec_backimg.jpg) no-repeat top center;
	background-size: cover;
}
.pickupWrap .inner {
	width : 100%;
	max-width : 1580px;
	padding : 0 20px;
	box-sizing: border-box;
}
.pickupWrap .inner .item {
	width : 18%;
	position : relative;
}
.pickupWrap .inner .itemTrans {
	width : 18%;
	height : 0;
	font-size : 0;
}
.pickupWrap .inner .item .num {
	position : absolute;
	top : 16px;
	left : -10px;
	background-color : #000000;
	line-height : 1.8;
	padding : 0 10px 2px 10px;
	color : #ffffff;
	font-size : 18px;
	font-style : italic;
}
.pickupWrap .inner .item .txt {
	background-color : #252525;
	line-height : 1.6;
	text-align : center;
	padding : 64px 0 48px 0;
	color : #ffffff;
	font-size : 18px;
	font-style : normal;
}
.pickupWrap .inner .item .txt a {
	color : #ffffff;
	transition: 0.3s;
}
.pickupWrap .inner .item .txt a:hover {
	color : #ddddff;
}
.pickupWrap .inner .item .txt a::after {
  	content: "\2192";
	font-size: 40px;
	font-family: "Kiwi Maru", serif;
	display : block;
	text-align : center;
	font-style : normal;
  	position : relative;
	transition: 0.3s;
}
.pickupWrap .inner .item .txt a:hover::after {
	transform: translateX(14px);
}
.pickupWrap .inner .item .img img {
	width : 100%;
	font-size : 0;
}
@media only screen and (max-width: 1400px) {
	.overWrap .overText h3 {
		padding : 8px 30px 11px 30px;
	}
	.overWrap .overLeft {
		left : -40px;
	}
	.headContactInner {
		width : 200px;
		padding : 20px 10px;
	}
	.headContactInner .image {
		margin-top : -64px;
	}
	.headContact .image img {
		width : 200px;
	}
	.headContactInner .text {
		font-size : 14px;
		padding : 0 8px;
	}
	.headContactInner .text span {
		font-size : 20px;
	}
	.headContactInner .tel {
		font-size : 20px;
		padding : 0 8px;
		margin-top : 16px;
	}
	.headContactInner .tel a {
		margin-top : 18px;
	}
	.headContactInner .tel img {
		width : 28px;
	}
	.headContactInner .tel span {
		padding-left : 6px;
		top : -4px;
	}
	.headContactInner .mail {
		margin-top : 16px;
		margin-left : 10px;
		margin-right : 10px;
		margin-bottom : 12px;
	}
	.headContactInner .mail a {
		font-size : 12px;
		padding : 3px 4px;
	}
	.headContactInner .mail a img {
		border : 2px solid #ffffff;
		width : 24px;
	}
	.headContactInner .mail span {
		padding-left : 4px;
		top : -5px;
	}
	.pickupWrap .inner .item .num {
		font-size : calc(0.56vw + 10.2px);
	}
	.pickupWrap .inner .item .txt {
		font-size : calc(0.56vw + 10.2px);
		padding: 5.6vw 0 1vw 0;
	}
}
@media only screen and (max-width: 1200px) {
	.overWrap .overRight {
		top: calc(50% - 10vw - 30px);
	}
	.overWrap .overLeft {
		left : -60px;
	}
	.overWrap .overText h1 {
		font-size : calc(5vw + 24px);
	}
}
@media only screen and (max-width: 1140px) {
	.headContact {
	  bottom: 17vw;
	}
}
@media only screen and (max-width: 1140px) {
	.topNewsItem {
		width : calc(100% - 16px);
		line-height : 32px;
	}
}
@media only screen and (max-width: 1020px) {
	.overWrap .overText h3 br {
		display : block;
	}
	.pickupWrap .inner .item .num {
		top : 10px;
		padding : 0 10px 2px 10px;
	}
	.pickupWrap .inner .item .txt {
		padding: calc(5vw + 20px) 0 1vw 0;
	}
	.pickupWrap .inner .item {
		width : 31%;
		margin : 2vw 0;
	}
	.pickupWrap .inner .itemTrans {
		width : 31%;
	}
	.pickupWrap .inner .item .txt::after {
		font-size: 32px;
		line-height : 1.2;
	}
}
@media only screen and (max-width: 800px) {
	.overWrap .overLeft {
		left : -80px;
	}
}
@media only screen and (max-width: 720px) {
	.headContact {
		display : none;
	}
	.overWrap .overText h2 {
		padding : 0 0 0 8px;
		text-align: center;
	}
	.overWrap .overText h3 {
		padding : 16px;
	}
}
@media only screen and (max-width: 540px) {
	.pickupWrap .inner .item .num {
		top : 8px;
		padding : 0 8px 2px 8px;
	}
	.pickupWrap .inner .item {
		width : 48%;
		margin : 2vw 0;
	}
	.pickupWrap .inner .itemTrans {
		width : 48%;
	}
	.pickupWrap .inner .item .txt::after {
		font-size: 32px;
		line-height : 1.2;
	}
}
@media only screen and (max-width: 480px) {
	.topImg  { 
		height : 50vh;
	}
	.slide_all {
		height : 50vh;
	}
	.pict {
		height : 50vh;
	}
	.overWrap .overText_s {
		display : block;
		text-align : center;
	}
}

.top_container {
	position: absolute;
	font-size: 10px;
	color: #000000;
	padding: 0;
	top: 0px;
	right: 0px;
}
#pankuzu.backimg {
	width : 100%;
	height : 32vw;
	max-height : 600px;
	background-size : 100%;
	background-repeat : no-repeat;
}

/*　ナビ包括-----------------------------*/
/* グローバルナビゲーション */
.ptWrap  {
	width : 100%;
	max-width : 1460px;
	margin : 0 auto;
	box-sizing: border-box;
	position : relative;
	padding : 0 20px;
	text-align : center;
}
.panWrap  {
	width : 100%;
	max-width : 1460px;
	margin : 0 auto;
	overflow : hidden;
	box-sizing: border-box;
	position : relative;
	padding : 10px 10px 0 10px;
}
.panWrap ul {
	display : inline-block;
}
.panWrap li {
	display: inline-block;
	margin-right : 7px;
	font-size : 14px;
	color : #595959;
	font-weight : 500;
}
.panWrap li a {
	display: inline-block;
	color : #0164c9;
	transition: 0.3s;
}
.panWrap li:first-child a {
	padding-left : 10px;
}
.panWrap li a:hover {
	opacity : 0.6;
}
@media only screen and (max-width: 1340px) {
	.panWrap  {
		padding : 10px 0 0 10px;
	}
}
@media only screen and (max-width: 960px) {
	.panWrap li {
		font-size : 13px;
	}
}
@media only screen and (max-width: 480px) {
	.panWrap li {
		font-size : 12px;
	}
	.panWrap li:first-child a {
		padding-left : 0px;
	}
}

.cutTitle {
	display : inline-block;
	padding : 22px 70px;
	box-sizing : border-box;
	background:
		linear-gradient(45deg,  transparent 0px, #0164c9 0px),
		linear-gradient(135deg,  transparent 30px, #0164c9 30px),
		linear-gradient(225deg, transparent 0px, #0164c9 0px),
		linear-gradient(315deg, transparent 30px, #0164c9 30px);
	background-position: bottom left, top left, top right, bottom right;
	background-size: 50% 51%;
	background-repeat: no-repeat;
	position : relative;
	z-index : 2;
}
.flowTitle {
	position : relative;
	z-index : 8;
}
.flowItem {
	background-color : #ffffff;
	position : relative;
	z-index : 2;
}
.flowItem::before {
	content : "";
	display : block;
	position : absolute;
	top : -60px;
	left : calc(50% - 3px);
	width : 6px;
	height : 60px;
	background-color : #ffffff;
	z-index : -1;
}
.flowItem .image {
	width : 35.5%;
	max-width : 300px;
	font-size : 0;
}
.flowItem .image img {
	width : 100%;
	font-size : 0;
}
.flowItem .comm {
	width : 64.5%;
	padding : 16px 10px 10px 10px;
	box-sizing : border-box;
	position : relative;
	z-index : 2;
}
.flowItem .comm h3 {
	color : #0164c9;
}
.flowItem .comm div {
	color : #7fa3bd;
}
@media only screen and (max-width: 960px) {
	.cutTitle {
		display : inline-block;
		padding : 2.2vw 7vw;
		box-sizing : border-box;
		background:
			linear-gradient(45deg,  transparent 0px, #0164c9 0px),
			linear-gradient(135deg,  transparent 3vw, #0164c9 3vw),
			linear-gradient(225deg, transparent 0px, #0164c9 0px),
			linear-gradient(315deg, transparent 3vw, #0164c9 3vw);
		background-position: bottom left, top left, top right, bottom right;
		background-size: 50% 51%;
		background-repeat: no-repeat;
		position : relative;
		z-index : 2;
	}
	.flowItem::before {
		top : -6vw;
		height : 6vw;
	}
	.flowItem.first::before {
		top : -9vw;
		height : 9vw;
	}
	.flowItem .comm {
		padding : 1.6vw 10px 10px 10px;
	}
}
@media only screen and (max-width: 480px) {
	.flowItem.first::before {
		top : -12vw;
		height : 12vw;
	}
}
.arrowTitle {
	position : relative;
	top : -110px;
}
.arrowTitle h2 {
	color : #0164c9;
}
.arrowTitle h3 {
	background-color : #0164c9;
	display : inline-block;
	padding : 8px 40px 6px 40px;
	background-color : #0164c9;
	position : relative;
}
.arrowTitle h3::after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #0164c9 transparent transparent transparent;
  border-width: 20px 14px 0 14px;
}
.arrowTitle p {
	position : relative;
	top : 40px;
}
@media only screen and (max-width: 960px) {
	.arrowTitle {
		top : calc(-10vw - 14px);
	}
}
@media only screen and (max-width: 640px) {
	.arrowTitle {
		top : calc(-10vw - 19px);
	}
}
@media only screen and (max-width: 520px) {
	.arrowTitle {
		top : calc(-8vw - 32px);
	}
}
.radItem {
	width : 48%;
	border : 2px solid #ffffff;
	padding : 24px;
	box-sizing : border-box;
	text-align : center;
	border-radius : 16px;
	position : relative;
}
.radItem .itemInner {
	position : relative;
	z-index : 2;
}
.radItem.bk01 {
	background-image: linear-gradient(180deg, rgba(201, 193, 47, 1), rgba(155, 149, 35, 1));
}
.radItem.bk01::after {
	content : "";
	background : url(../img/pback01.png) no-repeat bottom left;
	background-size : 100%;
	position : absolute;
	bottom : 25px;
	left : 25px;
	width : 45%;
	max-width : 214px;
	height : 208px;
	z-index : 1;
}
.radItem.bk02 {
	background-image: linear-gradient(180deg, rgba(111, 203, 47, 1), rgba(85, 154, 35, 1));
}
.radItem.bk02::after {
	content : "";
	background : url(../img/pback02.png) no-repeat bottom left;
	background-size : 100%;
	position : absolute;
	bottom : 25px;
	left : 25px;
	width : 38%;
	max-width : 169px;
	height : 208px;
	z-index : 1;
}
.radItem.bk03 {
	background-image: linear-gradient(180deg, rgba(46, 110, 200, 1), rgba(35, 97, 156, 1));
}
.radItem.bk03::after {
	content : "";
	background : url(../img/pback03.png) no-repeat bottom left;
	background-size : 100%;
	position : absolute;
	bottom : 25px;
	left : 25px;
	width : 46%;
	max-width : 219px;
	height : 208px;
	z-index : 1;
}
.radItem.bk04 {
	background-image: linear-gradient(180deg, rgba(202, 66, 47, 1), rgba(156, 51, 35, 1));
}
.radItem.bk04::after {
	content : "";
	background : url(../img/pback04.png) no-repeat bottom left;
	background-size : 100%;
	position : absolute;
	bottom : 25px;
	left : 25px;
	width : 43%;
	max-width : 180px;
	height : 208px;
	z-index : 1;
}
@media only screen and (max-width: 720px) {
	.radItem.bk01::after {
		bottom : 70px;
		left : 16px;
		width : 35%;
	}
	.radItem.bk02::after {
		bottom : 70px;
		left : 16px;
		width : 32%;
	}
	.radItem.bk03::after {
		bottom : 70px;
		left : 16px;
		width : 36%;
	}
	.radItem.bk04::after {
		bottom : 70px;
		left : 16px;
		width : 33%;
	}
}
@media only screen and (max-width: 480px) {
	.radItem.bk01::after {
		bottom : 60px;
		left : 14px;
		width : 35%;
		max-width : 214px;
		height : 208px;
	}
	.radItem.bk02::after {
		bottom : 60px;
		left : 14px;
		width : 32%;
		max-width : 169px;
		height : 208px;
	}
	.radItem.bk03::after {
		bottom : 60px;
		left : 14px;
		width : 36%;
		max-width : 219px;
		height : 208px;
	}
	.radItem.bk04::after {
		bottom : 60px;
		left : 14px;
		width : 33%;
		max-width : 180px;
		height : 208px;
	}
}
.radItem h3 strong {
	color : #fef35c;
}
.radItem .icon span {
	position : relative;
	background-color : #ffffff;
	display : inline-block;
	width : 52px;
	height : 52px;
	border-radius : 50%;
	box-sizing : border-box;
}
.radItem .icon span img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.radItem .itemInner p.comm {
	height : auto;
}
@media only screen and (max-width: 840px) {
	.radItem .itemInner p.comm {
		height : 2.6em;
	}
}
@media only screen and (max-width: 480px) {
	.radItem {
		width : 100%;
		padding : 24px 3vw;
	}
}
.pageNav01 {
	list-style: none;
	margin-bottom: 2px;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
}
.pageNav01 span.active {
	display: block;
	width : 32px;
	padding: 4px 0;
	font-size: 16px;
	text-align : center;
	margin-right: 6px;
	color: #ffffff;
	background-color: #0164c9;
	border: 1px solid #0164c9;
	font-weight: bold;
}
.pageNav01 span.between {
	color: #808080;
	background-color: #ffffff;
	font-weight: 400;
	margin-right : 6px;
	padding-top : 6px;
}
.pageNav01 a {
	display: block;
	padding: 4px 0;
	font-size: 16px;
	text-align : center;
	margin-right: 6px;
	color: #0164c9;
	background-color: #ffffff;
	border: 1px solid #0164c9;
	text-decoration: none;
	transition: 0.3s;
}
.pageNav01 a.arrow {
	width : 80px;
	font-size : 14px;
	font-weight : 400;
}
.pageNav01 a.number {
	width : 32px;
	font-weight : bold;
}
.pageNav01 a:hover {
	color: #ffffff;
	background-color: #9c9c9c;
}
.pageNav01 a.ya {
	background-color: #b2b3b3;
	border: 1px solid #b2b3b3;
}
.pageNav01 a.ya:hover {
	color: #b2b3b3;
	background-color: #ffffff;
}

/* コンテンツ包括
---------------------------------------------------------------------- */
.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;
}

/* メインコンテンツ包括---------------------------*/

.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;
}
.dayFlow {
	background-color : #ffffff;
	padding : 20px 110px 80px 110px;;
	box-sizing: border-box;
	position : relative;
}
.dayFlowInner {
	position : relative;
}
.dayFlowInner::before {
	content : "";
	position : absolute;
	top : 16px;
	left : 51px;
	width : 2px;
	height : calc(100% - 32px);
	background-color : #252525;
}
.dayFlow h2 {
	position : relative;
	top : -50px;
	margin : 0 auto;
	background-color : #fef000;
	color : #252525;
	line-height : 2.2;
	padding : 0 20px;
	font-weight : 800;
	width : 9em;
}
.dayFlowItem {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	align-items: center;
}
.dayFlowItem .time {
	width : 200px;
	padding-left : 40px;
}
.dayFlowItem .time span {
	font-size : 32px;
	font-weight : 800;
	color : #252525;
	position : relative;
	z-index : 2;
}
.dayFlowItem .time span em {
	font-size : 24px;
	font-weight : 400;
	color : #252525;
	font-style : normal;
	display : inline-block;
	padding-right : 0.6em;
}
.dayFlowItem .works {
	width : calc(100% - 250px);
	min-height : 200px;
	margin : 16px 0;
	position : relative;
}
.dayFlowItem .works .worksInner {
	width : 470px;
	height : 200px;
	background-color : #f4f4f4;
	position : relative;
	padding : 0 0 0 42px;
	box-sizing: border-box;
	display:flex;
	justify-content:center;
	align-items:center;
}
.dayFlowItem .works .worksInner::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -48px;
	margin-top: -24px;
	border: 24px solid transparent;
	border-right: 32px solid #f4f4f4;
}
.dayFlowItem .works .worksInner .item {
	width : 420px;
}
.dayFlowItem .works .worksInner h3 {
	font-size : 28px;
	font-weight : 800;
	color : #252525;
	padding-bottom : 12px;
}
.dayFlowItem .works .worksInner .comm {
	font-size : 1rem;
	font-weight : 400;
	color : #000000;
}
.dayFlowItem .works .img {
	width : 300px;
	position : absolute;
	top : 0;
	right : -40px;
}
.dayFlowItem .works .img img {
	width : 100%;
}
@media only screen and (max-width: 1288px) {
	.dayFlow {
		padding : 20px 8vw 8vw 8vw;
	}
	.dayFlowItem .works .worksInner {
		width : 36.5vw;
		height : 200px;
	}
}
@media only screen and (max-width: 1150px) {
	.dayFlowItem .works {
		width : calc(100% - 200px);
		min-height: auto;
	}
	.dayFlow {
		padding : 20px 8vw 8vw 2vw;
	}
	.dayFlowItem .time span {
		font-size : 24px;
	}
	.dayFlowItem .time span em {
		font-size : 20px;
	}
	.dayFlowInner::before {
		left : 39px;
	}
	.dayFlowItem .time {
		width: 150px;
		padding-left: 30px;
	}
	.dayFlowItem .works .worksInner {
		width : calc(100% - 280px);
		height : 200px;
	}
	.dayFlowItem .works .worksInner .item {
		width: 36vw;
	}
}
@media only screen and (max-width: 950px) {
	.dayFlowItem .works .worksInner h3 {
		font-size : calc(1.9vw + 10.0px);
		padding-bottom: 12px;
	}
	.dayFlowItem .works .img {
		width : 30vw;
		right : -4vw;
	}
	.dayFlowItem .works .worksInner {
		width : calc(100% - 28vw);
		height : 20vw;
		padding: 0 0 0 3vw;
	}
}
@media only screen and (max-width: 800px) {
	.dayFlowItem .time {
		width: 120px;
		padding-left: 0px;
	}
	.dayFlowInner::before {
		left : 9px;
	}
	.dayFlowItem .works {
		width : calc(100% - 150px);
		min-height: auto;
	}
	.dayFlowItem .works .worksInner {
		width : calc(100% - 28vw);
		height : auto;
		padding: 2vw;
	}
}
@media only screen and (max-width: 640px) {
	.dayFlowItem .time {
		width: 100px;
	}
	.dayFlowItem .time span {
		font-size : 18px;
	}
	.dayFlowItem .time span em {
		font-size : 16px;
	}
	.dayFlowItem .works {
		width : calc(100% - 120px);
		min-height: auto;
	}
	.dayFlowInner::before {
		left : 7px;
	}
	.dayFlow h2 {
		top : calc(-2em - 2px);
	}
}
@media only screen and (max-width: 480px) {
	.dayFlow {
		padding : 20px 2vw 8vw 2vw;
	}
	.dayFlowItem .works {
		width : calc(100% - 110px);
		margin : 12px 0;
		position : relative;
		background-color : #f4f4f4;
		padding : 2vw;
		box-sizing: border-box;
	}
	.dayFlowItem .works .worksInner {
		width : 100%;
	}
	.dayFlowItem .works::before {
		content: "";
		position: absolute;
		top: 50%;
		left: -48px;
		margin-top: -24px;
		border: 24px solid transparent;
		border-right: 32px solid #f4f4f4;
	}
	.dayFlowItem .works .worksInner::before {
		display : none;
	}
	.dayFlowItem .works .img {
		position: relative;
		top: 0;
		right: 0;
		margin-top : 2vw;
		margin-left : 2vw;
	}
	.dayFlowItem .works .worksInner .item {
		width: 100%;
	}
	.dayFlowItem .works .worksInner .item br.smp {
		display : none;
	}
}

.worksSlider {
	
}
.worksSlider .comm {
	font-size : 1rem;
	font-weight : 400;
	color : #000000;
	line-height : 2.0;
}

.normalButton {
	width : 70%;
	max-width : 210px;
	min-width : 170px;
	background-color : #ffffff;
	color : #0164c9;
	font-size : 14px;
	letter-spacing: 1px;
	font-weight : 500;
	display : inline-block;
	text-align : left;
	line-height : 54px;
	border : 2px solid #eaeaea;
	transition: 0.4s;
	padding-left : 20px;
	box-sizing: border-box;
	position : relative;
	border-radius : 6px;
}
.normalButton_w {
	width : 70%;
	max-width : 210px;
	min-width : 170px;
	background-color : transparent;
	color : #ffffff;
	font-size : 14px;
	letter-spacing: 1px;
	font-weight : 500;
	display : inline-block;
	text-align : left;
	line-height : 54px;
	border : 1px solid #ffffff;
	transition: 0.4s;
	padding-left : 20px;
	box-sizing: border-box;
	position : relative;
	border-radius : 6px;
}
.normalButton.rev {
	border : 1px solid #ffffff;
	background-color : transparent;
	color : #2db1c2;
}
.normalButton.long {
	width : 100%;
	max-width : 448px;
	min-width : 240px;
}
@media only screen and (max-width: 560px) {
	.normalButton.long {
		min-width : 100px;
		padding-left : 2vw;
		line-height : 48px;
	}
	.normalButton {
		font-size : 13px;
		line-height : 46px;
	}
	.normalButton_w {
		font-size : 13px;
		line-height : 40px;
	}
}
.normalButton:hover {
	color : #000000;
	background-color : #f1f1ff;
}
.normalButton_w:hover {
	color : #000000;
	background-color : #f1f1ff;
}
.normalButton.rev:hover {
	background-color : #2db1c2;
	color : #ffffff;
}
.normalButton.rev::after {
  color: #2db1c2;
}
.normalButton.rev:hover::after {
  color: #ffffff;
}
.arrowButton {
	width : 50px;
	height : 50px;
	background-color : #2db1c2;
	color : #ffffff;
	font-size : 36px;
	font-weight : 300;
	display : inline-block;
	font-family: "Kiwi Maru", serif;
	text-align : center;
	line-height : 44px;
	border : 1px solid #2db1c2;
	transition: 0.4s;
	box-sizing: border-box;
	position : relative;
	border-radius : 50%;
}
.arrowButton:hover {
	background-color : #ffffff;
	color : #2db1c2;
}
.overImg {
	position : absolute;
	bottom : 0;
	right : 0;
	width : 75%;
	max-width : 1077px;
	height : 27vw;
	max-height : 395px;
	z-index : 10;
	overflow : hidden;
}
.overImg img {
	width : 100%;
	max-width : 1077px;
	height : 27vw;
	max-height : 395px;
	z-index : 1;
	opacity : 0;
	object-fit: contain;
	transition-delay: 0.5s;
}
.overImg span {
	position : absolute;
	top : 0;
	left : -100%;
	width : 100%;
	max-width : 1077px;
	height : 27vw;
	max-height : 395px;
	font-size : 0;
	z-index : 2;
	background-color : rgba(0, 51, 137, 1);
	transition: 0.5s;
}
.overImg span.move {
	left : 0;
}
.overImg img.open {
	opacity : 1;
}
.overImg span.move.leave {
	left : 100%;
}

.enviWrap h3 {
	color : #252525;
	font-family: "Roboto", sans-serif;
	font-weight : 500;
}
.enviWrap h3 span {
	color : #000000;
	font-weight : 400;
}
.enviWrap .flex3 .item {
	width : 31%;
	background-color : #ffffff;
	border-top : 8px solid #fdf100;
	padding : 30px;
	box-sizing: border-box;
}
.enviWrap .flex2 .item {
	width : 48%;
	background-color : #ffffff;
	border-top : 8px solid #fdf100;
	padding : 30px;
	box-sizing: border-box;
}
.enviWrap .flex2 .item dl {
	display : -webkit-flex;
	display : flex;
	align-items: center;
	padding : 10px 0;
}
.enviWrap .flex2 .item dl.bdr {
	border-bottom : 2px dashed #bebebe;
}
.enviWrap .flex2 .item dt {
	width : 50px;
	text-align : right;
}
.enviWrap .flex2 .item dd {
	width : calc(100% - 60px);
	text-align : left;
	padding-left : 10px;
	font-weight : 700;
}
.enviWrap .flex3 .parts {
	width : 31%;
	background-color : #ffffff;
	padding : 30px;
	box-sizing: border-box;
	position : relative;
}
.enviWrap .flex3 .parts .partsInner {
	display : block;
}
.enviWrap .flex3 .parts h3 {
	line-height : 1.4;
}
.enviWrap .flex3 .parts h4 {
	line-height : 1.4;
	color : #000000;
	font-weight : 500;
	display : flex;
	align-items: center;
	justify-content: center;
	height : 2.4em;
	padding-top : 6px;
}
.enviWrap .flex3 .parts h5 {
	position : absolute;
	top : 0;
	left : 0;
	background-color : #fef002;
	color : #252525;
	width : 46px;
	height : 46px;
	text-align : center;
	line-height : 46px;
	font-family: "Roboto", sans-serif;
}
.enviWrap .flex3 .parts p {
	color : #8b8b8b;
}
.enviWrap .flex2 .item img.graph {
	width : 168px;
	height : 158px;
}
.pdl30 {
	padding-left : 30px;
}
@media only screen and (max-width: 960px) {
	.enviWrap .flex3 .item {
		padding : 3vw;
	}
	.enviWrap .flex2 .item {
		padding : 3vw;
	}
	.enviWrap .flex3 .parts {
		padding : 3vw;
	}
}
@media only screen and (max-width: 640px) {
	.enviWrap .flex2 .item {
		width : 100%;
		margin-bottom : 4vw;
	}
	.enviWrap .flex2 .item img.graph {
		width : 27vw;
		height : 26vw;
		max-width : 168px;
		max-height : 158px;
	}
	.enviWrap .flex3 .parts br.smp{
		display : none;
	}
	.enviWrap .flex3 .parts h5 {
		width : 40px;
		height : 40px;
		line-height : 40px;
	}
	.overImg {
		bottom : auto;
		top : 64vw;
		right : 0;
	}
	.arrowButton {
		width : 40px;
		height : 40px;
		font-size : 30px;
		font-weight : 300;
		line-height : 32px;
	}
}
@media only screen and (max-width: 480px) {
	.enviWrap .flex3 .item {
		width : 100%;
		margin-bottom : 4vw;
	}
	.enviWrap .flex3 .parts {
		width : 100%;
		margin-bottom : 4vw;
	}
	.enviWrap .flex3 .parts .partsInner {
		display : -webkit-flex;
		display : flex;
		-webkit-justify-content : space-between;
		justify-content : space-between;
		align-items: center;
	}
	.enviWrap .flex3 .parts .partsInner .img {
		width : 27%;
		margin-left : 6%;
	}
	.enviWrap .flex3 .parts h5 {
		width : 30px;
		height : 30px;
		line-height : 30px;
	}
	.enviWrap .flex3 .parts .partsInner .smp_graph {
		width : 67%;
	}
	.normalButton {
		font-size : 12px;
	}
	.eveDetail .normalButton {
		top : 60px !important;
	}
	.normalButton.long {
		font-size : 14px;
		text-align : center;
	}
}
.bottomContWrap {
	position : relative;
	z-index : 91;
}
.bottomCont {
	width : 100%;
	height : calc(34vw + 80px);
	max-height : 366px;
	position : relative;
}
.bottomContItem {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.bottomContItem p {
	color : #ffffff;
	white-space: nowrap;
}
.flowWrap {
	width : 100%;
	max-width : 820px;
	margin : 0 auto;
	padding : 0 10px;
	box-sizing: border-box;
}
.flowWrap dl {
	background-color : #ffffff;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	margin-bottom : 20px;
	padding : 14px 0;
	border-radius : 8px;
}
.flowWrap dt {
	font-size : 1.1rem;
	width : 170px;
	text-align : center;
	font-weight : 700;
	box-sizing: border-box;
	line-height : 2.0;
	border-right : 1px solid #efefef;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
	align-items: center;
}
.flowWrap dt span {
	display : block;
	font-weight : 700;
	color : #001e70;
}
.flowWrap dd {
	font-size : 1.05rem;
	width : calc(100% - 170px);
	text-align : left;
	padding: 20px 0 20px 30px;
	box-sizing: border-box;
	line-height : 2.0;
}
.flowWrap dd .inner {
	background-color : #edeef3;
	padding : 20px 30px;
	box-sizing: border-box;
}
@media only screen and (max-width: 720px) {
	.flowWrap dl {
		padding : 1vw 0;
	}
	.flowWrap dt {
		width : 25vw;
		padding-right : 3vw;
	}
	.flowWrap dd {
		width : calc(100% - 20vw + 1px);
		padding-left : 4vw;
	}
}
@media only screen and (max-width: 480px) {
	.flowWrap dl {
		background-color : #ffffff;
		display : block;
		margin-bottom : 3vw;
		padding : 2vw 3.5vw 0 3.5vw;
	}
	.flowWrap dt {
		width : 100%;
		text-align : left;
		padding-right : 0;
		border-right : none;
		border-bottom : 1px solid #c1c1c1;
		padding-bottom : 2vw;
		display : block;
	}
	.flowWrap dd {
		width : 100%;
		padding-left : 0vw;
		padding-top : 1vw;
		padding-bottom : 2vw;
		border-left : none;
		line-height : 1.8;
	}
	.flowWrap dt.bdr {
		border-right : none;
	}
	.flowWrap dd.bdr {
		border-left : none;
	}
	.flowWrap dt span {
		display: inline-block;
		margin-right : 1.5em;
	}
	.flowWrap dd .inner {
		padding : 3vw;
	}
}

/* よくある質問 */

section.bdr {
	border-bottom : 1px solid #dcdcdc;
}
.faqSelecter a {
	display : block;
	width : 23%;
	text-align : center;
	font-size : 1.1rem;
	font-weight : 500;
	color : #000000;
	border : 1px solid #989898;
	border-radius : 8px;
	line-height : 1.6;
	padding : 0.9rem 0;
	transition: 0.4s;
}
.faqSelecter a:hover {
	color : #ffffff;
	background-color : #989898;
}
.faqContents h2 {
	width : 100%;
	border-bottom : 1px solid #dcdcdc;
	padding-bottom : 30px;
}
.faqWrap {
	padding : 40px;
}
.faqSelecter {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	flex-wrap : wrap;
}
.faqSelecter span {
	display : block;
	width : calc(22% + 6px);
	font-size : 0;
	position : relative;
}
.faqContents {
	border-top : 1px solid #8b8b8b;
}
.faqContents h3 {
	font-size : 24px;
	font-weight : 400;
	line-height : 1.4;
	color : #000000;
}
.faqContents dl {
	padding : 20px 0;
	transition: 0.5s;
	margin-bottom : 0;
}
.faqContents dl dt {
	color : #ffffff;
	background-color : #252525;
	position : relative;
	cursor : pointer;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	align-items : center;
}
.faqContents dl dt strong {
	display : inline-block;
	text-align : center;
	vertical-align: top;
	width : 45px;
	height : 45px;
	font-size : 24px;
	color : #ffffff;
	font-weight : 700;
	position : relative;
	top : 3px;
	font-family: "Roboto", sans-serif;
}
.faqContents dl dt p {
	display : inline-block;
	width : calc(100% - 95px);
	vertical-align: top;
	color : #ffffff;
	font-weight : 500;
	padding : 20px 0 20px 14px;
}
.faqContents dl dt div {
	position : relative;
	width : 16px;
	height : 16px;
	border-top : 2px solid #ffffff;
	border-right : 2px solid #ffffff;
	transform: rotate(135deg);
	top : -2px;
	right : 40px;
	transition: 0.3s;
}
.faqContents dl dt div.active {
	top : 4px;
	transform: rotate(-45deg);
}
.faqContents dl dt div span {
	display : block;
	font-size : 36px;
	color : #252525;
	font-weight : 300;
	line-height : 45px;
}
.faqContents dl dd {
	display : none;
	position : relative;
	padding : 20px 0 20px 12px;
}
.faqContents dl dd strong {
	font-size : 28px;
	color : #1d1d1e;
	font-weight : 700;
	display : inline-block;
	vertical-align: top;
	width : 50px;
	position : relative;
	top : -8px;
	font-family: "Roboto", sans-serif;
}
.faqContents dl dd p {
	display : inline-block;
	vertical-align: top;
	width : calc(100% - 100px);
	font-size : 1.1rem;
	color : #1d1d1e;
	font-weight : 500;
}
.faqContents dl.active dt {
	position : relative;
	border-bottom : none;
}
@media screen and (max-width: 960px) {
	.faqContents h3 {
		font-size : calc(1.25vw + 12.0px);
		padding : 0 0 calc(1.25vw + 6.0px) 0;
	}
	.faqContents dl dt strong {
		width : 40px;
		height : 40px;
		font-size : 22px;
	}
	.faqContents dl dt p {
		width : calc(100% - 10vw - 10px);
	}
	.faqContents dl dd {
		padding : calc(2.5vw + 5px) 0 0 0;
	}
	.faqContents dl dd strong {
		width : 40px;
		height : 40px;
		font-size : 22px;
		text-align : center;
	}
	.faqContents dl dd p {
		width : calc(100% - 10vw - 55px);
		font-size : 1rem;
		padding-left : 18px;
	}
	.faqContents dl dt div span {
		font-size : 32px;
		line-height : 40px;
	}
}
@media screen and (max-width: 800px) {
	.faqSelecter a {
		width : 48%;
		margin-bottom : 3vw;
	}
	.faqSelecter a::after{
		top: calc(2vw + 8px);
		right : 1vw;
		width : 12px;
		height : 13px;
	}
	.faqContents dl dt div {
		top : -4px;
	}
	.faqContents dl {
		padding : calc(2vw + 8px) calc(1vw + 6px) calc(1vw + 6px) calc(1vw + 6px);
	}
}
@media screen and (max-width: 480px) {
	.faqWrap {
		padding : 5vw 0;
	}
	.faqContents dl {
		padding : 2vw 1.5vw 2vw 1.5vw;
		margin-bottom : 3vw;
	}
	.faqContents dl dt p {
		width : calc(100% - 10vw - 40px);
		font-size : 1.1rem;
		padding : 8px 0;
	}
	.faqContents dl dt strong {
		width : 32px;
		height : 32px;
		font-size : 18px;
	}
	.faqContents dl dd strong {
		width : 32px;
		height : 32px;
		font-size : 18px;
		top : -3px;
	}
	.faqContents dl dt div {
		width : 8px;
		height : 8px;
		border-top : 1px solid #ffffff;
		border-right : 1px solid #ffffff;
		top : -2px;
		right : 10px;
	}
	.faqContents dl dd p {
		width : calc(100% - 10vw - 40px);
		font-size : 1.1rem;
		padding : 0 0 8px 14px;
	}
}
.normalTitle {
	position : relative;
	width : 100%;
}
.normalTitle.prod {
	top : 100px;
	z-index : 10;
}
@media screen and (max-width: 1200px) {
	.normalTitle.prod {
		top : calc(8vw + 12px);
	}
}
.normalTitle.all {

}
.normalTitle.topShift {
	margin-left : 10%;
}
.normalTitle h2 {
	color : #0164c9;
	line-height : 1.8;
}
.normalTitle h2.companyTitle {
	display : block;
	padding-bottom : 12px;
	position : relative;
}
.normalTitle h2.companyTitle::after {
	content : "";
	display : block;
	position : absolute;
	bottom : 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	width : 80px;
	height : 2px;
	background-color : #596e80;
}
.normalTitle.sml h2 {
	font-size : 58px;
	color : #cbcbcb;
	font-weight : 600;
	letter-spacing: 2px;
}
.bigTitle {
	width : 100%;
	max-width : 1620px;
	margin : 0 auto;
	padding : 0 10px;
	box-sizing: border-box;
	position: relative;
	z-index: 10;
}
.bigTitle h2 {
	font-size : 160px;
	color : #cbcbcb;
	font-weight : 700;
	letter-spacing: 2px;
	font-style : italic;
	line-height : 1.1;
	display: inline-block;
}
.normalTitle .back {
	position : absolute;
	width : 100%;
	top : 0;
	left : 0;
	z-index : -1;
}
.normalTitle .back img{
	width : 96%;
	max-width : 1758px;
}
.whiteTitle {
	position : relative;
	width : 100%;
}
.whiteTitle h2 {
	font-size : 64px;
	font-weight : 700;
	font-style : italic;
	color : #ffffff;
	line-height : 1.4;
	letter-spacing: 4px;
}
.firstCol::first-letter {
	color: #252525;
}
.normalTitle h3 {
	display : inline-block;
	color : #0265cc;
	line-height : 1.6;
}
.normalTitle h3.jpos {
	position : relative;
	left : -10px;
}
.whiteTitle h3 {
	font-size : 20px;
	font-weight : 700;
	color : #ffffff;
	line-height : 1.6;
	font-style : italic;
	letter-spacing: 2px;
}
.normalTitle h4 {
	font-size : 32px;
	font-weight : 700;
	color : #252525;
	line-height : 1.2;
}
.normalTitle p {
	line-height : 2.0;
	box-sizing: border-box;
}
.normalTitle p.mid {
	box-sizing: border-box;
	padding : 0 20px;
}
.worksWrap .comm {
	width : 100%;
	padding : 0 20px;
	box-sizing: border-box;
}
.worksWrap .txt .comm {
	padding : 0;
}
br.pc {
	display : none;
}
br.pcn {
	display : block;
}
br.pc17 {
	display : block;
}
br.pc16 {
	display : block;
}
br.pc11 {
	display : block;
}
.point {
	background-color : #f4f4f4;
	padding : 54px;
	box-sizing: border-box;
}
.point dl {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	align-items: center;
}
.point dl dt {
	width : 200px;
	font-size : 1.1rem;
	text-align : center;
}
.point dl dt span {
	display : block;
	font-size : 160px;
	font-style : italic;
	color : #252525;
	font-weight : 300;
	font-family: "Roboto", sans-serif;
	line-height : 1.0;
}
.point dl dd {
	width : calc(100% - 240px);
}
.point dl dd h3 {
	font-size: 32px;
	color: #252525;
	font-weight: 700;
	line-height: 1.4;
	position: relative;
}
.point dl dd h3::after {
	content: "";
	display: block;
	width: 82px;
	height: 1px;
	background-color: #252525;
	font-size: 0;
	margin-top: 20px;
}
@media only screen and (max-width: 1718px) {
	br.pc17 {
		display : none;
	}
}
@media only screen and (max-width: 1640px) {
	br.pc16 {
		display : none;
	}
}
@media only screen and (max-width: 1100px) {
	br.pc11 {
		display : none;
	}
}
@media only screen and (max-width: 1460px) {
	.normalTitle.all {
		padding-left : 3%;
		box-sizing: border-box;
	}
	br.pcn {
		display : none;
	}
	.normalTitle.sml h2 {
		font-size : calc(2.46vw + 22.1px);
	}
	.normalTitle.sml h3 {
		font-size : calc(2.02vw + 6.5px);
	}
	.normalTitle.sml h3.mid {
		font-size : calc(1.75vw + 10.5px);
	}
	.bigTitle h2 {
		font-size : calc(12.3vw + 4px);
	}
	.point dl dt span {
		font-size : calc(12.3vw + 4px);
	}
}
@media only screen and (max-width: 1240px) {
	.normalTitle.all {
		padding-left : 10px;
	}
}
@media only screen and (max-width: 1150px) {
	.normalTitle h3.freetNum span {
		font-size : calc(4.1vw + 16.9px);
	}
	.normalTitle.messtop {
		width : 100%;
		position : relative;
		top : -5.8vw;
	}
	.normalTitle.all {
		width : 100%;
	}
	.normalTitle.sml {
		width : 100%;
	}
	.topFlex .right {
		width : 54%;
		margin-right : 4%;
	}
	.normalTitle.topShift {
		margin-left : 10% !important;
	}
	.worksWrap .normalTitle {
		width : 100%;
		margin-left : 0%;
	}
	.recFlex .normalTitle {
		width : 100%;
		margin-left : 0%;
	}
	.whiteTitle h2 {
		font-size : calc(5.09vw + 0.5px);
	}
	.whiteTitle h3 {
		font-size : 18px;
	}
	.point {
		padding : 5vw;
	}
	.point dl dt {
		width : 12em;
		font-size : 1rem;
	}
	.point dl dd {
		width : calc(100% - 12em - 20px);
	}
	.point dl dd h3 {
		font-size : calc(1.93vw + 9.8px);
	}
}
@media only screen and (max-width: 640px) {
	.topFlex .right {
		width : 100%;
		padding : 0 10px;
		box-sizing: border-box;
		margin : 5vw 0 0 0;
	}
	.topFlex.sub .right {
		width : 100%;
		padding : 0;
		box-sizing: border-box;
		margin : 5vw 0 0 0;
	}
	.whiteTitle h2 {
		font-size : calc(5.09vw + 11.6px);
		margin-top : 3vw;
	}
	.whiteTitle h3 {
		font-size : calc(1.25vw + 10.0px);
	}
	.worksWrap .comm {
		text-align : left !important;
	}
	.normalTitle.sml h3 {
		letter-spacing: 0;
		padding-top : 4vw;
	}
	.normalTitle.sml h3.mid {
		letter-spacing: 0;
		padding-top : 1vw;
	}
	.point {
		padding : 5vw 4vw 5vw 0;
	}
	.point dl dt {
		width : 10em;
	}
	.point dl dd {
		width : calc(100% - 10em - 20px);
	}
	.normalTitle.messtop {
		top : calc(-5vw - 12px);
	}
}
@media only screen and (max-width: 480px) {
	br.pc {
		display : block;
	}
}

.newsInner {
	width : 100%;
}
.newsInner.bdr {
	border-bottom : 1px solid #c9c9c9;
}
.eveDetail .comm {
	border-bottom : 1px solid #c9c9c9;
}
.newsInner a {
	width : 100%;
	box-sizing : border-box;
	padding : 24px 16px 26px 30px;
	border : 1px solid #d1d1d1;
	margin-bottom : 24px;
	border-radius : 6px;
	background-color : #ffffff;
	transform: 0.4s;
	position : relative;
}
.newsInner a:hover {
	background-color : #f3f3ff;
}
.newsInner a .cate {
	width : 6em;
	font-weight : 500;
	color : #000000;
	padding : 0 10px;
	line-height : 2.0;
	text-align : center;
}
.newsInner a .comm {
	width : calc(100% - 7em - 70px);
	box-sizing: border-box;
	padding-left : 30px;
	padding-right : 40px;
	font-weight : 500;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.newsInner a .comm span {
	display : block;
	font-weight : 300;
}
@media only screen and (max-width: 480px) {
	.newsInner a {
		padding : 12px 48px 14px 12px;
		margin-bottom : 16px;
	}
	.newsInner a .cate {
		width : 8em;
		padding : 0;
		text-align : left;
	}
	.newsInner a .comm {
		width : 100%;
		padding-left : 0;
		padding-right : 0;
	}
}

.subbwrap {
	box-sizing: border-box;
	padding-right : 8.5%;
}
.subButton {
	font-size : 1rem;
	font-weight : 500;
	color : #ffffff;
	background-color : #252525;
	border : 1px solid #252525;
	line-height : 2.0;
	padding : 4px 16px 6px 16px;
	border-radius : 20px;
	transition: 0.3s;
	white-space: nowrap;
}
.subButton:hover {
	color : #252525;
	background-color : #ffffff;
}
.eveDetail .image {
	text-align : center;
}
.eveDetail .image img {
	width : auto;
	max-width : 100%;
}
.newsInner dl {

}
.newsInner dl dt {
	font-size : 1rem;
	color : #a5a5a5;
}
.newsInner dl dd {
	padding-left : 24px;
}
.newsInner dl dd span {
	display : inline-block;
	background-color : #2db1c2;
	color : #ffffff;
	font-size : 13px;
	line-height : 20px;
	padding : 0 20px 2px 20px;
	border-radius : 10px;
}
.contactTitle {
	text-align : center;
	display : inline-block;
	font-weight : 700;
	color : #000000;
	line-height : 2.0;
	padding : 0 40px;
	border-bottom : 4px solid #252525;
	position : relative;
}
.contactTitle::after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 10px solid transparent;
	border-top: 18px solid #252525;
}
.bottomInquWrap {
	position : relative;
	box-sizing : border-box;
}
.bottomInquItem {
	width : 100%;
	padding-left : 20px;
	padding-right : 20px;
	box-sizing : border-box;
	background-color : #ffffff;
}
.bottomInquItem .inner {
	width : 100%;
	max-width : 1070px;
}
.inquLeft {
	width : 30%;
}
.inquLeft .tel a {
	color : #595959;
	font-weight : 700;
	display : inline-block;
	padding-left : 40px;
	background : url(../img/tel.png) no-repeat top 17px left;
}
.inquTitle {
	width : 28%;
	padding-right : 30px;
	max-width : 400px;
}
.inquTitle h2 {
	color : #7fa1ba;
}
.inquRight {
	width : 70%;
	box-sizing : border-box;
}
.inquRight div {
	width : 50%;
}
.inquRight div a {
	display : inline-block;
	width : 30vw;
	max-width : 300px;
	margin : 0 10px;
	border : 2px solid #0164c9;
	text-align : center;
	font-size : 1.2rem;
	border-radius : 36px;
	line-height : 64px;
}
.inquRight div a.addMail {
	color : #ffffff;
	background-color : #0164c9;
}
.inquRight div a.addMail::before {
	content : "";
	display : inline-block;
	width : 29px;
	height : 32px;
	margin-right : 4px;
	background : url(../img/mail.png) no-repeat top center;
	position : relative;
	top : 16px;
}
.inquRight div a.addLine {
	color : #0164c9;
	background-color : #ffffff;
}
.inquRight div a.addLine::before {
	content : "";
	display : inline-block;
	width : 29px;
	height : 32px;
	margin-right : 4px;
	background : url(../img/line.png) no-repeat top center;
	position : relative;
	top : 10px;
}
@media only screen and (max-width: 880px) {
	.bottomInquItem {
		width : auto;
		padding : 3vw 20px !important;
		box-sizing : border-box;
	}
	.inquTitle {
		width : 100%;
		padding-right : 0px;
		max-width : 800px;
	}
	.inquLeft {
		width : 100%;
		display : -webkit-flex;
		display : flex;
		-webkit-justify-content : space-between;
		justify-content : space-between;
	}
	.inquRight {
		width : 100%;
		margin-top : 2vw;
	}
	.inquLeft .tel a {
		line-height : 40px;
		padding-right : 16px;
		background : url(../img/tel.png) no-repeat center left;
		background-size : 4vw;
		padding-left : 5vw;
	}
	.inquRight div a {
		display : inline-block;
		width : calc(100% - 20px);
		max-width : 300px;
		margin : 0 10px;
		border : 2px solid #0164c9;
		text-align : center;
		font-size : 1.2rem;
		border-radius : 36px;
		line-height : 54px;
	}
}
@media only screen and (max-width: 660px) {
	.inquRight {
		width : 100%;
	}
}
@media only screen and (max-width: 560px) {
	.bottomInquItem {
		width : 100%;
		padding : 0 10px;
	}
	.inquRight {
		width : 100%;
		margin-top : 4vw;
	}
	.inquRight div a.addMail::before {
		height : 28px;
		top : 16px;
		font-size : 1rem;
		background-size : 20px;
	}
	.inquRight div a.addLine {
		color : #0164c9;
		background-color : #ffffff;
	}
	.inquRight div a.addLine::before {
		height : 28px;
		top : 12px;
		font-size : 1rem;
		background-size : 24px;
	}
	.inquRight div a {
		line-height : 48px;
		width : calc(100% - 10px);
		font-size : 1.1rem;
	}
}
@media only screen and (max-width: 480px) {
	.inquLeft {
		width : 100%;
		display : block;
	}
	.inquRight div {
		width : 100%;
		text-align : center !important;
	}
	.inquRight div a {
		margin-left : auto;
		margin-right : auto;
	}
}
.inquRight dl {
	width : 48%;
}
.inquRight dd a.televe {
	display : block;
	text-align : center;
	font-weight : 700;
	color : #0164c9;
	font-size : 1.4rem;
	padding-left : 0;
}
.bottomCont {
	background : url(../img/back.jpg) no-repeat top center;
	background-size : cover;
}
.bottomContItem {
	width : 100%;
	max-width : 820px;
	margin : 0 auto;
	padding : 0 10px;
	box-sizing: border-box;
}
.bottomContItem p {
	width : 100%;
	padding : 0 10px;
	box-sizing: border-box;
}
.contactButtons {
	width : 100%;
}
.middleWrap4 .telButton {
	width : 48%;
	height : 96px;
	color : #000000;
	font-weight : 700;
	border : 2px solid #000000;
	padding : 20px 32px 22px 24px;
	box-sizing: border-box;
	transition: 0.4s;
}
.middleWrap4 .telButton img {
	max-width : 46px;
	width : 5vw;
	transition: 0.4s;
}
.middleWrap4 .telButton span {
	width : calc(100% - 112px);
	margin-left : 30px;
}
.middleWrap4 .telButton em {
	font-style : normal;
	font-size : 32px;
	font-weight : 300;
}
.middleWrap4 .telButton:hover {
	color : #ffffff;
	background-color : #000000;
}
.middleWrap4 .telButton:hover img {
	filter: invert(100%);
}
.middleWrap4 .lineButton {
	width : 48%;
	height : 96px;
	background-color : #31ac36;
	color : #ffffff;
	padding : 20px 32px 22px 24px;
	box-sizing: border-box;
}
.middleWrap4 .lineButton img {
	width : 5vw;
	max-width : 54px;
}
.middleWrap4 .lineButton span {
	width : calc(100% - 120px);
	margin-left : 30px;
}
.middleWrap4 .lineButton span i {
	font-style : normal;
}
.middleWrap4 .lineButton em {
	font-style : normal;
	font-size : 32px;
	font-weight : 300;
}
.middleWrap4 .insButton {
	width : 48%;
	height : 96px;
	background : url(../img/ins_back.png) no-repeat 0 0;
	color : #ffffff;
	padding : 20px 32px 22px 24px;
	box-sizing: border-box;
}
.middleWrap4 .insButton img {
	max-width : 46px;
	width : 5vw;
}
.middleWrap4 .insButton span {
	width : calc(100% - 112px);
	margin-left : 30px;
}
.middleWrap4 .insButton span i {
	font-style : normal;
}
.middleWrap4 .insButton span strong {

}
.middleWrap4 .insButton em {
	font-style : normal;
	font-size : 32px;
	font-weight : 300;
}
@media only screen and (max-width: 800px) {
	.middleWrap4 .telButton {
		height : calc(8vw + 20px);
		padding : 2vw 1vw 2.2vw 2.4vw;
	}
	.middleWrap4 .lineButton {
		height : calc(8vw + 20px);
		padding : 2vw 1vw 2.2vw 2.4vw;
	}
	.middleWrap4 .insButton {
		height : calc(8vw + 20px);
		padding : 2vw 1vw 2.2vw 2.4vw;
	}
	.middleWrap4 .telButton span {
		width : calc(100% - 12vw);
		margin-left : 3vw;
	}
	.middleWrap4 .lineButton span {
		width : calc(100% - 12vw);
		margin-left : 3vw;
	}
	.middleWrap4 .insButton span {
		width : calc(100% - 12vw);
		margin-left : 3vw;
	}
	.middleWrap4 .telButton em {
		font-size : 20px;
	}
	.middleWrap4 .lineButton em {
		font-size : 20px;
	}
	.middleWrap4 .insButton em {
		font-size : 20px;
	}
}
@media only screen and (max-width: 720px) {
	.middleWrap4 .lineButton span i {
		display : none;
	}
	.middleWrap4 .insButton span i {
		display : none;
	}
}
@media only screen and (max-width: 480px) {
	.middleWrap4 .telButton {
		width : 96%;
		height : calc(10vw + 30px);
		padding : 3vw 1vw 3.2vw 2.4vw;
		margin-left : 2%;
		margin-right : 2%;
	}
	.middleWrap4 .lineButton {
		width : 96%;
		height : calc(10vw + 30px);
		padding : 3vw 1vw 3.2vw 2.4vw;
		margin-left : 2%;
		margin-right : 2%;
	}
	.middleWrap4 .insButton {
		width : 96%;
		height : calc(10vw + 30px);
		padding : 3vw 1vw 3.2vw 2.4vw;
		margin-left : 2%;
		margin-right : 2%;
	}
	.middleWrap4 .telButton span {
		font-size : 1.3rem !important;
	}
	.middleWrap4 .lineButton strong {
		font-size : 1.3rem !important;
	}
	.middleWrap4 .lineButton em {
		font-size : 20px;
		width : calc(6vw + 10px);
	}
	.middleWrap4 .insButton em {
		font-size : 20px;
		width : calc(6vw + 10px);
	}
	.middleWrap4 .telButton em {
		font-size : 20px;
		width : calc(6vw + 10px);
	}
	.inquRight dl {
		width : 100%;
		max-width: 360px;
		margin-left: auto;
		margin-right: auto;
	}
	.inquRight dl.tel a {
		font-size : 18px !important;
	}
	.inquRight dl.mail {
		margin-top : 10px;
	}
}

#wrapFromInner {
	
}
#wrapFromInner h4 {
	color : #000000;
	font-size : 1.1rem;
	position : relative;
	padding : 0 0 0 54px;
}
#wrapFromInner h4::before {
	content : "";
	position : absolute;
	top : 50%;
	left : 0;
	width : 45px;
	height : 4px;
	background-color : #2db1c2;
}
#wrapFromInner .form2 {
	color : #000000;
	background-color : #f8f8f8;
	position : relative;
	padding : 24px 36px 24px 44px;
}
#wrapFromInner .form2 label {
	display : inline-block;
	font-size : 1.2rem;
	line-height : 2.4;
}
#wrapFromInner .form2 label.short {
	display : inline-block;
	width : 8em;
}
#wrapFromInner .form2 label.long {
	width : 16em;
}
#wrapFromInner .form2 label.mini {
	width : 5em;
}
#wrapFromInner .form2 .mid {
	width : 7em;
}
#wrapFromInner .form2 input {
	font-size : 0.95rem;
	padding : 6px 12px;
	background-color : #ffffff;
	border : 1px solid #bebebe;
}
#wrapFromInner .form2 textarea {
	font-size : 0.95rem;
	padding : 6px 12px;
	width : calc(100% - 26px);
	height : 10em;
	background-color : #ffffff;
	border : 1px solid #bebebe;
}
#wrapFromInner .form2 .flex {
	display : -webkit-flex;
	display : flex;
	align-items: center;
}
#wrapFromInner .form2 .flex p {
	width : 18em;
	color : #000000;
	font-size : 1.2rem;
}
#wrapFromInner .form2 .line {
	color : #000000;
	font-size : 1.2rem;
	line-height : 2.4;
}
#wrapFromInner .form2 span.lim {
	display : inline;
}
#wrapFromInner ul.comp {
	font-size : 1rem;
	line-height : 1.6;
	padding : 10px 0 0 44px;
}
#wrapFromInner input[type="radio"] {
	transform:scale(1.4);
	margin-right : 4px;
}
@media only screen and (max-width: 950px) {
	#wrapFromInner .form2 span.lim {
		display : block;
	}
}
@media only screen and (max-width: 640px) {
	#wrapFromInner .form2 {
		padding : 2.4vw 3.6vw 2.4vw 4.4vw;
	}
	#wrapFromInner .form2 label {
		font-size : 1.1rem;
	}
	#wrapFromInner .form2 label.short {
		width : 7em;
	}
	#wrapFromInner .form2 label.long {
		width : 14em;
	}
	#wrapFromInner .form2 .mid {
		width : 6em;
	}
	#wrapFromInner .form2 label.mini {
		width : 6em;
	}
}

.rec_ttl {
	font-weight: 700;
	position: relative;
}
.rec_ttl::after {
	content: "";
	width: 50px;
	height: 3px;
	background-color: #1e9f9f;
	display: block;
	margin: 16px auto;
}
.rec_items {
	background-color : #f4f4f4;
	padding : 24px;
	box-sizing: border-box;
}
.rec_items dt {
	width : 24%;
}
.rec_items dd {
	width : 76%;
}
@media only screen and (max-width: 480px) {
	.rec_items {
		padding : 3vw;
	}
	.rec_items dt {
		width : 100%;
		font-weight : 700;
		padding-bottom : 6px;
		border-bottom : 1px solid #c1c1c1;
	}
	.rec_items dd {
		padding-top : 6px;
		width : 100%;
	}
}

.pager {
	width: 100%;
	text-align: center;
}
.pager li {
	display: inline-block;
	font-size: 16px;
	line-height: 1.0;
	vertical-align: top;
}
.pager li span {
	display: inline-block;
	margin: 0 4px;
	width : 36px;
	height : 33px;
	line-height : 33px;
	padding-bottom : 3px;
	color: #ffffff;
	background-color : #252525;
	font-weight: bold;
	vertical-align: middle;
	border-radius : 50%;
}
.pager li a {
	display: inline-block;
	margin: 0 4px;
	width : 36px;
	height : 33px;
	line-height : 33px;
	padding-bottom : 3px;
	color: #252525;
	font-weight: bold;
	vertical-align: middle;
	transition: 0.3s;
}
.pager li em {
	display: inline-block;
	margin: 0 14px;
	color: #252525;
	font-style: normal;
	vertical-align: top;
}
.pager li a.gray {
	background-color : #b3b3b3;
	border : 1px solid #b3b3b3;
	font-family: 'Arsenal', sans-serif;
	font-size : 36px;
}
.pager li a:hover {
	color: #000000;
	background-color : #e4e4e4;
}

/* 各ページ */

.aboutWrap h2 {
	color : #252525;
	font-size : 72px;
	font-weight : 900;
	line-height : 1.4;
	padding-bottom : 10px;
	border-bottom : 1px solid #252525;
}
.aboutWrap h3 {
	color : #252525;
	font-size : 48px;
	font-weight : 700;
	line-height : 1.4;
	padding : 20px 0 10px 0;
}
.aboutWrap h4 {
	color : #252525;
	font-size : 24px;
	font-weight : 700;
	line-height : 1.4;
	letter-spacing: 1px;
	position : relative;
}
.aboutWrap p {
	color : #252525;
	font-size : 18px;
	font-weight : 600;
	line-height : 1.8;
	margin-top : 30px;
	max-width : 880px;
}
.aboutWrap .titleImg {
	text-align : center;
}

/* 仕事内容 */

.pageTops {
	width : 100%;
	height : 569px;
}
.overTitle  {
	position: absolute;
	width : 100%;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.overTitle h2 {
	display: inline-block;
	line-height: 1.8;
	color: #7fa3bd;
	position: relative;
	white-space: nowrap;
	text-shadow: 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1);
}
.overTitle h3 {
	display: block;
	color: #0164c9;
	line-height: 1.0;
	font-weight: 700;
	position: relative;
	letter-spacing: 2px;
	text-shadow: 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1), 0px 0px 4px rgba(255, 255, 255, 1);
}
.overTitle .line {
	font-size : 0;
	width : 40px;
	height : 1px;
	border-top : 1px solid #ffffff;
	margin: 32px 10px 0 10px;
}
.topTitle {
	height : 35vw;
	max-height : 350px;
	background-repeat : no-repeat;
	background-position: center top;
	position : relative;
	margin-top : 120px;
}
.topTitle_s {
	height : 30vw;
	max-height : 300px;
	background-repeat : no-repeat;
	background-position: center top 60px;
}
.topTitle img {
	width : 95px;
}
.topTitle span {
	display : block;
}
.topTitle_s img {
	width : 95px;
}
.topTitle_s span {
	display : block;
}
.addTitle {
	background : url(../img/product_ttl.jpg) no-repeat 0 0;
	width : 100%;
	height : 50vw;
	max-height : 500px;
	background-size : cover;
	position : relative;
}
@media only screen and (max-width: 1450px) {
	.topTitle_s {
		height : 48vw;
		max-height : 560px;
		background-size : cover;
	}
}
@media only screen and (max-width: 1450px) {
	.topTitle {
		margin-top : 60px;
		background-size: cover;
	}
}
.addTitleInner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	width : 90%;
}
.addTitleInner h2 {
	color : #ffffff;
	white-space: nowrap;
}
.addTitleInner h3 {
	color : #ffffff;
	font-weight : 500;
	white-space: nowrap;
}
.addTitleInner br.smp {
	display : block;
}
@media only screen and (max-width: 960px) {
	.topTitle {
		background-position: center top 6vw;
	}
	.topTitle_s {
		background-position: center top 6vw;
	}
	.overTitle h3 {
		margin-top : 1.6vw;
	}
	.overTitle .line {
		font-size : 0;
		width : calc(2.5vw + 16.0px);
		height : 1px;
		border-top : 1px solid #ffffff;
		margin: calc(2vw + 10px) 10px 0 10px;
	}
}
@media only screen and (max-width: 960px) {
	.topTitle {
		background-position: center top;
	}
	.topTitle_s {
		background-position: center top 7vw;
	}
}
@media only screen and (max-width: 640px) {
	.overTitle h2 {
		padding: 4vw 24px 0px 24px;
	}
	.overTitle h3 {
		display: block;
	}
	.addTitleInner h2 {
		white-space : normal;
	}
	.addTitleInner h3 {
		white-space : normal;
	}
	.addTitleInner br.smp {
		display : none;
	}
}

@media only screen and (max-width: 480px) {
	.topTitle {
		background-position: center top;
		height : 64vw;
	}
	.topTitle_s {
		background-position: center top 8vw;
	}
	.overTitle h2 {
		padding: 0 24px 0px 24px;
	}
	.elsePage .topTitle {
		height : 40vw !important;
	}
	.topTitle_s {
		height : 64vw;
	}
	.overTitle .line {
		width : calc(2.5vw + 14.0px);
		margin: calc(2vw + 10px) 4px 0 4px;
	}
}

.slide-arrow {
	position : absolute;
	top : 36%;
	transition: 0.3s;
}
.prev-arrow {
	left : 6%;
}
.next-arrow {
	right : 6%;
}
.slide-arrow:hover {
	opacity : 0.7;
}
.slick-slide {
	overflow: visible !important;
	width : 100%;
	margin: 0;
	box-sizing: border-box;
}
.slider .slick-img {
	position : relative;
}
.slider .slick-img img {
	width : 100%;
	height : 55vw;
	max-height : 500px;
	object-fit: contain;
}
.slider .slick-img span {
	display : block;
	width : 100%;
	height : 48px;
	line-height : 48px;
	text-align : center;
	position : absolute;
	bottom : 0;
	left : 0;
	background-color : rgba(239, 244, 248, 0.7);
	font-size : 14px;
	font-weight : 500;
	color : #232323;
	letter-spacing: 1px;
}
.thumbnail {
	width : 100%;
	padding : 0 50px;
	box-sizing : border-box;
}
.thumbnail .thumbnail-img  {
	width : 100%;
	padding : 0 5px;
	box-sizing : border-box;
}
.thumbnail .thumbnail-img img {
	width : 100%;
	height : 12vw;
	max-height : 100px;
	object-fit: cover;
}
.thumbnail.stop .slick-track {
	transform: unset !important;
}
@media only screen and (min-width: 479px) {
	.thumbnail.change .slick-track {
		transform: unset !important;
	}
}
.imageWrap {
	position : relative;
}
.arrow_box {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0;
    position: relative;
}
.prev-arrow,
.next-arrow {
	position : absolute;
	top : 30px;
    display: block;
    width: 45px;
    height: 100px;
    background: #d8d8d8;
    transition: all .3s ease;
    cursor: pointer;
	border-radius : 2px;
	z-index : 2;
}
@media only screen and (max-width: 900px) {
	.prev-arrow,
	.next-arrow {
		top : 3vw;
		height: 12vw;
	}
}
.prev-arrow {
    transform: rotate(180deg);
    margin-right: 20px;
	left : 0px;
}
.next-arrow {
	right : 0px;
}
.prev-arrow::before,
.next-arrow::before{
    position:absolute;
    content: "";
    width: 14px;
    height: 14px;
    border-right: 2px solid #FFF;
    border-top: 2px solid #FFF;
    top: 0;
    bottom: 0;
    left: -6px;
    right: 0;
    margin: auto;
    transform:rotate(45deg);
}
a.pnbtn {
	color : #0164c9;
	transition: 0.3s;
	text-decoration: underline;
}
a.pnbtn:hover {
	color : #000000;
}
.pagerThumb {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.pagerThumb img {
	width : 100%;
	max-width : 108px;
	height : 8vw;
	max-height : 81px;
	object-fit: cover;
}
.pagerThumb span {
	display : block;
	width : 100%;
	max-width : 108px;
	height : 8vw;
	max-height : 81px;
	background-repeat : no-repeat;
	background-position : center center;
	background-size : cover;
}
.pagerThumb .transImg {
	width : 20%;
	max-width : 108px;
	height : 1px;
}
.compWrap  {
	width : 100%;
	position : relative;
}
.compPage {
	width : 100%;
	max-width : 1160px;
	margin-left : auto;
	margin-right : auto;
	position : relative;
	padding : 0 10px;
	box-sizing: border-box;
}
.compWrap dl {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	width : 100%;
	border-bottom : 2px solid #f0f0f0;
}
.compWrap dt {
	width : 15%;
	padding : 31px 10px;
	font-size : 1.1rem;
	font-weight : 700;
	text-align : left;
	box-sizing: border-box;
}
.compWrap dd {
	width : 85%;
	line-height : 2.0;
	padding : 32px 30px;
	font-size : 1rem;
	box-sizing: border-box;
}
.compWrap dd .gmap {
	background : url(../img/pin.png) no-repeat 0 0;
	padding-left : 36px;
	box-sizing: border-box;
	line-height: 34px;
}
.compWrap dd .gmap a {
	font-weight : 700;
	color : #000000;
	text-decoration: underline;
	transition: 0.3s;
}
.compWrap dd .gmap a:hover {
	color : #2bb3bf;
}
@media only screen and (max-width: 960px) {
	.compWrap dt {
		width : 28%;
		padding : 3vw 1vw;
	}
	.compWrap dd {
		width : 72%;
		padding : 3vw 3vw;
	}
}

.mgtm60 {
	margin-top : -60px;
}
.pdtm100 {
	padding-top : 100px;
}

/* 施工実績詳細 */

.detailWrap {
	width : 100%;
}
.detailWrap .headLine {
	
}
.detailWrap .headLine .date {
	margin-right : 1.5em;
}
.detailWrap .headLine .cate {
	display : inline-block;
	margin-right : 1.5em;
	background-color : #0164c9;
	color : #ffffff;
	padding : 0 12px;
}
.detailWrap .headLine .place {
	color : #0164c9;
}
.detailWrap h2 {
	font-weight : 700;
	color : #595959;
	position : relative;
	padding-bottom : 10px;
	box-sizing: border-box;
	border-bottom : 1px solid #c9c9c9;
}
.detailWrap h2 span {
	font-weight : 500;
	color : #000000;
	position : relative;
	background-color : #ffffff;
	line-height : 1.8;
	padding : 0 20px 2px 20px;
	box-sizing: border-box;
	margin-right : 24px;
	border-radius : 16px;
	letter-spacing: 0;
}
h3.description {
	text-align : left;
	padding-bottom : 16px;
	border-bottom : 1px solid #999999;
}
h3.description strong {
	font-weight : 400;
	color : #000000;
}
h3.description span {
	font-weight : 400;
	color : #c0c0c0;
	margin-left : 10px;
}
.detailWrap .photoWrap {
	
}
.detailWrap .photoMain img {
	width : 100%;
	height : 47vw;
	max-height : 560px;
	object-fit: cover;
} 
#slider {
	opacity: 0;
	overflow: hidden;
}
#slider.slick-slider {
	opacity: 1;
}
#slider.slick-slider li {
	vertical-align: top;
}
#slider {
	position: relative;
}
#slider .slide-btn-inner {
	position: absolute;
	width: 1200px;
	height: 500px;
	left: 50%;
	top: 0;
	margin: 0 0 0 -600px;
}
#slider .slide-btn-inner > div {
	position: relative;
	width: 1200px;
	height: 500px;
}
#slider .slide-btn-inner > div:before,
#slider .slide-btn-inner > div:after {
	position: absolute;
	content: "";
	width: 1200px;
	height: 600px;
	background: #000;
	opacity: .5;
	z-index: 1;
}
#slider .slide-btn-inner > div:before {
	left: -82%;
}
#slider .slide-btn-inner > div:after {
	left: 82%;
}
/* 矢印 */
#slider .slick-arrow {
	position: relative;
	top: 0;
	outline: 0;
	text-indent: 0;
	width: 50px;
	height: 50px;
	border: none;
	background: transparent;
	border-radius: 50%;
	cursor: pointer;
	background: #eee;
	z-index: 1;
}
#slider .slick-arrow {
	position: absolute;
	top: calc(50% - 25px);
}     
#slider .slick-arrow.prev-arrow {
	left: 6%;
	z-index: 2;
}
#slider .slick-arrow.next-arrow {
	right: 6%;
	z-index: 2;
}   
#slider .slick-arrow.prev-arrow:after {
	position: absolute;
	content: "";
	width: 14px;
	height: 14px;
	border-bottom: solid 1px #a1a1a1;
	border-right: solid 1px #a1a1a1;
	margin: -7px 0 0 -4px;
	top: 50%;
	left: 50%;
	transform: rotate(135deg);
}     
#slider .slick-arrow.next-arrow:after {
	position: absolute;
	content: "";
	width: 14px;
	height: 14px;
	border-bottom: solid 1px #a1a1a1;
	border-right: solid 1px #a1a1a1;
	margin: -7px 0 0 -10px;
	top: 50%;
	left: 50%;     
	transform: rotate(-45deg);
}
.next_outer {
	position : absolute;
	top : 0;
	right : 0;
	width : 18%;
	height : 100%;
	background-color : rgba(0, 0, 0, 0.5);
	z-index : 1;
}
.prev_outer {
	position : absolute;
	top : 0;
	left : 0;
	width : 18%;
	height : 100%;
	background-color : rgba(0, 0, 0, 0.5);
	z-index : 1;
}
.thumbnail-img {
	opacity: .4;
	transition: opacity .3s linear;
}
.thumbnail .slick-current {
	opacity: 1;
}

@media only screen and (max-width: 480px) {
	#slider .slick-arrow {
		width: 36px;
		height: 36px;
	}
	#slider .slick-arrow {
		margin: -24px 0 0 0;
	}
	#slider .slick-arrow{
		margin: -24px 0 0 0;
	}     
	#slider .slick-arrow.prev-arrow,
	#slider .slick-arrow.next-arrow {
		top: 40%;
		margin: 0 0 0 0;
	}
	#slider .slick-arrow.prev-arrow {
		left: 3%;
		z-index: 2;
	}
	#slider .slick-arrow.next-arrow {
		right: 3%;
		z-index: 2;
	}   
	#slider .slick-arrow.prev-arrow:after {
		width: 10px;
		height: 10px;
		margin: -6px 0 0 -4px;
	}     
	#slider .slick-arrow.next-arrow:after {
		width: 10px;
		height: 10px;
		margin: -6px 0 0 -8px;
	}
}

.detailWrap .sizeWrap {
	padding : 32px 45px 12px 45px;
	box-sizing: border-box;
}
.detailWrap .sizeTable {
	display : table;
	border-collapse: collapse;
	width : 100%;
	font-size : 1rem;
	color : #404040;
	font-weight : 500;
	border-top : 1px dashed #999999;
}
.detailWrap .sizeTable:first-of-type {
	border-top : none;
}
.detailWrap .sizeTable dt {
	display : table-cell;
	vertical-align: top;
	font-size : 1rem;
	color : #404040;
	width : 20%;
	padding : 24px 0;
	box-sizing: border-box;
	position : relative;
	text-align : left;
}
.detailWrap .sizeTable dd {
	display : table-cell;
	vertical-align: top;
	font-size : 1rem;
	color : #404040;
	width : 80%;
	padding : 24px 0;
	box-sizing: border-box;
	text-align : left;
}
.descOuter {

}
.detailMore {
	border-top : 1px solid #999999;
}
.detailMore div {
	width : 49%;
}
.detailMore a {
	font-size : 1rem;
	font-weight : 500;
	color : #404040;
	transition: 0.3s;
}
.detailMore a {
	font-size : 1rem;
	font-weight : 500;
	color : #404040;
	transition: 0.3s;
}
.detailMore a:hover {
	color : #000000;
}
@media only screen and (max-width: 480px) {
	.detailWrap .sizeTable dt {
		padding : 20px 0;
	}
	.detailWrap .sizeTable dd {
		padding : 20px 0;
	}
}

/* 検索 */
#srtop {
	margin-top : -140px;
	padding-top : 140px;
}
.searchForm p.note {
	margin-bottom : 8px;
}
.searchForm p.note span {
	display : inline-block;
}
.searchForm dl {
	width : 100%;
	word-wrap: break-word;
}
.searchForm dl dt {
	color : #5ffffff;
	font-weight : 700;
	width : 100%;
	text-align : left;
	position : relative;
	line-height : 2.0;
	background-color : #556a7f;
}
.searchForm dl dt p {
	line-height : 36px;
	font-weight : 700;
	color : #ffffff;
	padding : 0 0 2px 10px;
}
.searchForm dl dt div {
	position : absolute;
	top : 16px;
	right : 14px;
}
.searchForm dl dt div span {
	display : block;
	width : 10px;
	height : 10px;
	border-left : 2px solid #ffffff;
	border-top : 2px solid #ffffff;
	background-color : transparent;
	font-size : 0;
	position : relative;
	top : 0;
	transform: rotate(45deg);
	transition: 0.3s;
}
.searchForm dl.close dt div span{
	transform: rotate(-135deg);
	top : -5px;
}
.searchForm dl dd {
	display : block;
	padding : 20px 20px 10px 20px;;
	box-sizing: border-box;
	background-color : #e3ebf6;
}
.searchForm form h3 {
	display : block;
	font-size : 1.4rem;
	color : #5a6f83;
	padding-left : 24px;
	line-height : 47px;
	background : url(../img/point.png) no-repeat top 18px left;
}
#faq_a01 label {
	display : inline-block;
	width : 32%;
	white-space: nowrap;
	background-color : #ffffff;
	padding : 12px;
	margin : 0 8px 12px 0;
	font-size : 14px;
	font-weight : 500;
	box-sizing : border-box;
	line-height : 1.0;
}
#faq_a01 label input {
	display : inline-block;
	margin-right : 6px;
	transform: scale(1.3);
}
.searchForm dl dd label {
	display : inline-block;
	width : auto;
	white-space: nowrap;
	background-color : #ffffff;
	padding : 12px;
	margin : 0 8px 12px 0;
	font-size : 14px;
	font-weight : 500;
	box-sizing : border-box;
	line-height : 1.0;
}
.searchForm dl dd label input {
	display : inline-block;
	margin-right : 6px;
	transform: scale(1.3);
}
.searchForm dl dd select {
	display : inline-block;
	border : 1px solid #556a7f;
	width : auto;
	white-space: nowrap;
	background-color : #ffffff;
	padding : 7px 12px;
	margin : 0 8px 12px 0;
	font-size : 14px;
	font-weight : 500;
	box-sizing : border-box;
	line-height : 1.0;
}
.kod label {
	display : inline-block;
	width : auto;
	white-space: nowrap;
	background-color : #ffffff;
	padding : 12px;
	margin : 0 8px 12px 0;
	font-size : 14px;
	font-weight : 500;
	box-sizing : border-box;
	line-height : 1.0;
}
.kod label input {
	display : inline-block;
	margin-right : 6px;
	transform: scale(1.3);
}
.kodline {
	display : block;
	margin : 10px 0;
	border-bottom : 1px solid #556a7f;
	font-size : 0;
	width : 100%;
	height : 0;
}
@media only screen and (max-width: 720px) {
	label {
		font-size : 1rem !important;
	}
}
@media only screen and (max-width: 640px) {
	#faq_a01 label {
		width : 46%;
	}
}
@media only screen and (max-width: 480px) {
	.searchForm dl dd {
		padding : 20px 10px 10px 10px;;
	}
	.searchForm dl dd label {
		padding : 10px;
		margin : 0 4px 8px 0;
	}
}
.submArea {
	position : relative;
	height : 100px;
}
.submInner {
	position : absolute;
	bottom : 0;
	left : 0;
	width : 100%;
	background-color : #e2eaf5;
}
.submInner.active {
	position : fixed;
	bottom : 0;
	left : 0;
	width : 100%;
	background-color : #e2eaf5;
}
.submBody {
	padding : 20px;
}
.submBody .pre {
	font-size : 1rem;
	margin-right : 12px;
}
.submBody .pre em {
	font-style : normal;
}
.submBody .pre strong {
	font-size : 36px;
}
.submBody .btn {
	font-size : 20px;
	font-weight : bold;
	text-align : center;
	background-color : #a30000;
	width : 30vw;
	max-width : 320px;
	min-width : 130px;
	margin-left : 12px;
	border-radius : 6px;
}
.submBody .btn a {
	width : 100%;
	font-size : 18px;
	color : #ffffff;
	font-weight : bold;
	text-align : center;
	border-style : none;
	border-radius : 6px;
	padding : 8px 0;
	transition: 0.4s;
}
.submBody .btn a span {
	display : inline-block;
	margin-left : 10px;
}
.submBody .btn a:hover {
	background-color : #0164c9;
}
@media only screen and (max-width: 720px) {
	.submBody {
		padding : 10px;
	}
	.submBody .btn a {
		font-size : 1rem;
		white-space: nowrap;
	}
	.submBody .btn a img {
		width : calc(1.14vw + 9.4px);
	}
	.submBody .pre strong {
		font-size : calc(3vw + 14.4px);
	}
}
@media only screen and (max-width: 400px) {
	.submBody .pre em {
		display : none;
	}
}


/* お問い合わせ */
#inqupos {
	margin-top : -60px;
	padding-top : 60px;
}
.radButton {
	width : 24%;
	background-color : #e5e5e5;
	border-radius : 12px;
	padding : 8px 4px 8px 12px;
	box-sizing : border-box;
}
.radButton a {
	display : block;
}
.radButton.btn01.active {
	background-image: linear-gradient(180deg, rgba(201, 193, 47, 1), rgba(155, 149, 35, 1));
}
.radButton.btn02.active {
	background-image: linear-gradient(180deg, rgba(111, 203, 47, 1), rgba(85, 154, 35, 1));
}
.radButton.btn03.active {
	background-image: linear-gradient(180deg, rgba(46, 110, 200, 1), rgba(35, 97, 156, 1));
}
.radButton.btn04.active {
	background-image: linear-gradient(180deg, rgba(202, 66, 47, 1), rgba(156, 51, 35, 1));
}
.radButton .inner {
	line-height : 1.2;
}
.radButton .inner .icon {
	width : 50px;
}
.radButton .inner span {
	display : block;
	background-color : #ffffff;
	width : 50px;
	height : 50px;
	position : relative;
	top : 2px;
	font-size : 0;
	border-radius : 50%;
}
.radButton .inner span img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	opacity : 0.5;
	transition: 0.3s;
}
.radButton.active .inner span img {
	opacity : 1;
}
.radButton .inner h3 {
	width : calc(100% - 64px);
	padding-left : 14px;
	color : #989898;
	display : flex;
	flex-direction: column;
	transition: 0.3s;
}
.radButton .inner h3 strong {
	color : #989898;
	transition: 0.3s;
}
.radButton.active .inner h3 {
	color : #ffffff;
}
.radButton.active .inner h3 strong {
	color : #fef55d;
}
.radButton a:hover .inner span img {
	opacity : 1;
}
.radButton a:hover .inner h3 {
	color : #565656;
}
.radButton a:hover .inner h3 strong {
	color : #565656;
}
.narrowWrap {
	width: 100%;
	max-width: 1068px;
	margin: 0 auto;
	padding: 0 8px;
	box-sizing: border-box;
}

.contactWrap  {
	width : calc(100% - 20px);
	max-width : 720px;
	margin : 0px auto 0 auto;
	padding : 0 10px;
	background-color : #ffffff;
}
.contactWrap h2 {
	font-size : 32px;
	color : #000000;
	line-height ; 1.8;
	font-weight : 700;
	margin-bottom : 24px;
	border-bottom : 1px solid #000000;
}
.contactForm {
	width : 100%;
	margin : 0 auto;
}
.contactForm .precomm {
	font-size : 1rem;
	font-weight : 400;
}
.progress .step {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
}
.progress .step li {
	width : 29%;
	font-size : 1rem;
	color : #2db1c2;
	background-color : #ffffff;
	border : 1px solid #2db1c2;
	text-align : center;
	padding : 20px 0 24px 0;
	position : relative;
}
.progress .step li.n_arrow::after {
	content : "";
	position : absolute;
	top : 30px;
	right : -48px;
	width: 12px;
	height: 12px;
	margin: 0 10px;
	border-top: 2px solid #0b152b;
	border-right: 2px solid #0b152b;
	transform: rotate(45deg);
}
.progress .step li span {
	font-weight : bold;
}
.progress .step li.is-current {
	color : #ffffff;
	background-color : #2db1c2;
}
.contactForm dl {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : space-between;
	justify-content : space-between;
	width : 100%;
	word-wrap: break-word;
	border-bottom : 1px solid #abb5bf;
}
.contactForm dl.first {
	border-top : 1px solid #596e80;
}
.contactForm dl.last {
	border-bottom : 1px solid #596e80;
}
.contactForm dl.check {
	margin-bottom : 10px;
	padding-bottom : 10px;
	border-bottom : 1px dashed #bebebe;
}
.contactForm dt {
	display : -webkit-flex;
	display : flex;
	align-items: center;
	font-size : 1rem;
	color : #595959;
	font-weight : 500;
	width : 18%;
	text-align : left;
	position : relative;
	padding : 30px 10px;
	background-color : #eff4f8;
}
.contactForm dt.dp {
	background-color : #e2eaf5;
}
.contactForm dt p {
	position : relative;
	width : calc(100% - 44px);
}
.contactForm dd {
	font-size : 1rem;
	color : #595959;
	font-weight : 400;
	width : 82%;
	padding : 30px 0 30px 20px;
	word-wrap: break-word;
	box-sizing: border-box;
}
.contactForm dd.sels {
	padding : 20px 0 20px 20px;
}
.contactForm dd p {
	font-size : 0.9rem;
	color : #cbcbcb;
	font-weight : 400;
}
.contactForm dd p.dp {
	color : #565656;
}
.contactForm dd p.err {
	font-size : 0.9rem;
	color : #ff0000;
	font-weight : 400;
}
.contactForm dd p.tdfk {
	font-size : 1rem;
	color : #000000;
	font-weight : 400;
}
.contactForm dd.check {
	font-size : 1.1rem;
	color : #000000;
	font-weight : 400;
	padding : 30px 0 0 10px;
}
.contactForm dd .dfall p.name {
	width : 8em;
}
.contactForm dd .inp {
	width : calc(100% - 8em);
	position : relative;
}
.contactForm dd .inp.long {
	width : 100%;
	position : relative;
}
.contactForm dd .inp img {
	position : absolute;
	top : 10px;
	left : 12px;
}
.contactForm dd label {
	display : block;
	font-size : 1rem;
	width : auto;
	color : #595959;
	margin-right : 10px;
	line-height : 2.0;
}
.contactForm dd.sels label {
	display : inline-block;
	font-size : 1rem;
	width : auto;
	color : #595959;
	margin-right : 10px;
	line-height : 2.0;
	padding : 8px;
	background-color : #e2eaf6;
	margin : 0 8px 8px 0;
}
.contactForm dd label.inq {
	font-size : 1.05rem;
	color : #000000;
}
.contactForm dd label input {
	display : inline-block;
	margin-right : 10px;
	transform: scale(1.2);
}
.contactForm dt span  {
	position : absolute;
	top : 1px;
	right : -44px;
	display : inline-block;
	font-size : 0.9rem;
	color : #ffffff;
	font-weight : 700;
	background-color : #0164c9;
	line-height : 1.6;
	padding : 0 10px 2px 10px;
	border-radius : 4px;
	white-space: nowrap;
}
.contactForm dt span.hissu2  {
	top : 3px;
	right : -4px;
}
.contactForm form h3 {
	display : block;
	font-size : 1.1rem;
	color : #5a6f83;
	padding-left : 24px;
	line-height : 47px;
	background : url(../img/point.png) no-repeat top 18px left;
}
.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;
	color : #000000;
	text-align : center;
	margin-bottom : 36px;
}
.privWrap h4 {
	font-size : 1.15rem;
	font-weight : 700;
	color : #000000;
	margin-top : 24px;
}
.privWrap p {
	font-size : 1rem;
	font-weight : 400;
	color : #000000;
}
.privWrap dt {
	display : inline-block;
	vertical-align: top;
	width : 20px;
	font-size : 1rem;
	font-weight : 400;
	color : #000000;
}
.privWrap dd {
	display : inline-block;
	vertical-align: top;
	width : calc(100% - 30px);
	font-size : 1rem;
	font-weight : 400;
	color : #000000;
}
.progress .step span {
	display : inline-block;;
	margin-right : 12px;
}
.compMenu {
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : center;
	justify-content : center;
}
.compMenu li {
	width : 48%;
	max-width : 262px;
	margin : 0 1%;
	text-align : center;
}
.compMenu li a {
	display : block;
	width : 100%;
	font-size : 1.2rem;
	font-weight : 700;
	padding : 20px 0;
	border : 1px solid #eeeeee;
	background-color : #ffffff;
	color : #a7a7a7;
	transition: 0.3s;
}
.compMenu li span {
	display : block;
	width : 100%;
	font-size : 1.2rem;
	font-weight : 700;
	padding : 20px 0;
	border : 1px solid #2db1c2;
	background-color : #2db1c2;
	color : #ffffff;
}
.compMenu li a:hover {
	border : 1px solid #2db1c2;
	background-color : #2db1c2;
	color : #ffffff;
}
.compText {
	border-bottom : 2px solid #f1f1f1;
}
table.form2 {
	width : 100%;
	border-collapse: collapse;
	table-layout: fixed;
}
@media only screen and (max-width: 1200px) {
	.contactWrap h2 {
		font-size : calc(2.05vw + 11.4px);
		margin-bottom : 3.4vw;
	}
	.contactWrap p {
		font-size : calc(0.34vw + 11.9px);
	}
	.contactWrap p strong {
		font-size : calc(0.91vw + 13.1px);
	}
	.contactWrap p a {
		font-size : calc(0.68vw + 11.8px);
	}
	.progress .step li.n_arrow::after {
		right : calc(-3vw - 10px);
	}
}
@media only screen and (max-width: 860px) {
	.contactForm dt span  {
		top : 0px;
		right : -44px;
		font-size : 13px;
	}
	.contactForm dt span.hissu2  {
		top : 4px;
		right : -14px;
	}
}
@media only screen and (max-width: 800px) {
	.contactWrap  {
		width: calc(100% - 8vw);
		padding : 20px 4vw;
	}
	.contactWrap h3 {
		padding-bottom : 12px;
		margin-bottom : 40px;
	}
	.contactWrap h3 strong {
		font-size : 28px;
		padding-top : 6px;
	}
	.contactWrap .comm p {
		font-size : 18px;
		color : #000000;
		line-height : 1.8;
	}
	.compBottom  {
		margin-bottom : 12vw;
	}
	.contactForm dt span  {
		right : -40px;
	}
	.contactWrap dt {
		padding : 30px 50px 10px 0;
	}
	.contactForm dl {
		display : block;
		padding-bottom : calc(3vw + 10px);
	}
	.contactForm dt {
		display : block;
		font-size : 1.15rem;
		width : 100%;
		padding : 10px 0px;
		text-align : left;
		box-sizing: border-box;
	}
	.contactForm dd {
		display : block;
		width : 100%;
		padding : 10px 0px;
		box-sizing: border-box;
	}
	.privWrap  {
		padding : 3vw;
		font-size : 1rem;
	}
	a.submback {
		display : block;
		margin : 0 0 24px 0;
	}
	.contactForm dt span.hissu2  {
		top : 4px;
		right : 20px;
	}
}
@media only screen and (max-width: 680px) {
	.contactWrap dl {
		display : block;
		width : 100%;
		margin-bottom : 0px;
	}
	.contactWrap dt {
		display : block;
		width : calc(100% - 20px);
		padding : 10px;
		border-top : 1px solid #f9f9f9;
		text-align : left;
	}
	.contactWrap dd {
		display : block;
		width : calc(100% - 22px);
		padding : 10px;
		border-bottom : 1px solid #e5e8ed;
	}
	.contactForm dt span  {
		top : -3px;
	}
	.progress .step span {
		display : block;
		margin-right : 0;
	}
}
@media only screen and (max-width: 480px) {
	.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 {
		padding : 10px 3vw;
	}
	.contactForm dd {
		padding : 10px 3vw;
	}
	.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.n_arrow::after {
		right : calc(-3vw - 12px);
	}
	.contactForm dd {
		padding : 3vw 2vw;
	}
	.contactForm dd.sels {
		padding : 2vw;
	}
	.contactForm dd.sels label {
		margin-right : 5px;
		padding : 5px;
		margin : 0 5px 5px 0;
	}
}

.prev90 {
	position : relative;
	z-index : 95;
}
.rightTab {
	position : fixed;
	top : calc(120px + 20vh);
	right : 0;
	width : 58px;
	z-index : 96;
}
.rightTab a {
	display : block;
	width : 100%;
	text-align : center;
	font-size : 1.1rem;
	font-weight : 600;
	writing-mode: vertical-rl;
	text-orientation: upright;
	display: flex;
	align-items: center;
}
.rightTab a.p01 {
	display : none;
	background-color : #252525;
	color : #ffffff;
	padding : 24px 0;
}
.rightTab a.p02 {
	background-color : #06c655;
	color : #ffffff;
	padding : 24px 0;
}
.rightTab a.p02 span {
	padding-top : 12px;
}
.rightTab a.p01::before {
	content : "";
	display : inline-block;
	background : url(../img/free_d.png) no-repeat left center;
	width : 20px;
	height : 20px;
	background-size : 20px;
	margin: 0px 6px 0 0;
	position: relative;
 	top: 4px;
}
.rightTab a.p02::before {
	content : "";
	display : inline-block;
	background : url(../img/linelogo.png) no-repeat left center;
	width : 26px;
	height : 20px;
	background-size : 26px;
	margin: 0 2px 0 0;
	position: relative;
 	top: 4px;
}
@media only screen and (max-width: 800px) {
	.rightTab {
		top : auto;
		bottom : 0;
		right : 0;
		width : 100%;
		display : -webkit-flex;
		display : flex;
		-webkit-justify-content : space-between;
		justify-content : space-between;
		border-top : 1px solid #ffffff;
		z-index : 96;
	}
	.rightTab a {
		width : 100%;
		writing-mode : horizontal-tb;
		display: block;
	}
	.rightTab a.p01 {
		display : block;
		padding : 8px 0 14px 0;
	}
	.rightTab a.p02 {
		padding : 8px 0 14px 0;
	}
	.rightTab a.p02 span {
		padding-top : 0px;
	}
}

/*お問い合わせ*/

.contactForm select  {
	background-color : #ffffff;
	color : #595959;
	border : 1px solid #596e80;
	padding : 8px 12px;
	font-size : 1rem;
}
.contactForm option  {
	font-size : 1rem;
	padding : 3px;
}
.formBtn  {
	margin-bottom : 80px;
}
.form-field {
	background-color : #ffffff;
	border : 1px solid #596e80;
	color : #565656;
	padding : 8px 12px;
	font-size : 1rem;
	width: calc(100% - 60px);
}
.form-field.datepicker {
	padding : 8px 16px 8px 48px;
	width: calc(100% - 74px);
}
.form-herf {
	background-color : #ffffff;
	border : 1px solid #596e80;
	color : #565656;
	padding : 8px 12px;
	font-size : 1rem;
	width: calc(40% - 36px);
}
.form-mini {
	background-color : #ffffff;
	border : 1px solid #596e80;
	color : #565656;
	padding : 8px 12px;
	font-size : 1.1rem;
	width: 88%;
}
.form-minimam {
	background-color : #ffffff;
	border : 1px solid #596e80;
	color : #565656;
	padding : 8px 12px;
	font-size : 1.1rem;
	width: 4em;
}
.form-tel {
	background-color : #ffffff;
	border : 1px solid #cbcbcb;
	color : #000000;
	padding : 12px 16px;
	font-size : 1.1rem;
	width: 20%;
}
.form-mini.datepicker {
	padding : 8px 16px 8px 48px;
	width: 80%;
}
.sameaddr label {
	display : inline-block !important;
	padding : 2px 14px;
	background-color : #f3f3f3;
	color : #262626;
	font-size : 1rem;
}
.form-name {
	border-style : none;
	background-color : #f5f5f7;
	color : #252525;
	padding : 8px 16px;
	font-size : 1rem;
	width: calc(70% - 80px);
	max-width: 300px;
}
.form-long {
	border-style : none;
	background-color : #f5f5f7;
	color : #252525;
	padding : 6px;
	font-size : 1rem;
	width: calc(80% - 80px);
}
.seinen select {
	border-style : none;
	background-color : #f5f5f7;
	color : #252525;
	padding : 6px 12px;
	font-size : 1rem;
}
#oform .inp select {
	border-style : none;
	background: #ffffff;
	color : #252525;
	padding : 8px 16px;
	font-size : 1rem;
	width: calc(50% - 2px);
	border : 1px solid #d8d8d8;
}
.inputarea1  {
	border: 1px solid #ababab;
	color : #333333;
	padding : 6px;
	font-size : 16px;
}
span.hissu {
	display : inline-block;
	vertical-align: top;
	padding-left : 8px;
	padding-top : 6px;
	font-size  : 14px;
	color : #fe0000;
}
.submback {
	color : #8b8b8b;
	text-decoration: underline;
	transition: 0.3s;
}
.submback:hover {
	color : #000000;
}
.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;
}
.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;
}
.submit-container {
	width: 230px;
	text-align: center;
	position : relative;
}
.submit-button {
	width: 230px;
	color: #ffffff;
	border : none;
	padding: 16px 0 18px 0;
	font-size : 1rem;
	letter-spacing: 2px;
	font-weight: 500;
	text-decoration: none;
	vertical-align: middle;
	cursor : pointer;
	background-color : #0164c9;
	position : relative;
	transition: 0.3s;
}
.submit-container::after {
	content : "";
	position : absolute;
	top : 23px;
	right : 16px;
	width: 10px;
	height: 10px;
	margin: 0 10px;
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	transform: rotate(45deg);
}
.submit-button:hover  {
	opacity : 1;
	background-color : #2db1c2;
}
.submit-button2 {
	width: 304px;
	color: #FFF;
	border : none;
	padding: 20px 0 24px 0;
	font-size : 18px;
	font-weight: bold;
	text-decoration: none;
	vertical-align: middle;
	cursor : pointer;
	background : url(../img/subm_back2.png) no-repeat 0 0;
}
.submit-button2:hover  {
	opacity : 0.7;
}
.submit-return {
	width: 160px;
	color: #707070;
	border : none;
	padding: 8px 0;
	font-size : 1rem;
	font-weight: 400;
	text-decoration: none;
	cursor : pointer;
	background-color : #ffffff;
	border : 1px solid #bebebe;
	position : relative;
	transition: 0.3s;
	margin-left : 13px;
	margin-top : 10px;
}
.submit-return:hover  {
	color: #000000;
	background-color : #bebebe;
}
.contactTop dl {
	width : 100%;
}
.contactTop dl dt {
	font-size : 32px;
	font-weight : 600;
	color : #1a1a1a;
}
.contactTop dl dt::after {
	content : "";
	display : block;
	border-left : 2px solid #1a1a1a;
	width : 1px;
	height : 60px;
	margin : 20px auto;
}
.contactTop dl dd {
	font-size : 1rem;
	font-weight : 400;
	color : #1a1a1a;
	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 0 auto;
}
.telContactTitle {
	font-size : 1.3rem;
	font-weight : 600;
	color : #1a1a1a;
}
.topTelWrap a {
	font-size : 80px;
	font-weight : bold;
	color : #1a1a1a;
}
.topTelWrap span {
	display : block;
	font-size : 1rem;
	font-weight : 300;
	color : #1a1a1a;
}
.pp-container  {
	margin : 0 0 12px 0;
	text-align : left;
	color : #404040;
	padding : 16px 0 0 20px;
}
.pp-container h4 {
	font-size : 16px;
	text-align : center;
	margin-bottom : 16px;
	color : #000000;
}
.pp-container p {
	font-size : 14px;
	text-align : left;
	margin-bottom : 16px;
	color : #000000;
}
.pp-container a {
	display : block;
	font-size : 13px;
	text-align : left;
}
.pp-check  {
	text-align : left;
	font-size : 1rem;
	font-weight : 500;
	color : #000000;
	margin : 0 20px 10px 20px;
}
.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;
		font-size : 1.4rem;
		
	}
	.contactTop dl dd {
		display : block;
		text-align : left;
		width : 100%;
		padding : 1.5vw 0 0 0;
	}
	.contactTop dl dt::after {
		height : 9vw;
		margin : 3vw auto;
	}
}
@media only screen and (max-width: 800px) {
	.form-field {
		width: calc(100% - 40px);
	}
	.form-mini {
		width: 90%;
	}
}
@media only screen and (max-width: 480px) {
	.form-field {
		padding : 5px;
		font-size : 14px;
		width: 96%;
	}
	.form-mini {
		padding : 5px;
		font-size : 14px;
		width: 90%;
	}
	.form-entry {
		padding : 5px;
		font-size : 14px;
		width: 96%;
	}
	.form-name {
		padding : 5px;
		font-size : 14px;
		width: calc(88% - 40px);
	}
	.form-long {
		padding : 5px;
		font-size : 14px;
		width: calc(92% - 40px);
	}
	.form-tel {
		padding : 5px;
		font-size : 14px;
		width: 20%;
	}
	.inputarea1  {
		padding : 5px;
		font-size : 14px;
	}
	.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 {
		width: 100%;
		text-align: center;
		position : relative;
	}
	.submit-button {
		width: 94%;
		padding: 14px 0 16px 0;
		font-size : 16px;
	}
}

/* フッター包括---------------------------*/
.map {
	font-size : 0;
}
footer {
	position: relative;
	z-index: 3;
	background-color: #ffffff;
	padding-bottom : 40px;
	border-bottom : 40px solid #0164c9;
}
.footInner {
	width : 100%;
	box-sizing: border-box;
}
.footInner2 {
	border-top : 2px solid #ededed;
}
.footRight {
	width : 100%;
	max-width : 1460px;
	margin : 0 auto;
	position : relative;
	padding : 0 10px;
	box-sizing: border-box;
}
.footRight .footLeftInner {
	width : 60%;
	font-weight : 500;
}
.footRight .footRightInner {
	width : 40%;
	display : -webkit-flex;
	display : flex;
	-webkit-justify-content : flex-end;
	justify-content : flex-end;
	align-items: flex-start;
}
.footRight .footRightInner img {
	width : auto;
}
.footRight .footRightInner p {
	padding : 0 2%;
	box-sizing: border-box;
}
.mgt0 {
	margin-top: 0 !important;
	padding: 0 !important;
}
.footMenu {
	width : 50%;
	max-width : 700px;
	margin : 0 auto;
}
.footMenu ul {
	width : 33%;
	max-width : 148px;
}
.footMenu ul li {
	display : block;
	line-height : 1.0;
	margin-bottom : 30px;
}
.footMenu ul a {
	display : block;
	position : relative;
	top : 1px;
	font-size : 1.1rem;
	color : #0164c9;
	font-weight : 700;
	line-height : 32px;
	transition: 0.3s;
}
.footMenu ul a:hover {
	color : #000000;
}
.footInner .footAdders {
	width : 50%;
	box-sizing: border-box;
}
.footAdders p {
	color : #000000;
	font-weight : 400;
	line-height : 1.8;
}
.footAdders p img {
	position : relative;
	top : 3px;
}
.footAddr a {
	color : #595959;
	font-weight : 500;
	text-decoration: underline;
}
.footAddr a:hover {
	color : #0164c9;
	text-decoration: none;
}
.footAdders p.footMess {
	color : #8b8b8b;
	font-weight : 500;
}
.footEig a.gmap {
	display : block;
	width : 160px;
	font-size : 14px;
	line-height : 48px;
	text-align : center;
	color : #ffffff;
	background-color : #404040;
	margin : 0 30px 0 0;
	transition: 0.3s;
}
.footEig a.insta {
	color : #000000;
	transition: 
}
.footEig a.insta span {
	display : inline-block;
	position : relative;
	letter-spacing: 1px;
	line-height : 48px;
	padding-left : 6px;
	transition: 0.3s;
}
.footEig a.insta img {
	position : relative;
	top : 4px;
}
.footEig a.gmap:hover {
	background-color : #000000;
}
.footEig a.insta:hover {
	color : #252525;
}
.copyright {
	text-align: right;
	font-size: 0.9rem;
	font-weight : 400;
	color: #0164c9;
}
.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;
}
.footEig br {
	display : none;
}
.footlogo img.logo {
	width : 60%;
	max-width : 282px;
}
.footlogo strong {
	color : #252525;
}
.snsicon {
	width : 150px;
}
br.pc640 {
	display : none;
}
@media only screen and (max-width: 1400px) {
	.footMenu ul a {
		padding : 0 50px 0 1.2vw;
		white-space: nowrap;
		font-size : 1rem;
	}
}
@media only screen and (max-width: 1200px) {
	.footlogo .pdb80 {
		padding-bottom : 0 !important;
	}
}
@media only screen and (max-width: 720px) {
	.footInner .footAdders {
		width : 100%;
	}
	.footMenu ul {
		display : none;
	}
	.copyright {
		font-size : 12px;
		margin-top : 6vw !important;
		text-align : center !important;
	}
	.snsicon {
		margin-left : auto;
		margin-right : auto;
	}
	.footAdders {
		text-align : center;
	}
	.footAdders p.footAddr {
		display : inline-block;
		text-align : left;
	}
	.footAdders p.footName {
		display : none;
	}
	.footAdders p.footEig {
		display : none;
	}
}
@media only screen and (max-width: 640px) {
	.footRight .footLeftInner {
		width : 100%;
		text-align: center;
	}
	.footMenu {
		padding-top : 0 !important;
	}
	.footMenu p {
		margin-top : 0 !important;
	}
	.footMenu p img {
		height : 16vw;
		max-height : 79px;
	}
	.footEig {
		-webkit-justify-content : center;
		justify-content : center;
	}
	.footlogo img {
		max-width: 70vw;
	}
	.footInner .footAdders {
		width : 100%;
		height : auto;
		padding-top : 5vw;
	}
	.footlogo em {
		width: calc(4vw + 22px);
		top: -2.2vw;
		margin: 0 2vw;
	}
	.footRight {
		width : 100%;
		height : auto;
		padding-bottom : 16px;
		margin-top : 4vw;
	}
	.footAdders p {
		font-size : calc(0.62vw + 10.0px);
	}
	br.pc640 {
		display : block;
	}
	.fs60-28k {
		font-size: calc(4vw + 14px) !important;
	}
	.copyright {
		text-align: center;
	}
	.footRight .footRightInner {
		-webkit-justify-content : center;
		justify-content : center;
		align-items: center;
		margin : 0 auto;
	}
}
@media only screen and (max-width: 480px) {
	footer.pdt60 {
		padding-top : 0 !important;
	}
	.footlogo.pdt10 {
		padding-top : 8vw !important;
	}
	.footRight .footRightInner img {
		width : 35%;
	}
}
@media only screen and (max-width: 400px) {
	.footlogo em {
		top: calc(-2.2vw - 3px);
	}
}

/* 管理画面フッター */
#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;
}

.wrapPageTopPc  {
    position: fixed;
    bottom : 90px;
    right: 2px;
    z-index: 99;
	text-align : center;
    width : 64px;
	cursor : pointer;
}
.wrapPageTopPc p {
    text-align : center;
	background-color : #000000;
	font-size : 16px;
	font-weight : bold;
	color : #ffffff;
	border : 2px solid #000000;
	border-radius : 14px;
	line-height : 1.4;
	padding : 8px 0 7px 0;
	transition: 0.4s;
}
.wrapPageTopPc p span {
	display : block;
	font-size : 16px;
}
.wrapPageTopPc p:hover {
	background-color : #ffffff;
	color : #000000;
}

.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;
}
