@charset "UTF-8";

/*
Theme Name: Hirari
Author: matsuzawa
Description: Hirariのテーマです。
*/


@import url(//fonts.googleapis.com/css?family=Open+Sans:400,400italic,600,600italic,700,700italic);
body{
font-family: Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
  min-width: 1020px;
}
ul{
  margin: 0;
  padding: 0;
  list-style: none;
}
.bg{
  box-sizing: border-box;
	background-color:#37BED4;
	height: 100px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: center;
}

.bg2{
	background-color:#F2F3F0;
  height: 120px;
}

.bg3{
	background-color:#F2F3F0;
}

.bg4{
	background-color:#F2F3F0;
	padding-top:350px;
	width:750px;
}

.container{
	width:980px;
	margin:0 auto;
}

.container2{
	width:980px;
	margin:0 auto;
}

.container3{
	float:left;
	padding:50px 10px 10px 10px;
    width:710px;
}

.mg{ margin-top:50px; }
.mg2{ margin-left:80px; }
.mg3{ margin-left:20px; }
.mg4{ margin-left:10px; }
.mg5{ margin-bottom:30px; }
.mg6{ margin:30px 0 30px 0; }
.mg7{ margin-bottom:50px; }
.mg8{ margin:30px; }
.mg9{ margin-top:-20px; }
.mg10{ margin-top:100px; }

.mb20{ margin-bottom: 20px; }
.mb35{ margin-bottom: 35px !important; }
.mb40{ margin-bottom: 40px; }
.mb60{ margin-bottom: 60px; }
.mb70{ margin-bottom: 70px; }
.mb160{ margin-bottom: 160px; }
.mt70{ margin-top: 70px; }
.ml-20{ margin-left: -20px; }
.mr-20{ margin-right: -20px; }

.fw{
	color:#ffffff;
	font-size:14px;
	font-weight:bold;
}

.fc{
	color:#37BED4;
	font-size:25px;
	font-weight:bold;
	letter-spacing:3px;
}


.fc2{
	color:#279AC8;
	font-size:14px;
	font-weight:bold;
}

.fc3{
	color:#339933;
	font-size:12px;
	font-weight:bold;
	text-decoration: none;
}

.fc4{
	font-size:14px;
	font-weight:bold;

}

.fc4 a{
	color:#EE939C;
	text-decoration: none;
}

.fc4-2{
    color:#EE939C;
    text-decoration: none;
    font-weight:bold;
}

.fc5{
	color:#314D89;
	font-size:16px;
	font-weight:bold;
}

.fc6{
    color:#EE939C;
    font-weight: bold;
    font-size:20px;
    letter-spacing:3px;
}

.fs{
	font-size:14px;
	line-height:30px;
	margin-top:20px;
	letter-spacing:5px;
}

.fs2{
	font-size:14px;
	line-height:30px;
	color:#3E3A39;
	font-weight:bold;
	margin-bottom:20px;
}

.fs3{
	letter-spacing:3px;
	color:#3E3A39;
	font-weight:bold;
}

.fs4{
	color:#3E3A39;
	font-size:14px;
	font-weight:bold;
	text-decoration: none;
}

.fs4-2{
	color:#3E3A39;
	font-size:14px;
	text-decoration: none;
}

.fs5{
	color:#3E3A39;
	font-size:14px;
	font-weight:bold;
	letter-spacing:3px;
}

.fs6{
    font-size:12px;
}

.fs7{
	color:#858585;
	font-size:14px;
	font-weight:bold;
	text-decoration: none;
}

.fs7-2{
	color:#858585;
	font-size:14px;
	text-decoration: none;
	margin-bottom:10px;
}


.ti{
	text-indent:30px;
	margin-top:10px;
}



.rel{
	position:relative;
}

.abs{
	position:absolute;
	top:-50px;
}

.fl::after{
	content:"";
	display:block;
	clear:both;
}

#sidebar{
	float:left;
	width:250px;
}


.fl-r{
	float:right;
}

.fl-l{
	float:left;
}



.bd{
	border-bottom:2px dotted #C7C8C8;
	padding-bottom:10px;
}

.bd2{
	border-top:2px dotted #C7C8C8;
}

.bd3{
	margin-top:5px;
	border-bottom:3px dotted #339933;
}

.bd4{
	border-bottom:1px solid #279AC8;
}
.orange{
  color: #EC643E;
}
.sky{
  color: #37bed4;
}
.spacew40{
  display: inline-block;
  width: 40px;
  height: auto;
}

.f13{
  font-size: 13px;
  line-height: 1.7;
}

.tp{
	padding:10px;
}

.pd{
	padding-top:300px;
}

.pd2{
    padding-top:600px;
}
.mt10{
  margin-top: 10px;
}
.mb10{
    margin-bottom:10px;
}

