@charset "utf-8";

h1{
	background-color: #f2f2f2;
}
.img_center{
	margin: 0 auto;
}
hr{
	max-width: 980px;
	margin: 40px auto 30px;
}
hr.hr_air_hikari{
	margin: 40px auto 20px;
}
hr.hr_cp{
	max-width: 950px;
	margin: 0 auto 20px;
}

.l-inner .bg-white{
	border-radius: 5px;
	padding: 40px;
}
@media (max-width: 768px){
	hr.hr_air_hikari{
		margin: 30px auto 0;
	}
	.l-inner .bg-white{
		padding: 15px;
	}
	.air_hikari .l-inner .bg-white{
		padding: 30px 15px;
	}
}

.flex-j-center{
	justify-content: center;
}
.flex-j-space{
	justify-content: space-around;
}
.flex-a-center{
	align-items: center;
}
@media (max-width: 768px){
	.md-text-left{
		text-align: left;
	}
	.md-text-center{
		text-align: center;
	}
}
.pb-50{
	padding-bottom: 50px;
}


/**** フローティングボタン ****/
.refinemodal{
	left: 0;
	width: 100%;
	background:rgba(255,255,187,0.9);
}
.refinemodal .bg{
	border: 5px solid #ccc;
	border-radius: 15px;
	padding: 34px;
	background-color: #fff;
}
div.area_btn{
	z-index:2;
	position:fixed;
	background:rgba(0,0,0,0.7);
	bottom:0;
	width:100%;
	padding:15px 15px 0 15px;
}
div.area_btn p{
	color:#fff;
	font-size:20px;
	text-align:center;
	padding:10px 15px;
	font-weight:bold;
	margin:0;
}
div.area_btn a{
	color:#fff !important;
	font-size:16px;
	text-decoration:none;
}
div.area_btn ul{
	display:table;
	margin:0 auto 0 auto;
	max-width:960px;
	width: 100%;
}

div.area_btn ul li{
	display:table-cell;
	vertical-align:middle;
	width:50%;
	text-align:center;
	box-sizing:border-box;
	padding:0 15px 0 0;
}
div.area_btn ul li:nth-child(2){
	padding:0 0 0 15px;
}
div.area_btn ul li a{
	background-color:#ff0066;
	color:#fff;
	border-radius:6px;
	padding:10px;
	text-decoration:none;
	display:block;
	font-weight:bold;
	font-size:20px;
}
div.area_btn ul li a:hover{
	opacity:0.75;
}

div#contents_a p.title01,
div#contents_b p.title01{
	text-align:center;
	font-weight:bold;
	font-size:23px;
	color:#666666;
}

div#contents_a p.title01 strong,
div#contents_b p.title01 strong{
	color:#0fa9ca;
}

div#contents_a p.title02,
div#contents_b p.title02{
	font-size:26px;
	background-color:#ffe200;
	margin:0 -34px 15px -34px;
	padding:12px 0 12px 0;
	text-align:center;
	font-weight:bold;
	color:#000;
}

div#contents_a p.title02_text,
div#contents_b p.title02_text{
	font-size:20px;
	text-align:center;
	color:#FF0066;
	margin:0 0 10px 0;
}

div#contents_a p.title03,
div#contents_b p.title03{
	font-size:23px;
	font-weight:bold;
	text-align:center;
	color:#666;
	margin:0 0 10px 0;
}

div#contents_a p.btn01,
div#contents_a p.btn02,
div#contents_b p.btn01,
div#contents_b p.btn02{
	text-align:center;
}

div#contents_b ul.btn01{
	display:table;
	width:100%;
	margin:0 0 20px 0;
}

div#contents_b ul.btn01 li{
	display:table-cell;
	vertical-align:top;
	width:50%;
	text-align:right;
	box-sizing:border-box;
	padding:0 10px 0 0;
}

div#contents_b ul.btn01 li:nth-child(2){
	text-align:left;
	padding:0 0 0 10px;
}

div#contents_b ul.btn01 li a,
div#contents_a p.btn01 a,
div#contents_b p.btn01 a{
	display:inline-block;
	background-color:#ff0066;
	color:#fff;
	text-decoration:none;
	font-size:23px;
	font-weight:bold;
	border-radius:6px;
	padding:20px 60px 20px 60px;
 box-shadow: 0px 6px #CC0033;
}

div#contents_a p.btn02 a,
div#contents_b p.btn02 a{
	display:inline-block;
	background-color:#ff0066;
	color:#fff;
	text-decoration:none;
	font-size:16px;
	font-weight:bold;
	border-radius:6px;
	padding:10px 40px 10px 40px;
 box-shadow: 0px 6px #CC0033;
}

div#contents_a p.btn_text{
	text-align:center;
	font-size:16px;
	margin:0 0 40px 0;
}

div#contents_a p.btn_text a{
	color:#0066ff;
}

div#contents_a p.btn_text a:hover{
	text-decoration:none;
}

div#contents_b p.text01{
	text-align:center;
	color:#ff0066;
	font-size:16px;
	font-weight:bold;
	margin:0 0 5px 0;
}

