@charset "utf-8";
/*--------------------------------------
	copyright : yuyu design.
--------------------------------------*/

@import url(reset.css);
@import url(common.css);
@import url(../libs/fontawesome/css/all.min.css);
@import url(../libs/aos/aos.css);
/* @import url(../libs/OwlCarousel/assets/owl.carousel.min.css); @import url(../libs/OwlCarousel/assets/owl.theme.default.min.css); */
/* @import url(../libs/lightGallery/css/lightgallery.min.css); */
/* @import url(../libs/Remodal/remodal.css); @import url(../libs/Remodal/remodal-default-theme.css); */


/*
 page
==============================*/





/* policy --------------------------------------------------------------------------------*/
#policy {}

/* workPolicy ----------*/
#workPolicy {}
#workPolicy .policy_list { margin-top: 4rem; }
#workPolicy .policy_list li {}
#workPolicy .policy_list li .p { text-align: center; }
#workPolicy .policy_list li .p img { max-width: 20rem; border-radius: 100%; }
#workPolicy .policy_list li .tw { margin-top: 4rem; }
#workPolicy .policy_list li .tw h3 { text-align: center; font-size: 2.6rem; }

/* articlesOfIncorporation ----------*/
#articlesOfIncorporation {}
#articlesOfIncorporation .w { background-color: rgba(37, 61, 125, 0.07); }
#articlesOfIncorporation .w .in { padding: 3rem 4rem; }
#articlesOfIncorporation h3 { position: relative; margin-top: 1rem; font-size: 2.4rem; background-color: #253D7D; color: #FFF; padding: 1.5rem; line-height: 1; transition: all 0.3s ease-out; }
#articlesOfIncorporation h3:hover { cursor: pointer; opacity: 0.7; }
#articlesOfIncorporation h3::before { content: "\f078"; font-size: 1.6rem; line-height: 1; color: #FFF; top: 2rem; right: 2rem; position: absolute; font-family: 'Font Awesome 5 Pro'; font-weight: 400; }
#articlesOfIncorporation h3.open::before { content: "\f077"; opacity: 0.4; }
#articlesOfIncorporation h4 { font-size: 2rem; color: #253D7D; margin-top: 2em; }
#articlesOfIncorporation h4:first-child { margin-top: 0; }
#articlesOfIncorporation h5 { font-size: 1.6rem; font-weight: bold; margin-top: 1.5em; }
#articlesOfIncorporation h5:first-child { margin-top: 0; }
#articlesOfIncorporation .w p { font-size: 1.6rem; }
#articlesOfIncorporation .n { margin-left: 1em; }





/* officer --------------------------------------------------------------------------------*/
#officer {}

/* greeting ----------*/
#greeting {}
#greeting p { margin-top: 2em; text-indent: 1em; }
#greeting .pw { display: flex; justify-content: end; align-items: end; gap: 4rem; }
#greeting .pw p { max-width: 18rem; }
#greeting .pw img { width: 100%; }
#greeting .pw .name { text-align: right; white-space: nowrap; }
@media screen and (max-width:480px) { /* s */
	#greeting .pw { gap: 2rem; }
}

/* memberList ----------*/
#memberList {}
#memberList .member_list {}
#memberList .member_list li { display: grid; grid-template-columns: 20rem 1fr; padding: 1rem 2rem; }
#memberList .member_list li:nth-child(odd) { background-color: rgba(37, 61, 125, 0.07); }
#memberList .member_list li span {}
#memberList .member_list li small { display: inline-block; }
#memberList .member_list li .d { font-size: 80%; font-weight: bold; line-height: 3.6rem; }
#memberList .member_list li .n {}
@media screen and (max-width:480px) { /* s */
	#memberList .member_list li { grid-template-columns: 1fr; }
	#memberList .member_list li .n { padding-left: 1em; }
	#memberList .member_list li .n small { display: block; }
}





/* information --------------------------------------------------------------------------------*/
#information {}

/* infoList ----------*/
#infoList {}





/* admission ----------*/
#admission {}

/* aboutAdmissionProcedure ----------*/
#aboutAdmissionProcedure {}
#aboutAdmissionProcedure .box1 { max-width: 96rem; margin: auto; margin-top: 3rem; }
#aboutAdmissionProcedure .list.-ol { display: grid; grid-template-columns: 1fr; gap: 2rem; counter-reset: number 0; }
#aboutAdmissionProcedure .list.-ol > li { list-style: none; display: flex; gap: 2rem; align-items: start; margin-left: 0; }
#aboutAdmissionProcedure .list.-ol > li::before { width: 6rem; text-align: center; content: counter(number); flex-shrink: 0; border-radius: 10rem; counter-increment: number 1; display: block; background-color: #253D7D; color: #FFF; line-height: 1; padding: 0.5rem 1rem; }
@media screen and (max-width:480px) { /* s */
	#aboutAdmissionProcedure .list.-ol > li::before { width: 3rem; }
}

