/* カスタムスタイル - aippearnet.com/column/ のヘッダー・フッター用 */

/*--------------------------------------------------
  header
  ------------------------------------------------*/
.logo_aippear{
  max-width: 1200px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .4em .5em .5em;
  margin: 0 auto;
}

.logo_aippear .logo_box{
  display: flex;
  align-items: center;
}

.logo_aippear a:hover{
  opacity: .7;
}

.logo_aippear .logo_box figure{
  margin-right: 1.2em;
}

.logo_aippear .logo_box figure img{
  max-width: 30vw;
  vertical-align: middle;
}

.logo_aippear .logo_box figcaption{
  color: #111;
  font-size: .7em;
  font-weight: 700;
}

.logo_aippear .logo_box figcaption span:first-child{
  margin-right: 5px;
  margin-left: -5px;
}

.logo_aippear .logo_box figcaption span:last-child{
  color: #fff;
  display: block;
  line-height: 1.8;
  margin-top: .1em;
  position: relative;
  z-index: 1;
}

.logo_aippear .logo_box figcaption span:last-child:before{
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #008cd7, #0fa2a5);
  transform: skew(-20deg);
  top: -1px;
  left: -.6em;
  z-index: -1;
}

.logo_aippear .cv_box{
  display: none;
}

.logo_aippear .cv_box img{
  vertical-align: middle;
}

/*--------------------------------------------------
  header info
  ------------------------------------------------*/
.c-infoBar{
  border-bottom: 1px #ddd solid;
}

.c-infoBar__text.-flow-off{
  display: flex;
  justify-content: center;
  padding: .5em;
}

.c-infoBar__text .info_txt{
  margin-bottom: .3em;
}

.c-infoBar__text .info_txt p{
  color: #008cd7;
  margin-left: -.5em;
}

.c-infoBar__text .info_txt em{
  margin: 0 -.3em;
}

.c-infoBar__text .info_txt a{
  text-decoration: underline;
  margin-left: 1.5em;
  position: relative;
}

.c-infoBar__text .info_txt a:before{
  content: '\e93b\e93b';
  color: #008cd7;
  font-size: .7em;
  font-family: icomoon;
  letter-spacing: -3px;
  text-decoration: none;
  position: absolute;
  top: 50%;
  left: -1.8em;
  transform: translateY(-50%);
}

.c-infoBar__text .info_txt a:hover{
  text-decoration: none;
}

.c-infoBar__text .cv_btn{
  display: flex;
  width: 100%;
}

.c-infoBar__text .cv_btn li{
  flex: 1;
}

.c-infoBar__text .cv_btn li:not(:last-child){
  margin-right: .6em;
}

.c-infoBar__text .c-infoBar__btn{
  font-size: .9em;
  border-radius: 4px;
  padding: .4em 0 .3em 1.4em;
  margin-left: 0;
}

.c-infoBar__text .cv_btn li a{
  position: relative;
}

.c-infoBar__text .cv_btn li.demo a{
  background-color: #f74a4a !important;
}

.c-infoBar__text .cv_btn li a span{
  position: relative;
}

.c-infoBar__text .cv_btn li a span:before{
  content: '\e93b';
  font-size: .7em;
  font-family: icomoon;
  position: absolute;
  top: 50%;
  left: -1.3em;
  transform: translateY(-50%);
}

.c-infoBar__text .cv_btn li a em{
  margin-left: -.4em;
}

.-txt .c-headLogo__link {
    font-size: 4vw;
}
@media (min-width: 600px) {
    .-txt .c-headLogo__link {
        font-size: 22px;
    }
}

/*--------------------------------------------------
  footer
  ------------------------------------------------*/
footer .l-footer__widgetArea{
  padding-top: 2em;
  padding-bottom: 2em;
}

footer .l-footer__widgetArea .l-container{
  display: flex;
  flex-flow: column-reverse;
}

footer .w-footer__right{
  margin-bottom: 1.9em;
}

footer .w-footer__box{
  padding: 0;
}

footer .w-footer__right .w-footer__box{
  margin-top: 0;
  margin-bottom: 1.4em;
}

footer .l-footer__foot{
  background: #fff;
}

/*--------------------------------------------------
  footer menu
  ------------------------------------------------*/
footer .c-widget__title.-footer{
  padding: 0;
}

