@charset "UTF-8";
abbr, address, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, summary, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	background: transparent;
	font-family: inherit;
	font-size: 100%;
	font-style: normal;
	font-weight: inherit;
	vertical-align: baseline
}
img {
	vertical-align: bottom
}
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block
}
:focus {
	outline: none
}
a:not([class]), a:not([class]):active, a:not([class]):hover, a:not([class]):link, a:not([class]):visited {
	margin: 0;
	padding: 0;
	outline: 0;
	text-decoration: none;
	vertical-align: baseline;
	cursor: pointer
}
ol, ul {
	list-style: none
}
table {
	border-spacing: 0
}
caption, td, th {
	text-align: left
}
fieldset {
	border: none
}
input, select, textarea {
	font-family: inherit;
	font-size: 100%
}
input, select {
	vertical-align: middle
}
input.checkbox, input.radio, input[type=checkbox], input[type=radio] {
	position: relative;
	top: -.1em;
	margin-top: 0;
	margin-bottom: 0
}
textarea {
	overflow: auto
}
button, label {
	cursor: pointer
}
blockquote, q {
	quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
	content: "";
	content: none
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help
}
del {
	text-decoration: line-through
}
ins, mark {
	background-color: #ffb;
	color: #000;
	text-decoration: none
}
hr {
	height: 1px;
	margin: 0;
	padding: 0;
	border: none;
	border-top: 1px solid #ccc
}
hr, main {
	display: block
}
html {
	height: 100%;
	font-size: 62.5%
}
body {
	-webkit-tap-highlight-color: transparent;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
	background-color: #fff;
	color: #333;
	font-family: Noto Sans JP, ヒラギノ角ゴ ProN, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ Pro, Hiragino Kaku Gothic Pro, 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif;
	font-size: 1.4rem;
	font-variant-ligatures: none;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.7
}
body, body * {
	box-sizing: border-box
}
.mb2 {
	margin-bottom: 2px
}
.mb3 {
	margin-bottom: 3px
}
.mb4 {
	margin-bottom: 4px
}
.mb5 {
	margin-bottom: 5px
}
.mb6 {
	margin-bottom: 6px
}
.mb7 {
	margin-bottom: 7px
}
.mb8 {
	margin-bottom: 8px
}
.mb9 {
	margin-bottom: 9px
}
.mb10 {
	margin-bottom: 10px
}
.mb12 {
	margin-bottom: 12px
}
.mb15 {
	margin-bottom: 15px
}
.mb20 {
	margin-bottom: 20px
}
.mb25 {
	margin-bottom: 25px
}
.mb30 {
	margin-bottom: 30px
}
.mb40 {
	margin-bottom: 40px
}
.mb45 {
	margin-bottom: 45px
}
.mb50 {
	margin-bottom: 50px
}
.mb60 {
	margin-bottom: 60px
}
.mb70 {
	margin-bottom: 70px
}
.mb80 {
	margin-bottom: 80px
}
.mb90 {
	margin-bottom: 90px
}
.mb100 {
	margin-bottom: 100px
}
.mb120 {
	margin-bottom: 120px
}
.mb130 {
	margin-bottom: 130px
}
.mb150 {
	margin-bottom: 150px
}
.mb170 {
	margin-bottom: 170px
}
.mb190 {
	margin-bottom: 190px
}
.mb200 {
	margin-bottom: 200px
}
.mb210 {
	margin-bottom: 210px
}
.mb05em {
	margin-bottom: .5em
}
.mb10em {
	margin-bottom: 1em
}
.mb15em {
	margin-bottom: 1.5em
}
.mb20em {
	margin-bottom: 2em
}
.mb25em {
	margin-bottom: 2.5em
}
.mb30em {
	margin-bottom: 3em
}
.mt20 {
	margin-top: 20px
}
.mt30 {
	margin-top: 30px
}
.pt5 {
	padding-top: 5px
}
.pt10 {
	padding-top: 10px
}
.pt15 {
	padding-top: 15px
}
.pt20 {
	padding-top: 20px
}
.pt30 {
	padding-top: 30px
}
.pt40 {
	padding-top: 40px
}
.pt50 {
	padding-top: 50px
}
.pt60 {
	padding-top: 60px
}
.pt70 {
	padding-top: 70px
}
.pt80 {
	padding-top: 80px
}
.pt85 {
	padding-top: 85px
}
.pt95 {
	padding-top: 95px
}
.pt100 {
	padding-top: 100px
}
.pt115 {
	padding-top: 115px
}
.pt120 {
	padding-top: 120px
}
.pt150 {
	padding-top: 150px
}
.pt05em {
	padding-top: .5em
}
.pt10em {
	padding-top: 1em
}
.pt15em {
	padding-top: 1.5em
}
.pt20em {
	padding-top: 2em
}
.pb5 {
	padding-bottom: 5px
}
.pb10 {
	padding-bottom: 10px
}
.pb20 {
	padding-bottom: 20px
}
.pb150 {
	padding-bottom: 150px
}
.pb200 {
	padding-bottom: 200px
}
.mr2 {
	margin-right: 2px
}
.mr10 {
	margin-right: 10px
}
body span {
	font-weight: inherit
}
.fwBold, .strong, strong {
	font-weight: 700
}
.fwSemiBold {
	font-weight: 600
}
.medium {
	font-weight: 500
}
.fwNormal {
	font-weight: 400
}
.italic {
	font-style: italic
}
.serif {
	font-family: "Noto Serif JP", ヒラギノ明朝 ProN, Hiragino Mincho ProN, ヒラギノ明朝 Pro, Hiragino Mincho Pro, HGS明朝E, serif
}
.ffEn {
	font-family: Roboto, sans-serif
}
.serif-en {
	font-family: Cardo, serif
}
.fcMain {
	color: #e78317
}
.fcSub {
	color: #e73245
}
.fcAct {
	color: #5bbeb3
}
.fcFlexibility {
	color: #f4a02d
}
.fcWhite {
	color: #fff
}
.fcBlack {
	color: #333
}
.fs0 {
	font-size: 0
}
.fs9 {
	transform: scale(.9);
	transform-origin: center left;
	line-height: 1.6666
}
.fs9, .fs10 {
	font-size: 1rem
}
.fs11 {
	font-size: 1.1rem
}
.fs12 {
	font-size: 1.2rem
}
.fs13 {
	font-size: 1.3rem
}
.fs14 {
	font-size: 1.4rem
}
.fs15 {
	font-size: 1.5rem
}
.fs16 {
	font-size: 1.6rem
}
.fs18 {
	font-size: 1.8rem
}
.fs20 {
	font-size: 2rem
}
.fs22 {
	font-size: 2.2rem
}
.fs23 {
	font-size: 2.3rem
}
.fs24 {
	font-size: 2.4rem
}
.fs25 {
	font-size: 2.5rem
}
.fs26 {
	font-size: 2.6rem
}
.fs28 {
	font-size: 2.8rem
}
.fs30 {
	font-size: 3rem
}
.fs31 {
	font-size: 3.1rem
}
.fs32 {
	font-size: 3.2rem
}
.fs34 {
	font-size: 3.4rem
}
.fs36 {
	font-size: 3.6rem
}
.fs38 {
	font-size: 3.8rem
}
.fs40 {
	font-size: 4rem
}
.fs50 {
	font-size: 5rem
}
.fs50per {
	font-size: 50%
}
.fs60per {
	font-size: 60%
}
.fs70per {
	font-size: 70%
}
.fs75per {
	font-size: 75%
}
.fs80per {
	font-size: 80%
}
.fs85per {
	font-size: 85%
}
.fs90per {
	font-size: 90%
}
.lh10 {
	line-height: 1
}
.lh12 {
	line-height: 1.2
}
.lh14 {
	line-height: 1.4
}
.lh16 {
	line-height: 1.6
}
.lh17 {
	line-height: 1.7
}
.lh18 {
	line-height: 1.8
}
.lh20 {
	line-height: 2
}
.lh22 {
	line-height: 2.2
}
.ls03 {
	letter-spacing: .03em
}
.ls05 {
	letter-spacing: .05em
}
.ls10 {
	letter-spacing: .1em
}
.ls12 {
	letter-spacing: .12em
}
.ls15 {
	letter-spacing: .15em
}
.ls20 {
	letter-spacing: .2em
}
.ls-05 {
	letter-spacing: -.05em
}
.ls-10 {
	letter-spacing: -.1em
}
.ls-20 {
	letter-spacing: -.2em
}
.wordWrapBreak {
	word-wrap: break-word
}
.wordBreakAll {
	word-break: break-all
}
img, video {
	max-width: 100%;
	height: auto;
	vertical-align: bottom
}
img.w100per, video.w100per {
	width: 100%
}
a:not([class]) {
	color: inherit
}
a, a:active, a:hover, a:link, a:visited {
	outline: none;
	text-decoration: none
}
a.txtLink {
	color: #333;
	text-decoration: underline
}
a.disabled {
	cursor: default;
	pointer-events: none
}
.no-touch .alpha {
	transition: opacity .3s ease-in-out
}
.no-touch .alpha:hover, .no-touch .scrollfadeShow.is-show.alpha:hover {
	opacity: .6
}
.no-touch .txtLink {
	transition: opacity .3s ease-in-out
}
.no-touch .txtLink:hover {
	opacity: .6
}
ol li, ul.disc, ul li {
	list-style-type: none
}
ul.disc li {
	position: relative;
	padding-left: 7px
}
ul.disc li:before {
	display: inline-block;
	position: absolute;
	top: 11px;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: #333;
	content: ""
}
ul.inlineList li {
	display: inline
}
ul.inlineList li:not(:last-child):after {
	display: inline-block;
	content: ","
}
ol.numberList {
	counter-reset: numberList
}
ol.numberList li {
	position: relative;
	padding-left: 1.5em
}
ol.numberList li:not(:last-child) {
	margin-bottom: 5px
}
ol.numberList li:before {
	position: absolute;
	top: -1px;
	left: 0;
	margin-right: 2px;
	color: #333;
	font-size: 1.6rem;
	content: counter(numberList) ".";
	counter-increment: numberList
}
ol.numberList li ol.childList {
	counter-reset: numberList
}
ol.numberList li ol.childList li {
	padding-left: 2em;
	text-indent: -2em
}
ol.numberList li ol.childList li:before {
	display: none
}
table {
	width: 100%;
	border-collapse: collapse
}
th {
	font-weight: 700
}
hr {
	clear: both
}
hr.dot {
	border-top: 1px dotted #000
}
.displayFlex {
	display: flex
}
.displayFlex.spaceBetween {
	justify-content: space-between
}
.displayFlex.spaceBetween.flexEnd {
	justify-content: flex-end
}
.displayFlexpc {
	display: inherit
}
.alignCenter {
	align-items: center
}
.justifyCenter {
	justify-content: center
}
.displayInlineBlock {
	display: inline-block
}
.displayInline {
	display: inline
}
.displayBlock {
	display: block
}
.displayNone, .displaySp {
	display: none
}
.posRelative {
	position: relative
}
.posAbsolute {
	position: absolute
}
.posFixed {
	position: fixed
}
.posStatic {
	position: static
}
.floatLeft {
	float: left
}
.floatRight {
	float: right
}
.clearLeft {
	clear: left
}
.clearRight {
	clear: right
}
.clearBoth {
	clear: both
}
.txtLeft {
	text-align: left
}
.txtCenter {
	text-align: center
}
.txtRight {
	text-align: right
}
.txtJustify, .txtJustify * {
	text-align: justify
}
.verticalTop {
	vertical-align: top
}
.verticalMiddle {
	vertical-align: middle
}
.verticalBottom {
	vertical-align: bottom
}
button {
	padding: 0;
	border: 0;
	outline: none;
	background-color: transparent
}
.cf:after, .clearfix:after {
	display: block;
	clear: both;
	content: ""
}
.l-container {
	position: relative;
	width: 100%;
	min-height: 100%;
	background-color: rgba(231, 131, 23, .05)
}
.l-inner, .mv-inner {
	padding-right: 26px;
	padding-left: 26px
}
.l-inner {
	max-width: 1132px;
	margin-right: auto;
	margin-left: auto
}
.l-inner.narrowWidth {
	max-width: 932px
}
.l-innerNarrow {
	padding-right: 16px;
	padding-left: 16px
}
.l-footer, .l-header {
	width: 100%
}
.l-footer {
	max-width: 1132px;
	margin-right: auto;
	margin-left: auto
}
.bgMain {
	background-color: #e78317
}
.bgBase, .bgWhite {
	background-color: #fff
}
.bgGray {
	background-color: #f5f5f5
}
.bgRed {
	background-color: #cd2e31
}
.bgBlack {
	background-color: #000
}
.sectionTtl {
	font-family: "Noto Serif JP", ヒラギノ明朝 ProN, Hiragino Mincho ProN, ヒラギノ明朝 Pro, Hiragino Mincho Pro, HGS明朝E, serif;
	font-size: 2.4rem;
	line-height: 1.4;
	text-align: center
}
.sectionTtl .subTtl {
	display: block;
	font-size: 1.4rem
}
.sectionTtl.bgImg {
	position: relative;
	padding: 22px 12px;
	background-image: url(../img/timer.png);
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover
}
.sectionTtl.iconCalender:before, .sectionTtl.iconMoney:before, .sectionTtl.iconTel:before {
	display: inline-block;
	position: relative;
	width: 26px;
	height: 26px;
	background: url(../img/calender.svg);
	background-repeat: no-repeat;
	background-size: 100%;
	content: ""
}
.sectionTtl.iconMoney:before {
	top: 3px;
	background: url(../img/money.svg);
	background-repeat: no-repeat;
	background-size: 100%
}
.sectionTtl.iconTel:before {
	top: 4px;
	left: .5rem;
	width: 40px;
	height: 40px;
	background: url(../img/tel.svg);
	background-repeat: no-repeat;
	background-size: 100%
}
.sectionContentTtl, .sectionMessageTtl {
	font-family: "Noto Serif JP", ヒラギノ明朝 ProN, Hiragino Mincho ProN, ヒラギノ明朝 Pro, Hiragino Mincho Pro, HGS明朝E, serif;
	font-size: 2.4rem;
	line-height: 1.4
}
.sectionContentTtl {
	font-weight: 600;
	text-align: center
}
.sectionContentTtl .subTtl {
	display: block;
	font-size: 1.4rem
}
.sectionContentTtl.big {
	font-size: 3rem
}
.section:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100px;
	height: 1px;
	background-color: #333;
	content: ""
}
.sectionLarge {
	display: block;
	margin-bottom: 25px;
	font-size: 3rem;
	letter-spacing: .2em;
	line-height: 1.16666
}
.sectionSmall {
	display: block
}
.pointCaptionAct, .pointCaptionMain, .pointCaptionSub {
	display: inline-block;
	margin-bottom: 5px;
	padding: 0 4px;
	color: #fff;
	font-family: Roboto, sans-serif;
	font-weight: 700
}
.pointCaptionMain {
	background-color: #f4a02d
}
.pointCaptionMain .number {
	display: inline-block
}
.pointCaptionSub {
	background-color: #e73245
}
.pointCaptionSub .number {
	display: inline-block
}
.pointCaptionAct {
	background-color: #5bbeb3
}
.pointCaptionAct .number {
	display: inline-block
}
.ttlBorderMain {
	border-bottom: 2px solid rgba(244, 160, 45, .3)
}
.ttlBorderSub {
	border-bottom: 2px solid rgba(231, 50, 69, .3)
}
.ttlBorderAct {
	border-bottom: 2px solid rgba(91, 190, 179, .3)
}
.ttlContentBorder01 {
	border: 1px solid #f4a02d
}
.ttlContentBorder01.Act {
	border: 1px solid #5bbeb3
}
.ttlContentBorder02 {
	border: 2px solid #f4a02d
}
.ttlContentBorder02.trans {
	border-top: transparent
}
.grayBorder {
	border-bottom: 2px solid #f5f5f5
}
.noticeTxtLp {
	padding-left: 1em;
	text-indent: -1em
}
.triangle, .triangleAccent, .triangleSub {
	display: inline-block;
	z-index: 2;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent transparent #f4a02d
}
.triangleAccentTxt, .triangleSubTxt, .triangleTxt {
	display: inline-block;
	z-index: 3;
	position: absolute;
	text-align: center
}
.triangleSub {
	transform: translateX(-30%) translateY(-90%);
	border-color: transparent transparent #e73245
}
.triangleAccentTxt, .triangleSubTxt {
	transform: translateX(0) translateY(-100%);
	line-height: 1.4
}
.triangleAccent {
	border-color: transparent transparent #5bbeb3
}
.triangleAccentTxt {
	transform: translateX(6%) translateY(-120%);
	line-height: 1.2
}
.linkBtn, a.linkBtn, button.linkBtn {
	display: inline-block;
	position: relative;
	width: 100%;
	max-width: 350px;
	padding: 26px 10px 26px 30px;
	background-color: #e78317;
	color: #333;
	font-size: 1.5rem;
	line-height: 1.2
}
.linkBtn:after, .linkBtn:before, a.linkBtn:after, a.linkBtn:before, button.linkBtn:after, button.linkBtn:before {
	display: block;
	content: ""
}
.linkBtn:before, a.linkBtn:before, button.linkBtn:before {
	z-index: 2;
	position: absolute;
	top: 0;
	right: 70px;
	bottom: 0;
	width: 1px;
	background-color: #fff
}
.linkBtn:after, a.linkBtn:after, button.linkBtn:after {
	position: absolute;
	top: 50%;
	right: 28px;
	width: 0;
	height: 0;
	transform: translateY(-50%);
	border-color: transparent transparent transparent #333;
	border-style: solid;
	border-width: 4px 0 4px 12px
}
.footerInner {
	display: flex;
	justify-content: space-between
}
.footerLogo {
	width: 100%;
	max-width: 138px;
	margin: 0 auto;
	padding: 15px 0
}
.footerContactWrap {
	display: none
}
.footerContactTtl {
	width: 35%;
	padding: 16px 10px;
	background-color: #fff;
	color: #b6100e
}
.footerContactContent, .footerContactTtl {
	display: flex;
	align-items: center;
	justify-content: center
}
.footerContactTtl a{
	color: #b6100e
}
.footerContactTtl a img{
	display: inline-block;
	height: 1.6em;
	width: auto;
	margin-right: 0.5em;
}
.footerContactContent {
	width: 65%;
	padding: 3px 10px;
	background-color: #b6100e
}
.footerContactContent.iconTel a {
	display: inline-block
}
.footerContactContent.iconTel a:before {
	display: inline-block;
	width: 22px;
	height: 22px;
	margin-right: 5px;
	transform: translateY(-2px);
	background-image: url(../img/tel.svg);
	background-repeat: no-repeat;
	background-size: 100%;
	vertical-align: middle;
	content: ""
}
.footer .numberWrap {
	margin-right: 1.5rem
}
.footer .iconWrap {
	align-items: center;
	justify-content: space-between;
	width: 90px;
	margin: 0 auto
}
.footer .iconWrapInsta {
	width: 35px
}
.footer .iconWrapYoutube {
	width: 44px
}
.copyrightWrap {
	padding: 6px 0
}
.topBtn {
	display: flex;

	align-items: center;
	justify-content: center;
	width: 100%;
	background-color: #ccc
}
.topBtn:before {
	display: inline-block;
	position: relative;
	width: 10px;
	height: 10px;
	transform: rotate(-45deg);
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	content: ""
}
.screen-reader-text, .visuallyHidden {
	clip: rect(0 0 0 0);
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	border: 0;
	white-space: nowrap;
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	opacity: 0;
	pointer-events: none
}
.iframeWrapper {
	position: relative;
	width: 100%;
	padding-top: 56.25%
}
.iframeWrapper iframe, .iframeWrapper video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%!important;
	height: 100%!important
}
.squareHead {
	position: relative
}
.squareHead:before {
	position: absolute;
	left: 0;
	background-color: #f4a02d;
	content: ""
}
.squareHead.subColor:before {
	background-color: #e73245
}
.squareHead.accentColor:before {
	background-color: #5bbeb3
}
.pointItem01, .pointItem02, .pointItem02:before, .pointItem03, .pointItem03:before {
	position: relative;
	padding-left: 4rem
}
.pointItem01:before, .pointItem02:before, .pointItem03:before {
	display: inline-block;
	position: absolute;
	top: -3px;
	left: 0;
	width: 25px;
	height: 25px;
	color: #e73245;
	font-family: Roboto, sans-serif;
	font-size: 1.8rem;
	font-weight: 700;
	content: "01."
}
.act.pointItem02:before, .act.pointItem03:before, .pointItem01.act:before {
	color: #5bbeb3
}
.pointItem02:before, .pointItem03:before {
	top: -3px;
	left: -4rem;
	content: "02."
}
.act.pointItem03:before, .pointItem02.act:before {
	color: #5bbeb3
}
.pointItem03:before {
	content: "03."
}
.pointItem.act:before {
	color: #5bbeb3
}
.hdrLogo + p{
	display: flex;
}
.hdrContact {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 255px;
	height: 70px;
	background: #b6100e;
	line-height: 1
}
.hdrContactTel {
	display: block
}
.hdrContactTel:before {
	display: inline-block;
	width: 23px;
	height: 23px;
	margin-right: 3px;
	transform: translateY(-1px);
	background-image: url(../img/tel.svg);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	content: ""
}
.hdrContact2 {
	display: flex;
	height: 70px;
	padding: 0 1em;
	overflow: hidden;
	align-items: center;
	justify-content: center;
	background: #b6100e;
	line-height: 1
}
.hdrContact2 img{
	display: inline-block;
	height: 1.6em;
	width: auto;
	margin-right: 0.7em;
}

