/*common*/
html {
  font-family: 'Roboto', 'Noto Sans JP', "游ゴシック", "メイリオ", sans-serif;
  font-weight: 500; /*font-size Medium*/
  /* ルートのフォントサイズを10pxに設定しておく */
  font-size: 62.5%;
}
input::-webkit-credentials-auto-fill-button {
  margin: 0;
  width: 0;
  background-color: transparent;
  pointer-events: none;
}
body {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  font-size: 1.3rem;
  min-width: 980px;
  color: #000000;
  line-height: 1;
}
main {
  overflow-x: hidden;
}
table th,
table td,
header,
footer {
  font-size: 1.3rem;
}
a{
  text-decoration: none;
  color: #df0033;
}
a.pink-link {
  text-decoration: underline;
}
.campaign-link:hover {
  text-decoration: underline;
}
.remark-text,
.remark-text.campaign{
  font-size: 1.1rem;
}
p {
  margin-block-start: 0em;
  margin-block-end: 0em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  line-height: 2.0rem;
  margin: 0;
}
div.content-container {
  width: 100%;
  margin: auto;
}
div.section-container {
  max-width: 1100px;
  margin: auto;
  box-sizing: border-box;
}
.text-red {
  color: red;
}
.col75 {
  width: 75%;
}
.col50 {
  width: 50%;
}
input.col25 {
  width: 25% !important;
}
input.col20,
select.col20{
  width: 20% !important;
}
select {
  width: 30%;
  padding: 5px 2px 5px 5px;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  outline: none;
  box-shadow: none;
  margin-bottom: 0px;
  position: relative;
  border: 1px solid #bbbbbb;
  border-radius: 2px;
}
select::-ms-expand {
  display: none;
}
input::-ms-reveal {
  visibility:hidden
}
.select::before {
  position: absolute;
  top: 0.8em;
  right: 0.9em;
  width: 0;
  height: 0;
  padding: 0;
  content: "";
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #666666;
  pointer-events: none;
}
select:after {
  position: absolute;
  top: 0;
  right: 2.5em;
  bottom: 0;
  width: 1px;
  content: "";
  border-left: 1px solid #bbbbbb;
}
img{
  width: auto;
  height: auto;
}
h1,
ul.List {
  margin: 0em;
  padding-left: 0px;
  font-size: 62.5%;
}

ul {
  list-style-type: none;
}
div.form-plan-option-detail ul,
ul.spec-list {
  list-style-type: initial;
}
ul,
li,
dl,
dt,
dd{
  margin: 0;
  padding: 0;
}
div.main section.kv {
  background-color: #edeef0;
  position: relative;
  overflow: hidden;
  padding: 0;
}

@media screen and (max-width: 767px) {
  body{
    min-width: 0;
  }
  .remark-text {
    font-size: 0.9rem;
    line-height: 13px;
  }
  .remark-text.campaign{
    font-size: 0.9rem;
    line-height: 2.0rem;
  }
  div.section-container {
    max-width: 100%;
    padding: 0 8%;
  }
  section div.inner{
    padding: 0 5%;
  }
}

/*contents*/
.inner{
  max-width: 980px;
  margin: 0 auto;
  z-index: 4;
}

.margin-30{
  margin: 30px 0;
}
.margin-60{
  margin: 60px 0 10px;
}

div.news-area::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

div.news-area::-webkit-scrollbar-track {
  background: transparent;
}

div.news-area::-webkit-scrollbar-thumb{
  background: #505050;
  border-radius: 0.75em;
}

/*-------------------------------------------
    Header
-------------------------------------------*/
header{
  background-color: #FFFFFF;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  z-index: 10000;
  transition: .2s;
  height: 87px;
}
header.scroll{
  box-shadow: 0px 3px 3px rgb(0 0 0/20%);
}
header a{
  text-decoration: none;
}
header .inner{
  max-width: 980px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  height: 87px;
}
header .logo{
  width: 205px;
  margin: 0;
  padding: 15px 0;
  display: flex;
  align-items: center;
}
header .logo img{
  width: 100%;
}
header .logo-lp{
  width: 210px;
  padding: 22px 0 22px 15px;
}
header ul{
  width: calc(100% - 205px);
  display: flex;
  justify-content: flex-end;
  margin-block-start: 0em;
  margin-block-end: 0em;
}
header ul.sp_nav{
  display: none;
}
header ul li{
  text-align: center;
  letter-spacing: 0.11em;
  text-indent: -0.11em;
  list-style: none;
}
header ul li a{
  color: #000000;
}
header ul li.nav_type01{
  width: 100%;
  max-width: 100px;
  line-height: 1.3;
}
header ul li.nav_type01 a{
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  font-size: 14px;
  height: 20px;
  padding: 10px 0;
  margin-top: 23px;
}
header ul li.nav_type01 a:hover{
  color: #037e82;
}
header ul li.nav_type01 a:focus-visible{
  outline: 2px solid #000;
  border-radius: 4px;
}
header ul li.nav_type01 a::after:focus-visible{
  outline: 2px solid #000;
  border-radius: 4px;
  padding: 30px;
}
header ul li.nav_type02{
  min-width: 140px;
  display: flex;
  flex-direction: column;
}
header ul li.nav_type02 a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50%;
  letter-spacing: 0.04em;
  text-indent: -0.04em;
  transition: .3s all;
  background-color: #000000;
  color: #FFFFFF;
}
header ul li.nav_type02 a:first-child{
  border-bottom: solid 1px #FFFFFF;
}
header ul li.nav_type02 a:hover{
  background: #ffeef2;
  color: #DF0033;
}
header ul li.nav_type03{
  background: #DF0033;
  min-width: 150px;
  border-left: 1px solid #fff;
}
header ul li.nav_type03 a{
  color: #ffffff;
  font-size: 1.3rem;
  font-weight: 600;
  display: block;
  padding: 37px 0;
  transition: .3s all;
  letter-spacing: 0em;
  position: relative;
  text-indent: -1em;
}
header ul li.nav_type03 a.header-corp-entry{
  color: #ffffff;
  font-size: 1.3rem;
  font-weight: 600;
  display: block;
  padding: 24px 0;
  transition: .3s all;
  letter-spacing: 0em;
  position: relative;
  text-indent: unset;
  line-height: 1.5;
}
header ul li.nav_type03 a:hover{
  color: #DF0033;
  background: #ffeef2;
  height: -webkit-fill-available;
}
div.header-wrapper {
  max-width: 1100px;
  margin: 0 auto;
  height: 80px;
  text-align: center;
  position: relative;
  font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
  header {
    height: 77px;
  }
}
  /**************/
  /* Site header */
  /**************/

  .header-menu {
    position: relative;
    display: inline-block;
  }
  .header-menu-selected a::before,
  .header-menu::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -100;
    content: "";
    background: #edffff;
    transform-origin: right;
    transform: scale(0, 1);
    transition: transform 0.2s;
  }
  .header-menu-selected:hover a::before,
  .header-menu.active::before {
    transform-origin: left top;
    transform: scale(1, 1);
  }

@media screen and (max-width: 767px) {
  header{
    display: block;
    height: 77px;
  }
  header .logo,
  header .logo-lp{
    width: 40%;
  }
  header .inner{
    height: 77px;
    margin-left: 4%;
    align-items: center;
  }
  header ul {
    display: block;
    position: fixed;
    opacity: 1;
    z-index: 100;
    background: rgb(221 231 231/90%);
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    box-sizing: border-box;
    padding: 24% 10%;
  }
  header ul.sp_nav{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    transform: scale(1,0.5);
    transition: .3s all;
    opacity: 0;
    visibility: hidden;
    width: 100%;
  }
  header ul.sp_nav.clicked{
    transform: scale(1);
    opacity: 1;
    visibility: visible;
    display: block;
  }
  header ul.pc_nav{
    display: none;
  }
  header ul li{
    width: 100%;
  }
  header ul li a{
    font-weight: bold;
    font-size: 14px;
  }
  header ul li.sp_nav_type01 {
    width: 100%;
    background: #DF0033;
    border: solid 1px #DF0033;
    border-radius: 10px;
    line-height: 1;
  }
  header ul li.sp_nav_type01 a{
    background: url(../img/icon-entry-sp.svg) no-repeat 20% center;
    background-size: 20px;
    color: #ffffff;
    padding: 30px 0;
    display: block;
    text-indent: 1.5em;
  }
  header ul li.sp_nav_type01 a.header-corp-entry-sp-pop{
    background: url(../img/icon-entry-sp.svg) no-repeat 20% center;
    background-size: 20px;
    color: #ffffff;
    padding: 30px 0;
    display: block;
    text-indent: 2.5em;
  }
  header ul li.sp_nav_type02 {
    border: solid 1px #FFFFFF;
    width: 48%;
    line-height: 1;
    overflow: hidden;
    background: #ffffff;
    border-radius: 10px;
  }
  header ul li.sp_nav_type03 {
    width: 100%;
    background: #ffffff;
    line-height: 1;
    overflow: hidden;
    border-radius: 10px;
  }
  header ul li.sp_nav_type03 a {
    display: block;
    text-align: center;
    padding: 16px 0;
    font-size: 16px;
  }
  header ul li.sp_nav_type04{
    border: solid 1px #FFFFFF;
    width: 48%;
    line-height: 1;
    overflow: hidden;
    background: #ffffff;
    border-radius: 10px;
    margin: 0;
  }
  header ul li.sp_nav_type04 a{
    background: url(../img/arrow04.svg) no-repeat 90% center #FFFFFF;
    background-size: 8px;
    padding: 20px 0;
    display: block;
    text-indent: -0.5em;
  }

  /*SP メニューボタン*/
  #sp-menu {
    width: 35px;
    height: 29px;
    position: absolute;
    right: 20px;
    top: 22px;
    z-index: 999999;
    margin: 0;
    display: block;
    transition: .3s all;
  }
  #sp-menu.clicked{
    top: 25px;
  }
  #sp-menu span{
    position: absolute;
    width: 100%;
    height: 2px;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    left: 0;
    background: #000000;
  }
  #sp-menu span.top-border{
    top: 0;
  }
  #sp-menu span.middle-border{
    top: 13px;
    margin: 0;
  }
  #sp-menu span.last-border{
    top: 26px;
    margin: 0;
  }
  #sp-menu.clicked span.top-border{
    transform: rotate(-45deg);
    top: 15px;
  }
  #sp-menu.clicked span.last-border{
    transform: rotate(45deg);
    top: 15px;
  }
  #sp-menu.clicked span.middle-border{
    background: transparent;
  }
  .sp_btn{
    position: absolute;
    right: 80px;
    top: 50%;
    transform: translateY(-50%);
    display: block;
  }
  .sp_btn a{
    width: 100px;
    box-sizing: border-box;
    border: solid 1px #000000;
    padding: 8px 0;
    margin: 5px 0;
    display: block;
    text-align: center;
    font-size: 1rem;
    font-weight: bold;
    background-color: #000000;
    color: #FFFFFF;
  }
  .sp_btn a:nth-of-type(1){
    background: #DF0033;
    border: solid 1px #DF0033;
    color: #ffffff;
  }
}

/*-------------------------------------------
    ページKV
-------------------------------------------*/

div.main {
  margin-top: 87px;
  line-height: 1.5;
}
div.main div.key-visual img {
  max-width: 100%;
  flex-shrink: 0;
}
@media screen and (min-width: 768px){
  div.main div.key-visual {
    max-width: 980px;
    margin: 0 auto;
    position: relative;
    height: auto;
    overflow: hidden;
    z-index: 1;
  }
  div.main section.kv h1::before {
    content: '';
    width: 683px;
    height: 175px;
    position: absolute;
    top: -30px;
    left: 0;
    background: url(/assets/img/back-kv-top.svg) no-repeat 0 0 / contain;
    z-index: 0;
  }
  div.main section.kv h1::after {
    content: '';
    width: 683px;
    height: 175px;
    position: absolute;
    bottom: -15px;
    right: 0;
    background: url(/assets/img/back-kv-bottom.svg) no-repeat 0 0 / contain;
    z-index: 0;
  }
}

@media (max-width: 767px) {
  div.main {
    margin-top: 77px;
  }
  div.main div.key-visual {
    margin-top: -5px;
  }
}
/*-------------------------------------------
    パンくずリスト
-------------------------------------------*/
ul.List{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 20px;
}
ul.List li.List-Item {
  display: inline-block;
}
ul.List li.List-Item:nth-of-type(3) {
  line-height: 1.5;
}
li.List-Item a.List-Item-Link:first-of-type{
  display: flex;
  align-items: center;
}
li.List-Item a.List-Item-Link span:hover{
  text-decoration: underline #000;
}
li.List-Item:first-of-type a.List-Item-Link::before{
  content: "";
  background: url(../img/ico-home.png) no-repeat 0 0 / contain;
  width: 25px;
  height: 25px;
  margin-right: 0.5em;
}
li.List-Item a.List-Item-Link::after{
  content: ">";
  margin: 0 0.7em;
}
li.List-Item:last-of-type a.List-Item-Link::after{
  display: none;
}
.estimate-navigation li.List-Item a.Element_none:hover{
  text-decoration: none;
}

