@charset "utf-8";

body{
	background: #ffffff;
    box-sizing: border-box;
    font-family: -apple-system, BlinkMacSystemFont, GeneralFonts, Hiragino Kaku Gothic ProN, Yu Gothic Medium, YuGothic-Medium, 游ゴシック Medium, YuGothic, 游ゴシック, Meiryo, Helvetica Neue, Segoe UI, sans-serif;
}
clearfix::after{
	content:"";
	display:block;
	clear:both;
}
p#gotoTop{bottom:119px;}

.relative{
	position:relative;
}
.center{
	text-align:center;
}
.left{
	text-align:left;
}
.right{
	text-align:right;
}
.bold{
	font-weight:700;
}
.red{
	color:red;
}
.red a,
.tx_notice a,
#notice a{
	text-decoration: underline;
	color:#3a1faf;
    word-break: break-all;
    text-indent: 0;
}
.red a:hover,
.tx_notice a:hover,
#notice a:hover{
	text-decoration: none;
}
.btn_t_arrow{
    position: relative;
    font-weight: bold;
    font-size: 2.0rem;
    color: #b60081;
    padding: 0 40px 7px;
}
.btn_t_arrow span{
    border-bottom: solid currentColor 1px;
}
.btn_t_arrow:hover span{
    border-bottom: none;
}
.btn_t_arrow:after{
    position: absolute;
    content: "";
    width: 26px;
    height: 26px;
    background-image: url("../img/btn_top.png");
    right: 0;
    background-size: 26px 26px;
    background-repeat: no-repeat;
}
.text_link a{
    position: relative;
    font-weight: bold;
    font-size: 1.6rem;
    color: #b60081;
    padding: 2px 5px 1px;
    transition: .3s;
}
.text_link a:after,
.text_link a:before{
    position: absolute;
    content: "";
    width: 0;
    height: 2px;
    background-color: #b60081;
    transition: .3s;
}
.text_link a:before{
    top: 0;
    left: 0;
}
.text_link a:after{
    bottom: 0;
    right: 0;
}
.text_link a:hover:after,
.text_link a:hover:before{
    width: 100%;
}
a{
	text-decoration:none;
}
a:hover{
	opacity: 0.7;
}
.yukiimg{
	margin-top: 20px;
}
/* color */
.bk_M_color{
    background-color: #ffe5eb;/* メインカラー背景 */
}
.bk_S_color{
    background: #ffd7df;/* サブカラー背景 */
}

