@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, address, em, img, small, strong, var, dl, dt, dd, ol, ul, li,  form, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, figcaption, footer, header,  nav, section, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	border-style: none;
}
html {
scroll-behavior: smooth;
}
body {
font-size: 18px;
line-height: 36px;
font-family: "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "sans-serif";
font-feature-settings: "palt" 1;/*--字詰め(プロポーショナルメトリクス)--*/
}

.mincho {font-family: "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho Pro", "serif";font-size: 1.1em;}

a {
color: #000;
text-decoration: none;
transition: 0.2s;
}
a:visited {
color: #000;
}
a:hover {
font-size: 1em;
opacity: 0.5;
}
/*--基本設定ここまで--*/





/*--メニュー_ヘッダー--*/
header {
width: calc(100% - 60px);
display: flex;
position: fixed;
top: 0;
z-index: 15;
}

.logo {
background: #4652a1;
padding-left: 20px;
display: flex;
align-items: center;
height: 60px;
width: 100%;

}

.logo img {
width: 90%;
z-index: 900;
max-width: 335px;
}

.back_color {
height: 60px;
background: #4652a1;
padding-left: 20px;
display: flex;
align-items: center;
}


.domain {
text-align: center;
font-size: 12px;
}

/* ハンバーガーボタンを押してチェックがONの時だけ
   スマホ用メニューを画面左端に移動する */
#sp-menu__check:checked ~ .sp-menu__content {
  right: 0;
}
/* 変更箇所はコメントの項目のみ */
.sp-menu__content {
  width: 320px;
  height: 100%;
  position: fixed;
  top: 0;

  /* 普段は画面外にするために左端を画面右端の位置にする */
  right: -100%;

  z-index: 90;
  background-color: #ffda36;
  
  /* 右端からゆっくり移動するように表示 */
  transition: all 0.5s;
}

.main-menu {
  margin: 0 auto;
  display: flex;
  width: 1280px;
}
.pc-menu {
  width: 100%;
}
.pc-menu > ul {
  display: flex;
  list-style: none;
}
.pc-menu > ul > li {
  text-align: center;
  font-size: 16px;
  width: 25%;
}
.pc-menu > ul > li > a {
  display: block;
  text-decoration: none;
  color: #000000;
  line-height: 60px;
}
.pc-menu > ul > li > a:hover {
  background: #cccccc;
}
.sp-menu__box {
  position: fixed;
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  z-index: 100;
  background: #ec6c00;
}
.sp-menu__box span,
.sp-menu__box span:before,
.sp-menu__box span:after {
  content: "";
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #ffffff;
  position: absolute;
}
.sp-menu__box span:before {
  bottom: 8px;
}
.sp-menu__box span:after {
  top: 8px;
}
#sp-menu__check {
  display: none;
}
#sp-menu__check:checked ~ .sp-menu__box span {
  background: rgba(255, 255, 255, 0);
}
#sp-menu__check:checked ~ .sp-menu__box span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#sp-menu__check:checked ~ .sp-menu__box span::after {
  top: 0;
  transform: rotate(-45deg);
}
.sp-menu__list {
  padding: 10px 10px 0;
}
.sp-menu__item {
  border-bottom: solid 1px #000;
  list-style: none;
}
.sp-menu__link {
  display: block;
  width: 320px;
  font-size: 15px;
  box-sizing: border-box;
  text-decoration: none;
  padding: 9px 15px 10px 0;
  font-weight: 900;
}






/*--メイン--*/
.main {
width: 800px;
margin: auto;
}

h1 {
display: flex;
margin-top: 60px;
margin-right: calc(50% - 50vw);margin-left: calc(50% - 50vw);max-width: none;width: 100vw;/*横幅100%*/
}

.h1-right {
width: 10vw;
background: #4652a1;
}

h1 img {
width: 80%;
}

.h1-left {
width: 10vw;
background: #ffda36;
}



.more {
margin-bottom: 50px;
}

.more h2 {
color: #4652a1;
text-align: center;
font-size: 1.4em;
margin-bottom: 20px;
}

.more .more_title {
font-size: 30px;
color: #ec6c00;
line-height: 35px!important;
}

.more .more_title::before {
content: "";
display: block;
position: absolute;
background: #ec6c00;
height: 77px;
width: 12px;
margin-right: 10px;
}


/*--.more h3::after {
content: "";
display: inline-block;
width: 25vw;
height: 1px;
margin-bottom: 10px;
margin-left: 10px;
background: #ec6c00;
}--*/

