@charset "utf-8";
:root {
	/*Primary*/
	--Red1:#fa000f;
	--Red2:#cc0000;
	--White:#ffffff;
	--Gray1:#f4f4f4;
	--Gray2:#d9d9d9;
	--Gray3:#b3b3b3;
	--Gray4:#737373;
	--Gray5:#4d4d4d;
	--Gray6:#222222;
	--Black:#0c0c0c;
	/*Secondary*/
	--Orange1: #fdc796;
	--Orange2: #fa6900;
	--Orange3: #c85400;
	--Yellow1: #fdec96;
	--Yellow2: #fad200;
	--Yellow3: #967e00;
	--Pink1: #fd96d4;
	--Pink2: #fa00a5;
	--Pink3: #96005a;
	--Purple1: #d096fd;
	--Purple2: #9b00fa;
	--Purple3: #540096;
	--Blue1: #96c5fd;
	--Blue2: #0064fa;
	--Blue3: #004596;
	--Teal1: #96f0fd;
	--Teal2: #00dcfa;
	--Teal3: #008496;
	--Green1: #96fdcc;
	--Green2: #00fa82;
	--Green3: #00964e;
	--Red1_20_Tint: #ffcbce;
	--Red1_40_Tint: #ff979d;
	--Red1_60_Tint: #ff636c;
	--Red1_20_Dark: #bb000b;
	--Red1_40_Dark: #7d0008;
	/*BlockUse*/
	--BlackOp: rgba(0,0,0,0.86);
	--Blur: blur(10px);
	/**/
	--Wide: 1275px;
	--WideS: 965px;
}
/*
::-webkit-scrollbar {
    width: 12px;
}
 
::-webkit-scrollbar-track {
	border-radius: 10px;
	background: rgba(0,0,0,.3);
}
 
::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background: rgba(0,0,0,.6);	
}
*/
html {
	scroll-behavior: smooth;
}
#Contents * {
	box-sizing: border-box;
}
div#Contents,
.GridSet,
.Grid4 {
	width: 100%;
	margin: auto;
	overflow: visible;
}

div.Section {
	width: 100%;
}

div.Section.Gray {
	background: var(--Gray3);
}

div.Section:before {
content: "";
display: block;
clear: both;
float: none;
}
.Section>.Inner {
width: var(--Wide);
margin: auto;
padding: 2em 0;
word-break: break-word;
}
.Section h2 {
	text-align: center;
	font-size: 2.2em;
	padding: .5em 0;
}
.Section .Inner h3 {
	background: transparent;
	border: none;
	font-size: 1.8em;
	text-align: center;
}
.Section .Inner h3:after {
    content: "";
    display: block;
    float: none;
    clear: both;
}
.PageTitleStyle3 {
	height: 425px;
	margin-bottom: 0;
}
.PageTitleStyle3 .Wrapper {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
}
.PageTitleStyle3 .Inner {
	width: 100%;
	background: transparent;
	display: block;
	margin: auto;
	padding: 1em 0;
}
.PageTitleStyle3 .Inner .Catch,
.ContactCatch {
	text-align: center;
	color: var(--Black);
	font-size: 1.2em;
	font-weight: bold;
}
.Contact .TextStyle1 {
	width: 720px;
	display: block;
	margin: auto;
}
.Contact {
	margin: 6em auto 1em;
}
.Contact a:link,
.Contact a:visited {
	display: flex;
	align-items: center;
	justify-content: center;;
	color: var(--White);
	width: 100%;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	border-radius: 10px;
	border: none;
	box-sizing: border-box;
	padding: 1em 0;
	margin: 1em auto;
	transition: opacity .08s ease-in;
	opacity: 1;
}
.Contact a:hover {
	opacity: .8;
}
.Contact {
	margin: 1em auto;
}

.Section .Contact h3 {
	text-align: center;
	color: var(--Red2);
	font-size: 1.6em;
}
.Section.LGy .Contact h3 {
	color: var(--Black);
}
.Contact a:link,
.Contact a:visited {
	background: var(--Red2);
	color: var(--White);
	font-size: 1.4em;
	font-weight: bold;
	width: 600px;
	border-radius: 5px;
}
 .PageTitleStyle3 .Contact,
 .Contact .Catch {
	display: flex;
	justify-content: space-between;
	width: 100%;
	max-width: var(--WideS);
	margin: auto;
}
 
