@charset "utf-8";

/*
 Theme Name: 日本保育協会横浜支部
 Theme URI:
 Author: 株式会社GRACE
 Author URI:gr1.jp
 Description:本テーマは株式会社GRACEにて制作されています
 Version: 1.0
 */
/* --- reset css --------------------------------------------------- */
* {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	list-style: none;
}
html,body {
	overflow-x: hidden;
}
body {
	background-color: #F7FCFF;
	background-image: url(/wp-content/themes/nippo/images/background.png);
    background-position: top left;
	background-size: contain;

    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: <weight>;
    font-style: normal;
}
img {
	display: inline-block;
	width: 100%;
	vertical-align: bottom;
}
a {
	display: inline-block;
	text-decoration: none;
}
a:hover  {
	cursor: pointer;
	opacity: .8;
}
button.downloadbtn {
    display: flex;
    align-items: center;
    width: 300px;
    justify-content: center;
    font-weight: 900;
    border: solid 1px #ffffff;
    background-color: #CE1834;
    padding: 12px 0;
    font-size: 16px;
    border-radius: 10px;
    color: #fff;
    box-shadow: #CE1834 0px 0px 0px 4px;
    margin: 30px auto 0;
}
button.downloadbtn img {
    width: 25px;
    margin-right: 5px;
}
button.downloadbtn:hover {
    opacity: .8;
}
header {
	position: fixed;
    background-color: #ffffff;
    left: 20px;
    top: 20px;
    padding: 40px 20px 20px;
    width: 25%;
    max-width: 300px;
    height: calc(100vh - 40px);
    border-radius: 20px;
    box-shadow: rgba(0, 0, 0, .18) 0px 3px 18px;
    z-index: 5;
}
#hummenu {
    display: none;
}
#logo {
	font-size: 20px;
    text-align: center;
    display: block;
    color: #2CB2F5;
}
#logo h1 {
	font-size: 22px;
}
#logo p {
	font-size: 12px;
	color: #8FADBC;
}
.grobal_menu {
	margin: 20px 0;
}
.grobal_menu a {
	display: flex;
	align-items: center;
    padding: 15px 3px;
    border-bottom: solid 1px #D8D8D8;
    justify-content: space-between;
    font-weight: 600;
    color: #0E6996;
}
.grobal_menu a text {
	color: #676767;
	font-size: 10px;
	font-weight: normal;
}
.banner a {
	display: block;
	margin-bottom: 10px;
}
#mv {
	background-image: url(/wp-content/themes/nippo/images/pcmv.jpg);
    height: 100vh;
    width: 100%;
    background-size: cover;
    background-position: center;
}
.abso_menu {
	position: absolute;
    top: 40px;
    left: 100%;
}
.abso_menu a {
	display: block;
	color: #fff;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    line-height: 18px;
    padding: 20px 10px;
    margin-bottom: 5px;
    font-weight: bold;
	text-align: center;
}
.abso_menu a img {
	display: block;
    width: 22px;
    margin-bottom: 5px;
}
.abso_menu a.pdf {
	background-color: #E32F4A;
}
.abso_menu a.booking {
	background-color: #F5810D;
}
.abso_menu a.mail {
	background-color: #0099E2;
}

.sns_links {
	background-color: #21B4E0;
    width: 50px;
    position: fixed;
    top: 5vh;
    right: 0;
    padding: 20px 10px;
    border-radius: 20px 0px 0px 20px;
    z-index: 5;
}
.sns_links a:not(:last-child) {
	margin-bottom: 10px;
    
}


.sec_inner {
	width: calc(100% - 380px);
    margin-left: auto;
	padding: 50px;
}
#mv .sec_inner {
	align-content: flex-end;
	padding: 20px 50px;
	height: 100%;
}
.mvcatch {
	margin-top: auto;
    max-width: 650px;
    width: 80%;
}
.news {
	margin: 20px 0;
}
.news a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background-color: #fff;
	padding: 25px 40px;
	border-radius: 10000px;
}
.news a h4 {
	color: #21B4E1;
    font-size: 20px;
    white-space: nowrap;
    width: 80%;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
}
.news a text {
	width: 20%;
	text-align: right;
	font-size: 12px;
	color: #000000;
}
.mvcomment {
	font-weight: bold;
	color: #fff;
	font-size: 12px;
}



