@charset "UTF-8";
/* base
**************************/
* {
  box-sizing: border-box;
  font-family: 'Noto Sans CJK JP', 'Noto Sans JP', sans-serif;
  word-break: break-all;
  word-wrap: break-word;
}

body {
  width: 100%;
  min-width: 1400px;
  position: relative;
}

p {
  font-size: 1.8rem;
  line-height: 1.75;
}

a {
  color: inherit;
  font-weight: inherit;
}

a:hover {
  opacity: 1;
}

sub {
  font-size: 0.5em;
}

/* layout
**************************/
.pc {
  display: block;
}

.sp {
  display: none;
}

.txtCenter {
  text-align: center;
}

.txtRight {
  text-align: right;
}

.txtOrange {
  color: #d67326;
}

.txtGreen {
  color: #005b3a;
}
.anc_link{
	padding-top: 100px;
	margin-top: -100px;
}
@media only screen and (max-width: 767px) {
	.anc_link{
		padding-top: 0;
		margin-top: 0;
	}
}

/* contents
**************************/
.wrapper {
  width: 100%;
  padding-top: 200px;
}

.contentsWrapper {
  width: 100%;
}

.contentsWrapper + .contentsWrapper {
  margin-bottom: 100px;
}

.innerContents {
  margin: 0 auto 100px;
  position: relative;
}

.innerBlock {
  width: 1250px;
  margin: auto;
  padding: 0 25px;
}

.innerBlock + .innerBlock {
  margin-top: 100px;
}

.contentsHead {
  color: #005b3a;
  font-size: 5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
  margin: 0 auto 50px;
  padding: 40px 25px;
}

.contentsHead span {
  display: block;
  font-size: 3.6rem;
  font-weight: 500;
  margin-top: 15px;
}

.contentsHead02 {
  color: #005b3a;
  font-family: 'Open Sans', sans-serif;
  font-size: 6rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-align: center;
  margin: 0 auto 50px;
  padding: 0 25px;
}

.contentsHead02 span {
  display: block;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-top: 30px;
}

.blockTitle {
  color: #005b3a;
  font-size: 3.6rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-align: center;
  margin: 0 auto 50px;
}

.blockTitle:nth-of-type(n + 2) {
  margin-top: 100px;
}

.blockTitle02 {
  color: #005b3a;
  font-size: 2.8rem;
  font-weight: 500;
  text-align: center;
  margin-bottom: 50px;
}

.lede {
  color: #005b3a;
  font-size: 2.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.75;
  margin-bottom: 30px;
}

/* mainVisual
**************************/
.mainVisual {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 1400px;
  height: 300px;
  margin: auto;
}

.mainVisual .titleBlock {
  text-align: center;
}

.mainVisual .mainTitle {
  color: #005b3a;
  font-size: 6rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-shadow: 5px 5px 10px #fff, 5px -5px 10px #fff, -5px -5px 10px #fff, -5px 5px 10px #fff;
}

.mainVisual .subTitle {
  background-color: rgba(0, 91, 58, 0.6);
  display: inline-block;
  width: 400px;
  color: #fff;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  margin: 0 auto 20px;
  padding: 11px 10px;
}

/* breadCrumb
**************************/
.breadCrumb {
  margin: 15px auto;
}

.breadCrumb li {
  display: inline;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

.breadCrumb li + li:before {
  content: '>';
  margin: 0 7px;
}

.breadCrumb a {
  color: #005b3a;
  text-decoration: none;
}

.breadCrumb a:hover {
  color: #333;
  text-decoration: underline;
  opacity: 1;
}

/* button
**************************/
.btnArea {
  display: flex;
}

.btnArea.moreBtn {
  width: 360px;
  margin: 70px auto 0;
}

.btnArea.moreBtn a {
  min-height: 80px;
}

.btnArea a {
  background-color: rgba(255, 255, 255, 0.9);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  color: #000;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  padding: 21px 25px;
  word-wrap: break-word;
  position: relative;
  /*&.round {
			background-color: #f0f0e4;
			border-radius: 100px;
			box-shadow: 0 2px 0 rgba(34,24,21,0.05);
			justify-content: flex-start;
			text-align: left;
		}*/
}

.btnArea a:after {
  content: none;
  background: url(../img/icon_arrow.png) no-repeat;
  background-size: contain;
  display: inline-block;
  width: 30px;
  height: 5px;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  right: -10px;
  margin-top: -2px;
}

.btnArea .green {
  border: 5px solid #c2e305;
  box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.4);
}

.btnArea .arrRight {
  background-color: #f0f0e4;
  border: 1px solid #000;
  min-height: 60px;
  line-height: 1.3;
  padding: 16px 15px 16px 45px;
}

.btnArea .arrRight:before {
  content: '';
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  width: 9px;
  height: 9px;
  transform: rotate(45deg);
  margin: auto;
  position: absolute;
  top: 50%;
  left: 15px;
  margin-top: -4px;
}

.btnArea .arrRight span {
  line-height: 1.3;
}

.btnArea .arrBottom {
  background-color: #f0f0e4;
  border: 1px solid #000;
}

.btnArea .arrBottom:before {
  content: '';
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  width: 9px;
  height: 9px;
  transform: rotate(135deg);
  margin: auto;
  position: absolute;
  top: 50%;
  left: 20px;
  margin-top: -9px;
}

.btnArea .down::before {
  content: '';
  background-color: #005b3a;
  border-radius: 100%;
  width: 20px;
  height: 20px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
}

.btnArea .down::after {
  content: '';
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  width: 6px;
  height: 6px;
  transform: rotate(135deg);
  margin: auto;
  position: absolute;
  top: -3px;
  bottom: 0;
  right: 26px;
}

/* colBlock
**************************/
.colBlock {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: auto;
}

.colBlock.col2 > li {
  width: 580px;
}

.colBlock.col3 {
  justify-content: center;
}

.colBlock.col3 > li {
  width: 360px;
  margin-right: 60px;
}

.colBlock.col3 > li:nth-child(3n), .colBlock.col3 > li:last-child {
  margin-right: 0;
}

.colBlock.col3 > li:nth-child(n+4) {
  margin-top: 50px;
}

.colBlock.col5 > li {
  width: 220px;
}

.bdrBox > li {
  border: 1px solid #a5c300;
  padding: 30px 40px 40px;
}
.mrl_auto {
	margin-right: auto;
	margin-left: auto;
}

.bdrBox .boxTitle {
  color: #005b3a;
  font-size: 2.8rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 30px;
}

.bdrBox .boxTitle span {
  display: block;
  color: #849b03;
  font-size: 1.8rem;
}

/* estimateBtnArea
**************************/
.estimateBtnArea {
  margin: 35px auto;
}

.estimateBtnArea .colBlock li {
  width: 570px;
}

.estimateBtnArea .btnArea {
  height: 150px;
}

.estimateBtnArea .btnArea a {
  color: #fff;
  font-size: 2.2rem;
  font-weight: 500;
  padding: 1px;
}

.estimateBtnArea .btnArea a .txt {
  width: 200px;
}

.estimateBtnArea .btnArea a .txt span {
  display: block;
  font-size: 1.8rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  margin-top: 5px;
}

.estimateBtnArea .btnArea a img {
  height: 100%;
  margin: 0 0 0 auto;
}

.estimateBtnArea .btnArea .high {
  background-color: #f8823d;
}

.estimateBtnArea .btnArea .low {
  background-color: #4e7ee9;
}

/* contactBtnArea
**************************/
.contactBtnArea {
  margin: 35px auto;
}

.contactBtnArea .colBlock li {
  align-self: center;
  width: 570px;
  text-align: center;
}

.contactBtnArea .btnArea {
  height: 150px;
  /*.mail {
			font-size: 2rem;
			letter-spacing: 0.05em;
			span {
				padding-left: 56px;
				&:before {
					background: url(../img/icon_mail.png) no-repeat;
					background-size: contain;
					width: 44px;
					height: 35px;
					margin-top: -15px;
				}
			}
		}*/
  /*.tel {
			font-size: 2.4rem;
			letter-spacing: 0.1em;
			pointer-events: none;
			span {
				padding-left: 41px;
				&:before {
					background: url(../img/icon_tel.png) no-repeat;
					background-size: contain;
					width: 26px;
					height: 36px;
					margin-top: -16px;
				}
			}
		}*/
}

.contactBtnArea .btnArea a {
  flex-direction: column;
  /*span {
				position: relative;
				&:before {
					content: '';
					display: inline-block;
					vertical-align: middle;
					position: absolute;
					top: 50%;
					left: 0;
				}
			}*/
}

.contactBtnArea .btnArea .mail p {
  font-size: 2.2rem;
}

.contactBtnArea .btnArea .mail span {
  font-size: 1.8rem;
}

.contactBtnArea .btnArea .tel {
  border-color: #ccc;
  padding-left: 60px;
  pointer-events: none;
}

.contactBtnArea .btnArea .tel:before {
  content: none;
}

.contactBtnArea .btnArea .tel:after {
  content: '';
  background: url(../img/icon_tel.png) no-repeat center center;
  background-size: contain;
  display: block;
  width: 34px;
  height: 47px;
  position: absolute;
  top: 50%;
  left: 20px;
  margin-top: -24px;
}

.contactBtnArea .btnArea .tel span {
  font-size: 3rem;
  font-weight: 700;
}

.contactBtnArea .btnArea .tel .note {
  font-size: 1.6rem;
}

.contactBtnArea .txtArea {
  font-size: 1.8rem;
  text-align: center;
}

.contactBtnArea .txtArea .mail {
  text-decoration: none;
}

.contactBtnArea .txtArea .mail:hover {
  text-decoration: underline;
  opacity: 1;
} 
.contactBtnArea .btnArea table.guidance {
	font-size: 15px;
	margin-top: 10px;
	line-height: 1.2;
	text-align: center;
}
.contactBtnArea .btnArea table.guidance th,
.contactBtnArea .btnArea table.guidance td{
	display: inline-block;
}
@media only screen and (max-width: 767px){
	.contactBtnArea .btnArea table.guidance {
		font-size: 12px;
		line-height: 1.4;
	}
	.contactBtnArea .btnArea table.guidance th,
	.contactBtnArea .btnArea table.guidance td{
		width: 100%;
		display: block;
	}
}