li.List-Item span,
li.List-Item a.List-Item-Link::after,
li.List-Item span a{
  font-size: 1.25rem;
  color: #000000;
}
@media (max-width: 767px) {
  ul.List{
    padding: 15px 5% 0;
  }
  li.List-Item:first-of-type a.List-Item-Link::before{
    width: 20px;
    height: 18px;
  }
  li.List-Item a.List-Item-Link::after{
    margin: 0 1em;
  }
  li.List-Item:last-of-type a.List-Item-Link::after{
    display: none;
  }
  
  li.List-Item span,
  li.List-Item a.List-Item-Link::after,
  li.List-Item span a{
    font-size: 1.2rem;
    color: #000000;
  }
  li.List-Item:last-of-type span {
    word-break: break-all;
    width: 180px;
}

}
/*-------------------------------------------
    セクション
-------------------------------------------*/

/*タイムアウトページ*/
div.bg-plain-gray {
  background-color: #F3F3F3;
}

@media screen and (max-width: 767px) {
  div.white-content-box-v2-inner {
    z-index: 1;
    position: relative;
  }
}

/*-------------------------------------------
  重要なお知らせ
-------------------------------------------*/
div.under-kv-notion {
  background-color: #E6E6E6;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 25%;
}

div.mypage-under-kv-notion {
  border-top: 20px solid #FFFFFF;
}

div.under-kv-notion p.under-kv-notion-title {
  color: #ff6159;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: left;
  margin: 12px 0;
  padding: 0;
}

div.under-kv-notion p.under-kv-notion-title a {
  text-decoration:none;
  font-size: 1.8rem;
  color: #000000;
  display: flex;
  align-items: center;
}

.important-mark {
  width: 55px;
  margin-right: 10px;
}

@media screen and (max-width: 767px) {
  div.under-kv-notion p.under-kv-notion-title a {
    text-decoration:none;
    font-size: 1.5rem;
  }

  div.under-kv-notion {
    padding: 0 3%;
  }

  div.under-kv-notion p.under-kv-notion-title {
    padding: 0;
  }
}

/*-------------------------------------------
   コンテンツ
-------------------------------------------*/
div.content-box-inner{
  max-width: 850px;
  width: 100%;
  margin: 0 auto;
}
table#callcenter-table th:first-of-type{
width:120px;
}
table#callcenter-table th:nth-of-type(2),table#callcenter-table td:nth-of-type(1){
  width:180px;
}
table#callcenter-table th:nth-of-type(3),table#callcenter-table td:nth-of-type(2){
  width:250px;
}

/*コンテンツインナー*/
div.white-content-box-inner{
  margin: 30px auto 0;
}
div.content-box-inner p{
  font-size: 1.4rem;
}
div.white-content-box-body {
  margin: 20px 0 0 0;
}
div.white-content-box-body p {
  font-size: 1.3rem;
  line-height: 25px;
}

/*2カラム*/
div.white-content-box-inner-flex {
  display: flex;
  justify-content: space-between;
  width: 100%;
  flex-wrap: wrap;
  margin: 20px 0;
}
div.white-content-box-inner-flex-left {
  width: 455px;
  height: auto;
}
div.white-content-box-inner-flex-left-width {
  width: 479px;
}
div.white-content-box-inner-flex-right {
  width: 335px;
  height: auto;
}

/*見出し*/
div.content-box-title p {
  font-size: 3.8rem;
  line-height: 40px;
  text-align: center;
  margin-bottom: 26px;
}

div.content-box-title-bottom0 p {
  font-size: 3.8rem;
  line-height: 40px;
  text-align: center;
  margin-bottom: 0px;
}
@media screen and (max-width:767px){
  div.content-box-inner{
    width: 100%;
    margin-top: 20px;
  }
  div.white-content-box-body {
    width: 100%;
  }
  div.white-content-box-inner-flex {
    margin: 0px;
  }
  .white-content-box-inner-flex-right p{
    position: relative;
    left: 38px;
  }
  div.white-content-box-title p {
    font-size: 2.0rem;
  }
  div.content-box-title p {
    font-size: 2.6rem;
    line-height: 30px;
    text-align: left;
  }
  div.content-box-title p.center{
    text-align: center;
  }
}

.section-heading{
  margin: 0 auto 40px; 
}
.section-heading.no-margin{
  margin: 0;
}
section div.inner .section-heading p{
  width: 490px;
  text-align: center;
  font-size: 3rem;
  font-weight: bold;
  margin: auto;
  padding: 0 1.5em 0.5em;
  border-bottom: 3px solid #037e82;
  line-height: 3rem;
  color: #037e82;
  font-style: italic;
  letter-spacing: 0.2rem;
}
section div.inner .section-heading h2{
  text-align: center;
  font-size: 3rem;
  font-weight: 500;
  color: #000000;
  margin: 0;
  padding: 0.5em 1.5em 0;
  line-height: 1.3em;
  letter-spacing: 0.3rem;
}
section div.inner .section-heading h2 span{
  font-size: 6rem;
  color: #037e82;
  display: inline-block;
  margin: 0 5px;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  section div.inner .section-heading p {
    width: 100%;
    box-sizing: border-box;
    font-size: 2.2rem;
    padding-bottom: 10px;
  }
  section div.inner .section-heading  h2{
    width: 100%;
    font-size: 2.4rem;
    padding: 0.5em 0;
    margin-bottom: 20px;
  }
  section div.inner .section-heading  h2.section-heading-small{
    font-size: 2.3rem;
  }
  section div.inner .section-heading h2 span{
    font-size: 5.0rem;
  }
}

/*-------------------------------------------
    ボタン
-------------------------------------------*/

button {
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
}

.lead-entry-btn span {
  font-size: 2rem;
}

a.btn,
div.form-next-button,
div.form-back-button{
  background: #df0033;
  color: #FFFFFF;
  display:block;
  height: 60px;
  width: 300px;
  line-height: 64px;
  text-align: center;
  font-size: 1.5rem;
  box-shadow: 0 8px 0 #68d8d5;
  margin: 0 auto;
  position: relative;
  cursor: pointer;
}

a.btn::before,
div.form-next-button::before{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
  background: #68d8d5;
  transform-origin: right;
  transform: scale(0, 1);
  transition: transform 0.2s;
}

a.btn::after,
div.form-next-button::after,
header ul li.nav_type03 a::after{
  content: '';
  position: absolute;
  background: url(/assets/img/arrow-white.svg) no-repeat center/100%;
  width: 7.5px;
  height: 15px;
  top: 32px;
  transform: translateY(-50%);
  right: 15px;
}

a.btn.consultation::after {
  background-image: url(/assets/img/arrow-black.svg);
}

a.btn:hover::after {
  background: url(/assets/img/arrow-black.svg) no-repeat center/100%;
}

div.form-next-button:hover {
  color: #000;
}

div.form-next-button:hover::after {
  background: url(/assets/img/arrow-black.svg) no-repeat center/100%;
}

header ul li.nav_type03 a::after {
  top: 43px;
  right: 30px;
  transition: .3s all;
}
header ul li.nav_type03 a:hover::after {
  background: url(/assets/img/arrow-red.svg) no-repeat center/100%;
}

a.btn span,
div.form-next-button p span{
  display: inline-block;
  position: relative;
  z-index: 2;
  line-height: 1.2;
}

a.btn span:hover,
div.form-next-button p span:hover {
  color: #000;
}

@media screen and (min-width: 768px) {
  a.btn:hover::before,
  div.form-next-button:hover::before{
    transform-origin: left top;
    transform: scale(1, 1);
  }
  a.btn.estimate::before {
    background-color: #fff;
  }
  a.btn.estimate::after {
    background: url(/assets/img/arrow-red.svg) no-repeat center/100%;
  }
  a.btn.estimate:hover {
    color: #666666;
  }
  a.btn.estimate:hover::after {
    background: url(/assets/img/arrow-gray.svg) no-repeat center/100%;
  }
  a.btn.consultation::before {
    background-color: #fff;
  }
  a.btn.consultation:hover {
    color: #00bfbf;
  }
  a.btn.consultation:hover::after {
    background: url(/assets/img/arrow-green.svg) no-repeat center/100%;
  }
}

/*-------------------------------------------
    Footer
-------------------------------------------*/
footer{
  background: #f2f5f5;
}

/*-------------------------------------------
    Footer Entry Button Section
 ------------------------------------------*/

footer section.entry-button{
  background: -moz-linear-gradient(90deg, #00bfbf 50%, #505050 50%);
  background: -webkit-linear-gradient(90deg, #00bfbf 50%, #505050 50%);
  background: linear-gradient(90deg, #00bfbf 50%, #505050 50%);
  padding: 30px 0;
}
footer section.entry-button div.inner{
  display: flex;
  justify-content: space-between;
}
footer a.footer-entry,
footer a.footer-business{
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 46%;
  color: #FFFFFF;
  border: 5px solid #FFFFFF;
  padding: 30px 0;
  cursor: pointer;
  position: relative;
}

footer a.footer-entry::before,
footer a.footer-business::before{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
  background: #FFFFFF;
  transform-origin: right;
  transform: scale(0, 1);
  transition: transform 0.2s;
}


footer a.footer-entry p,
footer a.footer-business p{
  position: relative;
  z-index: 2;
}
footer a.footer-entry > p{
  width: 20%;
}
footer a.footer-business > p{
  width: 25%;
}

footer a.footer-entry > div,
footer a.footer-business > div{
  width: 30%;
  display: flex;
  justify-content: space-between;
}

footer a.footer-entry > div p,
footer a.footer-business > div p{
  font-size: 2.5rem;
}

footer a.footer-entry > div p:last-of-type,
footer a.footer-business > div p:last-of-type{
  width: 8%;
}
footer a span.initial-button{
  display: block;
}
footer a span.hover-button{
  display: none;
}
footer section.footer-link {
  padding: 60px 0;
}
@media screen and (min-width: 768px) {
  footer a.footer-entry:hover::before,
  footer a.footer-business:hover::before{
    transform-origin: left top;
    transform: scale(1, 1);
  }
  footer a.footer-entry:hover > div{
    color: #00bfbf;
  }
  footer a.footer-business:hover > div{
    color: #505050;
  }
  footer a:hover span.initial-button{
    display: none;
  }
  footer a:hover span.hover-button{
    display: block;
  }
}
@media screen and (max-width: 767px) {
  footer section.entry-button,
  footer section.entry-button div.inner{
    padding: 0;
  }
  footer a.footer-entry,
  footer a.footer-business{
    flex-direction: column;
    border: none;
    width: 50%;
  }
  footer a.footer-entry > p{
    width: 50%;
  }
  footer a.footer-business > p{
    width: 62%;
  }
  footer a.footer-entry > div,
  footer a.footer-business > div{
    width: 50%;
    margin-top: 20px;
  }
  footer a.footer-entry > div p,
  footer a.footer-business > div p{
    font-size: 2.2rem;
  }
}

/*-------------------------------------------
    Footer Link Section
 ------------------------------------------*/

section.footer-link div.inner{
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .ft_logo{
  width: 370px;
  text-align: center;
}
footer .ft_logo img{
  width: 60%;
  max-width: 100%;
}

footer .ft_nav{
  flex: 1;
  width: 65%;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 60px;
}
footer.footer-menu ul{
  padding-inline-start: 0;
}
footer ul li{
  list-style: none;
}
footer .ft_nav li a{
  color: #000000;
  font-size: 15px;
  line-height: 3;
}

footer #copy div.inner{
  display: flex;
  justify-content: flex-end;
  align-items: center; 
  font-size: 1.1rem;
  color: #000000;
  padding: 16px 0;
}
footer #copy div.inner p,
footer #copy div.inner ul{
  width: auto;
}
footer #copy div.inner ul{
  display: flex;
  justify-content: flex-start;
  
}
footer #copy div.inner ul li{
  margin-right: 10px;
}
footer #copy div.inner ul li a{
  color: #000000;
}


div.guide-nav-icons{
  padding: 15px 0 0;
}
@media screen and (max-width: 767px) {
  section.footer-link div.inner{
    flex-direction: column;
  }
  footer .ft_logo{
    width: 100%;
    text-align: center;
    margin: auto;
    padding: 10px 0;
  }
  footer .ft_logo img{
    width: 90%;
  }
  footer .ft_nav{
    width: 100%;
    box-sizing: border-box;
    padding: 0 1vw;
    flex-wrap: wrap;
  }
  footer .ft_nav ul:nth-of-type(1){
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0;
  }
  footer .ft_nav ul:nth-of-type(1) li{
    width: 31%;
    text-align: center;
    margin: 0 0 12px;
    box-sizing: border-box;
  }
  footer .ft_nav ul:nth-of-type(1) li:nth-of-type(1),
  footer .ft_nav ul:nth-of-type(1) li:nth-of-type(2),
  footer .ft_nav ul:nth-of-type(1) li:nth-of-type(3){
    border-bottom: solid 1px #909090;
  }

  footer .ft_nav ul:nth-of-type(1) li a{
    display: block;
    padding: 15px 0;
  }
  footer .ft_nav ul:nth-of-type(2),
  footer .ft_nav ul:nth-of-type(3){
    width: 100%;
    display: block;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 0 0;
  }
  footer .ft_nav ul:nth-of-type(2) li a,
  footer .ft_nav ul:nth-of-type(3) li a{
    padding: 12px 0 0;
    display: block;
    font-size: 1.4rem;
  }
  footer .ft_nav li a{
    font-size: 1.4rem;
  }
  footer #copy{
    text-align: center;
    font-size: 1.2rem;
    padding: 0;
    margin: 0;
  }
  footer #copy div.inner ul{
    display: none;
  }
  footer #copy div.inner{
    justify-content: center;
  }
}

