@charset "utf-8";

/*----- header ----*/
#header.txt_none{
    background: no-repeat;
    height: 100px;
}
.head_cv{
    background: url(../img/add_header/bg.jpg) no-repeat left center #ededed;
    background-size: 330px;
    float: right;
    padding: 5px 20px 8px 70px;
    margin: 10px 10px 0 0;
}
.head_cv p{
    max-width: 218px;
    margin: 0 0 -2px;
    line-height: 1;
}
.head_cv p img,.head_cv a img{
    max-width: 100%;
    vertical-align: bottom;
    transition: .3s all;
}
.head_cv a{
    display: inline-block;
    vertical-align: middle;
    width: 106px;
    height: 38px;
    overflow: hidden;
}
.head_cv a:hover img{
    max-width: 100%;
    vertical-align: bottom;
    transition: .3s all;
    transform: translateY(2px);
}

/*2021.01.13*/
.header_cv{
    margin: 14px 0 10px;
}
.header_cv ul{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.header_cv ul li{
    margin: 0 0 0 15px;
}
.header_cv ul li img{
    max-width: 100%;
}


/*----- footer ----*/
.n-footer .n-contents ul li.ft_cv{
    background: url(../img/add_footer/cv_ico.png) no-repeat 15px 5px;
    background-size: 65px;
    text-align: right;
    width: 470px!important;
    padding: 20px 0 0 7px!important;
}
.n-footer .n-contents ul li.ft_cv a{
    display: inline-block;
    width: 146px;
    height: 60px;
}
.n-footer .n-contents ul li.ft_cv a img{
	transition: .3s all;
	vertical-align: bottom;
    width: 146px;
    height: 60px;
}
.n-footer .n-contents ul li.ft_cv a:hover img {
    transform: translateY(2px);
}
.n-footer .n-contents ul li.ft_cv p{
    position: absolute;
    top: 0px;
    right: 12px;
    margin: 0!important;
    max-width: 280px;
}
.n-footer .n-contents ul li.ft_cv span{
    position: absolute;
    width: 140px;
    background: no-repeat;
    right: 75px;
    bottom: -20px;
}
.add_footer{
    padding: 15px 0!important;
}
div.n-footer.add_footer .n-contents p.n-btn_text {
    position: absolute;
    left: 240px;
    right: 380px;
    top: 12px;
    margin: auto;
    text-align: center;
    color: #fff;
    font-size: 13px;
    letter-spacing: 0.05em;
}
div.n-footer.add_footer .n-contents ul li:nth-child(2) img {
    width: 150px;
    height: 50px;
    margin: 0;
}
div.n-footer.add_footer .n-contents ul li:nth-child(3) img {
    width: 150px;
    height: 50px;
    margin: 0 4px 0 0;
}

/*----- 2021.01.13 ----*/
#section_footer_fix2in.n-footer.add_footer2{
    background: rgb(0 0 0 / 0.8);
}
.n-footer.add_footer2 .n-contents ul{
    display: flex;
    justify-content: space-between;
}
.n-footer.add_footer2 .n-contents ul li img{
    max-width: 100%;
    width: auto!important;
    height: auto!important;
}
.n-footer.add_footer2 .n-contents ul li:nth-of-type(1),.n-footer.add_footer2 .n-contents ul li:nth-of-type(2){
    max-width: 190px;
    position: relative;
}
.n-footer.add_footer2 .n-contents ul li:nth-of-type(2){
    margin: 0 0 0 10px;
}
.n-footer.add_footer2 .n-contents ul li:nth-of-type(3){
    max-width: 210px;
    position: relative;
}
.n-footer.add_footer2 .n-contents ul li:nth-of-type(1)::after{
    content: "";
    display: block;
    width: 5px;
    height: 65px;
    background: url(../img/renewal/line.png) no-repeat center;
    background-size: contain;
    position: absolute;
    right: -15px;
    top: 0;
}
div.n-footer.add_footer2 .n-contents ul li:nth-child(4) {
    width: 300px;
    margin: 5px 0 0 0;
    padding: 0 0 0 0;
    border-left: none;
    height: auto;
    align-items: flex-end;
}
.n-footer.add_footer2 .n-contents ul li{
    
}
.n-footer.add_footer2 .n-contents ul li{
    
}
.n-footer.add_footer2 .n-contents ul li{
    
}