.bg_Dpink_pink {
    background: linear-gradient(10deg, #ffe5eb 0%, #ffe5eb 50%, #ffd7df 50%, #ffd7df 100%);
}
.bg_top_parts{
    position: relative;
    background-color: #ffe5eb;/*下と同一色*/
}
.bg_top_parts:before{
    display: inline-block;
    content: "";
    position: absolute;
    width: 100%;
    height: 66px;
    mask-image:url("../img/bg_mask01.png");
    mask-repeat: no-repeat;
    -webkit-mask-size: cover;
    mask-size: cover;
    background-color: #ffe5eb;/*上と同一色*/
    mask-position: center top;
    top:-66px;    
}
.bg_fv{
    background: url("../img/spr2025_bg_parts.png"),linear-gradient(10deg, #bbf3ff 0%, #24c5f4 100%);
    background-position: top,center;
    background-repeat: no-repeat;
    background-size: 100% auto;
}
.bg_cherryblossom{
    background: url("../img/bg_01.png"),linear-gradient(10deg, #bbf3ff 0%, #8ae8fb 100%);
    background-position: top,center;
    background-repeat: no-repeat;
    background-size: 100% auto;
}
@media screen and (max-width: 780px) {
.bk_S_color {

}
.bg_top_parts:before{
    display: inline-block;
    content: "";
    position: absolute;
    width: 100%;
    height: 30px;
    mask-image:url("../img/bg_mask01.png");
    mask-repeat: no-repeat;
    -webkit-mask-size: cover;
    mask-size: cover;
    background-color: #ffe5eb;/*上と同一色*/
    mask-position: center top;
    top:-30px;    
}
}
section#compare { 
	background: linear-gradient(10deg, #ffe5eb 0%, #ffe5eb 50%, #ffd7df 50%, #ffd7df 100%);
    padding: 35px 0;
}
.search_area h2{
	color: #00a2e5;
}
.search_area h2 span{/* h2装飾 */
	border-bottom: 3px dashed #a7e5ff;
}
.topix section h4,/* h4テキスト色 */
.tx_subcolor{/* テキストサブカラー */
	color:#00a2e5;
}
.topix section h4 span{/* h4装飾 */
    background: linear-gradient(transparent 50%, #fff9d5 50%);
}
.maker{/* マーカー背景色 */
	background: linear-gradient(transparent 0%, #fff9d5 0%);
}
/*************************************************
PC
**************************************************/
.only_pc{display: block!important;}
.only_sp{display: none!important;}
.mb20{
	margin-bottom:20px;
}
.mb30{
	margin-bottom:30px;
}
.mb40{
	margin-bottom:40px;
}
.mb50{
	margin-bottom:50px;
}
.mb60{
	margin-bottom:60px;
}
.mb80{
	margin-bottom:80px;
}
.mb100{
	margin-bottom:100px;
}
.mt30{
	margin-top:30px;
}
.mt50{
	margin-top:50px;
}
.pd_tb40{
    padding: 40px 0;
}
.container{
	width:80%;
	margin:0 auto;
}
#contents_wrapper{
    font-size: 1.6rem;
}
.tx_notice{
    text-align: center;
    margin-top: 10px;
}
/* MV */
#mv{
	/*background-image:url("../img/spr2025_bg.jpg"); MV背景画像 
	background-size: cover;
    background-position: top,center;*/
}
#mv .mv_image{
	width: 900px;
	margin: 0 auto;
    padding: 25px 0 20px;
}
/* contents */
.daytime{
	text-align: center;
	background: #fb2b53;/* 日付帯背景色 */
	font-size: 2.2rem;
	color:#fff;
	font-weight: bold;
    padding: 8px 0 6px;
}

.daytime span{
	/*background: #ff0300;*/
    background: #fff;
	color: #ff0300;
	font-weight: bold;
	border-radius: 5px;
	padding: 2px 5px 0;
    margin-right: 10px;
}

#present{
	padding:10px 0;
	width: 950px;
	margin: 0 auto;
}
#present .present_wapper{
	border-radius:20px;
	padding:20px;
	background-color:#fff;
	position:relative;
}
#present .present_wapp{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-top: 0;
}
#present .present_wapp p{
	font-size:3.2rem;
	font-weight:700;
	text-align:left;
	color: #000;
	padding-top:70px; 
	padding-bottom: 16px;
	
	padding-left: 0;
}

#present .present_wapp .pre_note{
	font-size:1.4rem!important;
	font-weight: normal!important;
	padding-top: 0!important;
	line-height: 180%!important;
}

#present .present_wapp p span{
	color: #f53c7f;
}

#present .present_wapp img{
	width: 30%;
}

#present .present_red li{
	color:red;
	text-indent:-1em;
	padding-left:1em;
}
#present .present_red li:before{
	content:"※";
}

#present .present_red a{
	color: #2587e2;
	text-decoration: underline;
}

#present .present_red a:hover{
	color: #fff;
	text-decoration: none;
	background: red;
}

#present .circle{
	position:absolute;
	top: 30px;
    left: -4px;
	width: 40%;
}
.banner_box{
    padding: 30px 10px;
    text-align: center;
}
.banner_box a{
    display: inline-block;
}
h2{
 font-size: 3.0rem;
}
.w950{
	width:950px;
	margin:0 auto;
}
.search_area .w950{
	background:#ffffff;
	padding:40px 0 0 0;
	border-radius: 8px;
}
/* contents */

