/* CSS Document */

.common_btn{
  width:350px;
  margin:40px auto 0; 
}

.common_btn.wide{
  width:440px; 
}

.common_btn.ml0{
  margin-left:0; 
}

.common_btn.wide{
  width:500px;
}

.common_btn a{
  display:block;
  text-decoration:none;
  height: 70px;
  border-radius: 35px;
  background: transparent;
  border: 1px solid #d60138;
  box-sizing:border-box;
  font-size: 18px;
  text-align: center;
  color: #d60138;
  font-weight:bold;
  padding-top:21px;
  position:relative;
  text-decoration:none !important;
  transition: all 0.4s;
  background:#FFF;
}

.common_btn a:hover,
.card_detail .card_detail_inner .box .box_l .common_btn a:hover{
  background:#d60138;
  color:#FFF;
}

.contact_btn li:nth-child(2) a{
  border-color:#1c4b81;
  color:#1c4b81; 
}

.contact_btn li:nth-child(2) a:hover,
.jcb .card_detail .common_btn a:hover{
  background:#1c4b81 !important;
  color:#FFF;
}

a.common_btn2:before{
  content:"";
  display:block;
  background:url(../images/common/icon_right_r.svg) no-repeat left top;
  background-size:100% auto;
  width:7px;
  height:12px;
  position:absolute;
  right:28px;
  top:29px;
}

.common_btn a span{
  width:7px;
  height:12px;
  position:absolute;
  right:28px;
  top:23px;
  transition: all 0.4s;
}

.common_btn a span .common_icon_right{
  fill: none;
  stroke: #d60138;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2px;
}

.common_btn a:hover span .common_icon_right{
  stroke: #FFF;
}

.common_btn a span .common_icon_blank{
  fill: #d32c1f; 
  transition: all 0.4s;
}


.jcb .common_btn a span .common_icon_blank{
  fill: #1c4b81; 
}

.common_btn a:hover span .common_icon_blank{
  fill: #FFF; 
}

.common_btn a.blank:before{
  background:url(../images/top/card_icon_blank.svg) no-repeat left top;
  background-size:100% auto;
  width:15px;
  height:15px;
  top:28px;
}

.common_btn .caution{
  text-align:center;
  font-size:10px;
  margin-top:10px; 
}

a.common_btn2{
  width: 330px;
  height: 40px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid #d60138;
  text-decoration:none !important;
  font-size:15px;
  box-sizing:border-box;
  text-align:center;
  padding-top:8px;
  transition: all 0.4s;
  font-weight:bold;
}

a.common_btn2:before{
  right:13px;
  top:14px;
}

a.common_btn2:hover{
  background:#d60138;
  color:#FFF;
}

a.common_btn2:hover:before{
  background:url(../images/common/icon_right_w.svg) no-repeat left top;
  background-size:100% auto;
}

.common_h3{
	font-size:26px;
	color:#333333;
	line-height:1.2;
	position:relative;
  margin-top:70px;
}

.common_h3.mt_min{
  margin-top:50px; 
}

.common_h3.mt_min2{
  margin-top:40px; 
}

.common_h3:before,
.common_h3:after{
	content:"";
	display:block;
	background:#a4a4a4;
	width:100%;
	height:2px;
	position:absolute;
	left:0;
	bottom:-12px;	
}

.common_h3:after{
	background:#ff0044;
	width:200px;	
}

.common_h3 .date{
  font-size: 12px;
  color: #d60138;
  position:absolute;
  right:10px;
  bottom:0;
}

.common_h3 .pick{
  margin-right:10px;
  position:relative;
  top:-3px;
}

.indent li{
  text-indent:-1em;
  padding-left:1em;
}

@media screen and (max-width: 1050px) {
  
  .common_btn{
    width:80vw;
    margin:8vw auto 0; 
  }
  
  .common_btn.wide{
    width:100%;
  }
  
  .common_btn a{
    height: 18.6vw;
    border-radius: 9.3vw;
    border: 0.26vw solid #d60138;
    font-size: 4.8vw;
    padding-top:6vw;
  }
  
  a.common_btn2:before{
    width:1.86vw;
    height:3.2vw;
    right:7.46vw;
    top:8vw;
  }
  
  .common_btn a span{
    width:1.86vw;
    height:auto;
    right:7.46vw;
    top:6.33vw;
    transition: all 0.4s;
  }
  
  
  .common_btn a span .common_icon_right_svg{
    width:2.86vw;
    height:4.2vw;
  }
  
  
  .common_btn a span .common_icon_right{
    fill: none;
    stroke: #d60138;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 0.53vw;
  }
  
  .common_btn a:hover span .common_icon_right{
    stroke: #FFF;
  }

  
  .common_btn a.blank:before{
    width:4vw;
    height:4vw;
    top:7.5vw;
  }
  
  .common_h3{
		font-size:5.06vw;
		margin-bottom:8vw;
		color:#333333;
	}
  
  
  .common_h3.mt_min{
    margin-top:6.6vw; 
  }
  
  .common_h3.mt_min2{
    margin-top:5.3vw; 
  }
  
	.common_h3:before,
	.common_h3:after{
		content:"";
		display:block;
		background:#a4a4a4;
		width:100%;
		height:0.53vw;
		position:absolute;
		left:0;
		bottom:-4vw;	
	}
	
	.common_h3:after{
		background:#ff0044;
		width:26.6vw;	
	}
  
  .common_h3 .date{
    font-size: 3.2vw;
    right:2.6vw;
    bottom:-10.3vw;
  }
  
  .common_h3 .pick{
    margin-right:0;
    position:absolute;
    top:-8vw;
    width:18vw;
  }
  
  a.common_btn2{
    display:block;
    width: 69.3vw;
    height: 16vw;
    border-radius: 8vw;
    border: 0.26vw solid #d60138;
    font-size:4vw;
    padding-top:3vw;
    line-height:1.2;
  }
  
  a.common_btn2:before{
    right:3.46vw;
    top:50%;
    transform:translateY(-50%);
  }
  
  a.common_btn2:hover{
    background:#d60138;
    color:#FFF;
  }
  
  a.common_btn2:hover:before{
    background:url(../images/common/icon_right_w.svg) no-repeat left top;
    background-size:100% auto;
  }
}


/* TOP
------------------------------------------------------------*/

.common_inner{
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
  position:relative; 
}

.kv{
  margin-top:40px; 
}

.kv .inner{
  display:flex;
  justify-content:space-between; 
}

.kv .inner .inner_l{
  width:670px;
}

.kv .inner .inner_r{
  width: 290px;
  height: 340px;
  border-radius: 5px;
  background: #fafafa;
}

.kv .inner .inner_r .txt01{
  font-size: 16px;
  font-weight:bold;
  padding-top:25px;
  text-align:center;
  position:relative; 
}

.kv .inner .inner_r .txt01:before,
.kv .inner .inner_r .txt01:after{
  content:"";
  width:43px;
  height:1px;
  background:#535353;
  position:absolute;
  left:20px;
  top:37px; 
}

.kv .inner .inner_r .txt01:after{
  left:auto;
  right:20px;
}

.kv .inner .inner_r ul li{
  text-align:center;
  margin-top:15px; 
}

.kv .inner .inner_r ul li:nth-child(1){
  text-align:center;
  margin-top:10px; 
}

.kv .inner .inner_r ul li a{
  border-radius: 5px;
  background: #d32c1f; 
  display:block;
  width:250px;
  margin:0 auto;
  transition: all 0.4s;
}

.kv .inner .inner_r ul li a:hover{
  background: #e21e0e; 
}

.kv .inner .inner_r ul li:last-child a{
  background: #1c4b81; 
}

.kv .inner .inner_r ul li:last-child a:hover{
  background: #084d9d;  
}

