@charset "utf-8";

/* -------------------- section-lower-kv -------------------- */
#lower-kv{
    width: 100%;
     position: relative;
}
.lower-kv-wrap{
    width: 95%;
    margin: 70px 2.5% 60px 2.5%;
    height: min(30vw, 360px);
    background-color: #fff;
    border: 1px solid #1d1d1d;
    border-radius: min(1.666vw, 20px);
    display: flex;
    align-items: center;
    padding: min(1.666vw, 20px) min(1.666vw, 20px) min(1.666vw, 20px) min(3.333vw, 40px);
}
img.lower-kv-img{
    width: min(23.333vw, 280px);
    z-index: 2;
}

#lower-kv h1{
    font-size: min(4vw, 48px);
    line-height: 1.3;
    margin-left: min(1.666vw, 20px);
    position: relative;
    z-index: 2;
}
#lower-kv .h1-sub{
    font-size: min(1.75vw, 21px);
    line-height: 1.3;
    display: block;
}
.attention{
    font-size: min(1.166vw, 14px);
    margin-left: min(1.666vw, 20px);
    text-align: left;
}
.kv-deco{
    font-size: min(13.333vw, 160px);
        -webkit-text-stroke: min(0.116vw, 1.4px) #F5D545;
    text-stroke: min(0.116vw, 1.4px) #F5D545;
      font-family: 'barlow', sans-serif;
  font-weight: 700;
  position: absolute;
  transform: translateY(-50%);
  top:50%;
  right: min(5vw, 60px);
  color: #fff;
  opacity: .6;
  line-height: 1;
  letter-spacing: -0.02em;
}
.breadcrumb-wrap{
	position: absolute;
	left: min(5vw, 60px);
	bottom: -24px;
}
#breadcrumb span{
	margin-right: 6px;
	color: #1d1d1d;
}
#breadcrumb ol{
	display:flex;
	font-size: 10px;
}
@media screen and (max-width: 768px) {
.lower-kv-wrap{
    width: 95%;
    margin: 90px 2.5% 90px 2.5%;
}
}
@media screen and (max-width: 600px) {
.lower-kv-wrap{
    width: 95%;
	height: 140px!important;
    margin:90px 2.5% 24px 2.5%;
    height: auto;
    border-radius: 10px;
    padding: 10px;
    text-align: center;
}
.kv-deco {
    font-size: 56px;
	top:30px;
    -webkit-text-stroke:  1px #F5D545;
    text-stroke: 1px #F5D545;
}

img.lower-kv-img{
    display: inline-block;
    position: relative;
    width: 28vw;
}
#lower-kv h1{
    font-size: 20px;
    margin-left:4px;
}
#lower-kv .h1-sub{
    font-size: 12px;
}
.attention{
    font-size:10px;
}
.breadcrumb-wrap{
	bottom: -18px;
}
}

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

/* ----- section-price ----- */
#service-page img.illust01 {
    top: max(-3.333vw, -40px);
}

/* ----- section-feature ----- */
#feature {
    width: 100%;
    position: relative;
    background-color: #3023E0;
    z-index: 3;
    padding-bottom: min(16.666vw, 200px);
}
.feature-bg {
    background-image: url(/wp-content/uploads/2025/06/bg.webp);
    border-radius: 0 min(2.5vw, 30px) min(2.5vw, 30px) 0;
    position: absolute;
    left: 0;
    width: 97%;
    height: calc(100% - min(16.666vw, 200px));
    margin-right: 3%;
    margin-bottom: min(8.333vw, 100px);
}
.feature-wrap{
    display: inline-flex;
    flex-wrap: wrap;
    width: 94%;
    margin-top: min(5vw, 60px);
    position: relative;
    margin-bottom: min(5vw, 60px);
    z-index: 4;
    row-gap: min(1.666vw, 20px);
}
.feature-item{
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
img.feature-img{
    width: 100%;
    border-radius: min(0.833vw, 10px);
}
.feature-item .text-wrap{
    width: min(30vw, 360px);
}
.feature-item h3{
    font-size: min(2vw, 24px);
    margin-top:min(3.333vw, 40px);
}
.feature-item p{
    text-align: justify;
    margin-top: min(1vw, 12px);
}
@media screen and (max-width: 600px) {
#feature {
    padding-bottom: 120px;
}
.feature-bg {
    border-radius: 0 16px 16px 0;
    height: calc(100% - 30vw) ;
    margin-right: 3%;

}
.feature-wrap {
    flex-direction: column;
    margin-top: 30px;
    margin-bottom: 30px;
    margin-left: 3%;
}
.feature-item{
    width:95%;
    margin: 0 2.5%;

}
.feature-item .text-wrap{
    width: 80%;
}
.feature-item h3{
    font-size: 16px;
    margin-top:20px;
}
img.feature-img{
    border-radius:6px;
}
}