#contents_wrapper .modal_area{
	margin:0 0 150px 30px;
}
#contents_wrapper .btn01{/* 光らないボタン */
	display: block;
    width: 400px;
    font-weight: bold;
    margin: 35px auto 0;
    padding:12px 0 10px;
    text-decoration:none;
    color:#ffffff;
    background-color: #005a9f;/* ボタン背景色 */
    border-radius: 9999px;
}
.btn02{/* 光るボタン */
    display: block;
    border: 3px solid #005a9f;
    width: 400px;
    height: 100%;
    position: relative;
    font-weight: bold;
    margin: 35px auto 0;
    padding:12px 0 10px;
    text-decoration:none;
    color:#ffffff;
    background-color: #005a9f;/* ボタン背景色 */
    border-radius: 9999px;
    overflow: hidden;
    transition: 300ms;
}
.btn02::before {
    content: '';
    position: absolute;
    display: inline-block;
    top:-180px;
    left:0;
    width:30px;
    height: 100%;
    background-color: #5bacea;
    transition: 300ms;
    animation: btn02 5.0s ease-in-out infinite;
}
@-webkit-keyframes btn02{
    0%{
        -webkit-transform:scale(0) rotate(45deg);
        opacity: 0;
    }
    80%{
        -webkit-transform:scale(0) rotate(45deg);
        opacity: 0.5;
    }
    81%{
        -webkit-transform:scale(4) rotate(45deg);
        opacity: 1;
    }
    100%{
        -webkit-transform:scale(50) rotate(45deg);
        opacity: 0;
    }
    }
.arrouw_b{
        position: relative;
    }
    .arrow_b:after {
	font-family: 'FontAwesome';
    font-weight: 100;
	content: '\f078';
    padding: 0 0 2px 15px;
}
.lead_p{
    font-size: 2.4rem;
    font-weight: 700;
}
.ranking_ic,
.category_ic,
.topic_ic{
    position: relative;
}
.ranking_ic:before,
.ranking_ic:after{
    position: absolute;
    display: inline-block;
    content: "";
    background-image: url("../img/cp_ic01.png");
    background-size: 36px,24px;
    width: 36px;
    height: 24px;
    background-repeat: no-repeat;
}
.ranking_ic:before{
    bottom: 12px;
    left: -45px;
}
.ranking_ic:after{
    bottom: 12px;
    right: -45px;
}
.category_ic:before,
.category_ic:after{
    position: absolute;
    display: inline-block;
    content: "";
    background-image: url("../img/cp_ic03.png");
    background-size: 32px,32px;
    width: 32px;
    height: 32px;
    background-repeat: no-repeat;
}
.topic_ic:before,
.topic_ic:after{
    position: absolute;
    display: inline-block;
    content: "";
    background-image: url("../img/cp_ic02.png");
    background-size: 32px,32px;
    width: 32px;
    height: 32px;
    background-repeat: no-repeat;
}
.category_ic:before,
.topic_ic:before{
    bottom: 6px;
    left: -45px;
}
.category_ic:after,
.topic_ic:after{
    bottom: 6px;
    right: -45px;
}
.cpn_img{
	margin: 0 auto;
	width: 60%;
}
.cpn_img02{
	margin: 0 auto;
	width: 30%;
}


/* アコーディオン */
.ascdn {
	margin: 0;
	padding: 0;
	word-break: break-all;
}
.ascdn:nth-child(3n) {
	margin: 0 0 15px;
}
.btnset {
	/*width: 180px;*/
	margin: 0 auto;
	padding: 6px 0 10px;
	text-align:center;
}
.btnset .button {
	font-size:1.8rem;
	color: #006fb0;
    padding: 2px 0;
	text-decoration: none;
	text-align:center;
	/*width: 180px;*/
}