.kv .inner .inner_r .app{
  width: 250px;
  height: 112px;
  border-radius: 5px;
  background: #fff;
  border: 1px solid #f0f0f0;
  box-sizing:border-box;
  margin:15px auto 0;
}

.kv .inner .inner_r .app .txt02{
  text-align:center;
  width: 220px;
  border-bottom: 1px solid #f2f2f2;
  margin:0 auto;
  padding:10px 0 3px;
  font-size: 14px;
  font-weight:bold; 
}

.kv .inner .inner_r .app .txt03{
  text-align:center;
  margin:0 auto;
  padding:7px 0 0;
  font-size: 13px;
  font-weight:bold; 
}

.kv .inner .inner_r .app .txt03 span{
  display:block;
  font-size: 13px;
  line-height: 18px;
  font-weight:normal;
  margin-top:2px;
}

.top_card_block{
  margin-top:70px; 
}

.top_card_block h2,
.top_kanren h2,
.top_news h2,
.common_h2{
  text-align:center;
  font-size: 30px;
  font-weight:bold; 
  margin-bottom:42px;
}

.top_card_block .top_card_block_inner1{
  width: 100%;
  height: 530px;
  
  position:relative;
}

.top_card_block .top_card_block_inner1.top_card_block_inner2{
  margin-top:70px;
} 

