@charset "utf-8";
/* ------------------------------------------------------------------ BASE -- */
:root {
	--co-main:      #2588ae;
	--co-main-mid:  #bfc9cd;
	--co-main-lite: #c6e5f1;
	--co-main-dark: #084e75;

	--co-dark:      #1e2a34;

	--co-base: #f2f4f9;
	--co-text-light: #88898d;
	--co-text-dark:  #2c3032;
	--co-text-main:  #4a5da9;

	--co-white: #FFFFFF;

	--co-sub1: #E94709;
	--co-sub2: #fddc0e;
	--co-sub3: #40924b;

	--te-mincho: YakuHanMP, 'Noto Serif JP', "游明朝" , sans-serif;
	--te-Gosick: YakuHanJP, 'Noto Sans JP',"メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", sans-serif;
}

.pcOnly{ display: block; }
.spOnly{ display: none; }
@media screen and ( max-width:599px) {
	.pcOnly{ display: none; }
	.spOnly{ display: block; }
}

.material-symbols-outlined {
	color: inherit;
	font-variation-settings:
	'FILL' 1,
	'wght' 500,
	'GRAD' 0,
	'opsz' 40
}

html {
	font-size: 18px;
}
body {
	overflow-x: hidden;
	font-family: var(--te-Gosick);
	line-height: 1.6;
	background-color: var(--co-base);
	color: var(--co-text-dark);
}
h1 {
	font-size: 1.5em;
}
h2 {
	font-size: 1.4em;
	margin-bottom: 1em;
	padding-bottom: 0.75em;
}
h3 {
	font-size: 1.25em;
	margin-bottom: 0.6em;
	border-bottom: dashed 2px var(--co-main-mid);
	padding-bottom: 0.3em;
	margin-top: 3.5em; /*0.6*/
}
h4 {
	font-size: 1.10em;
	font-weight: bold;
	margin-bottom: 0.5em;
	color: var(--co-main);
}
h5 {
	font-size: 0.9em;
	margin-bottom: 0.5em;
}
h6 {
	font-size: 0.875em;
	font-family: var(--te-Cinzel)!important;
	margin-bottom: 0.25em;
	line-height: 0.75em;
	color: var(--co-dark);
	font-weight: normal;
}
p{
	padding-bottom: 0.875em;
}
p:last-of-type{
	padding-bottom: 0;
}
strong{
	font-weight: 700;
	font-size: 1.1em;
	margin: 0 0.15em;
	background: linear-gradient(rgba(255,255,255,0) 80%,rgba(255, 191, 0, 0.5) 0);
	color: #000;
}
@media screen and ( max-width:599px) {
	h1 {
		font-size: 1.25em;
	}
	h2 {
		font-size: 1.45em;
	}
}


.material-symbols-outlined {
	font-size: 1.25em;
}


.fontS {
	font-size: max(0.5em,11px)!important;
	display: inline-block;
	font-family: inherit;
}
.fontL{
	font-size: 1.5em;
	display: inline-block;
	font-family: inherit;
}
.fontXL{
	font-size: 2em;
	display: inline-block;
	font-family: inherit;
}
.font8em{
	font-size: 8em;
}

.entry-content h2 ,
.titleBorder {
	position: relative;
	padding-bottom: 0.3em;
	border-bottom: 3px solid var(--co-main-mid);
	text-align: left;
	margin-top: 1em;
}
.entry-content h2::after ,
.titleBorder::after {
	content: '';
	position: absolute;
	bottom: -3px;
	left: 0;
	z-index: 2;
	width: 20%;
	height: 3px;
	background-color: var(--co-main);
}
.entry-content h2::first-letter {
	color: var(--co-main);
	font-size: 1.4em;
	margin-right: 0.1em;
}
.entry-content h2:not(:first-of-type) {
	margin-top: 2em;
}

.entry-content h2 + h3 {
	margin-top: 0;
}

.titleBorder.ta-C {
	text-align: center;
}
.titleBorder.ta-C::after {
	left: 0;
	right: 0;
	margin: auto;
}


.fo-Mincho{ font-family: var(--te-mincho); }
.fo-Cinzel{ font-family: var(--te-Cinzel); }
.fo-SansSerif{ font-family: var(--te-SansSerif)!important; }

figure{
	position: relative;
	margin-bottom: 1em;
}
figure:last-of-type{
	margin-bottom: 0em;
}
figure.fig_pad {
	padding: 2.5em;
}
figure.fig_padL {
	padding: 0 4em;
}
figure p{
	position: absolute;
	right: 1px;
	bottom: 1px;
	color: var(--co-base);
	font-size: 0.75em;
	padding: 0.1em 0.25em!important;
	background: var(--co-dark);
}

figure .centerTxt {
	position: absolute;
	width: 60%;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
	right: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: var(--co-base);
	text-shadow: 0px 0px 10px var(--co-text-dark), 0px 0px 10px var(--co-text-dark);
}
figure h4.centerTxt {
	font-size: 1.75em;
	margin-bottom: 0;
	font-weight: normal;
}
figure h3.centerTxt {
	font-size: 2.5em;
}

figure dl.centerTxt {
	color: var(--co-base);
}
figure dl.centerTxt dt {
	font-size: 1.4em;
}
figure dl.centerTxt dd {
	font-size: 0.9em;
}




/* ------------------------------------------------------------------ LINK -- */
.normalLink {
	display: inline-block;
	text-decoration: none;
	position: relative;
	border: 1px solid var(--co-main);
	background-color: var(--co-main);
	margin: 0;
	padding: 0.5em 2.5em;
	color: var(--co-base);
	margin: auto;
	line-height: 1.2;
	transition: all 0.2s ease-in-out;
}
.normalLink::after {
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	top: 0;
	bottom: 0;
	left: auto;
	margin: auto;
	border-right: 1px solid var(--co-base);
	border-top: 1px solid var(--co-base);
	transform: rotate(45deg);
	transition: all 0.2s linear;
	right: 1.5em;
}
.normalLink:hover {
	background-color: var(--co-white);
	color: var(--co-main);
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.3);
}
.normalLink:hover::after {
	right: 1em;
	border-right: 1px solid var(--co-main);
	border-top: 1px solid var(--co-main);
	transform: rotateX( 180deg ) rotate( 45deg );
}

.normalLink.line {
	background-color: var(--co-white);
	color: var(--co-main);
}
.normalLink.line:hover {
	background-color: var(--co-main);
	color: var(--co-base);
}
.normalLink.line:hover::after {
	border-right: 2px solid var(--co-base);
	border-top: 2px solid var(--co-base);
}
@media screen and ( max-width:599px) {
	.normalLink {
		padding: 0.5em 1.5em;
	}
	.normalLink::after {
		right: 0.75em;
	}
}


