@charset "UTF-8";
/*
 * layout.css
 *
 *  version --- 1.0
 *  updated --- 2017/11/30
 */

/* !wrapper
---------------------------------------------------------- */
#wrapper {
	width: 100%;
}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
	#wrapper {
		/* padding-top: 55px; */
		/* padding-top: 9px; */
	}
}

/* !header
---------------------------------------------------------- */
#header {
	position: relative;
	padding-bottom: 44px;
}


#headerLogo {}

.headerTopBlock {
	width: 100%;
	height: 40px;
	background: #000;
	color: #fff;
	font-size: 10px;
	line-height: 40px;
	padding: 0 10px;
	/* padding: 50px 10px 40px; */
	box-sizing: border-box;
	/*visibility: hidden;*/
}

.pc_top {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
	max-width: 1100px;
	padding: 0 10px;
	margin: 0 auto;
}

.pc_top p {
	float: left;
	font-size: 1.1rem;
	font-weight: bold;
	letter-spacing: 0.025em;
}

.pc_top .head_info {
	display: flex;
	align-items: center;
}

.head_info .contact {
	font-size: 1.1rem;
	font-weight: bold;
	padding: 0 15px 0 0;
	line-height: 40px;
	border-left: none;
}

.head_info .contact a {
	color: #fff;
	pointer-events: none;
	font-size: 1.8rem;
	padding-left: 25px;
	box-sizing: border-box;
	background: url('../img/common/tel.png')no-repeat left 10px center;
}

.headerWrap {
	height: 44px;
	padding: 0;
	background: #fff;
	margin: auto;
	box-sizing: border-box;
	width: 100%;
	text-align: center;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
}

#headerIn {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	height: 66px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 10px;
	box-sizing: border-box;
}

.headerLogo {
	display: flex;
	align-items: center;
}

.headerLogo img {
	width: 138px;
}

.headerLogo h1 {
	font-size: 10px;
	line-height: 1.5;
	font-weight: bold;
	color: #010101;
	margin-left: 36px;
}

.headerText p{
	font-size: 10px;
	font-weight: bold;
}

.headerArea {
	display: flex;
	align-items: center;
}

.headerSns {
	display: flex;
	align-items: center;
	padding: 0 8px;
}
.headerSns a {
 	margin: 0 7px;
	width: 34px;
}

.headerLinks {
	display: flex;
}
.headerLinks a { 
	width: 56px;
	height: 56px;
	border-radius: 10px;
	padding-bottom: 10px;
	text-align: center;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	background: url('../img/common/head_icon03.png')no-repeat top 10px center;
	background-color: #2AB5FF;
	background-size: auto 22px;
	color: #fff;
	font-weight: bold;
	font-size: 1rem;
	line-height: 1;
	margin-left: 5px
}
.headerLinks .contact {
  display: none;
  background-image: url('../img/common/tel.png');
  background-color: #000;
}
.headerLinks .request {
  background-image: url('../img/common/head_icon01.png');
	background-color: #ffd42b;
  color: #111;
}
.headerLinks .reservate {
	background-image: url('../img/common/head_icon02.png');
	background-color: #ee6354;
}

.headerLinks a:hover {
	opacity: 0.8;
	transition: all 0.5s;
	text-decoration: none;
}

.headerLogo img {
	width: auto;
	height: auto;
}

.headerLogo a img:hover,
.headerLogo a:hover {
	opacity: 0.8;
	transition: all 0.5s;
}

.hidden {
	display: none;
}

.fat-nav {
	display: table-cell;
	vertical-align: middle;
}

#gNavi {
	width: 100%;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin: 0 auto;
	background: #EF6354;
}

#gNavi li {
	margin: 0 13.5px;
	position: relative;
	z-index: 2; 
}

#gNavi li a { 
	display: flex;
	justify-content: center;
	align-items: center;
	height: 44px;
	color: #fff;
	letter-spacing: 0.05em;
	font-size: 1.6rem;
  font-weight: bold;
	position: relative;
	z-index: 2; 
}
 
#gNavi li.new a:before {
	position: absolute;
	left: 0;
	top: -4px;
	display: inline-block;
	padding: 2px 4px;
	font-size: 8px;
	line-height: 1;
	color: #000000;
	background: #FDCD02;
	content: 'NEW';
}

#gNavi li a:hover {
	text-decoration: underline;
}

#headerLinks,
.btnMenu {
	display: none;
}

.headerCv {
  position: fixed;
  right: 30px;
  bottom: 20px;
  z-index: 9;
}
.headerCv .close {
  cursor: pointer;
  position: absolute;
  right: -13px;
  top: -13px;
  z-index: 1;
  width: 26px;
  border-radius: 100%;
  box-shadow: 3px -1px 17px rgba(0,0,0,0.16);
}
.headerCv .cv {
  display: block;
  position: relative;
  z-index: 0;
  width: 250px;
  box-shadow: 0 3px 17px rgba(0,0,0,0.16);
} 
.headerCv .cv:hover {
  opacity: 0.8;
}

@media screen and (max-width: 1100px) {
	#header {
		padding-bottom: 0;
	}
	
	#headerIn {
		height: 55px;
		padding: 0 60px 0 10px;
	}
  
	.headerWrap {
		display: none; 
	} 
  
  .headerLinks a {
	  width: 50px;
	  height: 50px;
	  font-size: .7rem;
    padding: 0 0 8px;
    background-size: 21px; 
  } 
  .headerLinks .contact {
    display: flex;
    background-size: 1.2rem; 
  }
	
  .headerLinks .request {
    background-size: 1rem; 
  }
  .headerLinks .reservate {
    background-size: 1.4rem; 
  }
  
	#headerLinks {
		position: absolute;
		bottom: 0;
		right: 0;
	}
	#headerLinks,
	.btnMenu {
		display: block;
	} 
	.btnMenu a {
		display: block;
		width: 55px;
		height: 55px;
		box-sizing: border-box;
		position: relative;
	} 
	.btnMenu a span {
		display: block;
		background: #515151;
		width: 15px;
		height: 2px;
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		transition: all 0.4s;
		-webkit-transition: all 0.4s;
		-moz-transition: all 0.4s;
	} 
	.btnMenu a em {
		font-size: 0.8rem;
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		bottom: 8px;
		display: block;
		text-align: center;
	} 
	.btnMenu a span:first-child {
		top: 15px;
	}
	.btnMenu a span:nth-child(2) {
		margin-top: -8px;
		top: 50%;
	}
	.btnMenu a span:nth-child(3) {
		bottom: 28px;
	} 
  
	.btnMenu.active a span:first-child {
		-webkit-transform: translateY(8px) rotate(45deg);
		-moz-transform: translateY(8px) rotate(45deg);
		-ms-transform: translateY(8px) rotate(45deg);
		transform: translateY(8px) rotate(45deg);
	}
	.btnMenu.active a span:nth-child(2) {
		opacity: 0;
	}
	.btnMenu.active a span:nth-child(3) {
		-webkit-transform: translateY(-8px) rotate(-45deg);
		-moz-transform: translateY(-8px) rotate(-45deg);
		-ms-transform: translateY(-8px) rotate(-45deg);
		transform: translateY(-8px) rotate(-45deg); 
	}
  
	#headerLinks .addfont {
		display: none;
	}

	#headerLinks.active .addfont {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #cde2e6;
		display: block !important;
		color: #000;
		font-size: 0.7rem;
		text-align: center;
	}

	#headerLinks.active .addfont em {
		display: block;
		margin: 16px 0 8px;
	}
  
}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
	#header {
		position: fixed;
		left: 0;
		top: 0;
		z-index: 999;
		width: 100%;
		background: #fff;
	}

	.headerTopBlock {
		display: none;
	}

	#gNavi {
		display: none;
		position: fixed;
		top: 0;
		width: 100%;
	}

	#headerIn {
		min-height: 55px;
		max-height: 55px;
		padding: 0 57px 0 15px;
		/* margin-top: 60px; */
	}
	.headerLogo h1 {
		display: none;
	} 
  .headerLogo img {
    width: 80px;
  }
  .headerText p{
	display: none;
  }
  
  .headerSns {
    display: none;
  }
  
	.headerLinks a {
		padding: 0 0 8px;
		background-position: center 8px; 
		font-size: 0.7rem;
		margin-left: 2px;
	}
	
  .headerLinks .contact {
    background-position: center 10px; 
  }
 

  .headerCv {
    right: 20px;
    bottom: 10px;
  }
  .headerCv .close { 
    right: -10px;
    top: -10px; 
    width: 20px; 
  }
  .headerCv .cv { 
    width: 140px; 
  } 
  
}