.boxopen:after {
	font-family: 'FontAwesome';
	content: '\f078'/*url(../img/topix_icon_next01.png)*/;
	padding: 0 10px;
}
.boxclose:after {
	font-family: 'FontAwesome';
	content: '\f077'/*url(../img/topix_icon_next02.png)*/;
	padding: 0 10px;
}
.ttl-contents-3{
	border-bottom: 2px dotted #444;
	padding: 10px 0 0 0;
	margin-bottom: 6px;
	font-size: 1.2em;
	color:#444;
}

.continue_btn{
	text-align: right;
	font-size: 1.8rem;
	margin: 0;
	padding:20px 0 0 0;
	line-height: 0;
}

.continue_btn a {
  position: relative;
  z-index: 1;
  padding: 0 10px;
	color: #068fcb;
}
.continue_btn a::before {
  background: #068fcb;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
  z-index: -1;
}
.continue_btn a:hover {
  color: #fff;
	text-decoration: none;
}
.continue_btn a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.topix{
	background: #fff;
	border-radius: 8px;
	width: 950px;
	padding: 20px 0;
	margin: 0 auto;
}
.ttl_s{
	color:#068fcb;
	text-align: center;
	font-size: 2.4rem;
	font-weight: bold;
	margin-top: 20px;
}
.topix h2{
	text-align: center;
	padding: 10px 0;
	margin-bottom: 20px;
}

.topix section{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width:90%;
	border-radius: 4px;
	border:1px solid #7d7d7d;
	margin: 20px auto;
	padding:20px;
}

.topix section .topix_img{
	width: 36%;
}

.topix section .topix_txt{
	width: 62%;
}

.topix section h4{
	font-size: 2.2rem;
	margin-bottom: 10px;
	text-align: left;
}
.left_b span{
	border-bottom: 3px solid #08b6e8;
}
.topix section p{
	margin-top: 10px;
	line-height: 180%;
}
.topix .green{
	text-align: right;
	font-size: 1.8rem;
	margin: 0 0 40px 0;
	padding:20px 0 0 0;
	line-height: 0;
}
.topix .green a {
transition: 0.5s!important;
	position: relative;
  z-index: 1;
  padding: 0 10px;
	color: #28c0b2;
	border: 1px solid #28c0b2;
	border-radius: 5px;
}

.topix .green a::before {
  background: #28c0b2;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
  z-index: -1;
}
.topix .green a:hover {
  color: #fff;
	text-decoration: none;
	border-radius: 4px;
}
.topix .green a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

.topix .pink{
	text-align: right;
	font-size: 1.8rem;
	margin: 0 0 40px 0;
	padding:20px 0 0 0;
	line-height: 0;
}

.topix .pink a {
	    transition: 0.5s!important;
	position: relative;
  z-index: 1;
  padding: 0 10px;
	color: #f43c7f;
	border: 1px solid #f43c7f;
	border-radius: 4px;
}

.topix .pink a::before {
  background: #f43c7f;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
  z-index: -1;
}
.topix .pink a:hover {
  color: #fff;
	text-decoration: none;
	border-radius: 4px;
}
.topix .pink a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

.topix .orange{
	text-align: right;
	font-size: 1.8rem;
	margin: 0 0 40px 0;
	padding:20px 0 0 0;
	line-height: 0;
}

.topix .orange a {
	    transition: 0.5s!important;
	position: relative;
  z-index: 1;
  padding: 0 10px;
	color: #f57932;
	border: 1px solid #f57932;
	border-radius: 5px;
}

.topix .orange a::before {
  background: #f57932;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
  z-index: -1;
}
.topix .orange a:hover {
  color: #fff;
	text-decoration: none;
	border-radius: 4px;
}
.topix .orange a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

.topix .blue{
	text-align: right;
	font-size: 1.8rem;
	margin: 0 0 40px 0;
	padding:20px 0 0 0;
	line-height: 0;
}

.topix .blue a {
	position: relative;
	    transition: 0.5s!important;
  z-index: 1;
  padding: 0 10px;
	color: #1586aa;
	border: 1px solid #1586aa;
	border-radius: 4px;
}

