@charset "UTF-8";

/*!
Theme Name: money-sense-college
Description: Teeem_Custom_Cocoon
Theme URI: https://wp-cocoon.com/
Author: Teeem.jp
Author URI: https://teeem.jp/
Template:   cocoon-master
Version:    1.1.2
*/

/*---------------------------------

 		Child-Theme Custom

---------------------------------*/
/*---------------------------------

 		main-color: #07387f

---------------------------------*/
/*---------------------------------


	目次
	1.common
      1-2. video-wrap
		1-3. entry-tags

	2.header
		2-1.#logo-area
		2-2.#search-area
		2-3.#login-area
		2-common
			.drawer-menu

	3.front-page
		3-1.#content
		3-2.#about
		3-3.#financial-literacy
		3-4.#sns

	4.footer

	5.page
		5-1.#budget-about
		5-2.#page-content
		5-3.#financial-literacy
		5-4.#free-course
		5-5.#toc-2
		5-6#door

	6.category
		6-1..child-cat-list

	7.cta-box

    8.page-mypage

9.front-information

10.lp-form

11.infinite-scroll


---------------------------------*/

/*entry-card*/
.cat-label {
	background-color:#a3c3d9;
	border:0;
}
 .widget_nav_menu ul li a:hover{
    background-color: transparent;
    transition: all 0.3s ease-in-out;
    color: #fff;
	 opacity:0.8;
}
input[type='submit'] {
    -webkit-appearance: none;
    border: 1px solid #ddd;
    background-color: #333;
    color:#ddd;
}
.sp-menubtn{
    width: 40px;
      height: 40px;
      position: relative;
      border: none;
      cursor: pointer;
    background:none;
    margin-right:5vw;
    z-index:10;
  }
  .overlay {
    content: "";
    display: block;
    width: 0;
    height: 0;
    background-color: transparent;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 8;
    opacity: 0;
    transition: opacity .5s;
  }
  .overlay.open {
    width: 100%;
    height: 100%;
    opacity: 1;
  }
  .sp-menu {
    display:block;
    width: 180px;
    height: auto;
    background:#fff;
    position: fixed;
    top: 80px;
    right: 0;
    z-index: 9;
    transform: translate(270px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -webkit-transition: -webkit-transform .3s ease-in-out;
    transition: transform .3s ease-in-out;
	  border-left:1px solid #ccc;
	  border-bottom:1px solid #ccc;
  }
  .sp-menu.open {
    transform: translateZ(0);
  }
  .sp-menubtn{
    display: inline-block;
    background: #fff;
    color: #07387f;
    border: 1px solid #07387f;
    text-decoration: none;
    font-size: 14px;
    width: 30px;
    height: 30px;
    line-height: 26px;
    text-align: center;
    border-radius: 50%;
    cursor: pointer;
  }
  .sp-menu .login_nav_title{
    background: #07387f;
    border: 1px solid #07387f;
    color: white;
    margin: 5px 10px;
    border-radius: 30px;
    text-align: center;
  }
  .sp-menu li{
    list-style: none;
    border-bottom:1px dotted rgba(255,255,255,0.4);
  }
  .sp-menu li:last-child{
    border-bottom: none;
  }
  .sp-menu li a{
    display:block;
    padding:10px;  
    color:black;
    font-size:14px;    
    text-decoration: none;
  }
  .sp-menu li a:hover{
    background:rgba(255,255,255,0.2);
  }
@media screen and (max-width: 480px){
	 .sp-menu {
    top: 60px;
  }
}

/*---------------------------------

	common

---------------------------------*/
.body blockquote :last-child,
.body .wp-block-media-text__content :last-child,
.body .wp-block-columns :last-child,
.body .column-left :last-child,
.body .column-center :last-child,
.body .column-right :last-child,
.body .column-wrap :last-child,
.body .timeline-box :last-child,
.body .wp-block-cover :last-child,
/*.body .blogcard-type :last-child,*/
.body .btn-wrap :last-child,
.body .wp-block-group :last-child,
.body .wp-block-gallery :last-child,
/*.body .block-box :last-child,
.body .blank-box :last-child,*/
.body .is-style-blank-box-red :last-child,
.body .is-style-blank-box-navy :last-child,
.body .is-style-blank-box-blue :last-child,
.body .is-style-blank-box-yellow :last-child,
.body .is-style-blank-box-green :last-child,
.body .is-style-blank-box-pink :last-child,
.body .is-style-blank-box-orange :last-child,
.body .is-style-sticky-gray :last-child,
.body .is-style-sticky-yellow :last-child,
.body .is-style-sticky-red :last-child,
.body .is-style-sticky-blue :last-child,
.body .is-style-sticky-green :last-child,
.body .common-icon-box :last-child,
.body .info-box :last-child,
.body .primary-box :last-child,
.body .success-box :last-child,
.body .warning-box :last-child,
.body .danger-box :last-child,
.body .secondary-box :last-child,
.body .light-box :last-child,
.body .dark-box :last-child{
   margin-bottom: 20px; 
}
*:hover{
	transition: .5s;
}
/*Cocoonブロックの段落に余計なマージントップを削除*/
.single main .block-box p {
    margin-top: 0;
}
.entry-title, .archive-title {
    font-size: 30px;/*H1が最大文字サイズ*/
    margin: 16px 0;
    line-height: 1.3;
}
.article h1{
	background: none;
	padding: 20px 0;
	border-bottom: 3px solid #07387f;
	order:1;
}
.article h2{
	background: none;
}
.single main{
	padding: 0 40px;
}
.single main p{
	margin: 20px auto;
}
.single main ul, .single main ol{
	margin: 20px auto;
}
.single main .wp-block-image{
	margin: 20px auto;
}
.article h2{
  background: #07387f;
	color:white;
	border-radius: 0;
	padding-left:20px;
	padding-right:20px;
	font-size:26px;
}
.page-template-default .article h2{
}
.column-narrow .article h2{
}
.post-template-default .article h2{
}
.article h3{
	font-size: 22px;
	font-weight: 700;
	border: 0;
	border-bottom: solid 5px #07387f;
   padding-left: 15px;
   line-height: 1.3;
}
.article h4{
	border:none;
	padding-left:0;
}
th{
	background: #07387f!important;
	color:white;
	text-align: left;
	letter-spacing: .1em;
	padding: 5px!important;
}
.button{
	font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}
.eye-catch {
    position: relative;
    margin: 0 auto .6em;
    max-width: 100%;
 }
.entry-categories-tags{
margin: 18px 0 -20px;
}
.article-header{
	display:flex;
	flex-direction:column;
}
.date-tags{
	order:2;
	text-align:left;
}
.eye-catch-wrap{
	order:3;
}
.tab-caption-box.block-box {
    border: transparent;
}
@media screen and (max-width: 1280px){
	.article h2{
  background: #07387f;
	color:white;
	border-radius: 0;
	padding-left:20px;
	padding-right:20px;
	font-size:26px;
}
.page-template-default .article h2{
}
.column-narrow .article h2{
}
.post-template-default .article h2{
}
}
@media screen and (max-width: 860px){
.column-narrow .article h2{
}
.page-template-default .article h2{
}
.post-template-default .article h2{
}

.article h4{
	border:none;
	padding-left:0;
}
}
@media screen and (max-width: 768px){
	.wp-block-table{
		margin: 10px 20px;
	}
	#content table {
	    /*overflow-x: auto;*/
	    width: 100%;
	    -webkit-overflow-scrolling: touch;
	    display: block;
	    /*white-space: nowrap;*/
	}
	#content th{
		display:block;
	}
	#content td{
		display:block;
	}
}
@media screen and (max-width: 480px){
	.single main{
	padding: 0 20px;
}
.single .article h2{
	padding-left:20px;
	padding-right:20px;
}
	.article h3{
	padding-left:5px;
	margin-left: -10px;
}
.single .article h4{
	border:none;
}
}
/*

 video-wrap

---------------------------------*/
.video-container, .instagram-container, .facebook-container {
    max-width: 100%;
    margin: 30px 0x;
}
iframe.instagram-media  {
    margin: 0px auto 12px!important;
}
@media screen and (max-width: 1024px){

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

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

}
/*

	page-common

---------------------------------*/
.page-template-lp-page .content#content,
.page-template-lp-page-php .content#content{
	padding-top: 0;
}