/*-------------------------------------------
    レイアウト調整用
-------------------------------------------*/
/*PC・SPでの表示切り替え*/
@media screen and (min-width: 768px) {
  /*PC表示*/
  .pc,
  div.div-pc,
  img.div-pc,
  span.pc_dot,
  table.overseas-plan-table .overseas-table-pc,
  #cv dl dt a.pc,
  span.pc_br,
  .overseas-table-unselected,
  footer .ft_nav.pc{
    display: "";
  }

  /*SP非表示*/
  .sp,
  div.div-sp,
  img.div-sp,
  span.sp_br,
  .sp_btn,
  #sp-menu,
  #cv dl dt a.sp,
  table.overseas-plan-table .overseas-table-sp,
  footer .ft_nav.sp,
  .flex-btns-container.sp{
    display: none;
  }
}

@media screen and (max-width: 767px) {
  /*PC非表示*/
  .slick-slider.pc,
  .pc,
  div.div-pc,
  img.div-pc,
  span.pc_dot,
  table.overseas-plan-table .overseas-table-pc,
  span.pc_br,
  #cv dl dt a.pc,
  .overseas-table-unselected,
  footer .ft_nav.pc,
  .flex-btns-container.pc{
    display: none;
  }

  /*SP表示*/
  .sp,
  div.div-sp,
  img.div-sp,
  span.sp_br,
  #sp-menu,
  .sp_btn,
  #cv dl dt a.sp,
  table.overseas-plan-table .overseas-table-sp,
  footer .ft_nav.sp{
    display: "";
  }
  img.div-sp {
    height: auto;
  }
}

div.empty-area {
  height: 10px;
}
.margin-bottom-less{
  margin-bottom: 0;
}
@media screen and (min-width: 768px){

  div.empty-lp-area {
    margin-top: -250px;
  }
  .btn-up{
    margin-top: -110px;
  }
}

@media screen and (max-width: 767px){
  div.white-content-box-inner > h2 p{
    margin-bottom: 0px;
  }
}

/*レイアウトの変更*/
div.white-content-box-sub-title p.title-left{
  text-align: left;
}
span.marker-yellow{
  display: inline-block;
  background:#FFEB00;
  padding: 0.1em;
}

/*画像のドロップシャドウ*/
.img-shadow{
  -webkit-filter: drop-shadow(7px 7px 5px rgb(0 0 0 / 40%));
  filter: drop-shadow(7px 7px 5px rgb(0 0 0 / 40%));
  transform: translateZ(0);
}

/*画像をシャープにする*/
.img-sharp{
  image-rendering: -webkit-optimize-contrast;
}

.br-height {
  display: block;
  line-height: 1.6;
  margin-top: 5px;
}

/*お申し込みボタン 追従 start*/
#entry_fix{
  width: 62px;
  position: fixed;
  right: 0;
  top: 50%;
  z-index: 10000000;
  transition: .3s all;
  visibility: hidden;
  opacity: 0;
  cursor: pointer;
  transform: translateY(-50%);
}
#entry_fix.show{
  visibility: visible;
  opacity: 1;
}
#entry_fix div.price-fix-box{
  font-size: 0.3vh;
  letter-spacing: 0.3em;
  filter: drop-shadow(-8px 8px 8px rgb(0,0,0,20%));
}
#entry_fix div.price-fix-box a{
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc((100vh - 86px) / 3);
  max-height: 240px;
  min-height: 160px;
}
#entry_fix div.price-fix-box a.price-fix-entry{
  background-color: #DF0033;
  position: relative;
}
#entry_fix div.price-fix-box-corp a{
  background-color: #DF0033;
  position: relative;
  max-height: 160px;
  min-height: unset;
}
#entry_fix div.price-fix-box a.price-fix-corp-entry{
  background: #68d8d5;
}
#entry_fix div.price-fix-box a.price-fix-corp-entry p{
  color: #000;
}
#entry_fix div.price-fix-box a.price-fix-corp-inquiry{
  background: #68d8d5;
}
#entry_fix div.price-fix-box a.price-fix-corp-inquiry p{
  color: #000;
}
#entry_fix div.price-fix-box a.price-fix-faq{
  background: #666666;
}
#entry_fix div.price-fix-box a.price-fix-corp-estimate{
  background: #666666;
}
#entry_fix div.price-fix-box a div{
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFFFFF;
  font-weight: bold;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
#entry_fix div.price-fix-box a.price-fix-faq-recharge {
  display: none;
}
#entry_fix img.price-fix-hint{
  width: 80px;
  position: fixed;
  left: 0;
  top: 46%;
  box-shadow: 8px 8px 8px rgb(0 0 0 / 20%);
}
img.follow-five-minutes, #top img.follow-five-minutes{
  position: absolute;
  top: 0px;
  left: 0;
  max-width: unset;
  height: 7.2vh;
  transform: translate(-50%, -25%);
}
img.follow-five-minutes-business{
  position: absolute;
  top: 0px;
  left: 0;
  max-width: unset;
  height: 7.2vh;
  transform: translate(-50%, -25%);
}
.follow-question{
  width: 15px;
  height: 21.81px;
  margin-bottom: 0.3vh;
}
#entry_fix div.price-fix-box p {
  font-size: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
#entry_fix div.price-fix-box-corp p {
  font-size: 1.7rem;
}
.price-fix-entry-parentheses {
  letter-spacing: -0.2em;
}
@media (min-width: 768px) and (max-width: 1280px) {
  img.follow-five-minutes-business{
    height: 5.2vh;
  }
}
@media screen and (max-width: 767px) {
  #entry_fix {
    width: 100%;
    height: 45px;
    position: fixed;
    right: 0;
    bottom: 0;
    top: auto;
    z-index: 10000000;
    transition: .3s all;
    visibility: hidden;
    opacity: 0;
    cursor: pointer;
    transform: none;
  }
  #entry_fix div.price-fix-box {
    width: 100%;
    height: 100%;
    font-size: 1.5rem;
    letter-spacing: 0;
    display: flex;
    filter: drop-shadow(2px -3px 3px rgb(0,0,0,20%));
  }
  #entry_fix div.price-fix-box a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    max-height: unset;
    min-height: unset;
  }

  #entry_fix img.price-fix-hint {
    position: fixed;
    right: 0;
    left: auto;
    width: 35px;
    top: 100px;
  }
  #entry_fix div.price-fix-box a div {
    -ms-writing-mode: unset;
    writing-mode: unset;
  }
  #entry_fix div.price-fix-box a div p {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #entry_fix div.price-fix-box a div p {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #entry_fix div.price-fix-box a div p .sp {
    font-size: 1.3rem;
    margin-left: 4px;
  }
  #entry_fix div.price-fix-box a.price-fix-entry {
    padding-left: 12%;
  }
  #entry_fix div.price-fix-box a.price-fix-entry p {
    padding-top: 0;
  }
  #entry_fix div.price-fix-box a.price-fix-entry-corp {
    padding-left: 14%;
  }
  #entry_fix div.price-fix-box a.price-fix-entry-corp p {
    padding-top: 0;
  }
  #entry_fix div.price-fix-box a.price-fix-faq {
    width: 70%;
  }
  #entry_fix div.price-fix-box a.price-fix-corp-inquiry {
    width: 70%;
  }
  #entry_fix div.price-fix-box a.price-fix-faq div p {
    font-size: 1.3rem;
  }
  #entry_fix div.price-fix-box a.price-fix-corp-estimate div p {
    font-size: 1.6rem;
  }
  #entry_fix div.price-fix-box a.price-fix-corp-entry {
    display: none;
  }
  #entry_fix div.price-fix-box a.price-fix-corp-estimate {
    display: none;
  }
  #entry_fix div.price-fix-box a.price-fix-faq-recharge {
    display: flex;
  }
  img.follow-five-minutes, #top img.follow-five-minutes {
    position: absolute;
    top: -20px;
    left: 5px;
    max-width: unset;
    width: 60px;
    height: 60px;
    transform: none;
    height: unset;
  }
  img.follow-five-minutes-business {
    position: absolute;
    top: -20px;
    left: 5px;
    max-width: unset;
    width: 60px;
    transform: none;
    height: unset;
  }
  .follow-question {
    width: 10px;
    margin-bottom: 0;
    margin-right: 6px;
  }
  #entry_fix div.price-fix-box p {
    font-size: 1.7rem;
  }
  .price-fix-entry-parentheses {
    letter-spacing: -0.5em;
  }
}
/*お申し込みボタン 追従 end*/

/*-------------------------------------------
    Common Contents
 -------------------------------------------*/

/*-------------------------------------------
    Top/Plan/Form Campaign Section
 -------------------------------------------*/
section.campaign h2,
.form-capacity-area.title-cloudplan.campaign h2{
  text-align: center;
  font-size: 3.5rem;
  font-weight: 900;
  margin-top: 0;
}
.form-capacity-area.title-cloudplan.campaign h2 {
  font-size: 2.5rem;
}
section.campaign h2 span,
.form-capacity-area.title-cloudplan.campaign h2 span{
  color: #DF0033;
  font-size: 7.0rem;
}
.form-capacity-area.title-cloudplan.campaign h2 span {
  font-size: 4.3rem;
}
div.campaign-title{
  position: relative;
  background: #5fd1d1;
  display: flex;
  justify-content: space-between;
  padding: 20px 30px 30px;
  box-sizing: border-box;
}

div.campaign-title div.campaign1,
div.campaign-title div.campaign2{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 45%;
}
div.campaign-title div.campaign1 > p,
div.campaign-title div.campaign2 > p{
  width: 100px;
  margin-right: 15px;
}
div.campaign-title  div.campaign-text{
  color: #FFFFFF;
}
div.campaign-title  div.campaign-text p{
  font-size: 3.2rem;
  transform   : skewX(-10deg);
  line-height: 3.2rem;
  font-weight: bold;
}
div.campaign-title  div.campaign-text p:first-of-type{
  font-size: 1.5rem;
  transform: none;
  font-weight: normal;
}
div.campaign-table{
  background: #FFFFFF;
  padding: 30px;
}
div.cashback-table{
  background: #e8e8e8;
  padding: 30px 60px;
}
div.cashback-table h3{
  font-size: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 15px;
}
div.cashback-table h3 span{
  display: inline-block;
  width: 50px;
    margin-right: 10px;
}
p.cashback-detail-title,
p.cashback-flow-title{
  position: relative;
  padding: 15px 30px;
  background: #00bfbf;
  color: #FFFFFF;
  font-size: 1.8rem;
  cursor: pointer;
  text-align: center;
}
p.plan-detail-title-1,
p.plan-detail-title-2,
p.plan-detail-title-3,
p.plan-detail-title-4{
  position: relative;
  padding: 15px 120px;
  background: #ffffff;
  color: #037e82;
  font-size: 1.8rem;
  cursor: pointer;
  text-align: left;
  border: 2px solid #037e82;
}
p.cashback-detail-title::after,
p.cashback-flow-title::after{
  position: absolute;
  content: '';
  background: url(/assets/img/icon-plus.svg) no-repeat center/100%;
  width: 25px;
  height: 25px;
  top: 50%;
  right: 260px;
  transform: translateY(-50%);
}
p.plan-detail-title-1::after,
p.plan-detail-title-2::after,
p.plan-detail-title-3::after,
p.plan-detail-title-4::after{
  position: absolute;
  content: '';
  background: url(/assets/img/icon-plus-option-1.svg) no-repeat center/100%;
  width: 25px;
  height: 25px;
  top: 50%;
  right: 100px;
  transform: translateY(-50%);
}
p.cashback-detail-title.open::after,
p.cashback-flow-title.open::after{
  background: url(/assets/img/icon-minus.svg);
  height: 5px;
}
p.plan-detail-title-1.open::after,
p.plan-detail-title-2.open::after,
p.plan-detail-title-3.open::after,
p.plan-detail-title-4.open::after{
  background: url(/assets/img/icon-minus-option-1.svg);
  height: 3px;
}
div.cashback-detail > div{
  background: #FFFFFF;
  padding: 30px;
}
div.plan-detail > div{
  background: #FFFFFF;
  padding: 20px;
}
div.cashback-detail > div h4,
div.plan-detail > div h4{
  background: #00bfbf;
  color: #FFFFFF;
  display: table;
  font-size: 1.5rem;
  margin: 20px 0 10px;
  padding: 10px;
}
div.cashback-detail > div h4:first-child,
div.plan-detail > div h4:first-child{
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  div.campaign-title::after{
    content: '';
    position: absolute;
    background: url(/assets/img/icon-wcp-plus.svg) no-repeat center/100%;
    width: 65px;
    height: 65px;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
  }
}
@media screen and (max-width: 767px) {
  section.campaign h2{
    font-size: 2.5rem;
  }
  section.campaign h2 span{
    font-size: 6.0rem;
  }
  div.campaign-title{
    padding: 10px 0 20px;
  }
  div.campaign-title div.campaign1,
  div.campaign-title div.campaign2{
    width: 100%;
  }
  div.campaign-title > div.campaign2{
    display: none;
  }
  div.campaign-table2 div.campaign-title > div.campaign2{
    display: flex;
  }
  div.campaign-title div.campaign1 > p,
  div.campaign-title div.campaign2 > p{
    width: 70px;
  }
  div.campaign-title div.campaign-text p{
    font-size: 2.5rem;
  }
  div.campaign-table2{
    position: relative;
    padding: 60px 0 0;
    background: #FFFFFF;
  }
  div.campaign-table2::before{
    content: '';
    position: absolute;
    background: url(/assets/img/icon-wcp-plus.svg) no-repeat center/100%;
    width: 30px;
    height: 30px;
    top: -20px;
    left: 50%;
    transform: translate(-50%, 50%);
  }
  div.campaign-table2::after{
    content: '';
    position: absolute;
    background: url(/assets/img/arrow-red.svg) no-repeat center/100%;
    width: 20px;
    height: 40px;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
  }
  div.campaign-table2 > p{
    padding: 30px;
  }
  div.campaign-table3{
    background: #FFFFFF;
    padding: 30px;
    margin: 60px 0;
  }
  div.cashback-table{
    padding: 30px 10px;
  }
  div.cashback-table h3{
    font-size: 1.8rem;
  }
  div.cashback-table h3 span{
    width: 40px;
  }
  p.cashback-detail-title,
  p.cashback-flow-title,
  p.plan-detail-title-1,
  p.plan-detail-title-2,
  p.plan-detail-title-3,
  p.plan-detail-title-4{
    padding: 10px 35px 10px 10px;
    font-size: 1.5rem;
  }
  p.cashback-detail-title::after,
  p.cashback-flow-title::after,
  p.plan-detail-title-1::after,
  p.plan-detail-title-2::after,
  p.plan-detail-title-3::after,
  p.plan-detail-title-4::after{
    width: 15px;
    height: 15px;
    right: 10px;
  }
}

