@charset "utf-8";
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  vertical-align: middle;
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  padding: 0 2px;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}

/*text
************************************************************************************/
.textCenter{
	text-align:center;
}
.textCenter img{
	max-width: 100%;
	height: auto;
}
.textRight{
 text-align:right;
}
.textLeft{
 text-align:left;
}
.smidashi{
	font-weight: bold;
	font-size: 17px;
	color: #ce4040;
}
.bold{
	font-weight: 700;
}
.red{color:#d80808;}
ul.baselink{}
span.br{}
a.tel{}
span.spbr{}

/* -- float -- */
.rf10{float:right; margin-left:10px;}
.rf15{float:right; margin-left:15px;}
.lf15{float:left; margin-right:15px;}
.rf{float:right;}
.lf{float:left;}



@media screen and (min-width: 1024px){
	span.br{
		display: block;
		text-indent: -9999;
		font-size: 0;
	}
	a.tel{
		pointer-events: none;
		cursor: default;
		text-decoration: none;
		color: #000;
	}
}
@media screen and (max-width: 1024px){
	span.spbr{
		display: block;
		text-indent: -9999;
		font-size: 0;
	}
}
@media screen and (max-width: 768px){
	.textCenter img{
		max-width: 100%;
		height: auto;
	}

	.rf10{float:none; margin:10px auto;}
	.rf15{float:none; margin:10px auto;}
	.lf15{float:none; margin:10px auto;}
	.rf{float:none; margin:10px auto;}
	.lf{float:none; margin:10px auto;}

	img.rf10{float:none; margin:10px auto; display:block; max-width:100%; height:auto;}
	img.rf15{float:none; margin:10px auto; display:block; max-width:100%; height:auto;}
	img.lf15{float:none; margin:10px auto; display:block; max-width:100%; height:auto;}
	img.rf{float:none; margin:10px auto; display:block; max-width:100%; height:auto;}
	img.lf{float:none; margin:10px auto; display:block; max-width:100%; height:auto;}
}	




/*table
************************************************************************************/
/*table*/
.wp-block-table table{
	margin: 30px auto;
	width: 100%;
	border: 0;
	border-collapse: separate;
	border-spacing: 3px;
}
.wp-block-table td, .wp-block-table th{
	border: 0;
}
figure table caption{
	padding: 5px 0;
	text-align: left;
	display: block;
	font-weight: bold;
}

figure table tbody th{
	padding: 15px;
	background: #E69A03;
	color: #FFF;
	text-align: center;
	border-radius: 5px;
	border: 0;
}

figure table tbody td{
	padding: 15px;
	text-align: left;
	background: #FFF;
	border-radius: 5px;
	border: 0;
}
figure table.center td{
	text-align: center;
}


table.table_border{
	width: 100%;
	border-collapse:collapse;
	border: 0;
	border-top: 1px solid #000;
	margin: 30px auto 50px;
}
table.table_border th{
	font-weight: bold;
	padding: 1em;
	border: 0;
	border-bottom: 1px solid #000;
	text-align: left;
	width: 10em;
	background: none;
	color: #000;
}
table.table_border td{
	padding: 1em;
	border: 0;
	border-bottom: 1px solid #000;
	position: relative;
	padding-left: 70px;
	background: none;
}


/*スクロール*/

.table_scroll .sp_comment{
	display: none;
}
.table_scroll .scroll_body{}


@media screen and (max-width: 768px){
	.table_scroll .sp_comment{
		display: block;
		padding: 10px;
		border: 1px solid var(--table-border-color);
		margin: 10px 0;
	}
	.table_scroll .sp_comment:after{
		content: "※表が見切れている場合は、横にスクロールしてご覧いただけます";
		display: block;
	}
	.table_scroll .scroll_body{
		width: 97%;
		margin: auto;
		overflow-x: scroll;
		font-size: 14px !important;
	}
	.table_scroll .scroll_body table{
		width: 1200px !important;
		font-size: 14px !important;
	}
	.table_scroll .scroll_body table th,
	.table_scroll .scroll_body table td,
	.table_scroll .scroll_body table.main th,
	.table_scroll .scroll_body table.main td,
	.table_scroll .scroll_body figure table th,
	.table_scroll .scroll_body figure table td{
		word-break: break-all;
		font-size: 14px !important;
	}
}

/*sp*/

@media screen and (max-width: 768px){
	table.smartphone,
	.posts .smartphone table{
		display: block;
		width: 100%;
		border: 0 !important;
	}
	table.smartphone thead,
	.posts .smartphone table thead{
		display: none;
	}
	table.smartphone tbody,
	.posts .smartphone table tbody{
		display: block;
		width: 100%;
	}
	table.smartphone tr,
	.posts .smartphone table tr{
		display: block;
		width: 100%;
	}
	table.smartphone th,
	table.smartphone td,
	.posts .smartphone table th,
	.posts .smartphone table td{
		display: list-item;
		width: 100% !important;
		padding: 10px 10px !important;
		box-sizing: border-box;
		display: block;
	}
	table.smartphone th,
	.posts .smartphone table th{
		list-style-type: none;
		display: block;
		margin-bottom: 5px;
	}

	table.smartphone td,
	.posts .smartphone table td{
		margin-left: 0;
		list-style-type: none;
		border: 0 !important;
		margin-bottom: 5px;
	}
}

/*list
************************************************************************************/
ul.ar,
.posts ul{
	margin: 0 0 1em;
}
ul.ar li,
.posts ul li{
	background: url("../../assets/img/ar_black2.svg") no-repeat left .7em;
	background-size: 10px auto;
	padding: .15em 0 .1em 18px;
	margin: 0 0 .3em;
}
ul.ar li ul li,
.posts ul li ul li{
	background: url("../../assets/img/ar_black.svg") no-repeat left .55em;
	background-size: 14px auto;
	padding: .15em 0 .1em 20px;
	margin: 0 0 .3em;
}
ul.ar li:last-child,
.posts ul li:last-child{
	margin-bottom: 0;
}

/*number circle*/
ol.number,
.posts ol{
	margin: 15px 0;
	padding: 0;
	counter-reset:number;
	list-style:none;
}

ol.number > li,
.posts ol > li{
	margin: 0 0 1em 2.5em;
	background: none;
	list-style-type: none;
}
ol.number > li:last-child,
.posts ol > li:last-child{
	margin: 0 0 0 2.5em;
}
ol.number > li:before,
.posts ol > li:before{
	counter-increment: number;
	content: counter(number);
	margin: -.3em 7px 0 -2.5em;
	width: 2em;
	height: 2em;
	background: #8CBB42;
	color: #FFF;
	border-radius: 50%;
	text-align: center;
	line-height: 2em;
	float: left;
}
ol.number > li p,
.posts ol > li p{
	margin: 0;
	padding: 0;
	zoom: 1;
	overflow: auto;
	text-indent: 0;
}


/*parts
************************************************************************************/
.posts img{
	max-width: 100%;
	height: auto;
}
.posts p{
	padding-bottom: 1em;
}
figure{
	margin: 0px auto;
	max-width: 100%;
	min-width: 50%;
	display: block;
	padding: 2px;
	box-sizing: border-box;
	text-align: center;
}
.figure_wrap figure{
	max-width: none;
	min-width: auto;
	width: 48%;
	display: flex;
	flex-wrap: wrap;
	margin: 0 1%;
}
figure img{
	max-width: 100%;
	height: auto;
}
figure figcaption{
	text-align: center;
	padding-top: .8em;
	font-size: 0.875em;
}

.posts blockquote{
	max-width: 90%;
	position: relative;
	padding: 3em 2.5em 2em 3.5em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	margin: 1em auto 2em;
	color: #000000;
	background-color: #eef5f7;
}
.posts blockquote::before {
	display: inline-block;
	position: absolute;
	top: 1em;
	left: 1.5em;
	width: 1.5em;
	height: 1.5em;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23000000%22%20d%3D%22M21.8%2012H18V9c0-1.7%201.3-3%203-3h.4c.6%200%201.1-.5%201.1-1.1V2.6c0-.6-.5-1.1-1.1-1.1H21c-4.1%200-7.5%203.4-7.5%207.5v11.2c0%201.2%201%202.2%202.2%202.2h6c1.2%200%202.2-1%202.2-2.2v-6C24%2013%2023%2012%2021.8%2012zM8.2%2012H4.5V9c0-1.7%201.3-3%203-3h.4C8.5%206%209%205.5%209%204.9V2.6c0-.6-.5-1.1-1.1-1.1h-.4C3.4%201.5%200%204.9%200%209v11.2c0%201.2%201%202.2%202.2%202.2h6c1.2%200%202.2-1%202.2-2.2v-6c.1-1.2-.9-2.2-2.2-2.2z%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	content: '';
	opacity: .4;
}
.posts blockquote p {
	margin-top: 0;
}
.posts blockquote cite {
	display: block;
	opacity: .9;
	font-size: .8em;
	text-align: right;
}

/*caption*/
.posts .wp-caption{
	margin-bottom: 2em;
	background: #fff;
	border: 1px solid #ddd;
	padding: 10px;
	max-width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.posts .wp-caption-text{
	text-align: center;
	margin: 0 auto;
	padding: 10px 0 0;
	font-size: 0.933em;
}
.posts .wp-caption img[class*="wp-image-"]{
	display: block;
	margin: 0 auto;
	max-width: 100%;
	height: auto;
}
.alignleft {
	float: left;
	margin: 0 10px 10px 0;
}

.alignright {
	float: right;
	margin: 0 0 10px 10px;
}

.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
	clear: both;
}

@media screen and (max-width: 599px) {
	.posts blockquote{
		padding: 3.5em 1.5em 2em 1.5em;
	}
}

/*pagelist*/
ul.page_navi{
	text-align: center;
}
ul.page_navi li{
	margin: 10px 0 15px 0;
	background: none;
	padding: 0;
	list-style-type: none;
	display: inline-block;
	font-size: 18px;
	font-weight: 600;
}

ul.page_navi li span{
	background: #666565;
	border: 2px solid #666565;
	width: 2.5em;
	height: 2.5em;
	border-radius: 50%;
	color: #fff;
	text-align: center;
	line-height: 2.5;
	margin: 0 5px;
	display: block;
		-webkit-transition: all 0.9s ease-in-out;
		-moz-transition: all 0.9s ease-in-out;
		-o-transition: all 0.9s ease-in-out;
		transition: all 0.9s ease-in-out;
}
ul.page_navi li a{
	background: #c9c9ca;
	border: 2px solid #c9c9ca;
	width: 2.5em;
	height: 2.5em;
	border-radius: 50%;
	color: #fff;
	text-align: center;
	line-height: 2.5;
	margin: 0 5px;
	display: block;
	text-decoration: none;
		-webkit-transition: all 0.9s ease-in-out;
		-moz-transition: all 0.9s ease-in-out;
		-o-transition: all 0.9s ease-in-out;
		transition: all 0.9s ease-in-out;
}

ul.page_navi li:first-child a{
	border: 2px solid #666565;
	background: #FFF url(../img/common/pagenav_prev.svg) no-repeat center center;
	-moz-background-size: 20px auto;
	background-size: 20px auto;
	display: block;
	text-indent: -9999px;
}
ul.page_navi li:last-child a{
	border: 2px solid #666565;
	background: #FFF url(../img/common/pagenav_next.svg) no-repeat center center;
	-moz-background-size: 20px auto;
	background-size: 20px auto;
	display: block;
	text-indent: -9999px;
}

ul.page_navi li:hover span,
ul.page_navi li:hover a{
	background: #666565;
}
ul.page_navi li:first-child:hover a{
	border: 2px solid #666565;
	background: #FFF url(../img/common/pagenav_prev.svg) no-repeat center center;
	-moz-background-size: 20px auto;
	background-size: 20px auto;
}
ul.page_navi li:last-child:hover a{
	border: 2px solid #666565;
	background: #FFF url(../img/common/pagenav_next.svg) no-repeat center center;
	-moz-background-size: 20px auto;
	background-size: 20px auto;
}


/*buttons
************************************************************************************/


.wp-block-uagb-buttons .uagb-buttons-repeater.wp-block-button__link,
.wp-block-uagb-buttonsc .uagb-buttons-repeater.wp-block-button__link:hover,
.wp-block-uagb-buttons .uagb-buttons-repeater.wp-block-button__link:focus,
.wp-block-uagb-buttons .wp-block-button.is-style-outline .uagb-button__wrapper .wp-block-button__link.uagb-buttons-repeater,
.wp-block-uagb-buttons .wp-block-button.is-style-outline .uagb-button__wrapper .wp-block-button__link.uagb-buttons-repeater:hover{
    border-color: transparent !important;
}

.btn_box{
	text-align: center;
	display: block;
	padding: 20px 0;
}
.wp-block-uagb-buttons.uagb-buttons__outer-wrap .uagb-buttons__wrap{
	padding: 20px 0;
}
.btn_box p{
	display: inline-block;
}
.text p.btn_more,
.text p.btn_prev,
.text p.btn_normal{
	padding-bottom: 0 !important;
}

.btnNormal a {
	background: #fff;
	position: relative;
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 0 auto;
	min-width: 300px;
	max-width: 400px;
	padding: 1em 2em;
	color: #313131;
	transition: 0.3s ease-in-out;
	font-weight: 500;
	text-decoration: none;
}
.btnNormal a:hover {
	background: #eaddc3;
}
.btnNormal a:before, .btnNormal a:after {
	content: "";
	position: absolute;
	display: block;
	transition: all 0.3s;
	right: 1.5em;
	top: 50%;
}
.btnNormal a:before {
	width: 1.4rem;
	height: 2px;
	background: #614f38;
	transform: translateY(-50%);
}
.btnNormal a:after {
	opacity: 0;
	width: 0;
	height: 0;
	border-top: solid 2px currentColor;
	border-right: solid 2px currentColor;
	transform: translateY(-50%) rotate(45deg);
}
.btnNormal a:hover:before {
	width: 1.5rem;
}
.btnNormal a:hover:after {
	opacity: 1;
	width: 8px;
	height: 8px;
}

.btn_prev a{
	background: #fff;
	position: relative;
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 0 auto;
	min-width: 300px;
	max-width: 400px;
	padding: 1em 2em;
	color: #313131;
	transition: 0.3s ease-in-out;
	font-weight: 500;
	text-decoration: none;
}
.btn_prev a:hover {
	background: #7b582f;
	color: #FFF;
}
.btn_prev a:before, .btn_prev a:after {
	content: "";
	position: absolute;
	display: block;
	transition: all 0.3s;
	left: 1.5em;
	top: 50%;
}
.btn_prev a:before {
	width: 1.4rem;
	height: 2px;
	background: #614f38;
	transform: translateY(-50%);
}
.btn_prev a:after {
	opacity: 0;
	width: 0;
	height: 0;
	border-top: solid 2px #313131;
	border-left: solid 2px #313131;
	transform: translateY(-50%) rotate(-45deg);
}
.btn_prev a:hover:before {
	width: 1.5rem;
	background: #FFF;
}
.btn_prev a:hover:after {
	opacity: 1;
	width: 8px;
	height: 8px;
	border-color: #FFF;
}

@media screen and (min-width: 1025px) {
	.btn_more a,
	.btn_prev a,
	.btn_normal a{
		-webkit-transition: all 0.5s ease-in-out;
		-moz-transition: all 0.5s ease-in-out;
		-o-transition: all 0.5s ease-in-out;
		transition: all 0.5s ease-in-out;
	}
}




/*layout parts
************************************************************************************/
.layout_grid{
	display: grid;
	grid-template-columns: 2fr 3fr;
	grid-template-rows: auto;
	column-gap: 20px;
	row-gap: 20px;
	align-items: stretch;
}
.layout_box,
.flex{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-justify-content: left;
	justify-content: left;
}
.layout_box.center,
.flex.center{
	-webkit-justify-content: center;
	justify-content: center;
}
.layout_box .caption{
	text-align: center;
	margin: 0 0 5px 0;
	padding: 0;
}
.layout_box .image{
	text-align: center;
	margin: 0 0 5px 0;
	padding: 0;
}
.layout_box .image img{
	max-width: 100%;
	height: auto;
}
_:-ms-lang(x)::-ms-backdrop, .layout_box .image img{
	width: 100%;
	height: auto;
}
.box-pd-all{
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-pd-space{
	padding: 0 7px 7px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-pd{
	padding: 0 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-mr{
	margin: 20px 0;
}
.box-sh{
	box-shadow:0px 0px 10px #ccc;
	-moz-box-shadow:0px 0px 10px #ccc;
	-webkit-box-shadow:0px 0px 10px #ccc;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-line{
	border-right: 1px solid #CCC;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-boxline{
	border: 1px solid #666;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.box-item100{
	width: 99%;
	margin: 0.5%;
}
.box-item85{
	width: 84%;
	margin: 0.5%;
}
.box-item80{
	width: 79%;
	margin: 0.5%;
}
.box-item75{
	width: 74%;
	margin: 0.5%;
}
.box-item70{
	width: 69%;
	margin: 0.5%;
}
.box-item66{
	width: 65%;
	margin: 0.5%;
}
.box-item60{
	width: 59%;
	margin: 0.5%;
}
.box-item50{
	width: 49%;
	margin: 0.5%;
}
.box-item40{
	width: 39%;
	margin: 0.5%;
}
.box-item33{
	width: 32.3%;
	margin: 0.5%;
}
.box-item30{
	width: 29%;
	margin: 0.5%;
}
.box-item25{
	width: 24%;
	margin: 0.5%;
}
.box-item20{
	width: 19%;
	margin: 0.5%;
}
.box-item15{
	width: 14%;
	margin: 0.5%;
}
@media screen and (max-width: 768px){
	.btns.layout_box{
		display: block;
	}
	.btns.layout_box .box-item100,
	.btns.layout_box .box-item85,
	.btns.layout_box .box-item80,
	.btns.layout_box .box-item75,
	.btns.layout_box .box-item70,
	.btns.layout_box .box-item66,
	.btns.layout_box .box-item60,
	.btns.layout_box .box-item50,
	.btns.layout_box .box-item40,
	.btns.layout_box .box-item33,
	.btns.layout_box .box-item30,
	.btns.layout_box .box-item25,
	.btns.layout_box .box-item20,
	.btns.layout_box .box-item15{
		width: 99%;
		margin: 0.5%;
	}
	.layout_box .image{
		width: 100%;
		display: block;
	}
}


/*animation
----------------------------------------------------------------------*/

a.move-ar,
span.move-ar{
	display: inline-block;
	position: relative;
	padding-right: 30px;
	vertical-align: middle;
}
a.move-ar:after,
span.move-ar:after{
	content: "arrow_right";
	display: block;
	position: absolute;
	right: 0px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 10;
	width: 30px;
	height: 30px;
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 30px;	/* Preferred icon size */
	line-height: 30px;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	color: #0fa0c4;

	/* Support for all WebKit browsers. */
	-webkit-font-smoothing: antialiased;
	/* Support for Safari and Chrome. */
	text-rendering: optimizeLegibility;

	/* Support for Firefox. */
	-moz-osx-font-smoothing: grayscale;

	/* Support for IE. */
	font-feature-settings: 'liga';
}
@media screen and (min-width: 980px) {
	a.move-ar:after,
	span.move-ar:after{
		-webkit-transition: all .3s ease-in-out;
		-moz-transition: all .3s ease-in-out;
		-o-transition: all .3s ease-in-out;
		transition: all .3s ease-in-out;
	}
	a.move-ar:hover,
	span.move-ar:hover{
		color: #979797;
	}
	a.move-ar:hover:after,
	span.move-ar:hover:after{
		right: -7px;
	}
}


.anim{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
	transition: .8s;
}
.move{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}

.delay1{
	transition-delay: .1s;
}
.delay2{
	transition-delay: .2s;
}
.delay3{
	transition-delay: .3s;
}
.delay4{
	transition-delay: .4s;
}
.delay5{
	transition-delay: .5s;
}
.delay6{
	transition-delay: .6s;
}
.delay7{
	transition-delay: .7s;
}
.delay8{
	transition-delay: .8s;
}
.delay9{
	transition-delay: .9s;
}
@media screen and (max-width: 979px) {
/*tablet*/
}
@media screen and (max-width: 768px){
/*smart phone*/
}
@media screen and (max-width: 620px) {
/*sp*/
}
@media screen and (max-width: 480px){
}

