@charset "utf-8";
/*--------------------------------------------

	 BASE

--------------------------------------------*/
@-ms-viewport {
	width: auto;
	initial-scale: 1;
}
html {
	font-size: 62.5%;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	min-height: 100%;
}
body {
	width:100%;
	font-family: 'Noto Sans JP', "游ゴシック","YuGothic", "游ゴシック体","メイリオ", Meiryo, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#333;
	font-size: 1.5rem;
	line-height:1.6;
	font-weight: 400;
	letter-spacing: 0.1em;
}
a {
	color:inherit;
	display: block;
	text-decoration: none;
}
table {
	width: 100%;
}
input,
button,
select,
textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}
img {
	vertical-align: middle;
	max-width: 100%;
	width: 100%;
	height: auto;
}
small {
	font-size: 11px;
}
/*--------------------------------------------

	 FONT

--------------------------------------------*/
@font-face {
  font-family: 'LINE Seed Extra Bold';
  src: url('../font/LINESeedJP_OTF_Eb.woff2') format('woff2'),
			 url('../font/LINESeedJP_OTF_Eb.woff') format('woff');
}
.font__LINE_Seed-eb{
	font-family: 'LINE Seed Extra Bold','Noto Sans JP', "游ゴシック","YuGothic", "游ゴシック体","メイリオ", Meiryo, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.font__oswald{
	font-family: 'Oswald','Noto Sans JP', "游ゴシック","YuGothic", "游ゴシック体","メイリオ", Meiryo, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-transform: uppercase;
}
.font__inter{
	font-family: 'Inter','Noto Sans JP', "游ゴシック","YuGothic", "游ゴシック体","メイリオ", Meiryo, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	font-weight: 400;
}
.font__capitalize{
	text-transform:capitalize;
}
.font__uppercase{
	text-transform:uppercase;
}
.font__lowercase{
	text-transform:lowercase;
}
.font__super{
	vertical-align:super;
	font-size:0.5em;
	margin-right: 0.3em;
}
.font__vertical{
	writing-mode:vertical-rl;
}
.font__bold{
	font-weight:bold;
}
.font__yellow{
	color:#F1E544;
}
.font__orange{
	color:#EE8C39;
}

.font__tracking-1{
	margin-right: -0.1em;
}
.font__tracking-2{
	margin-right: -0.2em;
}
.font__tracking-4{
	margin-right: -0.4em;
}
.font__tracking-6{
	margin-right: -0.6em;
}
.font__tracking-8{
	margin-right: -0.8em;
}
.font__line{
	color:#06C755;
}
/* LINEカラー: #06C755 */
/* 背景緑: #3CAF56 */
.font__marker-line{
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: #CDF4DD;
	text-decoration-thickness: 0.5em;
	text-underline-offset:-0.07em;
	text-decoration-skip-ink: none;
	letter-spacing: 0.05em;
}
.font__marker-orange{
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: #FADCC4;
	text-decoration-thickness: 0.5em;
	text-underline-offset:-0.07em;
	text-decoration-skip-ink: none;
	letter-spacing: 0.05em;
}
/*--------------------------------------------

	 COMMON

--------------------------------------------*/
.c__inner{
	margin:0 auto;
	max-width: 1200px;
	padding:0 5%;
}
.c__title{
	display: flex;
	flex-direction: column-reverse;
}
.c__title-ja{
	font-size: 50px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1;
}
.c__title-en{
	font-size: 14px;
	letter-spacing: 0.05em;
	margin-bottom: 1em;
}
.c__plane{
	line-height: 2;
	letter-spacing: 0.1em;
}
.c__of{
	position:relative;
}
.c__of img,
.c__of video{
	width:100%;
	height:100%;
	object-fit: cover;
	position:absolute;
	left:0;
	top:0;
}
.c__of-content img{
	object-fit:contain;
}
.c__cv-btn{
	border:2px solid #fff;
	background:linear-gradient(to bottom ,#EE8C39, #F57734);
	position: relative;
	color: #fff;
	font-weight: 700;
}
.c__cv-btn:after{
	content: "";
	width: 1em;
	padding-top:1.47em;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	background:url(../Image/icon__arrow-02.svg) center no-repeat;
	background-size: contain;
}
@media all and (min-width : 684px ){
	.for_sp{
		display: none;
	}
}
/*--------------------------------------------

	 LOADING

--------------------------------------------*/
.loading{
	width:100%;
	height: 100%;
	position: fixed;
	left: 0;
	top:0;
	background-color: #f0f0f0;
	z-index: 1000;
}
.loading__inner{
	width:100%;
	height: 100%;
	position: absolute;
	left: 0;
	top:0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.loading__logo{
	width: 16vw;
}
.loading__logo svg{
	width:100%;
	height:auto;
}
.loading__logo .svg-elem-1 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
}
.loading__logo.active .svg-elem-1 {
  fill: rgb(235, 148, 0);
}
.loading__logo .svg-elem-2 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
}
.loading__logo.active .svg-elem-2 {
  fill: rgb(83, 50, 41);
}
.loading__logo .svg-elem-3 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}
.loading__logo.active .svg-elem-3 {
  fill: rgb(83, 50, 41);
}
.loading__logo .svg-elem-4 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
}
.loading__logo.active .svg-elem-4 {
  fill: rgb(83, 50, 41);
}
.loading__logo .svg-elem-5 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2000000000000002s;
}
.loading__logo.active .svg-elem-5 {
  fill: rgb(83, 50, 41);
}
.loading__logo .svg-elem-6 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
}
.loading__logo.active .svg-elem-6 {
  fill: rgb(83, 50, 41);
}
.loading__logo .svg-elem-7 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4000000000000001s;
}
.loading__logo.active .svg-elem-7 {
  fill: rgb(99, 156, 209);
}
.loading__logo .svg-elem-8 {
  fill: transparent;
  transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
}
.loading__logo.active .svg-elem-8 {
  fill: rgb(235, 148, 0);
}
.loading__logo .svg-elem-9 {
  transition: fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s;
}
.loading__logo.active .svg-elem-9 {
}
/*--------------------------------------------

	 ANIMATION

--------------------------------------------*/
*[data-animation],
*[data-animation]:before,
*[data-animation]:after{
	transition:.8s;
	transition-timing-function: ease-in-out;
}
*[data-delay="100"],
*[data-delay="100"]:before,
*[data-delay="100"]:after{
  transition-delay:.1s;
}
*[data-delay="200"],
*[data-delay="200"]:before,
*[data-delay="200"]:after{
  transition-delay:.2s;
}
*[data-delay="300"],
*[data-delay="300"]:before,
*[data-delay="300"]:after{
  transition-delay:.3s;
}
*[data-delay="400"],
*[data-delay="400"]:before,
*[data-delay="400"]:after{
  transition-delay:.4s;
}
*[data-delay="500"],
*[data-delay="500"]:before,
*[data-delay="500"]:after{
  transition-delay:.5s;
}
*[data-delay="600"],
*[data-delay="600"]:before,
*[data-delay="600"]:after{
  transition-delay:.6s;
}
*[data-delay="700"],
*[data-delay="700"]:before,
*[data-delay="700"]:after{
  transition-delay:.7s;
}
*[data-delay="800"],
*[data-delay="800"]:before,
*[data-delay="800"]:after{
  transition-delay:.8s;
}
*[data-delay="900"],
*[data-delay="900"]:before,
*[data-delay="900"]:after{
  transition-delay:.9s;
}
*[data-delay="1000"],
*[data-delay="1000"]:before,
*[data-delay="1000"]:after{
  transition-delay:1s;
}
*[data-effect="fadeUp"],
*[data-effect="fadeDown"],
*[data-effect="fadeLeft"],
*[data-effect="fadeRight"],
*[data-effect="fadeIn"]{
  opacity:0;
}
*[data-effect="fadeUp"]{
  transform:translateY(60px);
}
*[data-effect="fadeDown"]{
  transform:translateY(-60px);
}
*[data-effect="fadeLeft"]{
  transform:translateX(60px);
}
*[data-effect="fadeRight"]{
	transform:translateX(-60px);
}
*[data-animation="true"][data-effect="fadeUp"],
*[data-animation="true"][data-effect="fadeDown"],
*[data-animation="true"][data-effect="fadeLeft"],
*[data-animation="true"][data-effect="fadeRight"],
*[data-animation="true"][data-effect="fadeIn"]{
	opacity:1;
}
*[data-animation="true"][data-effect="fadeUp"],
*[data-animation="true"][data-effect="fadeDown"]{
	transform:translateY(0);
}
*[data-animation="true"][data-effect="fadeLeft"],
*[data-animation="true"][data-effect="fadeRight"]{
	transform:translateX(0);
}
/*--------------------------------------------

	 HEADER

--------------------------------------------*/
.header{
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 10;
	padding:32px 0;
	transition:all 0.5s;
}
.header__inner{
	max-width: 100%;
	box-sizing: border-box;
	padding-left:2.86%;
	padding-right: 3.33%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.header__logo,
.global__navi-item,
.header__contact{
	opacity: 0;
	transform: translateY(60px);
}
.header__logo{
	width: 210px;
	transition:width .5s, opacity .7s .5s, transform .7s .5s;
}
.header__logo-img{
}
.global__navi-list{
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	font-weight: 700;
	padding-right: 2.8em;
}
.global__navi-item{
}
.global__navi-item:nth-child(1){
	transition:font-size .5s, opacity .7s .7s, transform .7s .7s;
}
.global__navi-item:nth-child(2){
	transition:font-size .5s, opacity .7s .8s, transform .7s .8s;
}
.global__navi-item:nth-child(3){
	transition:font-size .5s, opacity .7s .9s, transform .7s .9s;
}
.global__navi-item:nth-child(4){
	transition:font-size .5s, opacity .7s 1s, transform .7s 1s;
}
.header__contact{
}
.global__navi-item + .global__navi-item{
	margin-left: 2.8em;
}
.global__navi-link{
	padding-right: 1em;
	background:url(../Image/icon__arrow-01.svg) right center no-repeat;
	background-size: 0.54em;
}
.header__contact{
	transition:all .7s 1.1s;
}
.header__contact-link{
	font-size: 1.6rem;
	width:12.625em;
	box-sizing: border-box;
	padding:0.92em;
	text-align: center;
	border-radius: 1.8em;
	transition:all .5s;
}
.header__contact-link:after{
	background-size: 0.42em;
	right: 0.82em;
}
body.loaded .header__logo,
body.loaded .global__navi-item,
body.loaded .header__contact{
	opacity: 1;
	transform: translateY(0);
}

@media all and (min-width : 1025px ){
	.header.scrolled{
		padding:12px 0;
		background-color: #fff;
	  box-shadow: 0 0 15px rgba(81,33,7,0.3);
	}
	.header.scrolled .header__logo{
		width: 160px;
	}
	.header.scrolled .global__navi-list,
	.header.scrolled .header__contact-link{
		font-size: 13px;
	}
	.header.scrolled .header__contact-link{
		padding:0.48em 0;
	}
	.drawer-hamburger{
		display:none;
	}
	.drawer-nav{
		position: static;
		width: auto;
		height:auto;
		background: none;
		overflow: visible;
	}
	.drawer-menu{
		padding:0;
	}
	.drawer__inner{
		display:flex;
		align-items:center;
	}
	.global__navi-list{
		display: flex;
		align-items: center;
	}
	.drawer__copy,
	.drawer__logo{
		display: none;
	}
}
.drawer-open .drawer-overlay{
	display: none;
}
#contents{
}
/*--------------------------------------------

	 FOOTER

--------------------------------------------*/
.footer{
	padding:2.6% 0 1.46%;
}
.footer__inner{
}
.footer__flex{
	display: flex;
	align-items: flex-end;
	justify-content: center;
}
.footer__logo{
	width: 163px;
}
.footer__logo-img{
}
.footer__nav{
	display: flex;
	font-size: 13px;
	letter-spacing: 0.1em;
	padding-left: 4.23em;
	padding-bottom: 0.47em;
}
.footer__ac{
	display: flex;
}
.footer__ac-label{
	padding-top: 0.7em;
	padding-right: 1.7em;
}
.footer__ac-logo{
	width: 126px;
}
.footer__ac-logo_text{
	text-align: right;
	font-size: 0.923em;
}
.footer__service {
	margin-top: 5em;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2.5em
}
.footer__service-title {
	font-weight: 600;
	text-align: center;
	font-size: 1.2em;
}
.footer__service-link {
	display: flex;
	align-items: stretch;
	gap: 4em;
}
.footer__service-item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}
.footer__service-item-caption {
	font-size: 0.923em;
}
.footer__service-img {
	width: auto;
}
.footer__service-img.tsunasou {
	padding: 0.5em 0;
	height: 2.8em;
}
.footer__service-img.filii {
	height: 4.2em;
}
.footer__pp{
	padding-top: 0.7em;
	padding-left: 5.23em;
}
.footer__pp-link{
}
.footer__copyright{
	font-size: 10px;
	padding-top:4.7em;
	text-align: center;
	display: block;
}
/*--------------------------------------------

	TOP MV

--------------------------------------------*/
.top__mv{
	padding:14.6% 0 8.85%;
}
.top__mv-inner{
	max-width: 1508px;
}
.top__mv-flex{
	display: flex;
	align-items: flex-start;
}
.top__mv-text{
	flex:1;
	padding:5.15vw 4vw 8.5vw;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: relative;
}
.top__mv-text > *{
	position: relative;
}
.top__mv-text_bg{
	width: 97.564%;
	position: absolute;
	left: -1.54%;
	top: -6.35%;
}
.top__mv-text_bg-img{
}
.top__mv-logo{
	position: relative;
	width: 29.95vw;
}
.top__mv-logo_copy{
	font-size: 1.5625vw;
	letter-spacing: 0.1em;
	font-weight: 700;
	position: absolute;
	right: 0;
	top: 0;
	line-height: 1;
	transform: translateY(-100%);
}
.top__mv-logo_img{
}
.top__mv-lead{
	font-size: 1.823vw;
	letter-spacing: 0.1em;
	font-weight: 700;
	line-height: 1.857;
	margin-right: -1em;
	margin-top: 1.5em;
	margin-bottom: 0.77em;
}
.top__mv-cv{
	font-size: 1.25vw;
	letter-spacing: 0.1em;
	width: 23.5em;
}
.top__mv-cv_btn{
	border-radius: 1.8em;
	text-align: center;
	box-sizing: border-box;
	padding: 0.84em;
	border-width: 3px;
}
.top__mv-cv_btn:after{
	width: 0.575em;
	right: 1.25em;
}
.top__mv-figure{
	width: 48.3%;
}
.top__mv-img{
}
.top__mv-logo,
.top__mv-lead,
.top__mv-cv{
	opacity: 0;
	transform: translateY(60px);
	transition:all .7s;
}
.top__mv-logo{
	transition-delay: 1.5s;
}
.top__mv-lead{
	transition-delay: 1.6s;
}
.top__mv-cv{
	transition-delay: 1.7s;
}
body.loaded .top__mv-logo,
body.loaded .top__mv-lead,
body.loaded .top__mv-cv{
	opacity: 1;
	transform: translateY(0);
}
.top__mv-figure{
	opacity: 0;
	transition:all 2s 2.2s;
}
.top__mv-message{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 2.5em;
}
.top__mv-message-inner{
	display: flex;
}
.top__mv-message-logo{
	width: 80px;
}
.top__mv-message-text{
	padding-left: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	font-size: 1.8vw;
}
body.loaded .top__mv-figure{
	opacity: 1;
}

