@charset "UTF-8";

/* Post Contents
============================================================================= */

/* area default */
:is(#tinymce,.cwwl_contents) {
	--cwwl-mt: 8.0rem; /* layout default margin */
	font-feature-settings: "palt";
	font-size: 1.4rem;
	font-weight:300;
	letter-spacing: .16em;
	line-height: 2.2;

	p {
		color:var(--bc_gray);
	}

	@media (width <= 640px) {
		--cwwl-mt: 4.8rem; /* layout default margin */
	}
}

/* youtube */
:is(#tinymce,.cwwl_contents) span[data-mce-p-src*=youtube] {
	display: block;
	width: 100%;
}
:is(#tinymce,.cwwl_contents) iframe[src*=youtube] {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
}

/* p default margin */
:is(:is(#tinymce,.cwwl_contents,blockquote,._cww-text) > :is(p + *:not(._cww-layout,blockquote,h2,h3,h4),*:not(h2,h3,h4) + p)) {
	margin-top: 1.2em;
}
@media (width <= 640px) {
	:is(:is(#tinymce,.cwwl_contents,blockquote,._cww-text) > :is(p + *:not(h2,h3,h4),*:not(h2,h3,h4) + p)) {
	}
}

/* marker */
:is(#tinymce,.cwwl_contents) .marker01 {
	background-image: linear-gradient(transparent .4lh, #E3CA80 .4lh);
}
:is(#tinymce,.cwwl_contents) .marker02 {
	background-image: linear-gradient(transparent .4lh, #F1E5BF .4lh);
}
:is(#tinymce,.cwwl_contents) .marker03 {
	background-image: linear-gradient(to top, #C89600 2px, transparent 2px);
}
:is(#tinymce,.cwwl_contents) .marker04 {
	background-image: linear-gradient(to top, #C89600 1px, transparent 1px);
}

/* minify */
:is(#tinymce,.cwwl_contents) .minify {
	font-size:1.3rem;
}
:is(#tinymce,.cwwl_contents) > p:has(.minify) {
	line-height:1.5;
}
:is(:is(#tinymce,.cwwl_contents) .minify) {
	color:var(--cc-gray-C-hex);
}
@media (width <= 640px) {
	:is(#tinymce,.cwwl_contents) .minify {
	font-size:1.0rem;
	}
}


/* h2-4 tag setting */
:is(#tinymce,.cwwl_contents) :is(h2,h3,h4):first-child {
	margin-top: 0;
}
:is(:is(#tinymce,.cwwl_contents) :is(h2,h3,h4)) {
	font-family:var(--ff_min);
	font-weight:500;
}
:is(#tinymce,.cwwl_contents) :is(h2,h3,h4) + :is(ul,ol,blockquote,._cww-layout) {
	margin-top: 0 !important;
}
/* h2 */
:is(:is(#tinymce,.cwwl_contents) h2) {
	margin-block: 8.0rem 1.6rem;
	border-bottom:1px solid var(--bc_gold);
	padding-left:2.4rem;
	padding-bottom:1.8rem;
	font-size: 2.0rem;
	line-height: 2;
	letter-spacing: .15em;
	flex-shrink: 0;
	background-image: url(../img/common/ico_headmark_star.svg);
	background-position: left calc(.5lh - 0.8rem);
	background-repeat: no-repeat;
	background-size: 1.6rem 1.6rem;

	@media (width <= 640px) {
		margin-block: 4.8rem 1.6rem;
		font-size: 1.8rem;
	}
}

/* h3 */
:is(:is(#tinymce,.cwwl_contents) h3) {
	margin-block: 8.0rem 1.6rem;
	font-size: 1.8rem;
	line-height: 2;
	letter-spacing: .15em;
	color:var(--bc_accent);

	@media (width <= 640px) {
		margin-block: 4.8rem 1.6rem;
	}
}
/* h4 */
:is(:is(#tinymce,.cwwl_contents) h4) {
	margin-block: 6.0rem 1.6rem;
	font-size: 1.6rem;
	line-height: 2;
	letter-spacing: .15em;

	@media (width <= 640px) {
		margin-block: 4.8rem 1.6rem;
	}
}

/* img setting */
:is(:is(#tinymce,.cwwl_contents) img) {
	display: block;
	max-width: 100%;
	height: auto;
}
:is(:is(#tinymce,.cwwl_contents) img.aligncenter) {
	margin-inline:auto;
}
:is(:is(#tinymce,.cwwl_contents) img.alignright) {
	margin-left:auto;
}
:is(:is(#tinymce,.cwwl_contents) p:not([class]) > img) {
	display: block;
}
._ar-auto ._cww-img img {
	max-width: 100%;
	height: auto;
}
:is(._ar-16_9,._ar-3_2,._ar-2_3,._ar-1_1) ._cww-img img {
	width: 100%;
	height: auto;
	object-fit: cover;
}
._ar-16_9 ._cww-img img {
	aspect-ratio: 16/9;
}
._ar-3_2 ._cww-img img {
	aspect-ratio: 3/2;
}
._ar-2_3 ._cww-img img {
	aspect-ratio: 2/3;
}
._ar-1_1 ._cww-img img {
	aspect-ratio: 1/1;
}
:is(#tinymce,.cwwl_contents) img[style*="--cww-iw"] {
	width:calc(var(--cww-iw) * 0.1rem);
}

/* a default */
:is(:is(#tinymce,.cwwl_contents) a:not(.cwwl-link-button, .cwwl-index-link, .cwwl-related-link)) {
	text-decoration: underline;
	word-wrap: break-word;
	color:#A89971;
}
@media (hover) {
	:is(:is(#tinymce,.cwwl_contents) a:not(.cwwl-link-button, .cwwl-index-link, .cwwl-related-link)):hover {
	text-decoration: none;
	}
	:is(:is(#tinymce,.cwwl_contents) a:not(.cwwl-link-button, .cwwl-index-link, .cwwl-related-link)):hover::before {
	transform:rotate(45deg) translate(.2em,-.2em);
	}
}
@media (width <= 640px) {
	:is(:is(#tinymce,.cwwl_contents) a:not(.cwwl-link-button, .cwwl-index-link, .cwwl-related-link))::before {
	border-top-width:1px;
	border-right-width:1px;
	}
}

/* blockquote */
:is(#tinymce,.cwwl_contents) blockquote {
	margin-block: var(--cwwl-mt) 0;
	margin-inline:0;
	padding: 4.0rem;
	background-color:var(--bc_gray_b);
}
:is(#tinymce,.cwwl_contents) blockquote > h2 {
	border-bottom:0;
	padding-bottom:0;
}
@media (width <= 640px) {
	:is(#tinymce,.cwwl_contents) blockquote {
	padding: 1.6rem;
	}
}
:is(#tinymce,.cwwl_contents) blockquote .cwwl-link:not(:first-child) {
	margin-top: 3.0rem;
}


/* ol & ul */
:is(:is(#tinymce,.cwwl_contents) :is(ul,ol):not([class*="cwwl-index"])) {
	margin-top: var(--cwwl-mt);
	line-height: 1.8;
	color:var(--bc_gray);
}
:is(:is(#tinymce,.cwwl_contents) :is(ul,ol):not([class*="cwwl-index"]) > li) {
	padding-left: 2.4rem;
	position: relative;
}
:is(:is(#tinymce,.cwwl_contents) :is(ul,ol):not([class*="cwwl-index"]) > li:not(:first-of-type)) {
	margin-top: 1em;
}
@media (width <= 640px) {
	:is(:is(#tinymce,.cwwl_contents) :is(ul,ol):not([class*="cwwl-index"]) > li) {
	padding-left: 1.6rem;
	}
	:is(:is(#tinymce,.cwwl_contents) :is(ul,ol):not([class*="cwwl-index"]) > li:not(:first-of-type)) {
		margin-top: 0.6em;
	}
}

/* ol */
:is(:is(#tinymce,.cwwl_contents) ol) {
	counter-reset: num;
}
:is(:is(#tinymce,.cwwl_contents) ol li)::before {
	counter-increment: num;
	content: counter(num) ".";
	font-family:var(--ff_en);
	font-size:1.1em;
	color: var(--bc_gold);
	position: absolute;
	left: 0;
}

/* ul */
:is(:is(#tinymce, .cwwl_contents) ul:not([class*='cwwl-index'])) {
	margin-top: calc(var(--cwwl-mt) / 2);
}
:is(:is(#tinymce, .cwwl_contents) ul:not([class*='cwwl-index']) li)::before {
	content: '';
	display: inline-block;
	border-radius: 50%;
	width: 6px;
	height: 6px;
	background-color: var(--bc_gold);
	position: absolute;
	top: calc(.5lh - 3px);
	left: 0.2rem;
}
@media (width <= 640px) {
	:is(:is(#tinymce,.cwwl_contents) ul:not([class*="cwwl-index"]) li)::before {
	width: 4px;
	height: 4px;
	top: calc(.5lh - 2px);
	}
}

/* Index Layout */
.cwwl-index {
	margin-top: var(--cwwl-mt);
	position:relative;
}
.cwwl-index-heading {
	display:none;
}
.cwwl-index-parent {
	display:flex;
	flex-direction: column;
	row-gap:1em;
	line-height:1.65;
}
.cwwl-index-parent-item > .inner {
	font-family:var(--ff_min);
	font-size:2.5rem;
	font-weight:400;
}
.cwwl-index-parent-item > .inner {
	border-bottom:2px solid;
	padding-left:2.0rem;
}
.cwwl-index-parent-item > .inner > a {
	--pt:1.2rem;
	padding-left:3.6rem;
}
:is(.cwwl-index-parent-item > .inner,.cwwl-index-child-item) > a {
	display:block;
	position:relative;
	padding-block:var(--pt);
}
:is(.cwwl-index-parent-item > .inner,.cwwl-index-child-item) > a::before {
	content:"";
	border-right:1px solid;
	border-bottom:1px solid;
	width:1.0rem;
	height:1.0rem;
	transform:rotate(45deg);
	position:absolute;
	top:calc(.5lh - 1.0rem + var(--pt));
	left:0;
}
@media (hover) {
	.cwwl-index-link {
	transition-property:opacity;
	transition-duration:.3s;
	}
	.cwwl-index-link:hover {
	opacity:.8;
	}
	:is(.cwwl-index-parent-item > .inner,.cwwl-index-child-item) > a::before {
	transition-property:transform;
	transition-duration:.3s;
	}
	:is(.cwwl-index-parent-item > .inner,.cwwl-index-child-item) > a:hover::before {
	transform:rotate(45deg) translate(.2em,.2em);
	}
}
.cwwl-index-child {
	display:flex;
	flex-direction: column;
	row-gap:.5em;
}
.cwwl-index-child-item {
	border-bottom:1px solid;
	padding-left:5.6rem;
	position:relative;
}
.cwwl-index-child-item > a {
	--pt:2.0rem;
	display:block;
	padding-left:2.4rem;
}
@media (width <= 640px) {
	.cwwl-index {
	}
	.cwwl-index-heading {
	}
	.cwwl-index-parent {
	row-gap:.5em;
	}
	.cwwl-index-parent-item > .inner {
	font-size:1.5rem;
	}
	.cwwl-index-parent-item > .inner {
	border-bottom:2px solid;
	padding-left:0.4rem;
	}
	.cwwl-index-parent-item > .inner > a {
	--pt:1.0rem;
	padding-left:2.4rem;
	}
	:is(.cwwl-index-parent-item > .inner,.cwwl-index-child-item) > a {
	}
	.cwwl-index-parent-item {
	}
	.cwwl-index-parent-item > a {
	}
	.cwwl-index-child {
	}
	.cwwl-index-child-item {
	padding-left:1.4rem;
	font-size:1.4rem;
	}
	.cwwl-index-child-item > a {
	--pt:1.6rem;
	display:block;
	padding-left:2.4rem;
	}
}


/* Column Layout */
.cwwl-column {
	display: flex;
}
.cwwl-column:not(:first-child) {
	margin-top: var(--cwwl-mt);
}
.cwwl-column._img-top:not(:has(.cwwl-column-item:nth-child(2)))._ar-auto :is(.cwwl-column-item,.cwwl-column-item-img) {
	margin-inline: auto;
	width: fit-content;
}
.cwwl-column:is(._img-left,._img-right) {
	border-block:1px solid #A89971;
	padding-block:4.0rem;
}
.cwwl-column:is(._img-left,._img-right) .cwwl-column-item {
	display: flex;
	align-items: center;
	gap: 4.0rem;
}
.cwwl-column:is(._img-left,._img-right) .cwwl-column-item-img {
	flex-shrink: 0;
	width: 28.0rem;
}
.cwwl-column:is(._img-left,._img-right) .cwwl-column-item-text {
	flex: 1;
}
.cwwl-column._img-right .cwwl-column-item {
	flex-direction: row-reverse;
}
.cwwl-column._img-top .cwwl-column-item-text {
	font-size:1.4rem;
	line-height:2;
	letter-spacing: .1em;
	color:#737373;
}
@media (width > 640px) {
	.cwwl-column {
		gap: 2.4rem;
	}
	.cwwl-column._img-top .cwwl-column-item-text {
		margin-top: 1.6rem;
	}
	.cwwl-column._img-top .cwwl-column-item:first-child:last-child .cwwl-column-item-text {
		margin-inline: 4.0rem;
	}
	.cwwl-column._img-top .cwwl-column-item-text {
	}
	.cwwl-column .cwwl-column-item-text > :is(p,h2,h3,h4):first-child {
	margin-top: calc((1lh - 1em) * -.5);
	}
	.cwwl-column-item {
	flex: 1;
	}
}
@media (width <= 640px) {
	.cwwl-column {
	/* flex-direction: column; */
	}
	.cwwl-column._img-top {
	flex-direction: column;
	gap: 4.0rem;
	}
	.cwwl-column._img-top .cwwl-column-item-text {
		margin-top: 0.8rem;
	}
	.cwwl-column._img-top:has(.cwwl-column-item:nth-child(2)) .cwwl-column-item {
	margin-inline: .8rem;
	}
	.cwwl-column:is(._img-left,._img-right) {
		padding-block:1.6rem;
		padding-inline:1.0rem;
	}
	.cwwl-column:is(._img-left,._img-right) .cwwl-column-item {
		gap: 1.6rem;
	}
	.cwwl-column:is(._img-left,._img-right) .cwwl-column-item-img {
		width: 10.0rem;
	}
}

.cwwl-column-item-img:has(img[src*=post_placehold01]) {
	border: 1px solid var(--cc-green-A-hex);
}


/* Link Button Layout */
.cwwl-link {
	display: flex;
	gap: 2.0rem;
	letter-spacing: 0.07em;
}
.cwwl-link:not(:first-child) {
	margin-top: var(--cwwl-mt);
}
.cwwl-link + .cwwl-link {
	margin-top: 4.0rem;
}
@media (width > 640px) {
	.cwwl-link {
	flex-wrap: wrap;
	justify-content: center;
	}
	.cwwl-link[style*=left] {
	justify-content: flex-start;
	}
	.cwwl-link[style*=center] {
	justify-content: center;
	}
	.cwwl-link[style*=right] {
	justify-content: flex-end;
	}
}
@media (width <= 640px) {
	.cwwl-link:not(:first-child) {
	margin-top: 4.0rem;
	}
	.cwwl-link {
	align-items: center;
	flex-direction: column;
	}
	.cwwl-link[style*=left] {
	align-items: flex-start;
	}
	.cwwl-link[style*=center] {
	align-items: center;
	}
	.cwwl-link[style*=right] {
	align-items: flex-end;
	}
}
.cwwl-link-button.m-btn01 {
	border:1px solid var(--bc_gold);
}


/* Table Layout */
.cwwl-table {
	box-sizing: border-box;
	--td-bd-block:1.2rem;
	--table-pc-minwidth:100;
	margin-top: var(--cwwl-mt);
	width: 100%;
	overflow-x: auto;
	white-space: nowrap;
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
	color:var(--bc_gray);
	font-feature-settings: "palt" 0;
}
.cwwl-table[data-simplebar=init] {
	padding-bottom: 16px;
}
.cwwl-table.-fixed .cwwl-table-item {
	table-layout: fixed;
}
.cwwl-table .scroll-hint-icon {
	height: 70px;
}
.cwwl-table-item {
	box-sizing: border-box;
	border-spacing: 0;
	border-block: 1px solid var(--bc_gray_b);
	letter-spacing: 0;
}
.cwwl-table-item :is(th,td) {
	border-style: solid;
	border-width: 0px;
	border-color: var(--bc_gray_b);
	box-sizing: border-box;
	font-weight:400;
	line-height:2;
	letter-spacing: .16em;
	font-size: inherit;
	letter-spacing: inherit;
	line-height: inherit;
}
.cwwl-table-item tr:not(:last-child) :is(th,td) {
	border-bottom-width: 1px;
}
.cwwl-table-item :is(th,td):not(.-cell_header,:last-child) {
	border-right-width: 1px;
}
.cwwl-table-item :is(tr.-row_header > td,td.-cell_header) {
	font-size:1.6rem;
	line-height:2.2;
	letter-spacing: .1em;
	font-weight:400;
}
.cwwl-table-item:not(:has(tr > td:nth-child(2):last-child)) td.-cell_header,
.cwwl-table-item tr.-row_header {
	background-color:rgb(from #A89971 r g b / .2);
}
.cwwl-table-item:not(:has(tr.-row_header)):has(tr > td:nth-child(2):last-child) {
	white-space:normal;
	max-width:100%;
}
.cwwl-table-item td {
	padding-block: var(--td-bd-block);
	padding-inline: 2.8rem;
	vertical-align: middle;
	font-size: 1.4rem;
	line-height:1.8;
}
.cwwl-table .simplebar-horizontal {
	height:15px;
}
.cwwl-table .simplebar-horizontal .simplebar-scrollbar::before {
	background-color:#A89971;
	opacity:1;
}
@media (width > 640px) {
	.cwwl-table:not(.-fixed) .cwwl-table-item {
	max-width: 100%;
	white-space: unset;
	}
	.cwwl-table-item {
	margin-inline: auto;
	min-width: calc(var(--table-pc-minwidth) * 1%);
	}
	.cwwl-table-item:not(:has(tr.-row_header)):has(tr > td:nth-child(2):last-child) td.-cell_header:first-child {
		padding-left:0;
	}
	.cwwl-table-item:not(:has(tr.-row_header)):has(tr > td:nth-child(2):last-child) td:nth-child(2):last-child {
		padding-right:0;
	}
}
@media (width <= 640px) {
	.cwwl-table {
	--td-bd-block:1.2rem;
	margin-inline:-2.4rem;
	padding-inline:2.4rem;
	width:calc(100% + 4.8rem);
	}
	.cwwl-table .simplebar-wrapper {
	margin-inline:0 !important;
	width:100%;
	}
	.cwwl-table .simplebar-content {
	display:flex;
	}
	.cwwl-table .simplebar-content::after {
	flex-shrink: 0;
	width:2.4rem;
	}
	.cwwl-table-item {
	box-sizing: content-box;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	min-width: 100%;
	}
	.cwwl-table .simplebar-horizontal {
	width:calc(100% - 4.8rem);
	left:2.4rem;
	}
	.cwwl-table-item:not(:has(tr.-row_header)):has(tr > td:nth-child(2):last-child) tr {
		display:grid;
		padding-block:1.2rem;
	}
	.cwwl-table-item:not(:has(tr.-row_header)):has(tr > td:nth-child(2):last-child) tr + tr {
		border-top:1px solid var(--bc_gray_b);
	}
	.cwwl-table-item:not(:has(tr.-row_header)):has(tr > td:nth-child(2):last-child) td:first-child {
		margin-bottom:0.8rem;
	}
	.cwwl-table-item:not(:has(tr.-row_header)):has(tr > td:nth-child(2):last-child) td {
		padding-inline:0 !important;
		border-bottom-width:0 !important;
		padding-block:0;
	}
}

/* Banner Layout */
.cwwl-banner:not(:first-child) {
	margin-top: var(--cwwl-mt);
}
.cwwl-banner_item {
	margin-inline: auto;
	width: fit-content;
	position: relative;
}
.cwwl-banner-link {
	display: block;
	width: 100%;
	height: 100%;
	font-size: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.cwwl-banner-link > span {
	display: none;
}
.cwwl-banner-img {
	transition: opacity 0.5s;
}
.cwwl-banner-img img {
	max-width: 100%;
}
@media (hover) {
	.cwwl-banner:has(.cwwl-banner-link:hover) .cwwl-banner-img {
	opacity: 0.7;
	}
}


/* Related Layout */
.cwwl-related {
	margin-top: var(--cwwl-mt);
	font-size:0;
	position:relative;
	background-color:#fff;
	box-shadow:var(--shadow-B);
}
.cwwl-related_inner {
	display:flex;
	align-items: center;
	padding-block:4.0rem;
	padding-inline:3.5rem 7.0rem;
	gap:2.0rem;
	font-size:1.6rem;
	line-height:1.5;
	position:relative;
}
.cwwl-related_inner::after {
	content:"";
	display:block;
	margin-block:auto;
	width:1.6rem;
	height:3.2rem;
	background-image:url(/assets/images/common/arrow-b.svg);
	background-size:contain;
	background-repeat: no-repeat;
	position:absolute;
	inset-block:1.0rem 0;
	right:2.4rem;
}
@media (hover) {
	.cwwl-related_inner::after {
	transition-property: transform;
	transition-duration: .3s;
	}
	.cwwl-related-link:hover .cwwl-related_inner::after {
	transform:translateX(5.0rem);
	}
}
.cwwl-related-heading {
	margin:0;
	padding-bottom:.15em;
	padding-inline:1.0rem;
	background-color:var(--cc-blue-A-hex);
	color:#fff;
	font-weight:700;
	position:absolute;
	top:0;
	left:0;
}
.cwwl-related-thumbnail {
	flex-shrink: 0;
	width:14.0rem;
	height:auto;
	aspect-ratio: 3/2;
}
.cwwl-related-thumbnail img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.cwwl-related_text {
	flex:1;
	display:flex;
	flex-direction: column;
	gap:7.0rem;
}
.cwwl-related-title {
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	font-weight:700;
	font-size:1.7rem;
	line-height:1.5;
	color:var(--cc-gray-A-hex);
	-webkit-line-clamp: 1;
	overflow:hidden;
}
.cwwl-related-description {
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	margin-top:0;
	color:var(--cc-gray-F-hex);
	-webkit-line-clamp: 3;
	overflow:hidden;
}
@media (hover) {
	.cwwl-related-link {
	transition-property:opacity;
	transition-duration:.3s;
	}
	.cwwl-related-link:hover {
	opacity:.8;
	}
}
@media (width <= 640px) {
	.cwwl-related {
	}
	.cwwl-related_inner {
	gap:1.0rem;
	padding-block:3.0rem 2.0rem;
	padding-inline:1.5rem 4.0rem;
	font-size:1.0rem;
	line-height:1.6;
	}
	.cwwl-related_inner::after {
	width:1.2rem;
	height:2.4rem;
	right:1.0rem;
	}
	.cwwl-related-heading {
	padding-bottom:.1em;
	font-size:1.1rem;
	-webkit-line-clamp: 3;
	}
	.cwwl-related-thumbnail {
	flex-shrink: 0;
	width:10.0rem;
	height:auto;
	}
	.cwwl-related-thumbnail img {
	width:100%;
	height:100%;
	object-fit:cover;
	}
	.cwwl-related_text {
	gap:8.0rem;
	}
	.cwwl-related-title {
	font-size:1.3rem;
	-webkit-line-clamp: 3;
	}
	.cwwl-related-description {
	display:none;
	}
}