@media screen and (max-width: 374px) {
	.headerLogo img {
		height: 25px;
	}

	.secondBox a {
		font-size: 1rem;
	}
}

/* !breadcrumb
---------------------------------------------------------- */
#breadcrumb {}

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {}



/* !mainVisual
---------------------------------------------------------- */
#mainVisual {}

.mv .mainImg {
	width: 100%;
	height: 656px;
	background-size: cover;
	position: relative;
	min-width: unset;
}

.mv .mainImg h2 {
	position: absolute;
	text-align: center;
	/*	bottom: 150px;*/
	/*
	bottom: 20%;
	left: 0;
	right: 0;
	*/
	margin: auto;
	color: #fff;
	z-index: 100;

	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.mv .mainImg .shikaku-debut {
	position: absolute;
	text-align: center;
	/*	bottom: 150px;*/
	/*
	bottom: 20%;
	left: 0;
	right: 0;
	*/
	margin: auto;
	color: #fff;
	z-index: 100;

	top: 70%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.mv .mainImg h2 img {
/*	margin: 0 auto 3em;*/
margin: 0 auto 21px;
}

.mv .mainImg h2 .subTitle {
	display: block;
	text-align: center;
	font-size: 1.5rem;
	line-height: 1.6;
}

.underline {
	position: relative;
	color: #fff;
	font-size: 1.5rem;
	letter-spacing: 0.15em;
	padding-bottom: 7px;
	display: inline-block;
	overflow: hidden;
	text-shadow: 1px 1px 5px #bbb;
}

.underline:before {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 0;

	background: #fff;
	filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.6));
}

.underline:after {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: -100%;

	background: #fff;
	filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.6));
}

/*
.mainImg:nth-child(2) .underline,
.mainImg:nth-child(5) .underline,
.mainImg:nth-child(8) .underline,
.mainImg:nth-child(9) .underline,
.mainImg:nth-child(11) .underline,
.mainImg:nth-child(13) .underline {
	color: #000;
}
*/

.underline:hover {
	text-decoration: none;
	border-bottom: none;
}

.underline:hover:before {
	left: 100%;
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important;
	/* Firefox */
	-webkit-transition: all 0.3s !important;
	/* Chrome&Safari */
}

.underline:hover:after {
	left: 0;
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important;
	/* Firefox */
	-webkit-transition: all 0.3s !important;
	/* Chrome&Safari */
	transition-delay: .4s !important;
	-moz-transition-delay: .4s !important;
	/* Firefox */
	-webkit-transition-delay: .4s !important;
	/* Chrome&Safari */
}


.mv .under {
	position: relative;
	z-index: 10;
	max-width: 1320px;
	padding: 0 10px;
	width: 100%;
	box-sizing: border-box;
	margin: 0 auto;
}

.mv .under ul.lineup_list {
	margin: -60px 0 0 0;
	text-align: center;
}

.mv .under ul.lineup_list li {
	position: relative;
	display: inline-block;
	padding: 0 15px;
	box-sizing: border-box;
}

.mv .under li .photoListBox img {
	width: auto;
	height: 235px;
	max-width: none;
}

.mv .under li .photoListBox img {
	transition: all 0.3s;
}

.mv .under li .photoListBox:hover img {
	transform: translate(0, 15px);
	transition: all 0.3s;
}

.mv .under li .photoListBox:hover,
.mv .under li .photoListBox:hover img {
	opacity: 1;
}

.mv .under ul.lineup_list li.new:before {
	content: '';
	background: url("../img/top/icon_new.png") no-repeat center top;
	width: 90px;
	height: 22px;
	position: absolute;
	top: -18px;
	left: 38px;
}

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
	.mv .mainImg {
		height: 280px;
		min-width: unset;
		width: 100%;
		background-size: cover;
	}

	.mv .under {
		padding: 0;
	}

	.mv .under ul.lineup_list {
		margin: -30px 0 0;
		text-align: center;
	}

	.mv .under ul.lineup_list li {
		padding: 0 3px;
	}


	.mv .mainImg h2 {
		bottom: 70px;
	}

	.mv .mainImg h2 img {
/*		width: 50%;*/
		margin: 0 auto 1em;
	}

	.mv .mainImg h2 .subTitle {
		font-size: 1rem;
	}

	.underline {
		font-size: 1rem;
		padding-bottom: 5px;
	}

	.mv .under li .photoListBox img {
		height: 80px;
	}

	.mv .under ul.lineup_list li.new:before {
		background-size: 80% 80%;
		left: -18px;
	}

}

/* !teaser
---------------------------------------------------------- */
#teaser {}

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {}

/* !contents
---------------------------------------------------------- */
#contents {}

#main {}

.inner {
	max-width: 1220px;
	padding: 0 10px;
	box-sizing: border-box;
	margin: 0 auto;
	width: 100%;
}

.contentWrap {
	padding: 60px 0 0;
}

.eventArea {
	background: url("../img/top/event_bg.png")no-repeat 0 0;
	background-size: cover;
	min-height: 980px;
	margin-top: 120px;
	position: relative;
	box-sizing: border-box;
	padding-bottom: 10px;
}

.eventArea:before {
	position: absolute;
	right: 35px;
	top: -120px;
	content: '';
	background: url('../img/top/icon_img02.png')no-repeat right 0;
	width: 102px;
	height: 133px;
}

.eventArea:after {
	position: absolute;
	left: 26%;
	top: 60px;
	content: '';
	background: url('../img/top/icon_img03.png')no-repeat right 0;
	width: 113px;
	height: 53px;
}

.eventIcon {
	position: relative;
	margin-bottom: 60px;
}

.eventIcon:before {
	position: absolute;
	left: -45px;
	top: -85px;
	content: '';
	background: url('../img/top/icon_img04.png')no-repeat right 0;
	width: 363px;
	height: 114px;
}

.eventIcon:after {
	position: absolute;
	right: 0;
	top: -85px;
	content: '';
	background: url('../img/top/icon_img05.png')no-repeat right 0;
	width: 363px;
	height: 114px;
}

.eventItem {}

.eventItem ul {
	margin-left: -80px;
}

.eventItem ul li {
	float: left;
	width: 33.33%;
	padding-left: 80px;
	box-sizing: border-box;
	margin-bottom: 60px;
}

.eventItem ul li a {
	display: block;
}

.eventItem ul li a img {
	width: auto;
}

.eventItem ul li a:hover {
	text-decoration: none;
	opacity: 0.8;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important;
	/* Firefox */
	-webkit-transition: all 0.5s !important;
	/* Chrome&Safari */
}

.eventItem ul li .eventIist {
	position: relative;
}

.eventPro {
	position: absolute;
	top: -4px;
	left: -4px;
	color: #fff;
	z-index: 995;
}

