@charset "UTF-8";
* {
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
}
body {
	width: 100%;
	position: relative;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #000;
	font-size: 1.4rem;
	line-height: 1.5;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
main {
	width: 100%;
	height: auto;
	margin: 0 auto;
    position: relative;
}
img {
	vertical-align: bottom;
}
.sp_show {
	display: none;
}
.clear:after {
	content: " ";
	display: block;
	clear: both;
}
.fixed {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 99;
}
ul.alignment li {
	/* padding-left: 2em;
	text-indent: -2em; */
}
ol.alignment li {
	padding-left: 2em;
	text-indent: -1.8em;
}
.alignment li:nth-of-type(n+2) {
	margin-top: 6px;
}
.contentsWrap {
	width: 1000px;
	margin: 0 auto;
    position: relative;
}
.active {
	display: block;
}
[class^="flex0"] {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}


/*header*/
/* header {
	padding-top: 60px;
} */
header > .fixed {
	background-color: #fff;
	border-bottom: solid 3px #0071b6;
}
.campaign{
	background:url("/mb/wm/images/topbanner/cashback_bg.png");
	background-size:cover;
	height:120px;
	position:relative;
	overflow: hidden;
}
.kira {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: -100%;
	background-image: linear-gradient(130deg, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 75%);
	transition: 0.7s;
}
.campaign:hover .kira {
	left: 100%;
}
	.campaign::before{
		content: url("/mb/wm/images/topbanner/cashback_money01.png");
		position:absolute;
		bottom: -70px;
		left:20px;
	}
	.campaign::after{
		content: url("/mb/wm/images/topbanner/cashback_money02.png");
		position:absolute;
		bottom: -70px;
		right:20px;
	}
	.campaign__link{
		display: flex;
		align-items: center;
		height: 100%;
		justify-content: center;
		position: relative;
		z-index: 20;
	}

		.campaign__link__cashbackimg{
			width:933px;
			height:78px;
		}
/* nav{
	height: 63px;
} */
nav .variableWrap {
	width: 1000px;
	height: 60px;
	margin: 0 auto;
	font-size: 1.3rem;
}
nav .logo {
	float: left;
	padding-top: 10px;
}
nav ul.list_sp {
	display: none;
}
nav ul.list_pc a, nav .entry_btn {
	line-height: 60px;
}
nav ul.list_pc li:nth-of-type(2) a, nav ul.list_pc li:nth-of-type(6) a {
	padding: 16px 0;
	line-height: 14px;
}
nav ul.list_pc li {
	float: left;
}
nav ul.list_pc, nav .entry_btn {
	float: right;
}
nav ul.list_pc li {
	border-right: solid 1px #0071b6;
}
nav ul.list_pc li:nth-of-type(1) {
	border-left: solid 1px #0071b6;
}
nav ul.list_pc li a:link, nav ul.list_pc li a:visited {
	display: block;
	width: 110px;
	color: #0071b6;
	text-align: center;
	text-decoration: none;
}
nav ul.list_pc li a:hover, nav ul.list_pc li a:active {
	color: #fff;
	background-color: #0071b6;
}
nav .entry_btn a {
	padding:0px 30px;
	background-image: linear-gradient(-180deg, #ee6e8c, #fd0778,#e91e1e);
	text-decoration: none;
	transition: all .5s;
	display: inline-block;
	font-weight:bold;
	color: #fff;
	font-size: 1.5rem;
}

nav .entry_btn a:hover, nav .entry_btn a:active {
	background-image: linear-gradient(-180deg, #fd0778, #e91e1e,#ee6e8c);
}


/*#mainvisual*/
#mainvisual {
	background: url(../images/mv_bg.png) no-repeat center top / cover;
	margin-top:64px;
}
#mainvisual > .variableWrap {
	position: relative;
	max-width: 1366px;
	margin: 0 auto;
}
#mainvisual figure img, #mainvisual h1 img {
	/* width: 100%; */
	height: auto;
}
#mainvisual .contentsWrap {
	margin: -20px auto -80px;
}
#mainvisual .tag li {
	width: 310px;
	height: 110px;
	padding: 16px 0 0 0;
	background: url(../images/mv_tag_bg.png) no-repeat;
}
#mainvisual .tag li p {
	color: #29a3da;
	font-size: 2rem;
	text-align: center;
}
#mainvisual .tag li p span {
	font-size: 4.8rem;
	line-height: 48px;
	font-weight: bold;
}
#mainvisual .tag li p small {
	margin-left: 4px;
	font-size: 1.4rem;
}
#mainvisual .tag li:nth-of-type(1) p {
	padding-left: 70px;
	background: url(../images/mv_teg_im01.png) no-repeat bottom 4px left 48px / 67px 68px;
}
#mainvisual .tag li:nth-of-type(2) p {
	padding-left: 70px;
	background: url(../images/mv_teg_im02.png) no-repeat bottom 4px left 58px / 65px;
}
#mainvisual .tag li:nth-of-type(3) p {
	padding-left: 70px;
	background: url(../images/mv_teg_im03.png) no-repeat bottom 4px left 36px / 74px 60px;
}

#mainvisual ol {
    padding: 30px 0 70px;
    color: #fff;
    font-size: 1.2rem;
    width: 1000px;
    margin: 0 auto;
}
#mainvisual ol li {
	width: 1000px;
	margin: 0 auto;
	line-height: 20px;
}

.main{
	display: flex;
    justify-content: center;
    gap: 100px;
    align-items: center;
    padding: 70px 0 0;
}
.main__txt h1.ttl {
	margin-bottom:50px;
}


/*discount*/
.discount{
	padding:50px 0;
	background: #eaecef;
}
.discount .discount__inner{
	display:flex;
	justify-content:center;
	gap:60px;
}
.discount .discount__inner a{
	display:inline-block;
}



.contact{
	background-color: #73b1da;
}






/*point*/
#point {
	padding: 60px 0;
	background-color: #0071b6;
}
#point h2 {
	color: #fff;
}
h2 {
	font-size: 3.8rem;
	text-align: center;
}
#point .flex01 {
	margin: 10px auto 40px;
	justify-content: center;
}
#point .flex01 li:nth-of-type(1) {
	padding-right: 25px;
}
#point .flex01 li:nth-of-type(2) {
	padding: 0 24px;
}
#point .flex01 li:nth-of-type(3){
	padding-left: 25px;
}
#point .flex01 li:nth-of-type(4) {
	padding-right: 25px;
	margin-bottom:0;
}
#point .flex01 li:nth-of-type(5) {
	padding-left: 25px;
	margin-bottom:0;
}
#point dl {
	width: 300px;
	height: auto;
	margin-top: 38px;
}
#point dl dt {
	margin-bottom: -38px;
	text-align: center;
}
#point dl dd {
	color: #fff;
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
	background-color: #fff;
	border: solid 4px #fff;
}
#point dl dd span {
	font-size: 2.2rem;
}
#point dl dd small {
	font-size: 1.2rem;
}
#point dl dd img {
	margin: 20px 0 16px;
}
#point dl dd p {
	padding: 12px 0;
	background-color: #0071b6;
}
.alignment li, .caution p {
	line-height: 18px;
}
#point ol.num {
	counter-reset: number 0;
	padding: 12px 15px;
	border: solid 1px #fff;
}
#point ol.num li {
	padding-left: 2em;
    color: #fff;
    font-size: 1rem;
}
#point ol.num li::before {
	counter-increment: number 1;
	content: "※";/* counter(number)*/
	display: block;
	float: left;
	margin-left: -2em;
}
#point ol.num li span {
	border-bottom: solid 1px #fff;
}


/*plan*/
#plan {
	background-color: #ececec;
	background: repeating-linear-gradient(-70deg,#ececec,#ececec 6px,#f9f9f9 4px,#f9f9f9 10px);
	background: -moz-repeating-linear-gradient(-20deg,#ececec,#ececec 6px,#f9f9f9 4px,#f9f9f9 10px);
	background: -webkit-repeating-linear-gradient(-20deg,#ececec,#ececec 6px,#f9f9f9 4px,#f9f9f9 10px);
}
#plan .contentsWrap {
	padding-bottom: 30px;
}
#plan h2 {
	padding: 80px 0 50px;
	color: #0071bc;
}
#plan p.note {
	position: absolute;
	top: 110px;
	right: 0px;
	font-size: 1.2rem;
}
#plan .optionttl{
	color: #0071bc;
    font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	margin-top: 30px;
}
#plan .planprice{
	display:flex;
	justify-content: center;
}
	#plan .planprice .planprice__child{
		width: 47.5%;
		text-align: center;
		background: #0171bc;
		border-radius: 10px;
		padding: 15px 30px;
		color: white;
		font-weight: bold;
		margin: 25px;
	}
	#plan .planprice .planprice__child__txt{
		font-size:1.8rem;
	}
	#plan .planprice .planprice__child__value{
		font-size:3rem;
	}
	#plan .planprice .planprice__child__value small{
		font-size:1.6rem;
	}
