/*
Theme Name: 17_child
Template: twentyseventeen
*/
 
@import url('../twentyseventeen/style.css');




.page-one-column .panel-content .wrap {
max-width: 1000px;
}


.site-map >ul>li{
	margin-left: 18px;
	text-decoration: none;
}
.site-map {
	text-decoration: none;
}
/*.page_item{
	margin-left: 18px;
}*/

blockquote {
background-color:#eee;
	padding: 20px 20px 0 20px;
	margin: 0 0 20px 0;
	border-radius: 8px;
}

/*メニューボタンを追加する*/
.drawer-menu {
    box-sizing: border-box;
    position: fixed;
    bottom: 0;
    right: 0;
	width: 250px;/*メニューの横幅*/
	height: 350px;/*メニューの縦幅*/
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: .5s;
    transition-duration: .5s;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
    -webkit-transform: perspective(500px) rotateY(90deg);
    transform: perspective(500px) rotateY(90deg);
    opacity: 0;
	/*↓メニュー枠線のデザイン。ご自由に*/
background: #fff;
	box-shadow: 0 0 0 5px #fff;
border: 1px dashed #668ad8;
padding: .2em .5em;
color: #668ad8;
	border-radius:10px 0 0 10px;
	/*↑メニュー枠線のデザイン*/
}

/*ボタンを押したときの左側の黒い部分*/
.close-menu {
    position: fixed;
    top: 0;
    right: 250px;	/*メニューの横幅を増やしたらrightも増やす*/
    width: 100%;
    height: 100vh;
    background: rgba(0,0,0,0);
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    visibility: hidden;
    opacity: 0;
}

.bar {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
	width: 40px;/*横線の幅*/
	height: 1px;/*横線の太さ*/
	background: #668ad8;/*ボタンの色*/
    -webkit-transition: all .5s;
    transition: all .5s;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
}

.bar.middle {
    top: 15px;
    opacity: 1;
}

.bar.bottom {
    top: 30px;
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
}

.menu-btn {
    position: fixed;
    display: block;
	bottom: 10px;/*ボタンの場所。右上にしたければtop: 10px*/
    right: 5px;
	width: 40px;
	height: 40px;
    font-size: 10px;
    text-align: center;
    cursor: pointer;
		color: #668ad8;
    z-index: 2147483647;/*重なり順を一番上に*/
}

.check:checked ~ .drawer-menu {
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1;
    z-index: 2147483646;
}

.check:checked ~ .contents {
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transform: translateX(-250px);
    -ms-transform: translateX(-250px);
    transform: translateX(-250px);
}

.check:checked ~ .menu-btn .menu-btn__text {
    visibility: hidden;
    opacity: 0;
}

