/*
Theme Name: Bc Child
Version: 1.0
Template: bc
*/

body{
	margin: 0!important;
}

header#masthead{
	border-top: 4px solid #2e308c;
}

.sp {
	display: none; 
}

.pc {
	display: inherit; 
}
p{
}


.site-branding h1{
	margin: 0;
}

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

.page-content, .entry-content, .entry-summary{
	margin-top: 0!important;
}

.container{
	/*width: 1140px;*/
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}
.site-branding{
	height: 105px;
	background: #fff;
}
.site-branding .container{
	display: flex;
	justify-content: space-between;
}
.site-branding h1{
	width: 170px;
	height: 80px;
	margin: 20px 0 0 0;
}
.site-branding h1 img{

}
.site-branding .buttons ul{
	margin: 40px 0 0 0;
	display: flex;
	justify-content: space-between;
	list-style: none;
}
.site-branding .buttons ul li {
	margin-left: 15px;
	transition: 0.2s;
}
.site-branding .buttons ul li:hover{
	opacity: .8;
	transition: 0.2s;
}
.site-branding .buttons ul li a{
	text-decoration: none;
	padding: 15px 25px 15px 60px;
	border-radius: 8px;
}
.site-branding .buttons ul li.blog a{
	background-color: #2e308c;
	color: #fff;
	background-image: url("../../../assets/images/icon-blog.png");
	background-repeat: no-repeat;
	background-size: 26px;
	height: 26px;
	background-position: top 10px left 22px;
}
.site-branding .buttons ul li.contact a{
	background-color: #901817;
	color: #fff;
	background-image: url("../../../assets/images/icon-mail.png");
	background-repeat: no-repeat;
	background-size: 26px;
	height: 26px;
	background-position: top 12px left 22px;
}
#site-navigation{
	background: #2e308c;
	height: 50px;
}
#site-navigation #primary-menu{
	margin: 5px 0 0 0;
	padding: 5px 0;
	
}
#site-navigation #primary-menu li{
	border-right: 1px solid #fff;
	margin: 0 4px;
}
#site-navigation #primary-menu li:last-child{
	border-right: none;
}
#site-navigation #primary-menu li a{
	color: #fff;
	padding: 8px 15px;
	transition: 0.2s;
	line-height: 100%;
}

#site-navigation #primary-menu li a:hover{
	background: #4c6dbb;
	transition: 0.2s;
}


@media (max-width: 749px) {
.site-branding{
	height: 85px;
	background: #fff;
}
.site-branding h1{
	width: 120px;
	height: auto;
	margin: 15px 0 0 0;
}
.site-branding h1 img{
	width: 100%;
	height: auto;

}
	.site-branding .container{
		margin: 0;
		padding: 0;
	}
.site-branding .buttons ul{
	margin: 26px 0 0 0;
	display: flex;
	justify-content: space-between;
	list-style: none;
}
.site-branding .buttons ul li {
	margin-left: 0;
	margin-right: 10px;
	transition: 0.2s;
}
.site-branding .buttons ul li:hover{
	opacity: .8;
	transition: 0.2s;
}
.site-branding .buttons ul li a{
	text-decoration: none;
	padding: 15px 25px 15px 60px;
	border-radius: 8px;
}
.site-branding .buttons ul li.blog a{
        background-color: #2e308c;
        color: #fff;
        background-image: url(../../../assets/images/icon-blog.png);
        background-repeat: no-repeat;
        background-size: 15px;
        height: 16px;
        background-position: top 10px left 8px;
        font-size: 13px;
        padding: 10px 5px 10px 25px;
        display: block;
        width: 76px;
        height: 37px;
}
.site-branding .buttons ul li.contact a{
	background-color: #901817;
	color: #fff;
	background-image: url("../../../assets/images/icon-mail.png");
        background-repeat: no-repeat;
        background-size: 15px;
        height: 16px;
        background-position: top 12px left 7px;
        font-size: 13px;
        padding: 10px 5px 10px 25px;
        display: block;
        width: 116px;
        height: 37px;
}
#site-navigation{
	background: #2e308c;
	height: inherit!important;
}
#site-navigation #primary-menu{
	margin: 0;
	padding: 5px 0;
	
}
#site-navigation #primary-menu li{
	border-right: 1px solid #fff;
	margin: 0;
}
#site-navigation #primary-menu li:last-child{
	border-right: none;
}
#site-navigation #primary-menu li a{
	color: #fff;
	padding: 8px 10px;
	transition: 0.2s;
	font-size: 14px;
}