.eventPro span {
	padding: 4px 19px 4px 18px;
	font-size: 1.1rem;
	letter-spacing: 0.025em;
	min-width: 60px;
	box-sizing: border-box;
	background-color: #000;
	display: inline-block;
}

.eventPro span.red,
.eventPro span.status_accept {
	background-color: #ee6354;
}

.eventPro span.blue,
.eventPro span.status_plans {
	background-color: #4dbbd3;
}

.eventPro span.grey,
.eventPro span.status_finish {
	background-color: #a8b3b6;
}

.home .eventItem ul li .eventIist .eventImg {
	margin-bottom: 15px;
}

.eventItem ul li .eventIist .eventTime {
	margin: 15px 0;
	font-size: 1.4rem;
}

.eventItem ul li .eventIist .eventTime span {
	font-weight: bold;
}

.eventItem ul li .eventIist .eventInfo {
	font-size: 1.4rem;
}

.btnlinks {
	margin: 0 auto;
	text-align: center;
}

.btnlinks a {
	position: relative;
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	padding-bottom: 7px;
	display: inline-block;
	overflow: hidden;
}

.btnlinks a span {
	display: block;
	padding-right: 50px;
	box-sizing: border-box;
}

.btnlinks a span:before {
	content: "";
	width: 18px;
	height: 13px;
	position: absolute;
	top: 4px;
	right: 0;
	background: url('../img/common/arrow_btn.png')no-repeat right center;
}

.btnlinks a:before {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 0;
	background: #000;
}

.btnlinks a:after {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: -100%;
	background: #000;
}

.btnlinks a:hover {
	text-decoration: none;
	border-bottom: none;
}

.btnlinks a:hover:before {
	left: 100%;
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important;
	/* Firefox */
	-webkit-transition: all 0.3s !important;
	/* Chrome&Safari */
}

.btnlinks a:hover:after {
	left: 0;
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important;
	/* Firefox */
	-webkit-transition: all 0.3s !important;
	/* Chrome&Safari */
	transition-delay: .4s !important;
	-moz-transition-delay: .4s !important;
	/* Firefox */
	-webkit-transition-delay: .4s !important;
	/* Chrome&Safari */
}


.onsaleArea .onsaleItem {
	margin: 60px 0 40px;
}

.onsaleArea .onsaleItem ul {
	margin-left: -20px;
}

.onsaleArea .onsaleItem ul li {
	float: left;
	width: 25%;
	padding-left: 20px;
	box-sizing: border-box;
}

.onsaleArea .onsaleItem ul li a {
	display: block;
}

.onsaleArea .onsaleItem ul li a:hover {
	opacity: 0.8;
	transition: all 0.5s;
	text-decoration: none;
}

.onsaleArea dl {
	display: table;
}

.onsaleArea dl dt,
.onsaleArea dl dd {
	display: table-cell;
}

.onsaleArea dl dt {
	width: 120px;
}

.onsaleArea dl dd {
	padding-left: 13px;
	box-sizing: border-box;
}

.onsaleArea dl dd h2 {
	font-size: 1.3rem;
	letter-spacing: 0.025em;
	line-height: 1.64;
}

.onsaleArea dl dd p {
	font-size: 1.2rem;
	letter-spacing: 0.025em;
	line-height: 2;
	padding-left: 30px;
	box-sizing: border-box;
}

.onsaleArea dl dd p.price {
	background: url('../img/top/on_price.jpg')no-repeat left 5px top 4px;
}

.onsaleArea dl dd p.map {
	background: url('../img/top/on_map.jpg')no-repeat left 5px top 4px;
}



.outlinkArea {}

.outlinkItem {}

.outlinkItem {}

.outlinkItem ul {}

.outlinkItem ul li {
	/*	float: left;
	width: 50%;*/
	padding-top: 60px;
	box-sizing: border-box;
	overflow: hidden;
}

/*
.outlinkItem ul li:first-child {
	background: url('../img/top/magback.png')no-repeat 0 0;
	min-height: 800px;
	background-size: cover;
}
*/
.outlinkItem ul li:last-child {
	background-color: #a4cbca;
	min-height: 800px;
	background-size: cover;
}

.magBox {
	/*	float: right;
	width: 100%;*/
	max-width: 600px;
	padding-right: 50px;
	box-sizing: border-box;
}

.magBox h2 {
	text-align: center;
	font-size: 1.2rem;
	letter-spacing: 0.025em;
	background: url('../img/top/magicon.png')no-repeat center center;
	padding: 18px 0 14px;
	margin-bottom: 30px;
}

.magBox h2 span {
	display: block;
	font-size: 3.6rem;
	line-height: 1;
}

.magList {
	/*	float: left;*/
	padding-left: 50px;
	margin: auto;
}

.magList h2 {
	background: url('../img/top/blogicon.png')no-repeat center top 10px;
	padding: 16px 0;
}

.magDl dl {
	display: table;
	width: 100%;
	margin-bottom: 39px;
}

.magBox .btnlinks {
	margin-top: 60px;
}

.magDl dl dt,
.magDl dl dd {
	display: table-cell;
}

.magDl dl dt {
	width: 200px;
}

.magDl dl dt a {
	border: 4px solid #fff;
	box-sizing: border-box;
	display: block;
	max-height: 131px;
	overflow: hidden;
}

.magDl dl dt a:hover {
	opacity: 0.8;
	transition: all 0.5s;
}

.magDl dl dd {
	padding-left: 20px;
	box-sizing: border-box;
}