.check:checked ~ .menu-btn .bar.top {
    width: 56px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.check:checked ~ .menu-btn .bar.middle {
    opacity: 0;
}

.check:checked ~ .menu-btn .bar.bottom {
    width: 56px;
    top: 40px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.check:checked ~ .close-menu {
    -webkit-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
    background: rgba(0,0,0,.5);
    visibility: visible;
    opacity: 1;
	z-index: 2147483647;/*重なり順を一番上に*/
}

.menu-btn:hover .bar {
    background: #668ad8;
}

.menu-btn:hover .menu-btn__text {
    color: #668ad8;
}

.menu-btn__text {
    position: absolute;
    bottom: -12px;
    left: 0;
    right: 0;
    margin: auto;
    color: #668ad8;
    -webkit-transition: all .5s;
    transition: all .5s;
    display: block;
    visibility: visible;
    opacity: 1;
	font-size:13px;
}

.check {
    display: none;
}

.drawer-menu ul {
  position:relative;
	width:100%;
	list-style: none;
}

.drawer-menu li {
	margin-top: 20px; /* add menu top margin */
 margin-left: 10px;/*各メニューリストの左余白*/
border-bottom: 1px dotted #668ad8;/*各メニューリストの下線*/
}

.drawer-menu li a {
    display: block;
	height: 25px;/*各メニューリストの縦幅 underline */
    line-height: 20px;/*各メニューリストの縦幅*/
    font-size: 15px;
    -webkit-transition: all .8s;
    transition: all .8s;
}
/*メニューボタンここまで*/


@media screen and (min-width:640px){
	.menu-btn {
		display: none;
	}
}


@media screen and (max-width:640px){
	.main-navigation {
		display: none;
	}
}


.custom-header-media {
	opacity: 0.6;
}

h1 {
	color: #668ad8;
}
h2 {
	color: #668ad8;
}
h3 {
	color: #668ad8;
	border-left: solid 5px #62c1ce;
	margin-top: 20px;
	margin-bottom: 30px;
	padding: 7px 0 0 7px;
	background: #ECF0F8;
}
h4 {
	color: #668ad8;
	font-size: 20px;
	padding: 8px 0 0px 0;
}

/**********************************************/
/* サイトタイトルのアニメーション */
/**********************************************/
/*.site-branding-text {
    animation: fadeIn 5s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
}
	@keyframes fadeIn {
		0% {opacity: 0}
    	100% {opacity: 1}
	}
	@-webkit-keyframes fadeIn {
    	0% {opacity: 0}
    	100% {opacity: 1}
	}
*/
/* サイトディスクリプション */
@media screen and (min-width: 48em) {
	.site-description {
		font-size: 30px;
		font-size: 1.875rem;
	}
}

/* 投稿日時・投稿者・カテゴリーを消す
.entry-meta {
    display: none;
}
 */

/* アニメーションフェードイン
.wrapper {
  margin: 20px;
  position: relative;
}
.item {
  position: absolute;
  width: 300px;
  height: 300px;
  border-radius: 0%;
  opacity: 0; /* ←初期値を変更。透明に。*/
  animation: 1s fadeIn forwards; /* ←追加 */
}
.is-1 {
  top: 10px;
  left: 10px;
  background: #ccffcc;
  animation-delay: 1s; /* ←さらに追加 */
}
.is-2 {
  top: 50px;
  left: 50px;
  background: #99ffcc;
  animation-delay: 2s; /* ←さらに追加 */
}
.is-3 {
  top: 100px;
  left: 100px;
  background: #55ffcc;
  animation-delay: 3s; /* ←さらに追加 */
}
@keyframes fadeIn { /* ←追加 */
  from { opacity: 0.2; }
  to { opacity: 0.3; }
}
 */

/* ラップ */
.wrapper1 {
  display: block;
  position: relative;
  margin: 50px auto;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 10px;
  padding-left: 20px;
  background: #ffe4e1;
}

.wrapper2 {
  display: block;
  position: relative;
  margin: 50px auto;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 10px;
  padding-left: 20px;
  background: #e6ffe9;
}

.wrapper2-5 {
-webkit-appearance:none;
  display: block;
  position: relative;
	margin-top: 10px;		/* 追加 */
	margin-bottom: 10px;		/* 追加 */
	margin-left: -500%;		/* 追加 */
	margin-right: -500%;		/* 追加 */
	padding-top: 60px;
	padding-bottom: 30px;
	padding-left: 500%;		/* 追加 */
	padding-right: 500%;		/* 追加 */
/*padding-right: 10px;
  padding-left: 20px;*/
  background: #e6ffe9;
}

.wrapper3 {
  display: block;
  position: relative;
  margin: 30px 0 50px 0;
  padding-top: 15px;
  padding-bottom: 10px;
  padding-right: 25px;
  padding-left: 25px;
  background: #d9e5ff;
}

/* フェードイン＆フェードアウト */
.fade{
  animation: fadeIn 0.2s ease 0.3s 1 normal;
}
@keyframes fadeIn { /*animetion-nameで設定した値を書く*/
  0% {opacity: 0} /*アニメーション開始時は不透明度0%*/
  100% {opacity: 1} /*アニメーション終了時は不透明度100%*/
}

/*下からフェードイン*/
.fade-in-bottom {
   opacity: 0;
   animation-name: fadein-bottom;
   animation-duration: 1.5s;
   animation-timing-function: ease-out;
   animation-fill-mode: forwards;
}
@keyframes fadein-bottom {
   0% {
      opacity: 0;
      transform: translateY(20px);
   }
   100% {
      opacity: 1;
      transform: translateY(0);
   }
}

/* 画像に文字を重ねる */
.example {
  position: relative;
  }
.example p {
	color:#333333;
	font-size:20px;
  position: absolute;
  top: 0%;
  left: 0%;
	background: #ffffff;	/*背景色追加*/
	opacity : 0.8;		/*透明度追加*/
  line-height: 1;		/*行高は1に*/
  padding: 3px 3px;		/*文字周りの余白*/
  border-radius: 0px;		/*角丸追加*/
  }
.example p2 {
	color:#ffffff;
	font-size:20px;
  position: absolute;
  right: 5%;
  bottom: 5%;
	background: #aaaaaa;	/*背景色追加*/
	opacity : 0.8;		/*透明度追加*/
  line-height: 1;		/*行高は1に*/
  padding: 5px 15px;		/*文字周りの余白*/
  border-radius: 10px;		/*角丸追加*/
  }
.example p3 {
	font-color:#ffffff;
	font-size:30px;
	background: #ffffff;
	opacity: 0.5;
	text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  line-height: 1;		/*行高は1に*/
  padding: 3px 3px;		/*文字周りの余白*/
	border: solid 3px #ffffff;
  border-radius: 10px;		/*角丸追加*/
  }

a.white:link {
text-decoration : none;
color : #ffffff;
}
a.white:visited {
text-decoration : none;
color : #ffffff;
}
a.white:active {
text-decoration : none;
color : #ffffff;
}
a.white:hover {
text-decoration : none;
color : #ffffff;
}

/* Container */
.container {
  margin: 0 auto;
  padding: 0px;
  width: 100%;
  background-color: #fff;
  column-count: 3;
  column-gap: 2;
	text-align: center;
	font-size: 18px;
}
.grid {
  padding: 0px;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}
@media (max-width: 48em) {
  .container {
    column-count: 1;
  }
}

.circle {
  display: inline-block;
  text-decoration: none;
  color: #668ad8;
  width: 90px;
  height: 90px;
  line-height: 90px;
  border-radius: 50%;
  border: solid 1px #668ad8;
  text-align: center;
  overflow: hidden;
  font-weight: bold;
  transition: .4s;
}


.box1 {
	background: #99ccff;
	padding: 10px 10px 10px 20px;
	margin: 10px 100px 0px 100px;
	border-radius: 10px;
	color: #fff;
	font-size: 20px;
}

.triangle1 {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 30px 0 30px;
	border-color: #99ccff transparent transparent transparent;
	margin: 0 auto;
}

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


.align {
	text-align: center;
}

.btn1 {
	font-size: 25px;
	text-decoration: none;
	margin: 10px auto 10px auto;
	padding: 6px 20px 4px 20px;
  position: relative;
  display: inline-block;
  font-weight: normal;
  color: #FFF;
  background: #00CC00;
  transition: .4s;
  border-radius: 10px;
	border-bottom: solid 4px #627295;
	vertical-align:middle;
	position:relative;
}

.btn1p {
  text-decoration: none;
	font-color: #fff;
	margin: 0 auto;
	font: 50px;
	vertical-align:middle;
	position:absolute;
	top:50%;
}


.example img {
  width: 100%;
  }

/* フェードイン用のCSS */
.slide-bottom {
   opacity: 0;
   transform: translateY(20px);
   transition: all 1.3s 0s ease-out;
 }

/* 上からフェードイン
.slide-top {
	opacity: 0;
	transform: translate(0, -20px);
	transition: all 1s ease-out;
 }

/* 下からフェードイン */
.slide-bottom {
	opacity: 0;
	transform: translate(0, 20px);
	transition: all 1s ease-out;
 }

 /* 左からフェードイン */
.slide-left {
	opacity: 0;
	transform: translate(-20px, 0);
	transition: all 1s ease-out;
 }

/* 右からフェードイン */
.slide-right {
	opacity: 0;
	transform: translate(20px, 0);
	transition: all 1s ease-out;
 }
 */

/*  
  .css-fade5--in {
    // アニメーション設定
    animation-name: fade-in5;
    animation-duration: 1s; //アニメーション時間
    animation-timing-function: ease-out; //アニメーションさせるイージング
    animation-delay: 0; //アニメーション開始させる時間
    animation-iteration-count: 1; //繰り返し回数
    animation-direction: normal; //往復処理をするかどうか
    animation-fill-mode: forwards; //アニメーション後のスタイルをどうするか
  }
  // アニメーション
  @keyframes fade-in5 {
    0% {
      opacity: 0;
      transform: translate3d(0, 30px, 0);
    }
    100% {
      opacity: 1;
      transform: translate3d(0, 0, 0);
    }
  }
*/

/* スクロールしてフェードイン
ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 750px;
	margin: 0 auto;
	padding: 50px 25px;
}
li{
	width: 48%;
	margin: 0 0 100px;
}
img{
	width: 100%;
	height: auto;
}
/*アニメーション要素のスタイル*/
.animation{
	opacity : 0;
	visibility: hidden;
	transition: 1s;
	transform: translateY(30px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
 */

/* ブロック要素ごとスクロールでフェードイン
.fadein {
    opacity : 0;
    transform : translate(0, 50px);
    transition : all 300ms;
}
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}
 */

/* 使用したふわっと画像を表示させる */
#animation {
margin: 50px 0;
font-size: 40px;
font-weight: bold;
color: #ff0000;
}

.fadeInDown {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:3s;
 -ms-animation-duration:3s;
 animation-duration:3s;
 -webkit-animation-name: fadeInDown;
 animation-name: fadeInDown;
 visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-50px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-50px); -ms-transform: translateY(-50px); transform: translateY(-50px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}

/* スマホ画像半分 */

/* フェードインパターン */
 .fadein {
  opacity: 0;
  transform : translate(0, 50px);
  transition : all 1500ms;
}
.fadein.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}

.blog:not(.has-sidebar) #primary article,
.archive:not(.page-one-column):not(.has-sidebar) #primary article,
.search:not(.has-sidebar) #primary article,
.error404:not(.has-sidebar) #primary .page-content,
.error404.has-sidebar #primary .page-content,
body.page-two-column:not(.archive) #primary .entry-content,
body.page-two-column #comments {
	float: right;
	width: 100%;
}

