@charset "UTF-8";

/* -- Base and Reset
-------------------------------------------------------------------------------- */
@font-face {
    font-family: 'useOpenSans';
    src: url('../fonts/OpenSans-Regular.ttf');
    unicode-range: U+0030-0039;
}

body,html {
    width: 100%;
}
html {
    overflow-y: scroll;
}
body {
    font-size: 14px;
    line-height: 1.2;
    font-family: 'useOpenSans', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, Meiryo, メイリオ, sans-serif;
    text-align: left;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
    font-weight: 400;
    color:#333;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td {
    margin: 0;
    padding: 0;
}
caption,th,td {
    font-weight: normal;
    text-align: left;
}
input,textarea,select {
    vertical-align: middle;
}
textarea {
    resize: vertical;
}
h1,h2,h3,h4,h5,h6 { font-size: 100%; }
ul,ol { list-style: none; }
fieldset,img { border: 0; vertical-align: top; }
iframe {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
input,
label{
    font-family: 'useOpenSans', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, Meiryo, メイリオ, sans-serif;
    -webkit-user-select: none;
    user-select: none;
}
input.sp-keyboard {
    -webkit-user-select: auto;
}
a{
    text-decoration:none;
    color:inherit;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
a:hover{
    text-decoration:none;
    color:inherit;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
label{
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}


/* -- Clear_fix
-------------------------------------------------------------------------------- */
.cf:after {
    content: "";
    display: block;
    clear: both;
    height: 0!important;
}


/* -- txt;
-------------------------------------------------------------------------------- */
.txt-col-red{
    color: #f3212d;
}
.txt-col-blue{
    color: #2196F3;
}
.pc-br{
    display: block;
}
.sp-br{
    display: none;
}
.sp-tbl-br{
    display: none;
}
.pc-hide{
    display: none!important;
}
.sp-hide{
    display: block!important;
}
.pc-tbl-hide{
    display: none!important;
}
.sp-tbl-hide{
    display: table-cell!important;
}


/* -- scroll-fade-in
-------------------------------------------------------------------------------- */
.scroll-fade-in{
    opacity: 0;
    transform: translateY(80px);
    transition: opacity 1s ease, transform 1s ease;
}
.scroll-fade-in.active{
    opacity: 1;
    transform: translateY(0);
}


/* -- body
-------------------------------------------------------------------------------- */
body {
    max-width: 1680px;
    margin-left: auto;
    margin-right: auto;
    background: #3e4b54;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    position: relative;
    -webkit-touch-callout: none;
}
body::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    position: absolute;
    top:0;
    left: 0;
}


/* -- link-btn
-------------------------------------------------------------------------------- */
.link-btn {
    display: block;
    width: 300px;
    font-size: 16px;
    text-align: center;
    font-weight: 600;
    color:#fff;
    border-radius: 5px;
    background: #1dcd00;
    padding: 20px 0 22px;
    border: solid 1px #1dcd00;
    margin-left: auto;
    margin-right: auto;
    transition: all 300ms ease;
}

.link-btn a:hover{
    text-decoration:none;
}
.pc .link-btn:hover{
    background: #1ab900;
    border-color: #1ab900;
}
.link-btn.white,
.link-btn.gray{
    color: #1dcd00;
    background: #fff;
    border-color: #1dcd00;
}
.pc .link-btn.white:hover{
    background: #fafafa;
}
.link-btn.gray{
    border-color: #e9e9e9;
}
.pc .link-btn.gray:hover{
    background: #fff;
}
.link-btn.dark-gray{
    background-color: #3e4b54;
    border-color: #3e4b54;
    color:#fff;
}
.pc .link-btn.dark-gray:hover{
    background-color: #535b5d;
    border-color: #535b5d;
}


/* -- page-btn
-------------------------------------------------------------------------------- */
.page-btn {
    display: block;
    width: 340px;
    font-size: 16px;
    text-align: center;
    font-weight: 600;
    color:#fff;
    border-radius: 5px;
    background: #1dcd00;
    padding: 20px 0 22px;
    border: solid 1px #1dcd00;
    position: relative;
    margin-left: auto;
    margin-right: auto;
    transition: all 300ms ease;
}
.pc .page-btn:hover{
    background: #1ab900;
    border-color: #1ab900;
}
.page-btn.white,
.page-btn.gray{
    color: #1dcd00;
    background: #fff;
    border-color: #1dcd00;
}
.pc .page-btn.white:hover{
    background: #fafafa;
}
.page-btn.gray{
    border-color: #e9e9e9;
}
.pc .page-btn.gray:hover{
    background: #fff;
}
.page-btn.dark-gray{
    background-color: #3e4b54;
    border-color: #3e4b54;
    color:#fff;
}
.pc .page-btn.dark-gray:hover{
    background-color: #535b5d;
    border-color: #535b5d;
}


/* -- input-text
-------------------------------------------------------------------------------- */
input[type="text"],
input[type="email"],
input[type="number"]{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-shadow: none;
    border: none;
    margin: 0;
    padding: 0;
    width: inherit;
    background-color: inherit;
    outline: none;
    height:auto;
}
::placeholder {
    color: #999;
}
input[type="text"].input-text,
input[type="email"].input-text,
input[type="number"].input-text{
    width: 100%;
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: 0.05em;
    background: #fafafa;
    border: solid 1px #e9e9e9;
    padding: 15px 50px 15px 20px;
    box-sizing: border-box;
    border-radius: 4px;
    cursor: pointer;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="number"]:focus{
    border-color: #1dcd00;
    background: #fff;
}
input[type="text"].selected,
input[type="number"].selected{
    background: #fff;
}

input[type="submit"],
input[type="button"] {
    border-radius: 5px;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
    outline-offset: -2px;
}


/* -- input-radio
-------------------------------------------------------------------------------- */
input[type=radio] + label::after{
    display: block;
    content: "";
    position: relative;
    top: auto;
    right: auto;
    width: auto;
    height:auto;
    margin-top: 0;
    background: none;
    pointer-events: none;
    border: none;
}
input[type=radio] {
    display: none;
    margin: 0;
}
input[type=radio] + label {
    position: relative;
    display: inline-block;
    cursor: pointer;
    width: calc(100% - 80px);
    padding: 17px 0;
    transition: color 300ms ease;
}
input[type=radio]:checked + label {
    color: #1dcd00;
}
input[type=radio] + label::before,
input[type=radio] + label::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    width: 16px;
    height: 7px;
    margin-top: -1px;
    margin-left: 15px;
    border-left: 2px solid #e9e9e9;
    border-bottom: 2px solid #e9e9e9;
    transform: rotate(-45deg);
    transform-origin: top left;
}
input[type=radio] + label::after{
    width: 0;
    height: 0;
    transition: height 150ms ease 150ms, width 150ms ease;
}
input[type=radio]:checked + label::after {
    width: 16px;
    height: 7px;
    border-left-color: #1dcd00;
    border-bottom-color: #1dcd00;
    transition: height 150ms ease, width 150ms ease 150ms;
}
input[type=radio].input-radio + label{
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
}


/* -- input-radio-btn
-------------------------------------------------------------------------------- */
input[type=radio].input-radio-btn + label {
    display: block;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1.2;
    text-align: center;
    cursor: pointer;
    width: 100%;
    color: #1dcd00;
    background: #fff;
    border: solid 1px #e9e9e9;
    padding: 21px 0 23px;
    box-sizing: border-box;
    position: relative;
    transition: all 300ms ease;
}
input[type=radio].input-radio-btn:checked + label {
    color: #fff!important;
    background: #1dcd00!important;
    border-color: #1dcd00!important;
}
input[type=radio].input-radio-btn:checked + label::before,
input[type=radio].input-radio-btn:checked + label::after{
    display: none;
}


/* -- input-select
-------------------------------------------------------------------------------- */
label.select-box {
    position: relative;
}
label.select-box::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 25px;
    width: 10px;
    height: 10px;
    margin-top: -9px;
    transform: rotate(45deg);
    border-right: solid 2px #999;
    border-bottom: solid 2px #999;
    pointer-events: none;
    transition: all 150ms ease;
}
select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    box-sizing: border-box;
    white-space: normal;
}
select::-ms-expand {
    display: none;
}
select.input-select {
    width: 100%;
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: 0.05em;
    background: #fafafa;
    border: solid 1px #e9e9e9;
    padding: 14px 50px 16px 20px;
    border-radius: 4px;
    transition: all 150ms ease;
}
select:focus{
    outline: none;
    border-color: #1dcd00;
    background: #fff;
}


/* -- header
-------------------------------------------------------------------------------- */
header{
    width: 100%;
    height: 60px;
    max-width: 1680px;
    padding: 0 40px 0;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    top: 0;
    left: auto;
    z-index: 10;
    transition: background 150ms ease, box-shadow 150ms ease;
}
header.fixed{
    background: #fff;
    box-shadow: 0 4px 6px 0 rgba(0,0,0,.08);
}
header.no-shadow{
    box-shadow: none;
}


/* -- nav-btn
-------------------------------------------------------------------------------- */
.nav-btn{
    display: block;
    width: 21px;
    padding: 18px 20px;
    display: none;
}
.nav-btn span{
    display: block;
    width: 21px;
    height: 2px;
    border-radius: 1px;
    background: #333;
}
header.fixed .nav-btn span,
header.black .nav-btn span{
    background: #333;
}
.nav-btn span.bar-2{
    margin-top: 4px;
}
.nav-btn span.bar-3{
    margin-top: 4px;
}
.nav-btn.active span.bar-2{
    opacity: 0;
}
.nav-btn.active span.bar-1{
    transform: rotate(45deg) translate(5px, 4px);
}
.nav-btn.active span.bar-3{
    transform: rotate(-45deg) translate(4px, -4px);
}


/* -- .nav
-------------------------------------------------------------------------------- */
.nav{
    display: flex;
    justify-content: center;
    align-items: center;
}
.nav li{
    margin: 0 15px;
}
.nav a{
    font-size: 13px;
    font-weight: 600;
    color: #ccc;
    transition: all 300ms ease;
}
.pc .nav a:hover{
    color:#fff;
}
header.black .nav a,
header.fixed .nav a{
    color:#999;
}
.pc header.black .nav a:hover,
.pc header.fixed .nav a:hover{
    color:#666;
}
header .nav a.active{
    color: #fff;
}
header.black .nav a.active,
header.fixed .nav a.active{
    color: #1dcd00!important;
}


/* -- nav
-------------------------------------------------------------------------------- */
nav{
    display: none;
}


/* -- in-box
-------------------------------------------------------------------------------- */
.in-box{
    max-width: 940px;
    margin: 0 auto;
}
.in-box-in {
    max-width: 840px;
    margin: 0 auto;
}


/* -- main-visual
-------------------------------------------------------------------------------- */
.main-visual-wrap {
    width: 100%;
    max-width: 1680px;
    left: auto;
    background: #fff;
    overflow: hidden;
}
.main-visual {
    width: 100%;
    height: 500px;
    padding: 0 40px;
    box-sizing: border-box;
    background: url('../img/img_mainvisual_pc.jpg') no-repeat;
    background-size: cover;
    background-position: center top;
}
.main-visual .in-box{
    height: 100%;
    display: flex;
    align-items: center;
    position: relative;
}
.main-visual .ttl,
.page-404 .main-visual .ttl {
    margin-top: 50px;
}
.main-visual h1 {
    font-size: 36px;
    color: #999;
}
.main-visual h1 img{
    width:53%;
}
.main-visual p {
    font-size: 16px;
    color: #666;
    margin-bottom: 10px;
}