/* caseStudyList
**************************/
.caseStudyList {
  width: 1160px;
}

.caseStudyList li {
  background-color: transparent;
  border: 1px solid #d3d3d3;
  display: flex;
  flex-direction: column;
  width: 450px;
  margin: 0 50px;
  padding: 0;
}

.caseStudyList .innerBox {
  background-color: #fff;
  border-top: none;
  display: flex;
  flex-direction: column;
  height: 930px;
}

.caseStudyList .tabArea {
  width: 100%;
}

.caseStudyList .tabArea div {
  width: 50%;
  color: #fff;
  font-size: 1.8rem;
  text-align: center;
  padding: 16px 0;
}

.caseStudyList .tabArea .high {
  background-color: #f8823d;
  float: left;
}

.caseStudyList .tabArea .low {
  background-color: #4e7ee9;
  float: right;
}

.caseStudyList .tabArea .bio {
  background-color: #005b3a;
  float: left;
}

.caseStudyList .imgArea {
  min-height: 350px;
}

.caseStudyList .imgArea a {
  display: block;
}

.caseStudyList .txtArea {
  padding: 15px 20px;
}

.caseStudyList .txtArea dt {
  font-size: 2.2rem;
  line-height: 1.7;
}

.caseStudyList .txtArea dt span {
  font-size: 2.8rem;
  padding-right: 0.2em;
}

.caseStudyList .txtArea dd {
  display: flex;
  flex-wrap: wrap;
  margin: 10px 0 0;
}

.caseStudyList .txtArea .serviceName {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 50%;
  margin: 0 0 10px;
}

.caseStudyList .txtArea .serviceName .txt {
  color: #a37500;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

.caseStudyList .txtArea .serviceName .txt span {
  display: block;
  font-size: 1.3rem;
  margin-top: 0.3em;
}

.caseStudyList .txtArea .serviceName .img {
  background-color: #f0f0e4;
  display: flex;
  align-items: center;
  width: 60px;
  height: 60px;
  text-align: center;
  margin: 0 0 0 0.5em;
  padding: 8px 7px;
}

.caseStudyList .txtArea .serviceName .img img {
  flex-shrink: 0;
  max-height: 100%;
  margin: auto;
}

.caseStudyList .txtArea p {
  font-size: 1.6rem;
}

.caseStudyList .btnArea {
  margin-top: auto;
  padding: 15px 20px;
}

.caseStudyList .slick-prev {
  left: -40px;
}

.caseStudyList .slick-next {
  right: -40px;
}

.caseStudyList .slick-prev:before,
.caseStudyList .slick-next:before {
  border: 1px solid #2d2d2d;
  box-sizing: border-box;
}

/* serviceList
**************************/
.serviceList li {
  display: flex;
  flex-direction: column;
}

.serviceList .electricity .linkArea {
  border-left-color: #005b3a;
}

.serviceList .electricity .linkArea:before {
  background-color: #005b3a;
}

.serviceList .linkArea {
  background-color: #f0f0e4;
  border-left: 10px solid #a37500;
  display: flex;
  flex-direction: column;
  min-height: 240px;
  text-align: center;
  text-decoration: none;
  padding: 30px 0 15px;
  position: relative;
}

.serviceList .linkArea:before, .serviceList .linkArea:after {
  content: '';
  position: absolute;
  top: 50%;
}

.serviceList .linkArea:before {
  content: '';
  background-color: #a37500;
  width: 25px;
  height: 50px;
  right: 0;
  margin-top: -25px;
}

.serviceList .linkArea:after {
  content: '';
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  width: 10px;
  height: 10px;
  transform: rotate(45deg);
  right: 7px;
  margin-top: -5px;
}

.serviceList .linkArea:hover {
  border-left-color: #005b3a;
}

.serviceList .linkArea:hover:before {
  background-color: #005b3a;
}

.serviceList .linkArea .img {
  height: 95px;
  margin-bottom: 10px;
}

.serviceList .linkArea .img img {
  max-height: 100%;
}

.serviceList .linkArea .txt {
  font-size: 2rem;
  line-height: 1.2;
}

.serviceList .linkArea .txt span {
  display: block;
  color: #005b3a;
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 5px;
}

.serviceList .txtArea {
  padding: 20px 10px;
}

.serviceList .txtArea > * {
  word-break: normal;
  word-wrap: normal;
}

.serviceList .btnArea {
  margin-top: auto;
  padding: 0 10px;
}

.serviceList .btnArea a {
  text-align: left;
  min-height: 80px;
}

/* faqList
**************************/
.faqList dl {
  border: 1px solid #a5c300;
  font-size: 1.8rem;
  position: relative;
}

.faqList dl + dl {
  margin-top: 24px;
}

.faqList dl dt, .faqList dl dd {
  padding: 25px 52px 25px 80px;
  line-height: 1.8;
  position: relative;
}

.faqList dl dt {
  font-weight: bold;
  cursor: pointer;
  position: relative;
}

.faqList dl dt::before {
  content: '';
  background-color: #005b3a;
  border-radius: 100%;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 30px;
  margin: auto;
}

.faqList dl dt::after {
  content: '';
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  width: 6px;
  height: 6px;
  transform: rotate(135deg);
  position: absolute;
  top: -3px;
  bottom: 0;
  right: 36px;
  margin: auto;
}

.faqList dl dt > span {
  position: relative;
  font-weight: bold;
}

.faqList dl dt > span::before {
  position: absolute;
  font-size: 3rem;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 24px;
  height: 37px;
  line-height: 1;
  left: -42px;
  content: "Q";
  color: #005b3a;
  font-weight: normal;
}

.faqList dl dt .new {
  display: inline-block;
  margin-left: 10px;
  padding: 0 30px;
  color: #fff;
  font-weight: 500;
  line-height: 1.7;
  border-radius: 15px;
  background-color: #589279;
}

.faqList dl dt.open::after {
  transform: rotate(-45deg);
  top: 3px;
}

.faqList dl dt.open + dd {
  display: block;
}

.faqList dl dd {
  display: none;
  border-top: 1px solid #a5c300;
  background-color: #f4f9d9;
}

.faqList dl dd a {
  color: #005b3a;
  text-decoration: none;
}

.faqList dl dd a:hover {
  text-decoration: underline;
}

.faqList dl dd a.linkArrow::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 0.5em 0.15em 0;
  border-top: 2px solid #005b3a;
  border-right: 2px solid #005b3a;
  transform: rotate(45deg);
}

.faqList dl dd .enq {
  display: none;
  /*display: flex;*/
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-top: 30px;
  padding: 20px 30px;
  background: #fff;
}

.faqList dl dd .enq .btn a {
  border: 1px solid #000;
  display: inline-block;
  width: 200px;
  padding: 4px 10px;
  color: #000;
  font-weight: 500;
  text-align: center;
}

.faqList dl dd .enq .btn a.good {
  margin-right: 10px;
}

.faqList dl dd p:nth-of-type(n+2) {
  margin-top: 1em;
}

.faqList dl dd::before {
  position: absolute;
  font-size: 3rem;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 24px;
  height: 37px;
  line-height: 1;
  left: 42px;
  content: "A";
  color: #d67326;
}

/* column
**************************/
.columnTitle {
  color: #005b3a;
  font-size: 2.4rem;
  text-align: center;
}

.columnTitle span {
  font-weight: 500;
  padding-left: 60px;
  position: relative;
}

.columnTitle span:before {
  content: '';
  background: url(../img/icon_column.png) no-repeat;
  background-size: contain;
  width: 40px;
  height: 38px;
  position: absolute;
  bottom: 5px;
  left: 0;
}

.columnList {
  margin-top: 40px;
}

.columnList.colBlock {
  justify-content: center;
}

.columnList li {
  padding: 0 3em;
}

.columnList a {
  color: #000d4f;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  text-decoration: none;
  position: relative;
}

.columnList a:before {
  content: '';
  border-top: 1px solid #000d4f;
  border-right: 1px solid #000d4f;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: -1em;
  margin-top: -3px;
}

.columnList a:hover {
  opacity: 1;
}

.columnList a:hover span {
  border-bottom: none;
}

.columnList a span {
  border-bottom: 2px solid #a3a5b4;
  line-height: 1.7;
}

/*--------------------200828追加-----------------------*/

.main_caption {
  max-width: 1400px;
  margin: auto;
	line-height: 2.7;
}

@media only screen and (min-width: 768px) {
	#column .interview_img{
		width: 35%;
		margin-left: 30px;
	}
}
@media (max-width: 767px) {
	#column .interview_img{
		width: 100%;
		text-align: center;
		margin-top: 15px;
	}
	#column .interview_img img{
		width: 75%;
	}
}

/*--------------------200828追加ここまで-----------------------*/

/* newsArea
**************************/
.newsArea li {
  display: flex;
}

.newsArea li + li {
  margin-top: 15px;
}

.newsArea .detailArea p {
  display: inline-block;
  font-family: 'Open Sans', 'Noto Sans CJK JP', 'Noto Sans JP', sans-serif;
  font-size: 2rem;
  font-style: italic;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
}

.newsArea .detailArea .date {
  padding-right: 15px;
}

.newsArea .detailArea .category {
  background-color: #9d780c;
  min-width: 140px;
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
  padding: 7px 5px 6px;
}

.newsArea .detailArea .category.tagRed {
  background-color: #f00;
}

.newsArea .detailArea .category.tagGreen {
  background-color: #005b3a;
}

.newsArea .txtArea {
  width: 910px;
  color: #000d4f;
  font-size: 1.6rem;
  line-height: 1.875;
  text-decoration: underline;
  margin: 0 0 0 auto;
}

.newsArea .txtArea p {
  font-size: 1.6rem;
}

.newsList {
  padding: 70px 0 0;
}

.newsList .newsArea .detailArea .date {
  padding-right: 15px;
  padding-top: 5px;
}

.newsList .newsArea .txtArea {
  width: 1060px;
}