.bf:before{
	content:url("img/yajirushi2.png");
	margin-right:5px;
}

.bf2:before{
	content:url("img/yajirushi.png");
	margin-right:5px;
}
.logo{
  margin-right: 70px;
}
.logo img{
  width: 307px;
  height: 125px;
}
.tel{
  margin-bottom: 15px;
}
.header .container2{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: flex-end;
  padding: 35px 0 40px;
  justify-content: space-between;
}
.global-nav{
  width: 980px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  z-index: 100;
}
.global-nav li{
  flex-basis: 110px;
  position: relative;
}

.global-nav img{
  height: 100px;
}
.sub-nav{
  position: absolute;
  left: 52%;
  top: 100%;
  transform: translateX(-50%);
  display: none;
  background-color: rgba(250,186,0,0.8);
  z-index: 100;
  padding: 10px;
}
.sub-nav:before{
  top: -22px;
  position: absolute;
  content: '';
  border: 12px solid transparent;
  border-bottom: 10px solid rgba(250,186,0,0.8);
  left: 50%;
  transform: translateX(-50%);
}
.sub-nav li a{
  display: block;
  font-weight: bold;
  color: #37BED4;
  background-color: #fff;
  text-decoration: none;
  border: 1px dashed #37BED4;
  padding: 5px 10px;
  border-radius: 4px;
  font-size: 16px;
  white-space: nowrap;
}
.sub-nav li a:hover{
  opacity: .8;
}
.sub-nav li:not(:last-of-type){
  margin-bottom: 6px;
}
.global-nav > li:hover .sub-nav{
  display: block;
}

.topimg img{
  vertical-align: bottom;
  width: 100%;
}

footer ul{
	list-style:none;
	margin-top:20px;
}

footer ul li{
	display:inline-block;
}

footer ul li a{
	text-decoration:none;
	color:#279AC8;
	padding:10px;
	font-size:14px;
	font-weight:bold;
}

footer ul li a:before{
	content:url("images/yajirushi.png");
	margin-right:5px;
}


.va{
	vertical-align:10%;
}




a:hover img{
	opacity:0.7;
}

table tr td a{
	text-decoration:none;
}

/* top */
.bx-wrapper {
  box-shadow: 0 !important;
  border: 0;
}
.slidewrap{
  position: relative;

}
.slider{
  opacity: 0;
  transition: 2s;
  height: 0;
  padding-bottom: 30.7%;
}
.slider.loaded{
  height: auto;
  opacity: 1;
}
.loading{
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -18px;
  margin-top:  -18px;
  /*animation: loading-animation 2s linear infinite normal;*/
  display: inline-block;
}
@keyframes loading-animation {
    0% {
        tnsform: rotate3d(0,0,1,0deg);
    }
    100% {
        transform: rotate3d(0,0,1,360deg);
    }
}

/* shisetsu */

.bgbd{
	background-color:#37BED4;
	color:#ffffff;
	text-align:center;
	border-radius:10px;
	padding:5px;
}

.table2{
	border-collapse:separate;
	border-spacing:10px 10px;
}

/* goriyo */

.table3{
	border-collapse: collapse;
    border-spacing: 0;
}

.table3 th {
    padding: 10px 20px;
    width:200px;
    background-color: #EE939C;
    text-align: justify;
    text-align-last:justify;
    -moz-text-align-last: justify;
    text-justify:inter-ideograph;
    color:#ffffff;

}

.table3 td {
    padding: 10px 20px;
    background-color: #ffffff;
    border-top: 3px solid #F2F3F0;
    border-bottom: 3px solid #F2F3F0;
    color:#3E3A39;
    font-weight: bold;
    width:530px;
}

.table3 .bb{
    border-top: 3px solid #ffffff;
    border-bottom: 3px solid #ffffff;
}

.table3 .bb2{
	border-top: 3px solid #F2F3F0;
    border-bottom: 3px solid #ffffff;
}

.brl{
	border-top-left-radius:10px;
}

.brr{
	border-top-right-radius:10px;
}

.brl2{
	border-bottom-left-radius:10px;
}

.brr2{
	border-bottom-right-radius:10px;
}

/* company */

.table4{
    border-collapse: collapse;
    border-spacing: 0;
}

.table4 th {
    /*padding: 10px 20px;*/
    width:200px;
    background-color: #37bed4;
    /*text-align: justify;
    text-align-last:justify;
    -moz-text-align-last: justify;
    text-justify:inter-ideograph;
    color:#ffffff; */

}

.table4 td {
    padding: 10px 20px;
    background-color: #ffffff;
    border-top: 2px dotted #37bed4;
    border-bottom: 2px dotted #37bed4;
    color:#3E3A39;
    font-weight: bold;
    width:450px;
}