.magDl dl dd h3 {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.magDl dl dd h3 p {
	display: inline-block;
	color: #fff;
	background-color: #000;
	font-size: 1.1rem;
	letter-spacing: 0.025em;
	padding: 2px 4px;
	box-sizing: border-box;
}

.magDl dl dd h3 p span {
	font-size: 1.3rem;
}

.magDl dl dd h3 span p {
	display: none;
}

.magDl dl dd h4 {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.33;
	margin: 10px 0 20px;
	letter-spacing: 0.025em;
}

.magDl dl dd h5 {
	font-size: 1.3rem;
	line-height: 1.33;
	letter-spacing: 0.025em;
	width: 320px;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.magList dl {
	display: table;
	width: 100%;
}

.magList dl.dashed {
	border-bottom: 1px dashed #fff;
}

.magList dl dt,
.magList dl dd {
	display: table-cell;
	border-top: 1px dashed #fff;
}

.magList dl dt {
	width: 100px;
	box-sizing: border-box;
	font-size: 1.3rem;
	letter-spacing: 0.025em;
	padding: 20px 0 20px 10px;
}

.magList dl dd {
	font-size: 1.5rem;
	letter-spacing: 0.025em;
	font-weight: bold;
	vertical-align: middle;
	padding: 10px 0;
}




.reportItem {}

.reportItem ul {
	margin-left: -20px;
}

.reportItem ul li {
	float: left;
	width: 33.33%;
	padding-left: 20px;
	box-sizing: border-box;
}

.reportItem ul li a {
	display: block;
}

.reportItem ul li a:hover {
	opacity: 0.8;
	transition: all 0.5s;
	text-decoration: none;
}

.reportItem ul li:nth-child(3n+2) dl {
	margin-top: 90px;
}

.reportItem dl {}

.reportItem dl dt {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-end;
	align-items: flex-end;
	width: 100%;
}

.reportItem dl dd {
	padding-left: 20px;
	box-sizing: border-box;
}

.reportList {
	box-sizing: border-box;
	background: url('../img/top/reportBack.png')no-repeat left bottom;
	padding: 0 0 40px 30px;
	width: 100%;
}

.reportList h3 {
	font-size: 1.4rem;
	line-height: 1.42;
	letter-spacing: 0.025em;
}

.reportList p {
	font-size: 1.3rem;
	line-height: 1.53;
	letter-spacing: 0.025em;
}

.reportBox {
	position: relative;
	margin-top: 15px;
	box-shadow: 0 0 20px rgba(239, 240, 244, 1.0);
	max-width: 320px;
	width: 100%;
}

.reportBox h2 {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background: rgba(0, 0, 0, 0.7);
	color: #fff;
	padding: 6px 5px 5px 15px;
	box-sizing: border-box;
	font-size: 1.3rem;
}

/* .reportBox img{
	width: 100%;
} */

.speedArea {
	max-width: 240px;
	width: 100%;
	margin: 40px auto 0;
}

.speedArea p {
	font-size: 2rem;
	font-weight: bold;
	line-height: 1;
	border-bottom: 3px solid #000;
	padding-bottom: 10px;
}

.speedArea p b {
	font-size: 1.6rem;
}

.speedArea span {
	font-size: 1.2rem;
	display: inline-block;
	background-color: #ee6354;
	color: #fff;
	font-weight: bold;
	padding: 4px 18px;
	box-sizing: border-box;
}

.speedArea em {
	font-size: 3.6rem;
	display: inline-block;
	margin: 0 18px;
}

.reportArea .btnlinks {
	margin-top: 90px;
}



.moveArea {
	margin-top: 70px;
	padding-top: 50px;
	box-sizing: border-box;
	background: url('../img/top/movebank.png')no-repeat 0 0;
	background-size: cover;
	min-height: 760px;
}

.moveArea .hdL em {
	position: relative;
}

.moveArea .hdL em:before {
	position: absolute;
	left: -55px;
	top: -55px;
	content: '';
	background: url(../img/top/start.png)no-repeat right 0;
	width: 43px;
	height: 31px;
}

.fancyboximg {
	width: 853px;
	height: 480px;
}

.fancyboxPart iframe {
	width: 100%;
	height: 100%;
}

.fancybox-overlay {
	background: rgba(255, 255, 255, 0.8) !important;
}


.moveItem {
	margin-top: 90px;
}

.moveItem ul {
	margin-left: -80px;
}

.moveItem ul li {
	float: left;
	width: 50%;
	padding-left: 80px;
	box-sizing: border-box;
	position: relative;
}

.moveItem ul li:first-child:before {
	position: absolute;
	top: -60px;
	left: -60px;
	background: url('../img/top/moveIcon01.png')no-repeat 0 0;
	width: 196px;
	height: 72px;
	content: '';
}

.moveItem ul li:last-child:before {
	position: absolute;
	top: -60px;
	left: 40px;
	background: url('../img/top/moveIcon02.png')no-repeat 0 0;
	width: 125px;
	height: 49px;
	content: '';
}

.moveItem ul li:last-child {
	margin-top: 110px;
}

.moveYoutube {
	padding: 100px 0;
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}

.moveYoutube li {
	width: 32%;
}

.moveYoutube li:nth-child(4) {
	margin-top: 45px;
}

.moveYoutube li:nth-child(5) {
	margin-top: 45px;
}

.moveYoutube li:nth-child(6) {
	margin-top: 45px;
}

.moveYoutube .moveYoutube_wrap {
	width: 100%;
	height: 0;
	position: relative;
	padding-top: 56.25%;
	overflow: hidden;
}

.moveYoutube .moveYoutube_wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

.icon-play {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.mon_lp_Abox {
	position: relative;
}

.mon_lp_Abox:hover {
	opacity: 0.8;
	transition: all 0.5s;
}

.moveItem ul li:first-child .mon_lp_Abox:before {
	position: absolute;
	right: -25px;
	bottom: -2px;
	background: url('../img/top/moveIcon03.png')no-repeat 0 0;
	width: 418px;
	height: 13px;
	content: '';
}

.moveItem ul li:last-child .mon_lp_Abox:before {
	position: absolute;
	left: -56px;
	bottom: -10px;
	background: url('../img/top/moveIcon04.png')no-repeat 0 0;
	width: 235px;
	height: 31px;
	content: '';
}


.reportBox .reportBrand {
	position: absolute;
	left: 10px;
	top: 10px;
	width: 50px;
	z-index: 2;
}

.reportBox .reportBrand img {
	width: 100%;
}



.home .fancybox-opened .fancybox-skin,
#renovation .fancybox-opened .fancybox-skin {
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
}

.home .fancybox-skin,
#renovation .fancybox-close {
	background: transparent;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
}

.home .fancybox-close,
#renovation .fancybox-close {
	background: url("../img/top/ico_close.png") no-repeat !important;
	background-size: 100% !important;
	position: absolute;
	top: -10px;
	right: -20px;
	transform: translateY(-100%);
	width: 35px;
	height: 35px;
	cursor: pointer;
	z-index: 8040;
}



.wecomeArea {
	background: url("../img/top/wecomeBank.png") no-repeat 0 0;
	background-size: cover;
	padding-top: 35px;
	min-height: 320px;
	box-sizing: border-box;
}

.wecomeArea .wecomeItem {
	/*
  max-width: 580px;
*/
	max-width: 840px;
	margin: 0 auto;
	width: 100%;
	position: relative;
}

.wecomeItem:before {
	position: absolute;
	top: 24%;
	right: -10%;
	-webkit-transform: rotate(4deg);
	-moz-transform: rotate(4deg);
	-ms-transform: rotate(4deg);
	-o-transform: rotate(4deg);
	transform: rotate(4deg);
	background: url('../img/top/card.png')no-repeat 0 0;
	width: 90px;
	height: 71px;
	content: '';
}

.wecomeArea h2 {
	text-align: center;
	border-bottom: 1px solid #fff;
	color: #fff;
	font-size: 2rem;
	line-height: 1;
	letter-spacing: 0.2em;
	font-style: oblique;
}

.wecomeArea h3 {
	text-align: center;
	border-bottom: 1px solid #fff;
	color: #fff;
	font-size: 3.6rem;
	font-weight: bold;
	letter-spacing: 0.075em;
	padding: 7px 0 8px;
}

.wecomeArea p {
	text-align: center;
	color: #fff;
	font-size: 1.3rem;
	line-height: 1.84;
	font-weight: bold;
	letter-spacing: 0.055em;
	margin: 20px auto 30px;
}

.wecomeArea a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 210px;
	height: 60px;
	color: #fff;
	font-size: 1.5rem;
	font-weight: bold;
	background-color: #ee6354;
	margin: 0 auto;
}

.wecomeArea a:hover {
	opacity: 0.8;
	transition: all 0.5s;
	text-decoration: none;
}

.contArea {
	padding: 60px 0 70px;
}

.contArea h2 {
	text-align: center;
	color: #231815;
	font-size: 3.6rem;
	margin-bottom: 35px;
}

.contArea dl {
	display: table;
	width: 100%;
	max-width: 1060px;
	margin: 0 auto;
	box-sizing: border-box;
}

.contArea dl dt,
.contArea dl dd {
	display: table-cell;
	vertical-align: middle;
}

.contArea dl dt {
	width: 660px;
}

.contArea dl dd {
	padding-left: 35px;
	box-sizing: border-box;
}

.contItem {
	border: 3px solid #000;
	padding: 17px 17px 13px;
	box-sizing: border-box;
}

.contItem ul {
	margin-left: -30px;
}

.contItem ul li {
	float: left;
	width: 33.33%;
	padding-left: 30px;
	box-sizing: border-box;
	margin-top: 10px;
}

.contItem ul li p {
	font-size: 1.1rem;
	font-weight: bold;
	letter-spacing: 0.025em;
}