/*-------------------------------------------
    Top/Plan Plan Section
 -------------------------------------------*/
div.plan-appeal{
  max-width: 80%;
  margin: 60px auto;
}
div.plan-area{
  display: flex;
  justify-content: space-between;
  margin: 60px 0 0;
}
div.plan-area p{
  width: 24%;
}
p.plan-notion{
  margin: 5px 0 20px;
  text-align: right;
}
section.plan .rechargeplan {
  filter: drop-shadow(0 0 5px rgba(0,0,0,20%));
  transition-duration: .3s;
  transform: translateY(0) translateZ(0);
}
section.plan .rechargeplan:hover {
  opacity: 0.7;
  transform: translateY(10px) translateZ(0);
}

@media screen and (max-width: 767px) {
  div.plan-appeal{
    max-width: initial;
    margin: 30px 0;
  }
  div.plan-area{
    flex-direction: column;
    margin: 30px 0 0;
  }
  div.plan-area p{
    width: 100%;
    margin: 15px 0;
  }
  div.plan-area p:last-of-type{
    margin-bottom: 0;
  }
}

/*-------------------------------------------
    Top/Plan/Business Data Charge Section
 -------------------------------------------*/
div.data-charge-appeal{
  display: flex;
  max-width: 80%;
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
}
div.data-charge-appeal p{
  font-size: 2.2rem;
  line-height: 3.5rem;
  width: 48%;
}
div.data-charge-appeal p img{
  width: 75%;
}
h3.data-charge-text{
  text-align: center;
  background: #68d8d5;
  color: #000;
  font-size: 3.0rem;
  margin: 30px 0;
  padding: 30px;
}
div.data-charge-area{
  display: flex;
  justify-content: space-between;
}
div.data-charge-area p{
  width: 30%;
}

@media screen and (max-width: 767px) {
  div.data-charge-appeal{
    max-width: 500px;
    width: 100%;
  }
  div.data-charge-appeal p{
    width: 35%;
  }
  div.data-charge-appeal p:first-of-type{
    width: 90%;
    font-size: 1.7rem;
    line-height: 3.5rem;
  }
  h3.data-charge-text{
    font-size: 2.0rem;
    line-height: 2.5rem;
    padding: 15px;
  }
  div.data-charge-area{
    flex-direction: column;
  }
  div.data-charge-area p{
    width: 100%;
    margin: 5px auto;
    max-width: 500px;
  }
}

/*-------------------------------------------
    Plan/Business Option Section
 -------------------------------------------*/
#option dl{
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 800px;
  margin: 20px auto 70px;
}
#option dl dt{
  font-size: 1.6rem;
  width: 50%;
}
#option dl dd{
  font-size: 75px;
  font-weight: bold;
  margin-left: 85px;
  text-align: center;
  display: flex;
  line-height: 1;
  justify-content: center;
  align-items: flex-end;
}
#option dl dd span{
  font-size: 20px;
  line-height: 1.4;
  text-align: center;
}
#option table{
  width: 700px;
  border-top: 1px solid #00bfbf;
  border-left: 1px solid #00bfbf;
  margin: 0 auto;
  background: #fff;
}
#option table th,
#option table td{
  border-bottom: 1px solid #00bfbf;
  border-right: 1px solid #00bfbf;
  padding: 10px 15px;
  box-sizing: border-box;
  font-size: 15px;
}
#option table th{
  width: 25%;
  text-align: center;
}
#option table td{
  width: 75%;
}
#option table td ul li{
  list-style-type: disc;
  margin-left: 20px;
}

@media screen and (max-width: 767px) {
  #option{
    padding: 50px 0 30px;
  }
  #option dl{
    display: inherit;
    width: 100%;
    margin: 20px auto 30px;
  }
  #option dl dt{
    width: 100%;
    font-size: 14px;
  }
  #option dl dd{
    margin: 30px auto auto;
    line-height: 0.75;
  }
  #option dl dd span {
    line-height: 1.2;
  }
  #option table{
    width: 100%;
    margin-bottom: 50px;
  }
  #option table th,
  #option table td{
    padding: 10px;
    font-size: 13px;
  }
}

/*-------------------------------------------
    Plan/Business Payment Method Section
 -------------------------------------------*/
div.method-box {
  display: flex;
  justify-content: space-between;
  background-color: #edeef0;
  padding: 0 120px;
}
dl.method {
  width: 46%;
  margin: 50px 0;
  background:#FFFFFF;
}
#payment-method h3,
.payment-method h3{
  margin: 0;
  padding: 2rem 0;
  background-color: #68d8d5;
  color: #000;
  text-align: center;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1;
}
.method-subtitle {
  font-size: 2rem;
}
.payment-method h3.payment-title-credit {
  height: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.method.invoice img {
  width: 40%;
  margin: 0 auto;
  display: block;
}
.method.kondo img{
  width: 80%;
  margin: 0 auto 5px;
}
.method.credit img{
  margin-top: 20px;
}

p span.atone-caution {
  padding-top: 15px;
  font-size: 13px;
}

div.method-box dd {
  background-color: #fff;
  text-align: center;
  padding: 30px 0;
}
div.method-box p {
  font-size: 2rem;
  line-height: 1.3em;
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  div.method-box {
    display: block;
    padding: 40px 20px;
    max-width: 500px;
    margin: 0 auto;
  }
  dl.method {
    width: 100%;
    margin: 0 0 25px;
  }
  dl.method:last-of-type {
    margin-bottom: 0;
  }
  dl.method.credit img {
    width: 80%;
  }
}

#data_plan dl dt{
  width: 75%;
}
#data_plan dl dt h4{
  font-size: 24px;
  margin: 0 0 30px;
}
#data_plan dl dd{
  width: 28%;
}
#data_plan .box ul li h5{
  font-size: 24px;
  margin: 0;
}
#data_plan .box ul li h5 span{
  border-bottom: 5px solid #00bfbf;
}

#data_plan dl{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 20px 0 50px;
}
.box{
  box-sizing: border-box;
  margin: 50px auto;
}
.box .second_box{
  margin-top: 10px;
}
.box ul{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.box ul li{
  width: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  padding: 30px;
  background-color: #fff;
}
.box ul li:first-of-type {
  margin-right: 10px;
}
.box ul li h5{
  font-size: 24px;
  line-height: 1.5em;
  margin: 0;
}
.box ul li h5 span{
  border-bottom: 5px solid #00bfbf;
}
.box ul li img{
  width: 30%;
  height: 120px;
  margin-left: 40px;
}
.box ul li:last-child img{
  width: 20%;
}

@media screen and (max-width: 767px) {
  #data_plan{
    padding: 50px 0;
  }
  #data_plan dl{
    display: inherit;
    width: 100%;
    margin: 20px 0 50px;
  }
  #data_plan dl dt{
    width: 100%;
  }
  #data_plan dl dt h4{
    font-size: 2rem;
    line-height: 1.5em;
    display: block;
    margin: auto;
    width: fit-content;
  }
  #data_plan dl dt p{
    margin: 30px auto;
  }
  #data_plan dl dt img{
    width: 60%;
    display: block;
    margin: auto;
  }
  #data_plan dl dd{
    display: none;
  }
  #data_plan .box{
    padding: 0;
    margin-bottom: 50px;
  }
  #data_plan .box .first_box{
    padding-bottom: 0;
    border-bottom: none;
  }
  #data_plan .box .second_box{
    margin-top: 0;
  }
  #data_plan .box ul{
    display: inherit;
  }
  #data_plan .box ul li{
    width: 100%;
    justify-content: space-between;
  }
  #data_plan .box ul li:first-child{
    border-right: none;
  }
  #data_plan .box ul li h5{
    font-size: 5vw;
  }
  #data_plan .box ul li h5 span{
    display: inline-block;
    margin-bottom: 5px;
  }
  div.white-content-box-sub-title p {
    font-size: 1.6rem;
    line-height: 25px;
  }
  .box{
    padding: 0 15px;
  }
  .box .first_box{
    padding-bottom: 0;
    border-bottom: none;
  }
  .box .second_box{
    margin-top: 0;
  }
  .box ul{
    display: inherit;
  }
  .box ul li{
    width: 100%;
    padding: 30px 20px;
    justify-content: space-between;
  }
  .box ul li:first-child{
    border-right: none;
  }
  .first_box ul li, .second_box ul li:not(:last-of-type) {
    margin-bottom: 10px;
  }
  .box ul li h5{
    font-size: 5vw;
  }
  .box ul li img{
    width: 30%;
    height: 70px;
    margin-left: auto;
  }
  .box ul li:last-child img{
    width: 20%;
  }
  .box ul li.border_none{
    border: none;
  }
  .box ul li h5 span{
    display: inline-block;
    margin-bottom: 5px;
  }
}

/*-------------------------------------------
    News Section
 -------------------------------------------*/

 .news-box-area {
  max-width: 980px;
  margin: 40px auto;
  border-top: 1px solid #9D9D9D;
}
.news-box {
  font-size: 1.5rem;
  padding: 30px 0;
  border-bottom: 1px solid #9D9D9D;
}
.news-link {
  display: flex;
  align-items: center;
  color: #000000;
}
.news-link:hover .news-title {
  color: #DF0033;
  transition: 0.2s linear;
  text-decoration: underline;
}
.news .news-day {
  width: 10%;
}
.news-title {
  width: 76%;
  padding: 0 2%;
  word-break: break-all;
}
.news-arrow {
  width: 1%;
}
.news-category-area {
  width: 13%;
}
.news-category {
  border: 1px solid #68d8d5;
  background-color: #68d8d5;
  color: #000;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 6px;
}
.news-category:first-child {
  margin-top: 0;
}
.news-day {
  text-align: left;
  width: 11%;
}
.news-category span {
  font-size: 1.3rem;
}
/* ステータス：開始・変更・延長 */
.news-category.status-open {
    background-color: #fff;
}

/* ステータス：終了 */
.news-category.status-close {
    border-color: #9e9e9e;
    background-color: #9e9e9e;
}

div.lead-entry-area{
  background: #fff;
  padding: 33px 0 41px;
  margin: 40px calc(50% - 50vw) 0;
  width: 100vw;
  text-align: center;
  border-top: 10px solid #00bfbf;
  border-bottom: 10px solid #00bfbf;
}

.lead-entry-text {
  width: 270px;
  margin: 0 auto;
  text-align: center;
  margin-bottom: 10px;
}

a.lead-entry-btn:hover {
  color: #DF0033;
}

a.lead-entry-btn:hover::after {
  background: url(/assets/img/arrow-red.svg) no-repeat center/100%;
}