.top_card_block .top_card_block_inner1:before{
  content:"";
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  left:0;
  top:0; 
  background: linear-gradient(#ffeded 0%, #fff 100%); 
  transform:rotate(180deg);
}

.top_card_block .top_card_block_inner1 h3{
  position:relative;
  z-index:2;
  text-align:center;
  font-size: 26px;
  color: #d32c1f; 
  font-weight:bold;
}

.top_card_block .bg01{
  position:relative;
  z-index:2;
  display:block;
  margin-top:30px;
  background:url(../images/top/cart_bg01.jpg) no-repeat left top;
  background-size:cover; 
  height:170px;
}

.top_card_block .bg01 span{
  position:absolute;
  right:20px;
  bottom:20px;
  width: 230px;
  height: 40px;
  border-radius: 20px;
  background: #d32c1f;
  display:flex;
  justify-content:center;
  align-items:center;
  font-size: 15px;
  color: #fff;
  font-weight:bold;
}

.top_card_block .bg01 span:after{
  content:"";
  display:block;
  background:url(../images/common/icon_right_w.svg) no-repeat left top;
  background-size:100% auto;
  width:9px;
  height:13px;
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
}

.top_card_block .menu_list{
  display:flex;
  margin-top:30px;
  position:relative;
  z-index:2; 
}

.top_card_block .menu_list li{
  width:20%; 
}

.top_card_block .menu_list li a{
  display:block;
  background:#FFF;
  text-align:center;
  height:196px;
  padding-top:142px;
  font-size: 14px;
  text-align: center;
  color: #d42c1f; 
  box-sizing:border-box;
  font-weight:bold;
  text-decoration:none;
  position:relative;
}

.top_card_block .menu_list li a .ttl:after{
  content:"";
  display:inline-block;
  background:url(../images/top/card_icon_blank.svg) no-repeat left top;
  background-size:15px 15px;
  width:15px;
  height:15px;
  margin-left:6px;
  position:relative;
  top:2px;
}

.top_card_block .menu_list li a:before{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  content:"";
  display:block;
  background-size:100% auto !important;
}

.top_card_block .menu_list li:nth-child(1) a:before{
  background:url(../images/top/card_icon01.svg) no-repeat left top;
  width:109px;
  height:87px;
  top:30px;
}

.top_card_block .menu_list li:nth-child(2) a:before{
  background:url(../images/top/card_icon02.svg) no-repeat left top;
  width:90px;
  height:56px;
  top:51px;
}

.top_card_block .menu_list li:nth-child(3) a:before{
  background:url(../images/top/card_icon03.svg) no-repeat left top;
  width:85px;
  height:73px;
  top:43px;
}

.top_card_block .menu_list li:nth-child(4) a:before{
  background:url(../images/top/card_icon04.svg) no-repeat left top;
  width:77px;
  height:64px;
  top:47px;
}

.top_card_block .menu_list li:nth-child(5) a:before{
  background:url(../images/top/card_icon05.svg) no-repeat left top;
  width:72px;
  height:59px;
  top:50px;
}

.top_card_block .top_card_block_inner1.top_card_block_inner2:before{
  content:"";
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  left:0;
  top:0; 
  background: linear-gradient(#cfddef 0%, #fff 100%);
  transform:rotate(180deg);
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 h3{
  color: #1c4b81; 
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .bg01{
  background:url(../images/top/cart_bg02.jpg) no-repeat left top;
  background-size:cover; 
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .bg01 span{
  background: #1c4b81;
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .menu_list li a{
  color: #1c4b81; 
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .menu_list svg{
   fill: #42AFE3;
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .menu_list li a .ttl:after{
  background:url(../images/top/card_icon_blank_2.svg) no-repeat left top;
  background-size:15px 15px;
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .menu_list li:nth-child(1) a:before{
  background:url(../images/top/card_icon01_2.svg) no-repeat left top;
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .menu_list li:nth-child(2) a:before{
  background:url(../images/top/card_icon02_2.svg) no-repeat left top;
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .menu_list li:nth-child(3) a:before{
  background:url(../images/top/card_icon03_2.svg) no-repeat left top;
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .menu_list li:nth-child(4) a:before{
  background:url(../images/top/card_icon04_2.svg) no-repeat left top;
}

.top_card_block .top_card_block_inner1.top_card_block_inner2 .menu_list li:nth-child(5) a:before{
  background:url(../images/top/card_icon05_2.svg) no-repeat left top;
}

.top_kanren{
  margin-top:80px; 
}

.top_kanren ul.list{
  display:flex;
  justify-content:space-between; 
}

.top_kanren ul.list li{
  width:300px; 
}

.top_kanren ul.list li a{
  display:block;
  text-decoration:none;
  height:330px;
  background:#fafafa;
  position:relative; 
  color: #535353;
}

.top_kanren ul.list li a:before{
  content:"";
  display:block;
  background:url(../images/common/icon_link_btm_r.svg) no-repeat left top;
  background-size:100% auto;
  width:12px;
  height:12px;
  position:absolute;
  right:10px;
  bottom:10px;
}

.top_kanren ul.list li a h3{
  padding:28px 20px 0; 
  font-size: 17px;
  line-height:1.2;
}

.top_kanren ul.list li a span{
  display:block; 
  padding:12px 20px 0; 
  font-size: 14px;
  line-height: 24px;
}

.top_kanren ul.btn{
  margin:40px auto 0;
  display:flex;
  width:920px;
  justify-content:space-between; 
}

.top_kanren ul.btn li a{
  display:block;
  width: 440px;
  height: 60px;
  background: transparent;
  border: 1px solid #535353;
  border-radius:50px;
  padding-top:19px;
  text-decoration:none;
  box-sizing:border-box;
  font-size: 16px;
  text-align: center;
  color: #535353;
  font-weight:bold;
  position:relative;
  transition: all 0.4s;
}

.top_kanren ul.btn li a:hover{
  background:#535353;
  color:#FFF; 
}

.top_kanren ul.btn li a:hover .blank_icon{
  fill: #FFF;
}

.top_kanren ul.btn li a span{
  position:absolute;
  right:20px;
  top:20px;
}

.top_news{
  margin-top:80px;
  background:#fafafa;
  padding:70px 0;
}

.top_news ul{
  width:730px;
  margin:0px auto 0; 
}

.top_news ul li:nth-child(1) > a{
  border-top:solid 1px #e3e3e3; 
}

.top_news ul li > a,
.top_news ul li > div{
  display:block;
  text-decoration:none;
  border-bottom:solid 1px #e3e3e3;
  padding:20px 0 18px;
  position:relative; 
  transition: all 0.4s;
}

.top_news ul li > a:hover{
  background:#FFF; 
}

.top_news ul li > a .date,
.top_news ul li > div .date{
  font-size: 12px;
  color: #d60138;
  position:absolute;
  left:30px;
  top:20px;
}

.top_news ul li > a .ttl,
.top_news ul li > div .ttl{
  font-size: 14px;
  color: #535353;
  display:block;
  padding:0 20px 0 132px;
}

.top_search{
  margin-top:80px; 
}

.top_search .list01{
  display:flex;
  justify-content:space-between;
}

.top_search .list01 > li > a{
  display:block;
  box-sizing:border-box;
  width: 158px;
  height: 60px;
  border-radius: 6px;
  background: linear-gradient(#fff 0%, #f4f4f4 100%);
  border: 1px solid #efefef;
  position:relative;
  transition: all 0.4s;
  font-size: 12px;
  line-height: 14px;
  text-align: left;
  color: #535353;
  font-weight:bold;
  text-decoration:none;
}

.top_search .list01 > li > a:hover,
.top_search .list01 > li > a.active{
  background: linear-gradient(#fff 0%, #fff5f5 100%);
  border: 1px solid #d60138;
  color:#d60138;
}

.top_search .list01 > li > a .icon{
  position:absolute;
  left:15px;
  top:50%;
  transform:translateY(-50%); 
  margin-top:2px;
}

.top_search .list01 li:nth-child(2) a .icon{
  left:10px; 
}
.top_search .list01 li:nth-child(3) a .icon{
  left:18px; 
}
.top_search .list01 li:nth-child(4) a .icon{
  left:13px; 
}
.top_search .list01 li:nth-child(5) a .icon{
  left:16px; 
}
.top_search .list01 li:nth-child(6) a .icon{
  left:11px; 
}

.top_search .list01 > li > a .ttl{
  display:block;
  padding-left:55px;
  padding-top:24px; 
}

.top_search .list01 li:nth-child(1) a .ttl,
.top_search .list01 li:nth-child(2) a .ttl{
  padding-top:17px;
}

.top_search .list01 > li > a svg{
  fill: #535453;
  transition: all 0.4s;
}

.top_search .list01 > li > a .cls-1{
  fill: #535353;
  stroke: #535352;
  stroke-width: 0.5px;
  transition: all 0.4s;
}

.top_search .list01 > li > a:hover svg,
.top_search .list01 > li > a.active svg{
  fill: #d60138;
}

.top_search .list01 > li > a:hover .cls-1,
.top_search .list01 > li > a.active .cls-1{
  fill: #d60138;
  stroke: #d60138;
  stroke-width: 0.5px;
}

.top_search .inner .pc{
  min-height:400px; 
}

.top_search .txt01{
  margin-top:20px;
  width: 980px;
  height: 60px;
  background: #fafafa;
  position:relative;
  font-size: 16px;
  box-sizing:border-box;
  padding:16px 0 0 40px; 
}

.top_search .txt01 a{
  position:absolute;
  right:20px;
  top:50%;
  transform:translateY(-50%); 
}

.top_search .list02{
  display:flex;
  margin-top:20px;
  flex-wrap:wrap; 
}

.top_search .list02 li{
  width:300px; 
  margin-right:40px;
  margin-top:40px;
}

.top_search .list02 li:nth-child(1),
.top_search .list02 li:nth-child(2),
.top_search .list02 li:nth-child(3){
  margin-top:0px; 
}

.top_search .list02 li:nth-child(3n){
  margin-right:0;
}

.top_search .list02 li a{
  display:block;
  width: 300px;
  height: 252px;
  background: transparent;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #efefef;
  box-sizing:border-box;
  text-decoration:none;
  padding-top:32px;
}

.top_search .list02 li.long a{
  padding-top:15px;
}

.top_search .list02 li a .ttl{
  display:block;
  font-size: 13px;
  line-height: 17px;
  text-align: center;
  color: #535353;
  width: 240px;
  border-bottom: 1px solid #ebebeb;
  margin:0 auto;
  padding-bottom:5px;
  font-weight:bold;
  margin-bottom:19px;
}

.top_search .list02 li a .image{
  display:block;
  text-align:center; 
}

@media screen and (max-width: 1050px) {
  .common_inner{
    max-width:90.6vw;
    margin-left:auto;
    margin-right:auto;
    position:relative; 
  }
  
  .kv{
    margin-top:3.73vw; 
  }
  
  .kv .inner{
    display:block;
    justify-content:space-between; 
  }
  
  .kv .inner .inner_l{
    width:100%;
  }
  
  .kv .inner .inner_r{
    width: 100%;
    height: auto;
    border-radius: 1.3vw;
    margin-top:5.3vw;
    padding-bottom:10.6vw;
  }
  
  .kv .inner .inner_r .txt01{
    font-size: 4.26vw;
    padding-top:9.3vw;
        
  }
  
  .kv .inner .inner_r .txt01:before,
  .kv .inner .inner_r .txt01:after{
    width:11.46vw;
    height:0.26vw;
    left:10.6vw;
    top:12.5vw; 
  }
  
  .kv .inner .inner_r .txt01:after{
    left:auto;
    right:10.6vw;
  }
  
  .kv .inner .inner_r ul{
    width:69.3vw;
    margin:0 auto;
    padding-top:0.8vw;
  }
  
  .kv .inner .inner_r ul li{
    text-align:center;
    margin-top:3.73vw; 
  }
  
  .kv .inner .inner_r ul li:nth-child(1){
    text-align:center;
    margin-top:3.5vw; 
  }
  
  .kv .inner .inner_r ul li a{
    border-radius: 1.3vw;
    background: #d32c1f; 
    width:69.3vw;
  }
  
  .kv .inner .inner_r ul li a:hover{
    background: #d32c1f; 
  }
  
  .kv .inner .inner_r ul li:last-child a{
    background: #1c4b81; 
  }
  
  .kv .inner .inner_r ul li:last-child a:hover{
    background: #1c4b81;  
  }

  
  .kv .inner .inner_r .app{
    width:69.3vw;
    margin:0 auto;
    height:auto;
    border-radius: 1.3vw;
    border: 0.26vw solid #f0f0f0;
    margin:4vw auto 0;
  }
  
  .kv .inner .inner_r .app .txt02{
    text-align:center;
    width: 61.3vw;
    border-bottom: 0.26vw solid #f2f2f2;
    padding:2.6vw 0 1.3vw;
    font-size: 3.73vw;
  }
  
  .kv .inner .inner_r .app .txt03{
    text-align:center;
    margin:0 auto;
    padding:1.86vw 0 0;
    font-size: 3.46vw;
    font-weight:bold; 
  }
  
  .kv .inner .inner_r .app .txt03 span{
    display:block;
    font-size: 3.46vw;
    line-height: 4.8vw;
    font-weight:normal;
    margin-top:0.5vw;
    padding-bottom:2.6vw;
  }
  
  .top_card_block{
    margin-top:16vw; 
  }
  
  .top_card_block h2,
  .top_kanren h2,
  .top_news h2,
  .common_h2{
    font-size: 8vw;
    margin-bottom:9.3vw;
  }
  
  .top_card_block .top_card_block_inner1{
    width: 100%;
    height: auto;
    position:relative;
  }
  
  .top_card_block .top_card_block_inner1.top_card_block_inner2{
    margin-top:12vw;
  } 
  
  .top_card_block .top_card_block_inner1:before{
    height:137.3vw;
    position:absolute;
    left:0;
    bottom:0; 
    top:auto;
  }
  
  
  .top_card_block .top_card_block_inner1 h3{
    font-size: 6.93vw;
  }
  
  .top_card_block .bg01{
    position:relative;
    z-index:2;
    display:block;
    margin-top:30px;
    background:url(../images/top/cart_bg01_sp.jpg) no-repeat left top;
    background-size:cover; 
    height:50.93vw;
  }
  
  .top_card_block .bg01 span{
    right:auto;
    bottom:auto;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width: 74.6vw;
    height: 18.6vw;
    border-radius: 9.3vw;
    font-size: 4.8vw;
  }
  
  .top_card_block .bg01 span:after{
    width:1.6vw;
    height:2.6vw;
    position:absolute;
    right:4.26vw;
    top:50%;
  }
  
  .top_card_block .menu_list{
    display:block;
    margin:7.2vw auto 0;
    width:80vw;
    padding-bottom:16vw;
  }
  
  .top_card_block .menu_list li{
    width:100%;
    margin-bottom:5.3vw;
  }
  
  .top_card_block .menu_list li:last-child{
    margin-bottom:0; 
  }
  
  .top_card_block .menu_list li a{
    text-align:center;
    height:18.6vw;
    box-shadow: 0px 1px 7px rgba(0, 0, 0, 0.1);
    padding-top:5.8vw;
    font-size: 4.8vw;
  }
  
  .top_card_block .menu_list li a .ttl:after{
    background-size:100% auto;
    width:4.8vw;
    height:4.8vw;
    margin-left:0;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    right:5.3vw;
  }
  
  .top_card_block .menu_list li a:before{
    left:5vw;
    top:50% !important;
    transform:translateY(-50%);
  }
  
  .top_card_block .menu_list li:nth-child(1) a:before{
    width:12vw;
    height:9.86vw;
  }
  
  .top_card_block .menu_list li:nth-child(2) a:before{
    width:11vw;
    height:6.86vw;
  }
  
  .top_card_block .menu_list li:nth-child(3) a:before{
    width:10.2vw;
    height:8.6vw;
    left:4vw;
  }
  
  .top_card_block .menu_list li:nth-child(4) a:before{
    width:9.13vw;
    height:8.53vw;
    left:4vw;
  }
  
  .top_card_block .menu_list li:nth-child(5) a:before{
    width:9.6vw;
    height:8vw;
  }
  
  .top_card_block .top_card_block_inner1.top_card_block_inner2:before{
    height:137.3vw;
    position:absolute;
    left:0;
    bottom:0; 
    top:auto;
  }
  
  .top_card_block .top_card_block_inner1.top_card_block_inner2 .bg01{
    background:url(../images/top/cart_bg02_sp.jpg) no-repeat left top;
    background-size:cover; 
  }
  
  
  .top_card_block .top_card_block_inner1.top_card_block_inner2 .menu_list li a .ttl:after{
    background-size:100% auto !important;
  }
  
  
  .top_kanren{
    margin-top:13.3vw; 
  }
  
  .top_kanren ul.list{
    display:block;
    width:80vw;
    margin:0 auto;
  }
  
  .top_kanren ul.list li{
    width:100%;
    margin-bottom:8vw;
  }
  
  .top_kanren ul.list li:last-child{
    margin-bottom:0; 
  }
  
  .top_kanren ul.list li a{
    height:88vw;
  }
  
  .top_kanren ul.list li a:before{
    width:3.2vw;
    height:3.2vw;
    right:2.6vw;
    bottom:2.6vw;
  }
  
  .top_kanren ul.list li a h3{
    padding:7vw 5.3vw 0; 
    font-size: 4.53vw;
  }
  
  .top_kanren ul.list li a span{
    display:block; 
    padding:3.5vw 5.3vw 0; 
    font-size: 3.73vw;
    line-height: 6.4vw;
  }
  
  .top_kanren ul.btn{
    margin:3vw auto 0;
    display:block;
    width:80vw;
  }
  
  .top_kanren ul.btn li:nth-child(1){
    margin-bottom:5.3vw; 
  }
  
  .top_kanren ul.btn li a{
    width: 100%;
    height: 16vw;
    border: 0.26vw solid #535353;
    border-radius:8vw;
    padding-top:2.8vw;
    font-size: 3.73vw;
  }
  
  .top_kanren ul.btn li:nth-child(2) a{
    padding-top:5vw; 
  }
  
  .top_kanren ul.btn li a span{
    position:absolute;
    right:4.53vw;
    top:6vw;
  }
  
  .top_kanren ul.btn li a span .blank_icon{
    width:4vw; 
    height:4vw;
  }
  
  .top_news{
    margin-top:16vw;
    background:#fafafa;
    padding:13.3vw 0 16vw;
  }
  
  .top_news ul{
    width:80vw;
    margin:0px auto 0; 
  }
  
  .top_news ul li:nth-child(1) > a{
    border-top:solid 0.26vw #e3e3e3; 
  }
  
  .top_news ul li > a,
  .top_news ul li > div{
    display:block;
    text-decoration:none;
    border-bottom:solid 0.26vw #e3e3e3;
    padding:5vw 0 4.5vw;
  }
  
  .top_news ul li > a .date,
  .top_news ul li > div .date{
    font-size: 3.2vw;
    position:relative;
    left:auto;
    top:auto;
  }
  
  .top_news ul li > a .ttl,
  .top_news ul li > div .ttl{
    font-size: 3.46vw;
    padding:1.3vw 0 0;
  }
  
  .top_search{
    margin-top:16vw; 
  }
  
  .top_search .list01{
    display:block;
  }
  
  .top_search .list01 li > .sp{
    display:none; 
  }
  
  .top_search .list01 > li > a{
    display:block;
    box-sizing:border-box;
    width: 100%;
    height: 16vw;
    border-radius: 0;
    background:#FFF;
    border:none;
    border-top: 0.26vw solid #efefef;
    border-bottom: 0.26vw solid #efefef;
    font-size: 4.8vw;
    line-height: 1.2;
    text-align: left;
    padding:5.5vw 0 4vw 18.6vw;
    box-sizing:border-box;
  }
  
  .top_search .list01 > li > a:before,
  .top_search .list01 > li > a:after{
    content:"";
    display:block;
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
    width:4.8vw;
    height:0.8vw;
    background:#d60138;
    border-radius:2vw;
  }
  
  .top_search .list01 > li > a:after{
    right:2vw;
    width:0.8vw;
    height:4.8vw;
    transition: all 0.4s;
  }
  
  .top_search .list01 > li > a.active:after{
    height:0; 
  }
  
  .top_search .list01 > li > a:hover{
    background:#FFF;
    border:none;
    border-top: 0.26vw solid #efefef;
    border-bottom: 0.26vw solid #efefef;
  }
  
  .top_search .list01 > li > a .icon{
    position:absolute;
    left:3vw;
    top:50%;
    transform:translateY(-50%); 
    margin-top:0;
  }
  
  .top_search .list01 li:nth-child(2) a .icon{
    left:3vw; 
  }
  .top_search .list01 li:nth-child(3) a .icon{
    left:5vw; 
  }
  .top_search .list01 li:nth-child(4) a .icon{
    left:3vw; 
  }
  .top_search .list01 li:nth-child(5) a .icon{
    left:4vw; 
  }
  .top_search .list01 li:nth-child(6) a .icon{
    left:3vw; 
  }
  
  .top_search .list01 > li > a .ttl{
    display:block;
    padding-left:0;
    padding-top:0; 
  }
  
  .top_search .list01 > li > a:hover{
    color:#535353;
  }
  
  .top_search .list01 li:nth-child(1) a .ttl,
  .top_search .list01 li:nth-child(2) a .ttl{
    padding-top:0;
  }
  
  .top_search .list01 > li > a svg{
    fill: #535453;
    transition: all 0.4s;
  }
  
  .top_search .list01 > li > a .cls-1{
    fill: #535353;
    stroke: #535352;
    stroke-width: 0.5px;
    transition: all 0.4s;
  }
  
  .top_search .list01 > li > a:hover svg{
    fill: #535352;
  }
  
  .top_search .list01 > li > a:hover .cls-1{
    fill: #535352;
    stroke: #535352;
    stroke-width: 0.5px;
  }
  
  .top_search .list01 .list01_svg{
    width:8vw;
    height:6.6vw;
  } 
  
  .top_search .list01 .list02_svg{
    width:10.93vw;
    height:6.6vw;
  } 
  
  .top_search .list01 .list03_svg{
    width:5.3vw;
    height:8vw;
  }
  
  .top_search .list01 .list04_svg{
    width:9.3vw;
    height:6.13vw;
  } 
  
  .top_search .list01 .list05_svg{
    width:7.73vw;
    height:9.86vw;
  }
  
  .top_search .list01 .list06_svg{
    width:10.6vw;
    height:6.93vw;
  } 
  
  .top_search .txt01{
    margin-top:5vw;
    width: 100%;
    height: 32vw;
    font-size: 4.26vw;
    padding:3vw 0 0 0; 
    text-align:center;
  }
  
  .top_search .txt01 a{
    display:block;
    position:relative;
    right:auto;
    top:auto;
    margin:9vw auto 0;
  }
  
  .top_search .list02{
    display:block;
    width:100%;
    margin:0 auto 0;
    justify-content:space-between;
    flex-wrap:wrap; 
  }
  
  .top_search .list02 li{
    width:100%; 
    margin-top:5.3vw;
    margin-right:0 !important;
  }
  
  .top_search .list02 li:nth-child(1),
  .top_search .list02 li:nth-child(2),
  .top_search .list02 li:nth-child(3){
    margin-top:5.3vw;
  }
  
  .top_search .list02 li:nth-child(3n){
    margin-top:5.3vw;
  }
  
  .top_search .list02 li:last-child{
    margin-top:0;
    margin-bottom:8vw;
  }
  
  .top_search .list02 li a{
    display:block;
    width: 100%;
    height: 67.2vw;
    border-radius: 2.6vw;
    border: 0.26vw solid #efefef;
    padding-top:6.6vw !important;
  }
  
  .top_search .list02 li a .ttl{
    font-size: 3.46vw;
    line-height: 1.2;
    width: 64vw;
    border-bottom: 0.26vw solid #ebebeb;
    padding-bottom:1vw;
    margin-bottom:5vw;
  }
  
  .top_search .list02 li a .image{
    display:block;
    text-align:center; 
    width: 64vw;
    margin:0 auto;
  }
}

/*TOP------------------------------------------------------------*/

/* news
------------------------------------------------------------*/
.sub_kv{
  margin-top:40px;
  background:#fafafa;
  height:200px; 
  position:relative;
}

.sub_kv:after{
  content:"";
  display:block;
  background:url(../images/common/sub_kv_red.svg) no-repeat left top;
  background-size:100% auto;
  width:350px;
  height:200px;
  position:absolute;
  right:-125px;
  bottom:0;
}

.sub_kv.kv_mufg:after{
  background:url(../images/common/sub_kv_mufg.svg) no-repeat left top;
  background-size:100% auto;
}

.sub_kv.kv_jcb:after{
  background:url(../images/jcb/sub_kv_jcb.svg) no-repeat left top;
  background-size:100% auto;
}

.sub_kv.kv_gift:after{
  background:url(../images/gift/sub_kv_gift.svg) no-repeat left top;
  background-size:100% auto;
}


.sub_kv h2{
  padding-top:80px;
  font-size: 30px;
  font-weight:bold;
  line-height:1.2;
}

.sub_kv h2 span{
  font-size: 10px;
  color: #a8a8a8;
  display:block;
  font-weight:normal;
  margin-bottom:7px;
}


.news_list .txt01{
  font-size: 16px;
  line-height: 30px;
  margin-top:35px;
}

.news_list .txt01 a{
  text-decoration:underline; 
}

.news_list .txt01 a:hover{
  text-decoration:none; 
}

.news_list .txt01 a.blank:after{
  content:"";
  display:inline-block;
  background:url(../images/top/card_icon_blank.svg) no-repeat left top;
  background-size:100% auto;
  width:14px;
  height:14px;
  margin-left:5px;
}

.news_list .txt01 .image{
  display:block;
  margin-top:25px; 
}

@media screen and (max-width: 1050px) {
  .sub_kv{
    margin-top:3.73vw;
    height:53.3vw; 
  }
  
  .sub_kv:after{
    width:49.3vw;
    height:53.3vw;
    right:-26.5vw;
    bottom:0;
    background:url(../images/common/sub_kv_red_sp.svg) no-repeat left top;
    background-size:100% auto;
  }
  
  .sub_kv.kv_mufg:after{
    background:url(../images/common/sub_kv_mufg_sp.svg) no-repeat left top;
    background-size:100% auto;
  }
  
  .sub_kv.kv_jcb:after{
    background:url(../images/jcb/sub_kv_jcb_sp.svg) no-repeat left top;
    background-size:100% auto;
  }
  
  .sub_kv.kv_gift:after{
    background:url(../images/gift/sub_kv_gift_sp.svg) no-repeat left top;
    background-size:100% auto;
  }
  
  .sub_kv h2{
    padding-top:18.6vw;
    font-size: 7.4vw;
    padding-left:2.6vw;
  }
  
  .sub_kv h2.min{
    padding-top:15.6vw; 
  }
  
  .sub_kv h2 span{
    font-size: 2.6vw;
    margin-bottom:2vw;
  }
  
  
  .news_list .txt01{
    font-size: 4.26vw;
    line-height: 8vw;
    margin-top:13.3vw;
  }
  
  .news_list .txt01 a.blank:after{
    width:3.73vw;
    height:3.73vw;
    margin-left:2vw;
  }
  
  .news_list .txt01 .image{
    margin-top:4vw; 
  }
}

/*news------------------------------------------------------------*/


/* CARD detail
------------------------------------------------------------*/

.card_detail .page_link{
  padding-top:25px; 
  display:flex;
  flex-wrap:wrap;
}

.card_detail .page_link.page_link2{
  padding-top:0; 
}

.card_detail .page_link li{
  padding-top:25px;
  width:310px; 
  margin-right:23px;
}

.card_detail .page_link li:nth-child(3n){
  margin-right:0; 
}

.card_detail .page_link li a{
  display:block;
  width: 310px;
  height: 40px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid #707070;
  box-sizing:border-box;
  text-align:center;
  padding-top:11px;
  text-decoration:none;
  font-size: 13px;
  color: #535353;
  font-weight:bold;
  position:relative;
  transition: all 0.4s;
}

.card_detail .page_link li a:hover{
  color:#FFF;
  background:#d32c1f;
  border-color:#d32c1f; 
}

.card_detail .page_link li a span{
  position:absolute;
  right:10px;
  top:11px;
}

.card_detail .page_link li a .icon_btm{
  fill: none;
  stroke: #535353;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2px;
  transition: all 0.4s;
}

.card_detail .page_link li a:hover .icon_btm{
  stroke: #FFF;
}

.card_detail .card_detail_inner{
  margin-top:45px;
  border-radius: 5px;
  background: #fdf8f8; 
  padding:35px 40px 40px;
}

.card_detail .card_detail_inner h4,
.member .txt02.mufg h4,
.member .txt02.jcb h4{
  font-size: 21px;
  line-height:1.2;
  text-align: left;
  color: #d32c1f;
  padding-left:15px;
  position:relative;
}

.card_detail .card_detail_inner h4:before,
.member .txt02.mufg h4:before,
.member .txt02.jcb h4:before{
  content:"";
  display:block;
  width:7px;
  height:100%;
  background:#d32c1f;
  position:absolute;
  left:0;
  top:-1px;
}

.card_detail .card_detail_inner .box{
  margin-top:25px;
  display:flex;
  justify-content:space-between; 
}

.card_detail .card_detail_inner .box .box_l{
  width:300px; 
}

.card_detail .card_detail_inner .box .box_l .common_btn{
  margin-top:30px;
  width:100%; 
}

.card_detail .card_detail_inner .box .box_l .common_btn a{
  background:#FFF;
}

.card_detail .card_detail_inner .box .box_r{
  width:560px; 
}

.card_detail .card_detail_inner .box .box_r table{
  width:100%; 
}

.card_detail .card_detail_inner .box .box_r table th{
  width:110px;
  background:#535353;
  font-size: 14px;
  text-align: left;
  color: #fff;
  text-align:center;
  border-bottom:solid 2px #fdf8f8;
}

.card_detail .card_detail_inner .box .box_r table td{
  font-size: 13px;
  line-height: 20px;
  text-align: left;
  background:#FFF;
  padding:18px 15px 15px;
  border-bottom:solid 2px #fdf8f8;
}

.card_detail .card_detail_inner .box .box_r table tr:last-child th,
.card_detail .card_detail_inner .box .box_r table tr:last-child td{
  border-bottom:none; 
}

.card_detail .card_detail_inner .box .box_r table td span.big{
  font-size: 13px;
}

.card_detail .card_detail_inner .box .box_r table td span.big span,
.card_detail .card_detail_inner .box .box_r table td span{
  font-size:10px;
  line-height:1.2;
}

.card_detail .card_detail_inner .box .box_r table td span.block{
  display:block;
  line-height:13px; 
}

.card_detail .card_detail_inner .box .box_r table td .rd{
  color:#d32c1f; 
}

.card_detail .card_detail_inner .box .box_r table td .mt{
  margin-top:5px; 
}

.card_detail .card_detail_inner .box .box_r table td a,
.gift_block .txt02 a.blank,
.common_txt03 a.blank{
  text-decoration:underline;
} 

.card_detail .card_detail_inner .box .box_r table td a:hover,
.gift_block .txt02 a.blank:hover,
.common_txt03 a.blank:hover{
  text-decoration:none; 
}

.card_detail .card_detail_inner .box .box_r table td a.blank:after,
.gift_block .txt02 a.blank:after,
.common_txt03 a.blank:after{
  content:"";
  display:inline-block;
  background:url(../images/top/card_icon_blank.svg) no-repeat left top;
  background-size:100% auto;
  width:14px;
  height:14px;
  position:relative;
  margin-left:2px;
  top:2px;
}

.common_txt03 a.blank{
  display:inline-block;
} 

.common_txt03 a.blank{
  color:#1c4b81; 
}

.common_txt03 a.blank:after{
  background:url(../images/top/card_icon_blank_2.svg) no-repeat left top;
  background-size:100% auto;
  top:1px;
}

@media screen and (max-width: 1050px) {
  .card_detail .page_link{
    padding-top:0; 
    display:block;
    flex-wrap:wrap;
  }
  
  .card_detail .page_link li{
    padding-top:0;
    width:100%; 
    margin-right:0;
    margin-bottom:4vw;
  }
  
  .card_detail .page_link.page_link2{
    padding-top:4vw; 
  }

  
  .card_detail .page_link li:last-child{
    margin-right:0; 
    margin-bottom:0;
  }
  
  .card_detail .page_link li a{
    display:block;
    width: 100%;
    height: 10.6vw;
    border-radius: 5.3vw;
    border: 0.26vw solid #707070;
    padding-top:2.6vw;
    font-size: 3.46vw;
  }
  
  .card_detail .page_link li a:hover{
    color:#535353;
    background:#FFF;
    border-color:#707070; 
  }
  
  .card_detail .page_link li a span{
    position:absolute;
    right:3.53vw;
    top:2.8vw;
  }
  
  .card_detail .page_link li a span svg{
    width:3.73vw;
    height:2.13vw; 
  }
  
  .card_detail .page_link li a .icon_btm{
    fill: none;
    stroke: #535353;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2px;
    transition: all 0.4s;
  }
  
  .card_detail .page_link li a:hover .icon_btm{
    stroke: #FFF;
  }
  
  .card_detail .card_detail_inner{
    margin-top:0;
    border-radius: 1.3vw;
    padding:5.6vw;
  }
  
  .card_detail .card_detail_inner h4,
  .member .txt02.mufg h4,
  .member .txt02.jcb h4{
    font-size: 4vw;
    line-height:5.3vw;
    padding-left:5.3vw;
  }
  
  .card_detail .card_detail_inner h4:before,
  .member .txt02.mufg h4:before,
  .member .txt02.jcb h4:before{
    width:1.6vw;
    height:100%;
    top:-0.1vw;
  }
  
  .card_detail .card_detail_inner .box{
    margin-top:2.6vw;
    display:block;
  }
  
  .card_detail .card_detail_inner .box .box_l{
    width:100%; 
  }
  
  .card_detail .card_detail_inner .box .box_l .common_btn{
    margin-top:5.3vw;
    width:100%;
  }
  
  .card_detail .card_detail_inner .box  .common_btn a{
    background:#FFF;
  }
  
  .card_detail .card_detail_inner .box .box_r{
    width:100%; 
  }
  
  .card_detail .card_detail_inner .box .box_r table{
    width:100%;
    margin-top:5.3vw;
  }
  
  .card_detail .card_detail_inner .box .box_r table th,
  .card_detail .card_detail_inner .box .box_r table td{
    display:block;
    width:100%;
    box-sizing:border-box;
  }
  
  .card_detail .card_detail_inner .box .box_r table th{
    font-size: 3.73vw;
    text-align: center;
    border-bottom:none;
    padding:1.8vw 0;
  }
  
  .card_detail .card_detail_inner .box .box_r table td{
    font-size: 3.46vw;
    line-height: 5.06vw;
    padding:3.5vw 4vw;
    border-bottom:none;
  }
  
  .card_detail .card_detail_inner .box .box_r table tr:last-child th,
  .card_detail .card_detail_inner .box .box_r table tr:last-child td{
    border-bottom:none; 
  }
  
  .card_detail .card_detail_inner .box .box_r table td span.big{
    font-size: 3.46vw;
  }
  
  .card_detail .card_detail_inner .box .box_r table td span.big span,
  .card_detail .card_detail_inner .box .box_r table td span{
    font-size:3vw;
    line-height:1.2;
  }
  
  .card_detail .card_detail_inner .box .box_r table td span.block{
    display:block;
    line-height:1.2; 
  }
  
  .card_detail .card_detail_inner .box .box_r table td .mt{
    margin-top:2vw; 
  }
  
  
  .card_detail .card_detail_inner .box .box_r table td a.blank:after,
  .gift_block .txt02 a.blank:after,
  .common_txt03 a.blank:after{
    width:3.73vw;
    height:3.73vw;
    margin-left:1vw;
    top:0.5vw;
  }
}

/*CARD detail------------------------------------------------------------*/

/* CARD detail jcb
------------------------------------------------------------*/


.card_detail.jcb .page_link li a:hover{
  background:#1c4b81;
  border-color:#1c4b81; 
}

.card_detail.jcb .common_btn a{
  border: 1px solid #1c4b81;
  color: #1c4b81; 
}


.card_detail.jcb .card_detail_inner{
  background: #f2f3f7; 
}

.card_detail.jcb .card_detail_inner h4,
.member .txt02.jcb h4{
  color: #1c4b81;
}

.card_detail.jcb .card_detail_inner h4:before,
.member .txt02.jcb h4:before{
  background:#1c4b81;
}

.card_detail.jcb .card_detail_inner .box .box_l p{
  font-size: 16px;
  margin-top:3px;
  text-align:center;
}

.card_detail.jcb .card_detail_inner .box .box_l .image{
  margin-top:13px; 
}

.card_detail.jcb .card_detail_inner .common_btn{
  width:500px; 
}

.card_detail.jcb .card_detail_inner .common_btn a{
  background:#FFF;   
}

.card_detail.jcb .card_detail_inner .box .box_r table td .rd,
.card_detail.jcb .card_detail_inner .box .box_r table td a{
  color:#1c4b81; 
}

.card_detail.jcb .card_detail_inner .box .box_r table td a.blank:after{
  background:url(../images/top/card_icon_blank_2.svg) no-repeat left top;
  background-size:100% auto;
}

.card_detail.jcb .common_h3:after{
	background:#1c4b81;
}

@media screen and (max-width: 1050px) {
  
  .card_detail.jcb .card_detail_inner .box .box_l p{
    font-size: 4.26vw;
    margin-top:1.5vw;
    text-align:center;
  }
  
  .card_detail.jcb .card_detail_inner .box .box_l .image{
    margin-top:2.6vw; 
  }
  
  .card_detail.jcb .card_detail_inner .common_btn{
    width:100%; 
  }

}

/*CARD detail jcb------------------------------------------------------------*/

/* gift
------------------------------------------------------------*/
.common_top{
  margin-top:80px;  
}

.gift_block .txt01{
  font-size: 18px;
  line-height: 30px;
}

.gift_block .txt02{
  margin-top:45px;
  background:#fafafa;
  padding:33px 40px 30px;
}

.gift_block .txt02.mt_min{
  margin-top:20px;
}


.gift_block .txt02 h4{
  font-size:18px;
  color:#d60138;
  font-weight:bold;
}

.gift_block .txt02 p{
  margin-top:10px;
  font-size: 15px;
  line-height: 30px;
  text-align: left;
}

.gift_block .txt02 .image01{
  margin-top:10px;
  display:flex; 
}

.gift_block .txt02 .image01 li{
  margin-right:30px; 
}

.gift_block .txt02 span.mt{
  display:block;
  margin-top:10px;
}

.gift_block .txt02 span.min{
  display:block;
  font-size:10px;
  line-height:1.8;
}

.gift_block .txt02 span.bg{
  display:inline-block;
  width:110px;
  height:40px; 
  background: #535353;
  margin-right:10px;
  text-align:center;
  color:#FFF;
  font-weight:bold;
  box-sizing:border-box;
  padding-top:6px;
}


@media screen and (max-width: 1050px) {
  .sp_mt0{
    margin-top:0 !important; 
  }
  .common_top{
    margin-top:10.6vw;  
  }
  
  .gift_block .txt01{
    font-size: 4vw;
    line-height: 7.46vw;
  }
  
  .gift_block .txt02{
    margin-top:5.3vw;
    background:#fafafa;
    padding:4vw 5.3vw 3.5vw;
  }
  
  .gift_block .txt02.mt_min{
    margin-top:2.6vw;
  }
  
  
  .gift_block .txt02 h4{
    font-size:4.8vw;
  }
  
  .gift_block .txt02 p{
    margin-top:2vw;
    font-size: 4vw;
    line-height: 6.4vw;
  }
  
  .gift_block .txt02 .image01{
    margin-top:1.3vw;
    display:block; 
  }
  
  .gift_block .txt02 .image01 li{
    margin-right:0; 
    margin-bottom:1.3vw;
  }
  
  .gift_block .txt02 .image01 li:last-child{
    margin-bottom:0; 
  }
  
  .gift_block .txt02 span.mt{
    display:block;
    margin-top:1.3vw;
  }
  
  .gift_block .txt02 span.min{
    font-size:2.93vw;
    line-height:1.8;
  }
  
  .gift_block .txt02 span.bg{
    display:inline-block;
    width:26vw;
    height:8vw; 
    margin-right:2vw;
    font-weight:bold;
    box-sizing:border-box;
    padding-top:1vw;
  }
}

/*gift------------------------------------------------------------*/

/* support
------------------------------------------------------------*/

.gift_block .txt03,
.common_txt03{
  font-size: 18px;
  line-height: 30px;
  margin-top:45px;
}

.gift_block .txt03 span.min,
.common_txt03 span.min{
  font-size: 10px;
  display:block;
  line-height:1;
}

@media screen and (max-width: 1050px) {
  .gift_block .txt03,
  .common_txt03{
    font-size: 4vw;
    line-height: 7.46vw;
    margin-top:0;
  }
  
  .gift_block .txt03 span.min,
  .common_txt03 span.min{
    font-size: 2.93vw;
    display:block;
    line-height:1;
  }
}

/*support------------------------------------------------------------*/

/* contact
------------------------------------------------------------*/

.gift_block.contact .txt02 h4{
  font-size: 16px;
  color:#535353;
}

.mt0{
  margin-top:0 !important;
}

.fuki_icon{
  fill: #d32c1f;
  transition: all 0.4s;
}

a:hover .fuki_icon,
.contact_btn li:nth-child(2) a:hover span .common_icon_blank{
  fill: #FFF !important;
}


.contact_btn li:nth-child(2) a .fuki_icon,
.contact_btn li:nth-child(2) a span .common_icon_blank{
  fill: #1c4b81;
}
.contact_btn{
  display:flex;
  margin-top:45px; 
}

.contact_btn li.common_btn{
  margin-top:0;
  width:470px; 
}

.contact_btn li.common_btn .fuki{
  position:absolute;
  left:70px;
  top:23px;
}

.contact_btn li.common_btn:nth-child(2) .fuki .fuki_icon{
  fill: #1c4b81;
}



@media screen and (max-width: 1050px) {
  
  .gift_block.contact .txt02 h4{
    font-size: 4.8vw;
  }
  
  .contact_btn{
    display:block;
    margin-top:0; 
  }
  
  .contact_btn li.common_btn{
    margin-top:0;
    width:100%; 
  }
  
  .contact_btn li.common_btn a{
    line-height:5.86vw;
    padding-top:4vw; 
  }
  
  .contact_btn li.common_btn .fuki{
    position:absolute;
    left:12.8vw;
    top:5vw;
  }
  
  .contact_btn li.common_btn .fuki svg{ 
    width:10.6vw;
    height:8.8vw;
  }
  
  .contact_btn li.common_btn:nth-child(2){
    margin-top:5.3vw; 
  }
  
  .contact_btn li.common_btn:nth-child(2) .fuki .fuki_icon{
    fill: #1c4b81;
  }
}

/*contact------------------------------------------------------------*/

/* member
------------------------------------------------------------*/

.member_block02,
.member_block03{
  margin-top:45px;
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap; 
}

.member_block02 li{
  width: 480px;
  height: 190px;
  background: #fafafa;
  padding:45px 30px 0;
  box-sizing:border-box;
}

.member_block02 li:nth-child(1),
.member_block02 li:nth-child(2){
  margin-bottom:20px; 
}

.member_block02 li h4{
  font-size: 22px;
  font-weight:bold;
  text-align: left;
  color: #d60138; 
}

.member_block02 li h4 span{
  display:inline-block;
  margin-right:9px;
}

.member_block02 li .box{
  margin-top:10px;
  display:flex;
  justify-content:space-between; 
}

.member_block02 li .box .box_l{
  width:85px;
  text-align:center; 
}

.member_block02 li .box .box_r{
  width:318px;
  font-size: 15px;
  line-height: 24px;
}

.member_block04{
  margin-top:45px;
}

.member_block04 .txt01{
  font-size: 18px; 
}

.member_block04 ul{
  margin-top:50px;
  display:flex;
  justify-content:space-between; 
  flex-wrap:wrap;
}

.member_block04 ul li{
  width: 300px;
  height: 230px;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  position:relative;
  margin-bottom:55px;
}

.member_block04 ul li:before{
  content:"";
  display:block;
  background:url(../images/member/icon_right.svg) no-repeat left top;
  background-size:100% auto;
  width:18px;
  height:30px;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  right:-29px;
}

.member_block04 ul li:nth-child(3):before,
.member_block04 ul li:last-child:before{
  display:none;
}

.member_block04 ul li:nth-child(4),
.member_block04 ul li:nth-child(5),
.member_block04 ul li:nth-child(6){
  margin-bottom:0; 
}

.member_block04 ul li h4{
  text-align:center;
  padding-top:90px;
  text-align:center;
  font-size: 22px;
  font-weight:bold;
  color: #d60138; 
}

.member_block04 ul li h4 .min{
  font-size:12px; 
}

.member_block04 ul li h4 .icon{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  top:-25px; 
}

.member_block04 ul li p{
  padding:15px 30px 0;
  font-size: 15px;
  line-height: 24px; 
}

@media screen and (max-width: 1050px) {
  .member_block02,
  .member_block03{
    margin-top:10.6vw;
    display:block;
  }
  
  .member_block02 li{
    width: 100%;
    height: auto;
    padding:23.3vw 0px 3vw;
    position:relative;
  }
  
  .member_block02 li:nth-child(1),
  .member_block02 li:nth-child(2),
  .member_block02 li:nth-child(3){
    margin-bottom:13.3vw; 
  }
  
  .member_block02 li h4{
    font-size: 5.86vw;
    text-align: center;
  }
  
  .member_block02 li h4 span{
    display:block;
    margin-right:0;
    width:22.6vw;
    position:absolute;
    left:50%;
    top:-3.5vw;
    transform:translateX(-50%);
  }
  
  .member_block02 li .box{
    margin-top:2vw;
    display:block;
  }
  
  .member_block02 li .box .box_l{
    width:100%;
    text-align:center; 
    position:absolute;
    left:0;
    top:6vw;
  }
  
  .member_block02 li:nth-child(1) .box .box_l svg{
    width:20.26vw;
    height:13.86vw; 
  }
  
  .member_block02 li:nth-child(2) .box .box_l svg{
    width:15.73vw;
    height:16vw; 
  }
  
  .member_block02 li:nth-child(3) .box .box_l svg{
    width:17.06vw;
    height:14.66vw; 
  }
  
  .member_block02 li:nth-child(4) .box .box_l svg{
    width:13.3vw;
    height:14.66vw; 
  }
  
  .member_block02 li .box .box_r{
    width:100%;
    font-size: 4vw;
    line-height: 6.4vw;
    text-align:center;
  }
  
  .member_block04{
    margin-top:10.6vw;
  }
  
  .member_block04 .txt01{
    font-size: 4vw; 
    line-height:7.46vw;
  }
  
  .member_block04 ul{
    margin-top:12vw;
    display:block;
  }
  
  .member_block04 ul li{
    width: 100%;
    height: 61.3vw;
    border-radius: 1.3vw;
    margin-bottom:14.6vw;
  }
  
  .member_block04 ul li:before,
  .member_block04 ul li:nth-child(3):before{
    content:"";
    display:block;
    background:url(../images/member/icon_btm.svg) no-repeat left top;
    background-size:100% auto;
    width:10.93vw;
    height:6.6vw;
    top:60vw;
    left:50%;
    transform:translateX(-50%);
    right:auto;
  }
  
  
  .member_block04 ul li:last-child:before{
    display:none;
  }
  
  .member_block04 ul li:nth-child(4),
  .member_block04 ul li:nth-child(5){
    margin-bottom:14.6vw;
  }
  
  .member_block04 ul li:nth-child(6){
    margin-bottom:0; 
  }
  
  .member_block04 ul li h4{
    text-align:center;
    padding-top:22.6vw;
    font-size: 5.86vw;
  }
  
  .member_block04 ul li h4 .min{
    font-size:3.2vw; 
  }
  
  .member_block04 ul li h4 .icon{
    width:26.6vw;
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    top:-8vw; 
  }
  
  .member_block04 ul li p{
    padding:1.3vw 0px 0;
    font-size: 4vw;
    line-height: 6.4vw; 
    text-align:center;
  }
}


.gift_block .txt02.jcb,
.gift_block .txt02.mufg{
  border: 2px solid #1c4b81;
  border-radius:5px; 
  background:#FFF;
}

.gift_block .txt02.mufg{
  border-color:#d32c1f; 
}

.gift_block .txt02.jcb .image,
.gift_block .txt02.mufg .image{
  margin-top:20px; 
}

.gift_block .txt02.jcb p,
.gift_block .txt02.mufg p{
  margin-top:20px;
  font-size: 16px;
  text-align: left;
  color: #535353;
}

.gift_block .txt02.jcb p span{
  display:inline-block;
  margin-left:60px; 
}

.gift_block .txt02.jcb p a{
  color:#1c4b81; 
}

.gift_block .txt02.jcb p a.blank:after{
  background:url(../images/top/card_icon_blank_2.svg) no-repeat left top;
  background-size:100% auto;
  top:1px;
}

@media screen and (max-width: 1050px) {
  .gift_block .txt02.jcb,
  .gift_block .txt02.mufg{
    border-width:0.53vw;
  }
  
  .gift_block .txt02.jcb .image,
  .gift_block .txt02.mufg .image{
    margin-top:4vw; 
  }
  
  .gift_block .txt02.jcb p,
  .gift_block .txt02.mufg p{
    margin-top:3vw;
    font-size: 3.73vw;
  }
  
  .gift_block .txt02.jcb p span{
    display:block;
    margin-left:0px;
    margin-top:2vw;
  }
  
  .gift_block .txt02.jcb p a.blank:after{
    background:url(../images/top/card_icon_blank_2.svg) no-repeat left top;
    background-size:100% auto;
    top:0.8vw;
  }
}

/*member------------------------------------------------------------*/

/* company
------------------------------------------------------------*/
.company table{
  margin-top:20px; 
}

.company table{
  width:100%; 
}

.company table th{
  width:360px;
  background:#535353;
  font-size: 14px;
  text-align: left;
  color: #fff;
  text-align:center;
  border-bottom:solid 2px #FFF;
}

.company table td{
  font-size: 13px;
  line-height: 20px;
  text-align: left;
  background:#fafafa;
  padding:18px 15px 15px;
  border-bottom:solid 2px #FFF;
}

.company table td span.txt{
  display:inline-block;
  margin-left:10px;
  position:relative;
  top:3px;
} 

.map{
  margin-top:45px; 
}


@media screen and (max-width: 1050px) {
  
  .company table{
    margin-top:6.6vw; 
  }
  
  .company table{
    width:100%; 
  }
  
  .company table th,
  .company table td{
    display:block;
    width:100%;
    box-sizing:border-box;
  }
  
  .company table th{
    font-size: 3.73vw;
    text-align: center;
    border-bottom:none;
    padding:1.8vw 0;
  }
  
  .company table td{
    font-size: 3.46vw;
    line-height: 5.06vw;
    padding:3.5vw 4vw;
    border-bottom:none;
  }
  
  .company table td img{
    width:40vw;
    height:auto; 
  }
  
  .company table td span.txt{
    display:inline-block;
    margin-left:3vw;
    position:relative;
    top:1.7vw;
  } 
  
  .map{
    margin-top:0; 
  }
  
  .map iframe{
    width:100%;
    height:90vw; 
  }
}

/*company------------------------------------------------------------*/


/* TOP slide
------------------------------------------------------------*/
.swiper-pagination {
  text-align: left !important;
  padding-left:20px !important;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin:0 !important;
}

.swiper-pagination-bullet {
  width: 70px !important;
  border-radius:0 !important;
  background: #efefef !important;
  opacity:1 !important;
}

.swiper-pagination-bullet.swiper-pagination-bullet-active{
  background:#d60138 !important;
}



@media screen and (max-width: 1050px) {
  
  .swiper-pagination {
    text-align: left !important;
    padding-left:2.6vw !important;
  }
  .swiper-pagination-bullet {
    width: 9.3vw !important;
    height:2.13vw !important
  }
  
  .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background:#d60138 !important;
  }
}

/*/TOP slide------------------------------------------------------------*/
