@charset "utf-8";
/* {outline: 1px solid magenta;}*/
/*renewal2026 base*/
main:has(.renewal2026) {
	width: 100%;
	min-width: inherit;
	margin: 0;
	padding: 0;
	padding-bottom: 0;
	font-size: clamp(14px, 1.2vw, 16px);
	line-height: 1.8;
	color: #222;
	background: #fff;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	-webkit-text-size-adjust: 100%;
	letter-spacing: 0;
	overflow-x: clip;
	overflow-y: visible;
}
main:has(.renewal2026) *,
main:has(.renewal2026) *::before,
main:has(.renewal2026) *::after {
	box-sizing: border-box;
}
main:has(.renewal2026) img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
main:has(.renewal2026) img.full{
	width: 100%;
}
main:has(.renewal2026) a {
	text-decoration: none;
	transition: 0.3s all;
}
main:has(.renewal2026) ul,
main:has(.renewal2026) ol {
	margin: 0;
	padding: 0;
	list-style: none;
}
main:has(.renewal2026) h1,
main:has(.renewal2026) h2,
main:has(.renewal2026) h3,
main:has(.renewal2026) h4,
main:has(.renewal2026) p,
main:has(.renewal2026) figure {
	margin: 0;
}
main:has(.renewal2026) p:last-child{
	margin-bottom: 0;
}
main:has(.renewal2026) .wrapper{
	width: 90%;
	margin-inline: auto !important;
}
main:has(.renewal2026) .wrap{
	width: 90%;
	max-width: 1280px;
	margin-inline: auto !important;
}
body:has(.renewal2026) main{
	position: relative;
	z-index: 5;
}
:root {
    --black: rgba(51, 51, 51, 1);
    --gray: rgba(170, 170, 170, 1);
    --dgray: rgba(131, 131, 131, 1);
    --yellow: rgba(242, 232, 0, 1);
    --blue: rgba(0, 68, 191, 1);
    --back: rgba(240, 240, 240, 1);
    --lgray: #f7f7f7;
	--fff05: rgba(255,255,255,0.5);
	--fff01: rgba(255,255,255,0.1);
}
.serif{
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-weight: 400;
    color: var(--black);
}
.renew-btn{
	background: var(--blue);
	color: #fff;
	line-height: 1;
	padding: 1em 2em;
}

/*HEADER LAYOUT*/
.renew-header{
	display: grid;
	grid-template-columns: clamp(220px, 18vw, 280px) 1fr 260px;
	align-items: flex-start;
	position: sticky;
	top: 0;
	z-index: 1000;
	transition: 0.3s all;
}
.renew-header.sticky{
	background: #fff;
	box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}
.renew-header_tnav,
.renew-header_gnav{
	opacity: 0;
	visibility: hidden;
	transition: 0.3s all;
}
.renew-header.sticky .renew-header_tnav,
.renew-header.sticky .renew-header_gnav{
	opacity: 1;
	visibility: visible;
}
@media screen and (max-width: 1280px) {
	.renew-header{
		grid-template-columns: clamp(220px, 18vw, 280px) 1fr 240px;
	}
	.renew-header_title{
		padding: 1em 1em 0.5em 3em;
	}
}
@media screen and (max-width: 1080px) {
	.renew-header.sticky{
		background: transparent;
		box-shadow: none;
	}
	.renew-header_tnav .renew-sitemap_target{
		display: none;
	}
}
@media screen and (max-width: 680px) {
	.renew-header{
		grid-template-columns: 170px 1fr 260px;
	}
	.renew-header.sticky{
		background: #fff;
	}
}
@media screen and (max-width: 480px) {
	.renew-header{
		grid-template-columns: 170px 1fr 160px;
	}
    .renew-header.sticky {
        grid-template-columns: 143px 1fr 160px;
	}
    .renew-header.sticky .renew-header_title {
        padding: 0.5em 1em 0.5em 2em;
    }
}

