@charset "utf-8";

/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/

.cover-slider .swiper-slide {
    aspect-ratio: 800 / 900 !important;
}

.cover-slider .swiper-slide>img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

.cover-text-contents {
    width: 75%;
}

.cover-title-box {
  	border-radius: 10px;
  	box-shadow: 0 0 10px 0 rgba(0,0,0,.16);
  	padding: 0 0 0 18px;
  	display: inline-block;
}

.cover-title-box:nth-child(n+2) {
	margin: 20px 0 0;
}

.cover-title {
  	font-family: var(--font-family01);
  	font-size: 16px;
  	font-weight: 700;
  	line-height: 1.515;
}

.cover-title strong {
	font-size: 23px;
  	font-weight: 700;
}

.cover-title01 strong {
	color: var(--primary);
}

.cover-title02 strong {
	color: var(--tertiary);
}

/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/

.top02-contents {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
  	gap: 30px;
}

.top02-title-box:after {
    content: "";
    display: block;
    width: 100%;
  	max-width: 86px;
    height: 54px;
    position: absolute;
    top: 50%;
    right: 0;
  	left: 0;
  	margin: auto;
    transform: translateY(-50%);
    transition: .3s;
  	z-index: 0;
}

.top02-title-box01:after {
    background: url(/system_panel/uploads/images/deco-orange.svg)no-repeat center;
  	background-size: contain;
}

.top02-title-box02:after {
    background: url(/system_panel/uploads/images/deco-pink.svg)no-repeat center;
  	background-size: contain;
}

.top02-title-box03:after {
    background: url(/system_panel/uploads/images/deco-purple.svg)no-repeat center;
  	background-size: contain;
}

.top02-title-box04:after {
    background: url(/system_panel/uploads/images/deco-blue.svg)no-repeat center;
  	background-size: contain;
}


/*-----------------------------------------------------------
top03
-----------------------------------------------------------*/

.top03-imgbox01 {
    aspect-ratio: 271 / 307;
}

.top03-imgbox02 {
    aspect-ratio: 272 / 307;
}

/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/

.top04-btn-row {
	flex-direction: column;
}
  
.top04-btn {
	width: 100% !important; 
	margin: 20px 0 0;
}

/*-----------------------------------------------------------
背景
-----------------------------------------------------------*/

.top-fix-img-box {
	height: 85vh;
}

/*-----------------------------------------------------------
top05
-----------------------------------------------------------*/


/*-----------------------------------------------------------
top06
-----------------------------------------------------------*/


/*-----------------------------------------------------------
top07
-----------------------------------------------------------*/



/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:375px) {

}/* min-width: 375px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:414px) {
  
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/  
  
.cover-title {
    font-size: 18px;
}

.cover-title strong {
	font-size: 26px;
}



}/* min-width: 414px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:576px) {
  
  
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/  
  
.cover-title {
	font-size: 20px;
}

.cover-title strong {
	font-size: 35px;
}
  
  
/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/  

.top02-contents {
	grid-template-columns: repeat(2, 1fr);
  	gap: 10px;
}
  
.top02-text-box {
	font-size: 13px;  
}
  
/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/
  
.top04-btn-row {
	flex-direction: row;
}
  
.top04-btn {
	margin: 0;
	width: 47.7% !important;  
}
  

}/* min-width: 576px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 768px) {
  
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/  
  
.cover-slider .swiper-slide {
    aspect-ratio: 1920 / 960 !important;
}
  
.cover-text-contents {
    width: 64%;
}

.cover-title {
	font-size: 22px;
}

.cover-title strong {
	font-size: 38px;
}


/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/  

.top02-contents {
  	gap: 35px;
}

  
.top02-text-box {
	font-size: 16px;  
}

/*-----------------------------------------------------------
背景写真
-----------------------------------------------------------*/
  
.top-fix-img-box {
	height: 100vh;
}


}/* min-width: 768px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:992px) {
  
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/  
  
.cover-title {
	font-size: 23px;
}

.cover-title strong {
	font-size: 40px;
}


/*-----------------------------------------------------------
top03
-----------------------------------------------------------*/
  


}/* min-width: 992px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 1024px) {

/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/  
  
.cover-title {
	font-size: 33px;
}

.cover-title strong {
	font-size: 50px;
}
  


/*-----------------------------------------------------------
top03
-----------------------------------------------------------*/

.top03-imgbox01 {
    aspect-ratio: 353 / 400;
}

.top03-imgbox02 {
    aspect-ratio: 354 / 400;
}
  
/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/

.top04-item {
	width: 48.5% !important;  
}
  
}/* min-width: 1024px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1200px) {
  
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/  
  
.cover-title {
	font-size: 43px;
}

.cover-title strong {
	font-size: 60px;
}


/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/  

.top02-contents {
	grid-template-columns: repeat(4, 1fr);
  	gap: 6px;
}
  
.top02-text-box {
	font-size: 14px;  
}

}/* min-width: 1200px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1400px) {

  
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/
  
.cover-text-contents {
    bottom: 19% !important;
}
  
/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/

.top02-title-box {
    font-size: 22px !important;
}
  
.top02-text-box {
	font-size: 16px;  
}
  
/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/

.top04-item {
	width: 47.7% !important;  
}
  

}/* min-width: 1400px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1500px) {
  
/*-----------------------------------------------------------
cover
-----------------------------------------------------------*/  
  
.cover-title {
	font-size: 53px;
}

.cover-title strong {
	font-size: 70px;
}
  
/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/  

.top02-contents {
  	gap: 10px;
}
  
.top02-item {
  	padding: 60px 10px !important;
  	border-radius: 120px 120px 10px 10px !important;
}
  
  
/*-----------------------------------------------------------
top04
-----------------------------------------------------------*/  
  
.top04-item {
  	padding: 110px 15px !important;
	border-radius: 120px 120px 10px 10px !important;
}

}/* min-width: 1500px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1600px) {
  
/*-----------------------------------------------------------
top03
-----------------------------------------------------------*/
  
.top03-left {
	width: 67.09% !important;
}

.top03-right {
	width: 24.68% !important;
}

  
}/* min-width: 1600px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1700px) {
  
/*-----------------------------------------------------------
top02
-----------------------------------------------------------*/  

.top02-contents {
  	gap: 35px;
}
  
.top02-text-box {
	font-size: 18px;  
}

}/* min-width: 1700px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */ 