@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@200;500;700&display=swap');
* { min-height:0; min-width:0; box-sizing: border-box; }
*:focus	{ outline: none; }
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure, footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
  font-size: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
}
body	{ color: #2C2C2C; /*font-family:'Outfit',"游ゴシック",'YuGothic','Hiragino Sans',Meiryo,sans-serif;*/ font-weight: 500; font-feature-settings: "palt"; -webkit-font-feature-settings: "palt"; letter-spacing:.04rem; height:100%; overflow-x: hidden;}
img	{ display:inline-block; height: auto; width: 100%; max-width: 100%; backface-visibility: hidden; }
a, a:link, a:visited, a:active	{ color: #2C2C2C; text-decoration: none; }
a:hover	{ color: #000; font-style: normal; text-decoration: none; }

main.subpage {margin-top:60px;}

header nav .gnavi .menu > p, header nav .gnavi .menu > a,
header nav .gnavi .menu .dropdown li a,
header nav .banner:last-of-type,
footer .footer-content .logo p,
footer .footer-content nav dt {
    font-size: 16px;
}
footer p.address{
    margin-top: -20px;
}
div.main-section{margin-top:-80px;}
main.subpage{margin:0px 0px 100px 0px; position:relative;}
main.subpage::after{
    content:"";
    background: url('../shared/img/top/ring_pattern_02.svg') no-repeat;
    background-size: 100% auto;
    position:absolute;
    height:1213px;
    width:1492px;
    top:20%;
    left:75vw;
    z-index: -1;
    filter:blur(1rem);
}
main.subpage::before{
    content:"";
    background: url('../shared/img/top/ring_pattern_02.svg') no-repeat;
    background-size: 100% auto;
    position:absolute;
    height:1213px;
    width:1492px;
    top:60%;
    right:75vw;
    z-index: -1;
    filter:blur(1rem);
}
main.subpage .page_title {
    padding: clamp(75px,200px,12vw) 0 clamp(110px,220px,17vw);
    background-image: url('../images/ver2pagetitle.png');
    background-position:center -20px;
    background-size: auto 100%;
    background-repeat: no-repeat;
    position:relative;
    width:100vw;
    margin:0 calc(50% - 50vw);
    z-index: -1;
}
.subpage .page_title h2{
    font-size:clamp(44px,82px,6.2vw);
    text-align:center;
    font-weight:700;
    z-index:2;
    position:relative;
    max-width:1100px;
    margin:0 auto;
    width:fit-content;
}
main.subpage .page_title h2::after{
    content:"";
    display:block;
    width:clamp(200px,430px,36vw);
    height:clamp(200px,430px,36vw) ;
    position:absolute;
    right:clamp(-440px,-360px,-40vw);
    bottom:-180%;
    z-index: -1;
}
main.business-staff .page_title h2::after{
    background:url('../images/liust_business_s.png') 0 center/100% no-repeat;
}
main.business-client .page_title h2::after{
    background:url('../images/bizimg.png') 0 45%/100% no-repeat;
}
main.about-message .page_title h2::after,
main.about-company .page_title h2::after,
main.about-advisor .page_title h2::after,
main.about-marginrate .page_title h2::after{
    background:url('../images/liust_about.png') 0 center/100% no-repeat;
}
main.newspage .page_title h2::after,
main.newsview .page_title h2::after{
    background:url('../images/liust_news.png') 50px 40%/85% no-repeat;
}
main.contact-client .page_title h2::after,
main.contact-staff .page_title h2::after,
main.contact-client-thanks .page_title h2::after,
main.contact-staff-thanks .page_title h2::after{
    background:url('../images/liust_contact.png') 50px 40%/85% no-repeat;
}

.subpage .page_title p{
    font-size:clamp(18px,32px,2.6vw);
    text-align:center;
    z-index:1;
    position:relative;
    max-width:1100px;
    margin:10px auto 0;
    font-weight:700;
}
.subpage .page_title p::before {
    content: "";
    height: 1086px;
    left: -1000px;
    position: absolute;
    top: -860px;
    width: 1289px;
    z-index: -3;
    background: url(../shared/img/top/particle_left.svg) 0% 100% / 100% no-repeat;
}

.subpage .page_title p::after {
    content: "";
    height: 1086px;
    position: absolute;
    right: -1000px;
    top: -860px;
    width: 1289px;
    z-index: -3;
    background: url(../shared/img/top/particle_right.svg) 0% 100% / 100% no-repeat;
}

.subpage .page_content{
    margin: -80px 0 0 0 ;
}

.subpage .service_link{
    background:#fdf5e5;
    padding:60px;
    margin:-140px -60px 0 -60px;
    z-index:2;
    position:relative;
}
.subpage .service_link_bottom{
    margin-top:80px;
}
.subpage .service_link h3{
    font-size:clamp(20px,36px,2.9vw);
    text-align:center;
    font-weight:700;
}
.subpage .service_link a{
    background:#fa8b1b;
    color:#fff;
    width:fit-content;
    font-weight:500;
    display:block;
    text-align:center;
    padding:12px 50px;
    font-size:clamp(14px,26px,2.1vw);
    margin:30px auto 10px;
    border-radius:35px;
}
.subpage .service_link a:hover{
    text-decoration: none;
    background:#ff9d2d;
}
.subpage .service_link span{
    font-weight:700;
    text-align:center;
    display:block;
    margin:0 auto 20px;
    font-size:clamp(12px,16px,1.3vw);
}
.subpage .service_link p{
    font-weight:700;
    text-align:left;
    max-width:720px;
    margin:0 auto;
    line-height:2em;
    font-size:clamp(12px,16px,1.3vw);
}
.subpage .reason{
    display:flex;
    justify-content: space-between;
    position:relative;
    z-index:0;
}
.business-staff .sec1,
.business-staff .sec3,
.business-staff .sec5{
    flex-direction:row-reverse;
}
.subpage .reason .sec-image{
    width:44%;
}
.subpage .reason .sec-text{
    width:56%;
}
.business-staff .sec1::after,
.business-staff .sec3::after,
.business-staff .sec5::after{
    content:"";
    background:#f8eccd;
    position:absolute;
    z-index:-1;
    width:82%;
    height:230px;
    bottom:13px;
    right:-20px;
}
.business-staff .sec2::before,
.business-staff .sec4::before{
    content:"";
    background:#f8eccd;
    position:absolute;
    z-index:-1;
    width:82%;
    height:230px;
    bottom:13px;
    left:-20px;
}
.subpage .reason .sec-text h3{
    font-size:clamp(18px,32px,2.6vw);
    font-weight:700;
    margin-top:100px;
}
.subpage .reason .sec-text p{
    font-size:clamp(12px,20px,1.6vw);
    font-weight:500;
    margin-top:30px;
    line-height:2em;
}
footer a,
footer a:link,
footer a:hover,
footer a:visited{
    color:#fff;
    text-decoration: none;
}

footer nav a:hover{
    text-decoration: underline !important;    
}

.business-client .sec2,
.business-client .sec4{
    flex-direction:row-reverse;
}

.business-client .sec2::after,
.business-client .sec4::after{
    content:"";
    background:#f8eccd;
    position:absolute;
    z-index:-1;
    width:82%;
    height:230px;
    bottom:13px;
    right:-20px;
}
.business-client .sec1::before,
.business-client .sec3::before{
    content:"";
    background:#f8eccd;
    position:absolute;
    z-index:-1;
    width:82%;
    height:230px;
    bottom:13px;
    left:-20px;
}


/* about message */

.about-message .main_message{
    display:flex;
    justify-content: space-between;
    margin-top:-60px;
}
main.about-message::before,main.about-message::after{
    display:none;
}
main.about-message .main_message .main_image{
    max-width: 330px;
    padding-right:50px;
}
main.about-message .main_message .main_text{
    max-width: 770px;
}
main.about-message .main_text h3{
    font-size: 32px;
    font-weight: 700;
    margin-bottom:20px;
    text-align:left;
}
main.about-message .main_text p{
    line-height: 2em;
    font-size:16px;
}
main.about-message .main_text .righttx {
    text-align:right;
    font-size:24px;
    font-family:"Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    font-weight:700;
    margin: 20px 0 0 0;
}


/* about company */

.about-company a{
    color: #006FE1;
    text-decoration:underline;
}
.about-company table{
    margin: 0 auto;
}
.about-company th{
    border-top: solid 3px #dbcdae;
    border-right: solid 20px #ffffff;
    font-size: 16px;
    font-weight: 700;
    width:290px;
    padding: 20px;
}
.about-company th span{
    font-weight: 400;
    font-size:14px;
}
.about-company td{
    border-top: solid 1px #aaaaaa;
    font-size: 16px;
    width:790px;
    margin-left:20px;
    padding: 20px;
    line-height: 2em;
}
.about-company td ul{
    margin-left: 11px;
}
.about-company td li{
    line-height: 2em;
    padding-left:5px;
    list-style-type:"・";
}
.company_address li:first-of-type{
    margin-bottom:1em;
}
.link_marginrate{
    padding: 20px;
    border-top:solid 1px #aaaaaa;
    border-bottom:solid 1px #aaaaaa;
    font-size: 16px;
    text-align:right;
    margin: 30px 0 50px 0;
}
.accses_hdd h4{
    font-size:24px;
    font-weight: 700;
    letter-spacing:3px;
}
.accses_hdd strong{
    font-size: 16px;
}
.accses_hdd p{
    margin: 16px 0;
    font-size: 16px;
    line-height: 1.5em;
}
.listmap iframe{
    width: 100%;
    height: 575px;
}


/* about advisor */

.about-advisor .advisor_data{
    border-bottom:solid 2px #555;
    padding-bottom:30px;
    margin-bottom:70px;
}
.about-advisor .advisor_data:first-of-type{
    margin-top:-60px;
}
.about-advisor .advisor_data:last-of-type{
    border-bottom:none;
    margin-bottom:-70px;
}
.about-advisor .data_top{
    display:flex;
    justify-content: space-between;
}
.about-advisor .data_top .data_top_left{
    width:240px;
    position:relative;
}
.about-advisor .data_top .data_top_left h3{
    position:absolute;
    top:0;
    left: 290px;
    width: fit-content;
    white-space: nowrap;
    font-size: 32px;
    font-weight:600;
}
.about-advisor .data_top .data_top_right{
    flex: 1;
    width:100%;
    width:auto;
    padding-top:70px;
    padding-left:50px;
    font-size:16px;
}
.about-advisor .data_top .data_top_right p{
    margin-bottom:16px;
    line-height:2em;
}
.about-advisor .image{
    width:100%;
}
.about-advisor .data_bottom section{
    border-bottom:solid 1px #aaa;
}
.about-advisor .data_bottom section:last-of-type{
    border-bottom:none;
}
.about-advisor .data_bottom h4{
    margin-top:22px;
    margin-bottom:14px;
    font-size:20px;
}
.about-advisor .data_bottom section .list_area{
    display:flex;
    justify-content: space-between;
}
.about-advisor .data_bottom ul,
.about-advisor .data_bottom dl{
    width:47.5%;
    margin-bottom: 26px;
    font-size:16px;
}
.about-advisor .data_bottom dt,
.about-advisor .data_bottom dd{
    margin-bottom: 18px;
    display:inline-block;
    vertical-align:top;
    font-size:16px;
}
.about-advisor .data_bottom dt:last-of-type,
.about-advisor .data_bottom dd:last-of-type,
.about-advisor .data_bottom li:last-of-type{
    margin-bottom: 0px;
}
.about-advisor .data_bottom dt{
    width:27%;
}
.about-advisor .data_bottom ul{
    list-style-type: '・';
    padding-left:13px;
}
.about-advisor .data_bottom li{
    width:100%;
    margin-bottom: 6px;
    padding-left:10px;
    line-height:2em;
}
.about-advisor .data_bottom dd{
    width:73%;
}
.about-advisor .data_bottom .award_list dt{
    width:17%;
}
.about-advisor .data_bottom .award_list dd{
    width:83%;
}
.about-advisor .img_caption{
    margin-top: 10px;
    text-align:right;
    font-size:16px;

}


/* about marginrate */

.about-marginrate .marginrate{
    margin-top:-60px;
}
.about-marginrate::before,
.about-marginrate::after{
    display:none;
}
.about-marginrate .marginrate .corp h3{
    font-size: 32px;
    font-weight:700;
    text-align:left;
    margin-bottom:5px;
}
.about-marginrate .marginrate .corp p{
    border-bottom: solid 3px #aaa;
    padding: 5px 0 15px;
    margin: 0 0 30px 0;
    font-size:16px;
}
.about-marginrate .marginrate_list{
    list-style-type:disc;
    margin-left:36px;
}
.about-marginrate .marginrate_list li{
    font-weight:600;
    font-size:22px;
    margin-bottom:22px;
}
.about-marginrate .marginrate_list li span{
    font-weight:400;
    font-size:16px;
}


/* news */

.newspage::before{
    display:none;
}
.newspage .dropleft{
    margin: -70px 0 20px 0;
    text-align:right;
}
.newspage .dropleft button{
    font-size:15px;
}
.newspage .dropleft .dropdown-menu{
    font-size:15px;
}
.newspage .news_area{
    border-top:solid 3px #aaa;
    position:relative;
}
.newspage .news_area_header h3{
    position:absolute;
    top:-66px;
}
.newspage .news_area_header h3 span{
    font-size:16px;
}
.newspage .news_area_header h3 b{
    font-size:36px;
    display:inline-block;
    margin-right:7px;
}
.newspage .news_sort_button{
    display:flex;
    justify-content:space-around;
    padding:40px 20px;
    font-size:16px;
}
.newspage .news_sort_button a{
    display:block;
    width:23%;
    background: #f5f5f5;
    border: solid 1px #fa8b1b;
    border-radius:30px;
    color:#fa8b1b;
    text-align:center;
    padding: 7px;
}
.newspage .news_sort_button a.active{
    background: #fa8b1b;
    border:none;
    color:#fff;
    pointer-events: none;
}
.newspage .news_sort_button a.active:hover{
    text-decoration:none;
}
.newspage .news_sort_button a.active .icon{
    display:none;
}
.newspage .news_sort_button .icon{
    color: #fa8b1b;
    width: 13px;
    transform: rotate(180deg);
    vertical-align:-1px;
}
.newspage .list_item{
    display: flex;
    max-width:1060px;
    padding: 30px 0;
    margin: 0 30px;
    border-top:solid 1px #aaa;
}
.newspage .list_item:last-of-type{
    border-bottom:solid 1px #aaa;
}
.newspage .list_item dt{
    width:120px;
    padding-left:10px;
    white-space:nowrap;
    font-size:16px;
}
.newspage .list_item dt b{
    padding-right: 5px;    
}
.newspage .list_item dt span{
    font-weight: 700;
    padding-right: 5px;
}
.newspage .list_item dd{
    flex:1;
    display:flex;
    font-size:16px;
}
.newspage .list_item dd b.category{
    display: inline-block;
    width:120px;
    height:26px;
    padding: 2px 5px 3px 5px;
    border-radius: 5px;
    text-align: center;
    font-weight:400;
    color:#fff;
    font-size:14px;
    margin: 0 20px 0 0;
}
.newspage .list_item dd b.cate-news{
    background:#bb6b41;
}
.newspage .list_item dd b.cate-press{
    background:#c19048;
}
.newspage .list_item dd b.cate-media{
    background:#b8a937;
}
.newspage .list_item dd a{
    flex:1;
}
.newspage .news_List{
    margin-bottom:30px;
}
.newspage .pager_wrapper ul.pagination{
    width:fit-content;
    margin:0 auto;
}
.newspage .pager_wrapper ul.pagination li a{
    background: #f5f5f5;
    border: solid 1px #fa8b1b;
    border-radius: 25px;
    margin: 10px;
    height:50px;
    width: 50px;
    display:flex;
    justify-content:center;
    align-items:center;
    color:#fa8b1b;
    font-size:14px;
    font-weight:700;
}
.newspage .pager_wrapper ul.pagination li.active a{
    background:#fa8b1b;
    color:#fff;
}
.newspage .pager_wrapper ul.pagination li a svg{
    fill:#fa8b1b;
    stroke:#fa8b1b;
    width:24px;
}
.newspage .pager_wrapper ul.pagination li.next a{
    background:#ffffff;
    border: none;
    transform: rotate(180deg);
}
.newspage .pager_wrapper ul.pagination li.prev a{
    background:#ffffff;
    border: none;
}


/* news view */

.news-area-top{
    display:flex;
    justify-content:space-between;
}
main.newsview::before{
    display:none;
}
main.newsview::after{
    display:none;
}
.newsview .news_area{
    margin-top:-80px;
}
.newsview div.category{
    display: block;
    width:120px;
    height:26px;
    padding: 2px 5px 3px 5px;
    border-radius: 5px;
    text-align: center;
    font-weight:400;
    color:#fff;
    font-size:14px;
    margin: 0 20px 0 0;
}
.newsview div.cate-news{
    background:#bb6b41;
}
.newsview div.cate-press{
    background:#c19048;
}
.newsview div.cate-media{
    background:#b8a937;
}
.newsview .postdate{
    font-size: 16px;
    font-weight:700;
}
.newsview .newstitle{
    font-size:32px;
    border-bottom: solid 3px #aaa;
    padding-bottom: 10px;
    margin:10px 0 30px 0 ;
}
.newsview .newsarticle{
    font-size: 16px;
    line-height:1.75em;
}
.newsview #pageback{
    display:block;
    color:#fff;
    background:#fa8b1b;
    width: fit-content;
    padding: 10px 50px;
    border-radius:5px;
    margin: 35px auto 0 auto;
    font-size:16px;
}


/* contact client */

.contact-client .inquiry_area h3{
    font-weight:700;
    font-size:clamp(22px,32px,2.6vw);
    text-align:center;
    margin-bottom:40px;
}
.contact-client .inquiry_area h4{
    font-weight:700;
    font-size:clamp(18px,24px,2vw);
    text-align:center;
    margin-bottom:30px;
}
.contact-client dl.inquiry{
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px;
}
.contact-client .inquiry dt{
    width: 27%;
    max-width:280px;
    min-width:180px;
    text-align:right;
    border-top: solid 3px #dbcdae;
    font-size:18px;
    font-weight:700;
    padding: 20px 10px 40px 10px;
    position:relative;
}
.contact-client .inquiry dd{
    width: 71%;
    max-width:780px;
    border-top: solid 1px #aaaaaa;
    padding: 20px 10px 20px 10px;
    white-space: nowrap;
}
.contact-client .inquiry .required::after{
    content:"※必須";
    position: absolute;
    color:#ff0000;
    font-size:14px;
    display:block;
    top:48px;
    right:10px;
}
.contact-client .inquiry select,
.contact-client .inquiry input,
.contact-client .inquiry textarea{
    background: #ebf1f8;
    border:none;
    padding: 9px;
    font-size: 16px;
    width: 100%;
}
.contact-client .inquiry select{
    border-right:solid 12px #ebf1f8;
}
.contact-client .inquiry .half input{
    width: 48.5%; 
}
.contact-client .inquiry .half input:first-of-type{
    margin-right: 3%;
}
.contact-client .inquiry textarea{
    height:10em;
}

.contact-client .privacy{
    padding-left: 27px;
}
.contact-client .privacy dt{
    font-weight: 700;
    font-size: 18px;
    position:relative;
    margin-bottom: 5px;
}
.contact-client .privacy dt:before{
  content:"●";
  color:#fa8b1b;
  font-size:32px;
  position:absolute;
  left: -22px;
  top: -14px;
}
.contact-client .privacy dd{
    font-size: 16px;
    margin-bottom: 25px;
    line-height: 1.75em;
}
.contact-client .consent{
    white-space:nowrap;
    text-align:center;
}
.contact-client .consent input#agree{
    vertical-align:sub;
    width:22px;
    height:22px;
}
.contact-client .consent label{
    display:inline-block;
    margin-left: 8px;
    font-size:16px;
    vertical-align:2px;
}
.contact-client .submitbutton{
    margin:40px auto 0 auto;
    background: #fa8b1b;
    color:#ffffff;
    font-size:16px;
    width: 230px;
    border:none;
    border-radius: 5px;
    display:block;
    padding:13px;
}


/* contact client thanks*/

.contact-client-thanks::before,
.contact-client-thanks::after{
    display:none;
}
.contact-client-thanks h3{
    font-weight:700;
    font-size:clamp(22px,32px,2.6vw);
    text-align:center;
    margin-bottom:40px;
}
.contact-client-thanks h4{
    font-weight:700;
    font-size:clamp(16px,24px,2vw);
    text-align:center;
    margin-bottom:50px;
}
.contact-client-thanks .message_area p{
    width:fit-content;
    line-height: 1.75em;
    margin: 50px auto 0;
    padding: 0 15px;
    font-size:16px;
}
.contact-client-thanks .message_area p span{
    display:inline-block;
    margin-top:20px;
}
.contact-client-thanks .message_area a{
    margin:40px auto 0 auto;
    background: #fa8b1b;
    color:#ffffff;
    font-size:16px;
    width: 230px;
    border:none;
    border-radius: 5px;
    display:block;
    padding:13px;
    text-align:center;
}
.contact-client-thanks .message_area a:hover{
    text-decoration:none;
}


/* contact staff */

.contact-staff .inquiry_area{
    margin-top:-80px;
}
.contact-staff .inquiry_area h3{
    font-weight:700;
    font-size:clamp(22px,32px,2.6vw);
    text-align:center;
    margin-bottom:40px;
}
.contact-staff .inquiry_area h4{
    font-weight:700;
    font-size:clamp(18px,24px,2vw);
    text-align:center;
    margin-bottom:30px;
}
.contact-staff dl.inquiry{
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px;
}
.contact-staff .inquiry dt{
    width: 27%;
    max-width:280px;
    min-width:180px;
    text-align:right;
    border-top: solid 3px #dbcdae;
    font-size:18px;
    font-weight:700;
    padding: 20px 10px 40px 10px;
    position:relative;
}
.contact-staff .inquiry dd{
    width: 71%;
    max-width:780px;
    border-top: solid 1px #aaaaaa;
    padding: 20px 10px 20px 10px;
    white-space: nowrap;
}
.contact-staff .inquiry .required::after{
    content:"※必須";
    position: absolute;
    color:#ff0000;
    font-size:14px;
    display:block;
    top:48px;
    right:10px;
}
.contact-staff .inquiry select,
.contact-staff .inquiry input,
.contact-staff .inquiry textarea{
    background: #ebf1f8;
    border:none;
    padding: 9px;
    font-size: 16px;
    width: 100%;
}
.contact-staff .inquiry select{
    border-right:solid 12px #ebf1f8;
}
.contact-staff .inquiry .half input,
.contact-staff .inquiry .half select{
    width: 48.5%; 
    height:42px;
}
.contact-staff .inquiry .half p{
    font-size:16px;
    margin:15px 0 5px;
}
.contact-staff .inquiry .half p:first-of-type{
    margin:3px 0 5px;
}

.contact-staff .inquiry .half input:first-of-type{
    margin-right: 3%;
}
.contact-staff .inquiry .half .half-inner{
    display:flex;
    justify-content: space-between;
}
.contact-staff .inquiry textarea{
    height:10em;
}

.contact-staff .privacy{
    padding-left: 27px;
}
.contact-staff .privacy dt{
    font-weight: 700;
    font-size: 18px;
    position:relative;
    margin-bottom: 5px;
}
.contact-staff .privacy dt:before{
  content:"●";
  color:#fa8b1b;
  font-size:32px;
  position:absolute;
  left: -22px;
  top: -14px;
}
.contact-staff .privacy dd{
    font-size: 16px;
    margin-bottom: 25px;
    line-height: 1.75em;
}
.contact-staff .consent{
    white-space:nowrap;
    text-align:center;
}
.contact-staff .consent input#agree{
    vertical-align:sub;
    width:22px;
    height:22px;
}
.contact-staff .consent label{
    display:inline-block;
    margin-left: 8px;
    font-size:16px;
    vertical-align:2px;
}
.contact-staff .submitbutton{
    margin:40px auto 0 auto;
    background: #fa8b1b;
    color:#ffffff;
    font-size:16px;
    width: 230px;
    border:none;
    border-radius: 5px;
    display:block;
    padding:13px;
}


