@charset "UTF-8";



/* btn */



@media screen and (min-width: 768px){
	.br-sp {display: none; }
}
@media screen and (max-width: 767px) {
	.br-pc {display: none; }
}



/* style */

/* 共通 */
p{
    font-feature-settings: "palt";
    margin-bottom: 0;
	letter-spacing: 0,05em;
}
h3{
    font-feature-settings: "palt";
    
	letter-spacing: 0,05em;
}

sup {
    font-size: 10px;
    vertical-align: top;
}

.sheetmask {
	font-size: 16px;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

.sheetmask section {
	width: 100%;
	height: 100%;
	padding: 5rem 0;
	padding-inline: min(5vw, 30px);
}
@media screen and (max-width: 767px) {
	.sheetmask section {
		padding: 4.2rem 0;
		padding-inline: min(5vw, 30px);
	}
}

.sheetmask section article {
	width: 1200px;
	margin: 0 auto;
	position: relative;
	text-align: center;
	
}

@media screen and (max-width: 1200px) {
	.sheetmask section article {
		width: 100%;
	}
}
@media screen and (max-width: 767px) {
	.sheetmask section article {
		width: 90vw;
		margin: auto;
	}
}

.sheetmask section article .contents {
	margin-bottom: 3rem;
}

/* 見出し */

.head-border {
    display: flex;
    align-items: end;
	
	margin-bottom: min(9vw, 90px);
	margin-top: min(2vw, 44px);
}
 
.head-border:before,
.head-border:after {
    content: "";
    height: 2px;
    flex-grow: 1;
    background-color: #333333;
}
 
.head-border:before {
    margin-right: 2rem;
	margin-bottom: 16px;
}
 
.head-border:after {
    margin-left: 2rem;
	margin-bottom: 16px;
}
@media screen and (max-width: 767px) {
	.head-border:before,.head-border:after {
		
	}
	
	.head-border figure {
		width: 169px;
	}
	.desc02 .head-border figure {
		width: 86px;
	}

	.head-border:before,
.head-border:after {
    
    height: 1px;
    
}
}


.small_caption {
	font-size: 10px;
	vertical-align: top;
}

.main-titleimg{
	margin-bottom: min(9vw, 70px);
}


@media screen and (max-width: 767px) {
.main-titleimg{
	width: 294px;
	margin-inline: auto;
}
}

.main-copy{
	font-size: clamp(18px, 3.2vw, 26px);
	display: inline-block;
	position: relative;
	font-weight: 500;
	margin-bottom: min(2vw, 10px);
}

.main-copy ::before {
    left: -1.2em;
    content: "";
    position: absolute;
    top: 20%;
    display: inline-block;
    transform: scale(-1, 1);
    width: 1.4em;
    height: 1.4em;
    background-image: url(../img/title-r.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.main-copy ::after {
    right: -1.2em;
    content: "";
    position: absolute;
    top: 20%;
    display: inline-block;
    width: 1.4em;
    height: 1.4em;
    background-image: url(../img/title-r.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;

}

.main-title{
	margin-bottom: min(12vw, 70px);
}
/* kv */

.sheetmask section.kv {
	background: linear-gradient(to bottom right, #E2F2F5, #A6DAEB);
	padding: 0;
}
.sheetmask section.kv img{
	width: 100%;
}

.sheetmask section.kv article {
	
}
@media screen and (max-width: 767px) {
	.sheetmask section.kv article {
		width: 100%;
		
	}
}

.sheetmask section.kv article picture {
	display: block;
	margin-bottom: 1rem;
}

.sheetmask section.kv article .kv_text {
	display: block;
	text-align: right;
	font-size: 1.2rem;
	
}
@media screen and (max-width: 767px) {
	.sheetmask section.kv article .kv_text {
		font-size: 0.8rem;
		padding: 0 1.5rem;
	}
}


.contents_problem {
	display: flex;
	justify-content: center;
    align-items: center;
	column-gap: min(6vw, 72px);
}
@media screen and (max-width: 767px) {
.contents_problem {
	display: block;
	column-gap: min(6vw, 72px);
}
}


.contents_problem-in{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
}

.contents_problem-title{
	display: inline-block;
    background: #195EC4;
    color: #ffffff;
    font-size: clamp(18px, 2.2vw, 24px);
	font-weight: 600;
    padding-top: 10px;
    padding-bottom: 12px;
    padding-inline: 30px;
    border-radius: 30px;
	margin-bottom: min(4vw, 28px);
}
.contents_problem-list--in figure{
	padding-bottom: 12px;
	
}
.contents_problem-list--in_text {
	
	
}


.contents_problem-list .small_caption{
	vertical-align: 60%;
}

.contents_problem-list li{
	display: grid;
	grid-template-columns: 36px 1fr;
	text-align: left;
	font-size: clamp(18px, 2.2vw, 26px);
	align-items: center;
	column-gap: 20px;
	font-weight: 600;
	background: #E4F6FF;
	padding: 22px 0 27px;
    padding-inline: min(4vw, 32px);
	border-radius: 8px;

    margin-bottom: 22px;

}

.asta{
	font-family: "Yu Gothic Medium", "Yu Gothic", "Hiragino Kaku Gothic Pro", verdana, meiryo, sans-serif;
	font-weight: 400;
}

.w-line{
	display: inline;
	background: linear-gradient(transparent 60%, #ffffff 10%);
}
.contents_problem-list--in p{
	display: inline;
	
}

.main_note{
	font-family: "Noto Sans JP", sans-serif;
	text-align: right;
	font-size: 10px;
	
}

@media screen and (max-width: 767px) {

	.contents_problem-list .small_caption{
		vertical-align: 50%;
	}

	.contents_problem-list li{
	max-width: 392px;
    margin-inline: auto;
	column-gap: 6px;

}

	.contents_problem-pro img{
		max-width: 270px;
		margin-inline: auto;
	}

	.contents_problem-list--in figure{
		max-width: 362px;
		margin-inline: auto;
		
	}

	.contents_problem-list--in figure {
		padding-bottom: 7px;
		width: 66%;
	}

}



/* contents1 */
.desc01{
	background: #DAF3FF;
	text-align: center;
}

.desc01 h3{
	font-size: clamp(20px, 3.2vw, 32px);
	color: #195EC4;
	font-weight: bold;
	margin-bottom: min(5vw,30px);
}

.desc_text{
	font-size: clamp(14px, 3.2vw, 20px);
	color: #333333;
	margin-bottom: min(10vw,60px);
}

.desc_text-mb{
	font-size: clamp(14px, 3.2vw, 20px);
	color: #333333;
	margin-bottom: 8px;
}

.desc01_cont01{
	margin-bottom: min(14vw,110px);
}
.desc01_cont02{
	margin-bottom: min(14vw,110px);
}
.desc01_cont03{
	margin-bottom: min(14vw,110px);
}
.desc01_cont03 .small_caption{
	vertical-align: 120%;
	margin-bottom: min(5vw,60px);
}



.desc01_cont01-item01{
	max-width: 768px;

	font-family: "Noto Sans JP", sans-serif;
    color: #333333;
    font-size: clamp(16px, 3.2vw, 20px);
	font-weight: 600;
	text-align: left;

	display: flex;
	grid-template-columns: 356px 1fr;
	align-items: center;
	background: #ffffff;
	border-radius: 20px;
	
    margin-inline: auto;
	padding-block: min(8vw,46px);
    padding-inline: min(6vw,50px);
	gap: 40px;

	margin-bottom: min(6vw, 30px);
}
.desc01_cont01-item01_inner{
	text-align: center;
}


.desc01_note{
	font-family: "Noto Sans JP", sans-serif;
    text-align: right;
    font-size: 10px;
	max-width: 776px;
	margin-bottom: min(3vw, 42px);
	margin-inline: auto;
}

@media screen and (max-width: 767px) {
	.desc01_cont01-item01 {
    
		border-radius: 10px;
	}
	.small_caption {
    
		vertical-align: 23%;
	}

	.desc01_cont03 .small_caption{
		vertical-align: 70%;
		
	}

	.desc01_cont01-item01{
	display: block;
	text-align: center;
	margin-bottom: min(6vw,30px);
}
}


.desc01_cont01-item02_inner{
	display: flex;
	justify-content: center;
    align-items: center;
	column-gap: min(6vw, 20px);
}


@media screen and (max-width: 767px) {
	.desc01_cont01-item02_inner {
		display: grid;
        gap: 20px;
        row-gap: min(6vw, 72px);
		
	}

	.dot{
		transform: rotate(90deg);
	}

}
.desc01_cont01-item02_inner-item01{
	background: #ffffff;
	display: inline-block;
    padding-top: min(6vw, 30px);
	padding-bottom: min(6vw, 36px);
    padding-inline: min(10vw, 57px);
    border-radius: 20px;
	
}
.desc01_cont02-item01_inner-item01{
	background: #ffffff;
	display: inline-block;
	padding-top: min(6vw, 30px);
	padding-bottom: min(6vw, 36px);
    padding-inline: min(10vw, 57px);
    border-radius: 20px;
}

.desc01_cont03-item01_inner{
	max-width: 1030px;
    margin-inline: auto;

	display: flex;
	justify-content: center;
    
	column-gap: min(6vw, 20px);
}


.desc01_cont03-item01_inner-item01{
	background: #ffffff;
	padding-top: min(6vw, 30px);
	padding-bottom: min(6vw, 36px);
    padding-inline: min(10vw, 57px);
    border-radius: 20px;
}

@media screen and (max-width: 767px) {
.desc01_cont03-item01_inner {
	display: block;
}

.desc01_cont01-item02_inner-item01{
    border-radius: 10px;
}
.desc01_cont02-item01_inner-item01{
    border-radius: 10px;
}
.desc01_cont03-item01_inner-item01{
    border-radius: 10px;
}
}
.desc01_item-title{
	
	font-family: "Noto Sans JP", sans-serif;

	background: #195EC4;
    color: #ffffff;
    font-size: clamp(18px, 3.2vw, 22px);
	font-weight: 600;
    padding-top: min(2vw, 10px);
    padding-bottom: min(2.4vw, 12px);
    padding-inline: 30px;
    border-radius: 30px;
	margin-bottom: min(3vw, 28px);
}


.small{
	
    font-size: clamp(13px, 2.2vw, 16px);
	
}


.desc01_img-title{
	color: #195EC4;
	font-weight: 600;
	font-family: "Noto Sans JP", sans-serif;
	font-size: clamp(14px, 3.2vw, 20px);
	margin-bottom: 8px;
}

.desc01_cont04-item01_inner{
	display: flex;
	justify-content: center;
    align-items: center;
	column-gap: min(7vw, 80px);
	margin-bottom: min(4vw, 110px);
}
@media screen and (max-width: 767px) {
	.desc01_cont03-item01_inner-item01{
	margin-bottom: 26px;
}


	.desc01_cont01-item01{
	column-gap: min(1vw, 20px);
}
}



.desc02{
	text-align: center;
	font-family: "Noto Sans JP", sans-serif;
}

.desc02 .head-border:before {
    margin-right: 4rem;
	margin-bottom: 16px;
}
 
.desc02 .head-border:after {
    margin-left: 4rem;
	margin-bottom: 16px;
}

.desc02 h3{
	font-size: clamp(20px, 3.2vw, 32px);
	color: #195EC4;
	font-weight: bold;
	margin-bottom: min(6vw,30px);
}

	

.desc02_cont01 h3{
	font-family: "Noto Serif JP", serif;
	display: inline-block;
	position: relative;
	margin-bottom: min(7vw, 44px);
}

.desc02_cont01 h3 ::before {
    left: -3.6em;
    content: "";
    position: absolute;
    top: 20%;
    display: inline-block;
    transform: scale(-1, 1);
    width: 4em;
    height: 4.4em;
    background-image: url(../img/title-r.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.desc02_cont01 h3 ::after {
    right: -3em;
    content: "";
    position: absolute;
    top: 20%;
    display: inline-block;
    width: 4em;
    height: 4.4em;
    background-image: url(../img/title-r.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;

}



.desc02_cont01-item01{
	    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
	margin-bottom: min(3vw,10px);
	max-width: 1100px;
	margin-inline: auto;
}

.desc02_cont01-item01_inner{
	max-width: 363px;
	margin-inline: auto;
}

.desc02_cont01-item01_inner-item{
	display: grid;
    font-size:  14px;
    grid-template-columns: max-content 1.2fr;
    align-items: center;
    gap: 15px;
	margin-top: 1em;
	text-align: left;
}



.desc02_cont01-item02 figure{
	margin-bottom: min(3vw,20px);
}
.desc02_cont01-item02 img{
	width: 19px;
}

.desc02_cont01-text{
	font-size: 20px;
	font-weight: 600;
	display: inline;
	background: linear-gradient(transparent 60%, #F8EF90 10%);
	
}


@media screen and (max-width: 767px) {
	.desc02_cont01-item01{
		grid-template-columns: 1fr;
		gap: 6vw;
	}
	.desc02_cont01-item02 img{
		width: 35px;
	}

	.desc02_cont01-item01_inner-item{
		gap: 6px;
	}
	    .desc02_cont01-item01_inner-item img {
        width: 92%;
    }
}

.desc02_cont01 h3 .small_caption{
	vertical-align: 120%;
}


.desc02_cont01-note{
	
	font-size: clamp(10px, 2vw, 14px);

	margin-top: min(5vw,20px);
	margin-bottom: min(10vw, 110px);
}

.desc02_cont02{
	background: #FFFDE8;
	max-width: 1130px;
	margin-inline: auto;
	padding-block: min(8vw,60px);
	padding-inline: min(5vw, 20px);
	border-radius: 20px;
}

.desc02_cont02 h3{
	font-size: clamp(22px, 4vw, 36px);

}
.desc02_cont02 span{
	font-size: clamp(18px, 4vw, 30px);

}
.desc02_cont02 picture{
	margin-left: 2vw;

}

.item_box{
	font-family: "Noto Sans JP", sans-serif;

	display: flex;
	justify-content: center;
	align-items: center;

	gap: 106px;
}


.item_name {
	margin-bottom: 3rem;
    line-height: 1.5;

}
.item_name h3{
	font-size: clamp(20px, 4vw, 25px);
	font-weight: 600;
	line-height: 1.7;

}
.item_name span{
	font-size: clamp(30px, 4vw, 35px);
	font-weight: 600;
}

.naiyou{
	align-items: center;
    display: flex;
    justify-content: flex-start;
    margin-bottom: 8rem;
    font-size: 1.5rem;
}
.naiyou dt{
	background: #eee;
    margin-right: 0.8rem;
    padding: 0.2rem 1rem;
}
.naiyou dd{
	margin-right: 1rem;
}

@media screen and (max-width: 767px) {
	.desc02_cont01 h3 .small_caption{
		vertical-align: 66%;
	}


	.item_pic img{
		width: 64%;
		margin-bottom: 3rem;
	}
	.item_box{
	display: block;

}
	.naiyou{
	
    margin-bottom: 4rem;
    
}

}