@charset "UTF-8";
/*
Version:	1.0
Creation Date:	2021.9.10
Last Updated:	2021.11.17
*/


/* import
------------------------------------------------------------ */
@import url('https://cdnjs.cloudflare.com/ajax/libs/Swiper/5.4.5/css/swiper.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap');
@import url('http://fonts.cdnfonts.com/css/dengxian');


/* set
------------------------------------------------------------ */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html {
overflow-y: scroll;
}
body {
-webkit-text-size-adjust: 100%;
font-family: 'ヒラギノ角ゴ Pro', 'ヒラギノ角ゴシック', 'Hiragino Sans', 'Noto Sans JP', sans-serif;
color: #000;
font-size: 14px;
font-weight: 400;
line-height: 1.3;
}
img {
vertical-align: middle;
max-width: 100%;
height: auto;
border: 0;
}
iframe {
max-width: 100%;
}
a {
color: inherit;
text-decoration: none;
}
:hover {
transition: .3s;
}
a:hover img {
opacity: .7;
}
.ro a:hover img {
opacity: 1;
}
.smd,.smp,
.flex.smd,.flex.smp {
display: none;
}
.pc {
display: block;
}
.flex.pc {
display: flex;
}


/* header
------------------------------------------------------------ */
header {
background: #FFF;
color: #FFF;
width: 100%;
height: 140px;
position: fixed;
top: 0;
left: 0;
z-index: 2;
}
header ul {
list-style: none;
}
header h1 img {
width: auto;
height: 100px;
}
header .link {
font-size: 13px;
width: 500px;
max-width: 100%;
}
header .link li.item {
margin: 0 0 5px 1%;
}
header .link a {
background: #969696;
color: #FFF;
display: block;
border: solid 1px #FFF;
}
header .link a:hover {
background: #17afb3;
}
header .link .active a {
background: #17afb3;
}
header .link .active a:hover {
background: #969696;
}
header article {
background: #17afb3;
height: 40px;
}
header article ul li,
header .search {
position: relative;
}
header article ul li:before,
header .search:before {
content: "";
background: #FFF;
width: 1px;
height: 14px;
position: absolute;
top: 13px;
left: 0;
}
header article ul li a,
header .search {
height: 40px;
padding: 0 20px;
display: flex;
align-items: center;
}
header article ul li a:hover {
background: #969696;
}
header .search label {
background: #FFF;
}
header .search input {
background: #17afb3;
color: #FFF;
border: none;
outline: none;
box-shadow: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
background: #FFF;
color: #666;
}
header .search button {
background: transparent;
border: none;
outline: none;
cursor: pointer;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 2px;
}
header nav {
display: none;
background: #17afb3;
width: 500px;
max-width: 100%;
height: auto;
max-height: calc(100% - 60px);
position: fixed;
top: 0;
right: 0;
z-index: 2;
overflow-y: scroll;
-webkit-overflow-scrolling: touch;
}
header nav {
padding: 30px 0 0;
}
header nav section:first-child li a {
padding-bottom: 20px;
display: block;
}
header nav .link {
width: 100%;
display: flex;
}
header nav .link li {
margin: 0 1% 5% !important;
}
header nav .link a,
header nav .link .active a:hover {
background: #17afb3;
color: #FFF;
display: block;
}
header nav .link a:hover,
header nav .link .active a {
background: #FFF;
color:  #00babf;
}
header nav .close a {
background: #000;
color: #FFF;
line-height: 50px;
text-align: center;
display: block;
}

