@charset "utf-8";

body {
	color: #555;
}

a.ar_link_blank_b {
	display: inline-block;
	background: url(/hdd/shop/img/icon_targetblank.png) no-repeat 0px 5px;
	padding-left: 17px;
	color: #e7198c;
	text-decoration: underline;
	word-break: break-all;
}
.hikari_osusume_3col > div > img {
	width:100%;
}
.lp_head_text{
	line-height: 1.4;
}
.m0{margin: 0;}
.mb10{margin-bottom: 10px;}
@media screen and (min-width: 641px) {
	.mt80_pc{margin-top: 80px;}
}

.lp_head_text li{
	text-indent: -1em;
	padding-left: 1em;
}
.color_pink{
	color: #e61586;
}
.color_blue{
	color: #3d65af;
}
.ribbon_title{
	height: auto;
}
.ribbon_title .ribbon_text span{
	font-weight: bold;
	/*text-shadow:
		0px 1px 0px #fff,
		0px 0px 0px #fff,
		0px 0px 0px #fff,
		0px 0px 0px #fff,
		0px 0px 0px #fff,
		-1px 0px 0px #fff,
		0px 0px 0px #fff,
		0px -1px 0px #fff;*/
}
.hikari_contents_1{
	background-color: #FFD8EC;
	background-image: none;
}