/* contact staff thanks */

.contact-staff-thanks::before,
.contact-staff-thanks::after{
    display:none;
}
.contact-staff-thanks h3{
    font-weight:700;
    font-size:clamp(22px,32px,2.6vw);
    text-align:center;
    margin-bottom:40px;
}
.contact-staff-thanks h4{
    font-weight:700;
    font-size:clamp(16px,24px,2vw);
    text-align:center;
    margin-bottom:50px;
}
.contact-staff-thanks .message_area p{
    width:fit-content;
    line-height: 1.75em;
    margin: 50px auto 0;
    padding: 0 15px;
    font-size:16px;
}
.contact-staff-thanks .message_area p span{
    display:inline-block;
    margin-top:20px;
}
.contact-staff-thanks .message_area a{
    margin:40px auto 0 auto;
    background: #fa8b1b;
    color:#ffffff;
    font-size:16px;
    width: 230px;
    border:none;
    border-radius: 5px;
    display:block;
    padding:13px;
    text-align:center;
}
.contact-staff-thanks .message_area a:hover{
    text-decoration:none;
}


/* privacy */

.privacypolicy .page_content{
  margin-top:-80px;
}
.privacypolicy .page_content p{
    font-size:16px;
}
.privacypolicy::before,
.privacypolicy::after{
  display:none;
}
.subpage .page_content h3{
  font-size:clamp(22px,32px,2.6vw);
  font-weight:700;
  text-align:center;
  margin-bottom:40px;
}
.privacypolicy .intro{
  font-size:16px;
  line-height:1.75em;
  margin-bottom:30px;
}
.privacypolicy .privacy_list{
  padding-left:27px;
}
.privacypolicy .privacy_list dt{
  font-weight: 700;
  font-size: 18px;
  position:relative;
  margin-bottom: 5px;
}
.privacypolicy .privacy_list dt:before{
  content:"●";
  color:#fa8b1b;
  font-size:32px;
  position:absolute;
  left: -22px;
  top: -14px;
}
.privacypolicy .privacy_list dd{
  font-size: 16px;
  margin-bottom: 25px;
  line-height: 1.75em;
}
.privacypolicy .privacy_list dd p{
  line-height:1.75em;
  margin-bottom:1em;
}
.privacypolicy .contact{
  background:#f5f5f5;
  width:80%;
  max-width:820px;
  padding:20px 30px;
  margin:40px auto 40px;
}
.privacypolicy .contact h4{
    font-size:16px;
    line-height: 1.75em;
}
.privacypolicy .contact p{
  margin-bottom:1em;
  line-height: 1.75em;
  font-size:16px;
}
.privacypolicy .contact p:last-of-type{
  margin-bottom:0;
}