/* .triple */
.triple {
display: none;
width: 60px;
height: 60px;
padding: 20px 14px 0;
cursor: pointer;
position: fixed;
top: 2%;
right: 2%;
z-index: 3;
}
.triple span {
background: #000;
width: 100%;
height: 1px;
margin: 0 auto 8px;
display: block;
-webkit-transition: all .2s ease-in-out;
-o-transition: all .2s ease-in-out;
transition: all .2s ease-in-out;
}
.triple span:last-child {
margin-bottom: 0;
}
.triple.open span:nth-child(1) {
-webkit-transform: translateY(9px) rotate(-45deg);
-ms-transform: translateY(9px) rotate(-45deg);
transform: translateY(9px) rotate(-45deg);
}
.triple.open span:nth-child(2) {
opacity: 0;
}
.triple.open span:nth-child(3) {
-webkit-transform: translateY(-9px) rotate(45deg);
-ms-transform: translateY(-9px) rotate(45deg);
transform: translateY(-9px) rotate(45deg);
}


/* footer
------------------------------------------------------------ */
footer {
background: #f5f4f4;
font-size: 12px;
margin-top: 150px;
padding: 30px 0 20px;
position: relative;
}
footer ul {
list-style: none;
}
footer a:hover {
color: #999;
}
footer h1 {
margin-bottom: 10px;
}
footer .sns.pc {
margin: 30px 0;
}
footer .flex.col-3 > .item:last-child	{
flex-basis: 38%;
}
footer .flex.col-3 .item:first-child ul li:not(:first-child)	{
margin-left: 10px;
padding-left: 10px;
border-left: solid 1px #000;
}
footer .flex.col-3 .item.pc li	{
padding-bottom: 10px;
}
footer .flex.col-3 .item.pc li:before	{
content: "●";
color: #999;
font-size: 8px;
padding-right: 5px;
}
footer .flex.col-3 .item.pc	p {
font-weight: bold;
text-align: right;
flex-basis: 36%;
}
footer .flex.col-3 .item.pc	ul.item {
flex-basis: 60%;
}
footer .flex.col-3 .item.pc	div + ul {
margin-left: 80px;
}
footer address {
font-size: 11px;
font-style: normal;
text-align: center;
}

/* #pagetop */
#pagetop {
display: none;
position: fixed;
right: 2%;
bottom: 2%;
z-index: 1;
}
#pagetop a {
color: #969696;
padding: 5px 35px 0 0;
position: relative;
}
#pagetop a:before {
content: "";
background: url("images/pagetop_off.png");
background-size: contain !important;
width: 26px;
height: 26px;
position: absolute;
top: 0;
right: 0;
}
#pagetop a:hover:before {
background: url("images/pagetop_on.png");
}


/* main
------------------------------------------------------------ */
/* font */
.ttl,
#post h2,
.more,
#news-list ul {
font-family: 'A-OTF ゴシックMB101 Pro', 'ゴシックMB101 R', 'Gothic MB101 Regular', 'Noto Sans JP', sans-serif;
}
.dx,
.dx .ttl,
.dx #post h2,
.dx .more,
.dx #news-list ul {
font-family: 'DengXian', 'SimSun', 'Noto Serif SC', 'Kaiti SC', sans-serif !important;
}

/* layout */
main {
width: 100%;
margin-top: 140px;
display: block;
overflow: hidden;
}
article {
width: 100%;
position: relative;
}
section {
width: 1000px;
max-width: 90%;
margin: 0 auto;
position: relative;
}
.w880 {
width: 880px;
max-width: 100%;
margin: 0 auto;
}
section.w880 {
max-width: 90%;
}
.w740 {
width: 740px;
max-width: 100%;
margin: 0 auto;
}
section.w740 {
max-width: 90%;
}