/*////////////*/
/*//// PC ////*/
/*////////////*/
@media screen and (min-width: 641px) {
	/*//// トップイメージ ////*/
	.imh_lp_main {
		margin-top: 85px;
		background: url(/campaign/imh/img/hikari_lp_top_202208.png) no-repeat;
		background-repeat: no-repeat;
		height: 360px;
		background-position: bottom center;
		position: relative;
	}
	.lp_detail_btn_area {
		max-width: 920px;
		margin: 0 auto;
		height: 100%;
		position: relative;
		/* padding-top: 264px;
		padding-right: 260px;
		text-align: right; */
	}
	.lp_detail_btn_area p{
		position: absolute;
		bottom: 15px;
		right: 36%;
	}
	a:link.lp_detail_btn {
		position: relative;
    padding: 5px 20px 5px 30px;
		border-radius: 5px;
		background-color: #fff;
		color: #db0080;
		font-weight: bold;
		font-size: 18px;
		box-shadow: 0px 2px 1px rgba(0, 0, 0, 20%);
	}
	a:link.lp_detail_btn::after {
    position: absolute;
    top: 50%;
    left: 16px;
    transform: translate(0, -60%) rotate(135deg);
    width: 5px;
    height: 5px;
    border-top: solid 2px #e7198c;
    border-right: solid 2px #e7198c;
    content: '';
	}
	/* 白の塗の下向き三角 */
	/* a:link.lp_detail_btn::after {
		position: absolute;
		bottom: 5px;
		left: 50%;
		transform: translate(-50%, 0);
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 8px 6px 0 6px;
		border-color: #fff transparent transparent transparent;
		content: '';
	} */
	a:hover.lp_detail_btn {
		text-decoration: none;
		opacity: 0.8;
	}
	.ribbon_title .ribbon_text span{
		font-weight: bold;
		/*text-shadow: 
			1px 1px 0px #fff,
			-1px -1px 0px #fff,
			-1px 1px 0px #fff,
			1px -1px 0px #fff,
			1px 0px 0px #fff,
			-1px 0px 0px #fff,
			0px 1px 0px #fff,
			0px -1px 0px #fff;*/
	}
	.lp_head_text{
		background-color: #E39C2C;
		padding: 10px 0;
	}
	.lp_head_text li{
		width: 870px;
    margin: 0 auto;
		color: #FFF;
	}
	.imh_main_vbnr .imh_top_anno{
		bottom: 0 !important;
		left: 0;
	}
	/*//// IIJmioひかりとは ////*/
	.hikari_osusume_area {
		padding:50px 0 1px;
		background-color: #f2f2f2;
	}
	.hikari_osusume_area h2 {
		text-align: center;
		font-size: 28px;
		line-height: 1.4em;
		letter-spacing: 0.1em;
		margin: 1.5em 0 1em;
	}
	.hikari_osusume_header {
		background: url(/campaign/imh/img/hikari_osusume_header.png) no-repeat;
		height: 156px;
		box-sizing: border-box;
		padding-top: 80px;
		padding-left: 34px;
	}
	.hikari_osusume_headertext {
		font-size: 16px;
		font-weight: bold;
		line-height: 1.6em;
	}
	.hikari_osusume_3col {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.hikari_osusume_3col > div {
		flex-basis: calc(100% / 2 - 10px);
		margin-bottom: 20px;
		box-sizing: border-box;
		padding: 20px;
		border: 4px solid #e5d4ba;
		background: #fff;
	}
  .hikari_osusume_3col > div:nth-child(2n+1):nth-last-child(-n+2),
  .hikari_osusume_3col > div:nth-child(2n+1):nth-last-child(-n+2) ~ div {
    margin-bottom: 0;
  }

	.hikari_osusume_3col > div > p {
		margin-bottom: 1em;
		text-align: center;
		color: #e75296;
		font-size: 20px;
		font-weight: bold;
		line-height: 1.4em;
	}
	.bnr-area {
		margin: 40px auto;
		text-align: center;
	}
	.bnr-area p.osusume_catch {
		font-size: 20px;
		letter-spacing: 0.1em;
		margin: 0 0 1em;
	}

	/*//// 特典 ////*/

	.ribbon_title::before {
		top: 50px;
		border: 46px solid #BF1F6E;
		border-right-width: 35px;
		border-left-width: 20px;
		border-left-color: transparent;
	}
	.ribbon_title .ribbon_text {
		background: #E62E89;
		line-height: 1.4;
		font-size: 50px;
		padding: 1rem 0;
    	line-height: 1;
	}
	.ribbon_title .ribbon_text span.hikari_tokuten_2208 {
		font-size: 30px;
	}
	.ribbon_title::after  {
		top: 50px;
		border: 46px solid #BF1F6E;
		border-left-width: 35px;
		border-right-width: 20px;
		border-right-color: transparent;
	}
	.imh_tokuten_hulu {
		position: relative;
	}
	.imh_btn_hulu {
		position: absolute;
		width: 560px;
		top:240px;
		left:50%;
		transform: translate(-50%, 0);
	}
	a:link.imh_btn_hulu span {
		position: relative;
		display: inline-block;
		box-sizing: border-box;
		width: 100%;
		padding: 25px 0;
		border-radius: 5px;
		background-color: #3ce132;
		text-align: center;
		color: #000;
		font-size: 1.4rem;
		font-weight: bold;
	}
	a:link.imh_btn_hulu span::before {
		position: absolute;
		top: 50%;
		left: 20px;
		transform: translate(0, -50%) rotate(45deg);
		width: 10px;
		height: 10px;
		border-top: solid 3px #000;
		border-right: solid 3px #000;
		content: '';
	}
	a:hover.imh_btn_hulu {
		color: #000;
		text-decoration: none;
		opacity: 0.8;
	}

	/*//// 概要 ////*/
	.inc_gaiyo-body {
		padding-top: 0;
	}

	/*//// ページ下部　お問い合わせ ////*/
	.bottom_contact {
    width: 100%;
	}
	.bottom_contact_inner {
    max-width: 850px;
    width: 85%;
    margin: 0 auto;
    padding: 42px 0 43px 0;
	}
	.bottom_contact_title {
    font-size: 19px;
    line-height: 28px;
    padding-bottom: 10px;
	}
	.bottom_contact_txt1 {
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 13px;
    word-break: break-all;
	}
	.contact_table_right {
    padding-left: 1em;
	}
}

/*////////////*/
/*//// SP ////*/
/*////////////*/
@media screen and (max-width: 640px) {
	/*//// ナビゲーション ////*/
	.nav_select td:nth-child(1) {
		width: 16%;
	  }
	.nav_select td:nth-child(2){
		width: 36%;
	  }
	/*//// トップイメージ ////*/
	.fl_head_bnr{
		margin-bottom: 10px;
		/* background-color: #fade6c; */
	}
	/*.imh_lp_main {
		background-color: rgba(251, 113, 38, 1);
		background-image: repeating-linear-gradient(135deg, transparent, transparent 3px, rgba(250, 102, 34, 1) 3px, rgba(250, 102, 34, 1) 6px );
		padding-top: 0;
	}*/
	.lp_head_text{
		color: #fff;
		padding: 0 15px 15px;
	}
	.imh_mainimg_tokuten {
		position: relative;
		display: flex;
		justify-content: space-between;
		width: 94%;
		margin: 0 auto;
	}
	.imh_mainimg_tokuten img.sakura {
		position: absolute;
		top:-34%;
		left: -2%;
		width: 16%;
		height: auto;
	}
	.lp_detail_btn_area {
		width: 94%;
		box-sizing: border-box;
		margin: 5px auto 0;
		padding: 10px;
		background-color: #f9bcd7;
	}
	.lp_detail_btn_area p {
		text-align: center;
		color: #db0080;
		font-size: 4vw;
		font-weight: bold;
	}
	a:link.lp_detail_btn span {
		position: relative;
		display: inline-block;
		box-sizing: border-box;
		width: 100%;
		margin: 10px auto 0;
		padding: 10px;
		border-radius: 5px;
		background-color: #fff;
		text-align: center;
		color: #e7198c;
		font-size: 5vw;
		font-weight: bold;
	}
	a:link.lp_detail_btn span::before {
		position: absolute;
		top: 50%;
		left: 16px;
		transform: translate(0, -60%) rotate(135deg);
		width: 10px;
		height: 10px;
		border-top: solid 2px #e7198c;
		border-right: solid 2px #e7198c;
		content: '';
	}
	a:hover.lp_detail_btn {
		text-decoration: none;
		opacity: 0.8;
	}

	/*//// IIJmioひかりとは ////*/
	.hikari_osusume_area {
		padding:25px 0 1px;
		background-color: #f2f2f2;
	}
	.hikari_osusume_area h2 {
		text-align: center;
		font-size: 5vw;
		line-height: 1.4em;
		margin: 1.5em 0 1em;
	}
	.hikari_osusume_header {
		position: relative;
	}
	.hikari_osusume_headertext {
		position: absolute;
		top:36%;
		right:5%;
		left:5%;
		font-weight: bold;
		line-height: 1.6em;
	}
	.hikari_osusume_3col > div {
		margin-bottom: 10px;
		padding: 20px;
		border: 4px solid #e5d4ba;
		background: #fff;
	}
	.hikari_osusume_3col > div > p {
		margin-bottom: 1em;
		text-align: center;
		color: #e75296;
		font-size: 5vw;
		font-weight: bold;
		line-height: 1.4em;
	}
	.bnr-area {
		margin: 20px auto;
		text-align: center;
	}
	.bnr-area p.osusume_catch {
		font-size: 4vw;
		margin: 0 0 0.4em;
	}

	/*//// 特典 ////*/
	.ribbon_area {
		margin-bottom: 2em;
	}
	.ribbon_title::before {
		border: 5.5vw solid #e75296;
		border-right-width: 30px;
		border-left-width: 14px;
		border-left-color: transparent;
		top: 25px;
		left: -25px;
	}
	.ribbon_title .ribbon_text {
		background: #E62E89;
		height: calc(60vw / 3.3 * 0.75);
		font-size: 5.5vw;
		width: 85vw;
		line-height: 1.0;
	}
	.ribbon_title .ribbon_text span.hikari_tokuten_2208 {
		font-size: 20px;
		font-weight: normal;
	}
	.ribbon_title::after  {
		border: 5.5vw solid #e75296;
		border-left-width: 30px;
		border-right-width: 14px;
		border-right-color: transparent;
		top: 25px;
		right: -25px;
	}
	.imh_tokuten_hulu {
		position: relative;
	}
	.imh_btn_hulu {
		position: absolute;
		width: 90%;
		bottom:5%;
		left:50%;
		transform: translate(-50%, 0);
	}
	a:link.imh_btn_hulu span {
		position: relative;
		display: inline-block;
		box-sizing: border-box;
		width: 100%;
		padding: 5vw 0;
		border-radius: 5px;
		background-color: #3ce132;
		text-align: center;
		color: #000;
		font-size: 4vw;
		font-weight: bold;
	}
	a:link.imh_btn_hulu span::before {
		position: absolute;
		top: 50%;
		left: 0.5em;
		transform: translate(0, -50%) rotate(45deg);
		width: 10px;
		height: 10px;
		border-top: solid 3px #000;
		border-right: solid 3px #000;
		content: '';
	}
	a:hover.imh_btn_hulu {
		color: #000;
		text-decoration: none;
		opacity: 0.8;
	}

	/*//// ページ下部　お問い合わせ ////*/
	.bottom_contact {
		width: 100%;
	}
	.bottom_contact_inner {
    max-width: 850px;
    width: 85%;
    margin: 0 auto;
    padding: 5% 0% 5% 0%;
	}
	.bottom_contact_title {
    font-size: 20px;
    line-height: 28px;
    padding-bottom: 15px;
	}
	.bottom_contact_txt1 {
    font-size: 15px;
    line-height: 20px;
    margin-bottom: 17px;
    word-break: break-all;
	}
	.contact_table_left {
    display: block;
	}
	.contact_table_right {
    padding-top: 5px;
    display: block;
	}
}
.imh_container_cp_anno {
	margin-top: 5px;
	font-size: 1em;
	line-height: 1.2;
}

/*////////////*/
/*//// SP ////*/
/*////////////*/
@media screen and (max-width: 640px) {
	body header .imh_lp_main {
		background-image: none;
		position: relative;
		margin-top: 28%;
	}
	
	.fl_head_bnr {
		position: absolute;
		bottom: 11%;
		right: 0;
		width: 100%;
		text-align: center;
	}
	.fl_head_bnr img{
		width: 90%;
	}
	.lp_head_text {
		background-color: #E39C2C;
		padding: 10px;
	}
}
@media screen and (max-width: 425px) {
	.fl_head_bnr {
		bottom: 15%;
	}
	.ribbon_title .ribbon_text span.hikari_tokuten_2208 {
		font-size: 15px;
	}
	.ribbon_title::before {
		top: 17px;
	}
	.ribbon_title::after {
		top: 17px;
	}
}
@media screen and (max-width: 320px) {
	.fl_head_bnr {
		bottom: 23%;
	}
}