/***************/
/*** span ***/
/***************/
span.rectangle {
	color: #fff;
	font-size:0.8rem;
	line-height:1em;
	padding:0.2em 0.5em;
	margin:0 1rem 0.3rem 0;
	font-weight:bold;
	text-align:center;
	line-height:1em;
	background:none;
	border:thin solid currentcolor;
}
span.required {
	color: #fff;
	font-size:0.8rem;
	line-height:1em;
	padding:0.2em 0.5em;
	margin:0;
	font-weight:bold;
	text-align:center;
	line-height:1em;
	background:#0089b0;
	border-radius:0.2em;
}

/***************/
/*** button ***/
/***************/
a.detail {
	display:inline-block;
	color: #402a74;
	font-size:1.0rem;
	line-height:1em;
	padding:1.0em 2em;
	margin:0;
	font-weight:bold;
	text-align:center;
	border:thin solid currentcolor;
	border-radius:1.5em; 
	background:rgba(255, 255, 255, 0.8);
}
/* 横幅640px以下 */
@media screen and (max-width: 640px) {
	a.detail {
		font-size:0.9rem;
		padding:1.1em 1.5em;
	}
}
a.detail-02 {
	display:inline-block;
	color: #fff;
	font-size:100%;
	font-weight:bold;
	text-align:center;
	line-height:1em;
	margin:0;
	padding:0.8em 1.8em;
	border-radius:2em; 
	background:#05c5a1;
}
a.detail-03 {
	display:inline-block;
	color: #333;
	font-size:0.8em;
	font-weight:normal;
	text-align:center;
	line-height:1em;
	margin:0;
	padding:0.2em 1.0em;
	border-radius:0.5em; 
	background:#eee;
}
a.detail-04 {
	display:inline-block;
	color: #05c5a1;
	font-size:0.8rem;
	font-weight:bold;
	text-align:center;
	line-height:1em;
	margin:0;
	padding:0.8em 2em;
	border:thin solid currentcolor;
	border-radius:1.2em; 
	box-shadow: 0.2em 0.1em 0.1em currentcolor;
}
p.btn_detail a {
	display: inline-block;
    float: right;
    background: #f5bf32;
    color: #fff;
    text-align: center;
	text-decoration:none;
    font-weight: bold;
    font-size: 90%;
    padding: 0.1em 1.5em;
    margin-left: 0.5em;
    border-radius: 0.2em;	
}
a.arrow { /* 矢印ボタン */
	font-size:1.2em;
	line-height:1.0em;
	letter-spacing:0.01em; /* 文字間隔 */
	margin:0;
    padding:0.4em 2.0em 0.4em 0;
	border:none;	
	background:url('http://vertexnet.jp/wp-content/themes/original/img/arrow.svg') right center / 1.5em no-repeat;
}

/*************/
/*** table ***/
/*************/
/* table.table-01 */
table.table-01 {
	margin:0 0 2em;
}
table.table-01 th{
	color:#333;
	font-weight:normal;
	background:#ffe557;
	text-align:left;
	padding:0.5em 1em;
	border:solid 0.2em #fff;
}
table.table-01 td {
	background:#fafafa;
	padding:0.5em 1em;
	border:solid 0.2em #fff;
}
table.table-01 p {
	margin:0;
}
/* wp-block-table.table-01 */
figure.wp-block-table.table-01 table {
	margin:0 0 2em;
}
figure.wp-block-table.table-01 table th{
	color:#333;
	font-weight:normal;
	background:#ffe557;
	text-align:left;
	padding:0.5em 1em;
	border:solid 0.2em #fff;
	width:7em;
}
figure.wp-block-table.table-01 table td {
	background:#fafafa;
	padding:0.5em 1em;
	border:solid 0.2em #fff;
}
figure.wp-block-table.table-01 table p {
	margin:0;
}
/* table-02 */
figure.wp-block-table.table-02 table th {
	color:#333;
	width:12em;
    background: #fff343;
    text-align: left;
	padding: 0.6em 1em;
    border: 0.2em solid #fff;
}
figure.wp-block-table.table-02 table td {
	color:#333;
    background: #efefef;
	padding: 0.6em 1em;
    border: 0.2em solid #fff;
}
/* table.event */
table.event th,table.event td {
	vertical-align:top;
	line-height:1.5em;
}
table.event th {
	width:3em;
	padding:0 0.5em 0.5em 0;
}
table.event td {
	padding:0 0.5em 0.5em 0;
}
/* 横幅640px以下 */
@media screen and (max-width: 640px) {
	.table01 {
		margin: 0 0 1em 0;
	}
	figure.wp-block-table.table-02 table th {
		width:6em;
	}
}