.PageTitleStyle3 .Contact {
	width: 100%;
	margin: 1em auto;
	gap: 0em;
}
.PageTitleStyle3 .Contact {
	width: 100%;
	margin: 1em auto;
	gap: 0em;
}
.Grid4 .ColumnOneThird {
	width: calc((100% / 3) - 10.5px);
	margin: 0 0 0 15px;
	padding: 0em;
	box-sizing: border-box;
	float: left;
	transition: .08s ease-in;
}
.Grid4 .ColumnSet .ColumnOneThird:nth-of-type(1) {
	margin: 0;
}

/*for Custom CSS Styles*/

.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1;
}
.Center {
	text-align: center;
	display: block;
}
a.Center {
	padding: .25em 0;
	font-weight: bold;
}
br.Mobile {
	display: none;
}
span.Mobile {
	display: none;
}
.Section>.Inner {
	padding: 3em 0;
}
div.Section {
	padding: 0;
}
.rebate .PageTitleStyle3 {
	background: url(/-/media/ind/rebate/image/bg_title.svg) no-repeat center / 100%;
	height: 500px;
}
.PageTitleStyle3 .Inner h1 {
	color: var(--Black);
	width: auto;
	font-weight: bold;
	font-size: 2.8em;
	padding: .25em;
	margin: 0;
	text-align: center;
}
.PageTitleStyle3 .Wrapper {
	flex-direction: column;
}
.Grid4 .InnerLink {
	background: rgba(255,255,255,.8);
	backdrop-filter: var(--Blur);
	width: 100%;
	z-index: 2;
	margin: -58px 0 0;
}
.Grid4 .InnerLink {
	margin: -54px 0 0;
}
.Grid4 .InnerLink ul {
	max-width: var(--Wide);
	margin: auto;
	display: flex;
	align-items: center;
}
.Grid4 .InnerLink a:link,
.Grid4 .InnerLink a:visited {
	color: var(--Black);
	padding: 1em;
	background: rgba(0,0,0,0);
	border-radius: 2px;
	transition: .08s ease-in;
}
.Grid4 .InnerLink a:link {
	font-size: 90%;
	padding: 1em;
	display: flex;
	align-items: center;
}
.Grid4 .InnerLink a:after {
	content: url(/-/media/ind/rebate/image/icon_under_arrow.svg);
	margin: 0 .25em;
}
.Grid4 .InnerLink a:after {
	content: "";
	background: url(/-/media/ind/rebate/image/icon_under_arrow.svg) no-repeat center / 14px;
	width: 18px;
	height: 18px;
	display: block;
	margin: 0 .25em;
}
.Grid4 .InnerLink a:hover,
.Grid4 .InnerLink a.CurrentThis {
	text-decoration: none;
	background: var(--Blue3);
	color: var(--White);
}
.Grid4 .InnerLink a:hover:after,
.Grid4 .InnerLink a.CurrentThis:after {
	content: url(/-/media/ind/rebate/image/icon_under_arrow_on.svg);
	margin: 0 .25em;
}
.Grid4 .InnerLink a:hover:after,
.Grid4 .InnerLink a.CurrentThis:after {
	content: "";
	background: url(/-/media/ind/rebate/image/icon_under_arrow_on.svg) no-repeat center / 14px;
	margin: 0 .25em;
}
.Grid4 .InnerLink img {
	padding: .5em;
}
.Grid4 .InnerLink a#Link00,
.Grid4 .InnerLink a#Link00:hover {
	padding: 0;
	background: transparent;
}
.Grid4 .InnerLink li {
	display: flex;
}
.PageTitleStyle3 .Inner {
	background: transparent;
	padding: 3em 0;
	box-sizing: border-box;
	box-shadow: none;
	max-width: var(--Wide);
	margin: auto;
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: space-between;
}
.PageTitleStyle3 .Inner div {
	display: flex;
	width: var(--Wide);
	margin:auto;
	align-items: center;
}
@media screen and (max-width: 1024px){
	.PageTitleStyle3 .Inner h1 {
		margin: auto;
	}
	.PageTitleStyle3,
	.PageTitleStyle3 .Inner {
		height: 458px;
		min-height: 458px;
	}
	.PageTitleStyle3 .Wrapper {
		background-size: 100% auto;
	}
}
.Section h2 {
	font-size: 2.2em;
	line-height: 1.1;
	color: var(--Gray5);
	font-weight: bold;
	width: max-content;
	margin: auto;
	text-align: center;
	border-bottom: solid 3px var(--Red2);
}
.Section#Sec01 h2 {
	border-bottom: none;
}
.Section h2.mb0 {
	display: block;
}
.Section.FAQ {
	background-size: auto 100%;
}
.LGy {
	background: var(--Gray1);
}
.Red-grad {
	  background: linear-gradient(90deg, rgb(255, 203, 206), rgb(255, 99, 108));
}
.Blk h2,
.Blue h2,
.Indigo h2 {
	color: var(--White);
	font-size: 2em;
}
.LGy h2 {
	color: var(--Gray5);
	font-size: 2em;
	text-align: center;
}
.Merit h2 {
	color: var(--White);
}
.LGy .TextStyle1 {
	color: var(--Gray5);
	font-size: 1.2em;
	padding: 1em;
	max-width: var(--Wide);
}
.FAQ .TextStyle1,
.Merit .TextStyle1 {
	color: var(--Black);
	font-size: 1.2em;
	padding: 1em;
}
.Grid4 .InfoArea {
	height: 9em;
	overflow-y: auto;
}
.Grid4.InfoArea {
	height: 4em;
}
.Grid4 .InfoArea li {
	display: flex;
	align-items: center;
}
.Grid4 .InfoArea li span {
	margin: 0 2em 0 0;
	min-width: 6em;
} 
.Grid4 .InfoArea li:before {
	content: "お知らせ";
	background: var(--Black);
	color: var(--White);
	border-radius: 2px;
	padding: .25em .5em;
	margin: .5em 2em .5em .5em;
	min-width: 4em;
}
.Grid4 .InfoArea li.News:before {
	content: "ニュース";
}
.Grid4 .Section.Last {
	padding: 0;
}
.Section .Inner .TextStyle1 {
	font-size: 1.4em;
	line-height: 1.65;
}
.Flexbox {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.Grid4 .Flexbox.Three {
	flex-wrap: wrap;
	gap: 1em;
	margin: 1em 0;
}
.Grid4 .Flexbox.Three * {
	box-sizing: border-box;
}
.Grid4 .Flexbox.Three li {
	padding: 1.2em;
	width: calc((100% / 3) - 1em);
	background: var(--Gray1);
	border-radius: 2px 40px 40px 40px;
	justify-content: space-between;
	align-items: start;
	height: stretch;
}
.Grid4 .Flexbox.Three li p {
	color: var(--Black);
	font-weight: bold;
	font-size: 1.5em;
}
.Grid4 .Flexbox.Three li p span {
	color: var(--Red2);
}
.Grid4 .Flexbox.Three li img {
	width: 100%;
	height: auto;
	box-sizing: border-box;
}
.Grid4 .Flexbox.Three li div {
	position: relative;
	display: none;
}
.Grid4.V2 .Flexbox.Three li.View div {
	height: auto;
}
.Grid4 .Flexbox.Three li div::before {
	position: absolute;
	content: "";
	background: rgba(255,255,255,1);
	display: block;
	width: 100%;
	height: 100%;
	opacity: 1;
	transition: .5s ease-in;
}
.Grid4 .Flexbox.Three li.View div::before {
	opacity: 0;
	z-index: -1;
}
.Flexbox .Plate {
	width: calc((100% / 2) - 1em);
	height: auto;
	min-height: 460px;
	height: 460px;;
	box-shadow: 0 0 20px rgba(0,0,0,0.1);
	display: flex;
	flex-flow: column;
	justify-content: space-between;
}
.Flexbox .Plate h3 {
	text-align: center;
	background: #F2F2F2;
	border-radius: 3px;
	color: var(--Red2)!important;
}
.Flexbox .Plate p {
	color: var(--Red2);
	font-weight: bold;
}
.Section h3.Sol {
	color: var(--Red2);
}
.Section#Sec01 .Inner h3 {
	font-weight: normal;
	color: var(--Black);
	margin: 1em auto;
}
.Section#Sec01 .Inner h3 span {
	font-weight: bold;
	display: block;
	font-size: 1.4em;
	line-height: 1.2;
	color: var(--Red2);
}
.Plate {
	padding: 1.5em;
	margin: 0 0 2em;
	position: relative;
	width: 100%;
	max-width: var(--WideS);
	margin: auto;
}
.Merit .Plate:after {
	content: "";
	width: 63px;
	height: 63px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #C9C9C9;
	font-size: 2em;
	font-weight: bold;
	background: #EAC631;
	border-radius: 50%;
	position: absolute;
	right: -31px;
	top: -31px;
	transition: .08s ease-in;
	transform: scale(1);
}
.Merit .Plate:nth-of-type(1):after {
	content: "1";
}
.Merit .Plate:nth-of-type(2):after {
	content: "2";
}
.Merit .Plate:nth-of-type(3):after {
	content: "3";
}
.Merit .Plate:hover:after {
	transform: scale(1.1);
	color: #777777;
}
.Under {
	background: url(/-/media/ind/rebate/image/under.svg) no-repeat center / 200px 60px;
	width: 200px;
	height: 60px;
	margin: 1.5em auto;
	display: block;
}

