@charset "utf-8";
/* CSS Document */

/*------------------------------------------------------------------
--------------------------------------------------------------------
　　　　　　　　　　　ページ専用css
--------------------------------------------------------------------
------------------------------------------------------------------*/

img {
	max-width: 100%;
	width: 100%;
	height: auto;
}

/* .h1Wrap01 {
	display: none;
}
#contents:before {
    height: 76px;
    margin-bottom: 0px;
} */

.fadein {
	opacity: 0;
	animation-name: fadein;
	animation-duration: 1.5s;
	animation-delay: 1s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}

@keyframes fadein {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

/*----------------------------------------------*/

#contents {
	max-width: 4000px;
}
#tetsudo {
	font-family: "line_seed_jp", sans-serif;
}

a.hover:hover {
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
	transition-duration: 0.3s;
}

/*-----------------------*/

.anc {
	position: relative;
}
.ancIn {
	position: absolute;
	/*top: -69px;*/
}

#top {
	/*padding-top: 69px;*/
}

/*-----------------------*/

.pc {
	display: block;
}

.sp {
	display: none;
}

.pcBr {
	display: inline;
}

.spBr {
	display: none;
}

.pcTable {
	display: table !important;
}
.spTable {
	display: none !important;
}


/*--------------------*/

.membership {
	text-align: center;
	padding: 90px 4vw 96px;
}

.membership .a1,
.membership .a2 {
	position: relative;
	margin-top: 0;
	width: 47.22%;
}

.section-body .layout {
	display: flex;
	max-width: 900px;
	width: auto;
	justify-content: space-between;
	margin: auto;
}

.ex-index section.membership .section-title .title {
	font-size: 32px;
	line-height: 1.5em;
}

.section-title {
	margin-bottom: 60px;
	font-size: 32px;
	line-height: 1.5em;
	font-weight: 900;
}

.section-title em {
	color: #f55f00;
}

.membershipBtn01 {
	text-align: center;
	width: 100%;
	position: absolute;
	left: 0px;
	bottom: 20px;
}

.membershipBtn01 a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: 3px solid #0196e6;
	box-sizing: border-box;
	width: 84%;
	height: 60px;
	border-radius: 100px;
	color: #0196e6;
	font-size: 18px;
	margin: auto;
	transition-duration: 0.3s;
}

.membershipBtn01 a:link {
	color: #0196e6;
	text-decoration: none;
}

.membershipBtn01 a:visited {
	color: #0196e6;
	text-decoration: none;
}

.membershipBtn01 a:hover {
	color: #ffffff;
	text-decoration: none;
	background-color: #0196e6;
	transition-duration: 0.3s;
}

.membershipBtn01 a:active {
	color: #0196e6;
	text-decoration: none;
}

