/*
ここに独自の CSS を追加することができます。

詳しくは上のヘルプアイコンをクリックしてください。
*/
/* デフォルト */
.ogp_card{
  display: block;
  background: #FFFFFF;
  color: #000000;
  width: 95%;
  max-width: 500px;
  border-radius:3px;
  border: 1px solid #DDDDDD;
  margin: 10px 0 25px 0;
  padding: 10px;
  font-size: 75%;
  line-height: 17px;
}

.ogp_card a{
  font-weight:bold;
  font-size: 16px;
  color: #3D3F44;
  text-decoration: none;
}

.ogp_card .title{
  margin: 3px 0 5px 0;
}

.ogp_card .copy{
  padding: 0;
  margin: 10px 0 0 0;
}

.ogp_card .copy a{
  font-size: 70%;
  font-weight: normal;
  color: #9AA5AB;
}

.ogp_card a:hover{
  text-decoration: underline;
}

.ogp_card img{
  float:right;
  margin: 0 0 10px 10px;
}

.ogp_card .clearfix {
  clear: both;
}

@media only screen and (max-width: 767px) {
.ogp_card img{
  width: 80px;
  height: 80px;
  margin: 0 0 7px 7px;
}

.ogp_card a{
  font-size: 14px;
}
}

/* OGPが無い場合 */
.html_card{
  display: block;
  background: #FFFFFF;
  color: #000000;
  width: 95%;
  max-width: 500px;
  border-radius:3px;
  border: 1px solid #DDDDDD;
  margin: 10px 0 25px 0;
  padding: 10px;
  font-size: 75%;
  line-height: 17px;
}

.html_card a{
  font-weight:bold;
  font-size: 16px;
  color: #3D3F44;
  text-decoration: none;
}

.html_card .title{
  margin: 3px 0 5px 0;
}

.html_card .copy{
  padding: 0;
  margin: 10px 0 0 0;
}

.html_card .copy a{
  font-size: 70%;
  font-weight: normal;
  color: #9AA5AB;
}

.html_card a:hover{
  text-decoration: underline;
}

@media only screen and (max-width: 767px) {
.html_card a{
  font-size: 14px;
}
}



.pink_line {background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FFDFEF 0%) repeat scroll 0 0;}

.blue_line{background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #cce5ff 0%) repeat scroll 0 0;}

.yellow_line {background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #ffffbc 0%) repeat scroll 0 0;}







/*バナー用のやつ*/

.example {
  position: relative;
  }

.example a {/*aタグを画像の真ん中に*/
  position: absolute;
  left: 67%;
	right: 2%;
	bottom: 1%;
  }

.example a:hover{

	/* 透明度を上げることで、画像の色を薄く見せる。*/
	opacity:0.7;

	/* リンクをホバーしたときのカーソルにする。*/
	cursor: pointer;
}


.example img {
  width: 100%;
  }

.col.s6 a:hover{
	opacity:0.65;
}

.ifrm-container {
  width: 1024px;
  max-width: 90%;
	height:600px;
      overflow:auto;
      -webkit-overflow-scrolling:touch;
      display: inline-block;
      margin: 10px;
    }

    .ifrm {
      width:100%;
      height:100%;
      border:none;
      display:block;
    }








	/* 目次をつける。*/

@import url('https://fonts.googleapis.com/css?family=Mandali');

#toc_container {
  margin-bottom: 40px;
  padding: 15px 20px;
  background: #fff;
  border: 5px solid #fdeff2;
  border-radius: 2px;
  color: #666; }

#toc_container .toc_title {
  font-family: 'Mandali', cursive;
  text-align: center;
  margin-bottom: 35px;
  margin-top: 0;
  padding-top: 0;
color:#e597b2;
  padding-bottom: 0px;
  font-size: 1.7em;
  border-bottom: 2px solid #fdeff2; }

#toc_container .toc_list {
  list-style-type: none !important;
  counter-reset: li; }

#toc_container .toc_list > li {
  position: relative;
  margin-bottom: 15px;
padding-top:2px;
  margin-left: 6px;
  line-height: 1.3em;
  font-size: 0.9em; }

#toc_container .toc_list > li:after {
  counter-increment: li;
  content: counter(li) ;
  position: absolute;
  left: -35px!important;
  top: 0px;
  background: none;
  font-family: 'Mandali', cursive;
  font-size: 1.4em;
  letter-spacing: 0px;
  color: #e597b2; }

#toc_container .toc_list > li a {
  text-decoration: none !important;
color:#666; }

#toc_container .toc_list > li a:hover {
  text-decoration: underline !important; }

#toc_container .toc_list > li ul {
  list-style-type: disc;
  margin-top: 15px;
  padding-left: 20px;
  color: #e597b2; }

#toc_container .toc_list > li > ul li {
  font-size: 0.9em;
  margin-bottom: 8px; }

@media only screen and (min-width: 641px) {
  #toc_container {
    padding: 25px 40px; }

  #toc_container .toc_title {
    font-size: 2em; }

  #toc_container .toc_list > li {
    margin-bottom: 18px;
    margin-left: 12px;
    font-size: 1em; }

  #toc_container .toc_list > li:after {
    left: -48px;
    top: 0px;
    font-size: 26px; } }

	/* check pointをつける。*/
.box27 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #e597b2;
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    vertical-align: middle;
    font-size: 17px;
    background: #e597b2;
    color:#ffffff ;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box27 p {
    margin: 0; 
    padding: 0;
}





.wrapper{
    overflow: hidden;
	border: solid #AED4D3;
	background-color:#AED4D3;
}
.item{
    float: left;
    margin: 10px 2% 10px 2%;
    padding 4px 0 0 0;
    width: 46%;
	background-color:#AED4D3;
	
}