/* ----- section-flow ----- */
#service-page .flow{
    padding-top: min(7.5vw, 90px);
    border-radius: 0 min(3.333vw, 40px) 0 0;
    margin-top: max(-3.333vw, -40px);
}
.deco05{
  top: 0;
}

@media screen and (max-width: 600px) {
#service-page .flow{
    padding-top: 0;
    border-radius: 0 20px 0 0;
    margin-top: -60px;
}
}
/* ----- section-greeting ----- */
#greeting{
    width: 100%;
    padding-top: min(10vw, 120px);
    position: relative;
    background-color: #fff;
    z-index: 3;
    padding-bottom: min(10vw, 120px);
    margin-top: max(-26.666vw, -320px);
    border-radius: 0 min(12.5vw, 150px) 0 0;
}
.greeting-wrap{
    display: flex;
    flex-wrap: wrap;
	position: relative;
	z-index: 2;
}
.greeting-l{
    width: 47.5%;
}
.greeting-r{
    width: 52.5%;
    display: flex;
    align-items: center;
    justify-content: right;
}
img.greeting-img{
    width: 100%;
    border-radius: min(1.333vw, 16px);
}
#greeting .content-wrap{
    width:  min(33.333vw, 400px);
    display: inline-block;
}
#greeting p{
    margin-top: min(3.333vw, 40px);
    text-align: justify;

}
.sign-wrap{
    margin-top: min(2.5vw, 30px);
    text-align: right;
}
.sign span{
    font-size: min(1.166vw, 14px);
    margin-right:  min(1.666vw, 20px);
}
.sign{
    font-size: min(1.5vw, 18px);
    font-weight: 500;
}
.deco10 {
    color: transparent;
    top: 0;
    right: calc(20px + 3vw);
    -webkit-text-stroke: 1px #EBEBEB;
    text-stroke: 1px #EBEBEB;
    opacity: 1;
}
@media screen and (max-width: 600px) {
.greeting-l{
    width: 100%;
    margin-top:90px;
}
.greeting-r{
    width: 100%;
    display: block;
    margin-top:20px;
}
img.greeting-img{
    width: 80%;
    border-radius: 6px;
}
#greeting .content-wrap{
    width: 100%;
}
.sign span{
    font-size: 12px;
    margin-right: 10px;
}
.sign{
    font-size: 15px;
}
#greeting h2{
    position: absolute;
    transform: translateX(-50px);
    left: 50%;
    top:0;
}
}

/* ----- section-works ----- */
#service-page #works{
    background-color: #fff;
}
.no-data{
    margin: auto;
    width: auto;
}
/* ----- section-contact ----- */
#service-page #contact{
    margin-top: 10px;
}

/* ------------------ area-page ------------------ */

/* ----- section-area ----- */
#area-page img.illust04{
    left: 14vw;
    top: max(-3.333vw, -40px);
}

#area-page #contact{
    margin-top: 10px;
}
}

/* -------------------- area-single-page -------------------- */

/* ----- section-area-single ----- */
#area-single{
    padding: 60px 0 150px 0;
    border-radius: 0 min(16.666vw, 200px) 0 0;
    background-color: #ABFF38;
    position: relative;

}