/*tab*/
ul.deco {
	width: 1000px;
	margin: 0 auto;
	padding: 0 70px;
}
ul.deco li {
	width: 48%;
	color: #0071b6;
	font-size: 1.9rem;
	font-weight: bold;
	text-align: center;
	line-height: 36px;
}
/* #spec .tab-btn-cont .tab-btn{
	width: 40%;
	text-align: center;
	background: #fff;
	color:#0071bc;
	border:solid 1px #0071bc;
	border-bottom:none;
	padding: 17px 0;
	font-size: 1.9rem;
	font-weight: 700;
	cursor: pointer;
}
#spec .tab-btn-cont .tab-btn:first-of-type{
	margin-right: 20px;
}
#spec .tab-btn-cont .tab-btn:hover{
	background:#0071bc;
	color: #fff;
}
#spec .tab-btn-cont .tab-btn.-active{
	background:#0071bc;
	color: #fff;
} */

ul#tabMenu{
	display: flex;
    justify-content: center;
}
ul#tabMenu li {
	width: 40%;
	color: #fff;
	font-size: 1.9rem;
	font-weight: bold;
	text-align: center;
	padding: 17px 0;
	background-color: #c4c4c4;
	cursor: pointer;
}
ul#tabMenu li:first-of-type{
	margin-right: 20px;
}
ul#tabMenu li:hover{
	background:#8e8e8e;
	color: #fff;
}
ul#tabMenu li.-active{
	background:#0071bc;
	color: #fff;
}
ul.deco li:nth-of-type(1) {
	float: left;
}
ul.deco li:nth-of-type(2) {
	float: right;
}
ul#tabMenu li.active {
	color: #0071bc;
	background-color: #fff;
}
#plan #tabBoxes > li {
	display: none;
}
#plan #tabBoxes > li.active {
	display: block;
}

#plan .textbox {
	padding-bottom: 60px;
}

#plan .bg_white {
	background-color: #fff;
}
#plan [id^="tabbox0"] .bg_white {
	padding: 40px 34px;
}
#plan [id^="tabbox0"] .bg_white .service-end{
    color: #ff6860;
    font-size: 2.2rem;
    font-weight: bold;
    margin-bottom: 30px;
}
#plan .textbox .bg_white {
	padding: 40px 34px 34px;
}
#plan .bg_lightblue {
	padding: 40px 34px;
	color: #fff;
	background-color: #4c9cd0;
}
#plan .bg_blue {
	padding: 70px 34px 40px;
	color: #fff;
	background-color: #0071bc;
}
#plan [id^="tabbox0"] .bg_gray {
	padding: 30px;
	background-color: #dedede;
}
#plan .campaign_tag {
	margin-bottom: 40px;
	text-align: center;
}
#plan .campaign .bg_lightblue {
	padding-top: 70px;
}
#plan .campaign .campaign_tag {
	position: relative;
	max-width: 828px;
	height: auto;
	margin: 0 auto;
}
#plan .campaign .campaign_tag img {
	position: absolute;
	width: 100%;
	height: auto;
	left: 50%;
	top: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}
#plan h3 {
	margin-bottom: 20px;
	color: #0071bc;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 54px;
}
#plan h3.plan_ttl{font-size:2.8rem;}
#plan h3.plan_ttl u{
	background: #fff;
	color:#0071bc;
	border:1px solid #0071bc;
	display:inline-block;
	text-decoration: none;
	font-size:1.8rem;
	line-height: 1;
	padding:10px;
	margin-left:2rem;

}
#plan .textbox .bg_lightblue h3 {
	color: #fff;
	font-size: 2.1rem;
	text-align: center;
}
#plan h3 span:nth-of-type(1) {
	display: inline-block;
	margin-right: 20px;
	padding: 0 14px;
	color: #fff;
	font-size: 2.2rem;
	background-color: #0071bc;
	/* font-family: 'Montserrat', sans-serif; */
}
#plan h3 span:nth-of-type(2) {
	display: inline-block;
	height: 40px;
	color: #0071bc;
	font-size: 1.8rem;
	font-weight: normal;
	line-height: 40px;
	background-color: #a8cfe8;
	padding: 0 10px;
    margin-left: 10px;
}
#plan h3 span:nth-of-type(2) strong{
font-size: 2.4rem;
}
#plan p span {
    color: #ff6860;
    padding-left: 20px;
    font-weight: bold;
}
#plan p span strong {
    padding-left: 2px;
    font-size: 2.5rem;
}
table {
	width: 100%;
	border-collapse: collapse;
}
.w18per {width: 18%;}
.w33per {width: 33%;}
.w34per {width: 34%;}
.w50per {width: 50%;}
.w82per {width: 82%;}
.w100per {width: 100%;}
table:not(.table04) {
	width: 930px;
	height: 170px;
	margin: 20px auto 40px;
}
.plus5gPrice_flow{
	margin-top:20px;
}

#plan .table01 {
	background: url(../images/plan_bg03.png) no-repeat top left;
}
#plan .table02 {
	background: url(/mb/wm/images/plan_bg02.png) no-repeat top left;
}
#plan .table03 {
	background: url(../images/plan_bg03.png) no-repeat top left;
}
#plan table:not(.table04) td {
	color: #0071bc;
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
}
#plan table:not(.table04) td span {
	font-size: 4.2rem;
	line-height: 42px;
}
#plan table:not(.table04) td > small {
	font-size: 2.4rem;
}
#plan table:not(.table04) td > small small {
	color: #000;
	font-size: 1.4rem;
}
#plan .table04 {
	margin-bottom: 30px;
}
#plan .table04:nth-of-type(1) tr {
	height: 30px;
}
#plan .table04:nth-of-type(2) tr {
	height: 40px;
}
#plan .table04 th {
	text-align: center;
	background-color: #ff6860;
}
#plan .table04 td {
	color: #000;
	text-align: center;
	background-color: #fff;
}
#plan .table04:nth-of-type(2) tr:nth-of-type(2) td {
	border-top: 1px solid #dedede;
}
#plan [class^="tabbox0"] .alignment {
	font-size: 1rem;
}
#plan .caution {
	margin-top: 20px;
	padding: 8px 10px;
	background-color: #eaeaea;
}
#plan .caution p {
	padding-left: 34px;
	font-size: 1rem;
	background: url(../images/plan_ic02.png) no-repeat left 0 top 50% / 24px 21px;
}
#plan .where li {
	width: 164px;
	height: 160px;
	margin-bottom: 10px;
}
#plan .where li:nth-of-type(2) {
	margin: 0 6px;
}
#plan .where li figure {
	border: solid 4px #fff;
	box-shadow: 0 4px 8px rgba(0,0,0, 0.20);
}
#plan .where li p {
	position: relative;
	width: 125px;
	top: -8px;
	margin: 0 auto;
	color: #fff;
	font-size: 1.6rem;
	line-height: 28px;
	text-align: center;
	background-color: #0071bc;
}
#plan .flex03 {
	margin: 30px 0 20px;
	align-items: center;
}
#plan .textbox .alignment {
	font-size: 1.2rem;
}
#plan [class^="flex02"] {
	justify-content: space-around;
}
#plan .line {
	margin-top: -70px;
}
#plan .comment {
	margin-bottom: 40px;
}
#plan .line li {
	width: 1px;
	height: 50px;
	background-color: #0071bc;
}
#plan .comment li {
	width: 240px;
	height: auto;
	padding: 20px 0 12px;
	color: #0071bc;
	font-size: 1.6rem;
	line-height: 20px;
	text-align: center;
	border: solid 1px #0071bc;
	border-radius: 4px;
}
#plan .comment li span {
	color: #ff6860;
	font-size: 3rem;
	font-weight: bold;
	line-height: 40px;
}
#plan .comment li small {
	color: #333;
	font-size: 1.4rem;
}
#plan .alignment li {
	font-size: 1rem;
}
#plan .alignment li span {
	text-decoration: underline;
}

