#content {}

/*---------------------------------------------------------------------------
  TITLE
---------------------------------------------------------------------------*/
/* ARCHIVE PAGE TITLE */
.archive_title {
	height: 738px;
	position: relative;
	background:  url(../../image/sub/about_tit.jpg) no-repeat;
	background-position: center;
	background-size: cover;
}
.innovation_title { background-image: url(../../image/sub/innovation_tit.jpg); }
.esg_title { background-image: url(../../image/sub/esg_tit.jpg); }
.archive_title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 52px;
	z-index: -1;
	width: 49.6%;
	height: 100%;
	--cut: 210px;
	background: #DC000C;
	clip-path: polygon(0 0,100% 0,calc(100% - var(--cut)) 100%, 0 100%);
}
.archive_title::after {
	content: "";
	position: absolute;
	left: 0;
	top: 52px;
	z-index: -2;
	width: 100%;
	height: 100%;
	background: #1A1311;
}
.archive_title h2 {
	color: #FFF;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 143px;
	font-family: zen-kaku-gothic-new, sans-serif;
}
.archive_title h2 small {
	display: block;
	font-size: 168.8%;
	position: relative;
	padding-left: 27px;
}
.archive_title h2 small::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #DC000C;
	transform: translateY(-50%);
}
.archive_title h2 b { display: block; font-size: 325%; line-height: 100%; margin-block: 15px; }
.archive_title h2 span {
	display: block;
	font-size: 100%;
	font-weight: 500;
	font-family: "Noto Sans JP", sans-serif;
}
.archive_title .tit1 {
	color: #FFF;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -52px;
	font-size: 10vw;
	line-height: 80%;
	letter-spacing: 0.06em;
	-webkit-text-stroke-width: 0.008em;
	-webkit-text-stroke-color: #FFF;
	-webkit-text-fill-color: transparent;
	font-family: "Erte Bold Italic", sans-serif;
}

/* FIXED PAGE TITLE (TOPICS, ETC) */
.page_title {
	height: 330px;
	position: relative;
	background: url(../../image/sub/topics_tit.jpg) no-repeat;
	background-position: center;
	background-size: cover;
}
.page_title.kekka {
	height: 330px;
	position: relative;
	background: url(../../image/sub/kekka_tit.jpg) no-repeat;
	background-position: center;
	background-size: cover;
}
.page_title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 38.5%;
	height: calc(100% + 40px);
	--cut: 110px;
	background: #DC000C;
	clip-path: polygon(0 0,100% 0,calc(100% - var(--cut)) 100%, 0 100%);
}
.page_title h2 {
	color: #FFF;
	position: absolute;
	top: 55%;
	left: 0;
	right: 0;
	transform: translateY(-45%);
}
.page_title h2 b {
	display: block;
	font-size: 350%;
	letter-spacing: 0.04em;
	font-family: yantramanav, sans-serif;
}
.page_title h2 small {
	margin-top: 20px;
	display: block;
	font-size: 100%;
	line-height: 100%;
	position: relative;
	padding-left: 15px;
	font-family: zen-kaku-gothic-new, sans-serif;
}
.page_title h2 small::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 9px;
	height: 9px;
	background: #FFF;
	border-radius: 50%;
	transform: translateY(-50%);
}

/* SINGLE PAGE TITLE */
.my-thumbnail {
    width: 100%;
    height: 605px;
    object-fit: cover;
}
.single_title {
	position: relative;
	background: #F5F5F5;
	padding-block: 80px 55px;
}
.single_title::before {
	content: "";
	position: absolute;
	left: 0;
	top: calc(100% - 35px);
	width: 31.3%;
	height: 418px;
	--cut: 125px;
	background: #DC000C;
	clip-path: polygon(0 0,100% 0,calc(100% - var(--cut)) 100%, 0 100%);
}
.single_title h2 {
	color: #1A1311;
	font-family: zen-kaku-gothic-new, sans-serif;
}
.single_title h2 small {
	display: block;
	font-size: 112.5%;
	position: relative;
	padding-left: 18px;
}
.single_title h2 small::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: #DC000C;
	transform: translateY(-50%);
}
.single_title h2 b { display: block; font-size: 275%; line-height: 100%; margin-top: 15px; position:relative; z-index:1;}
.single_title .tit1 {
	position: absolute;
	bottom: 0;
	right: 0;
	color: #FFF;
	font-size: 8.9vw;
	line-height: 80%;
	letter-spacing: 0.06em;
	-webkit-text-stroke-width: 0.008em;
	-webkit-text-stroke-color: #BEBEBE;
	-webkit-text-fill-color: transparent;
	font-family: "Erte Bold Italic", sans-serif;
}
.single_title .photo {
	position: absolute;
	top: 100%;
	left: calc((100% - 1400px) / 2);
}