/*----- support ----*/
#wrapper_contents.support_wrap{
	background: #fff;
}
#wrapper_contents.support_wrap #wrapper_contents_in{
	background: #fff;
}
.support_box{
    margin: 20px auto 20px auto;
    padding: 20px 0 0;
    width: 950px;
    background: #FFF;
}
.support_box h2{
	font-size: 30px;
	letter-spacing: 0.1em;
	margin: 0 0 40px;
	color: #535353;
	position: relative;
}
.support_box h2::before{
	content: "";
	width: 100%;
	height: 1px;
	background: #e6e3e3;
	position: absolute;
	left: 0;
	top: 50%;
}
.support_box h2 span{
    position: relative;
    z-index: 1;
    background: url(../img/image/support/ttl_ico.jpg) no-repeat left center #fff;
    background-size: contain;
    font-weight: normal!important;
    padding: 20px 20px 20px 80px;
    cursor: auto;
    display: inline-block;
    vertical-align: middle;
}
.support_box p{
	font-size: 16px;
	line-height: 1.6;
	text-align: justify;
	letter-spacing: 0.1em;
	color: #535353;
}
.support_box ul{
	margin: 40px auto 60px;
    max-width: 800px;
}
.support_box ul li{
	margin: 0 0 0;
}
.support_box ul li img{
    max-width: 100%;
}
.support_box h3.sup_ttl{
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    margin: 60px 0 40px;
    color: #1f539f;
}
.support_faq h3{
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    margin: 80px 0 40px;
    color: #5a5a5a;
}
.support_faq ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.support_faq ul li{
    width: 33.3333%;
    margin: 0 0 0;
}
.support_faq ul li img{
    max-width: 100%;
}

.support_faq_list{
    margin: 20px auto;
    padding: 20px 0 120px;
    max-width: 800px;
    background: #FFF;
}
.support_faq_list h3 {
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    margin: 80px 0 40px;
    color: #5a5a5a;
}
.support_faq_list h4 {
    text-align: center;
    font-size: 20px;
    font-weight: normal;
    margin: -60px 0 60px;
    padding: 140px 0 0;
    color: #5a5a5a;
}
.support_faq_list dl{
    border-bottom: solid 1px #f2f1f2;
}
.support_faq_list dt{
    background: url(../img/image/support/q.svg) no-repeat 0 22px;
    background-size: 30px;
    position: relative;
    color: #989898;
    font-size: 16px;
    line-height: 1.6;
    letter-spacing: 0.05em;
    padding: 25px 0 25px 40px;
    cursor: pointer;
}
.support_faq_list dt::after{
    content: "";
    display: block;
    position: absolute;
    right: 10px;
    top: 30px;
    width: 15px;
    height: 15px;
    background: url(../img/image/support/open.svg) no-repeat center;
}
.support_faq_list dt.open::after{
    content: "";
    display: block;
    position: absolute;
    right: 10px;
    top: 30px;
    width: 15px;
    height: 15px;
    background: url(../img/image/support/close.svg) no-repeat center;
}
.support_faq_list dd{
    display: none;
    background: url(../img/image/support/a.svg) no-repeat 30px 35px #F2F1F2;
    background-size: 30px;
    padding: 80px 60px 60px;
    font-size: 18px;
    line-height: 1.6;
    letter-spacing: 0.05em;
    color: #4D4D4D;
}
.support_faq_list dd p{
    margin: 20px 0 0;
    font-size: 16px;
    line-height: 1.6;
}
.support_faq_list dd p:first-child{
    margin: 0;
}
.support_faq_list dd p a{
    color: #0071BB;
    text-decoration: underline;
}
.support_faq_list dd p b.red{
    color: #cc0032;
}
.support_faq_list dd span{
    display: inline-block;
    background: url(../img/image/support/line.png) 0 15px no-repeat;
    background-size: 100% 10px;
    margin: 0 0 10px;
    font-weight: normal!important;
}
.support_faq_list dd ul{
    background: #FFFFFF;
    margin: 25px 0 0;
    padding: 20px 25px;
}
.support_faq_list dd ul li a{
    display: inline;
    vertical-align: bottom;
}
.support_faq_list dd ul li:nth-of-type(1){
    margin: 0 0 15px;
}
.support_faq_list dd ul li:nth-of-type(1) img{
    max-width: 50%;
    vertical-align: bottom;
}
.support_faq_list dd ul li:nth-of-type(2) img{
    max-width: 58%;
    vertical-align: bottom;
}

.support_faq_list .btn_box01{
    margin: 40px 0 0;
}
.support_faq_list .btn_box01 a {
    display: block;
    background: #fff;
    padding: 20px 30px;
    position: relative;
}
.support_faq_list .btn_box01 a::after {
    content: "";
    width: 15px;
    height: 15px;
    background: url(../img/image/support/close.svg) no-repeat center;
    transform: rotate(90deg) translate(-50%,0%);
    position: absolute;
    right: 20px;
    top: 50%;
}
.support_faq_list .btn_box01 a img {
    max-width: 35%;
    display: block;
}
.support_faq_list .btn_box02{
    margin: 40px 0 0;
}
.support_faq_list .btn_box02 a {
    display: block;
    background: #fff;
    padding: 20px 30px;
    position: relative;
}
.support_faq_list .btn_box02 a img{
    display: block;
    max-width: 70%;
}


/*----- choice ----*/
.choice_box {
    margin: 0 auto;
    padding: 240px 0;
    background: #FFF;
    text-align: center;
    border-top: solid 1px #ddd;
}
.choice_box h2{
    font-size: 30px;
    letter-spacing: 0.1em;
    margin: 0 0 20px;
    padding: 0 20px 20px;
    color: #535353;
    position: relative;
    border-bottom: solid 1px #ddd;
    display: inline-block;
}
.choice_box p{
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.05em;
}
.choice_box ul{
    margin: 40px 0 0;
}
.choice_box ul li{
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    max-width: 200px;
    margin: 0 10px;
}
.choice_box ul li a{
    display: block;
    font-size: 18px;
    font-weight: bold;
    color: #545454;
    border: solid 2px #545454;
    padding: 20px 0;
    border-radius: 6px;
    box-shadow: 2px 2px 6px rgb(0 0 0 / 31%);
    transition: .3s all!important;
}
.choice_box ul li a:hover{
    box-shadow: 0px 0px 0px rgb(0 0 0 / 31%);
    transition: .3s all!important;
}


/*----- mobilewifi ----*/
.mobilewifi{
    background: #fbedc0;
}
.mobilewifi_fv{
    text-align: center;
    background: #fbedc0;
}
.mobilewifi_fv img{
    vertical-align: bottom;
}
.mobilewifi_box{
    background: #fff;
    max-width: 910px;
    margin: 35px auto;
    box-sizing: border-box;
    padding: 45px 30px;
}
.mobilewifi_box h2{
    text-align: center;
    font-size: 25px;
    margin: 0 0 25px;
    font-weight: bold;
}
.mobilewifi_box p{
    font-size: 16px;
    line-height: 24px;
    text-align: justify;
    padding: 0 40px;
    margin: 0 0 62px;
    letter-spacing: 0.05em;
}
.note_box01{
    border: solid 1px #cc0033;
    padding: 45px 50px 35px;
    margin: 0 0 25px;
    position: relative;
}
.note_box01 h3{
    background: #cc0033;
    position: absolute;
    top: -25px;
    left: 0;
    right: 0;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    width: 150px;
    padding: 15px 0;
    margin: auto;
    text-align: center;
}
.note_box01 li{
    font-size: 16px;
    line-height: 24px;
    position: relative;
    padding: 0 0 0 15px;
    margin: 8px 0;
}
.note_box01 li span{
    position: absolute;
    left: 0;
    top: 0;
}
.note_list li{
    font-size: 12px;
    line-height: 20px;
    position: relative;
    padding: 0 0 0 11px;
    margin: 8px 0;
    color: #3a3a3a;
}
.note_list li span{
    position: absolute;
    left: 0;
    top: 0;
}
.mobilewifi_btn{
    text-align: center;
    padding: 15px 0 45px;
}
.mobilewifi_btn h4{
    margin: 0 0 35px;
}
.mw_btn01{
    margin: 0 0 75px;
}
@keyframes anime{
    0%{transform:scale(.95); opacity:1}
    90%{opacity:.1}to{transform:scale(1.15,1.35); opacity:0}
}
.mw_btn01 a{
  position: relative;
  transition: .2s!important;
  display: inline-block;
  overflow: visible;
}
.mw_btn01 a img{
    position: relative;
    z-index: 3;
}
.mw_btn01 a:before, .mw_btn01 a:after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: -4px;
  left: 0;
  border-radius: 100px;
  background: #ffaaae;
  border: 1px solid #ff999e;
  transform: translate3d(0,0,0);
}
.mw_btn01 a:before {
  animation: anime 2s ease-out infinite;
}
.mw_btn01 a:after {
 animation: anime 2s ease-out 1s infinite;
}