a.lead-entry-btn::before {
  background: #ffeef2;
}

p.plan-notion-short {
  margin: 5px 0 35px;
}

@media screen and (max-width: 767px) {
  #news .news-box-area {
    margin: 60px auto;
  }
  .news-box {
    padding: 20px 0;
  }
  .news-link {
    display: block;
    position: relative;
  }
  .news .news-day {
    width: 30%;
  }
  .news-sp-top, .news-sp-bottom {
    display: flex;
    align-items: center;
  }
  .news-sp-bottom {
    margin-top: 15px;
  }
  .news-arrow {
    width: 2%;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .news-day {
    width: 30%;
  }
  .news-category-area {
    width: 60%;
    display: flex;
    justify-content: flex-start;
  }
  .news-category {
    margin-top: 0;
    width: 50%;
  }
  .news-category:first-child {
    margin: 0 10px 0 0;
  }
  .news-title {
    width: 100%;
    padding: 0 5% 0 0;
  }
  .news-link:hover .news-title {
    color: #000;
    transition: 0.2s linear;
  }
  div.lead-entry-area {
    padding: 35px 0 43px;
  }
  p.plan-notion-short {
    margin: 5px 0 3px;
  }
}

/*キャンペーン期間変更のご案内*/
div.wcp-extension-notion-black-background,
div.deliverydelay-notion-black-background,
div.overseas-price-notion-black-background,
div.changecompany-notion-black-background,
div.condopay-end-notion-black-background{
  position: fixed;
  background-color: #000000;
  opacity: 0.4;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1000000000001;
}
div.white-content-box-wcp-extension-notion,
div.white-content-box-deliverydelay-notion,
div.white-content-box-overseas-price-notion,
div.white-content-box-changecompany-notion,
div.white-content-box-condopay-end-notion{
  position: fixed;
  max-height: calc(100% - 50px - 40px - 20vh);
  max-width: 1100px;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  padding: 50px 0;
  margin: auto;
  z-index: 1000000000002;
  background-color: #F3F3F3;
}
div.white-content-box-wcp-extension-notion div.white-content-box-inner-wcp-extension,
div.white-content-box-deliverydelay-notion div.white-content-box-inner-deliverydelay,
div.white-content-box-overseas-price-notion div.white-content-box-inner-overseas-price,
div.white-content-box-changecompany-notion div.white-content-box-inner-changecompany,
div.white-content-box-condopay-end-notion div.white-content-box-inner-condopay-end{
  width: 85%;
  overflow-x: hidden;
  margin: 30px auto 0;
  max-height: 50vh;
}

div.wcp-extension-popup-close-button,
div.deliverydelay-popup-close-button,
div.overseas-price-popup-close-button,
div.changecompany-popup-close-button,
div.condopay-end-popup-close-button{
  width: 35px;
  height: 35px;
  position: absolute;
  right: -15px;
  top: -15px;
  text-align: center;
  background-color: #000000;
  border-radius: 17px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
div.wcp-extension-popup-close-button img,
div.deliverydelay-popup-close-button img,
div.overseas-price-popup-close-button img,
div.changecompany-popup-close-button img,
div.condopay-end-popup-close-button img{
  width: 50%;
}
div.white-content-box-wcp-extension-notion div.white-content-box-title-notion,
div.white-content-box-deliverydelay-notion div.white-content-box-title-notion,
div.white-content-box-overseas-price-notion div.white-content-box-title-notion,
div.white-content-box-changecompany-notion div.white-content-box-title-notion,
div.white-content-box-condopay-end-notion div.white-content-box-title-notion{
  padding: 0;
  margin-top: 0;
  width: 100%;
  text-align: center;
}
div.white-content-box-wcp-extension-notion div.white-content-box-title-notion p,
div.white-content-box-deliverydelay-notion div.white-content-box-title-notion p,
div.white-content-box-overseas-price-notion div.white-content-box-title-notion p,
div.white-content-box-changecompany-notion div.white-content-box-title-notion p,
div.white-content-box-condopay-end-notion div.white-content-box-title-notion p{
  font-size: 2.8rem;
  line-height: 1.2em;
}
@media screen and (max-width: 1440px) {
  div.white-content-box-wcp-extension-notion,
  div.white-content-box-deliverydelay-notion,
  div.white-content-box-overseas-price-notion,
  div.white-content-box-changecompany-notion,
  div.white-content-box-condopay-end-notion{
    top: 50%;
    transform: translateY(-50%);
    margin: 0 5%;
    max-width: 90%;
  }
  div.white-content-box-wcp-extension-notion div.white-content-box-inner-wcp-extension,
  div.white-content-box-deliverydelay-notion div.white-content-box-inner-deliverydelay,
  div.white-content-box-overseas-price-notion div.white-content-box-inner-overseas-price,
  div.white-content-box-changecompany-notion div.white-content-box-inner-changecompany,
  div.white-content-box-condopay-end-notion div.white-content-box-inner-condopay-end{
    width: 85%;
    overflow-x: hidden;
  }
}
@media screen and (max-width: 767px) {
  div.white-content-box-wcp-extension-notion div.white-content-box-inner-wcp-extension,
  div.white-content-box-deliverydelay-notion div.white-content-box-inner-deliverydelay,
  div.white-content-box-overseas-price-notion div.white-content-box-inner-overseas-price,
  div.white-content-box-changecompany-notion div.white-content-box-inner-changecompany,
  div.white-content-box-condopay-end-notion div.white-content-box-inner-condopay-end{
    width: 90%;
    overflow-y: scroll;
    height: 70vh;
  }
  div.white-content-box-wcp-extension-notion,
  div.white-content-box-deliverydelay-notion,
  div.white-content-box-overseas-price-notion,
  div.white-content-box-changecompany-notion,
  div.white-content-box-condopay-end-notion{
    margin: 0 5%;
    max-height: 80%;
  }
}

/* Swiper (ボタン付きスライドショー) */

.swiper-container {
  width: 100%;
  border-radius: 0.75em;
}
.swiper-pagination-bullets {
  margin-top: 25px;
}
.swiper-container-horizontal > .swiper-my-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
}
div.device-slider-visual{
  padding-top:10px;
}
div.swiper-slide {
  /* width: 500px !important; */
  display: flex;
  justify-content: center;
  align-items: center;
}
div.swiper-slide img {
  width: auto;
  padding: 0;
  filter: drop-shadow(5px 2px 5px rgb(0,0,0,20%));
  max-height: 210px;
}
@media screen and (max-width: 767px) {
  div.swiper-slide img {
    max-height: 129px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
  div.swiper-slide img {
    max-height: 149px;
  }
}
div.swiper-slide img.top-key-visual-slider {
  width: 100%;
  padding:0 20px 0 0;
}
div.swiper-my-pagination img {
  width: 80px;
}
div.swiper-my-pagination{
  border-radius: 0.75em;
}
.swiper-my-pagination .swiper-pagination-bullet {
  width: auto;
  height: auto;
  border-radius: 0;
  outline: none;
}
.swiper-my-pagination img {
  box-shadow: none;
  margin: 0;
  vertical-align: bottom;
}
.swiper-my-pagination {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.swiper-my-pagination .swiper-pagination-bullet {
  display: table-cell;
  padding: 2px;
  background: transparent;
  opacity: 1;
}
.swiper-my-pagination .swiper-pagination-bullet-active {
  background: transparent;
  opacity: 0.6;
}
.swiper-button-prev, .swiper-button-next {
  width: 50px !important;
  height: 50px !important;
  margin-top: -64px !important;
  outline: none;
}
.swiper-button-prev {
  margin-left: 0px !important;
  right: -200px;
  left: auto;
}
.swiper-button-next {
  margin-right: 0px !important;
}
.swiper-button-prev {
  background: url(../img/arrow-green.svg) no-repeat center center / contain;
  transform: scale(-1, 1);
}
.swiper-button-next {
  background: url(../img/arrow-green.svg) no-repeat center center / contain;
}
.swiper-scrollbar {
  display: none !important;
}
div.spec-area p.flex-center {
  display: flex;
  justify-content: center;
}
div.swiper-button-prev::after, div.swiper-button-next::after {
  content: "";
}
div.swiper-button-next, div.swiper-button-prev {
  top: 150px;
}
div.swiper-button-prev:focus-visible,
div.swiper-button-next:focus-visible {
  box-shadow: 0 0 0 2px #000;
}
div.swiper-button-prev {
  left: -5px;
}
div.swiper-button-next {
  right: -5px;
}

div.swiper-button-prev-normal {
  left: 10px;
}
div.swiper-button-next-normal {
  right: 10px;
}

div.swiper-button-prev-normal-rental {
  left: 2px;
}
div.swiper-button-next-normal-rental {
  right: 2px;
}

@media screen and (max-width: 767px) {
  div.swiper-button-next, div.swiper-button-prev {
    top: 105px;
  }
}
/* Go!Go!キャンペーン */

section.gogo-campaign-headline,
.inner section.gogo-campaign-headline {
  padding: 0;
}
section.gogo-campaign-headline h2 {
  font-size: 3.3rem;
  text-align: center;
  font-weight: 900;
  margin: 0;
}
section.gogo-campaign-headline h2.all-five-months {
  font-size: 3.5rem;
}
section.gogo-campaign-headline span {
  font-size: 2.5rem;
  text-align: center;
  color: #000;
}
section.gogo-campaign-headline span.entry-campaign-emphasis {
  font-size: 5.5rem;
  text-align: center;
  color: #df0033;
}
section.gogo-campaign-headline span.all-five-months {
  font-size: 5rem;
  text-align: center;
  color: #DF0033;
}
section.gogo-campaign-headline span.all-five-months span {
  font-size: 6.3rem;
  color: #DF0033;
  position: relative;
  top: 3.5px;
}
section.gogo-campaign-headline p.gogo-campaign-flow-title,
section.gogo-campaign-headline p {
  font-size: 2.4rem;
  font-weight: 900;
  line-height: 44px;
  text-align: center;
}
section.gogo-campaign-headline p.gogo-flow-catch {
  font-size: 2.8rem;
  font-weight: 600;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .campaign-cb.entry-gogo{
    margin: 25px auto -20px;
  }
  section.gogo-campaign-headline {
    margin-top: 0;
  }
  section.gogo-campaign-headline h2 {
    font-size: 3.2rem;
    text-align: center;
    font-weight: 900;
    margin: 0;
  }
  section.gogo-campaign-headline h2.all-five-months {
    font-size: 2.6rem;
    line-height: 1.1;
    margin: 0;
  }
  section.gogo-campaign-headline p {
    font-size: 1.7rem;
    line-height: 20px;
    margin-top: 20px;
  }
  section.gogo-campaign-headline span {
    font-size: 2.1rem;
  }
}
section.gogo-campaign-headline .gogo-appeal {
  margin: 10px auto 0;
  width: 88%;
}
section.gogo-campaign-headline .gogo-appeal.entry-gogo-appeal{
  margin: 40px auto 5px;
  width: 75%;
}
section.gogo-campaign-headline p.all-five-months {
  font-size: 2.6rem;
  font-weight: 900;
  line-height: 44px;
  text-align: center;
}
.gogo-plan-flex {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin: 25px auto 0;
  width: 100%;
  height: auto;
}
.gogo-plan-flex .gogo-plan-flex-inner {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  margin: 0;
  width: 100%;
  height: auto;
}
.gogo-plan-flex .gogo-plan-flex-inner div image.sp:first-child {
  margin-top: 30px;
}
.gogo-plan-flex .gogo-plan-flex-inner .gogo-plan-box {
  width: 45%;
  height: 200px;
}
@media screen and (max-width: 767px) {
  section.gogo-campaign-headline p.gogo-flow-catch {
    font-size: 2rem;
  }
  section.gogo-campaign-headline .gogo-appeal {
    margin: 0px auto 20px;
    width: 100%;
  }
  section.gogo-campaign-headline .gogo-appeal.entry-gogo-appeal {
    margin: 20px auto 5px;
    width: 90%;
  }
  section.gogo-campaign-headline p.all-five-months {
    font-size: 1.6rem;
  }
  .gogo-plan-flex {
    display: flex;
    flex-direction: column;
    margin: 20px auto 0;
    width: 100%;
    height: auto;
  }
  .gogo-plan-flex .gogo-plan-flex-inner .gogo-plan-box {
    margin: 0;
    width: 45%;
    height: auto;
    margin: 10px 0;
  }
}
.assumption-flex {
  display: flex;
  flex-direction: column;
  margin: 120px auto 60px;
  width: 100%;
  height: 470px;
}
.assumption-flex .assumption-head {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #68d8d5;
  width: 100%;
  height: 15%;
}
.assumption-flex .assumption-head p {
  font-size: 2.3rem;
  color: #000;
}
.assumption-flex .assumption-main {
  display: flex;
  justify-content: center;
  background: #e7e7e7;
  width: 100%;
  height: 85%;
}
.assumption-flex .assumption-main-box {
  padding: 20px 0;
  width: 90%;
  height: 100%;
}
.assumption-flex .assumption-main-box image.pc {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .assumption-flex {
    margin: 40px auto;
    height: auto;
  }
  .assumption-flex .assumption-head {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #68d8d5;
    width: 100%;
    height: 20%;
    padding: 10px 0;
  }
  .assumption-flex .assumption-head p {
    font-size: 2.1rem;
    margin-top: 0;
    line-height: 1.1;
  }
  .assumption-flex .assumption-main {
    height: 80%;
  }
}
p.gogo-campaign-flow-title{
  position: relative;
  padding: 15px 30px;
  background: #68d8d5;
  color: #000;
  font-size: 1.8rem;
  cursor: pointer;
  text-align: center;
}
div.gogo-campaign-table {
  display: flex;
  flex-direction: column;
  background: #e8e8e8;
  padding: 30px 10px 20px;
}
div.gogo-campaign-table p.plan-notion {
  font-size: 1.3rem;
  font-weight: normal;
  margin: 10px 15px 0;
  text-align: right;
  line-height: normal;
}
div.gogo-campaign-table .gogo-traffic-flex {
  display: flex;
  justify-content: space-around;
  padding: 0;
}
div.gogo-campaign-table .gogo-traffic-flex-inner {
  display: flex;
  flex-direction: row;
}
div.gogo-campaign-table .gogo-traffic-flex .gogo-traffic-flex-inner .gogo-traffic-box {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 50%;
  height: 100%;
}
div.gogo-campaign-table .gogo-traffic-flex .gogo-traffic-flex-inner .gogo-traffic-box img {
  width: 90%;
  height: auto;
}
@media screen and (max-width: 767px) {
  div.gogo-campaign-table .gogo-traffic-flex {
    flex-direction: column;
  }
  div.gogo-campaign-table .gogo-traffic-flex-inner:last-child {
    margin-top: 20px;
  }
}

p.gogo-campaign-flow-title::after{
  position: absolute;
  content: '';
  background: url(/assets/img/icon-plus-black.svg) no-repeat center/100%;
  width: 35px;
  height: 35px;
  top: 48%;
  right: 40px;
  transform: translateY(-50%);
}

p.gogo-campaign-flow-title.open::after{
  background: url(/assets/img/icon-minus-black.svg) no-repeat center/100%;
  height: 5px;
}
@media screen and (max-width: 767px) {
  p.gogo-campaign-flow-title {
    padding: 10px;
    font-size: 1.5rem;
  }
  p.gogo-campaign-flow-title::after {
    width: 15px;
    height: 15px;
    right: 10px;
  }
}

/* footer (r2) */
#footer-menu-r2 {
  --base-green: #68d8d5;
  --base-gray: #505050;
  --base-lightgray: #f2f5f5;
  --base-black: #252525;
  --mobile-margin: 5%;
  padding-bottom: 20px;
}
#footer-menu-r2 .section-entry {
  padding: 20px 0;
  background: var(--base-lightgray);
}
#footer-menu-r2 .section-entry .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
  height: 100%;
}
#footer-menu-r2 .section-entry .button-fig {
  width: 300px;
  height: 80px;
  background-color: rgba(255, 255, 255, 0.7);
  border: 3px solid #fff;
  border-radius: 50px;
  transition: background-color 0.2s;
}
#footer-menu-r2 .section-entry .button-fig .body {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  height: 100%;
  margin: 0 18px 0 22px;
}
#footer-menu-r2 .section-entry .button-fig .body::after {
  display: block;
  content: "";
  width: 12px;
  height: 12px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg) translate(-5px, 5px);
  transition: transform 0.2s;
}
#footer-menu-r2 .section-entry .button-fig .icon {
  width: 45px;
  height: 42px;
  text-align: center;
}
#footer-menu-r2 .section-entry .button-fig .icon img {
  width: auto;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