/* -- sub-visual
-------------------------------------------------------------------------------- */
.sub-visual {
    width: 100%;
    height: 270px;
    max-width: 1680px;
    padding: 50px 40px 0!important;
    background-color: #3e4b54;
    box-sizing: border-box;
    background: url('../img/img_subhead_mypage.jpg') no-repeat;
    background-size: cover;
    background-position: center;
}
.sub-page.page-service .sub-visual{
    background-image: url('../img/img_subhead_service.jpg');
}
.sub-page.page-market .sub-visual{
    background-image: url('../img/img_subhead_market.jpg');
}
.sub-page.page-cancell .sub-visual{
    background: #9aa2a5;
}
.sub-visual .in-box {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.sub-visual h1 {
    font-size: 26px;
    color: #fff;
}
.sub-visual p.to-market {
    position: relative;
    top: -40px;
    text-align:right;
    color: #ffffff;
    font-size: 20px;
    max-width:940px;
    margin:0 auto;
}

/* -- content
-------------------------------------------------------------------------------- */
.content-wrapper{
    background: #fff;
    transition: all 300ms ease;
}
nav.active + .content-wrapper{
    opacity: 0.2;
}
.content {
    background: #fff;
    position: relative;
    z-index: 1;
}


/* -- main-lead
-------------------------------------------------------------------------------- */
.main-lead {
    background: #fafafa;
    padding: 0 40px 60px;
}
.main-lead .icon {
    display: flex;
    justify-content: center;
    margin-bottom: 45px;
}
.main-lead .icon li{
    width: 120px;
    height: 120px;
    background: #fff;
    border-radius: 20px;
    margin: -60px 10px 0;
    box-shadow: 0 2px 6px 0 rgba(0,0,0,0.14);
    display: flex;
    justify-content: center;
    align-items: center;
}
.main-lead .icon li img{
    width: 62px;
    height: 62px;
}
.main-lead h2 {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 20px;
    text-align: center;
}
.main-lead p {
    font-size: 16px;
    line-height: 1.8;
    text-align: center;
    color:#666;
    margin-bottom: 40px;
}


/* -- catch
-------------------------------------------------------------------------------- */
.catch {
    border-top:solid 1px #e9e9e9;
    padding: 60px 0 80px;
}
.catch p {
    font-size: 24px;
    text-align: center;
}


/* -- slick-slider
-------------------------------------------------------------------------------- */
.slick-slider{
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
.slick-list{
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-list:focus{
    outline: none;
}
.slick-list.dragging{
    cursor: pointer;
    cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list{
    transform: translate3d(0, 0, 0);
}
.slick-track{
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after{
    display: table;
    content: '';
}
.slick-track:after{
    clear: both;
}
.slick-loading .slick-track{
    visibility: hidden;
}
.slick-slide{
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide{
    float: right;
}
.slick-slide img{
    display: block;
}
.slick-slide.slick-loading img{
    display: none;
}
.slick-slide.dragging img{
    pointer-events: none;
}
.slick-initialized .slick-slide{
    display: block;
}
.slick-loading .slick-slide{
    visibility: hidden;
}
.slick-vertical .slick-slide{
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


/* -- service
-------------------------------------------------------------------------------- */
.service {
    padding: 0 40px;
}
.service-section-wrap{
    padding-bottom: 40px;
}
.service .num{
    display: block;
    width: 100%;
    padding: 20px 0;
    position: relative;
}
.service .num::before{
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #e0e0e0;
}
.service .num span{
    display: block;
    width: 40px;
    height: 40px;
    background: #1dcd00;
    border-radius: 20px;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0;
    color:#fff;
    line-height: 40px;
    text-align: center;
    position: absolute;
    top:0;
    left: 50%;
    margin-left: -20px;
}
section h2 {
    font-size: 36px;
    line-height: 1.2;
    font-weight: 300;
    text-align: center;
    margin-bottom: 20px;
}
section h3 {
    font-size: 24px;
    line-height: 1.2;
    font-weight: 300;
    text-align: center;
    margin-bottom: 20px;
}
section .lead {
    font-size: 16px;
    line-height: 1.6;
    text-align: center;
    color:#666;
    margin-bottom: 50px;
}
section.service .lead {
    text-align: left;
}
.service .ttl-wrap{
    float: left;
    width: 50%;
    margin-top: 100px;
}
.device-wrap{
    width: 50%;
    padding: 0 7%;
    box-sizing: border-box;
}
.service .device-wrap{
    float: right;
    margin-top: -70px;
    margin-bottom: 40px;
}
.inverted .ttl-wrap{
    float: right;
}
.inverted .device-wrap{
    float: left;
}
.device-wrap .device {
    width: 75%;
    margin: 0 auto;
}
.device-wrap .device .inner {
    width: 100%;
    padding-top: 196%;
    position: relative;
}
.device-wrap .device .img{
    width: 100%;
    height: 100%;
    background: url('../img/img_device_w.png') no-repeat;
    background-size: auto 100%;
    position: absolute;
    top:0;
    left: 0;
}
.inverted .device-wrap .device .img{
    background-image: url('../img/img_device.png');
}
.device-wrap .device .img .img-inner{
    width: 100%;
    height: 100%;
    padding: 19% 5% 24%;
    box-sizing: border-box;
    opacity: 0;
}
.device-wrap .device .img .img-inner.active{
    opacity: 1;
}
.device-wrap .device .slick-slider{
    position: static;
}
.device-wrap .device .slick-slider .slick-dots{
    position: absolute;
    top: 50%;
    right: -30px;
    margin-top: -23px;
}
.device-wrap .device .slick-slider .slick-dots{
    opacity: 0;
}
.device-wrap.active .device .slick-slider .slick-dots{
    transition: opacity 300ms ease 1000ms;
    opacity: 1;
}
.device-wrap .device .img .img-inner img{
    width: 100%;
    height: auto;
}
.device-wrap .device .slick-slider .slick-dots li{
    display: block;
    width: 7px;
    height: 7px;
    border:solid 2px #fff;
    border-radius: 50%;
    background: #1dcd00;
    margin: 8px 0;
    transition: all 300ms ease;
}
.device-wrap .device .slick-slider .slick-dots .slick-active {
    border-color: #1dcd00;
    background: #fff;
}
.device-wrap .device .slick-slider .slick-dots button{
    display: none;
}
.device-wrap .caption {
    margin-top: 15px;
}
.device-wrap .caption ul {
    height: 15px;
    position: relative;
}
.device-wrap .caption li {
    font-size: 13px;
    text-align: center;
    letter-spacing: 0;
    color: #999;
    opacity: 0;
    visibility: hidden;
    transform: translateY(7px);
    position: absolute;
    width: 100%;
    transition: all 300ms ease;
}
.device-wrap .caption li.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* -- link-area
-------------------------------------------------------------------------------- */
.link-area {
    background: #fafafa;
    padding: 50px 0px;
    border-top:solid 1px #e9e9e9;
}
.link-area .link-area-in {
    width: 650px;
    margin: 0 auto;
}
.link-area .link-area-in .link-btn{
    float: left;
    margin: 0!important;
}
.link-area .link-area-in .link-btn:first-child{
    float: right;
    margin-right: 40px;
}

.link-area.home-top .link-area-in .link-btn:first-child{
    float: left;
    margin-right:40px!important;
}

.link-area.home-btm {
    padding: 50px 40px;
}

.link-area.home-btm .link-area-in .link-btn:first-child{
    float: left;
    margin-right:40px!important;
}

.link-area a:hover{
    text-decoration:none;
}

/* -- footer
-------------------------------------------------------------------------------- */
footer .page-top{
    width: 100%;
    height: 50px;
    background: #f0f0f0;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    transition: all 300ms ease;
}
footer .page-top::before{
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: rgba(0,0,0,0.08);
    position: absolute;
    top:-1px;
    left: 0;
    z-index: 1;
}
footer .page-top span{
    display: block;
    width: 12px;
    height: 12px;
    border-top: solid 2px #999;
    border-right: solid 2px #999;
    transform: rotate(-45deg) translate(-2px, 2px);
    transition: all 300ms ease;
}
.pc footer .page-top:hover{
    background: #e5e5e5;
}
.pc footer .page-top:hover span{
    border-color: #1dcd00;
}
footer .footer-nav {
    width: 100%;
    display: flex;
}
footer .footer-nav li {
    width: calc(100% / 3);
}
footer .footer-nav li:first-child {
    width: 33.4%;
}
footer .footer-nav li a{
    font-size: 18px;
    font-weight: 600;
    display: block;
    width: 100%;
    height: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
    color:#fff;
    position: relative;
}
footer .footer-nav li a span{
    display: block;
    position: relative;
    z-index: 1;
}
footer .footer-nav li a::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left: 0;
    background: #000;
}
footer .footer-nav li a::after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top:0;
    left: 0;
    background: url('../img/img_subhead_service.jpg') no-repeat;
    background-size: cover;
    background-position: center;
    transition: all 300ms ease;
    filter: grayscale(100%);
}
footer .footer-nav li a.ft-nav-market::after{
    background-image: url('../img/img_subhead_market.jpg');
}
footer .footer-nav li a.ft-nav-mypage::after{
    background-image: url('../img/img_subhead_mypage.jpg');
}
.pc footer .footer-nav li a:hover::after{
    opacity: 0.8;
}
footer .footer-in {
    padding: 60px 40px;
    background: #444;
    position: relative;
}
footer aside{
    margin-bottom: 60px;
}
footer aside .inner{
    margin-top: 40px;
}
footer aside .inner:first-child{
    margin-top: 0;
}
footer aside .link-txt{
    display: inline-block;
    margin-top: 20px;
    color: #999;
}
.pc footer aside .link-txt:hover{
    color: #fff;
}
footer aside p{
    font-size: 13px;
    line-height: 1.8;
    text-align: justify;
    text-justify: inter-ideograph;
    color:#fff;
}
footer aside .ttl{
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: 0.05em;
    text-align: left;
    color: #ccc;
    margin-bottom: 15px;
}
footer .copyright{
    color:#fff;
    border-top: solid 1px rgba(255,255,255,0.1);
    padding-top: 20px;
}
footer .copyright img{
    margin-top: 1px;
}


/* -- sub-page
-------------------------------------------------------------------------------- */
.sub-page .main-visual{
    background-image: url('../img/img_subhead_service.jpg');
}
.sub-page.page-service .main-visual{
    background-image: url('../img/img_subhead_service.jpg');
}
.sub-page.page-market .main-visual{
    background-image: url('../img/img_subhead_market.jpg');
}
.sub-page.page-404 .main-visual{
    background-image: url('../img/img_mainvisual_pc.jpg');
}
.sub-page .main-visual .ttl :not(.page-404,.page-404 .h1){
    width: 100%;
}
.sub-page .main-visual h1{
    font-size: 32px;
    color:#fff;
}
.sub-page.page-404 .main-visual h1{
    font-size: 36px;
    color:#999;
}
.sub-page .main-visual .lead{
    text-align: left;
    color:#fff;
    margin-bottom: 0;
    margin-top: 20px;
}
.sub-page .main-visual aside{
    width: 100%;
    margin-top: 60px;
}
.sub-page .main-visual aside span{
    display: inline-block;
    font-size: 13px;
    color:#fff;
    border-bottom: solid 1px rgba(255,255,255,0.6);
    padding-bottom: 7px;
}
.sub-page .content section {
    padding: 60px 40px 70px;
}
.sub-page .bgc{
    background: #f0f0f0;
}
.sub-page .note{
    font-size: 13px;
    line-height: 1.4;
    color:#666;
    text-align: justify;
    text-justify: inter-ideograph;
    margin-top: 40px;
}


/* -- page-service
-------------------------------------------------------------------------------- */
.page-service .step-num{
    text-align: center;
    margin-bottom: 15px;
}
.page-service .step-num span{
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    text-indent: 0.05em;
    color: #1dcd00;
    border: solid 1px #1dcd00;
    padding: 6px 13px 6px;
    border-radius: 15px;
}
.step-box{
    display: none;
    opacity: 0;
    transition: opacity 300ms ease;
}
.step-box.active{
    opacity: 1;
}
.step-box#step-box-1,
body.formcomp .step-box{
    display: block;
    opacity: 1;
}


/* -- service-receipt
-------------------------------------------------------------------------------- */
.service-receipt .btn-area{
    margin-top: 30px;
}
.service-receipt .btn-area li{
    float: right;
    width: calc(50% - 20px);
}
.service-receipt .btn-area li:first-child{
    float: left;
}
.service-receipt .btn-area .page-btn{
    color: #1dcd00;
    background: #fff;
    border:solid 1px #e9e9e9;
    padding: 20px 0 22px;
    box-sizing: border-box;
    transition: all 300ms ease;
}
.pc .service-receipt .btn-area .page-btn:hover{
    border-color: #1dcd00;
}
.service-receipt .btn-area .page-btn .icon{
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    left: 20px;
    margin-top: -16px;
    overflow: hidden;
}
.service-receipt .btn-area .page-btn .icon svg,
.service-receipt .btn-area .page-btn .icon img{
    fill: #1dcd00;
    width: 100%;
    height: 100%;
    transition: all 300ms ease;
    transform: scale(1.23);
    transform-origin: top left;
}
.service-receipt .btn-area .page-btn.active{
    color: #fff!important;
    background: #1dcd00!important;
    border-color: #1dcd00!important;
}
.service-receipt .btn-area label::before {
    display: none;
}
.service-receipt .btn-area input[type=radio]:checked + label .icon svg,
.service-receipt .btn-area .page-btn.active .icon svg{
    fill: #fff!important;
}


/* -- fund-regist
-------------------------------------------------------------------------------- */
.fund-regist .input-area li:first-child{
    margin-bottom: 10px;
}
.fund-regist .btn-area{
    margin-top: 40px;
}
.fund-regist .btn-area .page-btn .icon{
    width: 26px;
    height: 26px;
    position: absolute;
    top:50%;
    left: 20px;
    margin-top: -13px;
}
.fund-regist .btn-area .page-btn .icon svg,
.fund-regist .btn-area .page-btn .icon img{
    fill: #1dcd00;
    width: 100%;
    height: 100%;
    transition: all 300ms ease;
    transform: scale(1.23);
    transform-origin: top left;
}
.service-receipt .btn-area .page-btn .icon svg.line{
    fill: #1dcd00 !important;
}
.service-receipt .btn-area .page-btn .icon svg.mail{
    fill: #174487 !important;
}
.service-receipt .btn-area .page-btn.active{
    color: #fff!important;
    background: #1dcd00!important;
    border-color: #1dcd00!important;
}
.service-receipt .btn-area label::before {
    display: none;
}
.service-receipt .btn-area input[type=radio]:checked + label .icon svg,
.service-receipt .btn-area .page-btn.active .icon svg{
    fill: #fff!important;
}


/* -- fund-list
-------------------------------------------------------------------------------- */
.fund-list-wrap{
    padding-top: 40px;
    min-height: 40px;
    position: relative;
    display: none;
}
.fund-list{
    display: none;
}
.fund-list .serach-result{
    font-size: 13px;
    color:#666;
    margin-bottom: 15px;
}
.fund-list .serach-result .val{
    font-size: 26px;
    font-weight: 600;
    color: #1dcd00;
    margin-left: 7px;
    margin-right: 1px;
    transform: translateY(1px);
    display: inline-block;
}
.fund-list .radio-box li{
    border-bottom: solid 1px #e9e9e9;
}
.fund-list .radio-box li:first-child{
    border-top: solid 1px #e9e9e9;
}
.fund-list .radio-box li input[type=radio] + label {
    width: calc(100% - 60px);
    padding: 17px 0 17px 0;
}
.pc .fund-list .radio-box li input[type=radio] + label:hover {
    color:#1dcd00;
}
.formcomp .fund-list-wrap,
.formcomp .fund-list{
    display: block;
}
.formcomp .loader{
    display: none;
}

/* -- fund-sort
-------------------------------------------------------------------------------- */
.my-fund .my-page-box.box-type-sort{
    border-radius:0;
}
.my-fund.my-fund-sort .sub-head{
    padding-top:0;
    padding-bottom:30px;
}
.my-fund.my-fund-sort .sub-head p{
    text-align:center;
    font-size:18px;
}

.my-fund-sort #sort-explain img {
    width:20px;
    height:20px;
    background-color:white;
    margin:0 2px;
}
.my-fund.my-fund-sort table{
    width:100%;
    font-size:18px;
    border-collapse: collapse;
    border:none;
}
.my-fund.my-fund-sort table .pc {
    display:table-cell;
}
.my-fund.my-fund-sort table .sp {
    width:0;
    display:none;
}
.my-fund.my-fund-sort table th,
.my-fund.my-fund-sort table td{
    border:1px solid #dedede;
}
.my-fund.my-fund-sort table .sort{
    width:15%;
}
.my-fund.my-fund-sort table .fundname{
    width:85%;
}
.my-fund.my-fund-sort table .center{
    text-align:center;
}
.my-fund.my-fund-sort table .left{
    text-align:left;
}
.my-fund.my-fund-sort table .right{
    text-align:right;
}
.my-fund.my-fund-sort th{
    text-align:center;
}
.my-fund.my-fund-sort table tr{
    height:40px;
}
.my-fund.my-fund-sort table tr.odd{
    background-color:#f2f2f2;
}
.my-fund.my-fund-sort table th,
.my-fund.my-fund-sort table td{
    padding:10px;
}
.my-fund.my-fund-sort table tr.thead {
    background-color:#f0ead8;
}
.my-fund.my-fund-sort table tr td img{
    height:50px;
}
.ui-state-highlight{
    border:3px dotted #174487;
    width:100%;
    box-sizing: border-box;
}
.my-fund.my-fund-sort .link-area{
    background: #f0f0f0;
}

/* -- loader
-------------------------------------------------------------------------------- */
.loader{
    position: absolute;
    top: 40px;
    left: 50%;
    margin-left: -20px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    animation: load3 1.4s infinite linear;
    transform: translateZ(0);
}
.loader:before {
    content: '';
    width: 50%;
    height: 50%;
    background: #1dcd00;
    background: linear-gradient(to right, #fff 10%, #1dcd00 42%);
    border-radius: 100% 0 0 0;
    position: absolute;
    top: 0;
    left: 0;
}
.loader:after {
    content: '';
    background: #fff;
    width: 80%;
    height: 80%;
    border-radius: 50%;
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
@keyframes load3 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}


/* -- service-regist
-------------------------------------------------------------------------------- */
.service-regist section{
    background: #fff;
    margin-top: 20px;
    padding: 10px 50px!important;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,0.14);
}
.service-regist section:first-child{
    margin-top: 0;
}
.service-regist section h3{
    font-size: 28px;
    font-weight: 300;
    text-align: center;
    margin-bottom: 40px;
}
.service-regist .select-box.active select {
    background: #1dcd00;
    border-color: #1dcd00;
    color:#fff;
    font-weight: 600;
}
.service-regist label.select-box.active::after{
    border-color: #fff;
}
.input-select option {
    background: #fafafa;
    border-color: #e9e9e9;
    color:#000;
    font-weight: 400;
}


/* -- fund-config
-------------------------------------------------------------------------------- */
.fund-config {
    overflow: hidden;
}
.fund-config .inner{
    opacity: 0;
    visibility: hidden;
    margin-top: 0;
    max-height: 0;
    transition: all 300ms ease;
}
label.select-box.active + .fund-config .inner{
    opacity: 1;
    visibility: visible;
    margin-top: 20px;
    max-height: 500px;
}
.fund-config .data-current{
    text-align: center;
    border-top:solid 1px #e9e9e9;
    border-bottom:solid 1px #e9e9e9;
    padding: 30px 0 27px;
}
.fund-config.fund-name .data-current{
    border-top:none;
    border-bottom:none;
}
.fund-config .data-current dt{
    font-size: 14px;
    color:#666;
    margin-bottom: 7px;
}
.fund-config .data-current dd{
    font-size: 20px;
}
.fund-config .data-current dd span{
    font-size: 28px;
}
.fund-config .data-set-wrap{
    display: flex;
    justify-content: space-between;
    border-bottom:solid 1px #e9e9e9;
}
.fund-config .data-set{
    width: 50%;
    padding: 20px 0 30px;
    box-sizing: border-box;
}
.fund-config .data-set.high{
    padding-right: 15px;
}
.fund-config .data-set.low{
    border-left: solid 1px #e9e9e9;
    padding-left: 15px;
}
.fund-config .data-set .main-set{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}
.fund-config .data-set .main-set li{
    font-size: 18px;
    color: #f3212d;
}
.fund-config .data-set.low .main-set li{
    color: #2196F3;
}
.fund-config .data-set .main-set li.input-wrap{
    width: calc(100% - 158px);
    box-sizing: border-box;
}
.fund-config .data-set .main-set li .input-text{
    font-size: 24px;
    padding: 6px 10px;
    text-align: center;
    color: #f3212d;
    background: #fff;
    border-radius: 0;
    border-top: none;
    border-left: none;
    border-right: none;
}
.fund-config .data-set.high .main-set li.input-wrap,
.fund-config .data-set.low .main-set li.input-wrap {
    min-width: 118px;
}
.fund-config .data-set.low .main-set li .input-text{
    color: #2196F3;
}
.fund-config .data-set .main-set li .input-text:focus{
    border-color: #f3212d;
 }
.fund-config .data-set.low .main-set li .input-text:focus{
    border-color: #2196F3;
 }
.fund-config .data-set .sub-set{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.fund-config .data-set .sub-set li{
    color:#666;
}
.fund-config .data-set .sub-set li span{
    font-size: 16px;
}
.fund-config .data-set .sub-set li a{
    display: block;
    background: #f3212d;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    padding: 9px 11px 10px;
    border-radius: 3px;
    transition: all 300ms ease;
}
.pc .fund-config .data-set .sub-set li a:hover{
    background: #d50c17;
}
.fund-config .data-set.low .sub-set li a{
    background: #2196F3;
}
.pc .fund-config .data-set.low  .sub-set li a:hover{
    background: #0c7cd5;
}
.fund-config .data-set .sub-set li.select-wrap{
    width: calc(100% - 199px);
}
.fund-config .data-set .sub-set li.select-wrap select.input-select {
    font-size: 15px;
    color:#666;
    padding: 9px 10px 11px;
    box-sizing: border-box;
    border-radius: 3px;
}
.fund-config .data-set .sub-set li.select-wrap label.select-box:after {
    right: 15px;
    width: 8px;
    height: 8px;
    margin-top: -7px;
}
.fund-config .data-set .sub-set li.select-wrap select:focus{
    border-color: #f3212d;
}
.fund-config .data-set.low .sub-set li.select-wrap select:focus{
    border-color: #2196F3;
}


/* -- time
-------------------------------------------------------------------------------- */
section.service-time{
    padding-bottom: 20px;
}
section.time-change .my-page-wrap .in-box.freq{
    margin-top: 30px;
}


/* -- pop-up
-------------------------------------------------------------------------------- */
.pop-up{
    position: fixed;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    box-sizing: border-box;
    border:solid 13px #1dcd00;
    z-index: 20;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    visibility: hidden;
    transition: all 500ms ease;
}
.pop-up.active{
    opacity: 1;
    visibility: visible;
}
.pop-up .close-btn{
    display: block;
    position: absolute;
    top: 10px;
    right: 10px;
    width: 40px;
    height: 40px;
}
.pop-up .close-btn::before,
.pop-up .close-btn::after{
    content: "";
    display: block;
    position: absolute;
    top: 18px;
    right: 9px;
    width: 22px;
    height: 3px;
    background: #000;
    border-radius: 1.5px;
}
.pop-up .close-btn::before{
    transform: rotate(45deg);
}
.pop-up .close-btn::after{
    transform: rotate(-45deg);
}
.pop-up .inner p{
    font-size: 16px;
    line-height: 1.8;
    text-align: center;
}
.pop-up .inner a{
    display: block;
    width: 172px;
    height: 50px;
    margin: 40px auto 0;
}
.pop-up .inner .img-wrap{
    display: block;
    margin: 40px auto 0;
}
.pop-up .inner a img{
    width: 100%;
    height: auto;
}
.pop-up .inner.frend-box{
    display: none;
}
.pop-up .inner.qr-box{
    display: block;
}

/* -- check
-------------------------------------------------------------------------------- */
.check dl{
    margin-bottom: 20px;
}
.check dt,
.check .list li.ttl{
    font-size: 13px;
    text-align: center;
    font-weight: 600;
    color: #666;
    background: #fafafa;
    padding: 11px 20px;
    border-top: solid 1px #e9e9e9;
    border-bottom: solid 1px #e9e9e9;
}
.check dd,
.check .list li{
    padding: 10px 0;
    line-height: 1.4;
}
.check dd.fund-name{
    font-size: 24px;
    text-align: center;
    margin-bottom: 0;
}
.check .list{
    margin-bottom: 40px;
}
.check .list ul{
    display: table;
    width: 100%;
}
.check .list li{
    display: table-cell;
    width: 50%;
    font-size: 16px;
    letter-spacing: 0;
    vertical-align: middle;
    border-left: solid 1px #e9e9e9;
    border-bottom: solid 1px #e9e9e9;
    text-align: center;
    padding: 25px 20px;
}
.check .list li:first-child{
    border-left: none;
}
.check .list li span{
    font-weight: 600;
}

.check .list li.nm-a {
    width: 40%;
}
.check .list li.val-a {
    width: 60%;
}

/* -- check-line
-------------------------------------------------------------------------------- */
.receive-mail .check-line{
    display: none;
}


/* -- check-mail
-------------------------------------------------------------------------------- */
.receive-line .check-mail{
    display: none;
}
.check-mail h2,
.my-fund section.check-mail h2{
    font-size: 24px;
    font-weight: 600;
    padding: 0;
    margin-bottom: 20px;
}
.check-mail .lead{
    font-size: 14px;
    line-height: 1.6;
    letter-spacing: 0.05em;
    color: #666;
    text-align: center;
    margin-bottom: 40px;
}
.check-mail .inner-box{
    background: #fff;
    padding: 40px;
    margin-top: 20px;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,0.14);
}
.check-mail .inner + .inner-box{
    margin-top: 0;
}
.check-mail .inner-box dl{
    margin-bottom: 20px;
}
.check-mail .inner-box dt{
    font-size: 13px;
    font-weight: 600;
    color:#666;
}
.check-mail .inner-box dd input[type="email"].input-text{
    padding: 17px 0;
    background: transparent;
    border-top:none;
    border-right:none;
    border-left:none;
    border-radius: 0;
}
.check-mail .inner-box dd input[type="email"]::placeholder {
    color: #bbb;
}
.check-mail .inner-box h3{
    font-size: 20px;
    font-weight: 600;
    text-align: center;
}
.check-mail .inner-box .link-btn{
    margin-top: 40px;
}


/* -- market-regist
-------------------------------------------------------------------------------- */
.sub-page .content section.market-regist{
    padding: 60px 40px;
    background: #fafafa;
    border-top:solid 1px #e9e9e9;
}
.sub-page .content section.market-regist h2{
    font-size: 28px;
}
.sub-page .content section.market label.active select.keycolor{
    background-color: #e9e9e9;
    color:#ffffff;
    font-weight:bold;
}

/* -- market-description
-------------------------------------------------------------------------------- */
.market-description .device-wrap{
    margin: 0 auto;
}
.market-description .device-wrap .device .slick-slider .slick-dots li{
    border-color: #f0f0f0;
}
.market-description .device-wrap .device .slick-slider .slick-dots .slick-active {
    border-color: #1dcd00;
    background: #f0f0f0;
}
.market-description .link-area{
    padding: 0;
    margin-top: 50px;
    background: transparent;
    border-top: none
}


/* -- market-news
-------------------------------------------------------------------------------- */
.market-news.back-number{
    border-top:solid 1px #e9e9e9;
}
.market-news .news-topics{
    position: relative;
}
.market-news .news-topics::after{
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background: #1dcd00;
    position: absolute;
    top: -1px;
    left: 0;
}
.market-news .news-topics::before{
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #e9e9e9;
    margin-bottom: 30px;
}
.market-news .date{
    display: block;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 40px;
    color:#1dcd00;
}
.market-news h2{
    font-size: 30px;
    line-height: 1.5;
    font-weight: 600;
    text-align: left;
    margin-bottom: 30px;
}
.market-news h2 .sub{
    display: block;
    font-size: 18px;
    font-weight: normal;
    line-height: 1.2;
    margin-bottom: 5px;
    color:#666;
}
.market-news .news-topics p{
    font-size: 16px;
    line-height: 1.8;
    text-align: justify;
    text-justify: inter-ideograph;
    color:#666;
    margin-top: 1em;
}
.market-news .news-topics .inner{
    display: none;
}
.market-news .news-topics .page-btn{
    margin-top: 40px;
}
.market-news h3{
    font-size: 24px;
    font-weight: normal;
    margin-bottom: 60px;
}
.market-news .news-list{
    position: relative;
}
.market-news .news-list::after{
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background: #1dcd00;
    position: absolute;
    top: -1px;
    left: 0;
}
.market-news .news-list::before{
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #e9e9e9;
}
.market-news .news-list li{
    padding: 20px 0;
    border-bottom: solid 1px #e9e9e9;
}
.market-news .news-list li dt{
    margin-bottom: 20px;
    font-size: 12px;
}
.market-news .news-list li dd{
   font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    transition: all 300ms ease;
}
.market-news .news-list li dd .sub{
    display: block;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.2;
    color:#666;
    margin-bottom: 7px;
    transition: all 300ms ease;
}
.pc .market-news .news-list li a:hover dd,
.pc .market-news .news-list li a:hover dd .sub{
    color:#1dcd00;
}
.pc .market-news .news-list li a:hover dd.abstract{
    color:inherit;
}
.market-news aside{
    display: inline-block;
    font-size: 13px;
    margin-top: 40px;
    color: #666;
    border-bottom: solid 1px #999;
    padding-bottom: 7px;
}
.market-news.back-number dd.abstract {
    display:none;
}
.market-news.back-number dd.abstract p {
    font-weight:initial;
    line-height:1.8;
    text-align:justify;
}
.market-news.back-number dd.abstract p:first-child {
    padding-top:1em;
}

/* -- page-link-wrap
-------------------------------------------------------------------------------- */
.page-link-wrap{
    padding: 30px 40px;
    border-bottom: solid 1px #e9e9e9;
    background: #fafafa;
}
.page-link-wrap .in-box{
    display: flex;
    justify-content: space-between;
}
.page-link-wrap .txt-wrap h2{
    font-size: 16px;
    margin-bottom: 8px;
}
.page-link-wrap .txt-wrap p{
    color:#666;
}
.page-link-wrap .link-btn{
    width: 240px;
    font-size: 14px;
    padding: 13px 0 14px;
    margin: 0;
    border-radius: 3px;
}


/* -- tab
-------------------------------------------------------------------------------- */
.tab {
    width: 100%;
    height: 59px;
    border-bottom: solid 1px #e5e5e5;
    position: relative;
}
.tab .inner {
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    transition: box-shadow 200ms ease;
}
.tab.fixed .inner {
    max-width: 1680px;
    position: fixed;
    top: 0;
    left: auto;
    transform: translateY(60px);
    z-index: 10;
    border-top: solid 1px #e9e9e9;
    box-shadow: 0 4px 6px 0 rgba(0,0,0,.08);
}
.tab ul {
    text-align: center;
    background: #fafafa;
    overflow: auto;
    overflow-x: auto;
    white-space: nowrap;
}
.tab li{
    display: inline-block;
    padding: 0 15px;
}
.tab li a{
    display: block;
    font-size: 13px;
    text-align: center;
    font-weight: 600;
    padding: 22px 0;
    color: #999;
    position: relative;
    transition: all 300ms ease;
}
.pc .tab li a:hover{
    color:#666;
    text-decoration:none;
}
.tab li a.active{
    color:#1dcd00!important;
}
.tab li a.active::after{
    content: "";
    display: block;
    width: 100%;
    height: 3px;
    background: #1dcd00;
    position: absolute;
    bottom: 0;
    left: 0;
}


/* -- my-fund
-------------------------------------------------------------------------------- */
.my-fund{
    background: #f0f0f0;
}
.my-fund .head{
    border-bottom: solid 1px rgba(0,0,0,0.08);
}
.my-fund .head .lead{
    text-align: center;
    color:#666;
    padding: 30px 40px;
}
.my-fund .my-fund-inner{
    padding: 0 40px 60px;
}
.my-fund section .my-fund-inner{
    padding-bottom: 0;
}
.my-fund .sub-head{
    padding: 56px 0 0;
}
.my-fund .sub-head ul{
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}
.my-fund .sub-head li{
    color:#666;
}
.my-fund .sub-head li:first{
    width: 40%;
}
.my-fund .sub-head li:second{
    width: 60%;
}
.my-fund .sub-head li dl{
    font-size: 13px;
    color:#666;
    letter-spacing: -0.4em;
}
.my-fund .sub-head li dt{
    display: inline-block;
    letter-spacing: 0.05em;
}
.my-fund .sub-head li dd{
    display: inline-block;
    margin-left: 7px;
    letter-spacing: 0;
}
.my-fund .sub-head li .fs-L{
    font-size: 26px;
    font-weight: 600;
    color: #1dcd00;
    transform: translateY(1px);
    margin-right: 1px;
    display: inline-block;
}
.my-fund .sub-head p{
    font-size: 13px;
    text-align: right;
    color:#666;
}
.sub-page .my-fund section{
    padding: 60px 0;
}
.sub-page .my-fund section.check-fund{
    padding: 60px 0 0;
}
.sub-page .my-fund section.check{
    padding: 0;
}
.my-fund .my-fund-inner section + section{
    border-top:solid 1px rgba(0,0,0,0.08);
}
.my-fund section h2{
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 50px;
}
.my-fund section h2.ttl-bb {
    text-align: center;

}
.my-fund section h2.ttl-bb span{
    display: inline-block;
    border-bottom: 4px solid #1dcd00;
    padding: 0 0 15px;
}
.my-fund section.none h2.ttl-bb span{
    border-color: #e0e0e0;
}
.my-fund .my-page-box{
    background: #fff;
    padding: 0;
    overflow: hidden;
    border-radius: 0;
    box-shadow: 0 1px 2px 0 rgba(0,0,0,0.14);
    margin-top: 20px;
}
.my-fund .sub-head + .fund-list-alert + .my-page-box{
    margin-top: 5px;
}
.my-fund .register-unit{
    background: #fff;
}
.my-fund .register-unit h3{
    padding-top: 10px;
    margin-bottom: 0;
}
.my-fund .register-unit h3.selected-fundname{
    padding-left: 10px;
    padding-right: 10px;
}
.my-fund .my-page-wrap{
    background: #fff;
    padding: 60px 40px 70px;
}
.my-fund .my-page-wrap.ex-confirm{
    background: #f0f0f0;
}
.my-fund .my-page-wrap.ttl-label,
.my-fund h2.ttl-bb + .my-page-wrap.ttl-label{
    background: #3e4b54;
    color: #fff;
    height: 40px;
    padding: 0px;
    margin-bottom: 10px;
    margin-left: -1px;
}
.my-fund .my-page-wrap.ttl-label h2{
    text-align:center;
    margin: 0px;
    line-height: 40px;
}
.my-fund h2.ttl-bb + .my-page-box,
.my-fund h2.ttl-bb + .my-page-wrap{
    margin-top: 60px;
}
.my-fund .my-page-box:first-child{
    margin-top: 0;
}
.my-fund .my-page-box.box-type-regist{
    margin-bottom: 50px;
}
.my-fund .my-page-box.box-type-regist.ex{
    border: 2px solid #666;
}
.my-fund .my-page-box .inner{
    padding: 40px 40px;
}
.my-fund .fund-name{
    font-size: 24px;
    line-height: 1.4;
}
.my-fund .my-page-box .my-fund-list li{
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top:solid 1px #e9e9e9;
}
.my-fund .my-page-box .my-fund-list li:first-child{
    border-top:none;
}
.my-fund .my-page-box .my-fund-list li .list-box{
    width: 50%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-left: solid 1px #e9e9e9;
    box-sizing: border-box;
    padding-left: 20px;
}
.my-fund .my-page-box .my-fund-list li.calendar-notice {
    border-top:none;
}
.my-fund .my-page-box .my-fund-list li.calendar-notice .notice-text {
    padding-top:0;
}
.my-fund .my-page-box .my-fund-list li .list-box:first-child{
    border-left: none;
    padding-right: 20px;
    padding-left: 0;
}
.my-fund .my-page-box .my-fund-list li p{
    font-size: 13px;
}
.my-fund .my-page-box .my-fund-list li.change-rate p{
    width:25%;
    text-align:right;
}
.my-fund .my-page-box .my-fund-list li.change-rate div.form-group{
    width:75%;
}
.my-fund .my-page-box .my-fund-list li .ttl{
    font-weight: 600;
    color:#666;
    padding: 15px 0;
    display: flex;
    align-items: center;
}
.my-fund .my-page-box .my-fund-list li span{
    font-size: 18px;
    font-weight: normal;
}
.my-fund .my-page-box .my-fund-list li span.fs-L{
    font-size: 22px;
}
.my-fund .my-page-box .my-fund-list li label{
    margin-right: 10px;
    position: relative;
}
.my-fund .my-page-box .my-fund-list li label::before{
    content: '';
    display: block;
    position: absolute;
    top: 11px;
    right: 15px;
    width: 16px;
    height: 16px;
    background: url('../img/ico_calendar.svg') no-repeat;
}
.my-fund .my-page-box .my-fund-list li .input-text{
    font-size: 13px;
    color:#666;
    width: 130px;
    padding: 9px 15px;
}
.my-fund .my-page-box .my-fund-list li .calendar-area {
    border-top:none;
    padding-bottom:10px;
    float:left;
    margin-left:-5px;
}
.my-fund .my-page-box .my-fund-list li .calendar-explain {
    float:left;
    padding:28px 0;
    margin-left:-20px;
    font-size:12px;
}
.my-fund .link-area.bottom{
    padding: 0 !important;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top:none;
}
.my-fund .link-area.bottom a{
    display: block;
    width: 50%;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0;
    text-align: center;
    padding: 15px 0 16px;
    background: #1dcd00;
    transition: all 300ms ease;
}
.pc .my-fund .link-area.bottom a:hover{
    background-color: #1ab900;
}
.my-fund .link-area.bottom a:first-child{
    background: #3e4b54;
}
.pc .my-fund .link-area.bottom a:first-child:hover{
    background-color: #535b5d;
}
.my-fund .my-page-box .fund-date{
    font-size: 13px;
    font-weight: 600;
    color:#1dcd00;
    margin-bottom: 10px;
}
.my-fund .fund-val{
    text-align: center;
}
.my-fund .fund-val dl{
    display: flex;
    justify-content: center;
    align-items: center;
}
.my-fund .fund-val dt{
    font-size: 18px;
    width: 50%;
}
.my-fund .fund-val dd{
    font-size: 18px;
    border-left: solid 1px #e0e0e0;
    width: 50%;
    box-sizing: border-box;
}
.my-fund .fund-val dd .val-price{
    font-size: 28px;
}
.my-fund .fund-val .val-sub{
    margin-top: 5px;
    font-size: 14px;
    color:#666;
}
.my-fund .fund-val .val-sub span{
    font-size: 14px;
}
.my-fund .fund-val .val-up::after,
.my-fund .fund-val .val-down::after{
    content: "";
    display: inline-block;
    width: 18px;
    height: 24px;
    background: url('../img/ico_val_up.svg') no-repeat;
    background-size: 100%;
    margin-left: 15px;
    transform: translateY(3px);
}
.my-fund .fund-val .val-down::after{
    background-image: url('../img/ico_val_down.svg');
}
.my-fund section .my-page-box .link-area{
    padding: 0;
    background: none;
    margin-top: 30px;
}
.my-fund .link-area .link-btn{
    margin-top: 10px;
}
.my-fund .link-area .link-btn:first-child{
    margin-top: 0;
}
.sub-page .my-fund section.check-mail{
    padding-left: 40px;
    padding-right: 40px;
}

.box-type-regist #step-box-comp p{
    margin-top:40px;
    text-align:center;
    font-size:18px;
}

.icon-calendar-area{
    background-color:#fafafa !important;
    position:relative;
    top:-1px;
    right:30px;
    background: url('../img/ico_calendar.svg') no-repeat;
    background-position: center center;
    background-repeat: no-repeat;
    border:none !important;
}
.input-text.dp:disabled{
    color:black;
    -webkit-text-fill-color: #666;
    opacity: 1;
}

/* -- fund-name-wrap
-------------------------------------------------------------------------------- */
.fund-name-wrap{
    padding: 40px;
    border-bottom: solid 1px #e9e9e9;
    background: #fafafa;
}
.fund-name-wrap a{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.fund-name-wrap a:hover{
    color:inherit;
    text-decoration:none;
}
.link-ttl{
    width: calc(100% - 140px);
}
.link-txt{
    font-size: 14px;
    font-weight: 600;
    color:#1dcd00;
    transition: all 300ms ease;
}
.pc .link-txt:hover{
    color:#1ab900;
    text-decoration:none;
}
.link-txt::after{
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-top: solid 1px;
    border-right: solid 1px;
    transform: rotate(45deg) translateY(-2px);
    margin-left: .3em;
    margin-right: .3em;
    vertical-align: middle;
}


/* -- my-fund-home
-------------------------------------------------------------------------------- */
.my-fund.my-fund-home .my-page-box .inner {
    padding-top: 30px;
    padding-bottom: 25px;
}
.my-fund.my-fund-home.my-check section{
    padding-bottom: 0;
}
.my-fund.my-fund-home.my-change .fund-check{
    padding-bottom: 0;
}
.my-fund.my-fund-home.my-change .fund-check .fund-name{
    text-align: center;
}
.my-fund.my-fund-home.my-change .my-page-wrap{
    padding-bottom: 60px;
}
.my-fund.my-fund-home .sub-head {
    padding-top:0;
    text-align:right;
}
.my-fund.my-fund-home .sub-head:not(:first-child) {
    padding-top:20px;
}
.my-fund.my-fund-home .link-btn-small {
    font-size: 13px;
    text-align: right;
    font-weight: 400;
    padding: 22px 0;
    color: #666;
}
.my-fund.my-fund-home .link-btn-small a {
    color:#ffffff;
    background-color:#174487;
    padding:5px 10px;
    border-radius:5px;
    cursor: pointer;
}
.my-fund.my-fund-home .link-btn-small a:hover {
    background-color:#47040f;
    text-decoration:none;
}

.my-fund.my-fund-home .link-btn-small.sort{
    padding:0;
}
.my-fund.my-fund-home .sub-head ul{
    padding:22px 0 15px;
    min-height:20px;
}
.my-fund.my-fund-home .my-page-box .my-fund-list .bp-bd p.ttl{
    padding:5px 0;
}
.my-fund.my-fund-home .my-page-box .my-fund-list .bp-bd p.ttl.sub{
    font-weight:400;
}
.my-fund.my-fund-home .my-page-box .my-fund-list .bp-bd p.ttl.sub:nth-child(2){
    padding-top:0;
}


/* -- my-fund-history
-------------------------------------------------------------------------------- */
.my-fund.my-fund-history section .lead{
    margin-bottom: 0;
}
.my-fund.my-fund-history .my-fund-inner{
    padding-bottom: 0;
}


/* -- my-fund-time
-------------------------------------------------------------------------------- */
.my-fund.my-fund-time section {
    padding-bottom: 0;
}


/* -- my-fund-regist
-------------------------------------------------------------------------------- */
.my-fund.my-fund-regist section.fund-regist {
    padding-bottom: 0;
}
.my-fund.my-fund-regist section.check {
    padding: 0;
}
.my-fund.my-fund-regist section.check.ex {
    padding: 60px 0;
}


/* -- my-fund detail
-------------------------------------------------------------------------------- */
.my-fund.my-fund-detail {
    padding: 0;
}
.my-fund.my-fund-detail section {
    padding-bottom: 0;
}
.my-fund.my-fund-detail .sub-head {
    padding: 0 0 50px;
}
.my-fund.my-fund-detail .sub-head p{
    text-align: center;
}
.my-fund.my-fund-detail .my-page-box {
    border-radius: 0;
    box-shadow: none;
    margin-top: 0;
}
.my-fund.my-fund-detail .my-page-box .inner {
    padding-top: 60px;
    padding-bottom: 70px;
}
.my-fund.my-fund-detail .my-page-box .inner.bgc {
    background: #fafafa;
}
.my-fund.my-fund-detail .fund-name{
    font-size: 26px;
    margin-bottom: 40px;
}
.my-fund.my-fund-detail .my-page-box-in{
    border-top:solid 1px #e9e9e9;
    padding: 0;
}
.my-fund.my-fund-detail .my-page-box-in h3{
    font-size: 24px;
    font-weight: 300;
    margin-bottom: 60px;
    text-align: center;
}
.my-fund.my-fund-detail .investment-list {
    margin-top: 20px;
}
.my-fund.my-fund-detail .investment-list ul{
    width: 100%;
    display: table;
}
.my-fund.my-fund-detail .investment-list li {
    line-height: 1.4;
    width: 50%;
    padding: 20px 20px;
    display: table-cell;
    vertical-align: middle;
    border-left: solid 1px #e9e9e9;
    border-bottom: solid 1px #e9e9e9;
    text-align: center;
}
.my-fund.my-fund-detail .investment-list li:first-child{
    border-left: none;
}
.my-fund.my-fund-detail .investment-list li.ttl {
    font-size: 13px;
    line-height: 1.2;
    font-weight: 600;
    color: #666;
    background: #fafafa;
    padding: 11px 10px;
    border-top: solid 1px #e6e6e6;
}
.pc .my-fund.my-fund-detail .investment-list a.pdf:hover{
    text-decoration: underline;
}
.my-fund.my-fund-detail .investment-list a.pdf::after{
    content: "";
    display: inline-block;
    width: 18px;
    height: 20px;
    background: url('../img/ico_pdf.svg');
    margin-left: 7px;
    vertical-align: middle;
    transform: translateY(-1px);
}
.my-fund.my-fund-detail .chart-tab {
    border-bottom: solid 1px #e9e9e9;
    text-align: center;
}
.my-fund.my-fund-detail .chart-tab li{
    display: inline-block;
    margin: 0 5px;
}
.my-fund.my-fund-detail .chart-tab li a{
    display: block;
    padding: 12px 0;
    text-align: center;
    width: 60px;
    border-bottom: solid 3px transparent;
    color:#999;
    transition: all 300ms ease;
}
.pc .my-fund.my-fund-detail .chart-tab li a:hover{
    color:#666;
}
.my-fund.my-fund-detail .chart-tab li a.active:not(.disable){
    border-color: #1dcd00;
    color:#333;
}
.my-fund.my-fund-detail .chart-tab li a.disable{
    opacity: 0.5;
    pointer-events: none;
}
.my-fund.my-fund-detail .chart-wrap{
    margin-top: 40px;
}
.my-fund.my-fund-detail .chart {
    height: 400px;
    position: relative;
}
.my-fund.my-fund-detail .chart img {
    position: absolute;
    height: 100%;
    width: 100%;
    opacity: 0;
    transition: opacity 0.1s;
}
.my-fund.my-fund-detail .chart img.active {
    opacity: 1;
    transition: opacity 0.2s 0.2s;
}
.my-fund.my-fund-detail .legend {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}
.my-fund.my-fund-detail .legend li{
    font-size: 12px;
    color:#666;
    margin: 0 10px;
    width: 100%;
    text-align: center;
}
.my-fund.my-fund-detail .legend li::before{
    content: "";
    display: inline-block;
    width: 30px;
    height: 2px;
    background: #9aa2a5;
    vertical-align: middle;
    transform: translateY(-2px);
    margin-right: 5px;
    border-radius: 1px;
}
.my-fund.my-fund-detail .legend li:first-child::before{
    background: #95bf15;
}
.my-fund.my-fund-detail .list ul{
    width: 100%;
    display: table;
}
.my-fund.my-fund-detail .list li{
    display: table-cell;
    width: 33.3%;
    font-size: 13px;
    letter-spacing: 0;
    vertical-align: middle;
    border-left: solid 1px #e9e9e9;
    border-bottom: solid 1px #e9e9e9;
    text-align: center;
    padding: 15px 20px;
}
.my-fund.my-fund-detail .list li:first-child{
    border-left: none;
}
.my-fund.my-fund-detail .list li.ttl{
    font-size: 13px;
    text-align: center;
    font-weight: 600;
    color:#666;
    background: #fafafa;
    padding: 11px 10px;
    border-top: solid 1px #e9e9e9;
    border-bottom: solid 1px #e9e9e9;
}
.my-fund.my-fund-detail .list li span{
    font-size: 16px;
}


/* -- page-cancell
-------------------------------------------------------------------------------- */
.sub-page.page-cancell .content section{
    padding-bottom: 60px;
}
.cancell-line .device-wrap{
    margin-left: auto;
    margin-right: auto;
}
.cancell-mail .mail-address{
    margin-bottom: 40px;
    text-align: center;
}
.cancell-mail .mail-address p{
    display: inline-block;
    font-size: 16px;
    border-bottom: solid 1px #9aa2a5;
    padding: 0 0 15px;
}
.cancell-mail .mail-address span{
    font-size: 20px;
    margin-right: 15px;
}
.cancell-mail .lead{
    margin-bottom: 0;
}
.return-mail .lead{
    margin-bottom: 0;
}

/* -- bootstrap-datepicker
-------------------------------------------------------------------------------- */
.datepicker .disabled-date,
.datepicker .disabled{
    color:#E2E1E1 !important;
}
.datepicker .datepicker-switch:hover{
    background:inherit !important;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-box-shadow: none;
    box-shadow: none;
    outline: none;
}
.datepicker .datepicker-switch span.nen{
    border:1px solid gray !important;
    border-radius:5px !important;
    display:inline-block !important;
    padding:5px !important;
    margin-left:10px;
    pointer-events: none !important;
}

.datepicker .datepicker-switch span.nengetu{
    border:1px solid gray !important;
    border-radius:5px !important;
    display:inline-block !important;
    padding:5px !important;
    margin-left:10px;
    pointer-events: none !important;
}
.datepicker .datepicker-switch span.set-seteirai{
    display: inline-block !important;
    padding:5px !important;
    text-decoration: none !important;
    background: #668ad8 !important;
    color: #FFF !important;
    border-radius: 3px !important;
}
.datepicker .datepicker-switch span.set-seteirai:hover{
    background:#62729a !important;
}

/* -- fund-individual
-------------------------------------------------------------------------------- */
.line-receipt {
    background-color:#f0f0f0;
    padding-top:0;
    padding-bottom:0;
}
.line-receipt.top {
    border-bottom:solid 3px #fff;
}
.line-receipt.bottom {
    border-top:solid 3px #fff;
}
.line-receipt p {
    text-align:center;
    padding-bottom:20px;
}

.fund-individual .btn-area{
    margin-top: 0;
    margin-bottom: 30px;
}
.fund-individual .btn-area .page-btn{
    color: #1dcd00;
    background: #fff;
    border:solid 1px #e9e9e9;
    padding: 20px 0 22px;
    box-sizing: border-box;
    transition: all 300ms ease;
}
.pc .fund-individual .btn-area .page-btn:hover{
    border-color: #1dcd00;
}
.fund-individual .btn-area .page-btn .icon{
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    left: 20px;
    margin-top: -16px;
    overflow: hidden;
}
.fund-individual .btn-area .page-btn .icon svg,
.fund-individual .btn-area .page-btn .icon img{
    fill: #1dcd00!important;
    width: 100%;
    height: 100%;
    transition: all 300ms ease;
    transform: scale(1.23);
    transform-origin: top left;
}
.fund-individual .btn-area .page-btn.active{
    color: #fff!important;
    background: #1dcd00!important;
    border-color: #1dcd00!important;
}
.fund-individual .btn-area label{
    max-width:350px !important;
    margin-bottom:0;
}

.fund-individual .btn-area label::before {
    display: none;
}
.fund-individual .btn-area input[type=radio]:checked + label .icon svg,
.fund-individual .btn-area .page-btn.active .icon svg{
    fill: #fff!important;
}

/* -- media-query
-------------------------------------------------------------------------------- */
@media (max-width: 1024px){

    .main-visual h1 img{
      width:495px;
    }

    /* -- header
    -------------------------------------------------------------------------------- */
    header{
        padding: 0 15px 0 40px;
    }
    header.active{
        background: #fff;
        box-shadow: none;
    }
    header.active .nav-btn span {
        background: #333;
    }
    .nav{
        display: none;
    }


    /* -- nav-btn
    -------------------------------------------------------------------------------- */
    .nav-btn{
        display: block;
    }


    /* -- nav
    -------------------------------------------------------------------------------- */
    nav{
        display: block;
        width: 100%;
        background: #3e4b54;
        position: fixed;
        top: 60px;
        left: 0;
        z-index: 5;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-100%);
        transition: transform 300ms ease, opacity 0ms ease 300ms, visibility 0ms ease 300ms;
    }
    nav.active{
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        transition: transform 300ms ease;
    }
    nav ul{
        padding: 35px 60px 40px;
    }
    nav li{
        opacity: 0;
        transition: opacity 300ms ease 300ms;
    }
    nav.active li{
        opacity: 1;
    }
    nav a{
        display: inline-block;
        font-size: 18px;
        font-weight: 600;
        letter-spacing: 0.05em;
        color:#ccc;
        padding: 15px 0;
        box-sizing: border-box;
        position: relative;
    }
    nav a.active{
        color: #fff;
    }


    /* -- pop-up
    -------------------------------------------------------------------------------- */
    .pop-up .inner.frend-box{
        display: block;
    }
    .pop-up .inner.qr-box{
        display: none;
    }

    .my-fund.my-fund-regist section.check.ex {
        padding: 30px 0 0;
    }
}
@media (max-width: 767px){
    .main-visual h1 img{
        width:359px;
    }

    .pc-br{
        display: none;
    }
    .sp-br{
        display: block;
    }
    table .sp-tbl-br{
        display: block;
    }
    .pc-hide{
        display: block!important;
    }
    .sp-hide{
        display: none!important;
    }
    .pc-tbl-hide{
        display: table-cell!important;
    }
    .sp-tbl-hide{
        display: none!important;
    }
    .tab ul::-webkit-scrollbar {
        display: none;
    }


    /* -- body
    -------------------------------------------------------------------------------- */
    body {
        font-size: 13px;
    }


    /* -- link-btn
    -------------------------------------------------------------------------------- */
    .link-btn {
        width: 100%;
        font-size: 14px;
        padding: 15px 0 17px;
    }


    /* -- page-btn
    -------------------------------------------------------------------------------- */
    .page-btn {
        width: 100%;
        font-size: 14px;
        padding: 15px 0 17px;
    }


    /* -- input-text
    -------------------------------------------------------------------------------- */
    input[type="text"].input-text,
    input[type="email"].input-text{
        font-size: 14px;
        padding: 13px 45px 13px 15px;
        border-radius: 3px;
    }
    ::-webkit-input-placeholder {
        padding-top: 0.1em;
    }


    /* -- input-select
    -------------------------------------------------------------------------------- */
    label.select-box::after {
        width: 8px;
        height: 8px;
        margin-top: -8px;
        right: 18px;
    }
    select.input-select {
        font-size: 14px;
        padding: 13px 45px 13px 15px;
        border-radius: 3px;
    }


    /* -- input-radio-btn
    -------------------------------------------------------------------------------- */
    input[type=radio].input-radio-btn + label {
        font-size: 14px;
        padding: 16px 0 18px;
    }
    input[type=radio].input-radio + label{
        font-size: 13px;
    }


    /* -- header
    -------------------------------------------------------------------------------- */
    header{
        height: 50px;
        padding: 0 0 0 20px;
    }
    header a.logo{
        width: 190px;
        height: 16px;
    }


    /* -- nav
    -------------------------------------------------------------------------------- */
    nav{
        top:50px;
    }
    nav ul {
        padding: 25px 20px 30px;
    }
    nav a {
        font-size: 16px;
        padding: 12px 0;
    }


    /* -- main-visual
    -------------------------------------------------------------------------------- */
    .main-visual {
        height: 70vh;
        min-height: 400px;
        background-image: url('../img/img_mainvisual_sp.jpg');
        padding: 0 20px;
    }
    .sub-page.page-service .main-visual {
        background-image: url(../img/img_subhead_service_sp.jpg);
    }
    .sub-page.page-404 .main-visual{
        height: 70vh;
        min-height: 400px;
        background-image: url('../img/img_mainvisual_sp.jpg');
        padding: 0 20px;
    }
    .main-visual .in-box {
        display: block;
    }
    .main-visual .ttl,
    .sub-page.page-404 .main-visual .ttl {
        text-align: center;
        margin: 0;
        position: relative;
        top: 17%;
    }
    .main-visual h1,
    .sub-page.page-404 .main-visual h1 {
        font-size: 26px;
    }
    .main-visual p {
        font-size: 13px;
        margin-bottom: 7px;
    }


    /* -- sub-visual
    -------------------------------------------------------------------------------- */
    .sub-visual {
        height: 170px;
        padding: 0 20px!important;
    }
    .sub-visual .in-box {
        justify-content: center;
    }
    .sub-visual h1 {
        font-size: 20px;
        margin-top: 35px;
    }


    /* -- main-lead
    -------------------------------------------------------------------------------- */
    .main-lead {
        padding: 0 20px;
        margin-bottom: 40px;
    }
    .main-lead .icon {
        margin-bottom: 25px;
    }
    .main-lead .icon li{
        width: 90px;
        height: 90px;
        margin: -45px 5px 0;
        border-radius: 15px;
        box-shadow: 0 1px 3px 0 rgba(0,0,0,0.14);
    }
    .main-lead .icon li img{
        width: 46px;
        height: 46px;
    }
    .main-lead h2 {
        font-size: 20px;
    }
    .main-lead p {
        font-size: 14px;
        line-height: 1.6;
        text-align: justify;
        margin-bottom: 30px;
    }
    .main-lead p.agree {
        text-align: center;
    }


    /* -- catch
    -------------------------------------------------------------------------------- */
    .catch {
        padding: 40px 0 30px;
    }
    .catch p {
        font-size: 18px;
        line-height: 1.6;
    }


    /* -- service
    -------------------------------------------------------------------------------- */
    .service-section-wrap{
        padding-bottom: 0;
    }
    .service {
        padding: 0 20px;
    }
    section h2 {
        font-size: 30px;
        margin-bottom: 15px;
    }
    section .lead {
        font-size: 14px;
        line-height: 1.6;
        margin-bottom: 30px;
    }
    section .lead.al-left {
        text-align:left;
    }
    section.service .lead {
        margin-bottom: 30px;
    }
    .service .ttl-wrap{
        float: none;
        width: 100%;
        margin-top: 30px;
    }
    .service .device-wrap {
        float: none;
        width: 100%;
        margin-bottom: 40px;
        margin-top: 0;
    }
    .device-wrap .caption ul {
        height: 14px;
    }
    .device-wrap .caption li {
        font-size: 12px;
    }


    /* -- link-area
    -------------------------------------------------------------------------------- */
    .link-area {
        padding: 30px 20px;
    }
    .link-area .link-area-in {
        width: 100%;
    }
    .link-area.home-top .link-area-in .link-btn{
        float: none;
    }
    .link-area.home-top .link-area-in .link-btn:first-child{
        float: none;
    }
    .link-area.home-btm .link-area-in .link-btn{
        float: none;
    }
    .link-area.home-btm .link-area-in .link-btn:first-child{
        float: none;
    }
    .link-area .link-area-in .link-btn + .link-btn{
        margin-top: 10px!important;
    }
    .link-area.home .link-area-in .link-btn:first-child{
        float: none;
    }
    .link-area.home .link-area-in .link-btn + .link-btn{
        margin-top: 10px!important;
    }


    /* -- footer
    -------------------------------------------------------------------------------- */
    footer .page-top{
        height: 40px;
    }
    footer .page-top span {
        width: 10px;
        height: 10px;
    }
    footer .footer-nav {
        display: block;
    }
    footer .footer-nav li {
        width: 100%!important;
        margin-top: 1px;
    }
    footer .footer-nav li:first-child {
        margin-top: 0;
    }
    footer .footer-nav li a{
        font-size: 16px;
        height: 120px;
    }
    footer .footer-in {
        padding: 40px 20px;
    }
    footer aside {
        margin-bottom: 40px;
    }
    footer aside .inner{
        margin-top: 30px;
    }
    footer aside .ttl {
        font-size: 16px;
    }
    footer aside p{
        font-size: 11px;
    }
    footer aside .link-txt {
        margin-top: 15px;
    }
    footer .copyright {
        padding-top: 15px;
    }
    footer .copyright img{
        width: 143px;
        height: 12px;
        margin-top: 2px;
    }


    /* -- sub-page
    -------------------------------------------------------------------------------- */
    .sub-page .main-visual {
        height: 56vh;
        min-height: 320px;
    }
    .sub-page .main-visual .in-box {
        height: 100%;
        display: flex;
        align-items: center;
    }
    .sub-page.page-404 .main-visual .in-box {
        display: block;
    }
    .sub-page .main-visual .ttl {
        margin-top: 35px;
        padding-top: 0;
        position: static;
        top:auto;
    }
    .sub-page .main-visual h1{
        font-size: 24px;
    }
    .sub-page .main-visual .lead{
        text-align: center;
    }
    .sub-page .main-visual aside{
        margin-top: 40px;
    }
    .sub-page .main-visual aside span{
        font-size: 12px;
        padding-bottom: 5px;
    }
    .sub-page .content section{
        padding: 40px 20px;
    }
    .sub-page .my-fund section.check-fund {
        padding: 30px 0 0;
    }
    .sub-page .bgc{
        background: #f0f0f0;
    }
    .sub-page .note{
        font-size: 11px;
        margin-top: 30px;
    }


    /* -- page-service
    -------------------------------------------------------------------------------- */
    .page-service .step-num{
        margin-bottom: 12px;
    }
    .page-service .step-num span{
        font-size: 12px;
        padding: 6px 11px 5px;
        border-radius: 13.5px;
    }


    /* -- service-receipt
    -------------------------------------------------------------------------------- */
    .service-receipt .lead{
        text-align: justify;
    }
    .service-receipt .btn-area li:first-child{
        margin-bottom: 10px;
    }
    .service-receipt .btn-area{
        margin-top: 30px;
    }
    .service-receipt .btn-area li {
        float: none!important;
        width: 100%;
    }
    .service-receipt .btn-area .page-btn{
        padding: 15px 0 17px;
    }
    .service-receipt .btn-area .page-btn .icon{
        width: 26px;
        height: 26px;
        left: 15px;
        margin-top: -13px;
    }
    .service-receipt .btn-area .page-btn .icon svg,
    .service-receipt .btn-area .page-btn .icon img{
        transform: scale(1);
    }


    /* -- fund-regist
    -------------------------------------------------------------------------------- */
    .fund-regist .input-area li:first-child{
        margin-bottom: 10px;
    }
    .fund-regist .btn-area{
        margin-top: 30px;
    }
    .fund-regist .btn-area .page-btn .icon{
        left: 15px;
    }


    /* -- fund-list
    -------------------------------------------------------------------------------- */
    .fund-list-wrap{
        padding-top: 30px;
        min-height: 40px;
    }
    .fund-list .serach-result{
        font-size: 12px;
        margin-bottom: 10px;
    }
    .fund-list .serach-result .val{
        font-size: 24px;
    }
    .fund-list .radio-box li input[type=radio] + label {
        width: calc(100% - 50px);
        padding: 13px 0 13px 0;
    }
    .formcomp .fund-list-wrap,
    .formcomp .fund-list{
        display: block;
    }
    .formcomp .loader{
        display: none;
    }


    /* -- loader
    -------------------------------------------------------------------------------- */
    .loader{
        top:30px;
    }


    /* -- service-regist
    -------------------------------------------------------------------------------- */
    .service-regist section{
        margin-top: 0;
        padding: 10px 20px 20px !important;
    }
    .service-regist section h3{
        font-size: 20px;
        font-weight: 600;
        margin-bottom: 30px;
    }

    /* -- fund-config
    -------------------------------------------------------------------------------- */
    .fund-config .data-current{
        padding: 25px 0 22px;
    }
    .fund-config .data-current dt{
        font-size: 12px;
        margin-bottom: 5px;
    }
    .fund-config .data-current dd{
        font-size: 18px;
    }
    .fund-config .data-current dd span{
        font-size: 24px;
    }
    .fund-config .data-set-wrap {
        display: block;
        border-bottom: none;
    }
    .fund-config .data-set{
        width: 100%;
        border-bottom:solid 1px #e9e9e9;
        padding: 10px 0 20px;
    }
    .fund-config .data-set.high {
        padding-right: 0;
    }
    .fund-config .data-set.low {
        border-left: none;
        padding-left: 0;
    }
    .fund-config .data-set .main-set{
        margin-bottom: 20px;
    }
    .fund-config .data-set .main-set li{
        font-size: 16px;
    }
    .fund-config .data-set .main-set li .input-text{
        font-size: 20px;
    }
    .fund-config .data-set .sub-set li span{
        font-size: 16px;
    }
    .fund-config .data-set .sub-set li a{
        font-size: 13px;
        padding: 8px 8px 9px;
    }
    .fund-config .data-set .sub-set li.select-wrap{
        width: calc(100% - 183px);
    }
    .fund-config .data-set .sub-set li.select-wrap select.input-select {
        font-size: 15px;
        padding: 7px 8px 9px;
    }
    .fund-config .data-set .sub-set li.select-wrap label.select-box:after {
        right: 12px;
        width: 6px;
        height: 6px;
        margin-top: -6px;
    }


    /* -- time
    -------------------------------------------------------------------------------- */
    section.service-time{
        padding-bottom: 20px;
    }


    /* -- pop-up
    -------------------------------------------------------------------------------- */
    .pop-up{
        border-width: 8px;
    }


    /* -- check
    -------------------------------------------------------------------------------- */
    .check dl{
        margin-bottom: 15px;
    }
    .check dt,
    .check .list li.ttl{
        font-size: 11px;
        padding: 8px 10px;
    }
    .check dd,
    .check .list li{
        padding: 15px 0;
        line-height: 1.4;
    }
    .check dd.fund-name,
    .my-fund .check .my-page-box dd.fund-name{
        font-size: 18px;
        text-align: left;
    }
    .check .list{
        margin-bottom: 0;
        padding: 0 20px 30px;
    }
    .check .list li{
        font-size: 13px;
        padding: 15px 10px;
    }


    /* -- check-mail
    -------------------------------------------------------------------------------- */
    .check-mail{
        padding-left: 20px!important;
        padding-right: 20px!important;
    }
    .check-mail h2,
    .my-fund section.check-mail h2{
        font-size: 20px;
    }
    .check-mail .lead,
    .my-fund section.check-mail .lead{
        font-size: 13px;
        text-align: justify;
        margin-bottom: 30px;
    }
    .check-mail .inner-box{
        padding: 20px;
        margin-top: 10px;
    }
    .check-mail .inner-box dl{
        margin-bottom: 20px;
    }
    .check-mail .inner-box dt{
        font-size: 12px;
    }
    .check-mail .inner-box dd input[type="email"].input-text{
        font-size: 14px;
        padding: 12px 0 12px;
    }
    .check-mail .inner-box h3{
        font-size: 16px;
    }
    .check-mail .inner-box .link-btn{
        margin-top: 20px;
    }


    /* -- market-regist
    -------------------------------------------------------------------------------- */
    .sub-page .content section.market-regist{
        padding: 40px 20px;
    }
    .sub-page .content section.market-regist h2{
        font-size: 20px;
    }



    /* -- market-description
    -------------------------------------------------------------------------------- */
    .market-description .lead{
        text-align: justify;
    }
    .market-description .device-wrap{
        width: 100%;
        max-width: 470px;
        margin-bottom: 0;
    }
    .market-description .link-area{
        margin-top: 40px;
    }


    /* -- market-news
    -------------------------------------------------------------------------------- */
    .market-news .news-topics::after{
        width: 40px;
    }
    .market-news .news-topics::before{
        margin-bottom: 15px;
    }
    .market-news .date{
        font-size: 12px;
        margin-bottom: 20px;
    }
    .market-news h2{
        font-size: 20px;
        margin-bottom: 10px;
    }
    .market-news h2 .sub{
        font-size: 14px;
    }
    .market-news .news-topics p{
        font-size: 14px;
        margin-top: 1em;
    }
    .market-news .news-topics .page-btn{
        margin-top: 20px;
    }
    .market-news h3{
        font-size: 20px;
        text-align: center;
        margin-bottom: 40px;
    }
    .market-news .news-list::after{
        width: 40px;
    }
    .market-news .news-list li{
        padding: 15px 0 13px;
    }
    .market-news .news-list li dt{
        margin-bottom: 15px;
        font-size: 11px;
    }
    .market-news .news-list li dd{
        font-size: 14px;
    }
    .market-news .news-list li dd .sub{
        font-size: 12px;
    }


    /* -- page-link-wrap
    -------------------------------------------------------------------------------- */
    .page-link-wrap{
        padding: 30px 20px;
    }
    .page-link-wrap .in-box{
        display: block;
    }
    .page-link-wrap .txt-wrap{
        padding-bottom: 0;
        text-align: center;
    }
    .page-link-wrap .txt-wrap h2{
        font-size: 16px;
        margin-bottom: 7px;
    }
    .page-link-wrap .txt-wrap p{
        font-size: 12px;
        color:#666;
        margin-bottom: 15px;
    }
    .page-link-wrap .link-btn{
        width: 160px;
        font-size: 12px;
        padding: 12px 0 13px;
        border-radius: 2px;
        margin: 0 auto;
    }


    /* -- tab
    -------------------------------------------------------------------------------- */
    .tab {
        height: 50px;
    }
    .tab.fixed .inner {
        transform: translateY(50px);
    }
    .tab ul{
        width:100%;
    }
    .tab li{
        padding: 0 7px;
    }
    .tab li a{
        font-size: 11px;
        padding: 18px 0;
    }


    /* -- my-fund
    -------------------------------------------------------------------------------- */
    .sub-page .my-fund section {
        padding: 30px 0 0;
    }
    .sub-page .my-fund section.service-regist {
        padding: 30px 0 0 0;
        background-color: #fff;
    }
    .my-fund .my-page-wrap {
        padding: 30px 20px 40px;
    }
    .my-fund .my-page-wrap.confirm {
        padding: 0 0 40px;
    }
    .my-fund h2.ttl-bb + .my-page-box,
    .my-fund h2.ttl-bb + .my-page-wrap {
        margin-top: 40px;
    }
    .my-fund .head .lead{
        padding: 25px 20px;
    }
    .my-fund .my-fund-inner{
        padding: 0 10px 40px;
    }
    .my-fund .sub-head{
        padding: 20px 10px 0;
    }
    .my-fund .sub-head li dl{
        font-size: 12px;
    }
    .my-fund .sub-head li dd{
        margin-left: 7px;
    }
    .my-fund .sub-head li .fs-L{
        font-size: 24px;
    }
    .my-fund .sub-head p{
        font-size: 12px;
    }
    .my-fund section h2{
        font-size: 20px;
        margin-bottom: 30px;
    }
    .my-fund section h2.ttl-bb span{
        padding: 0 0 11px;
    }
    .my-fund .my-page-box{
        margin-top: 15px;
    }
    .my-fund .my-page-box.box-type-regist {
        margin-bottom: 25px;
    }
    .my-fund .lead{
        font-size: 14px;
    }
    .my-fund .my-page-box .inner{
        padding: 20px 20px;
    }
    .my-fund .fund-name{
        font-size: 18px;
    }
    .my-fund .my-page-box .my-fund-list li p{
        font-size: 12px;
    }
    .my-fund .my-page-box .my-fund-list li span{
        font-size: 16px;
    }
    .my-fund .my-page-box .my-fund-list li span.fs-L{
        font-size: 20px;
    }
    .my-fund .my-page-box .my-fund-list li label{
        padding-top: 3px;
        margin-right: 5px;
    }
    .my-fund .my-page-box .my-fund-list li .input-text{
        font-size: 12px;
        width: 115px;
        padding: 8px 10px 8px;
    }
    .my-fund .my-page-box .my-fund-list li label::before {
        top: 13px;
        right: 12px;
    }
    .my-fund .link-area.bottom a{
        font-size: 11px;
        padding: 13px 0;
    }
    .my-fund .my-page-box .fund-date{
        font-size: 12px;
    }
    .my-fund .fund-val dl {
        display: block;
    }
    .my-fund .fund-val dt{
        width: 100%;
        font-size: 16px;
        margin-bottom: 12px;
    }
    .my-fund .fund-val dd{
        width: 100%;
        font-size: 16px;
        border-left:  none;
    }
    .my-fund .fund-val dd .val-price{
        font-size: 24px;
    }
    .my-fund .fund-val .val-sub{
        margin-top: 3px;
        font-size: 12px;
    }
    .my-fund .fund-val .val-sub span{
        font-size: 14px;
    }
    .my-fund .fund-val .val-up::after,
    .my-fund .fund-val .val-down::after {
        width: 15px;
        height: 20px;
        background-size: 100%;
        margin-left: 10px;
        transform: translateY(2px);
    }
    .my-fund section .my-page-box .link-area{
        margin-top: 30px;
    }
    .my-fund section .my-page-box .link-btn{
        margin-top: 10px;
    }
    .my-fund section.check .my-page-box .link-btn{
        margin-top: 30px;
    }
    .my-fund.my-fund-regist section.check.ex {
        padding: 30px 0 0;
    }


    /* -- fund-name-wrap
    -------------------------------------------------------------------------------- */
    .fund-name-wrap{
        padding: 20px;
    }
    .fund-name-wrap a{
        display: block;
    }
    .link-ttl{
        width: 100%;
    }
    .link-txt{
        font-size: 12px;
        text-align: right;
        margin-top: 10px;
    }
    .link-txt::after {
        transform: rotate(45deg) translateY(-2px);
    }


    /* -- my-fund-home
    -------------------------------------------------------------------------------- */
    .my-fund.my-fund-home .my-page-box .inner {
        padding: 0 0 10px;
    }
    .my-fund.my-fund-home .my-page-box.box-type-regist .inner {
        padding: 15px 20px 10px;
    }
    .my-fund.my-fund-home .my-page-box .my-fund-list .bp-bd p.ttl{
        padding:5px 0;
    }
    .my-fund.my-fund-home.my-change .my-page-wrap{
        padding-bottom: 30px;
    }
    .my-fund.my-fund-home.my-change .my-page-wrap.ttl-label{
        padding-bottom: 0;
    }
    .my-fund.my-fund-home.my-change .fund-check .fund-name{
        text-align: left;
    }


    /* -- my-fund-time
    -------------------------------------------------------------------------------- */
    .my-fund.my-fund-time section {
        padding-bottom: 0;
    }

    /* -- my-fund detail
    -------------------------------------------------------------------------------- */
    .my-fund.my-fund-detail .sub-head {
        padding: 0 0 40px;
    }
    .my-fund.my-fund-detail section {
        padding-bottom: 0;
    }
    .my-fund.my-fund-detail .my-page-box .inner {
        padding-top: 30px;
        padding-bottom: 40px;
    }
    .my-fund.my-fund-detail .fund-name {
        font-size: 20px;
        margin-bottom: 15px;
    }
    .my-fund.my-fund-detail .my-page-box-in h3{
        font-size: 18px;
        margin-bottom: 30px;
    }
    .my-fund.my-fund-detail .investment-list {
        margin-top: 10px;
    }
    .my-fund.my-fund-detail .investment-list li {
        font-size: 12px;
        padding: 15px 15px;
    }
    .my-fund.my-fund-detail .investment-list li.ttl {
        font-size: 11px;
        padding: 9px 10px;
    }
    .my-fund.my-fund-detail .chart-tab li{
        margin: 0 3px;
    }
    .my-fund.my-fund-detail .chart-tab li a{
        width: 50px;
    }
    .my-fund.my-fund-detail .chart-wrap {
        margin-top: 30px;
    }
    .my-fund.my-fund-detail .chart {
        height: 240px;
    }
    .my-fund.my-fund-detail .legend {
        margin-top: 15px;
    }
    .my-fund.my-fund-detail .legend li{
        font-size: 10px;
        margin: 0 7px;
    }
    .my-fund.my-fund-detail .legend li::before{
        width: 25px;
        transform: translateY(-1px);
    }
    .my-fund.my-fund-detail .list li{
        font-size: 12px;
        padding: 15px 10px;
    }
    .my-fund.my-fund-detail .list li.ttl{
        font-size: 11px;
        padding: 8px 10px;
    }
    .my-fund.my-fund-detail .list li span{
        font-size: 14px;
    }


    /* -- page-cancell
    -------------------------------------------------------------------------------- */
    .sub-page.page-cancell .content section{
        padding-bottom: 40px;
    }
    .cancell-line .device-wrap{
        width: 100%;
        max-width: 470px;
    }
    .cancell-mail .mail-address{
        margin-bottom: 30px;
    }
    .cancell-mail .mail-address p{
        font-size: 12px;
        padding-bottom: 10px;
    }
    .cancell-mail .mail-address span{
        font-size: 14px;
        margin-right: 10px;
    }
    .cancell-mail .lead{
        font-size: 13px;
        text-align: justify;
    }


}
/*** 利用規約に同意する */
.content .privacy {
    text-align:center;
    margin-bottom:15px;
}
.content .privacy input {
    margin-right:5px;
    cursor:pointer;
}
.content .privacy a,
.decoUL{
    text-decoration:underline;
}
.privacy label{
    cursor:pointer;
}
.privacy.width-btn {
    cursor:pointer;
}
.privacy input[type=checkbox].checkboxInput + span {
    position: relative;
    display: inline-block;
    font-size: 14px;
    cursor: pointer;
    width:22px;
}
.privacy input[type=checkbox].checkboxInput {
    display: none;
    margin: 0;
}
.privacy input[type=checkbox].checkboxInput + span:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    width: 22px;
    height: 22px;
    margin-top: -11px;
    border-radius:3px;
    border:solid 1px #c4c4c4;
    background:#fff;
    -moz-transition: all 150ms ease-in-out;
    -webkit-transition: all 150ms ease-in-out;
    transition: all 150ms ease-in-out;
}
.privacy input[type=checkbox].checkboxInput + span:after {
    content: "";
    position: absolute;
    top: 50%;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    -moz-transition: all 300ms ease-in-out;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.privacy input[type=checkbox].checkboxInput + span:after {
    left: 3px;
    width: 16px;
    height: 8px;
    margin-top: -6px;
    border-left: 2px solid #c4c4c4;
    border-bottom: 2px solid #c4c4c4;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.privacy input[type=checkbox]:checked.checkboxInput + span:before {
    background: #1dcd00;
    border-color:#1dcd00;
}
.privacy input[type=checkbox]:checked.checkboxInput + span:after {
    border-color:#fff;
}
.privacy input[type=checkbox].checkboxInput + span {
    margin-right: 8px;
}
.privacy input[type=checkbox].checkboxInput + span:before {
    margin-top: -16px;
}
.privacy input[type=checkbox].checkboxInput + span:after {
    margin-top: -11px;
}
/* -- modal
-------------------------------------------------------------------------------- */
/*
#wrapper.wrapFix{
    position:fixed;
    width: 100%;
}
*/
#modal {
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    min-height:500px;
    z-index:11;
    display:none;
}
.modalBack {
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index: 12;
    background:rgba(255,255,255,0.9);
}
.modalContOutWrap {
    width:100%;
    height:100%;
    display:none;
}
.modalContWrap {
    z-index: 13;
    width: 90%;
    max-width: 760px;
    height: 100%;
    margin: 0 auto;
    position: fixed;
    left: 0;
    right: 0;
}
@media screen and (max-width:760px) {
    .modalContWrap {
        width: calc(100% - 30px);
        box-sizing: border-box;
    }
}
.modalCont {
    position: absolute;
    z-index: 13;
    margin: auto 0;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    max-height: 613px;
}
@media screen and (max-width:760px) {
    .modalCont {
        max-height: 483px;
        height: calc(100vh - 77px);
        min-height: 353px;
    }
}
.modalCont .modalContInner {
    z-index: 14;
    background:#fff;
    border:solid 1px #e0e0e0;
    max-height: 611px;
}
@media screen and (max-width:760px) {
    .modalCont .modalContInner {
        max-height: 481px;
        height: calc(100vh - 80px);
        min-height: 351px;
    }
}
.modalCont .title {
    z-index: 14;
    display: flex;
    vertical-align: middle;
    align-items: center;
    height: 60px;
    font-size:20px;
    text-align:center;
    background:#7f8c8d;
    color:#fff;
    letter-spacing:0.2em;
}
.modalCont .title p {
    width: 100%;
}

.content-modal{
    z-index: 14;
    padding:30px 30px 40px;
}
@media screen and (max-width:760px) {
    .content-modal{
        padding:20px 20px 20px;
    }
}
.content-modal .section {
    max-height: 380px;
    z-index: 14;
    min-height: 200px;
    height: calc(100vh - 220px);
}
@media screen and (max-width:760px) {
    .content-modal .section{
        height: calc(100vh - 280px);
        max-height: 280px;
        min-height: 150px;
    }
}
.content-modal .mailImg{
    z-index: 14;
    text-align:center;
}
.content-modal .mailImg img{
    z-index: 14;
    padding: 10px 5px 0;
    border: solid 1px #e0e0e0;
    background: #fafafa;
}
.content-modal .step2{
    display:none;
}
.content-modal .fund-name{
    font-size:24px;
    line-height:1.4;
    text-align:center;
    margin-bottom:15px;
    padding:0 15px 15px;
    border-bottom:solid 1px #c4c4c4;
    position:relative;
}
.content-modal .fund-name span {
    display: inline-block;
    text-align: left;
}
.content-modal .fund-name:before{
    content:"";
    display:block;
    width:1px;
    height:10px;
    background:#c4c4c4;
    position:absolute;
    bottom:0;
    left:0;
}
.content-modal .fund-name:after{
    content:"";
    display:block;
    width:1px;
    height:10px;
    background:#c4c4c4;
    position:absolute;
    bottom:0;
    right:0;
}
.content-modal .text{
    font-size:18px;
    line-height:1.7;
    text-align:center;
}
.content-modal .text .notice{
    font-size:14px;
    line-height:1.7;
    margin-top:35px;
    text-align:left;
}
.content-modal .text .notice span{
    display: inline-block;
    text-align: left;
    text-indent: -1em;
    padding-left: 1em;
}
.content-modal .selectBtn{
    border-top:solid 1px #e0e0e0;
    padding-top:20px;
    margin-top:30px;
    position: relative;
}
.content-modal .selectBtn ul{
    float:left;
    position: relative;
    left: 50%;
}
.content-modal .selectBtn li{
    float:left;
    width:200px;
    margin:0 5px;
    text-align:center;
    position: relative;
    left: -50%;
}
@media screen and (max-width:760px) {
    .content-modal .selectBtn li{
        width:104px;
    }
}
.content-modal .selectBtn li a{
    display:block;
    font-size: 16px;
    line-height: 1.2;
    text-align: center;
    padding: 13px 0 16px;
    background: #fafafa;
    border-radius: 3px;
    border: solid 1px #e0e0e0;
    box-sizing: border-box;
    -moz-transition: all 300ms ease-in-out;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.content-modal .selectBtn li a:hover{
    background:#f0f0f0;
    border-color:#d0d0d0;
}
.content-modal .selectBox li,
.content-modal .selectBox li a{
    width: 224px;
}
#modal .price{
    text-align:center;
    margin:15px 0px 20px;
}
#modal .price span{
    font-size:24px;
    margin:0 5px;
}
#modal .price-input{
    padding: 15px 0;
}
#modal .price dd{
    border:none;
}
#modal .price-input dl{
    margin: 0 auto 10px;
}
#modal .content .price-low{
    border:none;
    margin-bottom:0px;
}
#kiyaku .content-modal .section h2,
#privacy .content-modal .section h2,
#personal .content-modal .section h2{
    margin: 15px 0px 5px;
}
#kiyaku .content-modal .section ul li,
#privacy .content-modal .section ul li,
#personal .content-modal .section ul li{
    margin-left: 14px;
    text-indent: -12px;
}
#kiyaku .content-modal .section ul li ul li,
#privacy .content-modal .section ul li ul li,
#personal .content-modal .section ul li ul li{
    text-indent: 0px;
    margin-left: 0px;
}