/*HEADER*/
.renew-header_title{
	padding: 1em 1.5em 1em 3.5em;
	position: relative;
	transition: 0.3s all;
	grid-row: 1 / 3;
	background: #fff;
}
.renew-header_title:before,
.renew-header_title:after{
	content: "";
	display: block;
	width: 2em;
	position: absolute;
	left: 0;
}
.renew-header_title:before{
	background: var(--yellow);
	top: 0;
	bottom: calc(2em + 0.3em);
}
.renew-header_title:after{
	background: var(--blue);
	bottom: 0;
	aspect-ratio: 1 / 1;
}
.renew-header.clicked .renew-header_title{
	opacity: 0;
}
.renew-header_cta{
	display: flex;
	justify-content: flex-end;
	gap: 2px;
	position: relative;
	z-index: 1000;
}
.renew-header_cta a,
.renew-header_search,
.renew-header_trigger{
	display: flex;
	justify-content: flex-end;
	flex-direction: column;
	width: 50px;
	background: var(--blue);
	padding: 0.1em 0;
	aspect-ratio: 1 / 1;
	text-align: center;
	transition: 0.3s all;
	position: relative;
	cursor: pointer;
}
.renew-header_cta img{
	object-fit: contain;
	aspect-ratio: 1 / 1;
	width: 47%;
	margin: 0 auto;
	filter: brightness(0) invert(1);
}
.renew-header_search img{
	width: 42%;
}
.renew-header_search p,
.renew-header_cta a p{
	font-size: 10px;
	color: #fff;
}
.renew-header_trigger:hover,
.renew-header_search:hover,
.renew-header_cta a:hover{
	background: var(--yellow);
}
.renew-header_search:hover img,
.renew-header_cta a:hover img{
	filter: none;
}
.renew-header_search:hover p,
.renew-header_cta a:hover p{
	color: var(--black);
	font-weight: 500;
}
.renew-header_trigger span{
	position: absolute;
	left: 50%;
	top: 50%;
	width: 30px;
	height: 1.4px;
	background: #fff;
	transform: translateX(-50%) translateY(-50%);
	transition: 0.3s ease;
}
.renew-header_trigger span:nth-of-type(1) {
	top: 34%;
}
.renew-header_trigger span:nth-of-type(3) {
	top: 66%;
}
.renew-header_trigger:hover span{
	background: var(--black);
}
.renew-header_trigger.clicked span:nth-of-type(1) {
	transform: rotate(405deg);
    top: 50%;
    left: 20%;
}
.renew-header_trigger.clicked span:nth-of-type(2) {
	opacity: 0;
}
.renew-header_trigger.clicked span:nth-of-type(3) {
	transform: rotate(-405deg);
    top: 50%;
    left: 20%;
}
@media screen and (max-width: 1280px) {
	.renew-header_cta a,
	.renew-header_search,
	.renew-header_trigger {
		width: 45px;
	}
}
@media screen and (max-width: 680px) {
	.renew-header_title{
		padding: 0.5em 1em 0.5em 2.5em;
	}
	.renew-header_title:before,
	.renew-header_title:after {
		width: 1.5em;
	}
	.renew-header_title:before {
		bottom: calc(1.5em + 0.2em);
	}
}
@media screen and (max-width: 480px) {
	.renew-header_application,
	.renew-header_request{
		position: fixed !important;
		width: 50% !important;
		aspect-ratio: inherit !important;
		bottom: 0;
		left: 0;
		display: flex !important;
		justify-content: center !important;
		flex-direction: row !important;
		align-items: center !important;
		gap: 0.5em;
		padding: 0.7em 0 !important;
	}
	.renew-header_request img,
	.renew-header_application img{
		width: 25px;
		margin: 0;
	}
	.renew-header_application p,
	.renew-header_request p{
		font-size: 14px !important;
	}
	.renew-header_request{
		left: inherit;
		right: 0;
		border-left: 1px solid #fff;
	}
}

/*SNAV+SEARCH*/
.renew-search,
.renew-snav{
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: var(--black);
	overflow: scroll;
	opacity: 0;
	transition: 0.3s all;
	z-index: 0;
	visibility: hidden;
}
.renew-search.clicked,
.renew-snav.clicked{
	opacity: 1;
	z-index: 999;
	visibility: visible;
}