.about_ttl {
	text-align: center;
}
.about_ttl p {
	display: inline-block;
    position: relative;
    font-size: 32px;
    font-weight: 900;
    color: #2CB2F5;
}
.about_ttl p img {
	position: absolute;
    width: 130px;
    top: -50px;
    right: -150px;
}
.about_ttl p span {
	display: block;
    font-size: 16px;
    font-weight: 500;
    color: #8FADBC;
}

img.about_catch {
	display: block;
    width: 70%;
    max-width: 700px;
    margin: 80px auto;
}
.about_txt {
	font-size: 18px;
    text-align: center;
    line-height: 32px;
}



h2.sec_ttl{
	font-size: 160%;
    color: #2AB4F5;
    border-left: solid 8px #CEEFFF;
    padding-left: 15px;
    line-height: 1;
    margin-bottom: 50px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.list_style {
	display: flex;
	flex-wrap: wrap;
}
.list_style li {
	width: 49%;
    background-color: #fff;
    padding: 25px;
    border-radius: 30px;
    box-shadow: rgba(0, 0, 0, .16) 0px 3px 16px;
	margin-bottom: 2%;
}
.list_style li:nth-child(odd) {
	margin-right: 2%;
}
.list_style li h5 {
    font-size: 120%;
    line-height: 1;
    margin-bottom: 5px;
}
.list_style li h5 a {
    color: #000;
}
.list_style li h5 a:hover {
    text-decoration: underline;
}
.list_style_option {
	display: flex;
    padding-bottom: 3px;
}
.list_style_option p {
    font-size: 12px;
    display: flex;
    align-items: center;
    margin-right: 15px;
}
.list_style_option p img {
	display: inline-block;
    width: auto;
    margin-right: 5px;
    height: 15px;
}

.list_style_links {
	display: flex;
	flex-wrap: wrap;
}
.list_style_links a {
	font-size: 12px;
    font-weight: bold;
    color: #fff;
    background-color: #21B4E1;
    padding: 8px 10px;
    text-align: center;
    border-radius: 1000px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 5px 5px 0 0;
}
.list_style_links a.close{
    pointer-events: none;
    filter: grayscale(1);
}
.list_style_links a:last-child {
    margin: 5px 0 0 0;
}
.list_style_links a:before {
	content: "";
    display: block;
    width: 14px;
    height: 11px;
    background-image: url(/wp-content/themes/nippo/images/link.png);
    background-size: contain;
    background-repeat: no-repeat;
	margin-right: 3px;
}

#seinenbu {
    background-color: #edf8ff;
}
.seinenbu_cont {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.seinenbu_cont img {
	width: 40%;
}
.seinenbu_cont p {
	width: 60%;
	padding-left: 30px;
}
.seinenbu_cont p b {
	display: block;
    font-size: 28px;
    font-weight: bold;
    color: #076683;
    line-height: 1.4;
    margin-bottom: 10px;
}
.seinenbu_cont p span {
	display: block;
	text-align: right;
	padding-top: 20px;
}
.seinenbu_cont p span a,
h2.sec_ttl a  {
    font-weight: bold;
    font-size: 14px;
    text-decoration: underline;
    color: #000;
}


.report_style li {
	background-color: #fff;
    box-shadow: rgba(0, 0, 0, .16) 0px 3px 16px;
	padding: 18px 30px;
}
.report_style li:not(:last-child){
    margin-bottom: 10px;
}
.report_style li h5 {
    font-size: 120%;
	display: flex;
	align-items: center;
}
.report_style li h5 a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.report_style li h5 span {
	font-size: 14px;
    width: 70px;
    display: inline-block;
    font-weight: normal;
    color: #fff;
    text-align: center;
    padding: 3px 0;
    border-radius: 5px;
	margin-right: 10px;
}
.report_style li h5 span.event {
    background-color:#F2B717
}
.report_style li h5 span.school {
    background-color: #21B4E0;
}
.report_style li h5 span.meeting {
    background-color:#F25217
}
.single_dl {
    text-align: center;
    width: 100%;
    padding: 50px 0;
}
#member_info .single_dlbtn {
    display: flex;
    align-items: center;
    width: 300px;
    justify-content: center;
    font-weight: 700;
    border: solid 2px #2AB4F5;
    background-color: #ffffff;
    padding: 12px 0;
    font-size: 16px;
    border-radius: 10000px;
    color: #2AB4F5;
    margin: 0 auto;
}
#member_info .single_dlbtn img {
    display: inline-block;
    width: 25px;
    margin-right: 5px;
    height: auto;
    margin: 0 5px 0 0;
}
#member_info .single_dl_info {
    font-size: 12px;
    line-height: 1.4;
    margin: 10px 0 0;
}


