@charset "UTF-8";
/*  common
================================================ */
/*  02_base
================================================ */
html { overflow: auto; }

body { min-width: 320px; font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif; color: #555; font-size: 1.4rem; line-height: 2; letter-spacing: .06em; overflow: hidden; -webkit-text-size-adjust: 100%; }

@media all and (min-width: 600px) { body { font-size: 1.7rem; min-width: 1100px; } }

body.sg { height: auto; }

a { color: inherit; text-decoration: underline; }

@media all and (min-width: 600px) { a:hover { text-decoration: none; }
  a[href^=tel] { pointer-events: none; } }

.alpha { display: block; text-decoration: none; }

@media all and (min-width: 600px) { .alpha { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  .alpha:hover { opacity: .7; } }

input, button, textarea, select { -webkit-appearance: none; -moz-appearance: none; appearance: none; }

input[type="button"], input[type="text"], input[type="submit"], input[type="image"], textarea { -webkit-appearance: none; border-radius: 0; }

img { width: 100%; height: auto; }

/* pc <--> sp
-------------------------------------- */
#mediaQuery { display: none; font-family: 'sp'; }

@media all and (min-width: 600px) { #mediaQuery { font-family: 'pc'; } }

@media all and (max-width: 599px) { .viewPc { display: none !important; } }

@media all and (min-width: 600px) { .viewSp { display: none !important; } }

/* font
-------------------------------------- */
.is_font_roboto { font-family: 'Roboto Condensed', sans-serif; }

/* font
-------------------------------------- */
.is_font_serif { font-family: 'Noto Serif JP', serif; }

/* clearfix
-------------------------------------- */
.cf:after { content: ''; display: block; clear: both; }

/* layout
-------------------------------------- */
#wrapper { position: relative; }

@media all and (min-width: 600px) { #wrapper { padding-top: 110px; } }

/* #breadcrumb
================================================ */
#breadcrumb .list { padding: 8px 10px 25px; }

#breadcrumb .list .item { display: inline-block; }

#breadcrumb .list .item + .item { padding-left: 5px; }

#breadcrumb .list .item + .item:before { content: ">"; margin-right: 4px; }

/* #gFooter
================================================ */
#gFooter { padding-bottom: 55px; }

#gFooter .footerIn { background: url(../img/common/footer/bg_footer01_sp.png) 50% 0 no-repeat; background-size: cover; padding: 42px 0 30px; }

#gFooter .footerIn .ftMain .ftTxt { padding: 0 10px; }

#gFooter .footerIn .ftMain .ftTxt .txt { font-size: 1.3rem; color: #fff; font-weight: 500; margin-bottom: 14px; }

#gFooter .footerIn .ftMain .ftTxt .txtImg { width: 232.5px; margin-bottom: 58px; }

#gFooter .footerIn .ftContact { position: relative; }

#gFooter .footerIn .ftContact::before { content: "※2016年12月～2022年12月 相談件数4000件突破"; position: absolute; bottom: -2em; right: 0; font-size: .625em; text-align: center;}

#gFooter .footerIn .ftContact .box { background-color: #fff; border-radius: 10px; box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.12); padding: 15px 15px 20px; box-sizing: border-box; }

#gFooter .footerIn .ftContact .box .tit { text-align: center; color: #1d86c6; font-size: 1.3rem; font-weight: bold; margin-bottom: 6px; letter-spacing: 0.24em; padding: 0 0 0 56px; }

#gFooter .footerIn .ftContact .box .btnTel { margin-bottom: 8px; }

#gFooter .footerIn .ftContact .box .btns { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

#gFooter .footerIn .ftContact .box .btns .btn { width: 49%; }

#gFooter .footerIn .ftContact .imgResult { width: 70px; position: absolute; top: -15px; left: 20px; }

#gFooter .cr { text-align: center; font-size: 1.1rem; color: #b4b9bc; background-color: #ebf3f7; padding: 9px 0; }

#gFooter .ftFix { position: fixed; bottom: 0; left: 0; width: 100%; z-index: 10; }

#gFooter .ftFix .btns { display: -webkit-box; display: -ms-flexbox; display: flex; }

#gFooter .ftFix .btns .btn { width: 22%; }

#gFooter .ftFix .btns .btn a { display: block; text-decoration: none; font-size: 1.2rem; color: #fff; text-align: center; box-sizing: border-box; line-height: 1.2; height: 55px; padding-top: 34px; }

#gFooter .ftFix .btns .btnTel { display: table; width: 56%; }

#gFooter .ftFix .btns .btnTel a { display: table-cell; vertical-align: middle; border: 1px solid #1d86c6; color: #1d86c6; padding: 0; background-color: #fff; }

#gFooter .ftFix .btns .btnTel a .num { font-size: 2.2rem; font-weight: bold; line-height: 1; letter-spacing: -0.08em; display: block; }

#gFooter .ftFix .btns .btnTel a .num:before { content: ''; background: url(../img/common/ico_tel01.png) 0 0 no-repeat; background-size: contain; width: 18px; height: 19px; display: inline-block; margin: 0 5px -1px 0; }

#gFooter .ftFix .btns .btnTel a .time { display: block; font-size: 1.0rem; font-weight: 500; display: inline-block; }

#gFooter .ftFix .btns .btnContact a { background-image: url(../img/common/ico_mail01.png); background-size: 22px auto; background-position: 50% 10px; background-repeat: no-repeat; background-color: #419bd2; }

#gFooter .ftFix .btns .btnRequest a { background-image: url(../img/common/ico_request01.png); background-size: 24px auto; background-position: 50% 8px; background-repeat: no-repeat; background-color: #e78068; }

@media all and (min-width: 600px) { #gFooter { padding-bottom: 0; }
  #gFooter .footerIn { background: url(../img/common/footer/bg_footer01_pc.png) 50% 100% no-repeat; background-size: cover; padding: 110px 0; }
  #gFooter .footerIn .ftMain { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #gFooter .footerIn .ftMain .ftTxt { padding: 45px 0 0; width: 522px; }
  #gFooter .footerIn .ftMain .ftTxt .txt { font-size: 2.2rem; margin-bottom: 35px; }
  #gFooter .footerIn .ftMain .ftTxt .txtImg { width: 391px; margin-bottom: 0; }
  #gFooter .footerIn .ftContact { width: 580px; }
  #gFooter .footerIn .ftContact::before { content: "※2016年12月～2022年12月 相談件数4000件突破"; position: absolute; right: 0; bottom: -2em; padding: 0 1em; font-size: .75em; }
  #gFooter .footerIn .ftContact .box { border-radius: 20px; padding: 49px 0 55px; }
  #gFooter .footerIn .ftContact .box .tit { font-size: 1.8rem; margin-bottom: 17px; letter-spacing: 0.24em; padding: 0; }
  #gFooter .footerIn .ftContact .box .btnTel { text-align: center; margin-bottom: 38px; }
  #gFooter .footerIn .ftContact .box .btnTel a { display: inline-block; }
  #gFooter .footerIn .ftContact .box .btns { display: block; text-align: center; }
  #gFooter .footerIn .ftContact .box .btns .btn { display: inline-block; width: 200px; margin: 4px; }
  #gFooter .footerIn .ftContact .imgResult { width: 120px; position: absolute; top: -25px; left: -10px; }
  #gFooter .cr { font-size: 1.2rem; padding: 23px 0; } }

/* #pagetop
================================================ */
/* #gHeader
================================================ */
#gHeader { border-top: 3px solid #419bd2; }

@media all and (min-width: 600px) { #gHeader { border-top: 4px solid #419bd2; padding-bottom: 28px; position: fixed; top: 0; width: 100%; z-index: 1000; background-color: #fff; }
  #gHeader .gNavIn { width: 1100px; margin: auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

/* #hdInfo
-------------------------------------- */
#hdInfo { position: relative; height: 55px; background: #fff; box-shadow: 1px 1.464px 3px 0px rgba(0, 0, 0, 0.1); }

#hdInfo .logo { float: left; width: 166px; margin: 9px 0 0 10px; }

#hdInfo .btnGnav { position: fixed; top: 3px; right: 0; width: 55px; height: 55px; background: #f5f5f5; cursor: pointer; z-index: 1001; }

#hdInfo .btnGnav .line { position: absolute; left: 17px; width: 20px; height: 1px; content: ''; background: #333; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }

#hdInfo .btnGnav .line:nth-child(1) { top: 13px; }

#hdInfo .btnGnav .line:nth-child(2) { top: 20px; }

#hdInfo .btnGnav .line:nth-child(3) { top: 27px; }

#hdInfo .btnGnav.is_open .line:nth-child(1) { top: 20px; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }

#hdInfo .btnGnav.is_open .line:nth-child(2) { opacity: 0; }

#hdInfo .btnGnav.is_open .line:nth-child(3) { top: 20px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }

#hdInfo .btnGnav .chara { position: absolute; left: 0; bottom: 10px; width: 100%; font-size: 1rem; line-height: 1.2; text-align: center; color: #333; }

@media all and (min-width: 600px) { #hdInfo { height: auto; box-shadow: none; }
  #hdInfo .logo { float: left; width: 248px; margin: 23px 0 0 0; } }

/* #gNav
================================================ */
#gNav { display: none; position: fixed; top: 58px; left: 0; z-index: 2; width: 100%; min-width: 320px; padding: 5px 13px 30px; background: #fff; box-sizing: border-box; -webkit-overflow-scrolling: touch; z-index: 1001; }

@media all and (max-width: 599px) { #gNav { overflow-y: scroll; } }

#gNav .list { margin-bottom: 20px; }

#gNav .list .item { border-bottom: 1px dotted #d5d5d5; }

#gNav .list .item a { display: block; padding: 11px 27px; text-decoration: none; background: url(../img/common/ico_arw01.png) 0 50% no-repeat; background-size: 13px; font-weight: 500; }

#gNav .close { width: 205px; margin: auto; font-weight: 500; text-align: center; color: #1d86c6; padding: 5px 0; border: 1px solid #1d86c6; box-shadow: 1px 1.464px 3px 0px rgba(0, 0, 0, 0.1); }

@media all and (min-width: 600px) { #gNav { position: static; display: block; width: 780px; min-width: auto; padding: 43px 0 0; }
  #gNav .list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 0; }
  #gNav .list .item { border-bottom: none; border-right: 1px dotted #d5d5d5; line-height: 1.2; }
  #gNav .list .item a { padding: 0 20px; background: none; font-size: 1.5rem; box-sizing: border-box; text-align: center; letter-spacing: 0.04em; }
  #gNav .list .item a:hover { color: #888; }
  #gNav .list .item:last-child { border-right: none; }
  #gNav .list .item:last-child a { padding-right: 0; } }

/* hdFix
================================================ */
@media all and (min-width: 600px) { .hdFix { -webkit-animation: hdfix01 1s ease 2s forwards; animation: hdfix01 1s ease 2s forwards; width: 250px; border: 1px solid #1d86c6; border-radius: 6px; box-sizing: border-box; position: fixed; bottom: 25px; right: -1000px; background-color: #fff; z-index: 1000; }
  .hdFix .tit { background-color: #1d86c6; color: #fff; font-size: 1.6rem; font-weight: bold; line-height: 1.5; padding: 6px 20px; border-radius: 6px 6px 0 0; }
  .hdFix .tit span { font-size: 1.4rem; }
  .hdFix .box { padding: 18px; }
  .hdFix .box .btnTel { margin-bottom: 10px; }
  .hdFix .box .btnTel .num { line-height: 1; letter-spacing: -0.06em; font-size: 3.1rem; font-weight: bold; color: #1d86c6; }
  .hdFix .box .btnTel .num:before { content: ''; background: url(../img/common/ico_tel01.png) 0 0 no-repeat; background-size: contain; width: 22px; height: 23px; display: inline-block; margin: 0 5px -1px 0; }
  .hdFix .box .btnTel .time { font-size: 1.1rem; color: #1d86c6; font-weight: 500; line-height: 1.3; }
  .hdFix .box .btns .btn + .btn { margin-top: 5px; }
  .hdFix .box .btns .btn a { display: block; border: 1px solid #fff; color: #fff; font-size: 1.6rem; font-weight: 500; line-height: 1.5; padding: 17px 0 17px 55px; box-sizing: border-box; text-decoration: none; background-repeat: no-repeat; box-shadow: 1px 1.464px 3px 0px rgba(0, 0, 0, 0.2); }
  .hdFix .box .btns .btn.contact a { font-size: 1.4rem; padding: 13px 0 13px 55px; background-color: #419bd2; background-image: url(../img/common/ico_mail01.png), url(../img/common/ico_arw_white01.png); background-size: 28px auto, 8px auto; background-position: 22px 50%, bottom 4px right 4px; }
  .hdFix .box .btns .btn.request a { background-color: #e78068; background-image: url(../img/common/ico_request01.png), url(../img/common/ico_arw_white01.png); background-size: 27px auto, 8px auto; background-position: 20px 50%, bottom 4px right 4px; }
  .hdFix .imgHdFix { width: 111px; position: absolute; top: -22px; right: 0; }
  .hdFix .hdClose { width: 24px; position: absolute; top: -9px; right: -9px; cursor: pointer; }
  .hdFix .hdClose img { vertical-align: top; } }

@-webkit-keyframes hdfix01 { 0% { right: -2000px; }
  100% { right: 20px; } }

/* #overlay
================================================ */
#overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.2); z-index: 1000; }

@media all and (min-width: 600px) { #overlay { display: none !important; } }

/* #mainVisual HOME
================================================ */
@media all and (min-width: 600px) { #mainVisual .mainSlider { max-width: 1400px; margin: auto; } 
.slick-slide { position: relative; }
.js-main-slider .slick-slide::before { content: "※2016年12月～2022年12月 相談件数4000件突破"; position: absolute; right: 0; bottom: 0; padding: 0 1em; font-size: .875em; background: #fff;}
}

/* #mainImg
================================================ */
#mainImg { background-size: cover; padding: 20px 0; text-align: center; }

#mainImg .tit { font-weight: 700; font-size: 2rem; color: #1d86c6; }

@media all and (min-width: 600px) { #mainImg { padding: 60px 0; }
  #mainImg .tit { font-size: 4rem; } }

/* #sidebar
================================================ */
/* .secSidebar
-------------------------------------- */
.secSidebar { margin-bottom: 20px; padding: 0 15px; }

@media all and (min-width: 600px) { .secSidebar { margin-bottom: 25px; padding: 0; } }

/*  js
================================================ */


.viewSp .js-main-slider .slick-slide { position: relative;}
.viewSp .js-main-slider .slick-slide::before { content: "※2016年12月～2022年12月 相談件数4000件突破"; position: absolute; top: 37%; right: 1em; font-size: .625em; text-align: center;}

#mainVisual {
  /* height: 36vw; */
  max-height: 650px;
}

@media all and (max-width: 600px) {
  #mainVisual {
    height: 94vw;
    /*max-height: 350px;*/
    max-height: 93vw;
  }
} 