.newsList .btn {
  text-align: center;
  margin: 35px 0 0;
}

.newsList .btn a {
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  text-decoration: none;
  position: relative;
}

.newsList .btn a::before {
  content: '';
  border-top: 1px solid #000d4f;
  border-right: 1px solid #000d4f;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: -1em;
  margin-top: -3px;
}

.newsList .btn a span {
  border-bottom: 2px solid #a3a5b4;
  line-height: 1.7;
}

/* indentList
**************************/
.indentList li {
  font-size: 1.8rem;
  line-height: 1.3;
  text-indent: -1.3em;
  padding-left: 1.3em;
}

.indentList li:nth-of-type(n+2) {
  margin-top: 0.5em;
}

.indentList li span {
  padding-right: 0.5em;
}

.listCenter {
  display: flex;
  justify-content: center;
}

.annoArea {
  margin: 15px 0 0;
}

.annoArea li {
  font-size: 1.6rem;
  line-height: 1.75;
}

.annoArea li span {
  padding-right: 0.3em;
}

.normalList {
  padding-left: 1em;
  text-indent: -1em;
}

.numberList {
  margin-top: 40px;
}

.numberList > li {
  text-indent: -2.5em;
  padding-left: 2.5em;
}

.numberList > li:nth-of-type(n+10) {
  margin-left: -0.5em;
}

.numberList > li span {
  padding-right: 0;
}

.dataList {
  margin-top: 70px;
}

.dataList > dt {
  display: flex;
  color: #005b3a;
  font-size: 2.8rem;
  font-weight: 500;
  margin-bottom: 30px;
}

.dataList > dt span {
  padding-right: 0.5em;
}

.dataList > dd {
  font-size: 1.8rem;
  line-height: 1.75;
  margin-bottom: 50px;
}

/* contactList
**************************/
.contactList {
  margin: 45px auto;
}

.contactList .contactArea {
  background-color: #f0f0e4;
  border: 1px solid #cdcdcb;
  display: block;
  color: #000;
  text-align: center;
  text-decoration: none;
  padding: 10px 70px 20px 100px;
  position: relative;
}

.contactList .contactArea::before {
  content: '';
  background: url(../img/icon_tel.png) no-repeat center center/contain;
  display: block;
  width: 34px;
  height: 47px;
  position: absolute;
  top: calc( (100% - 47px) / 2);
  left: 20px;
}

.contactList .contactArea .tel {
  display: block;
  font-size: 3rem;
  font-weight: bold;
}

.contactList .contactArea .receptionTime {
  line-height: 1.3;
}
.contactList .contactArea table.guidance {
	font-size: 15px;
	margin-top: 10px;
	line-height: 1.2;
	text-align: left;
}
.contactList .contactArea table.guidance th{
	width: 6.6em;
}
@media only screen and (max-width: 767px){
	.contactList .contactArea table.guidance {
		font-size: 12px;
		line-height: 1.4;
	}
	.contactList .contactArea table.guidance th,
	.contactList .contactArea table.guidance td{
		width: 100%;
		display: block;
	}
}

/* exampleList
**************************/
.exampleList {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 40px auto 35px;
  padding-bottom: 46px;
}

.exampleList.col3 {
  max-width: 895px;
}

.exampleList.col3 li {
  width: calc( (100% - 50px) / 3);
}

.exampleList.col3 li:nth-of-type(n+4) {
  margin-top: 60px;
}

.exampleList.col4 li {
  width: calc( (100% - 50px) / 4);
}

.exampleList.col4 li:nth-of-type(n+5) {
  margin-top: 60px;
}

.exampleList li {
  position: relative;
}

.exampleList li .block .ttl {
  position: relative;
  width: 100%;
  padding-left: 3em;
  color: #fff;
  font-size: 2rem;
  text-align: center;
  background: #005b3a;
  border-radius: 5px 5px 0 0;
}

.exampleList li .block .ttl span {
  position: absolute;
  left: 6px;
  top: 6px;
  padding: 4px 12px 6px;
  font-size: 1.4rem;
  line-height: 1;
  background: #4d8d75;
}

.exampleList li .block img {
  width: 100%;
}

.exampleList li .voltage {
  position: absolute;
  bottom: 5px;
  left: 5px;
  color: #fff;
  font-size: 1.4rem;
  line-height: 2;
  padding: 0 5px;
}

.exampleList li .voltage.high {
  background-color: #f8823d;
}

.exampleList li .voltage.low {
  background-color: #4e7ee9;
}

.exampleList li .year {
  position: absolute;
  right: -12px;
  bottom: -46px;
  display: inline-block;
  width: 122px;
  height: 122px;
  padding: 20px 5px;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
  border-radius: 50%;
  background: #849b03;
}

.exampleList li .year > span {
  line-height: 1;
}

.exampleList li .year > span:nth-of-type(1) {
  font-size: 2.2rem;
  font-weight: bold;
}

.exampleList li .year > span:nth-of-type(2) {
  font-size: 1.4rem;
}

.exampleList li .year > span:nth-of-type(3) {
  font-size: 1.6rem;
}

.exampleList li .year > span:nth-of-type(4) {
  font-size: 1.7rem;
}

.exampleList li .year > span:nth-of-type(4) > span:nth-of-type(1) {
  font-weight: bold;
}

.exampleList li .year > span:nth-of-type(4) > span:nth-of-type(2) {
  font-size: 1.1rem;
}

/* btnTel
**************************/
.btnTel {
  pointer-events: none;
}

/* addService
**************************/
.charge .addService, .top .addService {
  margin-top: 35px;
}

.charge .addService li, .top .addService li {
  display: flex;
  flex-wrap: wrap;
  width: 370px;
  margin-right: 45px;
  padding: 30px 25px 40px !important;
}

.charge .addService li:nth-of-type(3), .top .addService li:nth-of-type(3) {
  margin-right: 0 !important;
}

.charge .addService li:nth-child(n+4), .top .addService li:nth-child(n+4) {
  margin-top: 45px !important;
}

.charge .addService li .boxTitle, .top .addService li .boxTitle {
  width: 100%;
}

.charge .addService li .imgArea, .top .addService li .imgArea {
  width: 100%;
  margin: 0 0 25px;
  text-align: center;
}

.charge .addService li .txtArea, .top .addService li .txtArea {
  margin-top: 0;
  text-align: left;
}

.charge .addService li .btnArea, .top .addService li .btnArea {
  align-self: flex-end;
  width: 100%;
  margin-top: 25px;
}

.charge .addService li .btnArea a, .top .addService li .btnArea a {
  height: 110px;
  line-height: 1.5;
}

/* header
**************************/
.logo {
  height: 86px;
  position: absolute;
  top: 8px;
  left: 25px;
  /*span {
		display: block;
		color: #005b3a;
		font-size: 1.6rem;
		font-weight: 700;
		margin-top: 5px;
	}*/
  /*.txt {
		width: 281px;
		margin-left: 35px;
	}*/
}

.logo img {
  max-height: 100%;
}

.headerMenu {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 1350px;
  height: 100px;
  margin: auto;
}

.headerMenu li {
  color: #005b3a;
  font-size: 1.6rem;
  padding: 0 1.5em;
}

.headerMenu li + li {
  border-left: 1px solid #005b3a;
}

.headerMenu li:last-of-type {
  padding-right: 0;
}

.headerMenu a {
  color: inherit;
  text-decoration: none;
}

.headerMenu .langArea a {
  background-color: #b2cdc4;
  color: #333;
  padding: 2px 10px;
}

.headerMenu .langArea a:hover, .headerMenu .langArea a.on {
  background-color: #005b3a;
  color: #fff;
  opacity: 1;
}

.headerMenu .langArea a + a {
  margin-left: 10px;
}

.headerMenu .langArea span {
  padding-right: 65px;
  position: relative;
}

.headerMenu .langArea span:after {
  content: '';
  border: 5px solid;
  border-color: transparent transparent transparent #005b3a;
  position: absolute;
  top: 0.5em;
  right: 5px;
}

.globalNav {
  border-right: 1px solid #f0f0e4;
  display: flex;
  justify-content: space-between;
  width: 1400px;
  margin: auto;
  /*.current {
		color: #d67326;
		span:before {
			background-color: #d67326;
		}
	}*/
}

.globalNav li {
  border-left: 1px solid #f0f0e4;
  padding: 0 10px 0 20px;
	position: relative;
}
.globalNav > li:hover:after,
.globalNav > li.active:after {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 4px;
	background: #E09D6F;
}

.globalNav > li > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100px;
  color: #005b3a;
  font-size: 2rem;
  text-align: center;
  text-decoration: none;
  padding: 3px;
}

.globalNav > li > a:hover { opacity: 1;}
.globalNav > li:hover > a,
.globalNav > li.active > a {
  color: #d67326;
}

.globalNav > li:hover > a span:before,
.globalNav > li.active > a span:before{
  background-color: #d67326;
}

.globalNav > li > a > span {
  font-weight: 700;
  padding-right: 36px;
  position: relative;
}

.globalNav > li > a > span:before {
  content: '';
  background-color: #005b3a;
  border-radius: 100%;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -10px;
}

.globalNav > li > a > span:after {
  content: '';
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  width: 6px;
  height: 6px;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 8px;
  margin-top: -4px;
}