#hoikuenlist {
    background-color: #fff;
}
.hoikuen_style {
	display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 20px;
}
.hoikuen_style li h6 {
	font-size: 16px;
	margin-bottom: 3px;
}
.hoikuen_style li a {
    font-size: 12px;
    color: #000;
    display: block;
    line-height: 1;
    margin-top: 10px;
}
.hoikuen_style li a:hover {
	text-decoration: underline;
}
#member .hoikuen_style {
    grid-template-columns: repeat(1, 1fr);
}
#member .hoikuen_style li h6 {
    font-size: 24px;
    margin-bottom: 10px;
    border-bottom: solid 2px #ddd;
    padding-bottom: 10px;
}
#member .hoikuen_style li a {
    font-size: 18px;
    color: #000;
    display: block;
    margin-bottom: 10px;
}
#member .hoikuen_style li a text {
    font-size: 80%;
    color: #555;
    margin-left: 5px;
}


.clientlist_cont {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
.clientlist_cont a {
	width: 15.5%;
	margin: 0 1% 2% 0;
}

footer {
	width: calc(100% - 480px);
    margin: 0 50px 0 auto;
    padding: 50px 50px 5px;
    background-color: #21B4E0;
    border-top-left-radius: 50px;
    border-top-right-radius: 50px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
}
.ft_left {
	width: 40%;
}
.ft_right {
	width: 40%;
}
footer #logo {
	font-size: 20px;
    text-align: left;
    color: #ffffff;
}
footer #logo p {
    color: #d2e2e9;
}
footer a#tel {
	display: flex;
	align-items: flex-start;
	margin: 15px 0;
}
footer a#tel img {
	width: 30px;
}
footer a#tel p {
	color: #fff;
    font-size: 30px;
    font-weight: bold;
	line-height: 1;
}
footer a#tel p span {
	display: block;
    font-weight: normal;
    font-size: 12px;
	margin-top: 5px;
}
footer .grobal_menu {
    margin: 0;
}
footer .grobal_menu a,
.grobal_menu a text {
    color: #ffffff;
}
.ft_copy {
	font-size: 12px;
    color: #fff;
    text-align: center;
    display: block;
    width: 100%;
    margin-top: 100px;
}



#bottommv  {
    position: relative;
    width: 100%;
    background-color: #000;
}
#bottommv img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    opacity: .8;
}
#bottommv h4 {
    color: #fff;
    width: calc(100% - 380px);
    margin-left: auto;
    display: block;
    text-align: center;
    font-size: 50px;
    font-weight: 900;
    padding: 15vh 0 5vh;
    position: relative;
    z-index: 2;
}
#pankuzu {
    background-color: #21B4E1;
}
#pankuzu .sec_inner{
    padding: 10px 50px;
    font-size: 12px;
    color: #fff;
}
#pankuzu .sec_inner a {
    color: #fff;
    text-decoration: underline;
}