.area-single-wrap{
    width: min(80vw, 960px);
    display: inline-block;
    position: relative;
}
img.area-single-img{
    width: 100%;
    border-radius: 0 min(1.333vw, 16px) min(1.333vw, 16px) min(1.333vw, 16px);
}
.area-single-title{
    width: 200px;
    font-size: min(1.5vw, 18px);
    line-height: 1;
    font-weight: 600;
    padding: min(1vw, 12px) min(1.666vw, 20px);
    background-color: #1d1d1d;
    color: #fff;
    border-radius:min(0.833vw, 10px) min(0.833vw, 10px) 0 0;
}

#area-single-page img.illust01 {
    top: max(-3.333vw, -40px);
}


/* -------------------- price-page -------------------- */

/* ----- section-price ----- */

#price-page #flow {
    padding-top: min(7.5vw, 90px);
    border-radius: 0 min(3.333vw, 40px) 0 0;
    margin-top: max(-3.333vw, -40px);
}
#price-page img.illust08 {
    position: absolute;
    width: min(22.5vw, 270px);
    top: max(-5vw, -30px);
    right: min(10vw, 120px);
    z-index: 8;
}


/* -------------------- works-page -------------------- */

/* ----- section-works ----- */

.lower-bg{
    width: 1280px;
    display: inline-block;
    background-image: url(/wp-content/uploads/2025/06/bg.webp);
    border-radius: min(2.500vw, 30px);
    padding: min(7.500vw, 90px) 0 min(10.000vw, 120px) 0;
    position: relative;
}

#works-page .works-top{
    background-color:#3023E0;
    height: min(11.667vw, 140px);
    display: inline-flex;
    justify-content: center;
    padding-top: min(5.833vw, 70px);
    border-radius: 0 min(3.333vw, 40px) 0 0;
}

.cat-btn-wrap{
    display: flex;
    gap: min(0.833vw, 10px);
}

.cat-btn{
    width: min(7.000vw, 84px);
    height: min(3.333vw, 40px);
    border-radius: min(0.5vw, 6px);
    display: flex;
	flex-wrap:wrap;
    align-items: center;
    justify-content: center;
    font-size:  min(1.25vw, 15px);
    font-weight: 600;
}

.cat-btn.is-active{
background:#fff;
color:#000
}

.btn-slide{
    width: min(3.333vw, 40px);
}

#works-page #works{
    background-color:#3023E0;
    padding-top: 0;
    padding-bottom: min(10vw, 120px);
	border-radius: 0 min(3.333vw, 40px) min(3.333vw, 40px) 0;
}

img.illust07 {
    position: absolute;
    width: min(22.5vw, 270px);
    top: max(-10vw, -120px);
    right: min(2.5vw, 30px);
    z-index:6;
}
.tab-area{
width: 100%;
margin: 0 auto;
}

.tab-btn{
display:none;
}
.tab-btn{
display:none; /*タブの切り替えを制御するラジオボタンを非表示に*/
}
.tab-list-wrap{
padding:0; /*デフォルトの値をクリア*/
margin: 0; /*デフォルトの値をクリア*/
list-style-type:none; /*デフォルトの値をクリア*/
display:flex; /*ボタンを横並びに*/
justify-content:space-between; /*ボタンを横幅いっぱいに配置*/
}
 