#plan .plancont .plancont__ttl{
	color: #0071bc;
	font-size:2.0rem;
	font-weight: 700;
}
#plan .plancont .categorylist{
	margin-top:40px;
}
#plan .plancont .categorylist .categorylist__cont{
	width: 70%;
	margin: 20px 0 0;
}
#plan .plancont .categorylist .categorylist__cont .listttl{
	font-size:1.6rem;
	background:#dedede;
	border:1px solid white;
	width: 50%;
	padding:10px 20px;
}
#plan .plancont .categorylist .categorylist__cont .listtxt{
	background:white;
	border:1px solid #dedede;
	width: 50%;
	padding:10px 20px;
}
#plan .plancont .categorydevice{
	margin-top:40px;
}
#plan .plancont .categorydevice .categorydevice__list{
	display: flex;
	justify-content:space-between;
	margin:20px 0;
}
#plan .plancont .categorydevice .categorydevice__list li{width: 50%;}
#plan .plancont .categorydevice .categorydevice__list li:first-of-type{border-right:1px solid #dedede;}
#plan .plancont .categorydevice .categorydevice__list .devicettl{
	font-size: 2.0rem;
	font-weight: 700;
	color:#0071bc;
	text-align: center;
	margin-bottom: 10px;
}
#plan .plancont .categorydevice .categorydevice__list .deviceimg{
	text-align: center;
	margin-bottom: 20px;
}
#plan .plancont .categorydevice .categorydevice__list .deviceimglink{
	text-align: center;
	margin-bottom: 10px;
}
#plan .plancont .categorydevice .categorydevice__list .deviceimglink a{
	text-decoration: none;
    padding: 16px 0;
    border-radius: 50px;
    border: 1px solid #0071bc;
    display: inline-block;
    width: 70%;
    color: #0071bc;
	font-weight: 700;
	transition:all .5s;
}
#plan .plancont .categorydevice .categorydevice__list .deviceimglink a:hover{
    color: white;
	background:#0071bc;
}
#plan .plancont .categorypriceplan{
	margin-top:40px;
}
#plan .plancont .categoryaboutsa{
	margin-top:40px;
}
#plan .plancont .categoryaboutsa .categoryaboutsa__cont{
	display:flex;
	justify-content:space-between;
	gap:40px;
	margin-top: 20px;
    margin-bottom: 20px;
}
#plan .plancont .categoryaboutsa .categoryaboutsa__cont .categoryaboutsa__cont__img div{

    margin-bottom: 10px;
}
#plan .plancont .endplan{
	text-align: center;
	margin-top:40px;
}
#plan .plancont .endplan a{
	display:inline-block;
	text-decoration: none;
	background:#0071bc;
	transition:all 0.5s;
	padding:20px 80px;
	color:white;
	font-size:1.6rem;
	font-weight: 700;
	border-radius: 100px;
}
#plan .plancont .endplan a:hover{
	background:#055285;
}
.plus5gPrice_flow{
	margin-top:20px;
	margin-bottom:20px;
}

/*tokuten*/
.tokuten{
	background: linear-gradient(90deg, #FDCE24 0%, #F1F518 100%);
	padding: 70px 0;
}
.tokuten .tokuten__ttl{

	position: relative;
}
.tokuten .tokuten__ttl .ttl{
	position: relative;
	z-index: 5;
	background: #FF2A5E;
	margin:0 28px;
	color:white;
	font-size: 2.8rem;
	font-weight: 700;
	padding: 14px 35px;
	text-align: center;
}
.tokuten .tokuten__ttl .ribbon_left{
	position: absolute;
	z-index: 4;
	top:34px;
	left:0;
}
.tokuten .tokuten__ttl .ribbon_right{
	position: absolute;
	z-index: 4;
	top:34px;
	right:0;
}
.tokuten .tokuten__cont{
	background:white;
	padding:40px;
	margin:0 28px;
	box-shadow: 10px 10px #c6c766;
	position: relative;
    z-index: 5;
}
.tokuten .tokuten__cont .tokuten__cont__txt{
	color: #2994CB;
	text-align: center;
	font-size: 2.0rem;
	font-weight: 700;
	line-height: 175%;
	margin-bottom:30px;
}
.tokuten .tokuten__cont .tokuten__cont__detail{
	display: flex;
	justify-content: space-between;
	margin-bottom:30px;
	align-items: center;
}
/*spec*/
#spec {
	padding: 70px 0;
}
#spec h2 {
	color: #0071bc;
	margin: 20px 0 50px;
}
#spec h4 {
	color: #fff;
	font-size: 2.5rem;
	line-height: 48px;
	text-align: center;
	background-color: #0071bc;
	font-family: 'Montserrat', '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif;
}
#spec .flex05:nth-of-type(1) {
	margin-bottom: 60px;
	justify-content: center;
}
#spec .flex05:nth-of-type(2) {
	margin-bottom: 60px;
	justify-content: space-around;
}
#spec .flex05{
	justify-content:space-around;
	padding:6px 20px 40px;
	background-color:#e5f1f8;
	border:solid 1px #0071bc;
}
#spec .flex05 dl {
	position: relative;
	max-width: 310px;
	width: 100%;
	height: auto;
	margin-top: 30px;
	background-color: #fff;
	box-shadow: 0 0 8px rgba(0,0,0,0.2);
/*	border: solid 1px #0071bc;*/
}
#spec .flex05.two_cont dl {
	max-width:400px;
}
/*#spec .flex05:nth-of-type(1) dl,
#spec .flex05:nth-of-type(1).two_cont dl:nth-of-type(3n+3) {
	margin-right: 35px;
}*/
#spec .flex05:nth-of-type(1).two_cont dl:nth-of-type(2n) {
	margin-right: 0;
}
#spec .flex05:nth-of-type(1) dl:nth-of-type(3n+3){
	margin-right: 0px;
}
/*#spec .flex05:nth-of-type(1) dl:nth-of-type(1) dd.text{
	margin: 14px 22px 33px;
}*/
#spec .flex05 dl dd.tag {
	position: absolute;
	top: -18px;
	left: 8px;
}
#spec .flex05 dl dd.tag img {
	width: 90px;
	height: 42px;
}
#spec .flex05 dl dd.name {
	margin: 0 22px;
	padding: 24px 0 6px;
	color: #0071bc;
	font-size: 2.1rem;
	font-weight: bold;
	text-align: center;
	border-bottom: solid 1px #0071bc;
}
#spec .flex05 dl dd.name .yoyaku{
	font-size: 1.35rem;
	color:red;
	display: block;
}
#spec .flex05 dl dd.text {
	margin: 14px 22px;
	font-size: 1.2rem;
}
#spec .flex05 dl dd.more {
	position: relative;
	padding: 20px 20px 30px;
	background: url(../images/spec_bg.png);
}
#spec .flex05 dl dd.more figure {
	max-width: 260px;
	max-height: 200px;
	margin: 0 auto;
}
#spec .flex05 dl dd.more figure img {
	width: 100%;
	height: auto;
}
#spec .flex05 dl dd.more a {
	display: block;
	width: 230px;
	margin: 20px auto 0;
	line-height: 36px;
	text-align: center;
	border: solid 2px #0071bc;
	border-radius: 20px;
	text-decoration: none;
}
#spec ul.alignment {
	font-size: 1.2rem;
	margin-top:25px;
}
#spec .baroon {
position: absolute;
	top: -20px;
	left: 10px;
padding: 5px 10px;
color:#fff;
background: #73b1da;
border-radius: 4px;
}

#spec .baroon:after {
position: absolute;
content: '';
top: 100%;
left: 40px;
border: 10px solid transparent;
border-top: 10px solid #73b1da;
width: 0;
height: 0;
}
#spec .baroon span{
font-size:2rem;
}
#spec .baroon.red{
	background: #ff746b;
}
#spec .baroon.red i{
	text-decoration:line-through;
	font-style: normal;
}
#spec .baroon.red:after{
	border-top: 10px solid #ff746b;
}
#spec .tab-btn-cont{
	display: flex;
	justify-content:center;
	margin-top:40px;
}
#spec .tab-btn-cont .tab-btn{
	width: 40%;
	text-align: center;
	background: #fff;
	color:#0071bc;
	border:solid 1px #0071bc;
	border-bottom:none;
	padding: 17px 0;
	font-size: 1.9rem;
	font-weight: 700;
	cursor: pointer;
}
#spec .tab-btn-cont .tab-btn:first-of-type{
	margin-right: 20px;
}
#spec .tab-btn-cont .tab-btn:hover{
	background:#0071bc;
	color: #fff;
}
#spec .tab-btn-cont .tab-btn.-active{
	background:#0071bc;
	color: #fff;
}

#spec .tab-panel{display: none;}
#spec .tab-panel.-active{display: block;}
#spec .tab-panel .d-flex{display: flex;justify-content: center;}
#spec .tab-panel .d-flex dl:not(:last-of-type){
	margin-right:18px!important;
}
#spec .twoplan{
	margin-top:40px;
}
/*option*/
#option {
	padding: 80px 0;
	background-color: #73b1da;
}
#option h2 {
	color: #fff;
}
#option p.note {
	position: absolute;
	top: 30px;
	right: 0px;
	color: #fff;
	font-size: 1.2rem;
}
#option .flex06 dl {
	width: 100%;
	max-width: 480px;
	height: auto;
	margin-top: 70px;
	background-color: #f2f2f2;
}
#option .flex06 dl dt {
	position: relative;
	color: #fff;
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 40px;
	background-color: #73b1da;
	border: solid 4px #fff;
}
#option .flex06 dl dt span {
	position: absolute;
	top: -26px;
	left: 6px;
	font-size: 6.4rem;
	font-weight: bold;
	font-family: 'Montserrat', sans-serif;
}
#option .flex06 dl dd:nth-of-type(1) {
	padding: 24px 20px 20px;
	background: white;
}
#option .flex06 dl dd:nth-of-type(2) {
	padding: 20px 20px 10px;
	background-color: #f2f2f2;
}
#option .flex06 dl dd p {
	margin-bottom: 10px;
	line-height: 26px;
}
#option .flex06 dl dd p span.tag {
	margin-right: 10px;
	padding: 2px 14px;
	color: #73b1da;
	font-weight: bold;
	background-color: #fff;
	border: solid 1px #73b1da;
}
#option .flex06 dl dd p span.red {
	margin-left: 68px;
	color: #ff6860;
	font-weight: bold;
}
#option .flex06 dl dd p span.txtred {
	color: #ff6860;
	font-weight: bold;
}