@media screen and (min-width: 768px) {
	.navigation-top {
		top: 0;
		bottom: auto;
		position: fixed;
	}
	.site-branding {
		margin-bottom: 0 !important;
	}
	.twentyseventeen-front-page.has-header-image .custom-header,
	.twentyseventeen-front-page.has-header-video .custom-header,
	.home.blog.has-header-image .custom-header,
	.home.blog.has-header-video .custom-header {
/*		height: 100vh !important;*/
		height: 65vh;
	}
	.custom-header {
		margin-bottom: 0 !important;
		padding-top: 77px;
	}
	.admin-bar .navigation-top {
		top: 32px;
	}
	.admin-bar.twentyseventeen-front-page.has-header-image .custom-header,
	.admin-bar.twentyseventeen-front-page.has-header-video .custom-header,
	.admin-bar.home.blog.has-header-image .custom-header,
	.admin-bar.home.blog.has-header-video .custom-header {
		margin-top: -32px;
	}
}

.navigation-top {
	background: #CDE0FF;
	border-bottom: #CDE0FF;
}

.site-footer {
	background: #CDE0FF;
}


ul {
	margin-left: 18px;
}
li {
	margin-bottom: 15px;
}


.has-header-image.twentyseventeen-front-page .custom-header,
.has-header-video.twentyseventeen-front-page .custom-header,
.has-header-image.home.blog .custom-header,
.has-header-video.home.blog .custom-header {
	height: 35vh;
}
@media screen and (min-width: 48em) {
	.admin-bar.twentyseventeen-front-page.has-header-image .custom-header-media,
	.admin-bar.twentyseventeen-front-page.has-header-video .custom-header-media,
	.admin-bar.home.blog.has-header-image .custom-header-media,
	.admin-bar.home.blog.has-header-video .custom-header-media {
		height: calc(35vh - 32px);
	}
	.twentyseventeen-front-page.has-header-image .custom-header-media,
	.twentyseventeen-front-page.has-header-video .custom-header-media,
	.home.blog.has-header-image .custom-header-media,
	.home.blog.has-header-video .custom-header-media {
		height: 35vh;
	}
}