/*--------------------------------------------

	TOP PROBLEM

--------------------------------------------*/
.top__problem{
	padding-top: 8.6%;
	background:url(../Image/top__problem-bg.png) left top #3CAF56;
	background-size: 14px;
	position: relative;
	overflow: hidden;
}
.top__problem-tri{
	position: absolute;
	bottom:0;
	width: 50vw;
	padding-top: 20.833vw;
	left: 50%;
}
.top__problem-tri_left{
	transform: translateX(-100%);
}
.top__problem-tri_right{
}
.top__problem-tri svg{
	position: absolute;
	bottom:-1px;
}
.top__problem-tri_left svg{
	right: 0;
}
.top__problem-tri_right svg{
	left: 0;
}
.top__problem-tri path{
	fill:#fff;
}
.top__problem-inner{
	position: relative;
	z-index: 2;
	padding-bottom: 120px;
}
.top__problem-head{
	margin-bottom: 3em;
}

.top__problem-title{
	color: #fff;
	letter-spacing: 0.05em;
	text-align: center;
}
.top__problem-title_to{
	font-size: 25px;
	font-weight: 500;
}
.top__problem-title_main{
	font-size: 40px;
	font-weight: 700;
}
.top__problem-worry{
	font-size: 35px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.05em;
	text-align: center;
}
.top__problem-worry_part{
	display: inline-block;
}
.top__problem-worry_line{
	text-decoration-line: underline;
	text-decoration-style: solid ;
	text-decoration-color: #fff;
	text-decoration-thickness:5px;
	text-underline-offset:0.35em;
}
.top__problem-worry_wave{
	font-size: 1.375em;
	margin-left: -0.2em;
	position: relative;
}
.top__problem-worry_wave:after{
	content: "";
	display: block;
	width: 100%;
	height: 0.2em;
	background:url(../Image/icon__line-wave.svg) center no-repeat;
	background-size: contain;
	position: absolute;
	left: 0;
	bottom:0;
	transform: translateY(100%);
}
.top__problem-worry_number{
	font-size: 1.9em;
	font-weight: 600;
}
.top__problem-worry_ratio{
	font-size: 1.25em;
}
.top__problem-worry_mark{
	font-size: 0.375em;
}
.top__problem-worry_note{
	color: #fff;
	font-size: 12px;
	margin-top: 1em;
	text-align: center;
}
.top__problem-body{
}
.top__problem-lead{
	font-size: 30px;
	text-align: center;
	line-height: 1.67;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.1em;
	padding-top: 2.26em;
	padding-bottom: 0.86em;
}
.top__problem-list{
	display: flex;
	flex-wrap: wrap;
}
.top__problem-item{
	width: calc(92% / 3);
}
.top__problem-item:nth-child(n+4){
	margin-top: 4.6%;
}
.top__problem-item:not(:nth-child(3n+1)){
	margin-left: 4%;
}
.top__problem-item_inner{
	background-color: #fff;
	font-size: 18px;
	border-radius:0.44em;
	padding: 0.83em 1.1em 1.2em;
	text-align: center;
	height: 100%;
  box-sizing: border-box;
}
.top__problem-top{
	display: flex;
	flex-direction: column;
	align-items: center;
}
.top__problem-label{
	font-weight: 700;
	padding:0 0.22em 0.1em;
	letter-spacing: 0.03em;
	margin-bottom: 0.61em;
}
.top__problem-label_small{
	font-size: 0.78em;
}
.top__problem-label_number{
	font-size: 1.11em;
	color: #639CD1;
	font-weight: 500;
	letter-spacing: 0.05em;
}
.top__problem-figure{
	width: 50%;
}
.top__problem-img{
}
.top__problem-bottom{
	line-height: 1.8;
	padding-top: 1.2em;
}
.top__problem-text{
	font-weight: 700;
	letter-spacing: 0.05em;
	margin: 0 -0.6em;
}
/*--------------------------------------------

	TOP SOLUTION

--------------------------------------------*/
.top__solution{
	padding:7.55% 0;
	position: relative;
}
.top__solution-inner{

}
.top__solution-title{
	padding-bottom: 16%;
	text-align: center;
	position: relative;
}
.top__solution-title:before,
.top__solution-title:after{
	content: "";
	display: block;
	position: absolute;
	background-position: center;
	background-repeat:no-repeat;
	background-size:contain;
	bottom: 0;
	z-index: -1;
}
.top__solution-title:before{
	width: 12%;
	padding-top: 26%;
	background-image:url(../Image/top__problem-solution_mobile.svg);
	left: 0;
	transform: translate(-31%,-45%);
}
.top__solution-title:after{
	width: 22.17%;
	padding-top: 22.33%;
	background-image:url(../Image/icon__female.png);
	right: 0;
	transform: translate(42%,-65%);
}
.top__solution-title_upper{
	font-size: 50px;
	letter-spacing: 0.1em;
	font-weight: 700;
  line-height: 1.3;
	padding-bottom: 0.6em;
}
.top__solution-title_bottom{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}
.top__solution-title_bottom:after{
	content: "";
	display: block;
	width: 60vw;
	height: 10px;
	background-color:#CDF4DD;
	position: absolute;
	bottom: .5em;
	z-index: -1;
}
.top__solution-title_bottom-product{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}
.top__solution-product{
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
}
.top__solution-product-img{
	width: 32vw;
	transform: translateY(-15%);
}