#sub-title{
	background: #07387f;
	color:white;
	text-align: center;
	padding: 5px 10px;
	font-weight: 700;
	font-size: 26px;
}
.page-id-10 #page-content{
	width:100%;
	max-width:768px;
	padding:24px;
	margin:0 auto;
}
.page-id-10 #page-content ul {
    padding-left: 50px;
	margin-bottom:20px;
}
@media screen and (max-width: 1024px){

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

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

}
/*---------------------------------

	header

---------------------------------*/
#header{
	position: fixed;
	height: 80px;
	background: white;
	width: 100%;
	top: 0;
	padding: 0 10px;
	z-index: 9999;
	box-shadow: 3px 3px 3px #ccc;
}
#header-in{
	width: auto;
}
.header-flex{
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 80px;
}
#logo-area{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#logo-box img {
  vertical-align: middle;
	margin-left: 50px;
	width: 150px;
}
#search-area .search-box{
	margin: 0;
	width: 450px;
	max-width: 600px;
}
#search-area .search-box input{
	padding: 5px;
	border-radius: 2px;
}
#login-area{
	display: flex;
	justify-content: flex-end;
	align-items:center;
}
#login-area .question-icon{
	height:30px;
}
#login-area .question-icon img{
	width: 30px;
	height: 30px;
	vertical-align: top;
	margin-right: 20px;
}
#login-area .user-avatar img{
	width: 35px;
	height: 35px;
	border-radius: 50%;
	vertical-align: middle;
	background: #ccc;
}
#login-area .login-button{
	display:inline-block;
	background:#fff;
	color:#07387f;
	border:1px solid #07387f;
	text-decoration:none;
	font-size:14px;
	padding:0 10px;
	height:30px;
	line-height:26px;
	border-radius:30px;
}
#login_nav #drawer_nav{
    position: absolute;
    height: auto;
    width: 180px;
    right: -180px;
    top: 80px;
    background: #ffffff;
    transition: .1s;
    z-index: 9998;
		border-left:1px solid #eee;
	border-bottom:1px solid #eee;
	padding:10px;
  }
#login_nav .login_nav_title{
	text-align:center;
}
#login_nav .login_nav_title p{
	background:#07387f;
	border:1px solid #07387f;
	color:white;
	margin:5px 10px;
	border-radius:30px;
}
  #login_nav #drawer_nav ul{
	  padding:10px 0;
	  border-bottom:1px solid #eee
  }
  #login_nav #drawer_nav ul li{
    list-style-type: none;
  }
  #login_nav #drawer_nav a{
    display: block;
    text-decoration: none;
    color: #000000;
    margin: 0 15px;
    padding: 10px;
    transition: .1s;
  }
  #login_nav #drawer_nav li a:hover{
    background: #eee;
    border-bottom: none;
  }
  #login_nav #drawer {
    display:inline-block;
	 background:#fff;
	 color:#07387f;
	 border:1px solid #07387f;
	 text-decoration:none;
	 font-size:14px;
   	width:30px;
	 height:30px;
	 line-height:26px;
	 text-align:center;
	 border-radius:50%;
	 cursor:pointer;
  }
  #login_nav .inner_line {
    display: block;
    position: absolute;
    left: 0;
    width: 30px;
    height: 4px;
    background-color: black;
    transition: .1s;
    border-radius: 4px;
  }
  #login_nav .in{
    transform: translateX(-100%);
  }
@media screen and (max-width: 1024px){

}
@media screen and (max-width: 768px){
	#search-area .search-box{
		margin: 0;
		width: 350px;
		max-width: 600px;
	}
}
@media screen and (max-width: 540px){
	#logo-box img {
	  vertical-align: middle;
		margin-left: 40px;
		width: 150px;
	}
	#search-area .search-box{
		display: none;
		margin: 0;
		width: 250px;
		max-width: 600px;
	}
}
@media screen and (max-width: 480px){
	#header{
		position: fixed;
		height: 60px;
		background: white;
		width: 100%;
		top: 0;
		padding: 0 5px;
		z-index: 9999;
	}
	.header-flex{
		display: flex;
		justify-content: space-between;
		align-items: center;
		height: 60px;
	}
	#logo-box img {
		vertical-align: middle;
		margin-left: 30px;
		width: 120px;
	}
	#search-area .search-box{
		margin: 0;
		width: 150px;
		max-width: 600px;
}
	#search-area .search-box input{
		font-size: 12px;
	}
	#login-area .question-icon img{
		width: 27px;
		height: 27px;
		vertical-align: middle;
		margin-right: 20px;
	}
	#login_nav #drawer_nav{
    top: 59px;
  }
}
@media screen and (max-width: 320px){
	#logo-box img {
		vertical-align: middle;
		margin-left: 30px;
		width: 120px;
	}
	#search-area .search-box{
		margin: 0;
		width: 110px;
		max-width: 600px;
}
	#search-area .search-box input{
		font-size: 10px;
	}
	.search-submit {
    position: absolute;
    right: 0;
    top: calc(50% - 8px);
    font-size: 16px;
    padding: 0 3px;
}
	#login-area .user-avatar img{
	width: 25px;
	height: 25px;
	border-radius: 50%;
	vertical-align: middle;
	background: #ccc;
}
}
/*---------------------------------

  ドロワーメニュー

---------------------------------*/
.global-nav {
  position: fixed;
  left: -380px;
  top: 0;
  width: 360px;
  height: 100vh;
  background-color: #fff;
  transition: all .3s;
  z-index: 200;
  overflow-y: auto;
}
.drawer {
  position: absolute;
  width: 40px;
  height: 40px;
  cursor: pointer;
  z-index: 300;
}
@media screen and (max-width: 1024px){

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

}
@media screen and (max-width: 480px){
	.global-nav {
	  position: fixed;
	  left: -330px;
	  top: 0;
	  width: 310px;
	  height: 100vh;
	  background-color: #fff;
	  transition: all .3s;
	  z-index: 200;
	  overflow-y: auto;
	}
}
/*

  .nav-logo

---------------------------------*/
.nav-logo{
	padding-left: 60px;
	border-bottom: 1px solid #ccc;
	height: 80px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}
