@charset "utf-8";
/* CSS Document */

.header-area{
	background-color: #fff;
	padding:10px;
}

.l-footer__menu img{
	max-height: 100%;
}

.work-slider-list{
	border-top: dotted 2px #ccc;
	
}
.p-work .swiper .c-flex.work-slider-list{
	height: auto!important;
}

.p-work-btn a{
	background-color: #0b41a0 !important;
	color: #ecf3f5 !important;
	border-radius: 8rem !important;
	max-width: 600px;
	width: 80%;
	text-align: center;
	padding:20px;
	margin:0 auto;
	transition: .4s;
	/*--水平方向 垂直方向 影のぼかし 色--*/
	box-shadow: 3px 3px 3px rgba(0,0,0,0.3);  
}

.p-work-btn a:hover {
	/*--水平方向 垂直方向 色--*/
	box-shadow: 0 0 3px rgba(0,0,0,0);
}

.p-work-list{
	background-color:#cce8f3 !important;
	border:1px solid #008ac1;
	border-radius: 10px;
	text-align: center;
	padding:1rem 0;
}

.l-footer__menu{
	/*デフォルトで非表示にする*/
	opacity: 0;
	visibility: hidden;
}
.active{
	opacity: 1;
	visibility: visible;
}

@media screen and (min-width: 768px){
.l-footer__menu{
	opacity: 1;
	visibility: visible;
}

}

.menu-box{
	border: 3px solid #eee;
	border-radius: 1rem;
	padding: 2rem;
}

.menu-box ul li{
	border-bottom: dotted 1px #ccc;
	padding-bottom:20px;
	padding-top:20px;
	font-weight:bold;
}
.menu-box ul li:last-child{
	border-bottom:none;
}
.menu-box ul li a{
	color:#1b1b1b;
}
.menu_icon01,.menu_icon02,.menu_icon03,.menu_icon04{
	padding-left: 60px;
	position: relative;
}
.menu_icon01::before{
	content: url("img/menu01.png");
	vertical-align: top;
	top: -7px;
	left: 0;
	position: absolute;
}
.menu_icon02::before{
	content: url("img/menu02.png");
	vertical-align: top;
	top: -7px;
	left: 0;
	position: absolute;
}
.menu_icon03::before{
	content: url("img/menu03.png");
	vertical-align: top;
	top: -7px;
	left: 0;
	position: absolute;
}
.menu_icon04::before{
	content: url("img/menu04.png");
	vertical-align: top;
	top: -7px;
	left: 0;
	position: absolute;
}
.menu_icon01::after,.menu_icon02::after,.menu_icon03::after,.menu_icon04::after{
	content: url("img/menu-bt.png");
	right: 0;
	top: 7px;
	position: absolute;
}
	

/*FAQ用css*/

.p-flow__faq{
  background-color:#fff;
  border:3px 
  solid #66b9da;
  border-radius:1rem;
  padding:1.5rem 2rem;
  margin-bottom: 1em;
}
.p-flow__faq__list dt {
    margin-left: 2rem;
    margin-bottom: 1rem;
    font-weight: 600;
    line-height: 1.8 !important;
}

.p-flow__faq__list dt::before,
.p-flow__faq__list dd::before {
  margin-right: .4rem
}

.p-flow__faq__list dt::before {
    content: "Q.";
    color: #008ac1;
    margin-left: -2rem;
    font-size:1.414rem;
}

.p-flow__faq__list dd {
  margin-left: 2rem;
  line-height: 1.8 !important;
}

.p-flow__faq__list dd::before {
    content: "A.";
    margin-left: -2rem;
    color: #c84454;
    font-weight: 600;
    font-size:1.414rem;
}
/*FAQ用css*/
/*LINE相談の流れ用css*/

.line_ttl_icon{
	padding-left: 170px;
	position: relative;
}
.line_ttl_icon::before{
	content: url("img/line-consultation-icon-pc.png");
	vertical-align: top;
	top: -45px;
	left: 0;
	position: absolute;
}

.p-line__consultation{
  background-color:#cce8f3 ;
  padding:0rem 2rem 2rem;
  margin:0rem 1rem 4rem;
  border-radius:1rem;
  height: 680px;
}
.p-line__consultation h2{
  border-radius:1.6rem;
  line-height: 3.2rem;
  background-color:#0b41a0;
  width: auto;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  top: -1.4rem;
}

.p-line__consultation__list{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 991px){
  .p-line__consultation{
    height: auto;
  }
  .p-line__consultation h2{
    max-width: 320px;
  }
  
  .line_ttl_icon {
	  padding-left: 110px;
  }
  .line_ttl_icon::before{
    content: url("img/line-consultation-icon-sp.png");
    top: -22px;
    padding-left: 10px;
  }
  
}

/*PCで無効*/
.pc_hid{
  display: none;
}
.sp_hid{
  display: contents;
}

/*スマートフォンで有効*/
@media screen and (max-width:768px) {
  .pc_hid{
    display: contents;
  }
  .sp_hid{
    display: none;
  }
}
/*LINE相談の流れ用css*/





/*ポップアップ*/
.modal-overlay01,.modal-overlay02,.modal-overlay03{
   visibility: hidden;
   position: fixed;
   left: 0;
   top: 0;
   width: 100vw;
   height: 100vh;
   background-color: rgba(0,0,0,.7);
   z-index: 999;
  transition: .3s;
  opacity:0;
}
.modal-overlay01.active,.modal-overlay02.active,.modal-overlay03.active{
   visibility: visible;
   transition: .3s;
   opacity: 1;
}
.modal-window{
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%,-50%);
   background-color: #fff;
   width: 80%;
   max-width: 500px;
   /*min-height: 400px;*/
   margin: 0;
   padding: 30px;
   overflow-y: auto;
}
.modal-window h2{
	text-align: center;
	padding-bottom:1rem;
	margin-bottom: 2rem;
	border-bottom:1px solid #ccc;
}


#close-01,#close-02,#close-03 {
    position: absolute;
    width: 20px;
    height: 20px;
    top: 20px;
    right: 20px;
}
#close-01::before,#close-02::before,#close-03::before {
   content: '';
   position: absolute;
   top: 50%;
   left: 50%;
   width: 25px;
   height: 1px;
   background-color: #000;
   transform: translate(-50%, -50%) rotate(45deg);
}
#close-01::after,#close-02::after,#close-03::after {
   content: '';
   position: absolute;
   top: 50%;
   left: 50%;
   width: 25px;
   height: 1px;
   background-color: #000;
   transform: translate(-50%, -50%) rotate(-45deg);
}
.modal-opened {
    overflow-y: hidden; /*背景を固定*/
}
@media screen and (max-width: 900px) {
#prev, #next {
    width: 40px;
    height: 40px;
    top: 114%;
}
#prev{
left: 35%;
}
#next{
right: 35%;
}
}

.p-advice::before{
	border-top-color:#0b41a0;
}

.youtube {
    width: 100%;
    aspect-ratio: 16 / 9;
}
.youtube iframe {
    width: 100%;
    height: 100%;
}

.line-about{
	color:#fff;
	text-decoration: underline;
	margin: 5px auto;
	text-align: center;
	font-size: 1.2rem;
	font-weight: bold;
}

