/* コラム共通スタイル */
a.textLink{
	color: var(--accentColor2);
	font-weight: 700;
	margin: 10px 0;
}
a.textLink p::before{
	font-family: "Font Awesome 5 Free";
	content: "\f152";
	font-weight: 900;
	font-size: 120%;
	color: var(--accentColor2);
	padding-right: 5px;
}

.mainArea{
	width: min(100%, 1200px);
	margin: 0 auto;
	padding-bottom: 50px;
}
.pageTitleArea{
	margin-top: 20px;
	background-color: #d5e4e2;
	background-image:
	linear-gradient(90deg, transparent 30px, #abced4 30px, #abced4 32px, transparent 32px),
	linear-gradient(#eee .1em, transparent .1em);
	background-size: 100% 1.2em;
}
.columnWrap{
	gap: 20px;
}
.columnContents{
	background: #fff;
	padding: 20px;
}
.columnContents,.sideMenu{
	margin: 20px 0;
}
.pageTitleArea{
	display: flex;
	flex-direction: column;
	gap: 10px;
	justify-content: center;
}
.pageTitleArea h1{
	font-size: clamp(25px, (100vw - 600px) * 6 / 600 + 31px, 35px);
	font-weight: 700;
	padding: 40px 20px 40px 40px;
	line-height: 1.5em;
}
.pageTitleArea h2{
	font-size: clamp(20px, (100vw - 600px) * 6 / 600 + 23px, 27px);
	font-weight: 700;
	line-height: 1.5em;
	padding: 0 20px 20px 40px;
}
.sideMenu{
	width: min(100% ,300px);
}
.columnContents{
	flex: 1;
}
.columnSummary img{
	margin: 0 auto 20px;
	width: min(100%, 400px);
}
.columnSection img{
	margin: 20px auto;
	width: min(100%, 400px);
}
.columnSection,.columnIndex{
	margin-top: 40px;
}
:is(.columnIndex,.columnSection) a:not(.linkBtn){
	width: fit-content;
	text-decoration: underline;
}
.columnIndex{
	background: #f7f6fb;
	border-radius: 10px;
	padding: 20px;
}
.columnIndex >ul{
	margin-left: 30px;
}
.columnIndex ul li{
	padding-bottom: 10px;
	line-height: 1.5em;
}
.columnIndex ul >li{
	list-style-type: disc;
}
.columnIndex ul li p{
	padding-bottom: 10px;
}
.columnIndex ul li ul{
	padding: 10px 0 0 20px;
}
.columnIndex ul li ul li{
	list-style: none;
}
:is(.columnIndex,.columnSection) h2{
	font-size: clamp(20px, (100vw - 600px) * 6 / 600 + 22px, 25px);
	margin-bottom: 20px;
	font-weight: 700;
}
.columnSection h2{
	background: var(--lightColor2);
	padding: 10px;
}
.columnTextArea{
	padding: 0 20px;
}
:is(.columnIndex,.recommendColumn,.relatedColumn) h3{
	font-size: clamp(18px, (100vw - 600px) * 6 / 600 + 20px, 22px);
	line-height: 1.5em;
	margin-bottom: 10px;
}
.columnSection h3{
	font-size: clamp(18px, (100vw - 600px) * 6 / 600 + 19px, 20px);
	border-left: 8px solid var(--subColor);
	font-weight: 500;
	padding: 5px 10px;
	margin: 30px 0 5px;
}
.columnSection h4:not([class]){
	width: fit-content;
	font-weight: 700;
	font-size: clamp(18px, (100vw - 600px) * 6 / 600 + 20px, 22px);
	margin: 30px 0 10px;
	padding-bottom: 5px;
	border-bottom: 2px solid var(--accentColor1);
}
.columnSection h4.subTitle{
	font-size: clamp(18px, (100vw - 600px) * 6 / 600 + 20px, 22px);
	font-weight: 700;
	line-height: 1.5em;
	margin-bottom: 10px;
}
.sideMenu{
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.sideMenu a{
	width: fit-content;
	text-decoration: underline;
	display: block;
}
.stickyWrap{
	position: sticky;
	top: 90px;
}
.recommendColumn,.relatedColumn{
	background: #fceee5;
	padding: 20px;
}
:is(.recommendColumn,.relatedColumn) img{
	margin-bottom: 20px;
}
.sideMenu :is(.recommendColumn,.relatedColumn) a:not(.bannerLink){
	padding-left: 25px;
	text-indent: -25px;
	margin-bottom: 10px;
}
.sideMenu .recommendColumn a ::before{
	font-family: "Font Awesome 5 Free";
	content: "\f573";
	font-weight: 900;
	font-size: 150%;
	color: var(--mainColor);
	opacity: 1;
	padding-right: 5px;
}
.linkBtn,.inquiryBtn{
	font-size: clamp(18px, (100vw - 600px) * 6 / 600 + 20px, 22px);
	padding: 20px;
	border-radius: 50px;
	width: min(100% ,500px);
	text-align: center;
	font-weight: 700;
}
.linkBtn{
	background: var(--subColor);
	margin: 40px auto 0;
}
.inquiryBtn{
	background: var(--accentColor1);
	color: #fff;
	text-shadow: 2px 2px 2px #444;
	margin: 20px auto;
}
.columnTableBox{
	margin: 20px 0 30px;
}
.columnTableBox table{
	width: 840px;
}
.columnTableBox table :is(th,td){
	border-top: 1px solid #444;
	border-left: 1px solid #444;
	padding: 5px;
}
.columnTableBox table :is(th,td):last-of-type{
	border-right: 1px solid #444;
}
.columnTableBox table tr:last-of-type :is(th,td){
	border-bottom: 1px solid #444;
}
.columnTableColor1{
	background: #f8dac9;
}
.columnTableColor2{
	background: #CAEDFB;
}
.columnTableColor3{
	background: #e3eff3;
}
.columnTableColor4{
	background: #f5ebe5;
}
.otherLinkArea{
	background: #d8f7f5;
	padding: 15px 10px;
	border-radius: 10px;
	margin: 10px 0;
}
.otherLinkTitle{
	font-weight: 700;
	margin: 0 0 10px 0;
}
@media (max-width: 893px){
	.columnTableBox{
		overflow-x: scroll;
	}
}
@media (max-width: 700px){
	.columnWrap{
		flex-direction: column;
	}
	.sideMenu{
		width: 90%;
		margin: 0 auto;
	}
}