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

.sp {
	display: none !important;
}

a:hover {
	opacity: .8;
}

/* !wrapper
---------------------------------------------------------- */
#wrapper {
	/* max-width: 1320px; */
	position: relative;
	overflow: hidden;
}

#campaign_detail #wrapper,
.single-campaigns #wrapper {
	min-width: 1024px;
}

.inner,
.inner02 {
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	/*width: 80%;*/
	max-width: 1320px;
}

.inner02 {
	max-width: 940px;
}

.inner-wide {
	width: 100%;
	max-width: none;
}

@media screen and (max-width: 1320px) {

	.inner,
	.inner02 {
		width: 100%;
	}
}

.menuOpen {
	overflow: hidden;
	height: 100vh;
}

.menuOpen #wrapper {
	position: fixed;
}

.overlay {
	display: none;
	position: fixed;
	left: 0;
	top: 0px;
	width: 100vw;
	height: 100vh;
	background: none;
	z-index: 988;
	text-indent: -9999px;
	pointer-events: none;

}

/* !header
---------------------------------------------------------- */
#header {
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 199;
}

.menuOpen #header {
	/*position: absolute;*/
}

#headerIn {}

#headerLogo {
	position: absolute;
	left: 20px;
	top: 60px;
	z-index: 2;
}

#headerLogo img {
	display: inline-block;
	height: 92px;
	vertical-align: middle;
}
#headerLogo p {
	display: inline-block;
	color: #fff;
	vertical-align: middle;
	margin-left: 1em;
}
.btnFixed {
	position: fixed;
	right: 50px;
	bottom: 50px;
	z-index: 998;
	border-radius: 10px;
	display: flex;
}

.btnFixed:before {
	content: '';
	position: absolute;
	z-index: -2;
	width: calc(100% + 10px);
	height: calc(100% + 10px);
	left: -5px;
	top: -5px;
	background-image: linear-gradient(to right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	border-radius: 10px;
}

.btnFixed:after {
	content: '';
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #fff;
	border-radius: 8px;
}

.btnFixed a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
	height: 75px;
	width: 83px;
	font-size: 12px;
	line-height: 1;
	color: #4B68C1;
	padding: 0 5px;
}

.btnFixed a img {
	width: 22px;
}

.btnFixed a+a {
	border-left: 1px solid #E0E0E0;
}

.btnFixed a:nth-of-type(2) {
	color: #4783CB;
}

.btnFixed a:nth-of-type(3) {
	color: #C8749A;
}

.btnFixed .txtP {
	margin-top: 5px;
	height: 2em;
	display: flex;
	align-items: center;
}

.telFixed {
	display: none;
	background: #FFFFFF;
	border-radius: 30px;
	box-shadow: 0 10px 40px rgba(0, 0, 0, .15);
	position: fixed;
	left: 50%;
	top: 50%;
	z-index: 998;
	transform: translate(-50%, -50%);
	padding: 50px 80px 60px;
	min-width: 760px;
}

.telFixedOver {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100vw;
	height: 100vh;
	background: none;
	z-index: -1;
	text-indent: -9999px;
	/*pointer-events: none;*/
}

.telFixed .p01 {
	font-size: 26px;
	text-align: center;
	margin-bottom: 10px;
}

.telFixed .p02 {
	text-align: center;
	font-size: 16px;
	margin-bottom: 25px;
	padding: 0 15px;
	position: relative;
}

.telFixed .p02:before,
.telFixed .p02:after {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%) rotate(-20deg);
	z-index: 1;
	width: 1px;
	height: 18px;
	background: currentColor;
}

.telFixed .p02:after {
	left: auto;
	right: 0;
	transform: translateY(-50%) rotate(20deg);
}

.telFixedUl {
	margin-bottom: 20px;
}

.telFixedUl li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 16px;
	padding: 0 20px;
	margin-bottom: 10px;
	border-radius: 6px;
	background-image: linear-gradient(to right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #fff;
	height: 70px;
}

.telFixedUl li font {
	display: flex;
	/*width: 170px;*/
	font-size: 18px;
	line-height: 1.33;
	/*letter-spacing: -0.08em;*/
	padding-left: 35px;
	background: url(../img/common/icon_tel03.svg)no-repeat left center;
	background-size: auto;
}

.telFixedBox {
	margin-bottom: 35px;
}

.telFixedDl {
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	margin-right: 15px;
}

.telFixedDl:nth-child(1) {
	margin-bottom: 15px;
}

.telFixedDl dt {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 10px;
	width: 100px;
	height: 30px;
	border: 2px solid #000;
	border-radius: 20px;
}

.telFixedClose {
	display: flex;
	justify-content: center;
}

.telFixedClose span {
	display: flex;
	align-items: center;
	font-size: 19px;
	cursor: pointer;
}

.telFixedClose img {
	margin-left: 10px;
	width: 27px;
}



#headerLinks {
	position: fixed;
	right: 20px;
	left: 20px;
	top: 60px;
	z-index: 9999;
	pointer-events: none;
}

#headerLinks .inner {
	display: flex;
	justify-content: flex-end;
	pointer-events: none;
	padding: 0;
	max-width: 1280px;
}

.btnMenu a {
	pointer-events: auto;
	display: block;
	width: 92px;
	height: 92px;
	position: relative;
	background: url(../img/common/menu.svg)no-repeat;
	background-size: 100% auto;
	opacity: 1;
}

.btnMenu a:hover {
	opacity: 1;
}

.btnMenu.active a {
	background: url(../img/common/menu_close.svg)no-repeat;
	background-size: 100% auto;
}

/* !breadcrumb
---------------------------------------------------------- */
#breadcrumb {
	background: #F0F3F8;
	/*margin-top: 100px;*/
}

.whiteBread #breadcrumb,
.single-campaigns #breadcrumb {
	background: #fff;
}

#breadcrumb ul {
	padding: 13px 0;
	display: flex;
	align-items: center;
	color: #000;
}

#breadcrumb ul li {
	font-size: 16px;
	font-weight: bold;
	white-space: nowrap;
}

#breadcrumb ul li+li {
	position: relative;
	padding-left: 40px;
}

#breadcrumb ul li+li:before {
	position: absolute;
	left: 17px;
	z-index: 2;
	content: ">";

}

#breadcrumb ul li:last-of-type {
	white-space: normal;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}

#breadcrumb ul li a {
	opacity: 1;
	color: #000;
}

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


/* !gNavi
---------------------------------------------------------- */
#gNavi {
	position: fixed;
	top: 0px;
	right: 0;
	width: 100%;
	height: 100vh;
	background: #fff;
	/*background:url(../img/common/bg_nav.jpg)no-repeat right center #fff;
  background-size:cover;*/
	z-index: 999;
	box-sizing: border-box;
	padding: 200px 0px 70px;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s, right .3s;
	-ms-overflow-style: none;
	/* IE, Edge 対応 */
	scrollbar-width: none;
}

#gNavi::-webkit-scrollbar {
	/* Chrome, Safari 対応 */
	display: none;
}

#gNavi.active {
	opacity: 1;
	pointer-events: auto;
	right: 0;
}

#gNavi:before {
	content: '';
	position: fixed;
	left: 0;
	top: 0;
	/*top: 50%;
	transform: translateY(-50%);*/
	width: calc(50% - 660px + 400px - 40px);
	max-width: calc(100% - 880px - 80px);
	height: 100vh;
	background: url(../img/common/bg_nav.jpg)no-repeat right center;
	background-size: cover;
}

#gNavi .inner {
	padding: 0 40px;
}

.naviLogo {
	position: absolute;
	left: 0;
	top: 60px;
	z-index: 999;
	width: 100%;
}

.naviLogo p {
	max-width: 1320px;
	margin: 0 auto;
	padding: 0 20px;
	width: 80%;
	position: relative;
}

.naviLogo a {
	position: absolute;
	left: 20px;
	top: 0;
	z-index: 999;
	display: block;
}

.naviLogo img {
	height: 92px;
}

.navRotated {
	/*overflow: hidden;*/
	pointer-events: none;
	position: fixed;
	left: calc(50% + 660px);
	left: calc(50% + 630px);
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
	height: 100vh;
	display: flex;
	align-items: center;
}

.navRotated img {
	height: 1360px;
	max-width: none;
	animation: circle 35s linear infinite;
}

@keyframes circle {
	0% {
		transform: rotateX(0deg) rotateZ(0);
	}

	100% {
		transform: rotateX(0deg) rotateZ(360deg);
	}
}

.navCont {
	position: relative;
	z-index: 2;
	float: right;
	width: 100%;
	max-width: 880px;
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width: 1680px) {
	.navCont {
		max-width: 100%;
		padding-left: calc(80vw - 860px);
	}
}

.navLeft {
	width: calc(50% - 20px);
}

.navRight {
	width: calc(50% - 20px);
}

.navUl01 {
	margin-bottom: 15px;
}

.navLeft .navUl02 {
	width: 72%;
}


.navUl01 a {
	display: flex;
	align-items: center;
	height: 60px;
	font-size: 20px;
	background: #fff url(../img/common/arrow_nav.svg)no-repeat right 5px center;
	background-size: auto;
	transition: all .2s;
	padding: 0 1.3em;
	border-radius: 60px;
}
.navUl01 li+li a {
	border-top: 1px solid #EFEFEF;
}
.navUl01 a:hover {
	background: url(../img/common/arrow_nav_hover.svg)no-repeat right center #fff;
	background-size: auto;
}

.navUl02 a {
	display: block;
	line-height: 1.85;
	padding: 0.5em 1em;
	margin: 0.3em 0;
}

.navUl03 {
	margin-bottom: 15px;
}

.navUl03 li+li {
	border-top: 1px solid #EFEFEF;
}

.navUl03 a {
	display: flex;
	align-items: center;
	height: 60px;
	font-size: 20px;
	background: url(../img/common/arrow_nav.svg)no-repeat right 5px center;
	background-size: auto;
}

.navUl03 a:hover {
	background: url(../img/common/arrow_nav_hover.svg)no-repeat right center;
	background-size: auto;
}

.navUl03 a span {
	background-image: -webkit-linear-gradient(right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.navTel {
	border: 1px solid #DEE7ED;
	background: #FAFDFF;
	border-radius: 10px;
	padding: 30px 30px;
}

.navTelHd {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	line-height: 1.33;
	margin-bottom: 12px;
}

.navTelHd span {
	font-size: 22px;
}

.navTelHd font {
	padding-top: 5px;
}

.navUl04 li+li {
	padding-top: 13px;
	margin-top: 13px;
	border-top: 1px solid #DEE7ED;
}

.navUl04 li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 18px;
	word-break: keep-all;
	white-space: nowrap;
}
.navUl04 li:nth-child(2) a {
	font-size: 16px;
}
.navUl04 li font {
	display: flex;
	/*width: 170px;*/
	font-size: 24px;
	line-height: 1.33;
	letter-spacing: -0.1em;
	color: #1563AE;
	padding-left: 28px;
	background: url(../img/common/icon_tel02.svg)no-repeat left center;
	background-size: auto;
	word-break: keep-all;
	white-space: nowrap;
}

.navSns {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	margin-top: 30px;
	font-size: 14px;
	margin-right: -5px;
}

.navSns dt {
	margin-right: 15px;
}

.navSns dd {
	display: flex;
}

.navSns dd a {
	margin: 0 5px;
}

.navSns dd a img {
	width: 32px;
}

/* !mainVisual
---------------------------------------------------------- */
#mainVisual {
	padding-top: 1px;
	position: relative;
}

.mvBox {
	margin-top: 45vh;
	position: relative;
	z-index: 2;
	display: inline-flex;
}
.mvCont {
	position: relative;
	z-index: 2;
}
.mvBoxBg {
	position: absolute;
	left: -33%;
	top: -30%;
	width: 155%;
	height: auto;
	z-index: 1;
}
/* .mvBoxBg {
	position: absolute;
	right: -40px;
	top: -40px;
	width: calc(100% + 200px);
	height: calc(100% + 80px);
	background: #fff;
	z-index: -1;
	animation: mvBoxAnimePC 10s linear infinite;
}

@keyframes mvBoxAnimePC {
	0% {
		border-radius: 30% 80%;
		animation-timing-function: ease-in-out;
	}

	25% {
		border-radius: 20% 90%;
		animation-timing-function: ease-in-out;
	}

	50% {
		border-radius: 40% 80%;
		animation-timing-function: ease-in-out;
	}

	75% {
		border-radius: 50% 70%;
		animation-timing-function: ease-in-out;
	}

	100% {
		border-radius: 30% 80%;
		animation-timing-function: ease-in-out;
	}
}*/

.mvTitle {
	width: 613px;
	margin-left: -2em;
}

.mvP01 {
	font-size: 25px;
	line-height: 1.35;
	text-indent: -2em;
	margin: -65px 0 33px;
	color: #CE60C8;
}

.mvTxt {
	font-size: 18px;
	line-height: 1.66;
}

.mvTxt p+p {
	margin-top: 30px;
}

@media screen and (max-width: 1400px) {
	.mvTitle {
		margin-left: -20px;
	}

	.mvP01 {
		text-indent: -.5em;
	}
}



.mainSlider {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.mainSlider:before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: url(../img/top/bg_mv_before.png) center bottom no-repeat;
	background-size: auto 1630px;
	z-index: 2;
	content: '';
}

.mainSlider .slick-list,
.mainSlider .slick-track {
	height: 100%;
}

.mainSliderItem {
	width: 100%;
	height: 100%;
	position: relative;
}

.mainSliderItem img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}


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

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

#main {}

#side {}

.inner {}

/* !pageTop
---------------------------------------------------------- */
.pageTop {}

/* !footer
---------------------------------------------------------- */

#footer {
	color: #fff;
	padding: 90px 0;
	width: 100%;
	background: url(../img/common/bg_footer.png) center top no-repeat;
	background-size: 100% 100%;
	position: relative;
}

#footer:before {
	height: 1000px;
	width: 100%;
	background: linear-gradient(135deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	background-size: 200% 200%;
	animation: bggradient 5s ease infinite;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	content: '';
}

@keyframes bggradient {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

#footer .footerIn {}

.ftP01 {
	text-align: center;
	margin-bottom: 30px;
}

.ftP01 span {
	font-size: 36px;
	line-height: 1.33;
	font-weight: bold;
	display: inline-block;
	text-decoration: underline;
}

.ftBox01 {
	display: flex;
	justify-content: space-between;
}

.ftLeft01,
.ftRight01 {
	width: calc(50% - 10px);
	background: #fff;
	border-radius: 12px;
}

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

.ftLeft01 ul {
	width: 100%;
}

.ftLeft01 li+li {
	border-top: 1px solid #EFEFEF;
}

.ftLeft01 a {
	display: flex;
	align-items: center;
	padding: 25px 40px;
	font-size: 18px;
	background: url(../img/common/arrow_nav.svg)no-repeat right 40px center;
	background-size: auto;
	transition: all .2s;
}

.ftLeft01 a:hover {
	background: url(../img/common/arrow_nav_hover.svg)no-repeat right 35px center;
	background-size: auto;
}

.ftLeft01 a .eng {
	font-size: 16px;
	color: #CBCBCB;
	margin-left: 10px;
}

.ftRight01 {
	color: #000;
	padding: 25px 40px 10px;
}

.ftDl01 {
	display: flex;
	align-items: flex-end;
	margin-bottom: 15px;
}

.ftDl01 dt {
	width: 120px;
	font-size: 20px;
	line-height: 1.33;
}

.ftDl01 dd {
	width: calc(100% - 120px);
	font-size: 16px;
	line-height: 1.33;
}

.ftDl01 dt span {
	display: block;
	font-size: 18px;
	color: #CBCBCB;
}

.ftRight01 .telFixedBox {
	margin-bottom: 0;
}

.ftDl02 {
	position: relative;
	display: flex;
	align-items: center;
	line-height: 1.3;
	margin: 120px 0 130px;
}

.ftDl02 dt {
	margin-right: 25px;
}

.ftDl02 .companyP {
	font-size: 22px;
	margin-bottom: 14px;
}

.ftDl02 .engP {
	position: absolute;
	left: 420px;
	top: -160px;
	z-index: 1;
}

.ftDl02 .snsP {
	margin-bottom: 8px;
}

.ftDl02 .snsLink {
	display: flex;
}

.ftDl02 .snsLink a {
	margin: 0 3.5px;
	width: 35px;
}

.ftBox02 {
	max-width: 980px;
	margin: 0 auto 80px;
}

.ftAddr+.ftAddr {
	margin-top: 30px;
}
.ftAddr:nth-child(2) .placeP span {
	font-size: 15px;
}

.ftAddr {
	display: flex;
}

.ftAddr dt {
	width: 280px;
	margin-right: 40px;
}

.ftAddr dt img {
	border-radius: 20px;
}

.ftAddr dd {
	width: calc(100% - 320px);
}

.ftAddr .placeP span {
	font-size: 18px;
	background: #fff;
	color: #184E7A;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 32px;
	border-radius: 25px;
	margin-bottom: 14px;
	width: 220px;
	max-width: 100%;
}

.ftAddrBox {
	display: flex;
	justify-content: space-between;
}

.ftAddr .inforP {
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 12px;
}

.ftAddr .inforP img {
	width: 24px;
	vertical-align: middle;
	margin-right: 6px;
}

.ftAddr .noticeP {
	font-size: 14px;
}

.ftAddrRight {
	padding-left: 60px;
	border-left: 1px solid rgba(255, 255, 255, .5);
	width: 400px;
}

.ftAddr .addrP {
	font-size: 19px;
	line-height: 1.5;
	padding-left: 28px;
	background: url(../img/common/icon_addr.svg)no-repeat top left;
	background-size: auto;
	margin-bottom: 33px;
}

.ftAddr .btnP a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 44px;
	border: 1.5px solid #fff;
	border-radius: 6px;
	font-size: 16px;
	color: #fff;
	max-width: 100%;
}

.ftBuilder {
	max-width: 200px;
	margin: 0 auto 38px;
}

#copyright {
	font-size: 12px;
	text-align: center;
}

/* !h(n)eading
---------------------------------------------------------- */
.hdL {}

.hdM {}

.hdS {}

.hd01 {}



/* !list
---------------------------------------------------------- */
.list01 {}

/* !table
---------------------------------------------------------- */
.table01 {}


/*top*/
#cloud9-carousel {
	height: calc(70vw - (100vw - 768px) * 0.45);
	width: 100% !important;
	position: relative;
	padding-top: 25px;
	box-sizing: border-box;
	margin: 0 auto;
}

.cloud9-item {
	width: 436px !important;
	position: relative;
}

.cloud9-item:nth-of-type(2) {
	/*transform: scale(.68)!important;*/
}

.cloud9-item:nth-of-type(4),
.cloud9-item:nth-of-type(7) {
	/*opacity: .4;*/
}

.cloud9-item:nth-of-type(5),
.cloud9-item:nth-of-type(6) {
	/*opacity: .1;*/
}

.cloud9-item.pickupItem:before,
.cloud9-item.pickupItem:after {
	content: '';
	position: absolute;
	z-index: 2;
	pointer-events: none;
}

.cloud9-item.pickupItem:before {
	right: -20px;
	top: -20px;
	width: 105px;
	height: 105px;
	background: url(../img/top/icon_pickup.png)no-repeat;
	background-size: 100% auto;
}

.cloud9-item.pickupItem:after {
	right: -40px;
	top: -40px;
	width: 145px;
	height: 145px;
	background: url(../img/top/icon_pickup02.png)no-repeat;
	background-size: auto 100%;
	animation: circle 35s linear infinite;
}

.cloud9-item a {
	display: block;
	background: #fff !important;
	border: 6px solid #fff !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
	border-radius: 30px;
	overflow: hidden;
	position: relative;
}

.cloud9-item a:hover {
	transform: translateY(-25px);
	opacity: 1;
}

.cloud9-item .cloudImg {
	position: relative;
	width: 100%;
	padding-top: 75.5%;
}

.cloud9-item .cloudImg img {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	object-fit: cover;
}


.cloudCont {
	padding: 0 15px;
}

.cloudDl {
	padding: 10px 0;
	border-bottom: 1px solid #E8E8E8;
	display: flex;
	align-items: center;
}

.cloudDl dt {
	width: 160px;
}

.cloudDl dd {
	width: calc(100% - 150px);
}

.cloudDate {
	font-size: 22px;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	word-break: break-all;
}

.cloudTime {
	font-size: 16px;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	word-break: break-all;
}

.cloudType {
	display: flex;
	align-items: center;
	height: 72px;
	font-size: 24px;
	line-height: 1.33;
}

.cloudType p {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.cloud9-wrapper {
	position: relative;
}

.cloudNav {
	background-color: white;
	position: absolute;
	right: 0;
	bottom: 30px;
	z-index: 1;
	width: 100%;
}

.cloudNav .inner {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 80%;
	margin: 0 auto;
}

.cloud9-arrow {
	z-index: 500;
	background: rgba(255, 255, 255, 0);
	position: absolute;
	bottom: 120px;
}

.cloud9-nav {
	margin-left: 10px;
}

.cloud9-nav.left,
.cloud9-nav.right {
	width: 40px;
	cursor: pointer;
}

.progresses {
	margin-right: 12px;
	font-size: 14px;
}

.cloudNav.cloud9-indicator {
	position: absolute;
	bottom: 50px;
}

.slick-dots-arc {
	position: relative;
}

.slick-dots-arc-indicator {
	width: 100%;
	height: 150px;
	background-color: #CBCBCB;
	z-index: 1;
}

.slick-dots-arc-overlay {
	position: absolute;
	top: -137px;
	left: 0;
	width: 100%;
	height: 150px;
	background-color: white;
	z-index: 10;
}

.slick-dots-arc-items {
	display: flex;
	flex-direction: row;
	width: 55%;
	height: 100%;
	margin: 0 auto;
}

li.slick-dots-arc-item {
	height: 100%;
	width: 100%;
	list-style: none;
	transition: all 0.2s ease 0s;
}

li.slick-dots-arc-item:hover {
	cursor: pointer;
}

li.slick-dots-arc-item.active {
	background-color: black;
}

.arc-clip-indicator {
	clip-path: ellipse(35% 50% at 50% 50%);
	transform: translateY(-135px) scale(1.5, 2.8);
}

.arc-clip-centering {
	clip-path: inset(30% 10% 0 10%);
}

@media screen and (min-width: 920px) {
	.arc-clip-centering {
		clip-path: inset(30% 13% 0 13%);
	}

	.cloudNav .inner {
		width: 72%;
	}

	.slick-dots-arc-items {
		width: 51%;
	}
}

@media screen and (min-width: 1320px) {
	.arc-clip-centering {
		clip-path: inset(30% 16% 0 16%);
	}

	.cloudNav .inner {
		width: 74%;
	}

	.slick-dots-arc-items {
		width: 47%;
	}
}

@media screen and (min-width: 1620px) {
	.arc-clip-centering {
		clip-path: inset(30% 19% 0 19%);
	}

	.cloudNav .inner {
		width: 60%;
	}

	.slick-dots-arc-items {
		width: 43%;
	}
}

.arc-clip-overlay {
	clip-path: ellipse(35% 50% at 50% 50%);
	transform: scale(1.5, 2.8);
}

.topSec01 {
	position: relative;
	padding: 100px 0 0;
}

.topSec01 h3 {
	text-align: center;
	font-size: 28px;
	position: absolute;
	position: static;
	top: 165px;
	left: 0;
	z-index: 101;
	width: 100%;
}

.topSec01 h3 .topCateg {
	margin: 10px 0 -40px;
}

.topCateg {
	text-align: center;
}

.topCateg span {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 340px;
	height: 48px;
	border: 2px solid #224E83;
	background: #4783CB;
	border-radius: 35px;
	color: #fff;
	font-size: 20px;
}

.topCateg span img {
	margin-right: 8px;
}

.topSec02 {
	padding: 60px 0 0;
	background: url(../img/top/bg_sec02.png)no-repeat top 180px center;
	background-size: 100% auto;
}

.topCateg.pink {
	position: relative;
	z-index: 2;
}

.topCateg.pink span {
	background: #C67BBA;
	border-color: #88447D;
}

.topUl02 {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -20px;
	position: relative;
	top: 25px;
}

.topUl02>li {
	width: calc(25% - 40px);
	margin: 0 20px 40px;
	position: relative;
}

.topUl02>li:nth-of-type(even) {
	position: relative;
	top: 40px;
}

.topUl02>li:nth-of-type(even) a {
	height: 100%;
}

.topUl02 a {
	height: 100%;
	display: block;
	background: #fff;
	border: 6px solid #fff;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
	border-radius: 30px;
	overflow: hidden;
	position: relative;
	transition: transform 0.3s, opacity;
}

.topUl02 a:hover {
	transform: translate(0, -20px);
}

.topUl02 .imgP {
	width: 100%;
	padding-top: 74%;
	position: relative;
	z-index: 1;
}

.topUl02 .imgP img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}

.topUl02 .thumbnailP {
	font-size: 0;
	position: relative;
	z-index: 2;
}

.topUl02 .thumbnailP img {
	height: 120px;
	margin: -70px 0 -18px 4px;
}

.topUl02 .contP {
	padding: 0 14px;
}

.topUl02 .dateP {
	margin-top: 8px;
	line-height: 1.33;
	font-size: 15px;
}

.topUl02 .timeP {
	font-size: 12px;
	margin-bottom: 4px;
}

.topUl02 .typeP {
	font-size: 14px;
	line-height: 1.33;
	min-height: 2.66em;
}
.topSecBukken {
	padding-top: 120px;
}

.topSaunahouse {
	border: solid 7px #000;
	box-sizing: border-box;
	border-radius: 25px;
	max-width: 820px;
	margin: 60px auto 0;
	padding: 50px 50px 30px;
	position: relative;
	overflow: hidden
}
.topSaunahouse:before {
	content: '';
	background: url("../img/top/img_saunahouse02.png") no-repeat;
	width: 259px;
	height: 155px;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 3;
	border-radius: 0 0 0 18px;
}
.topSaunahouse:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	border-bottom: 38vw solid #4d4948;  /* 三角を白にする */ 
	border-left: 100vw solid transparent;
	z-index: 2;
	border-radius: 0 0 18px 0;
}
.topSaunahouse .info span {
	display: inline-block;
	font-size: 36px;
	font-weight: bold;
	margin-bottom: 15px;
}
.topSaunahouse .info p {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.8;
	margin-top: 30px;
}
.topSaunahouse .img {
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 3;
}
.topSaunahouse .btn {
	max-width: 270px;
	margin: 90px auto 0;
	position: relative;
	z-index: 3;
}
.topSaunahouse .btn a {
	display: block;
	border: solid 4px #fff;
	box-sizing: border-box;
	border-radius: 14px;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	padding: 1em 1.3em;
}
.topSecBukken h3 {
	text-align: center;
	font-size: 28px;
	background: url(../img/top/hd_secbukken.png)no-repeat top center;
	background-size: auto;
	min-height: 60px;
	margin-bottom: 40px;
}
.topSecBukken h3 span {
	background: linear-gradient(90deg, #3cbad6 0%, #7d88da 40%, #dd97de 100%);
	color: transparent;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	text-fill-color: transparent;
}
.topSecBukken .inner {
	overflow: auto;
	padding-bottom: 30px;
}
.topSecBukken .inner::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}
.topSecBukken .inner::-webkit-scrollbar-thumb {
    background: #184e7a;
	border-radius: 3px;
}
.topSecBukken .inner::-webkit-scrollbar-track {
    background: #bbdbf3;
	border-radius: 3px;
}