#footer-menu-r2 .section-entry .button-fig .text {
  color: var(--base-black);
  font-size: 2.4rem;
  line-height: 1.3;
  font-weight: bold;
}
#footer-menu-r2 .section-entry .button-fig:hover {
  background-color: #fff;
}
#footer-menu-r2 .section-entry .button-fig:hover .body::after {
  transform: rotate(45deg) translate(0, 0);
}
#footer-menu-r2 .section-entry .button-entry .body::after {
  border-top-color: var(--base-green);
  border-right-color: var(--base-green);
}
#footer-menu-r2 .section-entry .button-entry .text {
  text-indent: -0.6em;
}
#footer-menu-r2 .section-entry .button-entry:hover .text {
  border-color: var(--base-green);
}
#footer-menu-r2 .section-entry .button-business .body::after {
  border-top-color: var(--base-gray);
  border-right-color: var(--base-gray);
}
#footer-menu-r2 .section-nav {
  padding: 50px 0 0;
  background-color: #f2f5f5;
}
#footer-menu-r2 .section-nav .inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#footer-menu-r2 .section-nav .logo {
  flex-basis: 330px;
  margin-top: -50px;
}
#footer-menu-r2 .section-nav .logo a {
  width: 226px;
  display: inline-block;
  vertical-align: top;
}
#footer-menu-r2 .section-nav .logo img {
  width: 100%;
  height: auto;
}
#footer-menu-r2 .section-nav .nav {
  flex: 1;
  display: flex;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 40px;
}
#footer-menu-r2 .section-nav .nav a {
  color: var(--base-black);
  border-bottom: 1px solid transparent;
  transition: border-bottom 0.2s;
}
#footer-menu-r2 .section-nav .nav a:hover {
  border-bottom-color: var(--base-black);
}
#footer-menu-r2 .section-nav .nav-list {
  font-size: 1.5rem;
  line-height: 1.3;
}
#footer-menu-r2 .section-nav .nav-list li:not(:last-child) {
  margin-bottom: 15px;
}
#footer-menu-r2 .section-nav .nav-main li:nth-last-of-type(2), #footer-menu-r2 .section-nav .nav-main li:nth-last-of-type(1) {
  border-bottom: 0;
}
#footer-menu-r2 .copyright {
  color: var(--base-black);
  font-size: 1.3rem;
  line-height: 1;
  text-align: right;
}
@media (max-width: 767px) {
  #footer-menu-r2 {
    padding-bottom: 60px;
  }
  #footer-menu-r2 .section-entry {
    padding: 10px 0;
  }
  #footer-menu-r2 .section-entry .inner {
    gap: 20px;
  }
  #footer-menu-r2 .section-entry .button-fig {
    flex: 1;
    width: auto;
    border-width: 2px;
  }
  #footer-menu-r2 .section-entry .button-fig .body {
    flex-direction: column;
    justify-content: center;
    width: 100%;
    margin: 0;
    box-sizing: border-box;
  }
  #footer-menu-r2 .section-entry .button-fig .body::after {
    transform: rotate(45deg) translate(0, 0);
    position: absolute;
    top: calc(50% - 6px);
    right: 13px;
  }
  #footer-menu-r2 .section-entry .button-fig .icon {
    width: 42px;
    height: 38px;
    padding-top: 2px;
  }
  #footer-menu-r2 .section-entry .button-fig .text {
    font-size: 1.4rem;
    width: 100%;
    text-align: center;
    padding-top: 6px;
  }
  #footer-menu-r2 .section-entry .button-entry .icon {
    margin-left: 5px;
  }
  #footer-menu-r2 .section-entry .button-fig .text,
  #footer-menu-r2 .section-entry .button-entry .text {
    text-indent: -8px;
    padding-top: 0;
  }
  #footer-menu-r2 .section-entry .button-business .icon {
    margin-left: -7px;
  }
  #footer-menu-r2 .section-nav {
    padding: 40px 0 0;
  }
  #footer-menu-r2 .section-nav .inner {
    flex-direction: column;
  }
  #footer-menu-r2 .section-nav .logo {
    flex-basis: 0;
    margin-top: 0;
  }
  #footer-menu-r2 .section-nav .logo a {
    width: 210px;
  }
  #footer-menu-r2 .section-nav .nav {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 20px;
    margin-bottom: 20px;
  }
  #footer-menu-r2 .section-nav .nav a {
    border-bottom: 0;
  }
  #footer-menu-r2 .section-nav .nav-list {
    font-size: 1.3rem;
  }
  #footer-menu-r2 .section-nav .nav-list li:not(:last-child) {
    margin-bottom: 0;
  }
  #footer-menu-r2 .section-nav .nav-list {
    flex-basis: calc(50% - 10px);
  }
  #footer-menu-r2 .section-nav .nav-list li a {
    display: block;
    padding: 15px 0;
  }
  #footer-menu-r2 .section-nav .nav-main {
    display: flex;
    flex-wrap: wrap;
    gap: 0 20px;
    flex-basis: 100%;
    padding: 40px 0 10px;
  }
  #footer-menu-r2 .section-nav .nav-main li {
    flex-basis: calc(50% - 10px);
    border-bottom: 1px solid #c0c6c6;
  }
  #footer-menu-r2 .section-nav .nav-main li a {
    font-size: 1.7rem;
    text-align: center;
  }
  #footer-menu-r2 .section-nav .nav-sub li:not(:last-child) {
    border-bottom: 1px solid #dbdfdf;
  }
  #footer-menu-r2 .section-nav .nav-type2 {
    width: 100%;
    padding-top: 20px;
  }
  #footer-menu-r2 .section-nav .nav-type2 .nav-sub {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    flex-basis: 100%;
  }
  #footer-menu-r2 .section-nav .nav-type2 .nav-sub li {
    flex-basis: calc(50% - 10px);
  }
  #footer-menu-r2 .section-nav .nav-type2 .nav-sub li:nth-last-of-type(2), #footer-menu-r2 .section-nav .nav-type2 .nav-sub li:nth-last-of-type(1) {
    border-bottom: 0;
  }
  #footer-menu-r2 .copyright {
    font-size: 1.2rem;
    text-align: center;
  }
  div.digital-life-support div.inner .section-heading h2 {
    letter-spacing: 0.2rem;
  }
}

@media (min-width: 768px) {
  div.under-kv-notion{
    padding: 0%;
    justify-content: center;
  }
  div.under-kv-notion p.under-kv-notion-title{
    margin: 12px auto 12px 6vw;
    padding: 0;
    width: auto;
  }
  div.under-kv-notion p.under-kv-notion-title a.customer-timechg{
    justify-content: flex-start;
  }
}

.atone-preparation {
  font-size: 1.2rem;
  text-align: right;
  color: #646464;
  margin-top: 15px;
}

@media (max-width: 767px) {
  .atone-preparation {
    text-align: left;
    margin-top: 0;
  }
  .second_box + .atone-preparation {
    margin-top: 15px;
  }
}
/* FAQ categories */
.content-border {
  position: relative;
  background-color: #fff;
  border: #00bfbf 5px solid;
  border-radius: 2.5vw;
  z-index: 1;
}
.callcenter-area .center-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 45px;
}
.callcenter-area .form-next-button-border {
  margin-bottom: 45px;
}
.faq-nav-icons .nav-box {
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 1.4;
  color: #000000;
  transition: .3s all;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 270px;
  height: 70px;
  padding-top: 3px;
  background-color: #fff;
  border-radius: 15px;
  box-sizing: border-box;
  filter: drop-shadow(0 0 6px rgba(0, 0, 0, .2));
}
.faq-nav-icons .nav-box .icon .normal,
.faq-nav-icons .nav-box .icon .hover {
  display: block;
  position: relative;
  left: 15px;
  width: 32px;
  height: 32px;
}
.faq-nav-icons .nav-box .icon .normal {
  position: absolute;
  top: 21px;
  bottom: 0;
  left: 15px;
  right: 0;
  opacity: 1;
  z-index: 1;
  transition: all .3s;
}
.faq-nav-icons .nav-box:hover .icon .normal {
  opacity: 0;
}
.faq-nav-icons .nav-box .nav-box-text {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1e1e1e;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3;
}
#faq-content .faq-nav-icons .nav-box .nav-box-text p {
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .content-border {
    border: none;
  }
  .faq-nav-icons .nav-box {
    flex-direction: column;
    width: 100%;
    justify-content: center;
    border-radius: 10px;
  }
  .faq-nav-icons .nav-box .icon {
    left: 0;
    margin: -2px 0 8px;
    width: 20px;
    height: 20px;
    order: 1;
    position: relative;
  }
  .faq-nav-icons .nav-box .nav-box-text {
    font-size: 1.3rem;
    line-height: 1.2;
  }
  .callcenter-area .center-wrapper,
  .callcenter-area .content-box-inner {
    margin-top: 0;
  }
  .callcenter-area .form-next-button-border {
    margin-bottom: 0;
  }
  section.section-faq div.faq-nav-icons {
    justify-content: center;
  }
  .faq-nav-icons .nav-box .icon .normal,
  .faq-nav-icons .nav-box .icon .hover {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
  }
}

.text-under-notes p a {
  text-decoration: underline;
}
.error-message-value p a {
  color: #f00;
  text-decoration: underline;
}
.error-message-value p span.text-left {
  font-size: 1.4rem;
  text-align: left;
  display: inline-block;
}