.tab-list{
text-align:center;
border-radius: 4px;
background: #c5daff;
box-sizing:border-box; /*borderの値を横幅に含める*/
cursor:pointer; /*オンマウス時にカーソルを指の形に*/
    width: min(7.000vw, 84px);
    height: min(3.333vw, 40px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size:  min(1.25vw, 15px);
    font-weight: 600;
}
 
#tab-btn1:checked ~ .tab-list-wrap #tab-list1,
#tab-btn2:checked ~ .tab-list-wrap #tab-list2,
#tab-btn3:checked ~ .tab-list-wrap #tab-list3,
#tab-btn4:checked ~ .tab-list-wrap #tab-list4,
#tab-btn5:checked ~ .tab-list-wrap #tab-list5,
#tab-btn6:checked ~ .tab-list-wrap #tab-list6{
background:#ffffff; /*対応するボタンにチェックが入ったときに背景を#ffffff（白）に*/
}
.tab-content{
display:none; /*初期状態を非表示に*/
}
#tab-btn1:checked ~ .tab-content-wrap #tab-content1,
#tab-btn2:checked ~ .tab-content-wrap #tab-content2,
#tab-btn3:checked ~ .tab-content-wrap #tab-content3,
#tab-btn4:checked ~ .tab-content-wrap #tab-content4,
#tab-btn5:checked ~ .tab-content-wrap #tab-content5,
#tab-btn6:checked ~ .tab-content-wrap #tab-content6{
display: block;/*対応するボタンにチェックが入ったときに表示*/
}
.w-attention{
	text-align: center;
	font-size: 12px;
}
@media screen and (max-width: 1300px) {
.lower-bg {
    width: 95%;
}
}
@media screen and (max-width: 600px) {
.lower-bg {
    border-radius: 16px;
    padding: 30px 0 30px 0;
}
#works-page #works {
    border-radius: 0 20px 20px 0;
    padding: 10px 0 60px 0;
}

#works-page .works-top {
    padding-top: 20px;
	padding-bottom: 10px;
    border-radius: 0 20px 0 0;
    width: 100%;
}
#works-page .tab-list{
	width: 84px;
}
#works-page .cat-btn{
	width: 84px;
	height: 30px;
}
#works-page .works-top{
	width: 280px;
	height: auto;	
}
.cat-btn-wrap{
        flex-wrap: wrap;
    row-gap: 10px;
    height: 70px;
    gap: 10px;
    justify-content: center;
}

.tab-list {
    width: calc((100% - 20px) / 3);
    height: 30px;
    font-size: 12px;
}
.btn-slide {
    width: 24px;
}
}

/* -------------------- works-list-page -------------------- */

/* ----- section-works-list ----- */

#works-list-page #works{
    padding-bottom: min(13.333vw, 160px);
    border-radius: 0 min(3.333vw, 40px) 0 0;
    padding-top: min(6.666vw, 80px);
}

#works-list-page #works h2.works-title {
    font-size: min(1.5vw, 18px);
    font-weight: 600;
	text-align: left;
}

#works-select{
    padding: min(6.666vw, 80px) 0 min(10vw, 120px) 0;
    width: max(1300px, 90vw);
    border-radius: 0 min(2.5vw, 30px) min(2.5vw, 30px) 0;
    background-image: url(/wp-content/uploads/2025/06/bg.webp);
    margin-bottom: 0;
    position: relative;
}

.works-select-bg {
    background-color: #3023E0;
    position: relative;
    width: 100%;
    margin-top: max(-2.5vw, -30px);
    z-index: 3;
	padding-bottom: min(6.666vw, 80px);
	border-radius: 0 0 min(3.333vw, 40px) 0;
}

#works-select ul.works-wrap{
    display: block;
    overflow: hidden;
}

.select-h3-wrap{
	width: 1080px;
	text-align: left;
	margin-top: min(2.5vw, 30px);
	display: inline-block;
}
h3.select-h3{
	font-size: min(1.5vw, 18px);
	line-height: 1.4;
	color: #0B0B4B;
}
h3.select-h3 span{
	color: #F5D545;
	margin-right: 8px;
}
.works-item a{
    color: #1d1d1d;
}

#works-list-page #contact{
    margin-top: max(-3.333vw, -40px);
}

.works-select-navi{
    position: absolute;
    top: max(-3vw, -36px);
    left: 50%;
    background-color: #007AFF;
    padding: min(1.333vw, 16px);
    border-radius: min(0.833vw, 10px);
    transform: translateX(-50%);
    z-index: 10;
    height: auto;
}


#works-select li.works-item{
    margin: 0 min(2.5vw, 30px);
} 
#works-select .slick-next {
    right: calc(50% - 80px)!important;
}


