html, body, div, h1, h2, h3, h4, p {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    background: #FFF6F6;
}
h1 {
    font-size: 30px;
}
h2 {
    font-size: 20px;
    line-height: 24px;
    margin: 30px 0 8px;
}
h3 {
    font-size: 16px;
    margin: 8px 0;
}
p {
    font-size: 14px;
}
p + p {
    margin-top: 15px;
}
ul, ol {
    padding-left: 20px;
}
ol.roman {
    list-style-type: lower-roman;
}
ol.abc {
    list-style-type: lower-alpha;
    margin: 10px 0;
    margin-left: 16px;
}
ol h3 {
    text-decoration: underline;
}
.reset-box, .reset-box .counter-box ol {
    padding-left: 0;
    counter-reset: numbers;
}
.reset-box .counter-box h2::before, .reset-box .counter-box ol li::before {
    content: counters(numbers, '.') ' ';
    counter-increment: numbers;
}
.reset-box .counter-box ol li {
    padding-left: 40px;
    position: relative;
}
.reset-box .counter-box ol li::before {
    position: absolute;
    left: 0;
}
.reset-box .counter-box ol li::marker {
    content: none;
}
.reset-box .counter-box ol.roman li, .reset-box .counter-box ol.abc li {
    padding-left: 0;
}
.reset-box .counter-box ol.roman li::before, .reset-box .counter-box ol.abc li::before {
    content: '';
}
.reset-box .counter-box ol.roman li::marker, .reset-box .counter-box ol.abc li::marker {
    content: inherit;
}
.txt-sm {
    font-size: 12px;
}
.align-r {
    text-align: right;
}
.fwb {
    font-weight: bold;
}
.page-top {
    position: fixed;
    width: 100%;
    height: 55px;
    padding: 0 16px;
    top: 0;
    left: 0;
    box-sizing: border-box;
    background: #fff;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 100;
}
.logo, .logo img {
    height: 30px;
    display: block;
}
.page-top a {
    color: #000;
    font-size: 14px;
    text-decoration: none;
}
.page-top #menu {
    margin-left: 10px;
    cursor: pointer;
    font-size: 16px;
    display:none;
}
.page-top .arrow-down {
    width: 10px;
    height: 10px;
    display: inline-block;
    background: url(./arrow-down.svg) center no-repeat;
}
.page-top .top-nav-links{
    display:flex;
    align-items: center;
    list-style: none;
    gap: 20px;
    flex:1;
    font-size:14px;
    font-weight: bold;
}
.page-top .top-nav-links > * {
    cursor: pointer;
}
.page-top .btn-login{
    display: flex;
    align-items: center;
    justify-content: center;
    height:30px;
    padding:0 15px;
    color:#fff;
    background:linear-gradient( 134deg, #FF3E61 0%, #FF3E3E 100%);;
    border-radius: 100px;
    cursor: pointer;
    font-size:14px;
}
.sub-menu {
    display: none;
    top: 0;
    left: 0;
    border-radius: 2px;
    padding: 100px 10px ;
    background:#fff url(/images/logo_black.png) 24px 40px no-repeat;
    background-size: auto 18px;
}
.sub-menu .sm-logo{
    padding: 20px;
}
.sub-menu .sm-cancel{
    position:absolute;
    right: 20px;
    top: 20px;
}
.sub-menu .sm-cancel svg{
    width:20px;
}
.sub-menu a {
    display: block;
    color: #000;
    line-height: 48px;
    font-size: 16px;
    margin: 5px 15px;
    border-bottom:solid 1px #f2f2f2;
}
.sub-menu a:hover {
    background: #f7f9fc;
}
.container {
    max-width: 960px;
    margin: 80px auto;
    text-align: justify;
    font-size: 14px;
}
.page-box {
    padding: 0 16px;
}
.page-box a{
    color: #3761FF;
}
.top-box {
    margin-bottom: 30px;
    padding-top: 10px;
}
.top-box h3 {
    margin-bottom: 0;
}
.img-box img{
    width: 100%;
}
.page-footer {
    background: #222222;
    color: #fff;
    font-size: 14px;
    padding: 30px 20px;
}
.social-list{
    padding: 20px 0;
    text-align: center;
}
.social-list a{
    text-decoration: none;
}
.social-list .the-list svg{
    width:32px;
    margin:0 5px;
}
.copy-info {
    margin-top: 10px;
    color: #707070FF;
    text-align: center;
    font-size: 12px;
}
.page-footer .ft-more {
    display:inline-flex;
    align-items: center;
    gap:4px;
    cursor: pointer;
    color:#ffa148;
}
.page-footer .ft-more svg{
    width:12px;
    height:12px;
    transition: all .2s;
}
.page-footer .ft-more.open svg{
    transform: rotate(-180deg);
}
.nav-list {
    list-style: none;
    text-align: center;
    padding-left: 0;
    padding-bottom: 0;
    max-width: 1100px;
    margin:0 auto;
    width:100%;
}
.nav-list li {
    display: inline-block;
    position: relative;
    line-height: 26px;
}
.nav-list li + li {
    margin-left: 18px;
}
.nav-list li::after{
    content: '｜';
    position: absolute;
    right: -18px;
    top: 0;
    opacity: .4;
}
.nav-list li:last-of-type:after{
    content: '';
}
.nav-list li a{
    color: #fff;
    text-decoration: none;
}
.nav-list.sub{
    display: none;
}
@media only screen and (max-width:767px) {
    .hidden-xs-only {
        display: none !important 
    }
    .page-top #menu {
        font-size: 0;
        margin-left: auto;
    }
    .page-top .top-nav-links{
        display: none;
    }
    .page-top #menu{
        display:block;
    }
    .page-top .logo{
        display: flex;
        flex-direction: row;
        align-items: center;
        gap:10px;
    }
    .page-top .arrow-down {
        width: 30px;
        height: 30px;
        display: inline-block;
        background: url(./list.svg) center no-repeat;
    }
    .sub-menu {
        position: fixed;
        height:100%;
        width: 100%;
    }
    .img-box {
        margin: 26px -16px;
    }
    .page-footer {
    }
    .container {
        margin-top: 60px;
    }
    .nav-list li{
        display:block;
        line-height:32px;
        opacity: .8;
    }
    .nav-list li + li{
        margin:0;
    }
    .nav-list li::after{
        display: none;
    }
    .nav-list.sub{
        margin-top: 20px;
    }
}
@media only screen and (min-width:768px) {
    .hidden-sm-and-up {
        display: none !important 
    }
    .flex-box {
        display: flex;
        justify-content: space-between;
        margin-top: 30px;
        align-items: center;
    }
    .flex-box:nth-of-type(odd) .img-box {
        order: 2;
    }
    .img-box , .txt-box {
        width: 47%;
        order: 1;
    }
    .txt-box h2:first-of-type {
        margin-top: 0;
    }
}
.nav-top-list{
    margin-bottom:5px;
}