.contItem ul li .contTel {
	pointer-events: none;
	font-size: 3.2rem;
	padding-left: 30px;
	box-sizing: border-box;
	background: url(../img/top/tel02.png)no-repeat left 3px center;
}

.contQa {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 180px;
	height: 50px;
	font-size: 1.4rem;
	font-weight: bold;
	margin: 0 auto;
	padding-left: 64px;
	box-sizing: border-box;
	background: url(../img/top/email.png)no-repeat left 30px center;
	background-color: #ffd42b;
	margin-top: 10px;
}

.contQa:hover {
	opacity: 0.8;
	transition: all 0.5s;
	text-decoration: none;
}

.contList .time {
	font-size: 1.1rem;
	padding-left: 26%;
	box-sizing: border-box;
	padding-top: 2px;
	letter-spacing: 0.1em;
}

.contList .time span {
	font-size: 1.2rem;
}

.contLine {

	box-sizing: border-box;
	background: url('../img/top/line.png')no-repeat left 23px center;
	background-color: #3aae36;
}

.contLine .sub {
	color: #fff;
	font-size: 2rem;
	font-weight: bold;
	text-align: left;
}

.contLine p {
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.42;
	letter-spacing: 0.05em;
}

.contLine a {
	color: #fff;
	display: block;
	padding: 22px 35px 15px 100px;
	height: 100%;
	width: 100%;
	position: relative;
	box-sizing: border-box;
}

.contLine a:hover {
	opacity: .7;
	text-decoration: none;
}


/* WORKS ------------------------*/
.worksItem {}

.worksItem ul {
	margin-left: -80px;
}

.worksItem ul li {
	float: left;
	width: 33.33%;
	padding-left: 80px;
	box-sizing: border-box;
	margin-bottom: 60px;
}

.worksItem ul li a {
	display: block;
}

.worksItem ul li a img {
	width: auto;
}

.worksItem ul li a:hover {
	text-decoration: none;
	opacity: 0.8;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important;
	/* Firefox */
	-webkit-transition: all 0.5s !important;
	/* Chrome&Safari */
}

.worksItem ul li .worksIist {
	position: relative;
}

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
	.contentWrap {
		padding: 30px 0 0;
	}

	.eventArea {
		min-height: unset;
		margin-top: 20px;
		padding-bottom: 30px;
	}

	.eventIcon {
		margin-bottom: 30px;
	}

	.eventArea:after {
		left: 35px;
		top: 40px;
		width: 57px;
		height: 27px;
		background-size: 100% auto;
	}

	.eventArea:before {
		right: 0;
		top: -75px;
		background-size: 100% auto;
		width: 65px;
		height: 84px;
	}

	.eventItem ul {
		margin-left: -25px;
	}

	.eventItem ul li {
		width: 50%;
		padding-left: 25px;
		margin-bottom: 40px;
	}

	.eventPro {
		top: -12px;
		left: -5px;
	}

	.eventPro span {
		padding: 3px 7px 3px;
		font-size: 0.8rem;
		line-height: 1;
		text-align: center;
	}

	.eventItem ul li .eventIist .eventTime {
		margin: 10px 0 0;
		font-size: 1.1rem;
	}

	.eventItem ul li .eventIist .eventInfo {
		font-size: 1.3rem;
	}

	.btnlinks a {
		padding-bottom: 4px;
	}

	.btnlinks a span:before {
		width: 13px;
		height: 13px;
		top: 4px;
		background-size: 100% auto;
	}

	.onsaleArea .onsaleItem {
		margin: 25px 0 0;
	}

	.onsaleArea .onsaleItem ul {
		margin-left: 0;
		padding: 0 5px;
		box-sizing: border-box;
	}

	.onsaleArea .onsaleItem ul li {
		float: none;
		width: 100%;
		padding-left: 0;
		margin-bottom: 20px;
	}

	.onsaleArea dl dd h2 {
		font-size: 1.3rem;
		line-height: 1.3;
	}

	.onsaleArea dl dd p {
		padding-left: 25px;
	}

	.onsaleArea dl dd {
		padding-left: 15px;
	}

	.outlinkItem ul li {
		float: none;
		width: 100%;
		padding-top: 30px;
	}

	.magBox {
		float: none;
		width: 100%;
		max-width: 100%;
		padding-right: 0;
		padding: 0 15px;
		box-sizing: border-box;
	}

	.magDl dl {
		display: block;
		overflow: hidden;
		margin-bottom: 30px;
	}

	.magDl dl dt {
		width: 140px;
		float: left;
		display: block;
	}

	.magDl dl dd {
		overflow: hidden;
		display: block;
		padding-left: 15px;
	}

	.magDl dl dt a {
		border: 2px solid #fff;
		max-height: 97px;
	}

	.magDl dl dd h3 p {
		font-size: 0.8rem;
		padding: 1px 4px;
	}

	.magDl dl dd h3 {
		display: block;
	}

	.magDl dl dd h3 span {
		display: block;
		font-size: 1rem;
		text-align: right;
		margin-top: 3px;
	}

	.magDl dl dd h4 {
		font-size: 1.4rem;
		margin: 5px 0 10px;
	}

	.magDl dl dd h5 {
		font-size: 1.2rem;
		width: 190px;
	}

	.magBox h2 {
		background-size: 81px auto;
		padding: 18px 0 14px;
		margin-bottom: 10px;
	}

	.magBox .btnlinks {
		margin-top: 35px;
	}

	.outlinkItem ul li:first-child {
		min-height: unset;
		padding-bottom: 30px;
	}

	.magList h2 {
		background-size: 93px auto;
	}

	.magList dl dt {
		font-size: 1rem;
		padding: 13px 0 13px 5px;
	}

	.magList dl dd {
		font-size: 1.3rem;
	}

	.outlinkItem ul li:last-child {
		min-height: unset;
		padding-bottom: 30px;
	}

	.speedArea {
		max-width: 150px;
		margin: 20px auto 35px;
	}

	.speedArea p {
		font-size: 1.3rem;
		border-bottom: 2px solid #000;
		padding-bottom: 5px;
	}

	.speedArea p b {
		font-size: 1rem;
	}

	.speedArea em {
		font-size: 2.4rem;
		margin: 0 6px;
	}

	.speedArea span {
		font-size: 0.8rem;
		padding: 2px 8px;
	}

	.reportList h3 {
		font-size: 1.2rem;
	}

	.reportList p {
		font-size: 0.8rem;
	}

	.reportList {
		background: url(../img/top/reportBack.png)no-repeat left bottom;
		background-size: 136px auto;
		padding: 0 0 10px 15px;
	}

	.reportItem ul li:nth-child(2) {
		margin-top: 0;
	}

	.reportItem dl dt {}

	.reportItem dl dd {
		padding-left: 10px;
	}

	.reportBox h2 {
		padding: 5px 0 5px 7px;
		font-size: 0.9rem;
	}

	.home .reportItem ul li:nth-child(3n+2) dl {
		margin-top: 0;
	}

	.reportSlick .slick-dots {
		position: absolute;
		bottom: -25px;
		display: block;
		width: 100%;
		padding: 0;
		margin: 0;
		list-style: none;
		text-align: center;
	}

	.reportSlick .slick-dots li {
		position: relative;
		display: inline-block;
		width: 7px;
		height: 7px;
		margin: 0 8px;
		padding: 0;
		cursor: pointer;
		border: 1px solid #1f1f1f;
		background: #fff;
		-webkit-border-radius: 50%;
		border-radius: 50%;
		float: none;
	}

	.reportSlick .slick-dots li button {
		font-size: 0;
		line-height: 0;
		display: block;
		width: 7px;
		height: 7px;
		cursor: pointer;
		color: transparent;
		border: 0;
		outline: none;
		background: transparent;
		opacity: 0;
	}

	.reportSlick .slick-dots li.slick-active {
		background: #1f1f1f;
	}

	.reportArea .btnlinks {
		margin-top: 70px;
	}

	.moveArea {
		margin-top: 30px;
		padding-top: 35px;
		box-sizing: border-box;
		background: url(../img/top/movebank_sp.png)no-repeat top center;
		background-size: cover;
		min-height: unset;
		padding-bottom: 50px;
	}

	.fancyboximg {
		width: 90vw;
		height: 52vw;
	}

	.moveItem {
		margin-top: 50px;
		padding: 0 20px;
		box-sizing: border-box;
	}

	.moveItem ul {
		margin-left: 0;
	}

	.moveItem ul li {
		float: none;
		width: 100%;
		padding-left: 0;
		max-width: 85%;
	}

	.moveItem ul li:first-child .mon_lp_Abox:before {
		position: absolute;
		right: 0;
		bottom: -2px;
		background: url(../img/top/moveIcon03.png)no-repeat 0 0;
		background-size: 100% auto;
		width: 228px;
		height: 13px;
		content: '';
	}

	.moveYoutube {
		padding: 50px 40px 0 40px;
		display: block;
	}

	.moveYoutube li {
		margin: 15px 0;
		width: 100%;
	}


	.eventIcon:before {
		position: absolute;
		left: -10px;
		top: -35px;
		content: '';
		background: url(../img/top/icon_img04_sp.png)no-repeat right 0;
		background-size: 100% auto;
		width: 108px;
		height: 45px;
	}

	.eventIcon:after {
		position: absolute;
		right: -10px;
		top: -35px;
		content: '';
		background: url(../img/top/icon_img05_sp.png)no-repeat right 0;
		background-size: 100% auto;
		width: 108px;
		height: 45px;
	}


	.moveItem ul li:first-child:before {
		position: absolute;
		top: -30px;
		left: -20px;
		background-size: 70px auto;
		width: 70px;
		height: 34px;
		content: '';
	}

	.moveItem ul li:last-child {
		margin-top: 95px;
		float: right;
	}

	.moveItem ul li:last-child:before {
		position: absolute;
		top: -30px;
		left: -20px;
		background: url(../img/top/moveIcon02.png)no-repeat 0 0;
		background-size: 63px auto;
		width: 63px;
		height: 25px;
		content: '';
	}

	.moveItem ul li:last-child .mon_lp_Abox:before {
		position: absolute;
		left: -28px;
		bottom: -3px;
		width: 118px;
		background-size: 118px auto;
		height: 16px;
	}

	.icon-play img {
		width: 29px;
	}

	.home .fancybox-close {
		top: -5px;
		right: 10px;
		width: 25px;
		height: 25px;
	}

	.moveArea .hdL em:before {
		left: -28px;
		top: -28px;
		width: 22px;
		height: 16px;
		background-size: 100% auto;
	}

	.wecomeArea {
		background: url(../img/top/wecomeBank_sp.png) no-repeat center center;
		padding: 35px 0;
		min-height: unset;
	}


	.wecomeArea h2 {
		font-size: 1.5rem;
	}

	.wecomeArea h3 {
		font-size: 1.8rem;
		padding: 7px 0 8px;
	}

	.wecomeArea p {
		font-size: 1.2rem;
		line-height: 1.5;
		margin: 26px auto;
	}

	.wecomeArea a {
		max-width: 180px;
		height: 35px;
		font-size: 1rem;
		margin: 0 auto;
	}

	.wecomeItem:before {
		position: absolute;
		top: 18%;
		right: 0;
		width: 45px;
		height: 36px;
		content: '';
		background-size: 100% auto;
	}

	.wecomeArea .wecomeItem {
		padding: 0 10px;
		box-sizing: border-box;
	}




	/* WORKS ------------------------*/
	.worksItem ul {
		margin-left: -25px;
	}

	.worksItem ul li {
		width: 50%;
		padding-left: 25px;
		margin-bottom: 40px;
	}





}