/* rules */

.rules .page_content{
    margin-top:-80px;
}
.rules p{
    line-height: 1.75em;
    font-size:16px;
}
.rules .page_content h3{
    font-size:clamp(22px,32px,2.6vw);
    font-weight:700;
    text-align:center;
    margin-bottom:40px;
}
.rules .intro{
    font-size:16px;
    line-height:1.75em;
    margin-bottom:30px;
}
.rules .privacy_list{
    padding-left:27px;
}
.rules .rules_list h4{
    font-size:clamp(16px,18px,1.8vw);
    font-weight: 700;
    margin: 2em 0 1em 0;
}
.rules li{
    line-height:1.75em;
}
.rules .list_layer1 li{
    margin-bottom:1.5em;
    font-size:16px;
}
.rules .list_layer2{
    margin: 0.5em 0 1em;
}
.rules .list_layer2 li{
    margin-bottom:0.2em;
    font-size:15px;
}
.rules .list_layer3{
    margin: 0.5em 0 1em 0;
}
.rules .list_layer3 li{
    margin-bottom:0.25em;
    font-size:14px;
}
.rules .list_layer4{
    margin-left:15px;
}
.rules .list_decimal{
    list-style-type:decimal;
    padding-left: 20px;
}
.rules .list_lower-roman{
    list-style-type:lower-roman;
    padding-left: 30px;
}
.rules .list_dot{
    list-style-type:'・ ';
    padding-left: 14px;
}
.rules .purpose{
    margin-top:50px;
}
.rules .purpose h3{
    font-size:24px;
    border-bottom:solid 3px #aaa;
    text-align:left;
    padding-bottom:7px;
    margin-bottom:20px;
}
.rules .purpose h4{
    margin-bottom:0.5em;
}
.rules .info_business{
    padding-left:16px;
    list-style-type:"●";
}
.rules .info_business li{
    margin-bottom:0.5em;
}
.rules .info_corp{
    background:#f5f5f5;
    width:80%;
    max-width:820px;
    padding: 20px 30px;
    margin: 1em auto 1.5em;
    line-height: 1.75em;
}
.rules h5{
    margin-bottom: 0.25em;
}