/***************/
/***** box *****/
/***************/

/*** article ***/
/* thumbnail */
article .thumbnail img { /* article内のthumbnailの画像は全てcover */
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* .article-01 内部のセットパターン */
article.article-01 .title {
	font-size:1.2rem;
	font-weight:bold;
	margin-bottom:0.6em;
}
article.article-01 .date {
	float:left;
	color:#aaa;
	font-size:0.9em;
	font-weight:bold;
	margin-bottom:0.5em;
	width:6.5em;
}
article.article-01 .category {
	margin-bottom:0.8em;
}
article.article-01 p {
	margin-bottom:0;
}
/* .article-02 */
article.article-02  {
	display:grid;
	grid-template-columns:6rem 6rem 1fr;
	gap:1.5rem;
}
article.article-02 .category {
	margin-bottom:0.2em;
}
article.article-02 .title {
	font-size:1.2rem;
	font-weight:bold;
	margin-bottom:0.2em;
}
article.article-02 .date {
	display: grid;
	place-items: center;
}
article.article-02 p {
	margin-bottom:0;
}
/* 横幅640px以下 */
@media screen and (max-width: 640px) {
	article.article-02  {
		grid-template-columns:1fr;
		gap:0.5rem;
	}
	article.article-02 .thumbnail {
		display: none;
	}
	article.article-02 .date {
		display: block;
	}
}

/*** general ***/
/* .general-01 */
section.general-01 {
	margin:0 auto;
}

/* box-fukidashi */
.box-fukidashi {
	overflow:visible;
    position: relative;
	display:inline-block;
	text-align:center;
	width:100%;
	max-width:30em;
    padding: 0.5em;
	background:#dbeaeb;
	border-radius:0.5em;
}
.box-fukidashi:before {
    position: absolute;
    top: 100%;
    left: calc(50% - 2em);
    height: 0;
    width: 0;
    border: solid transparent;
    content: "";
    margin-left: 1em;
    border-color: transparent;
    border-top-color: #dbeaeb;
    border-width:1em;
}
.box-fukidashi p {
	color:#05c5a1;
	width:100%;
	font-size:0.8em;
	font-weight:bold;
	margin:0;
}
.box-fukidashi h2 {
	color:#333 !important;
	font-size:1.6rem !important;
	background:none !important;
}
/* 横幅640px以下 */
@media screen and (max-width: 640px) {
	.box-fukidashi h2 {
		font-size:1.2em !important;
	}
}

/* box-h1 大画像H1ボックス */
.box-h1 {
	aspect-ratio: 1920 / 1000;
	display: flex;
	align-items: center; /* innerを上下中央に配置 */
}
.box-h1 .inner {
	text-align:left;
}
.box-h1 h1 {
	display:inline-block;
	color:#fff;
	font-size:3.5rem;
	line-height:1em;
	margin:0;
	padding:0.1em 1.0em;
	background:#05c5a1;
	border-radius:0.1em;
}
.box-h1 p.title_sub {
	font-family:"Cormorant Garamond", "Yu Mincho" ,"Hiragino Mincho Pro", "MS PMincho" , serif;	
	display:inline-block;
	color:#05c5a1;
	font-size:2.0em;
	line-height:1em;
	margin:0;
	padding:0.2em 0.4em;
	background:#eee;
	border-radius:0.1em;
}
.box-h1 div.description p {
	display:inline-block;
	text-align:left;
	color:#333;
	font-size:1.0em;
	line-height:1.6em;
	font-weight:bold;
	max-width:34em;
	margin:0;
	padding:1.2em 1.4em;
	background:rgba(255, 255, 255, 0.9);
	border-radius:0.2em;
}
/* .box-h1.ver-01 大画像H1ボックス */
.box-h1.ver-01 {
	background:url('https://fujigaoka-d.com/broadcast/wp-content/themes/original/img/pic-01.jpg') center top / cover no-repeat ;
	background-color:rgba(0, 0, 0, 0.7);
	background-blend-mode:darken;  
}
.box-h1.ver-01 h1 {
	color:#fff;
	font-size:3.0rem;
	line-height:1.5em;
	margin:0;
	padding:0;
	background:none;
}
.box-h1.ver-01 a.category {
	color:#0DCAF2;
	font-size:1.2em;
	margin-right:0.5em;
}
/* .box-h1.ver-02 大画像H1ボックス */
.box-h1.ver-02 {
	width:100%;
	height:16rem;
	background-color:#05c5a1;
}
.box-h1.ver-02 + h1 { /* 隣接 */
	display: flex;/* 文字上下中央用 */
	flex-direction: column;/* 文字上下中央用 */
	justify-content: center;/* 文字上下中央用 */
	align-items: center;/* 文字上下中央用 */
	position:relative;
	height:12rem;
	width:calc(100% - 4rem);
	text-align:center;
	color:#05c5a1;
	font-size:2.6rem;
	line-height:1.5em;
	margin:-8rem auto 0 auto;
	padding:0;
	border-radius:2vw;
	background:url('https://xs334779.xsrv.jp/test-2/wp-content/themes/original/img/school.svg') #fff right bottom / 7em no-repeat;
	box-shadow: 0.2em 0.1em 0.1em #ccc;
}
@media screen and (max-width: 640px) {
	.box-h1 {
		aspect-ratio: 1 / 1;
	}
	.box-h1 h1 {
		font-size:1.8rem;
	}	
	.box-h1 p {
		font-size:1.3em;
	}	
	.box-h1.ver-01 h1 {
		font-size:1.5rem;
	}
	.box-h1.ver-01 a.category {
		font-size:1.0em;
	}
	.box-h1.ver-02 {
		height:10rem;
	}
	.box-h1.ver-02 + h1 {
		font-size:1.8rem;
	}
}	

/* .box-h2.ver-01 */ 
.box-h2.ver-01 {
}
.box-h2.ver-01 p {
	display:inline-block;
	background:#fff40d;
	padding:0 0.5em;
	margin-bottom:0.5em;
}
.box-h2.ver-01 h2 {
	color:#333;
	background:none !important;
}
/* sns */
div.sns-icon img {
	width:3em;
	margin:0 0.5em 0 0;
}

/***** category,tag *****/
a.category, a.tag
{
	font-size:0.8em;
	color:#fff !important;
	line-height:1.8em;
	padding:0.1em 0.6em 0;
	margin:0 0.6em 0.2em 0;
	border-radius:0.2em;
	background:#0089b0;
	text-align:center;
	text-decoration:none !important;
	display:inline;
	float:left;
}
a.category.study-tour {
	background:#be2376;	
}
a.category-uncategorized {
	display:none; /* ”未分類”のカテゴリー表示をcssで表示にする */
}

/***** note *****/
.note-01 {
	width:100%;
	display:block;
	padding:1em 1.5em;
	margin:0;
	font-weight:bold;
	color:#fff;
	background:#FFBC00;
	border-radius:0.5em;
}
.note-02 {
    position: relative;
}
.note-02::before {
    content: "";
    position: absolute;
    top: 0px;
    display: block;
    width:1.5rem;
    height:1.5rem;
	left: 0px;
    background-image: linear-gradient(135deg, rgb(140, 130, 96) 50%, transparent 50%);
}

/* figure */
figure.right { /* 右寄せした埋め込み画像 */
	margin:0 0 1em 1em;	
}
figure.left { /* 左寄せした埋め込み画像 */
	margin:0 1em 1em 0;	
}
figcaption {
	color:#333;
	font-size:0.8em;
	font-weight:normal;
	line-height:1.6em;
	margin:0.2em 0 0 0.2em !important;
}

/* Breadcrumbs */
.breadcrumbs {
	background:#05c5a1;
	margin:0;
}
.breadcrumbs .inner {
	margin-top:0.5em;
	margin-bottom:0.5em;
}
.breadcrumbs .inner span {
	font-size:0.9em;
	font-weight:normal;
}
/* modified */
section.modified {
	margin:3em 0 0 0;
}
section.modified p {
	color:#aaa;
	font-size:0.8em;
	font-weight:bold;
	text-align:right;
	margin:0;
}
/* serach form */
div.searchform {
	float:right;
	margin:0.5em 0;	
}
div.searchform form input#s,input#searchsubmit {
	font-size:70%;
	line-height:1em;
	border:solid thin #ccc;
	padding:0.4em;
}
div.searchform form input#s {
	background:#fff;
	margin-right:0.5em;
	width:13em;
}
div.searchform form input#searchsubmit {
	margin:0;
}
/* reCAPTCHA 非表示 */
.grecaptcha-badge { visibility: hidden; }
/* Youtubeレスポンシブ表示用 */
.movie {
	max-width:45em;
	margin:0 auto;
}
.movie iframe {
	aspect-ratio: 16 / 9;
	width: 100%;
	height: auto;
}
/* GoogleCalender レスポンシブ表示用 */
iframe.googleCalendar-01 {
  width: 100%;
  height: 400px;
}
@media all and (min-width: 768px) {
  iframe.googleCalendar-01 {
	height: 600px;
  }
}
iframe.googleCalendar-02 {
  margin-bottom:1.5rem;
}
iframe.googleCalendar-02 {
  width: 100%;
  height: 300px;
}
@media all and (min-width: 768px) {
  iframe.googleCalendar-02 {
	height: 400px;
  }
}
/* GoogleMap */
.google-map {
    position: relative;
    width: 100%;
    padding-top: 50%;
    /* 2:1のアスペクト比 */
    height: 0;
	border-radius:3vw;
}
.google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/****************************/
/*** ハンバーガーメニュー ***/
/****************************/
.hamburger {
	position:relative;
	float:right;
	cursor: pointer;
	height: 3rem;
	width: 3rem;
	background-color:#ffbc00;
	border-radius:0.4em;
	margin:0;
	z-index:10;
}
/* 横幅640px以下 */
@media screen and (max-width: 640px) {
	.hamburger {
		height: 3em;
		width: 3em;
	}
}
.hamburger span {
  background-color: #fff;
  left: 20%;
  position: absolute;
  transition: all 0.6s;
  height: 7%;
  width: 60%;
}
.hamburger_linetop {
  top: 20%;
}
.hamburger_linecenter {
  top: 45%;
}
.hamburger_linebottom {
  top: 70%;
}
.sidemenu {
	height: auto;
	padding: 3em 0;
	position: fixed;
	transition: all 0.6s;
	top: 0;
	width:20rem; /* メニュー幅 */
	left:-20rem; /* メニュー幅 */
	background:#beb33b;
	border-radius:0 0 0.5em 0;
	z-index: 2;
}
/* nav */
.sidemenu nav ul li {
	border-bottom:thin dotted #fff;
	margin:1.0em 3.0em;
	padding-bottom:0.8em;
}
.sidemenu nav ul li a {
	color:#fff;
	font-size:1.0em;
	line-height:1.2em;
	font-weight:normal;
}
.sidemenu ul.menu li.menu-item span {
	color:#fff;
}
/* メニュークリック後 */
.nav_open .sidemenu {
  left: 0;
}
.nav_open .overlay {
  opacity: 0.8;
  visibility: visible;
}
/* メニュー外の背景（メニュークリック後） */
.overlay {
  background-color: #000;
  cursor: pointer;
  height: 100vh;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  transition: all 0.6s;
  visibility: hidden;
  width: 100vw;
  z-index: 1;
}

