@charset "utf-8";

.title03 strong {
    position: relative;
    font-weight: 500;
    padding: 0;
    letter-spacing: 0.03em;
}

.title03 strong:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 30%;
    width: 100%;
    background: var(--quaternary);
    opacity: .5;
    z-index: -1;
}
 
/*-----------------------------------------------------------
SERVICE
-----------------------------------------------------------*/ 

.service03:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 80%;
    bottom: 0;
    left: 0;
    background: url(/system_panel/uploads/images/bg-part01.png) no-repeat top;
    background-size: cover;
    z-index: 0;
}

.service01-left {
	aspect-ratio: 800 / 529;
}

.service01-text-block.intro-text {
    line-height: 2.2;
}

.recommend-contents {
    padding: 80px 15px 100px;
    border-radius: 5px;
    border: 1px solid var(--primary);
}

.recommend-block {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    /* gap: 12px; */
    max-width: 380px !important;
}

/*18px-30px*/
.recommend-contents h2 {
	font-size: clamp(1.125rem, 0.943rem + 0.7767vw, 1.875rem);
}

.recommend-list {
    align-items: center;
}

.check-icon02 {
    max-width: 22px !important;
    margin: 0 5px 0 0 !important;
    width: 4.5% !important;
}

.in-service-wrap {
    padding: 0 15px;
}

.swiper-button-prev {
    max-width: 30px;
    width: 10%;
    height: 30px;
    top: 30%;
    left: 5%;
}

.swiper-button-prev:after {
    content: '';
    width: 100%;
    height: 100%;
    background: url(/system_panel/uploads/images/swiper-arrow-prev.png) no-repeat left center;
    background-size: contain;
}

.swiper-button-next {
    max-width: 30px;
    width: 10%;
    height: 30px;
    top: 30%;
    right: 5%;
}

.swiper-button-next:after {
    content: '';
    width: 100%;
    height: 100%;
    background: url(/system_panel/uploads/images/swiper-arrow-next.png) no-repeat right center;
    background-size: contain;
}

/*-----------------------------------------------------------
コンセプト
-----------------------------------------------------------*/

.concept01-num {
	font-style: italic; 
}

/*16px-20px*/
.concept01-title {
	font-size: clamp(1rem, 0.9393rem + 0.2589vw, 1.25rem);
	font-weight: 500;
}

.concept02:after {
    content: "";
    position: absolute;
    max-width: 983px;
    width: 90%;
    height: 75%;
    border-radius: 0 365px 365px 0;
    top: 0;
    left: 0;
    background-color: #F7EFF0;
    background-size: cover;
    z-index: 0;
}

.service-link {
    padding: 10px;
    transition: all .3s;
}

.service-link:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: radial-gradient(circle,rgba(208, 154, 166, 1) 0%, rgba(251, 248, 246, 1) 100%);
    border-radius: 50%;
    filter: blur(15px);
    z-index: -1;
    transition: all .3s;
}

.service-link:before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle, rgba(232, 183, 194, 1) 0%, rgba(251, 248, 246, 0) 100%);
    border-radius: 50%;
    filter: blur(15px);
    z-index: -1;
    opacity: 0; 
    transition: opacity .3s;
}

.service-link:hover::before {
    opacity: 1; /* ホバーで浮かび上がらせる */
}

.service-link-img-box {
    width: 70%;
    margin: 0 0 10px 0;
}

.service-title {
    font-family: var(--font-family01);
    font-size: clamp(1.125rem, 0.2879rem + 3.5714vw, 2rem);
}


/*-----------------------------------------------------------
商品紹介
-----------------------------------------------------------*/

.check-icon {
    max-width: 22px;
    width: 10%;
    margin: 0px 10px 0 0;
    display: block;
}

/*.product02-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 30px;
}*/

.product02-item-text-box {
    margin: 10px 0 0;
}
  
.product02-item-text-box {
  	line-height: 1.6;
}

/* 20px - 40px */

.product-title {
	font-size: clamp(1.25rem, 0.9466rem + 1.2945vw, 2.5rem);
}

/* 16px - 20px */