/* !bnArea
---------------------------------------------------------- */
.bnArea {
	padding: 60px 0 50px;
}

.bnArea h2 {
	text-align: center;
	color: #231815;
	font-size: 3.6rem;
	margin-bottom: 35px;
}

.bnArea .bnImg,
.fl_logo li {
	text-align: center;
}

.fl_logo li {
	margin-left: 20px;
	margin-right: 20px;
}

.ftlogo_wrap {
	margin-top: 50px;
}

.bnArea .bnImg {
	max-width: 1080px;
	margin: 0 auto;
}

/*0509*/
/*.bnArea .bnImg ul {
	display: flex;
	margin: 20px 0;
}

.bnArea .bnImg li {
	width: 49%;
}

.bnArea .bnImg li:first-child {
	margin-right: 2%;
}*/

.bnArea .bnImg ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
	margin: 20px 0;
}


/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
	.bnArea {
		padding: 25px 0 25px;
	}

	.bnArea h2 {
		font-size: 3.2rem;
		margin-bottom: 20px;
	}

	.fl_logo li {
		margin-left: 10px;
		margin-right: 10px;
	}

	.fl_logo li a img {
		object-fit: contain;
		height: 72px;
	}

	/*0509*/
	/*.bnArea .bnImg ul {
		flex-wrap: wrap;
	}

	.bnArea .bnImg li:first-child {
		margin-right: 0;
	}

	.bnArea .bnImg li {
		width: 100%;
		margin-bottom: 20px;
	}*/

	.bnArea .bnImg ul {
		grid-template-columns: repeat(1, 1fr);
	}
}


/* !footer
---------------------------------------------------------- */
#footer {
	background-color: #494f51;
	padding: 55px 0 15px;
}

#footer .footerIn {
	max-width: 1080px;
	margin: 0 auto 40px;
	width: 100%;
}

.footerLeft {
	float: left;
	width: 35%;
}

.footerLeft h2 {
	margin-bottom: 15px;
}

.footerLeft p {
	color: #fff;
	font-size: 1.1rem;
	line-height: 1.63;
	letter-spacing: 0.025em;
}

.footerLeft a {
	pointer-events: none;
	color: #fff;
	font-size: 1.1rem;
	line-height: 1.63;
	letter-spacing: 0.025em;
}

.footerRight {
	float: left;
	width: 65%;
}

.footerRight h3 {
	color: #fff;
	font-size: 1.8rem;
	letter-spacing: 0.025em;
	margin-bottom: 15px;
}

.footerRight .footerUl {
	margin-left: -25px;
}

.footerRight ul {
	float: left;
	width: 25%;
	padding-left: 25px;
	box-sizing: border-box;
}

.footerRight ul li a {
	display: block;
	color: #fff;
	font-size: 1.4rem;
	letter-spacing: 0.025em;
	margin-bottom: 10px;
}

.footerRight ul li a:hover {
	opacity: 0.8;
	transition: all 0.5s;
}

#copyright {
	color: #fff;
	font-size: 1.1rem;
	letter-spacing: 0.025em;
	text-align: center;
}

/*** タブレット 768x ~ 959px***/
@media screen and (max-width: 959px) {}

/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 768px) {
	.footerRight {
		display: none;
	}

	.footerLeft {
		float: none;
		width: 100%;
		padding: 0 50px;
		box-sizing: border-box;
	}

	#footer {
		padding: 30px 0 12px;
	}

	.footerLeft h2 {
		margin-bottom: 18px;
		text-align: center;
	}

	.footerLeft h2 img {
		width: 138px;
	}

	.footerLeft p.fax {
		display: none;
	}

	.footerLeft p {
		font-size: 0.8rem;
		line-height: 1.875;
	}

	.footerLeft a {
		pointer-events: initial;
		font-size: 0.8rem;
		line-height: 1.875;
	}

	#footer .footerIn {
		margin: 0 auto 18px;
	}

	#copyright {
		font-size: 0.7rem;
	}







}