.target-reset-btn a{
    display: block;
    margin-top: 10px;
    width: 100px;
    text-align: center;
    color: #fff;
    background: #f3212d;
    font-size: 13px;
    font-weight: 600;
    padding: 9px 11px 10px;
    border-radius: 3px;
    transition: all 300ms ease;
    margin-left: auto;
    margin-right: auto;
}
a#target-reset-low{
    background: #2196F3;
}
/*** 111 **/
/*
.target-li table {
    border-collapse: collapse;
    margin-left: auto;
    margin-right: auto;
}
.target-li th,
.target-li td{
    border-collapse: collapse;
    border: 1px solid #e9e9e9;
    padding: 10px;
}
*/
/*** 222 **/
/*
.target-li2{
    padding: 0 !important;
}
.target-li2 table {
    width: 100%;
    border-collapse: collapse;
}
.target-li2 th{
    border-collapse: collapse;
    border-right: 1px solid #e9e9e9;
    border-bottom: 1px solid #e9e9e9;
    padding: 10px 20px;
    text-align: center;
}
.target-li2 td{
    border-bottom: 1px solid #e9e9e9;
    padding: 10px 20px;
    text-align: center;
}
.target-li2 tr:last-child th,
.target-li2 tr:last-child td{
    border-bottom: none;
}
*/
/*** 333 **/
.target-li,
.target-li{
    padding: 0 !important;
    height: 100px;
}
.target-li table,
.target-li table{
    border-collapse: collapse;
    width: 100%;
    height: 100%;
}
.target-li th{
    text-align: center;
}
.target-li .target-th{
    border-right: 1px solid #e9e9e9;
}
.target-li .target-th{
    border-bottom: 1px solid #e9e9e9;
}
.target-li .target-th.dummy{
    border:none;
}
.target-li td{
    border-bottom: 1px solid #e9e9e9;
    padding: 10px 20px;
    text-align: center;
}

