@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

body{
    font-family: "Noto Sans JP", sans-serif !important;
}
.fs2{
font-size: 200%;
}
.ac{
text-align: center;
}
.al{
text-align: left;
}
.pc_only{
    display: inline-block;
}
@media screen and (max-width: 768px){
.pc_only{
    display: none;
}
}
.sp_only{
    display: none;
}
@media screen and (max-width: 768px) {
.sp_only{
    display: inline-block;
}
}
.box_wrap{
display: flex;
flex-wrap: wrap;
}
.udcenter{
align-items: center;
}
.lrcenter{
justify-content: center;
}
.sb{
justify-content: space-between;
}
.end{
    justify-content: flex-end;
}
@media screen and (max-width: 768px) {
.end{
    justify-content: center;
}
}
.rv{
    flex-direction: row-reverse;
}
.home figure{
    margin-bottom:20px !important;
}
@media screen and (max-width: 768px) {
.home figure{
    margin-bottom:10px !important;
}
}
.ptmain{
    padding-top:100px;
}
.ptsub{
    padding-top:60px;
}
.pt40{
    padding-top:40px;
}
.pbmain{
    padding-bottom:100px;
}
.pbsub{
    padding-bottom:60px;
}
@media screen and (max-width: 768px) {
.ptmain{
    padding-top:40px;
    }
.ptsub{
    padding-top:20px;
}
.pbmain{
    padding-bottom:40px;
}
.pbsub{
    padding-bottom:20px;
}
body .titleAccent{
    line-height: 1.6 ;
}
body .service__icon {
    top:-20px;
    right: 20px;
    max-width:60px;
    }
    .mainv__title {
    font-size: 32px !important;
}
}


.news__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 28px;
    margin-right: -38px;
}
.news__item {
    width: 33.33%;
    padding-right: 38px;
    padding-bottom: 30px;
}
.Delay100ms {
    -webkit-transition-delay: .1s;
    transition-delay: .1s;
}
.news__card {
    display: block;
}
/*footer*/
.footermenu{
    display: flex;
}
.footermenu .box_wrap{
position: relative;
}
.footermenu .box_wrap a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.footermenu .box_wrap a:hover{
    background-color: rgba(white, 0.6);
}
.footermenu .left{
    width: 30%;
}
@media screen and (max-width: 768px) {
.footermenu{
display: block;
}
.footermenu .left{
    width: 100%;
}
}
.footermenu .flogobox p{
    font-size: 14px;
    margin-bottom: 20px;
}
.footermenu .flogobox img{
width: 60px;
}
.footermenu .flogobox .txt {
    display: block;
    margin-top: 27px;
    margin-left:10px;
    font-family: Oswald, sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 1.4;
    text-transform: uppercase;
    text-align: left;
}
.footermenu .right{
    display: flex;
}
.footermenu .right ul{
    margin-left:3em;
}
.footermenu .right ul li{
margin-bottom: 15px;
}
.footer__asideBtn.tel{
    background-color:#54A4CE !important;
}
.footer__asideBtn.tel img{
    width:20px !important;
}

@media screen and (max-width: 768px) {
.footermenu .right{
    flex-wrap: wrap;
}
.footermenu .right ul{
    width: 100%;
    margin-left:20px;
}
.footermenu .right ul li{
margin-bottom: 10px;
}
.footermenu .right ul li a{
font-size: 14px;
}
.footer__aside{
display: flex;
}
.footer__asideBtn{
    width: 50% !important;
}
.footer__asideBtn.tel img{
    width: auto !important;
}
.footer__asideBtn img{
    width: auto !important;
    height:30px !important;
}
}