a.ctaLink {
	color: var(--co-base);
	transition: background-color 0.2s ease-in-out;
}
a.ctaLink.req { background-color: #4b8db1; }
a.ctaLink.res { background-color: #b14b4b; }
a.ctaLink.lim { background-color: #849f4c; }
a.ctaLink.own { background-color: #735c18; }

a.ctaLink.req:hover { background-color: #3f7592; }
a.ctaLink.res:hover { background-color: #8b3c3c; }
a.ctaLink.lim:hover { background-color: #476129; }
a.ctaLink.own:hover { background-color: #735c18; }
a.ctaLink:hover {
	color: rgba(255, 255, 255, 0.7);
}

.linkHover {
	opacity: 1;
	transition: opacity 0.2s ease-in-out;
}
.linkHover:hover {
	opacity: 0.7;
}


/* ----------------------------------------------------- PARTS//margin-set -- */
.mb-0 { margin-bottom:  0px !important; }
.mb-10{ margin-bottom: 10px !important; }
.mb-20{ margin-bottom: 20px !important; }
.mb-30{ margin-bottom: 30px !important; }
.mb-40{ margin-bottom: 40px !important; }
.mb-50{ margin-bottom: 50px !important; }
.mb-60{ margin-bottom: 60px !important; }
.mb-70{ margin-bottom: 70px !important; }
.mb-80{ margin-bottom: 80px !important; }

.ml-0 { margin-left:  0px !important; }
.ml-10{ margin-left: 10px; }
.ml-20{ margin-left: 20px; }
.ml-30{ margin-left: 30px; }
.ml-40{ margin-left: 40px; }

.mr-0 { margin-right:  0px !important; }
.mr-10{ margin-right: 10px; }
.mr-20{ margin-right: 20px; }
.mr-30{ margin-right: 30px; }
.mr-40{ margin-right: 40px; }

.mt-05em{ margin-top: 0.5em !important; }
.mt-1em{ margin-top: 1em !important; }
.mt-2em{ margin-top: 2em !important; }
.mt-3em{ margin-top: 3em !important; }
.mt-4em{ margin-top: 4em !important; }
.mt-5em{ margin-top: 5em !important; }
.mt-6em{ margin-top: 6em !important; }
.mt-7em{ margin-top: 7em !important; }
.mt-8em{ margin-top: 8em !important; }

.mb-1em{ margin-bottom: 1em !important; }
.mb-2em{ margin-bottom: 2em !important; }
.mb-3em{ margin-bottom: 3em !important; }
.mb-4em{ margin-bottom: 4em !important; }
.mb-5em{ margin-bottom: 5em !important; }
.mb-6em{ margin-bottom: 6em !important; }
.mb-7em{ margin-bottom: 7em !important; }
.mb-8em{ margin-bottom: 8em !important; }

.pa-0   {padding: 0!important;}
.pa-1_5 {padding: 1.5em!important;}
.pa-2   {padding: 2em!important;}
.pa-0_5em {padding: 0.25em 0.75em!important;}

.pt-10{ padding-top: 10px; }
.pt-20{ padding-top: 20px; }
.pt-30{ padding-top: 30px; }
.pt-40{ padding-top: 40px; }
.pt-50{ padding-top: 50px; }
.pt-60{ padding-top: 60px; }
.pt-70{ padding-top: 70px; }
.pt-80{ padding-top: 80px; }

.pb-0{ padding-bottom: 0px; }
.pb-10{ padding-bottom: 10px; }
.pb-20{ padding-bottom: 20px; }
.pb-30{ padding-bottom: 30px; }
.pb-40{ padding-bottom: 40px; }
.pb-50{ padding-bottom: 50px; }
.pb-60{ padding-bottom: 60px; }
.pb-70{ padding-bottom: 70px; }
.pb-80{ padding-bottom: 80px; }

.pt-1em{ padding-top: 1em !important; }
.pt-2em{ padding-top: 2em !important; }
.pt-3em{ padding-top: 3em !important; }
.pt-4em{ padding-top: 4em !important; }
.pt-5em{ padding-top: 5em !important; }
.pt-6em{ padding-top: 6em !important; }
.pt-7em{ padding-top: 7em !important; }
.pt-8em{ padding-top: 8em !important; }

.pb-1em{ padding-bottom: 1em !important; }
.pb-2em{ padding-bottom: 2em !important; }
.pb-3em{ padding-bottom: 3em !important; }
.pb-4em{ padding-bottom: 4em !important; }
.pb-5em{ padding-bottom: 5em !important; }
.pb-6em{ padding-bottom: 6em !important; }
.pb-7em{ padding-bottom: 7em !important; }
.pb-8em{ padding-bottom: 8em !important; }

.pt-1_5em{ padding-top: 1.5em !important; }


/* ------------------------------------------------------ PARTS//width-set -- */
.w05em{ width:  5em;}
.w09em{ width:  9em;}
.w11em{ width: 11em;}
.w13em{ width: 13em;}
.w15em{ width: 15em;}
.w18em{ width: 18em;}
.w21em{ width: 21em;}
.w26em{ width: 26em;}
.w27em{ width: 27em;}
.w960{
	width: auto;
	margin: auto;
	max-width: 960px !important;
}
.w760{
	width: auto;
	margin: auto;
	max-width: 760px !important;
}
.wid-25em {
	max-width: 25em;
	margin: auto;
}
.wid-35em { 
	max-width: 38em;
	margin: auto;
	padding-right: 1.5em;
	padding-left: 1.5em;
}
@media screen and ( max-width:959px ) {
	.wid-35em {
		padding: 3.5em 1.5em;
	}
	.wid-25em {
		max-width: none;
	}
	.wid-25em img {
		max-width: 24em;
	}
}

.w100per{
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
}
.wmaxfit {
	width: 100% !important;
	max-width: fit-content !important;
}

.he100vh img {
	max-height: 100vh;
}



/* ------------------------------------------------------------- PARTS//BG -- */
.bgDotted::after {
	content: "";
	background-image: url(../../images/cmn-bg-dotted.svg);
	background-attachment: fixed;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%;
	z-index: 1;
	opacity: 0.8;
	background-size: 8px;
	background-repeat: repeat;
}

.bgWhite {
	background-color: var(--co-white);
}
.bg-White70 {
	background-color: rgba(255,255,255,0.7);
}

.bgBlack {
	background-color: var(--co-dark);
}
.bgSub1 {
	background-color: var(--co-main);
	color: var(--co-base);
}


.bgMain {
	background-color: var(--co-main);
	color: var(--co-base);
}
.bgMain h2::after { background-color: var(--co-base); }
.bgMain *{
	color: var(--co-base);
}

.bgDark {
	background-color: var(--co-dark);
}
.bgDark *{
	color: var(--co-base);
}
.bgDark h2::after { background-color: var(--co-base); }

.bgGrad {
	color: var(--co-white);
	background-image: linear-gradient(
		225deg,
		hsl(197deg 65% 41%) 0%,
		hsl(197deg 67% 39%) 11%,
		hsl(198deg 69% 38%) 22%,
		hsl(198deg 71% 36%) 33%,
		hsl(199deg 73% 34%) 44%,
		hsl(199deg 75% 32%) 56%,
		hsl(200deg 78% 30%) 67%,
		hsl(200deg 80% 28%) 78%,
		hsl(201deg 84% 26%) 89%,
		hsl(201deg 87% 25%) 100%
	);
}

.coWhite { color: var(--co-white); }
.coDark  { color: var(--co-text-dark); }
.coMain  { color: var(--co-text-main); }


/* -------------------------------------------------------- PARTS//textSet -- */
.ta-l {
	text-align: left;
}
.ta-l h2::after,
h2.ta-l::after{
	right: auto;
}

.ta-c {
	text-align: center;
}



/* ----------------------------------------------------------- PARTS//.col -- */
.wrapp {
	padding: 2.5em 0;
}
.col {
	max-width: 1200px;
	min-width: 960px;
	margin: auto;
	text-align: center;
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 2em;
	padding-left:  1em;
	padding-right: 1em;
}
@media screen and ( max-width:959px ) {
	.col {
		min-width: auto;
	}
}
@media screen and ( max-width:599px) {
	.wrapp {
		padding: 1em 0;
	}
	.col {
		max-width: 100%;
	}
}

.col:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0!important;
}
.col.fix {
	max-width: none;
	min-width: auto;
	padding: 0%;
}

.colIn img {
	width: 100%;
}
.colIn.Txt {
	padding: 7.5% 5%;
}
.colIn.Txt > div {
	width: 100%;
}

/* ----------------------------------------------------- PARTS//.col.Title -- */
.col.title {
	position: relative;
	padding-top: 0;
	padding-bottom: 0;
	display: block;
	margin-bottom: 1.5em;
}

/* ---------------------------------------------------- PARTS//.col.single -- */
.col.single .colIn,
.col.single main{
	width: 100%;
}

/* -------------------------------------------------------- PARTS//.col.Db -- */
.col.db {
	align-items: flex-start;
}
.col.db > main {
	width: calc(100% - 300px - 2.5em);
}
.col.db > aside {
	width: 300px;
	position: sticky;
	top: 1.5em;
	display: flex;
	flex-direction: column;
}
@media screen and ( max-width:959px ) {
	.col.db {
		flex-direction: column;
		gap: 1.5em;
	}
	.col.db > main ,
	.col.db > aside {
		width: 100%;
	}
	.col.db > aside {
		top: 0;
		position: relative;
		padding-top: 1.5em;
		border-top: 1px dashed var(--co-main);
	}
}

/* ---------------------------------------------------- PARTS//.col.Db.fix -- */
.col.db.fix {
	gap: 0;
}
.col.db.fix .colIn{
	width: calc(100% / 2);
}
@media screen and ( max-width:599px) {
	.col.db.fix .colIn {
		width: 100%;
	}
}

/* ------------------------------------------------------- PARTS//.col.Db2 -- */
.col.db2 .colIn:first-of-type{
	width: 40%;
}
.col.db2 .colIn:last-of-type{
	width: calc(60% - 3em);
}
/* ------------------------------------------------------ PARTS//.col.Db2b -- */
.col.db2b .colIn:first-of-type{
	width: calc(60% - 3em);
}
.col.db2b .colIn:last-of-type{
	width: 40%;
}
@media screen and ( max-width:599px) {
	.col.db2 ,
	.col.db2b {
		flex-direction: column;
		gap: 3em;
	}
	.col.db2 .colIn:first-of-type ,
	.col.db2 .colIn:last-of-type ,
	.col.db2b .colIn:first-of-type ,
	.col.db2b .colIn:last-of-type {
		width: 100%;
	}
}

/* ------------------------------------------------------- PARTS//.col.Db2 -- */
.col.db3 .colIn:first-of-type{
	width: 40%;
}
.col.db3 .colIn:last-of-type{
	width: calc(60% - 1.5em);
}
@media screen and ( max-width:599px) {
	.col.db3 {
		flex-direction: column;
		gap: 1.5em;
	}
	.col.db3 .colIn:first-of-type,
	.col.db3 .colIn:last-of-type {
		width: 100%;
	}
}

/* ------------------------------------------------------- PARTS//.col.Tri -- */
.col.tri {
	gap: 1em;
}
.col.tri .colIn {
	width: calc(100% / 3 - 0.666em);
}
.col.tri.fix {
	gap: 1px;
}
.col.tri.fix .colIn {
	width: calc(100% / 3 - 0.75px);
}

@media screen and ( max-width:599px) {
	.col.tri {
		flex-direction: column;
	}
	.col.tri .colIn ,
	.col.tri.fix .colIn {
		width: 100%;
	}
}

/* ------------------------------------------------------- PARTS//.col.Qua -- */
.col.qua {
	gap: 1px;
}
.col.qua .colIn{
	flex-grow: 1;
	width: calc(100% / 5);
}
.col.qua .colIn.w590{
	width: calc(100% / 2 - 10px);
	max-width: 590px;
}
@media screen and ( max-width:599px) {
	.col.qua .colIn {
		width: 100%;
	}
}

article {
	text-align: left;
}

/* ----------------------------------------------------- PARTS//flex-style -- */
.dis-fl-col{
	display: flex;
	flex-direction: column;
}


.fl-al-st  { align-items: stretch; }
.fl-al-ce  { align-items: center; }
.fl-al-sta { align-items: start; }

.fl-di-re  { flex-direction: row-reverse; }
.fl-di-rev { flex-direction: row-reverse; }

.fl-ju-cen { justify-content: center; }
.fl-ju-sta { justify-content: flex-start; }




/* table -------------------------------------------------------------------- */
table {
	width: 100%;
	background-color: var(--co-white);
	border-radius: 0.5em;
	overflow: hidden;
	margin-bottom: 1em;
	display: table;
}
table tbody {
	width: 100%;
}
table tr {
	border-top: 2px solid var(--co-base);
}
table tr:first-of-type {
	border-top: 0px solid var(--co-base);
}
table tr th {
	padding: 0.5em;
	text-align: left;
	border-right: 2px solid var(--co-base);
	text-align: center;
	color: var(--co-main);
	background-color: var(--co-main-lite);
}
table tr:first-of-type th {
	background-color: var(--co-main);
	color: var(--co-base);
}
table tr th:last-child {
	border-right: 0;
}
table tr td {
	padding: 0.5em;
	text-align: left;
	border-right: 2px solid var(--co-base);
}
table tr td:last-child {
	border-right: 0;
}
@media screen and ( max-width:599px) {
	table tr {
		display: flex;
		flex-direction: column;
		border-top: 4px solid var(--co-base);
	}
	table tr th {
		padding: 0.65rem 1rem;
		border-right: 0;
		border-bottom: 1px solid var(--co-base);
		text-align: left;
	}
	table tr th br {
		display: none;
	}
}
.borderTable tr {
	border-top: 0;
}
.borderTable th {
	width: 20%;
	padding: 2em 0;
	font-size: 16px;
	font-size: 1em;
	font-weight: bold;
	border-bottom: 2px solid var(--co-white);
	border-right: 0;
}
.borderTable td {
	padding: 2em 2.5em;
	border-bottom: 2px solid var(--co-base);
}
.borderTable td h6 {
	text-align: left;
	margin-bottom: 0;
}



/* ----------------------------------------------------- Component > .card -- */
.card {
	background-color: var(--co-white);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: stretch;
}
.card figure p {
	font-size: 0.75em;
}
.card figure.inTxt {
	position: relative;
}
.card figure.inTxt h4 ,
.card figure.inTxt h6 {
	position: absolute;
	background:    -moz-linear-gradient(left, rgba(0,0,0,0) 0%, var(--co-main) 20%, var(--co-main) 80%, rgba(0,0,0,0) 100%);
	background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%, var(--co-main) 20%, var(--co-main) 80%, rgba(0,0,0,0) 100%);
	background:     linear-gradient(to right, rgba(0,0,0,0) 0%, var(--co-main) 20%, var(--co-main) 80%, rgba(0,0,0,0) 100%);
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	height: 2.5em;
	color: var(--co-white);
	font-family: var(--te-mincho);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10;
}
.card figure.inTxt h6 {
	font-size: 1.25em;
}
.card figure h4 img {
	height: 100%;
	padding: 0.5em;
}

.card .cardTxt {
	padding: 1em;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
}
.card h6 {
	margin-top: 1.5em;
}
.card h4 {
	margin-bottom: 0;
}
.card h4:not(:last-child) {
	margin-bottom: 0.75em;
}
.card p {
	font-size: 0.875em;
}
.card ol {
	margin-top: 0.5em;
}
.card ol li {
	font-size: 0.75em;
	list-style: decimal;
	margin-left: 1.5em;
	margin-bottom: 0.25em;
}




/* ----------------------------------------------------- Component > .flow -- */
.flow li {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	padding: 0.75em;
	background: var(--co-white);
	margin-bottom: 0.25em;
	position: relative;
}

.flow li span {
	width: 8em;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--co-main);
	color: var(--co-base);
	font-size: 1.5em;
}

.flow li p {
	width: calc(100% - 8.5em);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: left;
	flex-direction: column;
}

.flow li:not(:last-of-type):after {
	content: "";
	width: 1.5em;
	position: absolute;
	height: 1.5em;
	transform: rotate( 45deg );
	left: 0;
	right: 0;
	margin: auto;
	bottom: -0.5em;
	z-index: 1;
	border: 4px solid var(--co-main);
	border-left: 0;
	border-top: 0;
}
@media screen and ( max-width:599px) {
	.flow li {
		padding: 0.75em 0.5em;
	}
	.flow li span {
		width: 2em;
	}
	.flow li p {
		width: calc(100% - 3.5em);
	}
}



/* ---------------------------------------------------------------- header -- */
header {
	border-top: 3px solid var(--co-main);
}

.grMenu {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.grMenu li.logoArea {
	width: 100%;
}
.grMenu li.logoArea ul {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1em;
	flex-direction: column;
	gap: 0.5em;
	padding-top: 1em;
	padding-bottom: 1em!important;
}
.grMenu li.logoArea ul li.siteName {
	width: 11.1em;
}
.grMenu li.logoArea ul li.siteName a img {
	width: 100%;
}
.grMenu li.logoArea ul li.siteDesc {
	font-size: 0.75em;
}

.grMenu li.mainMenu {
	width: 100%;
	background-color: var(--co-dark);
}
.grMenu li.mainMenu > ul {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
	margin: auto;
}
.grMenu li.mainMenu > ul li {
	flex-grow: 1;
	width: 10%;
}
.grMenu li.mainMenu > ul li {
	border-right: 1px solid var(--co-base);
}
.grMenu li.mainMenu > ul li:first-of-type {
	border-left: 1px solid var(--co-base);
}
.grMenu li.mainMenu > ul li a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.875em 1em;
	color: var(--co-base);
	font-weight: bold;
	font-size: 0.75em;
	height: 100%;
}
.grMenu li.mainMenu > ul li a::after {
	content: "";
	position: absolute;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 100%;
	opacity: 0;
	transition: opacity 0.2s ease-in-out;
	z-index: -1;
	background: var(--co-main);
}
.grMenu li.mainMenu > ul li a:hover:after {
	opacity: 1;
}
@media screen and ( max-width:599px) {
	header > nav {
		display: flex;
		flex-direction: column-reverse;
	}
	.grMenu li.mainMenu {
		display: none;
	}

	.grMenu li.logoArea ul {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		padding: 1.25em 0!important;
		font-size: 0.7em;
		width: 60%;
	}
	.grMenu li.logoArea ul li.siteName {
		width: 9em;
	}
	.grMenu li.logoArea ul li.siteDesc {
		/*display: none;*/
		margin-top: -0.35rem;
	}
}


/* ------------------------------------------------------------- .acordion -- */
.acordion {
	display: none;
}
@media screen and ( max-width:599px) {
	.acordion {
		display: flex;
		flex-direction: column;
	}
	.acordion .trigger {
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		font-size: 1.5em;
		align-items: center;
		padding: 0.5em;
	}
	.acordion .trigger p {
		display: flex;
		padding: 0;
	}
	.acordion .trigger p.acordion_button span {
		width: 1em;
		height: 1em;
		display: block;
		font-size: 1.25em;
		position: relative;
	}
	.acordion .trigger p.acordion_button > span::before,
	.acordion .trigger p.acordion_button > span i::before ,
	.acordion .trigger p.acordion_button > span i::after {
		content: "";
		position: absolute;
		width: 100%;
		height: 0.1em;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		background-color: var(--co-main);
		border-radius: 1rem;
		transition: transform 0.2s ease-in-out, top 0.2s ease-in-out, bottom 0.2s ease-in-out, width 0.2s ease-in-out;
	}
	.acordion .trigger p.acordion_button > span i::before {
		top: 0.6em;
	}
	.acordion .trigger p.acordion_button > span i::after {
		bottom: 0.6em;
	}

	body.menuOpen .acordion .trigger p.acordion_button > span::before {
		width: 0;
	}
	body.menuOpen .acordion .trigger p.acordion_button > span i::before {
		transform: rotate(30deg);
		top: 0;
	}
	body.menuOpen .acordion .trigger p.acordion_button > span i::after {
		transform: rotate(-30deg);
		bottom: 0;
	}
}


/* -------------------------------------------------------- .acordion_tree -- */
@media screen and ( max-width:599px) {
	body {
		transition: transform 0.2s ease-in-out;
	}
	body.menuOpen {
		position: fixed;
		width: 100%;
		height: 100%;
		transform: translateX(-70vw);
	}
	.acordion_tree {
		position: fixed;
		top: 0;
		bottom: 0;
		right: 0;
		width: 70vw;
		background: var(--co-white);
		z-index: 1000;
		transform: translateX(100%);
	}
	.acordion_tree__menu {
		height: 100%;
		display: flex;
		align-items: center;
		flex-direction: column;
		background: var(--co-text-dark);
		color: var(--co-base);
	}
	.acordion_tree__menu li {
		width: 100%;
	}
	.acordion_tree__menu li:not(:last-of-type) {
		border-bottom: 1px dashed var(--co-base);
	}
	.acordion_tree__menu li a {
		position: relative;
		padding: 0.5em 1.5em;
		font-size: 0.875em;
	}
	.acordion_tree__menu li a::after {
		content: "";
		position: absolute;
		width: 0.6em;
		height: 0.6em;
		top: 0;
		right: 1em;
		bottom: 0;
		margin: auto;
		border: 3px solid var(--co-main);
		border-left: none;
		border-bottom: none;
		transform: rotate(45deg);
	}
}


/* ------------------------------------------------------ .acordion_search -- */
@media screen and ( max-width:599px) {
	.acordion .trigger .acordion_button_search {
		color: var(--co-main);
		z-index: 99999;
		position: relative;
		transition: color 0.2s ease-in-out;
	}
	body.searchOpen .acordion .trigger .acordion_button_search {
		color: transparent;
	}

	.acordion .trigger .acordion_button_search::before ,
	.acordion .trigger .acordion_button_search::after {
		content: "";
		position: absolute;
		width: 100%;
		height: 0.1em;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		background-color: var(--co-base);
		border-radius: 1rem;
		opacity: 0;
		transition: opacity 0.2s ease-in-out;
	}
	.acordion .trigger .acordion_button_search::before {
		transform: rotate(30deg);
	}
	.acordion .trigger .acordion_button_search::after {
		transform: rotate(-30deg);
	}
	body.searchOpen .acordion .trigger .acordion_button_search::before ,
	body.searchOpen .acordion .trigger .acordion_button_search::after {
		opacity: 1;
	}

	.acordion_search {
		display: none;
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		background: var(--co-dark);
		z-index: 10000;
	}
	.acordion_search .searchWrapp {
		padding: 1em;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.acordion_search .searchWrapp {
		width: 100%;
		height: 100%;
	}
	.acordion_search .searchWrapp form {
		width: 100%;
	}
}




/* ---------------------------------------------------------------- footer -- */
footer {
	background-color: var(--co-dark);
	padding-top: 1em;
	padding-bottom: 1em;
	color: var(--co-base);
}
footer > .col {
	flex-direction: column;
	margin-bottom: 0;
}
footer > .col .footerLogo {
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

footer > .col .footerLogo .footer-l {
	font-size: 0.8em;
}
footer > .col .footerLogo .footer-l a h3 {
	text-align: left;
	margin: 0;
	font-size: 1.55em;
	color: inherit;
	padding: 0;
	border: none;
}
footer > .col .footerLogo .footer-l a p {
	font-size: 0.85em;
}
footer > .col .footerLogo .footer-r {
	display: flex;
	flex-direction: row;
	font-size: 0.875em;
	align-items: center;
}
footer > .col .footerLogo .footer-r li {
	line-height: 1;
}
footer > .col .footerLogo .footer-r li:not(:last-of-type) {
	border-right: 1px solid var(--co-base);
	padding-right: 0.75em;
	margin-right: 0.75em;
}
footer > .col .footerCopy {
	font-size: 0.75em;
}
footer #page-top {
	position: fixed;
	bottom: 0.2em;
	z-index: 999999;
	font-size: 2.875em;
	width: 1em;
	height: 1em;
	border-radius: 7rem;
	right: calc(-1.2em);
	background-color: var(--co-main);
	opacity: 0;
	transform: rotate(540deg);
	transition: transform 1.2s ease-in-out, right 1.2s ease-in-out, opacity 1.5s ease-in-out;
}
.is-scroll footer #page-top {
	right: 0.2em;
	transform: rotate(0);
	opacity: 1;
}
@media screen and ( max-width:599px) {.is-scroll footer #page-top {bottom: 2.0em;}}
footer #page-top a {
	width: 100%;
	height: 100%;
}
footer #page-top a::after ,
footer #page-top a::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
footer #page-top a::after {
	width: 0.3em;
	height: 0.3em;
	top: 0;
	border: 3px solid var(--co-base);
	border-left: none;
	border-bottom: none;
	transform: rotate(-45deg);
}
footer #page-top a::before {
	width: 3px;
	height: 40%;
	top: 7%;
	background-color: var(--co-base);
	border-radius: 1rem;
}


@media screen and ( max-width:959px ) {
	footer > .col .footerLogo {
		flex-direction: column-reverse;
		justify-content: center;
		align-items: center;
	}
}
@media screen and ( max-width:599px) {
	footer {
		padding-bottom: 80px;
	}
	footer > .col {
		padding: 0;
	}
	footer > .col .footerLogo {
		padding-left: 1em;
		padding-right: 1em;
		gap: 0.7em;
	}
	footer > .col .footerLogo .footer-l a h3 {
		text-align: center;
	}
	footer > .col .footerLogo .footer-r {
		font-size: 0.75em;
	}
	footer > .col .footerCopy {
		font-size: 0.65em;
		background: #111d26;
		width: 100%;
		padding: 0.5em;
		margin-top: 1.5em;
	}
}

/* -------------------------------------------------------------- .mainbox -- */
.mainbox {
	margin: 1em 0 3em 0;
}
figure.eyecatch {
	border-radius: 1em;
	overflow: hidden;
	margin-bottom: 1.5em;
	box-shadow: 0px 23px 20px -30px #000;
}
figure.eyecatch img {
	width: 100%;
	height: auto;
}
@media screen and ( max-width:599px) {
	.mainbox {
		margin: 1em 0 2em;
	}
}


/* ----------------------------------------------------------- .breadcrumb -- */
.breadcrumb {
	display: flex;
	flex-direction: row;
	font-size: 0.75em;
	margin-bottom: 1em;
	flex-wrap: wrap;
}
.breadcrumb li {
	position: relative;
}
.breadcrumb li:not(:last-of-type) {
	padding-right: 1em;
	margin-right: 0.7em;
}
.breadcrumb li:not(:last-of-type)::after {
	content: "";
	position: absolute;
	width:  0.5em;
	height: 0.5em;
	top: 0.1em;
	right: 0;
	bottom: 0;
	margin: auto;
	border: 1px solid var(--co-text-light);
	border-left: 0;
	border-bottom: 0;
	transform: rotate(45deg);
}


/* ------------------------------------------------------------- .catgroup -- */
.catgroup {
	display: flex;
	flex-direction: row;
	gap: 0.5em;
	font-size: 0.75em;
	margin-bottom: 1.5em;
}
.catgroup li {
	border-radius: 0.25em;
	overflow: hidden;
}
.catgroup li a {
	background: var(--co-main-dark);
	padding: 0.25em 0.5em;
	color: var(--co-base);
}
.catgroup li.term a {
	background: var(--co-main);
}


/* -------------------------------------------------------------- .snsLink -- */
.snsLink {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1em;
	gap: 0.25em;
	background: var(--co-white);
	padding: 1em;
	border-radius: 0.5em;
	margin-top: 3em;
}
.snsLink li {
	border-radius: 0.25em;
	overflow: hidden;
}
.snsLink li a {
	width:  2.5em;
	height: 2.5em;
	background-color: #084e75;
	cursor: pointer;
}
.snsLink li.twitter a    { background-color: #000000; }
.snsLink li.facebook a   { background-color: #4867aa; }
.snsLink li.pocket a     { background-color: #ee4056; }
.snsLink li.hatebu a     { background-color: #00a4de; }
.snsLink li.line a       { background-color: #05c755; }
.snsLink li.share-copy a { background-color: var(--co-main-mid); }

.snsLink li a span {
	font-size: 0;
	text-indent: -90em;
	color: transparent;
}

.snsLink li a i {
	width:  100%;
	height: 100%;
	display: block;
	background-size: 60%;
	background-repeat: no-repeat;
	background-position: center;
}
.snsLink li.twitter a i {
	background-image: url('../images/icon-twitter.svg');
	background-size: 80%;
}
.snsLink li.facebook a i {
	background-image: url('../images/icon-facebook.svg');
}
.snsLink li.pocket a i {
	background-image: url('../images/icon-pocket.svg');
	background-size: 55%;
}
.snsLink li.hatebu a i {
	background-image: url('../images/icon-hatebu.svg');
}
.snsLink li.line a i {
	background-image: url('../images/icon-line.svg');
}
.snsLink li.share-copy a i {
	background-image: url('../images/icon-clipboard.svg');
}


/* ----------------------------------------------------------- .entry-date -- */
.entry-date {
	font-size: 0.7em;
	display: inline-flex;
	line-height: 1;
	border-radius: 0.25em;
	margin-top: 0.75em;
	color: var(--co-text-light);
}
.entry-date time {
	display: flex;
	align-items: center;
	gap: 0.25em;
}
.entry-date time span {
	font-size: 1.8em;
}


/* -------------------------------------------------------- #toc_container -- */
#toc_container {
	background: var(--co-white);
	width: 90%;
	margin: 2em auto;
	margin-right: auto;
	max-width: calc(100% - 3em);
	padding: 2em 3em;
	border-radius: 1em;
}
#toc_container .toc_title {
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 0.5em;
}
#toc_container .toc_list {
	display: flex;
	flex-direction: column;
	gap: 1.0em;
	margin-top: 1.5rem;
}
#toc_container .toc_list > li > a {
	border-bottom: solid 1px var(--co-text-dark);
	margin-bottom: 0.4em;
	transition: opacity 0.2s ease-in-out;
}
#toc_container .toc_list > li > a:hover {
	opacity: 0.7;
}
#toc_container .toc_list > li > ul {
	padding-left: 2em;
	font-size: 0.875em;
	display: flex;
	flex-direction: column;
	gap: 0.3em;
}
#toc_container .toc_list > li > ul li a {
	border-bottom: solid 1px var(--co-text-dark);
	transition: opacity 0.2s ease-in-out;
}
#toc_container .toc_list > li > ul li a:hover {
	opacity: 0.7;
}
@media screen and ( max-width:599px) {
	#toc_container {
		width: 100%;
		max-width: 100%;
		padding: 1em;
		font-size: 0.75em;
	}
}