#site-navigation #primary-menu li a:hover{
	background: #4c6dbb;
	transition: 0.2s;
}

}



footer.site-footer{
	background: #2e308c;
}
footer.site-footer #primary-menu{
	display: flex;
	justify-content: center;
	margin: 0;
	padding: 28px 0;
	list-style: none;
}

footer.site-footer #primary-menu li{
	padding: 8px 15px;
	border-right: 1px solid #fff;
}
footer.site-footer #primary-menu li:last-child{
	border-right: none;
}
footer.site-footer #primary-menu li a{
	color: #fff;
	text-decoration: none;
}

footer.site-footer #primary-menu li a:hover{
}
footer.site-footer .footer-logo{
	margin: 30px auto 50px auto;
	width: 200px;
	height: 80px;
}
footer.site-footer .address{
	color: #fff;
	text-align: center;
	display: block;
	letter-spacing: 1px;
}
footer.site-footer copy{
	margin: 20px 0 0 0;
	padding: 0 0 20px 0;
	color: #fff;
	text-align: center;
	display: block;
}

@media (max-width: 749px) {
footer.site-footer #primary-menu{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 10px;
	padding: 15px 0;
	list-style: none;
}

footer.site-footer #primary-menu li{
	margin: 0 10px;
	padding: 8px 0;
	border-right: none;
	border-bottom: 1px solid #fff;
	width: calc(50% - 20px);
}
footer.site-footer #primary-menu li:last-child{
	border-right: none;
}
footer.site-footer #primary-menu li a{
	color: #fff;
	text-decoration: none;
}

footer.site-footer #primary-menu li a:hover{
}
footer.site-footer .footer-logo{
	margin: 30px auto 50px auto;
	width: 200px;
	height: 80px;
}
footer.site-footer .address{
	color: #fff;
	text-align: center;
	display: block;
	letter-spacing: 1px;
}
footer.site-footer copy{
	margin: 20px 0 0 0;
	padding: 0 0 20px 0;
	color: #fff;
	text-align: center;
	display: block;
}
}


@media (max-width: 749px) {
.container{
	width: 100%;
	margin: 0 auto;
	padding: 15px;
}
}


.blogcontainer{
	width: 1140px;
	margin: 0 auto;
	padding: 15px;
	display: flex;
}
@media (max-width: 749px) {
.blogcontainer{
	display: block;
	width: 100%;
	margin: 0 auto;
}
}


/* コンテンツ */
.entry-content{
}

.entry-content h2{
	font-size: 34px;
	line-height: 180%;
	text-align: center;
	color: #2e308c;
	position: relative;
	display: block;
	margin: 0 auto 70px auto;
	width:-moz-fit-content;
	width: fit-content;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
}
.entry-content h2:after{
	content: "";
	position: absolute;
	border-bottom: 2px solid #2e308c;
	width: calc(100% + 30px);
	left: -15px;
	bottom: -5px;
}
.entry-content h2 span{
	content: "";
	position: absolute;
	left: 0;
	bottom: -50px;
	text-align: center;
	font-size: 20px;
	width: 100%;
	display: block;
}
.entry-content h3{
	font-size: 24px;
	line-height: 180%;
	color: #2e308c;
}
.text-center{
	text-align: center!important;
}
.entry-content p{
	font-size: 18px;
	line-height: 180%;
	color: #333;
}

@media (max-width: 749px) {
.entry-content h2{
	font-size: 22px;
	line-height: 160%;
	text-align: center;
	color: #2e308c;
	position: relative;
	display: block;
	margin: 0 auto 70px auto;
	width:-moz-fit-content;
	width: fit-content;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
}
.entry-content h3{
	margin: 20px 0;
	font-size: 18px;
	line-height: 160%;
	color: #2e308c;
}
.text-center{
	text-align: center!important;
}
.entry-content p{
	margin: 20px 0;
	font-size: 15px;
	line-height: 180%;
	color: #333;
	text-align: left;
}
}