#works-select .slick-prev {
    left: calc(50% - 30px)!important;
}

#works-select .slick-prev:before{
    content: url(/wp-content/uploads/2025/06/prev-w.svg)!important;
    opacity: 1!important;
}
#works-select .slick-next:before{
    content: url(/wp-content/uploads/2025/06/next-w.svg)!important;
    opacity: 1!important;
}

.no-post-wrap{
    width:1080px;
    text-align:center;
}
.slick-dots li button:before {
    font-size: 60px!important;
    line-height: 20px;
    width: 40px!important;
    content: '-'!important;
    transform: scale(1.5, 1);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

    .slick-prev:before,
    .slick-next:before {
      color: black; /* 矢印の色を指定 */
    }
.slick-next {
    right: calc(50% + 180px)!important;
        top:initial!important;
    bottom: 0!important;
    width: 40px!important;
    height: 40px!important;
    transform: translateX(-50%)!important;
    overflow: visible!important;
}


.slick-prev {
    left: calc(50% - 280px)!important;
    z-index: 2;
    top:initial!important;
    bottom: 0!important;
    width: 40px!important;
    height: 40px!important;
    transform: translateX(-50%)!important;
    overflow: visible!important;
}

.slick-prev:before{
    content: url(../img/prev-g.svg)!important;
    opacity: 1!important;
}
.slick-next:before{
    content: url(../img/next-g.svg)!important;
    opacity: 1!important;
}
.slick-list{
    overflow:visible!important;
}

@media screen and (max-width: 1300px) {
#works-select{
    width: 95%;
}
#works-select ul.works-wrap{
    gap: min(5vw * 0.92, 60px * 0.92);
}
#works-select li.works-item{
    width: min(26.666vw * 0.923, 320px * 0.923);
}

}
@media screen and (max-width: 1200px) {
.no-post-wrap{
    width:85vw;
}
}
@media screen and (max-width: 1080px) {
.select-h3-wrap{
	width: 90%;
	margin: 5%;
}
}

@media screen and (max-width: 600px) {
#works-list-page #works {
    padding-bottom: 40px;
    border-radius: 0 20px 0 0;
    padding-top: 30px;
}
#works-list-page #works h2.works-title {
    font-size: 15px;
}
.works-select-bg{
    padding-top: 60px;
	border-radius : 0 0 20px 0;
}
.works-select-navi {
    top: -45px;
    width: 80%;
    padding: 8px;
    border-radius: 6px;
}
#works-select {
    padding: 70px 0 50px 0;
	border-radius: 0 10px 10px 0;
}
#works-select ul.works-wrap{
        width: 240px;
        display: inline-block;
}
#works-select li.works-item{
    width: 240px;
    margin: 0 30px;
}
.no-post-wrap{
    width:66vw;
}
h3.select-h3{
	font-size: 15px;
}

}

/* -------------------- works-single-page -------------------- */

/* ----- section-works-single ----- */
#works-single{
    width: 100%;
        padding-top: min(6.666vw, 80px);
    position: relative;
    background-color: #3023E0;
    z-index: 3;
    padding-bottom: min(13.333vw, 160px);
    border-radius: 0 min(3.333vw, 40px) 0 0;
}

#works-single .lower-bg{
    background-color: #fff;
    background-image: initial;
    padding: min(7.5vw, 90px) 0;
}

.works-single-wrap{
    position: relative;
    z-index: 4;
}

.works-img-wrap{
    display: inline-flex;
    flex-wrap: wrap;
    gap: 5%;
}

.works-single-item{
    width: 47.5%;
    position: relative;
}

img.works-single-img{
    width: 100%;
    aspect-ratio: 13 / 8;
    height: auto;
    object-fit: cover;
    object-position: center;
    border-radius: min(0.833vw, 10px);
}

.works-single-head{
    position: absolute;
    bottom: 0;
    left: 0;
    width: min(8.333vw, 100px);
    height: min(3.333vw, 40px);
    background-color: #fff;
    font-size: min(1.5vw, 18px);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0 min(0.833vw, 10px) 0 min(0.833vw, 10px);
}