@media(max-width:768px){
    div.main-section{margin-top:0px;}
    footer p.address{
        margin-top: 10px;
    }
    .subpage .service_link h3 {
        line-height: 1.5em;
    }
    main.subpage{
        margin: 0px;
    }
    main.subpage::after{
        background-size: 50% auto;
    }
    main.subpage::before{
        background-size: 50% auto;
        background-position: right;
    }
    main.subpage .page_title {
        background-size:auto 100% ;
        background-position:center -30px;
    }
    main.subpage .page_title h2::after{
        right:-40vw;
        bottom:-170%;
    }
    .subpage .page_title p::before {
        height: 1000px;
        left: -530px;
        top: -860px;
        width: 670px;
    }
    .subpage .page_title p::after {
        height: 1000px;
        right: -530px;
        top: -860px;
        width: 670px;
    }

    .subpage .service_link{
        padding:40px 20px;
        margin:-70px 0 0 0;
    }
    .subpage .reason{
        flex-direction:column;
    }
    .subpage .reason .sec-image{
        width:60%;
        margin:0 auto;
    }
    .subpage .reason .sec-text{
        width:100%;
        padding: 0 20px;
        margin: 0 0 20px 0;
    }
    .subpage .reason .sec-text h3{
        margin-top:0;
    }
    .business-staff .sec1::after,
    .business-staff .sec3::after,
    .business-staff .sec5::after{
        width:90%;
        height:230px;
        bottom:0px;
        right:-10px;
    }
    .business-staff .sec2::before,
    .business-staff .sec4::before{
        width:90%;
        height:230px;
        bottom:0px;
        left:-10px;
    }
    .subpage .reason .sec-text p{
        margin-top:10px;
    }
    .subpage .service_link_bottom{
        margin-top:50px;
    }
    .subpage .service_link_bottom span{
        margin: 0 auto;
    }
    footer .copyright small.font-inter{
        font-size: 2.8vw;
    }

    .business-client .sec2::after,
    .business-client .sec4::after{
        width:90%;
        height:230px;
        bottom:0px;
        right:-10px;
    }
    .business-client .sec1::before,
    .business-client .sec3::before{
        width:90%;
        height:230px;
        bottom:0px;
        left:-10px;
    }


/* about message(max-width:768px) */

    main.about-message .main_message{
        margin: -40px 0 0 0;
        flex-direction: column;
        align-items: center;
    }
    main.about-message .main_message .main_image{
        padding-right:0;
        max-width:180px;
    }
    main.about-message .main_message .main_text{
        padding:0 15px 40px;
    }
    main.about-message .main_message .main_text h3{
        font-size: 20px;
        margin: 20px;
        text-align:center;
    }
    main.about-message .main_message .main_text p{
        font-size:14px;
    }
    main.about-message .main_text .righttx {
        font-size:16px;
    }


/* about company(max-width:768px) */

    .about-company .company_data{
        margin:-50px 0 0 0;
    }
    .about-company table{
        margin: 0 10px;
    }
    .about-company th{
        border-right: solid 10px #ffffff;
        font-size: 13px;
        padding: 10px;
    }
    .about-company td{
        padding: 10px;
        font-size: 13px;
    }
    .about-company td ul{
        margin-left: 8px;
    }
    .link_marginrate{
        padding: 10px;
        margin: 20px 10px 40px 10px;
        font-size: 13px;
    }
    .accses_hdd{
        padding: 0 10px;
    }
    .listmap iframe{
        height: 500px;
    }
    .accses_hdd strong{
        font-size: 13px;
    }
    .accses_hdd p{
        font-size: 13px;
    }


/* about advisor(max-width:768px) */

.about-advisor .advisor_data{
    padding-bottom:0px;
    margin-bottom:30px;
}
.about-advisor .advisor_data:first-of-type{
    margin-top:-30px;
}
.about-advisor .advisor_data:last-of-type{
    margin-bottom:0px;
}
.about-advisor .data_top{
    display:flex;
    flex-direction: column;
    justify-content: flex-start;
}
.about-advisor .data_top .data_top_left{
    margin: 0 auto;
}
.about-advisor .data_top .data_top_left h3{
    top:0;
    left: 20px;
    font-size: 22px;
}
.about-advisor .data_top .data_top_left img{
    width:240px;
    margin: 50px auto 0 auto;
}
.about-advisor .data_top .data_top_right{
    width: 100%;
    padding:20px 20px 10px 20px;
}
.about-advisor .data_top .data_top_right p{
    margin-bottom:6px;
    font-size:14px;
    line-height:1.75em;
}
.about-advisor .data_bottom{
    padding: 0 20px 20px 20px;
}
.about-advisor .data_bottom h4{
    margin-top:12px;
    margin-bottom:10px;
    font-size:16px;
}
.about-advisor .data_bottom section{
    padding-bottom:12px;
}
.about-advisor .data_bottom section .list_area{
    justify-content: flex-start;
    flex-direction: column;
}
.about-advisor .data_bottom ul,
.about-advisor .data_bottom dl{
    width:100%;
    margin-bottom: 0px;
}
.about-advisor .data_bottom dt,
.about-advisor .data_bottom dd{
    margin-bottom: 10px;
    display:inline-block;
    font-size:13px;
}
.about-advisor .data_bottom dt{
    width: 35%;
}
.about-advisor .data_bottom dd{
    width: 65%;
}
.about-advisor .data_bottom ul{
    padding-left:11px;
}
.about-advisor .data_bottom li{
    font-size:13px;
    margin-bottom: 6px;
    padding-left:7px;
    line-height:1.75em;
}
.about-advisor .data_bottom .award_list dt{
    width:20%;
}
.about-advisor .data_bottom .award_list dd{
    width:80%;
}
.about-advisor .img_caption{
    font-size:13px;
}


/* about marginrate(max-width:768px) */

    .about-marginrate .marginrate{
        margin:-30px 0 30px 0;
        padding: 0 15px;
    }
    .about-marginrate .marginrate h3{
        font-size: 24px;
    }
    .about-marginrate .marginrate .corp p{
        font-size: 14px;
    }
    .about-marginrate .marginrate_list{
        margin-left:32px;
    }
    .about-marginrate .marginrate_list li{
        font-size:18px;
        margin-bottom:18px;
    }
    .about-marginrate .marginrate_list li span{
        font-size:14px;
    }


/* news(max-width:768px) */

.newspage .dropleft {
    margin: -50px 0 10px 0;
    padding: 0 20px 0 20px;
}
.newspage .news_area{
    border-top:solid 3px #aaa;
    position:relative;
    margin: 0 20px;
}
.newspage .news_area_header h3{
    position:absolute;
    top:-43px;
}
.newspage .dropleft button{
    font-size:13px;
}
.newspage .dropleft .dropdown-menu{
    font-size:13px;
}
.newspage .news_area_header h3 b{
    font-size:22px;
    margin-right:5px;
}
.newspage .news_area_header h3 span{
    font-size:13px;
}
.newspage .news_sort_button{
    justify-content:space-between;
    padding:20px 0px 5px;
    flex-wrap: wrap;
}
.newspage .news_sort_button a{
    width:48%;
    padding: 4px;
    margin-bottom:15px;
    font-size: 14px;
}
.newspage .news_sort_button .icon{
    display:none;
}
.newspage .list_item {
    display: block;
    max-width: 1060px;
    padding: 15px 0;
    margin: 0;
    border-top: solid 1px #aaa;
}
.newspage .list_item dt{
    width:100%;
    padding-left:10px;
    white-space:nowrap;
    font-size:14px;
    margin-bottom:7px;
}
.newspage .list_item dd{
    position:relative;
}
.newspage .list_item dd b.category{
    font-size:11px;
    width: 80px;
    height:21px;
    position:absolute;
    margin:0;
    top:-27px;
    left:100px;
    padding: 1px 5px 1px 5px;
}
.newspage .list_item dd a{
    font-size: 14px;
    margin-left:10px;
}
.newspage .news_List{
    margin-bottom:15px;
}
.newspage .pager_wrapper ul.pagination li a{
    border-radius: 20px;
    margin: 5px 5px 25px 5px;
    height: 40px;
    width: 40px;
    font-size: 13px;
}


/* news view(max-width:768px) */

.newsview .news_area{
    padding: 0 15px;
    margin:-50px 0 40px 0;
}
.newsview div.category{
    width:80px;
    height:21px;
    padding: 1px 5px 1px 5px;
    font-size:11px;
    margin: 0 10px 0 0;
}
.newsview .postdate{
    font-size: 14px;
}
.newsview .newstitle{
    font-size:24px;
}
.newsview #pageback{
    margin: 20px auto 0 auto;
}
.newsview .newsarticle{
    font-size: 14px;
}