@supports (-ms-ime-align: auto) {
    .ui-sortable-helper {
        width:939px !important;
    }
}
@media (max-width: 1024px){
/*** fund-home **/
    .my-fund.my-fund-home .link-btn-small {
        font-size: 12px;
    }
/*** fund-sort **/
    .my-fund.my-fund-sort .sub-head{
        padding-bottom:10px;
    }
    .my-fund.my-fund-sort .sub-head p{
        font-size:12px;
        margin:10px 0
    }
    .my-fund-sort #sort-explain img {
        width:14px;
        height:14px;
    }
    .my-fund.my-fund-sort table{
        font-size:12px;
    }
    .my-fund.my-fund-sort table .pc {
        display:none;
    }
    .my-fund.my-fund-sort table .sp {
        display:table-cell;
    }
    .my-fund.my-fund-sort table tr.tbody{
        height:80px;
    }
    .my-fund.my-fund-sort table tr td img{
        width:30px;
        height:30px;
    }
    .my-fund.my-fund-sort #sort-btn{
        font-size:14px;
    }
    .my-fund.my-fund-sort #sort-explain p img{
        width:14px;
        height:14px;
    }
    .my-fund.my-fund-sort #sort-btn {
        margin-top:6px;
    }
    .my-fund.my-fund-sort #sort-btn img{
        width:14px;
        height:14px;
    }
    .ui-sortable-helper {
        height:50px !important;
    }
}