/***toggle*MENU**/

#header_first_cont,
#header_second_cont{
	display: none;
}

.first {
	position: absolute;
    right: 50px;
    top: 100%;
    z-index: 2;
}



@media screen and (max-width: 1100px) {
  
	.contArea {
		padding: 25px 0 45px;
	}

	.contArea h2 {
		font-size: 3.2rem;
		margin-bottom: 20px;
	}

	.contArea dl {
		display: block;
		max-width: 275px;
		margin: 0 auto;
	}

	.contArea dl dt,
	.contArea dl dd {
		display: block;
		vertical-align: middle;
	}

	.contArea dl dt {
		width: auto;
	}

	.contItem {
		border: 2px solid #000;
		padding: 15px 15px 0 15px;
	}

	.contItem ul {
		margin-left: 0;
		text-align: center;
	}

	.contItem ul li {
		float: none;
		width: 100%;
		padding-left: 0;
		margin-bottom: 15px;
	}

	.contItem ul li p {
		font-size: 1rem;
		margin-bottom: 5px;
	}

	.contItem ul li .contTel {
		pointer-events: initial;
		padding-left: 20px;
		background: url(../img/top/tel02.png)no-repeat left 3px center;
		background-size: 14px auto;
	}

	.contList .time {
		padding-left: 0;
		padding: 10px 0 2px;
		text-align: center;
	}
  
	.contQa {
		max-width: 195px;
		height: 35px;
		font-size: 1rem;
		padding-left: 70px;
		background: url(../img/top/email.png)no-repeat left 50px center;
		background-size: 13px auto;
		background-color: #ffd42b;
		margin-top: 0;
	}

	.contArea dl dd {
		padding-left: 0;
		margin-top: 20px;
	}

	.contLine { 
		background: url(../img/top/line.png)no-repeat left 23px center;
		background-size: 39px auto;
		background-color: #3aae36;
	}

	.contLine .sub {
		font-size: 1.5rem;
	}

	.contLine p {
		font-size: 1.2rem;
		line-height: 2;
	}

	.contLine a {
		padding: 13px 10px 10px 75px;
	}

	.numText p{
		font-size: 11px;
		margin-top: 20px;
	}

  
	.second {
		background-color: #cde2e6;
		padding: 20px 0 75px;
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		display: none;
		position: absolute;
		right: 0;
		top: 95px;
		z-index: 999;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		height: calc(100vh - 95px);
	}

	.secondUl {
		padding: 0 20px;
		box-sizing: border-box;
		margin-bottom: 20px;
	}

	.secondUl li {
		padding: 5px 0;
	}

	.secondUl li a {
		font-size: 2.4rem;
		display: flex;
		align-items: center;
	}

	.secondUl li.new a:after {
		display: block;
        padding: 2px 8px;
        font-size: 12px;
        line-height: 1;
        /* color: #fff; */
        background: #FDCD02;
        content: 'NEW';
        border-radius: 2.5px;
        letter-spacing: .1em;
	}

	.secondUl li a:hover {
		text-decoration: none;
	}

	.secondUl li a em {
		margin-left: 15px;
		font-size: 0.8rem;
	}

	.secondUl li a span {
		font-size: 2rem;
		display: inline-block;
		margin-right: 10px;
    font-weight: bold;
	}

	.secondBox {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
		box-sizing: border-box;
		margin-bottom: 30px;
	}

	.secondBox a {
		width: 33.33%;
		text-align: center;
		font-size: 1.1rem;
		display: block;
		padding: 13px 0;
	}

	.secondBox a:nth-child(2) {
		border-left: 1px solid #000;
		border-right: 1px solid #000;
		box-sizing: border-box;
	}

	#header_second_cont .contArea {
		box-sizing: border-box;
	}
  
	#header .contArea {
		padding: 0;
	}

	#header .contArea dl {
		padding: 0;
		max-width: 275px;
		margin: 0 auto;
	}

	#header .contArea dl dt {
		background: #fff;
	}

	#header .headCont {
		text-align: center;
		margin-bottom: 20px;
	}
  
	#header .contQa {
		max-width: 100%;
		height: 40px;
		font-size: 1rem;
		text-align: center;
		background: #ffd42b;
		position: relative;
		display: block;
		padding: 0;
		line-height: 40px;
	}

	#header .contQa:before {
		width: 13px;
		height: 10px;
		background: url(../img/top/email.png) no-repeat left center;
		background-size: 13px auto;
		display: inline-block;
		margin-right: 6px;
		vertical-align: middle;
		content: '';
	}

}

@media screen and (max-width: 768px) {
	#header_first {
		display: flex;
	}


	#header_first,
	#headerLinks .btnMenu {
		position: relative;
	}

	.first {
		background-color: #000;
		padding: 25px 10px;
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		display: none;
		position: absolute;
		right: 0;
		top: 55px;
		z-index: 999;
		height: calc(100vh - 55px);
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}

  .second {
	  top: 55px;
	  height: calc(100vh - 55px);
  }


}

/***toggle*MENU**/


/*** タブレット 1100px ~ 959px***/
@media screen and (max-width: 1100px) and (min-width: 769px) {

	.pc_top .head_info {
		position: unset; 
	}

	.pc_top p {
		float: none;
	} 
 
	.companyMar {
		padding-right: 200px !important;
		box-sizing: border-box;
	}

	.contArea dl {
		display: block;
		padding: 0 100px;
		box-sizing: border-box;
	}

	.contArea dl dt,
	.contArea dl dd {
		display: block;
	}

	.contArea dl dt {
		width: 100%;
	}

	.contArea dl dd {
		padding-left: 0;
		margin-top: 20px;
	}
 

}

@media screen and (max-width: 959px) and (min-width: 769px) {
	.headerLogo {
		top: 20px;
	} 

	.head_info .contact a {
		font-size: 1.4rem;
	} 

	#gNavi li a {
		font-size: 1.2rem;
	}

	#gNavi li a em {
		font-size: 0.9rem;
	}

	.contArea dl {
		padding: 0 60px;
	}






}


/*-------------------------------------------
	adds gallery
--------------------------------------------*/
.galle_list {}

.galle_photo {
	background: no-repeat center center;
	-webkit-background-size: cover;
	background-size: cover;
	width: 100%;
	height: 0;
	padding-top: 66%;
}

.galle_date {
	margin: 15px 0 5px;
	font-size: 1.4rem;
	font-weight: bold;
}

.galle_txt {
	font-size: 1.4rem;
}

/*---gallery_detail----*/
.gdinfo {
	margin-bottom: 30px;
}

.gd_pos {
	display: inline-block;
	background-color: #ee635e;
	padding: 5px 20px;
	color: #fff;
	font-weight: bold;
}

.gdinfo h3 {
	font-size: 2.8rem;
	font-weight: bold;
	margin: 7px 0 2px;
}

.gdinfo p {
	font-size: 1.6rem;
}

.gd_main {
	background: no-repeat center center;
	-webkit-background-size: cover;
	background-size: cover;
	width: 100%;
	height: 0;
	padding-top: 62%;
}

.gd_txt {
	margin: 50px 0;
	font-size: 1.5rem;
	line-height: 1.8;
}

.gd_ul li {
	float: left;
	width: 48%;
	margin-bottom: 4%;
}

.gd_ul li:nth-child(odd) {
	margin-right: 4%;
}

.gd_liphoto {
	background: no-repeat center center;
	-webkit-background-size: cover;
	background-size: cover;
	width: 100%;
	height: 0;
	padding-top: 64%;
}