.table4 .bdn{
    border-top:none;
}

.table4 .bdn2{
    border-bottom:none;
}

.table4 .bb{
    border-top: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
}

/*
.table4 .bb2{
    border-top: 2px solid #F2F3F0;
    border-bottom: 2px solid #ffffff;
}
*/

/* sitemap */
.sitemap{
  overflow: hidden;
  margin: 20px;
}
.sitemap-content{
	min-width: 200px;
	padding: 20px 15px 20px 0;
}

.sitemap a{
  display: block;
	text-decoration:none;
	color:#858585;
	padding:10px;
	font-size:14px;
	font-weight:bold;
	letter-spacing:2px;
}

.sitemap a:before{
	content:url("img/yajirushi3.png");
	margin-right:5px;
}
.sitemap-group-3{
  background: url('./images/line-sitemap_3.svg') 30px -5px no-repeat;
  padding-left: 45px;
}
.sitemap-group-2{
  background: url('./images/line-sitemap_2.svg') 30px -5px no-repeat;
  padding-left: 45px;
}
.sitemap-group-3 a,
.sitemap-group-2 a{
  padding: 5px 10px;
}

/*------------------------------------------------------------------
teacher / 先生紹介
--------------------------------------------------------------------*/
.archive-teacher-contents{
    margin-top: 60px;
}
.archive-teacher-contents article{
  background-color: #fff;
  box-sizing: border-box;
  padding: 40px;
  border-radius: 40px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: #000;
  overflow: hidden;
  font-size: 15px;
}
.archive-teacher-contents img{
  float: left;
  margin-right: 30px;
  border-radius: 30px;
}

.teacher-name{
  font-size: 24px;
  margin-bottom: 0;
}
.teacher-name span{
  font-size: 18px;
  margin-left: 8px;
}
.teacher-plofile{
  margin-top: 30px;
  margin-bottom: 10px;
}
.teacher-plofile th{
    vertical-align: top;
    white-space: nowrap;
}
.term-name {
  display: inline-block;
  padding: 0px 5px;
  margin-bottom: 10px;
  color: #fff;
}
.tarm-instructor{
  background: #00bcd2;
}
.tarm-roomleader{
  /*background: #ffba7f;*/
  background: #85b598;
}

/*------------------------------------------------------------------
place / 施設案内
--------------------------------------------------------------------*/
.facility-title{
  background: transparent url('./images/icon_facility.svg') left center no-repeat;
  -webkit-background-size: 100%;
  background-size: 37px;
  font-size: 22px;
  font-weight: bold;
  padding-left: 45px;
  margin: 30px 0 50px;
}
.fc-mainimage{
  width: 100%;
  margin-bottom: 40px;
}
.fc-subimage{
  width: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  margin-bottom: 100px;
}
.place-table{
  font-size: 17px;
  line-height: 2em;
  width: 85%;
}
.place-table .table-tr{
  display: table;
  width: 100%;
}
.place-table .table-th{
  display: table-cell;
  width: 20%;
  padding: 5px 15px 5px 5px;
  vertical-align: middle;
  text-align: justify;
  text-justify: inter-ideograph;
}
.place-table .table-th span{
  display: inline-block;
  line-height: 26px;
  padding-top: 2px;
  width: 100%;
  background-color: #37bed4;
  color: #fff;
  font-size: 13px;
  border-radius: 6px;
  text-align: center;
}
.place-table .table-td{
  display: table-cell;
  width: 80%;
  color: #000;
  padding: 5px;
}
.map{
  margin-top: 30px;
}
.map h5{
  margin-bottom: 10px;
}
.map iframe{
  width: 700px;
  height: 450px;
}
.table{
  display: table;
  color: #000;
  border-bottom: 1px dotted #848485;
}
.table:last-of-type{
  border-bottom: 0;
}
.table-cell{
  display: table-cell;
}
.table-cell:first-child{
  width: 30%;
}
.post-facility-archive,.post-teacher-archive{
  text-decoration: none;
  color: #000;
  cursor: default;
}