footer .c-widget__title.-footer:before,
footer .c-widget__title.-footer:after{
  content: none;
}

footer .c-widget__title{
  margin-bottom: .7em;
}

footer .c-listMenu li{
  padding: 0 0 0 1.5em;
  position: relative;
}

footer .c-listMenu li:before{
  content: '－';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

footer .c-listMenu li:not(:last-child){
  margin-bottom: .3em;
}

footer .c-listMenu a{
  display: inline-block;
  border-bottom: none;
  padding: 0;
}

footer .c-listMenu a:before{
  content: none;
}

footer .c-listMenu a:hover{
  padding-left: 0;
  padding-right: 0;
  background-color: transparent;
  text-decoration: underline;
}

/*--------------------------------------------------
  footer cv btn
  ------------------------------------------------*/
footer ul.cv_btn li:not(:last-child){
  margin-bottom: .8em;
}

footer ul.cv_btn li a{
  color: #fff;
  font-weight: 700;
  border: 1px #fff solid;
  border-radius: 6px;
  display: block;
  padding: .8em 1em .8em 1.6em;
  overflow: hidden;
  position: relative;
}

footer ul.cv_btn li a:before{
  content: '\e93b';
  font-size: .7em;
  font-family: icomoon;
  position: absolute;
  top: 50%;
  left: 8px;
  transform: translateY(-50%);
}

footer ul.cv_btn li a:after{
  content: '';
  position: absolute;
  right: 8px;
  bottom: 0;
  transition: all .3s;
}

footer ul.cv_btn li a:hover{
  text-decoration: none;
}

footer ul.cv_btn li.demo a:hover{
  background: #f74a4a;
}

footer ul.cv_btn li.demo a:after{
  background: url(../img/footer/menu_demo.webp) no-repeat 0 0;
  background-size: 100%;
  width: 54px;
  height: 36px;
}

footer ul.cv_btn li.documentu a:hover{
  background: #008cd7;
}

footer ul.cv_btn li.documentu a:after{
  background: url(../img/footer/menu_document.webp) no-repeat 0 0;
  background-size: 100%;
  width: 46px;
  height: 40px;
}

/*--------------------------------------------------
  media info - desc
  ------------------------------------------------*/
footer .desc p.ttl{
  color: #0055a7;
  font-weight: 700;
  background: #fff;
  padding: .8em 1em .6em;
  margin-bottom: 1.5em;
  position: relative;
}

footer .desc p.ttl:before{
  content: '';
  position: absolute;
  left: 30px;
  bottom: -20px;
  border: 10px solid transparent;
  border-top: 12px solid #fff;
}

footer .desc p.ttl .adjust{
  font-size: 3.3vw;
  letter-spacing: -.5px;
  margin: 0 -.3em;
}

footer .desc .txt_box{
  margin-bottom: 1.16em;
}

/*--------------------------------------------------
  media info - sns
  ------------------------------------------------*/
footer .sns_box{
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border-top: 1px #fff solid;
  border-bottom: 1px #fff solid;
  padding: 1.16em 0;
  margin-bottom: 1.16em;
}

footer .sns_box p.ttl{
  font-weight: 700;
  margin-right: 1em;
}

footer .sns_link{
  display: flex;
}

footer .sns_link li:not(:last-child){
  margin-right: .5em;
}

footer .sns_link li i{
  color: #111;
  width: 6vw;
  height: 6vw;
  background: #fff;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

footer .sns_link li i:hover{
  color: #0055a7;
  transform: rotate(360deg);
  transition: 1s; 
}

footer .sns_link li i.icon-facebook:before{
  font-size: 3.8vw;
}

footer .sns_link li i.icon-twitter-x:before{
  font-size: 3.4vw;
}

/*--------------------------------------------------
  media info - menu company
  ------------------------------------------------*/
footer .menu_company ul{
  font-size: 0;
}

footer .menu_company li{
  display: inline-block;
  position: relative;
}

footer .menu_company li:not(:first-child):before{
  content: '';
  background: #fff;
  width: 1px;
  height: 15px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

footer .menu_company li a{
  font-size: 3.2vw;
}

footer .menu_company li a:hover{
  text-decoration: underline;
}

footer .menu_company li:not(:first-child) a{
  margin-left: 1em;
}

footer .menu_company li:not(:last-child) a{
  margin-right: 1em;
}

/*--------------------------------------------------
  footer fixed menu
  ------------------------------------------------*/
#fix_bottom_menu{
  box-shadow: none;
  border-top: 1px #ddd solid;
}

#fix_bottom_menu .menu_list{
  padding: 0;
}

#fix_bottom_menu .menu-item,
#fix_bottom_menu .menu-item a{
  height: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center
}