.globalNav_sub {
	position: fixed;
	left: 0;
	top: 201px;
	width: 100%;
	background: #fff;
	display: none;
	box-shadow: 0px 3px 3px 0px rgba(4,0,0,.35);
}
.sticky .globalNav_sub { top: 100px;}
.globalNav li:hover .globalNav_sub { display: block;}
.globalNav_sub div{
	display: flex;
	justify-content: left;
	align-items: center;
	width: 1400px;
	height: 200px;
	margin: 0 auto;
	border-top: 1px solid #f0f0e4;
	border-left: 1px solid #f0f0e4;
}
.globalNav_sub div a{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	align-content: center;
	width: 12.5%;
	height: 200px!important;
	color: #005E3C;
	text-align: center;
	text-decoration: none;
	border-right: 1px solid #f0f0e4;
	position: relative;
}
.globalNav_sub div a:hover,
.globalNav_sub div a.active{ opacity: 1; background: #F0F0E4;}
.globalNav_sub div a:hover:after,
.globalNav_sub div a.active:after {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 4px;
	background: #E09D6F;
}
.globalNav_sub div a img{
	display: block;
	margin: 0 auto 15px;
	height: 60px;
}
@media all and (-ms-high-contrast: none) {
	.globalNav_sub div a img{
		margin: 0 0 15px;
	}
}
.globalNav li:nth-child(2) .globalNav_sub div a:nth-child(2) img{
	height: 50px;
	margin-top: 15px;
}
.globalNav_sub div a strong{
	display: block;
	width: 100%;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
}
.globalNav_sub div a span{
	display: block;
	width: 100%;
	color: #534A48;
	font-size: 14px;
	line-height: 1.4;
}


.pcHeader {
  background-color: #fff;
  width: 100%;
  height: 200px;
  z-index: 10;
  position: fixed;
  top: 0;
}

.pcHeader .logoArea {
  width: 1420px;
  margin: auto;
  position: relative;
  z-index: 1;
}

.pcHeader .inner {
  position: relative;
}

.pcHeader nav + nav {
  border-top: 1px solid #f0f0e4;
}

.headerIcon {
  display: none;
}

/* pagetop
**************************/
.pagetop {
  width: 75px;
  height: 75px;
  position: fixed;
  bottom: 180px;
  right: 25px;
  z-index: 10;
}

.pagetop a {
  background-color: #d67326;
  border-radius: 50%;
  box-shadow: 0 3px 0 #a14c09;
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
  text-decoration: none;
  position: relative;
}

.pagetop a:before {
  content: '';
  /*background: url(../img/icon_arrow02.png) no-repeat center center;
			background-size: contain;
			width: 8px;
			height: 44px;
			margin: -22px 0 0 -6px;
			position: absolute;
			top: 50%;
			left: 50%;*/
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  width: 15px;
  height: 15px;
  transform: rotate(-45deg);
  position: absolute;
  top: 25px;
  left: 0;
  right: 0;
  margin: auto;
}

.pagetop a span {
  width: 100%;
  position: absolute;
  bottom: 1.5em;
  left: 0;
  right: 0;
  margin: auto;
}

/* footer
**************************/
footer{
	clear: both;
	color: #7F7F7F;
	font-size: 12.5px;
}
.fcont1{
	padding-top: 30px;
	padding-bottom: 30px;
	text-align: center;
	background: #EFEFE9;
}
.fcont1wrap{
	display: inline-block;
	vertical-align: top;
	width: 800px;
	margin-right: 100px;
	text-align: left;
}
.fcont1wrap p.bnr{
	margin-bottom: 20px;
}
.fcont1wrap p.bnr a{
	display: block;
	color: #fff;
	font-size: 20px;
	letter-spacing: .1em;
	text-decoration: none;
	text-align: center;
	line-height: 80px;
	background: #A27600;
	position: relative;
}
.fcont1wrap p.bnr a:after {
  content: '';
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 40px;
  margin-top: -4px;
}
.fcont1wrap .fnav{
	display: flex;
}
.fcont1wrap .fnav > ul{
	line-height: 1.8;
	padding: 0 3em 0 2em;
	border-left: 1px solid #7F7F7F;
}
.fcont1wrap .fnav > ul:first-child{ padding-left: 0; border-left: none;}
.fcont1wrap .fnav > ul:last-child{ padding-right: 0;}
.fcont1wrap .fnav > ul > li > ul.sub{
	padding-left: 1em;
}
.fcont1wrap .fnav > ul > li > ul.sub li a:before{
	content: "＞";
}
.fcont1wrap .fnav > ul li a{
	text-decoration: none;
}
.fcont1-bnr{
	display: inline-block;
	vertical-align: top;
	width: 300px;
}
.fcont1-bnr li{
	margin-bottom: 15px;
}
.fcont2{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 20px 0 30px;
}
.fcont2 p{
	width: 130px;
}
.fcont2 dl{
	display: flex;
	justify-content: center;
	flex-wrap: nowrap;
	align-items: center;
}
.fcont2 dl dd img{
	height: 30px;
	margin-left: 20px;
}
.copyright{
	clear: both;
	color: #FFFFFF;
	font-size: 12.5px;
	text-align: center;
	padding: 1.2em;
	background: #005E3C;
}


/* .bannerArea {
  margin: 50px auto;
}

.bannerArea .colBlock {
  justify-content: center;
  align-items: center;
}

.bannerArea li {
  flex-shrink: 0;
  max-width: 285px;
}

.bannerArea li + li {
  margin-left: 45px;
}

.bannerArea .bnr_prize {
  border: 1px solid #000;
}

.bannerArea .logo_20th img {
  max-height: 115px;
}

.investArea {
  margin: 50px auto;
}

.investArea p {
  font-size: 1.6rem;
  letter-spacing: 0.075em;
  line-height: 1;
  text-align: center;
}

.investArea .colBlock {
  justify-content: center;
  align-items: center;
  margin: 25px auto 0;
}

.investArea .colBlock li {
  margin-left: 45px;
}

.investArea .colBlock li:first-child {
  margin-left: 0;
}

.footerLinkArea {
  color: #7f7f7f;
  font-size: 1.6rem;
  margin: 25px auto;
}

.footerLinkArea a {
  color: inherit;
  text-decoration: none;
}

.footerLinkArea a:hover {
  text-decoration: underline;
  opacity: 1;
}

.footerLinkArea .colBlock {
  justify-content: center;
  align-items: center;
}

.footerLinkArea li {
  margin-top: 20px;
}

.footerLinkArea .footerMenu li {
  padding: 0 1.25em;
}

.footerLinkArea .footerMenu li + li {
  border-left: 1px solid #7f7f7f;
}

.footerLinkArea .bottomNav li {
  font-size: 1.5rem;
}

.footerLinkArea .bottomNav li:before {
  content: '>';
  margin: 0 1em;
}

.copyright {
  background-color: #000;
  color: #fff;
  text-align: center;
  padding: 19px 25px;
}

.copyright p {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
}*/

/* slideArea
**************************/
.slideArea {
  position: relative;
}

.slider img {
  max-width: 100%;
  max-height: 100%;
}

.slider img.sp {
  display: none;
}

.slick-prev,
.slick-next {
  background: none;
  border: none;
  width: 50px;
  height: 50px;
  font-size: 0;
  padding: 0;
  position: absolute;
  top: 50%;
  margin-top: -25px;
  cursor: pointer;
}

.slick-prev {
  transform: rotate(180deg);
  left: 25px;
}

.slick-next {
  right: 25px;
}

.slick-prev:before,
.slick-next:before {
  content: '';
  background-color: #fff;
  border-radius: 100%;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
}

.slick-prev:after,
.slick-next:after {
  content: '';
  border-top: 4px solid #000;
  border-right: 4px solid #000;
  width: 10px;
  height: 10px;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -8px;
}

.slick-dots {
  display: flex;
  justify-content: center;
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
  margin: auto;
}

.slick-dots li + li {
  margin-left: 10px;
}

.slick-dots .slick-active button {
  background-color: #005b3a;
}

.slick-dots li {
	height: 5px;
	line-height: 5px;
	position: relative;
	width: 50px;
}
.slick-dots button {
  background-color: #ccc;
  border: none;
  width: 50px;
  height: 5px;
  font-size: 0;
  padding: 0;
  cursor: pointer;
	position: absolute;
	top: 0;
	left: 0;
}
/*--------------------210114追加-----------------------*/
.outage .colBlock.col2{
  width: 780px;  
}

.outage .colBlock.col2 > li {
  width: 360px;
}

.outage .btnArea.moreBtn{
  margin: 0;
}
@media only screen and (max-width: 767px){
.outage .colBlock.col2 {
    width: calc((600 / 800) * 100vw);
}
.outage .btnArea.moreBtn {
    margin: 0;
    width: calc((600 / 800) * 100vw);
}
}
/*--------------------210114追加ここまで-----------------------*/

@media only screen and (min-width: 768px) {
  /* header
	**************************/
  .pcHeader.sticky {
    box-shadow: 0px 2px 3px 0px rgba(4, 0, 0, 0.35);
    height: 100px;
  }
  .pcHeader.sticky .inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    width: 1400px;
    height: 100%;
    margin: auto;
    padding: 22px 25px 20px;
  }
  .pcHeader.sticky .logo {
    height: 70px;
    top: 15px;
    /*height: 60px;
			top: 20px;*/
    /*.txt {
				width: 207px;
				margin-left: 25px;
			}*/
  }
  .pcHeader.sticky nav {
    width: 1010px;
    margin: 0 25px 0 auto;
  }
  .pcHeader.sticky nav + nav {
    border: none;
  }
  .pcHeader.sticky .headerMenu {
    width: 100%;
    height: auto;
  }
  .pcHeader.sticky .headerMenu li {
    font-size: 1.4rem;
  }
  .pcHeader.sticky .headerMenu .langArea span {
    padding-right: 25px;
  }
  .pcHeader.sticky .globalNav {
    border: none;
    width: 100%;
    margin-top: 25px;
  }
  .pcHeader.sticky .globalNav li {
    border: none;
    width: auto;
    padding: 0 0 24px;
  }
  .pcHeader.sticky .globalNav a {
    height: auto;
    font-size: 1.6rem;
    padding: 0;
  }
  .pcHeader.sticky .globalNav span {
    padding-right: 20px;
  }
  .pcHeader.sticky .globalNav span:before {
    width: 16px;
    height: 16px;
    margin-top: -8px;
  }
  .pcHeader.sticky .globalNav span:after {
    width: 4px;
    height: 4px;
    right: 6px;
    margin-top: -3px;
  }
}