/* admissionApplicationForm ----------*/
#admissionApplicationForm {}
#admissionApplicationForm .box2 { max-width: 96rem; margin: auto; margin-top: 3rem; }
#admissionApplicationForm .list { display: grid; grid-template-columns: 1fr; gap: 2rem; counter-reset: number 0; }
#admissionApplicationForm .list > li { list-style: none; display: flex; gap: 2rem; align-items: start; }
#admissionApplicationForm .list > li span.t { width: 10rem; text-align: center; content: counter(number); flex-shrink: 0; border-radius: 10rem; counter-increment: number 1; display: block; background-color: #253D7D; color: #FFF; line-height: 1; padding: 0.5rem 1rem; }
#admissionApplicationForm .zip { display: flex; gap: 1rem; align-items: center; }
#admissionApplicationForm .zip .bt span { white-space: nowrap; padding: 0.7em 1em; }

/* form ----------*/
form table { max-width: 96rem; margin: auto; margin-top: 3rem; }
form table th, form table td { padding-bottom: 3rem; }
form table th { text-align: left; white-space: nowrap; }
form table td { padding-left: 2rem; }
form table td .required { margin-top: 1rem; display: inline-block; white-space: nowrap; background-color: #D52F2F; color: #FFF; line-height: 1; font-size: 1.4rem; font-weight: bold; padding: 0.5rem 1rem; border-radius: 0.5rem; }
form table td .wpcf7-radio { display: grid; grid-template-columns: 1fr; gap: 2rem; }
form table td .wpcf7-list-item { line-height: 1.4; display: flex; align-items: center; gap: 1rem; }
form table td label { line-height: 1.4; display: flex; align-items: center; gap: 1rem; }
form table td .wpcf7-form-control-wrap { display: grid; align-items: center; }
form .btw { text-align: center; }
form .btw input[type=submit], .bt.-submit { font-weight: bold; border: navajowhite; background-color: #253D7D; color: #FFF; border-radius: 10rem; padding: 1rem 3rem; }
form .btw input[type=button] { margin-right:60px; border:navajowhite; background-color: #ccc; color: #000; border-radius: 10rem; padding: 1rem 3rem; }
input[type=text], input[type=tel], input[type=email], input[type=url], input[type=password], textarea { width: 100%; padding: 1.5rem; border: solid 1px #CDD6DD; }
input::placeholder, textarea::placeholder { color: #888; font-size: 1.6rem; }
input[type=checkbox], input[type=radio] { transform: scale(1.5); }
@media screen and (max-width:480px) { /* s */
	form table { display: flex; flex-flow: wrap; }
	form th, form td { display: inline-block; }
	form table td .required { margin-top: 0.5rem; }
	form .inp { width: 100%; }
}





/* members ----------*/
#members {}

/* regularMemberList ----------*/
#regularMemberList {}

/* supportingMemberList ----------*/
#supportingMemberList {}

/* membersOnly ----------*/
#membersOnly {}





/* loginPage ----------*/
#loginPage {}
#loginPage h3 { text-align: center; font-size: 3rem; color: #253D7D; }
#loginPage h3 span { border-bottom: solid 2px #253D7D; display: inline-block; padding-bottom: 0.5rem; margin-bottom: 3rem; }
#loginPage .login_form { display: grid; grid-template-columns: 1fr; gap: 2rem; }
#loginPage .login_form .iw { display: grid; grid-template-columns: 10rem 1fr; gap: 2rem; }
#loginPage .login_form .iw .t { font-weight: bold; font-size: 1.8rem; padding-top: 1.5rem; }
#loginPage .login_form .iw .i {}
#loginPage .btw { margin-top: 2rem; }

/* loginForm ----------*/
#swpm-login-form {  display: flex; justify-content: center;}
.swpm-login-form-inner {width: fit-content;}
.swpm-text-field.swpm-username-field, .swpm-text-field.swpm-password-field  {width: 100%;}




/* articleDetail ----------*/
#articleDetail {}
#articleDetail .h2 { letter-spacing: 0; }
#articleDetail .info_list { display: flex; gap: 2rem; align-items: center; padding-bottom: 3rem; margin-bottom: 3rem; border-bottom: solid 1px #EEE; }
#articleDetail .info_list .c  { display: flex; align-items: center; }
#articleDetail .info_list .c span { display: inline-block; }
a.button { display: inline; padding: 1rem 4rem; font-size: 2rem; border-radius: 5rem; font-weight: bold; text-decoration: none; line-height: 1; align-items: center; color: #FFF; background-color: #253D7D; }




/* 終わったら消す ----------*/
.swpm-form-row.swpm-username-row {
    /* display: none !important; */
}