/* style */
.center {
text-align: center;
}
.left {
text-align: left;
}
.right {
text-align: right;
}
h1.ttl {
background: #17AFB3 url("images/h1_airy.png")no-repeat right center;
background-size: auto 115px;;
height: 115px;
margin: 30px auto;
position: relative;
}
h1.ttl em {
color: #FFF;
font-size: 32px;
font-weight: normal;
font-style: normal;
width: 1000px;
max-width: 90%;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
z-index: 1;
}
h1.ttl img {
height: 115px;
position: absolute;
top: 0;
right: 0;
}
h2.ttl {
color: #17AFB3;
font-size: 32px;
font-weight: normal;
margin-bottom: 20px;
}
h2.ttl span {
color: #000;
font-size: 14px;
padding: 0 1em;
display: inline-block;
vertical-align: middle;
}
.red {
color: #F00;
}
.att {
font-size: 12px;
}
.mb20 {
margin-bottom: 20px;
}
.mb30 {
margin-bottom: 30px;
}
.mb60 {
margin-bottom: 60px;
}

/* .flex */
.flex {
display: flex;
}
.col,
.col-2,
.col-3,
.col-4 {
flex-wrap: wrap;
justify-content: space-between;
}
.flex.end {
justify-content: flex-end;
}
.flex.center {
justify-content: center;
}
.flex.aligin-center {
align-items: center;
}
.flex .item {
margin-bottom: 30px;
}
.col-2 .item {flex-basis: 48%;}
.col-3 .item {flex-basis: 29%;}
.col-4 .item {flex-basis: 23%;}
.col-3:after {
content: "";
width: 29%;
height: 0;
display: block;
}
.col-4:before,
.col-4:after {
content: "";
width: 23%;
height: 0;
display: block;
}
.col-4:before {
order: 1;
}
.flex.end:before,
.flex.end:after {
display: none;
}

/* .link */
.link {
list-style: none;
}
.link li.item {
margin: 0;
}
.link a {
background: #17afb3;
color: #FFF;
line-height: 1.3;
text-align: center;
margin: 0 10px 10px 0;
padding: 14px 20px;
display: block;
border: solid 1px #FFF;
border-radius: 25px;
}
.link .long a {
padding: 6px 20px;
}
.link a:hover {
background: #969696;
}
.link .active a {
background: #969696;
}
.link .active a:hover {
background: #17afb3;
}
.round-s a {
line-height: 30px;
text-align: center;
margin: 0;
padding: 0 5px;
border-radius: 15px;
}

/* .more */
.more {
text-align: center;
}
.more a {
background: #00BABF url("images/ico_arw.png")no-repeat center right 10px;
background-size: auto 10px !important;
color: #FFF;
text-align: center;
min-width: 180px;
max-width: 80%;
padding: 10px 30px;
display: inline-block;
border-radius: 3px;
}
.more a:hover {
background: #969696 url("images/ico_arw.png")no-repeat center right 10px;
}

/* .sns */
.sns {
font-size: 12px;
align-items: center;
}
.sns a:before {
content: "";
background-size: contain !important;
width: 13px;
height: 13px;
margin-right: 10px;
display: inline-block;
}
.fb a:before {
background: url("images/ico_fb.png") no-repeat;
}
.tw a:before {
background: url("images/ico_tw.png") no-repeat;
}
.in a:before {
background: url("images/ico_in.png") no-repeat;
}

/* swiper */
.swiper-pagination-bullets {
bottom: 30px !important;
}
.swiper-pagination-bullet {
background: #FFF;
width: 11px;
height: 11px;
margin: 0 6px !important;
border: solid .5px #969696;
opacity: 1;
}
.swiper-pagination-bullet-active {
background: #00BABF;
}

/* #breadcrumb */
#breadcrumb {
font-size: 13px;
line-height: 1.3;
text-align: left;
margin-bottom: 30px;
}
#breadcrumb a:hover {
color: #969696;
}
#breadcrumb strong {
font-weight: normal;
}

/* #pagenavi */
#pagenavi {
text-align: center;
margin-top: 100px;
clear: both;
}
#pagenavi li {
margin: 2% .5%;
display: inline-block;
}
#pagenavi li a,
#pagenavi li span {
background: #FFF;
color: #17AFB3;
text-decoration: none;
line-height: 28px;
width: 30px;
height: 30px;
padding-bottom: 5px;
display: block;
border: 1px solid #17AFB3;
}
#pagenavi li span,
#pagenavi li a:hover {
background: #17AFB3;
color: #FFF;
}