.Section .Plate h3 {
	color: var(--Red2);
	font-size: 1.4em;
	text-align: left;
	padding: 0;
}
.Section .Plate li {
	display: flex;
	align-items: center;
	font-size: 1.2em;
	margin: .5em 0;
}
 .Section .Plate {
	transition: .3s ease-in;
}
 .Section .Plate.Wide {
	max-width: var(--Wide);
 }
 .Section .Plate.View ul {
	opacity: 1;
	height: 100%;
}
.Section .Plate li::before {
	content: url(/-/media/ind/rebate/image/icon_check.svg);
	width: 24px;
	height: 24px;
	margin: 0 .5em 0 0;
}

.Inner dt {
	font-weight: bold;
	color: var(--Red2);
	font-size: 1.4em;
}
.Inner dd ul {
	display: flex;
	align-items: center;
	justify-content: start;
	flex-wrap: wrap;
	margin: 1.2em 1.4em;
	background: var(--Gray1);
	padding: 1em;
	border-radius: 2px;
}
.Inner dd li {
	list-style-type: none;
	list-style-position: inside;
	color: #464646;
	font-size: 1.2em;
	margin: .5em 2em .5em 0;
	border-radius: 5px;
	border: 1px solid #ccc;
	padding: .15em .25em;
	background: var(--White);
}
.Section .Flexbox h3 {
	font-size: 1.15em;
	color: var(--Gray5);
	text-align: center;
	margin-bottom: 1em;
}