div#contents_b p.text01 strong{
	font-size:30px;
}

div#contents_b p.text01+p{
	font-size:16px;
	text-align:center;
}

div#contents_a div.bord,
div#contents_b div.bord{
	background-color:#eeeeee;
	padding:10px;
	margin:-20px 0 0 0;
}

div#contents_b div.bord{
	background-color:#fff;
	border:1px solid #ff0066;
}

div#contents_a div.bord p,
div#contents_b div.bord p{
	margin:0;
	padding:0;
	font-size:16px;
}

div#contents_b ul.btn01 li a:hover,
div#contents_a p.btn01 a:hover,
div#contents_a p.btn02 a:hover,
div#contents_b p.btn01 a:hover,
div#contents_b p.btn02 a:hover{
	opacity:0.75;
}

div#contents_b p.btn_open{
	text-align:center;
	margin:0 0 40px 0;
}

div#contents_b p.btn_open span{
	border-radius:5px;
	background-color:#dcdcdc;
	font-size:12px;
	display:inline-block;
	padding:10px 20px 10px 35px;
	font-weight:bold;
	cursor:pointer;
	background-image:url(/common_files/images/icon/icon_open_b.png);
	background-repeat:no-repeat;
	background-position:center left 15px;
}
div#contents_b p.btn_open.active span{
	background-image:url(/common_files/images/icon/icon_close_b.png);
}

div#contents_b div.cl{
	margin:-20px 0 40px 0;
	border-radius:15px;
	background-color:#dcdcdc;
	font-size:16px;
	padding:20px;
}

div#contents_b div.cl p{
	font-size:16px;
}

div#contents_b div.cl p.ttl{
	font-size:18px;
	font-weight:bold;
}

@media screen and (max-device-width: 767px){
	div.area_btn{
		height:auto;
		padding:18px 0 0 0;
	}
	div.area_btn p{
		font-size:16px;
		padding:5px;
	}
	div.area_btn ul{
		display:table;
		margin:0 auto 0 auto;
		min-width:100%;
		height:auto;
	}
	div.area_btn ul li{
		padding:0 5px 0 15px;
	}
	div.area_btn ul li a{
		font-size:14px;
		padding:5px;
	}
	div.area_btn ul li:nth-child(2){
		padding:0 15px 0 5px;
	}
}

/**** タイムセール実施中バナーエリア ****/
.slide_area .slide_text{
	background-color: #ff6766;
}

.slide_area .slide_box{
	background-color: #ffeae9;
}

.slide_area .slide_box .slide_btn a{
	color: #fff;
	font-weight: bold;
	position: relative;
	background-color: #ff6766;
	padding: 5px 40px 5px 25px;
	border-radius: 20px;
	display: block;
	font-size: 18px;
	text-align: center;
}

.slide_area .slide_box .slide_btn a::after{
	content: '';
	position: absolute;
	top: 44%;
	right: 20px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: translateY(-50%) rotate(135deg);
}

.slide_area .slide_box .slide_btn a:hover::after{
	animation: arrow .5s;
}
@keyframes arrow {
	25% {
		bottom: 5px;
	}
	50% {
		bottom: 10px;
	}
	75% {
		bottom: 5px;
	}
	100% {
		bottom: 10px;
	}
}

.coution_01{
	max-width: 950px;
	margin: 0 auto;
}

/**** 申込特典 ****/
.tokuten_wrap{
	background: #f6f6f6;
	color: #666464;
	padding: 10px 15px;
}
.tokuten_wrap_ttl{
	font-size: 18px;
}
.tokuten_wrap_1{
	padding-right: 15px;
}
.tokuten_wrap_2 a{
	background: #666464;
	color: #fff;
	text-decoration: none;
	display: block;
	width: 144px;
	padding: 4px;
	border-radius: 8px;
	letter-spacing: .1em;
	margin: 0 auto;
}
.text-size-s2{
	font-size: 12px;
}
.arrow-right{
	position: relative;
	padding-right: 15px;
	padding-left: 5px;
}
.arrow-right:before{
	content: '';
	position: absolute;
	width: 8px;
	height: 8px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	top: 5px;
	right: 0;
	transform: rotate(45deg);	
}

/**** SoftBank Air＆光 ****/
.air_hikari_ttl{
	font-size: 50px;
}
.air_hikari img{
	margin: 0 auto;
}
.air_hikari_01{
	padding: 40px;
}
.air_hikari_01 h2{
	font-size: 36px;
}
.l-inner .bg-white.air_hikari_coution{
	border-radius: 0;
	padding: 10px 40px;
}
.air_hikari .box-yellow{
	background: #fff1b2;
	border: solid 2px #ffd200;
	padding: 20px;
	max-width: 760px;
	margin: 0 auto;
	color: #333;
}
.air_ttl{
	background: #1d95d9;
	padding: 30px 30px 25px;
	color: #fff;
	border-radius: 30px 30px 0 0;
}
.hikari_ttl{
	background: #ffd200;
	padding: 30px 30px 25px;
	border-radius: 30px 30px 0 0;
}
.section-hikari .yen{
	font-size: 30px;
	letter-spacing: 0.05em;
}
.section-hikari .yen_kara{
	padding: 0 5px;
}
@media (max-width: 768px){
	.air_hikari_ttl{
		font-size: 30px;
	}
	.air_hikari_01{
		padding: 30px 0 10px;
	}
	.air_hikari_01 h2{
		font-size: 26px;
	}
	.l-inner .bg-white.air_hikari_coution{
		padding: 10px;
	}
	.air_ttl,
	.hikari_ttl{
		padding: 20px 15px 10px;
	}
	.air_01_img,
	.hikari_01_img,
	.hikari_01_img_txt{
		max-width: 400px;
		margin: 0 auto;
	}
	.section-hikari .yen{
		font-size: 24px;
	}
}

