@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@600&display=swap');
html{overflow-x: hidden;}

/* common start */
img{display: inline-block; max-width: 100%; height: auto;}
.pap_service_tit{display: flex; justify-content: flex-start; align-items: flex-end; margin-bottom: 30px;}
.pap_service_tit .pap_s_no{font-size: 90px; font-weight:bold; color: #CCCCCC; line-height: 0.8; margin-right: 15px; font-family: 'Open Sans';}
.pap_service_tit .pap_s_tit{min-width: 140px; color: #fff; padding: 5px 10px; text-align: center; border-radius: 3px; font-weight: bold; font-size: 15px;background-color: #2FAECB; line-height: 1.2;}

.ly_main{font-size: 18px;}

.point_tit {font-weight: bold; text-align: center;}
.point_tit > *{vertical-align: middle; letter-spacing: 3px; line-height: 1.2;}
.point_tit .point_txt{font-size: 16px;}
.point_tit .point_num{font-size: 65px;}


/*ブロックごとのデフォルトのパディング*/
.box{padding: 80px 0 100px;}
@media only screen and (max-width :769px) {
  .box{padding: 40px 0 40px;}
}
@media only screen and (max-width :450px) {
  .box{padding-top: 20px; padding-bottom: 20px; margin-left:5%; margin-right: 5%;}
}
/* common end */

#in_main_vis{background: #fff url("../images/main_bg.jpg") no-repeat top center; background-size: cover; padding: 25px 0;}
#in_main_vis .main_box{display: block; text-align: center; max-width: 1000px; height: auto; padding: 0;}
#in_main_vis .main_vis_disp{flex-direction: row-reverse; align-items: center;}
#in_main_vis .main_vis_img01{flex-basis: 520px;}
#in_main_vis .main_vis_disp_box{flex: 0.96;}
#in_main_vis .main_vis_disp_btn{width: 80%; margin-left: auto; margin-right: auto;}
#in_main_vis .main_vis_disp_btn li{margin-bottom:10px;}
#in_main_vis .main_vis_disp_btn li:last-child{margin-bottom: 0;}
#in_main_vis .main_vis_disp_btn li .link_btn{width: 100%; font-size: 22px !important; letter-spacing: 2px; padding-bottom: 15px !important; padding-top: 15px !important;}
#in_main_vis .main_vis_disp_btn li .link_btn::after{vertical-align: baseline;}
#in_main_vis .introduction_list {padding: 25px 35px; background-color: #fff;}
#implementing_company{padding-bottom: 0;}

#box1 {background: url("../images/box1_bg.jpg") no-repeat top center; background-size: cover;}
#box1 .feature_box{padding: 80px 5%;}
#box1 .feature_box:last-child{margin-bottom: 0;}
#box1 .feature_box:nth-child(2n+1){background-color: #F1FBFE;}
#box1 .point_tit{color: #2CACCB;}
#box1 .point_sub_tit{background-color: #2FAECB; color: #fff; font-weight: bold; line-height: 1.2; padding: 10px 25px; letter-spacing: 3px; display:table; margin: 0 auto 20px auto;}
#box1 .under_line{font-weight: bold;}

#box2 .reason_box{width: auto; justify-content: center; margin-bottom: 60px;}
#box2 .reason_box:last-child{margin-bottom: 0;}
#box2 .reason_box .box2_main{align-items: center; flex-basis: 850px; position: relative; z-index: 1; margin-right: auto; margin-left: -150px; flex-direction: row-reverse;}
#box2 .reason_box .box2_img{width: 50%;}
#box2 .reason_box .box2_img img{width: 100%;}
#box2 .reason_box .box2_main_img{flex: 0.95; position: relative; z-index: 0; margin-left: auto; margin-right: 20px;}
#box2 .reason_box .box2_main_img img{max-width: inherit;}
#box2 .reason_box:nth-child(2n){flex-direction: row-reverse;}
#box2 .reason_box:nth-child(2n) .box2_main{margin-right: -150px; margin-left: auto; flex-direction: row;}
#box2 .reason_box:nth-child(2n) .box2_main .box2_main_img{margin-right: auto; margin-left:20px;}
#box2 .reason_box#reason03 .box2_main{ flex-basis: 560px; margin-right: 150px;}
#box2 .reason_box#reason03 .reason03_table dt{background-color: #EEEEEE; padding: 5px 10px; text-align: center; line-height: 1.2; position: absolute; min-width: 155px;}
#box2 .reason_box#reason03 .reason03_table dd{padding-left: 180px; margin-bottom: 10px;}

#box3 {background-color: #EEF9FB;}

#box6{background-color: #FFFAF2;}
#box6 .box6_bg{background:url("../images/box6_bg.png") repeat; padding-top: 40px; padding-bottom: 40px;}
#box6 .box6_list > li{background: #fff; padding: 25px; margin-bottom: 25px;}
#box6 .box6_list .box6_tit{background-color: #2EADCB; color: #fff; min-width: 330px; padding: 5px 10px; line-height: 1.2; display: table; margin: 0 auto 10px auto; border-radius: 2px; font-weight: bold;}
#box6 .box6_book{background-color: #fff; padding: 30px 45px 20px 45px; flex-direction: row-reverse; align-items: center;}
#box6 .box6_book .box6_book_main{flex: 0.9;}


#box7 .pa_title01::after{ display: none;}
#box7 #pap_about li a{background-color: #2FAECB; display: block; text-align: center; padding: 20px 10px 40px 10px; color: #fff; position: relative; font-weight: bold;}
#box7 #pap_about li a::after{content:"";margin-top:-5px;width:10px;height:10px; border-top:3px solid #fff;border-right:3px solid #fff;transform:rotate(135deg); transition: 0.5s; z-index:0; transition: 0.5s; position: absolute; bottom: 20px; left: 50%;}
#box7 #pap_about li a:hover{text-decoration: none;}
#box7 #pap_about li a:hover::after{bottom:13px;}

#price_box {overflow: inherit;}
#price_box .bl_contentsBlock_inner{border: 8px solid #EEF9FB; padding: 40px 10%; background: #fff;}
#price_box dl{flex-direction: row-reverse; align-items: center;}
#price_box dl dt{margin: -80px 0 -40px 5%;}

@media only screen and (max-width :1241px) {
    #in_main_vis .main_box{max-width: inherit;}
    .bl_contentsBlock .bl_contentsBlock_inner{width: auto; padding-right: 5%; padding-left: 5%; background-color: #fff;}
    #price_box .bl_contentsBlock_inner{padding: 40px 5%;}
    #box1 #feature02 .box1_main{margin-left: 0;}
    #box1 #feature03 .box1_img{margin-right: 0;}
}

@media only screen and (max-width :769px) {
    
    .pap_service_tit{justify-content: center;}
    #in_main_vis .main_box{padding: 20px 5%;}
    /*#in_main_vis .main_vis_img{flex-basis: 43vw;}
    #in_main_vis .main_vis_main{flex-basis: 52vw; margin-right: 0;}
    #in_main_vis .main_vis_main #main_vis_title{margin-bottom: 20px !important;}
    #in_main_vis .main_vis_main .main_vis_list > li{width: 32% !important; margin-right: 2% !important;}
    #in_main_vis .main_vis_main .main_vis_list > li:nth-child(3n){margin-right: 0 !important;}
    #in_main_vis .main_vis_main .main_vis_list > li{font-size: 11px; letter-spacing: 0; display: flex; justify-content: center; align-items: center;}
    #in_main_vis .main_vis_main .main_vis_btn a img{ width: 90%; height: auto;}*/
    #box1 .feature_box{margin-left: 0; margin-right: 0;}
    #box2 .reason_box .box2_main{margin: 0 0 15px 0 !important;}
    #box2 .reason_box .box2_img{width: 100%; margin-bottom: 15px;}
    #box2 .reason_box .box2_main_img{ margin: 15px auto !important; text-align: center;}
    #box2 .reason_box .box2_main .box2_main_box h4{text-align: center;}
    #box2 .reason_box .box2_awrd_img{text-align: center;}
    #box3 #box3_list li{width: 31% !important; margin-right: 3% !important;}
    #box3 #box3_list li:nth-child(3n){margin-right: 0 !important;}
    #box6 .box6_list .box6_tit{min-width: inherit; width: 100%;}
    #box6 .box6_other{margin-left: 5%; margin-right: 5%;}
    #price_box{text-align: center;}
    #price_box dl dt{ margin-bottom: 10px;}
    #price_box{padding-top: 60px;}
    #price_box .bl_contentsBlock_inner{padding-bottom: 20px;}
    #price_box dl dt img{width: 50%; margin: 0 auto;}
} 


@media only screen and (max-width :480px) {
    .ly_main{font-size: 15px;}
    #in_main_vis{padding: 0;}
    #in_main_vis .main_box #main_vis_sub{font-size: 16px !important; letter-spacing: 0;}
    #in_main_vis .main_vis_disp_btn{width: 100%;}
    #in_main_vis .main_vis_disp_btn li .link_btn{font-size: 18px !important; margin-bottom: 0;}
    #in_main_vis .main_vis_disp_btn li .link_btn::after{vertical-align: middle;}
    #box1 .feature_box{padding: 35px 5%;}
    #box1 .feature_box h2{letter-spacing: 0; font-size: 22px !important;}
    #box1 .feature_box  .box1_main {padding-top: 15px; padding-bottom: 15px;}
    #box2 .reason_box .box2_main_img img{max-width: 100%;}
    #box2 .reason_box#reason03 .reason03_table dt{position: static;}
    #box2 .reason_box#reason03 .reason03_table dd{padding-left: 0;}
    #box3{margin-left: 0; margin-right: 0; padding-left: 5%; padding-right: 5%; margin-bottom: 0 !important;}
    #box3 #box3_list{justify-content: space-between !important;}
    #box3 #box3_list li{width: 48%!important; margin-right: 0% !important; margin-left: 0 !important;}
    #box3 #box3_list li:nth-child(2n){margin-right: 0 !important; margin-left: 0;}
    #box3 #box3_list .box3_img{margin-bottom: 0;}
    #box3 #box3_list .box3_txt br{display: none;}
    #box6 {margin-left: 0; margin-right: 0; padding-left: 5%; padding-right: 5%;}
    #box6 .box6_bg{margin: 0; padding: 0; background: none;}
    #box6 .box6_book{padding: 15px 25px;}
    #box7 #pap_about{padding: 0; display: block;}
    #box7 #pap_about li{width: 100% !important; margin: 0 0 15px 0;} 
    
    #implementing_company{margin-left: 0; margin-right: 0; padding-left: 5%; padding-right: 5%;}
    #implementing_company .implementing_company_wrp::after{bottom: -30px; left: -3%;}
    #implementing_company .implementing_company_wrp{margin-left: 0; margin-right: 0;}
    #implementing_company .implementing_company_list .slick-list{overflow: inherit; padding: 20px 0;}
    #implementing_company .implementing_company_list .implementing_company_box{margin-left: 3px; margin-right:3px;}
    #implementing_company .implementing_company_list .ic_box_img span{height: 180px; background-size: 80% auto;}
    #implementing_company .ic_box_main{padding: 15px 20px;}
    #implementing_company .ic_box_main .ic_box_title {font-size: 15px !important;}
    #implementing_company .implementing_company_list .slick-next, #implementing_company .implementing_company_list .slick-prev{width: 30px; height: 30px;}
} 