.Inner .LineUp h3 {
	display: inline-block;
	padding: .5em 1em;
	background: var(--Black);
	border-radius: 5px;
	color: #BADDFF;
	font-size: 1.8em;
	text-align: left;
	margin: 1em 0 1em;
}

.LineUp .BoxPatternC {
	width: 100%;
	background: rgba(255,255,255,.8);
	box-sizing: border-box;
	border-radius: 5px;
	margin: auto auto 1em;
	padding: 1.5em;
	border: none;
	display: flex;
	align-items: center;
}
.BoxPatternC h4 {
	background-color: transparent!important;
	font-size: 1.6em;
	color: #585858!important;
	padding: 0;
}
.BoxPatternC h4::before {
	content: none;
}
.BoxPatternC h5 {
	color: #2F79A7;
	background-color: transparent;
	font-size: 1.4em;
	padding: 0;
	margin: 1em 0 .5em;
}

.LineUp .BoxPatternC .TextStyle1 {
	margin: 0;
	font-size: 1.2em;
	line-height: 1.4;
	color: #585858;
}


.Flexbox.Four li {
	width: 252px;
	height: 252px;
	background: #F5FAD4;
	border-radius: 50%;
	margin: 0 -6px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.Flexbox.Four li h3 {
	margin: 0;
}

.Flexbox.Three li {
	width: 311px;
	height: 290px;
	color: var(--White);
	background: rgba(0, 0, 0, 0.86);
	border-radius: 5px;
	padding: .8em;
	display: flex;
	flex-direction: inherit;
	align-items: center;
	position: relative;
	overflow: hidden;
}
.Flexbox.Three li h3 {
	color: #C3C3C3;
	font-size: 1.6em;
	text-align: left;
}
@keyframes SlideUp {
	0% { opacity: 0; margin-top: 100%;}
	/*90% { opacity: 1; margin-top: -1%;}*/
	100% { opacity: 1; margin-top: 0%;}
}
@keyframes Toggle {
	0%{height: 0;}
	100%{height: 100%;}
}
.Flexbox.Three li .Float {
	opacity: 0;
	display: flex;
	position: absolute;
	top: 100;
	left: 0;
	align-items: center;
	background: rgba(255, 255, 255, 0.9);
	padding: 1em;
	margin: 1em;
	font-size: 1.1em;
	color: #454545;
	border-radius: 5px;
	transition: .3s ease-out;
}
.Flexbox.Three li:hover .Float {
	top: 0;
	opacity: 1;
	animation: SlideUp .2s ease-in; 
}

.PageTitleStyle3 .Flexbox {
	gap: 1em;
	width: 100%;
}
.PageTitleStyle3 .Flexbox li {
	width: calc((100% / 2) - 1em);
}
 .Contact a:link,
 .Contact a:visited {
	width: 340px;
}
.Contact a:link,
.Contact a:visited {
	width: 300px;
	border-radius: 40px;
}
.Contact .ContactBtnUnit a:link,
 .Contact .ContactBtnUnit a:visited {
	width: 300px;
}
.Contact .ContactBtnUnit a:link,
.Contact .ContactBtnUnit a:visited {
	width: 300px;
	border-radius: 40px;
}
.Contact a.Download {
	background: var(--White);
	border: 2px solid var(--Red2);
	color: var(--Red2);
}
ul.FAQ {
	background: transparent;
	margin: 0 0 2em;
}
.Section .Plate ul.FAQ li {
	margin: 0 0 1em 1em;
	align-items: flex-start;
}
.Section .Plate .FAQ li.Q::before {
	content: "Q";
	color: var(--Gray4);
	font-size: 2.15em;
	font-weight: bold;
	background: none;
	width: auto;
	margin: 0 .25em 0 0;
}
.Section .Plate .FAQ li.A::before {
	content: "A";
	color: var(--Red1);
	font-size: 2.15em;
	font-weight: bold;
	background: none;
	width: auto;
	margin: 0 .25em 0 0;
}
#Contents #FloatingContacts li {
	width: 50%;
}
@media screen and (min-width: 995px) and (max-width: 1304px) {
	.OptionWideRWD .Grid4,
	.OptionWideRWD #Contents {
		padding: 0;
	}
	.OptionWideRWD .PageTitleStyle3 .Inner,
	.OptionWideRWD .Section>.Inner {
		padding: 3em 1em;
		width: 100%;
	}
	.OptionWideRWD .GridSet {
		margin: 0;
	}
}
@media screen and (max-width: 994px) {
	.JS #Contents,
	.JS .GridSet,
	.JS .Grid4 {
			padding:0;
			margin: 0;
			width: auto;
	}
	.JS .Inner {
			padding: 1em;
			width: auto;
	}
	.JS .PageTitleStyle3 h1 {
			line-height: 1.2;
	}
	.JS .ColumnSet {
		margin: 0;
	}
	.JS .GridSet {
		margin: 0 -15px 0 0;
		max-width: 100%;
	}
	.JS .Section br.PC {
		display: none;
	}
	.JS .rebate .PageTitleStyle3 {
		background-size: 100%;
		background-position: top center;
	}
	.JS .PageTitleStyle3 .Wrapper {
		background-size: 100%;
	}
	.JS .PageTitleStyle3 .Inner {
		width: 100%;
		padding: 3em 1em;
	}
	.JS .PageTitleStyle3,
	.JS .PageTitleStyle3 .Inner {
    height: 400px;
		min-height: 400px;
		margin-top: 0;
	}
	.JS .PageTitleStyle3 h1 {
		font-size: 2.2em;
	}
	.JS .PageTitleStyle3 .Inner div,
	.JS .PageTitleStyle3 .Inner div h1,
	.JS .PageTitleStyle3 .Inner div .Read {
		width: auto;
		display: block;
	}
	.JS .Section>.Inner {
		padding: 2em 1em;
	} 
	.JS .Grid4 .Section.Merit .Inner {
		overflow: hidden;
	}
	.JS .Section h2 {
		font-size: 1.8em;
		max-width: 90%;
		text-align: left;
	}
	.JS .Grid4 .InnerLink {
		margin: 0;
		padding: 1em;
	}
	.JS .Grid4 .InnerLink a:link {
    font-size: .85em;
		padding: .2em .4em;
	}
	.JS .Grid4 .InnerLink img {
		width: 80%;
	}
	.JS .Flexbox.Three li {
		width: calc((100% / 3) - 10px);
	}
	.JS .Section .Flexbox h3 {
		text-align: left;
	}
	.JS .Section.Blue .Flexbox {
		flex-wrap: wrap;
		justify-content: center;
	}
	.JS .Section.Blue .Flexbox li {
		width: 40%;
		margin: auto .5em 1em;
	}
	.JS .Flexbox {
		justify-content: space-around;
	}
	.JS .Section#Sec01 .Inner h3 span {
		font-size: 1.2em;
	}

}