.top__solution-title_bottom{
	font-size: 30px;
	font-weight: 700;

}
.top__solution-title-declaration.kerning{
	padding: 0 0.3em;
}

.top__solution-title-strong{
	font-size: 60px;
	position: relative;
}
.top__solution-title-strong:before,
.top__solution-title-strong:after{
	content: "";
	display: block;
	width: 0.15em;
	height: 0.15em;
	border-radius: 50%;
	background-color:#06C755;
	position: absolute;
	bottom: -0.2em;
}
.top__solution-title-strong:before{
	left: 0.43em;
}
.top__solution-title-strong:after{
	left: 1.53em;
}
.top__solution-lead{
	text-align: center;
	position: relative;
}
.top__solution-lead_upper{
	display: flex;
	justify-content: center;
	align-items: center;
}
.top__solution-lead_bottom{
	padding-top: 1em;
	font-weight: 600;
	font-size: 25px;
}
.top__solution-body{
	padding-bottom: 4.6em;
}
/*--------------------------------------------

	TOP FUNCTION

--------------------------------------------*/
.top__function{
	padding:7.8% 0;
	background:url(../Image/top__function-bg.png) left top #EB9400;
	background-size: 38px;
}
.top__function-inner{
}
.top__function-flex{
	position: relative;
}
.top__function-head{
	transition: all 0.3s;
	color: #fff;
}
.top__function-title{
}
.top__function-title-ja{
}
.top__function-title-en{
}
.top__function-nav{
	font-size: 20px;
	font-weight: 500;
	padding-top: 2.6em;
}
.top__function-nav_list{
}
.top__function-nav_item{
	padding-right: 2.2em;
}
.top__function-nav_item + .top__function-nav_item {
	margin-top: 1.25em;
}
.top__function-nav_link{
	display: inline-block;
	border-bottom:2px solid transparent;
	transition:all 0.5s;
}
.top__function-nav_flex{
	display: flex;
	justify-content: flex-start;
}
.top__function-nav_flex > span{
	display: block;
}
.top__function-nav_number{
	font-weight: 600;
	font-size: 0.95em;
	letter-spacing: 0.1em;
	margin-right: 1em;
	width: 1em;
}
.top__function-nav_letter{
	position: relative;
}
.top__function-nav_letter:after{
	content: "";
	display: block;
	width: 1.15em;
	height: 1.15em;
	background:url(../Image/icon__check.svg) center no-repeat;
	background-size: contain;
	opacity: 0;
	transition: opacity 0.5s;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(160%,-50%);
}
.top__function-nav_link.is_active .top__function-nav_link{
	border-color: #fff;
}
.top__function-nav_link.is_active .top__function-nav_letter:after{
	opacity: 1;
}
.top__function-body{
	padding-left: 400px;
}
.top__function-list{
}
.top__function-item{
}
.top__function-item + .top__function-item {
	padding-top: 4%;
}
.top__function-box{
	border:2px solid #3CAF56;
	background-color:#fff;
	border-radius: 0.53em;
	padding:2.52em;
}
.top__function-box_inner{
}
.top__function-item_head{
	display: flex;
	align-items:center;
}
.top__function-item_label{
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	width: 6.47em;
	text-align: center;
	border-radius: 1.03em;
	background-color: #3CAF56;
	font-weight: 700;
	font-size: 1.133em;
	letter-spacing: 0.21em;
	padding: 0.14em;
	box-sizing: border-box;
}
.top__function-item_label > span{
	display: block;
}
.top__function-item_label-number{
	font-weight: 500;
}
.top__function-item_label-letter{
	font-size: 1.117em;
	letter-spacing: 0.21em;
}
.top__function-item_title{
	font-size: 1.67em;
	letter-spacing: 0.1em;
	margin-left: 0.56em;
}
.top__function-item_body{
	display: flex;
	padding-top: 2em;
}
.top__function-figure{
	width: 43%;
}
.top__function-img_01{
}
.top__function-item_text{
	flex:1;
	padding-left: 2.4em;
}
.top__function-item_plane{
}
.top__function-item_option{
	font-size: 0.867em;
	letter-spacing: 0.1em;
	text-indent: -0.5em;
	display: inline-block;
	line-height: 1.76;
}
/*--------------------------------------------

	TOP VOICE

--------------------------------------------*/
.top__voice{
	padding:9.375% 0 7.8%;
	overflow: hidden;
	background-color: #E6F9EE;
}
.top__voice-inner{
	max-width: 1044px;
	position: relative;
}
.top__voice-inner > *{
	position: relative;
	z-index: 2;
}
.top__voice-bg{
	position: absolute;
}
.top__voice-bg_balloon{
	width: 494px;
	height: 433px;
	left: -249px;
	top:-29px;
}
.top__voice-bg_up{
	width: 141px;
	height: 140px;
	right: -176px;
	top:755px;
}
.top__voice-bg_down{
	width: 183px;
	height: 181px;
	left: -249px;
	top:1302px;
}
.top__voice-bg_circle-left{
	width: 329px;
	height: 329px;
	left: -386px;
	top:572px;
}
.top__voice-bg_circle-right{
	width: 507px;
	height: 507px;
	right: -540px;
	top:1416px;
}
.top__voice-bg_img{
	opacity: 0.5;
}
.top__voice-head{
	position: relative;
	text-align: center;
	padding-top: 41px;
	padding-bottom: 24px;
}
.top__voice-title{
}
.top__voice-title-ja{
	color: #3CAF56;
	position: relative;
	z-index: 2;
}
.top__voice-title-en{
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	font-size: 200px!important;
	letter-spacing: 0.2em;
	font-weight:400;
	color: #CDF4DD;
	line-height: 0.8;
}
.top__voice-lead{
	font-size: 20px;
	letter-spacing: 0.1em;
	margin-top: 1em;
	position: relative;
	z-index: 2;
}
.top__voice-body{
	padding-top: 85px;
}
.top__voice-list{
}
.top__voice-item{
	font-size: 16px;
}
.top__voice-item + .top__voice-item{
	padding-top: 4.875em;
}
.top__voice-box{
	border-radius: 0.625em;
	overflow: hidden;
	display: flex;
}
.top__voice-item_head{
	width: 28.54%;
	background:url(../Image/top__voice-item_head-bg.png) left top #3CAF56;
	background-size: 1.5em;
	color: #fff;
}
.top__voice-item_head-inner{
	padding:5.3125em 1em;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.top__voice-item_title{
	font-size: 2.8125em;
	font-weight: 400;
	letter-spacing: 0.14em;
	line-height: 0.9;
	padding-bottom: 0.73em;
	background:url(../Image/top__voice-item_title-bg.svg) center bottom no-repeat;
	background-size: contain;
	margin-right: -0.5em;
}
.top__voice-item_figure{
	width: 11.25em;
	margin-top: 2.875em;
}
.top__voice-img_01{
}
.top__voice-item_name{
	font-size: 1.25em;
	letter-spacing: 0.1em;
	margin-top:0.6em;
	font-weight: 700;
}
.top__voice-item_body{
	flex:1;
	background-color: #fff;
	border:5px solid #3CAF56;
	border-left: 0;
	border-top-right-radius: 0.625em;
	border-bottom-right-radius: 0.625em;
	padding:4.44em 4.81em;
}
.top__voice-item_text{
}
.top__voice-item_text + .top__voice-item_text{
	padding-top: 3.6em;
}
.top__voice-item_lead{
	font-size: 1.5625em;
	letter-spacing: 0.1em;
	color: #3CAF56;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-color: #CDF4DD;
	text-decoration-thickness: 0.12em;
	text-underline-offset:0.3em;
	text-decoration-skip-ink: none;
	padding-left: 1.88em;
	background:url(../Image/icon__balloon.svg) left top 0.4em no-repeat;
	background-size: 1.24em;
  margin-right: -1em;
}
.top__voice-item_plane{
	line-height: 2;
	letter-spacing: 0.1em;
	padding-top: 1.575em;
}
/*--------------------------------------------

	TOP PRIVACY

--------------------------------------------*/
.top__privacy-inner{
	padding-top: 5em;
	padding-bottom: 5em;
}
.top__privacy-title {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1em;
}
.top__privary-title-check {
	width: 5vw;
}
.top__privacy-title-text{
	display: flex;
	flex-direction: column;
	font-size: 30px;
}
.top__privacy-lead{
	padding-top: 2em;
	text-align: center;
	font-size: 25px;
	font-weight: 500;
}
.top__privacy-body{
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 5em 0 0;
}
.top__privacy-annotation{
	padding-top: 1em;
	font-size: 15px;
	text-align: center;
}
.top__privacy-obtained{
	border: 2px solid #3CAF56;
	padding: 1em 2em;
	border-radius: 5px;
	display: flex;
	gap: 2em;
}
.top__privacy-obtained-text{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.top__privacy-obtained-text-privacy_mark{
	font-size: 20px;
	font-weight: 600;
	background-color: #EDEDED;
	padding: 0.5em 1em;
	border-radius: 1.2em;
	display: inline-block;
}
.top__privacy-obtained-text_privacy-text-lead{
	padding-top: .5em;
	font-size: 25px;
	font-weight: 700;
	text-align: center;
}
.top__privacy-obtained-image{
	display: flex;
	gap: 2em;
	justify-content: center;
	img {
		width: 10vw;
	}
}
.top__privacy-obtained-image-item{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.top__privacy-obtained-image-caption{
	text-align: center;
	font-size: 12px;
	letter-spacing: 0.1em;
}
/*--------------------------------------------

	TOP ABOUT LINE

--------------------------------------------*/
.top__about-line-inner{
	max-width: 900px;
	padding: 5em 0;
}
.top__about-line-title{
	font-size: 30px;
	text-align: center;
}
.top__about-line-sub{
	display: inline-block;
	transform: scale(0.8);
}
.top__about-line-text{
	font-size: 18px;
	padding: 2em 0;
}

.top__about-line-btn{
	display: flex;
	justify-content: center;
	padding: 2em 0;
}
.top__about-line-link{
	background-color: #06C755;
	color: #fff;
	width: 22.5em;
	max-width: 100%;
	box-sizing: border-box;
	text-align: center;
	border-radius: 1.8em;
	padding:0.85em;
	font-weight: 700;
	letter-spacing: 0.1em;
	margin: 0 auto;
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
}
.top__about-line-caption{
	text-align: center;
}
/*--------------------------------------------

	TOP CV

--------------------------------------------*/
.top__cv{
	background-color: #EB9400;
	position: relative;
	padding:7.5% 0 5%;
	color: #fff;
}
.top__cv:before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background:url(../Image/top__cv-bg.png) left top;
	background-size: 196px;
	mix-blend-mode: screen;
}
.top__cv-inner{
	position: relative;
	z-index: 2;
}
.top__cv-box{
	text-align: center;
	position: relative;
}
.top__cv-box:before,
.top__cv-box:after{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.top__cv-box:before{
	left: 0%;
	width: 134.63px;
	height: 304.2px;
	background-image: url(../Image/top__bg-female.png);
}
.top__cv-box:after{
	right: 0%;
	width: 155.3px;
	height: 308.9px;
	background-image: url(../Image/top__bg-male.png);
}
.top__cv-lead{
	font-weight: 700;
	font-size: 50px;
	letter-spacing: 0.1em;
	position: relative;
  z-index: 2;
}
.top__cv-lead_small{
	font-size: 0.7em;
}
.top__cv-plane{
	font-size: 1.2em;
	padding-top: 1em;
}
.top__cv-btn{
	font-size: 1.6em;
	margin-top: 2.58em;
}
.top__cv-link{
	background-color: #fff;
	border:3px solid #EB9400;
	color: #333;
	width: 22.5em;
	max-width: 100%;
	box-sizing: border-box;
	text-align: center;
	border-radius: 1.8em;
	padding:0.85em;
	font-weight: 700;
	letter-spacing: 0.1em;
	margin: 0 auto;
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
}