/* ボタンのスタイル */
.content-button{
	margin: 40px auto 40px auto;
	display: flex;
	justify-content: center;
}
.content-button a{
	text-decoration: none;
	margin: 20px;
}
.buttonIconText01 {
  display: flex;
  gap: 8px;
  align-items: center;
  width: 100%;
  max-width: 320px;
  height: 64px;
  padding: 8px 64px 8px 8px;
  font-family: sans-serif;
  font-size: 16px;
  color: #fff;
  text-align: center;
  overflow-wrap: anywhere;
  background-color: #2e308c;
  border-radius: 32px; /* (buttonの高さ / 2) の値 */
}

.buttonIconText01__reverse {
  flex-direction: row-reverse;
  padding: 8px 8px 8px 64px;
}

.buttonIconText01_icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 48px;
  aspect-ratio: 1;
  overflow: hidden;
}

.buttonIconText01_text {
  flex-shrink: 1;
  width: 100%;
	color: #fff;
	text-decoration: none;
}

@media (any-hover: hover) {
  .buttonIconText01 {
    transition: background-color 0.2s;
  }

  .buttonIconText01_icon {
    transition: transform 0.2s;
  }

  .buttonIconText01:hover {
    background-color: #5d6e8b;
  }

  .buttonIconText01:hover .buttonIconText01_icon {
    transform: translateX(4px);
  }

  .buttonIconText01:hover .buttonIconText01_icon__left {
    transform: translateX(-4px);
  }
}

@media (max-width: 749px) {
.content-button{
	margin: 0 auto 20px auto;
	display: flex;
	justify-content: center;
}
.content-button a{
	text-decoration: none;
	margin: 20px;
}
.buttonIconText01 {
  display: flex;
  gap: 8px;
  align-items: center;
  width: 100%;
  max-width: 320px;
  height: 64px;
  padding: 8px 64px 8px 8px;
  font-family: sans-serif;
  font-size: 16px;
  color: #fff;
  text-align: center;
  overflow-wrap: anywhere;
  background-color: #2e308c;
  border-radius: 32px; /* (buttonの高さ / 2) の値 */
}

.buttonIconText01__reverse {
  flex-direction: row-reverse;
  padding: 8px 8px 8px 64px;
}

.buttonIconText01_icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 48px;
  aspect-ratio: 1;
  overflow: hidden;
}

.buttonIconText01_text {
  flex-shrink: 1;
  width: 100%;
	color: #fff;
	text-decoration: none;
}
}