@media screen and (max-width: 767px) {
    .JS .PageTitleStyle3 h1{
        font-size: 1.6em;
    }
    .JS .Section h2 {
        font-size: 1.4em;
    }
    .JS .Section .Inner h3 {
        font-size: 1.4em;
        text-align: left;
    }
   .JS .Contact a:link,
   .JS .Contact a:visited,
   .JS .Contact .TextStyle1 {
       width: auto;
       justify-content: flex-start;
    }
    .JS .Contact a:link,
    .JS .Contact a:visited {
        font-size: 1.6em;
        justify-content: center;
    }
	.JS .Grid4 .ColumnSet .ColumnOneThird:nth-of-type(1),
	.JS .Grid4 .ColumnOneThird {
		width: 100%;
		float: none;
		margin: 0 0 1em;
	}
	.JS br.RWD {
		display: none;
	}
	.JS br.Mobile {
		display: block;
	}
	.JS span.Mobile {
    display: block;
    width: 9em;
    background: var(--Black);
    color: var(--White);
    font-size: .8em;
    padding: .2em .3em;
    margin: .2em 0 auto auto;
    text-align: right;
    border-radius: 2px;
}
	.JS .Section>.Inner {
		padding: 1em;
	}
	.JS .PageTitleStyle3,
	.JS .PageTitleStyle3 .Inner {
		height: auto;
	}
	.JS .PageTitleStyle3 .Inner {
		padding: 1em;
	}
	.JS .PageTitleStyle3 .Inner h1 {
    font-size: 1.8em;
	}
	.JS .PageTitleStyle3 .Flexbox {
		flex-direction: column;
	}
	.JS .PageTitleStyle3 .Contact a:link,
	.JS .PageTitleStyle3 .Contact a:visited,
	.JS .PageTitleStyle3 .Contact .TextStyle1 {
		width: 400px;
	}
	.PageTitleStyle3 .Contact, .Contact .Catch {
		max-width: inherit;
	}
	.JS .InnerLink ul {
		width: auto;
	}
	
	.JS .Merit {
		background-size: auto 100%;
		background-position: 0 50%; 
	}
	.JS .Flexbox li {
		margin: 1em;
		width: auto;
		margin: auto;
		min-height: inherit;
		padding: 0;
	}
	.JS .Section .Flexbox .TextStyle1 {
		width: auto;
		max-width: inherit;
	}

	.JS .Contact a:before {
		content: none;
	}
	
	.JS .Contact {
		margin: 0em;
	}
	.JS .Contact a:link,
	.JS .Contact a:visited {
		font-size: 1.2em;
	}
	.JS  .PageTitleStyle3 .Contact,
	.JS  .Contact .Catch {
	display: flex;
	flex-flow: column;
	width: 100%;
}
.JS .PageTitleStyle3 h1 {
	font-size: 1.8em;
}
.JS .PageTitleStyle3 .Read {
	font-size: 1.4em;
}
.JS .PageTitleStyle3 .Contact {
	flex-flow: row;
}
.JS .Section .Inner .Contact h3 {
	text-align: center;
}
.JS  .PageTitleStyle3 .Contact a:link,
.JS  .Contact .Catch a:link {
		margin: .25em auto;
		padding: .5em 1em;
		min-width: 10em;
}
.JS .PageTitleStyle3 .Contact a:link {
	width: calc((100% / 2) - 1em);
}
	.JS .Grid4 .Flexbox.Three li {
		width: calc((100% / 2) - 1.5em);
	}
	.JS #FloatingContacts {
		margin: 0;
		width: 100%;
	}

}


