@charset "UTF-8";
/* CSS Document */

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

/*　ページ内リンクずれ
/* ------------------------------------- */

html {
	scroll-padding-top: 200px;
}
/* ---------------------------------------------------------------------------------------------

　 sen

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

hr {
	border-width: 1px 0 0 0;
	/* 太さ */
	border-style: dotted;
	/* 線種 */
	border-color: #3F3F3F;
	/* 線色 */
	height: 1px;
	/* 高さ */
	max-width: 100%;
	clear: both;
	margin: 15px 0;
}
/* ---------------------------------------------------------------------------------------------

　 title

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

#title {
	margin: 0;
	width: 100%;
	padding: 10% 0;
	text-align: center;
	position: relative;
}
#title::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.5);
}
#title h2 {
	font-size: 150%;
	font-weight: normal;
	color: #FFF;
	display: inline-block;
	position: relative;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: .2em;
}
.t_about {
	background: url(../img/page/t_about.jpg) center center / cover no-repeat;
}
.t_service {
	background: url(../img/page/t_service.jpg) center center / cover no-repeat;
}
.t_contact {
	background: url(../img/page/t_contact.jpg) center center / cover no-repeat;
}
.t_recruit {
	background: url(../img/page/t_recruit.jpg) center center / cover no-repeat;
}
.t_other {
	background: url(../img/page/t_other.jpg) center center / cover no-repeat;
}
.t_privacy-policy {
	background: url(../img/page/t_privacy-policy.jpg) center center / cover no-repeat;
}
@media screen and (min-width: 768px) {
	#title {
		padding: 8% 0;
	}
	#title h2 {
		font-size: 180%;
	}
}
/* ---------------------------------------------------------------------------------------------

　 tex

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

.tex {
	width: 100%;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
	overflow: hidden;
	padding: 5% 0
}
.tex img {
	border: 0;
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.tex p {
	margin: 0;
	padding: 0;
}
.tex img a {
	border: 0;
}
.tex a:hover img {
	opacity: 0.6;
	transition: 0.5s;
}

/* 等分
/* ------------------------------------- */
.boxA {
margin-bottom: 5%
}
.boxA:after {
	content: "";
	display: block;
	clear: both
}
@media screen and (min-width: 768px) {
	.box50_l {
		float: left;
		width: 48%
	}
	.box50_r {
		float: right;
		width: 48%
	}
}
@media (max-width:767px) {
	.box50_l,.box50_r{
		margin-bottom: 5%
	}
}
/* ---------------------------------------------------------------------------------------------

　 見出し

--------------------------------------------------------------------------------------------- */
h2.midasi {
	color: #000;
	font-weight: normal;
	font-size: 1.3em;
	margin: 20px 0;
	clear: both;
	font-family: 'Noto Serif JP', serif;
	letter-spacing:.1em;
}


h3.midasi {
	color: #19317a;
	font-weight: normal;
	padding-bottom: 2%;
	font-size: 1.3em;
	margin-bottom: 20px;
	clear: both;
	border-bottom: solid 2px #686ec1;
	position: relative;
	font-family: 'Noto Serif JP', serif;
}
h3.midasi:before {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 2px #19317a;
	bottom: -2px;
	width: 20%;
}

h3.midasi_about {
	color: #19317a;
	font-weight: normal;
	font-size: 1.3em;
	margin: 20px 0;
	clear: both;
	font-family: 'Noto Serif JP', serif;
	letter-spacing:.1em;
}

h2.midasi:before{
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}
@media screen and (min-width:768px) {
	h2.midasi,
	h3.midasi,
	h3.midasi_about{
		font-size: 1.6em;
	}
}
/* ---------------------------------------------------------------------------------------------

　 table comにある

--------------------------------------------------------------------------------------------- */
/* 必須マーク */

.must {
	background: #1f356e;
}
/* 任意マーク */