/*cluboff*/
#cluboff .bgWrap {
	padding: 80px 0 30px;
	background-color: #ececec;
	background: repeating-linear-gradient(-70deg,#ececec,#ececec 6px,#f9f9f9 4px,#f9f9f9 10px);
	background: -moz-repeating-linear-gradient(-20deg,#ececec,#ececec 6px,#f9f9f9 4px,#f9f9f9 10px);
	background: -webkit-repeating-linear-gradient(-20deg,#ececec,#ececec 6px,#f9f9f9 4px,#f9f9f9 10px);
}
#cluboff .deco {
	color: #0071b6;
	font-size: 2.5rem;
	text-align: center;
}
#cluboff .deco span {
	font-weight: bold;
}
#cluboff h2 {
	width: 320px;
	height: auto;
	margin: 20px auto 30px;
}
#cluboff h2 img {
	width: 100%;
	height: auto;
}
#cluboff p {
	text-align: center;
}
#cluboff .flex04 {
	margin: 60px 0 50px;
}
#cluboff .flex04 dl {
	width: 230px;
	height: auto;
}
#cluboff .flex04 dl dd {
	position: relative;
	margin-top: 10px;
	padding: 12px 0;
	color: #0071bc;
	font-size: 1.9rem;
	font-weight: bold;
	text-align: center;
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 0 0 8px rgba(0,0,0,0.2);
}
#cluboff .flex04 dl dd:before {
	content: "";
	position: absolute;
	top: -32px;
	left: 99px;
	border: 16px solid transparent;
	border-bottom: 16px solid #fff;
}


/*step*/
#step {
	padding: 80px 0 90px;
}
#step h2 {
	color: #0071b6;
	margin-bottom: 60px;
}
#step .flex07 {
	align-items: center;
}
#step .flex07 dl {
	width: 220px;
	height: auto;
    position: relative;
}
#step .flex07 li:nth-of-type(1) dl {
	width: 230px;
	height: auto;
}
#step .flex07 dl dd {
	color: #0071b6;
	text-align: center;
}
#step .flex07 dl dd:nth-of-type(1) {
	width: 200px;
	height: 200px;
	margin: 0 auto;
	margin-bottom: 10px;
	font-size: 2rem;
	font-weight: bold;
	border: solid 2px #0071b6;
	border-radius: 100px;
}
#step .flex07 dl dd:nth-of-type(1) figure {
	width: 140px;
	height: 80px;
	margin: 48px auto 10px;
}
#step .flex07 dl dd:nth-of-type(1) figure img, #step .arrow img {
	width: 100%;
	height: auto;
}
#step .flex07 dl dd span.fs {
    font-size: 12px;
    position: absolute;
    bottom: -40px;
    left: 0;
    display: block;
}
#step .flex07 dl dd span.fc {
    font-weight: bold;
    /* background-color: #ffff00; */
}
#step .arrow {
	margin-top: -30px;
	width: 29px;
	height: 40px;
}


/*attention*/
#attention {
	padding: 80px 0;
	background-color: #d9eaf5;
}
#attention h2 {
	color: #0071bc;
	margin-bottom: 50px;
}
#attention .contentsWrap {
	padding: 60px 40px;
	background-color: white;
}
#attention h5 {
	margin-bottom: 30px;
	color: #0071bc;
	font-size: 1.8rem;
}
#attention ul {
	margin-bottom: 50px;
}
#attention ul > li {
	margin-bottom: 20px;
}
#attention p, #attention ol li {
	color: #808080;
	font-size: 1.2rem;
	line-height: 24px;
}
#attention p span {
	color: #333;
	font-weight: bold;
}
#attention p u {
	text-decoration: none;
	color:red;
	font-weight: bold;
}
#attention table {
	width: 70%;
    height: auto;
	border-collapse: collapse;
    margin: 20px 0 10px;
    font-size: 1.2rem;
    border-right: solid 2px #357cbf;
    border-left: solid 2px #357cbf;
}
.tableCaption{
	margin-bottom:20px;
}
.w6per {width: 6%;}
.w47per {width: 47%;}
#attention table tr {
    height: 30px;
}
#attention table thead {
    color: #fff;
    text-align: center;
    background-color: #357cbf;
}
#attention table thead th:nth-of-type(n+2) {
    border-left: solid 2px #fff;
}
#attention table tbody {
    background-color: #fff;
}
#attention table tbody tr {
    border-bottom: solid 2px #357cbf;
}
#attention table tbody th {
    text-align: center;
}
#attention table tbody td {
    padding: 0 10px;
    border-left: solid 2px #357cbf;
}

#attention ol.num {
	counter-reset: number 0;
	padding: 10px 14px;
	border: solid 1px #808080;
}
#attention ol.num li {
	padding-left: 2.5em;
}
#attention ol.num li::before {
	counter-increment: number 1;
	content: "※" counter(number)"：";
	display: block;
	float: left;
	margin-left: -2.5em;
}
#attention figure {
	margin: 30px 0;
}


/*tell*/
#tell {
	padding: 27px;
	color: #fff;
	background-color: #0071bc;
	border-bottom: solid 3px #000;
}
#tell ul {
	padding: 0 60px;
}
#tell li:nth-of-type(1) {
	float: left;
	padding-left: 60px;
	font-size: 3rem;
	font-weight: bold;
	line-height: 46px;
	background: url(../images/tell_ic01.png) no-repeat top 50% left 0 / 48px 32px;
}
#tell li:nth-of-type(2) {
	float: right;
	line-height: 46px;
}
#tell li:nth-of-type(2) span {
	margin-right: 6px;
	padding: 8px;
	color: #000;
	background-color: #fff;
}


/*link*/
#mainvisual .alignment li a:link, #mainvisual .alignment li a:visited,
#point .num li a:link, #point .num li a:visited {
	color: #fff;
}
#mainvisual .alignment li a:hover, #mainvisual .alignment li a:active,
#point .num li a:hover, #point .num li a:active {
	text-decoration: none;
}
#mainvisual .campaign .more a:link, #mainvisual .campaign .more a:visited {
	text-decoration: none;
}
#mainvisual .campaign .more a:hover, #mainvisual .campaign .more a:active {
	text-decoration: underline;
}
#plan a:link, #plan a:visited,
#attention a:link, #attention a:visited {
	color: #0071bc;
}
#plan a:hover, #plan a:active,
#attention a:hover, #attention a:active {
	text-decoration: none;
}
#spec .flex05 dl dd.more a:link, #spec .flex05 dl dd.more a:visited {
	color: #0071bc;
	background: url(../images/spec_ic02.png) , #fff;
	background-repeat: no-repeat;
	background-size: 8px 11px, auto;
	background-position: top 50% right 20px, top left;
}
#spec .flex05 dl dd.more a:hover, #spec .flex05 dl dd.more a:active {
	color: #fff;
	background: url(../images/spec_ic03.png) , #0071bc;;
	background-repeat: no-repeat;
	background-size: 8px 11px, auto;
	background-position: top 50% right 20px, top left;
}
#tell a:link, #tell a:visited {
	color: #fff;
	text-decoration: none;
}
#tell a:hover, #tell a:active {
	text-decoration: underline;
}


/*ーーーーーーーー2018.06NTTカードキャンペーン追加ーーーーーーーー*/


#ntt_cp {
	padding: 80px 0;
	background: #0071bc; /* Old browsers */
	background: -moz-linear-gradient(left, #0071bc 0%, #29a3da 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #0071bc 0%,#29a3da 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #0071bc 0%,#29a3da 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0071bc', endColorstr='#29a3da',GradientType=1 ); /* IE6-9 */
}
#ntt_cp h2 {
	margin: 0 0 40px 0;
}
#ntt_cp .ribbon {
	margin-bottom: -25px;
	text-align: center;
}
#ntt_cp .bg_white {
	background-color: #ffffff;
	padding: 50px 60px 40px;
	text-align: center;
}
#ntt_cp .bg_white p {
	padding-bottom: 20px;
}
#ntt_cp .bg_white p:nth-of-type(1) {
	margin-top: 10px;
}
#ntt_cp .bg_white p:nth-of-type(2) {
	padding: 20px 0 0 0;
}
#ntt_cp .bg_gray {
	margin-bottom: 50px;
	padding: 40px 50px 50px;
	text-align: left;
	background-color: #f2f2f2;
	font-size: 18px;
	line-height: 1.7;
}
#ntt_cp .bg_gray p {
	margin-bottom: 10px;
}
#ntt_cp .bg_gray p:nth-of-type(3) {
	margin-bottom: 0;
}
#ntt_cp a:link, #ntt_cp a:visited {
	color: #0071bc;
}
#ntt_cp a:hover, #ntt_cp a:active {
	color: #73b1da;
}

#ntt_cp .bg_white dl {
	display: flex;
	text-align: left;
	font-size: 18px;
}
#ntt_cp .bg_white dl dt {
	margin-bottom: 30px;
}
#ntt_cp .bg_white dl dd {
	padding-left: 30px;
}
#ntt_cp .bg_white dl:nth-of-type(1) dd {
	padding-top: 6px;
}
#ntt_cp .bg_white dl:nth-of-type(3) dt {
	margin-bottom: 0;
}