/* #home
------------------------------------------------------------ */
#home ul {
list-style: none;
}

/* #main */
#home #main {
background: #F5F5F5;
}
#home #main .flex,
#home .main {
flex-basis: 50%;
}
#home #main div.flex {
justify-content: flex-end;
align-items: center;
}
#home #main .flex div {
max-width: 500px;
padding: 50px;
}
#home #main .ttl {
color: #17afb3;
font-size: 22px;
line-height: 1.5;
}
#home #main .flex li {
margin-top: 15px;
}
#home #main .main {
max-height: 600px;
}

/* #menu */
#home #menu {
background: url("images/menu_bg.jpg") no-repeat center center;
background-size: cover;
padding: 70px 0 40px;
}

/* #news-list */
#news-list .ttl .smp {
display: none;
}
#news-list ul {
line-height: 1.3 !important;
border-top: solid .5px #969696;
list-style: none;
}
#news-list li a {
font-size: 15px;
text-decoration: none;
padding: 15px;
display: flex;
flex-wrap: wrap;
align-items: flex-start;
border-bottom: solid .5px #969696;
}
#news-list li a:hover {
color: #969696;
}
#news-list li a:hover .cat  {
opacity: .7;
}
#news-list time {
width: 8em;
}
#news-list p {
line-height: 1.3 !important;
margin-bottom: 0 !important;
padding-left: 1em;
flex-basis:	75%;
}
#home #news-list p {
flex-basis:	70%;
}
.cat {
background: #A9A9A9;
color: #FFF;
font-size: 12px;
text-align: center;
line-height: 20px;
white-space: nowrap;
min-width: 75px;
padding: 0 15px;
}
.cat_01_01 { background: #00BABF; }	/* お知らせ */
.cat_01_02 { background: #FF2D73; }	/* 学ぶ */
.cat_01_03 { background: #FF6A00; }	/* イベント */
.cat_01_04 { background: #9ACD32; }	/* とびいり */
.cat_01_05 { background: #FF2D73; }	/* Game */
.cat_01_06 { background: #FF2D73; }	/* 英会話 */
.cat_01_07 { background: #00A0FF; }	/* CIR */
.cat_01_08 { background: #7F56FF; }	/* 多文化 */
.cat_01_09 { background: #FF6A00; }	/* 国際理解 */
.cat_01_10 { background: #0000CD; }	/* ボランティア */
.cat_01_11 { background: #000080; }	/* 事業報告 */
.cat_02 { background: #FF2D73; }
.cat_03 { background: #FF6A00; }
.cat_04 { background: #9ACD32; }
.cat_05 { background: #7F56FF; }
.cat_06 { background: #00BABF; }
.cat_07 { background: #00A0FF; }


/* #post
------------------------------------------------------------ */
.cat-link {
color: #FFF;
font-size: 12px;
text-align: center;
line-height: 30px;
white-space: nowrap;
min-width: 75px;
display: inline-block;
}
.cat-link a {
background: #aaa9a9;
text-decoration: none !important;
padding: 0 15px;
display: block;
}
.cat-link a:hover {
background: #00BABF;
}
#post h2 {
color: #17AFB3;
font-size: 32px;
font-weight: normal;
margin: 20px auto;
}
#post h3 {
font-size: 20px;
margin-bottom: 10px;
}
#post h4 {
color: #17AFB3;
font-size: 18px;
margin-bottom: 10px;
}
#post h5 {
font-size: 16px;
margin-bottom: 10px;
}
#post h6 {
font-size: 14px;
margin-bottom: 10px;
}
#post p,
#post ul,
#post dl,
#post table {
line-height: 1.8;
margin-bottom: 15px;
}
#post a {
text-decoration: underline;
}
#post a:hover {
text-decoration: none;
}
#post th,
#post td {
vertical-align:top;
padding: 5px 0;
}
#post .link {
flex-wrap: wrap;
}
#post .link a,
#post .more a,
.smb-btn,
.wp-block-button__link {
text-decoration: none !important;
}
#post .more {
margin-top: 100px;
}
#post .aligncenter figcaption {
text-align: center;
}
#post .smb-box p {
margin: 0;
}
.wp-block-separator {
height: 0 !important;
margin: 20px 0 !important;
border: none !important;
border-bottom: dotted 1px #999 !important;
}

/* form
------------------------------------------------------------ */
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="submit"],
select,
label,
textarea {
background: none;
font-size: 100%;
max-width: 100%;
margin: 0;
padding: 0;
border: none;
outline: none;
box-shadow: none !important;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
select::-ms-expand {
display: none;
}
::-webkit-input-placeholder {color: #FFF;}
::-moz-placeholder {color: #FFF;}
:-ms-input-placeholder {color: #FFF;}
:focus::-webkit-input-placeholder {color: transparent;}
:focus:-moz-placeholder {color: transparent;}
:focus::-moz-placeholder {color: transparent;}
input[type="text"],
input[type="tel"],
input[type="email"],
select,
textarea {
width: 100%;
height: 34px;
padding: 0 1em;
border: solid 1px #898989;
}
label {
display: inline-block;
cursor: pointer;
}
textarea {
height: 	200px;
padding: 1em;
}
select {
margin-bottom: 15px;
cursor: pointer;
}
label.select select {
width: 200px;
max-width: 100%;
}
label.select {
display: inline-block;
position: relative;
}
label.select:after {
content: "";
width: 5px;
height: 5px;
margin: 0 auto;
display: block;
border-top: solid 1px #898989;
border-right: solid 1px #898989;
position: absolute;
top: 15px;
right: 20px;
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}

input[type="checkbox"],
input[type="radio"] {
display: none;
}
input[type="checkbox"] + span,
input[type="radio"] + span {
margin-right: 25px;
padding: 5px 0 0 30px;
position: relative;
}
input[type="checkbox"] + span:before,
input[type="radio"] + span:before {
content: "";
width: 20px;
height: 20px;
border: 1px solid #898989;
display: block;
position: absolute;
top: 2px;
left: 0;
}
input[type="radio"] + span:before {
border-radius: 50%;
}
input[type="checkbox"]:checked + span:after,
input[type="radio"]:checked + span:after {
content: "";
width: 9px;
height: 18px;
display: block;
border-bottom: 3px solid #898989;
border-right: 3px solid #898989;
position: absolute;
top: -5px;
left: 8px;
transform: rotate(40deg);
}
input[type="radio"]:checked + span:after {
background: #898989;
width: 11px;
height: 11px;
border-radius: 50%;
top: 6px;
left: 4px;
}
input[type="submit"] {
background: #17AFB3;
font-size: 16px;
color: #FFF;
text-decoration: none;
min-width: 170px;
margin-top: 30px;
padding: 15px 50px;
cursor: pointer;
}
input[type="submit"]:hover {
background: #969696;
}
form {
text-align: center;
}
form table {
text-align: left;
width: 800px;
max-width: 100%;
margin: 0 auto;
}
form table td {
vertical-align: top;
padding: 10px !important;
}
.block .wpcf7-list-item {
margin-bottom: 10px;
display: block;
}
.wpcf7-captchac {
width: 100px;
margin-bottom: 15px;
border: solid 1px #898989;
}
.wpcf7-captchar {
max-width: 180px !important;
}
form table div.flex {
margin-top: 30px;
}
form .arw {
background: url("images/arw.png")no-repeat center bottom;
background-size: contain;
padding: 0 10px 10px;
}

#post .search label {
display: flex;
align-items: center;
}
#post .search input {
width: 70%;
height: 34px;
padding: 0 1em;
border: solid 1px #898989;
}
#post .search button {
background: #969696;
margin-left: 1em;
padding: 3px;
border: none;
}





@media screen and (max-width: 1024px) {
/* iPad横以下 */

/* header
------------------------------------------------------------ */
header .col {
padding-right: 30px;
}
header article ul li a,
header .search {
padding: 0 10px
}

}


@media screen and (max-width: 1024px) and (orientation:portrait) {
/* iPad縦以下 */

/* set
------------------------------------------------------------ */
.pc,.flex.pc {
display: none;
}
.smd {
display: block;
}
.flex.smd {
display: flex;
}

/* header
------------------------------------------------------------ */
header {
height: 60px;
}
header h1 img {
height: 60px;
}
header article,
header .link {
display: none;
}
header nav {
width: 100%;
top: 60px;
}
/* .triple */
.triple {
display: block;
top: 0;
right: 0;
}

/* footer
------------------------------------------------------------ */
footer .flex.col-3	{
display: block;
}
footer .flex.col-3	ul {
margin-top: 30px;
}

/* #pagetop */
#pagetop {
text-align: center;
right: 50%;
-webkit-transform: translateX(50%);	
transform: translateX(50%);	
}
#pagetop a {
padding: 0;
}
#pagetop a:before {
background: url("images/pagetop_on.png");
width: 40px;
height: 40px;
margin: 0 auto;
display: block;
position: relative;
}

/* main
------------------------------------------------------------ */
/* layout */
main {
margin-top: 60px;
}

/* .sns */
.sns.smd.smp li a,
.sns.smp li a {
width: 30px;
height: 30px;
margin: 0 10px;
display: block;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
position: relative;
}
.sns a:before {
width: 30px;
height: 30px;
margin-right: 0;
position: absolute;
top: 0;
right: 0;
}

/* #home
------------------------------------------------------------ */
/* #main */
#home #main .flex div {
padding: 20px 5%;
}
#home #main .ttl {
font-size: 18px;
margin-bottom: 10px;
}