/*------------------------------------------------------------------
voice / 保護者の声
--------------------------------------------------------------------*/
.archive-voice-contents{
  margin-top: 50px;
}
.article-voice-top{
  width: 697px;
  height: 32px;
  background: url(images/bg_voice.png) left top no-repeat;
  background-size: 697px auto;
}
.article-voice-content{
  width: 697px;
  box-sizing: border-box;
  font-size: 14px;
  background: url(images/bg_voice-content.png) left top repeat-y;
  padding: 15px 25px;
  margin-bottom: 45px;
}
.article-voice-content p{
  display: inline;
}
/*------------------------------------------------------------------
exercise / 療育内容
--------------------------------------------------------------------*/
.ul-ex{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  width: 460px;
  justify-content: space-between;
  position: relative;
  left: 50%;
  bottom: -5px;
  transform: translateX(-50%);
}
.ul-ex li{
}
.box-ex-top{
  background-color: #fff;
  padding: 45px;
  border-radius: 40px;
  margin-bottom: 50px;
}
[class^="box-ex"] p{
  font-size: 17px;
  line-height: 2em;
  margin-bottom: 10px;
}
.box-ex-1,.box-ex-2{
  background-color: #fff;
  padding: 45px 10px 10px;
  border-radius: 40px;
  margin-bottom: 50px;
}
.title-ex{
  margin-bottom: 10px;
}
.title-ex-1{
  display: block;
  margin: 0 auto 30px;
}
.box-ex-inner{
  display: block;
  border-radius: 0 0 40px 40px;
  padding: 70px 50px 40px;
  background: #F2F3F0 url('./images/bg_dotted.png');
  font-size: 17px;
}
.box-ex-inner .rel .abs{
  position: absolute;
  top: 100px;
  left: 35px;
  line-height: 1.8;
 }
.box-ex-inner .rel p{
  line-height: 1.7;
  margin: 10px 0 15px 5px;
}
.block-ex{
  overflow: hidden;
  clear: both;
  padding:0 30px;
}
.table-ex{
  margin: 0 30px 70px;
}
.table-ex th{
  width: 32%;
  padding: 20px 0 20px 25px;
  background-color: #37A4DE;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #fff;
  vertical-align: middle;
  border-top: 2px solid #37A4DE;
  border-bottom: 2px solid #fff;
}
.table-ex td{
  padding: 10px 20px;
  background-color: #fff;
  vertical-align: middle;
  border-right: 2px solid #37A4DE;
  border-bottom: 2px solid #37A4DE;
  line-height: 2;
}
.table-ex tr:last-of-type th{
  border-bottom: 2px solid #37A4DE;
}
.table-ex td:first-of-type{
  border-top: 2px solid #37A4DE;
}
.box-ex-3 img{
  display: block;
  margin: 90px auto 50px;
}
.box-ex-3-content{
  width: 28em;
  margin: 0 auto;
}
.box-ex-3 p{
  margin-bottom: 35px;
}
.ls4{ letter-spacing: 1em; }
.ls5{ letter-spacing: .53em; }
.ls6{ letter-spacing: .2em; }

/*子供達の様子*/
.box_statechild {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
	width: 668px;
	margin-left: 42px;
}
.box_statechild li {
	width: 216px;
	margin: 0 0 20px 0;
	line-height: 1.6;
}
.box_statechild li a {
	text-decoration: none;
	display: block;
	font-weight: bold;
}
.box_statechild li:nth-child(3n-1) {
	margin: 0 10px 20px 10px;
}
.box_statechild li span {
	display: block;
}
.box_statechild .statechild_img {
	overflow: hidden;
	width: 216px;
	height: 150px;
	position: relative;
	margin-bottom: 10px;
	border-radius: 20px;
	background: #fff;
}
.box_statechild .statechild_img img {
	width: 100%;
	height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.box_statechild .statechild_room {
	float: left;
	color: #ed9c9c;
	letter-spacing: 0.2em;
	font-size: 12px;
	padding-left: 5px;
}
.box_statechild .statechild_days {
	float: right;
	color: #575352;
	font-size: 12px;
	padding-right: 5px;
}
.box_statechild .statechild_ttl {
	clear: both;
	color: #3e3a39;
	font-size: 14px;
	padding-left: 5px;
}
.top_statechild_ttl {
	margin: 0 0 20px 42px;
}

/*------------------------------------------------------------------
movie / 動画紹介
--------------------------------------------------------------------*/
.archive-movie-contents {}
.archive-movie-contents ul li {
  margin-bottom: 70px;
}
.mv_ttl {
  font-size: 18px;
  font-weight: bold;
  color: #ee939c;
  margin: 0 0 10px;
  padding: 0;
}
.mv_comment {
  font-weight: bold;
  color: #ee939c;
  margin: 0 0 20px;
  padding: 0;
}
.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

/*　260410追記　*/
.doc {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  gap: 10px;
  box-sizing: border-box;
}

.doc li {
  width: calc(100% / 3 - 10px);
  box-sizing: border-box;
}

.doc a {
  display: block;
  background: #fff;
  color: #EE939C;
  border: 2px solid #EE939C;
  font-weight: 700;
  padding: 15px;
  text-align: center;
  box-sizing: border-box;
  text-decoration: none;
  transition: all .3s;
}

.doc a:hover {
  background: #EE939C;
  color: #fff;
}