.bottomsec_ttl {
    font-size: 50px;
    font-weight: 900;
    color: #086683;
    line-height: 1.2;
    text-align: center;
    margin-bottom: 30px;
}
.bottomsec_ttl span {
    color: #F5810E;
    font-size: 110%;
}
.section_cont_txt {
    font-weight: 300;
    text-align: center;
    line-height: 1.8;
    font-size: 16px;
}
.visual_list {
    display: flex;
    justify-content: space-between;
    padding: 50px 0 80px;
}
.visual_list li {
    width: 31%;
}
.visual_list li .visual_list_img {
    position: relative;
}
.visual_list li .visual_list_img img {
    border-radius: 0px 20px 20px 20px;
    box-shadow: rgba(0, 0, 0, .16) 0px 3px 20px;
}
.visual_list li .visual_list_img text {
    position: absolute;
    bottom: -30px;
    left: -25px;
    color: #CEEFFF;
    font-size: 70px;
    transform: rotate(-5deg);
}
.visual_list li:not(:first-child) .visual_list_img text {
    bottom: inherit;
    top: -30px;
}
.visual_list li h3 {
    font-size: 22px;
    padding: 10px 0;
}
.visual_list li:not(:last-child) h3{
    text-align: right;
}
.visual_list li h3 span {
    color: #21B4E1;
    font-size: 110%;
}
.visual_list li:nth-child(2) {
    margin-top: 60px;
}
.visual_list li:nth-child(3) {
    margin-top: 30px;
}
.allison {
    font-family: "Allison", cursive;
    font-weight: 400;
    font-style: normal;
}
.other_links h5 {
    text-align: center;
    font-size: 22px;
    font-weight: 600;
    color: #076683;
    margin-bottom: 30px;
}
.other_links_cont {
    display: flex;
}
.other_links_cont li {
    width: 33.33%;
}
.other_links_cont li a {
    color: #000;
    margin-bottom: 15px;
}
.other_links_cont li a:hover {
    text-decoration: underline;
}



#voice,
#interview {
    background-image: url(/wp-content/themes/nippo/images/bluebk.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}
.voice_ttl {
        text-align: center;
        display: block;
        font-size: 54px;
        font-weight: 800;
        color: #fff;
}
.voice_ttl span {
    display: block;
    color: #DBF4FF;
    font-size: 90%;
}
.voice_list li {
    display: flex;
    box-shadow: #115676 0px 8px 0px;
    background-color: #fff;
    padding: 30px;
    border-radius: 30px;
    margin-top: 30px;
    align-items: flex-start;
}
.voice_list li img {
    width: 200px;
    height: auto;
}
.voice_list_info {
    padding-left: 20px;
}
.voice_list_info h6 {
    font-size: 30px;
}
#interview .voice_list_info h6 {
    color: #2AB4F5;
    font-size: 24px;
}
.voice_list_info h6 span {
    color: #2AB4F5;
    font-size: 60%;
    margin-right: 10px;
}
.voice_list_info p {
    padding-top: 15px;
    font-size: 14px;
    line-height: 26px;
}
.voice_list_info p strong {
    color: #F5810E;
}
.interview_name {
    display: block;
    width: 100%;
    text-align: right;
    margin-top: 10px;
    font-weight: bold;
}

.sec_minittl {
    text-align: center;
    display: block;
    color: #2AB4F5;
    font-size: 34px;
}
.sec_minittl:after {
    content:"";
    display: block;
    width: 30px;
    height: 8px;
    background-color: #CEEFFF;
    margin: 5px auto 0;
}
table {
    border-collapse: collapse;
    width: 100%;
    text-align: left;
}
#company table tr {
    border-bottom: solid 1px #DEDEDE;
}
#company table tr th,
#company table tr td {
    padding: 20px;
}
#company table tr th {
    color: #808080;
    font-size: 18px;
    font-weight: 500;
}
#company table tr td {
    font-size: 20px;
    font-weight: 600;
}


.bt_seinenbu_cont_txt img {
    margin-top: 30px;
}

.bt_seinenbu_visual_ttl {
    text-align: center;
    font-size: 36px;
    color: #21B4E1;
    margin-top: 50px;
}
.bt_seinenbu_visual_ttl span {
    display: block;
    font-size: 22px;
    color: #076683;
    font-weight: 800;
    line-height: 1.2;
}
.bt_seinenbu_visual_ttl b {
    position: relative;
}
.bt_seinenbu_visual_ttl b:before,
.bt_seinenbu_visual_ttl b:after {
    content: "";
    background-color: #21B4E1;
    display: inline-block;
    width: 3px;
    height: 100px;
    position: absolute;
    bottom: 0;
}
.bt_seinenbu_visual_ttl b:before {
    left: -40px;
    transform: rotate(-15deg);
}
.bt_seinenbu_visual_ttl b:after {
    right: -40px;
    transform: rotate(15deg);
}
#bt_seinenbu .visual_list {
    padding: 50px 0 0;
}
#bt_seinenbu .visual_list li h3 span {
    color: #F5810E;
    font-size: 110%;
}
#bt_seinenbu .visual_list li .visual_list_img text {
    color: #FFDFBF;
}