@media only screen and (max-width: 767px) {
  /* base
	**************************/
  body {
    min-width: 0;
  }
  p {
    font-size: calc((30 / 800) * 100vw);
  }
  a:hover {
    opacity: 1;
  }
  /* layout
	**************************/
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  /* contents
	**************************/
  .wrapper {
    padding-top: calc((122 / 800) * 100vw);
  }
  .innerContents {
    margin: 0 auto calc((140 / 800) * 100%);
  }
  .innerBlock {
    width: calc((740 / 800) * 100%);
    margin: auto;
    padding: 0;
  }
  .innerBlock + .innerBlock {
    margin-top: calc((140 / 800) * 100%);
  }
  .contentsHead {
    font-size: calc((50 / 800) * 100vw);
    margin: 0 auto calc((70 / 800) * 100%);
    padding: calc((44 / 800) * 100%) calc((30 / 800) * 100%) calc((40 / 800) * 100%);
  }
  .contentsHead span {
    font-size: calc((36 / 800) * 100vw);
    margin-top: calc((15/ 800) * 100%);
  }
  .contentsHead02 {
    font-size: calc((70 / 800) * 100vw);
    margin: 0 auto calc((70 / 800) * 100%);
    padding: 0 calc((30 / 800) * 100%);
  }
  .contentsHead02 span {
    font-size: calc((30 / 800) * 100vw);
    margin-top: calc((30 / 800) * 100%);
  }
  .blockTitle {
    font-size: calc((36 / 800) * 100vw);
    margin: 0 auto calc((70 / 800) * 100%);
    padding-top: calc((53 / 800) * 100vw);
  }
  .blockTitle:nth-of-type(n + 2) {
    margin-top: calc((70 / 800) * 100%);
  }
  .blockTitle02 {
    font-size: calc((38 / 800) * 100vw);
    margin-bottom: calc((50 / 800) * 100vw);
  }
  .lede {
    font-size: calc((40 / 800) * 100vw);
    margin-bottom: calc((30 / 800) * 100%);
  }
  /* mainVisual
	**************************/
  .mainVisual {
    background: url(../img/top/bg_main.png) no-repeat center center;
    background-size: cover;
    height: calc((300 / 800) * 100vw);
  }
  .mainVisual .titleBlock {
    max-width: calc((780 / 800) * 100vw);
  }
  .mainVisual .mainTitle {
    font-size: calc((60 / 800) * 100vw);
    letter-spacing: 0.05em;
    text-shadow: 2px 2px 5px #fff, 2px -2px 5px #fff, -2px -2px 5px #fff, -2px 2px 5px #fff;
  }
  .mainVisual .subTitle {
    width: auto;
    font-size: calc((30 / 800) * 100vw);
    margin: 0 auto calc((30 / 800) * 100%);
    padding: calc((15 / 800) * 100%) calc((50 / 800) * 100%);
  }
  /* breadCrumb
	**************************/
  .breadCrumb {
    display: none;
  }
  /* button
	**************************/
  .btnArea.moreBtn {
    width: calc((560 / 800) * 100%);
    margin: calc((70 / 800) * 100vw) auto 0;
  }
  .btnArea.moreBtn a {
    min-height: calc((120 / 800) * 100vw);
  }
  .btnArea a {
    min-height: calc((80 / 800) * 100vw);
    font-size: calc((30 / 800) * 100vw);
    padding: calc((25 / 800) * 100%) calc((20 / 800) * 100%);
  }
  .btnArea a:after {
    width: calc((30 / 800) * 100vw);
    height: calc((5 / 800) * 100vw);
    right: calc((-10 / 800) * 100vw);
    margin-top: calc((-2 / 800) * 100vw);
  }
  .btnArea .arrRight {
    min-height: calc((100 / 800) * 100vw);
    padding: calc((15 / 800) * 100vw) calc((15 / 800) * 100vw) calc((15 / 800) * 100vw) calc((60 / 800) * 100vw);
  }
  .btnArea .arrRight:before {
    width: calc((18 / 800) * 100vw);
    height: calc((18 / 800) * 100vw);
    left: calc((15 / 800) * 100vw);
    margin-top: calc((-9 / 800) * 100vw);
  }
  .btnArea .arrBottom {
    padding: calc((25 / 800) * 100vw) calc((20 / 800) * 100vw) calc((25 / 800) * 100vw) calc((60 / 800) * 100vw);
  }
  .btnArea .arrBottom:before {
    width: calc((18 / 800) * 100vw);
    height: calc((18 / 800) * 100vw);
    left: calc((40 / 800) * 100vw);
    margin-top: calc((-18 / 800) * 100vw);
  }
  .btnArea .down::before {
    width: calc((40 / 800) * 100vw);
    height: calc((40 / 800) * 100vw);
    right: calc((20 / 800) * 100vw);
  }
  .btnArea .down::after {
    border-top: calc((3 / 800) * 100vw) solid #fff;
    border-right: calc((3 / 800) * 100vw) solid #fff;
    width: calc((12 / 800) * 100vw);
    height: calc((12 / 800) * 100vw);
    top: calc((-6 / 800) * 100vw);
    right: calc((32 / 800) * 100vw);
  }
  /* colBlock
	**************************/
  .colBlock.col2 {
    width: 100%;
  }
  .colBlock.col2 > li {
    width: 100%;
    margin: calc((75 / 800) * 100%) 0 0;
  }
  .colBlock.col2 > li:first-child {
    margin-top: 0;
  }
  .colBlock.col3 {
    width: 100%;
  }
  .colBlock.col3 > li {
    width: 100%;
    margin: calc((50 / 800) * 100%) 0 0;
  }
  .colBlock.col3 > li:first-child {
    margin-top: 0;
  }
  .colBlock.col3 > li:nth-child(n+4) {
    margin: calc((50 / 800) * 100%) 0 0;
  }
  .colBlock.col5 {
    width: 100%;
  }
  .colBlock.col5 > li {
    width: 100%;
    margin: calc((70 / 800) * 100%) 0 0;
  }
  .colBlock.col5 > li:first-child {
    margin-top: 0;
  }
  .bdrBox > li {
    width: 100%;
    padding: calc((40 / 800) * 100%) calc((30 / 800) * 100%);
  }
  .bdrBox .boxTitle {
    font-size: calc((40 / 800) * 100vw);
    margin-bottom: calc((30 / 800) * 100%);
  }
  .bdrBox .boxTitle span {
    font-size: calc((30 / 800) * 100vw);
  }
  /* estimateBtnArea
	**************************/
  .estimateBtnArea {
    margin: calc((50 / 800) * 100%) auto calc((35 / 800) * 100%);
  }
  .estimateBtnArea .colBlock li {
    width: 100%;
  }
  .estimateBtnArea .colBlock li + li {
    margin-top: calc((40 / 800) * 100%);
  }
  .estimateBtnArea .btnArea {
    height: calc((150 / 800) * 100vw);
  }
  .estimateBtnArea .btnArea a {
    font-size: calc((36 / 800) * 100vw);
  }
  .estimateBtnArea .btnArea a .txt {
    min-width: 50%;
  }
  .estimateBtnArea .btnArea a .txt span {
    font-size: calc((30 / 800) * 100vw);
  }
  /* contactBtnArea
	**************************/
  .contactBtnArea {
    margin: calc((35 / 800) * 100%) auto;
  }
  .contactBtnArea .colBlock li {
    width: 100%;
  }
  .contactBtnArea .colBlock li + li {
    margin-top: calc((35 / 800) * 100%);
  }
  .contactBtnArea .colBlock p {
    font-size: calc((24 / 800) * 100vw);
  }
  .contactBtnArea .btnArea {
    height: calc((150 / 800) * 100vw);
  }
  .contactBtnArea .btnArea.sp-hauto {
	  height: auto;
	}
  .contactBtnArea .btnArea .mail {
    /*span {
					padding: calc((40 / 740) * 100vw) 0 0;
					&:before {
						background: url(../img/icon_mail.png) no-repeat;
						background-size: contain;
						width: calc((38 / 740) * 100vw);
						height: calc((30 / 740) * 100vw);
						top: 0;
						left: 0;
						right: 0;
						margin: auto;
					}
				}*/
  }
  .contactBtnArea .btnArea .mail p {
    font-size: calc((30 / 800) * 100vw);
  }
  .contactBtnArea .btnArea .mail span {
    font-size: calc((24 / 800) * 100vw);
  }
  .contactBtnArea .btnArea .tel {
    padding-left: calc((60 / 800) * 100vw);
    pointer-events: auto;
    /*span {
				/
				font-size: calc((24 / 800) * 100vw);*span {
					padding-left: calc((35 / 740) * 100vw);
					&:before {
						background: url(../img/icon_tel.png) no-repeat;
						background-size: contain;
						width: calc((26 / 740) * 100vw);
						height: calc((36 / 740) * 100vw);
						margin-top: calc((-16 / 740) * 100vw);
					}
				}*/
  }
  .contactBtnArea .btnArea .tel:after {
    width: calc((34 / 800) * 100vw);
    height: calc((47 / 800) * 100vw);
    left: calc((20 / 800) * 100%);
    margin-top: calc((-24 / 800) * 100vw);
  }
  .contactBtnArea .btnArea .tel span {
    font-size: calc((40 / 800) * 100vw);
  }
  .contactBtnArea .btnArea .tel .note {
    font-size: calc((20 / 800) * 100vw);
  }
  .contactBtnArea .txtArea {
    font-size: calc((32 / 800) * 100vw);
    margin: 1em 0;
  }
  /* caseStudyList
	**************************/
  .caseSlide {
    width: calc((640 / 800) * 100%);
  }
  .caseStudyList {
    width: 100%;
  }
  .caseStudyList li {
    width: calc((640 / 800) * 100vw);
    margin: auto;
  }
  .caseStudyList .innerBox {
    height: auto;
  }
  .caseStudyList .tabArea div {
    font-size: calc((30 / 800) * 100vw);
    padding: calc((22 / 800) * 100%) 0;
  }
  .caseStudyList .imgArea {
    min-height: 0;
  }
  .caseStudyList .txtArea {
    padding: calc((20 / 800) * 100%) calc((30 / 800) * 100%) 0;
  }
  .caseStudyList .txtArea dt {
    font-size: calc((30 / 800) * 100vw);
  }
  .caseStudyList .txtArea dt span {
    font-size: calc((40 / 800) * 100vw);
  }
  .caseStudyList .txtArea dd {
    margin: calc((20 / 800) * 100%) 0 0;
  }
  .caseStudyList .txtArea .serviceName {
    margin: 0 0 calc((20 / 800) * 100%);
  }
  .caseStudyList .txtArea .serviceName .txt {
    font-size: calc((26 / 800) * 100vw);
  }
  .caseStudyList .txtArea .serviceName .txt span {
    font-size: calc((20 / 800) * 100vw);
  }
  .caseStudyList .txtArea .serviceName .img {
    width: 40px;
    height: 40px;
    padding: 5px 4px;
  }
  .caseStudyList .txtArea p {
    font-size: calc((26 / 800) * 100vw);
  }
  .caseStudyList .btnArea {
    padding: calc((30 / 800) * 100%);
  }
  .caseStudyList .slick-prev {
    left: calc((-70 / 800) * 100vw);
  }
  .caseStudyList .slick-next {
    right: calc((-70 / 800) * 100vw);
  }
  /* serviceList
	**************************/
  .serviceList .linkArea {
    border-left-width: 5px;
    flex-direction: row;
    align-items: center;
    min-height: 0;
    padding: calc((40 / 800) * 100vw) calc((20 / 800) * 100%);
  }
  .serviceList .linkArea:before {
    width: 12px;
    height: 25px;
    margin-top: -12px;
  }
  .serviceList .linkArea:after {
    width: 5px;
    height: 5px;
    right: 4px;
    margin-top: -3px;
  }
  .serviceList .linkArea .img {
    width: calc((325 / 800) * 100vw);
    height: auto;
    margin: auto;
  }
  .serviceList .linkArea .img img {
    max-height: calc((100 / 800) * 100vw);
  }
  .serviceList .linkArea .txt {
    min-width: calc((415 / 800) * 100vw);
    font-size: calc((26 / 800) * 100vw);
    text-align: left;
  }
  .serviceList .linkArea .txt span {
    font-size: calc((40 / 800) * 100vw);
  }
  .serviceList .txtArea {
    padding: calc((20 / 800) * 100%) 0;
  }
  .serviceList .btnArea {
    padding: 0;
  }
  .serviceList .btnArea a {
    min-height: calc((120 / 800) * 100vw);
  }
  /* faqList
	**************************/
  .faqList dl {
    font-size: calc((30 / 800) * 100vw);
  }
  .faqList dl + dl {
    margin-top: calc(40 / 740 * 100%);
  }
  .faqList dl dt, .faqList dl dd {
    padding: calc(50 / 740 * 100%) calc(90 / 740 * 100%) calc(50 / 740 * 100%) calc(80 / 740 * 100%);
  }
  .faqList dl dt::before {
    width: calc((40 / 800) * 100vw);
    height: calc((40 / 800) * 100vw);
    right: calc((20 / 800) * 100vw);
  }
  .faqList dl dt::after {
    border-top: calc((3 / 800) * 100vw) solid #fff;
    border-right: calc((3 / 800) * 100vw) solid #fff;
    width: calc((12 / 800) * 100vw);
    height: calc((12 / 800) * 100vw);
    top: calc((-6 / 800) * 100vw);
    right: calc((32 / 800) * 100vw);
  }
  .faqList dl dt > span {
    display: block;
  }
  .faqList dl dt > span::before {
    font-size: calc((50 / 800) * 100vw);
    width: 11%;
    height: 100%;
    left: -10%;
  }
  .faqList dl dt .new {
    margin-left: calc(10 / 800 * 100vw);
    padding: 0 calc(30 / 800 * 100vw);
    font-size: calc(28 / 800 * 100vw);
    border-radius: calc(15 / 800 * 100vw);
  }
  .faqList dl dd {
    padding-right: 15px;
  }
  .faqList dl dd::before {
    font-size: calc((50 / 800) * 100vw);
    width: 20px;
    height: 30px;
    left: 14px;
    top: 25px;
    bottom: auto;
  }
  .faqList dl dd a.linkArrow::before {
    width: calc(6 / 800 * 100vw);
    height: calc(6 / 800 * 100vw);
    border-top: calc(2 / 800 * 100vw) solid #005b3a;
    border-right: calc(2 / 800 * 100vw) solid #005b3a;
  }
  .faqList dl dd .enq {
    margin-top: calc(30 / 800 * 100vw);
    padding: calc(20 / 800 * 100vw) calc(30 / 800 * 100vw) calc(40 / 800 * 100vw);
  }
  .faqList dl dd .enq p {
    width: 100%;
  }
  .faqList dl dd .enq .btn {
    width: 100%;
    margin-top: calc(20 / 800 * 100vw);
  }
  .faqList dl dd .enq .btn a {
    width: calc( (100% - (10 / 800 * 100vw)) / 2);
    padding: calc(4 / 800 * 100vw) calc(10 / 800 * 100vw);
  }
  .faqList dl dd .enq .btn a.good {
    margin-right: calc(10 / 800 * 100vw);
  }
  /* column
	**************************/
  .columnTitle {
    font-size: calc((48 / 800) * 100vw);
  }
  .columnTitle span {
    font-weight: 500;
    padding-left: 60px;
    position: relative;
  }
  .columnTitle span:before {
    content: '';
    background: url(../img/icon_column.png) no-repeat;
    background-size: contain;
    width: 40px;
    height: 38px;
    position: absolute;
    bottom: 5px;
    left: 0;
  }
  .columnList {
    margin-top: calc((70 / 800) * 100vw);
  }
  .columnList li {
    width: 100%;
    padding: 0 0 0 calc((45 / 800) * 100vw);
  }
  .columnList li:nth-of-type(n+2) {
    margin-top: 2em;
  }
  .columnList a {
    font-size: calc((30 / 800) * 100vw);
  }
  .columnList a:before {
    width: calc((15 / 800) * 100vw);
    height: calc((15 / 800) * 100vw);
    left: calc((-45 / 800) * 100vw);
    margin-top: calc((-5 / 800) * 100vw);
  }
  /* newsArea
	**************************/
  .newsArea li {
    display: block;
  }
  .newsArea li + li {
    margin-top: calc((40 / 800) * 100%);
  }
  .newsArea .detailArea .date {
    font-size: calc((30 / 800) * 100vw);
    vertical-align: text-top;
    padding-right: calc((15 / 800) * 100%);
  }
  .newsArea .detailArea .category {
    min-width: calc((220 / 800) * 100%);
    font-size: calc((24 / 800) * 100vw);
    padding: 0.3em;
  }
  .newsArea .txtArea {
    width: 100%;
    font-size: calc((26 / 800) * 100vw);
    margin: calc((20 / 800) * 100%) 0 0;
  }
  .newsArea .txtArea p {
    font-size: calc((26 / 800) * 100vw);
  }
  .newsList .newsArea .detailArea .date {
    padding-top: 0;
  }
  .newsList .newsArea .txtArea {
    width: 100%;
  }
  .newsList .btn {
    margin: calc((40 / 800) * 100vw) 0 0;
  }
  .newsList .btn a {
    font-size: calc((30 / 800) * 100vw);
  }
  .newsList .btn a::before {
    width: calc((15 / 800) * 100vw);
    height: calc((15 / 800) * 100vw);
    left: calc((-45 / 800) * 100vw);
    margin-top: calc((-5 / 800) * 100vw);
  }
  /* indentList
	**************************/
  .indentList li {
    font-size: calc((28 / 800) * 100vw);
  }
  .indentList li:nth-of-type(n+2) {
    margin-top: calc((20 / 800) * 100%);
  }
  .annoArea {
    margin: calc((15 / 800) * 100%) 0 0;
  }
  .annoArea li {
    font-size: calc((26 / 800) * 100vw);
  }
  .numberList {
    margin-top: calc((40 / 800) * 100%);
  }
  .numberList > li:nth-of-type(n+2) {
    margin-top: calc((15 / 800) * 100%);
  }
  .dataList {
    margin-top: calc((70 / 800) * 100%);
  }
  .dataList > dt {
    font-size: calc((38 / 800) * 100vw);
    margin-bottom: calc((30 / 800) * 100%);
  }
  .dataList > dd {
    font-size: calc((28 / 800) * 100vw);
    margin-bottom: calc((50 / 800) * 100%);
  }
  /* contactList
	**************************/
  .contactList {
    margin: calc((45 / 800) * 100%) auto;
  }
  .contactList .contactArea {
    padding: calc((10 / 800) * 100%) calc((30 / 800) * 100%) calc((20 / 800) * 100%) calc((80 / 800) * 100%);
  }
  .contactList .contactArea::before {
    width: 4.3vw;
    height: 5.9vw;
    top: calc( (100% - ((190 / 800) * 100%)) / 2);
    left: calc((20 / 800) * 100%);
  }
  .contactList .contactArea .tel {
    font-size: calc((40 / 800) * 100vw);
  }
  /* exampleList
	**************************/
  .exampleList {
    width: calc((680 / 800) * 100vw);
    margin: calc((40 / 800) * 100vw) auto calc((100 / 800) * 100vw);
    padding-bottom: 0;
  }
  .exampleList li {
    width: calc( ( 100% - ((50 / 800) * 100vw) ) / 2) !important;
  }
  .exampleList li:nth-of-type(n+3) {
    margin-top: calc(60 / 800 * 100vw) !important;
  }
  .exampleList li .block .ttl {
    font-size: calc((20 / 800) * 100vw);
    border-radius: calc((5 / 800) * 100vw) calc((5 / 800) * 100vw) 0 0;
  }
  .exampleList li .block .ttl span {
    font-size: calc((14 / 800) * 100vw);
    padding: calc(5 / 800 * 100vw) calc(10 / 800 * 100vw);
    left: calc(6 / 800 * 100vw);
    top: 0;
    bottom: 0;
    margin: auto;
    display: inline-table;
  }
  .exampleList li .voltage {
    font-size: calc((20 / 800) * 100vw);
  }
  .exampleList li .year {
    bottom: calc(-35 / 800 * 100vw);
    right: calc(-20 / 800 * 100vw);
    width: calc(122 / 800 * 100vw);
    height: calc(122 / 800 * 100vw);
    padding: calc(25 / 800 * 100vw) 0;
    font-size: calc((18 / 800) * 100vw);
    line-height: 1.4;
    border-radius: 50%;
  }
  .exampleList li .year > span:nth-of-type(1) {
    font-size: calc((25 / 800) * 100vw);
  }
  .exampleList li .year > span:nth-of-type(2) {
    font-size: calc((14 / 800) * 100vw);
  }
  .exampleList li .year > span:nth-of-type(3) {
    font-size: calc((16 / 800) * 100vw);
  }
  .exampleList li .year > span:nth-of-type(4) {
    font-size: calc((18 / 800) * 100vw);
  }
  .exampleList li .year > span:nth-of-type(4) > span:nth-of-type(2) {
    font-size: calc((13 / 800) * 100vw);
  }
  /* btnTel
	**************************/
  .btnTel {
    pointer-events: auto;
  }
  /* addService
	**************************/
  .charge .addService, .top .addService {
    margin-top: calc((35 / 800) * 100vw);
  }
  .charge .addService li, .top .addService li {
    width: 100%;
    margin-right: 0 !important;
    padding: calc((30 / 800) * 100vw) calc((25 / 800) * 100vw) calc((40 / 800) * 100vw) !important;
  }
  .charge .addService li:nth-child(n+2), .top .addService li:nth-child(n+2) {
    margin-top: calc((45 / 800) * 100vw) !important;
  }
  .charge .addService li .imgArea, .top .addService li .imgArea {
    margin: 0 0 calc((25 / 800) * 100vw);
  }
  .charge .addService li .btnArea, .top .addService li .btnArea {
    margin-top: calc((25 / 800) * 100vw);
  }
  .charge .addService li .btnArea a, .top .addService li .btnArea a {
    height: auto;
  }
  /* header
	**************************/
  .logo {
    height: calc((83 / 800) * 100vw);
    text-align: center;
    position: absolute;
    top: calc((22 / 800) * 100vw);
    left: calc((30 / 800) * 100vw);
    /*a {
			width: calc((424 /800) * 100vw);
		}
		span {
			display: block;
			color: #005b3a;
			font-size: 1.6rem;
			font-weight: 700;
			margin-top: 5px;
		}
		.txt {
			width: calc((280 / 800) * 100vw);
			margin-left: calc((22 / 800) * 100vw);
		}*/
  }
  .headerMenu {
    display: block;
    width: 100%;
    height: 100%;
    /*width: calc((187 / 800) * 100vw);
		height: calc((142 / 800) * 100vw);
		margin-right: calc((175 / 800) * 100vw);*/
  }
  .headerMenu li {
    border-bottom: 1px solid #fff;
    width: 100%;
    padding: 0;
  }
  .headerMenu li + li {
    border-left: none;
  }
  .headerMenu li:last-of-type {
    display: none;
    /*display: flex;
				justify-content: flex-end;
				width: 100%;*/
  }
  .headerMenu a {
    background-color: #005b3a;
    height: calc((120 / 800) * 100vw);
    display: flex;
    align-items: center;
    color: #fff;
    font-size: calc((30 / 800) * 100vw);
    text-align: left;
    padding: calc((38 / 800) * 100vw) calc((40 / 800) * 100vw);
    position: relative;
  }
  .headerMenu span {
    display: block;
    width: 100%;
    font-weight: 500;
    padding-right: 0;
    position: relative;
  }
  .headerMenu span:before {
    content: '';
    background-color: #fff;
    border-radius: 100%;
    width: calc((50 / 800) * 100vw);
    height: calc((50 / 800) * 100vw);
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: calc((-25 / 800) * 100vw);
  }
  .headerMenu span:after {
    content: '';
    border-top: 2px solid #005b3a;
    border-right: 2px solid #005b3a;
    width: calc((10 / 800) * 100vw);
    height: calc((10 / 800) * 100vw);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: calc((20 / 800) * 100vw);
    margin-top: calc((-6 / 800) * 100vw);
  }
  .headerMenu .langArea a {
    border: 1px solid #f2f2ed;
    border-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc((80 / 800) * 100vw);
    height: calc((80 / 800) * 100vw);
    color: #fff;
    font-size: calc((30 / 800) * 100vw);
  }
  .headerMenu .langArea a + a {
    margin-left: calc((27 / 800) * 100vw);
  }
  .headerMenu .langArea a.on {
    background-color: #c2e305;
    border-bottom: none;
  }
  .headerMenu .langArea span {
    display: none;
  }
  .globalNav {
    border-right: none;
    display: block;
    width: 100%;
  }
  .globalNav li {
    border-bottom: 1px solid #fff;
	  border-left: none!important;
    width: 100%;
    padding: 0;
  }
	.globalNav > li:hover:after,
	.globalNav > li.active:after {
		content: none;
	}
  .globalNav li + li {
    border-left: none;
  }
  .globalNav > li > a {
    background-color: #005b3a;
    height: calc((120 / 800) * 100vw);
    color: #fff;
    font-size: calc((30 / 800) * 100vw);
    text-align: left;
    padding: calc((38 / 800) * 100vw) calc((40 / 800) * 100vw);
    position: relative;
  }
  .globalNav > li > a:before {
    display: none;
    content: '●';
    font-size: calc((15 / 800) * 100vw);
    position: absolute;
    top: 50%;
    left: calc((15 / 800) * 100vw);
    margin-top: -0.5em;
  }
  .globalNav > li > a:after {
    display: none;
    content: '';
    background-color: #01482e;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 5px;
    width: calc((70 / 800) * 100vw);
    height: calc((70 / 800) * 100vw);
    position: absolute;
    top: 50%;
    right: calc((20 / 800) * 100vw);
    margin-top: calc((-35 / 800) * 100vw);
  }
  .globalNav .current a {
    color: #fff;
  }
  .globalNav .current span:before {
    background-color: #eeeedb;
  }
  .globalNav .on span:before {
    display: none;
  }
  .globalNav > li > a > span {
    display: block;
    width: 100%;
    font-weight: 500;
    padding-right: 0;
    position: relative;
  }
  .globalNav > li > a > span:before {
    background-color: #fff!important;
    width: calc((50 / 800) * 100vw);
    height: calc((50 / 800) * 100vw);
    margin-top: calc((-25 / 800) * 100vw);
    /*background-color: #eeeedb;
				border-radius: 3px;
				width: calc((6 / 800) * 100vw);
				height: calc((40 / 800) * 100vw);
				position: absolute;
				top: calc((15 / 800) * 100vw);
				right: calc((32 / 800) * 100vw);
				z-index: 1;*/
  }
  .globalNav > li > a > span:after {
    border-color: #005b3a;
    width: calc((10 / 800) * 100vw);
    height: calc((10 / 800) * 100vw);
    right: calc((20 / 800) * 100vw);
    margin-top: calc((-6 / 800) * 100vw);
    /*background-color: #eeeedb;
				border: none;
				border-radius: 3px;
				width: calc((6 / 800) * 100vw);
				height: calc((40 / 800) * 100vw);
				transform: rotate(90deg);
				position: absolute;
				top: calc((3 / 800) * 100vw);
				right: calc((32 / 800) * 100vw);
				z-index: 1;*/
  }
  .globalNav li:hover .globalNav_sub { display: none;}
	.globalNav > li:hover > a,
	.globalNav > li.active > a {
	  color: #fff;
	}

	
  .pcHeader {
    height: auto;
    position: relative;
  }
  .pcHeader .logoArea {
    width: 100%;
    z-index: 3;
  }
  .pcHeader .inner {
    width: 100%;
    margin-top: calc((122 / 800) * 100vw);
    position: fixed;
    z-index: 3;
  }
  .pcHeader nav + nav {
    border-top: none;
  }
  header nav {
    border-top: 1px solid #fff;
    display: none;
  }
  .headerIcon {
    background: url(../img/icon_menu.png) no-repeat center center;
    background-size: contain;
    display: block;
    width: calc((130 / 800) * 100vw);
    height: calc((120 / 800) * 100vw);
    position: fixed;
    top: 0;
    right: 0;
  }
  .headerIcon .close {
    display: none;
  }
  .headerIcon.open {
    background: none;
  }
  .headerIcon.open .close {
    display: block;
  }
  /* pagetop
	**************************/
  .pagetop {
    width: calc((80 / 800) * 100vw);
    height: calc((100 / 800) * 100vw);
    right: 0;
  }
  .pagetop a {
    border-radius: 0;
    border-top-left-radius: calc((15 / 800) * 100vw);
    border-bottom-left-radius: calc((15 / 800) * 100vw);
    font-size: calc((22 / 800) * 100vw);
  }
  .pagetop a:before {
    /*width: calc((8 / 800) * 100vw);
				height: calc((44 / 800) * 100vw);
				margin: calc((-22 / 800) * 100vw) 0 0 calc((-6 / 800) * 100vw);*/
    width: calc((15 / 800) * 100vw);
    height: calc((15 / 800) * 100vw);
    top: calc((25 / 800) * 100vw);
  }
  .pagetop a span {
    bottom: 0.5em;
  }
  /* footer
	**************************/
	footer{
		font-size: calc((24 / 750) * 100vw);
	}
	.fcont1{
		padding-top: 0;
		padding-bottom: 0;
		overflow: hidden;
	}
	.fcont1wrap{
		display: block;
		width: auto;
		margin-right: 0;
	}
	.fcont1wrap p.bnr{
		padding: .7em 5%;
		margin-bottom: 0;
	}
	.fcont1wrap p.bnr a{
		font-size: calc((26 / 750) * 100vw);
		line-height: 1;
		padding: 1.7em;
	}
	.fcont1wrap p.bnr a:after {
	  width: 14px;
	  height: 14px;
	  left: 30px;
	  margin-top: -7px;
	}
	.fcont1wrap .fnav{
		display: block;
		border-top: 1px solid #7F7F7F;
	}
	.fcont1wrap .fnav > ul{
		line-height: 1.4;
		padding: 0;
		border-left: none;
	}
	.fcont1wrap .fnav > ul > li{
		font-weight: bold;
		border-bottom: 1px solid #7F7F7F;
	}
	.fcont1wrap .fnav > ul > li.ac{
		position: relative;
		cursor: pointer;
	}
	.fcont1wrap .fnav > ul > li.ac:after {
		  content: '';
		  border-top: 1px solid #7F7F7F;
		  border-right: 1px solid #7F7F7F;
		  width: 10px;
		  height: 10px;
		  transform: rotate(135deg);
		  position: absolute;
		  top: .8em;
		  right: 5%;
		  margin-top: -4px;
	}
	.fcont1wrap .fnav > ul > li.ac.open:after {
		  top: 1.2em;
		  transform: rotate(-45deg);
	}
	.fcont1wrap .fnav > ul > li.ac > a{
		margin-right: 70px;
	}
	.fcont1wrap .fnav > ul > li > ul.sub{
		padding-left: 0;
		background: #fff;
		display: none;
	}
	.fcont1wrap .fnav > ul > li > ul.sub li{
		border-top: 1px solid #7F7F7F;
	}
	.fcont1wrap .fnav > ul > li > ul.sub li a:before{
		content: "＞";
		padding-left: 1em;
	}
	.fcont1wrap .fnav > ul li a{
		display: block;
		padding: .5em 5%;
	}
	.fcont1wrap .fnav > ul.sp-list{
		float: left;
		width: 50%;
		padding-top: 1em;
		padding: 1em 0 1em 5%;
	}
	.fcont1wrap .fnav > ul.sp-list:last-of-type{
		padding: 1em 0 1em;
	}
	.fcont1wrap .fnav > ul.sp-list li{
		border-top: none;
		border-bottom: none;
		font-weight: normal;
		line-height: 2;
	}
	.fcont1wrap .fnav > ul.sp-list li a{
		display: inline-block;
		padding: 0;
	}
	.fcont1-bnr{
		clear: both;
		display: block;
		width: auto;
		padding: 0 5%;
	}
	.fcont1-bnr li{
		float: left;
		width: 47.5%;
		margin-bottom: 3%;
	}
	.fcont1-bnr li:first-child{ margin-right: 5%;}
	.fcont2{
		padding: 5%;
	}
	.fcont2 p{
		width: 25%;
	}
	.fcont2 dl{
		display: flex;
		width: 65%;
		justify-content: center;
		flex-wrap: wrap;
		align-items: center;
	}
	.fcont2 dl dt{
		margin-bottom: .5em;
	}
	.fcont2 dl dd img{
		width: 40%;
		height: auto;
		margin-left: 3%;
	}
	.fcont2 dl dd a:nth-child(2) img{
		width: 26%;
	}
	.fcont2 dl dd a:last-child img{
		width: 25%;
	}
	.copyright{
		font-size: calc((20 / 750) * 100vw);
		padding: .5em;
	}
  /* .bannerArea {
    margin: calc((120 / 800) * 100vw) auto calc((100 / 800) * 100vw);
  }
  .bannerArea .colBlock {
    justify-content: space-between;
  }
  .bannerArea li {
    width: 50%;
    text-align: center;
  }
  .bannerArea li + li {
    margin-left: 0;
  }
  .bannerArea .logo_20th img {
    max-width: calc((170 / 800) * 100vw);
  }
  .investArea {
    margin: calc((50 / 800) * 100vw) auto;
  }
  .investArea p {
    font-size: calc((35 / 800) * 100vw);
    letter-spacing: 0;
  }
  .investArea .colBlock {
    justify-content: space-around;
    margin: calc((50 / 800) * 100vw) auto 0;
  }
  .investArea .colBlock li {
    width: 45%;
    text-align: center;
    margin-left: 0;
  }
  .investArea .colBlock li:nth-child(n+3) {
    margin-top: 20px;
  }
  .investArea .colBlock li img {
    max-height: 25px;
  }
  .footerLinkArea {
    font-size: calc((28 / 800) * 100vw);
    margin: calc((25 / 800) * 100vw) auto;
  }
  .footerLinkArea li {
    width: 50%;
    text-align: center;
    margin-top: 1.5em;
  }
  .footerLinkArea .footerMenu li {
    padding: 0 0.5em;
  }
  .footerLinkArea .footerMenu li + li {
    border-left: none;
  }
  .footerLinkArea .bottomNav {
    margin-top: calc((15 / 800) * 100vw);
  }
  .footerLinkArea .bottomNav li {
    font-size: calc((22 / 800) * 100vw);
  }
  .footerLinkArea .bottomNav li:before {
    content: none;
  }
  .copyright {
    padding: 11px 10px;
  }
  .copyright p {
    font-size: calc((16 / 800) * 100vw);
    font-weight: 400;
  }
  .overlay {
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 2;
  } */
  /* slideArea
	**************************/
  .slider img.pc {
    display: none;
  }
  .slider img.sp {
    display: block;
  }
  .slick-prev,
  .slick-next {
    width: calc((50 / 800) * 100vw);
    height: calc((50 / 800) * 100vw);
    margin-top: calc((-25 / 800) * 100vw);
  }
  .slick-prev {
    left: calc((10 / 800) * 100vw);
  }
  .slick-next {
    right: calc((10 / 800) * 100vw);
  }
  .slick-prev:after,
  .slick-next:after {
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    width: calc((10 / 800) * 100vw);
    height: calc((10 / 800) * 100vw);
    right: calc((20 / 800) * 100vw);
    margin-top: calc((-7 / 800) * 100vw);
  }
  .slick-dots {
    bottom: calc((24 / 800) * 100vw);
  }
  .slick-dots li + li {
    margin-left: calc((20 / 800) * 100vw);
  }
	.slick-dots li {
    width: calc((46 / 800) * 100vw);
    height: calc((4 / 800) * 100vw);
	}
  .slick-dots button {
    width: calc((46 / 800) * 100vw);
    height: calc((4 / 800) * 100vw);
  }
}
/*----------------------------------------------------
	フレックス
----------------------------------------------------*/