/*SEARCH*/
.renew-search{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background: rgba(51,51,51,0.9); 
}
.renew-search_form{
	width: 90%;
	max-width: 30em;
	margin: 0 auto 2em;
	text-align: center;
	display: flex;
	justify-content: center;
}
.renew-search_input{
    width: 100%;
    height: auto;
    background: #fff;
    padding: 1em;
    color: var(--black);
    margin: 0 auto;
	border: none;
}
.renew-search_btn{
	padding: 0;
	background: var(--blue);
	color: #fff;
	width: 7em;
	font-weight: 700;
	transition: 0.3s all;
	font-size: clamp(12px, 1.1vw, 14px);
}
.renew-search_btn:hover{
	background: var(--yellow);
	color: var(--black);
}
.renew-search_frequent-title{
	color: #fff;
	margin: 1em 0;
	border-bottom: 1px solid #fff;
	text-align: center;
}
.renew-search_lists{
	display: flex;
	justify-content: center;
	gap: 3em;
}
.renew-search_ul li{
	list-style: disc outside;
	color: #fff;
}
.renew-search_a{
	color: #fff;
	font-size: clamp(12px, 1.1vw, 14px);
}
.renew-search_a:hover{
	color: var(--yellow);
	text-decoration: underline;
}
.renew-search_close{
	margin: 1em auto;
	border: 1px solid #fff;
	background: #444;
	color: #fff;
	padding: 0.5em 2em;
	line-height: 1;
	transition: 0.3s all;
	font-size: clamp(12px, 1.1vw, 14px);
}
.renew-search_close:hover{
	background: #333;
}