.works-single-title{
    font-size: min(2.333vw, 28px);
    line-height: 1.3;
    text-align: left;
    font-weight: 600;
    margin-top: min(3.333vw, 40px);
    margin-bottom: min(0.833vw, 10px);
    padding-bottom: min(0.666vw, 8px);
    border-bottom: 1px solid #ccc;
}

.single-data-item span{
    font-size: min(1.166vw, 14px);
    width: min(8.333vw, 100px);
    padding: min(0.333vw, 4px) min(1.666vw, 20px);
    background-color: #E3F1FF;
    margin-right: min(0.833vw, 10px);
    white-space: nowrap;
    border-radius: min(0.416vw, 5px);
}

.single-data-wrap{
    display: flex;
    text-align: left;
}

.single-data-item{
    font-size: min(1.333vw, 16px);
    margin-right: min(1.666vw, 20px);
}

.single-text-wrap{
    display: flex;
    background-color: #f2f2f2;
    padding: min(1.666vw, 20px);
    margin-top: min(1.666vw, 20px);
    border-radius: min(0.833vw, 10px);
}

#works-single p{
    text-align: left;
}
#works-single-page #contact{
    margin-top: max(-3.333vw, -40px);
}



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

#works-single{
    border-radius: 0 20px 0 0;
    padding: 40px 0 30px 0;
}

.works-img-wrap{
    justify-content: center;
    row-gap: 16px;
}

.works-single-item {
    width: 80%;
}

img.works-single-img{
    border-radius: 6px;
}
.works-single-head{
    width: 60px;
    height: 22px;
    font-size: 14px;
    border-radius: 0 6px 0 6px;
}
.works-single-title{
    font-size: 18px;
    margin-top: 20px;
    margin-bottom: 8px;
    padding-bottom: 6px;
}
.single-data-item{
    font-size: 12px;
    margin-right: 10px;
}
.single-data-item span{
    font-size: 10px;
    width: 40px;
    padding: 2px 10px;
    margin-right: 4px;
    border-radius: 3px;
}
.single-text-wrap {
    display: block;
    padding: 16px;
    margin-top: 12px;
    border-radius: 6px;
    text-align: left;
}
#works-single-page p{
    margin-top: 8px;
}
#works-single-page #contact {
    margin-top: -20px;
}
}

/* -------------------- voice-page -------------------- */

/* ----- section-voice ----- */
#voice-list{
    width: 100%;
    padding-top: min(6.666vw, 80px);
    position: relative;
    background-color: #3023E0;
    z-index: 3;
    padding-bottom: min(10vw, 120px);
    border-radius: 0 min(3.333vw, 40px) min(3.333vw, 40px) 0;
}

.voice-list-wrap{
    position: relative;
    z-index: 4;
    display: flex;
    flex-wrap: wrap;
    gap: 3.333%;
    margin-top: min(3.333vw, 40px);
    row-gap: min(4.166vw, 50px);
}

.voice-list-item{
    width: 22.5%;
}
#voice-list h2.voice-name {
    background-color: #007AFF;
    font-size: min(1.5vw, 18px);
    font-weight: 600;
    height: min(3.333vw, 40px);
    border-radius: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}
#voice-list .voice-img-wrap{
    border-radius: min(0.833vw, 10px) min(0.833vw, 10px) 0 0;
    height: auto;
    padding-top: min(0.833vw, 10px);
}

#voice-list img.voice-img{
    width: min(13.333vw, 160px);
}

#voice-list .voice-name{
    border-radius: 0;
}

#voice-list p{
    font-size: min(1.166vw, 14px);
}

#voice-list .text-wrap{
   background-color: #fff;
   text-align: justify;
   padding: min(1.666vw, 20px);
   border-radius: 0 0 min(0.833vw, 10px) min(0.833vw, 10px);
}

.pagination{
    display: inline-flex;
    gap: min(1vw, 12px);
    margin-top: min(6.666vw, 80px);
    position: relative;
}