.nav-logo img{
	width: 150px;
	vertical-align: middle;
}
@media screen and (max-width: 1024px){

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

}
@media screen and (max-width: 480px){
	.nav-logo{
		padding-left: 35px;
		border-bottom: 1px solid #ccc;
		height: 60px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
	}
	.nav-logo img{
		width: 120px;
		vertical-align: middle;
	}
}
/*

  .nav-list

---------------------------------*/
.global-nav__list {
  margin: 0 10px;
  padding: 20px 0;
  list-style: none;
	border-bottom: 1px solid #eee;
}
.global-nav__item {
  text-align: left;
  padding: 0 4px;
	display: flex;
}
.global-nav__item a {
  display: flex;
	align-items: center;
  padding: 14px 0;
  text-decoration: none;
  color: #111;
}
.global-nav__item:hover {
  background-color: #eee;
}
.global-nav__item i{
	content:"";
	display: block;
	height: 18px;
	width: 18px;
	margin-right: 20px;
	margin-left: 20px;
}
.global-nav__item .menu-home{
	background: url(img/header/menu-home-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
.global-nav__item .menu-free-course{
	background: url(img/header/free-course-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
.global-nav__item .menu-paid-course{
	background: url(img/header/paid-course-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
.global-nav__item .menu-during-course{
	background: url(img/header/during-course-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
.global-nav__item .menu-about{
	background: url(img/header/question-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
.global-nav__item .menu-question{
	background: url(img/header/question-icon-circle.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
.global-nav__item .menu-mail{
	background: url(img/header/mail-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
@media screen and (max-width: 1024px){

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

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

}
/*

  .drawer-button

---------------------------------*/
.drawer__line {
  position: absolute;
  left: 11px;
  width: 18px;
  height: 1px;
  background-color: #111;
  transition: all .3s;
}
.global-nav__item span{
	display: block;
}
.drawer__line--1 {
  top: 14px;
}
.drawer__line--2 {
  top: 20px;
}
.drawer__line--3 {
  top: 26px;
}
.black-bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 100;
  background-color: #000;
  opacity: 0;
  visibility: hidden;
  transition: all .6s;
  cursor: pointer;
}
@media screen and (max-width: 1024px){

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

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

}
/*

  .nav-open

---------------------------------*/
.nav-open .global-nav {
  left: 0;
}
.nav-open .black-bg {
  opacity: .5;
  visibility: visible;
}
.nav-open .drawer__line--1 {
  transform: rotate(45deg);
  top: 20px;
}
.nav-open .drawer__line--2 {
  width: 0;
  left: 50%;
}
.nav-open .drawer__line--3 {
  transform: rotate(-45deg);
  top: 20px;
}
@media screen and (max-width: 1024px){

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

}
@media screen and (max-width: 480px){
	.drawer__line {
	  position: absolute;
	  left: 8px;
	}
}
/*

	main

---------------------------------*/
/*---------------------------------

  #content
		.main

---------------------------------*/
#content{
	padding-top: 80px;
}
.home #content{
	margin-top:0;
}
.home #main{
	padding: 0;
}
@media screen and (max-width: 1024px){

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

}
@media screen and (max-width: 480px){
	#content{
		padding-top: 60px;
	}
}
/*

  #information

---------------------------------*/
#information{
	background-color: rgb(216, 242, 255);
	background-color: rgba(216, 242, 255, 1);
	background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(222, 247, 255, 1) 5px, rgba(222, 247, 255, 1) 8px );
	background-repeat: no-repeat;
	background-position: right;
	padding: 25px 20px;
	position: relative;
}
#information .inner{
	width: 70%;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
#information figure{
	width: 200px;
	margin-right: 20px;
}
#information figure img{
	width: 100%;
	vertical-align: middle;
}
#information .content{
	display: flex;
	background: white;
	width: 100%;
	height: auto;
	padding: 5px 25px;
	border: 5px solid rgb(200, 230, 255);
	border-radius: 70px;
	align-items: center;
	justify-content: space-between;
	margin: 0 auto;
	position: relative;
}
#information .new-information{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}
#information .others-information a {
    font-size: 0.8em;
    text-decoration: none;
    width: 45px;
    display: inline-block;
}
#information .content span{
	display: block;
}
#information .content .day{
	font-size: 16px;
	line-height: 1.4em;
}
#information .content .title{
	font-size: 16px;
	line-height: 1.4em;
}
@media screen and (max-width: 1024px){

}
@media screen and (max-width: 768px){
	#information{
		background-color: rgb(216, 242, 255);
		background-color: rgba(216, 242, 255, 1);
		background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(222, 247, 255, 1) 5px, rgba(222, 247, 255, 1) 8px );
		background-repeat: no-repeat;
		background-position: right;
		padding: 20px 20px;
		position: relative;
	}
	#information .inner{
		width: 90%;
		margin: 0 auto;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#information figure{
		width: 160px;
		margin-right: 15px;
	}
	#information figure img{
		width: 100%;
	}
	#information .content{
		display: flex;
		background: white;
		width: 100%;
		height: auto;
		padding: 8px 25px;
		border: 5px solid rgb(200, 230, 255);
		border-radius: 70px;
		margin: 0 auto;
		position: relative;
	}
	#information .content span{
		display: block;
	}
	#information .content .day{
		font-size: 16px;
		line-height: 1.4em;
	}
	#information .content .title{
		font-size: 16px;
		line-height: 1.4em;
	}
}
@media screen and (max-width: 480px){
	#information{
		background-color: rgb(216, 242, 255);
		background-color: rgba(216, 242, 255, 1);
		background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(222, 247, 255, 1) 5px, rgba(222, 247, 255, 1) 8px );
		background-repeat: no-repeat;
		background-position: right;
		padding: 20px 15px;
		position: relative;
	}
	#information .inner{
		width: 100%;
		margin: 0 auto;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#information figure{
		/*width: 110px;*/
		/*margin-right: 5px;*/
		display:none;
	}
	#information figure img{
		width: 100%;
	}
	#information .content{
		display: flex;
		background: white;
		width: 100%;
		height: auto;
		padding: 8px 20px;
		border: 5px solid rgb(200, 230, 255);
		border-radius: 70px;
		margin: 0 auto;
		position: relative;
	}
	#information .content span{
		display: block;
	}
	#information .content .day{
		font-size: 12px;
		line-height: 1.4em;
	}
	#information .content .title{
		font-size: 14px;
		line-height: 1.2em;
	}
}
/*

  #about

---------------------------------*/
#about{
	text-align: center;
	padding: 50px;
	position: relative;
}
#about::after{
	content:"";
	display: inline-block;
	width: 182px;
	height: 182px;
	background: url(img/common/about-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	right:30px;
	bottom:0;
}
#about h2{
	padding-bottom:30px;
	letter-spacing: .1em;
	font-weight: 700;
}
@media screen and (max-width: 1024px){

}
@media screen and (max-width: 768px){
	#about{
		text-align: center;
		padding: 50px 30px;
		position: relative;
	}
}
@media screen and (max-width: 480px){
	#about{
		text-align: center;
		padding: 30px;
		position: relative;
	}
	#about::after{
		display: none;
	}
	#about h2{
		padding-bottom:20px;
		letter-spacing: .1em;
		font-weight: 700;
	}
}
/*

  #content

---------------------------------*/
#content .button-border{
	margin-bottom: 12px;
	padding: 0;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	border-radius: 0;
	margin-top:30px;
}
#content .button-border span{
	position: relative;
  display: block;
  padding: 1.25rem 3rem;
  color: #000;
  border: 2px solid #000;
  border-radius: 0.5rem;
  background: #fff;
	width: 300px;
}
#content .button-border::before{
	position: absolute;
  bottom: -8px;
  left: 0;
  display: block;
  width: calc(100% - 4px);
  height: 14px;
  content: "";
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border: 2px solid #000;
  border-top: 1px solid #000;
  border-radius: 0 0 0.5rem 0.5rem;
  background-image: -webkit-repeating-linear-gradient(
    135deg,
    #000,
    #000 1px,
    transparent 2px,
    transparent 5px
		);
  background-image: repeating-linear-gradient(
    -45deg,
    #000,
    #000 1px,
    transparent 2px,
    transparent 5px
		);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