/* お問い合わせボタン */
.contcact-qr{
	margin:30px auto 0 auto;
	display: flex;
	justify-content: center;
}
.contcact-qrcode{
	width: 120px;
	margin: 0 15px;
	height: auto;
}
.contcact-qrcode p{
	margin: 0;
	font-size: 15px;
	text-align: center;
}
.contcact-qr img{
	width: 100%;
	height: auto;
}
.contcact-buttons{
	margin: 20px auto 40px auto;
	display: flex;
	justify-content: center;
}
.contcact-buttons a.button-tel{
	text-decoration: none;
	margin: 20px;
    padding: 20px;
  background-color: #2e308c;
	display: flex;
	justify-content: center;
	align-items: center;
	width:280px;
	transition: 0.2s;
	border-radius: 10px;
}
.contcact-buttons a.button-tel:hover{
	opacity: .8;
	transition: 0.2s;
}
.contcact-buttons a.button-tel span.icon{
	width: 45px;
	height: 45px;
	display: block;
	margin: 0 15px 0 0;
}
.contcact-buttons a.button-tel span.icon img{
	width: 100%;
	height: auto;
}
.contcact-buttons a.button-tel span.text{
	color: #fff;
	text-decoration: none;
	display: block;
	width: auto;
	font-size: 22px;
	line-height: 100%;
}
.contcact-buttons a.button-mail{
	text-decoration: none;
	margin: 20px;
    padding: 20px;
  background-color: #901817;
	display: flex;
	justify-content: center;
	align-items: center;
	width:280px;
	transition: 0.2s;
	border-radius: 10px;
}
.contcact-buttons a.button-mail:hover{
	opacity: .8;
	transition: 0.2s;
}
.contcact-buttons a.button-mail span.icon{
	width: 45px;
	height: 45px;
	display: block;
	margin: 0 15px 0 0;
}
.contcact-buttons a.button-mail span.icon img{
	width: 100%;
	height: auto;
}
.contcact-buttons a.button-mail span.text{
	color: #fff;
	text-decoration: none;
	display: block;
	width: auto;
	font-size: 22px;
	line-height: 100%;
}
@media (max-width: 749px) {
.contcact-buttons{
	margin: 20px auto 20px auto;
	display: block;
	justify-content: center;
}
.contcact-buttons a.button-tel{
	text-decoration: none;
	margin: 0 0 20px 0;
    padding: 20px;
  background-color: #2e308c;
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	transition: 0.2s;
	border-radius: 10px;
}
.contcact-buttons a.button-tel:hover{
	opacity: .8;
	transition: 0.2s;
}
.contcact-buttons a.button-tel span.icon{
	width: 35px;
	height: 35px;
	display: block;
	margin: 0 15px 0 0;
}
.contcact-buttons a.button-tel span.icon img{
	width: 100%;
	height: auto;
}
.contcact-buttons a.button-tel span.text{
	color: #fff;
	text-decoration: none;
	display: block;
	width: auto;
	font-size: 20px;
	line-height: 100%;
}
.contcact-buttons a.button-mail{
	text-decoration: none;
	margin: 0 0 20px 0;
    padding: 20px;
  background-color: #901817;
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	transition: 0.2s;
	border-radius: 10px;
}
.contcact-buttons a.button-mail:hover{
	opacity: .8;
	transition: 0.2s;
}
.contcact-buttons a.button-mail span.icon{
	width: 35px;
	height: 35px;
	display: block;
	margin: 0 15px 0 0;
}
.contcact-buttons a.button-mail span.icon img{
	width: 100%;
	height: auto;
}
.contcact-buttons a.button-mail span.text{
	color: #fff;
	text-decoration: none;
	display: block;
	width: auto;
	font-size: 20px;
	line-height: 100%;
}
}


.bg-gray{
	background: #f6f4f9;
}

#top-intro{
	padding: 60px 0 40px 0;
	border-bottom: 4px solid #2e308c;
}
#top-intro h2{
	margin-bottom: 20px;
}
@media (max-width: 749px) {
#top-intro{
	padding: 30px 0 0 0;
	border-bottom: 2px solid #2e308c;
}
}

#top-news{
	padding: 60px 0 40px 0;
	border-bottom: 4px solid #2e308c;
}
#top-news h2{
	margin-bottom: 20px;
}

#top-news ul{
	margin: 60px 0 30px 0;
	list-style: none;
}
#top-news ul li{
}
#top-news ul li dl{
	display: flex;
	flex-wrap: wrap;
}
#top-news ul li dl dt{
    font-size: 18px;
    line-height: 180%;
    color: #333;
}
#top-news ul li dl dd{
    font-size: 18px;
    line-height: 180%;
    color: #333;
}
#top-news ul li dl dd a{
	color: #000;
}
@media (max-width: 749px) {
#top-news{
	padding: 30px 0 0 0;
	border-bottom: 2px solid #2e308c;
}
}


#top-lesson{
	padding: 60px 0 40px 0;
	border-bottom: 4px solid #2e308c;
}
@media (max-width: 749px) {
#top-lesson{
	padding: 30px 0 0 0;
	border-bottom: 2px solid #2e308c;
}
}

.img-left{
	width: 50%;
	float: left;
	margin: 0 20px 20px 0;
}

#top-event{
	padding: 60px 0 40px 0;
	border-bottom: 4px solid #2e308c;
}
#top-event ul{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
}
#top-event ul li{
	width: calc(100% / 4 - 20px);
	margin: 0 10px;
}
#top-event ul li p{
	margin: 0;
}
@media (max-width: 749px) {
#top-event{
	padding: 30px 0 0 0;
	border-bottom: 2px solid #2e308c;
}
}