/*------------------------------add_style(start)------------------------------*/

/*最大～1025pxまで(start)*/

header{
    padding-left:20px;
}

header a.logo {
    width: 218px;
    height: 23px;
}

header .nav a.active {
    color: #174487;
}
.pc .nav a:hover {
    color: #666;
}
.nav-btn span {
    display: block;
    width: 21px;
    height: 2px;
    border-radius: 1px;
    background: #fff;
}
/*最大～1025pxまで(end)*/


/*1024px～まで(start)*/
@media (max-width: 1024px){

.nav-btn span {
    display: block;
    width: 21px;
    height: 2px;
    border-radius: 1px;
    background: #FFF;
}
header.black .nav-btn span {
    background: #FFF;
}
header.fixed .nav-btn span {
    background: #333;
}
.top header.black .nav-btn span {
    background: #333;
}


}/*1024px～768pxまで(end)*/


/*767px～最小まで(start)*/
@media (max-width: 767px){

header a.logo {
    width: 161px;
    height: 17px;
}
header{
    padding-left:10px;
}

}/*767px～最小まで(end)*/

.delivery-note{
  padding:0 20px;
  text-align: center;
}

.no-mypage.delivery-note{
  margin-bottom:20px;
}
@media (max-width: 767px) {
    .delivery-note {
        text-align: left;
        padding-bottom: 30px;
    }
}

