/***************************
 *
 * トップページ
 * ★ページ中身用★
 *
 **************************/
@media all and (min-width: 769px) {

.img-wrap {
	overflow: hidden;
}
.img-wrap > img {
	width: 100%;
}

.heart {
	background: url(../img/heart.png) center center no-repeat;
	background-size: contain;
	width: 46px;
	height: 45px;
	margin: 0 auto;
	position: absolute;
	left: 50%;
	top: -20px;
	transform: translate(-50%, 0%);
}
.ic-heart {
	background: url(../img/heart.png) center center no-repeat;
	background-size: contain;
	width: 46px;
	height: 45px;
	margin: 0 auto;
	display: inline-block;
	vertical-align: middle;
	position: relative;
	top: -8px;
}
.title-main {
	text-align: center;
	padding: 60px 0 0;
	margin-bottom: 10px;
}
.title-main span {
	font-size: 40px;
	font-weight: bold;
	color: #222222;
	display: inline-block;
}
.title-main span:first-letter {
	color: #b28850;
}
.title-main + .caption {
	text-align: center;
	font-size: 18px;
	color: #222222;
	margin-bottom: 30px;
}

/*
MAIN VISUAL
*/
.main-visual {
	padding-top: 68px;
	position: relative;
/*	height: 100%;
	height: 100vh;
	margin-bottom: -100px;
	display: flex;
	align-items: center;
	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
	position: relative;*/
}
.main-visual .widget_cp5_image_slider .swiper-container {
	height: auto;
	position: relative;
}
.widget-top {
	margin: 0;
}


.main-visual .swiper-slide {
	/*height: 100vh;*/
}
.main-visual .widget_cp5_image_slider .swiper-container img {
	height: auto;
}
.main-visual .swiper-button-prev {
	background: url(../img/slider-prev.png) center center no-repeat;
	background-size: contain;
	width: 66px;
	height: 66px;	
}
.main-visual .swiper-button-next {
	background: url(../img/slider-next.png) center center no-repeat;
	background-size: contain;
	width: 66px;
	height: 66px;	
}
.main-visual .swiper-pagination-bullet {
	width: 25px;
	height: 2px;
	background: rgba(255,255,255,0.9);
	border-radius: 0;
}
.main-visual .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 25px;
	height: 2px;
	background: rgba(255,255,255,1);
}

/*
MAIN VISUAL BOTTOM
*/
.main-visual-bottom {
	/*margin-top: 100vh;*/
	background: white;
	padding: 25px 0;
	position: relative;
	z-index: 1;
}
.main-visual-bottom p {
	text-align: center;
	font-size: 24px;
	color: #222222;
	font-weight: 500;
	line-height: 1.833em;
}
.flower-l {
	background: url(../img/flower-l.png) 0 0 no-repeat;
	background-size: contain;
	width: 221px;
	height: 294px;
	position: absolute;
	left: 0;
	bottom: 0;
}
.flower-r {
	background: url(../img/flower-r.png) 0 0 no-repeat;
	background-size: contain;
	width: 308px;
	height: 294px;
	position: absolute;
	right: 0;
	bottom: 0;
}
.flower-l-t {
	background: url(../img/flower-l-t.png) 0 0 no-repeat;
	background-size: contain;
	width: 221px;
	height: 294px;
	position: absolute;
	left: 0;
	top: 0;
}
.flower-r-t {
	background: url(../img/flower-r-t.png) 0 0 no-repeat;
	background-size: contain;
	width: 308px;
	height: 294px;
	position: absolute;
	right: 0;
	top: 0;
}

.bg-black {
	background: url(../img/bg-black.png) 0 0 repeat;
	background-size: 150px 136px;
}

.main-widget {
	padding: 50px 0 80px;
}
.main-widget .box-content > div {
	width: 450px;
	height: 520px;
	position: relative;
}
.main-widget .title-main {
	text-align: left;
	padding-top: 0;
	position: relative;
}
.main-widget .title-main span {
	color: white;
}
.main-widget .title-main + .caption {
	text-align: right;
	position: absolute;
	right: 0;
	top: 15px;
	color: white;
}

.box-cast-widget {
	background: rgba(0,0,0,0.4);
	padding: 35px 20px;

}
.box-cast-widget .slick-dots {
	margin-left: -14px;
	display: none !important;
}
.box-cast-widget .slick-dots > li {
	width: 25px !important;
	height: 2px !important;
	background: rgba(178,136,80,0.5);
}
.box-cast-widget .slick-dots > li.slick-active {
	background: rgba(178,136,80,1);
}