#content .button-border:hover{
	-webkit-transform: translate(0, 3px);
	transform: translate(0, 3px);
}
#content .button-border:hover::before{
	bottom: -5px;
}
#content .button-border:active{
	-webkit-transform: translate(0, 7px);
  transform: translate(0, 7px);
}
#content .button-border:active::before{
	bottom: -1px;
}
#content .button-border i{
	content:"";
	display: block;
	height: 50px;
	width: 50px;
	margin: 10px auto;
}
#content .button-border .beginner-icon{
	background: url(img/common/beginner-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
#content .button-border .budget-icon{
	background: url(img/common/budget-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
#content .button-border .investment-icon{
	background: url(img/common/investment-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
#content .button-border .trade-icon{
	background: url(img/common/trade-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
#content .button-border .team7-icon{
	content:"";
	display: block;
	height: 106px;
	width: 144px;
	margin: 10px auto;
	background: url(img/common/team7-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
#content .button-border .tradist-icon{
	content:"";
	display: block;
	height: 106px;
	width: 144px;
	margin: 10px auto;
	background: url(img/common/tradist-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
#content .button-border .movie-icon{
	background: url(img/common/movie-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
#content .button-border .mail-icon{
	background: url(img/common/mail-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
}
@media screen and (max-width: 1024px){

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

}
@media screen and (max-width: 480px){
	#content .button-border span{
		position: relative;
	  display: block;
	  padding: 1.25rem 2.1rem;
	  color: #000;
	  border: 2px solid #000;
	  border-radius: 0.5rem;
	  background: #fff;
		width: 270px;
	}
}
/*

  #financial-literacy

---------------------------------*/
#financial-literacy{
	text-align: center;
	background: rgb(216, 242, 255);
	padding: 50px 10px;
	position: relative;
}
#financial-literacy h2{
	padding-bottom:30px;
	letter-spacing: .1em;
	font-weight: 700;
}
#financial-literacy nav ul{
	display: flex;
	justify-content: space-around;
	list-style-type: none;
	flex-wrap: wrap;
	padding: 0;
}
#financial-literacy nav ul li{
	/*width: calc(100% / 3);*/
	padding: 0 20px;
	min-width: 300px;
}
#financial-literacy .description{
	display: flex;
	justify-content: space-around;
	align-items: center;
	padding-top: 30px;
}
#financial-literacy .description figure{
	width: 25%;
	min-width: 200px;
}
#financial-literacy .description figure img{
	width: 200px;
	height: 200px;
}
#financial-literacy .description p{
	width: 75%;
	font-size: 26px;
	font-weight: 700;
	color: #07387f;
	padding: 20px;
}
@media screen and (max-width: 1024px){

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

}
@media screen and (max-width: 480px){
	#financial-literacy{
		text-align: center;
		background: rgb(216, 242, 255);
		padding: 30px 10px;
		position: relative;
	}
	#financial-literacy h2{
		padding-bottom:10px;
		letter-spacing: .1em;
		font-weight: 700;
	}
	#financial-literacy .description{
		display: flex;
		justify-content: space-around;
		align-items: center;
		flex-direction: column-reverse;
		padding-top: 30px;
	}
	#financial-literacy .description figure{
		width: 100%;
		min-width: 200px;
	}
	#financial-literacy .description figure img{
		width: 200px;
		height: 200px;
	}
	#financial-literacy .description p{
		width: 100%;
		font-size: 22px;
		font-weight: 700;
		color: #07387f;
		padding: 20px;
		text-align: left;
	}
}
/*

  #sns

---------------------------------*/
#sns{
	background: white;
	text-align: center;
	padding: 30px 10px;
}
#sns h2{
	padding-bottom:20px;
	letter-spacing: .1em;
	font-weight: 700;
}
#sns .flex{
	display: flex;
	justify-content: space-around;
	align-items: center;
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
}
#sns figure img{
	width: 50px;
}
/*

  #sub-info-01

---------------------------------*/
#sub-info-01{
	padding: 70px 20px;
	text-align: center;
	background: #eee;
}
#sub-info-01 h2{
	padding-bottom: 50px;
}
#sub-info-01 .inner{
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
#sub-info-01 .inner .box{
	width: 25%;
	min-width: 150px;
	padding: 10px 15px;
}
#sub-info-01 .inner .box figure img{
	height: 80px;
}
#sub-info-01 .inner .box .member-deco{
	color:#07387f;
	font-size: 14px;
	display: inline-block;
	padding: 0 3px;
	border-radius: 4px;
	border: 2px solid #07387f;
	margin-right: 5px;
}
#sub-info-01 p{
	text-align:left;
}
@media screen and (max-width: 1024px){

}
@media screen and (max-width: 768px){
	#sub-info-01{
		padding: 50px 10px;
		text-align: center;
		background: #eee;
	}
	#sub-info-01 h2{
		padding-bottom: 30px;
	}
	#sub-info-01 .inner{
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
	}
	#sub-info-01 .inner .box{
		width: 50%;
		padding: 30px;
	}
	#sub-info-01 .inner .box figure img{
		height: 100px;
	}
	#sub-info-01 .inner .box .member-deco{
		color:#07387f;
		font-size: 14px;
		display: inline-block;
		padding: 0 3px;
		border-radius: 4px;
		border: 2px solid #07387f;
		margin-right: 5px;
	}
}
@media screen and (max-width: 480px){
	#sub-info-01{
		padding: 30px 10px;
		text-align: center;
		background: #eee;
	}
	#sub-info-01 h2{
		padding-bottom: 10px;
	}
	#sub-info-01 .inner{
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
	}
	#sub-info-01 .inner .box{
		width: 100%;
		padding: 30px 10px;
	}
	#sub-info-01 .inner .box figure img{
		height: 100px;
	}
	#sub-info-01 .inner .box .member-deco{
		color:#07387f;
		font-size: 14px;
		display: inline-block;
		padding: 0 3px;
		border-radius: 4px;
		border: 2px solid #07387f;
		margin-right: 5px;
	}
}
/*

  #free-course

---------------------------------*/
#free-course{
	text-align: center;
	background: white;
	padding: 50px;
	position: relative;
}
#free-course h2{
	padding-bottom:30px;
	letter-spacing: .1em;
	font-weight: 700;
}
#free-course h2::before{
	content:"";
	width: 100px;
	height: 80px;
	display: block;
	margin: 0 auto;
	background: url(img/common/free-course-icon.svg);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: bottom;
}
#free-course nav ul{
	display: flex;
	justify-content: space-around;
	list-style-type: none;
	flex-wrap: wrap;
	padding: 0;
}
#free-course nav ul li{
	width: calc(100% / 3);
	min-width: 300px;
}
#free-course nav ul li a{
	text-align: left;
}

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

}
@media screen and (max-width: 768px){
	#free-course{
		text-align: center;
		background: white;
		padding: 50px 10px;
		position: relative;
	}
	#financial-literacy nav ul{
		display: flex;
		justify-content: space-around;
		list-style-type: none;
		padding: 0;
		flex-wrap: wrap;
	}
}
@media screen and (max-width: 480px){
	#free-course{
		text-align: center;
		background: white;
		padding: 30px;
		position: relative;
	}
	#free-course h2{
		padding-bottom:10px;
		letter-spacing: .1em;
		font-weight: 700;
	}
	#financial-literacy nav ul li{
		width: 100%;
		padding: 0;
		min-width: 250px;
	}
}
/*

  #paid-course

---------------------------------*/
#paid-course{
	text-align: center;
	background: white;
	padding: 50px 0;
	position: relative;
}
#paid-course h2{
	padding-bottom:30px;
	letter-spacing: .1em;
	font-weight: 700;
}
#paid-course h2::before{
	content:"";
	width: 120px;
	height: 100px;
	display: block;
	margin: 0 auto;
	background: url(img/common/paid-course-icon.svg);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: bottom;
}
#paid-course nav ul{
	display: flex;
	justify-content: space-around;
	list-style-type: none;
	flex-wrap: wrap;
	padding: 0;
}
#paid-course nav ul li{
	width: calc(100% / 2);
	min-width: 300px;
}
#paid-course nav ul li a{
	text-align: left;
}
#paid-course a strong{
	font-size: 27px
}
#paid-course a .free::before{
	content:"無料講座";
	display: block;
	font-size: 14px;
}
#paid-course a .paid::before{
	content:"会員制プログラム";
	display: block;
	font-size: 14px;
}
#paid-course section{
	padding: 30px;
}
#paid-course section p{
	max-width: 350px;
	margin: 0 auto;
}
#paid-course section:nth-child(3){
	background: rgb(216, 242, 255);
}

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

}
@media screen and (max-width: 768px){
	#paid-course{
		text-align: center;
		background: white;
		padding: 50px 0;
		position: relative;
	}
	#financial-literacy nav ul{
		display: flex;
		justify-content: space-around;
		list-style-type: none;
		padding: 0;
		flex-wrap: wrap;
	}
}
@media screen and (max-width: 480px){
	#paid-course{
		text-align: center;
		background: white;
		padding: 30px 0;
		position: relative;
	}
	#paid-course h2{
		padding-bottom:10px;
		letter-spacing: .1em;
		font-weight: 700;
	}
	#financial-literacy nav ul li{
		width: 100%;
		padding: 0;
		min-width: 250px;
	}
}