.free {
	background: #999;
}
.must, .free {
	color: #FFF;
	font-size: 10px;
	margin-right: 10px;
	padding: 5px;
	letter-spacing: 0.2em;
}
/* ---------------------------------------------------------------------------------------------

　 google-maps 

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

.google-maps {
	position: relative;
	padding-bottom: 75%;
	height: 0;
	overflow: hidden;
}
.google-maps iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
/* ---------------------------------------------------------------------------------------------

　 pagination

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

.pagination {
	clear: both;
	padding: 20px 0;
	position: relative;
	font-size: 12px;
	line-height: 12px;
	text-align: center;
	margin-bottom: 3%
}
.pagination-box {
	display: inline-block;
}
.pagination span, .pagination a {
	display: block;
	float: left;
	margin: 2px 2px 2px 0;
	padding: 8px 10px 8px 10px;
	text-decoration: none;
	width: auto;
	color: #fff;
	background: #777777;
}
.pagination a:hover {
	color: #fff;
	background: #19317a;
}
.pagination .current {
	padding: 8px 10px 8px 10px;
	background: #e6e8ea;
	color: #666;
}
.page_box {
	float: left;
	width: 100%;
	margin-top: 20px
}
@media screen and (min-width: 768px) {
	.pagination {
		font-size: 14px;
		line-height: 14px;
	}
	.pagination span, .pagination a {
		padding: 10px 15px 10px 15px;
	}
	.pagination .current {
		padding: 10px 15px 10px 15px;
	}
}
/* ---------------------------------------------------------------------------------------------

　ギャラリー

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

.gallery {
	/** ギャラリーを囲むボックス **/
	width: 100%;
	margin-bottom: 20px !important;
	overflow: hidden;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.gallery br {
	display: none;
}
/** 自動で挿入される clearfix の余白解除 **/

.gallery-item {
	/** 画像共通のスタイル **/
	float: left;
	margin-bottom: 0 !important;
}
.gallery-icon {
	/** 画像を囲む dt のスタイル **/
	text-align: center;
}
.gallery-icon img {
	width: 100%;
	height: auto;
	margin-bottom: 10px !important;
}
.gallery-caption, .wp-caption-text {
	/** キャプション **/
	color: #222;
	font-size: 14px;
	margin: 0 0 10px;
	text-align: center;
}
.gallery-columns-1 .gallery-item {
	/** カラムなし **/
	width: 100%;
	margin-right: 0;
}
.gallery-columns-2 .gallery-item {
	/** 2カラム **/
	width: 48%;
	margin: 0 1%;
}
.gallery-columns-3 .gallery-item {
	/** 3カラム **/
	width: 31.33333%;
	margin: 0 1%;
}
.gallery-columns-4 .gallery-item {
	/** 4カラム **/
	width: 23%;
	margin: 0 1%;
}
.gallery-columns-5 .gallery-item {
	/** 5カラム **/
	width: 18%;
	margin: 0 1%;
}
@media (max-width:767px) {
	/* 640px以下用の記述 */
	.gallery-columns-3 .gallery-item {
		width: 48%;
		margin: 0 1%;
	}
	.gallery-columns-5 .gallery-item {
		width: 31.33333%;
		margin: 0 1%;
	}
	table.mobile-block, table.mobile-block th, table.mobile-block td {
		border: none;
	}
	table.mobile-block th, table.mobile-block td {
		width: 100%;
		display: block;
	}
	table.mobile-block th, table#otoiawase th, table#otoiawase td {
		border-bottom: none;
	}
	.release br {
		display: none;
	}
}
/* ---------------------------------------------------------------------------------------------

　キャプション

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

figure {
	background-color: #fff;
	padding: 5px;
	display: table;
	overflow: hidden;
}
figure img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
figcaption {
	display: table-caption;
	caption-side: bottom;
	background: #fff;
}
@media only screen and (max-width:60em) {
	figure {
		text-align: center;
		clear: both;
		overflow: hidden;
		padding: 0;
		margin: 0 auto
	}
	figure .alignright img, figure .alignleft img {
		float: none;
	}
}

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

　arvhive

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

/*	詳細ページ
/* ------------------------------------- */
.i_date2 {
	color: #3F3F3F;
}
.i_title {
	color: #3F3F3F;
	font-size: 160%;
	font-weight: normal;
	line-height: 170%;
	margin: 20px 0 30px 0;
	padding: 5px 0;
	font-family: 'Noto Serif JP', serif;
}
.i_text_box {
	border-bottom: #3F3F3F dotted 1px;
	margin: 0 0 10px 0;
	padding: 0 0 10px 0;
}