@media screen and (max-width: 579px) {
	.JS .PageTitleStyle3 {
		background-color: var(--White); 
	}
	.JS .PageTitleStyle3 .Inner {
		justify-content: space-around;
	}
	.JS .PageTitleStyle3 .Inner h1 {
		margin: 0;
		width: 100%;
		max-width: inherit;
	}
	.JS .Grid4 .Section {
		padding: 1em 0;
	}
	.JS .Grid4 .InnerLink ul {
		flex-wrap: wrap;
	}
	.JS .Grid4 .Flexbox.Three li br {
		display: none;
	}
	.JS .Grid4 .InfoArea li {
		flex-wrap: wrap;
	}
	.JS .Grid4 .InfoArea li a {
		width: 90%;
		margin: auto;
	}
	.JS .Flexbox {
		flex-flow: column;
	}
	.JS .Grid4 .Flexbox.Three li {
		width: 100%;
		margin: 0 0 1em;
	}

	.JS .Flexbox .Plate {
		width: 100%;
	}
	.JS .Grid4 .Section.Last {
		padding: 0;
	}
	.JS .Section .Inner .TextStyle1 {
		font-size: 1.2em;
	}
}

@media screen and (max-width: 479px) {
	.JS .PageTitleStyle3 .Wrapper {
    background-size: auto 100%;
		background-position: 70% 50%;
	}
	.JS .PageTitleStyle3 .Inner h1 {
		font-size: 1.8em;
	}
	.JS .PageTitleStyle3 .Contact a:link,
	.JS .PageTitleStyle3 .Contact a:visited,
	.JS .PageTitleStyle3 .Contact .TextStyle1 {
		width: 300px;
	}
	.JS .Flexbox li,
	.JS .Section.Grad .BoxPatternC .TextStyle1,
	.Section.Grad .BoxPatternC {
		width: 100%;
	}
	.JS .PageTitleStyle3 .Contact {
		flex-flow: column;
	}
	.JS .Section .Inner .TextStyle1 {
		margin-bottom: 1em;
	}
	.JS .Flexbox.NegaLeft {
		flex-direction: column;
	}
	.JS .Flexbox.Three {
		flex-direction: column;
	}
	.JS .Flexbox.Three li {
    height: 18em;
    min-height: 13em;
    width: auto;
		margin: 0 0 1em;
		justify-content: center;
	}
	.JS .Contact a:link,
	.JS .Contact a:visited {
		padding: 1em;
		font-size: 1em;
	}
	.JS .Grid4 .InfoArea li {
		flex-wrap: wrap;
	}
	
}
/* コンタクトボタンの為の追加20260424 */