/* -------------------------------------------------------- .entry-content -- */
.entry-content > p {
	padding-bottom: 0;
	margin-bottom: 2em;
	line-height: 1.8;
	font-size: 0.95em;
}
.entry-content > p .huto {
	color: #222;
	background-image: linear-gradient(transparent 70%,#ffc7d9 30%);
	font-weight: bold;
	margin: 0 0.25em;
}
.entry-content > p a {
	color: var(--co-main);
	display: inline-flex;
	text-decoration: underline;
}
.entry-content > p a:hover {
	text-decoration: none;
}
.entry-content > p > img {
	border-radius: 1em;
	margin-top: 1em;
	box-shadow: 0px 23px 20px -30px #000;
}
.entry-content > ul {
	margin-left: 1em;
	margin-bottom: 1em;
}
.entry-content > ul > li {
	position: relative;
	padding-left: 1.5em;
	color: #666;
}
.entry-content > ul > li::after {
	content: "";
	position: absolute;
	width: 1em;
	height: 1em;
	top: 0.25em;
	left: 0;
	margin: auto;
	background: var(--co-main);
	border: 2px solid var(--co-main-dark);
	border-radius: 10rem;
	transform: scale(0.6);
}

.entry-content .BTN {
	position: relative;
    font-size: 0.75em;
    color: var(--co-main);
	margin-bottom: 3em;
}
.entry-content .BTN::before {
	content: "";
	position: absolute;
	margin: auto;
	height: calc(100% - 6px);
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	background: var(--co-white);
	z-index: -1;
}
.entry-content .BTN a {
	padding: 0.5em 0.5em 0.5em 1em;
	transition: opacity 0.2s ease-in-out;
}
.entry-content .BTN a:hover {
	opacity: 0.7;
}
.entry-content .BTN a::after {
	content: "";
	position: absolute;
	width: 0.6em;
	height: 0.6em;
	top: 0;
	right: 1em;
	bottom: 0;
	margin: auto;
	border: 3px solid var(--co-main);
	border-left: none;
	border-bottom: none;
	transform: rotate(45deg);
}
@media screen and ( max-width:599px) {
	.entry-content .BTN a {
		padding: 0.5em 1.75em 0.5em 0.5em;
	}
}


.entry-content > blockquote {
	margin-bottom: 2em;
	position: relative;
	margin-top: 2em;
	background: var(--co-white);
	padding: 1em 1em 1em 3em;
	border-radius: 0.5em;
}
.entry-content > blockquote::before {
	content: "";
	position: absolute;
	width: 0.3em;
	height: calc(100% - 1.25em);
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	background: var(--co-main);
	border-radius: 0 3rem 3rem 0;
}
.entry-content > blockquote::after {
	content: "“";
	position: absolute;
	top: -0.25em;
	left: 0.15em;
	height: 0.9em;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 5em;
	color: var(--co-main);
}

.entry-content > .graybox {
	border: solid 1px #ccc;
	margin-bottom: 20px;
	padding: 20px;
	background-color: #fafafa;
}

.entry-content > .introductionArea {
    border-top: 1px dashed var(--co-main-mid);
    padding-top: 1.5em;
}
.entry-content > .introductionArea p {
	padding-bottom: 0;
	margin-bottom: 2em;
	color: #666;
	line-height: 1.8;
	font-size: 0.95em;
}
.entry-content > .introductionArea dl {
    background: var(--co-white);
    border-radius: 0.5em;
    border: 1px solid var(--co-main);
    padding: 1em;
    display: flex;
    align-items: center;
    gap: 0.5em;
    margin-top: 1em;
}
.entry-content > .introductionArea dl dd h4 {
    margin-bottom: 0.15em;
	transition: color 0.2s ease-in-out;
}
.entry-content > .introductionArea dl dd p {
    margin-bottom: 0.5em;
}
.entry-content > .introductionArea dl dd a {
    background-color: var(--co-main);
    padding: 0.5em 1.5em 0.5em 1em;
    display: inline-block;
    font-size: 0.65em;
    font-weight: bold;
    color: var(--co-white);
    position: relative;
	transition: opacity 0.2s ease-in-out;
}
.entry-content > .introductionArea dl dd a:hover {
	opacity: 0.7;
}
.entry-content > .introductionArea dl dd a::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid var(--co-white);
    border-right: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 0.5em;
}