.release {
	padding-bottom: 20px;
}

@media (max-width: 458px){
    .main-visual h1 img{
        width:280px;
    }
    input::-webkit-input-placeholder {
        font-size:12px;
    }
    input:-moz-placeholder {
        font-size:12px;
    }
    input::-moz-placeholder {
        font-size:12px;
    }
    input:-ms-input-placeholder {
        font-size:12px;
    }
}

/*--------sub_visual--------*/
.sub-page.page-mypage .sub-visual .to-market .ref-button {
 display: inline-block;
 border: 1.5px solid #174487;
 color: #F8F8FF;
 background-color: #174487;
 text-decoration: none;
 padding: 4px 8px;
 border-radius: 4px;
 transition: .4s;
 font-size: 13px;
 font-weight: 400;
}

.sub-page.page-mypage .sub-visual .to-market .ref-button:hover{
  background-color: #F8F8FF;
  border-color: #174487;
  color: #174487;
}
/*--------sub_visual--------*/

/*--------使い方のヒント--------*/
.fund-list-alert .alert-inner {
	width: 240px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 5px;
	position: relative;
    z-index: 2;
    margin: 0;
    padding: 0;
    font-size: 14px;
line-height: 1.7;
}
.fund-list-alert.show {
	transform: translateY(0);
    opacity: 1;
    visibility: visible;
    transition-duration: 0.5s;
}
.fund-list-alert {
	position: absolute;
    top: 0;
    left: 0;
    box-shadow: 0 0 20px 1px
    rgba(0, 0, 0, 0.7);
    border-radius: 5px;
    z-index: 2;
    transform: translateY(-40px);
    opacity: 0;
    visibility: hidden;
    transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s ease;
}
.fund-list-alert .after {
	display: block;
	width: 20px;
	height: 20px;
	background: #fff;
	position: absolute;
	bottom: -10px;
	margin-left: -10px;
	transform: rotate(45deg);
	box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.1);
}
.fund-list-alert .alert-head {
    height: 30px;
    padding: 5px 10px;
    background: #73a143;
    color: #fff;
    border-radius: 5px 5px 0 0;
    position: relative;
}