/*SITEMPA*/
.renew-snav::-webkit-scrollbar{
	width: 7px;
	background: var(--black);
}
.renew-snav::-webkit-scrollbar-thumb{
  background: var(--black);
}
.renew-sitemap{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 5em;
    z-index: 50;
    position: relative;
}
.renew-sitemap a{
	color: #fff;
}
.renew-sitemap_target{
	width: clamp(10em, 15vw, 20em);
	margin-left: 3em;
}
.renew-sitemap_target-links{
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.5em;
}
.renew-sitemap_target-link{
	display: block;
	padding: 0.5em;
	text-align: center;
	border: 1px solid var(--fff05);
	font-size: clamp(12px, 1.1vw, 14px);
	background: rgba(255,255,255,0.05);
}
.renew-sitemap_target-link span{
	font-size: clamp(12px, 1.1vw, 14px);
}
.renew-sitemap_target-link:hover{
	background: rgba(255,255,255,0.1);
}
.renew-sitemap_body{
	flex: 1;
}
.renew-sitemap_group{
	margin-bottom: 5em;
}
.renew-sitemap_group-title{
	display: block;
	font-size: clamp(16px, 1.4vw, 21px);
	font-weight: 700;
	color: #fff;
	padding-bottom: 0.3em;
	border-bottom: 1px solid var(--fff05);
	margin-bottom: 1em;
}
.renew-sitemap_group-title:hover{
	color: var(--yellow);
	border-bottom: 1px solid var(--yellow);
}
.renew-sitemap_sections{
	display: flex;
	flex-wrap: wrap;
	gap: 2em;
}
.renew-sitemap_section{
	flex: 0 1 max-content;
	max-width: 20em;
}
.renew-sitemap_section-title{
	font-weight: 700;
	font-size: clamp(13px, 1.2vw, 16px);
	color: #fff;
}
.renew-sitemap_links{
	padding-left: 1.3em !important;
}
.renew-sitemap_links li{
	list-style: disc outside;
	color: #fff;
}
.renew-sitemap_link{
	font-size: clamp(12px, 1.1vw, 13px);
	padding: 0.4em 1em 0.3em 0;
    line-height: 1.4;
    display: block;
}
.renew-sitemap_links li:hover{
	background: var(--fff01);
}
.renew-sitemap_link b{
	color: red;
}
.renew-sitemap_lang{
	text-align: center;
	margin: 0.5em 0;
	letter-spacing: 0.05em;
	font-size: clamp(12px, 1.1vw, 14px);
}
.renew-sitemap_lang-jp:after{
	content: "／";
	padding: 0 0.5em;
}
.renew-sitemap_lang a:hover{
	opacity: 0.7;
}
.renew-snav_close{
	position: fixed;
	bottom: 1em;
	left: 50%;
	transform: translateX(-50%);
	border: 1px solid #fff;
	background: #444;
	color: #fff;
	padding: 0.5em 2em;
	line-height: 1;
	z-index: 999;
	transition: 0.3s all;
	font-size: clamp(12px, 1.1vw, 14px);
}
.renew-snav_close:hover{
	background: #333;
}
@media screen and (max-width: 1480px) {
	.renew-sitemap{
		padding: 5em 2em;
	}
}
@media screen and (max-width: 1280px) {
	.renew-sitemap_target{
		width: 100%;
		order: 0;
		margin: 0 0 2em;
	}
	.renew-sitemap_target-links{
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(10em, 1fr));
		gap: 0.5em;
	}
	.renew-sitemap_body{
		flex: initial;
		width: 100%;
		order: 1;
	}
	.renew-sitemap_lang{
		text-align: left;
	}
}
@media screen and (max-width: 680px) {
    .renew-sitemap {
        padding: 5em 2.5%;
    }
	.renew-sitemap_sections{
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1em;
	}
	.renew-sitemap_section{
		flex: initial;
	}
}
@media screen and (max-width: 480px) {
	.renew-sitemap_sections{
		grid-template-columns: 1fr;
	}
	.renew-sitemap_section{
		flex: initial;
		max-width: 100%;
	}
}
/*TARGET NAV*/
.renew-header_tnav .renew-sitemap_target{
	width: 100%;
	margin: 0;
}
.renew-header_tnav .renew-sitemap_target-links{
	display: flex;
	justify-content: flex-end;
	padding: 0 1em;
}
.renew-header_tnav .renew-sitemap_target-link {
    padding: 0;
    border: none;
    background: transparent;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.renew-header_tnav .renew-sitemap_target-link:after{
	content: "|";
	padding: 0 0.5em 0 1em;
}
.renew-header_tnav .renew-sitemap_target-links li:last-child .renew-sitemap_target-link:after{
	display: none;
}
.renew-header_tnav .renew-sitemap_lang,
.renew-header_tnav .renew-sitemap_target-link span{
	display: none;
}
.renew-header_tnav .renew-sitemap_body{
	order: 1;
	width: 100%;
}
@media screen and (max-width: 1280px) {
	.renew-header_tnav .renew-sitemap_target-link:after{
		padding: 0 0.5em;
	}
	.renew-header_tnav .renew-sitemap_target-link{
		height: 45px;
	}
}
/*GLOBAL NAV*/
.renew-header_gnav{
	grid-column: 2 / 4;
	grid-row: 2;
}
.renew-header_gnav .renew-sitemap_sections{
	display: none;
}
.renew-header_gnav .renew-sitemap_body{
	display: flex;
	justify-content: flex-end;
}
.renew-header_gnav .renew-sitemap_group {
    margin-bottom: 0;
}
.renew-header_gnav .renew-sitemap_group-title{
	color: var(--black);
	font-size: clamp(13px, 1.2vw, 15px);
	margin: 0;
	padding: 0 1em;
	line-height: 1;
}
@media screen and (max-width: 1380px) {
	.renew-header_gnav .renew-sitemap_group-title{
		padding: 0 0.6em;
	}
}
@media screen and (max-width: 1080px) {
	.renew-header_gnav .renew-sitemap_group-title{
		display: none;
	}
}
/*BREAD*/
.renew-bread{
	width: 100%;
	padding: 0.2em 0.2em 0.2em 1em;
    position: relative;
    z-index: 1;
}
.renew-bread_list{
	display: flex;
	flex-wrap: wrap;
	line-height: 1;
	padding: 0.3em 0 !important;
}
.renew-bread_link,
.renew-bread_current{
	display: block;
	font-size: clamp(11px, 1.1vw, 12px);
	padding: 0.3em 0;
	color: var(--dgray);
}
.renew-bread_link:after{
	content: ">";
	display: inline-block;
	transform: scale(0.5, 1);
	font-weight: 900;
	padding: 0 0.5em;
	vertical-align: 1px;
}
.renew-bread_link:hover{
	text-decoration: underline;
}
.renew-bread_current{
	color: var(--gray);
}
@media screen and (max-width: 680px) {
	.renew-bread{
		padding: 0.2em 0.2em 0.2em 1em;
	}
}
/*MARQUEE*/
.renew-marquee{
    overflow: hidden;
    width: 100%;
    white-space: nowrap;
	line-height: 1;
}
.renew-marquee span{
	display: inline-block;
	padding-right: 0.5em;
	animation: marquee 10s linear infinite;
	font-size: clamp(38px, 6vw, 98px);
	color: var(--back);
}

@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@media (max-width: 780px) {
    .marquee-wrap{
        padding: 3em 0;
    }
}
/*FOOTER SITEMAP*/
.renew-footer{
	border-top: 5px solid var(--yellow);
	position: relative;
	z-index: 10;
}
.renew-footer_toggle{
	width: 100%;
	background: var(--black);
	text-align: center;
	line-height: 1;
	padding: 0.7em 0;
	color: #fff;
	letter-spacing: 0.2em;
	cursor: pointer;
}
.renew-footer_toggle:after{
	content: "＋";
	display: inline-block;
	color: #fff;
}.renew-footer_toggle[aria-expanded="true"]:after {
	content: "－";
}
.renew-footer_sitemap{
	background: var(--black);
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows .45s ease;
	overflow: hidden;
}
.renew-footer_sitemap_inner {
	min-height: 0;
}
.renew-footer_sitemap.is-open {
	grid-template-rows: 1fr;
}
.renew-footer_toggle_close{
	display: block;
	width: 10em;
	text-align: center;
	margin: 0 auto 3em;
	background: #444;
	border: 1px solid #fff;
	color: #fff;
	cursor: pointer;
	letter-spacing: 0.2em;
	line-height: 1;
	padding: 0.7em 0;
	transition: 0.3s all;
	font-size: clamp(12px, 1.1vw, 14px);
}
.renew-footer_toggle_close:hover{
	background: #333;
}

/*FOOTER*/
.renew-footer_add a{
	text-decoration: underline !important;
}
.renew-footer_add a:hover{
	color: var(--yellow);
}
.renew-footer_content{
	background: var(--blue);
	padding: 3em 0;
	text-align: center;
	color: #fff;
}
.renew-footer_content-ctas{
	display: flex;
	justify-content: center;
	gap: 1em;
	margin: 1em 0 2em;
}
.renew-footer_content-cta{
	border: 1px solid #fff;
	background: rgba(255,255,255,0.1);
	line-height: 1;
	padding: 0.7em 0;
	text-align: center;
	color: #fff;
	width: 15em;
}
.renew-footer_content-cta:hover{
	background: rgba(255,255,255,0.2); 
}
.renew-totop{
	position: fixed;
	bottom: 1em;
	right: 1em;
	width: 2em;
	height: 2em;
	border-top: 2px solid var(--dgray);
	border-right: 2px solid var(--dgray);
	z-index: 10;
	pointer-events: none;
	opacity: 0;
	transform: translateY(2em) rotate(-45deg);
	transition: opacity 0.3s ease, transform 0.3s ease;
}
.renew-totop.is-show{
	pointer-events: auto;
	opacity: 1;
	transform: translateY(0) rotate(-45deg);
}
.renew-totop.is-show:hover{
	border-top: 2px solid var(--yellow);
	border-right: 2px solid var(--yellow);
}
@media (max-width: 480px) {
	.renew-footer_content {
		padding: 2em 0 5em;
	}
	.renew-footer_content-ctas {
		margin: 1em 0;
	}
	.renew-footer_content-cta{
		width: 10em;
	}
.renew-totop{
	bottom: 3em;
}
}














