@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';
}
.g-icons{
	position: relative;
	padding-left: 25px !important;
}
.g-icons:before{
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 10;
	width: 20px;
	height: 20px;
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 20px;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	color: #828282;
	vertical-align: middle;

	/* 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';
}

img.icon{
	vertical-align: middle;
	margin: 0 1.5px;
}

a[href$=".pdf"]:before{
	background: url("../img/common/icon_pdf.svg") no-repeat center center;
	background-size: 100% 100%;
	content: "";
	display: inline-block;
	vertical-align: middle;
	margin-right: .5em;
	width: 20px;
	height: 20px;
}
.contentstop_btn a[href$=".pdf"]:before,
pre a[href$=".pdf"]:before{
	display: none;
}

a[href$=".docx"]:before,
a[href$=".doc"]:before{
	background: url("../img/common/icon_word.svg") no-repeat center center;
	background-size: 100% 100%;
	content: "";
	display: inline-block;
	vertical-align: middle;
	margin-right: .5em;
	width: 20px;
	height: 20px;
}

a[href$=".xlsx"]:before,
a[href$=".xls"]:before{
	background: url("../img/common/icon_excel.svg") no-repeat center center;
	background-size: 100% 100%;
	content: "";
	display: inline-block;
	vertical-align: middle;
	margin-right: .5em;
	width: 20px;
	height: 20px;
}

/*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;
}
.red{color:#d80808;}
.fontsize_125{ font-size: 1.25em; }
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;}
}	

/*clearfix
************************************************************************************/
.clearfix:after,
.col-box:after{
		content: "";
		display: block;
		clear: both;
		height: 1px;
		overflow: hidden;
}
* html .clearfix,
* html .col-box{
		height: 1em;
}
.clearfix,
.col-box{
		display: block;
}
*:first-child+html .clearfix,
*:first-child+html .col-box{
	zoom:1;
}

/*list
************************************************************************************/
ul.ar,
.posts ul{
	padding: 1.5em 0;
}
ul.ar li,
.posts ul li{
	background: url("../img/ar_pink_li.svg") no-repeat left .6em;
	background-size: 7px auto;
	padding: .15em 0 .1em 15px;
	margin: 0 0 .3em;
}
ul.ar li ul li,
.posts ul li ul li{
	background: url("../../assets/img/ar_black.svg") no-repeat left .8em;
	background-size: 10px auto;
	padding: .15em 0 .1em 18px;
	margin: 0 0 .3em;
}
ul.ar li:last-child,
.posts ul li:last-child{
	margin-bottom: 0;
}
.posts ul.list li{
	background: none;
}

/*number circle*/
ol.number,
.posts ol{
	padding: 1.5em 0;
	counter-reset:number;
	list-style:none;
}
ol.number ol,
.posts ol ol{
	padding: 1.5em 0 0;
}

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: -.15em 7px 0 -2.5em;
	width: 2em;
	height: 2em;
	background: var(--ol-bg);
	color: var(--ol-txt);
	border-radius: 5px;
	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;
}

/*table
************************************************************************************/
.posts table{}
table.normal,
.posts table{
	margin: 1.5em auto;
	width: 100%;
	border: 0;
	border-top: 1px solid var(--table-border);
}
table.normal thead th,
.posts table thead th{
	padding: 15px;
	border-bottom: 1px solid var(--table-thead-border);
	text-align: center;
	font-weight:bold;
	color: var(--table-thead-txt);
	background: var(--table-theadBg);
}
table.normal tbody th,
.posts table tbody th{
	padding: 15px;
	text-align: left;
	border-right: 1px solid var(--table-border);
	border-bottom: 1px solid var(--table-border);
	background: var(--table-tbody-thBg);
}
table.normal tbody td,
.posts table tbody td{
	padding: 15px;
	border-right: 1px solid var(--table-border);
	border-bottom: 1px solid var(--table-border);
	text-align: left;
	color: var(--table-tbody-th-txt);
}
table.normal tbody td:last-child,
.posts table tbody td:last-child{
	border-right: 0;
}
table.normal.center td{
	text-align: center;
}

.table_caption{
	text-align: right;
}

/*スクロール*/

.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 #ededed;
		margin: 10px 0;
	}
	.table_scroll .sp_comment:after{
		content: "※表が見切れている場合は、横にスクロールしてご覧いただけます";
		color: #666;
		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 table.normal th,
	.table_scroll .scroll_body table.normal 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;
		border: 0 !important;
	}
	table.smartphone th,
	.posts .smartphone table th{
		list-style-type: none;
		display: block;
	}

	table.smartphone td,
	.posts .smartphone table td{
		margin-left: 0;
		list-style-type: none;
		border-bottom: 1px solid #ccc !important;
	}
}