.product-sub-title {
	font-size: clamp(1rem, 0.9393rem + 0.2589vw, 1.25rem);
}


/*-----------------------------------------------------------
会社情報
-----------------------------------------------------------*/ 

.company02-deco {
    bottom: 0;
    z-index: -1;
}

.company03-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
}

.company03-right-row {
    margin: 40px 0 0;
}

.company03-img-box03 {
    width: 60%;
    margin: 30px auto 0;
}

.company03-table .text02 {
	line-height: 1.65;  
}

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

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



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

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

@media screen and (min-width:414px) {
  
/*-----------------------------------------------------------

-----------------------------------------------------------*/  



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

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

@media screen and (min-width:576px) {
  
/*-----------------------------------------------------------
SERVICE
-----------------------------------------------------------*/ 

.recommend-block {
    grid-template-columns: repeat(2, 1fr);
    max-width: 890px !important;
    /* gap: 15px; */
}

.swiper-button-prev {
    left: 2%;
}

.swiper-button-next {
    right: 2%;
}
  
/*-----------------------------------------------------------
商品紹介
-----------------------------------------------------------*/ 

/*.product02-grid {
    grid-template-columns: repeat(2, 1fr);
}*/


/*-----------------------------------------------------------
会社情報
-----------------------------------------------------------*/ 
  
.company03-right-row {
    flex-direction: row !important;
}

.company03-img-box03 {
    width: 30%;
    margin: 0;
}
  
.company03-text-block {
    width: 60% !important;
}

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

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

@media screen and (min-width: 768px) {
  
  
/*-----------------------------------------------------------
concept
-----------------------------------------------------------*/  
  
.service-link {
    padding: 20px;
}
  
/*-----------------------------------------------------------
Service
-----------------------------------------------------------*/  
  
.recommend-block {
    max-width: 760px !important;
    /* gap: 20px; */
}
  
.check-icon02 {
    margin: 6px 5px 0 0 !important;
}

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

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

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

/*-----------------------------------------------------------

-----------------------------------------------------------*/

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

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

@media screen and (min-width: 1024px) {
  
/*-----------------------------------------------------------
コンセプト
-----------------------------------------------------------*/  
  
.concept02-row {
    padding: 0 0 150px 0;
}
  
/*-----------------------------------------------------------
Service
-----------------------------------------------------------*/  
.in-service-wrap {
    padding: 0 30px;
}
  
/*-----------------------------------------------------------
商品紹介
-----------------------------------------------------------*/ 

/*.product02-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}*/
  

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

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

@media screen and (min-width:1200px) {
  
/*-----------------------------------------------------------
concept
-----------------------------------------------------------*/ 
  
.concept01-text-box {
	width: 90% !important;
}

.concept01-item {
    border-bottom: 1px solid var(--gray01);
}

/*-----------------------------------------------------------
service
-----------------------------------------------------------*/  

.service01-text-box {
    margin: 60px 0 0 0 !important;
}
  
.recommend-block {
    max-width: 890px !important;
    margin: 60px auto 0 auto !important;
    gap: 0;
}
  
.check-icon02 {
    margin: 0px 10px 0 0 !important;
}

/*-----------------------------------------------------------
会社情報
-----------------------------------------------------------*/
  
.company02-left {
    width: 65% !important;
}
	  
.company02-right {
    width: 34% !important;
}
  
.company02-deco {
    bottom: -10%;
}
  
.company03-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
}
  
.company03-left {
    width: 52% !important;
}
  
.company03-right-row {
    width: 42% !important;
}
  
/*-----------------------------------------------------------
よくある質問
-----------------------------------------------------------*/
  
.answer-text-box {
	width: 93% !important;
}

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

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

@media screen and (min-width:1400px) {
  
/*-----------------------------------------------------------
コンセプト
-----------------------------------------------------------*/
  
.concept01-row {
    margin: 130px 0 0 0 !important;
}

.concept01-litem:nth-child(n+2) {
    margin: 50px 0 0 0 !important;
}

.concept01-num {
    font-size: 50px !important;
}
  
.concept01-text-box {
	width: 92.5% !important;
}
  
.company03-table .company01-th {
    width: 100px !important;
}


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