.footermenu .right ul li.child{
    padding-left: 30px;
    position: relative;
}
.footermenu .right ul li.child::before{
position: absolute;
    top: 50%;
    left: 5px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    content:'ー';
    color:#CA9B3D;
}
.footermenu .right ul li.contact a{
        background-color:#CA9B3D;
        color:white;
        padding:3px 40px;
        text-align: center;
        display: inline-block;
        width: 200px;
}
.footermenu .right ul li.line a{
        background-color:#24cb55;
        color:white;
        padding:3px 40px;
        text-align: center;
        display: inline-block;
        width: 200px;
}

/*top*/
.okomari .box_wrap{
        position: relative;
        margin-bottom:60px;
}
.okomaribox{
    background-color: #FFFCF1;
    padding:60px;
    border-radius: 40px;
}
@media screen and (max-width: 768px) {
  .okomaribox{
  padding:20px;
    border-radius: 20px;
  }
}
.okomaribox ul{
list-style: none;
}
.okomaribox ul li{
background: url(img/top/icon_check.svg) left 5px no-repeat;
background-size: 28px;
font-size: 120%;
border-bottom:#ECD6A9 2px dotted;
padding:5px 0 5px 40px;
margin-bottom: 5px;
}
@media screen and (max-width: 768px) {
.okomaribox ul li{
font-size: 100%;
background: url(img/top/icon_check.svg) left 8px no-repeat;
background-size: 20px;
padding:5px 0 5px 30px;
  }
}
.okomaribox ul li strong{
    color:#CA9B3D;
    font-weight: bold;
}
.okomari img{
position: absolute;
bottom:-60px;
right:20px;
width: 200px;
}
@media screen and (max-width: 768px) {
.okomari img{
right:0;
width: 100px;
}
}
.home .service h3{
    background-color: #6FB5D9;
    color:white;
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    padding:20px;
    margin:60px 0 20px;
}
@media screen and (max-width: 768px) {
   .home .service h3{
    font-size: 24px;
    padding:10px;
    margin:40px 0 20px;
}
}
.home .service p{
    line-height:2.2;
    font-size: 120%;
}
@media screen and (max-width: 768px) {
.home .service p{
       line-height:1.8;
 font-size: 100%;
}
}
.btnbox{
    margin-top:40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.btnbox .price{
        font-size: 120%;
}
.btnbox .price strong{
        font-size: 250%;
            font-weight: bold;
            margin-left:10px;
}
@media screen and (max-width: 768px) {
.btnbox{
    margin-top:0px;
    display: block;
    text-align: center;
}
.btnbox .price{
        font-size: 100%;
        text-align: right;
        width: 100%;
        margin-bottom: 10px;
}
.btnbox .price strong{
        font-size: 32px;
}
}
.service__icon{
    width: 120px;
}
.home .service::before {
content:none;
}
.reason{
    position: relative;
}
.reason::before {
    content: '';
    position: absolute;
    left: 0;
    top: -160px;
    z-index: -1;
    width: 100%;
    height: 66.3%;
    background: -webkit-linear-gradient(87deg, #f2fdff 69%, transparent 69%);
    background: linear-gradient(-357deg, #f2fdff 69%, transparent 69%);
}
@media screen and (max-width: 768px) {
.reason{
padding-top:60px;
}
.reason::before {
    top: -250px;
}
}
.reason .inner {
    background-color: #F1FDFF;
    padding:40px 0 60px 0;
}
@media screen and (max-width: 768px) {
.reason .box_wrap {
    border-bottom: #54A4CE 1px solid;
    padding-bottom: 5px;
    margin-bottom: 10px;
}
}
.reason .txt{
    width: 65%;
}
.reason .pic{
    width: 30%;
}
.reason h3{
    color:#54A4CE;
    font-size: 24px;
    font-weight: bold;
    margin-bottom:20px;
}
@media screen and (max-width: 768px) {
.reason .txt,.reason .pic{
    width: 100%;
}
.reason .pic{
    margin-top:10px;
}
.reason h3{
    font-size: 20px;
    margin-bottom:10px;
}
}

.flow{
    background-color: #FFFCF1;
}
.flow .flowbox{
    width: 24%;
    margin-left:1%;
    background-color: white;
    border-radius: 20px;
    padding:20px;
    display: flex;
    flex-direction: column;
}
.flow .flowbox figure{
height:40px;
}
.flow .flowbox p{
text-align: left;
}
.flow .flowbox p.step{
color:#CA9B3D;
font-weight: bold;
font-size:22px;
text-align: center;
margin-bottom:20px;
}
.flow .flowbox h3{
margin-bottom:20px;
font-size:24px;
font-weight: bold;
}
@media screen and (max-width: 768px) {
.flow .flowbox{
    width: 100%;
    margin:0 0 20px 0;
}
.flow .flowbox figure{
height:30px;
}
.flow .flowbox p.step{
margin-bottom:0px;
}
.flow .flowbox h3{
font-size:20px;
margin:10px 0;
}
}
.area{
    background-color: #FCFCFC;
}
.area .container{
    background:url(img/top/illust_map.svg) right 40px center no-repeat,white;
    background-size: 120px;
    border-radius: 20px;
    padding:40px;
}
.area h2{
margin-bottom:20px;
}
@media screen and (max-width: 768px) {
.area .container{
    background:url(img/top/illust_map.svg) right 20px center no-repeat,white;
    background-size: 80px;
    padding:20px;
}
.area h2{
margin-bottom:10px;
}
}

.news__cardTitle{
    text-align: left;
}
body .news__item {
    width: calc((100% - 1%) / 3);
    margin-bottom: 5em;
}
body.category-column .news__item {
    margin-bottom: 20px;
    padding-bottom: 0;
}
.news__imgBox img{
    border:#ccc 1px solid;
}
body .news__cardTime{
    margin-top: 0 !important;
}
body .news__imgBox{
    margin-bottom: 20px !important;
}
body.category-column .news__imgBox{
    margin-bottom: 10px !important;
}

@media screen and (max-width: 768px) {
    .news__imgBox{
        margin-bottom:10px !important;
    }
   body .news__item {
 width:100%;
 margin-bottom:20px;
 padding-bottom:0;
   }
   .news__cardThumb img{
 width:100%;
   }
   .news__item+.news__item {
        margin-top: 0px !important;
    }
}
.news.none::before {
    background: none;
}
/*コラム*/
a.window {
  position: relative;
  padding-right: 20px;
  display: inline-block;
}
a.window::before {
  color: #0658ba;
  position: absolute;
  right: 0;
  top: 2px;
  font: var(--fa-font-solid);
  content: "\f2d2";
}
header{
min-height:300px !important;
}
.home header{
min-height:517px !important;
}
@media screen and (max-width: 768px) {
    header,
    .home header{
min-height:260px !important;
    }
    .archive header,
.single header{
min-height:150px !important;
}
.archive header .header__logoBox,
.single header .header__logoBox{
    margin:40px 0 20px 0;
}
.archive header .active .header__logoBox,
.single header .active .header__logoBox {
        margin:0;
    }
}
.archive .header__logoBox,
.single .header__logoBox{
    margin-bottom:20px;
}
.archive .header__logoTextMain,
.single .header__logoTextMain{
margin-top:5px;
}
ul.taglink{
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.taglink.all{
    justify-content: flex-start;
}
ul.taglink li{
background: url(img/news/icon_tag.svg) left center no-repeat;
background-size: 15px;
padding-left:20px;
width: auto;
}
.taglink.all li{
margin-right: 20px;
}
@media screen and (max-width: 768px) {
    ul.taglink{
        margin-bottom:10px;
    }
ul.taglink li{
background: url(img/news/icon_tag.svg) left center no-repeat;
background-size: 10px;
padding-left:10px;
margin-right:5px;
}
.category ul.taglink li{
font-size: 12px;
}
}
.taglink li:first-child{
margin-left: 0;
}
ul.taglink li a:hover{
    color:#54A4CE;
}
.archive.tag ul.taglink,
.archive.category-column ul.taglink{
    justify-content: flex-start;
    flex-wrap: wrap;
}
.archive.tag ul.taglink.only li,
.archive.category-column ul.taglink.only li{
    background: #EBFAFF;
    font-size: 11px;
    padding:2px 4px;
    margin:0 5px 5px 0;
}
.archive.tag ul.taglink.only li:first-child,
.archive.category-column ul.taglink.only li:first-child{
    margin-left: 0;
}
.single-post figure{
    width: 100%;
    margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
.single-post figure{
    margin-bottom: 0px;
}
}
.single-post figure img{
    width: 100%;
    height:auto;
}
.single-post .blog__main img {
    margin: 0;
}
.single-post .blog__main h2{
    padding-bottom:5px;
    font-size: 26px;
}
@media screen and (max-width: 768px) {
.single-post .blog__main h2{
    font-size: 22px;
    line-height: 1.4;
}
}
.single-post .blog__main h2 span{
    font-weight:bold;
}
.single-post .po{
background-color:#d1f0ff;
color:#285a75;
border-radius: 5px;
padding:3px 8px;
font-weight: bold;
margin-right:10px;
}
.single-post .blog__main ol,
.single-post .blog__main ul{
    background-color:#F1FDFF ;
    padding:20px;
    margin-left: 0;
}
.single-post .blog__main ol li,
.single-post .blog__main ul li{
    margin-left: 40px;
    margin-bottom: 20px;
    line-height: 2;
}
@media screen and (max-width: 768px) {
.single-post .blog__main ol li,
.single-post .blog__main ul li{
    margin-left: 30px;
    margin-top: 0;
}
}
.single-post .blog__main ol li::marker{
    color:#54A4CE;
    font-size: 22px;
    font-weight: bold;
}
.single-post .blog__main ul{
   list-style: none;
}
.single-post .blog__main ul li{
    padding-left:20px;
    margin-left: 0;
    position: relative;
}
.single-post .blog__main ul li::before{
    color:#54A4CE;
    content:'●';
    position: absolute;
    top: 0;
    left: 0;
}

.blog__main p.fs2{
font-size: 16px;
}
.single-post .blog__main h3{
    background-color: #6FB5D9;
    color:white;
    padding:10px;
    font-weight: bold;
}
.single-post .blog__main .sq1{
border:#6FB5D9 1px solid;
padding:20px;
margin-bottom:20px;
}
@media screen and (max-width: 768px) {
.single-post .blog__main .sq1{
padding:5px;
}
}
.matomebox{
background-color: #F1FDFF;
padding:40px;
margin:40px 0 20px;
border:#54A4CE 4px double;
}
.blog__main .matomebox ul{
background-color: transparent;
list-style: none;
padding:0;
}
.blog__main .matomebox ul li{
background: url(img/news/icon_matome_check.svg) left 10px no-repeat;
background-size: 20px;
padding-left:30px;
margin-left:0;
}
.blog__main .matomebox ul li::before{
content:none;
}
.blog__main .matomebox ul li::marker{
    content:none;
}
.blog__main .matomebox ul li strong{
    border-bottom: #CA9B3D 2px solid;
    font-weight: bold;
    font-size:18px;
}
.blog__main h2.matome{
color:#54A4CE;
text-align: center;
font-weight: bold;
border-bottom:#54A4CE 3px solid;
margin-bottom:30px;
}
.blog__main h2.matome .ti{
background: url(img/news/icon_matome.svg) left center no-repeat;
background-size: 60px;
padding: 5px 0 5px 70px;
}
@media screen and (max-width: 768px) {
.matomebox{
background-color: #F1FDFF;
padding:10px;
}
.blog__main h2.matome{
    text-align: left;
    padding: 5px 0;
}
.blog__main h2.matome .ti{
background: url(img/news/icon_matome.svg) left center no-repeat;
background-size: 40px;
padding: 5px 0 5px 40px;
}
.blog__main .matomebox ul li strong{
    border-bottom: #CA9B3D 2px solid;
    font-weight: bold;
    font-size:16px;
}
}
.supervisor{
 border:#54A4CE 1px solid;   
 background-color: #FBFBFB;
}
.supervisor p.ti{
background: url(img/news/icon_kanshu.svg) 10px center no-repeat,#f1f1f1;
background-size: 20px;
padding:10px 0 10px 40px;
    font-weight: bold;
    font-size: 18px;
}
.supervisor .pic{
    width: 20%;
}
.supervisor .txt{
    width: 78%;
}
.supervisor .name{
    border-bottom: #707070 1px solid;
    font-size: 18px;
    padding-bottom: 5px;
    margin-bottom: 10px;
}
.supervisor .name .fssm{
font-size: 12px;
}
.supervisor .sub{
    color:#54A4CE;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 5px;
}
@media screen and (max-width: 768px) {
    .supervisor .pic,
    .supervisor .txt{
    width: 95%;
    margin:0 auto;
}
    .supervisor .pic{
        text-align: center;
        width: 40%;
    }
        .supervisor .txt{
        padding-bottom:10px;
    }
.supervisor p.ti,
.supervisor .name,
.supervisor .sub{
    font-size: 14px;
}
.supervisor .name{
    margin-top:10px;
    text-align: center;
}
.supervisor p{
    font-size: 12px;
}
.supervisor p.ti{
    padding:5px 0 5px 25px;
}
.supervisor p.ti{
background: url(img/news/icon_kanshu.svg) 10px center no-repeat,#f1f1f1;
background-size: 10px;
}
}
h2.spe{
     background-color:#54A4CE;   
     color:white;
     font-size: 22px;
     padding:10px;
     margin-bottom:20px;
}
.popularbox .pbox{
width: 32%;
margin: 0 0 20px 1%;
position: relative;
transition: .4s;
}
@media screen and (max-width: 768px) {
.popularbox .pbox{
width: 100%;
margin: 0 0 20px 0;
}
}
.category-column ul li.news__item{
position: relative;
}
.archive ul li.news__item:first-child,
.popularbox .pbox:first-child,
.popularbox .pbox:nth-child(4){
margin: 0 0 20px 0;
}
.category-column .news__imgBox,
.popularbox .pbox .pic figure{
    margin-bottom: 10px;
    overflow: hidden;
}
.popularbox .pbox figure img{
    width: 100%;
}
.popularbox .pbox .blog__date{
justify-content: flex-start;
color:#666;
font-size: 13px;
}
.archive .news__imgBox figure{
margin-bottom: 10px;
}
.archive ul li.news__item a.all,
.popularbox .pbox a.all{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.archive .news__imgBox:hover img,
.popularbox .pbox:hover .pic img{
    transform:scale(1.2,1.2);
    transition:0.4s all;
}
.archive ul li.news__item:hover h3,
.popularbox .pbox:hover h3{
color:#54A4CE;
}
.listbox .box_wrap{
    border-bottom: #54A4CE 1px solid;
    padding-bottom:5px;
    margin-bottom: 10px;
    position: relative;
}
.listbox .box_wrap a.all{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.listbox .date{
    margin-right:20px;
    color:#666;
}
.listbox h3{
    font-weight: bold;
}
.listbox .box_wrap:hover h3{
color:#54A4CE;
}
.category-column ul li.news__item .news__imgBox{
    padding-bottom: 0;
}
.single-post .blog__main strong{
font-size: 17px;
}
.single-post .blog__title{
    font-weight: bold !important;
}
.single-post .cta__inner{
    background-color:#FFF2E5 !important;
}
@media screen and (max-width: 768px) {
.single-post .cta__inner{
padding:20px 0;
}
}
.faq{
    background-color: #F1FDFF;
}
/*TOC*/
#toc_container {
  margin-top: 20px !important;
  padding: 20px 40px !important;
  border:none !important;
  border-top: #54A4CE 4px solid !important;
  background: #F9F9F9;
  width: 100% !important;
}
@media screen and (max-width: 768px) {
  #toc_container {
    padding: 20px !important;
    margin-bottom: 0 !important;
  }
}
#toc_container p.toc_title {
  text-align: center;
  background: url(img/icon_mokuji.png) left 42% center no-repeat;
  background-size: 25px;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  #toc_container p.toc_title {
    background: url(img/icon_mokuji.png) left center no-repeat;
    background-size: 20px;
    padding-left: 30px;
  }
}
#toc_container .no_bullets ul li a {
  margin-bottom: 5px !important;
  display: inline-block !important;
}
#toc_container .toc_number {
  position: relative;
  padding-right: 10px;
  margin-right: 10px;
  font-weight: bold;
  color:#54A4CE;
}
@media screen and (max-width: 768px) {
  #toc_container .toc_number {
    padding-right: 5px;
    margin-right: 0;
  }
}
#toc_container .toc_number:after {
  position: absolute;
  content: "";
  right: -10px;
  top: 0;
}
@media screen and (max-width: 768px) {
  #toc_container .toc_number:after {
    right: -5px;
  }
}
#toc_container .toc_list {
  line-height: 2;
}
#toc_container .toc_list li {
  letter-spacing: 0.1em;
  margin-bottom:10px;
}
#toc_container .toc_list li::before{
content: none;
}
#toc_container .toc_list li a {
  color:black;
}
#toc_container .toc_list li:first-child a {
  display: inline-block;
}
@media screen and (max-width: 768px) {
  #toc_container .toc_list li a {
    font-size: 13px;
  }
}
#toc_container p.toc_title{
  text-align: left !important;
  font-size: 26px;
  color: #54A4CE;
  position: relative;
  background: none !important;
  left: 55px !important;
}
#toc_container p.toc_title::before {
  position: absolute;
  top: 50%;
  left: -55px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font: var(--fa-font-solid);
  content: "\f0ca";
  background-color: #54A4CE;
  color: white;
  width: 50px;
  height: 50px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