/* 20230815_ページグローバルナビ */
.global-nav {
  background-color: #323232;
}
.global-nav ul {
  max-width: 1100px;
  margin: auto;
  display: flex;
  align-items: center;
  padding: 0;
  justify-content: center;
}
.global-nav ul li {
  border-right: 1px solid #909090;
  color: #FFF;
  text-align: center;
  font-size: 12px;
  font-weight: normal;
}
.global-nav ul.three li {
  width: calc(100% / 3);
}
.global-nav ul.four li {
  width: calc(100% / 4);
}
.global-nav ul.five li {
  width: calc(100% / 5);
}
.global-nav ul.six li {
  width: calc(100% / 6);
}
.global-nav ul li:first-child {
  border-left: 1px solid #909090;
}
.global-nav ul li a {
  color: #fff;
  padding: 1.5em 0;
  text-decoration: none;
  display: inline-block;
  width: 100%;
  height: 100%;
  transition: .3s all;
}
.global-nav ul li a:hover {
  background-color: #68d8d5;
  color: #000;
}
@media screen and (max-width: 767px) {
  .global-nav ul li {
    font-size: 10px;
    width: calc(100% / 5);
    box-sizing: border-box;
  }
  .global-nav ul li a {
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
  }
}

.important-mark {
  width: 55px;
  margin-right: 10px;
}
div.under-kv-notion {
  background-color: #E6E6E6;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
}
div.mypage-under-kv-notion {
  border-top: 20px solid #FFFFFF;
}
div.under-kv-notion-inner {
  text-align: left;
}
div.under-kv-notion p.under-kv-notion-title {
  color: #ff6159;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: left;
  margin: 12px 0;
  padding: 0;
}
div.under-kv-notion p.under-kv-notion-title a{
  text-decoration: none;
  font-size: 18px;
  color: #000000;
  display: flex;
  align-items: center;
}
/*マイページの位置調整*/
div.under-kv-notion.mypage-notion {
  background-color: #282828;
  padding: 45px 0 0;
}
div.under-kv-notion.mypage-notion div.under-kv-notion-inner{
  text-align: left;
  width: 100%;
  background-color: #fee6eb;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 0;
  padding-top: 15px;
}

@media screen and (max-width: 767px) {
  div.under-kv-notion {
    padding: 10px;
  }

  /*マイページの位置調整*/
  div.under-kv-notion.mypage-notion {
    background-color: #282828;
    padding: 45px 0 0;
  }

  div.under-kv-notion p.under-kv-notion-title a {
    text-decoration: none;
    font-size: 1.5rem;
  }
}
/*お知らせポップアップ*/
div.guidance-notion-black-background{
  position: fixed;
  background-color: #000000;
  opacity: 0.4;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1000000000001;
}
div.white-content-box-guidance-notion{
  position: fixed;
  max-height: calc(100% - 50px - 40px - 20vh);
  max-width: 1100px;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  padding: 50px 0;
  margin: auto;
  z-index: 1000000000002;
  background-color: #F3F3F3;
  overflow-x: hidden;
}
div.white-content-box-guidance-notion div.white-content-box-inner-guidance{
  width: 85%;
  overflow-x: hidden;
  margin: 30px auto 0;
  max-height: 50vh;
}
div.guidance-popup-close-button{
  width: 35px;
  height: 35px;
  position: absolute;
  right: 5px;
  top: 5px;
  text-align: center;
  background-color: #000000;
  border-radius: 17px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
div.guidance-popup-close-button img{
  width: 50%;
}
div.white-content-box-guidance-notion div.white-content-box-title-notion{
  padding: 0;
  margin-top: 0;
  width: 100%;
  text-align: center;
}
div.white-content-box-guidance-notion div.white-content-box-title-notion p{
  font-size: 2.8rem;
  line-height: 1.2em;
}
@media screen and (max-width: 1440px) {
  div.white-content-box-guidance-notion{
    top: 50%;
    transform: translateY(-50%);
    margin: 0 5%;
    max-width: 90%;
  }
  div.white-content-box-guidance-notion div.white-content-box-inner-guidance{
    width: 85%;
    overflow-x: hidden;
  }
}
@media screen and (max-width: 767px) {
  div.white-content-box-guidance-notion div.white-content-box-inner-guidance{
    width: 90%;
    overflow-y: scroll;
    height: 70vh;
  }
  div.white-content-box-guidance-notion{
    margin: 0 5%;
    max-height: 80%;
  }
  div.white-content-box-guidance-notion div.white-content-box-title-notion p{
    font-size: 1.9rem;
    padding: 0 5%;
    font-weight: 600;
  }
}
@media (min-width: 768px) and (max-width: 1280px) {
  div.under-kv-notion{
    padding: 0 3%;
  }
  div.swiper-button-next, 
  div.swiper-button-prev {
    top: 115px;
  }
}

/*2024年GWのお知らせ*/
table.calendar{
  width: 80%;
  text-align: center;
  border-collapse: collapse;
}
table.calendar th{
  font-size: 1.2rem;
  line-height: 1.3;
  font-weight: bold;
  white-space: nowrap;
  background-color: #fff;
  border: 1px solid #aaa;
  border-bottom: 4px double #aaa;
  padding: 10px 2px;
}
table.calendar td{
  font-size: 1.3rem;
  line-height: 1.3;
  background-color: #fff;
  border: 1px solid #aaa;
  padding: 8px 2px;
}
table.calendar td.red{
  color: #df0033;
}
table.calendar td.bg-red{
  background-color: #eed1d1;
}
@media screen and (max-width: 767px) {
  table.calendar{
    width: 100%;
  }
}
/* フッターデバイス項目追加 */
footer .nav .device-list li{
  color:#666;
  margin-bottom: 15px;
}
footer .nav .device-list li a::before {
  content: "▶";
  font-size: 12px;
  margin: 0 5px;
}
@media screen and (max-width: 767px) {
  ul.sp.device-list{
    width: 100%;
  }
  footer .nav .device-list li{
    padding: 0;
    margin-bottom: 0;
  }
  #footer-menu-r2 .section-nav .nav .device-list li{
    display: flex;
  }
  #footer-menu-r2 .section-nav .nav .device-list li:first-child{
    border-top: 1px solid #dbdfdf;
    padding: 15px 0;
  }
  #footer-menu-r2 .section-nav .nav .device-list li a{
    padding: 0 5px;
  }
  footer .nav .device-list li a::before {
    content: "▶";
    font-size: 10px;
    margin: 0 2px;
  }
  .manual-li {
    padding-top: 15px;
  }
  #footer-menu-r2 .section-nav .nav li.manual-li .device-list li a {
    padding: 0;
  }
  #footer-menu-r2 .section-nav .nav li.manual-li .device-list li:first-child {
    border-top: none;
  }
}
/* お知らせ改行用 */
.space{
  margin: 10px 0;
}
/* 反社規約 */
.mypage-global-confirm .leave-checkbox-box-desciption p.terms-social,
.leave-checkbox-box-desciption p.terms-social {
  text-indent: 0;
  margin: 20px 0;
}
.leave-checkbox-box-desciption p.terms-create {
  padding-left: 1em;
}
@media screen and (max-width: 767px) {
  .leave-checkbox-box-desciption p.terms-social {
    padding-left: 0;
  }
}

/* atone注意書き */
div.mypage-nav a.mypage-link-black {
  text-decoration: underline;
  color: #000;
  text-align: left;
  font-weight: 500;
}

a.mypage-link-black {
  text-decoration: underline;
  color: #000;
}

/* 2024年11月 新footer header サブスク/法人 */
/* 共通は[id$="_head_create"]　違う場合それぞれのid */
/* header */
[id$="_head_create"] header ul li.nav_type01 {
  max-width: 110px;
  letter-spacing: 0;
  text-indent: 0;
  line-height: 1.3;
  margin: 10px 0;
  border-left: 1px solid #000;
}
[id$="_head_create"] ul li.nav_type01:first-of-type {
  border-left: none;
}
[id$="_head_create"] header ul {
  justify-content: flex-end;
}
[id$="_head_create"] header ul.sp_nav_in_subsc {
  width: 100%;
  max-width: 340px;
  margin: 30px auto 50px;
  position: static;
  background: unset;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0 20px;
}
[id$="_head_create"] header .header-link-wrapper {
  width: auto;
  height: 100%;
}
[id$="_head_create"] header .header-link-mypage {
  padding: 10px;
  background: #F2F5F5;
}
[id$="_head_create"] header .header-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
}
[id$="_head_create"] header .header-link .mypage-icon {
  display: block;
  max-width: 40px;
  margin: auto;
  padding-bottom: 8px;
}
[id$="_head_create"] header .header-link a {
  display: block;
  height: 100%;
  z-index: 2;
  white-space: nowrap;
}
[id$="_head_create"] header .header-link-entry {
  padding: 25px 10px;
  background: #df0033;
}
[id$="_head_create"] header .header-link-entry a {
  color: #fff;
  box-sizing: border-box;
  line-height: 1.4;
}
[id$="_head_create"] header .header-link-corp {
  padding: 25px 10px;
  background: #00729a;
}
[id$="_head_create"] header .header-link-corp a {
  height: auto;
  color: #fff;
}
[id$="_head_create"] header .header-link::before {
  background-color: #68d8d5;
  z-index: 1;
}
[id$="_head_create"] header .header-link:hover a {
  color: #000;
}
[id$="_head_create"] #footer-menu-r2 .section-entry .button-fig .body::after {
  display: block;
  content: '';
  background: url(/assets/img/arrow-white.svg) no-repeat center / 100%;
  width: 12px;
  height: 20px;
  transform: translateX(-50%);
  border: none;
}
[id$="_head_create"] #footer-menu-r2 .section-entry .button-fig:hover {
  background-color: #fff;
}
[id$="_head_create"] #footer-menu-r2 .section-entry .button-fig .text {
  color: #fff;
}
[id$="_head_create"] #footer-menu-r2 .section-entry .button-fig.button-entry {
  height: 65px;
  background-color: #df0033;
}
[id$="_head_create"] #footer-menu-r2 .section-entry .button-fig.button-business {
  height: 65px;
  background-color: #00729a;
}
[id$="_head_create"] header .header-link-entry.sp {
  display: none;
}
[id$="_head_create"] header .entry-text {
  font-size: 1.1rem;
}
[id$="_head_create"] header .large-text {
  font-size: 1.5rem;
}
[id$="_head_create"] header ul li.nav_type01 a {
  margin-top: 15px;
}

/* header Mobile */
@media (max-width: 767px) {
  [id$="_head_create"] header .entry li.nav_type03 a span {
    padding-top: 2px;
  }
  [id$="_head_create"] header .header-link-entry,
  [id$="_head_create"] header .header-link-corp {
    height: 100%;
    max-width: 85px;
    min-width: 80px;
    padding: 14px 0;
    box-sizing: border-box;
  }
  [id$="_head_create"] header .header-link-entry a,
  [id$="_head_create"] header .header-link-corp a {
    line-height: 1.6;
    font-size: 12px;
  }
  [id$="_head_create"] header .header-link-entry a .entry-text {
    font-size: 10px;
  }
  [id$="_head_create"] header .header-link-entry a .large-text {
    font-size: 16px;
  }
  [id$="_head_create"] header .entry li.nav_type03 a:hover::after {
    transform: translateX(0);
  }
  [id$="_head_create"] header .inner {
    width: 100%;
    padding: 0 4vw;
    margin-left: 0;
  }
  [id$="_head_create"] header .logo {
    width: 135px;
    transform: rotateX(0);
  }
  [id$="_head_create"] header ul {
    display: flex;
    align-items: center;
    padding: 0;
  }
  [id$="_head_create"] header ul.pc_nav {
    display: none;
  }
  [id$="_head_create"] header .entry {
    position: relative;
    width: 140px;
  }
  [id$="_head_create"] header .entry li.nav_type03 a {
    height: 53px;
    padding: 0 10px;
  }
  [id$="_head_create"] header .header-link-wrapper {
    position: inherit;
    margin-right: 62px;
    background: unset;
    z-index: 1;
  }
  [id$="_head_create"] header .header-link-mypage {
    display: none;
  }
  [id$="_head_create"] .sp_btn {
    max-width: 80px;
    height: 100%;
    position: unset;
    transform: unset;
  }
  [id$="_head_create"] .sp_btn a {
    width: 80px;
    height: 50%;
    margin: 0;
    padding: 14px 0;
    font-size: 1.1rem;
    border: none;
  }
  [id$="_head_create"] .sp_btn a:nth-of-type(1) {
    background-color: #00729a;
  }
  [id$="_head_create"] .sp_btn a:nth-of-type(2) {
    background-color: #f2f5f5;
    color: #000;
  }
  [id$="_head_create"] #sp-menu {
    width: 25px;
    right: 10px;
  }
  [id$="_head_create"] header .sp_nav {
    padding: 30% 5%;
    justify-content: center;
    background: #F2F5F5;
    z-index: 111;
    gap: 20px;
  }
  [id$="_head_create"] header .sp_nav_type {
    max-width: 210px;
    position: relative;
    margin: auto;
  }
  [id$="_head_create"] header .sp_nav_type + .sp_nav_type {
    margin-top: 30px;
  }
  [id$="_head_create"] header .sp_nav_type.sp_nav_faq,
  [id$="_head_create"] header .sp_nav_type.sp_nav_entry {
    margin-top: 60px;
  }
  [id$="_head_create"] header ul li.sp_nav_type03 {
    background-color: unset;
    border-radius: 0;
    width: 158px;
  }
  [id$="_head_create"] header .sp_nav_type03 a {
    padding-bottom: 6px;
    color: #000;
    border-bottom: 1px solid #000;
    padding: 16px;
    text-align: left;
  }
  [id$="_head_create"] #footer-menu-r2 .section-entry .button-fig.button-entry,
  [id$="_head_create"] #footer-menu-r2 .section-entry .button-fig.button-business {
    height: 40px;
  }
  [id$="_head_create"] #footer-menu-r2 .section-entry .button-fig .body::after {
    width: 8px;
    height: 14px;
    margin-right: 5px;
  }
  [id$="_head_create"] header .header-link-entry.sp {
    display: flex;
  }

  /* ハンバーガーメニュー */
  [id$="_head_create"] header ul li.sp_nav_type01 {
    background: none;
    border: none;
    gap: 10px;
    margin-bottom: 230px;
  }
  [id$="_head_create"] header ul li.sp_nav_type01 a {
    text-indent: -5px;
    position: relative;
    width: 100%;
    border-radius: 30px;
    justify-content: center;
    padding: 15px 0;
  }
  [id$="_head_create"] header ul li.sp_nav_type01 a:nth-of-type(1) {
    background-color: #DF0033;
  }
  [id$="_head_create"] header ul li.sp_nav_type01 a:nth-of-type(2) {
    background-color: #00729a;
  }
  [id$="_head_create"] header ul li.sp_nav_type01 a::after {
    display: inline-block;
    content: '';
    background: url(/assets/img/arrow-white.svg) no-repeat center / 100%;
    width: 8px;
    height: 15px;
    transform: translateX(-50%);
    border: none;
    position: absolute;
    top: calc(50% - 8px);
    right: 13px;
  }
  [id$="_head_create"] #entry_fix div.price-fix-box a div {
    margin-left: 20px;
  }
}