.topix .blue a::before {
  background: #1586aa;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
  z-index: -1;
}
.topix .blue a:hover {
  color: #fff;
	text-decoration: none;
	border-radius: 4px;
}
.topix .blue a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

/*おすすめ*/
.resolution{
    padding: 0;
    width: 84%;
    margin: 0 auto;
    border-radius: 8px;
}

.resolution ul{
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
	padding: 20px;
	width: 90%;
	margin: 0 auto;
}

.resolution ul li{
    position: relative;
    padding: 0.75em;
	list-style: none;
	width: 44%;
	font-weight: bold;
	font-size: 2.0rem;
}
.resolution ul li:before,.resolution ul li:after{ 
    content:'';
    width: 20px;
    height: 30px;
    position: absolute;
    display: inline-block;
}
.resolution ul li:before{
    border-left: solid 2px #5767bf;
    border-top: solid 2px #5767bf;
    top:0;
    left: 0;
}
.resolution ul li:after{
    border-right: solid 2px #5767bf;
    border-bottom: solid 2px #5767bf;
    bottom:0;
    right: 0;
}

/* notice */
#notice{
	padding:40px 0 60px;
    font-size: 1.5rem;
    text-align: left;
}
#notice .wrapper{
    box-sizing: border-box;
	background-color:#fff;
	padding:30px 30px 50px;
	width:950px;
	margin:0 auto;
	border-radius: 8px;
}
#notice h2{
    font-size: 2.4rem;
    text-align: center;
    
}
#notice h3{
    font-weight: 700;
    margin:25px 0 5px;
    font-size: 1.6rem;
    text-align: left;
}
#notice h4{
    font-weight: 700;
    margin-top: 15px;
}
#notice .wrapper ul li{
	text-indent:-1em;
	padding-left:1em;
}
#notice .wrapper ul li.list_mark:before{
	content:"・";
}


/* btn */
.btn_list{
	/*position:relative;*/
	padding:30px 0;
	margin: 0 auto;
}
.btn_list ul{
	width:100%;
	margin:10px auto;
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
}
.btn_list ul.btncenter{
	display:flex;
	justify-content: center;
	flex-wrap:wrap;
}

.btn_list ul li{
	margin:0 0 26px;
	width: 48%;
}

.btn_list ul li a{
  transition: .2s!important;
}

.btn_list ul li.green a,.btn_list ul li.pink a,.btn_list ul li.orange a,.btn_list ul li.blue a,ul li.sky a{
	border-radius:10px;
	font-size:2.0rem;
	text-align:center;
	color:#fff;
    font-weight: bold;
	text-decoration:none;
	position:relative;
	display:block;
	
}
.btn_list ul li.sky a{
	background-color:#25bfff;
	color:#fff;
	padding:20px 0/*140px*/;
	box-shadow: 0 10px 0 #3c86ad;
    border: 3px solid #25bfff;
}
.btn_list ul li.green a{
	background-color:#06b380;
	color:#fff;
	padding:20px 0/*140px*/;
	box-shadow: 0 10px 0 #157450;
    border: 3px solid #06b380;
}
.btn_list ul li.pink a{
	background-color:#ff3e70;
	padding:20px 0/*140px*/;
	box-shadow: 0 10px 0 #ac284b;
    border: 3px solid #ff3e70;
}
.btn_list ul li.orange a{
	background-color:#ff8a18;
	padding:20px 0/*100px*/;
	box-shadow: 0 10px 0 #bd5007;
    border: 3px solid #ff8a18;
}
.btn_list ul li.blue a{
	background-color:#1586aa;
	padding:20px 0/*120px*/;
	box-shadow: 0 10px 0 #155980;
    border: 3px solid #1586aa;
}
.btn_list ul li.green a:after,.btn_list ul li.pink a:after,.btn_list ul li.orange a:after,.btn_list ul li.blue a:after,ul li.sky a:after{
	font-family: 'FontAwesome';
	content: '\f138';
	position: absolute;
	top:26%;
	right: 10px;
}
/*hover*/
.btn_list ul li.sky a:hover{
	background-color:#ffffff;
	color:#25bfff;
    border: 3px solid #25bfff;
}
.btn_list ul li.green a:hover{
	background-color:#ffffff;
	color:#00c48a;
    border: 3px solid #00c48a;
}
.btn_list ul li.pink a:hover{
	background-color:#ffffff;
	color:#ff3e70;
    border: 3px solid #ff3e70;
}
.btn_list ul li.orange a:hover{
	background-color:#ffffff;
	color:#ff8a18;
    border: 3px solid #ff8a18;
}
.btn_list ul li.blue a:hover{
	background-color:#ffffff;
	color:#1586aa;
    border: 3px solid #1586aa;
}

