/*-----------------------*/
/*		   reset_css 		 */
/*-----------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}



/*-----------------------*/
/*		    ALL 		 */
/*-----------------------*/
html{
	font-size: 62.5%;
    scroll-behavior: smooth;
}
body{
	font-family: 'Lato', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
h1{
	font-size: 3rem;
	padding-bottom: 30px;
}
h2{
	font-size: 2rem;
	padding: 10px;
}

main h2{
	font-size: 3.5rem;
	padding-top: 20px;
	padding-bottom: 60px;
}
main h3{
	font-size: 2.5rem;
	padding-bottom: 20px;
	padding-top: 20px;
}
main p{
	font-size: 1.8rem;
	padding-bottom: 10px;
}
section{
	padding: 60px 0;
	text-align: center;
}
main div{
	max-width: 1400px;
	letter-spacing: 2px;
	line-height: 25px;
	margin-bottom: 60px;
}

/*-------------------*/
@media(min-width: 768px){
	main h2{
		font-size: 4rem;
		padding-bottom: 60px;
	}
	main h3{
		font-size: 3.5rem;
		padding-bottom: 20px;
		padding-top: 20px;
	}
	main p{
		font-size: 2.5rem;
		padding-bottom: 10px;
	}
}
/*-----------------------*/
/*		   header 		 */
/*-----------------------*/
header{
	background-image: url(img/header.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	height: 550px;
	width: 100%;
	color: white;
}
nav{
	background-color: none;
	transition: all .5s;
}
nav button{
	padding: 5px 10px !important;
	background-color:rgba(255, 255, 255, 0.1) !important;
	font-size: 1.5rem !important;
}

#menu{
	 background-color: rgba(0, 0, 0, 0.8);
	 font-size: 2.5rem;
	 color: gray;
	 padding: 50px !important;
}
.header.change-color {
    background-color: rgba(0, 0, 0, 0.4);
	color: gray;
}
.head_box{
	background-color:rgba(0, 0, 0, 0.4);
}
.top_logo{
	height: 100px;
	padding-bottom: 30px;
}
/*-------------------*/
@media(min-width: 768px){
	header{
		height: 600px;
	}
	.navbar{
		padding: 0 !important;
	}
	#menu{
		background-color: transparent;
		font-size: 1.5rem;
	 	color: gray;
		padding: 5px !important;
		width: 100% !important;
	}
}



/*-----------------------*/
/*		   summary 		 */
/*-----------------------*/
#summary p{
	letter-spacing: 2px;
	line-height: 50px;
}
#summary span{
	font-weight: bold;
}
/*-------------------*/
@media(min-width: 768px){
	#summary p{
		letter-spacing: 2px;
		line-height: 100px;
	}
}



/*-----------------------*/
/*		   problem 		 */
/*-----------------------*/
#problem{
	background-image: url(img/doors_01.png);
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: white;
	padding: 0;
}
.problem_sen{
	padding-bottom: 60px;
}
.black{
	background-color: rgba(0, 0, 0, 0.6);
	padding: 60px 0;
	margin-bottom: 0;
	max-width: 100%;
}
.problem_box{
	background-color: rgba(255, 255, 255, 0.6);
	border: solid 1px gray;
	padding: 30px 10px 0px 10px;
	margin: 20px 0;
	color: black;
	max-width: 370px;
	line-height: 25px !important;
}
.problem_box i{
	font-size: 5rem;
}
.problem_box p{
	font-size: 2rem;
	padding-bottom: 30px;
}

/*-------------------*/
@media(min-width: 768px){
	.problem_box{
		line-height: 60px;
	}
	.problem_box i{
		font-size: 7rem;
	}
	.problem_box p{
		font-size: 2rem;
		padding-bottom: 30px;
	}

}


/*-----------------------*/
/*		   purpose 		 */
/*-----------------------*/
#purpose img{
	width: 100%;
}
#purpose span{
	font-weight: bold;
}
.purpose_sen{
	padding-bottom: 60px;
}
/*-------------------*/
@media(min-width: 768px){
	.purpose_sen{
		line-height: 40px;
	}
	.left{
		text-align: left;
	}
	.left p{
		font-size: 2rem;
	}
	.right{
		text-align: right;
	}
	.right p{
		font-size: 2rem;
	}
}