#top-overseas{
	padding: 60px 0 40px 0;
	border-bottom: 4px solid #2e308c;
}
@media (max-width: 749px) {
#top-overseas{
	padding: 30px 0 0 0;
	border-bottom: 2px solid #2e308c;
}
}

#top-lecturer{
	padding: 60px 0 40px 0;
	border-bottom: 4px solid #2e308c;
}
@media (max-width: 749px) {
#top-lecturer{
	padding: 30px 0 0 0;
	border-bottom: 2px solid #2e308c;
}
}

#top-contact{
	margin-top: -25px;
	padding: 60px 0 40px 0;
	border-bottom: 4px solid #2e308c;
}
@media (max-width: 749px) {
#top-contact{
	padding: 30px 0 0 0;
	border-bottom: 2px solid #2e308c;
}
}

/*===========
inview
===========*/

.fadeIn {
  opacity: 0;
  transition: 2s;
}
.fadeIn.is-show {
  opacity: 1;
}

/*===========
.imgBox
===========*/

.imgBox {
  text-align: center;
  margin: 50px 0;
}
.imgBox img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

/*===========
サイドボタン
===========*/
.side-buttons ul{
	margin: 0;
	padding: 0;
	justify-content: space-between;
	list-style: none;
	position: fixed;
	top: 25%;
	right: 0;
	width: 50px;
	z-index: 999;
}
.side-buttons ul li {
	margin-bottom: 15px;
	transition: 0.2s;
	writing-mode: vertical-rl;
	width: 100%;
}
.side-buttons ul li:hover{
	opacity: .8;
	transition: 0.2s;
}
.side-buttons ul li a{
	text-decoration: none;
	padding: 50px 10px 25px 10px;
	border-radius: 8px 0 0 8px;
	display: block;
	width: 100%;
		writing-mode: vertical-rl;
	font-size: 18px;

}
.side-buttons ul li.blog a{
	background-color: #2e308c;
	color: #fff;
	background-image: url("../../../assets/images/icon-blog.png");
	background-repeat: no-repeat;
	background-size: 26px;
	background-position: top 10px left 15px;
}
.side-buttons ul li.contact a{
	background-color: #901817;
	color: #fff;
	background-image: url("../../../assets/images/icon-mail.png");
	background-repeat: no-repeat;
	background-size: 26px;
	background-position: top 12px left 15px;
}
@media (max-width: 749px) {
	.side-buttons{
		display: none;
	}
}

/*===========
common
===========*/
.post-thumbnail{
	width: 100%;
	height: 250px;
	overflow: hidden;
	position: relative;
}
.post-thumbnail img{
	width: 100%;
	height: auto;
}
.post-thumbnail h1{
	color: #2e308c;
	text-align: center;
	position: absolute;
	font-size: 34px;
	line-height: 100%;
	z-index: 1;
	width: 100%;
	bottom: 30%;
    font-family: "Zen Old Mincho", serif;
    font-weight: 600;
    font-style: normal;
	background-color: rgb(255 255 255 / 0.8);
	padding: 15px 0;
}

#top-contact h2{
	font-size: 34px;
	line-height: 180%;
	text-align: center;
	color: #2e308c;
	position: relative;
	display: block;
	margin: 0 auto 70px auto;
	width:-moz-fit-content;
	width: fit-content;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
}
#top-contact h2:after{
	content: "";
	position: absolute;
	border-bottom: 2px solid #2e308c;
	width: calc(100% + 30px);
	left: -15px;
	bottom: -5px;
}
#top-contact h2 span{
	content: "";
	position: absolute;
	left: 0;
	bottom: -50px;
	text-align: center;
	font-size: 20px;
	width: 100%;
	display: block;
}