/*#fix_bottom_menu .menu_list .menu-item-216,*/
#fix_bottom_menu .menu_list .menu-item-2648{
  order: 1;
}

/*#fix_bottom_menu .menu_list .menu-item-217,*/
#fix_bottom_menu .menu_list .menu-item-2649{
  order: 2;
}

/*#fix_bottom_menu .menu_list .menu-item-216 a,
#fix_bottom_menu .menu_list .menu-item-217 a,*/
#fix_bottom_menu .menu_list .menu-item-2648 a,
#fix_bottom_menu .menu_list .menu-item-2649 a{
  color: #fff;
}

/*#fix_bottom_menu .menu_list .menu-item-216 a,*/
#fix_bottom_menu .menu_list .menu-item-2648 a{
  background: #f74a4a;
}

/*#fix_bottom_menu .menu_list .menu-item-217 a,*/
#fix_bottom_menu .menu_list .menu-item-2649 a{
  background: #008cd7;
}

#fix_bottom_menu .menu-item a span em{
  display: none;
}

@media (min-width: 360px) {
#fix_bottom_menu .menu-item a span em{
  display: inline-block;
  margin: 0 -.3em;
}
}

/*--------------------------------------------------
  footer fixed
  ------------------------------------------------*/
.footer_fixed.p-fixBtnWrap{
  display: none;
}

.footer_fixed{
  width: 100%;
  background: #e0efff;
  border-top: 1px #ddd solid;
  position: fixed;
  bottom: 0;
  z-index: 2;
}

.footer_fixed.p-fixBtnWrap{
  display: block;
  bottom: 0;
  right: 0;
}