/*
MAIN SC
*/
.bg-silver {
	background: url(../img/bg-silver.jpg) center top no-repeat;
	background-size: cover;
}
.main-sc {
	padding-bottom: 40px;
	position: relative;
}
.list-tab {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	border-right: 1px solid #dddddd;
	box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
	margin-bottom: 50px;	
}
/*.list-tab > li {
	width: 25%;
}*/

.list-tab > li {
	width: 20%;
}
/** ↑　2025/10/07追加　**/
.list-tab > li > span {
	display: block;
	background: white;
	border: 1px solid #dddddd;
	border-right: none;
	font-size: 18px;
	font-weight: 500;
	text-align: center;
	padding: 13px 0;
}
.list-tab > li > span:hover {
	cursor: pointer;
}
.list-tab > li.is-active {
	
}
.list-tab > li.is-active span {
	background: url(../img/tab-active.jpg) center center no-repeat;
	background-size: cover;
	color: white;
}
.list-tab > li.is-active span:hover {
	cursor: default;
}

.tab {
	display: none;
	-webkit-animation: fade-in 0.6s linear 0s 1;
}
.tab.is-active {
	display: block;
}

/*
MAIN NC
*/
.main-nc {
	background: #111111 url(../img/bg-main-newface.jpg) center top no-repeat;
	background-size: cover;
	padding-bottom: 70px;
	position: relative;
}
.main-sc .list-cast {
	margin-top: 40px !important;
}

/*
MAIN REC
*/
.main-rec {
	position: relative;
	padding-bottom: 70px;
}

/*
MAIN MENU
*/
.main-menu {
	position: relative;
	padding-top: 20px;
	padding-bottom: 220px;
}
.main-menu .box-content {
	width: 840px;
}
.main-menu .title-main {
	text-align: left;
}
.main-menu .title-main + .caption {
	text-align: right;
}
.main-menu .box-title {
	width: 365px;
	position: relative;
}
.main-menu .box-title .caption {
	position: absolute;
	right: 0;
	bottom: 15px;
	margin: 0;
}
.main-menu .img-wrap {
	width: 440px;
	height: 565px;
	margin-top: 35px;

}
.main-menu .box-menu {
	position: absolute;
	right: 0;
	top: 70px;
	width: 440px;
	background: white;
	padding: 45px 25px 85px;
	box-sizing: border-box;
}
.main-menu .box-menu h3 {
	text-align: center;
	font-size: 34px;
	color: #b28850;
	margin-top: 20px;
	margin-bottom: 0px;
}
.main-menu .box-menu h3:first-child {
	margin-top: 0px;
}
.main-menu .box-menu h3 + .caption {
	text-align: center;
	font-size: 22px;
	color: #222222;
	font-weight: 500;
	margin-bottom: 10px;
}
.main-menu .box-menu .inner {
	
}
.main-menu .box-menu .inner p {
	font-size: 15px;
	color: #222222;
	text-align: center;
	margin-bottom: 20px;
}
.main-menu .box-menu .inner h4 {
	text-align: center;
	font-size: 16px;
	color: #b28850;
	font-weight: 500;
	margin-bottom: 10px;
}
.list-fee {
	width: 260px;
	margin: 0 auto;
}
.list-fee > li {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;	
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 0px;	
}
.list-fee p {
	margin-bottom: 0 !important;
}
.list-fee .fee-name {
	font-size: 14px;
}
.list-fee .fee-name .num {
	font-size: 18px;
}
.list-fee .fee-num {
	font-size: 14px;	
}
.list-fee .fee-num .num {
	font-size: 18px;	
}
.list-fee .dot {
	position: relative;
	top: 15px;
	width: 85px;
	height: 1px;
	background: url(../img/dot.png) center center no-repeat;
	background-size: contain;
}

/*
MAIN INFO
*/
.main-info {
	position: relative;
	padding-bottom: 70px;
}
.main-info .box-content > div {
	width: 480px;
}
.main-info .box-content > div .box {
	background: white;
	box-shadow: 0px 0px 10px rgba(0,0,0,0.2);
	padding: 30px;
	box-sizing: border-box;
	position: relative;
	min-height: 500px;
}
.main-info .box-content > div:first-child .box {
	
}
.main-info .title-main {
	margin-bottom: 0;
}
.main-info .title-main + .caption {
	margin-top: 0px;
}
.main-info .box-bonus {
	
}
.main-info .box-bonus h3 {
	text-align: left;
	font-size: 24px;
	color: #b28850;
	font-weight: 500;
	line-height: 1.38em;
	margin-bottom: 15px;
}
.main-info .box-bonus p {
	font-size: 15px;
	color: #222222;
	line-height: 1.733em;
	margin-bottom: 20px;
}
.main-info .box-bonus h3 img {
	float: right;
	width: 100px;
	margin-left: 10px;
}