section.wp-block-group{
padding: 60px 0 40px 0;
    border-bottom: 2px solid #2e308c;
}
.mb30{
	margin-bottom: 30px;
}
.mr30{
	margin-right: 30px!important;
}
.ml30{
	margin-left: 30px!important;
}
@media (max-width: 749px) {
.mr30{
	margin-right: 0!important;
}
.ml30{
	margin-left: 0!important;
}
section.wp-block-group{
padding: 20px 0 20px 0;
    border-bottom: 2px solid #2e308c;
}
.post-thumbnail{
	width: 100%;
	height: 180px;
	overflow: hidden;
	position: relative;
}
.post-thumbnail img{
        width: auto;
        height: 100%;
        display: block;
        max-width: inherit;
}
	
.post-thumbnail h1{
	color: #2e308c;
	text-align: center;
	position: absolute;
	font-size: 27px;
	line-height: 100%;
	z-index: 1;
	width: 100%;
	bottom: 25%;
    font-family: "Zen Old Mincho", serif;
    font-weight: 600;
    font-style: normal;
	background-color: rgb(255 255 255 / 0.8);
	padding: 15px 0;
}
	
#top-contact h2{
	font-size: 22px;
	line-height: 180%;
	text-align: center;
	color: #2e308c;
	position: relative;
	display: block;
	margin: 0 auto 70px auto;
	width:-moz-fit-content;
	width: fit-content;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-style: normal;
}
#top-contact h2:after{
	content: "";
	position: absolute;
	border-bottom: 2px solid #2e308c;
	width: calc(100% + 30px);
	left: -15px;
	bottom: -5px;
}
#top-contact h2 span{
	content: "";
	position: absolute;
	left: 0;
	bottom: -50px;
	text-align: center;
	font-size: 20px;
	width: 100%;
	display: block;
}

}
/*===========
qa
===========*/
.qa dl{
	border-bottom: 1px dashed #ccc;
	margin: 20px 0 20px 40px;
}
.qa dl dt{
	margin: 0 0 14px 0;
	font-size: 20px;
	font-weight: bold;
	color: #901817;
}
.qa dl dd{
	font-size: 18px;
}
@media (max-width: 749px) {
.qa dl{
	border-bottom: 1px dashed #ccc;
	margin: 20px 0 20px 0;
}
.qa dl dt{
	margin: 0 0 10px 0;
	font-size: 16px;
	font-weight: bold;
	color: #901817;
}
.qa dl dd{
	font-size: 15px;
}
}

ul.events {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
ul.events li {
    width: calc(100% / 4 - 20px);
    margin: 0 10px;
}

/* FORM
================================================ */
/* form input */
input, textarea, select, input[type=search], button {
	font-size: 100%;
	font-family: inherit;
}
input[type=text],input[type=email],input[type=tel], input[type=password], textarea, input[type=search] {
	background: #f3f3f3;
	border: solid 1px #ddd;
	padding: 6px 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-appearance: none;
}
input[type=text], input[type=email], input[type=tel], input[type=search] {
	width: 240px;
	max-width: 90%;
}

/* text area */
textarea {
	line-height: 150%;
	width: 94%;
}

/* form input:focus */
textarea:focus, input[type=password]:focus, input[type=text]:focus, input[type=search]:focus {
	outline: none;
	background: #f9f9f9;
}

/* form button */
input[type=reset], input[type=submit], button {
    background: #901817;
	color: #fff;
	border: none;
	padding: 15px;
	cursor: pointer;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
    width: 40%;
    margin: 0 auto;
    display: block;
    font-size: 20px;
}

/* form button:hover */
input[type=reset]:hover, input[type=submit]:hover, button:hover {
    background: #901817;
	opacity: 0.7;
}


input[type=button] {
    background: #901817;
    color: #fff;
    border: none;
    padding: 15px;
    cursor: pointer;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    width: 40%;
    margin: 0 auto;
    display: block;
    font-size: 20px;
}
input[type=button]:hover {
    background: url(/wp-content/themes/otonoha/images/contact-button-bg4.png) ;
    background-size: 400px;
    background-position: left;
}

#contact-button{
	margin: 40px 0 0 0;
}
#contact-button input{
	width: 40%;
	margin: 0 15px;
}
#contact-button p{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#contact-button .wpcf7-spinner{
	display: none;
}