/*---------------------------------------------------------------------------
  PAN
---------------------------------------------------------------------------*/

.pan {
	display: flex;
	overflow: hidden;
	column-gap: 40px;
	padding: 15px 5px 0;
	margin-bottom: 35px;
	border-top: 1px solid #BEBEBE;
}
.pan a { color: #1A1311; font-size: 100%; font-weight: 500; text-underline-offset: 3px; }
.pan dd { color: #9F9F9F; font-weight: 500; position: relative; }
.pan dd::before {
	content: "";
	position: absolute;
	bottom: 2px;
	left: -15px;
	width: 1px;
	height: 50px;
	background: #BEBEBE;
	transform: rotate(15deg);
}


/*====================================================================================================

  SUBPAGE

====================================================================================================*/

.subpage { margin-block: 200px 140px; }
.subpage h3 { display: flex; align-items: center; column-gap: 13px; }
.subpage h3 b {
	color: #DC000C;
	font-size: 250%;
	letter-spacing: 0.02em;
	font-family: yantramanav, sans-serif;
}
.subpage h3 small {
	color: #1A1311;
	font-size: 100%;
	font-weight: 700;
	font-family: zen-kaku-gothic-new, sans-serif;
}

.subpage p {
    margin-bottom: 60px;
}


/* TOPICS CATEGORY LIST */
.cate_list {
	display: flex;
	column-gap: 27px;
	font-size: 125%;
	font-weight: 700;
	padding-top: 27px;
	justify-content: center;
	border-radius: 10px 10px 0 0;
	background: #1A1311;
	font-family: yantramanav, sans-serif;
}
.cate_list li {
    color: #FFF;
    width: 280px;
    cursor: pointer;
    text-align: center;
    background: #484240;
    border-radius: 10px 10px 0 0;
    padding: 0; /* パディングをaタグに移動したため、こちらは0にする */
	position:relative;
	z-index:0;
	overflow:hidden;
}
.cate_list li:not(.active):before{
	position: absolute;
    display: block;
    content: "";
    height: 100%;
    width: 0;
    background: #DC000C;
    z-index: -1;
	transition:all 0.2s;
}
.cate_list li:not(.active):hover:before { width:100%;}
.cate_list li a {
    display: block;
    color: inherit; /* リンクのテキスト色を継承する */
    text-decoration: none; /* リンクの下線を削除する */
    padding: 20px 10px; /* liからaへパディングを移動する */
}

.cate_list li.active { color: #1A1311; background: #FFF; }

.lists_box2.disnon { display: none; }
.lists_box2 { margin-block: 130px 100px; }
.search .lists_box2 { margin-block: 58px 100px; }
.lists_box2 li { display: flex; flex-wrap: wrap; align-items: center; }
.lists_box2 .date {
	color: #1A1311;
	line-height: 100%;
	margin-right: 13px;
}
.lists_box2 .cate { width: 122px; }
.lists_box2 .cate a {
	height: 25px;
	display: flex;
	color: #1A1311;
	font-size: 81.3%;
	font-weight: 700;
	padding-top: 3px;
	border-radius: 15px;
	align-items: center;
	text-decoration: none;
	justify-content: center;
	border: 1px solid #BEBEBE;
	font-family: yantramanav, sans-serif;
}
.lists_box2 .cate a:hover { color: #FFF; background: #BEBEBE; }
.lists_box2 .title { width: 100%; margin-block: 10px; }
.lists_box2 .title a span { display: inline-block; overflow: hidden; font-size:22px; }
.lists_box2 .come { width: 96%; }

.brand {
    width: 100%;
    height: auto;
    position: sticky;
    top: 0;
    display: block;
    padding-top: 100px;
}

.yantramanav.tit1 {
	color: #FFF;
    font-size: 6.2vw;
    line-height: 80%;
    letter-spacing: 0.06em;
    -webkit-text-stroke-width: 0.008em;
    -webkit-text-stroke-color: #BEBEBE;
    -webkit-text-fill-color: transparent;
    font-family: "Yantramanav", sans-serif;
    font-weight: bold;
    white-space: nowrap;
    overflow: visible;
}

.brand-statement {
    position: relative;
    display: inline-block;
    font-size: 23px;
    font-weight: bold;
    padding-right: 270px; /* テキストの右側にスペースを作るためのパディング */
}

.line {
    position: absolute;
    top: 50%; 
    right: 0;
    height: 1px;
    width: 258px;
    background-color: #555555;
    transform: translateY(-50%); /* 線を垂直方向の中央に配置するための変換 */
}


.text {
    flex: 1;
    padding-top: 100px;
    overflow-y: auto; /* スクロールを可能にする */
}

.search .lists_box2 .title a {
    font-size: 137.5%;
    font-weight: 700;
    font-family: zen-kaku-gothic-new, sans-serif;
}
.search .lists_box2 .title a span {
    display: inline-block;
}
/*---------------------------------------------------------------------------
  WP PAGE NAVIGATION
---------------------------------------------------------------------------*/
.wp-pagenavi {
	width: 100%;
	display: flex;
	padding: 18px 0;
	background: #EEE;
	border-radius: 39px;
	max-width: 1400px;
	position: relative;
	align-items: center;
	margin: 100px auto;
	justify-content: center;
}
.wp-pagenavi .pages { display:none; }
.wp-pagenavi a, .wp-pagenavi span {
	width: 40px;
	height: 40px;
	display: flex;
	color: #1A1311;
	margin: 0 6px;
	font-size: 93.8%;
	font-weight: 700;
	line-height: 120%;
	background: #FFF;
	border-radius: 5px;
	align-items: center;
	text-decoration: none;
	justify-content: center;
	font-family: yantramanav, sans-serif;
}
.wp-pagenavi a.top {
	width: 213px;
	font-size: 100%;
	border-radius: 28px;
	font-family: "Noto Sans JP", sans-serif;
}
.wp-pagenavi a:hover,
.wp-pagenavi .current { background: #484240; color:#FFF; }
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
	width:56px;
	height:56px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 50%;
	text-indent: -9999px;
	background-color: #FFF;
	background-size: 14px 6px;
	background-repeat: no-repeat;
	background-position: center 46%;
}
.wp-pagenavi .previouspostslink { left: 15px; background-image: url(../image/arrow_left1.svg); }
.wp-pagenavi .nextpostslink { right: 15px; background-image: url(../image/arrow_right1.svg); }

.wp-pagenavi li::before {
    content: "";
    display: none;
}

/*---------------------------------------------------------------------------
  COMMON SINGLE PAGE CSS
---------------------------------------------------------------------------*/
.subpage.single { margin-block: 760px 210px }
.meta_box {
	display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.content_box h3 {
	color: #000;
	font-size: 250%;
	line-height: 100%;
	position: relative;
	margin: 80px 0 60px;
	padding-bottom:25px;
	font-family: zen-kaku-gothic-new, sans-serif;
}
.search .content_box h3 {
	margin-bottom: 0;
}
.content_box h3::before,
.content_box h3::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 2px;
}
.content_box h3::before { width: 100%; background: #EEE; }
.content_box h3::after { width: 135px; background: #DC000C; }
.content_box h4 {
	color: #000;
	font-size: 225%;
	line-height: 110%;
	position: relative;
	margin: 150px 0 60px;
	font-family: zen-kaku-gothic-new, sans-serif;
}
.content_box h5 {
	color: #000;
	font-size: 212.5%;
	line-height: 120%;
	position: relative;
	font-family: zen-kaku-gothic-new, sans-serif;
	margin:150px 0 60px;
}
.content_box h5.has-text-align-center::before {
	content: "";
	position: absolute;
	top: 50%;
	height: 1px;
	z-index: -1;
	background: #BEBEBE;
	width: 1000%;
	max-width: 1400px;
	left: 50%;
	transform: translate(-50%);
}
.content_box h5:after {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	background: #fff;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
}
.content_box h6 {
	color: #000;
	font-size: 118.75%;
	font-weight:900;
	line-height: 100%;
	position: relative;
	padding-left: 20px;
	margin: 100px 0 30px;
	font-family: zen-kaku-gothic-new, sans-serif;
}
.content_box h6::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 13px;
	height: 13px;
	background: #DC000C;
	transform: translateY(-50%);
}
/* CENTERED HEADINGS */
.content_box h4.has-text-align-center { text-align: center; padding-bottom:30px;}
.content_box h4.has-text-align-center::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom:0;
	margin: auto;
	width: 119px;
	height: 3px;
	background: #DC000C;
	transform:skew(-30deg);
}
.content_box h5.has-text-align-center { text-align: center; width:fit-content; margin-inline:auto; padding:0 27.5px;}
.content_box h5.has-text-align-center strong {
	margin: auto;
	display: block;
	background: #FFF;
	width: fit-content;
}
.content_box h5.has-text-align-center::before {
	content: "";
	position: absolute;
	top: 50%;
	height: 1px;
	z-index: -1;
	background: #BEBEBE;
}

.content_box :where(h2, h3, h4, h5, h6) + h3 { margin-top:75px;}
.content_box :where(h2, h3, h4, h5, h6) + h4 { margin-top:75px;}
.content_box :where(h2, h3, h4, h5, h6) + h5 { margin-top:75px;}
.content_box :where(h2, h3, h4, h5, h6) + h6 { margin-top:50px;}

.content_box .spacer { text-indent:-9999px; height:90px; }
.content_box .wp-block-quote {
	width: 100%;
	max-width: 986px;
	/* margin: 150px auto 60px; */
	margin:100px auto;
	padding: 30px 75px;
	position: relative;
	border-radius: 10px;
	border: 1px solid #1A1311;
}
.content_box .wp-block-quote::before {
	content: "";
	z-index: 1;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	margin: auto;
	background: #FFF;
	width: calc(100% - 60px);
	height: calc(100% + 70px);
	transform: translateY(-50%);
}
.content_box .wp-block-quote p {
	display: block;
	color: #1A1311;
	font-size: 175%;
	font-weight: 700;
	line-height: 150%;
	text-align: center;
	position: relative;
	margin-bottom:0;
	z-index: 2;
	font-family: zen-kaku-gothic-new, sans-serif;
}
.content_box .boxed_txt {
	padding:60px;
	margin-block: 60px;
	border: 10px solid #F5F5F5;
}
.content_box .flexed_content { display: flex; column-gap: 5%; justify-content: space-between; }
.content_box ul { margin:0 0 80px; }
.content_box ul li {
	font-weight: 700;
	margin-block: 10px;
	padding-left: 22px;
	position: relative;
}
.content_box ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top:1rem;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #DC000C;
	transform: translateY(-50%);
}
.wpforms-field ul li::before {
	background: none;
}
.content_box ol { margin: 0 0 80px; padding-left:20px;}
.content_box ol li { font-weight: 700; margin-block: 10px; padding-left:2px;}
.content_box ol li::marker {
	color: #DC000C;
	font-size: 118.8%;
	font-family: yantramanav, sans-serif;
}
.content_box a:link { text-underline-offset: 2px; }
/* .content_box a:link:visited { color: #555; }
.content_box a:link:hover { color: #9F9F9F; } */
.content_box a:link:active { color: #DC000C; }
.content_box .styled_txt { margin-block: 10px; }
.content_box .selected_txt { width: fit-content; background: #FFDEDE; line-height: 130%; }
.content_box strong { font-size: 112.5%; font-weight: 900; }
.content_box .has-small-font-size { font-size: 87.5%; }
.content_box .highlight_txt { color: #DC000C; font-weight: 700; }
/* .content_box a[target="_blank"] { margin-block: 10px; color: #555; position: relative; }
.content_box a[target="_blank"]::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -32px;
	width: 18px;
	height: 18px;
	transform: translateY(-50%);
	background: url(../image/icon_link2.svg) no-repeat;
	background-size: contain;
}
.content_box a[target="_blank"]:hover { opacity: 0.7; } */

.content_box .wp-block-buttons>.wp-block-button { min-width: 200px; margin-block: 10px; }
.content_box .wp-block-buttons>.wp-block-button a::after { right:0.8rem; }
.content_box .wp-block-separator { width: 100%; height: 1px; background: #BEBEBE; margin-block:80px; border: none; }
.content_box table { width: 50%; border-top: 1px solid #BEBEBE; }
.content_box table tr { border-bottom: 1px solid #BEBEBE; }
.content_box table tr th { padding-block: 35px; text-align: left; }
.content_box table tr td { padding-block: 35px; padding-left: 45px; }
.content_box .photo-r { max-width: 40%; }
.content_box .photo-r .caption { display: block; margin-top: 20px; font-size: 87.5%; color: #707F89; }
.content_box .wp-block-image figcaption { display: block; margin-top: 20px; font-size: 87.5%; color: #707F89; }
.content_box .column_label { margin-block: 100px 15px; color: #FF0000; }
.content_box .column_box { display: flex; justify-content: space-between; margin-bottom: 100px; }
.content_box .column_box .photo img { height: 384px; }
.content_box .column_box .come { margin-top: 25px; }
.content_box .column3 .box { width: 28.6%; }
.content_box .column3 .box .photo img { height: auto; }
.content_box .column2 .box { width: 46.4%; }
.content_box .column2-sb .box:nth-child(1) { width: 53.6%; }
.content_box .column2-sb .box:nth-child(2) { width: 39.3%; }
.content_box .column2-bs .box:nth-child(1) { width: 39.3%; }
.content_box .column2-bs .box:nth-child(2) { width: 53.6%; }

.content_box .is-provider-youtube { margin-bottom:120px;}
.content_box .is-provider-youtube .wp-block-embed__wrapper { width:80%; margin:0 auto;}

/* カラム */
.content_box .is-layout-flex { margin-bottom:100px;}
.content_box .is-layout-flex > * p:last-child { margin-bottom:0;}
.content_box .is-layout-flex :where(h3, h4, h5, h6):first-child { margin-top:0;}
.content_box .is-layout-flex .is-provider-youtube .wp-block-embed__wrapper { width:100%;}

:where(.wp-block-columns.is-layout-flex) {
    gap:6%;
}

.single_post.content_box h3 {
	color: #000;
	font-size: 250%;
	line-height: 100%;
	position: relative;
	margin: 80px 0 60px;
	padding-bottom:25px;
	font-family: zen-kaku-gothic-new, sans-serif;
}


/*---------------------------------------------------------------------------
  WP PAGE NAVIGATION
---------------------------------------------------------------------------*/
.topics .wp-pagenavi {
	width: 100%;
	display: flex;
	padding: 18px 0;
	background: #EEE;
	border-radius: 39px;
	max-width: 1400px;
	position: relative;
	align-items: center;
	margin: 100px auto;
	justify-content: center;
}
.topics .wp-pagenavi li {
	padding: 0;
	margin: 0;
}
.topics .wp-pagenavi .pages { display:none; }
.topics .wp-pagenavi a, .wp-pagenavi span {
	width: 40px;
	height: 40px;
	display: flex;
	color: #1A1311;
	margin: 0 6px;
	font-size: 93.8%;
	font-weight: 700;
	line-height: 120%;
	background: #FFF;
	border-radius: 5px;
	align-items: center;
	text-decoration: none;
	justify-content: center;
	font-family: yantramanav, sans-serif;
}
.topics .wp-pagenavi a.top {
	width: 213px;
	font-size: 100%;
	border-radius: 28px;
	font-family: "Noto Sans JP", sans-serif;
}
.topics .wp-pagenavi li:not([class]) a { border:solid 1px #fff; transition:all 0.2s;}
.topics .wp-pagenavi li:not([class]) a:hover { border-color:#484240; opacity:1.0;}
.topics .wp-pagenavi li:not([class]) a.top:hover { border-color:#1A1311;}
.topics .wp-pagenavi .current { background: #484240; color:#FFF; border:solid 1px;}
.topics .wp-pagenavi .nextpostslink a,
.topics .wp-pagenavi .previouspostslink a {
	/* width: 56px;
	height: 56px; */
	--w:56px;
	--trans-time:0.2s;
	display:block;
	width:var(--w);
	height:auto;
	aspect-ratio:1/1;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 50%;
	text-indent: -9999px;
	/* background-color: #FFF;
	background-size: 14px 6px;
	background-repeat: no-repeat;
	background-position: center 46%;
	border:solid 1px transparent; */
	overflow:hidden;
}
.topics .wp-pagenavi :where(.nextpostslink, .previouspostslink) a:before,
.topics .wp-pagenavi :where(.nextpostslink, .previouspostslink) a:after{
	content:"";
	width:calc(var(--w) / 2);
	height:0%;
	background:#1A1311;
	position:absolute;
	z-index:0;
}
.topics .wp-pagenavi :where(.nextpostslink, .previouspostslink) a:before { inset:0 0 auto auto; transition:height var(--trans-time) linear;}
.topics .wp-pagenavi :where(.nextpostslink, .previouspostslink) a:after { inset:auto auto 0 0; transition:height var(--trans-time) var(--trans-time) linear;}

.topics .wp-pagenavi :where(.nextpostslink, .previouspostslink) a:hover:before,
.topics .wp-pagenavi :where(.nextpostslink, .previouspostslink) a:hover:after { height:100%;}

.topics .wp-pagenavi .previouspostslink:not(:empty),
.topics .wp-pagenavi .nextpostslink:not(:empty) {
	text-indent: 0;
	width: auto;
	height: auto;
	background: none;
	padding: 0 15px;
	border-radius: 5px;
}

.topics .wp-pagenavi .previouspostslink a { left: -10px; /*background-image: url(../image/arrow_left1.svg);*/ }
.topics .wp-pagenavi .nextpostslink a { right: -10px; /*background-image: url(../image/arrow_right1.svg);*/ }

.topics .wp-pagenavi li::before {
    content: "";
    display: none;
}
.topics .wp-pagenavi :where(.nextpostslink, .previouspostslink) a span{
	width:calc(100% - 4px);
	height:auto;
	aspect-ratio:1/1;
	position:relative;
	left:50%;
	translate:-50% 2px;
	margin:0;
	border-radius:50%;
	z-index:1;
}
.topics .wp-pagenavi .previouspostslink a span { background:#fff url(../image/arrow_left1.svg) no-repeat center;}
.topics .wp-pagenavi .nextpostslink a span { background:#fff url(../image/arrow_right1.svg) no-repeat center;}

/*====================================================================================================

  related（child-pages-list）

====================================================================================================*/
.related {
	--trans-time:0.2s;

	margin-top:170px;
	padding-top:113px;
	border-top:solid 1px #BEBEBE;
}
.related h4.has-text-align-center{
	margin:0 0 93.5px;
	text-align:center;
}
.related h4.has-text-align-center:after { width:80px;}
.related .child-pages-list {
    list-style: none;
	max-width:1200px;
    margin-inline:auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
	gap:0 80px;
}

.related .child-pages-list li {
    flex: 0 0 calc(50% - 40px); /* 2カラムに分けるために50%の幅を持たせる */
    box-sizing: border-box;
    padding:26.5px 0;
	margin:0;
}
.related .child-pages-list li:before { content:none;}
.related .child-pages-list li:nth-child(n+3) { border-top:solid 1px #eee;}
.related .child-pages-list li a {
    display: flex;
    align-items: center;
    text-decoration: none;
	gap:28px; /* タイトルとの間隔を開けるためのマージン */
	position:relative;
}
.related .child-pages-list li a:before {
	--w:8px;
	content:"";
	position:absolute;
	display:block;
	width:var(--w);
	aspect-ratio:1/1;
	background:#DC000C;
	border-radius:50%;
	inset:50% 20px auto auto;
	translate:50% -50%;
	transition:all var(--trans-time);
}
.related .child-pages-list li a:is(:link, :visited) { color:currentColor;}

.related .child-pages-list li a div { overflow:hidden;}
.related .child-pages-list li a img {
    width: 130px;
    height: 90px;
    object-fit: cover; /* 画像のアスペクト比を維持しつつ、指定されたサイズに合わせる */
	transition:all var(--trans-time) ease;
}
.related .child-pages-list li a span {
	display: inline-block;
	background-image: linear-gradient(#1A1311, #1A1311);
    transition: background-size .2s cubic-bezier(.165, .84, .44, 1);
    background-position: 100% 100%;
    background-size: 0% 1px;
    background-repeat: no-repeat;
}

.related .child-pages-list li a:hover { opacity:1;}
.related .child-pages-list li a:hover:before { width:calc(var(--w) + 5px);}
.related .child-pages-list li a:hover img { scale:1.15; opacity:0.7;}
.related .child-pages-list li a:hover span {
	background-position: 0 100%;
    background-size: 100% 1px;
}
@media(hover:none){
	.related .child-pages-list li a:active { opacity:1;}
	.related .child-pages-list li a:active:before { width:calc(var(--w) + 5px);}
	.related .child-pages-list li a:active img { scale:1.15; opacity:0.7;}
	.related .child-pages-list li a:active span {
		background-position: 0 100%;
		background-size: 100% 1px;
	}
}


/*====================================================================================================

  SiteMap(.page-id-736)

====================================================================================================*/
.page-id-736 .subpage a {
	display:block;
	width:fit-content;
	color:#1a1311;
	text-decoration:none;

	background-image: linear-gradient(#1A1311, #1A1311);
    transition: background-size .2s cubic-bezier(.165, .84, .44, 1);
    background-position: 100% 100%;
    background-size: 0% 1px;
    background-repeat: no-repeat;
}
.page-id-736 .subpage a:is(:hover, :visited, :link) { color:#1a1311;}
.page-id-736 .subpage a:hover {
	opacity:1.0;
	background-position: 0 100%;
    background-size: 100% 1px;
}

.page-id-736 .subpage h3 a { background:unset; transition:unset;}


/*====================================================================================================

  MW WP FORM

====================================================================================================*/
.mw-wp-form {
	max-width: 1000px;
	margin: 0 auto;
	padding-top: 18px;
}

.mw-wp-form__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 80px;
}


.mw-wp-form dt,
.mw-wp-form dd {
  line-height: 1.75;
}

.mw-wp-form dt:not(:first-of-type),
.mw-wp-form dd:not(:first-of-type) {
  margin-top: 30px;
}

.mw-wp-form dt {
  width: 30%;
  padding-top: 5px;
}

.mw-wp-form dd {
  width: 70%;
}

.mw-wp-form__label {
    float: right;
    margin-right: 36px;
    padding: 2px 10px;
    color: #fff;
    font-size: 14px;
    vertical-align: 1px;
}

.mw-wp-form__label--req {
  background: #FFFF;
  color: #FF0000;
  border: 1px #FF2727 solid;
  border-radius: 4px;
}

.mw-wp-form__label--opt {
  background: #FFFF;
  color: #878D8E;
  border: 1px #878D8E solid;
  border-radius: 4px;
}

.mw-wp-form dd input[type="text"],
.mw-wp-form dd input[type="email"],
.mw-wp-form dd textarea {
  box-sizing: content-box;
  width: calc(100% - (20px * 2));
  padding: 15px 20px;
  background: #F5F5F5;
  border: none;
}

.mw-wp-form dd input[type="text"]:nth-child(n + 2) {
  margin-top: 15px;
}

.mw-wp-form dd input[type="tel"] {
  box-sizing: content-box;
  width: 66px;
  padding: 15px 20px;
  background: #F5F5F5;
}

.mw-wp-form dd textarea {
  height: calc(1.75em * 10);
}

.mw-wp-form dd input[type="text"]::placeholder,
/*.mw-wp-form dd input[type="tel"]::placeholder,*/
.mw-wp-form dd input[type="email"]::placeholder,
.mw-wp-form dd textarea::placeholder {
  color: #797979;
}

/* Microsoft Edge */
.mw-wp-form dd input[type="text"]::-ms-input-placeholder,
/*.mw-wp-form dd input[type="tel"]::-ms-input-placeholder,*/
.mw-wp-form dd input[type="email"]::-ms-input-placeholder,
.mw-wp-form dd textarea::-ms-input-placeholder {
  color: #797979;
}

/* Internet Explorer */
.mw-wp-form dd input[type="text"]:-ms-input-placeholder,
/*.mw-wp-form dd input[type="tel"]:-ms-input-placeholder,*/
.mw-wp-form dd input[type="email"]:-ms-input-placeholder,
.mw-wp-form dd textarea:-ms-input-placeholder {
  color: #797979;
}

.mw-wp-form__automatic {
  margin: 0 0 0 20px;
  font-size: 15px;
}

.mw-wp-form__buttons {
  display: flex;
  justify-content: center;
}

.mw-wp-form__buttons button {
	cursor: pointer;
}

.mw-wp-form__buttons button[type="submit"] {
	--trans-time:0.2s;

  display: block;
  position: relative;
  width: 360px;
  height: 60px;
  margin: 0 30px;
  /* border: 1px solid #1A1311; */
  border:none;
  border-radius: 33px;
  color: #FFFFFF;
  font-weight: bold;
  font-size: 18px;
  background: #1A1311;
  /* transition: opacity .6s; */
  overflow:hidden;
  z-index:1;
}

.mw-wp-form__buttons button[type="submit"]:hover {
  /* opacity: .6; */
}

.mw-wp-form__buttons button[type="submit"]:before {
	position: absolute;
	top: 50%;
	right: 8%;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #DC000C;
	transform: translateY(-50%);
	content: '';
	transition:background calc(var(--trans-time) / 2) calc(var(--trans-time) / 2) linear;
}
.mw-wp-form__buttons button[type="submit"]:hover:before{
	background:#fff;
}
.mw-wp-form__buttons button[type="submit"]:after{
	content:"";
	position:absolute;
	display:block;
	background:#DC000C;
	width:0%;
	height:100%;
	inset:0 auto auto 0;
	z-index:-1;
	transition:all var(--trans-time) linear;
}
.mw-wp-form__buttons button[type="submit"]:hover:after{
	width:100%;
}

.mw-wp-form__buttons button[type="submit"].back-button {
    background-color: #908D8C;
}

.mw_wp_form_confirm .mw-wp-form dd {
  padding-top: 15px;
}

@media screen and (max-width: 430px) {

  .mw-wp-form__list {
    margin-bottom: 60px;
  }

  .mw-wp-form dt {
    width: 100%;
  }

  .mw-wp-form dd {
    width: 100%;
  }

  .mw-wp-form dd:first-of-type,
  .mw-wp-form dd:not(:first-of-type) {
    margin-top: 15px;
  }

  .mw-wp-form dd input[type="text"]:nth-child(n + 2) {
    margin-top: 10px;
  }

  .mw-wp-form dd textarea {
    height: calc(1.75em * 8);
  }

  .mw-wp-form__automatic {
    margin: 5px 0 0;
    font-size: 14px;
  }

  .mw-wp-form__buttons {
    flex-direction: column;
    align-items: center;
  }

  .mw-wp-form__buttons button[type="submit"] {
    width: 300px;
    margin: 0;
  }

  .mw-wp-form__buttons button[type="submit"]:not(:first-child) {
    margin-top: 30px;
  }


  .mw_wp_form_confirm .mw-wp-form dd {
    padding-top: 0;
  }

  .mw-wp-form__label {
    padding: 6px 16px;
  }

}

/*====================================================================================================

  CONTACT FORM 7

====================================================================================================*/
.cf7 { max-width: 1000px; margin: 0 auto; padding-top: 18px;}
.cf7_list { display: flex; flex-wrap: wrap; margin-bottom: 80px;}
.cf7 .wpcf7-list-item { display:block; margin:0;}
.cf7 .agree .wpcf7-list-item { display:inline-block;}
.cf7 :is(dt, dd) { line-height: 1.75; }
.cf7 :is(dt, dd):not(:first-of-type) { margin-top: 30px; }
.cf7 dt { width: 30%; padding-top: 5px; }
.cf7 dd { width: 70%; }
.cf7 p { margin-bottom:0;}
.cf7 a[target="_blank"] { margin-right:2.5rem; text-decoration:underline;}
.cf7 .req {
	float: right;
	margin-right: 36px;
	padding: 2px 10px;
	background: #FFFF;
	color: #FF0000;
	border: 1px #FF2727 solid;
	border-radius: 4px;
	font-size: 14px;
	vertical-align: 1px;
}
.cf7 dd :is(input[type="text"], input[type="email"], input[type="tel"], textarea) {
	box-sizing: content-box;
	width: calc(100% - (20px * 2));
	padding: 15px 20px;
	background: #F5F5F5;
	border: none;
}
.cf7 dd input[type="text"]:nth-child(n + 2) { margin-top: 15px; }
.cf7 dd textarea { height: calc(1.75em * 10);}
.cf7 dd :is(input[type="text"], input[type="email"], input[type="tel"], textarea)::placeholder,
.cf7 dd :is(input[type="text"], input[type="email"], input[type="tel"], textarea)::-ms-input-placeholder { color: #797979;}
.cf7 dd :is(input[type="radio"], input[type="checkbox"]) { margin-right:5px;}
.cf7 dd select { padding:0.25em 1em; border:solid 1px #c1c1c1;}
.cf7 .wpcf7-spinner { display:none;}

.cf7 p:has(> input[type="submit"]) {
	--trans-time:0.25s;

	position:relative;
	width:fit-content;
	margin-inline:auto;
	border-radius:100vmin;
	background-color:#1a1311;
	overflow:hidden;
}
.cf7 p:has(> input[type="submit"]):before {
	content:"";
	position:absolute;
	display:block;
	width:0%;
	height:100%;
	background-color:#DC000C;
	inset:0 auto auto 0;
	transition:width ease var(--trans-time);
	z-index:0;
}
.cf7 p:has(> input[type="submit"]):after {
	content:"";
	position:absolute;
	display:block;
	width:7px;
	aspect-ratio:1;
	background-color:#DC000C;
	border-radius:50%;
	inset:50% 8% auto auto;
	translate:0 -50%;

	transition:background-color ease var(--trans-time);
}
.cf7 input[type="submit"] {
	position:relative;
	width:360px;
	height:60px;
	border:none;
	color:#fff;
	font-size:18px;
	font-weight:bold;
	background:transparent;
	cursor:pointer;
	z-index:1;

	transition:background-image ease var(--trans-time);
}
.cf7 .wpcf7-spinner { display:none;}

/* :disabled */
.cf7 p:has(> input[type="submit"][disabled]) { opacity:0.5;}

/* :hover or :active */
@media (any-hover:hover){
	.cf7 p:has(> input[type="submit"]:not(:disabled)):hover:before { width:100%;}
	.cf7 p:has(> input[type="submit"]:not(:disabled)):hover:after { background-color:#fff;}

}
@media (any-hover:none){
	.cf7 p:has(> input[type="submit"]:not(:disabled)):active:before { width:100%;}
	.cf7 p:has(> input[type="submit"]:not(:disabled)):active:after { background-color:#fff;}
}

@media screen and (max-width: 430px) {
	.cf7 :is(dt, dd) { width:100%;}
	.cf7 :is(dt, dd):not(:first-of-type) { margin-top:15px;}
	.cf7 .req { margin:0;}
	.cf7 p:has(> input[type="submit"]) { margin-bottom:2rem;}
	.cf7 input[type="submit"] { width:300px;}
}




/* =============== ↓ 2024.12.25 ul,ol調整 ↓ =============== */
.single .lists_box2.content_box ul li { border:none;}
.single .lists_box2.content_box ul li:first-child { padding-top:20px;}
.single .lists_box2.content_box ul li::before { top:calc(1rem + 20px);}