.fx {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}
.row {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: justify;
}
.fl-1{
	webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
.row-middle {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
	-ms-flex-align: center;
}

.ju-center {
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-pack: center;
}
.ju-left {
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-pack: start;
}
.ju-right {
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-ms-flex-pack: end;
}
.ju-around {
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-ms-flex-pack: distribute;
}
.v-center {
	-webkit-align-items: center;
	align-items: center;
	-ms-flex-align: center;
}
.v-end {
	-webkit-align-items: flex-end;
	-ms-align-items: flex-end;
	align-items: flex-end;
}
.r-rev {
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
@media (max-width: 767px) {
.sm-1 {
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	}
}
/*----------------------------------------------------
	
----------------------------------------------------*/

.mt5{margin-top:5px;}
.mt10{margin-top:10px;}
.mt20{margin-top:20px;}
.mt30{margin-top:30px;}
.mt40{margin-top:40px;}
.mt50{margin-top:50px;}

.mb5{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}
.mb60{margin-bottom:60px;}
.mb80{margin-bottom:80px;}
.mb100{margin-bottom:100px;}

.ml30{margin-left:30px;}
.ml5{margin-left:5px;}
.ml7{margin-left:7px;}
.ml10{margin-left:15px;}
.ml35{margin-left:35px;}
.ml100{margin-left:100px;}
.ml150{margin-left:150px;}
.ml180{margin-left:180px;}

.mrt10{margin-right:10px;}
.mrt35{margin-right:35px;}

@media only screen and (max-width: 767px) {	
	.mt5{margin-top:.78125vw;}
	.mt10{margin-top:1.5625vw;}
	.mt20{margin-top:3.125vw;}
	.mt30{margin-top:5.25vw;}
	.mt40{margin-top:6.25vw;}
	.mt50{margin-top:7.8125vw;}

	.mb5{margin-bottom:.78125vw;}
	.mb10{margin-bottom:1.5625vw;}
	.mb15{margin-bottom:2.34375vw;}
	.mb20{margin-bottom:3.125vw;}
	.mb30{margin-bottom:4.6875vw;}
	.mb40{margin-bottom:6.25vw;}
	.mb50{margin-bottom:7.8125vw;}
	.mb60{margin-bottom:9.375vw;}
	.mb80{margin-bottom:12.5vw;}
	.mb100{margin-bottom:15.625vw;}
}
/*----------------------------------------------------
	
----------------------------------------------------*/

.center{
	text-align: center;
}
.bold{
	font-weight: bold;
}
.fz10{
	font-size: 10px!important;
}
.fz12{
	font-size: 12px!important;
}
.fz14{
	font-size: 14px!important;
}
.fz16{
	font-size: 16px!important;
}
.fz18{
	font-size: 18px!important;
}
.fz20{
	font-size: 20px!important;
}
.fz22{
	font-size: 22px!important;
}
.fz24{
	font-size: 24px!important;
}
.fz26{
	font-size: 26px!important;
}
@media only screen and (max-width: 767px) {
.fz12{
	font-size: calc((26 / 800) * 100vw)!important;
}
}

/* youtube */
.youtube{ position: relative; width: 100%; padding-top: 56.25%;}
.youtube iframe{ position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important;}

/*----------------------------------------------------
	
----------------------------------------------------*/

li.basic-service:before {
/*    content: '標準サービス';*/
    position: absolute;
    z-index: 999;
    background: #005b3a;
    color: #fff;
    font-size: 14px;
    padding: 10px;
    margin: 15px 0 0 10px;
    display: inline-block;
	pointer-events: none;
}
li.basic-service:hover:before{
	opacity: 0.7;
}
@media only screen and (max-width: 767px){
	li.basic-service a{
		/* padding-top: calc((120 / 800) * 100vw) !important; */
		padding-top: calc((100 / 800) * 100vw) !important;
	}
	li.basic-service:before{
		font-size: 3.13vw;
	    /* margin: calc((30 / 800) * 100vw) 0 0 0; */
		margin: calc((25 / 800) * 100vw) 0 0 0;
		padding: 0.75em;
		left: 50%;
		transform: translateX(-50%);
	}
}

/* none */
.sponly{ }
.pconly{ }
@media screen and (min-width: 767px) { .sponly{ display:none!important;}}
@media screen and (max-width: 768px) { .pconly{ display:none!important;}}