.hdrLogo {
	padding: 15px 0
}
.mvTtlWrap {
	position: absolute;
	left: 0;
	width: 100%;
	background-color: rgba(221, 135, 0, .8)
}
.mvTtl {
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.7
}
.pageNav .pageNavSub a {
	display: block;
	position: relative;
	padding-left: 1.3rem
}
.pageNav .pageNavSub a:before {
	display: inline-block;
	position: absolute;
	top: .65em;
	left: 0;
	width: 0;
	height: 0;
	border-color: transparent transparent transparent #cd2e31;
	border-style: solid;
	border-width: 3.5px 0 3.5px 8px;
	content: ""
}
.sectionMessageTtlWrap {
	background-position: 50%
}
.sectionMeritWrap, .sectionMessageTtlWrap {
	background-repeat: no-repeat;
	background-size: cover
}
.sectionMeritPointWrap {
	padding: 20px
}
.sectionMeritPointWrap sup {
	display: inline-block;
	margin-right: -2px;
	transform: translateY(4px) scale(.7);
	transform-origin: left top;
	font-size: 1rem
}
.sectionPointWrap {
	padding: 40px 0;
	background-color: #fff;
	background-image: url(../img/6.png);
	background-repeat: no-repeat;
	background-size: 100%
}
.sectionPointContentWrap {
	margin-bottom: 30px
}
.sectionPointContents sup {
	display: inline-block;
	margin-right: -2px;
	transform: translateY(4px) scale(.7);
	transform-origin: left top;
	font-size: 1rem
}
.sectionPeriodContentWrap {
	padding-top: 30px;
	padding-bottom: 30px
}
.sectionCostWrap {
	padding-top: 40px;
	padding-bottom: 40px
}
.costSummaryInnerWrap {
	padding: 20px 0 30px
}
.costSummaryTxt {
	padding-top: 10px;
	padding-bottom: 10px
}
.costSummaryWrapInner dt {
	padding: 4px 0
}
.costSummaryWrapItem sup {
	display: inline-block;
	transform: translateY(-2px);
	font-size: 1.2rem
}
.costSummaryWrapItem .costItem {
	display: inline-block;
	transform: translateY(1px)
}
.costListTtl span:first-of-type {
	width: 7rem
}
.costListTtl span.big {
	width: 9rem
}
@media screen and (min-width:769px) {
	body {
		font-size: 1.6rem;
		line-height: 1.6
	}
	.displayFlexpc {
		display: flex
	}
	.displayNotNarrow {
		display: inherit
	}
	.displayNotNarrow.displayInlineBlock {
		display: inline-block
	}
	.displayNarrow {
		display: none
	}
	.l-container {
		padding-top: 70px
	}
	.mv-inner {
		padding-right: 7.69231%;
		padding-left: 7.69231%
	}
	.l-innerNarrow {
		padding-right: 70px;
		padding-left: 70px
	}
	.sectionPeriodWrap .l-innerNarrow {
		padding-right: 12.96296%;
		padding-left: 12.96296%
	}
	.l-header {
		z-index: 10;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		padding-left: 40px
	}
	.l-footer {
		display: flex;
		align-items: center;
		padding: 18px 26px 28px
	}
	.sectionTtl {
		font-size: 3.6rem
	}
	.sectionTtl .subTtl {
		font-size: 1.6rem
	}
	.sectionTtl.iconCalender:before, .sectionTtl.iconMoney:before, .sectionTtl.iconTel:before {
		top: 5px;
		left: -2px;
		width: 35px;
		height: 35px
	}
	.sectionTtl.iconMoney:before {
		left: -5px;
		width: 35px;
		height: 35px
	}
	.sectionMessageTtl {
		font-size: 3.6rem
	}
	.sectionContentTtl {
		font-size: 3.6rem;
		text-align: left
	}
	.sectionContentTtl .subTtl {
		display: block;
		font-size: 1.4rem
	}
	.sectionContentTtl.big {
		font-size: 3.6rem
	}
	.pointCaptionAct, .pointCaptionMain, .pointCaptionSub {
		width: 58px;
		height: 58px;
		margin-right: 1.5rem;
		padding: 2px 10px 0;
		line-height: 2.5rem;
		text-align: center
	}
	.pointCaptionAct .number, .pointCaptionMain .number, .pointCaptionSub .number {
		display: none
	}
	.triangle, .triangleAccent, .triangleSub {
		display: block;
		left: 90px;
		transform: translateX(0) translateY(-66%) rotate(16deg);
		border-width: 0 100px 173.2px;
		border-color: transparent transparent #f4a02d
	}
	.triangleAccentTxt, .triangleSubTxt, .triangleTxt {
		top: -20px;
		left: 140px;
		font-size: 2.4rem
	}
	.triangleSub {
		display: block;
		transform: translateX(-10%) translateY(-72%) rotate(0);
		border-color: transparent transparent #e73245
	}
	.triangleAccentTxt, .triangleSubTxt {
		top: 0;
		left: 130px;
		transform: translateX(5%) translateY(-70%)
	}
	.triangleAccent {
		transform: translateX(-25%) translateY(-85%) rotate(-16deg);
		border-color: transparent transparent #5bbeb3
	}
	.triangleAccentTxt {
		top: -20px;
		left: 95px;
		line-height: 1.2
	}
	.footerLogo {
		max-width: 200px;
		margin: 0 40px 0 0
	}
	.footer .iconWrap {
		width: 128px;
		margin: 0 0 auto auto
	}
	.footer .iconWrapInsta {
		width: 44px
	}
	.footer .iconWrapYoutube {
		width: 62px
	}
	.topBtn {
		height: 50px
	}
	.topBtn:before {
		top: 2px
	}
	.squareHead {
		padding-left: 20px
	}
	.squareHead:before {
		top: 7px;
		width: 12px;
		height: 12px
	}
	.squareHead.is-meritPoint {
		padding-left: 30px
	}
	.squareHead.is-meritPoint:before {
		top: 12px;
		width: 18px;
		height: 18px
	}
	.mvTtlWrap {
		top: 50%;
		max-width: 340px;
		transform: translateY(-50%)
	}
	.pageNav {
		display: flex;
		justify-content: center;
		background: #f5f5f5
	}
	.pageNavItem {
		position: relative;
		width: 33.3333%;
		max-width: 220px;
		text-align: center
	}
	.pageNavItem.hasBorder {
		border-right: 1px solid rgba(51, 51, 51, .2);
		border-left: 1px solid rgba(51, 51, 51, .2)
	}
	.pageNavItem.hasSubNav:hover:after {
		opacity: 1;
		transition: opacity .7s ease
	}
	.pageNavItem.hasSubNav:after {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #cd2e31;
		content: "";
		opacity: 0;
		transition: opacity .7s ease
	}
	.pageNav a.pageNavItemLink {
		display: block;
		position: relative;
		height: 60px;
		padding: 14px 0 20px;
		color: #333;
		line-height: 1
	}
	.pageNav a.pageNavItemLink span {
		display: block
	}
	.pageNav a.pageNavItemLink:after {
		display: inline-block;
		position: absolute;
		bottom: 14px;
		left: 50%;
		width: 0;
		height: 0;
		border-color: #cd2e31 transparent transparent;
		border-style: solid;
		border-width: 7px 4px 0;
		content: ""
	}
	.pageNav .hasSubNav .pageNavSub {
		position: absolute;
		top: 100%;
		left: 0;
		width: 60vw;
		max-width: 530px;
		padding: 35px 28px;
		background: rgba(0, 0, 0, .9);
		text-align: left;
		opacity: 0;
		pointer-events: none;
		transition: opacity .7s ease
	}
	.pageNav .hasSubNav .pageNavSub a {
		color: #fff
	}
	.pageNav .hasSubNav .pageNavSubTerm {
		margin-bottom: 10px
	}
	.pageNav .hasSubNav .pageNavSubList {
		padding-left: 15px
	}
	.pageNav .hasSubNav .pageNavSubListItem:not(:last-child) {
		margin-bottom: 7px
	}
	.pageNav .hasSubNav:hover .pageNavSub {
		opacity: 1;
		pointer-events: auto;
		transition: opacity .7s ease
	}
	.sectionMessageWrap {
		padding-bottom: 60px
	}
	.sectionMessageContent {
		line-height: 1.4
	}
	.sectionMessageTtlWrap {
		padding-top: 180px;
		padding-bottom: 180px;
		background-image: url(../img/bg_message_pc.jpg)
	}
	.sectionMeritWrap {
		padding: 70px 0 90px;
		background-image: url(../img/bg_merit_pc.jpg)
	}
	.sectionPointWrap {
		padding: 70px 0
	}
	.sectionPointContentWrap {
		margin-bottom: 60px
	}
	.sectionPointSummary {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-evenly
	}
	.sectionPointSummaryTtl {
		text-align: left
	}
	.sectionPointSummaryGraph {
		width: 50%;
		padding-right: 20px
	}
	.sectionPointSummaryTxt {
		width: 50%
	}
	.sectionPointContents {
		display: flex;
		position: relative;
		flex-direction: row-reverse;
		padding-left: 70px
	}
	.sectionPointContentsTxt {
		width: 75%;
		padding-right: 6.5%;
		padding-bottom: 70px
	}
	.sectionPointContentsImgWrap {
		width: 25%
	}
	.sectionPointContentsImg {
		position: sticky;
		top: 70px;
		height: calc(100vh - 70px)
	}
	.sectionPointContentsImg img {
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
		-o-object-position: right;
		object-position: right
	}
	.sectionPeriodContentWrap {
		padding-top: 60px;
		padding-bottom: 60px
	}
	.sectionPeriodContentWrap .ContentTxt {
		margin-right: 1rem
	}
	.sectionCostWrap {
		padding-top: 70px;
		padding-bottom: 70px
	}
	.sectionCostWrapItem {
		width: 40%
	}
	.sectionCostWrapItem dt {
		padding: 5px 0
	}
	.sectionCostWrapItem.bgGray {
		margin-bottom: 0
	}
	.sectionCostWrapInner {
		display: flex;
		justify-content: space-evenly;
		margin-bottom: 60px
	}
	.costSummaryInnerWrap {
		padding: 45px 0
	}
	.costSummaryTxt {
		padding: 15px 0
	}
	.costSummaryWrapInner {
		display: flex;
		justify-content: space-between
	}
	.costSummaryWrapItem {
		width: 48%
	}
	.costSummaryWrapItem .big.number {
		margin-right: 2rem
	}
	.costSummaryWrapItem .number {
		margin-right: 1.5rem
	}
	.costSummaryWrapItem .pcTxtCenter {
		text-align: center
	}
	.costListTtlWrap {
		max-width: 200px;
		margin: 0 auto
	}
	.contactWrap {
		padding: 30px 0
	}
	.contactWrap .message {
		font-size: 1.6rem
	}
	.contactWrap .sectionTtl {
		font-size: 3.6rem
	}
	.costListTtl.small {
		width: 230px;
		margin: 0 auto
	}
}
@media screen and (max-width:768px) {
	.spMb0 {
		margin-bottom: 0
	}
	.spMb5 {
		margin-bottom: 5px
	}
	.spMb10 {
		margin-bottom: 10px
	}
	.spMb15 {
		margin-bottom: 15px
	}
	.spMb20 {
		margin-bottom: 20px
	}
	.spMb25 {
		margin-bottom: 25px
	}
	.spMb30 {
		margin-bottom: 30px
	}
	.spMb35 {
		margin-bottom: 35px
	}
	.spMb40 {
		margin-bottom: 40px
	}
	.spMb45 {
		margin-bottom: 45px
	}
	.spMb50 {
		margin-bottom: 50px
	}
	.spMb60 {
		margin-bottom: 60px
	}
	.spMb65 {
		margin-bottom: 65px
	}
	.spMb100 {
		margin-bottom: 100px
	}
	.spMb120 {
		margin-bottom: 120px
	}
	.spMb140 {
		margin-bottom: 140px
	}
	.spPt20 {
		padding-top: 20px
	}
	.spPt100 {
		padding-top: 100px
	}
	.spPt200 {
		padding-top: 200px
	}
	.spPb100 {
		padding-bottom: 100px
	}
	.spFs10 {
		font-size: 1rem
	}
	.spFs11 {
		font-size: 1.1rem
	}
	.spFs12 {
		font-size: 1.2rem
	}
	.spFs13 {
		font-size: 1.3rem
	}
	.spFs14 {
		font-size: 1.4rem
	}
	.spFs15 {
		font-size: 1.5rem
	}
	.spFs16 {
		font-size: 1.6rem
	}
	.spFs17 {
		font-size: 1.7rem
	}
	.spFs18 {
		font-size: 1.8rem
	}
	.spFs20 {
		font-size: 2rem
	}
	.spFs22 {
		font-size: 2.2rem
	}
	.spFs24 {
		font-size: 2.4rem
	}
	.spFs30 {
		font-size: 3rem
	}
	.spFs32 {
		font-size: 3.2rem
	}
	.spls10 {
		letter-spacing: .1em
	}
	ol.numberList li:before {
		font-size: 1.4rem
	}
	.spTxtLeft {
		text-align: left
	}
	.spTxtCenter {
		text-align: center
	}
	.l-header {
		padding-left: 20px
	}
	footer {
		padding-bottom: 57px
	}
	.l-footer {
		padding: 30px 35px 25px
	}
	.sectionTtl.iconCalender:before, .sectionTtl.iconMoney:before, .sectionTtl.iconTel:before {
		top: 3px;
		left: -5px;
		width: 26px;
		height: 26px
	}
	.sectionTtl.iconMoney:before {
		left: -4px;
		width: 26px;
		height: 26px
	}
	.sectionTtl.iconTel:before {
		top: 2px;
		left: .3rem;
		width: 24px;
		height: 24px;
		transform: none
	}
	.sectionLarge {
		font-size: 2.5rem
	}
	.triangle, .triangleAccent, .triangleSub {
		left: 50%;
		transform: translateX(-50%) translateY(-100px) rotate(16deg);
		border-width: 0 55px 95.3px
	}
	.triangleAccentTxt, .triangleSubTxt, .triangleTxt {
		top: -50px;
		left: 50%;
		transform: translateX(-66%)
	}
	.triangleSub {
		transform: translateX(-50%) translateY(-80px)
	}
	.triangleAccentTxt, .triangleSubTxt {
		top: -35px;
		transform: translateX(-50%)
	}
	.triangleAccent {
		transform: translateX(-50%) translateY(-70%) rotate(-16deg)
	}
	.triangleAccentTxt {
		top: -23px;
		transform: translateX(-40%)
	}
	.footerContactWrap {
		display: block;
		z-index: 10;
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%
	}
	.topBtn {
		height: 40px
	}
	.topBtn:before {
		top: 3px
	}
	.squareHead {
		padding-left: 16px
	}
	.squareHead:before {
		top: 7px;
		width: 10px;
		height: 10px
	}
	.squareHead.is-meritPoint:before {
		top: 9px
	}
	.hdrContact {
		display: none
	}
	.mvTtlWrap {
		bottom: 0;
		padding: 10px 0
	}
	.pageNav {
		padding-top: 20px;
		padding-bottom: 20px;
		background: #fff
	}
	.pageNav a {
		color: #333
	}
	.pageNavItem.hasBorder {
		margin: 10px 0;
		padding: 10px 0;
		border-top: 1px solid #f5f5f5;
		border-bottom: 1px solid #f5f5f5
	}
	.pageNav a.pageNavItemLink {
		display: block;
		position: relative;
		padding-left: 1.3rem
	}
	.pageNav a.pageNavItemLink:before {
		display: inline-block;
		position: absolute;
		top: .65em;
		left: 0;
		width: 0;
		height: 0;
		border-color: transparent transparent transparent #cd2e31;
		border-style: solid;
		border-width: 3.5px 0 3.5px 8px;
		content: ""
	}
	.pageNav .pageNavSubTerm {
		clip: rect(0 0 0 0);
		position: absolute;
		width: 1px;
		height: 1px;
		margin: -1px;
		padding: 0;
		overflow: hidden;
		border: 0;
		white-space: nowrap;
		-webkit-clip-path: inset(50%);
		clip-path: inset(50%);
		opacity: 0;
		pointer-events: none
	}
	.pageNav .pageNavSubList {
		padding-left: 15px
	}
	.sectionMessageWrap {
		padding-bottom: 40px
	}
	.sectionMessageTtlWrap {
		padding-top: 120px;
		padding-bottom: 120px;
		background-image: url(../img/bg_message.jpg)
	}
	.sectionMeritWrap {
		padding: 40px 0 60px;
		background-image: url(../img/bg_merit.png)
	}
	.sectionPointContentsTxt {
		padding: 0 16px 40px
	}
	.sectionCostWrapItem .bgGray {
		padding: 4px 0
	}
	.contactWrap {
		padding: 38px 0
	}
	.overImg {
		margin-right: -16px;
		margin-left: -16px
	}
}
@media screen and (max-width:599px) {
	.displaySp {
		display: block
	}
}
@media screen and (max-width:769px) {
	.displayNotNarrow {
		display: none
	}
	.displayNarrow {
		display: block
	}
}
@media screen and (min-width:1040px) {
	.mv-inner {
		padding-right: 15.38462%;
		padding-left: 15.38462%
	}
	.mvTtlWrap {
		width: 100%;
		max-width: 555px;
		padding: 36px 0
	}
	.mvTtl {
		font-size: 3rem
	}
}
@media screen and (max-width:374px) {
	.footerContactContent.iconTel a {
		font-size: 2.2rem
	}
}
@media screen and (min-width:769px) and (max-width:1039px) {
	.mvTtlWrap {
		padding: 28px 0
	}
}
@media screen and (min-width:769px) and (min-width:769px) {
	.sectionCostWrap .sectionTtl {
		margin-bottom: 40px
	}
	.costListTtlWrap {
		max-width: 220px
	}
}




.triangles {
	display: inline-block;
	z-index: 2;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
}
.triangles.tri-orange {
	border-color: transparent transparent #f4a02d
}
.triangles.tri-red {
	border-color: transparent transparent #e73245
}
.triangles.tri-green {
	border-color: transparent transparent #5bbeb3
}
.trianglesTxt {
	width: 5em;
	display: inline-block;
	z-index: 3;
	position: absolute;
	text-align: center
}
@media screen and (min-width:769px)  {
	.triangles {
		border-width: 0 100px 173.2px;
		top: -100px;
	}
	.trianglesTxt {
		top: -20px;
		left: 66px;
		font-size: 2.4rem
	}
	.trianglesTxt.tri-orange {
		top: -10px;
	}
}
@media screen and (max-width:768px)  {
	.triangles {
		border-width: 0 55px 95.3px;
		top: -80px;
		left: 0;
	}
	.trianglesTxt {
		top: -40px;
		left: 20px;
	}
	.trianglesTxt.tri-orange {
		top: -30px;
	}
}



