@charset "utf-8";

/*	ビジュアル
------------------------------*/
#visual {
	padding: 90px 0;
	margin-bottom: 60px;
	background: url(../img/bg_navy.png) repeat left top;
	overflow: hidden;
}
#visual .visual-hd {
	margin-bottom: 0;
	color: #fff;
}
#visual .visual-hd-en {
	color: #fff;
    font-size: clamp(1.75rem, -0.278rem + 8.65vw, 3.875rem);
}
#visual .visual-hd-ja {
    font-size: clamp(0.875rem, 0.517rem + 1.53vw, 1.25rem);
}
#visual .visual-hd-ja::before {
	vertical-align: middle;
	background-color: #fff;
}
#visual .container::after {
	content: "";
	display: block;
	width: 243px;
	height: 360px;
	background: url(../img/logomark_sub.svg) no-repeat right center;
	background-size: contain;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto 0;
}
@media only screen and (max-width: 480px) {

#visual {
	padding: 60px 0;
	margin-bottom: 30px;
	background-size: 50px;
}
#visual .container::after {
	width: 148px;
    height: 220px;
}

}


/*	タイトル
------------------------------*/
#news {
    justify-content: space-between;
}
#article {
	width: calc(100% - 400px);
}
.news-title {
	margin-bottom: 16px;
    font-size: 1.75rem;
    font-weight: var(--font-weight-600);
    line-height: 1.6;
}
.news-date {
    display: inline-block;
    margin-right: 40px;
    font-family: var(--font-family-secondary);
    font-weight: var(--font-weight-400);
    font-size: var(--font-size-x-small);
    letter-spacing: 0.32em;
    line-height: 1;
}
.news-tag {
	display: inline-block;
}
.news-tag-item {
	display: inline-block;
}
.news-tag-item + .news-tag-item::before {
	content: ",";
	display: inline-block;
	margin: 0 6px;
}
.news-tag a {
    font-size: var(--font-size-small);
	font-weight: var(--font-weight-600);
}
.news-tag a:hover {
	text-decoration: underline;
}
@media only screen and (max-width: 480px) {

.news-title {
    font-size: 1.125rem;
}
.news-date {
	margin-right: 20px;
}

}

/*	サイドバー
------------------------------*/
#sidebar {
	width: 320px;
}
.sidebar-inner {
	position: -webkit-sticky;
	position: sticky;
	top: 40px;
}
.sidebar-item {
	margin-top: 40px;
}
.sidebar-item:first-child {
	margin-top: 0;
}
.sidebar-hd {
	padding: 8px 20px;
    margin-bottom: 16px;
	color: #fafafa;
    font-weight: var(--font-weight-600);
	-webkit-border-radius: 4px;
    border-radius: 4px;
    background-color: var(--color-grey);
    position: relative;
}
#sidebar ul {
	padding-left: 20px;
}
#sidebar li::before {
	content: "-";
	display: inline-block;
	margin-right: 6px;
}
#sidebar li a {
	color: var(--color-black-txt);
	font-size: var(--font-size-small);
	font-weight: var(--font-weight-600);
}
#sidebar li a:hover {
	text-decoration: underline;
}
@media only screen and (max-width: 1024px) {

#article {
	width: calc(100% - 260px);
}
#sidebar {
	width: 220px;
}

}
@media only screen and (max-width: 768px) {

#article {
	width: 100%;
}
#sidebar {
	width: 100%;
    margin-top: 60px;
}

}