/*-----------------------*/
/*	   activities 		 */
/*-----------------------*/
#activities{
	background-image: url(img/laptop.jpg);
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: white;
	padding: 0;

}
.activitie_box{
	background-color: rgba(255, 255, 255, 0.3);
	border: solid 1px gray;
	padding: 30px 10px 30px 30px;
	margin: 20px auto;
	max-width: 370px;
}
.activitie_box h3{
	font-size: 1.8rem;
}
.activitie_box li{
	text-align: left;
	font-size: 1.8rem;
}
.activitie_box i{
	font-size: 5rem;
}
/*-------------------*/
@media(min-width: 768px){
	.activitie_box h3{
		font-size: 2.5rem;
	}
	.activitie_box li{
		text-align: left;
		font-size: 2.5rem;
	}
	.activitie_box i{
		font-size: 7rem;
	}
	.big{
		max-width: 500px;
	}
}

/*-----------------------*/
/*		   members 		 */
/*-----------------------*/
.white{
	background-color: white;
	padding: 60px 0;
	margin-bottom: 0;
	max-width: 100%;
}
#members{
	padding: 0;
}
#members h2{
	margin-bottom: 100px;
}
.member{
	position: relative;
	border:solid 3px gray;
	margin: 0 auto 100px auto;
	max-width: 370px;
}
.member img{
	position: absolute;
	left: 50%;
 	transform: translateY(-70%) translateX(-50%);
	height: 120px;
	width: 120px;
	border-radius: 50%;
}
.member_sen_1{
	margin: 45px 0 10px 0;
}
.member_sen_2{
	margin: 10px;
}
.member_sen_3{
	text-align: left;
	margin: 0 10px 20px 10px;
	font-size: 2rem;
}
/*-------------------*/
@media(min-width: 768px){
		.member_sen_2{
		font-size: 1.5rem;
	}
}


/*-----------------------*/
/*		   merits 		 */
/*-----------------------*/
#merits{
	background-image: url(img/doors_02.jpg);
	background-size: cover;
	background-position: 30%;
	background-attachment: fixed;
	color: white;
	padding: 0;

}
#merits img{
	width: 100%;
	height: 150px;
	object-fit: cover; 

}
.merit{
	margin: 0 auto 100px auto;
}
.merit p{
	text-align: left;
	line-height: 30px;
}
.merits_sen{
	margin-bottom: 20px;
}

/*-------------------*/
@media(min-width: 768px){
	.merit{
		max-width: 370px;
	}
}

/*-----------------------*/
/*		  contact 		 */
/*-----------------------*/
#contact{
	background-color: #EEEEEE;
}
#contact p{
	line-height: 30px;
}
#contact input, #contact textarea{
	font-size: 1.5rem;
}
#contact button{
	background: brown;
	font-size: 2.5rem;
	padding: 5px 50px;
}
form{
	width: 80%;
}
textarea{
	min-height: 150px;
}


/*-----------------------*/
/*		  q_and_a 		 */
/*-----------------------*/
.accordion-container .accordion-title {
	position: relative;
	margin: 0 0 5px 0;
	padding: 10px 100px 10px 20px;
	font-size: 1.5rem;
	font-weight: normal;
	cursor: pointer;
	border: solid 1px #EEEEEE;
	max-width: 1170px;
	text-align: left;
}
.accordion-container .accordion-title:hover,
.accordion-container .accordion-title:active,
.accordion-title.open { 
	background-color: #EEEEEE;
	transition: 0.4s;
}
.accordion-container .accordion-title::after {
	content: "";
	position: absolute;
	top: 60%;
	right: 5%;
 	transform: translateY(-50%);
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-top-color: gray;
}
.accordion-container .accordion-title.open::after {
	content: "";
	position: absolute;
	top: 40%;
	border: 8px solid transparent;
	border-bottom-color: gray;
}
.accordion-content{
	padding: 25px;
	text-align: left;
	margin-bottom: 0;
}
.accordion-content p{
	font-size: 1.5rem;
}



/*-----------------------*/
/*		  footer 		 */
/*-----------------------*/
footer{
	background-color: #EEEEEE;
	width: 100%;
	text-align: center;
	padding: 10px;
	font-size: 1rem
}
/*footer a{
	color: gray;
}

*/