.btn_list ul li a:hover{
	transform: translateY(10px);
  box-shadow: none;
    opacity:1.0;
}
footer{
	margin-top:-32px;
}
/* modal */
.remodal{
	border-radius:10px;
	border:2px solid #ab1b7d;
	padding:2%;
	text-align:left;
	font-size:1.8rem;
}

.remodal .company{
	color:#ab1b7d;
	font-weight:700;
}
.remodal dl dd {
	text-indent:0;
	padding-left:1em;
}

@media screen and (max-width: 780px) {	
	.only_sp{display: block!important;}
	.only_pc{display: none!important;}
	
    .mb60 {
    	margin-bottom: 30px;
	}
	.mb50 {
    	margin-bottom: 5%;
	}
	.mb40 {
    	margin-bottom: 25px;
	}
	.mt30 {
		margin-top: 3%;
	}
    .mb20{
	margin-bottom:10px;
    }
    .pd_tb40{
    padding: 20px 0;
}
	.w96{
		width:96%;
		margin:auto;
	}
	#contents_wrapper{
        font-size: 1.4rem;
    }
     .tx_notice{
        font-size: 1.3rem;
    }
	#area_seach_btn{
		height:34px;
		z-index:998;
		top: -60px;
	}
	#area_seach_btn ul{
		width:100%;
	}
	#area_seach_btn li:first-child{
		margin-right: 10px;
	}
	#area_seach_btn li img{
		width:80%;
	}
	
	.container{
		width:100%
	}
	#mv .mv_image{
	width: 100%;
	margin: 0;
        padding: 0;
}
	.daytime{
		font-size: 1.4rem;
        padding: 8px 0 6px;
	}
    h2{
       font-size: 2.0rem;
    }
	.w950{
	width:auto;
	margin:0 10px;
	}
	
	#present {
		width: 90%;
    	padding: 4% 0;
	}
	#present .present_wapper {
		padding: 15% 4% 2%;
	}
	#present .present_wapp {
		margin-top:1%;
	}
	#present .present_wapp p {
		font-size: 1.2em;
		text-align: center;
		margin:0 0 2%;
		padding-top: 0;
		padding-bottom: 0;
		padding-left: 0;
	}
	#present .present_wapp .pre_note{
	font-size:0.7em!important;
	font-weight: normal!important;
		text-align: left;
	}
	#present .present_wapp img{
		width:30%;
		margin:0 0 4%;
	}
	#present .present_red li{
		font-size: 1.2rem;
	}
	#present .circle {
		top: 10px;
		left: -2px;
		width: 90%;
	}
	#present .red {
		color: red;
		font-size: 0.8em;
	}
	/*contents*/
	.cpn_img {
    margin: 0 auto;
    width: 80%;
	}
	
	.cpn_img02{
	margin: 0 auto 10px;
	width: 40%;
    }
	
	#contents_wrapper .bg_top{
		display:none;
	}
	#contents_wrapper .btn01,
    #contents_wrapper .btn02{
		padding: 10px 0 8px;
        width: auto;
        margin: 32px 30px 0;
	}
    .boxopen:after {
	padding: 0 10px;
}
    .lead_p{
    font-size: 2.0rem;
}
    .ranking_ic:before{
    bottom: 4px;
    left: -40px;
}
    .ranking_ic:after{
    bottom: 4px;
    right: -40px;
}
    .category_ic:before,