.Inner .Flexbox .Contact .ContactBtnUnit {
    display: flex;
    flex-direction: column;
    align-items: center; 
}

.BtnCaption {
    color: var(--Red2); 
    font-size: 1.0em;    
    font-weight: bold;
    margin-bottom: 5px; 
    white-space: nowrap; 
}

.ContactBtnUnit a:link, 
.ContactBtnUnit a:visited {
    margin-top: 0 !important;
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
	.Inner .Flexbox .Contact .ContactBtnUnit a:link,
    .Inner .Flexbox .Contact .ContactBtnUnit a:visited {
	width: 180px;
	border-radius: 40px;
		font-size:1.1em;
		display: flex;
	justify-content: center;
}
    .BtnCaption {
        font-size: 0.9em;
    }
	 .PageTitleStyle3 .Contact,
     .Contact .Catch {
	display: flex;
	justify-content: space-evenly;

}	
}

@media screen and (max-width: 767px) {
	.Inner .Flexbox .Contact .ContactBtnUnit a:link,
    .Inner .Flexbox .Contact .ContactBtnUnit a:visited {
	width: 200px;
	border-radius: 40px;
}
    .BtnCaption {
        font-size: 0.8em;
    }
	 .PageTitleStyle3 .Contact,
     .Contact .Catch {
	display: flex;
	justify-content: space-evenly;

}
	
}
/* --- problem背景画像用 --- */
.Grid4 .Flexbox.Three li {
    overflow: hidden; 
    position: relative;  
    z-index: 1;
}

