@charset "utf-8";
.inc-header{
    background: #fff;
    padding-bottom: 0;}
.l-header{
    box-shadow: none;
    position: relative;
    border: none;
    width: 100%;
    max-width: 100%;
    border-radius: 0;
    padding: 0;
    top: 0;
    height:auto;
}
#header {
    background: none;
}

/* SP */
@media screen and (max-width: 767px) {
	/* common */
	body {
		font-family: Arial, san-serif, Helvetica;
	}
	body, main {
		min-width: 320px;
	}
	body.simple {
			padding-top: 0!important;
	}
	body#simple {
			padding-top: 0!important;
	}
	img {
		max-width: 100%;
		vertical-align: bottom;
		margin: 0 auto;
	}
	.center {
		text-align: center;
	}
	.left {
		text-align: left !important;
	}
	.ov {
		text-decoration: underline !important;
	}
	.red {
		color: #d62401 !important;
	}
	.blue {
		color: #0121b5 !important;
	}
	.yellow {
		color: #fff100 !important;
	}
	.flex {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.flex.mid {
		align-items: center;
	}
	.indent {
		padding-left: 1em;
		text-indent: -1em;
	}
	.line {
		border-bottom: 2px dotted #fff;
	}
	.line:first-child {
		border-top: 2px dotted #fff;
	}
	/* general */
	.text {
		font-size: 4.375vw;
		font-weight: 600;
		line-height: 1.72;
	}
	.note {
		font-size: 3.438vw;
		line-height: 1.46;
	}
	.inner {
		margin: 0 15px;
		position: relative;
	}
	.inner img {
		width: 100%;
	}
	.section {
		position: relative;
	}
	.btn a {
		display: block;
		margin: 0 auto;
	}

	*::before,
	*::after {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}



	/* fixed */
	.floatingBanner {
        position: sticky;
        bottom: 0;
		left: 0;
		width: 100%;
		background: url(/sites/default/files/media/sp/images/campaign/2026february/teiki/fixed_bg_sp.jpg) top center no-repeat;
		background-size: cover;
		z-index: 1000;
		padding: 1.875vw 0;
    }
	.floatingBanner .floatingBanner-btn{
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 1.875vw;
	}
	/* footer */
	footer {
		margin-top: 0;
	}
	.inc-footer {
		min-width: 320px;
	}

	.l-footer {
		padding-top: 0;
	}

	.mt0{
		margin-top:0 !important;}

	.pt0{
		padding-top:0 !important;}

	.mb0{
		margin-bottom:0 !important;}

	.pb0{
		padding-bottom:0 !important;}

	.ml0{
		margin-left:0 !important;}

	.pl0{
		padding-left:0 !important;}

	.mr0{
		margin-right:0 !important;}

	.pr0{
		padding-right:0 !important;}

	.mr3{margin-right: 0.9375vw !important;}
	
	.mt8{margin-top: 2.5vw !important;}

	.mt10{margin-top: 3.125vw !important;}

	.mt15{margin-top: 4.6875vw !important;}

	.mt25{margin-top: 7.8125vw !important;}

	.fz10{ font-size: 3.125vw;}
	.fz11{ font-size: 3.4375vw;}
	.fz12{ font-size: 3.75vw;}
	.fz13{ font-size: 4.0625vw;}
	/* from here */

	.indent-txt,
	.indent-list > *{
		display: flex;
		text-align: left;
	}
	.indent-txt >*:nth-child(2),
	.indent-list > * >*:nth-child(2){
		flex: 1 1;
	}
	.txt_link{
		color: #008ed1;
		text-decoration: underline;
	}
	.campaign_period {
		color: #002448;
		font-weight: 700;
	}
	.campaign_period .campaign_period-tit {
		display: block;
		font-size: 3.4375vw;
		margin-bottom: 1.5625vw;
	}
	.campaign_period .campaign_period-time {
		margin-left: 3.125vw;
		font-size: 4.0625vw;
		margin-top: 3.125vw;
	}

	.mvBlock .mv_label {
		background-color: #22ac38;
		padding: 1.875vw 0;
	}

	.mvBlock .mv_label img {
		width: 91.875%;
	}

	.mvBlock .mv_bg{
		background: #005eae;
		text-align: center;
		padding-bottom: 13.125vw;
	}
	.mvBlock h1 {
		background: #005eae url(/sites/default/files/media/sp/images/campaign/2026february/teiki/mv_bg_sp.jpg) top center repeat-x;
		background-size: cover;
		padding-top: 3.125vw;
	}
	.mvBlock h1 img {
		width: 90%;
	}
	.mv_box{
		margin: 6.25vw 4.6875vw 0;
		background: #fff;
		padding: 7.5vw 0 6.25vw;
	}
	.mv_box .mv_box-inner{
		padding: 0 6.25vw;
	}
	.mv_box .mv_box-tit img {
		width: 83.79%;
	}
	.mv_box .mv_box-caption{
		font-weight: 700;
		font-size: 3.75vw;
		line-height: 1.5;
		text-align: left;
		margin: 5.625vw 0 4.6875vw;
	}
	.mv_box dl{
		font-size: 3.4375vw;
		line-height: 1.545;
		margin-bottom: 3.125vw;
	}
	.mv_box dl dt{
		margin: 0 0 2.5vw 0;
		font-size: 3.4375vw;
		color: #fff;
		font-weight: 700;
		background: #22ac38;
		padding: 0.625vw 0 0.9375vw;
	}
	.mv_box dl dd{
		font-size: 3.125vw;
		text-align: left;
		line-height: 1.4;
	}

	.mv_box dl a {
		font-weight: bold;
	}

	.mv_box .btn {
		margin-top: 5.625vw;
	}

	.mv_box .btn a {
		width: 93.2%;
	}

	.sec01{
		text-align: center;
		padding: 40px 0 0;
	}
	.sec01 h2 img {
		width: 66.1%;
	}
	.sec01 .txt {
		margin-top: 5vw;
	}
	.sec01 .txt img {
		width: 85.3%;
	}
	.sec01 .img {
		margin-top: 3.59375vw;
	}
	.sec01 .img img {
		width: 74.1%;
	}
	.pointBlock{
		background: #fdeef3;
		padding: 7.8125vw 4.6875vw 7.8125vw;
		margin: 7.8125vw 4.6875vw 0;
	}
	.pointBlock .ttl01 img {
		width: 72.1%;
	}
	.point_box{
		background: #fff799;
		border-radius: 10px;
		position: relative;
		margin-top: 22px;
	}
	.point_box-head{
		position: relative;
		padding: 3.125vw 3.125vw 2.5vw 19.6875vw;
		text-align: left;
	}
	.point_box-head .no{
		position: absolute;
		left: -1.5625vw;
		top: -2.1875vw;
		z-index: 1;
		width: 16.875vw;
	}
	.point_box-head .ttl img {
		width: 72.19%;
		margin: 0;
	}
	.point_box-body{
		background: #fff;
		border-radius: 0 0 10px 10px;
		border: 3px solid #fff799;
		font-size: 3.75vw;
		line-height: 1.417;
		text-align: left;
		padding: 1.875vw 3.125vw 0.9375vw;
	}
	.point_box-body sup{
		font-size: 80%;
		vertical-align: super;
	}
	.pointBlock .indent-list {
		margin-top: 2.1875vw;
	}
	.pointBlock .indent-txt,
	.pointBlock .indent-list {
		font-size: 3.125vw;
		line-height: 1.5;
	}
	.pointBlock .point02 .ttl img {
		width: 85.56%;
	}
	.pointBlock .point02 .point_box-body {
		padding: 1.875vw 3.125vw 3.125vw;
	}
	.pointBlock .point02 .indent-txt {
		margin-top: 0.9375vw;
	}
	.campaign_box {
		margin-top: 7.8125vw;
		background: url(/sites/default/files/media/sp/images/campaign/2026february/teiki/sec01_campaign_bg_sp.jpg) center center no-repeat;
		background-size: cover;
		padding-bottom: 6.25vw;
	}
	.campaign_box .img{
		margin: 3.125vw 0 3.125vw;
		padding-top: 3.75vw;
	}
	.campaign_box .img img {
		width: 79.1%;
	}
	.campaign_box .btn a {
		width: 72.8%;
	}
	.stepBlock{
		padding: 39px 30px 35px;
		background: #fff;
		text-align: center;
	}
	.stepBlock h2 img {
		width: 86.9%;
	}
	.step_box{
		background: #fdeef3;
		position: relative;
		border-radius: 10px;
		padding: 10.3125vw 6.25vw 6.875vw;
		margin-top: 14.0625vw;
	}
	.step_box.step02 {
		margin-top: 11.875vw;
	}
	.step_box.step03 {
		margin-top: 12.5vw;
	}
	.step_box.step04 {
		margin-top: 10.9375vw;
		padding-bottom: 7.8125vw;
	}
	.step_box .no{
		width: 16.875vw;
		margin: 0 auto;
		position: absolute;
		z-index: 1;
		left: 0;
		right: 0;
		top: -8.4375vw;
	}
	.step_box-row{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.step_box-row .icon{
		width: 15.625vw;
	}
	.step_box-row .txt{
		flex: 1 1;
		margin-left: 6.25vw;
		text-align: left;
		font-size: 4.6875vw;
		font-weight: 700;
		line-height: 1.2;
	}
	.step_box.step03 .txt {
		margin-top: 2.1875vw;
	}
	.step_box.step04 .step_box-row {
		margin-top: 1.25vw;
	}
	.step_box-row .txt sup{
		font-size: 65%;
		vertical-align: super;
	}
	.note_box{
		background: #fdeef3;
		border-radius: 10px;
		margin: 4.0625vw 0 1.875vw;
		padding: 4.6875vw;
	}
	.note_box .tit{
		font-size: 4.6875vw;
		color: #e73978;
		font-weight: 700;
		margin-bottom: 3.125vw;
	}
	.note_box ul li{
		position: relative;
		padding-left: 3.75vw;
		font-size: 3.75vw;
		line-height: 1.417;
		text-align: left;
	}
	.note_box ul li.mt5 {
		margin-top: 1.5625vw;
	}
	.note_box ul li:before{
		content:"";
		width: 3.125vw;
		height: 3.125vw;
		border-radius: 50%;
		background: #e73978;
		position: absolute;
		left: 0;
		top: 0.625vw;
	}
	.stepBlock .indent-list{
		font-size: 3.125vw;
		line-height: 1.5;
	}

	.stepBlock .ttl img {
		width: 93.8%;
	}

	.paymentBlock{
		padding: 0 4.6875vw 10.9375vw;
		background: #fff;
		text-align: center;
	}
	.paymentBlock h2 img {
		width: 56.2%;
	}
	.paymentBlock-inner{
		background: #ffffea;
		padding: 7.1875vw 0 12.5vw;
	}
	.paymentBlock .indent-list{
		font-size: 3.125vw;
		line-height: 1.5;
		margin: 3.75vw 3.75vw 0;
	}
	.paymentBlock .box01{
		border: 2px solid #666666;
		border-radius: 10px;
		background: #fff;
		margin: 4.6875vw 4.6875vw 24px;
		padding: 16px 4.6875vw 18px;
		line-height: 1.308;
	}
	.paymentBlock .txt01{
		font-size: 4.6875vw;
		font-weight: 700;
		line-height: 1.333;
		padding: 0 0 5vw;
		background: url('/sites/default/files/media/sp/images/campaign/2026february/teiki/payment_bb.png') no-repeat bottom center / auto 7.8125vw;
	}
	.paymentBlock .txt02{
		font-size: 4.0625vw;
		font-weight: 700;
		color: #036eb7;
		margin: 1.25vw 0 1.5625vw;
	}

	.paymentBlock .img01 img {
		width: 91.7%;
	}

	.storeBlock{
		background: #fff9b8;
		padding: 13.125vw 0 12.5vw;
		text-align: center;
	}
	.storeBlock h2 img{
		width: 34.69%;
	}
	.storeBlock .box{
		background: #fff;
		margin: 6.25vw 4.6875vw 5.625vw;
		padding: 32px 0 32px;
	}
	.storeBlock .txt01 img {
		width: 75.86%;
	}
	.storeBlock .txt02{
		font-size: 4.0625vw;
		font-weight: 700;
		color: #fff;
		background: #22ac38;
		display: inline-block;
		padding: 1.5625vw 5.625vw;
		margin-top: 7.8125vw;
	}
	.storeBlock .txt03{
		margin: 5.3125vw 0 0;
		text-align: left;
		font-size: 3.75vw;
		line-height: 1.583;
	}
	.storeBlock .txt03 p{
		font-weight: 700;
		color: #002448;
	}
	.storeBlock .txt03 div{
		padding-left: 3.125vw;
	}
	.storeBlock .txt_group{
		display: inline-block;
	}
	.storeBlock .btn a {
		width: 72.8%;
	}
	.campaignBlock {
		text-align: center;
	}
	.campaignBlock>h2 {
		padding: 6.25vw 0 6.875vw;
		background: #22ac38;
		margin-bottom: 6.875vw;
	}
	.campaignBlock>h2>img {
		width: 78.9%;
	}
	.campaignBlock .txt01 img {
		width: 78%;
	}
	.campaignBlock .txt02{
		font-weight: 700;
		font-size: 3.75vw;
		line-height: 1.416;
		color: #333333;
		margin: 2.8125vw 0 3.75vw;
	}
	.campaignBlock .bnr {
		margin: 0 6.25vw;
	}
	.campaignBlock .bnr a img {
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		user-select: none;
	}
	.campaign_text {
		text-align: left;
		margin-top: 11.25vw;
		padding: 0 4.6875vw 12.5vw;
	}
	.campaign_text_bg {
		width: 100%;
	}

	.campaign_text p {
		font-size: 3.125vw;
		line-height: 1.8;
	}

	.campaign_text p span {
		font-weight: 600;
	}

	.campaign_text ul {
		font-size: 3.125vw;
		line-height: 1.6;
	}

    .back-to-top {
        margin-left: auto;
        text-align: right;
    }

	.back-to-top a {
        display: inline;
        color: #00a0e9;
        font-size: 3.75vw;
        font-weight: 600;
        text-decoration: underline;
		text-underline-offset: 4px;
        letter-spacing: 1px;
    }

    .footerNav {
        width: 100%;
        background: #ededed;
        padding: 15px;
        box-sizing: border-box;
        line-height: 1.6;
    }
	.footerNav>ul {
        background: transparent;
        padding: 0;
        text-align: left;
    }
	.footerNav>ul>li {
        display: block;
        font-size: inherit;
        margin: 0;
        padding: 0;
        border: none;
    }
	.footerNav>ul>li>a {
        position: relative;
        display: block;
        padding-left: 15px;
        font-size: 13px;
        color: #062c87
	}
    .footerNav>ul>li>a:before {
        content: "";
        position: absolute;
        top: 4px;
        left: 0;
        width: 11px;
        height: 10px;
        background: url(/sites/default/files/media/sp/images/campaign/2026february/teiki/ico_rightArrow01.png) 0 0 no-repeat;
        background-size: contain;
    }

	.copyrights {
		background: #062c87;
	}
}

/* PC */
@media screen and (min-width: 768px) {
	/* サイドナビがある場合は下記のl-mainスタイルをコメントアウトを外す */

	/* フルコンテンツ幅の場合コメントアウトを外す */
	dt {
		background: none;
		padding: 0;
	}
	dl > * {
    margin: 0;
	}
    img {
        margin: 0 auto;
    }
	.btn a {
		display: inline-block;
	}
	.mvBlock .mv_label, 
	.mv_bg h1, .mv_box-tit, 
	.sec01 h2, 
	.sec01 p.mt35, 
	.sec01 p.img,
	.pointBlock-inner div:nth-child(1) {
		line-height: 0;
	}
	.l-footer {
		padding-top: 0;
	}

	/* common */
	.center {
		text-align: center;
	}
	.left {
		text-align: left !important;
	}
	.ov01:hover {
		opacity: 0.8 !important;
	}
	.ov02 {
		text-decoration: underline !important;
	}
	.ov02:hover {
		text-decoration: none !important;
	}
	.red {
		color: #d62401 !important;
	}
	.blue {
		color: #242480 !important;
	}
	.yellow {
		color: #fff100 !important;
	}
	.flex {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.flex.mid {
		align-items: center;
	}
	.indent {
		padding-left: 1em;
		text-indent: -1em;
	}
	.line {
		border-bottom: 2px dotted #fff;
	}
	.line:first-child {
		border-top: 2px dotted #fff;
	}
	/* general */
	.text {
		font-size: 14px;
		font-weight: 600;
	}
	.note {
		font-size: 11px;
	}
	.inner {
		max-width: 1000px;
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	.section {
		position: relative;
	}

	/* fixed */
	.floatingBanner {
		position: sticky;
		bottom: 0;
		left: 0;
		width: 100%;
		z-index: 50;
		background: url('/sites/default/files/media/sp/images/campaign/2026february/teiki/fixed_bg.jpg') no-repeat center;
	}
	.floatingBanner .inner {
		max-width: 1010px;
		width: 100%;
		text-align: center;
	}
	.floatingBanner .lstFixed {
		padding: 11px 0 5px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.floatingBanner .fixed-txt{
        line-height: 0;
    }
	.floatingBanner .btn {
		display: inline-block;
	}
	.floatingBanner .btn a {
		display: inline-block;
	}
	.floatingBanner .fixed-btn{
		position: absolute;
		right: 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.floatingBanner .fixed-btn > *{
		margin-left: 6px;
	}

	.mt0{
		margin-top:0 !important;}

	.pt0{
		padding-top:0 !important;}

	.mb0{
		margin-bottom:0 !important;}

	.pb0{
		padding-bottom:0 !important;}

	.ml0{
		margin-left:0 !important;}

	.pl0{
		padding-left:0 !important;}

	.mr0{
		margin-right:0 !important;}

	.pr0{
		padding-right:0 !important;}

	.mt1{
		margin-top:1px !important;}

	.pt1{
		padding-top:1px !important;}

	.mb1{
		margin-bottom:1px !important;}

	.pb1{
		padding-bottom:1px !important;}

	.ml1{
		margin-left:1px !important;}

	.pl1{
		padding-left:1px !important;}

	.mr1{
		margin-right:1px !important;}

	.pr1{
		padding-right:1px !important;}

	.mt2{
		margin-top:2px !important;}

	.pt2{
		padding-top:2px !important;}

	.mb2{
		margin-bottom:2px !important;}

	.pb2{
		padding-bottom:2px !important;}

	.ml2{
		margin-left:2px !important;}

	.pl2{
		padding-left:2px !important;}

	.mr2{
		margin-right:2px !important;}

	.pr2{
		padding-right:2px !important;}

	.mt3{
		margin-top:3px !important;}

	.pt3{
		padding-top:3px !important;}

	.mb3{
		margin-bottom:3px !important;}

	.pb3{
		padding-bottom:3px !important;}

	.ml3{
		margin-left:3px !important;}

	.pl3{
		padding-left:3px !important;}

	.mr3{
		margin-right:3px !important;}

	.pr3{
		padding-right:3px !important;}

	.mt4{
		margin-top:4px !important;}

	.pt4{
		padding-top:4px !important;}

	.mb4{
		margin-bottom:4px !important;}

	.pb4{
		padding-bottom:4px !important;}

	.ml4{
		margin-left:4px !important;}

	.pl4{
		padding-left:4px !important;}

	.mr4{
		margin-right:4px !important;}

	.pr4{
		padding-right:4px !important;}

	.mt5{
		margin-top:5px !important;}

	.pt5{
		padding-top:5px !important;}

	.mb5{
		margin-bottom:5px !important;}

	.pb5{
		padding-bottom:5px !important;}

	.ml5{
		margin-left:5px !important;}

	.pl5{
		padding-left:5px !important;}

	.mr5{
		margin-right:5px !important;}

	.pr5{
		padding-right:5px !important;}

	.mt6{
		margin-top:6px !important;}

	.pt6{
		padding-top:6px !important;}

	.mb6{
		margin-bottom:6px !important;}

	.pb6{
		padding-bottom:6px !important;}

	.ml6{
		margin-left:6px !important;}

	.pl6{
		padding-left:6px !important;}

	.mr6{
		margin-right:6px !important;}

	.pr6{
		padding-right:6px !important;}

	.mt7{
		margin-top:7px !important;}

	.pt7{
		padding-top:7px !important;}

	.mb7{
		margin-bottom:7px !important;}

	.pb7{
		padding-bottom:7px !important;}

	.ml7{
		margin-left:7px !important;}

	.pl7{
		padding-left:7px !important;}

	.mr7{
		margin-right:7px !important;}

	.pr7{
		padding-right:7px !important;}

	.mt8{
		margin-top:8px !important;}

	.pt8{
		padding-top:8px !important;}

	.mb8{
		margin-bottom:8px !important;}

	.pb8{
		padding-bottom:8px !important;}

	.ml8{
		margin-left:8px !important;}

	.pl8{
		padding-left:8px !important;}

	.mr8{
		margin-right:8px !important;}

	.pr8{
		padding-right:8px !important;}

	.mt9{
		margin-top:9px !important;}

	.pt9{
		padding-top:9px !important;}

	.mb9{
		margin-bottom:9px !important;}

	.pb9{
		padding-bottom:9px !important;}

	.ml9{
		margin-left:9px !important;}

	.pl9{
		padding-left:9px !important;}

	.mr9{
		margin-right:9px !important;}

	.pr9{
		padding-right:9px !important;}

	.mt10{
		margin-top:10px !important;}

	.pt10{
		padding-top:10px !important;}

	.mb10{
		margin-bottom:10px !important;}

	.pb10{
		padding-bottom:10px !important;}

	.ml10{
		margin-left:10px !important;}

	.pl10{
		padding-left:10px !important;}

	.mr10{
		margin-right:10px !important;}

	.pr10{
		padding-right:10px !important;}

	.mt11{
		margin-top:11px !important;}

	.pt11{
		padding-top:11px !important;}

	.mb11{
		margin-bottom:11px !important;}

	.pb11{
		padding-bottom:11px !important;}

	.ml11{
		margin-left:11px !important;}

	.pl11{
		padding-left:11px !important;}

	.mr11{
		margin-right:11px !important;}

	.pr11{
		padding-right:11px !important;}

	.mt12{
		margin-top:12px !important;}

	.pt12{
		padding-top:12px !important;}

	.mb12{
		margin-bottom:12px !important;}

	.pb12{
		padding-bottom:12px !important;}

	.ml12{
		margin-left:12px !important;}

	.pl12{
		padding-left:12px !important;}

	.mr12{
		margin-right:12px !important;}

	.pr12{
		padding-right:12px !important;}

	.mt13{
		margin-top:13px !important;}

	.pt13{
		padding-top:13px !important;}

	.mb13{
		margin-bottom:13px !important;}

	.pb13{
		padding-bottom:13px !important;}

	.ml13{
		margin-left:13px !important;}

	.pl13{
		padding-left:13px !important;}

	.mr13{
		margin-right:13px !important;}

	.pr13{
		padding-right:13px !important;}

	.mt14{
		margin-top:14px !important;}

	.pt14{
		padding-top:14px !important;}

	.mb14{
		margin-bottom:14px !important;}

	.pb14{
		padding-bottom:14px !important;}

	.ml14{
		margin-left:14px !important;}

	.pl14{
		padding-left:14px !important;}

	.mr14{
		margin-right:14px !important;}

	.pr14{
		padding-right:14px !important;}

	.mt15{
		margin-top:15px !important;}

	.pt15{
		padding-top:15px !important;}

	.mb15{
		margin-bottom:15px !important;}

	.pb15{
		padding-bottom:15px !important;}

	.ml15{
		margin-left:15px !important;}

	.pl15{
		padding-left:15px !important;}

	.mr15{
		margin-right:15px !important;}

	.pr15{
		padding-right:15px !important;}

	.mt20{
		margin-top:20px !important;}

	.pt20{
		padding-top:20px !important;}

	.mb20{
		margin-bottom:20px !important;}

	.pb20{
		padding-bottom:20px !important;}

	.ml20{
		margin-left:20px !important;}

	.pl20{
		padding-left:20px !important;}

	.mr20{
		margin-right:20px !important;}

	.pr20{
		padding-right:20px !important;}

	.mt25{
		margin-top:25px !important;}

	.pt25{
		padding-top:25px !important;}

	.mb25{
		margin-bottom:25px !important;}

	.pb25{
		padding-bottom:25px !important;}

	.ml25{
		margin-left:25px !important;}

	.pl25{
		padding-left:25px !important;}

	.mr25{
		margin-right:25px !important;}

	.pr25{
		padding-right:25px !important;}

	.mt30{
		margin-top:30px !important;}

	.pt30{
		padding-top:30px !important;}

	.mb30{
		margin-bottom:30px !important;}

	.pb30{
		padding-bottom:30px !important;}

	.ml30{
		margin-left:30px !important;}

	.pl30{
		padding-left:30px !important;}

	.mr30{
		margin-right:30px !important;}

	.pr30{
		padding-right:30px !important;}

	.mt35{
		margin-top:35px !important;}

	.pt35{
		padding-top:35px !important;}

	.mb35{
		margin-bottom:35px !important;}

	.pb35{
		padding-bottom:35px !important;}

	.ml35{
		margin-left:35px !important;}

	.pl35{
		padding-left:35px !important;}

	.mr35{
		margin-right:35px !important;}

	.pr35{
		padding-right:35px !important;}

	.mt40{
		margin-top:40px !important;}

	.pt40{
		padding-top:40px !important;}

	.mb40{
		margin-bottom:40px !important;}

	.pb40{
		padding-bottom:40px !important;}

	.ml40{
		margin-left:40px !important;}

	.pl40{
		padding-left:40px !important;}

	.mr40{
		margin-right:40px !important;}

	.pr40{
		padding-right:40px !important;}

	.mt45{
		margin-top:45px !important;}

	.pt45{
		padding-top:45px !important;}

	.mb45{
		margin-bottom:45px !important;}

	.pb45{
		padding-bottom:45px !important;}

	.ml45{
		margin-left:45px !important;}

	.pl45{
		padding-left:45px !important;}

	.mr45{
		margin-right:45px !important;}

	.pr45{
		padding-right:45px !important;}

	.mt50{
		margin-top:50px !important;}

	.pt50{
		padding-top:50px !important;}

	.mb50{
		margin-bottom:50px !important;}

	.pb50{
		padding-bottom:50px !important;}

	.ml50{
		margin-left:50px !important;}

	.pl50{
		padding-left:50px !important;}

	.mr50{
		margin-right:50px !important;}

	.pr50{
		padding-right:50px !important;}

	.mt55{
		margin-top:55px !important;}

	.pt55{
		padding-top:55px !important;}

	.mb55{
		margin-bottom:55px !important;}

	.pb55{
		padding-bottom:55px !important;}

	.ml55{
		margin-left:55px !important;}

	.pl55{
		padding-left:55px !important;}

	.mr55{
		margin-right:55px !important;}

	.pr55{
		padding-right:55px !important;}

	.mt60{
		margin-top:60px !important;}

	.pt60{
		padding-top:60px !important;}

	.mb60{
		margin-bottom:60px !important;}

	.pb60{
		padding-bottom:60px !important;}

	.ml60{
		margin-left:60px !important;}

	.pl60{
		padding-left:60px !important;}

	.mr60{
		margin-right:60px !important;}

	.pr60{
		padding-right:60px !important;}

	.mt65{
		margin-top:65px !important;}

	.pt65{
		padding-top:65px !important;}

	.mb65{
		margin-bottom:65px !important;}

	.pb65{
		padding-bottom:65px !important;}

	.ml65{
		margin-left:65px !important;}

	.pl65{
		padding-left:65px !important;}

	.mr65{
		margin-right:65px !important;}

	.pr65{
		padding-right:65px !important;}

	.mt70{
		margin-top:70px !important;}

	.pt70{
		padding-top:70px !important;}

	.mb70{
		margin-bottom:70px !important;}

	.pb70{
		padding-bottom:70px !important;}

	.ml70{
		margin-left:70px !important;}

	.pl70{
		padding-left:70px !important;}

	.mr70{
		margin-right:70px !important;}

	.pr70{
		padding-right:70px !important;}

	.mt75{
		margin-top:75px !important;}

	.pt75{
		padding-top:75px !important;}

	.mb75{
		margin-bottom:75px !important;}

	.pb75{
		padding-bottom:75px !important;}

	.ml75{
		margin-left:75px !important;}

	.pl75{
		padding-left:75px !important;}

	.mr75{
		margin-right:75px !important;}

	.pr75{
		padding-right:75px !important;}

	.mt100{
		margin-top:100px !important;}

	.pt100{
		padding-top:100px !important;}

	.mb100{
		margin-bottom:100px !important;}

	.pb100{
		padding-bottom:100px !important;}

	.ml100{
		margin-left:100px !important;}

	.pl100{
		padding-left:100px !important;}

	.mr100{
		margin-right:100px !important;}

	.pr100{
		padding-right:100px !important;}

	/* from here */
	.indent-txt,
	.indent-list > *{
		display: flex;
		text-align: left;
	}
	.indent-txt >*:nth-child(2),
	.indent-list > * >*:nth-child(2){
		flex: 1 1;
	}
	a.txt_link{
		color: #008ed1;
		text-decoration: underline;
	}
	a.txt_link:hover{
		text-decoration: none;
	}
	a.hover:hover{
		opacity: 0.8;
	}
	.campaign_period{
		color: #002448;
		font-weight: 700;
	}
	.campaign_period .campaign_period-tit{
		font-size: 20px;
	}
	.campaign_period .campaign_period-time{
		display: block;
		font-size: 24px;
	}

	.mvBlock{
		text-align: center;
	}
	.mvBlock .mv_label{
		background: #22ac38;
        padding: 11px 0 12px;
	}
	.mvBlock img {
		margin: 0 auto;
	}
	.mvBlock .mv_bg{
		background: #005eae;
		text-align: center;
		padding-bottom: 80px;
	}
	.mvBlock h1{
        overflow: hidden;
        height: 405px;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        padding-top: 52px;
		background: #005eae url(/sites/default/files/media/sp/images/campaign/2026february/teiki/mv_bg.jpg) bottom center no-repeat;
        background-size: cover;
	}
	.mv_box{
		max-width: 900px;
		margin: -60px auto 0;
		background: #fff;
		padding: 50px 0 32px;
	}
	.mv_box .mv_box-inner{
		padding: 0 75px;
	}
	.mv_box .mv_box-caption{
		font-weight: 700;
		font-size: 18px;
		line-height: 1.556;
		margin: 35px 0 30px;
	}
	.mv_box dl{
		font-size: 16px;
		line-height: 1.4;
		margin-bottom: 22px;
	}
	.mv_box dl dt{
		margin-bottom: 8px;
		font-size: 18px;
		color: #fff;
		font-weight: 700;
		padding: 9px 10px;
		background: #22ac38;
	}
	.mv_box dl dt.ttl03{
		padding: 7px 10px;
	}
	.mv_box dl dd{
		font-size: 16px;
        line-height: 1.75;
		text-align: left;
	}
	.mv_box .indent-txt {
		margin-top: 26px;
	}

	.mv_box .btn  {
		margin-top: 32px;
	}

	.sec01{
		text-align: center;
		padding: 80px 0 0;
	}
	.sec01 .txt_note{
		font-size: 14px;
		line-height: 1.714;
		margin-left: 5px;
		margin-top: 36px;
	}
	.indent-list.txt_note {
		margin-top: 20px;
	}
	.pointBlock{
		background: #fdeef3;
		padding: 50px 0 51px;
		margin: 52px auto 0;
		max-width: 1050px;
	}
	.pointBlock-inner{
		width: 750px;
		margin: 0 auto;
	}
	.point_box{
		border-radius: 20px;
		position: relative;
		margin-top: 40px;
		border: 3px solid #fff67f;
	}
	.point_box.point02 {
		margin-top: 52px;
	}
	.point_box-head{
		position: relative;
		text-align: center;
		background: #fff799;
	}
	.point_box-head .no{
		position: absolute;
		border-radius: 18px 18px 0 0;
		left: -50px;
		top: -20px;
		z-index: 1;
	}
	.point_box-head .ttl{
		padding: 12px 0 10px;
	}
	.point_box-body{
		background: #fff;
		border-radius: 0 0 18px 18px;
		font-size: 16px;
		line-height: 1.5;
		text-align: left;
		padding: 20px 15px 25px 37px;
	}
	.point_box-body sup{
		font-size: 80%;
		vertical-align: super;
	}
	.pointBlock .point02 .point_box-head .no {
		top: -15px;
	}
	.pointBlock .point02 .point_box-head .ttl {
		padding: 10px 0 5px 32px;
	}
	.pointBlock .point02 .point_box-body {
        padding: 28px 20px 25px 45px;
	}
	.campaign_box{
		margin-top: 82px;
		background: url(/sites/default/files/media/sp/images/campaign/2026february/teiki/sec01_campaign_bg.jpg) center center no-repeat;
	}
    .campaign_box .campaign_box-inner {
        padding: 50px 0 47px;
    }
	.campaign_box .tit{
		font-size: 26px;
		line-height: 1.412;
		font-weight: 700;
		color: #002448;
	}
	.campaign_box .tit small{
		font-size: 80%;
	}
	.campaign_box .img {
		overflow: hidden;
		display: flex;
		justify-content: center;
	}
	.stepBlock{
		padding: 99px 0 100px;
		background: #fff;
		text-align: center;
	}
	.stepBlock-inner{
		max-width: 1050px;
		margin: 75px auto 0;
		text-align: center;
		display: flex;
		justify-content: space-between;
	}
	.step_box{
		background: #fdeef3;
		position: relative;
		border-radius: 20px;
		padding: 85px 20px 15px;
		margin-top: 55px;
		width: 232px;
		box-sizing: border-box;
	}
	.step_box .no{
		position: absolute;
		z-index: 1;
		left: 0;
		right: 0;
		top: -55px;
	}
	.step_box-row{
		display: block;
		justify-content: space-between;
		align-items: center;
	}
	.step_box .icon{
		margin-bottom: 30px;
	}
	.step_box.step03 .icon{
		margin-bottom: 25px;
	}
	.step_box.step04 .icon{
		margin-bottom: 39px;
	}
	.step_box .txt{
		font-size: 18px;
		font-weight: 700;
		line-height: 1.444;
	}
	.step_box .txt sup{
		font-size: 70%;
		vertical-align: super;
	}
	.step_box.step01{
		padding-top: 80px;
	}
	.note_box{
		max-width: 900px;
		background: #fdeef3;
		border-radius: 20px;
		margin: 30px auto 15px;
		padding: 30px 15px 22px;
		box-sizing: border-box;
	}
	.note_box .tit{
		font-size: 26px;
		color: #e73978;
		font-weight: 700;
		margin-bottom: 8px;
	}
	.note_box ul{
		display: inline-block;
	}
	.note_box ul li{
		position: relative;
		padding-left: 20px;
		font-size: 18px;
		line-height: 1.556;
		text-align: left;
	}
	.note_box ul li:before{
		content:"";
		width: 15px;
		height: 15px;
		border-radius: 50%;
		background: #e73978;
		position: absolute;
		left: 0;
		top: 5px;
	}
	.stepBlock .txt_note{
		max-width: 900px;
		margin: 25px auto 0;
		font-size: 14px;
		line-height: 1.714;
	}

	.paymentBlock{
		padding: 0 15px 100px;
		background: #fff;
		text-align: center;
	}
	.paymentBlock-inner{
		background: #ffffea;
		padding: 55px 0 45px;
		max-width: 1050px;
		margin: 0 auto;
	}
	.paymentBlock .indent-list{
		margin: 35px 75px 0;
		font-size: 14px;
		line-height: 1.714;
	}
	.paymentBlock .box01{
		border: 2px solid #666666;
		border-radius: 20px;
		background: #fff;
		max-width: 900px;
		font-size: 18px;
		margin: 38px auto 20px;
		padding: 24px 20px 22px;
		line-height: 1.556;
		box-sizing: border-box;
	}
	.paymentBlock .box01 .tit{
		font-size: 26px;
	}
	.paymentBlock .txt01{
		font-size: 30px;
		font-weight: 700;
		line-height: 1.333;
		padding: 0 0 35px;
		margin-top: 50px;
		background: url('/sites/default/files/media/sp/images/campaign/2026february/teiki/payment_bb.png') no-repeat bottom center;
	}
	.paymentBlock .txt02{
		font-size: 26px;
		font-weight: 700;
		color: #036eb7;
		margin: 5px 0 30px;
	}

	.storeBlock{
		background: #fff9b8;
		padding: 85px 0 92px;
		text-align: center;
	}
	.storeBlock .box{
		background: #fff;
		max-width: 900px;
		margin: 39px auto 0;
		padding: 55px 0 50px;
	}
	.storeBlock .txt02{
		font-size: 18px;
		font-weight: 700;
		color: #fff;
		background: #22ac38;
		display: inline-block;
		padding: 8px 0;
		margin: 41px auto 0;
		width: 450px;
		line-height: normal;
	}
	.storeBlock .txt03{
		margin: -20px auto 0;
		padding: 51px 0 40px;
		text-align: left;
		font-size: 16px;
		line-height: 1.813;
		display: flex;
		justify-content: center;
		border: 1px solid #22ac38;
		width: 750px;
		gap: 70px;
	}
	.storeBlock .txt03 dt{
		font-weight: 700;
		color: #002448;
	}
	.storeBlock .txt03 dd{
		padding-left: 15px;
	}
	.campaignBlock {
		text-align: center;
		margin-bottom: 40px;
	}
	.campaignBlock .ttl {
		padding: 44px 0;
		background: #22ac38;
	}
	.campaignBlock .txt01 {
		margin-top: 72px;
	}
	.campaignBlock .txt02{
		font-weight: 700;
		font-size: 20px;
		line-height: 1.385;
		color: #333333;
		margin: 22px 0 26px;
	}
	.campaignBlock .bnr a {
		display: inline-block;
	}
	.campaignBlock .bnr a img {
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		user-select: none;
	}
	.campaign_text {
		text-align: left;
		margin: 105px 0 0;
		font-size: 14px;
		line-height: 1.714;
		background: #fff;
	}
	.campaign_text-inner{
		max-width: 900px;
		margin: 0 auto;
	}
	.campaign_text_bg {
		width: 100%;
	}
	.sec05-inner {
		max-width: 900px;
	}

	.campaign_text p {
		font-size: 14px;
		line-height: 1.714;
	}

	.campaign_text p.fwb {
		font-weight: bold;
	}

	.campaign_text_list_1 {
		padding-left: 1rem;
	}

	.campaign_text_list_1 li {
		position: relative;
		font-weight: 600;
	}

	.campaign_text_list_1 li::before {
		content: "";
		width: 13px;
		height: 13px;
		background: #036eb7;
		position: absolute;
		left: -1em;
		top: 3px;
		border-radius: 50%;
	}

	.link-list {
		max-width: 1000px;
		margin: 0 auto;
	}
	.back-to-top {
        text-align: right;
        margin-top: 35px;
        margin-right: 2px;
    }
	.back-to-top a {
        color: #00a0e9;
        font-weight: bold;
        font-size: 14px;
        line-height: 1;
        letter-spacing: 1px;
        text-decoration: underline;
        text-underline-offset: 4px;
    }
	.back-to-top a:hover {
		text-decoration: none;
	}
	#footer-nav {
        background: #f7f8f9;
    }
	#footer-nav .inner {
        overflow: hidden;
        max-width: 1000px;
        padding: 20px 0;
        margin: 0 auto;
        position: relative;
    }
	.footer-nav-link {
        font-size: 12px;
        background: transparent;
        padding: 0;
        text-align: left;
    }
	.footer-nav-link li {
		float: left;
        margin: 0 11px 5px 0;
        padding: 0;
        border: none;
        font-size: inherit;
    }
	.footer-nav-link li:last-child {
		margin-bottom: 0;
    }
	.footer-nav-link li.line {
		clear: both;
    }
	.footer-nav-link li a {
        display: block;
        padding-left: 16px;
        background: url(/sites/default/files/media/sp/images/campaign/2026february/teiki/icon-arrow-btn-navy.png) no-repeat 0 50%;
        line-height: 1;
		color: #333;
        text-decoration: none;
    }
	/* fix layout */
	a .txt_link {
		color: #008ed1;
		text-decoration: underline;
	}
	#footer-utility .inner {
		width: 100%;
	}
}