/*ーーーーーーーー2018.06NTTカードキャンペーン追加ーーーーーーーー*/

.signup_btn{
	text-align: center;
}
	.signup_btn a{
		font-size: 2.2rem;
		color:#1c5394;
		text-decoration: none;
		display: inline-block;
		padding:28px 150px;
		background: #ffd400;
		font-weight: bold;
		margin:50px 0;
	}
	.signup_btn a:hover{
		background:#ffa500;
	}


	.cashback__main__ttl {
		background: url("/mb/wm/images/cashback/cashback_mainbg.png");
		height: 400px;
		background-size: cover;
		position: relative;
		overflow: hidden; }
		.cashback__main__ttl .contentsWrap {
		  position: absolute;
		  top: 50%;
		  left: 50%;
		  transform: translate(-50%, -50%);
		  z-index: 10; }
		  .cashback__main__ttl .contentsWrap .cbMain {
			display: flex;
			flex-direction: column; }
			.cashback__main__ttl .contentsWrap .cbMain.sp_show {
			  display: none; }
			.cashback__main__ttl .contentsWrap .cbMain__ribbon {
			  text-align: center;
			  margin-bottom: 30px; }
			  .cashback__main__ttl .contentsWrap .cbMain__ribbon img {
				width: 821px;
				height: 79px; }
			.cashback__main__ttl .contentsWrap .cbMain__main {
			  text-align: center; }
			  .cashback__main__ttl .contentsWrap .cbMain__main img {
				width: 864px;
				height: 168px; }
			.cashback__main__ttl .contentsWrap .cbMain__txt {
				text-align: center;
				color: #0271bb;
				font-weight: bold;
				margin-top: 20px;
				font-size: 1.6rem; }
		.cashback__main__ttl::before {
		  content: url("/mb/wm/images/topbanner/cashback_money01.png");
		  position: absolute;
		  bottom: -10px;
		  left: 20px;
		  z-index: 9; }
		.cashback__main__ttl::after {
		  content: url("/mb/wm/images/topbanner/cashback_money02.png");
		  position: absolute;
		  bottom: -10px;
		  right: 20px;
		  z-index: 9; }
	  .cashback__main__sub {
		background: url("/mb/wm/images/cashback/cashback_subbg.png");
		height: 130px;
		background-size: cover; }
		.cashback__main__sub .contentsWrap {
		  display: flex;
		  justify-content: center;
		  align-items: center;
		  height: 100%; }
		  .cashback__main__sub .contentsWrap .cbSub {
			text-align: center;
			color: white; }
			.cashback__main__sub .contentsWrap .cbSub__txt {
			  font-size: 2.8rem;
			  font-weight: bold;
			  margin-bottom: 10px; }
			  .cashback__main__sub .contentsWrap .cbSub__txt span {
				position: relative; }
				.cashback__main__sub .contentsWrap .cbSub__txt span::before, .cashback__main__sub .contentsWrap .cbSub__txt span::after {
				  content: "";
				  position: absolute;
				  width: 100%;
				  height: 2px;
				  background: white;
				  left: 0; }
				.cashback__main__sub .contentsWrap .cbSub__txt span::before {
				  bottom: -5px; }
				.cashback__main__sub .contentsWrap .cbSub__txt span::after {
				  bottom: -9px; }
				.cashback__main__sub .contentsWrap .cbSub__txt span i {
				  font-style: normal;
				  position: relative; }
				  .cashback__main__sub .contentsWrap .cbSub__txt span i::before {
					position: absolute;
					content: "";
					width: 6px;
					height: 6px;
					border-radius: 50%;
					left: 50%;
					top: -9px;
					background: white;
					transform: translateX(-50%); }
			.cashback__main__sub .contentsWrap .cbSub__caption {
			  font-size: 1.4rem; }

	  .cashback__flow {
		padding: 80px 0;
		background: repeating-linear-gradient(-70deg, #ececec, #ececec 5px, #f9f9f9 4px, #f9f9f9 8px); }
		.cashback__flow h2 {
		  padding: 0 0 50px;
		  color: #0271bb;
		  font-size: 3.8rem;
		  text-align: center; }
		.cashback__flow .cbFlow {
		  display: flex;
		  justify-content: space-between; }
		  .cashback__flow .cbFlow__child {
			width: 22%;
			background: #fff;
			position: relative; }
			.cashback__flow .cbFlow__child::after {
			  content: "";
			  right: -25px;
			  width: 16px;
			  height: 16px;
			  border-top: 4px solid #0271bb;
			  border-right: 4px solid #0271bb;
			  transform: rotate(45deg);
			  position: absolute;
			  top: 50%; }
			.cashback__flow .cbFlow__child:last-of-type::after {
			  content: none; }
			.cashback__flow .cbFlow__child__ttl {
			  background: #0271bb;
			  color: #fff;
			  text-align: center;
			  padding: 10px 0;
			  font-weight: bold;
			  font-size: 1.8rem; }
			.cashback__flow .cbFlow__child__cont {
			  padding: 20px; }
			  .cashback__flow .cbFlow__child__cont__img {
				height: 135px;
				display: flex;
				justify-content: center;
				align-items: center; }
				.cashback__flow .cbFlow__child__cont__img .flowimg01 {
				  width: 120px;
				  height: 90px; }
				.cashback__flow .cbFlow__child__cont__img .flowimg02 {
				  width: 110px;
				  height: 87px; }
				.cashback__flow .cbFlow__child__cont__img .flowimg03 {
				  width: 80px;
				  height: 104px; }
				.cashback__flow .cbFlow__child__cont__img .flowimg04 {
				  width: 126px;
				  height: 81px; }
		.cashback__flow .alignment{
			font-size: 1.2rem;
			margin-top: 25px;
		}
	  .cashback__conditions {
		padding: 80px 0;
		background-color: #fff; }
		.cashback__conditions h2 {
		  padding: 0 0 50px;
		  color: #0271bb;
		  font-size: 3.8rem;
		  text-align: center; }
		.cashback__conditions__table {
		  border: 1px solid #0271bb; }
		  .cashback__conditions__table tr th {
			color: #fff;
			text-align: center;
			background-color: #0271bb;
			border-bottom: solid 1px #fff;
			width: 25%; }
		  .cashback__conditions__table tr td {
			word-break: break-all;
			padding: 14px 12px;
			border-bottom: solid 1px #0271bb;
			width: 75%; }
	  .cashback__howto {
		padding: 80px 0;
		background-color: #e5f1f8; }
		.cashback__howto h2 {
		  padding: 0 0 50px;
		  color: #0271bb;
		  font-size: 3.8rem;
		  text-align: center; }
		.cashback__howto__section .howtoCont:last-of-type{
			margin-bottom:60px;
		}
		.cashback__howto__section .howtoCont__ttl {
		  color: #fff;
		  background-color: #0271bb;
		  padding: 12px 25px;
		  font-size: 1.8rem;
		  font-weight: bold;
		  position: relative;
		  border-bottom:1px solid #65a5cf;
		}
			.cashback__howto__section .howtoCont__ttl:before{
				top: 50%;
				right: 30px;
				content: "";
				width: 10px;
				height: 10px;
				border-top: 2px solid #ffffff;
				border-right: 2px solid #ffffff;
				transform: rotate(45deg) translate(-50%, -50%);
				position: absolute;
				transform-origin: top left;
			}
			.cashback__howto__section .howtoCont__ttl.-active:before{
				transform: rotate(135deg) translate(-50%, -50%);
			}

		.cashback__howto__section .howtoCont__txt {
		  font-size: 1.6rem;
		  padding: 0 0 0 100px;
		  position: relative;
		  height: 0;
		  opacity: 0;
		  transition:all .4s ease;
		  overflow: hidden;
		}

			.cashback__howto__section .howtoCont__txt.-open{
				padding: 30px 0 30px 100px;
				height: auto;
				opacity: 1;
			}
			.cashback__howto__section .howtoCont__txt.gorlCont{
				padding:0;
			}
		  .cashback__howto__section .howtoCont__txt.gorlCont.-open{
			padding: 30px 0 30px; }
			.cashback__howto__section .howtoCont__txt.gorlCont::before, .cashback__howto__section .howtoCont__txt.gorlCont::after {
			  content: none; }
		  .cashback__howto__section .howtoCont__txt span {
			text-decoration: underline;
			font-weight: bold; }
		  .cashback__howto__section .howtoCont__txt::before {
			content: "";
			position: absolute;
			height: 100%;
			top: 0;
			left: 40px;
			width: 30px;
			background: #0271bb; }
		  .cashback__howto__section .howtoCont__txt::after {
			content: "";
			position: absolute;
			width: 0;
			height: 0;
			bottom: 0;
			left: 35px;
			border-left: 20px solid #e5f1f8;
			border-right: 20px solid #e5f1f8;
			border-top: 24px solid #0271bb; }
		.cashback__howto__rakuten .rakuTtl {
		  color: #fff;
		  background-color: #adadad;
		  padding: 12px 25px;
		  font-size: 1.8rem;
		  font-weight: bold;
		  margin-bottom: 20px; }
		.cashback__howto__rakuten .rakuTxt {
		  font-size: 1.6rem; }
.option_caption{
	margin-top:30px;
}

@media screen and (max-width:768px) {
	body {
		font-size: 1.2rem;
	}
	.sp_none {
		display: none;
	}
	.sp_show {
		display: block;
	}
	.contentsWrap {
		width: 100%;
		margin: 0;
		padding: 0 10px;
	}
	[class^="flex0"] {
		justify-content: space-around;
	}
	.signup_btn a {
		font-size: 1.6rem;
		width: 100%;
		padding: 24px 0;
		margin: 0px 0 40px;
	}
	/*header*/
	.campaign{
		height:60px;
	}
		.campaign::before{
			content: none;
		}
		.campaign::after{
			content: none;
		}
		.campaign__link{
			display: flex;
			align-items: center;
			height: 100%;
			justify-content: center;
			position: relative;
			z-index: 20;
		}

			.campaign__link__cashbackimg{
				width:96%;
				height:auto;
			}
	header > .fixed {
		border-bottom: none;
	}
	nav ul.list_pc {
		display: none;
	}
	nav ul.list_sp {
		float: left;
	}
	.glonav .variableWrap{
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	nav .logo {
		margin: 0 0 0 10px;
		padding-top: 10px;
	}
	nav.glonav ul.list_sp {
		margin-top: 0;
	}
	nav.glonav ul.list_sp li.nav_entry, .menu_btn {
		display: block;
	}
	nav.glonav ul.list_sp li {
		float: none;
		margin: 0;
		border-bottom: 2px solid #0071bc;
		font-size: 2.4rem;
	}
	nav.glonav ul.list_sp li:nth-of-type(1) {
		border-top: 2px solid #0071bc;
	}
	.glonav ul.list_sp li.top {
		background-color: #999;
	}
	nav.glonav ul.list_sp li.entry {
		background-color: #58c700;
	}
	nav.glonav ul.list_sp li.entry a {
		color: #fff;
	}
	/*ドロワー*/
	.menu_btn, .menu_btn span{
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
		cursor :pointer;
	}
	.menu_btn{
		float: right;
		position: relative;
		width: 68px;
		height: 60px;
		z-index: 10;
	}
	.menu_btn span{
		position: absolute;
		background: #0071bc;
		width: 34px;
		height: 4px;
		left: 0;
		right: 0;
		margin: auto;
	}
	.menu_btn span:nth-of-type(1){
		top: 16px;
	}
	.menu_btn span:nth-of-type(2){
		top: 0;
		bottom: 0;
	}
	.menu_btn span:nth-of-type(3){
		bottom: 16px;
	}
	.menu_btn.active span:nth-of-type(1){
		-webkit-transform: translateY(12px) rotate(-45deg);
		transform: translateY(12px) rotate(-45deg);
	}
	.menu_btn.active span:nth-of-type(2){
		opacity: 0;
	}
	.menu_btn.active span:nth-of-type(3){
		-webkit-transform: translateY(-12px) rotate(45deg);
		transform: translateY(-12px) rotate(45deg);
	}
	.glonav ul.list_sp{
		top: 0;
		width: 100%;
		height: auto;
		background-color: #fff;
		z-index: 9;
	}
	.glonav ul.list_sp li a {
		display: block;
		text-align: center;
		text-decoration: none;
		font-weight: bold;
		padding: 10px 0;
		font-size: 1.4rem;
	}
	.glonav ul.list_sp li a:link, .glonav ul.list_sp li a:visited {
		color: #0071bc;
		background-color: #fff;
	}
	.glonav ul.list_sp li a:hover, .glonav ul.list_sp li a:active {
		color: #fff;
		background-color: #0071bc;
	}

	.nav_btn {
		font-size: 1rem;
	}
	.nav_btn .entry a:link, .nav_btn .entry a:visited {
		width: 90px;
	}
	.nav_btn .login a:link, .nav_btn .login a:visited {
		width: 70px;
	}

	/*#mainvisual*/
    #mainvisual {
		margin-top:61px;
    }
	#mainvisual > .variableWrap {
		width: 100%;
		padding: 0 2.5%;
	}
	#mainvisual h1 img,
	#mainvisual figure img {
		width: 90%;
	}
	#mainvisual ol {
		padding: 20px 10px;
	}
	#mainvisual ol li {
		width: 100%;
		height: auto;
		line-height: 18px;
	}
	#mainvisual .contentsWrap {
		margin: 0 auto;
        padding: 10px 0;
        background-color: #b3d4fc;
	}
	#mainvisual .tag li {
		width: 100px;
		height: 38px;
		padding: 3px 0 0 0;
		background-size: contain;
	}
	#mainvisual .tag li p {
		font-size: 0.9rem;
	}
	#mainvisual .tag li p span {
		font-size: 1.6rem;
		line-height: 16px;
	}
	#mainvisual .tag li p small {
		margin-left: 2px;
		font-size: 1rem;
	}
	#mainvisual .tag li:nth-of-type(1) p {
		padding-left: 24px;
		background: url(../images/mv_teg_im01.png) no-repeat bottom 4px left 10px / 22px 23px;
	}
	#mainvisual .tag li:nth-of-type(2) p {
		padding-left: 24px;
		background: url(../images/mv_teg_im02.png) no-repeat bottom 4px left 14px / 22px;
	}
	#mainvisual .tag li:nth-of-type(3) p {
		padding-left: 24px;
		background: url(../images/mv_teg_im03.png) no-repeat bottom 4px left 6px / 25px 20px;
	}
	#mainvisual	.signup_btn{
		padding:0 10px;
	}
	.main{
		flex-direction: column;
		padding: 50px 0 0;
		gap:40px;
	}
	.main__txt h1.ttl {
		margin-bottom:25px;
	}
	.main__txt h1.ttl img{
		width: 90%;
	}
	.main__txt .txt img{
		width: 100%;
	}
	.main__image .image img{
		width: 100%;
	}
	#mainvisual ol {
		width: 100%;
		padding: 20px 0 50px;
	}

	/*discount*/
	.discount{
		padding:25px 0;
	}
	.discount .discount__inner{
		flex-direction: column;
		gap:15px;
		padding:0 10px;
	}
	.discount .discount__inner a img{
		width:100%;
	}

	/*point*/
	#point {
		padding: 40px 0 50px;
	}
	#point .deco, #cluboff .deco {
		font-size: 1.9rem;
	}
	#point .deco span, #cluboff .deco span {
		font-weight: bold;
	}
	h2 {
		font-size: 2.4rem;
		line-height: 36px;
		}
	#point h2 {
		padding-bottom: 12px;
	}
	#point .flex01 {
		width: 100%;
		margin: 0 auto;
	}
	#point .flex01 li {
		margin-bottom: 30px;
	}
	#point .flex01 li:nth-of-type(1) {
		padding-right: 0;
	}
	#point .flex01 li:nth-of-type(2) {
		padding: 0;
	}
	#point .flex01 li:nth-of-type(3) {
		padding-left: 0;
	}
	#point .flex01 li:nth-of-type(4) {
		padding-right: 0;
	}
	#point .flex01 li:nth-of-type(5) {
		padding-left: 0;
	}
	#point .flex01 li:nth-of-type(n+2) {
		border-left: none;
	}
	#point dl dd span {
		font-size: 2.2rem;
	}
	#point dl > dd:nth-of-type(1) {
		margin-bottom: 10px;
		font-size: 1.6rem;
	}
	#point ul.alignment {
		padding: 10px;
		border: solid 1px #adadad;
	}
	/*tokuten*/
	.tokuten{
		padding: 40px 0;
	}
	.tokuten .tokuten__ttl{

		position: relative;
	}
	.tokuten .tokuten__ttl .ttl{
		margin:0 20px;
		font-size: 2rem;
		padding: 14px 10px;
	}
	.tokuten .tokuten__ttl .ribbon_left{
		top:46px;
	}
	.tokuten .tokuten__ttl .ribbon_right{
		top:46px;
	}
	.tokuten .tokuten__cont{
		padding: 20px;
		margin: 0 20px;
		box-shadow: 6px 6px #c6c766;
	}
	.tokuten .tokuten__cont .tokuten__cont__txt{
		font-size: 1.6rem;
		margin-bottom:15px;
	}
	.tokuten .tokuten__cont .tokuten__cont__detail{
		flex-direction: column;
		margin-bottom:15px;
	}
	.tokuten .tokuten__cont .tokuten__cont__detail .uchiwake img{
		width: 100%;
	}
	.tokuten .tokuten__cont .tokuten__cont__detail .arrow img{
		transform: rotate(90deg);
	}
	.tokuten .tokuten__cont .tokuten__cont__detail .sun{
		text-align: center;
	}
	.tokuten .tokuten__cont .tokuten__cont__detail .sun img{
		width: 60%;
	}

	/*plan*/
	#plan {
		background: none;
	}
	#plan .contentsWrap {
		background-color: #f9f9f9;
	}
	#plan h2 {
		padding: 40px 0;
	}
	#plan p.note {
		top: 72px;
		right: 5px;
	}
	#plan h3.plan_ttl{font-size:2rem;}
	#plan h3.plan_ttl u{
		font-size:1.4rem;
		padding:5px;
		margin-left:1rem;

	}
	ul#tabMenu, ul.deco {
		width: 100%;
		padding: 0;
	}
	ul.deco li {
		margin-bottom: 6px;
		font-size: 1.2rem;
		line-height: 16px;
	}
	ul#tabMenu li {
		font-size: 2rem;
		line-height: 50px;
	}
	#plan [id^="tabbox0"] .bg_white {
		padding: 20px 10px 10px;
	}
	#plan [id^="tabbox0"] .bg_gray {
		padding: 20px 20px 30px;
	}
	#plan .textbox .bg_white, #plan .bg_lightblue  {
		padding: 20px 10px;
	}
	#plan .campaign_tag {
		width: 100%;
		height: auto;
		margin-bottom: 20px;
	}
	#plan .campaign_tag img {
		width: 100%;
		height: auto;
	}
	#plan .campaign .bg_lightblue {
		padding-top: 40px;
	}
	#plan .campaign .campaign_tag img {
		padding: 0 10px;
	}
	#plan h3 {
		font-size: 2.2rem;
		line-height: 46px;
		margin-bottom: 0;
	}
	#plan h3 span:nth-of-type(1) {
		font-size: 1.6rem;
		margin-right: 0;
	}
	#plan h3 span:nth-of-type(2) {
		display: inline;
		float: none;
		margin: 0;
		padding: 3px 6px;
		font-size: 1.4rem;
	}
    #plan h3 span:nth-of-type(2) strong{
    font-size:1.4rem;
    }
    #plan p span strong {
        font-size: 1.6rem;
    }
	#plan .where li {
		margin-bottom: 30px;
	}
	#plan .where li:nth-of-type(2) {
		margin: 0 0 30px 0;
	}
	#plan .flex03 {
		display: block;
		margin-top: 20px;
	}
	#plan .flex03 > li:nth-of-type(2), #plan .flex03 > li:nth-of-type(3) {
		text-align: center;
	}
	#plan .flex03 > li:nth-of-type(2) img {
		transform: rotate(90deg);
	}
	#plan .flex03 > li:nth-of-type(3) img {
		width: 100%;
		max-width: 356px;
		height: auto;
	}
	.w18per {width: 100%;}
	.w82per {width: 0%;}
	#plan table {
		width: 100%;
		height: auto;
	}
	#plan table:not(.table04) {
		margin: 12px auto 30px;
	}
	#plan .table01 {
		background: url(../images/plan_bg03.png) no-repeat top left / 100% 100%;
	}
	#plan .table02 {
		background: url(../images/plan_bg02.png) no-repeat top left / 100% 100%;
	}
	#plan .table03 {
		background: url(../images/plan_bg03.png) no-repeat top left / 100% 100%;
	}
	#plan table:not(.table04) td {
		padding: 10px 0;
		font-size: 1.1rem;
	}
	#plan table:not(.table04) td span {
		font-size: 2rem;
		line-height: 20px;
	}
	#plan table:not(.table04) td > small {
		font-size: 1.2rem;
	}
	#plan table:not(.table04) td > small small {
		font-size: 1rem;
	}
	#plan .table04 {
		margin-bottom: 26px;
	}
	#plan .table04 tr {
		height: auto;
	}
	#plan .table04 th, #plan .table04 td {
		display: block;
	}
	#plan .table04 th {
		font-size: 1.4rem;
		line-height: 36px;
	}
	#plan .table04:nth-of-type(1) td {
		padding: 8px 4px;
		text-align: left;
	}
	#plan .table04:nth-of-type(2) td {
		line-height: 28px;
	}
	#plan .caution {
		padding-left: 12px;
	}
	#plan .textbox .bg_lightblue h3 {
		text-align: left;
		line-height: 150%;
	}
	#plan .textbox {
		padding-bottom: 20px;
	}
	#plan .line {
		margin-top: -38px;
	}
	#plan .comment {
		margin-bottom: 30px;
	}
	#plan .line li {
		height: 30px;
	}
	#plan .comment li {
		width: 93px;
		padding: 2px 0 4px;
		font-size: 0.8rem;
		line-height: 12px;
	}
	#plan .comment li:nth-of-type(n+2) {
		line-height: 18px;
	}
	#plan .comment li span {
		font-size: 1.6rem;
		line-height: 24px;
	}
	#plan .comment li small {
		color: #333;
		font-size: 0.8rem;
		line-height: 12px;
	}

	#plan .plancont .plancont__ttl{
		font-size:1.8rem;
	}
	#plan .plancont .categorylist{
		margin-top:30px;
	}
	#plan .plancont .categorylist .categorylist__cont{
		width: 100%;
		margin: 10px 0 0;
	}
	#plan .plancont .categorylist .categorylist__cont .listttl{
		font-size:1.4rem;
	}
	#plan .plancont .categorylist .categorylist__cont .listtxt{
		font-size:1.6rem;
	}
	#plan .plancont .categorydevice{
		margin-top:30px;
	}
	#plan .plancont .categorydevice .categorydevice__list{
		display: flex;
		justify-content:space-between;
		margin:20px 0;
	}
	#plan .plancont .categorydevice .categorydevice__list li{width: 50%;}
	#plan .plancont .categorydevice .categorydevice__list li:first-of-type{border-right:1px solid #dedede;}
	#plan .plancont .categorydevice .categorydevice__list .devicettl{
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
	#plan .plancont .categorydevice .categorydevice__list .deviceimg img{
		width: 100%;
	}
	#plan .plancont .categorydevice .categorydevice__list .deviceimglink{
		text-align: center;
		margin-bottom: 10px;
	}
	#plan .plancont .categorydevice .categorydevice__list .deviceimglink a{
		padding: 12px 0;
		width: 80%;
	}
	#plan .plancont .categorypriceplan{
		margin-top:30px;
	}
	#plan .plancont .categorypriceplan img{
		width: 100%;
	}
	#plan .plancont .categoryaboutsa{
		margin-top:30px;
	}
	#plan .plancont .categoryaboutsa .categoryaboutsa__cont{
		flex-direction: column;
		gap:20px;
	}
	#plan .plancont .categoryaboutsa .categoryaboutsa__cont .categoryaboutsa__cont__img div img{
		width: 100%;
	}
	#plan #tabBoxes{
		margin-bottom: 0;
	}
	.plus5gPrice_flow img {
		width: 100%;
	}
	#plan .optionttl {
		font-size:2rem;
	}
	#plan .planprice{
		flex-direction: column;
		margin-bottom:20px;
	}
	#plan .planprice .planprice__child{
		width: 100%;
		margin: 10px 0 0;
		padding: 8px;
	}
		#plan .planprice .planprice__child__txt{
			font-size: 1.6rem;
		}
		#plan .planprice .planprice__child__value{
			font-size:2.2rem;
		}
			#plan .planprice .planprice__child__value small{
				font-size: 1.2rem;}
	/*spec*/
	#spec {
		padding: 30px 0 50px;
	}
	#spec h2 {
		margin: 10px 0 20px;
	}
	#spec h4 {
	font-size: 2rem;
	line-height: 36px;
	}
	#spec .flex05:nth-of-type(1) {
		margin-bottom: 40px;
	}
	#spec .flex05:nth-of-type(1) dl,
	#spec .flex05:nth-of-type(1).two_cont dl:nth-of-type(3n+3) {
		margin-right: 0;
	}
	#spec .flex05 dl dd.text{margin:14px 22px!important;}

	#spec .tab-btn-cont{margin-top:20px;}
	#spec .tab-btn-cont .tab-btn{
		font-size: 1.25rem;
		width: 45%;
	}
	#spec .tab-btn-cont .tab-btn:first-of-type{margin-right: 8px;}
	#spec .tab-panel .d-flex{flex-direction: column;}
	#spec .tab-panel .d-flex dl:not(:last-of-type){margin-right: 0!important;}
	#spec .twoplan{margin-top:20px;}
	/*option*/
	#option {
		padding: 40px 0 50px;
	}
	#option p.note {
		right: 5px;
	}
	#option .flex06 dl {
		margin-top: 50px;
	}
	#option .flex06 dl dt {
		font-size: 1.6rem;
		line-height: 32px;
	}
	#option .flex06 dl dt span {
		top: -22px;
		left: 4px;
		font-size: 4rem;
	}


	/*cluboff*/
	#cluboff {
		background-color: #ececec;
	}
	#cluboff .bgWrap {
		padding: 40px 0;
		background: none;
	}
	#cluboff h2 {
		width: 240px;
		margin: 6px auto 30px;
	}
	#cluboff p {
		font-size: 1.4rem;
		text-align: center;
		line-height: 24px;
	}
	#cluboff .flex04 {
		margin: 40px 0 10px;
	}
	#cluboff .flex04 dl {
		padding-bottom: 20px;
	}
	#cluboff .flex04 dl dd {
		padding: 10px 0;
		font-size: 1.8rem;
	}


	/*step*/
	#step {
		padding: 40px 0 50px;
	}
	#step h2 {
		color: #0071b6;
		margin-bottom: 40px;
	}
	#step .flex07 {
		display: block;
	}
	#step .flex07 dl {
		width: 300px;
		margin: 0 auto;
	}
	#step .flex07 li:nth-of-type(1) dl {
		width: 300px;
	}
	#step .flex07 dl dd:nth-of-type(1) {
		width: 200px;
		height: 200px;
		margin: 0 auto;
		margin-bottom: 10px;
		font-size: 2rem;
		font-weight: bold;
		border: solid 2px #0071b6;
		border-radius: 100px;
	}
	#step .flex07 dl dd:nth-of-type(1) figure {
		width: 140px;
		height: 80px;
		margin: 48px auto 10px;
	}
	#step .flex07 dl dd:nth-of-type(1) figure img, #step .arrow img {
		width: 100%;
		height: auto;
	}
		#step .flex07 dl dd:nth-of-type(2) {
			font-size: 1.6rem;
		}
	#step .arrow {
		width: 29px;
		height: 40px;
		margin: 10px auto;
	}
	#step .arrow img {
		transform: rotate(90deg);
	}
	.solo.signup_btn{
		padding:0 10px;
	}

	/*attention*/
	#attention {
		padding: 40px 10px;
	}
	#attention h2 {
		margin-bottom: 30px;
	}
	#attention .contentsWrap {
		padding: 30px 10px;
	}
	#attention h5 {
		margin-bottom: 10px;
		font-size: 1.4rem;
	}
	#attention ul {
		margin-bottom: 30px;
	}
	#attention ul > li {
		margin-bottom: 20px;
	}
	#attention p, #attention ol li {
		font-size: 1rem;
		line-height: 18px;
	}
	#attention ol {
		padding: 12px 10px;
	}
	#attention figure {
		margin: 20px 0;
	}
	#attention figure img {
		width: 100%;
		height: auto;
	}
    #attention table {
        width: 100%;
    }
	#attention .signup_btn a{
		margin-top:25px;
	}

	/*tell*/
	#tell {
		padding: 10px 0;
	}
	#tell ul {
		width: 300px;
		margin: 0 auto;
		padding: 0 0 0 20px;
	}
	#tell li:nth-of-type(1) {
		float: none;
		padding-left: 46px;
		font-size: 2rem;
		line-height: 42px;
		background: url(../images/tell_ic01.png) no-repeat top 50% left 0 / 36px 24px;
	}
	#tell li:nth-of-type(2) {
		float: none;
		line-height: 42px;
	}
	#tell li:nth-of-type(2) span {
		margin-right: 6px;
		padding: 6px 8px;
	}