.membershipBtn01 a::after {
	content: "";
	background-image: url("../images/_ico-target-blank-blue-01.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 20px auto;
	width: 20px;
	height: 20px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
}

.membershipBtn01 a:hover::after {
	background-image: url("../images/_ico-target-blank-white.svg");
}



/*--2024/09/05------------*/

.mainBottomBlock01 {
	background-color: #2BB378;
	padding: 15px 20px;
	text-align: center;
	color: #ffffff;
}
.mainBottomBlock01 .t01 {
	font-size: 14px;
	line-height: 1.5em;
	font-weight: bold;
}
.mainBottomBlock01 .t02 {
	font-size: 16px;
	line-height: 1.4em;
	font-weight: bold;
}
.mainBottomBlock01 .t03 {
	font-size: 12px;
	line-height: 1.5em;
	font-weight: normal;
	margin-top: 8px;
}

.colYel01 {
	color: #FFEA00;
	font-weight: bold;
}

	/*--------------*/

/* .rankingBlock01 {
	position: relative;
	padding: 80px 0px 40px 0px;
}
.rankingBlock01::before {
	content: "";
	background-image: url("../images/cont03_bg01.webp");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	height: 390px;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
} */

.contH201 {
	text-align: center;
	margin-bottom: 30px;
}
.contH201 .s01 {
	display: inline-block;
	background-image: url("../images/tit_line01.webp");
	background-repeat: repeat-x;
	background-position: center bottom;
	background-size: auto 13px;
	color: #0054A7;
	font-size: 28px;
	line-height: 1.0em;
	font-weight: bold;
	padding-bottom: 5px;
}
.contH201 .s01::before {
	content: "/";
	display: inline-block;
	font-size: 20px;
	font-weight: 400;
	transform: rotate(-15deg) scale(-1, 1);
	vertical-align: top;
	margin-right: 5px;
}
.contH201 .s01::after {
	content: "/";
	display: inline-block;
	font-size: 20px;
	font-weight: 400;
	transform: rotate(15deg);
	vertical-align: top;
	margin-left: 5px;
}

.rankingWrap01 {
	text-align: center;
}
.rankingFlex01 {
	display: inline-flex;
	align-items: center;
	/*margin: 30px auto 0px auto;*/
	margin-top: 30px;
}
.rankingFlex01 .box01 {
	text-align: left;
	margin-left: 16px;
}
.rankingFlex01 .box01 .h301 {
	font-size: 14px;
	line-height: 1.5em;
	font-weight: bold;
	margin-bottom: 7px;
}
.rankingFlex02 {
	display: flex;
	color: #808080;
}
.rankingFlex02 li {
	position: relative;
}

.rankingFlex02 li:first-child {
	margin-right: 25px;
}
/* .rankingFlex02 li:first-child::after {
	content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 8px solid #d62121;
  border-right: 0;
	position: absolute;
	right: -17px;
	top: 50%;
	transform: translateY(-50%)
} */

.rankingFlex02 .p01 {
	font-size: 12px;
	line-height: 1.3em;
}
.rankingFlex02 .p02 {
	font-size: 16px;
	line-height: 1.3em;
	font-weight: bold;
}
.rankingFlex02 .sm14 {
	font-size: 14px;
}

.colRed01 {
	color: #D62121;
}

.rankingFlex03 {
	display: flex;
	justify-content: center;
	margin: 0px auto 0px auto;
}
.rankingFlex03 .rankingFlex01 {
	margin-left: 24px;
	margin-right: 24px;
}

.contBtn01 {
	margin-top: 32px;
}
.contBtn01 a {
	position: relative;
	display: flex;
	align-items: center;
	text-align: left;
	box-sizing: border-box;
	width: 550px;
	height: 96px;
	padding: 6px 28px 6px 28px;
	border-radius: 8px;
	background-color: #D62121;
	margin: auto;
	font-size: 16px;
}
.contBtn01 a:link {	color: #ffffff;	text-decoration: none;}
.contBtn01 a:visited {	color: #ffffff;	text-decoration: none;}
.contBtn01 a:hover {	color:#ffffff;	text-decoration: none;}
.contBtn01 a:active {	color:#ffffff;	text-decoration: none;}

.contBtn01 a::after {
	content: "";
	background-image: url("../images/cont_btn_ar01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 20px auto;
	width: 20px;
	height: 20px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

.contBtn01 a .fsize16 {
	font-size: 21px;
}

.contBtnFlex01 {
	display: flex;
	justify-content: center;
	margin-top: 32px;
}
.contBtnFlex01 li {
	margin: 0px 16px;
}

.contBtn02 {
	position: relative;
	display: flex;
	align-items: center;
	text-align: left;
	box-sizing: border-box;
	width: 360px;
	height: 50px;
	border-radius: 8px;
	background-color: #0154A7;
	padding: 5px 32px 5px 15px;
	font-size: 16px;
	line-height: 1.2em;
	font-weight: bold;
}
a.contBtn02:link {	color: #ffffff;	text-decoration: none;}
a.contBtn02:visited {	color: #ffffff;	text-decoration: none;}
a.contBtn02:hover {	color:#ffffff;	text-decoration: none;}
a.contBtn02:active {	color:#ffffff;	text-decoration: none;}

.contBtn02::after {
	content: "";
	background-image: url("../images/cont01_btn_ar01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 16px auto;
	width: 16px;
	height: 16px;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
}

/*-----------------------*/

.searchBlock01 {
	background-color: #F6F3ED;
	padding: 64px 78px;
}

/*-----------------------*/

.salesBlock01 {
}

.salesBox01Wrap01 {
	position: relative;
	background-image: url("../images/bg.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	height: 420px;
	padding: 30px 14px 10px 14px;
}
.salesBox01 {
	text-align: center;
	position: relative;
	box-sizing: border-box;
}

.posiRe {
	position: relative;
}
.salesDeco01 {
	width: 200px;
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
}
.salesImg01 {
	width: 450px;
	margin: 0px auto 10px;
}
.salesTextBox01 {
	margin-top: 10px;
}
.salesText01 {
	color: #0154A7;
	font-size: 18px;
	line-height: 1.3em;
	font-weight: bold;
}
.salesText02 {
	font-size: 12px;
	line-height: 1.4em;
	text-align: left;
	display: inline-block;
	margin-top: 4px;
}
.salesText02 li {
	text-indent: -1em;
	padding-left: 1em;
}

/*---------------------*/

.introBlock01 {
	background-color: #BA955A;
	padding: 48px 0px;
	text-align: center;
	color: #ffffff;
}

.introH201Wrap01 {
	text-align: center;
	margin-bottom: 32px;
}
.introH201 {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-image: url("../images/cont04_tit_bg01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	width: 468px;
	height: 65px;
	box-sizing: border-box;
	padding: 2px 30px 14px 30px;
	color: #BA955A;
	font-size: 26px;
	line-height: 1.0em;
	font-weight: bold;
	margin: auto;
}
.introImg01 {
	margin-bottom: 15px;
}
.introText01 {
	font-size: 14px;
	line-height: 1.28em;
	font-weight: bold;
}

a.link01:link {	color: #ffffff;	text-decoration: underline;}
a.link01:visited {	color: #ffffff;	text-decoration: underline;}
a.link01:hover {	color:#ffffff;	text-decoration: none;}
a.link01:active {	color:#ffffff;	text-decoration: none;}

.introBox01 {
	display: inline-block;
	border: 2px solid #FFFFFF;
	border-radius: 16px;
	padding: 28px 32px;
	margin: 32px auto 0px auto;
	font-size: 14px;
	line-height: 1.28em;
	font-weight: bold;
}
.introBox01 .p02 {
	margin-top: 1.28em;
}

.btnGreen .contBtn02 {
	background-color: #597C14;
}
.btnGreen .contBtn02::after {
	background-image: url("../images/cont04_btn_ar01.webp");
}

/*---------------------*/

.flowBlock01 {
	margin-top: 90px;
}
.flowBox01 {
	border: 2px solid #0154A7;
	border-radius: 16px;
	text-align: center;
	padding: 0px 16px 16px 16px;
	margin-bottom: 16px;
}
.flowH301Wrap01 {
	text-align: center;
	margin-bottom: 10px;
}
.flowH301Wrap01 .flowH301 {
	color: #ffffff;
	font-size: 14px;
	line-height: 1.2em;
	font-weight: bold;
	background-color: #0154A7;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	width: 80px;
	height: 40px;
	padding: 2px 2px 10px 2px;
	border-radius: 0px 0px 100px 100px;
}

.flowImg01 {
	margin-top: 10px;
}
.flowImg01 img {
	width: 238px;
	height: auto;
}

.flowText01 {
	font-size: 16px;
	line-height: 1.5em;
	font-weight: bold;
}
.flowText02 {
	font-size: 10px;
	line-height: 1.5em;
	margin-top: 10px;
}
.flowText03 {
	font-size: 12px;
	line-height: 1.5em;
	margin-top: 10px;
}
.flowText04 {
	font-size: 12px;
	line-height: 1.4em;
	text-align: center;
}

a.link02:link {	color: #333333;	text-decoration: underline;}
a.link02:visited {	color: #333333;	text-decoration: underline;}
a.link02:hover {	color:#333333;	text-decoration: none;}
a.link02:active {	color:#333333;	text-decoration: none;}

/*------------------*/

.precauBlock01 {
	margin-top: 90px;
}
.precauH201 {
	background-color: #D62121;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	height: 30px;
	padding: 2px 20px;
	color: #ffffff;
	font-size: 14px;
	line-height: 1.0em;
	font-weight: bold;
	margin-bottom: 8px;
}
.precauText01 {
	font-size: 12px;
	line-height: 1.5em;
}
.precauText01 li {
	text-indent: -1em;
	padding-left: 1em;
}

.recommendFlex01 {
    display: flex;
    justify-content: center;
    align-items: center;
}
.recommendFlex01 li {
	width: 342px;
	margin: 0px 24px;
}
.recommendTextBox01 {
	margin-top: 10px;
	font-size: 12px;
	line-height: 1.5em;
	text-align: center;
}

/*------------------------------
	下層
-------------------------------*/

.mainvisual01 {
	background-image: url("../images/keyvis_pc.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	text-align: center;
	height: 500px;
}
.mainvisual01 img {
	width: 860px;
	height: auto;
}
.contText01 {
	font-size: 12px;
	line-height: 1.5em;
	text-align: center;
	margin-top: 10px;
}

/*-------------------*/

.detailAncBlock01 {
	background-color: #FCF7ED;
	padding: 80px 0px;
}
.detailH201 {
	margin-bottom: 40px;
}
.detailH201 img {
	width: auto;
	height: 93px;
}
.detailAncNavi01 {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.detailAncNavi01 li {
	margin: 0px 8px;
	width: 175px;
}

.detailBlock01 {
	background-color: #FCF7ED;
}
.detailH301 {
	background-image: url("../images/detail_tit_bg06.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	height: 90px;
	color: #ffffff;
	font-size: 28px;
	line-height: 1.0em;
	font-weight: bold;
}

.detailContWrap01 {
	width: 840px;
	margin: auto;
	padding: 0px 0px 80px 0px;
}
.detailFlex01 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.detailFlex01 a {
	position: relative;
	background-color: #ffffff;
	border: 1px solid #DBDBDB;
	border-radius: 16px;
	box-sizing: border-box;
	padding: 20px;
	width: 47.6%;
	margin-top: 40px;
	display: block;
}
.detailFlex01 a:link {	color: #333333;	text-decoration: none;}
.detailFlex01 a:visited {	color: #333333;	text-decoration: none;}
.detailFlex01 a:hover {	color:#333333;	text-decoration: none;}
.detailFlex01 a:active {	color:#333333;	text-decoration: none;}

.detailFlex01 a::after {
	content: "";
	background-image: url("../images/cont_btn_ar02.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 25px auto;
	width: 25px;
	height: 25px;
	position: absolute;
	right: 20px;
	bottom: 20px;
}

.detailUl01 {
	display: flex;
	margin-bottom: 10px;
}
.detailUl01 li {
	margin-right: 4px;
}
.detailUl01 .p01 {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding: 3px 10px;
	height: 28px;
	background-color: #DE3179;
	border-radius: 50px;
	color: #ffffff;
	font-size: 12px;
	line-height: 1.4em;
	font-weight: bold;
}
.detailUl01 .p01::before {
	content: "";
	display: inline-block;
	background-image: url("../images/cont_icon01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 11px;
	height: 11px;
	width: 9px;
	margin-right: 2px;
	vertical-align: middle;
}

.detailUl01 .p02 {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding: 3px 10px;
	height: 28px;
	background-color: rgba(222,49,121,0.07);
	border: 1px solid rgba(222,49,121,0.3);
	border-radius: 50px;
	color: #DE3179;
	font-size: 12px;
	line-height: 1.4em;
	font-weight: bold;
}
.detailH401 {
	font-size: 16px;
	line-height: 1.3em;
	font-weight: bold;
	margin: 10px auto;
}
.detailH401 img {
	width: 57px;
	height: auto;
	vertical-align: middle;
}
.detailH401 .s01 {
	font-size: 12px;
	font-weight: normal;
}

.detailBox01 {
	background-color: #FCF7ED;
	border-radius: 8px;
	padding: 16px;
	margin: 10px auto 18px auto;
}
.detailPoint01 {
	color: #DE3179;
	font-size: 14px;
	line-height: 1.5em;
	font-weight: bold;
	margin-bottom: 6px;
}
.detailPoint01::before {
	content: "";
	display: inline-block;
	background-image: url("../images/detail_06_point01.webp");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 16px auto;
	width: 16px;
	height: 17px;
	margin-right: 4px;
	vertical-align: middle;
}
.detailUl02 {
	font-size: 14px;
	line-height: 1.3em;
}
.detailUl02 li {
	text-indent: -1em;
	padding-left: 1em;
	margin-top: 6px;
}
.detailBoxIn01 {
	border-top: 1px dotted #DBDBDB;
	padding-top: 10px;
}

.detailFlex02 {
	display: flex;
	justify-content: space-between;
	margin: 10px auto;
}
.detailFlex02 .img01 {
	width: 50%;
}
.detailFlex02 .text01 {
	width: 46%;
}

/*-----------------*/

.block02 .detailH301 {
	background-image: url("../images/detail_tit_bg02.webp");
}

.block02 .detailUl01 .p01 {
	background-color: #2F8172;
}
.block02 .detailUl01 .p02 {
	background-color: rgba(47,129,114,0.07);
	border: 1px solid rgba(47,129,114,0.3);
	color: #2F8172;
}
.block02 .detailPoint01 {
	color: #2F8172;
}
.block02 .detailPoint01::before {
	background-image: url("../images/detail_02_point01.webp");
}

/*-----------------*/

.block03 .detailH301 {
	background-image: url("../images/detail_tit_bg08.webp");
}

.block03 .detailUl01 .p01 {
	background-color: #EB9C00;
}
.block03 .detailUl01 .p02 {
	background-color: rgba(235,156,0,0.07);
	border: 1px solid rgba(235,156,0,0.3);
	color: #EB9C00;
}
.block03 .detailPoint01 {
	color: #EB9C00;
}
.block03 .detailPoint01::before {
	background-image: url("../images/detail_08_point01.webp");
}

/*-----------------*/

.block04 .detailH301 {
	background-image: url("../images/detail_tit_bg09.webp");
}

.block04 .detailUl01 .p01 {
	background-color: #AF6ABD;
}
.block04 .detailUl01 .p02 {
	background-color: rgba(175,106,189,0.07);
	border: 1px solid rgba(175,106,189,0.3);
	color: #AF6ABD;
}
.block04 .detailPoint01 {
	color: #AF6ABD;
}
.block04 .detailPoint01::before {
	background-image: url("../images/detail_09_point01.webp");
}

/*-----------------------*/

.block05 .detailH301 {
	background-image: url("../images/detail_tit_bg07.webp");
}

.block05 .detailUl01 .p01 {
	background-color: #00A393;
}
.block05 .detailUl01 .p02 {
	background-color: rgba(0,163,147,0.07);
	border: 1px solid rgba(0,163,147,0.3);
	color: #00A393;
}
.block05 .detailPoint01 {
	color: #00A393;
}
.block05 .detailPoint01::before {
	background-image: url("../images/detail_07_point01.webp");
}

/*-----------------------*/
.detailBtnBlock01 {
	padding: 40px 0px;
}

.contBtn01.btn02 {
	margin-top: 0px;
}
.contBtn01.btn02 a {
	width: 450px;
	height: 74px;
	font-size: 21px;
	font-weight: bold;
}


/* 240925 */
/*------------------*/
.inquiry .footerBlock01 {
    background-color: #F5F5F5;
    padding: 35px 0;
    font-size: 14px;
    line-height: 1.5em;
    border-radius: 10px;
}
.inquiry .footerIn01 {
	width: auto;
	margin: auto;
	text-align: center;
}
.inquiry .footerH301 {
	text-align: center;
	margin-bottom: 13px;
}
.inquiry .footerH301 span {
	display: inline-block;
	padding: 4px 26px;
	border: 1px solid #333333;
	border-radius: 50px;
}
.inquiry .footerLinkBox01 p::before {
	content: '';
	border: 0;
	border-top: solid 2px #005DAB;
	border-right: solid 2px #005DAB;
	display: inline-block;
	width: 5px;
	height: 5px;
	margin: auto;
	transform: rotate(45deg);
	transition: all .3s;
	margin-right: 8px;
}
.inquiry .footerLinkBox01 a:link {
	color: #F6A828;
	text-decoration: underline;
}
.inquiry .footerContactWrap01 {
	margin-top: 20px;
}
.inquiry .footerContactWrap01 dt {
	font-weight: bold;
	margin-bottom: 14px;
}

.inquiry {
    padding: 0 4vw;
    max-width: 1000px;
    margin: 64px auto 32px;
}


/*------------------------------------------------------------------
--------------------------------------------------------------------
　　　　　　　ページ専用css  スマホ用
--------------------------------------------------------------------
------------------------------------------------------------------*/
@media screen and (max-width: 999px) {

	.detailAncNavi01 li {
		width: 22%;
	}
	.detailContWrap01 {
		width: auto;
	}
	.detailFlex01 a {
		width: 48.6%;
	}


}


@media screen and (max-width: 749px) {

	#contents:before {
			height: 55px;
			margin-bottom: 0px;
	}

	/*-----------------------*/

	.anc {
		position: relative;
	}
	.ancIn {
		position: absolute;
		/*top: -79px;*/
	}

	#top {
		/*padding-top: 79px;*/
	}

	/*-----------------------*/

	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.pcBr {
		display: none;
	}
	.spBr {
		display: inline;
	}

	.pcTable {
		display: none !important;
	}
	.spTable {
		display: table !important;
	}

	/*--------------------*/

	.membership {
		text-align: center;
		padding: 12.8vw 4vw;
	}

	.membership .a1,
	.membership .a2 {
		position: relative;
		margin-top: 10.13vw;
		width: auto;
	}

	.section-body .layout {
		display: block;
		max-width: 900px;
		width: auto;
		justify-content: space-between;
		margin: auto;
	}

	.ex-index section.membership .section-title .title {
		font-size: 5.0666666667vw;
		line-height: 8vw
	}

	.section-title {
		margin-bottom: 9.33vw;
		font-size: 5.0666666667vw;
		line-height: 8vw;
		font-weight: 900;
	}

	.section-title em {
		color: #f55f00;
	}

	.membershipBtn01 {
		text-align: center;
		width: 100%;
		position: absolute;
		left: 0px;
		bottom: 6.9vw;
	}

	.membershipBtn01 a {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		border: 3px solid #0196e6;
		box-sizing: border-box;
		width: 84%;
		height: 13.3vw;
		border-radius: 15vw;
		color: #0196e6;
		font-size: 4vw;
		margin: auto;
	}

	.membershipBtn01 a:link {
		color: #0196e6;
		text-decoration: none;
	}

	.membershipBtn01 a:visited {
		color: #0196e6;
		text-decoration: none;
	}

	.membershipBtn01 a:hover {
		color: #0196e6;
		text-decoration: none;
	}

	.membershipBtn01 a:active {
		color: #0196e6;
		text-decoration: none;
	}

	.membershipBtn01 a::after {
		content: "";
		background-image: url("../images/_ico-target-blank-blue-01.svg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 3.86vw auto;
		width: 3.86vw;
		height: 3.86vw;
		position: absolute;
		right: 5.2vw;
		top: 50%;
		transform: translateY(-50%);
	}


	/*--2024/09/05------------*/

	#tetsudo .page-wrap {
		padding: 0px;
	}
	.h1Wrap01 {
		padding-left: 15px;
	}
	.mainBottomBlock01 {
		padding: 15px 15px;
		text-align: center;
		color: #ffffff;
	}
	.mainBottomBlock01 .t01 {
		font-size: 12px;
		line-height: 1.5em;
		font-weight: bold;
	}
	.mainBottomBlock01 .t02 {
		font-size: 14px;
		line-height: 1.4em;
		font-weight: bold;
		text-align: left;
	}
	.mainBottomBlock01 .t03 {
		font-size: 10px;
		line-height: 1.5em;
		font-weight: normal;
		margin-top: 8px;
		text-align: left;
	}

		/*--------------*/

	.rankingBlock01 {
		padding: 0px;
	}
	.rankingBlock01::before {
		display: none;
	}

	.contH201 {
		text-align: center;
		margin-bottom: 30px;
	}
	.contH201 .s01 {
		display: inline-block;
		background-image: url("../images/tit_line01.webp");
		background-repeat: repeat-x;
		background-position: center bottom;
		background-size: auto 13px;
		color: #0054A7;
		font-size: 21px;
		line-height: 1.0em;
		font-weight: bold;
		padding-bottom: 5px;
	}
	.contH201 .s01::before {
		content: "/";
		display: inline-block;
		font-size: 20px;
		font-weight: 400;
		transform: rotate(-15deg) scale(-1, 1);
		vertical-align: top;
		margin-right: 5px;
	}
	.contH201 .s01::after {
		content: "/";
		display: inline-block;
		font-size: 20px;
		font-weight: 400;
		transform: rotate(15deg);
		vertical-align: top;
		margin-left: 5px;
	}

	.rankingWrap01 {
		text-align: center;
	}
	.rankingFlex01 {
		display: block;
		margin-top: 0px;
	}
	.rankingFlex01 .box01 {
		text-align: left;
		margin-left: 0px;
	}
	.rankingFlex01 .box01 .h301 {
		font-size: 14px;
		line-height: 1.5em;
		font-weight: bold;
		margin-bottom: 7px;
	}
	.rankingFlex01 .box01 .h301 img {
		width: 32px;
		height: auto;
		vertical-align: sub;
	}

	.rankingFlex02 {
		display: flex;
		color: #808080;
	}
	.rankingFlex02 li {
		position: relative;
		display: block;
	}

	.rankingFlex02 li:first-child {
		margin-right: 25px;
	}
	/* .rankingFlex02 li:first-child::after {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-top: 8px solid transparent;
		border-bottom: 8px solid transparent;
		border-left: 8px solid #d62121;
		border-right: 0;
		position: absolute;
		right: -17px;
		top: 50%;
		transform: translateY(-50%)
	} */

	.rankingFlex02 .p01 {
		font-size: 10px;
		line-height: 1.3em;
		margin-right: 8px;
	}
	.rankingFlex02 .p02 {
		font-size: 16px;
		line-height: 1.3em;
		font-weight: bold;
	}
	.rankingFlex02 .sm14 {
		font-size: 14px;
	}

	.colRed01 {
		color: #D62121;
	}

	.rankingFlex03 {
		display: block;
		margin: 0px auto 0px auto;
	}
	.rankingFlex03 .rankingFlex01 {
		margin-left: 0px;
		margin-right: 0px;
		border-top: 1px solid #BBBBBB;
		padding-top: 5px;
		margin-top: 10px;
	}

	.contBtn01 {
		margin-top: 32px;
		padding: 0px 15px 30px 15px;
	}
	.contBtn01 a {
		display: flex;
		align-items: center;
		box-sizing: border-box;
		width: 100%;
		height: 64px;
		border-radius: 8px;
		background-color: #D62121;
		margin: auto;
		font-size: 12px;
	}
	.contBtn01 a:link {	color: #ffffff;	text-decoration: none;}
	.contBtn01 a:visited {	color: #ffffff;	text-decoration: none;}
	.contBtn01 a:hover {	color:#ffffff;	text-decoration: none;}
	.contBtn01 a:active {	color:#ffffff;	text-decoration: none;}

	.contBtn01 a::after {
		content: "";
		background-image: url("../images/cont_btn_ar01.webp");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 20px auto;
		width: 20px;
		height: 20px;
		position: absolute;
		right: 20px;
		top: 50%;
		transform: translateY(-50%);
	}

	.contBtn01 a .fsize16 {
		font-size: 16px;
	}

	.contBtnFlex01 {
		display: flex;
		justify-content: center;
		margin-top: 30px;
	}
	.contBtnFlex01 li {
		width: 146px;
		margin: 0px 8px;
	}

	.contBtn02 {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		box-sizing: border-box;
		width: 100%;
		height: 64px;
		border-radius: 8px;
		background-color: #0154A7;
		padding: 5px 5px 24px 5px;
		font-size: 16px;
		line-height: 1.2em;
		font-weight: bold;
	}
	a.contBtn02:link {	color: #ffffff;	text-decoration: none;}
	a.contBtn02:visited {	color: #ffffff;	text-decoration: none;}
	a.contBtn02:hover {	color:#ffffff;	text-decoration: none;}
	a.contBtn02:active {	color:#ffffff;	text-decoration: none;}

	.contBtn02::after {
		content: "";
		background-image: url("../images/cont01_btn_ar01.webp");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 16px auto;
		width: 16px;
		height: 16px;
		position: absolute;
		right: auto;
		top: auto;
		transform: translateY(0) translateX(-50%);
		bottom: 10px;
		left: 50%;
		/*transform: translateX(-50%);*/
	}

	/*-----------------------*/

	.searchBlock01 {
		background-color: #F6F3ED;
		padding: 30px 15px;
	}

	/*-----------------------*/

	/* .salesBlock01 {
		padding: 30px 15px;
		background-image: url("../images/cont03_bg01_sp.webp");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
	} */

	.salesBox01Wrap01 {
		position: relative;
		background-image: url("../images/bg_sp.webp");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100% 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		box-sizing: border-box;
		height: 312px;
		padding: 30px 14px 10px 14px;
	}
	.salesBox01 {
		text-align: center;
		position: relative;
		box-sizing: border-box;
	}

	.posiRe {
		position: relative;
	}
	.salesDeco01 {
		width: 130px;
		position: absolute;
		top: -19px;
		left: 50%;
		transform: translateX(-50%);
		z-index: 2;
	}
	.salesImg01 {
		width: auto;
		margin: 0px auto 10px;
	}
	.salesTextBox01 {
		margin-top: 10px;
	}
	.salesText01 {
		color: #0154A7;
		font-size: 14px;
		line-height: 1.3em;
		font-weight: bold;
	}
	.salesText02 {
		font-size: 12px;
		line-height: 1.4em;
		text-align: left;
		display: inline-block;
		margin-top: 10px;
	}
	.salesText02 li {
		text-indent: -1em;
		padding-left: 1em;
	}

	/*---------------------*/

	.introBlock01 {
		background-color: #BA955A;
		padding: 30px 15px;
		text-align: center;
		color: #ffffff;
	}

	.introH201Wrap01 {
		text-align: center;
		margin-bottom: 16px;
	}
	.introH201 {
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		background-image: url("../images/cont04_tit_bg01.webp");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100% 100%;
		width: auto;
		height: 50px;
		box-sizing: border-box;
		padding: 2px 15px 10px 15px;
		color: #BA955A;
		font-size: 20px;
		line-height: 1.0em;
		font-weight: bold;
		margin: auto;
	}
	.introImg01 {
		margin-bottom: 15px;
	}
	.introText01 {
		font-size: 14px;
		line-height: 1.28em;
		font-weight: bold;
	}

	a.link01:link {	color: #ffffff;	text-decoration: underline;}
	a.link01:visited {	color: #ffffff;	text-decoration: underline;}
	a.link01:hover {	color:#ffffff;	text-decoration: none;}
	a.link01:active {	color:#ffffff;	text-decoration: none;}

	.introBox01 {
		display: inline-block;
		border: 2px solid #FFFFFF;
		border-radius: 16px;
		padding: 15px 15px;
		margin: 16px auto 0px auto;
		font-size: 14px;
		line-height: 1.28em;
		font-weight: bold;
		text-align: left;
	}
	.introBox01 .p02 {
		margin-top: 1.28em;
		text-align: center;
	}

	.btnGreen.contBtnFlex01 {
		display: block;
	}
	.btnGreen.contBtnFlex01 li {
		width: auto;
		margin: 0px 0px 10px 0px;
	}
	.btnGreen .contBtn02 {
		background-color: #597C14;
		text-align: left;
		padding: 10px 20px 10px 16px;
		justify-content: flex-start;
	}
	.btnGreen .contBtn02::after {
		background-image: url("../images/cont04_btn_ar01.webp");
		right: 16px;
		top: 50%;
		transform: translateY(-50%) translateX(0);
		bottom: auto;
		left: auto;
	}

	/*---------------------*/

	.flowBlock01 {
		margin-top: 30px;
		padding: 0px 16px 0px 16px;
	}
	.flowBox01 {
		border: 2px solid #0154A7;
		border-radius: 16px;
		text-align: left;
		padding: 0px 16px 16px 16px;
		margin-bottom: 16px;
	}
	.flowH301Wrap01 {
		text-align: center;
		margin-bottom: 10px;
	}
	.flowH301Wrap01 .flowH301 {
		color: #ffffff;
		font-size: 14px;
		line-height: 1.2em;
		font-weight: bold;
		background-color: #0154A7;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		box-sizing: border-box;
		width: 80px;
		height: 40px;
		padding: 2px 2px 10px 2px;
		border-radius: 0px 0px 100px 100px;
	}

	.flowImg01 {
		margin-top: 10px;
	}
	.flowImg01 img {
		width: 100%;
		height: auto;
	}

	.flowText01 {
		font-size: 16px;
		line-height: 1.5em;
		font-weight: bold;
	}
	.flowText02 {
		font-size: 10px;
		line-height: 1.5em;
		margin-top: 10px;
	}
	.flowText03 {
		font-size: 12px;
		line-height: 1.5em;
		margin-top: 10px;
	}
	.flowText04 {
		font-size: 12px;
		line-height: 1.4em;
		text-align: center;
	}

	a.link02:link {	color: #333333;	text-decoration: underline;}
	a.link02:visited {	color: #333333;	text-decoration: underline;}
	a.link02:hover {	color:#333333;	text-decoration: none;}
	a.link02:active {	color:#333333;	text-decoration: none;}

	/*------------------*/

	.precauBlock01 {
		margin-top: 60px;
		padding: 0px 16px 0px 16px;
	}
	.precauH201 {
		background-color: #D62121;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		box-sizing: border-box;
		height: 30px;
		padding: 2px 20px;
		color: #ffffff;
		font-size: 14px;
		line-height: 1.0em;
		font-weight: bold;
		margin-bottom: 8px;
	}
	.precauText01 {
		font-size: 12px;
		line-height: 1.5em;
	}
	.precauText01 li {
		text-indent: -1em;
		padding-left: 1em;
	}

	.recommendFlex01 {
		display: block;
	}
	.recommendFlex01 li {
		width: auto;
		margin: 0px 0px 16px 0px;
	}
	.recommendFlex01 li img {
		width: 100%;
	}
	.recommendTextBox01 {
		margin-top: 16px;
		font-size: 12px;
		line-height: 1.5em;
		text-align: left;
	}

	.contBottomWrap01 {
		padding: 0px 16px;
	}

	/*------------------------------
		下層
	-------------------------------*/

	.mainvisual01 {
		background-image: none;
		display: block;
		height: auto;
	}
	.mainvisual01 img {
		width: 100%;
		height: auto;
	}
	.contText01 {
		font-size: 12px;
		line-height: 1.5em;
		text-align: center;
		margin-top: 10px;
	}

	/*-------------------*/

	.detailAncBlock01 {
		background-color: #FCF7ED;
		padding: 30px 15px;
	}
	.detailH201 {
		margin-bottom: 40px;
	}
	.detailH201 img {
		width: auto;
		height: 50px;
	}
	.detailAncNavi01 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.detailAncNavi01 li {
		margin: 0px 0px 10px 0px;
		width: 48.5%;
	}

	.detailBlock01 {
		background-color: #FCF7ED;
	}
	.detailH301 {
		background-image: url("../images/detail_tit_bg01.webp");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		height: 70px;
		color: #ffffff;
		font-size: 21px;
		line-height: 1.0em;
		font-weight: bold;
	}

	.detailContWrap01 {
		width: auto;
		margin: auto;
		padding: 0px 15px 30px 15px;
	}
	.detailFlex01 {
		display: block;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.detailFlex01 a {
		position: relative;
		background-color: #ffffff;
		border: 1px solid #DBDBDB;
		border-radius: 16px;
		box-sizing: border-box;
		padding: 20px;
		width: auto;
		margin-top: 16px;
	}
	.detailFlex01 a:link {	color: #333333;	text-decoration: none;}
	.detailFlex01 a:visited {	color: #333333;	text-decoration: none;}
	.detailFlex01 a:hover {	color:#333333;	text-decoration: none;}
	.detailFlex01 a:active {	color:#333333;	text-decoration: none;}

	.detailFlex01 a::after {
		content: "";
		background-image: url("../images/cont_btn_ar02.webp");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 25px auto;
		width: 25px;
		height: 25px;
		position: absolute;
		right: 20px;
		bottom: 20px;
	}

	.detailUl01 {
		display: flex;
		margin-bottom: 10px;
	}
	.detailUl01 li {
		margin-right: 4px;
	}
	.detailUl01 .p01 {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		padding: 3px 10px;
		height: 28px;
		background-color: #A3424E;
		border-radius: 50px;
		color: #ffffff;
		font-size: 12px;
		line-height: 1.4em;
		font-weight: bold;
	}
	.detailUl01 .p01::before {
		content: "";
		display: inline-block;
		background-image: url("../images/cont_icon01.webp");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: auto 11px;
		height: 11px;
		width: 9px;
		margin-right: 2px;
		vertical-align: middle;
	}

	.detailUl01 .p02 {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		padding: 3px 10px;
		height: 28px;
		background-color: rgba(163,66,78,0.07);
		border: 1px solid rgba(163,66,78,0.3);
		border-radius: 50px;
		color: #A3424E;
		font-size: 12px;
		line-height: 1.4em;
		font-weight: bold;
	}
	.detailH401 {
		font-size: 16px;
		line-height: 1.3em;
		font-weight: bold;
		margin: 10px auto;
	}
	.detailH401 img {
		width: 57px;
		height: auto;
		vertical-align: middle;
	}
	.detailH401 .s01 {
		font-size: 12px;
		font-weight: normal;
	}

	.detailBox01 {
		background-color: #FCF7ED;
		border-radius: 8px;
		padding: 16px;
		margin: 10px auto 18px auto;
	}
	.detailPoint01 {
		color: #A3424E;
		font-size: 14px;
		line-height: 1.5em;
		font-weight: bold;
		margin-bottom: 6px;
	}
	.detailPoint01::before {
		content: "";
		display: inline-block;
		background-image: url("../images/detail_01_point01.webp");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 16px auto;
		width: 16px;
		height: 17px;
		margin-right: 4px;
		vertical-align: middle;
	}
	.detailUl02 {
		font-size: 14px;
		line-height: 1.3em;
	}
	.detailUl02 li {
		text-indent: -1em;
		padding-left: 1em;
		margin-top: 6px;
	}
	.detailBoxIn01 {
		border-top: 1px dotted #DBDBDB;
		padding-top: 10px;
	}

	.detailFlex02 {
		display: flex;
		justify-content: space-between;
		margin: 10px auto;
	}
	.detailFlex02 .img01 {
		width: 50%;
	}
	.detailFlex02 .text01 {
		width: 46%;
	}

	/*-----------------------*/

	.detailBtnBlock01 {
		padding: 30px 15px;
	}

	.contBtn01.btn02 {
		margin-top: 0px;
		padding: 0px;
	}
	.contBtn01.btn02 a {
		width: 100%;
		height: 64px;
		font-size: 16px;
		font-weight: bold;
	}

	.contSpWrap01 {
		padding: 0px 16px !important;
	}

}

@media screen and (max-width: 749px) {
    .h1Wrap01 {
        padding-left: 15px !important;
    }
}

@media screen and (max-width: 999px) {
    #breadcrumbs {
        padding: 0 !important;
    }
}


/* 200918 */

@media screen and (max-width: 749px) {
	.mainBottomBlock01 .t02 {
		font-size: 12px;
	}
}

@media screen and (max-width: 749px) {
	.mainBottomBlock01 {
		padding: 8px 15px;
	}
}

.mainBottom_campaign {
	background-color: #597C14;
	padding: 8px 15px;
	text-align: center;
	color: #ffffff;
}

.mainBottom_campaign .t01 {
	font-size: 14px;
	line-height: 1.5em;
	font-weight: bold;
}

.mainBottom_campaign .t02 {
	font-size: 16px;
	line-height: 1.4em;
	font-weight: bold;
}

@media screen and (max-width: 749px) {
	.mainBottom_campaign .t01 {
		font-size: 12px;
		line-height: 1.5em;
		font-weight: bold;
	}
}

@media screen and (max-width: 749px) {
	.mainBottom_campaign .t02 {
		font-size: 14px;
		line-height: 1.4em;
		font-weight: bold;
	}
}

.salesBox01Wrap01 {
	height: 224px;
}

@media screen and (max-width: 749px) {
	.salesBox01Wrap01 {
		height: 168px;
	}
}

@media screen and (max-width: 749px) {
	.contBtn01 {
		margin-top: 16px;
		padding: 0px 15px 16px 15px;
	}
}

@media screen and (max-width: 749px) {
	.salesText02 {
		font-size: 10px;
		margin-top: 0;
	}
}

@media screen and (max-width: 749px) {
	.salesBox01Wrap01 {
		padding: 30px 16px 10px 16px;
	}
}

.rankingBlock01 {
	background-image: url(../images/cont03_bg01.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	padding: 75px 48px 65px 48px;
}

@media screen and (max-width: 749px) {
	.rankingBlock01 {
		background-image: url(../images/cont03_bg01.webp);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100% 100%;
		padding: 30px 15px 30px 15px;
	}
}

.btn_cta a {
    color: #ffffff;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    max-width: 480px;
    height: 80px;
    padding: 6px;
    border-radius: 16px;
    background-color: #e15050;
    border-bottom: solid 6px #720b0b;
    margin: auto;
    font-size: 12px;
    text-shadow: 2px 2px 4px #1c02027a;
}

.btn_cta a:hover {
	cursor: pointer;
	background: #b11414;
	border: none;
	transform: translateY(3px);
	transition-duration: 0.3s;
}

@media screen and (max-width: 749px) {
	.contBtn01 {
		margin-top: 16px;
		padding: 0px 0 16px 0;
	}
}

@media screen and (max-width: 749px) {
	.detailH201 img {
		height: 64px;
	}
}

.detailH201 {
    margin-bottom: 16px;
}

.detai_sub_ttl {
	font-size: 20px;
	text-align: center;
	color: #2BB378;
	margin: 0 0 16px;
}

.detai_sub_ttl span {
	font-weight: bold;
}

@media screen and (max-width: 749px) {
	.detai_sub_ttl {
		font-size: 16px;
	}

	/* 240925 */
	.inquiry .footerBlock01 {
		background-color: #F5F5F5;
		padding: 8.53vw 8vw;
		font-size: 3.2vw;
		line-height: 1.4em;
	}
	.inquiry .footerIn01 {
		width: 70vw;
		margin: auto;
	}
	.inquiry .footerH301 {
		text-align: center;
		margin-bottom: 3.7vw;
	}
	.inquiry .footerH301 span {
		display: inline-block;
		padding: 2px 8vw;
		border: 1px solid #333333;
		border-radius: 50px;
	}
	.inquiry .footerLinkBox01 p::before {
		content: '';
		border: 0;
		border-top: solid 2px #005DAB;
		border-right: solid 2px #005DAB;
		display: inline-block;
		width: 5px;
		height: 5px;
		margin: auto;
		transform: rotate(45deg);
		transition: all .3s;
		margin-right: 1.33vw;
	}
	.inquiry .footerLinkBox01 a:link {
		color: #F6A828;
		text-decoration: underline;
	}
	.inquiry .footerContactWrap01 {
		margin-top: 3.2vw;
	}
	.inquiry .footerContactWrap01 dt {
		font-weight: bold;
		margin-bottom: 1.6vw;
	}
	.inquiry {
		margin: 32px auto 32px;
	}
}

/* 240927 */
.searchH301_sub {
	font-size: 18px;
	/* color: #FF3130; */
	display: block;
}


/* 241010 */

.rankingFlex02 {
	color: #333333;
}

.rankingFlex02 li {
	display: flex;
	align-items: flex-end;
	gap: 8px;
}

.rankingFlex02 .p02 {
	color: #D62121;
	font-size: 18px;
}

.finishMessage {
	font-size: 24px;
	line-height: 1.4em;
	font-weight: bold;
	background-color: #d21414;
	padding: 16px 8px;
	text-align: center;
	color: #ffffff;
}

.finishMessage_sub {
	display: block;
	margin-top: 6px;
	font-size: 14px;
	line-height: 1.5;
}

@media screen and (max-width: 749px) {
	.finishMessage {
		font-size: 21px;
	}
	.finishMessage_sub {
		font-size: 12px;
		text-align: left;
	}
}

.rankingBlock01 .contBtn01 {
    margin-top: 0;
	padding: 0;
}

.contAncBlock01 {
	padding: 32px 0px 16px;
}


.exBtn01 a::after {
    height: 42px;
}