.topSecBukken .overflow {
	display: table;
}

.topSecBukken .overflow .box_tab {
	display: table-cell;
}
.topSecBukken .box_tab .itemBox .info .item table th {
	padding: 0 0 1em;
}
.topSecBukken .overflow .box_tab .itemBox .info .photo {
	width: 44%;
	vertical-align: top;
}
.topSecBukken .box_tab .itemBox .info .item {
	width: 56%;
}
/* 1列 */
.topSecBukken .overflow.one {
	width: 72%;
	margin: auto;	
}
.topSecBukken .overflow.one .box_tab .tab {
	width: 180px;
	height: 58px;
	border-radius: 16px 16px 0 0;
	font-size: 20px;
	left: 70px;
}
.topSecBukken .overflow.one .grad-border-content dl dt span {
	font-size: 21px;
}
.topSecBukken .overflow.one .grad-border-content dl dd {
	font-size: 30px;
}
.topSecBukken .overflow.one .box_tab .itemBox {
	border-radius: 30px;
}
.topSecBukken .overflow.one .grad-border-content {
	border-radius: 28px;
	padding: 40px 30px 40px 40px;	
}
.topSecBukken .overflow.one .box_tab .itemBox .info .item table th {
	padding: 0;
}
.topSecBukken .overflow.one .box_tab .itemBox .info .item table tr {
	height: 50px;
}
/* 2列 */
.topSecBukken .overflow.two {
	width: auto;	
}
.topSecBukken .overflow .box_tab {
	width: 47%;
	padding: 0 0.5%;
}
.topSecBukken .overflow.two .box_tab .tab {
	width: 140px;
	height: 44px;
	font-size: 18px;
	left: 40px;
	border-radius: 12px 12px 0 0;
	
}
.topSecBukken .overflow.two .box_tab .itemBox {
	border-radius: 20px;
	padding: 8px;
}
.topSecBukken .overflow.two .grad-border-content {
	border-radius: 18px;
	padding: 30px 20px 30px 30px;
}
.topSecBukken .overflow.two .grad-border-content dl dt span {
	border-radius: 7px;
	font-size: 15px;
}
.topSecBukken .overflow.two .grad-border-content dl dd {
	font-size: 22px;
}

.topSecBukken .overflow.two .box_tab .itemBox .info .item {
	width: 56%;
	vertical-align: top;
}
.topSecBukken .overflow.two .box_tab .itemBox .btn {
	max-width: 220px;
}
.topSecBukken .overflow.two .box_tab .itemBox .btnLink01 {
	height: 50px;
}
.topSecBukken .overflow.two .btnLink01 {
	font-size: 13px;
}
.topSecBukken .overflow.two .box_tab .itemBox .info .item table th {
	font-size: 14px;
	padding: 1em 0;

}
.topSecBukken .overflow.two .box_tab .itemBox .info .item table td {
	font-size: 16px;
	
}
.topSecBukken .overflow.two .box_tab .itemBox .info .photo img {
	border-radius: 18px;
}
/* 3列 */
.topSecBukken .overflow.two.three {
	width: 2000px;	
}
.topSecBukken .overflow.three .box_tab {
	width: 33%;
}
/* 4列 */
.topSecBukken .overflow.two.three.four {
	width: 3000px;	
}
.topSecBukken .overflow.three.four .box_tab {
	width: 25%;
}
/* 5列 */
.topSecBukken .overflow.two.three.four.five {
	width: 4000px;	
}
.topSecBukken .overflow.three.four.five .box_tab {
	width: 20%;
}

.topSecBukken .box_tab .itemBox .info {
	margin-bottom: 20px;
}

.topSec03 {
	padding-top: 60px;
}

.topSec03 .inner {}

.topSec03 h3 {
	text-align: center;
	font-size: 28px;
	background: url(../img/top/hd_sec03.png)no-repeat top center;
	background-size: auto;
	min-height: 60px;
	margin-bottom: 40px;
}

.topSec03 .btnP {
	position: absolute;
	right: 20px;
	top: -47px;
	z-index: 1;
	width: 309px;

}

.topUl03 {
	max-width: 800px;
	margin: 0 auto;
}

.topUl03 li:nth-of-type(n+4) {
	display: none;
}

.topUl03 li+li {
	padding-top: 30px;
	margin-top: 30px;
	border-top: 1px solid #EFEFEF;
}

.topUl03 a {
	display: block;
}

.topUl03 .dateP {
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	margin-right: 20px;
}

.topUl03 .dateP span {
	margin-left: 15px;
}

span.categSpan {
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 100px;
	height: 28px;
	color: #fff;
	border-radius: 15px;
	font-size: 12px;
	padding: 0 10px;
}

span.categSpan.newsCateg {
	background: #f0863f;
}

span.categSpan.mediaCateg {
	background: #9D73AF;
}

span.categSpan.estateCateg {
	background: #00AC97;
}

.topUl03 .titleP {
	display: inline-flex;
	font-size: 18px;
	line-height: 1.36;
	margin-bottom: 8px;
}

.topUl03 .txtP {
	font-size: 13px;
	line-height: 2.4;
	font-weight: 400;
}

.topUl03 .txtBox {
	font-size: 13px;
	line-height: 1.375;
	font-weight: 400;
}

.topUl03 .txtBox p {
	margin-bottom: 15px;
}

.topUl03 .borderP {
	font-size: 18px;
	line-height: 1.33;
	padding: 8px 30px;
	border: 1px solid #000000;
	border-radius: 5px;
	margin: 15px 0;
	font-weight: bold;
}

.topUl03 .noticeP {
	margin-top: 10px;
	text-decoration: underline;
}

.topUl03 .imgP {
	margin-top: 20px;
}

.topUl03 .imgP img {
	border-radius: 30px;
}

.topUl03 figure {
	padding: 0;
	margin: 20px 0 0;
}

.topUl03 figure img {
	border-radius: 30px;
	width: 100%;
	max-width: 100%;
	height: auto;
}

.topSec04 {
	padding-top: 100px;
	position: relative;
	overflow: hidden;
}

.topWrap .topSec04 .inner {
	position: static;
}

.topSec04 h3 {
	text-align: center;
	font-size: 28px;
	background: url(../img/top/hd_sec04.png)no-repeat top center;
	background-size: auto;
	min-height: 55px;
	margin-bottom: 37px;
	padding-top: 8px;
}

.topSec04 .boxP {
	margin-bottom: 1px;
}

.topSec04 .p01 {
	margin-left: -20px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 130px;
	width: 100vw;
	z-index: 2;
}

.topSec04 .p01 p {
	transform: skewY(-3deg);
	width: 62.5%;
}

.topSec04 .p01 img {
	height: 742px;
	width: 100%;
	object-fit: cover;
	border-radius: 0 30px 30px 0;
}

.topSec04 .p02 {
	width: 100vw;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 690px;
	z-index: -1;
}

.topSec04 .p02 p {
	transform: skewY(3deg);
}

.topSec04 .p02 span {
	display: block;
	background: #F0F3F8;
	height: 557px;
	width: 100vw;
	object-fit: cover;
	border-radius: 30px 0 0 30px;
}

.topSec04 .rightP {
	position: relative;
	z-index: 3;
	float: right;
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	padding: 10% 0 20px;
}

.ownerDl01 {
	display: flex;
	align-items: center;
	margin-right: 100px;
	margin-bottom: 25px;
}

.ownerDl01 dt {
	width: 100px;
	border-radius: 50%;
	margin-right: 20px;
}

.ownerDl01 dd {
	font-size: 24px;
	line-height: 1;
}

.ownerDl01 .numberP {
	font-size: 52px;
	letter-spacing: -0.04em;
	display: flex;
	align-items: center;
}

.ownerDl01 .numberP span {
	font-size: 60px;
	line-height: 1;
	letter-spacing: -0.19em;
}

.topSec04 .rightP .txtP p {
	padding-left: 5px;
	text-indent: -5px;
}

.topSec04 .rightP .txtP span {
	background: #fff;
	color: #000;
	font-size: 44px;
	line-height: 1.45;
	margin-bottom: 18px;
	border-radius: 8px 0 0 8px;
	padding: 10px 5px 10px 5px;
	position: relative;
	text-indent: 0;
	display: inline-block;
}

.topSec04 .rightP .txtP span:first-child,
.topSec04 .rightP .txtP br+span {
	padding-left: 5px;
}

.topSec04 .rightP .txtP span:last-child {
	border-radius: 8px;
}

.topSec04 .rightP .txtP span+span {
	margin-left: -5px;
}

.topSec04 .rightP .thumbnailP {
	margin: -35px 0;
	max-width: 560px;
}

.topSec04 .btnArea {
	clear: both;
	width: 80%;
	margin: 0 0 0 auto;
	display: flex;
	justify-content: flex-end;
	max-width: 1280px;
}

.detailBtn {
	max-width: 260px;
	width: 100%;
	height: 70px;
	text-align: center;
	position: relative;
	z-index: 5;
}

.btnLink01 {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 62px;
	width: 100%;
	border-radius: 12px;
	background: url(../img/top/arrow_btn01.svg)no-repeat right 12px center #fff;
	background-size: 22px;
	border: 2px solid #000000;
	color: #000;
	font-size: 16px;
	opacity: 1 !important;
}

.btnLink01:hover {
	background: url(../img/top/arrow_btn01_on.svg)no-repeat right 12px center #000;
	background-size: 22px;
	color: #fff;
}

#main .intro {
	width: 100%;
	min-height: 575px;
	position: relative;
}

#main .intro .visual-wrap {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

#main .intro .visual-list {
	position: absolute;
	left: 50%;
	top: 0;
	z-index: 5;
}

#main .intro .visual-list .item {
	float: left;
	display: block;
	margin-right: 36px;
}

.interviewSlick .visual-list .item {
	max-width: 400px;
	position: relative;
	padding-top: 57px;
	display: block;
}

.interviewSlick .visual-list .item .itemBox {
	position: relative;
	transition: transform 0.3s, opacity;
}

.interviewSlick .visual-list .item .itemBox:hover {
	transform: translate(0, -10px);
}

.interviewSlick .imgP {
	overflow: hidden;
	position: relative;
	border-radius: 30px;
	width: 100%;
	padding-top: 64.4%;
}

.interviewSlick .imgP img {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 1;
	object-fit: cover;
}

.interviewSlick .imgP span {
	background: linear-gradient(135deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #fff;
	font-size: 20px;
	min-width: 180px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 20px;
	position: absolute;
	z-index: 2;
	left: 0;
	bottom: 0;
	border-radius: 0 30px 0 30px;
}

.ownerDl02 {
	position: absolute;
	top: 0;
	left: 24px;
	width: calc(100% - 48px);
	z-index: 2;
	background: #fff;
	box-shadow: 0 10px 20px rgba(0, 0, 0, .16);
	padding: 10px;
	border-radius: 100px;
	display: flex;
	align-items: center;
}

.ownerDl02:after {
	content: '';
	position: absolute;
	left: 100px;
	bottom: -10px;
	z-index: 2;
	width: 19px;
	height: 19px;
	background: url(../img/top/bg_popup.png)no-repeat;
	background-size: 100% 100%;
}

.interviewSlick .visual-list .item .itemBox .ownerDl02 {
	top: -57px;
}

.ownerDl02 dt {
	width: 50px;
	border-radius: 50%;
	margin-right: 15px;
}

.ownerDl02 dd {
	width: calc(100% - 65px);
	font-size: 14px;
	line-height: 1.375;
}

.interviewSlick .thumbnailP {
	margin-top: -120px;
	position: relative;
	z-index: 4;
	width: 260px;
	height: 200px;
}

.interviewSlick .thumbnailP img {
	position: absolute;
	max-width: 100%;
	max-height: 100%;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
}

.interviewSlick .numberP {
	position: absolute;
	right: 8px;
	bottom: 10px;
	z-index: 6;
	padding: 0 37px 0 14px;
	background: #fff url(../img/common/arrow_nav.svg)no-repeat right 6px center;
	background-size: 22px auto;
	display: flex;
	align-items: center;
	font-size: 14px;
	line-height: 1.33;
	border-radius: 24px;
}

.interviewSlick .numberP span {
	margin-left: 8px;
	font-size: 15px;
	letter-spacing: -0.04em;
	display: flex;
	align-items: center;
}

.interviewSlick .numberP span font {
	letter-spacing: -0.05em;
	font-size: 24px;
	paddding-bottom: 3px;
}

.interviewBtn {
	max-width: 240px;
	margin: -70px auto 0;
	text-align: center;
	position: relative;
	z-index: 5;
}

.topSec05 {
	padding-top: 60px;
}

.topSec05 .p01 {
	margin-bottom: 25px;
	text-align: center;
}

.topSec05 .p01 span {
	font-size: 30px;
	background-image: -webkit-linear-gradient(right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #fff;
	padding: 0 20px;
	border-radius: 10px;
	display: inline-block;
}

.topSec05 .p02 {
	font-size: 15px;
	text-align: center;
	margin-bottom: 20px;
}

.topSec05 .p02 span {
	background: url(../img/top/bg_span02.png)no-repeat bottom 1px center;
	background-size: 100% 10px;
}

.topSec05 h3 {
	text-align: center;
	margin-bottom: 8px;
	font-size: 16px;
	line-height: 1.33;
}

.topSec05 h3 .eng {
	font-size: 28px;
}

.sortWrap {
	display: flex;
	justify-content: space-between;
}

.sortItem {
	width: calc(33.33% - 30px);
}

.sortHd {
	font-size: 22px;
	padding-bottom: 15px;
	border-bottom: 2px solid #EFEFEF;
	margin-bottom: 20px;
}

.sortList {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -4px;
}

.sortList li {
	margin: 0 4px 8px;
	position: relative;
}

.sortList input {
	display: none;
}

.sortList label {
	border: 1.5px solid #000000;
	font-size: 14px;
	letter-spacing: -0.02em;
	padding: 2px 10px;
	border-radius: 6px;
	display: block;
}

.sortList input:checked+label {
	background: #000;
	color: #fff;
}

.topGoodsCount {}

.topGoodsCount p {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #184E7A;
	color: #fff;
	margin: 12px auto 30px;
	width: 240px;
	height: 46px;
	border-radius: 24px;
	font-size: 16px;
	line-height: 1.3;
}

.topGoodsCount p span {
	font-size: 14px;
	display: flex;
	align-items: center;
}

.topGoodsCount p span font {
	font-size: 30px;
	width: 60px;
	text-align: right;
	margin-right: 5px;
	position: relative;
	/*top: -2px;*/
}

.topGoodsUl {
	display: flex;
	/*justify-content: center;*/
	flex-wrap: wrap;
	max-width: 1600px;
	margin: 0 auto;
}

.topGoodsUl li {
	margin: 0 14px 24px;
	width: calc(20% - 28px);
	text-align: center;
	line-height: 1.33;
	font-size: 14px;
}
#topharvia {
  display: flex;
  max-width: 820px;
  margin: 20px auto 0;
  position: relative;
  overflow: hidden;
}
#topharvia::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(255,255,255,0) 25%, rgba(255,255,255,.25) 50%, rgba(255,255,255,0) 75%);
  transform: skewX(-15deg);
  z-index: 2;
  pointer-events: none;
}
#topharvia > a:hover ~ ::before,
#topharvia:hover::before {
  animation: shine 1.2s ease forwards;
}
@keyframes shine {
  0%   { left: -100%; }
  100% { left: 200%; }
}
#topharvia > a {
  display: flex;
  width: 100%;
  position: relative;
  text-decoration: none;
}
#topharvia > a:hover {
  opacity: 1;
}
#topharvia #logo {
  background: #e12325;
  width: 45%;
  text-align: center;
  padding: 0;
  border-radius: 20px 0 0 20px;
  position: relative;
}
#topharvia #logo img {
  position: relative;
  z-index: 1;
}
#topharvia #image {
  background: #000;
  border-radius: 0 20px 20px 0;
  width: 55%;
  height: 390px;
  overflow: hidden;
  position: relative;
}
#topharvia p {
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  writing-mode: vertical-rl;
  position: absolute;
  top: 4%;
  right: 5%;
}
#topharvia p strong {
  font-size: 29px;
}
#topharvia #btn {
  position: absolute;
  right: 5%;
  bottom: 15px;
  font-size: 28px;
  color: #fff;
  display: inline-flex;
  align-items: center;
  padding-bottom: 8px;
  overflow: hidden;
}
#topharvia #btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: #e12325;
  transform: translateX(-101%);
  z-index: 0;
}
#topharvia #btn::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 3px;
  background: #fff;
  animation: lineExpand 0.8s ease forwards;
  animation-delay: 0.3s;
}
@keyframes lineExpand {
  from { width: 0; }
  to { width: 100%; }
}
@keyframes bgSlide {
  0%   { transform: translateX(-101%); }
  50%  { transform: translateX(0%); }
  100% { transform: translateX(101%); }
}
#topharvia #btn .btn-inner {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
#topharvia #btn .arrow {
  color: #e12325;
  transition: color 0.3s ease;
}
#topharvia > a:hover #btn::before {
  animation: bgSlide 0.8s ease forwards;
}
#topharvia > a:hover #btn::after {
  background: #e12325;
  transition: background 0.3s ease;
}
#topharvia > a:hover #btn .arrow {
  color: #fff;
  transition: color 0.1s ease;
}
#topharvia #lead {
  width: 45%;
  font-size: 21px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  position: absolute;
  left: 0;
  bottom: 25px;
}
#topharvia #lead strong {
  font-size: 33px;
}
#topharvia #lead span {
  position: relative;
  display: inline-block;
  padding: 0 30px;
}
#topharvia #lead span::before,
#topharvia #lead span::after {
  content: '';
  position: absolute;
  top: 52%;
  transform: translateY(-50%);
  width: 12px;
  height: 100%;
  border: 2px solid #fff;
}
#topharvia #lead span::before {
  left: 0;
  border-right: none;
}
#topharvia #lead span::after {
  right: 0;
  border-left: none;
}

@media screen and (max-width: 1480px) {
	.topGoodsUl li {
		width: calc(25% - 28px);
	}
}

@media screen and (max-width: 1100px) {
	.topGoodsUl li {
		/*width: calc(33.33% - 28px);*/
	}
}

.topGoodsUl dl dt {
	width: 100%;
	position: relative;
	padding-top: 72.7%;
}

.topGoodsUl dl dt img {
	position: absolute;
	left: 50%;
	top: 42%;
	transform: translate(-50%, -50%);
	z-index: 1;
	max-width: 290px;
	max-height: 290px;
	/*max-width: 100%;*/
	/*max-height: 100%;*/
}

.topGoodsUl .houseP span {
	font-size: 14px;
	letter-spacing: -0.02em;
	color: #fff;
	background-image: -webkit-linear-gradient(right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	padding: 3px 20px;
	min-width: 180px;
	display: inline-flex;
	justify-content: center;
	border-radius: 15px;
}

.topGoodsUl .typeP {
	font-family: 'Arial';
	font-weight: 900;
	font-size: 20px;
	line-height: 1.1;
	margin: 3px 0;
}

.topGoodsUl .tageP {
	font-size: 16px;
	letter-spacing: -0.02em;
	color: #184E7A;
	margin-bottom: 5px;
}

.topSec06 {
	padding-top: 60px;
}

.topSec06 h3 {
	text-align: center;
	font-size: 28px;
	background: url(../img/top/hd_sec06.png)no-repeat top center;
	background-size: auto;
	min-height: 72px;
	margin-bottom: 16px;
	padding-top: 4px;
}

.topMedia {
	display: flex;
	position: relative;
}

.topMedia .btnP {
	margin-top: 40px;
	max-width: 240px;
	width: 100%;
	aspect-ratio: 32/7;
}

.latestMedia {
	width: 45%;
	margin-right: 4.5%;
}

.otherMedia {
	width: 55%;
	border-left: 1px solid #E6E6E6;
	padding-bottom: 20px;
}

.otherMedia li {
	padding-left: 9%;
}

.otherMedia li+li {
	padding-top: 40px;
	margin-top: 40px;
	border-top: 1px solid #E6E6E6;
}

.otherMedia .topMediaDl {
	display: flex;
	width: 100%;
}

.otherMedia .topMediaDl dt {
	width: 50%;
	min-width: 100px;
	margin-right: 30px;
}

.otherMedia .topMediaDl dd {
	width: 100%;
}

.latestMedia .topMediaDl dt {
	margin-bottom: 20px;
}

.topMediaDl dt img {
	border-radius: 30px;
}

.topMediaDl .dateP {
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	margin-bottom: 10px;
}

.topMediaDl .dateP span {
	margin-left: 15px;
}

.topMediaDl .titP {
	font-size: 18px;
	font-weight: bold;
}

.topMediaDl .txtP {
	font-size: 16px;
}

.topSec07 {
	padding-top: 90px;
	position: relative;
}

.topSec07 .inner {
	max-width: none;
	padding: 0;
}

.topSec07 h3 {
	text-align: center;
	font-size: 28px;
	background: url(../img/top/hd_sec07.png)no-repeat top center;
	background-size: auto;
	margin-bottom: 35px;
}

.topSec07 .p01 {
	position: absolute;
	left: -94px;
	top: -64px;
	z-index: -1;
}

.topSec07 .p02 {
	position: absolute;
	right: -124px;
	top: -76px;
	z-index: -1;
}

.topUl07 {
	display: flex;
	text-align: center;
}

.topUl07 li {
	width: 100%;
}

.topUl07 li img {
	background: #fff;
}

.topUl07 .txtP {
	font-size: 22px;
	margin-top: 28px;
}


.topSec08 {
	padding: 85px 0 100px;
}

.topSec08 h3 {
	text-align: center;
	font-size: 28px;
	background: url(../img/top/hd_sec08.png)no-repeat top center;
	background-size: auto;
	min-height: 62px;
	margin-bottom: 30px;
	padding-top: 10px;
}

.topSec09 {
	padding: 90px 0 100px;
	background: #F2F5F9;
}

.topSec09 h3 {
	font-size: 30px;
	text-align: center;
	margin-bottom: 5px;
}

.topSec09 .txtP {
	font-size: 16px;
	text-align: center;
	margin-bottom: 40px;
}

.insSlick {
	display: flex;
	flex-wrap: wrap;
	margin-left: -16px;
}

.insSlist {
	width: 12.5%;
	box-sizing: border-box;
	padding-left: 16px;
	margin-bottom: 16px;
}

.insSlist img {
	border-radius: 20px;
}

.insSlick01 {
	margin-bottom: 16px;
}

.insSlick02 {
	transform: rotate(180deg);
}

.insSlick02 .insSlist {
	transform: rotate(180deg);
}

#sb_instagram .sbi_photo_wrap {
	border-radius: 10px;
	overflow: hidden;
}

.topSec09 .btnP {
	margin-top: 20px;
	text-align: center;
}