/*---------------------------------

		#blog

---------------------------------*/

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

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

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

}
/*---------------------------------

		#side-menu

---------------------------------*/

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

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

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

}

/*---------------------------------

		.footer-menu

---------------------------------*/
.cta-heading {
    font-size: 24px;
    padding: 12px;
    margin-bottom: 0.2em;
    font-weight: bold;
}
.btn-teal, .btn-wrap.btn-wrap-teal > a {
    background-color: #9CBE9C;
}
footer a{
	font-size:13px;
}
footer #menu-footer-menu a:hover{
	background:transparent;
	opacity: 0.8;
}
@media screen and (max-width: 1024px){

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

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

}
/*---------------------------------

		page

---------------------------------*/
/*

		#budget-about

---------------------------------*/
.page-id-10 main{
	padding: 0;
}
#budget-about{
	padding-top:50px;
	padding-bottom:30px;
	margin: 0 20px;
}
#budget-about .page-header{
	width: 100%;
	max-width: 800px;
	margin: 30px auto;
	border:7px solid #07387f;
	border-radius: 4px;
	padding: 20px;
	display: flex;
	align-items: center;
	/*background: url(img/common/back-logo.svg);*/
	background-color: rgba(255,255,255,0.35);
	background-blend-mode: lighten;
	background-position: right 0 bottom 0;
	background-repeat: no-repeat;
}
#budget-about .page-header .left{
	width: 25%;
}
#budget-about .page-header .left figure{
	text-align: center;
}
#budget-about .page-header .left figure img{
	width: 110px;
	height: 110px;
}
#budget-about .page-header .right{
	width: 75%;
}
#budget-about .page-header .cat{
	padding: 2px 20px;
	display: inline-block;
	background: #07387f;
	color:white;
	border-radius: 2px;
}
#budget-about .page-header h1{

}
#budget-about .page-header h1 span{
	background: linear-gradient(transparent 65%, #FFFF00 65%);
}
@media screen and (max-width: 1024px){

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

}
@media screen and (max-width: 480px){
	#budget-about{
		padding-top:10px;
		padding-bottom:10px;
		margin: 0 20px;
	}
	#budget-about .page-header{
		width: 100%;
		max-width: 800px;
		margin: 30px auto;
		border:7px solid #07387f;
		border-radius: 4px;
		padding: 20px;
		display: flex;
		flex-direction: column;
		align-items: center;
		background: white;
	}
	#budget-about .page-header .left{
		width: 100%;
	}
	#budget-about .page-header .left figure{
		text-align: center;
		display: none;
	}
	#budget-about .page-header .right{
		width: 100%;
	}
	#budget-about .page-header .cat{
		padding: 2px 20px;
		display: inline-block;
		background: #07387f;
		color:white;
		border-radius: 2px;
	}
	#budget-about .page-header h1{

	}
	#budget-about .page-header h1 span{
		background: linear-gradient(transparent 65%, #FFFF00 65%);
	}
}
/*

		#page-content

---------------------------------*/
#page-content .wrap{
	width: 100%;
	max-width: 856px;
	margin: 0 auto;
	border-radius: 4px;
	padding: 40px 20px;
	position: relative;
}
#page-content .wrap::after{
	content:"";
	display: inline-block;
	position: absolute;
	right:30px;
	bottom:0;
}
#page-content .flex{
	/*display: flex;
	justify-content: space-between;*/
}
/*ブロックエディタ化テスト*/
#page-content .flex > .wp-block-group__inner-container{
	/*display: flex;
	justify-content: center;*/
}
/*ブロックエディタ化テストここまで*/
#page-content .flex .main-box{
	/*width: 480px;*/
}
#page-content .flex .main-box ul li{
	padding-bottom: 10px;
}
#page-content .flex .side-box{
	/*width: 300px;*/
	padding: 20px;
	/*margin-left: 20px;*/
	border:3px solid #07387f;
	border-radius: 10px;
	background: #fefefe;
}
#page-content .flex .side-box ul{
	font-size: 16px;
	padding-left: 10px;
}
#page-content .flex .side-box ul li{
	margin-left: 1rem;
}
#page-content .flex .side-box h5{
	padding-bottom: 10px;
}
#page-content .flex .side-box h5::before{
	content:"";
	width: 22px;
	height: 22px;
	display: inline-block;
	margin-right: 8px;
	background: url(img/page-budget/blog.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
#page-content h2{
	padding-bottom: 10px;
	border-bottom: 1px solid #07387f;
	margin-top:50px;
}
#page-content h2::before{
	content:"";
	width: 59.2px;
	height: 40.8px;
	display: inline-block;
	margin-right: 10px;
	background: url(img/common/learning-icon.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
#page-content h3{
	padding: 10px;
	margin-top: 20px;
}
#page-content h3::before{
	width: 30px;
	height: 30px;
	display: inline-block;
	background: #07387f;
	color:white;
	text-align: center;
	line-height: 30px;
	margin-right: 10px;
	border-radius: 3px;
}
#page-content #one::before{
	content:"1";
}
#page-content #two::before{
	content:"2";
}
#page-content #three::before{
	content:"3";
}
#page-content #four::before{
	content:"4";
}
#page-content #five::before{
	content:"5";
}
#page-content #six::before{
	content:"6";
}
#page-content ul{
	padding-left: 50px;
}
#page-content h4{
	padding: 10px;
}
#page-content h4::before{
	content:"1.";
	display: inline-block;
	text-align: center;
	line-height: 30px;
	margin-right: 10px;
	border-radius: 3px;
	margin-left: 20px;
}
@media screen and (max-width: 1024px){
#page-content .flex .main-box{
	/*width: 460px;*/
}
#page-content .flex .side-box{
	/*width: 280px;*/
}
}
@media screen and (max-width: 768px){
	#page-content .wrap::after{
		display: none;
	}
	#page-content .flex{
		/*display: flex;
		justify-content: center;
		flex-wrap: wrap;*/
	}
	/*ブロックエディタ化テスト*/