/* ------------------------------------------------------- .recomendArea -- */

.recomendArea .recomendArea-inner {
	display: flex;
    align-items: center;
    padding: 1em;
    font-size: 1rem;
    background: var(--co-white);
    border-radius: 0.5em;
    gap: 1em;
}
.recomendArea .recomendArea-inner .recomendArea-item-l{
	width: 18%;
}
.recomendArea .recomendArea-inner .recomendArea-item-l img{
	width: 100%;
}
.recomendArea .recomendArea-inner .recomendArea-item-r{
	width: 78%;
}
.recomendArea .recomendArea-inner .recomendArea-item-r p{
	font-weight: 900;
    background: #f2f4f9;
    padding: 2em;
    border-radius: .5em;
	letter-spacing: .05em;
}
.recomendArea .recomendArea-inner .recomendArea-item-r p span{
	color: #E47911;
}
@media screen and ( max-width:599px) {
	.recomendArea .recomendArea-inner .recomendArea-item-l {
		width: 28%;
	}
	.recomendArea .recomendArea-inner .recomendArea-item-r {
		width: 72%;
	}
	.recomendArea .recomendArea-inner .recomendArea-item-r p {
		font-weight: 900;
		background: #f2f4f9;
		padding: 1em;
		border-radius: .5em;
		letter-spacing: .05em;
		font-size: .8em;
	}
}
/* ------------------------------------------------------- .list__taxonomy -- */
.list__taxonomy {
	display: flex;
	flex-direction: column;
	gap: 0.25em;
	font-size: 0.75em;
	margin-top: 5rem;
}
.list__taxonomy dl {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.list__taxonomy dl dt {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding-right: 0.6em;
	margin-right: 0.3em;
}
.list__taxonomy dl dt::after {
	content: "";
	position: absolute;
	width: 0.4em;
	height: 1px;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	background: var(--co-text-light);
}
.list__taxonomy dl dd {
	position: relative;
	padding-right: 0.75em;
}
.list__taxonomy dl dd a {
	text-decoration: underline;
}
.list__taxonomy dl dd a:hover {
	text-decoration: none;
}
.list__taxonomy dl dd:not(:last-of-type):after {
	content: ",";
	position: absolute;
	width: 0.5em;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}

/* ------------------------------------------------------------ .list__tag -- */
.list__tag {
	font-size: 0.6em;
	display: flex;
	gap: 0.5em;
	margin-top: 0.5em;
	flex-wrap: wrap;
}
.list__tag li {
	position: relative;
	margin-left: 30px;
	padding: 0.5em 0.5em 0.5em 2.2em;
	background: var(--co-main-mid);
	border-radius: 0.25em!important;
	margin: 0!important;
	line-height: 1.2;
}
.list__tag li::before {
	position: absolute;
	top: -100%;
	left: 0;
	content: '';
	border-width: 2em 2em 2em 0;
	border-style: solid;
	border-color: #FFF var(--co-main-mid) #FFF #FFF;
	bottom: -100%;
	margin: auto;
	width: 0;
	height: 0;
	z-index: 1;
}

.list__tag li::after {
	position: absolute;
	top: 0;
	left: 0.95em;
	width: 0.75em;
	height: 0.75em;
	content: '';
	border-radius: 100%;
	background: var(--co-white);
	z-index: 2;
	margin: auto;
	bottom: 0;
}

/* ----------------------------------------------------------- .list__post -- */
.list__post {
	display: flex;
	flex-direction: column;
	gap: 0.25em;
}
.list__post li {
	border-radius: 1em;
	overflow: hidden;
	margin-bottom: 0.5rem;
}
.list__post li a {
	background: var(--co-white);
	display: flex;
	flex-direction: row;
	font-size: 1em;
	justify-content: space-between;
	padding: 0.5em;
}
.list__post li a figure {
	width: 290px;
	overflow: hidden;
	border-radius: 1em;
	display: flex;
	align-items: center;
}
.list__post li a figure img {
	width: 100%;
	border-radius: 1em;
}
.list__post li a > div {
	width: calc(100% - 300px);
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	justify-content: center;
}
.list__post li a > div > div {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 0.25em;
}
.list__post li a > div > div > span {
	font-size: 0.75em;
	background: var(--co-main);
	color: var(--co-white);
	padding: 0.25em 0.5em;
	border-radius: 0.25em;
	line-height: 1.3;
}
.list__post li a > div > div p {
	font-size: 0.75em;
	display: flex;
	align-items: center;
	gap: 0.24em;
	color: var(--co-text-light);
	padding: 0;
}
.list__post li a > div h5 {
	font-size: 0.95em;
	margin-bottom: 0.25em;
	color: #000;
}
.list__post li a > div h5 br {
	display: none;
}
.list__post li a > div p {
	font-size: 0.75em;
	padding-top: 0.5rem;
	color: #666;
}

.list__post.lite li a figure {
	width: 30%;
	height: 0;
	padding-top: 30%;
	border-radius: 0.7em;
}
.list__post.lite li a figure img {
	position: absolute;
	top: 0;
	left: -100%;
	right: -100%;
	bottom: 0;
	height: 100%;
	width: auto;
	margin: auto;
	border-radius: 0;
}
.list__post.lite li a div {
	width: 67%;
}
.list__post.lite li a div span {
	font-size: 0.5em;
	margin-bottom: 0.25em;
}
.list__post.lite li a div h5 {
	font-size: 0.75em;
	text-align: left;
	margin-bottom: 0;
}
@media screen and ( max-width:599px) {
	.list__post li a {
		align-items: flex-start;
	}
	.list__post li a figure {
		width: 30%;
		border-radius: 0.5em;
	}
	.list__post li a > div {
		width: calc(100% - 32%);
	}

	.list__post li a > div > div {
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: 0;
	}
	.list__post li a > div > div > span {
		font-size: 0.5em;
	}

	.list__post li a > div h5 {
		font-size: 0.8em;
		margin: 0;
	}
	.list__post li a > div p {
		display: none;
	}

}


/* ---------------------------------------------- .mainbox.list__post__top -- */
.sp_banner.spOnly a img {
	width: 100%;
	margin-bottom: 1em;
}
.mainbox.list__post__top {
	margin: 1.5em 0 3em;
}
.mainbox.list__post__top ul {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 1em;
}
.mainbox.list__post__top ul li {
	max-width: calc(100% / 3);
}
.mainbox.list__post__top ul li a {
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.mainbox.list__post__top ul li a figure {
	position: relative;
	margin-bottom: 0.5em;
	aspect-ratio: 4 / 3;
	position: relative;
	width: 100%;
	overflow: hidden;
}
.mainbox.list__post__top ul li a figure img {
	width: auto;
	height: 100%;
	position: absolute;
	left: -100%;
	right: -100%;
	margin: auto;
}
.mainbox.list__post__top ul li a figure p {
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 0.6em;
	display: flex;
	align-items: center;
	gap: 0.25em;
}
.mainbox.list__post__top ul li a:hover figure p {
	color: var(--co-base);
}
.mainbox.list__post__top ul li a figure > span {
	background: var(--co-main);
	padding: 0.25em 0.5em 0.35em;
	color: var(--co-base);
	font-size: 0.5em;
	border-radius: 0.25em;
	position: absolute;
	top: 0.25em;
	left: 0.25em;
	line-height: 1.4;
	FONT-WEIGHT: 200;
}
.mainbox.list__post__top ul li a div {
	margin-top: auto;
	margin-bottom: auto;
}
.mainbox.list__post__top ul li a div h5 {
	text-align: left;
	font-size: 0.85em;
}
.mainbox.list__post__top ul li a div p {
	font-size: 0.75em;
	color: #666;
	-webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 0));
	mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 0));
}
.mainbox.list__post__top ul li a > p.more {
	border: 1px solid var(--co-main-mid);
	margin-top: 0.25em;
	text-align: center;
	width: auto;
	display: inline-flex;
	font-size: 0.875em;
	color: var(--co-main-mid);
	line-height: 1.4;
	padding: 0.3em 1em;
	transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}