/*	本文
------------------------------*/
.contents_body {
	margin-top: 16px;
    padding-top: 80px;
	border-top: 1px solid var(--color-grey);
}
.contents_body h2 {
	margin: 4rem auto 1.5rem;
    padding: 2px 26px;
    font-size: clamp(1.25rem, 1.029rem + 0.94vw, 1.5rem);
	font-weight: var(--font-weight-600);
	line-height: 1.6;
    border-left: 6px solid var(--color-navy);
}
.contents_body h3 {
	margin: 4rem auto 1.5rem;
    padding: 2px 26px;
    font-size: clamp(1rem, 0.89rem + 0.47vw, 1.125rem);
	font-weight: var(--font-weight-600);
	line-height: 1.6;
    border-left: 4px solid var(--color-grey);
}
.contents_body h4,
.contents_body h5,
.contents_body h6 {
	margin: 1.5rem auto;
    padding: 0 30px 8px;
    font-size: clamp(1rem, 0.89rem + 0.47vw, 1.125rem);
	font-weight: var(--font-weight-600);
	line-height: 1.6;
    border-bottom: 1px solid var(--color-grey);
}
.contents_body a,
.contents_body a:visited {
	text-decoration: underline;
}
.contents_body a:hover,
.contents_body .base_btn a {
	text-decoration: none;
}
.contents_body a[style] {
	padding: 8px 20px;
}
.contents_body p,
.contents_body ul,
.contents_body ol,
.contents_body table,
.contents_body .wp-block-image,
.contents_body .wp-block-table,
.contents_body .wp-block-gallery,
.contents_body .wp-block-buttons,
.contents_body .wp-block-embed {
	margin: 1.5rem auto;
	position: relative;
}
.contents_body > *:first-child {
    margin: 0 auto 1.5rem;
}
.contents_body p {
	line-height: 2.2;
}
.contents_body .has-inline-color {
	display: inline-block;
	padding: 2px 12px;
}
.contents_body ul li {
	list-style-type: disc;
	margin-left: 20px;
	margin-top: 6px;
}
.contents_body ol li {
	list-style-type: decimal;
	margin-left: 20px;
	margin-top: 6px;
}
.contents_body ul li:first-child,
.contents_body ol li:first-child {
	margin-top: 0;
}
.contents_body ul ul li {
	list-style-type: circle;
}
.contents_body ul ul ul li {
	list-style-type: square;
}
.contents_body ol ol li {
	list-style-type: lower-roman;
}
.contents_body ol ol ol li {
	list-style-type: lower-latin;
}
.contents_body .wp-block-table table {
	margin: 0 auto;
}
.contents_body table th,
.contents_body table td {
	padding: 16px 30px;
    border: none;
    border-bottom: 1px solid var(--color-black-border);
}
.contents_body table figcaption {
	margin-top: 6px;
	text-align: right;
}
.contents_body table td p,
.contents_body table td ul,
.contents_body table td ol {
	margin: 0;
}
.contents_body .wp-block-image,
.contents_body .wp-block-gallery {
	overflow: hidden;
	zoom:1;
	font-size: inherit;
}
.contents_body .wp-block-image figcaption,
.contents_body .wp-block-gallery .blocks-gallery-caption {
	margin-top: 10px;
	line-height: 1.4;
	text-align: center;
}
.contents_body .wp-block-gallery.has-nested-images {
	display: flex;
}
#news .base-btn {
	margin-top: 80px;
}
@media only screen and (max-width: 480px) {

.contents_body {
    padding-top: 40px;
}
.contents_body h2 {
	margin: 2rem auto 1.5rem;
	padding: 2px 16px;
}
.contents_body h3 {
	margin: 2rem auto 1.5rem;
    padding: 2px 12px;
}
.contents_body h4,
.contents_body h5,
.contents_body h6 {
	margin: 1rem auto;
    padding: 0 12px 4px;
}
.contents_body p,
.contents_body ul,
.contents_body ol,
.contents_body table,
.contents_body .wp-block-image,
.contents_body .wp-block-table,
.contents_body .wp-block-gallery,
.contents_body .wp-block-buttons,
.contents_body .wp-block-embed {
	margin: 1rem auto;
}
.contents_body table {
	overflow-x: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
}
.wp-block-table .has-fixed-layout {
	table-layout: auto;
}
.contents_body table th,
.contents_body table td {
	padding: 12px;
}

}