/* カテゴリボタン
---------------------------------------------------- */
.button-d-box {
margin: 1em 0
}
a.button-d {
  display: inline-block;
  padding: 0.1em 1em;
  font-size: 0.7rem;
  color: #19317a;
  text-decoration: none;
  user-select: none;
  border: 1px #19317a solid;
  transition: 0.4s ease;
	margin: 0 0.4em 0.4em 0
}
a.button-d:hover {
  color: #fff;
  background: #19317a;
}
@media screen and (min-width: 768px){	
a.button-d {
  font-size: 0.8rem;
}
}

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

　 edit

--------------------------------------------------------------------------------------------- */
.edit-link{
	width:100%;
	clear:both;
}
a.post-edit-link {
display: inline-block;
  padding: 0.4em 1.6em;
  font-size: 0.8em;
  color: #fff;
  text-decoration: none;
  user-select: none;
  background: #999;
  transition: 0.2s ease;
}
a.post-edit-link:hover {
  opacity: .6;
color: #fff;  
}
.edit-link:after{
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}

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

　 ボタン　お知らせ一覧back

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

.back_btn {
	margin: 5% 0
}
.back_btn ul {
	width: 100%;
	margin: 0 auto
}
.back_btn ul:after {
	content: "";
	clear: both;
	display: block;
}
.back_btn ul li {
	list-style-type: none;
	display: block;
	float: left;
	margin-bottom: 2.87%;
	text-align: center;
	/* 見た目の調整 */
	width: 48.56%;
	margin-right: 2.88%;
}
.back_btn ul li:nth-child(2n) {
	margin-right: 0;
}
a.btn {
	font-size: 0.8em;
	line-height: 1.5;
	display: inline-block;
	padding: 1rem 0;
	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;
	width: 100%;
}
a.btn:hover, .back_btn ul li:hover {
	text-decoration: none;
}
a.btn--blue {
	color: #3F3F3F;
	border: solid 1px #3F3F3F;
}
a.btn::after {
	content: '';
	position: absolute;
	top: 42%;
	right: 13px;
	width: 5px;
	height: 5px;
	border-top: 2px solid #3F3F3F;
	border-right: 2px solid #3F3F3F;
	transform: rotate(45deg);
	transition: all .3s;
}
a.btn:hover::after {
	right: 11px;
}
.btn_size {
	width: 100%;
	margin: 0 auto;
}
@media screen and (min-width:768px) {
	.back_btn ul {
		width: 500px;
	}
	.btn_size {
		width: 300px
	}
}

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

　 Gutenberg

--------------------------------------------------------------------------------------------- */
/*フォントサイズ*/
.has-small-font-size {
	font-size: 13px;
}

.has-regular-font-size,
.has-normal-font-size {
	font-size: 16px;
}

.has-medium-font-size {
	font-size: 20px;
}

.has-large-font-size {
	font-size: 36px;
}

.has-larger-font-size,
.has-huge-font-size {
	font-size: 42px;
}

/*テキストの背景色*/
p.has-background {
	padding: 20px 30px;
}

/*テーブル*/
.wp-block-table{
  width: 100%;
}

.wp-block-table td:nth-of-type(1){
  background-color:#e6e8ea;
}

/*テーブル ストライプ*/
.wp-block-table.is-style-stripes {
	border-spacing: 0;
	border-collapse: inherit;
	background-color: transparent;
	border-bottom: 1px solid #f3f4f5;
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
	background-color: #f3f4f5;
}

/*テーブル 均一幅*/
.wp-block-table .has-fixed-layout {
	table-layout: fixed;
	width: 100%;
}

.wp-block-table .has-fixed-layout td,
.wp-block-table .has-fixed-layout th {
	word-break: break-word;
}

/*画像キャプション*/
.wp-caption {
  margin: auto;
  text-align: center;
  max-width: 100%;
}

.wp-caption-text {
  display: inline-block;
  text-align: left;
  color: #8a8a8a;
  margin: 0;
}