/*ーーーーーーーー2018.06NTTカードキャンペーン追加spーーーーーーーー*/

	#ntt_cp {
		padding: 5% 0 50px;
	}
	#ntt_cp img {
		width: 100%;
	}
	#ntt_cp h2 {
		margin: 0 6% 20px;
	}
	#ntt_cp .ribbon {
		margin: 0 8% -4%;
	}
	#ntt_cp .bg_white {
		padding: 5% 20px 30px;
	}
	#ntt_cp .bg_white p {
		padding-bottom: 3%;
	}
	#ntt_cp .bg_white p:nth-of-type(1) {
		margin-top: 4%;
	}
	#ntt_cp .bg_white p:nth-of-type(2) {
		padding: 20px 0 0 0;
	}
	#ntt_cp .bg_gray {
		margin-bottom: 7%;
		padding: 24px 20px;
		font-size: 14px;
	}
	#ntt_cp .bg_gray p {
		margin-bottom: 5px;
	}
	#ntt_cp .bg_white dl {
		display: block;
		width: 100%;
		font-size: 14px;
		line-height: 1.6;
		margin-bottom: 20px;
	}
	#ntt_cp .bg_white dl dt {
		width: 70px;
		height: auto;
		margin-bottom: 10px;
	}
	#ntt_cp .bg_white dl dd {
		padding-left: 0;
	}
	#ntt_cp .bg_white dl:nth-of-type(1) dd {
		padding-top: 0;
	}
	#ntt_cp .bg_white dl:nth-of-type(3) dt {
		margin-bottom: 10px;
	}
	#ntt_cp .bg_white dl:nth-of-type(3) {
		margin-bottom: 0px;
	}


	/*ーーーーーーーー2018.06NTTカードキャンペーン追加ーーーーーーーー*/

	.signup_btn a{
		font-size: 1.6rem;
		width: 100%;
		padding:24px 0;
		margin:40px 0 ;
	}
	.cashback__main__ttl {
		height: 480px; }
		.cashback__main__ttl .contentsWrap {
		  position: absolute;
		  top: 50%;
		  left: 50%;
		  transform: translate(-50%, -50%); }
		  .cashback__main__ttl .contentsWrap .cbMain__ribbon img {
			width: 98%;
			height: auto; }
		  .cashback__main__ttl .contentsWrap .cbMain__main img {
			width: 98%;
			height: auto; }
		  .cashback__main__ttl .contentsWrap .cbMain.sp_none {
			display: none; }
		  .cashback__main__ttl .contentsWrap .cbMain.sp_show {
			display: flex; }
			.cashback__main__ttl .contentsWrap .cbMain.sp_show img {
			  width: 92%;
			  margin: 0 auto; }
		.cashback__main__ttl::before {
		  bottom: -80px;
		  left: 2%; }
		.cashback__main__ttl::after {
		  bottom: -80px;
		  right: 2%; }
	  .cashback__main__sub {
		height: auto;
		padding: 14px 0; }
		.cashback__main__sub .contentsWrap .cbSub__txt {
		  font-size: 2rem; }
		  .cashback__main__sub .contentsWrap .cbSub__txt span {
			position: relative; }
			.cashback__main__sub .contentsWrap .cbSub__txt span::before, .cashback__main__sub .contentsWrap .cbSub__txt span::after {
			  height: 1px; }
			.cashback__main__sub .contentsWrap .cbSub__txt span i::before {
			  width: 4px;
			  height: 4px;
			  top: -7px; }
		.cashback__main__sub .contentsWrap .cbSub__caption {
		  font-size: 1.2rem; }
	.cashback__flow {
		padding: 40px 0; }
		.cashback__flow h2 {
		  padding: 0 0 25px;
		  font-size: 2.4rem; }
		.cashback__flow .cbFlow {
		  flex-direction: column; }
		  .cashback__flow .cbFlow__child {
			width: 100%;
			margin-bottom: 50px; }
			.cashback__flow .cbFlow__child::after {
			  right: 50%;
			  bottom: -30px;
			  top: auto;
			  transform: translate(50%, 0) rotate(135deg); }
			.cashback__flow .cbFlow__child__ttl {
			  padding: 6px 0;
			  font-size: 1.6rem; }
			.cashback__flow .cbFlow__child__cont {
			  padding: 5%; }
			  .cashback__flow .cbFlow__child__cont__img {
				height: 110px; }
			.cashback__flow .cbFlow__child:last-of-type {
			  margin-bottom: 0; }
	  .cashback .cashback__conditions {
		padding: 40px 0; }
		.cashback .cashback__conditions h2 {
		  padding: 0 0 25px;
		  font-size: 2.4rem; }
		.cashback .cashback__conditions__table{
			width: 100%;
			margin:0 auto;
			height:auto;
		}
	  .cashback__howto {
		padding: 40px 0; }
		.cashback__howto h2 {
		  padding: 0 0 25px;
		  font-size: 2.4rem; }
		  .cashback__howto__section .howtoCont:last-of-type{
			margin-bottom:30px;
		}
		.cashback__howto__section .howtoCont__ttl {
		  padding: 8px 20px;
		  font-size: 1.6rem; }
		.cashback__howto__section .howtoCont__txt {
		  font-size: 1.4rem;
		  padding: 0 0 0 60px; }
		  .cashback__howto__section .howtoCont__txt.-open {
			padding: 15px 0 15px 60px; }
		  .cashback__howto__section .howtoCont__txt.gorlCont {
			padding: 15px 0 15px; }
		  .cashback__howto__section .howtoCont__txt::before {
			left: 20px;
			width: 16px; }
		  .cashback__howto__section .howtoCont__txt::after {
			left: 14px;
			border-left: 14px solid #e5f1f8;
			border-right: 14px solid #e5f1f8;
			border-top: 14px solid #0271bb; }
		.cashback__howto__rakuten .rakuTtl {
		  padding: 8px 20px;
		  font-size: 1.6rem; }
		.cashback__howto__rakuten .rakuTxt {
		  font-size: 1.4rem; }
}

/*=========================================
_obon_information
=========================================*/

.obon_information {
	width:100%;
	height:auto;
	margin:0 auto;
	background-color:#f5f5f5;
	padding:10px 0;
	line-height: 2em;
}

.obon_information_header {
	text-align:center;
	color:#e73462;
	font-size:1.2em;
	font-weight:bold;

}

.obon_information_text {
	text-align:center;
	font-size:0.8em;
}

@media screen and (max-width: 481px) {
		.obon_information_header {
		font-size:1.2em;
		line-height: 1.2em;
	}

	.obon_information_text {
		margin-top:1em;
		padding-left:10px;
		padding-right:10px;
		text-align:left;
	}

}