/* #news-list */
#news-list li a {
display: block;
}
#news-list time {
margin-right: 10px;
display: inline-block;
}
#news-list p {
padding: 10px 0 0;
}
.cat {
display: inline-block;
}

}


@media screen and (max-width: 740px) {
/* iPhone以下 */

/* set
------------------------------------------------------------ */
.smd,.flex.smd {
display: none;
}
.smp {
display: block;
}
.flex.smp {
display: flex;
}
br.smp {
font-size: 0;
}

/* main
------------------------------------------------------------ */
/* style */
h1.ttl em {
font-size: 22px;
}
h2.ttl {
font-size: 22px;
}
/* .link */
.link a {
padding: 6px 10px;
border-radius: 15px;
}
.link .long a {
padding: 6px 10px;
}

/* #post
------------------------------------------------------------ */
#post h2 {
font-size: 22px;
margin: 30px auto 10px;
}
#post h3 {
font-size: 18px;
}
#post h4 {
font-size: 16px;
}
#post h5 {
font-size: 15px;
}

/* #home
------------------------------------------------------------ */
/* #main */
#home #main,
#home #main div.flex {
display: block;
}
#home #main .ttl {
font-size: 15px;
margin-bottom: 0;
}
#home #main .ttl br {
display: none;
}
#home #main ul.smp li {
max-width: 90%;
margin: 20px auto;
}
#home #main ul.sns li {
margin: 20px 0  !important;
}
#home #main .main {
max-height: 300px;
}

/* #menu */
#home #menu {
background: url("images/menu_bg.jpg") no-repeat center center;
background-size: cover;
padding: 70px 0 40px;
}
#home #menu li {
flex-basis: 48%;
}

/* #news-list */
#news-list .ttl .smp {
display: inline-block;
}
#news-list li a {
font-size: 14px;
}

/* #calendar */
#calendar iframe {
max-height: 300px;
}

}