.mainbox.list__post__top ul li a:hover > p.more {
	background-color: var(--co-main-mid);
	color: var(--co-white);
}
.moreCate {
	margin-top: 1.5em;
	display: inline-block;
}
.moreCate a {
	display: flex;
	align-items: center;
	gap: 0.25em;
	padding: 0.5em 3em;
	font-size: 0.875em;
	border-radius: 5rem;
	transition: color 0.2s ease-in-out, opacity 0.2s ease-in-out;
}
.moreCate a:hover {
	color: var(--co-base);
}
.moreCate a i {
	position: relative;
	font-size: inherit;
	min-width: 1.3em;
	min-height: 1.3em;
}
.moreCate a i::before,
.moreCate a i::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
.moreCate a i::before {
	border: 3px solid var(--co-main);
	border-left: 0;
	border-bottom: 0;
	z-index: 2;
	width: 40%;
	height: 40%;
	transform: rotate(45deg);
	left: -0.1em;
}
.moreCate a i::after {
	background: var(--co-base);
	z-index: 1;
	border-radius: 5rem;
}
@media screen and ( max-width:599px) {
	.mainbox.list__post__top ul {
		flex-direction: column;
	}
	.mainbox.list__post__top ul li {
		width: 100%;
		max-width: 100%;
	}
}