.contact-form{
	
}
.contact-form dl{
	display: flex;
	align-items: center;
	margin: 0;
	padding: 30px 0;
	border-bottom: 1px solid #eee;
}
.contact-form dl.last-child{
	border-bottom: none;
}
.contact-form dl dt{
	margin: 0 20px 0 0;
	width: 250px;
}
.contact-form dl dt p{
	margin: 0;
}
.contact-form dl dt span{
	display: inline-block;
    background: #901817;
    color: #fff;
	border-radius:4px;
	font-size: 14px;
	line-height: 100%;
	margin: 0 0 0 5px;
	padding: 3px 5px;

}
.contact-form dl dd{
	margin: 0;
	width:calc(100% - 270px);
}
.contact-form dl dd p{
	margin: 0;
}

@media (max-width: 749px) {
	#site-navigation .container{
		margin: 0;
		padding: 0;
	}
.menu-menu-1-container{
	overflow-y: scroll;
	}
.main-navigation ul{
	display: flex;
	flex-wrap: wrap;
	width: 470px;
}
	
input[type=text], input[type=email], input[type=tel], input[type=search] {
	width: 100%;
	max-width: 100%;
}

/* text area */
textarea {
	line-height: 150%;
	width: 100%;
}
.contact-form{
	
}
.contact-form dl{
	display: block;
	align-items: center;
	margin: 0;
	padding: 20px 0 30px 0;
	border-bottom: 1px solid #eee;
}
.contact-form dl.last-child{
	border-bottom: none;
}
.contact-form dl dt{
	margin: 0 0 10px 0;
	width: 100%;
}
.contact-form dl dt p{
	margin: 0;
}
.contact-form dl dt span{
	display: inline-block;
    background: #901817;
    color: #fff;
	border-radius:4px;
	font-size: 14px;
	line-height: 100%;
	margin: 0 0 0 5px;
	padding: 3px 5px;

}
.contact-form dl dd{
	margin: 0;
	width: 100%;
}
.contact-form dl dd p{
	margin: 0;
}
	
body .is-layout-flex{
	display: block;
	}
}

/*===========
レッスン
===========*/
ul.lesson {
	margin: 30px 0;
	padding: 0;
}
ul.lesson li{
	margin: 0 0 15px 0;
	padding: 0 0 0 35px;
    font-size: 18px;
    line-height: 180%;
    color: #333;
	background: url("../../../assets/images/lesson-list-icon.png") no-repeat;
	background-size: 30px;
	background-position: top 2px left 0;
	font-weight: bold;
	list-style: none;
}
ul.lesson li span{
    background:linear-gradient(transparent 60%, #ff6 60%);
}

/*
ul.lesson li::marker{
 color: red;
}
*/
@media (max-width: 749px) {
	ul.lesson{
		margin: 0 0 0 0;
		padding: 0;
	}
ul.lesson li{
	padding: 0 0 0 30px;
	font-size: 16px;
	background-size: 26px;
	background-position: top 2px left 0;
	}
}

.btn a.button-tel{
	text-decoration: none;
    margin: 20px 0;
    padding: 15px;
    background-color: #901817;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 320px;
    transition: 0.2s;
    border-radius: 10px;
}
.btn a.button-tel:hover{
	opacity: .8;
	transition: 0.2s;
}
.btn a.button-tel span.icon{
	width: 35px;
	height: 35px;
	display: block;
	margin: 0 15px 0 0;
}
.btn a.button-tel span.icon img{
	width: 100%;
	height: auto;
}
.btn a.button-tel span.text{
	color: #fff;
	text-decoration: none;
	display: block;
	width: auto;
	font-size: 18px;
	line-height: 100%;
}
.lesson-cont{
	display: flex;
}
.lesson-cont img{
	width: 330px;
	height: 215px;
	margin-right: 20px;
}
.mt0{
	margin-top: 0!important;
}
@media (max-width: 749px) {
.lesson-cont{
	display: inherit;
}
.lesson-cont img{
	width: 100%;
	height: auto;
	margin-right: 0;
	margin-bottom: 20px;
}
.btn a.button-tel{
	width: 100%;
	}
}


/*ブログ*/
.entry-footer{
	display: none;
}
#secondary{
	display: none;
}
#comments{
	display: none;
}
.post-thumbnail{
	width: 100%;
}
.entry-meta{
	margin: 20px 0;
}
.entry-content{
	margin: 20px 0 80px 0;
}