/* contact client(max-width:768px) */

.contact-client .inquiry_area{
    margin-top:-50px;
}
.contact-client .inquiry_area h3{
    margin-bottom:20px;
}
.contact-client .inquiry_area h4{
    margin-bottom:30px;
}
.contact-client dl.inquiry{
    padding: 0 15px ;
    margin-bottom: 30px;
}
.contact-client .inquiry dt{
    width: fit-content;
    min-width:auto;
    font-size:14px;
    padding: 0px 5px 7px 0px;
    text-align:left;
    border:none;
}
.contact-client .inquiry dd{
    width:100%;
    border:none;
    padding: 0 0 20px 0;
    border-bottom:solid 1px #aaa;
    margin-bottom:20px;
}
.contact-client .inquiry .required::after{
    font-size:12px;
    top:0px;
    right:-40px;
}
.contact-client .inquiry select,
.contact-client .inquiry input,
.contact-client .inquiry textarea{
    padding: 5px;
    font-size: 14px;
}
.contact-client .privacy{
    padding: 0 20px 0 37px;
}
.contact-client .privacy dt{
    font-size: 14px;
    margin-bottom: 5px;
}
.contact-client .privacy dt:before{
    font-size:23px;
    position:absolute;
    left: -18px;
    top: -9px;
}
.contact-client .privacy dd{
    font-size: 14px;
    margin-bottom: 25px;
    line-height: 1.75em;
}
.contact-client .consent input#agree{
    width:18px;
    height:18px;
}
.contact-client .consent label{
    font-size:14px;
}
.contact-client .submitbutton{
    margin:40px auto 40px auto;
    font-size:14px;
    padding:12px;
}