/*-------------------------------続きを読む---------------------------------*/
.more{
position: relative;
box-sizing: border-box;
padding: 10px 0;
z-index: 10;
}

.more-inner{
position: relative;
overflow: hidden;
height: 150px;
}
.more-inner::before {
display: block;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
content: "";
height: 100px;
background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.8) 50%, #fff 100%);
background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.8) 50%, #fff 100%);
}

/* 続きを読むボタン */
.more-label{
display: table;
bottom: 5px;
position: absolute;
bottom: 5px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
margin: 0 auto;
z-index: 2;
padding: 0 10px;
background-color: #4652a1;
border-radius: 5px;
color: #FFF;
width: 100px;
text-align: center;
}
.more-label:before{
content: '続きを読む';
}

.more-check{
display: none;
}
/*チェック時にボタンを非表示*/
.more-check:checked ~ .more-label{
position: static;
transform: translateX(0);
-webkit-transform: translateX(0);
}
.more-check:checked ~ .more-label:before{
content: 'とじる';
}
/*チェック時に高さを自動に戻す*/
.more-check:checked ~ .more-inner{
height: auto;
margin-bottom: 40px;
}
/*チェック時グラデーション等を削除*/
.more-check:checked ~ .more-inner::before {
display: none;
}

/* 続きを読むボタン */
.more-label_b{
display: table;
left: 50%;
margin: 0 auto;
z-index: 2;
padding: 0 10px;
background-color: #ec6c00;
border-radius: 5px;
color: #FFF;
width: 100px;
text-align: center;
}
.more-label_b:before{
content: '続きを読む';
}

.more-check_b{
display: none;
}
/*チェック時にボタンを非表示*/
.more-check_b:checked ~ .more-label_b{
position: static;
transform: translateX(0);
-webkit-transform: translateX(0);
}
.more-check_b:checked ~ .more-label_b:before{
content: 'とじる';
}
/*チェック時に高さを自動に戻す*/
.more-check_b:checked ~ .more-inner{
height: auto;
margin-bottom: 40px;
}
/*チェック時グラデーション等を削除*/
.more-check_b:checked ~ .more-inner::before {
display: none;
}

/*-------------------------------めざすこと---------------------------------*/
.policy {
margin-bottom: 20px;

}
.policy h2 {
letter-spacing: 7px;
text-align: center;
padding: 10px 0;
background: #ec6c00;
color: #fff;
margin-bottom: 10px;
}

.policy li:before {
content: "";
width: 14px;
height: 14px;
display: inline-block;
background-color: #ffda36;
border-radius: 50%;
margin: 1px 5px -2px 10px;
}

.policy li {
list-style-type :none;
font-size: 16px;
line-height: 30px;
}

.policy img {
width: 150px;
float: left;
margin-right: 10px;
}

.policy .second,.policy .third {
position: relative;
width: 350px;
}

.policy .second {
left: -40px;
padding-top: 15px;
line-height: 16px;
}

.policy .third {
left: -25px;
padding-top: 15px;
line-height: 16px;
}


.policy h3 {
margin-top: -3px;
font-size: 20px;
letter-spacing: 7px;
color: #ec6c00;
padding: 15px 0;
border-top: solid 2px #ffda36;
border-bottom: solid 2px #ffda36;
margin-bottom: 10px;
}

.policy-h3second {
text-align: center;
margin-top: 20px!important;
}

.activity {
margin: auto;
width: 300px;
font-size: 16px;
line-height: 23px;
}

/*-------------------------------お知らせ---------------------------------*/
.news h2 {
font-size: 1.2em;
padding: 10px 0;
background: #4652a1;
color: #fff;
text-align: center;
margin-right: calc(50% - 50vw);margin-left: calc(50% - 50vw);max-width: none;width: 100vw;/*横幅100%*/
}

.news .scroll {
width: 95%;
height: 300px;
overflow-y: scroll;
margin-top: 1px;
margin-bottom: 1px;
margin-left: auto;
margin-right: auto;
}


.news .scroll::-webkit-scrollbar{
width: 10px;
}

.news .scroll::-webkit-scrollbar-track{
background-color: #ccc;
}

.news .scroll::-webkit-scrollbar-thumb{
background-color: #555;
border-radius: 5px;
}


.news .scroll .page {
margin-bottom: 20px;
}


.news .page h4 {
color: #4652a1;
border-top: solid 5px #4652a1;
border-bottom: solid 1px #4652a1;
margin-bottom: 10px;
}

.news .page .news-page_year {
font-size: 14px;
font-weight: 900;
padding-left: 5px;
vertical-align:top;
}
.news .page .news-page_title {
font-weight: 900;
font-size: 1.1em;
}
.news .page .news-page_day {
font-size: 12px;
vertical-align:top;
}