/*********************/
/***** Wordpress *****/
/*********************/

/* figure.wp-block-table */
figure.wp-block-table {
	border-collapse:collapse;
	border-spacing:0;
	empty-cells:show;
	margin:0 0 1em 0;
	width:100%;
	word-break: break-all;
	word-wrap: break-all;
}
figure.wp-block-table th{
	text-align:left;
	padding:0.4em 1em;
}
figure.wp-block-table td{
	padding:0.4em 1em;
	margin-bottom:0.1em;
}
figure.wp-block-table table p {
	margin:0;
}
/* ul.wp-block-list */
ul.wp-block-list {
	padding:0 0 0 2em;
	margin:0 0 1em 0.5em;
}
ul.wp-block-list li {
	display:list-item;
	overflow:visible;
	list-style: disc;
	margin:0 0 0 0;
	padding-left:0;
	text-indent: 0;
	overflow-wrap: normal;
	word-break:break-all;
}
/* 横幅640px以下 */
@media screen and (max-width: 640px) {
	/* ul.wp-block-list */
	ul.wp-block-list {
		margin-left:0;
	}
	/* figure */
	figure.wp-block-image,figure.wp-block-image.is-resized {
		margin:0 0 1em 0;
	}
}

/* image */
figure.wp-block-image,figure.wp-block-image.is-resized {
	margin:0 0 1em 0;
}
/* wpcf form */
.wpcf7 {
	max-width:40em;
	margin-bottom:1em;
}
.wpcf7 p {
	margin:0 0 1em 0;
}
.wpcf7-text,.wpcf7-textarea {
	width:100%;
	font-size:1em;
}
.wpcf7-submit {
	color:#000;
	font-size:1em;
	border:solid 1px #666;
	padding:0.3em 1.5em;
	background:#eee;
}
/* wp-pagenavi */
.wp-pagenavi {
	width:100%;
	text-align:center;
	font-size:0.8em;
}
.wp-pagenavi a, .wp-pagenavi span{
	color:#333;
	background:#f0f0f0;
	border-radius:0.3em;
	border:none !important;
	padding:0.5em 1em !important;
}
.wp-pagenavi span.current {
	color:#333;
	background:#ddd;
}

/****************/
/*** 場合分け ***/
/****************/
header.sticky { /* ヘッダー固定時 */
	position: sticky;
	top: 0;
}