/* contact client thanks(max-width:768px)*/

.contact-client-thanks h3{
    margin-bottom:30px;
    padding: 0 15px;
}
.contact-client-thanks h4{
    margin-bottom:40px;
    padding: 0 15px;
}
.contact-client-thanks .message_area p{
    margin: 40px auto 0;
    font-size:14px;
    padding: 0 15px;
}
.contact-client-thanks .message_area a{
    margin:40px auto 40px auto;
    font-size:14px;
    padding:12px;
}


/* contact staff(max-width:768px) */

.contact-staff .inquiry_area{
    margin-top:-50px;
}
.contact-staff .inquiry_area h3{
    margin-bottom:20px;
}
.contact-staff .inquiry_area h4{
    margin-bottom:30px;
}
.contact-staff dl.inquiry{
    padding: 0 15px ;
    margin-bottom: 30px;
}
.contact-staff .inquiry dt{
    width: fit-content;
    max-width:none;
    min-width:auto;
    font-size:14px;
    padding: 0px 5px 7px 0px;
    text-align:left;
    border:none;
}
.contact-staff .inquiry dd{
    width:100%;
    border:none;
    padding: 0 0 20px 0;
    border-bottom:solid 1px #aaa;
    margin-bottom:20px;
}
.contact-staff .inquiry .required::after{
    font-size:12px;
    top:0px;
    right:-40px;
}
.contact-staff .inquiry select,
.contact-staff .inquiry input,
.contact-staff .inquiry textarea{
    padding: 5px;
    font-size: 14px;
}
.contact-staff .inquiry .half input,
.contact-staff .inquiry .half select{
    height:31px;
}

