@charset "utf-8";

/* ---------------------------------------------
CSS Info

 File name:  common.css
 Style Info: 共通要素

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

/*---------- 全ページ共通見出し等 ----------*/
.cm-sec {padding: 48px 0;}
.cm-sec--ttl {
	position: relative;
	margin-bottom: 24px;
	padding-bottom: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 1.3;	
}
.cm-sec--ttl:after {
	position: absolute;
	display: block;
	content: "";
	width: 40px;
	height: 8px;
	left: 50%;
	margin-left: -20px;
	bottom: 0;
	background-image: url("../img/top/idx-ttl-dot.png");
	background-repeat: no-repeat;
	background-size: 40px auto;
}
.cm-sec--ttl.white {color: #FFF;}
.cm-sec--ttl.white:after {background-image: url("../img/top/idx-ttl-dot_wh.png");}
.cm-sec--ttl.left {text-align: left;}
.cm-sec--ttl.left:after {
	left: 0;
	margin-left: 0;
}
.cm-sec--ttl .txt {
	margin-bottom: .5em;
	font-size: 15px;
	font-size: 1.5rem;
}
.cm-sec--ttl .ttl {
	display: block;
	font-size: 24px;
	font-size: 2.4rem;
}

@media screen and (max-width:767px) {
	.cm-sec--ttl.large .ttl {
		font-size: 32px;
		font-size: 3.2rem;
	}
}
@media screen and (min-width:768px) {
	.cm-sec {padding: 96px 0;}
	.cm-sec--ttl {
		margin-bottom: 40px;
		padding-bottom: 32px;
	}
	.cm-sec--ttl .txt {
		font-size: 20px;
		font-size: 2rem;
	}
	.cm-sec--ttl .ttl {
		display: block;
		font-size: 40px;
		font-size: 4rem;
	}
	.cm-sec--ttl .ttl br {display: none;}
}


/*----- ボタン -----*/
.cm-btn a {
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: 400px;
	height: 56px;
	line-height: 53px;
	padding: 0 1em;
	background: #FFF;
	border: 2px solid #0a73bb;
	border-radius: 28px;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
	color: #0a73bb;
	text-align: center;
}
.cm-btn.mini a {max-width: 160px;}
.cm-btn a:after {
	margin-left: .25em;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";
}
.cm-btn a:hover {
	background: #00B4D1;
	border: 2px solid #00B4D1;
	color: #FFF;
}
.cm-btn.blue a {
	background: #0a73bb;
	border: 2px solid #0a73bb;
	color: #FFF;
}
.cm-btn.blue a:hover {
	background: #00C7AC;
	border: 2px solid #00C7AC;
}

@media screen and (max-width:320px) {
	.cm-btn a {
		font-size: 13px;
		font-size: 1.3rem;
	}
}
@media screen and (min-width:960px) {
	.cm-btn a:after {margin-left: .5em;}
}


/*----- TABLE -----*/
.cm-tbl_01 table,
.cm-tbl_02 table {
	width: 100%;
	border-collapse: collapse;
}
.cm-tbl_01 table {
	border-top: 2px solid #e0e0e0;
	border-bottom: 2px solid #e0e0e0;
}
.cm-tbl_02 table {border: 1px solid #e0e0e0;}
.cm-tbl_01 table td,
.cm-tbl_02 table td {
	padding: 1em 1.25em;
	border-bottom: 1px dotted #dee2e3;
	vertical-align: middle;
}
.cm-tbl_01 td:first-child,
.cm-tbl_02 td:first-child {
	width: 30%;
	background: #f3f3f3;
}
.cm-tbl_01 td,
.cm-tbl_02 td {background: #FFF;}
.cm-tbl_01 td a,
.cm-tbl_02 td a {font-weight: bold;}
.cm-tbl_01 td a:before {
	margin-right: .25em;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0da"
}

@media screen and (max-width:959px) {
	.cm-tbl_01 table,
	.cm-tbl_02 table {
		font-size: 13px;
		font-size: 1.3rem;
	}
	.cm-tbl_01 table td,
	.cm-tbl_02 table td {padding: 1em;}
}


/*----- リスト -----*/
.list-dot li {
	position: relative;
	margin: 0 0 0 1em;
}
.list-dot li:not(:last-child) {margin-bottom: .5em;}
.list-dot li:before {
	display: inline-block;
	content: "";
	position: absolute;
	top: .65em;
	left: -1em;
	width: .5em;
	height: .5em;
	border-radius: 50%;
	background: #999;
}
.list-dot.blue li:before,
.list-dot li.blue:before {background: #009bdd;}
.list-dot.pink li:before,
.list-dot li.pink:before {background: #f25c5c;}
.list-dot.orange li:before,
.list-dot li.orange:before  {background: #f29a2e;}

/*----- 数字リスト -----*/
ol.list-num {
	counter-reset:number;
	list-style:none;
	margin:0;
	padding:0;
}
ol.list-num li:before{
	counter-increment: number;
	content: counter(number); 
	background: #66c0e8;
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.5em;
	text-align: center;
	border-radius: 50%;
	color: #fff;
	margin-right: .3em;
	font-size: 90%;
}

/*----- 背景関連 -----*/
.bg-bl {background-color: #d8eefd;}
.bg-gray {background-color: #f3f3f3;}

/*----- 文字関連 -----*/
.txt-center {text-align: center;}
.txt-right {text-align: right;}
.txt-bold {font-weight: bold;}
.txt-nml {font-weight: normal;}
.txt-big {
	font-size: 18px !important;
	font-size: 1.8rem !important;
}
.txt-small {
	font-size: 12px !important;
	font-size: 1.2rem !important;
}

.txt-red {color: #f03434;}
.txt-bl {color: #0a73bb;}
.txt-grn {color: #01c8ae;}
.txt-pink {color: #f25c5c;}
.txt-org {color: #f29a2e;}
.txt-yel {color: #fff45c;}
.txt-gry {color: #757575;}

.marker-yel {
	background: #fff45c;
	background: -webkit-linear-gradient(transparent 70%, #fff45c 0%);
	background: linear-gradient(transparent 70%, #fff45c 0%);
	font-weight: bold;
}
@media screen and (min-width:960px) {
	.txt-center_pc {text-align: center;}
	.txt-big {
		font-size: 24px !important;
		font-size: 2.4rem !important;
	}
}


/*----- MARGIN -----*/
.mt8{margin-top:8px;}
.mb8{margin-bottom:8px;}
.mt16{margin-top:16px;}
.mb16{margin-bottom:16px;}
.mt24{margin-top:24px;}
.mb24{margin-bottom:24px;}
.mt32{margin-top:32px;}
.mb32{margin-bottom:32px;}
.mt40{margin-top:40px;}
.mb40{margin-bottom:40px;}
.mt48{margin-top:48px;}
.mb48{margin-bottom:48px;}
.mt56{margin-top:56px;}
.mb56{margin-bottom:56px;}
.mt64{margin-top:64px;}
.mb64{margin-bottom:64px;}



.grecaptcha-badge { visibility: hidden; }


	.acs-each-staff__wrap {
		display: flex;
		flex-wrap: wrap;
		max-width: 80rem;
		margin: auto;
		background: #d8eefd;
		padding: 3rem;
		align-items: flex-start;
		margin-bottom: 2rem;
	}

	.acs-each-staff__img {
		width: 20%;
		margin-right: 3%;
	}

	.acs-each-staff__txt {
		width: 77%;
		display: flex;
		flex-wrap: wrap;
		gap: 0 4rem;
		align-items: flex-start;
	}

	.acs-each-staff__txt__tit {
		font-size: 2.4rem;
		font-weight: bold;
		margin-bottom: 1.5rem;
		color: #0a73bb;
		padding: 0.5rem 0;
		width: 100%;
		border-bottom: 1px solid;
	}
.acs-each-staff__img img {
    border-radius: 50%;
}

.acs-each-staff__img__name {
    text-align: center;
    font-weight: bold;
    color: #0a73bb;
}
@media screen and (max-width:767px) {

	.acs-each-staff__img {
		width: 100%;
		padding: 0 26%;
	}

	.acs-each-staff__txt {
		width: 100%;
		justify-content: center;
		display: block;
	}
.acs-each-staff__txt__box:last-child {
    margin-top: 1rem;
}
	.acs-each-staff__txt__tit {
		font-size: 1.6rem;
		text-align: center;
	}
	.acs-each-staff__img__name {
    background: #fff;
		margin-bottom: 1rem;
}
}