#member_info .sec_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
#member_info h2 {
    display: block;
    width: 100%;
    margin-bottom: 20px;
    font-size: 28px;
    align-items: center;
}
#member_info h2 span {
    display: block;
    font-weight: 500;
    font-size: 14px;
    color: #666;
}
#member_info h2 text {
    font-size: 50%;
    color: #fff;
    padding: 5px 20px;
    border-radius: 5px;
    margin-right: 10px;
}
#member_info h2 text.event {
    background-color:#F2B717
}
#member_info h2 text.school {
    background-color: #21B4E0;
}
#member_info h2 text.meeting {
    background-color:#F25217
}
#member_info table {
    width: 500px;
}
#member_info table tr {
    display: flex;
    margin-bottom: 0;
    border-bottom: solid 1px #DEDEDE;
    padding: 15px 0;
    align-items: center;
}
#member_info table th,
#member_info table td {
    display: block;
}
#member_info table th {
    color: #2AB4F5;
    font-size: 90%;
    width: 90px;
    margin-right: 10px;
}
#member_info table td {
    color: #000;
    font-size: 100%;
}
#member_info table td a {
    font-weight: 700;
    color: #000;
    text-decoration: underline;
}
#member_info table td a:hover {
    opacity: .5;
}

#member_info iframe,
#member_info img {
    width: calc(100% - 520px);
    height: auto;
}
#member_info iframe {
    height: 300px;
}
#member_info p {
    margin: 30px 0;
    line-height: 1.6;
}

.member_links {
    display: flex;
    align-items: center;
    width: 270px;
    justify-content: center;
    font-weight: 900;
    border: solid 2px #CE1834;
    background-color: #fff;
    padding: 12px 0;
    font-size: 18px;
    border-radius: 10px;
    color: #CE1834;
    box-shadow: #CE1834 0px 5px 0px;
    margin: 50px auto 0;
}
button[type="button"] {
    background: none;
    border: none;
    text-align: center;
    width: 100px;
    margin: 20px auto 0;
    display: block;
    font-weight: bold;
    text-decoration: underline;
    color: #5a5a5a;
    font-size: 14px;
}
#member_info .member_links img {
    width: 25px;
}
.member_links:hover {
    background-color: #CE1834;
    color: #fff;
}
.member_links img {
    width: 20px;
    margin-right: 5px;
}
.member_links:hover img {
    filter: brightness(10);
}






#contact form {
    display: block;
    background-color: #fff;
    box-shadow: rgba(0, 0, 0, .16) 0px 3px 36px;
    padding: 50px 5%;
    border-radius: 20px;
    margin-top: 50px;
}
#contact form table tr th {
    font-size: 18px;
    color: #007BB5;
    padding: 5px 0 0 0;
    width: 200px;
}
#contact form table tr td {
    padding: 5px 0;
}
#contact form table tr td input,
#contact form table tr td textarea {
    width: 100%;
    display: block;
    padding: 15px 20px;
    border-radius: 10px;
    border-color: #21B4E1;
    font-size: 18px;
    font-weight: bold;
}
#contact form table tr td input#category,
#contact form table tr td input#nursery {
    background-color: #F0F0F0;
    border: none;
}
#contact .section_cont_txt {
    text-align: center;
}
#contact .section_cont_txt b {
    font-size: 120%;
    font-weight: bold;
}

.topback a {
    font-size: 16px;
    color: #333;
    font-weight: 500;
    text-decoration: underline;
    display: block;
    width: 80px;
    text-align: center;
    margin: 20px auto 0;
}