.footer_fixed .content{
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.footer_fixed .ttl_box{
  text-align: left;
  width: 100%;
  background: #0055a7;
}

.footer_fixed .ttl_box .content{
  display: flex;
  align-items: center;
  padding: .4em 1em;
}

.footer_fixed .ttl_box ul{
  padding-right: 15px
}

.footer_fixed .ttl_box ul li{
  transform: skewX(-20deg)
}

.footer_fixed .ttl_box ul li span{
  line-height: 0;
  display: inline-block;
  transform: skewX(20deg);
}

.footer_fixed .ttl_box p.chance{
  color: #fff;
  font-weight: 700;
  font-size: 20px;
  font-style: italic;
  letter-spacing: 1px;
  border-bottom: none;
  margin-top: 6px;
  margin-right: 14px
}

.footer_fixed .ttl_box p.chance em{
  color: #fff000;
  font-style: italic;
}

.footer_fixed .ttl_box p.chance span{
  position: relative;
}

.footer_fixed .ttl_box p.chance br{
  display: none;
}

.footer_fixed .ttl_box p.chance span:before{
  content: '・';
  color: #fff000;
  font-size: 17px;
  position: absolute;
  top: -16px;
  left: 4px;
}

.footer_fixed .ttl_box ul li{
  color: #0055a7;
  line-height: 1;
  font-weight: 700;
  background: #fff000;
  padding: .35em .5em .22em .9em;
}

.footer_fixed .btn_box{
  display: flex;
  align-items: center;
  position: relative;
  padding: .5em 18em .5em 1em;
}

.footer_fixed .btn_box .logo{
  margin-right: 1.5em;
}

.footer_fixed .btn_box .logo img{
  width: 100%;
  max-width: 180px;
  height: auto;
}

.footer_fixed .btn_box a.logo:hover{
  opacity: .7;
}

.footer_fixed .btn_box ul{
  display: flex;
  align-items: center;
  flex: 1;
  margin-top: -.3em;
}

.footer_fixed .btn_box ul li{
  width: calc(50% - 1em / 2);
  flex: 1;
}

.footer_fixed .btn_box ul li:first-child{
  margin-right: 1em;
}

.footer_fixed .btn_box .btn a{
  color: #fff;
  font-weight: 700;
  width: 100%;
  border-radius: 6px;
  display: block;
  padding: .4em .4em .3em;
  position: relative;
}

.footer_fixed .btn_box .btn a:after{
  content: '\e93b';
  font-size: .8em;
  font-family: icomoon;
  line-height: 1.4;
  width: 16px;
  height: 16px;
  background: #fff;
  border-radius: 50%;
  padding-left: 2px;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
}

.footer_fixed .btn_box .btn a.demo:after{
  color: #f74a4a;
}

.footer_fixed .btn_box .btn a.document:after{
  color: #008cd7;
}

.footer_fixed .btn_box .btn a.demo{
  background: #f74a4a;
  box-shadow: 0 5px 0 0 rgba(210,37,36,1)
}

.footer_fixed .btn_box .btn a.document{
  background: #008cd7;
  box-shadow: 0 5px 0 0 rgba(0,72,110,1)
}

.footer_fixed .btn_box .btn a:hover{
  box-shadow: none;
  transform: translateY(3px)
}

.footer_fixed .illust_box{
  width: 274px;
  display: flex;
  justify-content: space-between;
  position: absolute;
  right: 0;
  bottom: 6px;
}

.footer_fixed .illust_box a.link{
  position: relative
}

.footer_fixed .illust_box a.link span{
  display: none
}

.footer_fixed .illust_box a.link:before{
  content: '';
  background: url(../img/footer/cv_btn_illust_txt.webp) no-repeat 0 0;
  background-size: 100%;
  width: 118px;
  height: 142px;
  display: block;
  position: absolute;
  right: 15px;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 1.5s;
  animation-name: poyopoyo
}

@keyframes poyopoyo{
  0%,40%,60%,80%{
    transform: scale(1)
  }
  50%,70%{
    transform: scale(.95)
  }
}

.footer_fixed .illust_box a.link:hover:before{
  background: url(../img/footer/cv_btn_illust_txt_hover.webp) no-repeat 0 0;
  background-size: 100%;
}

/*--------------------------------------------------
  レスポンシブ対応
  ------------------------------------------------*/
@media (min-width: 600px){
/*--------------------------------------------------
  header
  ------------------------------------------------*/
.logo_aippear .logo_box figure{
  margin-right: 1.5em;
}

.logo_aippear .logo_box figcaption{
  font-size: .9em;
}

.logo_aippear .logo_box figcaption span:last-child{
  margin-top: .2em;
}

/*--------------------------------------------------
  header info
  ------------------------------------------------*/
.c-infoBar__text.-flow-off{
  padding: .5em 1em;
}

.c-infoBar__text .info_txt{
  width: 100%;
}

/*--------------------------------------------------
  footer
  ------------------------------------------------*/
footer .l-footer__widgetArea{
  padding-top: 3em;
  padding-bottom: 3em;
}

footer .w-footer__right{
  display: flex;
  flex-flow: wrap;
}

footer .w-footer__right .w-footer__box{
  width: calc(50% - 1.8em / 2);
  margin-bottom: 0;
}

footer .w-footer__right .w-footer__box:nth-child(1){
  margin-right: 1.8em;
}

/*--------------------------------------------------
  footer menu
  ------------------------------------------------*/
footer .c-widget__title{
  font-size: 14px;
  margin-bottom: 1em;
}

footer .c-listMenu a{
  font-size: 14px;
  line-height: 1.4;
}

/*--------------------------------------------------
  footer cv btn
  ------------------------------------------------*/
footer ul.cv_btn{
  width: 100%;
  display: flex;
  align-items: center;
  margin-top: 1.4em;
}

footer ul.cv_btn li{
  width: calc(50% - 1.4em / 2);
}

footer ul.cv_btn li:not(:last-child){
  margin-right: 1.4em;
  margin-bottom: 0;
}

/*--------------------------------------------------
  media info - desc
  ------------------------------------------------*/
footer .desc p.ttl{
  font-size: 15px;
}

footer .desc p.ttl .adjust{
  font-size: 15px;
  letter-spacing: 0;
}

footer .desc p.ttl br{
  display: none;
}

footer .desc .txt_box p{
  font-size: 15px;
}

/*--------------------------------------------------
  media info - sns
  ------------------------------------------------*/
footer .sns_box p.ttl{
  font-size: 15px;
}

footer .sns_link li i{
  width: 26px;
  height: 26px;
  position: relative;
}

footer .sns_link li i.icon-facebook:before{
  font-size: 17px;
  position: absolute;
  top: 5px;
}

footer .sns_link li i.icon-twitter-x:before{
  font-size: 15px;
}

/*--------------------------------------------------
  media info - menu company
  ------------------------------------------------*/
footer .menu_company li a{
  font-size: 14px;
}
}

@media (min-width: 960px){
/*--------------------------------------------------
  header
  ------------------------------------------------*/
.logo_aippear{
  padding: 0 .5em;
}

.logo_aippear .cv_box{
  display: block;
}

/*--------------------------------------------------
  header info
  ------------------------------------------------*/
.c-infoBar{
  padding: 0 .5em 0 1em;
}

.c-infoBar__text.-flow-off{
  max-width: 1200px;
  justify-content: space-between;
  padding: .5em 0;
  margin: 0 auto;
}

.c-infoBar__text .info_txt{
  width: auto;
  display: flex;
  margin-bottom: 0;
}

.c-infoBar__text .info_txt p{
  font-size: 15px;
}

.c-infoBar__text .cv_btn{
  width: auto;
}

.c-infoBar__text .cv_btn li{
  flex: 0 1 auto;
}

/*--------------------------------------------------
  footer
  ------------------------------------------------*/
footer .l-footer__widgetArea .l-container{
  align-items: flex-start;
  flex-flow: nowrap;
}

footer .l-container > .w-footer__box{
  max-width: 440px;
  flex: 1;
  margin-right: 2em;
}

footer .w-footer__right{
  max-width: 500px;
  justify-content: flex-end;
  margin-bottom: 0;
}

footer .w-footer__right .w-footer__box{
  width: calc(50% - 1.4em / 2);
}

footer .w-footer__right .w-footer__box:nth-child(1){
  margin-right: 1.4em;
}

footer .l-footer__foot{
  margin-bottom: 125px;
}

/*--------------------------------------------------
  footer cv btn
  ------------------------------------------------*/
footer ul.cv_btn{
  justify-content: flex-end;
}

footer ul.cv_btn li{
  width: 100%;
  max-width: 240px;
}

footer ul.cv_btn a{
  font-size: 14px;
}

/*--------------------------------------------------
  footer fixed
  ------------------------------------------------*/
.p-fixBtnWrap{
  right: 1em;
  bottom: 12em;
}

.footer_fixed{
  width: 100%;
  background: #e0efff;
  border-top: 1px #ddd solid;
  position: fixed;
  bottom: 0;
  z-index: 2;
}

.footer_fixed.p-fixBtnWrap{
  display: block;
  bottom: 0;
  right: 0;
}

.footer_fixed .content{
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.footer_fixed .ttl_box{
  text-align: left;
  width: 100%;
  background: #0055a7;
}

.footer_fixed .ttl_box .content{
  display: flex;
  align-items: center;
  padding: .4em 1em;
}

.footer_fixed .ttl_box ul{
  padding-right: 15px
}

.footer_fixed .ttl_box ul li{
  transform: skewX(-20deg)
}

.footer_fixed .ttl_box ul li span{
  line-height: 0;
  display: inline-block;
  transform: skewX(20deg);
}

.footer_fixed .ttl_box p.chance{
  color: #fff;
  font-weight: 700;
  font-size: 20px;
  font-style: italic;
  letter-spacing: 1px;
  border-bottom: none;
  margin-top: 6px;
  margin-right: 14px
}

.footer_fixed .ttl_box p.chance em{
  color: #fff000;
  font-style: italic;
}

.footer_fixed .ttl_box p.chance span{
  position: relative;
}

.footer_fixed .ttl_box p.chance br{
  display: none;
}

.footer_fixed .ttl_box p.chance span:before{
  content: '・';
  color: #fff000;
  font-size: 17px;
  position: absolute;
  top: -16px;
  left: 4px;
}

.footer_fixed .ttl_box ul li{
  color: #0055a7;
  line-height: 1;
  font-weight: 700;
  background: #fff000;
  padding: .35em .5em .22em .9em;
}

.footer_fixed .btn_box{
  display: flex;
  align-items: center;
  position: relative;
  padding: .5em 18em .5em 1em;
}

.footer_fixed .btn_box .logo{
  margin-right: 1.5em;
}

.footer_fixed .btn_box .logo img{
  width: 100%;
  max-width: 180px;
  height: auto;
}

.footer_fixed .btn_box a.logo:hover{
  opacity: .7;
}

.footer_fixed .btn_box ul{
  display: flex;
  align-items: center;
  flex: 1;
  margin-top: -.3em;
}

.footer_fixed .btn_box ul li{
  width: calc(50% - 1em / 2);
  flex: 1;
}

.footer_fixed .btn_box ul li:first-child{
  margin-right: 1em;
}

.footer_fixed .btn_box .btn a{
  color: #fff;
  font-weight: 700;
  width: 100%;
  border-radius: 6px;
  display: block;
  padding: .4em .4em .3em;
  position: relative;
}

.footer_fixed .btn_box .btn a:after{
  content: '\e93b';
  font-size: .8em;
  font-family: icomoon;
  line-height: 1.4;
  width: 16px;
  height: 16px;
  background: #fff;
  border-radius: 50%;
  padding-left: 2px;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
}

.footer_fixed .btn_box .btn a.demo:after{
  color: #f74a4a;
}

.footer_fixed .btn_box .btn a.document:after{
  color: #008cd7;
}

.footer_fixed .btn_box .btn a.demo{
  background: #f74a4a;
  box-shadow: 0 5px 0 0 rgba(210,37,36,1)
}

.footer_fixed .btn_box .btn a.document{
  background: #008cd7;
  box-shadow: 0 5px 0 0 rgba(0,72,110,1)
}

.footer_fixed .btn_box .btn a:hover{
  box-shadow: none;
  transform: translateY(3px)
}

.footer_fixed .illust_box{
  width: 274px;
  display: flex;
  justify-content: space-between;
  position: absolute;
  right: 0;
  bottom: 6px;
}

.footer_fixed .illust_box a.link{
  position: relative
}

.footer_fixed .illust_box a.link span{
  display: none
}

.footer_fixed .illust_box a.link:before{
  content: '';
  background: url(../img/footer/cv_btn_illust_txt.webp) no-repeat 0 0;
  background-size: 100%;
  width: 118px;
  height: 142px;
  display: block;
  position: absolute;
  right: 15px;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 1.5s;
  animation-name: poyopoyo
}

@keyframes poyopoyo{
  0%,40%,60%,80%{
    transform: scale(1)
  }
  50%,70%{
    transform: scale(.95)
  }
}

.footer_fixed .illust_box a.link:hover:before{
  background: url(../img/footer/cv_btn_illust_txt_hover.webp) no-repeat 0 0;
  background-size: 100%;
}
}

/*--------------------------------------------------
  footer before
  ------------------------------------------------*/
.w-beforeFooter{
  background: #e0efff;
  padding: 2.5em 0 3em;
}

.w-beforeFooter .it_subsidy .left_box .ttl_box{
  text-align: center;
}

.w-beforeFooter .it_subsidy .left_box .ttl_box .lead{
  color: #008cd7;
  font-weight: 700;
  margin-left: -.5em;
}

.w-beforeFooter .it_subsidy .left_box .ttl_box .ttl{
  color: #002f59;
  font-size: 5.8vw;
  font-weight: 700;
  display: inline-block;
  margin-top: -.1em;
  position: relative;
}

.w-beforeFooter .it_subsidy .left_box .ttl span:before,
.w-beforeFooter .it_subsidy .left_box .ttl span:after{
  content: '';
  position: absolute;
  width: 1.3em;
  height: .1em;
  background: #002f59;
  display: inline-block;
  top: 50%;
}

.w-beforeFooter .it_subsidy .left_box .ttl span:before{
  left: -1.4em;
  transform: rotate(65deg);
}

.w-beforeFooter .it_subsidy .left_box .ttl span:after{
  right: -1.2em;
  transform: rotate(-65deg);
}

.w-beforeFooter .it_subsidy .left_box figure{
  margin-left: -2em;
  margin-bottom: 1.4em;
}

.w-beforeFooter .it_subsidy .left_box img,
.w-beforeFooter .it_subsidy .chance img{
  display: block;
  margin: 0 auto;
}

.w-beforeFooter .it_subsidy .left_box .target{
  color: #fff;
  font-size: 4.6vw;
  text-align: center;
  font-weight: 700;
  line-height: 2;
  background: #002f59;
  margin: 0 1em .7em;
  position: relative;
}

.w-beforeFooter .it_subsidy .target:before,
.w-beforeFooter .it_subsidy .target:after{
  content: '';
  position: absolute;
  height: 100%;
  border: 1em solid #002f59;
  display: block;
  top: 0;
}

.w-beforeFooter .it_subsidy .target:before{
  left: -1em;
  border-left-width: .6em;
  border-left-color: transparent;
}

.w-beforeFooter .it_subsidy .target:after{
  right: -1em;
  border-right-width: .6em;
  border-right-color: transparent;
}

.w-beforeFooter .it_subsidy .right_box{
  background: #fff;
  border-radius: 10px;
  padding: 1.2em 1.2em 1.8em;
}

.w-beforeFooter .it_subsidy .efficiency .ttl{
  color: #008cd7;
  font-size: 4.6vw;
  text-align: center;
  font-weight: 700;
  margin-bottom: .5em;
}

.w-beforeFooter .it_subsidy .efficiency .ttl em{
  font-style: italic;
  margin-left: -.15em;
}

.w-beforeFooter .it_subsidy .efficiency ul{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1em;
}

.w-beforeFooter .it_subsidy .efficiency ul li{
  color: #fff;
  text-align: center;
  line-height: 1;
  font-weight: 700;
  width: 100%;
  max-width: 130px;
  border: 2px #008cd7 solid;
  background: #008cd7;
  padding: .4em .6em .3em .6em;
  transform: skewX(-18deg);
}

.w-beforeFooter .it_subsidy .efficiency ul li:not(:last-child){
  margin-right: .5em;
}

.w-beforeFooter .it_subsidy .efficiency ul li:nth-child(2){
  color: #008cd7;
  background: #fff;
}

.w-beforeFooter .it_subsidy .efficiency ul li span{
  display: inline-block;
  transform: skewX(18deg);
}

.w-beforeFooter .it_subsidy .worry{
  text-align: center;
}

.w-beforeFooter .it_subsidy .worry .ttl{
  color: #002f59;
  font-size: 4.2vw;
  font-weight: 700;
}

.w-beforeFooter .it_subsidy .worry .ttl.trouble{
  margin-bottom: .6em;
}

.w-beforeFooter .it_subsidy .worry .ttl.problem{
  margin-bottom: .8em;
}

.w-beforeFooter .it_subsidy .worry .ttl span{
  color: #008cd7;
}

.w-beforeFooter .it_subsidy .worry .ttl.problem span:first-child{
  margin: 0 -.3em;
}

.w-beforeFooter .it_subsidy .worry ul{
  display: inline-block;
  margin-bottom: .7em;
}

.w-beforeFooter .it_subsidy .worry ul li{
  font-size: 3.4vw;
  text-align: left;
  position: relative;
  padding-left: 1.4em;
}

.w-beforeFooter .it_subsidy .worry ul li:before{
  color: #008cd7;
  content: '\e923';
  font-family: icomoon;
  font-weight: 700;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.w-beforeFooter .it_subsidy .worry ul li:not(:last-child){
  margin-bottom: .3em;
}

.w-beforeFooter .it_subsidy .worry .btn a{
  color: #002f59;
  font-weight: 700;
  width: 100%;
  background: #fff000;
  box-shadow: 0 5px 0 0 rgba(210, 170, 2, 1);
  border-radius: 6px;
  display: block;
  padding: .5em .5em .4em;
  position: relative;
  overflow: hidden;
}

.w-beforeFooter .it_subsidy .worry .btn a:after{
  color: #fff;
  content: '\e93b';
  font-size: .7em;
  font-family: icomoon;
  line-height: 1.6;
  width: 4vw;
  height: 4vw;
  background: #002f59;
  border-radius: 50%;
  padding-left: 1px;
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
}

.w-beforeFooter .it_subsidy .worry .btn a:before{
  content: '';
  display: inline-block;
  width: 30px;
  height: 100%;
  background: #fff;
  position: absolute;
  top: -180px;
  left: 0;
  animation: shiny 3s ease-in-out infinite;
}

@-webkit-keyframes shiny{
  0%{ -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
  80%{ -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
  81%{ -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
  100%{ -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.w-beforeFooter .it_subsidy .worry .btn a:hover{
  box-shadow: none;
  transform: translateY(3px);
}

.w-beforeFooter .it_subsidy .chance p{
  color: #0055a7;
  font-size: 4.2vw;
  text-align: center;
  font-weight: 700;
  margin-bottom: .5em;
}

.w-beforeFooter .it_subsidy .chance p em{
  font-style: italic;
  margin-left: -.2em;
}

.w-beforeFooter .it_subsidy .chance p .deadline{
  display: block;
}

.w-beforeFooter .it_subsidy .chance img{
  width: 20vw;
}
@media (min-width: 600px){
.w-beforeFooter{
  padding: 3em 0 2.5em;
}

.w-beforeFooter .it_subsidy .right_box{
  max-width: 450px;
  padding: 1.2em 1.5em 1.8em;
  margin: 0 auto;
}

.w-beforeFooter .it_subsidy .left_box .ttl_box{
  margin-bottom: .2em;
}

.w-beforeFooter .it_subsidy .left_box .ttl_box .ttl{
  font-size: 30px;
}

.w-beforeFooter .it_subsidy .left_box .ttl_box .lead{
  font-size: 18px;
}

.w-beforeFooter .it_subsidy .left_box .target{
  font-size: 26px;
  max-width: 450px;
  margin: 0 auto;
  margin-bottom: .7em;
}

.w-beforeFooter .it_subsidy .efficiency .ttl{
  font-size: 26px;
}

.w-beforeFooter .it_subsidy .efficiency ul li{
  font-size: 18px;
}

.w-beforeFooter .it_subsidy .worry .ttl{
  font-size: 21px;
}

.w-beforeFooter .it_subsidy .worry ul{
  margin-bottom: .8em;
}

.w-beforeFooter .it_subsidy .worry ul li{
  font-size: 16px;
}

.w-beforeFooter .it_subsidy .worry .btn a{
  font-size: 20px;
}

.w-beforeFooter .it_subsidy .worry .btn a:after{
  font-size: 12px;
  line-height: 1.8;
  width: 20px;
  height: 20px;
}

.w-beforeFooter .it_subsidy .chance p{
  font-size: 26px;
}

.w-beforeFooter .it_subsidy .chance img{
  width: auto;
}
}

@media (min-width: 960px){
.w-beforeFooter .it_subsidy{
  max-width: 1120px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-flow: wrap;
}

.w-beforeFooter .it_subsidy .left_box,
.w-beforeFooter .it_subsidy .right_box{
  width: calc(50% - 2em / 2);
}

.w-beforeFooter .it_subsidy .left_box{
  order: 1;
  flex: 1;
  margin-right: 2em;
}

.w-beforeFooter .it_subsidy .right_box{
  width: 100%;
  max-width: 480px;
  order: 2;
  position: relative;
}

.w-beforeFooter .it_subsidy .right_box:before{
  content: '';
  position: absolute;
  background: url(img/footer/it_subsidy_robo.webp) no-repeat 0 0;
  background-size: 100%;
  width: 94px;
  height: 124px;
  left: -94px;
  bottom: 90px;
}

.w-beforeFooter .it_subsidy > div.chance{
  width: 100%;
  order: 3;
  margin-top: 2em;
}

.w-beforeFooter .it_subsidy .left_box .ttl_box .ttl{
  font-size: 32px;
}

.w-beforeFooter .it_subsidy .left_box .ttl_box .lead{
  font-size: 20px;
}

.w-beforeFooter .it_subsidy .left_box .target{
  margin-bottom: 0;
}

.w-beforeFooter .it_subsidy .efficiency .ttl{
  font-size: 28px;
}

.w-beforeFooter .it_subsidy .efficiency ul li{
  max-width: 120px;
}

.w-beforeFooter .it_subsidy .worry .ttl{
  font-size: 22px;
}

.w-beforeFooter .it_subsidy .worry ul li{
  font-size: 17px;
}

.w-beforeFooter .it_subsidy .chance p{
  font-size: 30px;
  margin-bottom: 0;
}

.w-beforeFooter .it_subsidy .chance p .deadline{
  display: inline-block;
}

.w-beforeFooter .it_subsidy .chance figure{
  display: none;
}

}