#page-content .flex > .wp-block-group__inner-container{
	/*display: flex;
		justify-content: center;
		flex-wrap: wrap;*/
}
/*ブロックエディタ化テストここまで*/

	#page-content .flex .main-box{
		/*width: 96vw;*/
		padding: 10px;
	}
	#page-content .flex .side-box{
		/*width: 85vw;*/
		padding: 15px;
		margin:20px
	}
}
@media screen and (max-width: 480px){
	#page-content .wrap::after{
		display: none;
	}
	#page-content .flex{
		/*display: flex;
		justify-content: center;
		flex-wrap: wrap;*/
	}
		/*ブロックエディタ化テスト*/
#page-content .flex > .wp-block-group__inner-container{
	/*display: flex;
		justify-content: center;
		flex-wrap: wrap;*/
}
/*ブロックエディタ化テストここまで*/
	#page-content .flex .main-box{
		/*:width: 96vw;*/
		padding: 10px;
	}
		#page-content ul{
	padding-left: 20px;
}
	#page-content h4{
		padding-left:0;
	}
	#page-content h4::before{
	margin-left: 0px;
		
}
	#page-content .flex .side-box{
		/*width: 90vw;*/
		padding: 15px;
		margin:10px
		background: #fefefe;
	}
}
/*

		#financial-literacy

---------------------------------*/
.page-id-10 #financial-literacy{
	background: #eee;
}

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

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

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

}
/*

		#ad

---------------------------------*/
#ad{
	padding: 50px 20px;
	text-align: center;
}
#ad .inner{
	width: 100%;
	max-width: 700px;
	margin: 0 auto;
}
#ad h2{
	padding-bottom: 30px;
}
#ad .inner nav ul{
	display: flex;
	justify-content: space-around;
	text-align: center;
	list-style: none;
	flex-wrap: wrap;
	padding: 20px;
}
.home #ad{
	background: rgb(216, 242, 255);
}

/*

		#toc-2

---------------------------------*/
#sidebar-scroll{
	padding-top: 80px;
}
.toc {
    width: 100%;
}
#toc-2{
	background: none;
	padding: 20px 20px 30px;
}
#toc-2 h3{
	background: none;
	font-size: 24px;
	margin: 0;
}
#toc-2 h3::before{
	content:"";
	width: 47px;
	height: 33px;
	display: inline-block;
	margin-right: 10px;
	background: url(img/single/mokuji-icon.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

#toc-2 .toc{
	display: block;
	text-align: left;
}
#toc-2 .toc-center {
    margin: 0 auto;
}
#toc-2 .toc .toc-list{

}
#toc-2 .toc .toc-list li{
	font-size: 16px;
	padding: 3px;
}
/* -----------------------------------------
 目次上に読んでる項目をマーク
------------------------------------------*/
#toc-2{
  width:95%;
}
/* 読んでる項目を明示 */
li.current {
  position: relative;
}
li.current:before {
  font-family: "FontAwesome";
  content: "\f054";
	color: #07387f;
  position: absolute;
  font-size: 1.2em;
  left: -20px;
	top: 5px;
}
@media screen and (max-width: 1024px){

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

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

}
/*

    #door

 ------------------------------*/
.door-main {
    width: 100%;
    max-width: 768px;
    padding: 24px;
    margin: 0 auto;
}
/*

		.child-cat-list

---------------------------------*/