.gd_li_txt {
	font-size: 1.4rem;
	margin-top: 10px;
}

@media (max-width: 768px) {
	.gdinfo {
		margin-bottom: 20px;
	}

	.gdinfo h3 {
		font-size: 2rem;
	}

	.gd_txt {
		margin: 30px 0;
	}

	.gd_li_txt {
		font-size: 1.2rem;
	}

	.gd_ul {
		margin-bottom: 30px;
	}
}


/* !campaignBanner
---------------------------------------------------------- */
.headerCpBanner {
	position: fixed;
	width: 100%;
	z-index: 999;
	/* display: none; */
}

.headerCpBanner a {
	/* background: #a8d2c8; */
	background-color: #ee6354;
	display: flex;
	height: 40px;
	justify-content: center;
	align-items: center;
	text-decoration: none;
}

.headerCpBanner a:hover {
	text-decoration: none;
	opacity: .7;
	transition: all 0.5s;
	text-decoration: none;
}

.headerCpBanner a .headerCpTxt {
	display: flex;
	width: 70%;
	align-items: center;
	justify-content: center;
}

.headerCpBanner a .headerCpTxt .time span {
	background: #fff;
	font-size: 1.2rem;
	padding: 5px 10px;
	margin-right: 1em;
	border-radius: 2px;
}

.headerCpBanner a .headerCpttl {
	font-weight: bold;
	font-size: 2rem;
	margin-right: 1em;
}

.headerCpBanner a .headCpBtn span {
	background: #000;
	color: #fff;
	padding: 8px 40px;
	font-size: 1.2rem;
}

.headerCpBanner .cpbanner_mini {
	font-size: 1rem;
}

/*** スマホ  ~ 767px***/
@media screen and (max-width: 768px) {

	/* headerにバナーを追加した時、全体を50px程度さげる */
	#wrapper {
		/*margin-top: 45px;*/
	}

	#mainVisual {
		margin-top: 50px;
	}

	#main {
		/* margin-top: 80px; */
		margin-top: 55px;
	}

	.woodArea {
		margin-top: 30px !important;
	}

	.headerCpBanner a {
		font-size: 1.2rem;
		position: relative;
		padding: 5px 10px;
		height: 35px;
	}

	.headerCpBanner a .headerCpTxt {
		display: table;
		width: 100%;
	}

	.headerCpBanner a .headerCpTxt .time {
		display: table-cell;
		width: 20%;
		vertical-align: middle;
	}

	.headerCpBanner a .headerCpTxt .time span {
		font-size: 1.0rem;
		padding: 2px 5px;
	}

	.headerCpBanner a .headerCpttl {
		font-size: 1.6rem;
		margin-right: 0;
		/* margin-bottom: 5px; */
	}

	.headerCpBanner a .headCpBtn {
		display: block;
		position: absolute;
		bottom: 13px;
		right: 6.5vw;
	}

	.headerCpBanner a .headCpBtn span {
		padding: 5px 1.2em;
		font-size: 0.8rem;
	}

	.reportItem ul li:nth-child(3n+2) dl {
		margin-top: 20px;
	}

}

/*** スマホ  ~ 350px***/
@media screen and (max-width: 350px) {
	.headerCpBanner a .headCpBtn {
		display: none;
	}

	.m_320 {
		margin-left: 10px;
	}
}

/* キャンペーン固定ページ */
.cam_main {
	background: no-repeat center center;
	-webkit-background-size: contain;
	background-size: contain;
	width: 100%;
	height: 0;
	padding-top: 50%;
}

.cam_ul {
	margin-top: 60px;
	margin-bottom: 60px;
	font-size: 1.6rem;
	line-height: 2em;
	list-style: disc;
	padding-left: 1em;
}

@media screen and (max-width: 768px) {
	.cam_ul {
		font-size: 1.5rem;
	}
}

/* 2021-07-21↓ */
.header_contact {
	/* background-color: #ee6354; */
	background-color: #a4cbca;
	display: flex;
	/* height: 40px; */
	height: 60px;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	cursor: pointer;
}

.header_contact p {
	color: black;
	letter-spacing: 0.3em;
	font-size: 1.2em;
	font-weight: bold;
}

.header_contact p span {
	font-weight: bold;
	/* color: #bc1200; */
	color: #d7210e;
}

.header_contact p a:hover {
	text-decoration: none;
}

.header_contact:hover {
	opacity: 0.8;
	transition: all 0.5s;
	text-decoration: none;
}

@media screen and (max-width: 768px) {
	.header_contact {
		position: relative;
		top: 49px;
		/* height: 30px; */
		height: 40px;
		background-color: #cde2e6;
	}

	.header_contact p {
		font-size: 12px;
	}

	.moveYoutube li:nth-child(4) {
		margin-top: auto;
	}

	.moveYoutube li:nth-child(5) {
		margin-top: auto;
	}

	.moveYoutube li:nth-child(6) {
		margin-top: auto;
	}
}

/* 2021-11-18top */
.to_sale_site_sec {
	text-align: center;
	padding-bottom: 60px;
	padding-top: 20px;
}

@media screen and (max-width: 768px) {
	.to_sale_site_sec {
		padding-bottom: 20px;
		padding-top: 40px;
	}
}

.home .outlinkArea {
	padding-top: 0px;
}

/* 2022-03-29 header_txt */
.head_prom_txt {
	display: block;
	color: black !important;
	font-size: 12px;
	text-align: center;
	letter-spacing: 0.3rem;
}

@media screen and (max-width: 768px) {
	.head_prom_txt {
		font-size: 10px;
	}
}

.top_banner_wrap,
.sdgs_wrap {
	max-width: 760px;
	margin: 60px auto 60px;
	transition: all 0.5s;
}

.top_banner_wrap:hover img,
.sdgs_wrap:hover img {
	opacity: 0.8;
	transition: all 0.5s;
}

.top_first_wrap {
	max-width: 1080px;
	margin: 60px auto 0;
	text-align: center;
}

.top_first_wrap .top_first_title {
	display: inline-flex;
	padding: 0 26px;
	height: 80px;
	justify-content: center;
	align-items: center;
	background: #FDCD02;
	font-size: 3.6rem;
	line-height: 1;
	color: #000000;
	font-weight: bold;
}

.top_first_wrap .top_first_title span {
	font-size: 5rem;
}

.top_first_wrap .top_first_text {
	font-size: 3.6rem;
	line-height: 1.69;
	color: #000000;
	font-weight: bold;
	margin-top: 30px;
}

.top_first_wrap .top_banner_wrap {
	margin-top: 45px;
}

@media screen and (max-width: 768px) {
	.sdgs_wrap {
		margin: -50px auto 40px;
		padding: 0 10px;
	}

	.top_first_wrap .top_first_title {
		padding: 0 15px;
		height: 60px;
		font-size: 2.4rem;
	}

	.top_first_wrap .top_first_title span {
		font-size: 3.4rem;
	}

	.top_first_wrap .top_first_text {
		font-size: 2rem;
		margin-top: 20px;
	}

	.top_first_wrap .top_banner_wrap {
		margin-top: 30px;
	}

	.top_first_wrap .athome_banner_wrap {
		/* margin-top: 30px; */
	}
}

.athome_first_wrap {
	max-width: 1080px;
	margin: 0 auto 0;
	text-align: center;
}

.athome_banner_wrap,
.sdgs_wrap {
	max-width: 600px;
	margin: -30px auto 60px;
	transition: all 0.5s;
}

.athome_banner_wrap:hover img,
.sdgs_wrap:hover img {
	opacity: 0.8;
	transition: all 0.5s;
}

.top_first_wrap .athome_banner_wrap {
	/* margin-top: 45px; */
}