.page-num{
    background-color: #fff;
    border-radius: min(0.5vw, 6px);
    width: min(3.333vw, 40px);
    height: min(3.333vw, 40px);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1d1d1d;
}

.page-active{
    background-color: #B0D2F7;
}

img.illust11{
    position: absolute;
    top: max(-10vw, -120px);
    right: min(5vw, 60px);
    width: min(20vw, 240px);
    z-index: 4;
}

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

#voice-list{
    border-radius: 0 20px 20px 0;
	padding: 40px 0 60px 0;
}

.voice-list-item {
    width: 47.5%;
}

#voice-list img.voice-img {
    width: 120px;
}

#voice-list .text-wrap {
    background-color: #fff;
    text-align: justify;
    padding: 10px;
    border-radius: 0 0 6px 6px;
}

#voice-list p {
    font-size: 12px;
}
#voice-list h2.voice-name {
	font-size: 14px;
	height: 28px;
}
.page-num {
    border-radius: 4px;
    width: 24px;
    height: 24px;
}
}

/* -------------------- voice-single-page -------------------- */

        /* ----- section-voice-single ----- */
        #voice-single{
            width: 100%;
            padding-top: min(6.666vw, 80px);
            position: relative;
            background-color: #3023E0;
            z-index: 3;
            padding-bottom: min(10vw, 120px);
            border-radius: 0 min(3.333vw, 40px) min(3.333vw, 40px) 0;
        }

        #voice-single .lower-bg{
            background-color: #fff;
            background-image: initial;
            padding: min(7.5vw, 90px) 0;
        }

        .voice-single-wrap{
            position: relative;
            z-index: 4;
        }

        .voice-single-title{
            background-color: #E3F1FF;
            display: inline-flex;
            width: 100%;
            padding: min(0.5vw, 6px) min(1.666vw, 20px);
            font-size: min(2vw, 24px);
            border-radius: min(0.833vw, 10px);
        }

        .voice-single-img-wrap{
            display: flex;
            gap: 2.5%;
            margin-top: min(1.666vw, 20px);
        }

        .voice-single-img-main{
            width: 80%;
            position: relative;
            aspect-ratio: 5 / 3;
        }

        .voice-single-img-select{
            width: 17.5%;
        }

        img.voice-single-img{
            width: 100%;
            border-radius: min(0.833vw, 10px);
            position: absolute;
            top: 0;
            left: 0;
            aspect-ratio: 5 / 3;
            object-fit: cover;
            object-position: center;
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        img.voice-single-img.main-active{
            opacity: 1;
        }

        img.voice-single-select-img{
            width: 100%;
            border-radius: min(0.5vw, 6px);
            aspect-ratio: 5 / 3;
            object-fit: cover;
            object-position: center;
        }

        button.voice-single-select{
            margin-bottom: min(1.666vw, 20px);
            border: none;
            background: none;
            cursor: pointer;
            transition: opacity 0.3s ease;
        }

        button.voice-single-select:hover{
            opacity: 0.8;
        }

        .select-active{
            display: none;
        }

        #voice-single p{
            position: relative;
            z-index: 4;
            text-align: justify;
            margin-top: min(1.666vw, 20px);
        }

        @media screen and (max-width: 600px) {
#voice-single{
    border-radius: 0 20px 20px 0;
	padding: 40px 0 60px 0;
}
            .voice-single-title{
                padding: 4px 10px;
                font-size: 16px;
                border-radius: 4px;
            }

            .voice-single-img-wrap{
                flex-wrap:wrap;
                margin-top: 10px;
                gap: 8px;
            }
            .voice-single-img-main {
                width: 100%;
            }
            .voice-single-img-select {
                display: flex;
                width: 100%;
                gap: 2%;
            }
            .voice-single-select{
                width: 32%;
            }
            img.voice-single-img{
                width: 100%;
                border-radius:4px;
            }

            img.voice-single-select-img{
                border-radius: 4px;
            }
        }

/* -------------------- recruit-page -------------------- */