.child-cat-list{
	display: flex;
	justify-content: center;
	list-style-type: none;
	align-items: center;
	flex-wrap: wrap;
	width: 95%;
	margin: 30px auto;
	padding: 20px 10px;
}
.child-cat-list li {
	width: calc(100%/3);
	padding: 30px 10px;
	text-align: center;
	margin: 0;
	box-shadow:inset 1px 1px 0 0 #eee,
	 						1px 1px 0 0 #eee,
	  					1px 0 0 0 #eee;
	background: #fefefe;
}
.child-cat-list li a{
	text-decoration: none;
	color:#333;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.1em;
}
.child-cat-list li a::before{
	content:"";
	width: 30px;
	height: 30px;
	display: block;
	margin: 0 auto;
	background: url(img/category/folder-icon.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.child-cat-list li a::after{
	content:"Category";
	display: block;
	margin: 0 auto;
	font-size: 10px;
	color: #aaa;
	font-weight: 400;
}
/*子階層以降共通*/
.child-cat-list .cat-item{
	position:relative;
}
.children{
	position:absolute;
	right:0;
	list-style:none;
	margin-top:30px;
	z-index:999;
	background:white;
}
.children::before{
	content:'▼';
	position:absolute;
	top:-30px;
	right:5px;
	font-size:0.8em;
	color:#333;
}
/*子階層以降共通*/
.children li {
    height: 0;
	width:100%;
	padding:0;
    overflow: hidden;
    transition: .5s;
	text-align:left;
	box-shadow:none;
}
.child-cat-list li:hover > ul > li {
    height: 2rem;
    overflow: visible;
	 width:100%;
}
.children li a::before{
	content:"";
	width: 15px;
	height: 15px;
	display: inline-block;
	margin-right:5px;
	background: url(img/category/folder-icon.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.children li a::after{
	display:none;
}
#category-page .article-index-list{
	padding: 10px;
  margin-top: 20px;
}
#category-page .article-index-list::before {
	content:"";
  width: 30px;
  height: 30px;
  display: inline-block;
  background: #07387f;
  color: white;
  text-align: center;
  line-height: 30px;
  margin-right: 10px;
  border-radius: 3px;
	background: url(img/category/article-icon.svg);
	vertical-align: middle;
}
#category-page .article-list{
	padding: 10px;
}
#category-page .article-list li{
	padding-bottom: 10px;
	display: flex;
	border-bottom: 1px solid #ccc;
}
#category-page .article-list li a{
	text-decoration: none;
}
#category-page .article-list li .cat-thumbnail{
	width: 25%;
	min-width: 200px;
	padding: 10px;
}
#category-page .article-list li .cat-article-title{
	width: 75%;
	padding: 10px;
}
#category-page .article-list li .cat-article-title .title{
	font-size: 20px;
  margin: 0 0 5px 0;
  line-height: 1.6;
  font-weight: 700;
  letter-spacing: .07em;
	color:#333;
}
/*---------------------------------

		.sidebar

---------------------------------*/
.sidebar-title{
	text-align: center;
	padding-bottom: 10px;
	border-bottom: 1px solid #07387f;
}
.sidebar-title::before{
	content:"＼";
	margin-right: 5px;
}
.sidebar-title::after{
	content:"／";
	margin-left: 5px;
}
.sidebar h3 {
  background-color: white;
  padding: 12px 0 0;
  margin: 20px 0 10px;
  border-radius: 2px;
}
.sidebar #nav_menu-4 a{
	font-size:1.17em;
	font-weight:bold;
}
.sidebar #nav_menu-4 #menu-item-3789 a::before{
	content:"";
  width: 40px;
  height: 40px;
  display: inline-block;
  background: url(img/common/budget-icon.svg);
  color: white;
  text-align: center;
  line-height: 30px;
  margin-right: 10px;
  border-radius: 3px;
}
.sidebar #nav_menu-4 #menu-item-3199 a::before{
	content:"";
  width: 40px;
  height: 40px;
  display: inline-block;
  background: url(img/common/investment-icon.svg);
  color: white;
  text-align: center;
  line-height: 30px;
  margin-right: 10px;
  border-radius: 3px;
}
.sidebar #nav_menu-4 #menu-item-3198 a::before{
	content:"";
  width: 40px;
  height: 40px;
  display: inline-block;
  background: url(img/common/trade-icon.svg);
  color: white;
  text-align: center;
  line-height: 30px;
  margin-right: 10px;
  border-radius: 3px;
}

.sidebar ul li a::before{
	width: 30px;
    height: 30px;
    display: inline-block;
    background: #07387f;
    color: white;
    text-align: center;
    line-height: 30px;
    margin-right: 10px;
    border-radius: 3px;
}
.sidebar .number-one a::before{
	content:"1";
}
.sidebar .number-two a::before{
	content:"2";
}
.sidebar .number-three a::before{
	content:"3";
}

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

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

}
@media screen and (max-width: 480px){
	.child-cat-list{
		display: flex;
		justify-content: center;
		list-style-type: none;
		align-items: center;
		flex-wrap: wrap;
		width: 100%;
		margin: 30px auto;
		padding: 20px 10px;
	}
	.child-cat-list li {
		width: calc(100%/2);
		padding: 30px 10px;
		text-align: center;
		margin: 0;
		box-shadow:inset 1px 1px 0 0 #eee,
		 						1px 1px 0 0 #eee,
		  					1px 0 0 0 #eee;
		background: #fefefe;
	}
	.child-cat-list li a{
		text-decoration: none;
		color:#333;
		font-size: 12px;
		font-weight: 700;
		letter-spacing: 0.1em;
	}
	/*子階層以降共通*/
.children li {
    height: 0;
	width:100%;
	padding:0;
    overflow: hidden;
	text-align:left;
	box-shadow:none;
}
.child-cat-list li:hover > ul > li {
    height: 2rem;
    overflow: visible;
	 width:100%;
}
.children li a::before{
	content:"";
	width: 15px;
	height: 15px;
	display: inline-block;
	margin-right:5px;
	background: url(img/category/folder-icon.svg);
	background-repeat: no-repeat;
	background-size: contain;
}
.children li a::after{
	display:none;
}
}
/*---------------------------------

		.entry-card.php

---------------------------------*/
#list .a-wrap{
	border-bottom:none;
}
.category .a-wrap{
	border-bottom:none;
}
.entry-card-thumb {
    width: 200px;
}
.entry-card-content {
    margin-left: 210px;
}
.entry-card-title, .related-entry-card-title {
    font-size: 20px;
    margin: 0 0 5px 0;
    line-height: 1.6;
    font-weight: 700;
		letter-spacing: .07em;
}
.cat-link {
	display: inline-block;
	padding: 7px 14px 6px;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .08em;
	line-height: 1;
	background: none;
	color:#07387f;
	text-align: center;
	word-break: break-all;
}
.cat-link:hover{
	color:#07387f;
}
.fa-folder:before {
    content: "\f07b";
		margin-right: 5px;
}
.tag-link {
		display: inline-block;
		padding: 5px 14px 4px;
		font-size: 12px;
		font-weight: 400;
		letter-spacing: .08em;
		line-height: 1;
		color: #666;
		background-color: white;
		border:1px solid #eee;
		border-radius: 20px;
		text-align: center;
    word-break: break-all;
}
.fa-tag:before {
    content: "\f02b";
		margin-right: 3px;
}
.post-date{
    font-size: 14px;
    line-height: 1;
    letter-spacing: .17em;
    color: #666;
}
.fa-clock-o:before {
    content: "\f017";
    color: #666;
}
.entry-date{
		font-size: 14px;
		line-height: 1;
		letter-spacing: .17em;
		color: #666;
}
.fa-history:before {
    content: "\f1da";
    color: #666;
}
@media screen and (max-width: 1024px){

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

}
@media screen and (max-width: 480px){
	.entry-card-thumb,.related-entry-card-thumb {
	    width: 85px;
	}
	.entry-card-thumb img,.related-entry-card-thumb img {
		width:80px;
		height:80px;
		object-fit: cover;
	}
	.entry-card-content {
	    /*margin-left: 40%;*/
		margin-left:0;
	}
	.entry-card-title, .related-entry-card-title {
	    font-size: 14px;
	    margin: 0 0 5px 0;
	    line-height: 1.4;
	    font-weight: 700;
			letter-spacing: .07em;
	}
	.cat-link {
		display: inline-block;
		padding: 3px 3px 2px 0;
		margin:0;
		font-size: 8px;
		font-weight: 500;
		letter-spacing: .02em;
	}
	.fa-folder:before {
	    content: "\f07b";
			margin-right: 1px;
			color:#07387f;
	}
	.tag-link {
			display: inline-block;
			padding: 1px 3px;
			margin: 0 1px;
			font-size: 6px;
			font-weight: 400;
			letter-spacing: .02em;
			line-height: 1;
			color: #666;
	}
	.fa-tag:before {
	    content: "\f02b";
			margin-right: 2px;
			font-size: 4px;
	}
	.post-date{
	    font-size: 9px;
	    line-height: 1;
	    letter-spacing: .08em;
	    color: #666;
	}
	.entry-date{
	    font-size: 9px;
	    line-height: 1;
	    letter-spacing: .08em;
	    color: #666;
	}
}
/*---------------------------------

		.cta-box

---------------------------------*/