/*parts
************************************************************************************/
.posts img{
	max-width: 100%;
	height: auto;
}
.posts img.pdf-thumbnail{
	width: 400px;
	max-width: 100%;
	height: auto;
	display: block;
	margin: 1em auto;
	border: 1px solid #ccc;
}

.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;
	}
}


/*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 !important;
	padding: 80px 0 20px;
}
.wp-block-uagb-buttons.uagb-buttons__outer-wrap .uagb-buttons__wrap{
	padding: 80px 0 20px;;
}
.btn_box p{
	display: inline-block;
	width: auto !important;
}

.btn_next a,
.btn_prev a{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	line-height: 40px;
	border-radius: 2.5em;
	min-width: 230px;
	border-radius: 5px;
	color: #ffffff;
	font-size: 1em;
	transition: all .3s;
}

.btn_next a{
	padding-right: 1.2em;
	background: url("../img/ar_white_next.svg") no-repeat right 1em center var(--btn-bg);
}

.btn_next a:hover{
	animation: anima-button-30 1s;
	background: url("../img/ar_white_next.svg") no-repeat right .7em center #D4D4D4;
}
.btn_prev a{
	padding-left: 1.2em;
	background: url("../img/ar_white_prev.svg") no-repeat left 1em center var(--btn-bg);
}

.btn_prev a:hover{
	animation: anima-button-30 1s;
	background: url("../img/ar_white_prev.svg") no-repeat left .7em center 0 #D4D4D4;
}

@keyframes anima-button-30 {
	0% {
		box-shadow: 0 0 0 0 rgb(246 208 84 / 50%);
	}
	100% {
		box-shadow: 0 0 0 1.2em rgb(0 0 0 / 0%);
	}
}

.btn_pink,
.btn_gray,
.btn_prev,
.btn_next{
	display: inline-block;
}

.btn_gray a,
.btn_pink a,
.wp-block-button__link{
	line-height: 40px;
	border-radius: 2.5em;
	min-width: 230px;
	color: #FFF !important;
	background: #7c7c7c;
	
	display: block;
	position: relative;
	z-index: 2;
	overflow: hidden;
	text-decoration: none;
	text-align: center;
}
.wp-block-button__link{
	background: var(--btn-bg);
}
.btn_pink a{
	background: var(--color-point);
}
.wp-block-button__link,
.wp-block-button__link::before,
.wp-block-button__link::after,
.btn_gray a,
.btn_gray a::before,
.btn_gray a::after,
.btn_pink a,
.btn_pink a::before,
.btn_pink a::after{
	box-sizing: border-box;
	transition: all .3s;
}
.wp-block-button__link::before,
.wp-block-button__link::after,
.btn_gray a::before,
.btn_gray a::after,
.btn_pink a::before,
.btn_pink a::after{
	position: absolute;
	left: 0;
	z-index: -1;
	display: block;
	content: '';
}
.wp-block-button__link::after,
.btn_gray a::after,
.btn_pink a::after{
	top: -100%;
	width: 150%;
	height: 100%;
}
.wp-block-button__link:hover::after,
.btn_gray a:hover::after{
	top: 0;
	background-color: #f1f1f1;
}
.btn_pink a:hover::after{
	top: 0;
	background-color: #F0A6AF;
}
.wp-block-button__link:hover,
.btn_gray a:hover{
	color: #000;
	text-decoration: none;
}
.btn_pink a:hover{
	color: #FFF;
	text-decoration: none;
}


/*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;
	}
}


/*JSまわり
************************************************************************************/
/*slideup down
----------------------------------------------------------------------*/
/*.viewopen-ttl:before{
	content: "▼";
}
.viewopen-ttl:after{
	content: "開く";
}

.viewopen-ttl.active:before{
	content: "▲";
}
.viewopen-ttl.active:after{
	content: "閉じる";
}*/

/*accordion
----------------------------------------------------------------------*/
.viewopen-ttl:after{
	content: "";
	width: 30px;
	height: 30px;
	display: inline-block;
	vertical-align: middle;
	background: url("../../img/common/ar_gry.svg") no-repeat right center;
}

.viewopen-ttl.active:after{
	background: url("../../img/common/ar_gry_dwn.svg") no-repeat right center;
}

/*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;
	}
}