.entry-content a:focus,
.entry-content a:hover,
.entry-summary a:focus,
.entry-summary a:hover,
.widget a:focus,
.widget a:hover,
.site-footer .widget-area a:focus,
.site-footer .widget-area a:hover,
.posts-navigation a:focus,
.posts-navigation a:hover,
.comment-metadata a:focus,
.comment-metadata a:hover,
.comment-metadata a.comment-edit-link:focus,
.comment-metadata a.comment-edit-link:hover,
.comment-reply-link:focus,
.comment-reply-link:hover,
.widget_authors a:focus strong,
.widget_authors a:hover strong,
.entry-title a:focus,
.entry-title a:hover,
.entry-meta a:focus,
.entry-meta a:hover,
.page-links a:focus .page-number,
.page-links a:hover .page-number,
.entry-footer a:focus,
.entry-footer a:hover,
.entry-footer .cat-links a:focus,
.entry-footer .cat-links a:hover,
.entry-footer .tags-links a:focus,
.entry-footer .tags-links a:hover,
.post-navigation a:focus,
.post-navigation a:hover,
.pagination a:not(.prev):not(.next):focus,
.pagination a:not(.prev):not(.next):hover,
.comments-pagination a:not(.prev):not(.next):focus,
.comments-pagination a:not(.prev):not(.next):hover,
.logged-in-as a:focus,
.logged-in-as a:hover,
a:focus .nav-title,
a:hover .nav-title,
.edit-link a:focus,
.edit-link a:hover,
.site-info a:focus,
.site-info a:hover,
.widget .widget-title a:focus,
.widget .widget-title a:hover,
.widget ul li a:focus,
.widget ul li a:hover {
	color: #A4C6FF;/*マウスオーバー時の文字色*/
	-webkit-box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 1px 0 rgba(0, 0, 0, 0);/*マウスオーバー時の下線の太さと色*/
	box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 1px 0 rgba(0, 0, 0, 0);/*マウスオーバー時の下線の太さと色*/
}