.topic_ic:before{
    bottom: 4px;
    left: -45px;
}
.category_ic:after,
.topic_ic:after{
    bottom: 4px;
    right: -45px;
}

/*アコーディオン*/
	.ascdn {
	}
	.ascdn {
		width: 100%;
	}
	.ascdn:nth-child(3n) {
		margin: 0 auto;
		padding: 0;
	}
	.ttl-contents-3{
	border-bottom: 1px dotted #444;
    }
	.continue_btn{
	margin: 0 0 20px 0;
}
	.topix{
	width: 96%;
		padding: 14px 0 2px;
    }
	
	.topix h2{
		font-size: 2.4rem;
	}
	
	.topix section h4{
	 left:10%;
	 right: 10%;
	 font-size: 1.0em;
	}
	.ttl_s {
    font-size: 2.2rem;
    margin-top: 30px;

	}
	
	.topix section{
	 display: block;
		width: 94%;
		padding:8px 0 0 0;
		margin:0 auto 20px;
	}
	
	.topix section h3 {
    font-size: 1.8rem;
	}
	
	.topix section .topix_img{
	 width: 96%;
		margin: 0 auto;
	}
	
	
	.topix section .topix_img img{
	 width: 100%;
     height: 80px;
     object-fit: cover;
     object-position: top -60px left 0;
	}
	
	.topix section .topix_txt{
	width: 96%;
		margin: 0 auto;
		padding: 8px 0 0 0;
	}
	
	.topix section p {
    font-size: 0.8em;
	}
	
	.topix .pink, .topix .green, .topix .blue, .topix .orange .sky{
    font-size: 0.9em;
	}
	
	.topix .pink a, .topix .green a, .topix .blue a, .topix .orange a,.sky a {
	padding: 4px;
	}
	
	.btnset .button {
    font-size: 0.9em;
	}
	
	.resolution ul{
	display:block;
	padding: 0;
	width:94%;
	}
	
	.resolution ul li{
	width:100%;
		margin: 20px auto;
		font-size: 1em;
	}
	
	.pre_bnr {
    margin: 0 auto;
    padding: 0 0 10px;
	}
	
	.btn_list {
		padding: 20px 0;
	}
	
	.btn_list ul {
		width: 90%;
		flex-direction: column;
	    flex-wrap: nowrap;
	}
	.btn_list ul li{
		margin:0 auto 6%;
		width: 90%;
	}
	.btn_list ul li.green a,.btn_list ul li.pink a,.btn_list ul li.orange a,.btn_list ul li.blue a,.btn_list ul li.sky a{
		font-size:1.1em;
		padding:3% 0;
	}
	
	.btn_list ul li.green a:after, .btn_list ul li.pink a:after, .btn_list ul li.orange a:after, .btn_list ul li.blue a:after {
    top: 20%;
	}
	
	/* modal */
	.remodal{
		border-radius:10px;
		border:2px solid #ab1b7d;
		padding:8% 2% 5%;
		text-align:left;
		font-size:1.8rem;
		margin:5% 0;
	}
	.remodal .company{
		color:#ab1b7d;
		font-weight:700;
	}
	.remodal dl dd {
		text-indent:0;
		padding-left:1em;
	}

	/* notice */
    #notice{
	padding:35px 0;
    font-size: 1.3rem;
}
#notice .wrapper{
	padding:20px 10px;
	width:auto;
	margin:0 10px;
}
#notice h2{
    font-size: 1.8rem;
    
}
#notice h3{
    margin:20px 0 5px;
    font-size: 1.4rem;
}
#notice h4{
    margin-top: 10px;
}
#notice .wrapper ul li{
	text-indent:-1em;
	padding-left:1em;
}  
}/*SP体裁ここまで*/