.widget-page-content-bottom .cta-box p {
    width: 80%;
    margin: 20px auto;
}
.widget-page-content-bottom .cta-box ul {
    width: 80%;
    margin: 20px auto;
}
.widget-page-content-bottom .cta-box ul li {
    margin: 0.2em;
}
#cta_box-3{
	margin-bottom:0;
}
.cta-box {
    background-color: rgb(216, 242, 255);
    color: #333;
    margin: 20px;
		font-size: 1em;
}
.widget-page-content-bottom .cta-box{
	margin: 0;
}
.widget-single-content-bottom-title{
	display: none;
}
.widget-page-content-bottom-title{
	display: none;
}
.cta-heading {
    font-size: 24px;
    padding: 12px;
    margin-bottom: 1em;
    font-weight: bold;
		text-align: center;
		position: relative;

}
.cta-heading::before{
	content: '';
	  position: absolute;
	  bottom: -7px;
	  display: inline-block;
	  width: 150px;
	  height: 8px;
	  left: 50%;
	  -webkit-transform: translateX(-50%);
	  transform: translateX(-50%);
	  background-color:#07387f;
	  border-radius: 10px;
}
.cta-thumb img{
	width: 200px;
}
.cta-box .btn{
	max-width:500px;
	margin: 0 auto 30px;
	border-radius: 17px;
	box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;
}
@media screen and (max-width: 1024px){

}
@media screen and (max-width: 768px){
	.widget-page-content-bottom .cta-box p {
	    width: 90%;
	}
	.widget-page-content-bottom .cta-box ul {
	    width: 90%;
	}
}
@media screen and (max-width: 480px){
	.cta-box {
	    margin: 10px;
	}
}

.page-id-337 .date-tags{
	display:none;
}

/*---------------------------------

		.front-information

---------------------------------*/
.front-information{
	background-color: rgba(216, 242, 255, 1);
   background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(222, 247, 255, 1) 5px, rgba(222, 247, 255, 1) 8px);
	background-repeat: no-repeat;
	background-position: right;
	padding: 25px 20px;
}
.front-information .inner{
	width:100%;
	max-width:800px;
	margin:0 auto;
}
.front-information h2{
	text-align:center;
	margin-bottom:30px;
}
.front-information ul{
	background:white;
	padding:30px;
	padding-left:50px;
	border-radius:10px;
	list-style-type:none;
}
.front-information ul li{
	padding: 8px 3px;
	border-bottom:1px solid #eee;
	font-size:16px;
}
.front-information ul .button-area{
	border-bottom:none;
	text-align:center;
}
.front-information .day{
	font-size:0.9em;
	line-height:16px;
}
.front-information .cat a{
	display:inline-block;
	margin-left: 3px;
	color:rgba(0,139,139,1);
	text-decoration:none;
	font-size:0.7em;
	border-radius:5px;
	 line-height: 16px;
    font-size: 12px;
    padding: 0 5px;
    border: 1px solid rgba(0,139,139,1);
}
.front-information .title{
	text-decoration:none;
	line-height:1.3;
}
.front-information .information-button{
	display:inline-block;
	text-decoration:none;
}

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

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

}
@media screen and (max-width: 480px){
	.front-information h2{
	margin-bottom:10px;
}
.front-information ul{
	background:white;
	padding:20px;
	padding-left:30px;
	border-radius:10px;
}
}

/*--------------------

.lp-form

--------------------*/
.lp-form {
    background-color: #ddd;
    border-radius: 10px;
    margin: 5%;
    padding: 5%;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;
}
body .lp-form-content {
	background-color: #E5F1F8;
	box-shadow: 1px 1px 0px 0px #efefef;
	border-radius: 10px;
	margin: 5%;
	padding: 5%;
}
.lp-form dl,
.lp-form dl dd{
    margin-bottom:0px;
}

.lp-form dt {
    clear: both;
    padding: 5px;
    font-weight: bold;
    margin-bottom:0px;
}
.lp-form .iptx input[type='text'] {
    width: 100%;
    padding: 1em;
    background: white;
    border-radius: 5px;
    font-size: 16px;
    margin-bottom:0px;
}
.lp-form .iptx {
    margin-left: 0;
}
.lp-form .sbmt{
    margin-top:20px;
    margin-bottom:20px;
}
.lp-form .sbmt input[type="submit"] {
    width: 100%;
    padding: 1em;
    border-radius: 5px;
    background: #007b43;
    -webkit-appearance: none;
    margin-bottom:0px;
    color:white;
    font-weight: 700;
    font-size:18px;
    border:none;
    box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}
body .lp-form-content .sbmt input[type="submit"]  {
	background-color: #fc7e80;
}
/*--------------------

.lp-form-content
記事ごとのCTA（再利用ブロック）

--------------------*/
.lp-form-content {
    background-color: #ddd;
    border-radius: 10px;
    margin: 5%;
    padding: 5%;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;
}
.lp-form-content dl,
.lp-form-content dl dd{
    margin-bottom:0px;
}

.lp-form-content dt {
    clear: both;
    padding: 5px;
    font-weight: bold;
    margin-bottom:0px;
}
.lp-form-content .iptx input[type='text'] {
    width: 100%;
    padding: 1em;
    background: white;
    border-radius: 5px;
    font-size: 16px;
    margin-bottom:0px;
}
.lp-form-content .iptx {
    margin-left: 0;
}
.lp-form-content .sbmt input[type="submit"] {
    width: 100%;
    padding: 1em;
    border-radius: 5px;
    background: #007b43;
    -webkit-appearance: none;
    margin-bottom:0px;
    color:white;
    font-weight: 700;
    font-size:18px;
    border:none;
    box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}
@media screen and (max-width: 1024px){

}
@media screen and (max-width: 768px){
.lp-form {
    margin: 3%;
}
}
@media screen and (max-width: 480px){
.lp-form {
    margin: 2%;
}
}
/*--------------------

.infinite-scroll

--------------------*/
.pagination{
	display:none;
}
#more-button{
	padding: 5px 20px;
   font-size: 18px;
   display: block;
	width:90%;
	max-width: 500px;
   margin: 0 auto 30px;
   border-radius: 0;
	cursor:pointer;
	border:2px solid #333;
	color:#333;
	background:white;
}
#more-button::after{
	content:'▼';
	margin-left:10px;
	font-size:0.9em;
}

/*--------------------

#banner-top

--------------------*/
body section#banner-top figure.wp-block-image{
	margin-top:10px;
	margin-bottom:10px;
}
body section#banner-top .wp-block-group{
	margin-bottom:0px;
}
body section#banner-top .wp-block-group img{
	margin-bottom:0px;
}


#footer, #footer a:not(.sns-button), .footer-title {
    padding:0;
}
.footer-bottom{
	margin-top:0;
}
.footer-widgets, .footer-widgets-mobile {
    padding-left:clamp(1em,2.6vw,1.6em);
}
#footer .widget_nav_menu ul li a{
	width:fit-content;
}
.footer-widgets, .footer-widgets-mobile
 {
    max-width: 1200px;
}