/**** キャンペーン ****/
.l-inner.l-inner_cp{
	max-width: 950px;
}

/**** お申し込みの流れ ****/
.application{
	background: #c0dbf3;
}
.application .border-red{
	border: solid 2px #ff0033;
	border-radius: 8px;
	background: #FFF;
	padding: 10px 15px;
	position: relative;
	z-index: 1;
}
.application .red_btn{
	width: 100%;
	height: 100%;
}
.application .red_btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	background: #ff0033;
	border-radius: 4px;
	color: #fff;
	text-decoration: none;
	padding: 6px 4px;
	width: 100%;
	height: 100%;
}
.application .application-col-2 li{
	width: 48.5%;
}
.application .application-col-2 li+li{
	margin-left: 3%;
}
.application .application-col-3 li{
	width: 32.5%;
}
.application .application-col-3 li+li{
	margin-left: 1.25%;
}
.application .application-col-2-2 li{
	width: 49.25%;
}
.application .application-col-2-2 li+li{
	margin-left: 1.5%;
}
.application .box.box2{
	background: #ffe9d8;
	border: 1px solid #ffe9d8;
	padding: 15px 20px 20px;
	border-radius: 4px;
}
.application .box.box3{
	background: #eee;
	border: 1px solid #eee;
	border-radius: 4px;
}
.application .tel_num{
	color: #4472c4;
	font-size: 28px;
}
.application .tel_call a{
	pointer-events: none;
	text-decoration: none;
}

/**** 矢印 ****/
.application .arrow{	
	position: relative;
}
.application .arrow:before{
	position: absolute;
	content: "";
	width: 35px;
	height: calc(100% - 23px);
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background: #80a5d9;
}
.application .arrow:after{
	position: absolute;
	content: "";
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
    border-top: 24px solid #80a5d9;
    border-right: 30px solid transparent;
    border-left: 30px solid transparent;
}

@media (max-width: 768px){
	.application .border-red{
		border: solid 1px #ff0033;
		padding: 10px;
	}
	.application .application-col-2 li,
	.application .application-col-3 li,
	.application .application-col-2-2 li{
		width: 100%;
	}
	.application .application-col-2 li+li,
	.application .application-col-3 li+li,
	.application .application-col-2-2 li+li{
		margin: 10px auto 0;
	}
	.application .tel_call a{
		pointer-events: auto;
		text-decoration: underline;
	}
	div#contents_a p.btn01 a,
	div#contents_b p.btn01 a,
	div#contents_b ul.btn01 li a{
		font-size: 16px;
		padding: 10px;
		width: 100%;
		text-align: center;
	}
	.refinemodal .bg{
		padding: 15px;
		width: 90%;
		margin-left: 5%;
		margin-right: 5%;
	}
	div#contents_a p.btn02 a,
	div#contents_b p.btn02 a{
		width: 100%;
		font-size: 14px;
		padding:10px 20px 10px 20px
	}
	div#contents_a p.title02,
	div#contents_b p.title02{
		font-size: 18px;
		margin: 0 -15px 15px -15px;
	}
	div#contents_a p.title03,
	div#contents_b p.title03{
		font-size: 18px;
	}
	div#contents_b div.bord p,
	div#contents_b div.bord p a{
		font-size: 12px;
	}
	div#contents_b p.text01 strong,
	div#contents_b p.text01 strong a,
	div#contents_b p.text01 strong.disnone{
		display: inline-block;
		font-size: 20px;
	}
}

/**** CountDown ****/
.slide_area .slide_box p{
	padding-right: 15px;
}
.slide_area .slide_box p span{
	display: inline-block;
	text-align: center;
}
.slide_area .slide_box p span{
	font-weight: bold;
	font-size: 18px;
	line-height: 1.4;
}
.slide_area .slide_box p span em{
	font-style: normal;
	color: #ff6766;
	font-size: 43px;
	font-weight: bold;
}
@media (max-width: 768px){
	.slide_area .slide_box p span{
		font-size: 12px;
	}
	.slide_area .slide_box p span em{
		font-size: 22px;
	}
}


/**** 非表示処理 ****/
.timesale_bnr,
.timesale_cd{
	display: none;
}


/* 20250929 */
@media (max-width: 768px){
	.text-sp-left	{
		text-align: left !important;
	}
}

/* 20250929 */