@charset "UTF-8";

/*各ページ特有指定（あまり汎用的でないもの）を記載*/
/*切替[基本：max568 min569／デザインによっては：768／それ以外は個別・特例的に設定]*/

/*文字背景色*/
p.tbg01{
	display: inline-block;
	background-color: #ffdade;
	padding: 2px 1px;
}
.marker {
	/*background-color: #ff9;*/
	background:linear-gradient(transparent 60%, #bfeafb 60%);	/*文字半分にかかるくらいlinear-gradient(transparent　色の割合, 蛍光ペンの色 色の割合)*/
}
.marker2 {
	background:linear-gradient(transparent 60%, #fbfabf 60%);	/*文字半分にかかるくらいlinear-gradient(transparent　色の割合, 蛍光ペンの色 色の割合)*/
}
/*文字間*/
.tx-les01{
	letter-spacing: 0.25em;
}
.tx-les02{
	letter-spacing: -1px;
}

.mt-5{
	margin-top: -5px;
}
.mb-30{
	margin-bottom: -30px;
}
/*通常の定義リスト*/
dt, dd {
	margin: 0;
	box-sizing: border-box;
}
dl {
	display: flex;
	flex-wrap: wrap;
}
dt{
	padding: 2px;
	/*border-left: 10px solid #a9c0d8;
	border-bottom: 1px dashed #999;
	background-color: rgba(255,255,255,0.9);*/
	width: 5em;
}
dd{
	padding: 2px;
	/*border-bottom: 1px dashed #999;
	background-color: rgba(255,255,255,0.9);*/
	width: calc(100% - 5em);
}
@media (max-width: 568px) {
	dt{
		display: block;
		font-weight: bold;
		border-left: 0;
		/*background-color: rgb(229, 241, 251);*/
		width: 100%;
	}
	dd{
		display: block;
		width: 100%;
	}
}
/*定義リスト 2*/
dl.newsColumn {
	display: flex;
	flex-wrap: wrap;
	line-height: 1.4;
}
dl.newsColumn dt{
	padding: 4px 4px 4px 15px;
	/*border-left: 5px solid #3388dd;*/
	border-bottom: 1px dashed #999;
	background-color: rgba(255,255,255,0.9);
	width: 11em;
	position: relative;
display: flex;
align-items: center;
	font-family: "游ゴシック", Arial, 'Noto Sans JP', sans-serif;
}
dl.newsColumn dt::before{
	position: absolute;
	top: 50%;
	left: 0px;
	transform: translateY(-50%);
	width: 0px;
	height: 0px;
	border: 0.4em solid transparent;
	border-left: 0.5em solid var(--main-color);
	content: "";
}
dl.newsColumn dd{
	padding: 4px;
	border-bottom: 1px dashed #999;
	background-color: rgba(255,255,255,0.9);
	width: calc(100% - 11em);
}
@media (max-width: 568px) {
	dl.newsColumn dt{
		display: block;
		font-weight: bold;
		border-left: 0;
		background-color: rgb(229, 241, 251);
		width: 100%;
	}
	dl.newsColumn dd{
		display: block;
		width: 100%;
	}
}
div.c-contents{
	box-sizing: border-box;
	display: block;
	width:80%;
	margin: 0 auto;
	padding: 10px;
	text-align:center;
	background-color: #fff;
}
@media screen and (max-width: 768px) {
	div.c-contents {
		width:100%;
		padding: 5px;
	}
}
/*リスト　●大*/
ul.nor{
	list-style: disc;
	margin-left: 25px;
	line-height: 1.5;
}
ul.nor li::marker{
	font-size: 150%;
	font-weight: bold;
	line-height: 0.8;
	color: #008dc6;
}
/*リスト　全体小さめ*/
ul.nor2{
	list-style: disc;
	margin-left: 20px;
}
ul.nor2 li{
	font-size: clamp(11px, 1.2vw, 13px);
	line-height: 1.1;
}
ul.nor2 li::marker{
	font-size: 120%;
	font-weight: bold;
	line-height: 0.8;
}
/**/
b.emphasis {
	box-sizing: border-box;
	text-align: center;
	font-size: clamp(18px, 2.5vw, 23px);
	line-height: 1.3;
	font-weight: normal;
	color: #fff;
	display: block;
	background: #26a5b3;
	/*border: 5px double #ebbb61;*/
	/*width: calc(100% - 10px);*/
	margin: 15px auto;
	padding: 10px;
}

b.emphasis2 {
	box-sizing: border-box;
	font-size: clamp(16px, 1.9vw, 20px);
	line-height: 1.3;
	font-weight: normal;
	color: #fff;
	display: block;
	background: #26a5b3;
	margin: 15px auto;
	padding: 10px;
}
/*文字ボタン*/
.btwi{
	width: 60%;
	margin: 30px auto;
}
@media screen and (max-width: 768px) {
	.btwi{
		width: 80%;
	}
}
@media screen and (max-width: 568px) {
	.btwi{
		width: 100%;
	}
}
.c-btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	height: 55px;
	color: #fff;
	font-size: 17px;
	line-height: 1.1;
	text-decoration: none;
	transition: 0.3s;
	/*margin: 0 auto;*/
	/*border-radius: 50px;*/
	padding: 0 32px 0 20px;
	margin:0 5px;
}

.c-btn a:hover {
	color: #008dc6;
}
.btn07 a {
	background-color: #008dc6;
	border: 1px solid #dfdfdf;
	font-size: clamp(13px,2vw,16px);
}

/*.btn07 a::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	width: 17px;
	height: 17px;
	background-color: transparent;
	border: 2px solid #fff;
	border-radius: 50%;
}*/	/*〇を入れる場合はイキ*/

.btn07 a::after {
	content: '';
	position: absolute;
	top: calc(50% - 1px);
	right: 20px;
	transform: rotate(45deg) translateY(-50%);
	width: 6px;
	height: 6px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #ccc #ccc transparent transparent;
}

.btn07 a:hover {
	background-color: #f4f4f4;
	/*border: 1px solid #333;*/
}

.btn07 a:hover::before {
	border: 1px solid #f2f2f2;
}

.btn07 a:hover::after {
	border-color: #f2f2f2 #f2f2f2 transparent transparent;
}

/*テーブル　汎用*/
.col1{
	background-color: #ddd;
}
.col2{
	background-color: #d9eef0;
}
/*一般(usually)テーブル*/
table.u-tab {
	/*width: 80%;*/	/*article class="entry" 内に入れるならいらない*/
	margin: 0px auto;
	/*border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;*/
}

table.u-tab tr th{
	font-size: 13.5px;
	text-align:left;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	line-height: 1.3;
	padding: 7px;
	background-color: #d3edf0;
}
table.u-tab tr td{
	font-size: 15px;
	text-align:left;
	/*border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;*/
	border-bottom: 1px solid #008dc6;
	line-height: 1.3;
	padding: 15px;
	/*background: rgba(243, 252, 255, 0.85);*/
}

table.u-tab tr.col2 td.w1{
	width:29%;
}
table.u-tab tr.col2 td.w2{
	width:29%;
}
table.u-tab tr.col2 td.w3{
	width:42%;
}
@media screen and (max-width: 800px) {
	table.u-tab {
		width: 100%;
	}
}
@media screen and (max-width: 568px) {
	table.u-tab tr th{
		font-size: 13px;
		padding: 3px;
		width: 40%;
	}
	table.u-tab tr td{
		font-size: 13px;
		padding: 10px;
	}
	table.u-tab tr td:nth-of-type(1){
		width: 5rem;	/* 1列目のスタイル */
	}
}
/**/
table.com-tab {
	margin: 5px 0;
}
table.com-tab tr th {
	text-align: center;
	line-height: 1.4;
	padding: 5px;
	border: 1px solid #ccc;
	color: #fff;
	background-color: var(--main-color);
}
table.com-tab tr td {
	line-height: 1.4;
	padding: 5px 5px 5px 10px;
}
@media screen and (max-width: 568px) {
	table.com-tab tr th {
		display: block;
	}
	table.com-tab tr td {
		display: block;
	}
}

/*文字縁取り*/
.fuchidori {
	text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
		-1px 1px 0 #FFF, 1px -1px 0 #FFF,
		0px 1px 0 #FFF,  0-1px 0 #FFF,
		-1px 0 0 #FFF, 1px 0 0 #FFF;
}
/*文字装飾*/
.kakomi-p01{
	padding:1px 8px; /* 枠と文字の空間 */
	margin:2.5px 5px; /* 枠の外の空間 */
	background-color:#f7efad; /* 枠の背景色 */
	border:1px solid #aeaeae; /* 枠の線の太さ・種類・色 */
	border-radius:5px; /* 枠の角を丸くする */
	/*box-shadow: 1px 2px 2px #ddd;*/ /*影をいれる*/
	font-family:inherit; /* フォントの種類を継承する */
	font-size:0.65em;	/* フォントの大きさ */
	text-align:center;
}
.kakomi-p02{
	padding:1px 8px; /* 枠と文字の空間 */
	margin:2.5px 5px; /* 枠の外の空間 */
	background-color:#e6bcbc; /* 枠の背景色 */
	border:1px solid #aeaeae;	/* 枠の線の太さ・種類・色 */
	border-radius:5px; /* 枠の角を丸くする */
	/*box-shadow: 1px 2px 2px #ddd;*/	/*影をいれる*/
	font-family:inherit; /* フォントの種類を継承する */
	font-size:0.65em;	/* フォントの大きさ */
	text-align:center;
}

/*FAQ*/
.closed{
	display: block;
	cursor: default;
}
dd.closed{
	box-sizing: border-box;		/*サイズの計算法を変更*/
	margin:0;
}

table.qt{
	margin:5px auto;
}
table.at{
	margin:10px auto 5px auto;
}
table.qt tr>*:first-child{
	width:2em;
	font-size:20px;
	color:#26a5b3;
}
table.at tr>*:first-child{
	width:2em;
	font-size:20px;
	color:#bf9c5d;
	vertical-align:baseline;
}

/*会社概要*/
.bg_b{
	background: rgba(243, 252, 255, 0.85);
	padding:20px;
}

.vertical {
	writing-mode: vertical-rl;
}

/* ご要望により */
.aaa{
	width: max-content;
}
.aaa p{
	text-align: center;
}

h2.lowerPage-heading-decoration{
	margin: 1em auto 0;
	width: max-content;
}

@media screen and (max-width: 568px) {
	.aaa{
		margin-right: auto;
		margin-left: auto;
	}
	.bbb{
		display: block;
		text-align: center;
	}
}

/*フロー*/
.flow_design02 {
	display: flex;
	justify-content: center;
	align-items: center;
}
.flow_design02 ul {
	padding: 0;
}
.flow_design02 li {
	list-style-type: none;
}
.flow_design02 dd.flow-cc {
	margin-left: 0;
	width: 100%;
}
.flow02 > li {
	padding: 40px 10px;;
}
.flow02 > li:not(:last-child) {
	border-bottom: 3px solid var(--main-color);
	position: relative;
}
.flow02 > li:not(:last-child)::before,
.flow02 > li:not(:last-child)::after {
	content: "";
	border: solid transparent;
	position: absolute;
	top: 100%;
	left: 15%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.flow02 > li:not(:last-child)::before {
	border-width: 22px;
	border-top-color: var(--main-color);
}
.flow02 > li:not(:last-child)::after {
	border-width: 18px;
	border-top-color: #fff;
}
.flow02 > li dl.flow-aa {
	margin: 0;
}
.flow02 > li dl.flow-aa dt.flow-bb {
	font-size: 1.3em;
	font-weight: 600;
	border-bottom: 2px dotted #878787;
	margin-bottom: 0.5em;
	padding-bottom: 0.5em;
	display: flex;
	width: 100%;
}
.flow02 > li dl.flow-aa dt.flow-bb .icon02 {
	font-size: 0.6em;
	color: #fff;
	background: var(--main-color);
	padding: 5px 10px;
	display: inline-block;
	margin-right: 0.5em;
}
@media screen and (max-width: 568px) {
	.flow02 > li dl.flow-aa dt.flow-bb {
		background: #fff;
	}
}
/**/
ol.marusu{
	list-style: none;
	padding: 0;
	margin: 0;
}
ol.marusu li{
	/*font-size: clamp(12px, 1.3vw, 14px);*/
	font-size: 13px;
	margin-bottom: 5px;
	display: flex;
}
@media (max-width: 768px) {
}
/**/
.maru {
	height:20px;
	width:20px;
	border-radius:50%;
	line-height:20px;
	text-align:center;
	background: #fff;
	border:1px solid #454545;
	font-size: 85%;
	display: block;
	vertical-align: middle;
	margin-right: 5px;
	margin-bottom: 2px;
}
.maru-bun{
	display: block;
	width: calc(100% - 25px);
}
.maru2 {
	height:20px;
	width:20px;
	border-radius:50%;
	line-height:20px;
	text-align:center;
	background: #fff;
	border:1px solid #d30000;
	font-size: 85%;
	display: block;
	vertical-align: middle;
	margin-right: 5px;
	margin-bottom: 2px;
}
/**/
ol.setsumei{
	margin-left: -15px;
}
ol.setsumei li{
	font-size: clamp(12px, 1.2vw, 13px);
	line-height: 1.5;
}
/**/
ul.setsulis{
	list-style: disc;
	margin-left: 20px;
}
ul.setsulis li{
	font-size: clamp(12px, 1.2vw, 13px);
	line-height: 1.5;
}
/**/
.panf{
	font-size: clamp(12px, 1.2vw, 13px);
	line-height: 1.4;
}
/**/
.lowerPage-heading-decoration2{
	font-size: clamp(24px, 2.5vw, 28px);
	min-height: 0vw;
	text-align:center;
	font-weight: 400;
	line-height: 1.3;
	/*color: #26a5b3;*/
	border-bottom: solid 2px var(--accent-color2);
	color: #454545;
	margin-top: 2em;
	margin: 1em auto 0;
	width: max-content;
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',arial,helvetica,clean,sans-serif;
}
.lowerPage-heading-decoration2 + p {
	margin-top: 0.5em;
	margin-bottom: 2em;
	color: #777;
	text-align:center;
	/*font-family: "Montserrat", sans-serif;*/
	font-size: 15px;
}
.lowerPage-heading-decoration2 + p.longp {
	margin-top: 0.5em;
	margin-bottom: 2em;
	color: #777;
	text-align:center;
	/*font-family: "Montserrat", sans-serif;*/
	font-size: 15px;
}
@media (max-width: 768px) {
	.lowerPage-heading-decoration2 + p.longp {
		text-align: left;
	}
}