#resources .section_cont_txt {
    text-align: left;
}
.resources_ttl {
    display: flex;
    align-items: center;
    font-size: 24px;
    font-weight: 700;
    border-bottom: solid 2px #C9C9C9;
    padding: 0 0 10px 10px;
    margin-bottom: 30px;
}
.resources_ttl img {
    width: 25px;
    margin-right: 10px;
}
.resources_cont {
    margin-top: 50px;
}
.resources_files  {
    margin-bottom: 10px;
}
.resources_files label,
.resources_files a {
    display: block;
    margin-bottom: 10px;
    color: #333;
}
.resources_files label:hover,
.resources_files a:hover {
    text-decoration: underline;
}
.resources_files label img,
.resources_files a img{
    display: inline;
    width: 16px;
    vertical-align: middle;
    margin-left: 5px;
}

#avtivity .report_style {
    margin-top: 30px;
}

.resources_download {
    display: none;
    text-align: left;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 100;
    background-color: rgba(255, 255, 255, .95);
    padding: 100px;
    border: solid 2px #20B0DE;
    border-radius: 20px;
    width: 80%;
    max-width: 720px;
}
.resources_download p {
    text-align: center;
}
.resources_download p,
.resources_download b,
.resources_download input {
    display: block;
    width: 100%;
}
.resources_download b {
    font-size: 20px;
    color: #007BB5;
    margin: 10px 0 5px;
}
.resources_download input {
    font-size: 18px;
    padding: 10px 15px;
    border-radius: 10px;
    border: solid 2px #21B4E1;
}
.resources_download .member_links {
    color: #ffffff;
    box-shadow: #790d1d 0px 5px 0px;
    background-color: #CE1834;
}
.resources_download .member_links img {
    width: 22px;
}
.resources_download .member_links.gray{
    pointer-events: none;
    filter: grayscale(1);
    opacity: .7;
}
.resources_download .inputcheck {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 0;
}
.resources_download .inputcheck input {
    width: 15px;
    height: 15px;
    margin-right: 5px;
}
.resources_download_opener:checked + .resources_download{
    display: block;
}
label.resources_download_closer {
    font-size: 50px;
    position: absolute;
    top: 20px;
    right: 20px;
    line-height: 1;
    color: #21b4e0;
}
label.resources_download_closer:hover {
    text-decoration: none;
}
.pconly {display: block !important;}
.sponly {display: none !important;}

@media screen and (max-width:769px) {
.pconly {display: none !important;}
.sponly {display: block !important;}
header {
    position: sticky;
    background-color: #ffffff;
    left: 0;
    top: 0;
    padding: 15px;
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: 0;
    box-shadow: none;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
button.downloadbtn {
    width: 80%;
    border: solid 1px #ffffff;
    padding: 10px 0;
    font-size: 14px;
    border-radius: 8px;
    box-shadow: #CE1834 0px 0px 0px 3px;
    margin: 30px auto 0;
}
#logo {
    text-align: left;
    line-height: 1.2;
}
#logo h1 {
    font-size: 14px;
}
#logo p {
    font-size: 10px;
}
.humarea {
    position: fixed;
    z-index: 6;
    background-image: url(/wp-content/themes/nippo/images/background.png);
    background-position: top left;
    background-size: contain;
    background-color: rgba(255, 255, 255);
    left: 0;
    top: 0;
    padding: 10% 5%;
    display: none;
    height: 100vh;
}
header label {
    width: 25px;
    height: 4px;
    background-color: #000;
    display: block;
    position: relative;
    z-index: 10;
}
header label:before,
header label:after {
    content:"";
    width: 25px;
    height: 4px;
    background-color: #000;
    position: absolute;
    left: 0;
}
header label:before {
    top: -8px;
}
header label:after {
    bottom: -8px;
}
input[type="checkbox"]#hummenu:checked + .humarea {
    display: block;
}
.sns_links {
    width: 40px;
    top: 80px;
    padding: 20px 7px;
    border-radius: 20px 0px 0px 20px;
}
.sec_inner {
    width: 100%;
    padding: 50px 15px;
}
h2.sec_ttl {
    font-size: 20px;
    line-height: 1.2;
    margin-bottom: 20px;
    border-left: solid 5px #CEEFFF;
    padding-left: 10px;
}
#mv {
    height: calc(100vh - 73px);
    background-position: 55%;
}
#mv .sec_inner {
    padding: 20px 5%;
}
.mvcatch {
    max-width: 100%;
    width: 100%;
}
.news {
    margin: 10px 0 10px;
}
.news a {
    padding: 15px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.news a h4 {
    font-size: 14px;
    width: calc(100% - 80px);
}
.news a text {
    width: 80px;
    text-align: right;
    font-size: 10px;
    color: #000000;
    display: block;
}
.mvcomment {
    font-size: 10px;
    line-height: 1.6;
}

.about_ttl p {
    font-size: 28px;
}
.about_ttl p span {
    font-size: 12px;
}
.about_ttl p img {
    width: 80px;
    top: -20px;
    right: -90px;
}
img.about_catch {
    width: 80%;
    max-width: 250px;
    margin: 20px auto;
}
.about_txt {
    font-size: 14px;
    text-align: left;
    line-height: 24px;
}
.list_style li {
    width: 100%;
    background-color: rgba(0, 0, 0, 0);
    padding: 10px;
    border-radius: 0px;
    box-shadow: none;
    margin-bottom: 0;
    border-bottom: solid 1px #ddd;
}
.list_style li:nth-child(odd) {
    margin-right: 0%;
}
.list_style li h5 {
    font-size: 16px;
    line-height: 1;
}
.list_style_links a {
    font-size: 10px;
    padding: 5px 10px;
}
.list_style_links a:before {
    display: none;
}
.list_style_option {
    padding: 5px 0 3px;
}
.list_style_option p {
    font-size: 10px;
    margin-right: 5px;
}
#reportlist .list_style_option,
#avtivity .list_style_option{
    display: none;
}
.list_style_option p img {
    margin-right: 5px;
    height: 12px;
}
.list_style_links a {
    margin: 0 3px 0 0;
}
.list_style_links a:last-child {
    margin: 0;
}