.site-footer{
    background:#222;
    padding:42px 0 0;
    color:#fff;
    position:relative;
    .sf-con{
        max-width: 1200px;
        margin:0 auto;
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        gap:60px;
        box-sizing: border-box;
        padding:0 20px 30px;
        .osf.last{
            max-width: 300px;
        }
        h3{
            font-size: 20px;
        }
        ul{
            list-style: none;
            padding:0;
            li{
                font-size:14px;
                padding-bottom:10px;
            }
            a{
              color:inherit;
                text-decoration: none;
                opacity: .6;

            }
            a:hover{
                opacity: 1;
            }
        }
    }
    .copyright{
        padding: 20px;
        background:#00000050;
        text-align: center;
        font-size:12px;
        opacity: .6;
        margin:0;
    }
}

.divInput{
  position:absolute;
  bottom: 20px;
  right:20px;
  z-index: 50;
  .input{
    width: 110px;
    padding: 0 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    line-height: auto;

    img{
        width:20px;
        position:initial;
        right: auto;
        top: auto;
        
    }
  }
  .list{
    width:110px;
    bottom: 30px;
    font-size:12px;
  }
}


@media screen and (max-width: 680px) {
   .site-footer{
    padding: 10px 0 0;
    .sf-con{
        max-width: 100%;
        box-sizing: border-box;
        padding:0 20px 10px;
        flex-wrap: wrap;
        gap:0;
        justify-content: space-between;
        h3{
            font-size: 16px;
            margin:0 0 5px;
        }
        .osf{
            width: 48%;
            &.last{
                max-width: auto;
            }
        }

        ul{
            list-style: none;
            padding:0;
            li{
                font-size: 12px;
                padding-bottom:6px;
            }
        }
    }
    .copyright{
        padding: 20px 10px;
        font-size:9px
    }
  } 
  .divInput{
    top: 10px;
    right:10px;
    .input{
      width:80px;
      height:30px;
      padding:0 10px;
      border:solid 1px #cccccc50;
      input{
          font-size:12px;
      }
      img{
        top: 4px;
        width:15px;
      }
    }
    .list{
      width:80px;      
      top:30px;
      bottom: auto;
      border-radius: 0 0 10px 10px;
      border:solid 1px #cccccc50;
      border-top:0;

    }
  }
}