/* ----------------------------------------------------------- .link__page -- */
.link__page > ul {
	display: flex;
	flex-wrap: nowrap;
	gap: 0.5em;
}
.link__page > ul li {
	width: 10%;
	flex-grow: 1;
	max-width: calc(50% - 0.25em);
}
.link__page > ul li.next {
	text-align: right;
}
.link__page > ul li a {
	background: var(--co-white);
	border-radius: 20em 3em 3em 20em;
	font-size: 0.875em;
	padding: 1em 1em 1em 2em;
	color: var(--co-main);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.link__page > ul li.next a {
	border-radius: 3em 20em 20em 3em;
	padding: 1em 2em 1em 1em;
}
.link__page > ul li a p {
	opacity: 0.7;
	margin-bottom: 0.35em;
	font-size: 0.75em;
}
.link__page > ul li a h5 {
	line-height: 1.2;
	margin: 0;
}


/* ----------------------------------------------------------------- aside -- */
.sidebnr > div {
	padding-bottom: 2em;
}
.sidebnr > div > ul.bnrList {
	display: flex;
	flex-direction: column;
	gap: 1em;
}
.sidebnr > div a img {
	transition: opacity 0.2s linear;
	width: 100%;
}
.sidebnr > div a img:hover {
	opacity: 0.7;
}
.sidebnr > div a p {
	text-align: left;
	font-size: 0.75em;
	line-height: 1.6;
	color: #454545;
	padding-top: 0.5em;
}
.sidebnr > div .titleBorder {
	margin-top: 0;
}

@media screen and ( max-width:959px ) {
	.sidebnr > div > ul.bnrList {
		flex-direction: row;
	}
	.sidebnr > div > ul.bnrList li {
		width: calc( 100% / 2 );
		gap: 0.5em;
	}
}


/* --------------------------------------------------- fixcta(mobile only) -- */
@media screen and ( max-width:599px) {
	.fixcta {
		position: fixed;
		display: flex;
		flex-direction: row;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 80px;
		font-size: 15px;
		font-weight: bold;
		font-family: 'Shin Go Heavy';
		color: #fff;
		line-height: 1.4;
		z-index: 3;
	}
	 .fixcta .lineacc {
		display: flex;
		width: 35%;
		background: #07b53b;
		padding: 0 1.0rem;
		height: 80px;
        align-items: center;
		justify-content: center;
	}
	.fixcta .lineacc a figure{
		text-align: center;
	}
	.fixcta .lineacc.type {background: #075fb5;}
	.fixcta .lineacc.inq {background: #c30;}
	.fixcta .subscribe {
		display: table;
		width: 100%;
		background: #0a931b;
	}
	.fixcta .subscribe a{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 80px;
	}
	.fixcta .lineacc a figure img,
	.fixcta .subscribe a figure img {
		width: 35px;
	}
	.fixcta .lineacc a p,
	.fixcta .subscribe a p {
		padding-left: 0;
		text-align: center;
	}
	.fixcta .lineacc a p span,
	.fixcta .subscribe a p span {
		font-size: 12px;
		font-weight: normal;
		font-family: 'Shin Maru Go Regular';
	}
}


/* ----------------------------------------------------------- .list__text -- */
.list__text {
	display: flex;
	flex-direction: column;
	gap: 0.15em;
	font-size: 0.875em;
}
.list__text li {
	overflow: hidden;
}
.list__text li:first-of-type {
	border-top-left-radius: 1em;
	border-top-right-radius: 1em;
}
.list__text li:last-of-type {
	border-bottom-left-radius: 1em;
	border-bottom-right-radius: 1em;
}
.list__text li a {
	background: var(--co-white);
	padding: 0.5em 1em;
	text-align: left;
	position: relative;
}
.list__text li a::after {
	content: "";
	position: absolute;
	width: 0.6em;
	height: 0.6em;
	top: 0;
	right: 1em;
	bottom: 0;
	margin: auto;
	border: 3px solid var(--co-main);
	border-left: none;
	border-bottom: none;
	transform: rotate(45deg);
}


/* --------------------------------------------------------- .list__border -- */
.list__border {
	font-size: 0.75em;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	line-height: 1;
}
.list__border li a {
	border: 1px solid var(--co-white);
	background: var(--co-white);
	border-radius: 0.75em;
	padding: 0.5em;
}


/* ---------------------------------------------------------- .searchWrapp -- */
.searchWrapp form {
	display: flex;
	flex-direction: row;
	gap: 0.1em;
	justify-content: space-between;
	border-radius: 0.7em;
	overflow: hidden;
}
.searchWrapp form label {
	display: none;
}
.searchWrapp form input {
	border: none;
}
.searchWrapp form input[type="submit"] {
	background: var(--co-main);
	color: var(--co-base);
	padding: 0.5em 1em;
	font-size: 0.85em;
}
.searchWrapp form input#s {
	width: 50%;
	flex-grow: 1;
	padding: 0.25em 0.25em 0.25em 0.75em;
	outline: none;
}
.searchWrapp form input#searchsubmit {
	background-color: var(--co-text-dark);
	color: var(--co-base);
	font-size: 1.75em;
	padding: 0.3em;
	cursor: pointer;
	transition: opacity 0.2s ease-in-out;
}
.searchWrapp form input#searchsubmit:hover {
	opacity: 0.6;
}