.news .page .excerpt p {
line-height: 25px;
font-size: 16px;
color: #555;
}

.news .page .news-page_more {
text-align: center;
display: block;
font-size: 12px;
color: #4652a1;
margin: 10px auto;
background: #c7cbea;
width: 290px;
}


.facebook {
background: #4652a1;
color: #fff;
padding-bottom: 10px;
margin-right: calc(50% - 50vw);margin-left: calc(50% - 50vw);max-width: none;width: 100vw;/*横幅100%*/
}



.lecture {
margin-top: 10px;
}


.lecture h2 {
color: #ec6c00;
text-align: center;
letter-spacing: 5px;
}


.lecture h2 .mincho {
border-top: solid 2px #ffda36;
border-bottom: solid 2px #ffda36;
padding: 10px 0;
font-size: 1.2em;
}


.lecture .address {
font-size: 16px;
line-height: 20px;
display: block;
margin: 10px auto;
width: 280px;
}


.lecture .tel {
text-align: center;
padding: 5px;
background-color: #ec6c00;
font-weight: 900;
color: #fff;
border-radius: 100px;
font-size: 20px;
display: block;
}


.gorenraku {
text-align: center;
display: block;
}


footer div {
width: 100%;
text-align: center;
}

footer a {
text-decoration: underline;
color: #4652a1;
}


footer a:visited {
color: #4652a1;
}

footer .copy {
margin-top: 15px;
font-size: 12px;
background: #4652a1;
color: #fff;
margin-right: calc(50% - 50vw);margin-left: calc(50% - 50vw);max-width: none;width: 100vw;/*横幅100%*/
}


#hello,#policy,#news,#facebook,#lecture {
padding-top: 60px;
}

@media screen and (min-width: 1000px){
h1 img {
width: 50%;
}
.h1-left,.h1-right {
width: 25vw;}

}

@media screen and (min-width: 800px){
.pc-logo {
display: none;
}



.logo img {
margin: auto;
}



/*ボタンPCでは削除*/
.more-inner::before {
display: none;
}
.more-label {
display: none;
}

.more-label_b {
display: none;
}

.more h2 {
line-height: 80px;
font-size: 30px;
}

.more-inner img {
width: 50%;
margin-left: 9px;
margin-top: 15px;
}
.more-inner {
height: auto;
}
.more-inner p {
line-height: 45px;
}


.policy-mobile {
display: none;
}
.policy .mincho {
font-size: 30px;
}
.policy-pc{
display: flex;
}
.policy-pc img {
width: 300px;
}
.policy-pc ul {
margin-top: 10px;
}
.policy-pc li {
font-size: 18px;
line-height: 40px;
}
.policy h3 {
margin-top: -36px;
text-align: center;
}

.lecture {
display: flex;
align-items: center;
justify-content: space-between;
margin: 50px 0 50px 0;
}
.lecture-inner img {
width:200px;
margin: 30px 50px;
}

.lecture-photo img {
width: 400px;
margin-top: 30px;
}
.mobile {
display: none;
}
}







@media screen and (max-width: 799px){
.pc {
display: none;
}

.main {
width: 100%;
}

h1 {
display: block;
margin-right: 0;
margin-left: 0;
}
h1 img {
width: 100%;
}

.more-inner {
width: 90%;
margin: auto;
}

.more-inner img {
width: 100%;
}
.lecture-left p img {
display: block;
margin: 30px auto;
width: 160px;
}
.lecture .tel {
width: 300px;
display: block;
margin: auto;
}
.gorenraku {
margin-bottom: 60px;
}
.lecture {
flex-direction: column;
}
.lecture-photo img {
width: 100vw;
max-width: 799px;
}
}



@media screen and (max-width: 640px){

.body {
min-width: 320px;
}

.left {
display: none;
}

.pc-logo {
display: none;
}

.main::-webkit-scrollbar {
width: 0px;
}

/*--メインのスクロール部分--*/
.hidden {
overflow: hidden;
position: absolute;
top: 0;
width: 100vw;
}

.body {
width: 100%;
}
/*--メインのスクロール部分--*/


/*--メニュー_ヘッダー--*/
header {
width: calc(100vw - 60px);
display: flex;
}

.logo {
background: #4652a1;
padding-left: 20px;
display: flex;
align-items: center;
height: 60px;
}

.logo {
width: 100%;

}
/*--メニュー_ヘッダー--*/

.logo img {
max-width: 335px;
}
}