/*main.css*/
	html { 
		font-size: 62.5%;
		scroll-behavior: smooth;
	}
	body{
		width: 100%;
		color: #333333;
		font-family: fot-tsukuardgothic-std, "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "Yu Gothic Medium", sans-serif;
		font-weight: 400;
		font-style: normal;
		font-feature-settings: 'palt' 1;
		background-color: #FFFFFF;
		overflow-x: hidden;
	}

	.font-notosansjp-r{
		font-family: "noto-sans-cjk-jp", sans-serif;
		font-weight: 400;
		font-style: normal;
	}
	
	main{
		overflow-x: hidden;
	}

	p{
		font-size: 1.8rem;
		line-height: 1.8;
		margin-bottom: 3rem;

	}
	.size-16{
		font-size: 1.6rem;
		line-height: 1.6;		
	}
	.size-18{
		font-size: 1.8rem;
		line-height: 1.8;		
	}
	.size-20{
		font-size: 2.0rem;
		line-height: 1.3;;		
	}
	.size-26{
		font-size: 2.6rem;
		line-height: 2.6;		
	}
	.size-28{
		font-size: 2.8rem;
		line-height: 2.8;		
	}
		
	img{
		max-width: 100%;
	}
	


	.bold{
		font-weight: 700;
	}
	
	.mb-50{
		margin-bottom: 50px;
	}
	.mb-80{
		margin-bottom: 80px;
	}


	a,a:hover,a:active{
		color: #FF7F8B;
	}

	a.link-btn {
	  display: block;
	  margin: 0 auto;
	  background-color: #F56E7B;
	  border-radius: 50px;
	  padding: 0 0 10px 0;
	  color: #fff;
	  font-size: 3.2rem;
	  font-weight: 600;
	  width: 500px;
	  text-decoration: none;
	  line-height: 1.2;
	  transition: 0.5s;
	}
	a.link-btn.sublabel {
		letter-spacing: 0px;
		padding: 20px;
	}
	a.link-btn .btn-label-small{
		font-size: 1.8rem;
	}
	a.link-btn>img{
		height: 60px;
	}
	a.link-btn:hover{
		transition: 0.5s;
		background-color: #FF425D;
	}

	nav.bg-light {
		background-color: rgba(255,255,255,1.0)!important;
	}	
	nav.navbar-light .navbar-nav .nav-link {
		color: #333333;
	}
	nav.navbar-light .navbar-nav .nav-link:hover {
		color: #000000;
	}
	nav .nav-link{
		font-size: 1.8rem;
	}
	nav a.link-btn {
		width:270px;
		font-size: 2.8rem;
		padding: 5px;
	}
	
	
	header{
		width: 100%;
	}
	header .header-inner{
		padding: 20px 0;
		width: 1160px;
		margin: 0 auto;
	}
	header .header-inner .logo{
		display: block;
		height: 70px;
		margin: 0 auto;
	}

	.social-btn-bar{
	    background-color: transparent;
	    position: fixed;
	    top: 100px;
	    right: 0;
	    border-radius: 30px;
	    padding: 5px;
	}
	.social-btn-bar .social-btn{
		display: block;
		width: 56px;
		height: 56px;
		margin-bottom: 15px;
	}
	.social-btn-bar .social-btn:last-child{
		margin-bottom: 0;
	}
	.social-btn-bar .social-btn:hover{
		transition:0.5s;
		opacity:0.7;
	}
	.social-btn-bar .social-btn.x {
		background-color: #000;
		padding: 15px;
		border-radius: 50%;
	}
	
	main{
		position: relative;
	}
	
	
	footer{
		background-color: #FFF2E7;
	}
	footer .footer-inner{
		margin: 0 auto;
		padding: 30px 0;
		width: 1160px;				
	}
	footer .footer-inner .logo{
		display: block;
		height: 50px;
		margin: 0 auto;
	}
	footer .footer-inner .social-btns{
		margin: 30px auto;
	}
	footer .footer-inner .org-name a{
		color: #4E4E4E;
	}
	footer .footer-inner .copyrights{
		font-size: 0.9rem;	
	}
	
	
	
	section{
		background-color: #FFFFFF;
		padding-bottom: 1px;
	}


	section .section-inner{
		margin: 0 auto 30px auto;
		width: 1160px;				
	}
	
	section .section-inner > div .v-middle{
		position: relative;
		top: 50%;
		transform: translateY(-50%);
	}
	
	section .section-inner .left.thumb{
		margin-right: 40px;
	}

	
	.section-title{
		font-size: 3.2rem;
		font-weight: 600;
		line-height: 1.4;
		margin: 0;
		padding: 80px 0;
	}
	.section-title.vertical{
		margin: 0 90px 0 0;
		padding: 0;
	}
	
	
	#top{
		padding-top: 70px;
	}
	
	.main-title{
		font-size: 5.0rem;
		line-height: 1.6;
	}
	.main-title .small{
		font-size: 3.8rem;
	}
	.pc-top{
				
	}
	.pc-top .left{
		width: 600px;		
	}
	.pc-top .right{
		width: calc(100% - 600px);
	}
	.pc-top .right .main-img{
		display: block;
		margin: 0 0 0 auto;
	}



	.picosapo{
		position: relative;
		margin-top: 60px;
	}
	.picosapo > img{
		display: block;	
		width: 120px;
		margin-right: 10px;
	}
	.picosapo > p{
		display: block;
		position: absolute;
		width: 550px;
		top: 50%;
		left: 130px;
		transform: translateY(-50%);
		line-height: 1.4;
		
	}


	
	.target-info{

	}
	.target-info p{
		font-size: 2.2rem;
		line-height: 1.0;
	}
	.target-info p > .current-number{
		font-size: 2.8rem;
	}
	.target-info p.small{
		font-size: 1.6rem;
		line-height: 1.0;
	}

	


	


	
	.introduce{
		margin: 70px 0 50px 0;
	}
	.introduce > .left{
		width: 610px;
		margin-right: 40px;
	}
	.introduce > .left > p{
		line-height: 2.2;
	}
	.introduce > .right{
		width: calc(100% - 610px - 40px);
	}
	
	
	
	
	.bg-blur-center{
		padding: 60px 30px;
		background-image: url("../images/202306/s2-bg.png");
		background-size: 80%;
		background-repeat: no-repeat;
		background-position: center center;
	}
	
	
	.society .section-title{
		padding-bottom: 0;
	}
	

	.society-1 img{
	    display: block;
	    width: 50%;
	    position: relative;
	    margin: 0 0 0 auto;
	}
	
	.society-2 img{
		display: block;
		margin: 0 auto;
		width: 650px;
	}

	.bg-white.what-happened{
		padding: 30px;
	}
	.bg-white.what-happened p{
		margin-bottom: 1rem;
	}
	.bg-white.what-happened p:last-child{
		margin-bottom: 0;
	}
	
	
	.data .data-graph{
		width: 600px;
	}
	
	.counseling .inner-1 p{
		display: block;
	    width: calc(100% - 5vw);
	    margin-left: auto;
	    margin-right: auto;
	}
	.counseling .inner-2 .left{
		width: 600px;
	}
	.counseling .inner-2 .right{
		width: calc(100% - 600px);
	}

	.counseling .inner-3 img{
		width: 1060px;
	}
	.counseling .inner-4 .left{
		width: 660px;
	}
	.counseling .inner-4 .right{
		width: calc(100% - 660px - 40px);
	}
	.counseling .inner-7 .left{
		width: 500px;
	}	
	.counseling .inner-7 .right{
		width: calc(100% - 500px);
	}
	.counseling .inner-8 .left{
		width: calc(100% - 500px);
	}	
	.counseling .inner-8 .right{
		width: 500px;		
	}
	
	
	.support .inner-2 .left{
		width: 530px;
	}
	.support .inner-2 .right{
		width: calc(100% - 530px - 40px);
	}
	.support .inner-2 .right img{
		width: 530px;
	}	

	.btn-block{
		margin-top: 50px;
	}		
	

	
	
	

				
	.message .section-inner{
		background-image: url("../images/202306/s8-img-2.png");
		background-size: 40%;
		background-repeat: no-repeat;
		background-position: bottom 120px right;
	}
	.message .right{
		width: 220px;
		margin: 0 0 0 auto;
	}

	
				

	
	.you-can{
		padding: 20px;	
	}
	.you-can .center{
		margin: 0 20px;
	}

	.you-can .caption{
		width: 310px;
		margin-top: 10px;
	}	
	

	

	

	
	.section-inner .category-btn{
		display: block;
		width: 200px;
		margin: 10px;
	}
	

	.we-need .inner-3 img:first-child{
		position: absolute;
	    right: -20px;
	    width: 70px;
	    top: -30px;
	}
	.we-need .inner-3 img:last-child{
		position: absolute;
	    left: -40px;
	    width: 110px;
	    bottom: -30px;
	}

	.what-we-need dl{
		height: 360px;
		position: relative;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 80%;
	}
	.what-we-need dl:first-child{
		background-image: url("../images/202306/s6-bg-1.png");
	}
	.what-we-need dl:nth-child(2){
		background-image: url("../images/202306/s6-bg-2.png");
	}
	.what-we-need dl:nth-child(3){
		background-image: url("../images/202306/s6-bg-3.png");
	}
	.what-we-need dl:nth-child(4){
		background-image: url("../images/202306/s6-bg-4.png");
	}
	.what-we-need dl:nth-child(5){
		background-image: url("../images/202306/s6-bg-5.png");
	}
	.what-we-need dl:last-child{
		background-image: url("../images/202306/s6-bg-6.png");
	}
	
	.what-we-need dl .dl-inner{
		position: absolute;
		width: 70%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	
	.what-we-need dl dt{
		font-size: 2.4rem;
		line-height: 1.2;
	}
	.what-we-need dl dd{
		font-size: 1.8rem;
	}	



	.picosapo .inner-1 .left{
		width: 330px;
	}
	.picosapo .inner-1 .right{
		width: calc(100% - 330px - 40px);
	}

	

	.voice{
		padding: 20px;
		width: 50%;
	}
	.voice:first-child {
		margin-right: 20px;
		width: calc((100% -20px) * 0.5);
	}
	.voice:last-child {
		margin-left: 0;
		width: calc((100% -20px) * 0.5);
	}
	.voice .illust{
		width: 100px;
	}
	.voice .right{
		padding-left: 10px;
	}
	.voice .title{
		font-size: 2.0rem;
	    margin-bottom: 0;
	    line-height: 1.4;
	}
	.voice .who{
		font-size: 1.6rem;
	}

	section.info{
		scroll-margin-top: 100px;
	}
	
	.note-link-btn{
		display: block;
		position: relative;
		margin: 30px auto 80px auto;
		background-color: #FFFFFF;
		border: 1px solid #3EC4AF;
		border-radius: 40px;
		padding: 15px 60px;
		text-align: center;
		align-items: center;
		transition: 0.3s;
		text-decoration: none;
	}
	.note-link-btn .label{
		display: inline-block;
		margin: 0 60px;
		color: #4E4E4E;
		letter-spacing: 2px;
	}
	.note-link-btn .logo{
		width: 80px;
	}
	.note-link-btn .arrow {
		width: 50px;
		display: block;
	}
	.note-link-btn:hover{
		transition: 0.3s;
		text-decoration: none;
	}
	.note-link-btn:hover > .label{
		color:#777777;
		transition: 0.3s;
	}
	
	
	.instagram h3{
		line-height: 1;
		margin-bottom: 30px;
	}
	.instagram .center{
		margin: 0 40px;
	}
	.instagram .insta-thumb{
		width: 300px;
	}
	
	.last-button{
		padding: 30px 0;
	}
	
	
	.works .inner-1{
		padding: 50px;
	}
	.works .logo{
		width: 420px;
	}
	.works .underline {
	    display: block;
	    border-bottom: 2px solid #FF7F8B;
	    width: 150px;
	    margin: -10px auto 0 auto;
	}
	.works .link-btn.btn-border{
		border: 1px solid #F56E7B;
		background-color: #ffffff;
		color: #F56E7B;
		margin-top: 50px;
		padding: 10px;
	}
	.works .link-btn.btn-border:hover{
		border-color: #FF425D;
		color: #FF425D;
	}


	@media (min-width: 1120px) {
		nav.bg-light{
			padding: 0.5rem 4rem;
		}
	}
	
	
	@media (min-width: 992px) and (max-width: 1119px) {
		
		section{
			padding: 15px;
		}
		section .section-inner{
			width: auto;				
		}		
		.pc-top .left{
			width: calc(100vw * 0.5);
			min-width: 510px;
		}
		.pc-top .right{
			width: calc(100vw * 0.5);
		}

		.support .inner-2 .left,
		.support .inner-2 .right,
		.picosapo .inner-1 .left,
		.picosapo .inner-1 .right,
		.counseling .inner-2 .left,
		.counseling .inner-2 .right,
		.counseling .inner-4 .left,
		.counseling .inner-4 .right,
		.counseling .inner-7 .left,
		.counseling .inner-7 .right,
		.counseling .inner-8 .left,
		.counseling .inner-8 .right{
			width: 50%;
		}

		section .section-inner .left.thumb{
			margin-right: 10px;
		}
		
		.bg-triangle {
			border-width: 80px 600px 0 600px !important;
			position: relative;
			left: 50%;
			transform: translateX(-50%);
		}
		
		.voice{
			width: 50%;
		}
		
		nav.navbar-light .navbar-nav .nav-link{
			font-size: 1.4rem
		}


		.you-can .caption{
			width: auto;
		}
		
		footer .footer-inner {
			width: auto;
		}
				
		
	}
		

	@media (max-width: 991px) {

		.mb-80{
			margin-bottom: 50px;
		}
				
		section{
			padding: 15px;
		}
		
		section .section-inner{
			width: auto;				
		}


		section .section-inner > div .v-middle {
		  position: relative;
		  top: auto;
		  transform: none;
		}	
		.support .inner-2 .left,
		.support .inner-2 .right,
		.picosapo .inner-1 .left,
		.picosapo .inner-1 .right,
		.counseling .inner-2 .left,
		.counseling .inner-2 .right,
		.counseling .inner-4 .left,
		.counseling .inner-4 .right,
		.counseling .inner-7 .left,
		.counseling .inner-7 .right,
		.counseling .inner-8 .left,
		.counseling .inner-8 .right{
			width: auto;
		}

		section .section-inner .left.thumb{
			margin-right: 10px;
		}
		
		nav .navbar{
			height: 65px;
		}

		nav .navbar-nav{
			padding-top: 20px;
			padding-bottom: 20px;
		}
		nav .navbar-nav .nav-item{
			margin: 0 auto;
		}
		nav .navbar-light .navbar-toggler{
			border-color: transparent;
		}
		nav .navbar-brand{
			position: relative;
			left: 50%;
			transform: translateX(-50%);
			margin-right: 0;
		}
		
		nav .sp-menu-bottom{
			margin-bottom: 10px;
		}
		nav .sp-social-btn-bar .social-btn{
			width: 46px;
			height: 46px;
			margin-right: 10px;
		}
		nav .sp-social-btn-bar .social-btn:last-child{
			margin-right: 0;
		}
		nav .sp-social-btn-bar .social-btn.x {
			background-color: #000;
			padding: 12px;
			border-radius: 50%;
		}
		
		nav a.link-btn{
			padding: 10px 5px;
			margin-bottom: 20px;
		}
		
			
		a.link-btn {
			border-radius: 80px;
			width: auto;
			min-width: 300px;
			max-width: 500px;
		}

		.sp-top .main-title{
			font-size: 8vw;
			line-height: 1.4;
		}
		.sp-top .main-title .small{
			font-size: 6vw;			
		}
		.sp-top .main-img{
			width: 100%;
			display: block;
			margin: 0 auto;
		}
		.sp-top .picosapo {
			margin-top: 0px;
			position: relative;
			top: -5vw;

		}
		.sp-top .picosapo > img {
			width: 20vw;
			margin-right: 0;
		}
		.sp-top .picosapo > p {
			left: 25vw;
		}
		
		.target-info p{
			margin-bottom: 1.5rem;
		}
		.target-info .btn-block{
			margin-top: 1.5rem;
		}


		.society-1 img{
			width: 85%;
			margin: 0 auto;
		}


		.you-can .caption{
			width: auto;
		}
		
		.we-need .inner-3 img:first-child {
			right: -15px;
			width: 10vw;
		}
		.we-need .inner-3 img:last-child {
			left: -15px;
			width: 18vw;
		}

		section.info{
			scroll-margin-top: 60px;
		}
			
		.note-link-btn .arrow {
			position: absolute;
			right: 50px;
		}
								
		footer .footer-inner{
			width: auto;
		}
	}
	
	@media (max-width: 768px) {

		nav{
			width: 100vw;
		}
		.mb-50{
			margin-top: 30px;
			margin-bottom: 30px;
		}
			
		p{
			font-size: 1.6rem;
			line-height: 1.6;
		}
		.size-26{
			font-size: 2.4rem;
			line-height: 1.4;		
		}
		.section-title{
			font-size: 2.4rem;
			font-weight: 600;
			line-height: 1.3;
			margin: 0;
			padding: 60px 0;
		}		
		section .section-inner .left,
		section .section-inner .right,
		section .section-inner .left.thumb,
		section .section-inner .right.thumb {
			width: auto;
			max-width: 100%;
			margin: 0;
		}
		section .section-inner .left.thumb{
			margin-bottom: 10px;
		}
		section .section-inner > div .v-middle {
		  position: relative;
		  top: auto;
		  transform: none;
		}	
		.support .inner-2 .left,
		.support .inner-2 .right,
		.picosapo .inner-1 .left,
		.picosapo .inner-1 .right,
		.counseling .inner-2 .left,
		.counseling .inner-2 .right,
		.counseling .inner-4 .left,
		.counseling .inner-4 .right,
		.counseling .inner-7 .left,
		.counseling .inner-7 .right,
		.counseling .inner-8 .left,
		.counseling .inner-8 .right{
			width: auto;
			max-width: 100%;
		}
		
		
		.sp-top .main-title{
			font-size: 8vw;
			line-height: 1.4;
			letter-spacing: 0.2rem;
		}
		.sp-top .main-title .small{
			font-size: 6vw;			
		}
		.sp-top .main-img{
			width: 80vw;
			display: block;
			margin: 0 0 0 auto;
		}
		.sp-top .picosapo {
			margin-top: 0px;
			position: relative;
			top: -15vw;

		}
		.sp-top .picosapo > img {
			width: 20vw;
			margin-right: 0;
			margin-bottom: 10px;
		}

		.sp-top .picosapo > p{
			position: relative;
			width: auto;	
			top: auto;
			left: auto;
			transform: none;	
		}

		.bg-blur-center{
			padding: 40px 15px;
			background-image: url("../images/202306/sp/s2-bg.png");
			background-size: contain;

		}

		.bg-white.what-happened h3{
			font-size: 1.8rem;
			line-height: 1.5;
		}
		.bg-white.what-happened p,
		.data .inner-3 p,
		.support .inner-3 p{
			font-size: 1.4rem;
			line-height: 1.5;
		}
	
		.what-we-need dl {
			height: 50vw;
		}
		.what-we-need dl:nth-child(3){
			background-image: url("../images/202306/s6-bg-4.png");
		}
		.what-we-need dl:nth-child(4){
			background-image: url("../images/202306/s6-bg-3.png");
		}

							
		.voice:first-child{
			margin-bottom: 20px !important;
		}

		.you-can .caption{
			display: block;
			margin: 0 auto;
		}

		.you-can .center{
			margin: 0;
		}		
		.you-can .left,
		.you-can .center{
			margin-bottom: 3rem !important;
		}

		.message .section-inner {
			background-size: 300px;
			/* background-position: bottom 180px center; */
			background-position: bottom center;
			padding-bottom: 1px;
		}
		.message .tsuchiya{
			position: relative;
		}
		.message .tsuchiya img{
			width: 130px;
			display: block;
			margin: 0 auto;
		}
		.message .tsuchiya .right{
			position: relative;
		}
		.message .tsuchiya .right .v-middle-force{
			position: relative;
			top: 50%;
			transform: translateY(-50%);
		}
		
		.message .section-inner .inner-3{
			margin-bottom: 200px;
		}
		.counseling h3{
			text-align: center;
			margin-bottom: 20px;
		}
		.counseling .inner-2 .right img{
			margin: 0 auto;
		}
		.counseling .inner-6 p:last-child,
		.counseling .inner-8 .v-middle p:last-child{
			margin: 0;
		}

		
		.works .link-btn.btn-border{
			font-size: 5vw;
			min-width: auto;
		}
		.works .inner-1 {
			padding: 15px;
		}
		
	}


	@media (max-width: 575px) {

		.what-we-need dl dt {
			font-size: 5vw;
			line-height: 1.2;
			letter-spacing: -0.1rem;
		}
		.what-we-need dl dd {
			font-size: 4vw;
		}
	}