/* ---------------------------------------------------------- #homeSlider -- */
#homeSlider {
	padding: 0;
}
#homeSlider .swiper-slide {
	max-width: calc(1198px - 2em);
	aspect-ratio: 7 / 3;
	display: flex;
	opacity: 0.5;
	transition: opacity 0.2s ease-in-out;
}
#homeSlider .swiper-slide.swiper-slide-active {
	opacity: 1;
}
#homeSlider .swiper-slide a {
	height: 100%;
	width: 100%;
	color: var(--co-base);
	text-align: left;
}
#homeSlider .swiper-slide a .homeSlider__txt {
	position: relative;
	z-index: 1;
	font-size: 1em;
	width: 22em;
	margin: 0;
	padding: 2em;
	background: rgba(0, 0, 0, 0.6);
	pointer-events: auto;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	opacity: 0.2;
	transition: opacity 0.2s ease-in-out;
}
#homeSlider .swiper-slide.swiper-slide-active a .homeSlider__txt {
	opacity: 1;
}
#homeSlider .swiper-slide a .homeSlider__txt h3 {
	margin: 0;
	padding: 0;
	border: none;
	width: auto;
	background: var(--co-main);
	font-size: 0.6em;
	font-weight: normal;
	line-height: 1.1;
	padding: 0.5em 1em;
	border-radius: 0.25em;
	margin-bottom: 1em;
}
#homeSlider .swiper-slide a .homeSlider__txt h2 {
	margin: 0;
	padding: 0;
	font-size: 1.05em;
	line-height: 1.4;
	margin-bottom: 0.7em;
}
#homeSlider .swiper-slide a .homeSlider__txt p.content {
	font-size: 0.75em;
	-webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 0));
	        mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 0));
}
#homeSlider .swiper-slide a .homeSlider__txt p.more {
	font-size: 0.75em;
	border: 1px solid var(--co-base);
	padding: 0.5em 1em;
	line-height: 1.2;
}
#homeSlider .swiper-slide a .homeSlider__img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
}
#homeSlider .swiper-slide a .homeSlider__img img {
	position: absolute;
	top: -100%;
	bottom: -100%;
	margin: auto;
	width: 100%;
}
@media screen and ( max-width:959px ) {
	#homeSlider .swiper-slide a .homeSlider__txt {
		padding: 2em 1em 2em 3em;
	}
}
@media screen and ( max-width:599px) {
	#homeSlider .swiper-slide {
		max-width: 100%;
		/* aspect-ratio: 7 / 5; */
		aspect-ratio: unset;
	}
	#homeSlider .swiper-slide a .homeSlider__txt {
		width: 100%;
		position: absolute;
		bottom: 0;
		padding: 0.5em 1em;
		height: auto;
	}
	#homeSlider .swiper-slide a .homeSlider__txt h3,
	#homeSlider .swiper-slide a .homeSlider__txt p.content,
	#homeSlider .swiper-slide a .homeSlider__txt p.more {
		display: none;
	}
	#homeSlider .swiper-slide a .homeSlider__txt h2 {
		font-size: 0.85em;
		margin: 0;
	}
	#homeSlider .swiper-slide a .homeSlider__img {
		position: relative;
	}
	#homeSlider .swiper-slide a .homeSlider__img img {
		position: relative;
	}
}


.swiper-button-prev ,
.swiper-button-next {
	width: 1em;
	height: 1em;
	font-size: 2rem;
	top: 0;
	bottom: 0;
	margin: auto;
	background: var(--co-main);
	border: 1px solid var(--co-base);
	transition: background 0.2s ease-in-out;
}
.swiper-button-prev {
	left:  calc((100% - 1200px )/ 2);
	right: auto;
}
.swiper-button-next {
	left:  auto;
	right: calc((100% - 1200px )/ 2);
	transform: rotate(180deg);
}
.swiper-button-next:after,
.swiper-button-prev:after {
	content: "";
	width: 1em;
	height: 1em;
	font-size: 0.4em;
	border: 3px solid var(--co-base);
	border-bottom: 0;
	border-left: 0;
	transform: rotate(-135deg);
	right: 0.5em;
	position: absolute;
	transition: border-color 0.2s ease-in-out;
}
.swiper-button-prev:hover ,
.swiper-button-next:hover {
	background: var(--co-base);
}
.swiper-button-prev:hover::after ,
.swiper-button-next:hover::after {
	border-color: var(--co-main);
}
@media screen and ( max-width:959px ) {
	.swiper-button-prev {
		left: 0;
		border-left: none;
	}
	.swiper-button-next {
		right: 0;
		border-left: none;
	}
}


/* ---------------------------------------------------------------- .pager -- */
.pager {
	display: flex;
	justify-content: center;
	gap: 0.5em;
	font-size: 1em;
	margin-top: 1em;
}
.pager span a {
	width: 2em;
	height: 2em;
	font-size: inherit;
	background: var(--co-white);
	border: 1px solid var(--co-main);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4em;
	color: var(--co-main);
	transition: background 0.2s ease-in-out, border 0.2s ease-in-out, color 0.2s ease-in-out;
}
.pager span a:hover,
.pager span a.active {
	background: var(--co-main);
	border: 1px solid var(--co-white);
	color: var(--co-white);
}
@media screen and ( max-width:599px) {
	.pager {
		margin-top: 0;
	}
}

.wp-pagenavi {
    display: flex;
    justify-content: center;
    gap: 0.5em;
    font-size: 1em;
    margin-top: 1em;
}
.wp-pagenavi > * {
	width: 2em;
	height: 2em;
	font-size: inherit;
	background: var(--co-white);
	border: 1px solid var(--co-main);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4em;
	color: var(--co-main);
	transition: background 0.2s ease-in-out, border 0.2s ease-in-out, color 0.2s ease-in-out;
}
.wp-pagenavi > a {
	background: var(--co-main);
	color: var(--co-white);
}
.wp-pagenavi > a:hover {
	background: var(--co-white);
	color: var(--co-main);
}
.wp-pagenavi > a.first,
.wp-pagenavi > a.last {
	width: 3.5em;
}
.wp-pagenavi > span.extend {
	width: auto;
	border: 0;
	background: transparent;
}