.btnLink02 {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 63px;
	width: 312px;
	max-width: 100%;
	border-radius: 16px;
	color: #fff;
	font-size: 15px;
	opacity: 1 !important;
	background-image: -webkit-linear-gradient(30deg, #FDB232, #F9501F, #E90023, #C20098, #E90023, #F9501F, #FDB232);
	background-size: 200% 200%;
	animation: btnlink02 .5s ease forwards;
}

.btnLink02:hover {
	animation: btnlink .5s ease forwards;
}

@keyframes btnlink {
	0% {
		background-position: 0% 50%;
	}

	100% {
		background-position: 100% 50%;
	}
}

@keyframes btnlink02 {
	0% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

.btnLink02:after {
	content: '';
	width: 24px;
	height: 24px;
	background: url(../img/top/arrow_btn01_on.svg)no-repeat;
	background-size: 100% auto;
	margin-left: 10px;
}

/*privacy*/
.otherTitle {
	padding: 200px 20px 80px;
}

.otherTitle img {
	max-width: 90vw;
}

.privacyWrap {
	background: url(../img/privacy/bg_privacy.jpg)no-repeat top center;
	background-size: cover;
}

.privacyItem {
	font-weight: normal;
	line-height: 1.375;
}

.privacyItem+.privacyItem {
	margin-top: 35px;
}

.privacyHd {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.33;
	color: #184E7A;
	margin-bottom: 12px;
}

.privacyItem p+p {
	margin-top: 22px;
}

.privacyBox {
	font-size: 14px;
	line-height: 1.5;
	padding: 40px;
	background: #fff;
	border: 1px solid #DEE7ED;
	border-radius: 10px;
	margin: 22px 0;
}

.privacyHd+.privacyBox {
	margin-top: 12px;
}

.privacyBox li {
	padding-left: 0.9em;
	text-indent: -0.9em;
}

/*corporate*/

.corporateWrap {
	background: url(../img/corporate/bg_corporate.jpg)no-repeat top center;
	background-size: cover;
}

.corporateTable {
	width: 100%;
}

.corporateTable th,
.corporateTable td {
	border-bottom: 1px solid #E6E6E6;
	line-height: 1.375;
	padding: 25px 0;
	font-size: 16px;
	font-weight: normal;
}

.corporateTable th {
	vertical-align: top;
	width: 234px;
	font-size: 18px;
	font-weight: bold;
	color: #184E7A;
}

.corporateTable b {
	display: block;
	margin-bottom: 5px;
}

.corporateTable p+p {
	margin-top: 25px;
}
.zehTable {
	display: table;
	width: 100%;
	border-radius: 6px;
	border: 1px solid #CBCBCB;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden; 
	margin: 20px 0;
}
.zehTable .sp {
	display: none;
}
.zehTable th {
	border-bottom: 1px solid #CBCBCB !important;
	background: #F4F4F4;
	width: auto;
	font-size: 16px;
	line-height: 21px;
	font-weight: bold;
	color: #000;
	padding: 0.6em;
	text-align: center;
}
.zehTable th:first-child {
	border-right: 1px solid #CBCBCB !important;
}
.zehTable td {
	border-right: 1px solid #CBCBCB !important;
	font-size: 14px;
	text-align: center;
	padding: 10px 20px;
}
.zehTable td:last-child {
	border: 0;
}

.zehTable td strong {
	font-weight: normal;
	font-weight: 1.5em;
}
.linkZeh a {
	font-weight: bold;
	color: #184E7A;
	text-decoration: underline;
	padding-left: 1.3em;
	position: relative;
}
.linkZeh a:before {
	content: '→';
	position: absolute;
	width: 1em;
	height: 1em;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;

}
.corporateTable tr:last-of-type th,
.corporateTable tr:last-of-type td {
	border-bottom: 0;
}

.addrTd p+p {
	margin-top: 15px;
}


/*message*/

.messageWrap {
	background: url(../img/message/bg_message.jpg)no-repeat top center;
	background-size: cover;
}

.messageDl {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row-reverse;
}

.messageDl dt {
	width: 520px;
	margin-left: 70px;
	position: relative;
	margin-top: -90px;
}

.messageDl dt img {
	border-radius: 30px;
}

.messageDl dd {
	width: calc(100% - 590px);
}

.messageDl .nameP {
	position: absolute;
	left: -36px;
	bottom: -48px;
	z-index: 1;
	width: 266px;
	height: 198px;
	background: url(../img/message/bg_popup.png)no-repeat center center;
	background-size: 100% 100%;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	font-size: 15px;
}

.messageDl .nameP span {
	font-size: 17px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 124px;
	height: 31px;
	border: 2px solid;
	margin-bottom: 13px;
	border-radius: 20px;
}

.messageDl .nameP .jap {
	font-size: 28px;
	line-height: 1.33;
	letter-spacing: 0.06em;
}

.messageDl .titleP {
	font-size: 40px;
	line-height: 1.33;
	letter-spacing: -0.03em;
	margin-bottom: 25px;
	font-weight: bold;
}

.messageDl .txtP {
	font-weight: normal;
	font-size: 18px;
	line-height: 1.77;
}

.messageDl .txtP p+p {
	margin-top: 32px;
}

.messageOther {
	margin-top: 80px;
}

.messageOtherHd {
	text-align: center;
	font-size: 36px;
	line-height: 1.33;
	background: url(../img/message/bg_title.png)no-repeat top center;
	background-size: auto;
	margin-bottom: 35px;
}

.messageOtherUl {
	display: flex;
	justify-content: center;
	margin: 0 -12px;
}

.messageOtherUl li {
	width: calc(33.33% - 24px);
	margin: 0 12px 20px;
}

.messageOtherUl a {
	display: block;
	border-radius: 30px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
	padding: 45px 45px 65px;
	text-align: center;
	background: url(../img/common/arrow_nav.svg)no-repeat right 45px bottom 35px;
	background-size: 25px auto;
	font-size: 14px;
	height: 100%;
	opacity: 1 !important;
}

.messageOtherUl a:hover {
	background: url(../img/common/arrow_nav_hover.svg)no-repeat right 40px bottom 35px;
	background-size: 25px auto;
}

.messageOtherUl .imgP {
	width: 230px;
	height: 230px;
	max-width: 100%;
	display: inline-flex;
	margin-bottom: 30px;
	padding: 15px;
	background: linear-gradient(-45deg, #F0DED8, #F0DED8, #DABBE4, #F0DED8, #F0DED8);
	background-size: 200% 200%;
	background-position: 50% 100%;
	transition: 0.5s;
	border-radius: 50%;
	overflow: hidden;
}

.messageOtherUl li:nth-of-type(2) .imgP {
	background: linear-gradient(to right, #BFE9E2, #D9B6E6, #D7AEE9, #D9B6E6, #BFE9E2);
	background-size: 400% 100%;
	background-position: 0% 10%;
}

.messageOtherUl li:nth-of-type(3) .imgP {
	background: linear-gradient(-45deg, #DFF0D8, #F0EFD8, #E4E2BB, #F0EFD8, #DFF0D8);
	background-size: 200% 200%;
	background-position: 50% 100%;
}

.messageOtherUl a:hover .imgP {
	background-position: 0% 0%;
}

.messageOtherUl li:nth-of-type(2) a:hover .imgP {
	background-position: 100% 10%;
}

.messageOtherUl li:nth-of-type(3) a:hover .imgP {
	background-position: 0% 0%;
}

.messageOtherUl .imgP img {
	border-radius: 50%;
}

.messageOtherUl .titleP {
	font-size: 24px;
	line-height: 1.33;
	font-weight: bold;
}

.messageOtherUl .titleP:after {
	content: '';
	display: block;
	margin: 17px auto;
	width: 20px;
	height: 2px;
	background-image: -webkit-linear-gradient(right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	border-radius: 5px;
}

.messageOtherUl .txtP {
	line-height: 1.71;
	font-weight: normal;
}

/*0810*/
.otherWrap {
	padding-bottom: 100px;
}

/*thought*/
.thoughtWrap {
	background: url(../img/thought/bg_thought.jpg)no-repeat top center;
	background-size: 1920px auto;
	padding-top: 130px;
}

.thoughtTopTitle {
	margin-bottom: -210px;
	position: relative;
}

.thoughtTopTitle span {
	font-size: 30px;
	font-weight: bold;
	font-weight: 600;
	white-space: nowrap;
	position: absolute;
	right: 120px;
	top: 50%;
	transform: translateY(-50%);
}

.thoughtTopTxt {
	padding: 60px 0 40px;
	text-align: center;
	font-size: 26px;
	font-weight: 600;
	line-height: 2;
}

.thoughtTopTxt p+p {
	margin-top: 52px;
}

.thoughtTopTxt img {
	width: 390px;
}

.thoughtTopTxt span {
	display: inline-block;
}

.thoughtBottomTitle {
	background: url(../img/thought/bg_title02.png)no-repeat top 6px center;
	background-size: 1280px auto;
	height: 170px;
	/*margin-bottom: 50px;*/
	font-size: 20px;
	line-height: 1.35;
	font-weight: bold;
	text-align: center;
}

.thoughtBottomTitle span {
	font-size: 38px;
	display: block;
}

/*lineupWrap*/
.lineupWrap {
	background: url(../img/lineup/bg_lineup.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.otherTitleBox {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.otherTxt {
	padding: 200px 20px 80px;
}

.otherTxt span {
	font-size: 40px;
	line-height: 1.45;
	background-image: -webkit-linear-gradient(left, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #fff;
	padding: 0px 20px;
	border-radius: 10px;
	display: inline-block;
	margin-bottom: 14px;
	white-space: nowrap;
	font-weight: bold;
}

.lineupP02 {
	font-size: 28px;
	margin-bottom: 10px;
	text-align: center;
	font-weight: bold;
}

/*404*/
.notfoundWrap {
	background: url(../img/404/bg_404.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.notfoundWrap .otherTitle {
	padding-bottom: 40px;
}

.btnLink03 {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 70px;
	width: 390px;
	max-width: 100%;
	border-radius: 12px;
	border: 2px solid #000000;
	color: #fff;
	background: #000;
	font-size: 18px;
}

.btnLink03:before {
	content: '';
	width: 24px;
	height: 24px;
	background: url(../img/404/arrow_back.svg)no-repeat;
	background-size: 100% auto;
	margin-right: 10px;
}

.btnLink03:hover {
	opacity: 1;
	background: #fff;
	color: #000;
}

.btnLink03:hover:before {
	background: url(../img/404/arrow_back_on.svg)no-repeat;
	background-size: 100% auto;
}

.notfoundBox {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
	background: url(../img/404/bg_box.png)no-repeat center center;
	background-size: 1050px auto;
	min-height: 586px;
	padding-bottom: 20px;
	padding-left: 20px;
}

.notfoundBox .txtP {
	font-size: 20px;
	line-height: 1.4;
}

.notfoundBox .btnP {
	margin-top: 35px;
}


/*campaign*/
.campaignWrap {
	background: url(../img/campaign/bg_campaign.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.campaignWrap .otherTitle {
	padding-bottom: 40px;
}

.campaignUl li+li {
	margin-top: 20px;
}

.campaignUl a {
	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
	border-radius: 30px;
	padding: 50px;
	background: #fff;
	display: block;
}

.campaignUl dl {
	display: flex;
}

.campaignUl dt {
	width: 51%;
}

.campaignUl dt img {
	border-radius: 30px;
}

.campaignUl dd {
	width: 49%;
	padding-left: 50px;
}

.campaignUl .titleP {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	font-size: 30px;
	line-height: 1.2;
	min-height: 4.8em;
}

.campaignUl .txtP {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 7;
	-webkit-box-orient: vertical;
	font-size: 20px;
	margin-top: 15px;
	padding-top: 25px;
	border-top: 1px solid #E8E8E8;
	font-weight: normal;
}
.campaignWrap .box_title {
	position: relative;
}
/* おススメ物件 properties */
.keisai {
	position: absolute;
	bottom: 10px;
	right: 2%;;
	font-size: 30px;
	color: #184e7a;
}
.keisai .grd {
	font-size: 3.33em;
	background: rgb(226,153,222);
	background: linear-gradient(-90deg, rgba(226,153,222,1) 0%, rgba(165,129,221,1) 35%, rgba(77,154,214,1) 70%, rgba(60,187,214,1) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.keisai .cou {
	font-size: 1.6em;
}
.properties .anchorLink {
	display: none;
}
.item_content {
	border-bottom: dashed 2px #000;
	box-sizing: border-box;
	padding-bottom: 70px;
	margin-bottom: 70px;
}
.item_content:last-child {
	border-bottom: 0;
	padding-bottom: 0;
	margin-bottom: 0;
}

.box_tab {
	margin-bottom: 70px;
}
.box_tab:last-child {
	margin-bottom: 0;
}
.box_tab .tab {
	display: table-cell;
	width: 230px;
	height: 80px;
	border-radius: 20px 20px 0 0;
	background: rgb(64,181,214);
	background: linear-gradient(90deg, rgba(64,181,214,1) 0%, rgba(70,164,214,1) 100%);
	font-size: 30px;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	position: relative;
	left: 90px;
}
.box_tab .itemBox {
	border-radius: 40px;
	box-sizing: border-box;
	background: linear-gradient(-90deg, rgba(226,153,222,1) 0%, rgba(165,129,221,1) 35%, rgba(77,154,214,1) 70%, rgba(60,187,214,1) 100%);
    border-image-slice: 1;
	padding: 10px;
}

.grad-border-content {
	background: #fff;
	border-radius: 30px;
	box-sizing: border-box;
	padding: 80px;
}
.grad-border-content dl {
	margin-bottom: 25px;
}
.grad-border-content dl dt {
	display: table-cell;
	width: 15%;
	vertical-align: middle;
}
.grad-border-content dl dt span {
	display: inline-block;
	border-radius: 10px;
	width: 7em;
	background: #184e7a;
	font-size: 24px;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	margin-right: 1.3em;
	padding: 0.4em 0;
}
.grad-border-content dl dd {
	display: table-cell;
	width: 85%;
	font-size: 36px;
	color: #184e7a;
}
.grad-border-content dl dd a {
	vertical-align: middle;
	text-decoration: underline;
}
.box_tab .itemBox .info {
	margin-bottom: 35px;
}
.box_tab .itemBox .info .photo {
	display: table-cell;
	width: 50%;
	vertical-align: middle;
}
.box_tab .itemBox .info .photo img {
	border-radius: 36px;
}
.box_tab .itemBox .info .item {
	display: table-cell;
	width: 50%;
	vertical-align: middle;
	padding: 0 0 0 5%;
}
.box_tab .itemBox .info .item table th {
	width: 28%;
	font-size: 18px;
	padding: 1em 0;
}

.box_tab .itemBox .info .item table td {
	width: 72%;
	font-size: 22px;
	padding-right: 1em;
}
.box_tab .itemBox .info .item table td.price {
	font-size: 34px;
}
.box_tab .itemBox .btn {
	max-width: 320px;
	margin: 0 auto;
}
.box_tab .itemBox .btnLink01 {
	height: 70px;
}
/* おススメ物件 詳細ページ */
/* 初期表示で最初のスライドを表示 */
.slider_thumb .slide {
    display: none;
}
.slider_thumb .slide.active {
    display: block;
}

/* 初期状態でサムネイルがアクティブに */
.thumb_item {
    opacity: 0.5;
}
.thumb_item.active {
    opacity: 1;
}
.campaignWrap.single {
	position: relative;
	z-index: 0;
	overflow: hidden;/*ブラー効果でボヤけた部分を非表示*/
}
.campaignWrap.single:before {
	content: '';
	background: inherit;/*.bgImageで設定した背景画像を継承する*/
	-webkit-filter: blur(5px);
	-moz-filter: blur(5px);
	-o-filter: blur(5px);
	-ms-filter: blur(5px);
	filter: blur(5px);
	position: absolute;/*ブラー効果で画像の端がボヤけた分だけ位置を調整*/
	top: -5px;
	left: -5px;
	right: -5px;
	bottom: -5px;
	z-index: -1;/*重なり順序を一番下にしておく*/	
}
.sliderArea {
  max-width: 100%;
  margin: 0 auto;
}
.sliderArea.w300 {
  max-width: 300px;
}
.slick-slide {
  margin: 0 5px;
}
.slick-slide img {
  width: 100%;
  height: auto;
}
.slick-prev, .slick-next {
  z-index: 1;
}
.slick-prev:before, .slick-next:before {
  color: #000;
}
.slick-slide {
  transition: all ease-in-out .3s;
  opacity: .2;
}
.slick-active {
  opacity: 1;
}
.slick-current {
  opacity: 1;
}
.thumb {
  margin: 20px 0 0;
}
.thumb .slick-slide {
  cursor: pointer;
}
.thumb .slick-slide:hover {
  opacity: .7;
}
.sliderArea .thumb img {
	border-radius: 20px;
}
.sliderArea .slider_thumb img {
	border-radius: 36px;
}
.properties.single .lead_box {
	text-align: center;
	margin: 80px 0;
}
.properties.single .lead_box .lead01 {
	font-size: 32px;
	margin-bottom: 40px;
}
.properties.single .lead_box .lead02 {
	font-size: 18px;
}
.properties.single .madori {
	overflow: auto;
	white-space: nowrap;
	margin-bottom: 100px;
}

.properties.single .madori::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}
.properties.single .madori::-webkit-scrollbar-thumb {
    background: #184e7a;
	border-radius: 3px;
}
.properties.single .madori::-webkit-scrollbar-track {
    background: #bbdbf3;
	border-radius: 3px;
}

.properties.single .madori ul {
	display: flex;
	justify-content: space-between;
}
.properties.single .madori.three {
	padding-bottom: 50px;
	cursor: grab;
}
.properties.single .madori.three ul {
	width: 1380px;
}
.properties.single .madori.four ul {
	width: 1850px;
}
.properties.single .madori ul li {
	width: 49%;
	text-align: center;
	vertical-align: middle;
}
.properties.single .madori.one ul li {
	width: 72%;
	margin: auto;
}
.properties.single .madori.three ul li,
.properties.single .madori.four ul li {
	width: 450px;
	text-align: center;
	vertical-align: middle;
}
.properties.single .madori ul li img {
	border-radius: 20px;
}
.properties.single .box_tab .itemBox .info .item {
	display: inherit;
	width: 100%;
	padding: 0;
}
.properties.single .box_tab .itemBox .info .item table {
	width: 100%;
}
.properties.single .box_tab .itemBox .info .item table tr {
	display: inline-table;
	width: 50%;
}
.properties.single .tokuchou {
	border-radius: 20px;
	border-top: solid 7px #184e7a;
	box-sizing: border-box;
	box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
	width: 84%;
	margin: 50px auto 70px;
	padding: 2em 3em 2.5em;
}
.properties.single .tokuchou dl {
	margin-bottom: 0;
}
.properties.single .tokuchou dl dt {
	display: inherit;
	width: auto;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}
.properties.single .tokuchou dl dd {
	display: inherit;
	width: auto;
	font-size: 18px;
	font-weight: normal;
	line-height: 2;
}
.properties.single .map h3 {
	font-size: 28px;
	text-align: center;
	padding: 0.4em 0;
	margin-bottom: 40px;
	position: relative;
}
.properties.single .map h3:before {
	content: '';
	background: #bfcdd8;
	width: 7em;
	height: 7px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.properties.single .map .goolemap iframe {
	width: 100%;
	height: 450px;
	border-radius: 20px;
	margin-bottom: 40px;
}
.properties.single .map .info_sub {
	display: table;
	width: 100%;
}
.properties.single .map .info_sub.sp {
	display: none !important;
}
.properties.single .map .info_sub dl {
	display: inline-table;
	width: 50%;	
}
.properties.single .map .info_sub dl dt {
	display: inline-block;
	width: 170px;
	background: #bfcdd8;
	border-radius: 7px;
	font-size: 16px;
	text-align: center;
	padding: 0.3em 0;
}
.properties.single .map .info_sub dl dd {
	font-size: 16px;
	font-weight: normal;
	padding: 0 1em;
}
.properties.single .map .info_sub dl:nth-child(2n) dd {
	padding: 0 0 0 1em;
}
.properties.single .map .btn.sp {
	display: none;
}
.form_box h3 {
	border-radius: 15px;
	box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
	font-size: 28px;
	text-align: center;
	padding: 0.7em;
	position: relative;
	margin-top: 40px;
}
.form_box h3:before {
	content: '';
	width: 6px;
	height: 70%;
	background: rgb(226,153,222);
	background: linear-gradient(180deg, rgba(226,153,222,1) 0%, rgba(165,129,221,1) 35%, rgba(77,154,214,1) 70%, rgba(60,187,214,1) 100%);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1em;
	margin: auto
}
.form_box h3:after {
	content: '';
	width: 6px;
	height: 70%;
	background: rgb(226,153,222);
	background: linear-gradient(180deg, rgba(226,153,222,1) 0%, rgba(165,129,221,1) 35%, rgba(77,154,214,1) 70%, rgba(60,187,214,1) 100%);
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1em;
	margin: auto
}
@media screen and (max-width: 1200px) {
	.keisai {
		bottom: -40px;
	}
}
/*campaign_detail*/
.campaignDtTop {
	position: relative;
	background: url(../img/campaign_detail/img_top.jpg)no-repeat center center;
	background-size: cover;
	height: 720px;
}

.campaignDtTop .inner {
	height: 100%;
}

.campaignDtTop .boxP {
	position: absolute;
	left: 20px;
	bottom: -60px;
	z-index: 1;
	border-radius: 30px;
	background: #fff;
	border: 4px solid #fff;
	text-align: center;
	overflow: hidden;
	width: 440px;
}

.campaignDtTop .logoP {
	padding: 60px 20px 50px;
}

.campaignDtTop .logoP img {
	width: 342px;
}

.campaignDtTop .p01 {
	font-size: 29px;
	line-height: 1.34;
	font-weight: bold;
	margin-bottom: 15px;
}

.campaignDtTop .p02 {
	padding: 8px 20px;
	font-size: 22px;
	font-weight: bold;
	color: #fff;
	background-image: -webkit-linear-gradient(30deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	animation: bgOther 5s ease infinite;
	background-size: 200% 200%;
	text-align: center;
}

@keyframes bgOther {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

.thumbnailUl {
	display: flex;
}

.thumbnailUl li {
	width: 100%;
}

.thumbnailUl li img {
	height: 150px;
	object-fit: cover;
}

.campaignDtTop .engP {
	position: absolute;
	right: 0;
	top: 100%;
	z-index: 1;
	font-size: 7vw;
	line-height: 1;
	letter-spacing: -0.02em;
	font-weight: bold;
	transform: translateY(-28%);
	text-align: right;

	white-space: nowrap;
	font-size: 147px;
	max-width: calc(100% - 440px - 60px - 50vw + 640px);
	text-align: left;
}

.campaignDtTop .engP span {
	display: inline-block;
	border-bottom: 1px solid;
}

.campaignDtTop .engP span+span {
	float: right;
}

@media screen and (max-width: 1320px) {

	/*.campaignDtTop .engP{
		font-size: 92px;
		font-size: 147px;
		font-size: 120px;
		transform: translateY(-45%);
	}*/
	.campaignDtTop .engP font {
		display: none;
	}

}

@media screen and (max-width: 1200px) {
	.campaignDtTop .engP {
		font-size: 125px;
		text-align: right;
	}

}

.campaignDtAnchor {
	position: relative;
	z-index: 9;
}

.campaignDtAnchor .hdP {
	font-size: 20px;
	line-height: 1.2;
	font-weight: bold;
	color: #467583;
	letter-spacing: 0.04em;
	margin-bottom: 18px;
}

.campaignDtAnchor .hdP span:before,
.campaignDtAnchor .hdP span:after {
	content: '';
	width: 1px;
	height: 20px;
	display: inline-block;
	background: currentColor;
	transform: rotate(-28deg);
	margin: 0px 15px 0 0;
	position: relative;
	top: 3px;
}

.campaignDtAnchor .hdP span:after {
	transform: rotate(28deg);
	margin: 0 0 0 15px;
}

.campaignDtAnchor ul {
	margin-bottom: 80px;
	display: flex;
}

.campaignDtAnchor li {
	position: relative;
}

.campaignDtAnchor li+li {
	margin-left: 66px;
}

.campaignDtAnchor li+li:before {
	content: '';
	position: absolute;
	left: -66px;
	top: 0;
	z-index: 1;
	width: 66px;
	height: 100%;
	background: url(../img/campaign_detail/icon_anchor.svg)no-repeat center center;
	background-size: auto;
}

.campaignDtAnchor li a {
	display: flex;
	align-items: center;
	width: 300px;
	height: 80px;
	border-radius: 10px;
	border: 2px solid #467583;
	background: url(../img/campaign_detail/arrow_anchor.svg)no-repeat right 15px center #EFFBFF;
	background-size: auto;
	padding: 0 15px;
	font-size: 18px;
	font-weight: bold;
	color: #467583;
}

.campaignDtAnchor .imgP img {
	border-radius: 50%;
	object-fit: cover;
	width: 55px;
	height: 55px;
	margin-right: 15px;
}

.campaignDtSec01 {
	padding: 94px 0 80px;
}

.campaignDtItem {
	margin-bottom: 85px;
	position: relative;
	text-align: center;
	padding-top: 20px;
}

.campaignDtItem:before {
	content: '';
	width: 990px;
	height: 1013px;
	position: absolute;
	left: 50%;
	top: -180px;
	transform: translate(0%, 0%);
	z-index: -1;
	pointer-events: none;
	background: url(../img/campaign_detail/bg01.png)no-repeat center center;
	background-size: 100% auto;
}

.campaignDtItem#anchor02:before {
	width: 874px;
	height: 922px;
	left: auto;
	right: calc(50% + 210px);
	top: -240px;
	background: url(../img/campaign_detail/bg02.png)no-repeat center center;
	background-size: 100% auto;
}

.campaignDtItem .imgP img {
	border-radius: 20px;
	margin-bottom: 36px;
}

.campaignDtItem .pointP {
	position: absolute;
	left: -20px;
	top: -0px;
	z-index: 1;
	width: 140px;
	height: 140px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	padding-top: 12px;
	font-size: 18px;
	line-height: 1.33;
	border-radius: 50%;
	color: #fff;
	background-image: -webkit-linear-gradient(-30deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	animation: bgOther 5s ease infinite;
	background-size: 200% 200%;
}

@media screen and (max-width: 1200px) {
	.campaignDtItem .pointP {
		transform: scale(0.88);
	}

}

.campaignDtItem .pointP font {
	font-size: 46px;
	line-height: 1.2;
	font-weight: 400;
}

.campaignDtItem .pointP:before {
	content: '';
	width: 130px;
	height: 130px;
	border-radius: 50%;
	border: 1px solid #fff;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	pointer-events: none;
}

.campaignDtItem .titleP {
	font-size: 52px;
	line-height: 1.33;
	margin-bottom: 20px;
}

.campaignDtItem .txtP {
	font-size: 20px;
	font-weight: normal;
	line-height: 1.7;
}

.campaignDtContact {
	background: url(../img/campaign_detail/bg_line.png)no-repeat top center,
		url(../img/campaign_detail/bg_line.png)no-repeat bottom center;
	background-size: 100% auto;
	padding: 45px 0;
	text-align: center;
	max-width: 900px;
	margin: 0 auto;
}

.campaignDtContact .txtP {
	font-size: 20px;
	margin-bottom: 12px;
}

.campaignDtContact .btnP {
	max-width: 320px;
	margin: 0 auto;
}

.campaignDtContact .btnP a {
	height: 70px;
}

.campaignDtSec02 {
	background: url(../img/campaign_detail/bg_sec02.jpg)no-repeat center center;
	background-size: cover;
	padding: 80px 0;
}

.campaignDtSec02 h3 {
	text-align: center;
	font-size: 30px;
	line-height: 1.33;
	background: url(../img/campaign_detail/bg_title.png)no-repeat top center;
	background-size: auto;
	min-height: 70px;
	margin-bottom: 30px;
	padding-top: 15px;
}

.campaignDtSec02 .btnP {
	text-align: center;
	max-width: 320px;
	margin: 0 auto;
}

.campaignDtSec02 .btnP a {
	height: 70px;
}

.btnLink01.noArrow {
	background: #fff;
}

.btnLink01.noArrow:hover {
	background: #000;
}

.campaignDtSlider .slick-list {
	overflow: visible;
}

.campaignDtSlider.topUl02 {
	display: block;
	flex-wrap: wrap;
	top: 0;
	margin: 0 -20px;
	overflow: hidden;
	padding-bottom: 80px;
}

.campaignDtSlider.topUl02.slick_flex {
	position: static;
	display: flex;
	justify-content: center;
	margin: 0 -20px;
	padding-bottom: 40px;
}

/*swiper*/
.campaignDtSwiper.topUl02 {
	display: block;
	position: relative;
	margin: 0 -20px;
	top: 0;
}

.campaignDtSwiper.topUl02 .swiper-wrapper {
	padding-bottom: 80px;
}

.campaignDtSwiper.topUl02.slick_flex .swiper-wrapper {
	display: flex;
	justify-content: center;
	padding-bottom: 40px;
}

.campaignDtSwiper .swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
	position: absolute;
	z-index: 50;
	width: calc(100% - 160px);
	left: 20px;
	bottom: 40px;
	height: 3px;
}

.campaignDtSwiper .swiper-button-prev,
.campaignDtSwiper .swiper-button-next {
	width: 40px;
	height: 40px;
	left: auto;
	top: auto;
	right: 70px;
	bottom: 40px;
	transform: translateY(50%);
	background: url(../img/campaign_detail/prev.svg)no-repeat;
	background-size: 100% auto;
}

.campaignDtSwiper .swiper-button-next {
	background: url(../img/campaign_detail/next.svg)no-repeat;
	background-size: 100% auto;
	right: 20px;
}

.campaignDtSwiper .swiper-button-prev:after,
.campaignDtSwiper .swiper-button-next:after {
	content: none;
}



.campaignDtSlist {
	max-width: 290px;
	width: calc(25% - 40px);
	margin: 0 20px;
}

.slick_flex .campaignDtSlist {}

.slick-dots {
	width: auto;
	bottom: auto;
	right: auto;
	transform: translateX(0%);
	left: 20px;
	bottom: 40px;
	width: calc(100% - 160px);
	display: flex;
	font-size: 0;
}

.slick-dots li {
	font-size: 0;
	width: 100%;
	height: 1px;
	display: block;
	margin: 0;
	float: left;
}

.slick-dots li button {
	width: 100%;
	height: 1px;
	padding: 0;
}

.slick-dots li button:before {
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background: #CBCBCB;
	border-radius: 50%;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	top: 0;
	transition: background .5s;
}

.slick-dots li button:hover:before {
	background: #000;
}

.slick-dots li.slick-active button:before {
	background: #000;
}

.campaignDtSlider .slick-dots li button:before {
	border-radius: 0;
}

.campaignDtSlider .slick-prev,
.campaignDtSlider .slick-next {
	width: 40px;
	height: 40px;
	left: auto;
	top: auto;
	right: 70px;
	bottom: 40px;
	transform: translateY(50%);
	background: url(../img/campaign_detail/prev.svg)no-repeat;
	background-size: 100% auto;
}

.campaignDtSlider .slick-next {
	background: url(../img/campaign_detail/next.svg)no-repeat;
	background-size: 100% auto;
	right: 20px;
}

.campaignDtSlist a {
	height: 100%;
	box-shadow: 0 10px 20px rgb(0 0 0 / 8%);
	cursor: default;
}
.campaignDtSlist a:hover {
	opacity: 1;
}
.topUl02 .campaignDtSlist .typeP {
	min-height: auto;
}

.cloudCateg {
	padding-left: 30px;
	background: url(../img/top/icon_categ01.svg)no-repeat left center;
	background-size: 25px auto;
	font-size: 18px;
	color: #224E83;
	display: flex;
	align-items: center;
	min-height: 25px;
	margin-bottom: 8px;
}

.cloudCateg.pink,
.cloudCateg.event_briefing {
	background: url(../img/top/icon_categ02.svg)no-repeat left center;
	background-size: 25px auto;
	color: #88447D;
}



/*0901*/
.eventDtTop {
	background: url(../img/event_detail/img_top.jpg)no-repeat center center;
	height: 730px;
	position: relative;
}

.eventDtTop .inner {
	height: 100%;
}

.eventDtTop .boxP {
	position: absolute;
	left: 20px;
	bottom: -180px;
	z-index: 1;
	border-radius: 30px;
	background: #fff;
	width: calc(100% - 40px);
	display: flex;
	align-items: center;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
}

.eventDtTop .boxP dt,
.eventDtTop .boxP dd {
	padding: 30px 60px;
}

.eventDtTop .boxP dt {
	width: 530px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-right: 1px solid #E6E6E6;
}

.eventDtTop .boxP dt .imgP {
	height: 315px;
}

.eventDtTop .boxP dt img {
	height: 100%;
}

.eventDtTop .boxP dd {
	width: calc(100% - 530px);
}

.eventDtTop .boxP .logoP {
	margin-bottom: 30px;
}

.eventDtTop .boxP .logoP img {
	height: 120px;
}

.eventDtTop .boxP .titleP {
	font-size: 26px;
	margin-bottom: 10px;
}

.eventDtTop .timeP {
	background: #9365A8;
	color: #fff;
	border-radius: 10px;
	padding: 12px 20px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.timeTitle {
	font-size: 16px;
	margin-right: 20px;
}

.timeTitle img {
	margin-right: 10px;
}

.timeTxt {
	font-size: 26px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.timeTxt font {
	font-size: 18px;
	letter-spacing: 0;
	display: block;
	margin-left: 0.5em;
}

.eventDtConcept {
	background: url(../img/event_detail/bg_concept.jpg)no-repeat bottom center;
	background-size: cover;
	padding: 240px 0 60px;
}

.eventDtConcept h3 {
	text-align: center;
	font-size: 36px;
	line-height: 1.33;
	background: url(../img/event_detail/bg_title.png)no-repeat top center;
	background-size: auto;
	min-height: 53px;
	margin-bottom: 30px;
}

.conceptSlist {
	max-width: 560px;
	width: 560px;
	margin: 0 20px;
}

.conceptSlist .imgP02 img {
	border-radius: 15px;
}

.conceptSlist .txtP02 {
	font-size: 18px;
	font-weight: 400;
	margin-top: 18px;
}

.conceptSwiper {
	display: block;
	position: relative;
	margin: 0 -20px;
	top: 0;
}

.conceptSwiper.slick_flex {
	position: static;
	display: flex;
	justify-content: center;
	margin: 0 -20px;
	padding-bottom: 40px;
}

.conceptSwiper.swiper {
	overflow: visible;
}

.conceptSwiper .swiper-wrapper {
	padding-bottom: 80px;
}

.conceptSwiper .swiper-wrapper.conceptSwiperCentering {
	justify-content: center;
}

.conceptSwiper.slick_flex .swiper-wrapper {
	display: flex;
	justify-content: center;
	padding-bottom: 40px;
}

.eventSec03 {
	padding: 60px 0 0;
}

.eventSec03 .borderP {
	padding-top: 50px;
	border-bottom: 1px solid #E6E6E6;
}

.eventSec03 .boxP {
	display: flex;
	margin-bottom: 80px;
}

.eventSec03 .boxP .leftP,
.eventSec03 .boxP .rightP {
	width: 50%;
}

.eventSec03 .boxP .leftP {
	padding-right: 40px;
}

.eventSec03 .boxP .rightP {
	padding-left: 40px;
	border-left: 1px solid #E6E6E6;
}

.eventSec03 .boxP dt {
	border-right: 1px solid #E6E6E6;
}

.eventSec03 .boxP h3 {
	font-size: 16px;
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

.eventSec03 .boxP h3 img {
	margin-right: 10px;
}

.eventAccess {
	border-radius: 6px;
	background: #9365A8;
	color: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 20px;
	height: 50px;
	font-size: 16px;
	line-height: 20px;
	font-weight: bold;
}

.eventAccess+.eventAccess {
	margin-top: 10px;
}

.eventAccess .nameP {
	width: 170px;
	border-right: 1px solid;
}

.eventAccess .linkP a {
	text-decoration: underline;
	color: #fff;
}

.eventSec03 .boxP ul {
	margin-top: 25px;
}

.eventSec03 .boxP li {
	font-size: 14px;
	font-weight: 400;
	padding-left: 1em;
	text-indent: -1em;
}

.eventSec03 .colorP {
	background-image: -webkit-linear-gradient(right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	text-align: center;
	font-size: 26px;
	line-height: 1.65;
}

.eventSec03 .colorP span {
	background-image: -webkit-linear-gradient(right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

/*eventForm*/
.eventForm {
	padding: 50px 0 80px;
}

.eventFormHd01 {
	text-align: center;
	margin-bottom: 20px;
}

.eventFormHd01 span {
	font-size: 24px;
	background-image: -webkit-linear-gradient(right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #fff;
	padding: 7px 30px;
	border-radius: 10px;
	display: inline-block;
}

.formStep {
	font-size: 16px;
	text-align: center;
}

.formStep ul {
	display: flex;
	justify-content: center;
	margin: 15px 0;
}

.formStep li {
	position: relative;
}

.formStep li+li {
	margin-left: 220px;
}

.formStep li+li:before {
	content: '';
	position: absolute;
	left: -110px;
	top: 13px;
	z-index: 1;
	transform: translateX(-50%);
	width: 200px;
	height: 1px;
	background: #184E7A;
}

.formStep li .dotP {
	width: 26px;
	height: 26px;
	border-radius: 50px;
	margin-bottom: 6px;
	position: relative;
	border: 1px solid #184E7A;
	display: inline-block;
}

.formStep li.is_active .dotP:before {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #184E7A;
}

.formRequired {}

.requiredSpan {
	color: #FFF;
}

.formNotice {
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 10px;
}

.formTable {
	width: 100%;
	margin-bottom: 40px;
}

.formTable th,
.formTable td {
	padding: 20px 0 5px;
	width: 60%;
	border-bottom: 1px solid #E6E6E6;
}

.formTable tr:last-of-type th,
.formTable tr:last-of-type td {
	border-bottom: 0px solid #E6E6E6;
}

.formTable th {
	width: 40%;
	font-size: 18px;
	padding-top: 28px;
	vertical-align: top;
}

.formTable th.normalTh {
	padding: 20px 0;
}
.formTable td span.bdr {
	display: block;
	border: solid 1px #000;
	border-radius: 6px;
	padding: 12px 20px;
}
.formTable .halfNumber {
	font-size: 15px;
	font-weight: 400;
}

.formTable select,
.formTable input[type='text'],
.formTable input[type='number'],
.formTable input[type='tel'],
.formTable input[type='email'],
.formTable textarea {
	width: 100%;
	border: 0px solid #ccc;
	width: 100%;
	border-radius: 6px;
	background: #F4F4F4;
	height: 46px;
	padding: 0 20px;
	font-size: 14px;
	line-height: 1.5;
	color: #000000;
	font-weight: bold;
	font-family: inherit;
	margin-bottom: 15px;
}

.formTable .error input[type='text'],
.formTable .error input[type='number'],
.formTable .error input[type='tel'],
.formTable .error input[type='email'],
.formTable input[type='text'].error,
.formTable input[type='number'].error,
.formTable input[type='tel'].error,
.formTable input[type='email'].error {
	background: #FFEBE6;
	color: #FF0000;
}

.formTable textarea {
	padding: 10px 20px;
	resize: none;
	min-height: 140px;
}

.formTable .formReserveOther textarea {
	min-height: 46px;
}

.formTable select {
	border: 1px solid #000000;
	background: url(../img/event_detail/select.svg)no-repeat right 20px center #fff;
	background-size: 20px auto;
}

.eventNameP {
	border: 1px solid #000000;
	border-radius: 6px;
	padding: 12px 20px;
	font-size: 14px;
	margin-bottom: 10px;
}

.LabelWrap,
.wpcf7-form-control {
	display: flex;
	flex-wrap: wrap;
}

.labelList,
.wpcf7-list-item {
	margin: 0 30px 10px 0;
	display: block;
	position: relative;
}

.checkboxWrap .labelList,
.checkboxWrap .wpcf7-list-item {
	margin-right: 10px;
	width: calc(25% - 10px);
	letter-spacing: -0.02em;
}

.labelList input,
.wpcf7-list-item input {
	opacity: 0;
	position: absolute;
}

.labelList label,
.wpcf7-list-item .wpcf7-list-item-label {
	font-size: 16px;
	padding-left: 30px;
	display: block;
	transition: .5s all;
}
.formTable td.fs {
	padding: 30px 0;
}
/* ラジオボタン ここから */
.labelList input[type='radio']+label,
.wpcf7-list-item input[type='radio']+.wpcf7-list-item-label {
	background: url(../img/event_detail/radio_no.svg)no-repeat left center;
	background-size: 20px auto;
}

.requiredIpt .wpcf7-list-item input[type='radio']+.wpcf7-list-item-label{
	background: url(../img/event_detail/radio_no_error.svg)no-repeat left center;
	background-size: 20px auto;
}

.requiredIpt.filled .wpcf7-list-item input[type='radio']+.wpcf7-list-item-label{
	background: url(../img/event_detail/radio_no.svg)no-repeat left center;
	background-size: 20px auto;
}

.labelList input[type='radio']:checked+label,
.requiredIpt.filled .labelList input[type='radio']:checked+label,
.wpcf7-list-item input[type='radio']:checked+.wpcf7-list-item-label,
.requiredIpt.filled .wpcf7-list-item input[type='radio']:checked+.wpcf7-list-item-label{
	background: url(../img/event_detail/radio_on.svg)no-repeat left center;
	background-size: 20px auto;
}
/* checkboxここから */
.labelList input[type='checkbox']+label,
.wpcf7-list-item input[type='checkbox']+.wpcf7-list-item-label {
	background: url(../img/event_detail/checkbox_no.svg)no-repeat left center;
	background-size: 20px auto;
}
.requiredIpt .wpcf7-list-item input[type='checkbox']+.wpcf7-list-item-label {
  background: url(../img/event_detail/checkbox_require.svg) no-repeat left center;
  background-size: 19px auto;
}
.requiredIpt.filled .wpcf7-list-item input[type='checkbox']+.wpcf7-list-item-label {
  background: url(../img/event_detail/checkbox_no.svg) no-repeat left center;
  background-size: 20px auto;
}
.labelList input[type='checkbox']:checked+label,
.requiredIpt.filled .wpcf7-list-item input[type='checkbox']:checked+label,
.wpcf7-list-item input[type='checkbox']:checked+.wpcf7-list-item-label,
.requiredIpt.filled .wpcf7-list-item input[type='checkbox']:checked+.wpcf7-list-item-label {
	background: url(../img/event_detail/checkbox_on.svg)no-repeat left center;
	background-size: 20px auto;
}
/* checkboxここまで */

.wpcf7-exclusive-checkbox .wpcf7-list-item input[type='checkbox']+.wpcf7-list-item-label {
	background: url(../img/event_detail/radio_no.svg)no-repeat left center;
	background-size: 20px auto;
}

.wpcf7-exclusive-checkbox .wpcf7-list-item input[type='checkbox']:checked+.wpcf7-list-item-label {
	background: url(../img/event_detail/radio_on.svg)no-repeat left center;
	background-size: 20px auto;
}

.formTogWrap {
	border: 1px solid #FF0000;
	border-radius: 6px;
	margin-bottom: 15px;
	overflow: hidden;
}

.formTogHd {
	font-size: 14px;
	font-weight: bold;
	color: #FF0000;
	padding: 15px 20px;
	background: url(../img/event_detail/tog_close.svg)no-repeat right 20px center;
	background-size: auto;
	cursor: pointer;
}

.formTogHd.is_active {
	background: url(../img/event_detail/tog_open.svg)no-repeat right 20px center;
	background-size: auto;
}

.formTogBox {
	display: none;
	padding: 20px;
	border-top: 1px solid #FF0000;
}

.formTogTxt {
	font-size: 14px;
	font-weight: 400;
	margin-bottom: 15px;
}

.formTogTxt p+p {
	margin-top: 20px;
}
.formTogBox .telFixedUl {
	margin-bottom: 0;
}
.formTogBox .telFixedUl li {
	margin-bottom: 20px;
}
.formTogBox .telFixedUl li a {
	font-size: 18px;
	padding: 0 20px;
	margin-bottom: 4px;
	border-radius: 4px;
	height: 40px;
}

.formTogBox .telFixedUl li font {
	font-size: 22px;
	letter-spacing: -0.08em;
}

.formTogBox .telFixedDl {
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	margin-right: 30px;
}

.formTogBox .telFixedDl dt {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 10px;
	width: 80px;
	height: 26px;
	border: 1px solid #000;
	border-radius: 20px;
}

.formTogBox .telFixedBox {
	margin-bottom: 0;
}

.halfRow {
	display: flex;
	margin: 0 -10px;
}

.halfList {
	width: calc(50% - 20px);
	margin: 0 10px;
}

.halfListHd {
	margin-bottom: 4px;
}

.halfFlex {
	display: flex;
}

.halfFlex input {
	max-width: calc(100% - 120px);
}

button.autoFill {
	margin-left: 10px;
	border: 1px solid #000000;
	border-radius: 6px;
	font-size: 14px;
	margin-bottom: 10px;
	background: #fff;
	width: 110px;
	height: 46px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	pointer-events: none;
	font-weight: bold;
	color: #000;
}

.halfList .formNotice {
	margin: -5px 0 15px;
}

.formKnowP {
	padding: 5px 0;
}

.formBottom {
	background: #F4F4F4;
	border-radius: 12px;
	padding: 40px 20px;
	text-align: center;
}

.formBottomTxt {
	font-size: 14px;
	margin-bottom: 18px;
}

.formBottomTxt a {
	color: #184E7A;
	text-decoration: underline;
}

.formSubmit input[type='submit'] {
	display: inline-flex;
	justify-content: center;
	text-align: center;
	width: 490px;
	height: 60px;
	border-radius: 8px;
	color: #fff;
	font-size: 20px;
	border: 0;
	font-family: inherit;
	font-weight: bold;
	cursor: pointer;
	background: #184E7A;
}

.formSubmit input[type='submit'].disabled {
	background: #AFC1D2;
	pointer-events: none;
}

.formReserveOther {
	display: none;
}

/*error*/
.error .labelList {
	color: #FF0000;
}

.error input[type='radio']+label {
	background: url(../img/event_detail/radio_no_error.svg)no-repeat left center;
	background-size: 20px auto;
	color: #FF0000;
}

.formTable .error select,
.formTable select.error {
	color: #FF0000;
	border: 0px solid #FF0000;
	background: url(../img/event_detail/select_error.svg)no-repeat right 20px center #FFEBE6;
	background-size: 20px auto;
}

/* WebKit browsers */
.error input::-webkit-input-placeholder {
	color: #FF0000;
}

input.error::-webkit-input-placeholder {
	color: #FF0000;
}

/* Mozilla Firefox 4 to 18 */
.error input:-moz-placeholder {
	color: #FF0000;
}

input.error:-moz-placeholder {
	color: #FF0000;
}

/* Mozilla Firefox 19+ */
.error input::-moz-placeholder {
	color: #FF0000;
}

input.error::-moz-placeholder {
	color: #FF0000;
}

/* Internet Explorer 10+ */
.error input:-ms-input-placeholder {
	color: #FF0000;
}

input.error:-ms-input-placeholder {
	color: #FF0000;
}

.formTable .error input[type='text'].noError {
	background: #F4F4F4;
}

.formTable .error input[type='text'].noError:-moz-placeholder {
	color: #757575;
}

.formTable .error input[type='text'].noError::-moz-placeholder {
	color: #757575;
}

.formTable .error input[type='text'].noError:-ms-input-placeholder {
	color: #757575;
}

.formTable .error input[type='text'].noError::-webkit-input-placeholder {
	color: #757575;
}

/*event_thanks*/
.eventThanks {
	padding: 110px 0 40px;
}

.eventThanksHd {
	font-size: 34px;
	text-align: center;
	margin-bottom: 20px;
}

.eventThanksP01 {
	font-size: 16px;
	line-height: 1.875;
	font-weight: 400;
	margin-bottom: 55px;
}

.eventThanksBox {
	display: flex;
	background-image: -webkit-linear-gradient(left, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #fff;
	border-radius: 10px;
	padding: 30px;
}

.eventThanksBox .ftRight01 {
	width: 50%;
	margin: 0;
	background: none;
	color: #fff;
	padding: 0;
}

.eventThanksBox .ftDl01 {
	display: block;
}

.eventThanksBox .ftDl01 dt {
	display: flex;
	align-items: flex-end;
	width: auto;
	margin-bottom: 15px;
	font-size: 24px;
	line-height: 1.33;
}

.eventThanksBox .ftDl01 dt span {
	display: block;
	font-size: 20px;
	color: #fff;
	margin-right: 12px;
}

.eventThanksBox .ftDl01 dd {
	width: auto;
	padding-right: 30px;
}

.eventThanksBox .telFixedDl {
	display: flex;
	margin-bottom: 10px;
}

.eventThanksBox .telFixedDl dt {
	border: 1px solid #fff;
}

.eventThanksBox .telFixedUl {
	margin-bottom: 0;
}

.eventThanksBox .telFixedUl li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 20px;
	padding: 0 35px;
	margin-bottom: 5px;
	border-radius: 6px;
	background: #fff;
	color: #1563AE;
	height: 60px;
}

.eventThanksBox .telFixedUl li font {
	display: flex;
	font-size: 22px;
	line-height: 1.33;
	letter-spacing: -0.08em;
	padding-left: 35px;
	background: url(../img/event_detail/icon_tel_blue.svg)no-repeat left center;
	background-size: auto;
}

.eventDtWrap .campaignDtSec02 h3 {
	background: url(../img/event_detail/bg_title02.png)no-repeat top center;
	background-size: auto;
}

.eventDtWrap .campaignDtSec02 .campaignDtSlist:nth-of-type(even) {
	position: relative;
	top: 40px;
}

.eventDtWrap .campaignDtSwiper.topUl02 .swiper-wrapper {
	padding-bottom: 120px;
}

.eventDtWrap .campaignDtSwiper.topUl02.slick_flex .swiper-wrapper {
	padding-bottom: 100px;
}

/*member*/
.memberWrap {
	background: url(../img/member/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.memberWrap .otherTitle {
	padding-bottom: 0;
}

.formStepTxt02 {
	font-size: 20px;
}

.thanksLineP {
	text-align: center;
}

.thanksLineP span {
	display: inline-flex;
	text-align: center;
	font-size: 24px;
	line-height: 1.25;
	padding-bottom: 20px;
	letter-spacing: 0.06em;
	background: url(../img/member/bg_line.svg)no-repeat bottom center;
	background-size: 100% auto;
}

.thanksLineP+.topSec08 {
	padding-top: 30px;
}

/*contact*/
.contactFormDl {
	border: 1px solid #000000;
	border-radius: 10px;
	margin: 25px 0 30px;
	overflow: hidden;
}

.contactFormDl dt {
	font-size: 18px;
	letter-spacing: 0.06em;
	padding: 11px;
	border-bottom: 1px solid #000000;
	text-align: center;
	background: #F4F4F4;
}

.contactFormDl dd {
	font-size: 16px;
	line-height: 1.4375;
	font-weight: 400;
	padding: 20px 40px;
}


.formTable .error textarea,
.formTable textarea.error {
	background: #FFEBE6;
	color: #FF0000;
}

.error textarea:-ms-input-placeholder {
	color: #FF0000;
}

.error textarea::-moz-placeholder {
	color: #FF0000;
}

.error textarea::-webkit-input-placeholder {
	color: #FF0000;
}

.error textarea:-moz-placeholder {
	color: #FF0000;
}

textarea.error:-ms-input-placeholder {
	color: #FF0000;
}

textarea.error::-moz-placeholder {
	color: #FF0000;
}

textarea.error::-webkit-input-placeholder {
	color: #FF0000;
}

textarea.error:-moz-placeholder {
	color: #FF0000;
}

/*online*/
.onlineWrap {
	background: url(../img/online/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.onlineWrap .otherTitle {
	padding-bottom: 50px;
	position: relative;
	z-index: 3;
}

.onlineWrap .eventForm {
	padding-top: 55px;
}

.onlineTop {
	position: relative;
	z-index: 2;
}

.bgP span {
	font-size: 26px;
	line-height: 1.46;
	background-image: -webkit-linear-gradient(left, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #fff;
	padding: 10px;
	border-radius: 8px;
	display: inline-block;
	margin-bottom: 16px;
}

.onlineTopImg {
	position: absolute;
	left: 570px;
	top: -370px;
	z-index: -1;
	width: 1050px;
}

.onlineTopImg img {
	border-radius: 20px 0 0 20px;
}

.onlineTopBox {
	margin-top: 8px;
}

.onlineTopBoxHd {
	font-size: 22px;
	margin-bottom: 16px;
}

.onlineTopBoxUl {
	display: flex;
}

.onlineTopBoxUl li {
	max-width: 160px;
	margin-right: 50px;
	text-align: center;
}

.onlineTopBoxUl dt {
	margin-bottom: 10px;
}

.onlineTopBoxUl dt img {
	width: 120px;
}

.onlineTopBoxUl .pointP span {
	font-size: 15px;
	color: #184E7A;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 24px;
	margin-bottom: 10px;
	border-radius: 25px;
	border: 1px solid;
}

.onlineTopBoxUl .txtP {
	font-size: 16px;
	line-height: 20px;
	letter-spacing: -0.03em;
	font-weight: bold;
}

.onlineStep {}

.onlineStep li {
	margin-bottom: 12px;
	background: #F0F3F8;
	border-radius: 10px;
	padding: 20px 25px;
}

.onlineStep dl {
	display: flex;
	align-items: center;
}

.onlineStep dt {
	display: flex;
	align-items: center;
	color: #184E7A;
	font-size: 20px;
	width: 330px;
}

.onlineStep dt span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 30px;
	margin-right: 25px;
	border-radius: 25px;
	font-size: 15px;
	color: #fff;
	background: #184E7A;
}

.onlineStep dd {
	width: calc(100% - 330px);
}

.onlineStep .txtP {
	font-size: 16px;
	line-height: 20px;
	font-weight: 400;
}

.onlineStep .btnBox {
	display: flex;
	flex-wrap: wrap;
	margin-top: 8px;
}

.onlineStep .btnBox a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 40px;
	width: 110px;
	margin-right: 7px;
	border-radius: 5px;
	color: #fff;
	background: #000;
	font-size: 14px;
}

.onlineStep .btnBox a.blueBtnP {
	width: 230px;
	background: #2D8CFF;
}

.onlineStep .btnBox a.blackBtnP img {
	height: 18px;
}

.onlineWrap .contactFormDl {
	margin: 30px 0 60px;
}

.contactFormDl li {
	padding-left: 1em;
	text-indent: -1em;
}

/*event*/
.eventWrap {
	background: url(../img/event/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.eventWrap .otherTitle {
	padding-bottom: 30px;
	position: relative;
	z-index: 2;
}

.eventTop {
	padding-bottom: 36px;
	position: relative;
	z-index: 1;
}

.navRotated02 {
	/*overflow: hidden;*/
	pointer-events: none;
	position: absolute;
	left: 50%;
	top: -180px;
	width: 900px;
	z-index: -1;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
}

.navRotated02 img {
	animation: circle 35s linear infinite;
}

.navRotated02:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 484px;
	background: url(../img/event/bg_closebtn.png)no-repeat bottom center;
	background-size: 100% auto;
}

.eventSlider {
	padding-bottom: 90px;
}

.eventSlider .slick-list {
	overflow: visible;
}

.eventSlider .slick-prev,
.eventSlider .slick-next {
	width: 60px;
	height: 60px;
	left: auto;
	top: auto;
	right: 74px;
	bottom: 0;
	transform: translateY(0%);
	background: url(../img/top/prev_cloud.svg)no-repeat;
	background-size: 100% auto;
	overflow: hidden;
}

.eventSlider .slick-next {
	background: url(../img/top/next_cloud.svg)no-repeat;
	background-size: 100% auto;
	right: 0px;
}

.pro-img {
	position: relative;
}

.pro-img .progresses {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	position: absolute;
	right: 165px;
	bottom: 30px;
	transform: translateY(50%);
	z-index: 1;
}

.eventSlider.slick_flex {
	display: flex;
	justify-content: center;
}

.eventSlist {
	width: 1090px;
	margin: 0 20px;
	padding: 5px;
	position: relative;
	transition: all 0.5s !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
	border-radius: 30px;
}

.eventSlist:hover {
	opacity: .8;
}

.eventSlist:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	border-radius: 30px;
	background-image: -webkit-linear-gradient(-45deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
}

.eventSlist a {
	position: relative;
	z-index: 3;
	display: block;
	height: 100%;
	padding: 48px;
	border-radius: 27px;
	background: #fff;
	opacity: 1;
}

.eventSlist dl {
	overflow: hidden;
}

.eventSlist dt {
	float: right;
	width: 605px;
	margin-left: 48px;
}

.eventSlist dt img {
	width: 100%;
	height: 448px;
	object-fit: cover;
	border-radius: 30px;
}

.eventSlist dd {
	overflow: hidden;
	position: relative;
}

.cloudType {
	min-height: 2.66em;
	height: auto;
}

.eventSlist .cloudThumbnail {
	height: 250px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.eventSlist .cloudTime {
	font-size: 16px;
	margin-bottom: 15px;
}

.eventSlist .cloudType {
	font-size: 32px;
	line-height: 1;
	min-height: 2em;
	padding-bottom: 7px;
	border-bottom: 1px solid #E8E8E8;
}

.eventSec01 {
	padding: 106px 0 60px;
	position: relative;
	z-index: 3;
	background: none;
}

.eventSec01:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	z-index: -2;
	width: 100%;
	height: 1436px;
	pointer-events: none;
	background: url(../img/event/bg_sec01.png)no-repeat top center;
	background-size: 1920px auto;
}

.eventSec02 {
	position: relative;
	z-index: 4;
	padding: 130px 0 80px;
	background: url(../img/event/bg_sec02.png)no-repeat top center;
	background-size: 1920px auto;
}

.accessWrap {
	background: url(../img/access/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px auto;
	padding-bottom: 100px;
}

.accessWrap .otherTitle {
	padding-bottom: 0;
	position: relative;
	z-index: 3;
}

.accessTop {
	position: relative;
	z-index: 5;
	padding-bottom: 17px;
}

.accessAnchor {
	position: absolute;
	right: 70px;
	bottom: 60px;
	z-index: 2;
	border-radius: 8px;
	overflow: hidden;
	border: 1px solid #000000;
	background: #F0F3F8;
}

.accessAnchor li+li {
	border-top: 1px solid #000000;
}

.accessAnchor a {
	display: flex;
	align-items: center;
	width: 560px;
	height: 50px;
	padding: 0 20px;
	font-size: 20px;
	background: url(../img/access/arrow_anchor.svg)no-repeat right 20px center;
	background-size: auto;
}

.accessTopBtn {
	position: absolute;
	right: -200px;
	bottom: -40px;
	z-index: 1;
	width: 323px;
}

.accessMain {
	padding-bottom: 100px;
}

.accessItem+.accessItem {
	margin-top: 150px;
}

.accessItemCont {
	display: flex;
	justify-content: space-between;
}

.accessItemCont .leftP {
	width: 440px;
	max-width: 34%;
	padding-top: 88px;
}

.accessItemCont .rightP {
	width: 780px;
	max-width: 61%;
}

@media screen and (max-width: 1200px) {

	.accessItemCont {
		align-items: center;
	}

	.accessItemCont .leftP {
		padding-top: 0;
	}


	.accessTopBtn {
		position: absolute;
		right: -50px;
		bottom: -80px;
		z-index: 1;
	}
}

.accessItemCont .titleP {
	font-size: 50px;
	line-height: 1.33;
	padding-bottom: 30px;
	background: url(../img/access/bg_title.svg)no-repeat left bottom;
	background-size: auto 6px;
	margin-bottom: 40px;
}

.accessItemCont .ulP {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 20px;
	border-bottom: 2px solid #E6E6E6;
}

.accessItemCont .ulP li {
	margin: 0 10px 10px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 36px;
	min-width: 180px;
	padding: 0 15px;
	font-size: 19px;
	border-radius: 18px;
	border: 2px solid;
	white-space: nowrap;
}

.accessItemCont .txtP {
	margin-top: 30px;
	font-size: 18px;
	line-height: 1.66;
}

.accessSwiper {
	padding-bottom: 70px;
	margin-right: -320px;
}

.accessSlist {
	width: 1100px !important;
	max-width: 100%;
}

.accessSlist img {
	border-radius: 15px;
}

.swiper_bottom {
	width: 780px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}

.accessSwiper .swiper-horizontal>.swiper-scrollbar,
.accessSwiper .swiper-scrollbar.swiper-scrollbar-horizontal {
	position: absolute;
	z-index: 50;
	width: calc(100% - 120px);
	left: 0;
	bottom: 20px;
	height: 2px;
}

.accessSwiper .swiper-button-prev,
.accessSwiper .swiper-button-next {
	width: 40px;
	height: 40px;
	left: auto;
	top: auto;
	right: 50px;
	bottom: 0;
	transform: translateY(0%);
	background: url(../img/top/prev02.svg)no-repeat;
	background-size: 99% auto;
}

.accessSwiper .swiper-button-next {
	background: url(../img/top/next02.svg)no-repeat;
	background-size: 99% auto;
	right: 0;
}

/* accessSwiperから派生してrelatedSwiper作成 */


.relatedSwiper {
	padding-bottom: 70px;
	margin-right: -320px;
}

.relatedSwiper .swiper-horizontal>.swiper-scrollbar,
.relatedSwiper .swiper-scrollbar.swiper-scrollbar-horizontal {
	position: absolute;
	z-index: 50;
	width: calc(100% - 120px);
	left: 0;
	bottom: 20px;
	height: 2px;
}

.relatedSwiper .swiper-button-prev,
.relatedSwiper .swiper-button-next {
	width: 40px;
	height: 40px;
	left: auto;
	top: auto;
	right: 50px;
	bottom: 0;
	transform: translateY(0%);
	background: url(../img/top/prev02.svg)no-repeat;
	background-size: 99% auto;
}

.relatedSwiper .swiper-button-next {
	background: url(../img/top/next02.svg)no-repeat;
	background-size: 99% auto;
	right: 0;
}

/* accessSwiperから派生してrelatedSwiper作成 ここまで */

.swiper-button-prev:after,
.swiper-button-next:after {
	content: none;
}

.accessItemBox {
	margin-top: 40px;
	position: relative;
	z-index: 2;
}

.flowTxt {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: -1;
	transform: translate(-50%, -50%);
	color: #DFBEE1;
	font-size: 90px;
	white-space: nowrap;
}

.flowTxt p {
	animation: fadenum 10s linear infinite;
}

@keyframes fadenum {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(-50%);
	}
}

.accessItemBox .contP {
	border-radius: 30px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
	padding: 45px 50px;
}

.accessItemBox .titleP02 {
	font-size: 30px;
	line-height: 1.33;
	padding-bottom: 35px;
	border-bottom: 1px solid #E8E8E8;
	margin-bottom:
}

.accessItemBox dl {
	display: flex;
	font-size: 20px;
}

.accessItemBox dt,
.accessItemBox dd {
	width: 100%;
	padding-top: 30px;
}

.accessItemBox dt {
	padding-right: 30px;
}

.accessItemBox dd {
	padding-left: 30px;
	border-left: 1px solid #E8E8E8;
}

.accessItemBox .pdfP {
	position: absolute;
	right: 50px;
	top: 30px;
	z-index: 1;
}

.btnLink04 {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 70px;
	width: 560px;
	max-width: 100%;
	border-radius: 12px;
	color: #fff;
	font-size: 18px;
	opacity: 1 !important;
	background-image: -webkit-linear-gradient(right, #F0DED8, #C793D8, #F0DED8);
	background-size: 200% 200%;
	animation: btnlink02 .5s ease forwards;
	border: 1px solid #B089BC;
}

.btnLink04:hover {
	animation: btnlink .5s ease forwards;
}

@keyframes btnlink {
	0% {
		background-position: 0% 50%;
	}

	100% {
		background-position: 100% 50%;
	}
}

@keyframes btnlink02 {
	0% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

.btnLink04:after {
	position: absolute;
	right: 20px;
	top: 50%;
	z-index: 2;
	transform: translateY(-50%);
	content: '';
	width: 24px;
	height: 24px;
	background: url(../img/top/arrow_btn01_on.svg)no-repeat;
	background-size: 100% auto;
	margin-left: 10px;
}

.iframeP {
	position: relative;
	width: 100%;
	padding-top: 56%;
}

.iframeP iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}

/*.accessItem:nth-of-type(even) */
.accessItem:nth-of-type(even) .accessItemCont {
	flex-direction: row-reverse;
}

.accessItem:nth-of-type(even) .accessSwiper,
.accessItem:nth-of-type(even) .rekatedSwiper {
	margin-right: 0px;
	margin-left: -320px;
}

.accessItem:nth-of-type(even) .swiper_bottom {
	left: auto;
	right: 0;
}

.accessItem:nth-of-type(even) .btnLink04 {
	background-image: -webkit-linear-gradient(right, #EAD8F0, #93B6D8, #EAD8F0);
	background-size: 200% 200%;
	border-color: #5989B9;
}

.accessItem:nth-of-type(even) .flowTxt {
	color: #93B6D8;
}

/*.accessItem:nth-of-type(3n-1)*/
/*.accessItem:nth-of-type(3n-1) .btnLink04{
    background-image: -webkit-linear-gradient(right,#EAD8F0,#93B6D8,#EAD8F0);
	background-size: 200% 200%;
	border-color: #5989B9;
}
.accessItem:nth-of-type(3n-1) .flowTxt {
    color: #93B6D8;
}*/
/*.accessItem:nth-of-type(3n)*/
/*.accessItem:nth-of-type(3n) .btnLink04{
    background-image: -webkit-linear-gradient(right,#D8DAF0,#D893B0,#D8DAF0);
	background-size: 200% 200%;
	border-color: #B089BC;
}
.accessItem:nth-of-type(3n) .flowTxt {
    color: #D893B0;
}*/

/*owner*/
.ownerWrap {
	background: url(../img/campaign/bg_campaign.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.ownerWrap .otherTitle {
	padding-bottom: 0px;
	position: relative;
	z-index: 3;
}

.ownerWrap .inner {
	/*max-width: 1480px;*/
	position: relative;
	z-index: 2;
}

.ownerWrap .ownerList {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 60px 40px;
	margin: 0 -80px 80px;
	position: relative;
	z-index: 1;
	padding-bottom: 50px;
}

/*.ownerWrap .ownerList:before{
	content: '';
	position: absolute;
	z-index: -1;
	left: calc(50% - 15px);
	transform: translateX(-50%);
	top: -217px;
	width: 1950px;
	height: calc(100% + 217px);
	background:url(../img/owner/bg_owner.png)no-repeat top  center;
	background-size: 1950px auto;
}*/
@media screen and (max-width: 1440px) {
	.ownerWrap .ownerList {
		margin: 0;
	}
}

.ownerWrap .ownerList {
	/*padding-bottom: 50px;*/
}

.ownerWrap .ownerList a {
	display: block;
	position: relative;
	padding: 50px 80px 0 0;
}

.ownerWrap .ownerList a:nth-of-type(even) {
	position: relative;
	top: 80px;
}

.ownerWrap .ownerList a:before {
	content: '';
	position: absolute;
	z-index: -1;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.ownerWrap .ownerList a:nth-child(1):before {
	left: -96px;
	top: -100px;
	width: 544px;
	height: 632px;
	background-image: url(../img/owner/bg_owner01.png);
}

.ownerWrap .ownerList a:nth-child(2):before {
	left: 272px;
	top: -88px;
	width: 546px;
	height: 613px;
	background-image: url(../img/owner/bg_owner02.png);
}

.ownerWrap .ownerList a:nth-child(3):before {
	left: -183px;
	top: 40px;
	width: 589px;
	height: 582px;
	background-image: url(../img/owner/bg_owner03.png);
}

.ownerWrap .ownerList a:nth-child(4):before {
	left: 200px;
	top: -64px;
	width: 692px;
	height: 593px;
	background-image: url(../img/owner/bg_owner04.png);
}

.ownerWrap .ownerList a:nth-child(5):before {
	left: -130px;
	top: 107px;
	width: 634px;
	height: 553px;
	background-image: url(../img/owner/bg_owner05.png);
}

.ownerWrap .ownerList a:nth-child(6):before {
	left: 320px;
	top: -40px;
	width: 574px;
	height: 596px;
	background-image: url(../img/owner/bg_owner06.png);
	z-index: -2;
}

.ownerWrap .ownerList a:nth-child(7):before {
	left: -142px;
	top: -90px;
	width: 624px;
	height: 554px;
	background-image: url(../img/owner/bg_owner07.png);
	z-index: -2;
}

.ownerWrap .ownerList a:nth-child(8):before {
	left: 95px;
	top: -71px;
	width: 692px;
	height: 593px;
	background-image: url(../img/owner/bg_owner08.png);
}

.ownerWrap .ownerList a:nth-child(9):before {
	left: -100px;
	top: 73px;
	width: 589px;
	height: 588px;
	background-image: url(../img/owner/bg_owner09.png);
}

.ownerWrap .ownerList a:nth-child(10):before {
	left: -100px;
	top: 107px;
	width: 595px;
	height: 576px;
	background-image: url(../img/owner/bg_owner10.png);
}

.ownerWrap .ownerList.interviewSlick .numberP {
	position: absolute;
	right: 0;
	bottom: auto;
	top: 50px;
	z-index: 6;
	padding-right: 0px;
	padding-bottom: 40px;
	background: url(../img/common/arrow_nav.svg)no-repeat bottom center;
	background-size: 32px auto;
	display: flex;
	align-items: center;
	font-size: 32px;
	line-height: 1.33;
	writing-mode: vertical-rl;
}

.ownerWrap .ownerList.interviewSlick .numberP span {
	margin: 5px 0 0;
	font-size: 35px;
	letter-spacing: -0.04em;
	display: flex;
	align-items: center;
}

.ownerWrap .ownerList.interviewSlick .numberP span font {
	letter-spacing: -0.07em;
	font-size: 70px;
	line-height: 1;
	writing-mode: horizontal-tb;
}

.ownerWrap .ownerList .ownerDl02 {
	left: 24px;
	width: calc(100% - 48px - 80px);
}

.ownerDl02 dd {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.ownerWrap .ownerList .thumbnailP {
	pointer-events: none;
	margin-top: -155px;
	margin-top: -25%;
}

.ownerWrap .ownerList .thumbnailP {
	width: 54.83%;
	height: auto;
}

.ownerWrap .ownerList .thumbnailP .img {
	width: 100%;
	position: relative;
	display: block;
	padding-top: 75.05%;
}

.ownerWrap .ownerList .thumbnailP img {
	width: 100%;
}

.ownerSelect {
	display: flex;
	justify-content: flex-end;
	margin: 40px 0 15px;
	position: relative;
	z-index: 10;
}

.ownerSelect select,
.ownerSelect .selectBox {
	margin-left: 10px;
	width: 220px;
	max-width: 50%;
	border-radius: 8px;
	background: #F4F4F4;
	height: 44px;
	padding: 0 50px 0 20px;
	font-size: 16px;
	color: #000000;
	font-weight: bold;
	font-family: inherit;
	border: 1px solid #000000;
	background: url(../img/event_detail/select.svg)no-repeat right 20px center #fff;
	background-size: 20px auto;
	position: relative;
	box-sizing: border-box;
	overflow: hidden;
}

.ownerSelect .selectBox select {
	margin-left: 0;
	width: 100%;
	max-width: 100%;
	height: 100%;
	padding: 0 20px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	opacity: 0;
}

.ownerSelect .selectBox {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}

.ownerSelect .selectBox span {
	height: 42px;
	line-height: 42px;
	align-items: center;
	padding: 0 20px 0 0;
	box-sizing: border-box;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}
.noinfo {
	font-size: 1.1em;
	text-align: center;
	margin: 50px 0;
}
.roll {
	animation: 10s loop linear infinite;
	min-width: auto !important;
}

@keyframes loop {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-100%);
	}
}

.pager_number,
.wp-pagenavi {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	padding: 0 260px;
	margin-top: 40px;
	position: relative;
}

.pager_number span,
.pager_number font,
.pager_number a,
.pager_prev,
.pager_next,
.wp-pagenavi span,
.wp-pagenavi font,
.wp-pagenavi a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 70px;
	height: 70px;
	font-size: 18px;
	margin: 5px;
	text-decoration: none;
	color: #000;
	background: #fff;
	border-radius: 6px;
	position: relative;
	border: 1px solid #000;
}

.pager_number span,
.wp-pagenavi span {
	color: #fff;
	background: #000;
}

.pager_number a:before,
.wp-pagenavi .page:before {
	content: '';
	position: absolute;
	z-index: 1;
	pointer-events: none;
	width: calc(100% - 8px);
	height: calc(100% - 8px);
	border-radius: 4px;
	border: 1px solid #000;
}

.pager_prev,
.pager_next,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	width: 260px;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	margin: 0;
}

.pager_next,
.wp-pagenavi .nextpostslink {
	left: auto;
	right: 0;
}

.pager_prev:before,
.pager_next:after,
.wp-pagenavi .previouspostslink:before,
.wp-pagenavi .nextpostslink:after {
	content: '';
	width: 22px;
	height: 22px;
	margin: 0 10px 0 0;
	display: block;
	background: url(../img/owner/page_prev.svg)no-repeat;
	background-size: 100% auto;
}

.pager_next:after,
.wp-pagenavi .nextpostslink:after {
	margin: 0 0 0 10px;
	background: url(../img/owner/page_next.svg)no-repeat;
	background-size: 100% auto;
}

.wp-pagenavi .pages {
	display: none;
}

/*ownerDt*/
.ownerDtWrap {
	background: url(../img/owner_detail/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.ownerDtSec01 {
	min-height: 930px;
	margin-bottom: 50px;
}

.ownerDtSec01 dl {
	position: relative;
	display: flex;
	justify-content: space-between;
}

.ownerDtSec01 dt {
	margin: -260px -140px 0 -518px;
	position: relative;
	z-index: 1;
	max-height: 1000px;
}

.mvBoxBgPink {
	width: 930px;
	height: 980px;
	background: #DFBEE1;
	position: absolute;
	top: 20%;
	right: 15%;
	z-index: -1;
}

.mvBoxBgGreen {
	width: 870px;
	height: 990px;
	background: #BFE9E2;
	position: absolute;
	top: 20%;
	left: 0;
	z-index: -1;
}

.ownerDtSecImg {
	position: relative;
}

.ownerDtSec01 dd {
	min-width: 324px;
	position: relative;
	z-index: 2;
}

.ownerDtSec01 .thumbnailP {
	position: absolute;
	bottom: 169px;
	right: 205px;
	z-index: 2;
	width: 489px;
}

.ownerDtSec01 .pointP {
	margin: 28px 0 25px -184px;
	display: flex;
	align-items: center;
	font-size: 36px;
	line-height: 1.33;
	min-height: 176px;
}

.ownerDtSec01 .pointP span {
	font-size: 132px;
}

.ownerDtSec01 .bgP {
	padding-bottom: 10px;
	margin-left: -315px;
}

.ownerDtSec01 .bgP p {
	padding-left: 5px;
	text-indent: -5px;
}

.ownerDtSec01 .bgP span {
	background: #fff;
	color: #000;
	font-size: 36px;
	line-height: 1.4;
	margin-bottom: 18px;
	border-radius: 8px 0 0 8px;
	padding: 10px 5px 10px 5px;
	position: relative;
	text-indent: 0;
}

.ownerDtSec01 .bgP span:first-child,
.ownerDtSec01 .bgP br+span {
	padding-left: 5px;
}

.ownerDtSec01 .bgP span:last-child {
	border-radius: 8px;
}

.ownerDtSec01 .bgP span+span {
	margin-left: -5px;
}

.ownerDtSec01 .headBox {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}

.ownerDtSec01 .headImg {
	margin-right: 20px;
}

.ownerDtSec01 .headImg img {
	width: 120px;
	height: 120px;
	object-fit: cover;
	border-radius: 50%;
}

.ownerDtSec01 .headCont {
	width: calc(100% - 120px - 20px);
	font-size: 16px;
}

.ownerDtSec01 .headCont .nameP {
	font-size: 20px;
	line-height: 1.3;
	margin-top: 5px;
}

.ownerDtSec01 .tagP {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 22px;
}

.ownerDtSec01 .tagP li {
	margin: 0 8px 8px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 30px;
	/*min-width: 125px;*/
	padding: 0 15px;
	font-size: 16px;
	border-radius: 6px;
	border: 2px solid;
}

.ownerDtSec01 .txtP {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.75;
}

.ownerDtDl01 {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row-reverse;
	margin-bottom: 70px;
}


.ownerDtDl01 dd {
	min-width: 540px;
	width: 540px;
	padding-top: 30px;
}

.ownerDtDl01:nth-of-type(3) dd {
	padding-top: 0;
}

.ownerDtDl01:nth-of-type(even) {
	flex-direction: row;
}

.ownerDtDl01:nth-of-type(even) dt {
	margin: 0;
	padding-top: 30px;
}

.ownerDtDl01 .titleP {
	font-size: 26px;
	line-height: 36px;
	padding-left: 32px;
	position: relative;
	margin-bottom: 30px;
}

.ownerDtDl01 .titleP:before {
	width: 6px;
	border-radius: 5px;
	content: '';
	position: absolute;
	left: 0;
	top: 6px;
	bottom: 6px;
	z-index: 2;
	background: linear-gradient(#E299DE, #A581DD, #4D9AD6, #3CBBD6);
}

.ownerDtDl01 .txtP {
	font-size: 16px;
	font-weight: 400;
	line-height: 28px;
}

.ownerDtDl01 .txtP p+p {
	margin-top: 28px;
}
.ownerDtDl01 .txtP p .stline {
	background: linear-gradient(to right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #fff;
}
.ownerDtDl01 .imgP {
	width: 700px;
}
@media screen and (max-width: 1270px) {
	.ownerDtDl01 .imgP {
		width: 86%;
		left: 0;
		right: 0;
		margin: auto;
	}
	.ownerDtDl01:nth-child(2) .imgP {

		margin: 0;
	}
}
@media screen and (max-width: 1100px) {

}
.ownerDtDl01 .imgP img {
	border-radius: 20px;
}
.ownerDtSec03 {
	padding: 235px 0 0;
	position: relative;
}

.navRotated03 {
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	left: 50%;
	top: 0%;
	transform: translateX(-50%);
	z-index: -1;
	height: 1100px;
}

.navRotated03 img {
	width: 2200px;
	max-width: none;
	animation: circle 35s linear infinite;
}

.ownerDtSec03 .hdP {
	font-size: 26px;
	line-height: 36px;
	margin-bottom: 36px;
	text-align: center;
	background: url(../img/owner_detail/hd_sec03.svg)no-repeat left calc(50% - 230px) center,
		url(../img/owner_detail/hd_sec03.svg)no-repeat right calc(50% - 230px) center;
	background-size: auto;
}

.galleryUl {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 30px 40px;
}

.galleryUl a {
	display: block;
}

.galleryUl .imgP {
	border-radius: 50%;
	border: 20px solid #F0F3F8;
	position: relative;
	margin-bottom: 20px;
}

.galleryUl .imgP:before {
	content: '';
	position: absolute;
	right: -10px;
	bottom: -10px;
	z-index: 2;
	width: 40px;
	height: 40px;
	background: url(../img/owner_detail/icon_gallery.svg)no-repeat center center;
	background-size: 100% auto;
}

.galleryUl .imgP img {
	border-radius: 50%;
}

.galleryUl .txtP {
	font-size: 16px;
	line-height: 22px;
}

.fancybox-bg {
	opacity: 1;
	-webkit-backdrop-filter: saturate(180%) blur(20px);
	backdrop-filter: saturate(180%) blur(20px);
	background-color: hsla(0, 0%, 100%, .8);
}

.fancybox-navigation .fancybox-button {
	width: 100px;
	height: 100px;
	position: fixed;
}

.fancybox-navigation .fancybox-button.disabled {
	opacity: .2;
}

.fancybox-navigation .fancybox-button svg {
	display: none;
}

.fancybox-navigation .fancybox-button--arrow_left {
	left: 50px;
	background: url(../img/owner_detail/icon_prev01.svg)no-repeat center center;
	background-size: 100% auto;
}

.fancybox-navigation .fancybox-button--arrow_right {
	right: 50px;
	background: url(../img/owner_detail/icon_next01.svg)no-repeat center center;
	background-size: 100% auto;
}

.fancybox-wrap {
	width: auto !important;
}

.fancybox-skin {
	background: none;
	box-shadow: none !important;
	color: #001135;
}

.fancybox-inner {
	overflow: visible !important;
}

.fancybox_wrap {
	padding: 0;
}

.fancybox-infobar {
	display: none;
}

.fancybox-close,
.fancybox-close-small {
	position: fixed;
	top: 45px;
	right: 50px;
	transform: translateY(0%);
	width: 100px;
	height: 20px;
	cursor: pointer;
	z-index: 8040;
	background: url(../img/owner_detail/fancy_close.svg)no-repeat center center;
	background-size: 40px auto;
	overflow: hidden;
}

.fancybox_img {
	text-align: center;
}

.fancybox_img img {
	border-radius: 30px;
	max-height: calc(100vh - 100px);
	max-width: calc(100vw - 100px);
}


.ownerDtSec04 {
	padding: 110px 0 80px;
	background: url(../img/owner_detail/bg_sec04.png)no-repeat top 220px center;
	background-size: 1920px auto;
}

.ownerDtSec04 .boxBorer {
	position: relative;
	background-image: linear-gradient(to left, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	border-radius: 20px;
	padding: 8px;
}

.ownerDtSec04 .boxP {
	background: #fff;
	border-radius: 14px;
	padding: 60px 0 20px;
	position: relative;
	display: flex;
}

.ownerDtSec04 .ownerDl02 {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 700px;
	max-width: 100%;
	z-index: 2;
	background: #fff;
	box-shadow: 0 10px 20px rgba(0, 0, 0, .16);
	padding: 17px 0;
	padding-left: 140px;
	border-radius: 80px;
	display: flex;
	align-items: center;
}

.ownerDtSec04 .ownerDl02:after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -10px;
	transform: translateX(-50%);
	z-index: 2;
	width: 19px;
	height: 19px;
	background: url(../img/top/bg_popup.png)no-repeat;
	background-size: 100% 100%;
}

.ownerDtSec04 .ownerDl02 dt {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 84px;
	height: 84px;
	border-radius: 100%;
	margin-right: 0px;
}

.ownerDtSec04 .ownerDl02 dt:before {
	content: '';
	position: absolute;
	left: -9px;
	top: -30px;
	z-index: 2;
	width: 80px;
	height: 42px;
	background: url(../img/owner_detail/play_life.svg)no-repeat;
	background-size: 100% auto;
}

.ownerDtSec04 .ownerDl02 dt img {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.ownerDtSec04 .ownerDl02 dd {
	width: auto;
	padding-right: 40px;
	font-size: 24px;
	line-height: 1.5;
}

.ownerDtSec04 .boxP .imgP,
.ownerDtSec04 .boxP .contP {
	width: 50%;
}

.ownerDtSec04 .boxP .imgP {
	padding: 30px 40px;
	border-right: 1px solid #D6D5D5;
	text-align: center;
	position: relative;
}

.ownerDtSec04 .boxP .imgP img {
	position: absolute;
	left: 50%;
	top: 45%;
	transform: translate(-50%, -50%);
	max-width: calc(100% - 80px);
	max-height: calc(110% - 60px);
}

.ownerDtSec04 .boxP .contP {
	text-align: center;
}

.ownerDtSec04 .boxP .logoP {
	margin: 0 auto 10px;
	display: flex;
	height: 125px;
	align-items: center;
	justify-content: center;
	max-width: 416px;
	position: relative;
}

.ownerDtSec04 .boxP .logoP img {
	position: absolute;
	max-width: 100%;
	max-height: 100%;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
}

.ownerDtSec04 .boxP .txtP {
	font-size: 22px;
	line-height: 32px;
	margin-bottom: 12px;
}

.ownerDtSec04 .btnP01 {
	margin-bottom: 20px;
}

.btnLink05 {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 60px;
	width: 260px;
	max-width: 100%;
	border-radius: 12px;
	background-image: linear-gradient(to right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #000;
	font-size: 18px;
	padding: 3px;
}

.btnLink05 span {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	width: 100%;
	background: url(../img/owner_detail/arrow_sec04.svg)no-repeat right 20px center #fff;
	background-size: auto;
	border-radius: 9px;
}

.btnLink06 {
	display: inline-block;
	text-align: left;
	padding: 20px;
	width: 460px;
	max-width: 100%;
	border-radius: 12px;
	color: #fff;
	font-size: 20px;
	opacity: 1 !important;
	background-image: linear-gradient(to left, #E299DE, #A581DD, #4D9AD6, #3CBBD6, #4D9AD6, #A581DD, #E299DE);
	background-size: 200% 200%;
	animation: btnlink02 .5s ease forwards;
	position: relative;
}

.btnLink06 font {
	font-size: 22px;
}

.btnLink06:hover {
	animation: btnlink .5s ease forwards;
}

.btnLink06:before {
	content: '';
	position: absolute;
	right: 20px;
	top: 50%;
	z-index: 2;
	transform: translateY(-50%);
	width: 32px;
	height: 32px;
	background: url(../img/owner_detail/arrow_btn06.svg)no-repeat;
	background-size: auto;
}

.otherInterview {
	margin-top: 40px;
	height: 120px;
	position: relative;
}

.otherInterview a {
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
	height: 100%;
	width: calc(50% - 10px);
	border-radius: 6px;
	background: url(../img/owner_detail/arrow_other_reverse.svg)no-repeat 30px center #fff;
	background-size: auto;
	padding: 30px;
	font-size: 16px;
	line-height: 22px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	border: 1px solid;
}

.otherInterview a.nextInterview {
	left: auto;
	right: 0;
	background: url(../img/owner_detail/arrow_other.svg)no-repeat right 30px center #fff;
	background-size: auto;
	flex-direction: row;
}

.otherInterview .numberP {
	font-size: 18px;
	margin: 0 20px 0 10px;
}

.otherInterview .txtP {
	width: calc(100% - 100px - 80px);
}

.otherInterview .headP img {
	border-radius: 50px;
	width: 60px;
	height: 60px;
	object-fit: cover;
}

.ownerDtSec05 {
	padding: 0 0 120px;
}

.ownerDtSec05 .hdP {
	text-align: center;
	font-size: 26px;
	line-height: 36px;
	letter-spacing: 0.06em;
	margin-bottom: 30px;
}

.ownerDtSec05 .hdP span {
	display: inline-block;
	width: 460px;
	max-width: 100%;
	padding: 3px 0;
	border-top: 1px solid;
	border-bottom: 1px solid;
}

.ownerDtSec05 .hdP font {
	display: block;
	border-top: 1px solid;
	border-bottom: 1px solid;
	padding: 10px 0;
}

.ownerDtSec05 .interviewSlick .accessSwiper,
.ownerDtSec05 .interviewSlick .relatedSwiper {
	margin: 0;
	overflow: visible;
}

.ownerDtSec05 .interviewSlick .visual-list .item {
	margin: 0 25px;
	margin-top: 120px;
}

.ownerDtSec05 .interviewSlick .visual-list .swiper-slide-active {
	margin-top: 0px;
}

.ownerDtSec05 .interviewSlick .visual-list .swiper-slide-prev,
.ownerDtSec05 .interviewSlick .visual-list .swiper-slide-next {
	margin-top: 60px;
}

.ownerDtSec05 .swiper_bottom {
	width: 100%;
}

.ownerDtSec05 .interviewBtn {
	margin-top: -110px;
}

.ownerDtSec05.only_one .interviewBtn {
	margin-top: 0;
}

.ownerDtSec05 .btnP {
	text-align: center;
	margin-top: 77px;
}

.ownerDtSec05 .btnP a {
	display: inline-block;
	font-size: 18px;
}


/*teams*/
.teamsWrap {
	background: url(../img/teams/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px auto;
	padding-bottom: 100px;
}

.teamsWrap .otherTitle {
	padding-bottom: 0px;
	position: relative;
	z-index: 3;
}

.teamsWrap .accessTop {
	padding-bottom: 0;
}

/*.accessItemCont .teamsHd*/
.teamsItem {
	padding: 40px 0 0;
	position: relative;
	z-index: 2;
}

.teamsHd {
	font-size: 50px;
	line-height: 1.33;
	padding-bottom: 30px;
	background: url(../img/access/bg_title.svg)no-repeat center bottom;
	background-size: auto 6px;
	margin-bottom: 50px;
	text-align: center;
}

.teamsMain .inner {
	max-width: 1800px;
	/*padding: 0 20px;*/
}

.teamsList {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -40px;
}

.teamsList li {
	width: calc(25% - 80px);
	margin: 0 40px 60px;
}

.teamsList a {
	color: #fff;
	display: block;
	position: relative;
}

.teamsList a:before {
	content: '';
	position: absolute;
	width: calc(100% + 54px);
	height: calc(100% + 43px);
	z-index: -1;
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
	background: url(../img/teams/bg_li01.png)no-repeat center center;
	background-size: 100% 100%;
}

.teamsList li:nth-of-type(8n-6) a:before {
	background: url(../img/teams/bg_li02.png)no-repeat center center;
	background-size: 100% 100%;
}

.teamsList li:nth-of-type(8n-5) a:before {
	background: url(../img/teams/bg_li03.png)no-repeat center center;
	background-size: 100% 100%;
}

.teamsList li:nth-of-type(8n-4) a:before {
	background: url(../img/teams/bg_li04.png)no-repeat center center;
	background-size: 100% 100%;
}

.teamsList li:nth-of-type(8n-3) a:before {
	background: url(../img/teams/bg_li05.png)no-repeat center center;
	background-size: 100% 100%;
}

.teamsList li:nth-of-type(8n-2) a:before {
	background: url(../img/teams/bg_li06.png)no-repeat center center;
	background-size: 100% 100%;
}

.teamsList li:nth-of-type(8n-1) a:before {
	background: url(../img/teams/bg_li07.png)no-repeat center center;
	background-size: 100% 100%;
}

.teamsList li:nth-of-type(8n) a:before {
	background: url(../img/teams/bg_li08.png)no-repeat center center;
	background-size: 100% 100%;
}

.teamsList .boxP {
	position: relative;
	cursor: pointer;
	transition-duration: 0.6s;
	transition-timing-function: ease-in-out;
	transform-style: preserve-3d;
}

.teamsList a:hover .boxP {
	transform: rotateY(180deg);
}

.teamsList .frontP,
.teamsList .backP {
	position: relative;
	z-index: 1;
	backface-visibility: hidden;
	transform: rotateX(0deg);
}

.teamsList .frontP {
	z-index: 2;
}

.teamsList .backP {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: rotateY(180deg);
}

.teamsList .bgBack {
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	width: 100%;
}

.teamsList .bgBack:before {
	content: '';
	position: absolute;
	top: 8px;
	left: 8px;
	width: calc(100% - 16px);
	height: calc(100% - 16px);
	z-index: 1;
	pointer-events: none;
	border-radius: 12px;
	border: 1px solid #fff;
}

.teamsList .txtP {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: calc(100% - 80px);
	display: flex;
	align-items: center;
	font-size: 22px;
	text-decoration: underline;
	padding: 15px 30px;
}

.teamsList .contP {
	position: absolute;
	z-index: 3;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 0 30px 18px;
}

.teamsList .postP span {
	display: inline-block;
	font-size: 14px;
	padding: 0 10px;
	border: 1px solid;
	border-radius: 20px;
}

.teamsList .nameP {
	margin-top: 3px;
	font-size: 36px;
	line-height: 1.33;
	letter-spacing: 0.06em;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.teamsList .frontP,
.teamsList .imgP {
	position: relative;
	width: 100%;
	padding-top: 123.68%;
}

.teamsList .frontP img,
.teamsList .imgP img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.teamsList img {
	border-radius: 20px;
}

@media screen and (max-width: 1600px) {

	.teamsMain .inner {
		max-width: 1800px;
		/*padding: 0 20px;*/
	}

	.teamsList {
		display: flex;
		flex-wrap: wrap;
		margin: 0 -20px;
	}

	.teamsList li {
		width: calc(25% - 40px);
		margin: 0 20px 40px;
	}

	.teamsList a:before {
		content: '';
		position: absolute;
		width: calc(100% + 40px);
		height: calc(100% + 30px);
	}

	.teamsList .txtP {
		font-size: 18px;
		padding: 15px 20px;
	}

	.teamsList .contP {
		padding: 0 20px 18px;
	}

	.teamsList .nameP {
		font-size: 18px;
	}
}

@media screen and (max-width: 1200px) {
	.teamsList li {
		width: calc(33.33% - 40px);
		margin: 0 20px 40px;
	}
}

@media screen and (max-width: 959px) {
	.teamsList .txtP {
		font-size: 14px;
	}

	.teamsList .postP span {
		font-size: 12px;
	}

	.teamsList .nameP {
		font-size: 14px;
	}
}

/*teams_detail*/
#teams_detail #wrapper,
.single-teams #wrapper {
	overflow: visible;
	max-width: 100%;
}

.flowBox {
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	position: absolute;
	left: 0;
	top: 10vw;
	z-index: 1;
	transform: translate(0);
	pointer-events: none;
}

.teamsDtWrap {
	background: url(../img/teams/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px 960px;
	padding: 120px 0 85px;
	position: relative;
}

.teamsDtWrap .flowTxt {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	transform: translate(0);
	color: #DFBEE1;
	line-height: 1.33;
	font-size: 16.35vw;
	white-space: nowrap;
	color: #fff;
}

.teamsDtWrap .flowTxt p {
	animation: fadenum 10s linear infinite;
}

.teamsDtWrap .inner {
	z-index: 2;
	display: flex;
	justify-content: space-between;
	/*align-items: flex-start;*/
}

.teamsDtSide {
	width: 560px;

	position: -webkit-sticky;
	position: sticky;
	top: 0px;
	z-index: 9;
	max-height: calc(100vh - 0px);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	/*overflow-y: auto;*/
}

.teamsDtSideBox {}

.teamsDtMain {
	width: 620px;
	max-width: calc(100% - 560px - 20px);
}

.teamsDtSide .imgP {
	position: relative;
	text-align: center;
}

.teamsDtSide .imgP:before {
	content: '';
	position: absolute;
	width: calc(100% + 80px);
	height: calc(100% + 60px);
	z-index: -1;
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
	background: url(../img/teams/bg_li01.png)no-repeat center center;
	background-size: 100% 100%;
}

.teamsDtSide .imgP img {
	object-fit: cover;
	border-radius: 20px;
	width: 560px;
	height: 690px;
	max-height: calc(100vh - 100px - 40px);
}

.otherDtBox {
	width: 100%;
	margin-top: 40px;
	position: relative;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.otherDtBox a {
	font-size: 18px;
	text-decoration: underline;
	display: inline-flex;
}

.otherDtBox a.prevBtn,
.otherDtBox a.nextBtn {
	text-decoration: none;
	align-items: center;
	height: 100%;
	width: 170px;
	border-radius: 6px;
	padding: 0 20px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	border-width: 1px;
}

.otherDtBox a.prevBtn {
	justify-content: flex-end;
	background: url(../img/teams_detail/arrow_other_reverse.svg)no-repeat 20px center #fff;
	background-size: auto;
}

.otherDtBox a.nextBtn {
	justify-content: flex-start;
	background: url(../img/teams_detail/arrow_other.svg)no-repeat right 20px center #fff;
	background-size: auto;
}

.otherDtBox a.prevBtn:hover {
	background: url(../img/teams_detail/arrow_other_reverse_on.svg)no-repeat 20px center #000;
	background-size: auto;
}

.otherDtBox a.nextBtn:hover {
	background: url(../img/teams_detail/arrow_other_on.svg)no-repeat right 20px center #000;
	background-size: auto;
}

.otherDtBox a.nextBtn {
	left: auto;
	right: 0;
}

.otherDtBox a span {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
}

.otherDtBox a.prevBtn span {
	padding-left: 25px;
}

.otherDtBox a.nextBtn span {
	padding-right: 25px;
}

.teamsDtMainTop {
	padding-top: 8.85vw;
	padding-bottom: 80px;
}

.teamsDtMainTop .postP span {
	display: inline-block;
	font-size: 18px;
	padding: 0 20px;
	border: 2px solid;
	border-radius: 20px;
	background: #fff;
}

.teamsDtMainTop .nameP {
	margin-top: 8px;
	font-size: 36px;
	line-height: 1.33;
	margin-bottom: 35px;
}

.teamsDtDl01 {
	display: flex;
	align-items: center;
	font-size: 18px;
	margin-bottom: 7px;
}

.teamsDtDl01 dt {
	width: 92px;
	color: #184E7A;
}

.teamsDtDl01 dd {
	width: calc(100% - 92px);
}

.teamsDtItem+.teamsDtItem {
	padding-top: 60px;
	margin-top: 60px;
	border-top: 1px solid #E6E6E6;
}

.teamsDtItem .hdP {
	font-size: 26px;
	line-height: 32px;
	padding-left: 20px;
	position: relative;
	background: url(../img/teams_detail/bg_title.png)no-repeat left center;
	background-size: 6px auto;
	margin-bottom: 15px;
}

.teamsDtItemTxt {
	font-weight: 400;
	font-size: 16px;
	line-height: 28px;
}

.teamsDtItemTxt p+p {
	margin-top: 28px;
}

.teamsDtItemTxt li {
	padding-left: 1em;
	text-indent: -1em;
}

.teamsDtItem .imgUl {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 20px;
	margin-top: 10px;
}

.teamsDtItem .imgUl img {
	border-radius: 10px;
}

.teamsDtItem .otherMedia {
	width: auto;
	border-left: 0;
	padding-bottom: 0px;
}

.teamsDtItem .otherMedia li {
	padding-left: 0;
}

.otherMedia .titleP {
	font-size: 18px;
}

.teamsDtItem .topMediaDl .txtP {
	font-weight: 400;
}

.teamsDtBg {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 740px;
	pointer-events: none;
	overflow: hidden;
}

.teamsDtBg img {
	width: 100%;
	height: 740px;
	object-fit: cover;
}

.teamsDtBg:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: url(../img/teams_detail/bg_wrap.png) top center repeat-x;
}

.teamsDtBg:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: url(../img/teams_detail/bg_before.png) bottom center repeat-x;
}

.hide {
	display: none;
}

.mb60 {
	margin-bottom: 60px;
}


.productDtTop {
	position: relative;
	margin: 125px 0 70px;
	min-height: 860px;
}

.productDtTop .mainImage {
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	max-width: calc(50vw + 400px);
	height: 100%;
	border-radius: 20px 0 0 20px;
	overflow: hidden;
}

.productDtTop .mainImage img {
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	height: calc(100% - 70px);
	object-fit: cover;
}

.productDtTop .mainTitle {
	padding: 140px 20px 80px;
}

.productDtTop .mainTitle .logo {
	display: inline-flex;
	width: 600px;
	height: 161px;
	align-items: center;
	margin-bottom: 10px;
	position: relative;
}

.productDtTop .mainTitle .logo img {
	max-width: 100%;
	max-height: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translate(0, -50%);
	z-index: 2;
}

.productDtTop .mainTitle .titleP p {
	padding-left: 5px;
	text-indent: -5px;
}

.productDtTop .mainTitle .titleP span {
	background: #fff;
	color: #000;
	font-size: 40px;
	line-height: 1;
	margin-bottom: 19px;
	border-radius: 5px 0 0 5px;
	padding: 8px 5px 8px 5px;
	position: relative;
	text-indent: 0;
	display: inline-block;
}

.productDtTop .mainTitle .titleP span:first-child,
.productDtTop .mainTitle .titleP br+span {
	padding-left: 5px;
}

.productDtTop .mainTitle .titleP span:last-child {
	border-radius: 5px;
}

.productDtTop .mainTitle .titleP span+span {
	margin-left: -5px;
}

.productDtTop .house {
	margin-top: 0px;
}

.productDtTop .house img {
	height: 390px;
}

.anchorNav {
	margin-bottom: 60px;
}

.anchorNav ul {
	display: flex;
	background: #F0F3F8;
	border-radius: 8px;
	border: 1px solid #000;
}

.anchorNav li {
	width: 100%;
}

.anchorNav li+li {
	border-left: 1px solid #000;
}

.anchorNav li a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 50px;
	background: url(../img/product/ico_down.png)no-repeat 95% center;
	font-size: 20px;
}


.productSec01 .display {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	margin-bottom: 80px;
}

.productSec01 .display .img {
	overflow: hidden;
	width: 55%;
}

.productSec01 .display .img img {
	width: 100%;
	border-radius: 15px;
}

.productSec01 .display .info {
	width: 100%;
	line-height: 1.778;
	font-size: 18px;
	font-weight: normal;
}

.productSec01 .display .img+.info {
	width: 42%;
}

.productSec01 .display h3 {
	margin: 0 0 30px -18px;
	padding-left: 18px;
	background: url(../img/product/bg_title.png)no-repeat bottom left;
	background-size: auto;
	min-height: 46px;
	line-height: 1.277;
	font-size: 36px;
}
.productSec01 .display p {
	margin-bottom: 1em;
}
.productSec01 .display p:last-child {
	margin-bottom: 0;
}

.productSec01 .movie {
	position: relative;
	padding: 80px 0;
	background: linear-gradient(120deg, #FAECFA, #E7F8FC);
}

.productSec01 .movieP {
	position: relative;
}

.productSec01 .movie .moviePlay {
	position: absolute;
	z-index: 2;
	/*pointer-events: none;*/
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);

	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

.productSec01 .movie .moviePlayMaru {
	width: 100px;
	height: 100px;
	background: #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 21px;
	color: #184E7A;
	transform: rotate(12deg);
}

.productSec01 .movie .moviePlay:before {
	margin: -74px 0 0 -74px;
	position: absolute;
	z-index: 2;
	pointer-events: none;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 148px;
	height: 148px;
	background: url(../img/product/icon_pickup02.png)no-repeat;
	background-size: 100% auto;
	animation: circle 35s linear infinite;
	content: '';
}

.productSec01 .movie iframe {
	width: 100%;
	height: 560px;
	border: 0;
	border-radius: 20px;
}

.productSec02 {
	padding: 70px 0 0;
}

.productSec02 h3 {
	margin-bottom: 60px;
	text-align: center;
	font-size: 36px;
	line-height: 1;
	background: url(../img/product/bg_title02.png)no-repeat top center;
	background-size: auto;
	min-height: 38px;
}

.productSec02 .pointList {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 15px;
	padding-bottom: 50px;
}

.productSec02 .pointList li {
	position: relative;
	margin-bottom: 90px;
	width: 46.4%;
	font-weight: normal;
}

.productSec02 .pointList .point {
	display: flex;
	align-items: center;
	position: absolute;
	left: 30px;
	top: 0;
	z-index: 2;
	transform: translateY(-50%);
	line-height: 1;
}

.productSec02 .pointList .sign {
	background-image: -webkit-linear-gradient(-15deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	padding: 7px 20px;
	min-width: 120px;
	display: inline-flex;
	justify-content: center;
	border-radius: 25px;
	letter-spacing: -0.1em;
	color: #fff;
	font-size: 22px;
	position: relative;
	z-index: 2;
}

.productSec02 .pointList .step {
	color: #3CBBD6;
	font-size: 106px;
	margin-left: 10px;
	position: relative;
	z-index: 1;
	font-weight: bold;
}

.productSec02 .pointList li .img {
	position: relative;
	z-index: 1;
	margin-bottom: 36px;
	width: 100%;
	padding-top: 64%;
}

.productSec02 .pointList li .img:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	transform: rotate(6deg);
	width: 100%;
	height: 100%;
	background: url(../img/product/bg_grad.png)no-repeat center;
	background-size: cover;
	border-radius: 20px;
}

.productSec02 .pointList li:nth-of-type(2) .img:before,
.productSec02 .pointList li:nth-of-type(3) .img:before {
	transform: rotate(-6deg);
	background-image: url(../img/product/bg_grad02.png);
}

.productSec02 .pointList li .img img {
	border-radius: 20px;
	object-fit: cover;
	position: absolute;
	z-index: 2;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
}

.productSec02 .pointList li .tit {
	margin-bottom: 12px;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
}

.productSec02 .pointList li .txt {
	margin: auto;
	/*max-width: 480px;*/
}

.productSec01+.productSec03 {
	margin-top: 70px;
}

.productSec03 h3 {
	margin-bottom: 26px;
	text-align: center;
	font-size: 26px;
}

.productSec03 h3 span {
	display: inline-block;
	padding: 0 150px;
	background: url(../img/product/bg_title03.png)no-repeat left center,
		url(../img/product/bg_title03.png)no-repeat right center;
}

.productSec03 .inner {
	max-width: 940px;
}

.galleryDtSwiper {
	overflow: visible;
}

.galleryDtSwiper .swiper-wrapper {
	padding-bottom: 80px;
}

.swiper-button-next:after,
.swiper-button-prev:after {
	content: none;
}

.galleryDtSwiper .swiper-button-prev,
.galleryDtSwiper .swiper-button-next {
	width: 40px;
	height: 40px;
	left: auto;
	top: auto;
	right: 50px;
	bottom: 40px;
	transform: translateY(50%);
	background: url(../img/campaign_detail/prev.svg)no-repeat;
	background-size: 100% auto;
}

.galleryDtSwiper .swiper-button-next {
	right: 0;
	background-image: url(../img/campaign_detail/next.svg);
}

.swiper-scrollbar.swiper-scrollbar-horizontal {
	left: 0;
	width: calc(100% - 120px);
}

.galleryList {
	max-width: 900px;
	width: 900px;
	margin: 0 20px;
}

.galleryList .img {
	overflow: hidden;
	border-radius: 20px;
	position: relative;
	width: 100%;
	padding-top: 66.66%;
}

.galleryList .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}

.productSec01+.productSec04 {
	margin-top: 70px;
}

.productSec04 h3 {
	margin-bottom: 40px;
	text-align: center;
	font-size: 36px;
	line-height: 1;
	background: url(../img/product/bg_title04.png)no-repeat top center;
	background-size: auto;
	min-height: 64px;
}

.productPlan .tabCtrl ul {
	display: flex;
	justify-content: center;
	border-bottom: 1px solid #000000;
}

.productPlan .tabCtrl li {
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin: 0 5px -1px;
	height: 60px;
	width: 50%;
	max-width: 260px;
	background: #000;
	border-radius: 16px 16px 0 0;
	border: 1px solid #000;
	border-bottom: 0;
	text-align: center;
	color: #fff;
	font-size: 18px;
}

.productPlan .tabCtrl li.onActive {
	background: #fff;
	color: #000;
}

.productPlan .tabCtrl li.onActive:after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 10px;
	transform: translateX(-50%);
	width: 32px;
	height: 2px;
	background: linear-gradient(to right, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	border-radius: 10px;
}

.productPlan .tabCtrl+.tabBox {
	padding-top: 50px;
}

.productPlan .tabBox {
	padding: 0 0 50px;
}

.productPlan .floors {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.productPlan .floors .floor {
	padding: 32px 0;
	width: 48.9%;
	border: 1px solid #CBCBCB;
	border-radius: 10px;
	text-align: center;
	margin-bottom: 40px;
}

.productPlan .title {
	margin-bottom: 30px;
}

.productPlan .title h4 {
	letter-spacing: 0.06em;
	font-size: 36px;
	margin-bottom: 1em;
}

.productPlan .title .price {
	display: flex;
	align-items: center;
}

.productPlan .title .price .th {
	display: inline-block;
	margin-right: 10px;
	padding: 3px 18px;
	background: #184E7A;
	border-radius: 50px;
	color: #fff;
}

.productPlan .title .price .tax {
	color: #184E7A;
	font-size: 34px;
}

.productPlan .title .price .tax:after {
	content: "(税込)";
	margin-left: 14px;
	font-size: 14px;
}

.productPlan .title .price .tax.no-tax {
	font-size: 28px;
}

.productPlan .title .price .tax.no-tax:after {
	display: none;
}

.productPlan .data {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.productPlan .data dl {
	display: flex;
	align-items: center;
	margin-top: -1px;
	width: 48.9%;
	height: 60px;
	border-top: 1px solid #E6E6E6;
	border-bottom: 1px solid #E6E6E6;
}

.productPlan .data dt {
	width: 190px;
}

.productPlan .data dd {
	width: calc(100% - 190px);
}

.productPlan .note {
	margin-top: 30px;
	font-weight: normal;
}

.productFan {
	position: relative;
	padding: 150px 0 70px;
	background: url(../img/product/bg_plan01.png)no-repeat center -350px;
	text-align: center;
}

.productFan .title {
	margin-bottom: 30px;
}

.productFan .title span {
	display: inline-flex;
	justify-content: center;
	padding: 0 20px;
	min-width: 120px;
	height: 50px;
	background: -webkit-linear-gradient(-15deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	border-radius: 10px;
	color: #fff;
	font-size: 31px;
}

.productFan .sub {
	line-height: 1.6;
	font-size: 30px;
}

.productFan .banner img {
	border-radius: 20px;
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	left: 0;
	top: 0;
	z-index: 2;
}

.productFan .banner .left,
.productFan .banner .right {
	position: absolute;
	top: 60px;
	width: 540px;
	height: 740px;
}

.productFan .banner .left {
	left: 50%;
	transform: rotate(8deg);
	margin-left: -960px;
}

.productFan .banner .right {
	right: 50%;
	transform: rotate(-8deg);
	margin-right: -960px;
}

.productFan .banner .left:after,
.productFan .banner .right:after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	transform: rotate(7deg);
	width: 100%;
	height: 100%;
	background: url(../img/product/bg_grad03.png)no-repeat center;
	background-size: 100% 100%;
	border-radius: 20px;
}

.productFan .banner .right:after {
	background-image: url(../img/product/bg_grad04.png);
}

.productFan .img {
	padding: 78px 0 125px;
	margin: 44px 0 30px;
	background: url(../img/product/bg_plan02.png)no-repeat 53% top;
	background-size: auto 100%;
}
.productFan .img img {
	height: 205px;
}
.productFan .img.reset {
	margin: 0;
}
.productFan .img.reset img {
	height: inherit;
}
.productFan .txt {
	line-height: 1.889;
	font-size: 18px;
	font-weight: normal;
}

.productFan .example {
	position: relative;
	margin: 60px auto 0;
	max-width: 670px;
	border: 2px solid #184E7A;
	border-radius: 10px;
}

.productFan .example h4 {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%, -50%);
	padding: 7px 20px 8px;
	background: #184E7A;
	border-radius: 30px;
	line-height: 1;
	color: #fff;
	font-size: 19px;
}

.productFan .example ul {
	display: flex;
	justify-content: center;
	padding: 45px 0 35px;
}

.productFan .example li {
	position: relative;
	padding: 32px 14px 0;
	width: 25%;
}

.productFan .example li.equate {
	width: 30%;
}

.productFan .example li .tit {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}

.productFan .example figure {
	padding: 0;
	margin: 0;
	max-width: none !important;
}

.productFan .example figure img {
	height: auto;
	max-height: none !important;
}

.productFan .example .plus:before,
.productFan .example .equate:before {
	content: "";
	position: absolute;
	left: -14px;
	top: 45%;
	width: 20px;
	height: 20px;
	background: url(../img/product/icon_plus.png)no-repeat center;
}

.productFan .example .equate:before {
	content: "";
	background-image: url(../img/product/icon_equal.png);
}

.productFan .example li .ico {
	margin-bottom: 8px;
	position: relative;
}

.productFan .example li:not(.plus) .ico img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	max-width: fit-content;
	max-height: 100% !important;
}

.productSec05 {
	min-height: 70px;
}

.productSec05 .title {
	padding: 22px 0;
	background: url(../img/product/line_bor.png)no-repeat center top,
		url(../img/product/line_bor.png)no-repeat center bottom;
	background-size: 100%;
	text-align: center;
}

.productSec05 .title .eng {
	display: block;
	font-size: 32px;
}

.productSec05 .bgBox {
	padding: 60px 0;
	border-top: 1px solid #E6E6E6;
}
.productSec05 .bgBox.reset {
	border-top: 0;
}

.productSec05 .bgGradient {
	background: linear-gradient(to right, #FFF3EF, #FDF7FF);
	border-top: 0;
}

.productSec05 .bgGradient02 {
	background: linear-gradient(to right, #EFF3FF, #F7FDFF);
	border-top: 0;
}

.productSec05 .display {
	display: flex;
	justify-content: space-between;
}

.productSec05 .display .img {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding: 0 5px;
	width: 46.875%;
	/*height: 390px;*/
	background: #fff;
	border-radius: 10px;
	text-align: center;
}

.productSec05 .display .img img {
	width: 100%;
	border-radius: 20px;
}

.productSec05 .display .plus {
	position: absolute;
	bottom: 45px;
	left: 66px;
	text-align: center;
	font-size: 26px;
}

.productSec05 .display .plus:after {
	content: "";
	display: block;
	margin-top: 18px;
	width: 179px;
	height: 179px;
	border: 2px dashed #000;
	border-radius: 100%;
	animation: circle 35s linear infinite;
}

.productSec05 .display .plus2 {
	bottom: auto;
	top: 10px;
}

.productSec05 .display .plus3 {
	bottom: auto;
	top: 20px;
	left: 25%;
}

.productSec05 .display .plus3:after,
.productSec05 .display .plus7:after {
	position: absolute;
	left: 100%;
	top: 20px;
	margin-top: 0;
}

.productSec05 .display .plus4,
.productSec05 .display .plus5 {
	left: auto;
	right: 50px;
	bottom: 90px;
}

.productSec05 .display .plus4:after,
.productSec05 .display .plus5:after,
.productSec05 .display .plus6:after {
	position: absolute;
	right: calc(100% + 25px);
	top: 50%;
	margin-top: -90px;
}

.productSec05 .display .plus5 {
	bottom: auto;
	top: 25%;
}

.productSec05 .display .plus5:after {
	right: calc(100% + 60px);
}

.productSec05 .display .plus6 {
	bottom: 50%;
	left: 70%;
}

.productSec05 .display .plus7 {
	left: 20%;
	bottom: 60%;
}

.productSec05 .display .plus7:after {
	left: calc(100% + 25px);
	margin-top: -90px;
}

.productSec05 .display .info {
	width: 48.4375%;
}
.productSec05 .display .info.tacL {
	text-align: left;
}
.productSec05 .display .sign {
	margin-bottom: 20px;
}

.productSec05 .display .sign span {
	display: inline-flex;
	justify-content: center;
	text-align: left;
	padding: 0 20px;
	min-width: 120px;
	min-height: 50px;
	background: -webkit-linear-gradient(-15deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	border-radius: 10px;
	color: #fff;
	font-size: 30px;
}

.productSec05 .display .tit {
	margin-bottom: 10px;
	font-size: 26px;
}

.productSec05 .display .txt {
	line-height: 1.75;
	font-weight: normal;
}

.productSec05 .display .price {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 10px;
}

.productSec05 .display .price .th {
	display: inline-block;
	margin-right: 10px;
	padding: 3px 18px;
	background: #184E7A;
	border-radius: 50px;
	color: #fff;
	white-space: nowrap;
}
.productSec05.pmb p.txt {
	margin-bottom: 1em;
}
.productSec05 .display .price .tax {
	color: #184E7A;
	font-size: 34px;
}

.productSec05 .display .price .tax:after {
	content: "(税込)";
	margin-left: 14px;
	font-size: 14px;
}

.productSec05 .display .price .tax.no-tax {
	font-size: 26px;
}

.productSec05 .display .price .tax.no-tax:after {
	display: none;
}

.productSec05 .btnDetail {
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 20px;
	width: 320px;
	height: 70px;
	background: url(../img/product/ico_down_circle.png)no-repeat 95% center #fff;
	background-size: 26px;
	border-radius: 12px;
	border: 1px solid #E6DBE5;
}

.productSec05 .btnDetail:before,
.productSec05 .btnClose:before {
	content: "詳細を見る";
	font-size: 18px;
}

.productSec05 .btnDetail.open,
.productSec05 .btnClose.open:after {
	background-image: url(../img/common/fixed_close.png);
}

.productSec05 .btnDetail.open:before,
.productSec05 .btnClose.open:before {
	content: "閉じる";
}

.productSec05 .btnClose {
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 48px;
	text-align: center;
}

.productSec05 .btnClose:after {
	content: "";
	display: inline-block;
	margin-left: 15px;
	width: 26px;
	height: 26px;
	background: url(../img/product/ico_down_circle.png)no-repeat center;
	background-size: 100%;
}

.productSec05 .toggleBox {
	display: none;
}

.productSec05 .box {
	padding: 50px 0;
}

.productSec05 .display h4 {
	margin-bottom: 12px;
	font-size: 28px;
}

.productSec05 .display .floor {
	width: 46.875%;
}

.productSec05 .display .bor {
	overflow: hidden;
	border-radius: 10px;
	border: 1px solid #E6E6E6;
}

.productSec05 .display .data {
	margin-bottom: 30px;
	padding-bottom: 40px;
	border-bottom: 1px solid #E6E6E6;
}

.productSec05 .display .data .size {
	margin-bottom: 8px;
	font-size: 20px;
}

.productSec05 .display .data .pic {
	font-weight: normal;
}

.productSec05 .house {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.productSec05 .house li {
	margin-bottom: 30px;
	width: 47%;
	font-weight: normal;
}

.productSec05 .house li .place {
	margin-bottom: 10px;
	letter-spacing: -0.01em;
	font-size: 18px;
	font-weight: bold;
}

.productSec05 .house li .pic {
	overflow: hidden;
	margin-bottom: 15px;
	border-radius: 10px;
}

.productSec06 {
	padding-bottom: 80px;
}

.productSec06 .borGradient {
	padding: 8px;
	background: linear-gradient(to left, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	border-radius: 20px;
}

.productSec06 .houseAdd {
	display: flex;
	padding: 20px 0;
	background: #fff;
	border-radius: 16px;
}

.productSec06 .houseAdd .img {
	padding: 30px 40px;
	width: 50%;
	border-right: 1px solid #D6D5D5;
	text-align: center;
	position: relative;
}

.productSec06 .houseAdd .img img {
	position: absolute;
	left: 50%;
	top: 45%;
	transform: translate(-50%, -50%);
	max-width: calc(100% - 80px);
	max-height: calc(110% - 60px);
}

.productSec06 .houseAdd .info {
	padding: 15px 8%;
	width: 50%;
}

.productSec06 .houseAdd .logo {
	margin: 0 auto 10px;
	display: flex;
	height: 125px;
	align-items: center;
	justify-content: center;
	max-width: 416px;
	position: relative;
}

.productSec06 .houseAdd .logo img {
	position: absolute;
	max-width: 100%;
	max-height: 100%;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
}

.productSec06 .houseAdd .info h4 {
	text-align: center;
	font-size: 22px;
}

.productSec06 .houseAdd .info .file {
	margin-top: 12px;
	text-align: center;
}

.productSec06 .houseAdd .info .file a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 60px;
	width: 260px;
	background: #C8749A;
	border-radius: 12px;
	color: #fff;
	font-size: 18px;
}

.productSec06 .houseAdd .info .file a:after {
	content: "";
	display: block;
	margin-left: 7px;
	width: 15px;
	height: 20px;
	background: url(../img/product/icon_file_white.svg)no-repeat center;
	background-size: 100%;
}

.productSec07 {
	padding: 0 0 130px;
}

.linkGradient {
	display: block;
	transition: all 0.5s;
	margin-top: 20px;
	position: relative;
	padding: 20px 40px 20px 20px;
	background-image: linear-gradient(120deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6, #4D9AD6, #A581DD, #E299DE);
	background-size: 200% 200%;
	border-radius: 12px;
	line-height: 1.45;
	color: #fff;
	font-size: 20px;
	animation: btnlink2 .5s ease forwards;
}

.linkGradient:after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	width: 32px;
	height: 32px;
	background: url(../img/product/icon_link_white.svg)no-repeat center;
}

.linkGradient .eng {
	display: block;
	font-size: 22px;
}

.linkGradient:hover {
	animation: btnlink .5s ease forwards;
}

.btnSvg {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 322px;
	height: 166px;
	font-size: 20px;
	line-height: 1.25;
	color: #fff;
	text-align: center;
}

.btnSvg:after {
	display: block;
	width: 27px;
	height: 27px;
	background: url(../img/common/icon_arrow_white.svg) center center no-repeat;
	background-size: cover;
	content: '';
	margin-top: 16px;
}

.btnSvg .bgSvg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(#184E7A, #9CB3C6);
	z-index: -1;
	animation: ball 10s linear infinite;
}

@keyframes ball {
	0% {
		border-radius: 50% 100%;
		animation-timing-function: ease-in-out;
	}

	20% {
		border-radius: 100% 35%;
		/*border-radius: 100% 50%;*/
		animation-timing-function: ease-in-out;
	}

	40% {
		border-radius: 50% 50% 50% 50%;
		animation-timing-function: ease-in-out;
	}

	60% {
		border-radius: 45% 100%;
		animation-timing-function: ease-in-out;
	}

	80% {
		border-radius: 100% 50%;
		animation-timing-function: ease-in-out;
	}

	100% {
		border-radius: 50% 100%;
		animation-timing-function: ease-in-out;
	}
}

.requestWrap {
	background: url(../img/request/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.requestWrap .otherTitle {
	padding-bottom: 50px;
	position: relative;
	z-index: 3;
}

.requestWrap .onlineTopImg {
	width: 900px;
	left: 595px;
}

.sdgsWrap {
	background: url(../img/sdgs/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.sdgsWrap .otherTitle {
	padding-bottom: 50px;
	position: relative;
	z-index: 3;
}

.sdgsContents {
	padding-top: 175px;
}

.pageHeading {
	text-align: center;
	font-size: 36px;
	line-height: 1.5;
	margin-bottom: 20px;
}

.pageHeading h2 {
	display: inline-block;
	position: relative;
	z-index: 2;
}

.pageHeading.marker01 h2:before {
	position: absolute;
	width: 50px;
	height: 32px;
	background: url(../img/sdgs/icon_title_marker01.svg) center center no-repeat;
	background-size: cover;
	content: '';
	left: -58px;
	top: 0;
	z-index: -1;
	content: '';
}

.pageHeading.marker01 h2:after {
	position: absolute;
	width: 18px;
	height: 24px;
	background: url(../img/sdgs/icon_title_marker02.svg) center center no-repeat;
	background-size: cover;
	content: '';
	right: -20px;
	bottom: 0;
	z-index: -1;
	content: '';
}

.pageHeading.marker02 h2:before {
	position: absolute;
	width: 71px;
	height: 58px;
	background: url(../img/sdgs/icon_title_marker03.svg) center center no-repeat;
	background-size: cover;
	content: '';
	left: -18px;
	top: -8px;
	z-index: -1;
	content: '';
}

.pageHeading.marker02 h2:after {
	position: absolute;
	width: 36px;
	height: 31px;
	background: url(../img/sdgs/icon_title_marker04.svg) center center no-repeat;
	background-size: cover;
	content: '';
	right: -33px;
	top: -12px;
	z-index: -1;
	content: '';
}

.sdgsTopArea {
	text-align: center;
	font-size: 18px;
	line-height: 2;
	padding-bottom: 80px;
	font-weight: normal;
}

.sdgsTopImage {
	margin-top: 85px;
}

.sdgsList {
	padding-bottom: 60px;
}

.sdgsListItem {
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
	padding: 70px 60px 100px;
	margin-bottom: 40px;
	display: flex;
}

.sdgsList .sdgsListItem:nth-child(even) {
	flex-direction: row-reverse;
}

.sdgsListBox {
	width: 440px;
	min-height: 670px;
	position: relative;
}

.sdgsListTitle {
	text-align: center;
	margin-bottom: 25px;
}

.sdgsListTitle h2 {
	line-height: 1;
	margin-bottom: 15px;
}

.sdgsListTitle span.en {
	display: inline-block;
	position: relative;
	padding: 0 20px;
	font-size: 2.4rem;
	line-height: 1.5;
}

.sdgsListTitle span.en:before,
.sdgsListTitle span.en:after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 36px;
	height: 1px;
	background: #CBCBCB;
	content: '';
}

.sdgsListTitle span.en:before {
	left: -36px;
}

.sdgsListTitle span.en:after {
	right: -36px;
}

.sdgsListSubTitle {
	text-align: center;
	margin-bottom: 35px;
	line-height: 1;
}

.sdgsListText {
	font-size: 16px;
	line-height: 1.75;
	font-weight: normal;
}

.sdgsListText p+p {
	margin-top: 1.75em;
}

.iconBlank {
	color: #9D5EB2;
	text-decoration: underline;
	background: url(../img/sdgs/icon_blank_link.svg) left center no-repeat;
	background-size: 30px auto;
	padding-left: 36px;
	display: inline-block;
	line-height: 30px;
}

.sdgsListImage {
	position: absolute;
	top: 0;
	z-index: 2;
	height: 100%;
	width: calc(50vw + 90px);
}

.sdgsList .sdgsListItem:nth-child(odd) .sdgsListImage {
	left: calc(100% + 50px);
}

.sdgsList .sdgsListItem:nth-child(even) .sdgsListImage {
	right: calc(100% + 50px);
}

.sdgsListImage .sdgsListMainImage img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 1;
}

.sdgsList .sdgsListItem:nth-child(odd) .sdgsListImage .sdgsListMainImage img {
	border-radius: 30px 0 0 30px;
}

.sdgsList .sdgsListItem:nth-child(even) .sdgsListImage .sdgsListMainImage img {
	border-radius: 0 30px 30px 0;
}

.sdgsListImage .sdgsImageList {
	display: flex;
	width: 545px;
	position: absolute;
	bottom: -40px;
	z-index: 2;
}

.sdgsList .sdgsListItem:nth-child(odd) .sdgsListImage .sdgsImageList {
	left: 0;
	justify-content: flex-end;
}

.sdgsList .sdgsListItem:nth-child(even) .sdgsListImage .sdgsImageList {
	right: 0;
}

.sdgsListImage .sdgsImageList li {
	width: 110px;
	margin: 0 5px;
}

.sdgsListImage .sdgsImageList li img {
	width: 100%;
}

.anchorArea {
	position: relative;
}

.anchorArea .anchor {
	position: absolute;
	top: -40px;
	z-index: -1;
}


.blogWrap {
	background: url(../img/blog/bg_wrap.jpg)no-repeat top center;
	background-size: 1920px auto;
}

.blogWrap .otherTitle {
	padding-bottom: 0;
}

.blogCont {
	position: relative;
}

.blogCont .ownerSelect {
	position: absolute;
	right: 0;
	top: -100px;
	z-index: 2;
	margin: 0;
}

.blogCont .ownerSelect select,
.blogCont .ownerSelect .selectBox {
	width: 180px;
}

.blogTitle {
	text-align: center;
	font-size: 32px;
	line-height: 1.5;
	margin-bottom: 20px;
	letter-spacing: 0.06em;
}

.blogList {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -15px;
}

.blogList li {
	width: 25%;
	padding: 0 15px;
	box-sizing: border-box;
}

.blogItem {
	padding: 40px 0;
	border-top: 1px solid #E6E6E6;
}

.blogList li:nth-child(1) .blogItem,
.blogList li:nth-child(2) .blogItem,
.blogList li:nth-child(3) .blogItem,
.blogList li:nth-child(4) .blogItem {
	border-top: 0;
}

.blogImage {
	border: 1px solid #C6C6C6;
	border-radius: 30px;
	overflow: hidden;
	width: 100%;
	padding-top: 100%;
	position: relative;
}

.blogImage img {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	object-fit: cover;
	z-index: 2;
	border-radius: 30px;
}

.blogDate {
	margin-top: 20px;
}

.blogDate time {
	font-size: 15px;
	line-height: 1;
	display: block;
}

.blogDate .blogCategory {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 10px;
}

.blogDate .blogCategory span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
	border-radius: 25px;
	height: 30px;
	font-size: 17px;
	line-height: 1;
	color: #fff;
	padding: 0 16px;
}

.blogName {
	font-size: 18px;
	line-height: 1.5;
	margin-top: 6px;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

.blogText {
	font-size: 14px;
	line-height: 1.35;
	margin-top: 2px;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	font-weight: normal;
}

.newBlogList {
	margin-bottom: 20px;
}

.newBlogList .blogList {
	display: flex;
	flex-wrap: wrap;
}

.newBlogList .blogList li {
	width: 50%;
}

.newBlogList .blogList li:first-child {
	padding-right: 80px;
}

.newBlogList .blogList li:last-child {
	padding-left: 80px;
	border-left: 1px solid #E6E6E6;
}

.newBlogList .blogItem {
	padding: 0;
	border-top: 0;
}

.newBlogList .blogDate {
	display: flex;
	align-items: center;
}

.newBlogList .blogDate time {
	font-size: 18px;
	margin-right: 30px;
}

.newBlogList .blogDate .blogCategory {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 0;
}

.newBlogList .blogDate .blogCategory span {
	height: 28px;
	font-size: 16px;
}

.newBlogList .blogText {
	font-size: 16px;
	line-height: 1.375;
}

.blogInfoBox {
	width: 100%;
	border-radius: 30px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
	padding: 44px;
	margin-top: 60px;
}

.blogInfoItem+.blogInfoItem {
	margin-top: 20px;
}

.blogInfoTitle {
	font-size: 18px;
	line-height: 1.5;
	margin-bottom: 10px;
	padding-left: 15px;
	position: relative;
}

.blogInfoTitle:before {
	position: absolute;
	width: 3px;
	border-radius: 5px;
	background: linear-gradient(#E299DE, #A581DD, #4D9AD6, #3CBBD6);
	position: absolute;
	left: 0;
	top: 6px;
	bottom: 6px;
	z-index: 2;
	content: '';
}

.blogInfoList {
	display: flex;
	flex-wrap: wrap;
}

.blogInfoList a {
	display: inline-flex;
	align-items: center;
	margin: 0 28px 6px 0;
	font-weight: normal;
	font-size: 14px;
}

.blogInfoList .cate {
	height: 26px;
	padding: 0 14px;
	border-radius: 25px;
	font-weight: bold;
	color: #fff;
	margin-right: 6px;
}

.cate01 {
	background: #E299DE !important;
}

.cate02 {
	background: #BE8BDE !important;
}

.cate03 {
	background: #A75C90 !important;
}

.cate04 {
	background: #D16597 !important;
}

.cate05 {
	background: #C98FBE !important;
}

.cate06 {
	background: #E0A6A6 !important;
}

.cate07 {
	background: #EE8D8A !important;
}

.cate08 {
	background: #F0863F !important;
}

.cate09 {
	background: #92A85D !important;
}

.cate10 {
	background: #00AC97 !important;
}

.cate11 {
	background: #57A865 !important;
}

.cate12 {
	background: #267161 !important;
}

.cate13 {
	background: #DCA86A !important;
}

.cate14 {
	background: #695E58 !important;
}

.cate15 {
	background: #D3B05B !important;
}

.cate16 {
	background: #A0C238 !important;
}

.cate17 {
	background: #73BBC3 !important;
}

.cate18 {
	background: #488996 !important;
}

.cate19 {
	background: #87C15A !important;
}

.cate20 {
	background: #9BD39A !important;
}

.cate21 {
	background: #3F6F8E !important;
}

.cate22 {
	background: #479D9C !important;
}

.cate23 {
	background: #75B69B !important;
}

.cate24 {
	background: #9D73AF !important;
}

.blogPopularTop {
	margin-top: 80px;
}

.blogPopularTop .blogPopularTitle {
	font-size: 24px;
	line-height: 1.5;
	letter-spacing: 0.06em;
	margin-bottom: 20px;
}

.blogPopularList .swiper {
	overflow: visible;
	padding-bottom: 80px;
}

.blogPopularList .swiper-slide {
	width: 298px;
}

.blogPopularTop .blogItem {
	padding: 0;
	border-top: 0;
	position: relative;
}

.blogPopularList .blogItem:before {
	position: absolute;
	left: 1px;
	top: 1px;
	z-index: 20;
	width: 60px;
	height: 34px;
	border-radius: 30px 0 30px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	color: #A0A0A0;
	content: '';
	background: #EEE;
}

.blogPopularList .swiper .swiper-slide:nth-child(1) .blogItem:before {
	content: 'No.1';
	background: #BDA366;
	color: #fff;
	left: 0;
	top: 0;
}

.blogPopularList .swiper .swiper-slide:nth-child(2) .blogItem:before {
	content: 'No.2';
	background: #ABA8A8;
	color: #fff;
	left: 0;
	top: 0;
}

.blogPopularList .swiper .swiper-slide:nth-child(3) .blogItem:before {
	content: 'No.3';
	background: #C19664;
	color: #fff;
	left: 0;
	top: 0;
}

.blogPopularList .swiper .swiper-slide:nth-child(4) .blogItem:before {
	content: 'No.4';
}

.blogPopularList .swiper .swiper-slide:nth-child(5) .blogItem:before {
	content: 'No.5';
}

.blogPopularList .swiper .swiper-slide:nth-child(6) .blogItem:before {
	content: 'No.6';
}

.blogPopularList .swiper .swiper-slide:nth-child(7) .blogItem:before {
	content: 'No.7';
}

.blogPopularList .swiper .swiper-slide:nth-child(8) .blogItem:before {
	content: 'No.8';
}

.blogPopularList .swiper .swiper-slide:nth-child(9) .blogItem:before {
	content: 'No.9';
}

.blogPopularList .swiper .swiper-slide:nth-child(10) .blogItem:before {
	content: 'No.10';
}

.blogPopularList .swiper .swiper_bottom {
	width: 100%;
}

.blogPopularList .swiper-button-prev,
.blogPopularList .swiper-button-next {
	width: 40px;
	height: 40px;
	left: auto;
	top: auto;
	bottom: 0;
	transform: translateY(0%);
}

.blogPopularList .swiper-button-prev {
	background: url(../img/top/prev02.svg)no-repeat;
	background-size: 99% auto;
	right: 50px;
}

.blogPopularList .swiper-button-next {
	background: url(../img/top/next02.svg)no-repeat;
	background-size: 99% auto;
	right: 0;
}

.blogPopularList .swiper-scrollbar.swiper-scrollbar-horizontal {
	bottom: 20px;
}

.blogTabLinks {
	display: none;
}

.blogTabBox.newBlog {
	display: block !important;
}

.blogTabBox.popularBlog {
	display: none !important;
}


.blogDetailCont {
	padding-top: 100px;
	max-width: 900px;
	margin: 0 auto;
}

.blogMianTop {
	display: flex;
	flex-direction: column;
}

.blogMianTop figure {
	padding: 0;
	margin: 0;
	width: 100%;
	overflow: hidden;
	border-radius: 20px;
	margin-bottom: 60px;
}

.blogMianTop figure img {
	width: 100%;
}

.blogMianHead {
	position: relative;
	margin-bottom: 30px;
}

.blogMianHead .blogDate {
	margin-top: 0;
	display: flex;
	align-items: center;
}

.blogMianHead .blogDate time {
	display: block;
	font-size: 17px;
	margin-right: 24px;
}

.blogMianHead .blogCategory {
	margin-top: 0;
}

.blogMianHead .blogCategory .cate {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
	border-radius: 25px;
	height: 30px;
	font-size: 17px;
	line-height: 1;
	color: #fff;
	padding: 0 16px;
}

.blogMianHead .blogTag {
	margin-top: 8px;
	display: flex;
}

.blogMianHead .blogTag dt {
	width: 54px;
}

.blogMianHead .blogTag dd {
	width: calc(100% - 54px);
}

.blogMianHead .blogTag dd a {
	color: #184E7A;
	text-decoration: underline;
	display: inline-block;
	margin-right: 1em;
}

.blogMianInfo {
	display: flex;
	justify-content: space-between;
}

.blogMianAuthor {
	white-space: nowrap;
	margin-top: -20px;
}

.blogMianAuthor dl {
	display: flex;
	align-items: center;
}

.blogMianAuthor dl dt {
	width: 70px;
	height: 70px;
	border-radius: 100%;
	overflow: hidden;
	position: relative;
	margin-right: 10px;
}

.blogMianAuthor dl dt img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	object-fit: cover;
}

.blogMianAuthor .blogAuthorTitle {
	border: 1px solid #000000;
	border-radius: 50px;
	line-height: 20px;
	font-size: 12px;
	padding: 0 10px;
	margin-bottom: 3px;
	display: inline-block;
}

.blogMianAuthor .blogAuthorName {
	font-size: 18px;
	line-height: 1.5;
	color: #184E7A;
}

.blogMianAuthor .blogAuthorName a {
	color: #184E7A;
	text-decoration: underline;
}

.blogMainTitle {
	font-size: 32px;
	line-height: 1.5;
	letter-spacing: 0.06em;
	margin-top: 20px;
}

.blogMainCont {
	font-size: 16px;
	line-height: 1.5;
	font-weight: normal;
}

.blogMainCont h3 {
	font-size: 24px;
	letter-spacing: 0.06em;
	line-height: 1.5;
	margin-bottom: .5em;
	font-weight: bold;
}

.blogMainCont p,
.blogMainCont ul,
.blogMainCont ol {
	margin-bottom: 1.5em;
}

.blogMainCont a {
	text-decoration: underline;
	color: #1563AE;
}

.blogMainCont figure {
	margin: 60px 0 40px;
	border-radius: 20px;
	overflow: hidden;
	text-align: center;
}

.blogMainCont figure img {
	height: auto;
}

.blogMainCont .box,
.blogMainCont .borderP {
	border-radius: 10px;
	border: 1px solid #000000;
	padding: 25px 30px;
	font-weight: bold;
	margin-bottom: 1.5em;
}

.blogMainCont .box p {
	margin-bottom: 0;
}

.blogMainCont .box p+p {
	margin-top: 1.5em;
}

.blogMainCont ol,
.blogMainCont ul {
	padding-left: 1em;
}

.blogMainCont ul {
	font-size: 14px;
}

.blogMainCont ul li {
	list-style-type: '※';
}

.blogMainCont ol li {
	list-style-type: decimal;
}

/* 旧ブログレイアウト調整 */
.blogMainCont>p {
	/*display: flex;*/
	flex-wrap: wrap;
	line-height: 2;

}

.blogMainCont>p.blogImgWrap>a,
.blogMainCont>p.blogImgWrap>img {
	display: block;
	width: 30%;
	height: 200px;
	margin-bottom: 1.5em;
	margin-right: 1.5em;
	border-radius: 10px;
	overflow: hidden;
}

.blogMainCont>p.blogImgWrap>a.blogImgZoom {
	display: inline-block;
	width: 50%;
	height: 200px;
}

.blogMainCont>p.blogImgWrap>a:nth-child(3n) {
	margin-right: 0;
}

.blogMainCont>p.blogImgWrap>a>img {
	max-width: 100%;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.boxTxt,
.boxInfo,
.boxPhoto {
	margin-bottom: 1.5em;
}

.boxPhoto img {
	margin: 0;
	border-radius: 10px;
	overflow: hidden;
	text-align: center;
	object-fit: cover;
}

.boxInfo {
	border-radius: 10px;
	border: 1px solid #000000;
	padding: 25px 30px;
	font-weight: bold;
}

.boxInfo .ico {
	display: none;
}

.blogMainCont .boxInfo p,
.blogMainCont .boxInfo ul,
.blogMainCont .boxInfo ol {
	margin-bottom: 0;
}

.blogMainCont .ulNoMarker li {
	list-style-type: none;
}

/* 旧ブログレイアウトここまで */

.pageCtrl {
	margin-top: 75px;
	text-align: center;
	position: relative;
}

.pageCtrl .pageBack {
	display: inline-flex;
	height: 60px;
	align-items: center;
	font-size: 18px;
	text-decoration: underline;
}

.pageCtrl .pagePrev a,
.pageCtrl .pageNext a {
	position: absolute;
	top: 0;
	z-index: 2;
	width: 220px;
	height: 60px;
	box-sizing: border-box;
	border: 1px solid #000000;
	box-sizing: border-box;
	font-size: 18px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 6px;
}

.pageCtrl .pagePrev a {
	padding-left: 25px;
	left: 0;
	background: url(../img/common/arrow_nav_left.svg) 19px center no-repeat;
	background-size: 22px;
}

.pageCtrl .pagePrev a:hover {
	background: url(../img/common/arrow_nav_left_hover.svg) 19px center no-repeat;
	background-size: 22px;
}

.pageCtrl .pageNext a {
	padding-right: 25px;
	right: 0;
	background: url(../img/common/arrow_nav.svg) right 19px center no-repeat;
	background-size: 22px;
}

.pageCtrl .pageNext a:hover {
	background: url(../img/common/arrow_nav_hover.svg) right 19px center no-repeat;
	background-size: 22px;
}

.blogOtherItem {
	border-top: 1px solid #E6E6E6;
	padding-top: 60px;
	margin-top: 60px;
}

.blogOtherWrap .blogPopularTop {
	margin-top: 0;
}


/*1102*/
#wrapper {
	width: 100%;
}

.interviewSwiper {
	padding: 420px 0 60px;
	margin-bottom: 0px !important;
}
.thoughtWrap .interviewSwiper {
	padding-top: 120px;
}
.interviewBtn {
	margin-top: -120px;
	margin-bottom: 50px;
}

.interviewSwiper .swiper-slide-active {
	transform: translateY(-120px);
}

.interviewSwiper .swiper-slide-prev,
.interviewSwiper .swiper-slide-next {
	transform: translateY(-60px);
}

.interviewSwiper .swiper-scrollbar.swiper-scrollbar-horizontal {
	left: 0;
	width: calc(100% - 120px);
}

.interviewSwiper .swiper-button-prev,
.interviewSwiper .swiper-button-next {
	width: 40px;
	height: 40px;
	left: auto;
	top: auto;
	right: 50px;
	bottom: 40px;
	transform: translateY(50%);
	background: url(../img/top/prev02.svg)no-repeat;
	background-size: 100% auto;
}

.interviewSwiper .swiper-button-next {
	right: 0;
	background-image: url(../img/top/next02.svg);
}

.swiper-button-prev:after,
.swiper-button-next:after {
	content: none;
}

.topSec04 .visual-list .boxP .item {
	position: relative;
	padding-top: 38px;
	display: block;
}

.topSec04 .visual-list .item {
	display: block;
	max-width: 480px;
	position: relative;
	padding-top: 56px;
	margin: 0 25px;
}



.topSec04 .visual-list .item .itemBox {
	position: relative;
	transition: transform 0.3s, opacity;
}

.topSec04 .visual-list .item .itemBox:hover {
	transform: translate(0, -10px);
}

.topSec04 .visual-list .imgP {
	overflow: hidden;
	position: relative;
	border-radius: 30px;
	width: 100%;
	padding-top: 65%;
}

.topSec04 .visual-list .imgP img {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.topSec04 .visual-list .imgP span {
	background: linear-gradient(135deg, #E299DE, #A581DD, #4D9AD6, #3CBBD6);
	color: #fff;
	font-size: 16px;
	min-width: 140px;
	height: 37px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 10px;
	position: absolute;
	left: 0;
	bottom: 0;
	border-radius: 0 30px 0 30px;
	z-index: 2;
}

.topSec04 .visual-lis .item .itemBox .ownerDl02 {
	top: -57px;
}

.topSec04 .visual-list .thumbnailP {
	margin-top: -120px;
	position: relative;
	z-index: 4;
}

.topSec04 .visual-list .thumbnailP img {
	width: 260px;
}

.topSec04 .visual-list .numberP {
	position: absolute;
	right: 8px;
	bottom: 13px;
	z-index: 6;
	padding: 0.2em 46px 0.2em 14px;
	background: #fff url(../img/common/arrow_nav.svg)no-repeat right 9px center;
	background-size: 24px auto;
	display: flex;
	align-items: center;
	font-size: 14px;
	line-height: 1.33;
	border-radius: 30px;
}

.topSec04 .visual-list .numberP span {
	margin-left: 8px;
	font-size: 15px;
	letter-spacing: -0.04em;
	display: flex;
	align-items: center;
}

.topSec04 .visual-list .numberP span font {
	letter-spacing: -0.05em;
	font-size: 24px;
}

.formTable th .requiredSpan {
	font-size: 1.2rem;
	line-height: 12px;
	vertical-align: middle;
	display: inline-block;
	padding: 5px 0.7em;
	background: #FF0000;
	margin-bottom: 6px;
	border-radius: 3px;
}

.interviewSlick.ownerList .ownerDl02 {
	padding: 0.6vw;
}

.interviewSlick.ownerList .ownerDl02 dt {
	width: 3.5vw;
	height: 3.5vw;
	position: relative;
	margin-right: 1vw;
}

.interviewSlick.ownerList .ownerDl02 dt img {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.interviewSlick.ownerList .ownerDl02 dd {
	width: calc(100% - 68px - 18px);
	width: calc(100% - 3.5vw - 1vw);
	font-size: 20px;
	font-size: 1vw;
	line-height: 1.3;
}

.interviewSlick.ownerList .imgP span {
	font-size: 1.4vw;
	min-width: 10.3vw;
	height: 2.2vw;
	padding: 1.3vw 1.1vw;
}

/*.topUl02 .thumbnailP{
	height: 90px;
    margin: -60px 0 -10px 4px;
}
.topUl02 .thumbnailP img{
    height: 90px;
    margin: 0;
}*/

.productSolution {
	margin-bottom: 60px;
}

.ownerBottom {
	display: flex;
	flex-direction: column-reverse;
	position: relative;
	z-index: 3;
}

.ownerBottom .ownerSelect {
	margin-bottom: 0;
}

.wpcf7-form.sent,
.screen-reader-response,
.wpcf7-response-output {
	display: none;
}

.tabWrapSelect #tab01,
.tabWrapSelect #tab02,
.tabWrapSelect #tab03 {
	display: none;
}

.image {
	width: 100%;
	padding-top: 100%;
	position: relative;
	display: block;
}

.image img {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.campaignUl dt .image {
	padding-top: 65%;
}

.formTable select.wpcf7-validates-as-required,
.formTable input[type='text'].wpcf7-validates-as-required,
.formTable input[type='number'].wpcf7-validates-as-required,
.formTable input[type='tel'].wpcf7-validates-as-required,
.formTable input[type='email'].wpcf7-validates-as-required,
.formTable textarea.wpcf7-validates-as-required{
	background-color: #FFE9E9;
	border: 1px solid #FF9794;
}

.formTable select.wpcf7-validates-as-required.filled,
.formTable input[type='text'].wpcf7-validates-as-required.filled,
.formTable input[type='number'].wpcf7-validates-as-required.filled,
.formTable input[type='tel'].wpcf7-validates-as-required.filled,
.formTable input[type='email'].wpcf7-validates-as-required.filled,
.formTable textarea.wpcf7-validates-as-required.filled{
	background-color: #f4f4f4;
	border: 0px solid #ccc;
}

.formTable select.wpcf7-validates-as-required.error,
.formTable input[type='text'].wpcf7-validates-as-required.error,
.formTable input[type='number'].wpcf7-validates-as-required.error,
.formTable input[type='tel'].wpcf7-validates-as-required.error,
.formTable input[type='email'].wpcf7-validates-as-required.error,
.formTable textarea.wpcf7-validates-as-required.error{
	background-color: #FFE9E9;
	border: 1px solid #FF9794;
}

.formTable select[aria-invalid='true'].wpcf7-validates-as-required.filled, 
.formTable input[type='text'][aria-invalid='true'].wpcf7-validates-as-required.filled,
.formTable input[type='number'][aria-invalid='true'].wpcf7-validates-as-required.filled,
.formTable input[type='tel'][aria-invalid='true'].wpcf7-validates-as-required.filled,
.formTable input[type='email'][aria-invalid='true'].wpcf7-validates-as-required.filled,
.formTable textarea[aria-invalid='true'].wpcf7-validates-as-required.filled{
	background-color: #FFE9E9;
	border: 1px solid #FF9794;
}

.wpcf7-not-valid-tip {
	display: none;
	color: #f00;
}

.select2-container {
	min-width: 100%;
	width: 100% !important;
}

.select2-container--default .select2-selection--single {
	border: 1px solid #000000;
	border-radius: 6px;
	padding: 0 20px;
	font-size: 14px;
	line-height: 1.5;
	color: #000000;
	font-weight: bold;
	display: flex;
	align-items: center;
	height: 46px;
	margin-bottom: 15px;
	position: relative;
}

.your-product01 .select2-container--default .select2-selection--single:has(.select2-selection__placeholder){
	border-color: #FF9794;
	background-color: #FFE9E9;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 20px;
	width: 20px;
	background: url(../img/event_detail/select.svg)no-repeat center center #fff;
	background-size: 20px auto;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

.your-product01 .select2-container--default .select2-selection--single:has(.select2-selection__placeholder) .select2-selection__arrow{
	background: url(../img/event_detail/select.svg)no-repeat center center #FFE9E9;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
	display: none;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
	color: #000;
}

.select2-results {
	top: -15px;
}
.formText p {
	margin-bottom: 1rem;
	font-size: 1.2em;
}
.formText a {
	color: #000;
	text-decoration: underline;
}

.hdl01 {
	border-top: solid 4px #000;
	border-bottom: solid 4px #000;
	font-size: 30px;
	font-weight: bold;
	padding: 1em 0;
	margin: 2.4em 0 1em !important;
}
.hdl02 {
	background: #dedede;
	font-size: 28px;
	font-weight: bold;
	padding: 0.5em 1.2em;
	margin: 2.4em 0 1em !important;
}
.hdl03 {
	font-size: 24px;
	font-weight: bold;
	position: relative;
	padding-left: 1em;
	margin: 2.4em 0 1em !important;
}
.hdl03:before {
	content: '';
	width: 5px;
	height: 100%;	
	background: url(../img/access/bg_title.svg);
	background-size: contain;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
.imgBox01 .list {
	display: flex;
	padding: 0;
}
.imgBox01 .list li {
	width: 49%;
	vertical-align: top;
	list-style: none;
	margin-right: 2%;
}
.imgBox01 .list li:last-child {
	margin-right: 0;
}
.imgBox01 .list li img {
	border-radius: 16px;
}
.contBox01 {
	border: solid 1px #000;
	border-radius: 12px;
	box-sizing: border-box;
}
.contBox01 .tl {
	border-bottom: dashed 2px #000;
	font-size: 20px;
	font-weight: bold;
	padding: 0.8em 1.3em 0.8em 35px;
	position: relative;
}
.contBox01 .tl:before {
	content: '';
	width: 24px;
	height: 4px;	
	background: url(../img/access/bg_title.svg);
	background-size: contain;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
.contBox01 .list {
	padding: 1.5em 1.4em 1.5em 2.4em;
}
.contBox01 .list li {
	font-size: 17px;
	list-style: none;
	padding-left: 1.3em;
	margin: 0.3em 0;
	position: relative;
}
.contBox01 .list li:before {
	content: '';
	width: 12px;
	height: 12px;
	border: solid 3px #000;
	border-radius: 12px;
	font-weight: bold;
	position: absolute;
	top: 8px;
	left: 0;
}
.contBox01 .list li:last-child {
	margin-bottom: 0;
}
.linkBox01 {
	border: solid 1px #000;
	border-radius: 12px;
	position: relative;
}
.linkBox01:before {
	content: '';
	width: 100%;
	height: 100%;
	border: solid 1px #000;
	border-radius: 9px;
	position: absolute;
	top: 8px;
	left: 10px;
} 
.linkBox01 .in {
	padding: 1.5em 1.8em 0;
	position: relative;
}
.linkBox01 .in dt {
	font-size: 17px;
	font-weight: bold;
	padding-left: 1em;
	position: relative;
}
.linkBox01 .in dt:before {
	content: '';
	background: #000;
	width: 7px;
	height: 7px;
	border-radius: 7px;
	position: absolute;
	top: 10px;
	left: 0;	
}
.linkBox01 .in dd {
	font-size: 16px;
}
.linkBox01 .in dd a {
	color: #008ad3;
	font-weight: bold;
	text-decoration-line: underline;
}


span.bgLine01 {
	background: linear-gradient(transparent 50%, #ffff33 50%);
}
a.txtLink01 {
	color: #008ad3;
	font-weight: bold;
}
.mt0 {
	margin-top: 0 !important;
}
@media screen and (max-width: 844px) {
	.topGoodsUl dl dt img {
		max-width: 190px;
		max-height: 190px;
	}

}
/* Google reCAPTCHAマークを非表示に */
.grecaptcha-badge {
	display: none;
}
#nyc {
	/*background: #f8492c;*/
	max-width: 1024px;
	margin: 120px auto 0;
	/*padding: 10px;*/
	/*border-radius: 20px;*/
}
#nyc a {
	display: block;
	border: solid 2px #fff;
	border-radius: 10px;
	width: 72%;
	margin: 30px auto;
	font-size: 20px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding: 1em 1.3em;
}
#chokiyuryojutaku {
	padding: 0 4%;
}
#chokiyuryojutaku .inbox {
	max-width: 820px;
	margin: 60px auto 0;
	/*margin: 120px auto 0;GWキャンペーン後適用*/
    padding: 12px;
	background-image: linear-gradient(-45deg, rgba(226, 153, 222, 1), rgba(60, 187, 214, 1) 100%, rgba(165, 129, 221, 1) 35%, rgba(77, 154, 214, 1) 70%);
	border-radius: 20px;
	box-sizing: border-box;
	box-shadow: 0px 5px 15px 0px rgba(131, 131, 131, 0.25);
}
#chokiyuryojutaku .inbox .in {
	background: #fff;
	border-radius: 16px;
	box-sizing: border-box;
	padding: 35px 60px;
	text-align: center;
}
#chokiyuryojutaku .inbox .in .copy {
	margin-bottom: 20px;
}
#chokiyuryojutaku .inbox .in .image_pc {
	margin-bottom: 50px;
}
#chokiyuryojutaku .inbox .in .image_sp01,
#chokiyuryojutaku .inbox .in .image_sp02 {
	display: none;
}
#chokiyuryojutaku .inbox .in .txt {
	margin-bottom: 1em;
}
#chokiyuryojutaku .inbox .in .txt span {
	background: #000;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	line-height: 2.1;
	padding: 0.2em 0.5em;
}
#chokiyuryojutaku .inbox .in p {
	font-size: 13px;
}
#dultonhomeTeaser {
	width: 820px;
	background: #14195d;
	margin: 90px auto 0;
	border: solid 10px #14195d;
	box-sizing: border-box;
	border-radius: 25px;
}
#dultonhomeTeaser .photoImg img {
	border-radius: 14px 14px 0 0;
}
#dultonhomeTeaser .photoImg .sp {
	display: none;
}
#dultonhomeTeaser dl {
	display: table;
	width: 100%;
	padding: 35px 5%;
	background: #14195d;
	vertical-align: middle;
	box-sizing: border-box;
}
#dultonhomeTeaser dl dt {
	display: table-cell;
	width: 50%;
	margin-bottom: 40px;
	position: relative;
}
#dultonhomeTeaser dl dt:before {
	content: "";
	background: url("../img/top/ico_new.png")no-repeat;
	width: 114px;
	height: 93px;
	position: absolute;
	top: -83px;
	left: 180px;
}
#dultonhomeTeaser dl dd {
	display: table-cell;
	width: 50%;

}
#dultonhomeTeaser dl dd p {
	font-size: 14px;
	color: #fff;
	font-weight: 500;
	margin: 1em 0;
}

#dultonhomeTeaser .btn {
	margin-top: 1.6em;
}
#dultonhomeTeaser .btn.bottom {
	width: 70%;
	margin: 2em auto 1.3em;
}
#dultonhomeTeaser .btn a {
	display: block;
	border: solid 1px #ccc;
	border-radius: 8px;
	font-size: 16px;
	text-align: center;
	color: #fff;
	padding: 0.7em 0.7em 0.8em;
}
#dultonhomeTeaser .btn.bottom a {
	font-size: 18px;	
	padding: 1.2em 0.8em;
}
#dultonhomeTeaser .btn.bottom a br {
	display: none;
}
#dultonhomeTeaser .btn a:hover {
	background: #fff;
	color: #14195d;
	opacity: 1.0;
}
#dultonhomeTeaser .inner {
	width: 90%;
	margin: auto;
	padding: 0 0 40px;
	border-radius: 12px;
	background: #f0ebd7;
}
#dultonhomeTeaser .inner .sobox {
	background: #fff;
	margin-bottom: 30px;
	padding: 15px 0;
	border-radius: 12px 12px 0 0;
}
#dultonhomeTeaser .inner .sobox .inbox {
	width: 90%;
	margin: auto;
	padding: 3px 0;
	border-top: solid 8px #14195d;
	border-bottom: solid 8px #14195d;
	box-sizing: border-box;
	margin-bottom: 0.7em;
}
#dultonhomeTeaser .inner .sobox .inbox h3 {
	padding: 10px 1em;
	border-top: solid 2px #14195d;
	border-bottom: solid 2px #14195d;
	box-sizing: border-box;
	text-align: center;
	line-height: 1.2;

}
#dultonhomeTeaser .inner .sobox .inbox h3 strong {
	display: block;
	font-size: 48px;
	color: #c8050b;
}
#dultonhomeTeaser .inner .sobox .inbox h3 span {
	display: inline-block;
	font-size: 20px;
	color: #14195d;
}
#dultonhomeTeaser .inner .sobox p {
	font-size: 1.2em;
	color: #14195d;
	text-align: center;
}
#dultonhomeTeaser .inner .sobox p span {
	background: #ffd000;
	font-size: 1.2em;
	color: #c8050b;
	padding: 0 0.2em;
}
#dultonhomeTeaser .inner .combox {
	display: table;
	width: 100%;
	padding: 0 5%;
	margin-bottom: 40px;
}
#dultonhomeTeaser .inner .combox .photo {
	display: table-cell;
	width: 40%;
	padding-right: 2%;
	vertical-align: top;
}
#dultonhomeTeaser .inner .combox .txtbox {
	display: table-cell;
	width: 58%;
	padding-left: 2%;
	vertical-align: top;
}
#dultonhomeTeaser .inner .combox .txtbox b {
	display: block;
	background: #c8050b;
	font-size: 20px;
	color: #fff;
	padding: 0.1em 0.7em;
	margin-bottom: 10px;
}
#dultonhomeTeaser .inner .combox .txtbox p {
	font-size: 15px;
	color: #14195d;
	margin-bottom: 1em;
}
#dultonhomeTeaser .inner .combox .txtbox p:last-child {
	margin-bottom: 0;
}
#dultonhomeTeaser .inner .combox .txtbox p.tl span {
	background: #14195d;
	font-size: 26px;
	color: #fff;
	line-height: 1.7;
}
#dultonhomeTeaser .inner .combox .txtbox p a.xa {
	background: #fff;
	text-decoration: underline;
}
#dultonhomeTeaser .inner .combox .txtbox p a.xa:hover {
	background: #14195d;
	color: #fff;
	text-decoration: none;
}
#dultonhomeTeaser .inner .combox .photo.sp {
	display: none;
}
.flip {
  position: absolute;
  right: 0;
  width: 108px;
  height: 108px;
	z-index: 2;
}
.flip.small {
	width: 60px;
	height: 60px;
	top: 10px;
	right: 5px;
}
.flip .flip-inner {
  transform-style: preserve-3d;
  height: 100%;
  width: 100%;
  animation: coinFlip 3s ease-in-out infinite;
}

@keyframes coinFlip {
  0% {
    transform: rotateY(0deg);
  }
  50% {
    transform: rotateY(180deg);
  }
  100% {
    transform: rotateY(360deg);
  }
}

.flip .flip-inner .front,
.flip .flip-inner .back {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  border-radius: 50%;
  overflow: hidden;
}

.flip .flip-inner .front {
  transform: translateZ(1px);
}

.flip .flip-inner .back {
  transform: rotateY(180deg);
}

.flip .flip-inner .thumbnail {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* TOPダルトンホーム 特典折りたたみ */
#offerWrapper {
    position: relative;
    overflow: hidden;
    max-height: 2000px; /* 十分な高さ */
    transition: max-height 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

#offerWrapper.is-closed {
    max-height: 250px; /* 出だしを見せる高さ */
}


.fade-mask {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 180px;
    /* 上が透明、下が背景色 */
    background: linear-gradient(to bottom, rgba(240, 235, 215, 0), #f0ebd7 90%);
    pointer-events: none;
    transition: opacity 0.4s;
}

#offerWrapper.is-open .fade-mask {
    opacity: 0;
}
.view-more-btn {
    display: block;
    width: 72%;
    margin: 10px auto 0;
    padding: 18px 20px;
    color: #14195d;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.1em;
    cursor: pointer;
    position: relative;
    transition: all 0.3s;
    border: 2px solid #14195d;
	border-radius: 8px;
}

.view-more-btn:hover {
    background-color: transparent;
    color: #333;
}

.view-more-btn::after {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-left: 15px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: transform 0.3s;
    vertical-align: middle;
}

.view-more-btn.is-active::after {
    transform: rotate(-135deg) translateY(-2px);
}