.list-applink {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;	
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 35px auto 35px;	
}
.list-applink > li {
	width: 200px;
}
.main-info  .box-bonus .qr-p {
	margin-bottom: 0;
	position: relative;
	text-align: center;
}
.main-info  .box-bonus .qr-p .qr-1 {
	position: absolute;
	left: 0;
	top: 0;
	width: 69px;
}
.main-info  .box-bonus .qr-p .qr-2 {
	position: absolute;
	right: 0;
	top: 0;
	width: 69px;
}

/*
MAIN CONCEPT
*/
.main-concept {
	background: url(../img/bg-main-concept.jpg) center top no-repeat;
	background-attachment: fixed;
	background-size: cover;
	padding-bottom: 70px;
}
.main-concept .img-wrap {
	width: 900px;
	height: 450px;
	position: absolute;
	top: 0;
	right: 0;
}
.main-concept .box-content {
	padding-top: 100px;
}
.main-concept .box {
	background: white;
	box-shadow: 0px 0px 10px rgba(0,0,0,0.2);
	padding: 40px;
	width: 500px;
	box-sizing: border-box;
	position: relative;
}
.main-concept .box p {
	font-size: 18px;
	color: #222222;
	line-height: 2em;
}

/*
TICKER
*/
.ticker {
	background: white;
}
.ticker-slider img {
	width: 260px;
}

/*
BANNER SMALL
*/
.banners-s {
	background: white;
	padding: 50px 0 0;
}

/*
MAIN BOTTOM
*/
.main-bottom {
	position: relative;
}
.main-blog .box-content {
	background: white;
	padding: 1px 40px 80px;
	box-sizing: border-box;
	width: 1200px;
}
.main-blog .box-content .btn {
	
}

.main-notice {
	background: rgba(0,0,0,0.4);
	margin: 70px 0 0;
	padding: 40px 0 25px;
}
.main-notice h2 {
	text-align: center;
	font-size: 24px;
	color: #cccccc;
	margin-bottom: 30px;
}
.main-notice p {
	font-size: 16px;
	color: #cccccc;
	line-height: 1.875em;
	margin-bottom: 40px;
}
.main-notice .inner {
	border: 1px solid #222222;
	margin: 25px auto;
	padding: 20px;
}
.main-notice .inner ul {
	
}
.main-notice .inner ul > li {
	color: #cccccc;
	font-size: 14px;
	line-height: 1.57em;
	position: relative;
	padding-left: 20px;
}
.main-notice .inner ul > li:before {
	content: "◆";
	position: absolute;
	left: 0;
	top: 0;
}

/*
BANNERS M
*/
.banners-m {
	background: white;
	padding: 50px 0 30px;
	position: relative;
}

/*
BOTTOM LINK
*/
.bottom-link {
	
}
.list-box-banner {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;	
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;	

}
.list-box-banner > li {
	width: 20%;
	height: 320px;
	height: 20vw;	
	position: relative;
	display: flex;
	align-items: center;
	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;	
	overflow: hidden;
}

.list-box-banner li:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;	
}
.list-box-banner .box-banner-1:before {
	background: url(../img/bottom-link-1.jpg) center center no-repeat;
	background-size: cover;
}
.list-box-banner .box-banner-2:before {
	background: url(../img/bottom-link-2.jpg) center center no-repeat;
	background-size: cover;
}
.list-box-banner .box-banner-3:before {
	background: url(../img/bottom-link-3.jpg) center center no-repeat;
	background-size: cover;
}
.list-box-banner .box-banner-4:before {
	background: url(../img/bottom-link-4.jpg) center center no-repeat;
	background-size: cover;
}
.list-box-banner .box-banner-5:before {
	background: url(../img/bottom-link-5.jpg) center center no-repeat;
	background-size: cover;
}
.list-box-banner > li:hover:before {
	transform: scale(1.1);
	-webkit-transition: 0.5s ease;
	-moz-transition: 0.5s ease;
	-ms-transition: 0.5s ease;
	-o-transition: 0.5s ease;
	transition: 0.5s ease;		
}
.list-box-banner .box-banner-link {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 5;	
}
.list-box-banner .box-banner-title {
	text-emphasis: center;
	color: white;
	font-size: 40px;
	line-height: 1;
	margin-bottom: 0px;
	position: relative;
	z-index: 3;
}
.list-box-banner .box-banner-title span {
	
}
.list-box-banner .box-banner-title:first-letter {
	color: #b28850;
}
.list-box-banner .box-banner-title-2 {
	text-align: center;
	color: white;
	position: relative;
	z-index: 3;
}

}