/*----- router ----*/
.router{
    background: #e3effc;
}
.router_fv{
    text-align: center;
    background: #e3effc;
}
.router_fv img{
    vertical-align: bottom;
}
.router_box{
    background: #fff;
    max-width: 910px;
    margin: 35px auto;
    box-sizing: border-box;
    padding: 45px 30px;
}
.router_box h2{
    text-align: center;
    font-size: 25px;
    margin: 0 0 25px;
    font-weight: bold;
}
.router_box p{
    font-size: 16px;
    line-height: 24px;
    text-align: justify;
    padding: 0 40px;
    margin: 0 0 62px;
    letter-spacing: 0.05em;
}
.router .note_box01{
    border: solid 1px #fdd102;
    padding: 85px 50px 35px;
    margin: 0 0 25px;
    position: relative;
}
.router .note_box01 h3{
    background: #fdd102;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    color: #fff;
    font-size: 25px;
    font-weight: bold;
    width: auto;
    max-width: 450px;
    padding: 15px 0;
    margin: auto;
    text-align: center;
    border-radius: 100px;
    color: #e70520;
    transform: translateY(-50%);
}
.router .note_box01 h3::after{
    content: "";
    display: block;
    position: absolute;
    right: 0;
    left: 0;
    bottom: -9px;
    width: 20px;
    height: 20px;
    background: #fdd102;
    transform: rotate(45deg);
    margin: auto;
}
.router .note_box01 h3 span{
    font-size: 16px;
    font-weight: bold;
    color: #000;
    display: block;
    margin: 0 0 10px;
}
.router .note_box01 h3 b{
    font-weight: bold;
}
.router .note_box01 li{
    font-size: 16px;
    line-height: 24px;
    position: relative;
    padding: 0 0 0 15px;
    margin: 8px 0;
}
.router .note_box01 li span{
    position: absolute;
    left: 0;
    top: 0;
}
.c_logo{
    margin: 0 0 20px;
}
.note_list li{
    font-size: 12px;
    line-height: 20px;
    position: relative;
    padding: 0 0 0 11px;
    margin: 8px 0;
    color: #3a3a3a;
}
.note_list li span{
    position: absolute;
    left: 0;
    top: 0;
}
.router_btn{
    text-align: center;
    padding: 15px 0 45px;
}
.router_btn h4{
    margin: 0 0 35px;
}
.mw_btn01{
    margin: 0 0 75px;
}
.router .mw_btn01 a:before,.router .mw_btn01 a:after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: -4px;
  left: 0;
  border-radius: 100px;
  background: #fdd102;
  border: 1px solid #fdd102;
  transform: translate3d(0,0,0);
}


/*----- reminder ----*/
.reminder_item01{
    border: solid 1px #ddd;
    max-width: 680px;
    margin: 20px auto 20px;
    text-align: center;
    box-sizing: border-box;
    padding: 10px 30px 10px;
}
.reminder_item01 img{
    max-width: 150px;
    margin: 0 0 20px;
}
.reminder_item01 p{
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: 0.08em;
    color: #616161;
}
.reminder_item01 p b{
    font-size: 17px;
    font-weight: bold;
}
.reminder_note p{
    text-align: center;
    font-size: 14px;
    color: #c31919;
    margin: 0 0 20px;
}
.reminder_item02{
    text-align: center;
}
.reminder_btn01{
    display: inline-block;
    background: #ddd;
    color: #313131;
    font-size: 16px;
    padding: 18px 20px;
    margin: 0 0 20px;
    border-radius: 10px;
}
.reminder_btn02{
    display: inline-block;
    color: #313131;
    text-decoration: underline;
    margin: 0 0 40px;
}
