.main-area{
	font-size:13px;
	line-height: 1.7em;
}
h1{
	margin:0 0 40px 0;
	padding:0;
}
h1 img{
	width:100%;
}
.main-area h2 {
    display: flex;
    align-items: flex-start;
    font-size: 22px;
    font-weight: bold;
    color: #10428a;
    margin: 30px 0 20px 0;
    line-height: 1.5em;
    position: relative;
    padding-left: 22px; /* 丸の幅+余白分のスペースを確保 */
}

.main-area h2::before {
    content: "";
    width: 14px;
    height: 14px;
    background-color: #f4d037;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0.45em; /* 1行目の中央に配置（font-sizeに応じて微調整可） */
}

.basic-img{
	display: block;
	margin:5px 0 0 0;
	padding:0;
	width:100%;
}
.marker{
	font-weight:bold;
	color:#ff3366;
}
.b-txt{
	font-weight: bold;
}
.main-area h3 {
    margin: 30px 0 20px 0;
    display: flex; /* インライン要素の中央揃えに対応 */
}

.main-area h3 span {
    color: #333;
    font-weight: bold;
    border-radius: 16px;
    background: #CCC;
    font-size: 18px;
    line-height: 1.5em;
    padding: 6px 14px;
    display: inline-block; /* 1行のときは文字数に応じた横幅 */
    max-width: 100%; /* はみ出し防止 */
    word-break: break-word; /* 長い単語で折り返し可能に */
}

/* 2行以上になったら横幅を100%に */
.main-area h3 span::after {
    content: "";
    display: none; /* これで余白を防ぐ */
}

.main-area h3 span:has(br), 
.main-area h3 span:has(span) {
    display: block;
    width: 100%;
}

.main-area h4{
	color:#333;
	font-weight:bold;
	font-size:16px;
	margin:30px 0 20px 0;	
}

.prof{
	background: #dce4ee;
	padding:0 16px 16px 16px;
	margin:40px 0 0 0;
}
.prof h4{
	background: #10428a;
	display: block;
	margin:0 auto 0 auto;
	color:#FFF;
	font-weight:bold;
	font-size:16px;
	text-align: center;
	padding:5px;
	width:6em;
}
.prof-txt{
	text-align: center;
	line-height: 2em;
	margin:0 auto 10px auto;
	padding:0 auto; 
	font-size:15px;
}
.prof-txt a{
	text-decoration: none;
}

.logo-img img{
	width:44%;
	margin-bottom:5px;

}
table{
	margin-top:20px;
	margin-bottom:5px;
}
table,th,td{
	border-collapse: collapse;
}
.table1 th,.table1 td{
	border: #CCC solid 1px;
	padding:10px;
	vertical-align: top;
}
.table1 th{
	background: #dce4ee;
	font-weight:bold;
	text-align-last: center;
	border: #CCC solid 1px;
}
.table2 th,.table2 td{
	border: #CCC solid 1px;
	padding:10px;
	vertical-align: center;
}
.table2 td{
	text-align: right;
}
.table2 th{
	text-align: center;
}
.table2 th{
	background: #B8DDD6;
	text-align-last: center;
	border: #CCC solid 1px;
}
/*折り畳みstart*/


.acd-check{
    display: none;
}

.acd-label{
    background: #e5e8e6;
    color: #10428a;
    display: block;
    margin-bottom: 1px;
    padding: 10px;
    position: relative;
    font-size: 14px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    line-height: 1.4; /* テキストの高さ調整 */
    padding-right: 40px; /* 画像のための余白を追加 */
}

.acd-label h3{
	font-size: 16px;
    display: inline;
    font-weight: lighter;
    margin: 0; /* タイトルの余白をリセット */
	padding-left:2em;
	text-indent:-2em;
	display:block;
	line-height: 1.5em;
}

.acd-label:after{
    box-sizing: border-box;
    display: inline-block; /* インラインブロックで横並びに */
    width: 20px;  /* 画像の幅 */
    height: 20px; /* 画像の高さ */
    background-image: url(../img/open.png);
    background-size: contain;
    position: absolute;
    right: 10px; /* 右側の余白 */
    top: 50%; /* 垂直位置の中央揃え */
    transform: translateY(-50%); /* 完全に垂直中央揃え */
    content: ''; /* 画像を表示 */
}

.acd-check:checked + .acd-label:after{
    background-image: url(../img/close.png);
}

.acd-content{
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
    margin-bottom: 10px;
}

.acd-check:checked + .acd-label + .acd-content{
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
}
/*折り畳みend*/
.pamph-btn-box{
	padding:auto;
	border-bottom: #003546 solid 5px;
	display: block;
	margin:30px auto;
	width:90%;
	padding:10px;
	border-radius: 10px;
	-webkit-border-radius: 10px; 
	-moz-border-radius: 10px; 	
	color:#FFF;
	background: #10428a;
	text-decoration: none; 
	font-weight:bold;
	font-size:20px;
	text-align: center;
	line-height: 1.5em;
	
}
.pamph-btn{
	display: block;


}
a:link.pamph-btn,a:visited.pamph-btn,a:hover.pamph-btn,a:active.pamph-btn{
	color:#FFF;
	text-decoration: none; 
}
/*a:hover.pamph-btn {
  opacity: 0.5;
}*/
.s-txt{
	font-size:12px;
}