#toc_container p.toc_title::before img{
  width: 100%;
  height: auto;
}
#toc_container ul{
  border: none;
}
#toc_container ul li a{
  font-weight: bold;
}
#toc_container ul li ul li a{
  font-weight: normal;
}

/*アコーディオン*/
.toggle {
    display: none;
}
.Label {        /*タイトル*/
    padding: 1em;
    display: block;
    color: #333;
    background:white;
    margin-bottom:1em;
    font-weight: bold;
    border:#CEDDDD 1px solid;
    font-size: 18px;
}
@media screen and (max-width: 768px) {
  .Label {        /*タイトル*/
  padding: 10px 30px 10px 10px;
  margin-bottom: 10px;
  }
}
.Label::before{     /*タイトル横の矢印*/
    content:"";
    width: 8px;
    height: 8px;
    border-top: 2px solid #54A4CE;
    border-right: 2px solid #54A4CE;
    -webkit-transform: rotate(45deg);
    position: absolute;
    top:calc( 50% - 3px );
    right: 20px;
    transform: rotate(135deg);
}
.Label,
.content {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
}
.Label .qcolor{
color:#54A4CE;
padding-right:10px;
}
.content {      /*本文*/
    height: 0;
    margin-bottom:10px;
    padding:0 20px;
    overflow: hidden;
}
.content.none{
margin-bottom:0;
}
.toggle:checked + .Label + .content {   /*開閉時*/
    height: auto;
    padding:0 20px 20px 20px ;
    transition: all .3s;
}
.toggle:checked + .Label::before {
    transform: rotate(-45deg) !important;
}
.home .cta{
    margin-top:0 !important;
}