/* 追従ボタン */
[id$="_head_create"] #entry_fix div.price-fix-box .price-fix-entry p {
  transform: translateY(15px);
}
#entry_fix div.price-fix-box a.price-fix-corp-entry {
  background-color: #00729a;
}
#entry_fix div.price-fix-box a.price-fix-corp-entry p {
  color: #fff;
}

/* Footer --> */
[id$="_head_create"] #footer-menu-r2 {
  background-color: var(--recharge-bg2);
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
[id$="_head_create"] #footer-menu-r2.base-gray {
  --recharge-bg2: var(--recharge-bg);
}
[id$="_head_create"] #footer-menu-r2 .sp {
  display: none;
}
[id$="_head_create"] #footer-menu-r2 .section-nav {
  background-color: var(--recharge-bg2);
}
[id$="_head_create"] #footer-menu-r2 .nav {
  align-self: flex-start;
}
[id$="_head_create"] #footer-menu-r2 .logo {
  flex: 0 1 auto;
  align-self: center;
}
[id$="_head_create"] #footer-menu-r2 .nav.nav-type2 {
  flex: 0 1 auto;
  gap: initial;
}
[id$="_head_create"] #footer-menu-r2 .nav.nav-type3 {
  flex: 0 1 465px;
  display: block;
}
[id$="_head_create"] #footer-menu-r2 .nav.nav-type3 h3 {
  color: var(--recharge-gray2);
  font-size: 1.5rem;
  font-weight: 500;
  margin: 0 0 10px;
}
[id$="_head_create"] #footer-menu-r2 .nav.nav-type3 .nav-sub {
  padding: 14px 0 12px;
  border-top: 1px solid var(--recharge-gray);
  border-bottom: 1px solid var(--recharge-gray);
}
[id$="_head_create"] #footer-menu-r2 .nav.nav-type3 .nav-sub li {
  display: flex;
  align-items: center;
}
[id$="_head_create"] #footer-menu-r2 .nav.nav-type3 .nav-sub li::before {
  display: block;
  content: '';
  width: .4em;
  height: 1px;
  background-color: var(--recharge-gray);
  margin: -.25em .6em 0 .4em;
}
[id$="_head_create"] #footer-menu-r2 .nav.nav-type3 .nav-sub li:not(:last-child) {
  margin-bottom: 12px;
}
[id$="_head_create"] .return-notion ul li.li_br {
  margin-bottom: 10px;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer {
  padding: 0 0 80px;
  border-top: 1px solid var(--recharge-section-odd);
  box-shadow: 0 -3px 5px var(--recharge-section-odd);
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .inner.subsc-create-inner {
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  gap: 0;
}
[id$="_head_create"] #footer-menu-r2 .section-nav .logo {
  margin: 0;
  flex-basis: 0;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .footer-nav {
  margin-top: 40px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  align-self: auto;
  position: relative;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .section-nav .nav {
  width: 65%;
  margin-bottom: 0;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .footer-nav-list + .footer-nav-list {
  margin-top: 15px;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .nest-list {
  color: #707070;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .nest-list a {
  padding-left: 14px;
  margin-left: 14px;
  position: relative;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .nest-list a::before {
  position: absolute;
  content: "";
  display: inline-block;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-left: 10px solid black;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .privacy-mark {
  width: 75px;
  position: absolute;
  bottom: -48px;
  right: -160px;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .privacy-mark a {
  display: block;
  border: none;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .privacy-mark a:hover {
  border: none;
}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .privacy-mark a img {
  width: 100%;

}
[id$="_head_create"] #footer-menu-r2.subsc-create-footer .copyright {
  position: absolute;
  right: -80px;
  bottom: -50px;
}
[id$="_head_create"] #footer-menu-r2 .copyright p {
  font-size: 1.3rem;
}
div.form-container.subsc-fo {
  min-height: calc(100vh - 132px + -60px);
}
div.form-container.business-fo {
  min-height: calc(100vh - 132px + -15px);
}

/* footer Mobile */
@media (max-width: 767px) {
  [id$="_head_create"] #entry_fix div.price-fix-box {
    width: 50%;
    height: 100%;
  }
  [id$="_head_create"] #entry_fix div.price-fix-box .price-fix-entry p {
    transform: none;
  }
  [id$="_head_create"] #entry_fix {
    top: auto;
    z-index: 1000;
  }
  header ul li.sp_nav_type01 {
    display: flex;
  }
  header ul li.sp_nav_type01 a {
    background: none;
  }
  [id$="_head_create"] #footer-menu-r2 .inner {
    gap: initial;
  }
  [id$="_head_create"] #footer-menu-r2 .logo {
    flex: 1;
    margin-top: 0;
  }
  [id$="_head_create"] #footer-menu-r2 .nav.nav-type2 {
    flex: 1;
    padding-top: 25px;
  }
  [id$="_head_create"] #footer-menu-r2 .nav.nav-type3 {
    flex: 1;
  }
  [id$="_head_create"] #footer-menu-r2 .sp {
    display: block;
    width: 100%;
    margin-bottom: 0;
  }
  [id$="_head_create"] #footer-menu-r2 .section-nav .nav-main li:not(:nth-last-of-type(-n+2)) {
    border-bottom: 1px solid var(--recharge-sp-footer-border);
  }
  [id$="_head_create"] #footer-menu-r2.base-gray .section-nav .nav-main li:not(:nth-last-of-type(-n+2)) {
    --recharge-sp-footer-border: var(--recharge-sp-footer-border2);
  }
  [id$="_head_create"] #footer-menu-r2 .section-nav .nav-main li a {
    font-size: 1.4rem;
    padding: 13px 0;
  }
  [id$="_head_create"] #footer-menu-r2 .nav-type2 .nav-sub li {
    font-size: .95em;
    text-align: center;
    border-bottom: 1px solid var(--recharge-sp-footer-border);
  }
  [id$="_head_create"] #footer-menu-r2.base-gray .nav-type2 .nav-sub li {
    --recharge-sp-footer-border: var(--recharge-sp-footer-border2);
  }
  [id$="_head_create"] #footer-menu-r2 .nav-type2 .nav-sub li:nth-last-of-type(1) {
    border-bottom: 0;
  }
  [id$="_head_create"] #footer-menu-r2 .nav.nav-type3 {
    width: 100%;
  }
  [id$="_head_create"] #footer-menu-r2 .nav.nav-type3 h3 {
    font-size: 1.3rem;
    margin: 0 0 8px;
  }
  [id$="_head_create"] #footer-menu-r2 .nav.nav-type3 .nav-sub {
    padding: 5px 0;
    margin-bottom: 10px;
  }
  [id$="_head_create"] #footer-menu-r2 .nav.nav-type3 .nav-sub li:not(:last-child) {
    margin-bottom: 0;
    border-bottom: 0;
  }
  [id$="_head_create"] #footer-menu-r2 .nav.nav-type3 .nav-sub li a {
    flex: 1;
    display: block;
    padding: 8px 0;
  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer {
    padding : 0 0 70px;
  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer .section-nav .nav {
    width: 100%;
    max-width: 400px;
    margin-top: 30px;
  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer .footer-nav-list + .footer-nav-list {
    margin-top: 10px;
  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer .nest-list a::before {
    border-left: 8px solid black;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer .nest-list a {
    padding-left: 10px;
    margin-left: 8px;
  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer .privacy-mark {
    right: 0;
  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer .copyright {
    right: 0;
    left: 0;
    margin: auto;
  }
}

@media (min-width: 768px) and (max-width: 1280px) {
  /* header tb */
  [id$="_head_create"] header ul li.nav_type01 a {
      font-size: 12px;
  }
  [id$="_head_create"] header ul {
    width: calc(100% - 370px);
  }
  [id$="_head_create"] header .header-link-wrapper {
    margin-right: 15px;
  }
  /* footer tb */
  #footer-menu-r2 .section-nav .inner {
    max-width: 768px;
  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer .privacy-mark {
    right: calc((-75px / 4) - 75px);

  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer .copyright {
    right: 0;
  }
  [id$="_head_create"] #footer-menu-r2.subsc-create-footer .section-nav .nav {
    width: 75%;
  }

  
}
/* <-- Footer */
/* サブスク/法人（共通） end */
/* business */
#business_head_create header ul {
  width: calc(100% - 140px);
}
#business_head_create header ul li.nav_type02 {
  min-width: 100px;
}
#business_head_create header ul li.nav_type02 a:nth-child(1) {
  background-color: #666;
  color: #fff;
}
#business_head_create header ul li.nav_type02 a:nth-child(2) {
  background-color: #00729A;
  color: #fff;
}
@media (max-width: 767px) {
  #business_head_create header .header-link-entry {
    margin-left: 15px;
  }
  #business_head_create .sp_btn a:nth-of-type(1) {
    background-color: #666;
  }
  #business_head_create .sp_btn a:nth-of-type(2) {
    background-color: #00729A;
    color: #fff;
  }
}
@media (min-width: 768px) and (max-width: 1280px) {
  #business_head_create header li.header-link {
    min-width: 74px;
  }
  #business_head_create header .header-link:last-child {
    margin-right: 15px;
  }
  #business_head_create header ul li.nav_type02 {
    min-width: 85px;
  }
}
/* 追従ボタン */
#business_head_create #entry_fix div.price-fix-box a.price-fix-corp-inquiry {
  background-color: #00729A;
}
#business_head_create #entry_fix div.price-fix-box a.price-fix-corp-inquiry p{
  color: #fff;
}

@media (max-width: 767px) {
  #business_head_create header ul {
    width: auto;
  }
  #business_head_create #entry_fix div.price-fix-box a.price-fix-entry-corp {
    height: auto;
  }
  #business_head_create #entry_fix div.price-fix-box a.price-fix-corp-inquiry {
    display: none;
  }
  /* ハンバーガー */
  #business_head_create header ul li.sp_nav_type01 a.nav-entry-business {
    height: 20px;
    padding: 18px 0;
    font-size: 20px;
    width: 50%;
  }
  #business_head_create header ul li.sp_nav_type01 .bussiness-sp-habg {
    width: 50%;
  }
  #business_head_create header ul li.sp_nav_type01 .bussiness-sp-habg a:nth-child(1) {
    margin-bottom: 3px;
    background-color: #666;
  }
  #business_head_create header ul li.sp_nav_type01 .bussiness-sp-habg a {
    padding: 7px 0;
  }
  #business_head_create header ul.sp_nav {
    width: 100%;
  }
}

/* 決済時にダブルクリック防止処理　start */
.guard-loading-mark-area {
  width: 100vw;
  height: 100vh;
  position: fixed;
  z-index: 99999999999;
  background: rgba(0, 0, 0, 0.3);
  top: 0;
  left: 0;
}
.guard-loading-mark-area.show {
  display: block;
}
.guard-loading-mark-area .loading-mark {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
/* 決済時にダブルクリック防止処理　end */