/* arrow_box */
.arrow_box{
    background: #f15599;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    border-radius: 6px;
    padding: 12px 10px 10px;
    width: 400px;
    margin: 10px auto -13px;
    position: relative;
    text-shadow: 0 1px 0 #b50081;
}
.arrow_box span {
    font-size: 100%;
    color: yellow;
}
.arrow_box::after {
    content: '';
    position: absolute;
    display: block;
    z-index: 1;
    border-style: solid;
    border-color: #f15599 transparent;
    border-width: 20px 15px 0px 15px;
    bottom: -18px;
    left: 46%;
    margin-left: -8px;
}

@media screen and (max-width: 780px) {
    .arrow_box{
    font-size: 1.6rem;
    padding: 10px 10px 8px;
    width: auto;
    margin: 10px 50px 0;
}  
}
/*対象商品はこちら 左右アロー*/
.slide_arrow{
    position: relative;
}
.slide_arrow:before{
    position: absolute;
    display: inline-block;
    content: "";
    background-image: url("../img/arrouw_L.png");
    background-size: 45px,15px;
    width: 45px;
    height: 15px;
    background-repeat: no-repeat;
    top: 4px;
    left:-50px;
}
.slide_arrow:after{
    position: absolute;
    display: inline-block;
    content: "";
    background-image: url("../img/arrouw_R.png");
    background-size: 45px,15px;
    width: 45px;
    height: 15px;
    background-repeat: no-repeat;
    top: 4px;
    right: -50px;
}
@media screen and (max-width: 780px) {
.slide_arrow:before,
.slide_arrow:after{
    display: none;
}
}
/* up_arrow
------------------------------------------------------------ */
    a.up_arrow {
    position: relative;
    padding-right: 16px;
    text-decoration: none;
    border-bottom: 1px solid currentColor;
    color: #B60081;
	}
    a.up_arrow:hover {
        border-bottom: none;
	}
    .up_arrow:after {
    position: absolute;
    display: inline-block;
    content: "";
    line-height: 1;
    right: 3px;
    top:0.5em;
    width: 0.5em;
    height: 0.5em;
    border: 2px solid currentColor;
    border-top: 0;
    border-right: 0;
    box-sizing: border-box;
    transform: rotate(135deg);
}
@media screen and (max-width: 740px) {
    a.up_arrow {
    position: relative;
    padding-right: 17px;
    text-decoration: none;
    border-bottom: 1px solid currentColor;
	}
	.up_arrow:after {
    position: absolute;
    display: inline-block;
    content: "";
    line-height: 1;
    right: 3px;
    top:0.4em;
    width: 0.6em;
    height: 0.6em;
    border: 2px solid currentColor;
    border-top: 0;
    border-right: 0;
    box-sizing: border-box;
    transform: rotate(135deg);
}
}
/* front_page_css
------------------------------------------------------------ */
h2.h2_cloud{
    text-align: center;
    position: relative;
    font-weight: bold;
    background: url("../img/bg_text01.png");
    background-repeat: no-repeat;
    background-position: top center;
    background-size: auto;
    padding: 20px 0 ;
    margin-bottom: 30px;
}
h2.h2_cloud span{
    color: #fc2b53;
}
h2.h2_cloud small{
    font-size: 0.85em;
}
/*.h2_cloud:before{
    display: inline-block;
    content: "";
    position: absolute;
    background: url("../img/bg_text01.png");
    background-repeat: no-repeat;
    width: 514px;
    height: 86px;
    background-size: 514px,86px;
    top: 0;
    left: calc(50% - 277px);
}*/
.popular_rankings_list > li h3{
    background: #ffffff;
    border-radius: 999px;
    width: 70%;
    padding: 7px 0;
    margin: 0 auto;
}
@media screen and (max-width: 740px) {
    h2.h2_cloud{
    background: url("../img/bg_text01.png");
    background-repeat: no-repeat;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 354px 59px;
    padding: 14px 0 ;
    margin-bottom: 15px;
    font-size: 2.4rem;
}
}