.title-sm{
	font-size: 28px;
	font-weight:700;
	text-align: center;
	background-color: rgba(0, 0, 0, 0);
	color:#FFF;
	/* Box */
	height: 100%;
	width: 100%;
	margin: 0 0 10px 0;
	padding: 4px;
}




.square_btn{
    display: inline-block;
    padding: 7px 20px;
	border-radius: 25px;
    text-decoration: none;
    color: #FFF;
        background-image: -webkit-linear-gradient(#6795fd 0%, #67ceff 100%);
    background-image: linear-gradient(#6795fd 0%, #67ceff 100%);
    transition: .4s;
	font-size:28px
}

.square_btn a{color: white;
  }

.square_btn:hover{
    background-image: -webkit-linear-gradient(#6795fd 0%, #67ceff 70%);
    background-image: linear-gradient(#6795fd 0%, #67ceff 70%);
}


.time_schedule{
	font-size:5px;
	padding:0;
	margin:2px;
}


.clearfix::after{
  content: "";
  display:flex;
  clear: both;
	
}


@media screen and (max-width: 640px) {
.item{
float: none;
width:90%;
margin: 5px 5% 0 5%;
}



}




/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.pc { display: none !important; }
.sp { display: block !important; }
}


.triple_column{
	 float: left;
    margin: 10px 1% 10px 1%;
    padding 4px 0 0 0;
    width: 31%;
	background-color:#F1F1F1;
	
}


@media screen and (max-width: 640px) {
.triple_column{
float: none;
width:95%;
margin: 5px 2.5% 5px 2.5%;
}

}

.double_column{
	 float: left;
    margin: 10px 2.5% 10px 2.5%;
    padding 0 0 0 0;
    width: 45%;
	background-color:#F1F1F1;
	
}

.double_column img:hover{
	 opacity:0.65;
	
}

.pc img:hover{
	opacity: 0.65;
}

.sp img:hover{
	opacity: 0.65;
}

.image_opacity img:hover{
	opacity:0.65;
}

@media screen and (max-width: 640px) {
.double_column{
float: none;
width:95%;
margin: 5px 2.5% 5px 2.5%;
}

}

.triple_column a:hover{
	opacity:0.65;
}

.col.s6.double{
	margin:10px 0 10px 0;
}

@media screen and (max-width: 640px) {
.col.s6.double{
float: none!important;
width:95%!important;
margin: 5px 2.5% 5px 2.5%!important;
}

}





/* 引用のボックス */


blockquote {
    position: relative;
    padding: 7px 16px;
    box-sizing: border-box;
    font-style: italic;
    color: #464646;
    border: solid 3px #72ccf4;
}

blockquote:before{
    display: inline-block;
    position: absolute;
    top: -20px;
    left: -20px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
    vertical-align: middle;
    text-align: center;
    content: "\f10d";
    font-family: FontAwesome;
    background: #72ccf4;
    color: #FFF;
    font-size: 22px;
    font-weight: 900;
}

blockquote:after{
    display: inline-block;
    position: absolute;
    bottom: -20px;
    right: -20px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
    vertical-align: middle;
    text-align: center;
    content: "\f10e";
    font-family: FontAwesome;
    background: #72ccf4;
    color: #FFF;
    font-size: 22px;
    font-weight: 900;
}

blockquote p {
    padding: 0;
    margin: 10px 0;
    line-height: 1.7;
}

blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}




/* 吹き出し本体 */

.balloon5 {
    width: 100%;
    margin: 1.5em 0;
    overflow: hidden;
}

.balloon5 .faceicon {
    float: left;
    margin-right: -90px;
    width: 80px;
}

.balloon5 .faceicon img{
    width: 100%;
    height: auto;
    border: solid 3px #d7ebfe;
    border-radius: 50%;
}

.balloon5 .chatting {
    width: 100%;
}

.says {
    display: inline-block;
    position: relative; 
    margin: 5px 0 0 105px;
    padding: 17px 13px;
    border-radius: 12px;
    background: #d7ebfe;
}

.says:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 18px; 
    left: -24px;
    border: 12px solid transparent;
    border-right: 12px solid #d7ebfe;
}

.says p {
    margin: 0;
    padding: 0;
}


/*ブログカード用CSS*/
.blogcard {
  line-height: 1;
  background-color: #ffffff;
  border: 1px solid #eeeeee;
  word-wrap: break-word;
  margin: 40px;
  box-shadow: 0 0 10px 6px rgba(0,0,0,.025);
}
.blogcard a {
  text-decoration: none;
  opacity: 1;
  transition: all 0.2s ease;
}
.blogcard a:hover {
  opacity: 0.6;
}
.blogcard_thumbnail {
  float: left;
  padding: 20px;
}
.blogcard_title {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.4;
  padding: 17px 20px 10px;  
}
.blogcard_excerpt {
  font-size: 0.85em;
  line-height: 1.6;
  padding: 0 17px 15px 20px;
}

@media screen and (max-width: 768px) {
  .blogcard {
    margin: 40px 0;
  }
  .blogcard_title {
    font-size: 0.95em;
    padding-bottom: 17px;
  }
  .blogcard_excerpt  {
    display: none;
  }
}

/* オーバーレイボタン */
 @media (min-width:768px) {
#olayBtn {
	display: none;
}
}

 @media (max-width:767px) {
#olayBtn {
	position: fixed;
	width: 100%;
	background: #AED4D3;
	padding: 10px;
	box-sizing: border-box;
	z-index: 1000;
	text-align:center;
	text-decoration: underline;
}

#olayBtn a{
	color: #3d3d3d;
	font-size:16pt;
  }

#olayBtn a:hover{
	opacity: 0.6;
  }
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