.seinenbu_cont {
    display: block;
}
.seinenbu_cont img {
    width: 100%;
}
.seinenbu_cont p {
    width: 100%;
    padding-left: 0;
    margin-top: 20px;
    font-size: 14px;
}
.seinenbu_cont p b {
    font-size: 16px;
}


.hoikuen_style {
    grid-template-columns: repeat(2, 1fr);
}
.hoikuen_style li a {
    font-size: 12px;
}
.clientlist_cont a {
    width: 48%;
    margin: 0 2% 3% 0;
}


footer {
    width: 100%;
    margin: 0 50px 0 auto;
    padding: 30px 15px 10px;
    background-color: #21B4E0;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
}
.ft_left,
.ft_right {
    width: 100%;
}
footer #logo {
    font-size: 20px;
    text-align: center;
    color: #ffffff;
}
footer a#tel {
    justify-content: center;
}
.ft_copy {
    font-size: 10px;
    margin-top: 50px;
}


#pankuzu .sec_inner {
    padding: 5px 5%;
    font-size: 11px;
}
.bottomsec_ttl {
    font-size: 20px;
    margin-bottom: 20px;
}
.bottomsec_ttl br {
    display: none;
}
.sec_minittl {
    font-size: 24px;
}
.section_cont_txt {
    font-weight: 300;
    text-align: left;
    line-height: 1.8;
    font-size: 14px;
}
#bottommv h4 {
    width: 100%;
    font-size: 24px;
    padding: 50px 15px;
}
#member .hoikuen_style li h6 {
    font-size: 16px;
    padding-bottom: 3px;
}
#member .hoikuen_style li a {
    font-size: 14px;
    margin-bottom: 5px;
}
.visual_list {
    flex-wrap: wrap;
    padding: 50px 0 50px;
}
.visual_list li {
    width: 90%;
}
.visual_list li:nth-child(2) {
    margin-top: 0px;
    margin-left: auto;
}
.visual_list li h3 {
    font-size: 18px;
    padding: 10px 0;
}
.other_links_cont {
    flex-wrap: wrap;
}
.other_links_cont li {
    width: 100%;
}
.voice_ttl {
    font-size: 32px;
}
.voice_list li {
    display: block;
}
.voice_list li img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    overflow: hidden;
}
.voice_list_info {
    padding: 10px 5px;
}
.voice_list_info h6 {
    font-size: 18px;
}
.voice_list_info p {
    padding-top: 5px;
    font-size: 12px;
    line-height: 22px;
}
#company table tr th,
#company table tr td {
    padding: 15px 5px;
}
#company table tr th {
    font-size: 12px;
    width: 90px;
}
#company table tr td {
    font-size: 16px;
    line-height: 1.2;
    font-weight: 600;
}