/* ----- section-recruit ----- */

#recruit{
    background-color: #3023E0;
    border-radius: 0 min(3.333vw, 40px) min(3.333vw, 40px) 0;
    padding: min(6.666vw, 80px) 0 min(10vw, 120px) 0;
    position: relative;
}

dl.recruit-wrap{
    display: flex;
    flex-wrap: wrap;
    row-gap: min(0.333vw, 4px);
    margin-top: min(3.333vw, 40px);
    font-size: min(1.333vw, 16px);
}

.recruit-wrap dt{
    width: 25%;
    background-color: #B0D2F7;
    border-radius: min(0.5vw, 6px) 0 0 min(0.5vw, 6px);
    padding: min(1.833vw, 22px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.recruit-wrap dd{
    width: 75%;
    background-color: #fff;
    border-radius: 0 min(0.5vw, 6px) min(0.5vw, 6px) 0;
    padding: min(1.833vw, 22px);
    text-align: left;
}
img.illust08 {
    position: absolute;
    width: min(17.5vw, 210px);
    top: max(-10vw, -120px);
    right: min(7.5vw, 90px);
    z-index: 8;
}
@media screen and (max-width: 600px) {

#recruit{
    border-radius:  0 20px 20px 0;
	padding: 40px 0 60px 0;
}
dl.recruit-wrap{
    row-gap: 0;
    margin-top: 20px;
    font-size: 13px;
}
.recruit-wrap dt{
    width: 100%;
    border-radius: 4px 4px 0 0;
    padding: 8px 16px;
}
.recruit-wrap dd{
    width: 100%;
    border-radius: 0 0 4px 4px;
    padding: 6px 16px;
    margin-bottom: 8px;
}
}

/* -------------------- company-page -------------------- */

/* ----- section-company ----- */

#company{
    background-color: #3023E0;
    border-radius: 0 min(3.333vw, 40px) min(3.333vw, 40px) 0;
    padding: min(6.666vw, 80px) 0 min(8.333vw, 100px) 0;
    position: relative;
}

@media screen and (max-width: 600px) {
#company{
border-radius: 0 20px 20px 0;
padding: 40px 0 60px 0;
}
}

/* -------------------- contact-page -------------------- */

/* ----- section-contact ----- */

#contact-page #contact{
    margin-top: 0;
    padding-top: min(6.666vw, 80px);
    border-radius:  0 min(3.333vw, 40px) 0 0;
}

img.illust12{
    position: absolute;
    top: max(-3.333vw, -40px);
    right: min(20vw, 240px);
    width: min(17.5vw, 210px);
    z-index: 8;
}

@media screen and (max-width: 600px) {
#contact-page #contact{
border-radius: 0 20px 0 0;
padding-top:40px;
padding-bottom: 80px;
}
}

/* ----- section-complete ----- */
#complete{
    width: 100%;
    padding-top: min(6.666vw, 80px);
    position: relative;
    background-image: linear-gradient(175deg, #007AFF, #3023E0);
    z-index: 3;
    padding-bottom: min(17.5vw, 210px);
    border-radius: 0 min(3.333vw, 40px) 0 0 ;
}
.complete-wrap{
    background-color: #fff;
    border-radius: min(2.500vw, 30px);
    display: inline-block;
    width: min(90vw, 1200px);
    padding: min(10vw, 120px) min(5vw, 60px) min(10vw, 120px) min(5vw, 60px);
    z-index: 5;
    position: relative;
}
.thanks-message{
    font-size: min(2.833vw, 34px);
    line-height: 1.4;
    text-align: center;
    position: relative;
    z-index: 4;
    font-weight: 500;
    margin-bottom: min(3.333vw, 40px);
}

@media screen and (max-width: 600px) {
#complete{
    width: 100%;
    padding-top: 40px;
    padding-bottom: 80px;
    border-radius: 20px 20px 0 0 ;
}
.complete-wrap {
   border-radius: 16px;
    width: 90%;
    padding: 30px 0;

}
.thanks-message{
    font-size: 20px;
}
}