.fund-list-alert .alert-body {
	padding: 10px 20px;
}
.fund-list-alert .alert-body dd {
    font-size: 14px;
    text-align: justify;
}
.fund-list-alert .close::before, .fund-list-alert .close::after {
	border-top-width: 2px;
	width: 16px;
	margin-top: -1px;
	margin-left: -8px;
}
.fund-list-alert .close {
	display: block;
	width: 50px;
	height: 40px;
	overflow: hidden;
	position: absolute;
	top: 0;
    right: 0;
    text-decoration: none;
    color: #fff;
    opacity: initial;
}
.fund-list-alert .close::before, .fund-list-alert .close::after {
	content: "";
    display: block;
    width: 16px;
    border-top-width: 2px;
	border-top: solid 3px #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -1px;
	margin-left: -8px;
	transform: rotate(45deg);
	transition: 0.15s ease;
}
.fund-list-alert .close::after {
	transform: rotate(-45deg);
}
.fund-list-alert .alert-body.privacy input[type="checkbox"].checkboxInput + span::before {
	-moz-transition: none;
	-webkit-transition: none;
	transition: none;
}
.fund-list-alert .alert-body.privacy input[type="checkbox"].checkboxInput + span::after {
	-moz-transition: none;
	-webkit-transition: none;
	transition: none;
}
.fund-list-alert .alert-body.privacy label{
    text-align: center;
    margin-top: 10px;
}
.fund-list-alert .alert-body.privacy{
    margin-bottom: 0;
}
/*--------使い方のヒント--------*/


/*------------------------------add_style(start)------------------------------*/