.contact-staff .privacy{
    padding: 0 20px 0 37px;
}
.contact-staff .privacy dt{
    font-size: 14px;
    margin-bottom: 5px;
}
.contact-staff .privacy dt:before{
    font-size:23px;
    position:absolute;
    left: -18px;
    top: -9px;
}
.contact-staff .privacy dd{
    font-size: 14px;
    margin-bottom: 25px;
    line-height: 1.75em;
}
.contact-staff .consent input#agree{
    width:18px;
    height:18px;
}
.contact-staff .consent label{
    font-size:14px;
}
.contact-staff .submitbutton{
    margin:40px auto 40px auto;
    font-size:14px;
    padding:12px;
}
.half p{
    font-size: 13px;
}


/* contact staff thanks(max-width:768px) */

.contact-staff-thanks h3{
    margin-bottom:30px;
    padding: 0 15px;    
}
.contact-staff-thanks h4{
    margin-bottom:40px;
    padding: 0 15px;
}
.contact-staff-thanks .message_area p{
    margin: 40px auto 0;
    font-size:14px;
    padding: 0 15px;
}
.contact-staff-thanks .message_area a{
    margin:40px auto 40px auto;
    font-size:14px;
    padding:12px;
}


/* privacy(max-width:768px) */

.privacypolicy .page_content{
  padding: 0 15px;
}
.privacypolicy .page_content h3{
  margin-bottom:30px;
}
.privacypolicy .intro{
  font-size:14px;
  margin-bottom:20px;
}
.privacypolicy .privacy_list{
  padding-left:18px;
}
.privacypolicy .privacy_list dt{
  font-size: 16px;
  margin-bottom: 5px;
}
.privacypolicy .privacy_list dt:before{
    font-size:23px;
    position:absolute;
    left: -18px;
    top: -9px;
}
.privacypolicy .privacy_list dd{
  font-size: 16px;
  margin-bottom: 25px;
  line-height: 1.75em;
}
.privacypolicy .privacy_list dd p{
  font-size: 14px;
}
.privacypolicy .contact{
  width:100%;
  padding:20px 20px;
  margin:30px auto 40px;
  font-size:14px;
}
.privacypolicy .contact p{
  font-size:14px;
}
.privacypolicy .page_content p {
    font-size: 14px;
}

/* rules(max-width:768px) */

.rules .page_content{
    padding: 0 15px;
}
.rules .page_content h3{
    margin-bottom:25px;
}
.rules .intro{
    font-size:14px;
    margin-bottom:20px;
}
.rules .list_layer1 li{
    margin-bottom:0.5em;
    font-size:14px;
}
.rules .list_layer2 li{
    font-size:13px;
}
.rules .list_layer3 li{
    margin-bottom:0.25em;
    font-size:12px;
}
.rules .list_layer4{
    margin-left:15px;
}
.rules .list_decimal{
    padding-left: 16px;
}
.rules .list_dot{
    padding-left: 8px;
}

.rules .purpose{
    margin-top:30px;
}
.rules .purpose h3{
    font-size:18px;
    margin-bottom:10px;
}
.rules .purpose p{
    font-size: 14px;
}
.rules .purpose li{
    font-size: 14px;
}
.rules .info_corp{
    width:100%;
}
.rules .info_business{
    padding-left:0;
}

}