/* -------------------------------------------------------------- .ctaArea -- */
.ctaArea {
	border: 2px solid var(--co-sub1);
	margin-top: 1em;
	font-size: 1rem;
	background: var(--co-white);
	border-radius: 0.5em;
}
.ctaAreaHead {
	background: var(--co-sub1);
	padding: 0.5em;
	text-align: center;
	font-weight: bold;
}
.ctaAreaHead span {
	font-size: 0.75em;
	color: var(--co-white);
}
.ctaAreaHead p {
	color: var(--co-sub2);
	font-size: 1.5em;
	line-height: 1.3;
}
.ctaAreaMain > div {
	padding: 1.25em;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.ctaAreaMain > div dl {
	width: calc(100% / 3 - 0.25em);
	border-radius: 0.75em;
	overflow: hidden;
}
.ctaAreaMain > div dl dt img {
	width: 100%;
	border-radius: 0.75em;
}
.ctaAreaMain > div dl dd h4 {
	color: var(--co-main);
	font-size: 0.75em;
	text-align: center;
	margin-top: 0.5em;
	margin-bottom: 0;
}
.ctaAreaMain > div dl dd h3 {
	margin-top: 0.25em;
	font-size: 1em;
	line-height: 1.3;
	text-align: center;
	border: 0;
	padding: 0;
	margin: 0;
}
.ctaAreaMain > div > p {
	width: 100%;
	margin-top: 0.5em;
	font-size: 1.75em;
	text-align: center;
}
.ctaAreaMain > div > p a {
	background: var(--co-main);
	width: 90%;
	padding: 0.25em;
	border-radius: 0.3em;
	margin: auto;
	color: var(--co-white);
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.2em;
	line-height: 1.5;
}
.ctaAreaMain > div > p a small {
	background: var(--co-white);
	color: var(--co-main);
	font-size: 0.5em;
	padding: 0.25em 0.5em;
	border-radius: 30em;
	line-height: 1.2;
}
@media screen and ( max-width:599px) {
	.ctaAreaHead p {
		line-height: 1.3;
		font-size: 1em;
	}
	.ctaAreaMain > div {
		gap: 0.5em;
	}
	.ctaAreaMain > div dl {
		width: 100%;
		display: flex;
		justify-content: space-between;
	}
	.ctaAreaMain > div dl dt {
		width: 30%;
	}
	.ctaAreaMain > div dl dd {
		width: 68%;
	}
	.ctaAreaMain > div dl dd h4 {
		font-size: 0.75em;
		margin-top: 0;
		text-align: left;
	}
	.ctaAreaMain > div dl dd h3 {
		font-size: 0.75em;
		text-align: left;
	}
	.ctaAreaMain > div > p {
		font-size: 1.15em;
		margin-top: 0;
	}
	.ctaAreaMain > div > p a {
		padding: 0.75em 0.25em;
		line-height: 1.4;
		flex-direction: column;
		gap: 0.05em;
		width: 100%;
	}
}



/* -------------------------------------------------------------- .ctaAreaⅡ -- */
.ctaArea2 {
	border: 5px solid #07b53b;
	margin-top: 1em;
	font-size: 1rem;
	background: var(--co-white);
	border-radius: 0.5em;
}
.ctaArea2Head {
	background: #07b53b;
	padding: 1.25em 0.5em;
	text-align: center;
	font-weight: bold;
}
.ctaArea2Head span {
	font-size: 1.2em;
	color: var(--co-white);
}
.ctaArea2Head p {
	font-size: 1.6em;
	font-family: 'Shin Go Heavy';
	color: #fff;
	line-height: 1.3;
}
.ctaArea2Main > div {
	padding: 1.25em;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.ctaArea2Main > div dl {
	width: calc(100% / 3 - 0.25em);
	border-radius: 0.75em;
	overflow: hidden;
}
.ctaArea2Main > div dl dt img {
	width: 100%;
	border-radius: 0.75em;
}
.ctaArea2Main > div dl dd h4 {
	color: var(--co-main);
	font-size: 0.75em;
	text-align: center;
	margin-top: 0.5em;
	margin-bottom: 0;
}
.ctaArea2Main > div dl dd h3 {
	margin-top: 0.25em;
	font-size: 1em;
	line-height: 1.3;
	text-align: center;
	border: 0;
	padding: 0 0 1.5rem;
	margin: 0;
}
.ctaArea2Main > div > p {
	width: 100%;
	margin-top: 0.5em;
	font-size: 1.75em;
	text-align: center;
}
.ctaArea2Main > div > p a {
	background: var(--co-main);
	width: 90%;
	padding: 0.25em;
	border-radius: 0.3em;
	margin: auto;
	color: var(--co-white);
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.2em;
	line-height: 1.5;
}
.ctaArea2Main > div > p a small {
	background: var(--co-white);
	color: var(--co-main);
	font-size: 0.5em;
	padding: 0.25em 0.5em;
	border-radius: 30em;
	line-height: 1.2;
}
.ctaArea2Am {
	background: #ff9839;
	padding: 1.25rem 0 1.0rem;
	margin: -0.5rem 0 1.0rem;
	text-align: center;
	color: #fff;
	width: 100%;
	border-radius: 5px;
	letter-spacing: 1px;
}
.ctaArea2Am strong {
	font-size: 1.5em;
	font-weight: bold;
	color: #fff;
}
.ctaArea2Am strong span {
	font-size: 2.4rem;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	color: #ff0;
}


@media screen and ( max-width:599px) {
	.ctaArea2Head p {
		line-height: 1.4;
		font-size: 0.95em;
	}
	.ctaArea2Main > div {
		gap: 0.5em;
	}
	.ctaArea2Main > div dl {
		width: 100%;
		display: flex;
		justify-content: space-between;
	}
	.ctaArea2Main > div dl dt {
		width: 30%;
		margin-right: 0.5rem;
	}
	.ctaArea2Main > div dl dd {
		width: 68%;
	}
	.ctaArea2Main > div dl dd h4 {
		font-size: 0.75em;
		margin-top: 0;
		text-align: left;
	}
	.ctaArea2Main > div dl dd h3 {
		font-size: 0.75em;
		text-align: left;
	}
	.ctaArea2Main > div > p {
		font-size: 1.15em;
		margin-top: 0;
	}
	.ctaArea2Main > div > p a {
		padding: 0.75em 0.25em;
		line-height: 1.4;
		flex-direction: column;
		gap: 0.05em;
		width: 100%;
	}
	.ctaArea2Head span {
		font-size: 0.85em;
	}
	.ctaArea2Head {
		padding: 0.5em 0 1.0em;
	}
	.ctaArea2Main > div dl dd h3 {
		padding: 0 0 0.25rem;
	}
	.ctaArea2Am {
		letter-spacing: unset;
		font-size: 0.65em;
		padding: 1rem 0 0.5rem;
		margin: 0 0 1rem;
		border-radius: 0px;
	}
}

/* --------------------------------------------------- .entry-content_line -- */
.entry-content_line a{
	background: #07b53b;
    width: 300px;
    padding: 1em 0.25em;
    border-radius: 0.3em;
    margin: auto;
    color: var(--co-white);
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.2em;
    line-height: 1.5;
	letter-spacing: .05em;
}


/* -------------------------------------------------------------- .simArea -- */
.simArea {
	display: none;
	border: 2px solid var(--co-main);
	margin-top: 1.5em;
	font-size: 1rem;
	background: var(--co-white);
	border-radius: 0.5em;
}
.simAreaHead {
	background: var(--co-main);
	padding: 0.5em;
	text-align: center;
	font-weight: bold;
}
.simAreaHead p {
	color: var(--co-white);
	font-size: 1.5em;
	line-height: 1.3;
}
.simAreaMain > ul {
	padding: 1.25em;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.simAreaMain > ul a {
	display: flex;
	transition: opacity 0.2s ease-in-out;
}
.simAreaMain > ul a:hover {
	opacity: 0.7;
}
.simAreaMain > ul a > img {
	width: 100%;
}
.simAreaMain > ul li {
	width: calc(100% / 2 - 0.25em);
	border-radius: 0.75em;
	overflow: hidden;
}
@media screen and ( max-width:599px) {
	.simAreaHead p {
		line-height: 1.3;
		font-size: 1em;
	}
	.simAreaMain > ul {
		flex-direction: column;
		gap: 0.75em;
	}
	.simAreaMain > ul li {
		width: 100%;
	}
}

/* ------------------------------------------------------ .column_document -- */
.column_document {
	--co-main:      #2588ae;
}
.column_document .col.single {
	margin-bottom: 3em;
}
.column_document.wrapp h2 {
	font-size: 2.2em;
	margin-top: 1em;
	padding-bottom: 0;
	margin-bottom: 0;
}
.column_document.wrapp h1.titleBorder {
	width: auto;
	display: inline-block;
	text-align: center;
	margin-bottom: 0;
	margin-top: 0.75em;
}
.column_document.wrapp .titleBorder::after {
	margin: auto;
	right: 0;
}

.column_document.wrapp figure.eyecatch {
	border: 3px solid var(--co-main-dark);
}
.column_document.wrapp h1 {
	margin-bottom: 0.5em;
	margin-top: 0;
}
.column_document.wrapp h1 span {
	display: block;
	font-size: 0.75em;
	opacity: 0.875;
}
.column_document.wrapp .doc_description {
	padding-bottom: 0.5em;
}
.column_document.wrapp .doc_learn {
	font-size: 0.875em;
}
.column_document.wrapp h5 {
	margin-bottom: 0;
	padding-left: 1.25em;
	position: relative;
}
.column_document.wrapp h5::before {
	content: "";
	font-size: 1.1em;
	width: 1em;
	height: 1em;
	display: flex;
	background: var(--co-main-dark);
	border-radius: 5em;
	border: 2px solid var(--co-base);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.column_document.wrapp form.mktoForm {
	border-radius: 2em;
	overflow: hidden;
}
.column_document.wrapp form.mktoForm .mktoFormRow fieldset > .mktoFormRow {
	margin: 0 2em !important;
}
.column_document.wrapp form.mktoForm .mktoFormRow fieldset > legend {
	padding: 1em 0;
	border-top: none;
}
.column_document.wrapp form.mktoForm .mktoFormRow fieldset {
	padding: 0em 0em 0em 0em!important;
}
.column_document.wrapp form.mktoForm .mktoFormRow a {
	color: var(--co-main);
	text-decoration: underline;
	display: inline-block;
}


.column_document.wrapp .formComp {
	color: var(--co-red);
}
.column_document.wrapp .formCompTxt {
	background: var(--co-white);
	padding: 1em;
	margin-top: 1em;
	overflow: hidden;
	border-radius: 1em;
}

@media screen and ( max-width:599px) {
	.column_document.wrapp h2 {
		font-size: 1.5em;
	}
	.column_document.wrapp form.mktoForm .mktoFormRow fieldset > .mktoFormRow {
		margin: 0 !important;
	}
}