a {
	color: #005;/*リンク文字色*/
}
a:hover,
a:active {
	color: #A4C6FF;/*マウスオーバー時のリンク文字色*/
}

.entry-content a,
.entry-summary a,
.widget a,
.site-footer .widget-area a,
.posts-navigation a,
.widget_authors a strong {
	-webkit-box-shadow: inset 0 0px 0 rgba(15, 15, 15, 1);/*下線の太さと色*/
	box-shadow: inset 0 0px 0 rgba(15, 15, 15, 1);/*下線の太さと色*/
}

#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 30px;
  bottom: -70px;
  background: #668ad8;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -12px; /* arrow position */
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

.caption {
  position:absolute;
  top:22%;
  left:65%;
  right:10%;
  text-align:center;
  color:#fff;
	font-size: 23px;
	border: solid 2px #ffffff;
	border-radius: 8px;
	padding: 1px 1px 1px 1px;
}
.caption a {
	color: #ffffff;
}

@media  (max-width: 48em) {
.caption {
	position: relative;
	top: -100%;
	left: 0;
	font-size: 12px;
	padding: 0 5px 0 5px;
	}
}


/* 関連記事全体 */
.related{
  margin-bottom:20px;
/*  border:1px solid #ccc;*/
}
/* 関連記事タイトル部分 */
h3.related-title {
  font-size: 18px;
  margin-bottom: 25px;
  padding: 10px;
  line-height: 25px;
}
/* 表示される各記事の調整 */
li.related-list {
  font-size: 15px;
  line-height: 18px;
  padding:8px;
  list-style: disc inside;
}
/* 各記事のリンク */
li.related-list a{
  font-weight:bold;
  color:#0066cc;
	margin-left: 18px;
}
/* カーソルが乗った時のリンク */
li.related-list a:hover{
  color:#7a8285;
}
p.no-related {
  padding-left: 15px;
  margin-bottom: 15px;
}

@media screen and (max-width: 599px) {
 .related li {width:50%;}
}


/* Media screen はwrapper以下に記載 */
#breadcrumbs {
	padding: 50px 0 0 100px;
}
@media (max-width: 48em) {
    #breadcrumbs{
	padding: 30px 30px 0 30px;
    }