.Grid4 .Flexbox.Three li::after {
    content: "";
    display: block;
    width: 120px;
    height: 120px;
    position: absolute;
    right: 0;
    bottom: 0;     
    background-repeat: no-repeat;
    background-size: contain;
    background-position: bottom right;
    z-index: -1;  
    opacity: 0.8;     
    pointer-events: none;
}

.Grid4 .Flexbox.Three li.first::after {
    background-image: url(/-/media/ind/rebate/image/problem1.png);
}
.Grid4 .Flexbox.Three li.second::after {
    background-image: url(/-/media/ind/rebate/image/problem2.png);
}
.Grid4 .Flexbox.Three li.third::after {
    background-image: url(/-/media/ind/rebate/image/problem3.png);
}

.Grid4 .Flexbox.Three li p {
    position: relative;
    z-index: 2;
}
@media screen and (min-width: 479px) and (max-width: 1040px) {
.Grid4 .Flexbox.Three li::after {
    width: 100px;
    height: 100px;
	opacity: 0.4;
	}
	
}
/* --- ホワイトペーパーセクション --- */
.Section.Red-grad {
    padding: 1em 0;
}

.Section.Red-grad .WP {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    max-width: var(--WideS);
    margin: auto;
	padding: 0 40px;
    gap: 40px;
}

.Section.Red-grad .WP img {
    width: 150px;
    height: auto;
    flex-shrink: 0;
}

.Section.Red-grad .WPText {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-top: 5px;
}

.Section.Red-grad .WP .WPText .WPCatch {
    font-size: 1.4em;
    font-weight: bold;
    margin: 5px 0 10px;
    color: var(--Black);
    line-height: 1;
    line-height: 1;
}

.Section.Red-grad .WP h3 {
    font-size: 1.8em;
    font-weight: bold;
    margin: 0;
    border: none;
    line-height: 1.3;
	color: var(--Black);
    text-align: left;
}


.Section.Red-grad .WPText .Catch {
    width: 100%;
    display: flex;
    justify-content: flex-end; 
    margin: 40px 0 0; 
}

.Section.Red-grad .WPText .Catch a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--Red2); 
    color: var(--White);
    font-size: 1.3em;
    font-weight: bold;
    text-decoration: none;
    width: 320px;
    padding: 1em 0;
    border-radius: 40px;
    transition: opacity .08s ease-in;
}
.Section.Red-grad .WPText .Catch a:hover {
    opacity: 0.8 !important; 
}

@media screen and (max-width: 767px) {
    .Section.Red-grad .WP {
        flex-direction: column;
        align-items: center; 
        gap: 20px;
    }

    .Section.Red-grad .WPText {
        align-items: center;
        text-align: center;
        padding-top: 0;
    }

    .Section.Red-grad .WP h3 {
        text-align: center;
        font-size: 1.5em;
    }

    .Section.Red-grad .WPText .Catch {
        justify-content: center;
        margin: 20px 0 0;
    }
	.Section.Red-grad .WPText .Catch a {
    
    font-size: 1.1em;
    width: 240px;
    padding: 0.8em 0;
    
}
}
/* --- トップキャプションのみ --- */
br.pc-only-top {
    display: inline; 
}

@media screen and (max-width: 1140px) {
    br.pc-only-top {
        display: none; 
    }
}