.bt_seinenbu_visual_ttl {
    font-size: 32px;
    margin-top: 50px;
}
.bt_seinenbu_visual_ttl b:before {
    left: -13px;
    transform: rotate(-12deg);
    height: 40px;
}
.bt_seinenbu_visual_ttl b:after {
    right: -13px;
    transform: rotate(12deg);
    height: 40px;
}
.visual_list li .visual_list_img text {
    left: -15px;
}

#member_info .sec_inner {
    display: block;
}
#member_info table {
    width: 100%;
}
#member_info table tr {
    display: block;
}
#member_info table th {
    font-size: 14px;
}
#member_info table th,
#member_info table td {
    display: block;
    padding: 0px;
}
#member_info table th {
    font-size: 12px;
}
#member_info table td {
    font-size: 14px;
}
#member_info iframe,
#member_info img {
    width: 100%;
    height: 250px;
    margin: 30px 0;
}
#member_info button.downloadbtn img {
    height: auto;
    margin: 0 5px 0 0;
    width: 25px;
}
#member_info a.member_links img {
    width: 25px;
    height: auto;
    margin: 0;
}
#member_info h2 text {
    width: 100px;
    margin: 0 auto 10px;
    display: block;
    text-align: center;
    padding: 5px 0;
}
.seinenbu_cont p span a, h2.sec_ttl a {
    font-weight: 700;
    font-size: 14px;
}
.hoikuen_style li h6 {
    font-size: 14px;
}
#contact form {
    padding: 30px 15px;
}
#contact form table tr,
#contact form table tr th,
#contact form table tr td {
    display: block;
}
#contact form table tr th {
    font-size: 14px;
}
#contact form table tr td input,
#contact form table tr td textarea {
    font-size: 16px;
    padding: 10px 15px;
    border-radius: 7px;
}
.member_links {
    padding: 10px 0;
    font-size: 16px;
    border-radius: 10px;
    box-shadow: #CE1834 0px 3px 0px;
    margin: 20px auto 0;
}
.banner {
    display: flex;
    flex-wrap: wrap;
}
.banner a {
    width: 49%;
    margin: 0 .5% 1%;
}
.report_style li {
    padding: 15px;
}
.report_style li h5 {
    font-size: 14px;
    line-height: 1.2;
    align-items: center;
    justify-content: space-between;
}
.report_style li h5 span {
    font-size: 10px;
    width: 55px;
    padding: 5px 0;
    border-radius: 35px;
    margin-right: 5px;
}
.report_style li a {
    width: calc(100% - 70px);
}
.list_style_option p.teacher {
    display: none;
}
.resources_ttl {
    font-size: 16px;
    padding: 0 0 5px 3px;
    margin-bottom: 15px;
}
.resources_files a {
    font-size: 14px;
    text-decoration: underline;
}

.resources_files label,
.resources_files a {
    font-size: 12px;
    line-height: 1.2;
    display: block;
}
.resources_files label,
.resources_files a {
    text-decoration: underline;
}
.resources_files label img,
.resources_files a img {
    display: none;
}
label.resources_download_closer {
    font-size: 25px;
}
.resources_download {
    padding: 50px 20px;
    width: calc(100% - 30px);
    text-align: left;
}
.resources_download b {
    font-size: 16px;
    margin: 5px 0 3px;
    font-size: 14px;
}
.resources_download input {
    font-size: 16px;
    padding: 13px 15px;
    border-radius: 10px;
}
.resources_download_closer {
    font-size: 24px;
    top: 10px;
    right: 10px;
    line-height: 1;
}
.resources_ttl img {
    width: 20px;
    margin-right: 7px;
}

#contact .bottomsec_ttl br {
    display: block;
}


}