@charset "utf-8";


section#title .main_ttl {
    font-size: 3.2vw;
}
.mv {
    background-size: cover;
    max-height: 580px;
    height: 62vw;
}
.mv__main {
    margin-top: 7vw;
    width: 80%
}
.mv .wrap a.btn  {
    font-size: 3.2vw;
    height: 9vw;
    bottom: -5vw;
}

.mv .wrap a.btn:before {
    width: 19.5vw;
    margin-right: 0;
    font-size: 1.8vw;
    padding: 0 1vw;
}

.mv a.btn:after {
    font-size: 2vw;
}
.mv__official {
    max-width: 166px;
    width: 12vw;
}
.mv__strong {
    height: 10vw;
    bottom: 7vw;
}
.mv__strong-item {
    font-size: 2vw;
    width: 26%;
}
.mv__strong-item strong {
    font-size: 3vw;
}
.mv .wrap {
    position: relative;
    margin: auto;
    height: 100%;
}
.wrap {
    width: 96% !important;
}
.mv__strong-list {
    gap: 3px;
}
ul#menu-global-navi01 a span b {
	display: none;
}
#gn ul li:last-child b {
    font-size: 2.8vw;
}
#gn ul li.tel {
    font-size: 1.2vw;
}
/**/
#sidebar {
    display: none;
}
.tb {
    display: block;
}
.sp {
    display: none !important;
}
.wrap {
    width: 96% !important;
}
a.btn {
    font-size: 2.3vw;
}
img.sp {
    margin: auto;
}
br.sp {
    display: none !important;
}
.blct.sp {
    display: none !important;
}
.search_box {
    display: none;
}
/*header*/
a#ac_btn {
    display: none;
}
a.hv.btn03 {
    font-size: 1.5vw;
}
.side_floating {
    display: none !important;
}
.footer_floating {
    display: none;
}

/**/
#top h3 {
    font-size: 2.6rem;
}
/**/
#gn ul li {
    min-width: 0;http://stg.keiri-saga-com.webstarterz.com/company/
}
#gn .wrap {
    width: 100% !important;
}
#gn ul li span {
    font-size: 1.5vw;
}
/**/
h1 {
    font-size: 1.45vw;
}
header {
    height: auto;
}
.header__left p {
    font-size: 1vw;
}
header .wrap {
    max-width: 1000px;
    padding-bottom: 2vw;
    height: inherit;
}

header .cmn_bloc .ct_box {
    position: inherit;
    width: inherit;
}

header .cmn_bloc .func_box {
    position: relative;
    transform: inherit;
    width: 20vw;
    gap: 1vw;
}
.header__left img {
    width: 40vw;
    max-width: 100%;
}
.header__download, .header__contact {
    width: 10vw;
    max-width: 100px;
}
.header__right span.tel {
    font-size: 3.6vw;
}

.header__right .time {
    font-size: 1.3vw;
}
/**/
div#gn {
    position: absolute;
}
div#ac_navi {
    display: block;
    width: 100%;
}

.bx-viewport {
    height: 50vw !important;
}

/**/
.wpcf7 textarea[name="your-message"] {
    width: 100%;
}
.bl_contact td:nth-child(1) {
    width: 24vw;
}
.bl_contact input.wpcf7-text {
width: 100% !important;
}
.bl_contact td:nth-child(1) {
    width: 24vw;
}
.bl_contact {
    padding: 30px 0;
}
.bl_contact td:nth-child(2) {
    width: 60vw;
}
section.bl_contact_banner p.tel_num {
    top: 9vw;
    left: 28vw;
    font-size: 5vw;
}
section.bl_contact_banner p.date {
    right: 7.9vw;
    position: absolute;
    top: 10.7vw;
    color: #00307f;
}
/**/
#main_contents {
width: 100%;
}
/**/
.bl_column4 li {
    margin-bottom: 1em;
}
.cmn_bloc .ct_box .tel_block {
    font-size: 0.8em;
    padding-right: 1vw;
}
.cmn_bloc .ct_box .tel_num {
    background-position: left bottom;
    background-size: 3vw;
}
.cmn_bloc .ct_box ul li {
    font-size: 1vw;
}
.cmn_bloc .ct_box ul li a {
    font-size: 1.2rem;
}
.ct_box span a {
    font-size: 1.2rem;
}
/**/
footer > div:nth-child(3) ul {
    width: inherit;
    padding: 3%;
}
footer > div.ftmenu.pc > div > div:nth-child(4) {
    display: none;
}
footer > div:nth-child(4) > footer > div > div > div.logo > p:nth-child(3) {
    padding-left: inherit;
    font-size: 1em;
}
footer .ftmenu ul {
    width: 200px;
}
footer .btn_cmn04 {
    padding: 1.5vw;
}
div#modal {
    display: none;
}
footer .cmn_bloc .ct_box .tel_num {padding: 0;}

.cmn_bloc .ct_box .tel_num span {
    font-size: 2.7vw;
    line-height: inherit;
}
footer .ct_box .tel_block div {
    margin-right: 0;
}
footer .ft_info .info_box ul li:nth-child(1) {
    width: 50%;
}
footer .ft_info .info_box ul li ul:last-child li {
    padding: 0;
}
/**/
.page_customer .pic_img {
width: 12em;
    margin-right: 1em;
    height: 10em;
}
.page_customer .box {
    padding-left: 13em;
}
.page_customer .logo_img {
    width: 7em;
    margin-right: 1em;
}
.page_customer .comment {
    padding-left: 0;
    margin-top: 2vw;
}
.page_customer .box02 {
    height: inherit;
}
.page_customer .box02 p {
    padding: 0 !important;
}
.page_header h2 {
    width: 92%;
    font-size: 5vw;
}

#contents {
    margin-top: 3rem;
    width: 100% !important;
}
/*  */
#gn ul li:last-child .sub-menu,#gn ul li:nth-child(5)  .sub-menu {
    right: 0;
    left: inherit;
}

#gn ul li:last-child .sub-menu:before,#gn ul li:nth-child(5)  .sub-menu:before {
    right: 6em;
        left: inherit;
}
#gn ul li:last-child .sub-menu:after,#gn ul li:nth-child(5) .sub-menu:after  {
    right: 6em;
        left: inherit;
}
.bx-wrapper .bx-pager {
    bottom: 1em !important;
}
.bx-wrapper .bx-pager.bx-default-pager a {
    width: 20px !important;
    height: 20px !important;
    border-radius: 20px !important;
}
/**/
.wrap02 {
    width: 95%;
}
/**/
.bl_free > div.wrap > img {
    padding: 6em 0;
}
#mv {
    background-size: cover;
    background-position: center 0px;
    height: 46vw;
    padding-top: 7.8vw;
    }
    
/**/
.colour_title .sub {
    font-size: 4vw;
}
.colour_title .main {
    font-size: 5.1vw;
}
.bl_onayami span.under_line {
    margin: inherit;
}
/**/
.main span {
    font-size: 5vw;
}
.bl_free {
    background-position: bottom;
}
.bl_free .tel_block p.name {
    left: 7vw;
    font-size: 2.5vw;
}
.bl_free .btn .tel_num {
    left: 58px !important;
    bottom: 28px !important;
    font-size: 3.6rem !important;
}
#top .bl_free .btn .tel_num {
    bottom: 9px !important;
}
#top .bl_free .btn .date {
    bottom: 10px;
}
.bl_free .btn .date {
    bottom: 16px;
    right: 160px;
    left: inherit;
    font-size: 1vw;
    line-height: 1.8em;
}
/**/
.blcmn04 .about_box>li .sttl {
    min-height: 6vw;
}
.blcmn04 .about_box>li .sttl img {
    height: 4vw;
    margin-bottom: 2vw;
}
.blcmn04 .about_box>li {
    width: 49%;
    margin-bottom: 10vw;
    margin-right: inherit;
}
ul.about_box {
    flex-wrap: wrap;
}
.blcmn04 .about_box>li .inner .txt2 {
    padding-top: 3vw;
    width: 32vw;
    margin: auto;
    font-size: 5.3vw;
    background: url(../img/header/hd_fd.jpg) bottom 17% left 1% no-repeat;
}
.blcmn04 .about_box li .inner {
    width: auto;
    height: 100%;
}
.blcmn04 .about_box li iframe {
    height: 100%;
}
.blcmn04 .about_box>li .inner .txt1 {
    font-size: 3vw;
    padding-bottom: 0;
    line-height: 1.4em;
}
.blcmn04 .about_box>li .inner .txt3 {
    font-size: 1.1em;
    padding-top: 3vw;
}
.company_name {
    padding: 1.8em 0;
    font-size: 1.5em;
}
/**/
.blcmn05 .wrap .l_box {
    width: 100% !important;
    margin-bottom: 5vw;
}
.blcmn05 .wrap ul.box {
    flex-wrap: wrap;
}
.blcmn05 ul.news {
    width: auto;
}
/**/
.bl_Performance_block .text p {
        font-size: inherit;
}

a.btn02 span.sub {
    font-size: 2.4vw;
}
.blct .tel_num {
    font-size: 5.8vw !important;
    left: 34vw;
    bottom: 8vw;
}
.blct .time {
    font-size: 0.6vw !important;
    bottom: 9.4vw;
    right: 4.4vw;
}
/**/
.blcmn01.inner2.red_block > div > div.sp_display_none > ul {
    justify-content: start;
}
.blcmn01.inner2.red_block li {
    width: 31% !important;
    margin-right: 2%;
}
.title03.under_line {
    margin: 40px 0 80px;
}
.bl_Performance_block .text b {
        height: 180px !important;
}
.dynamic_sidebar .title {
    padding: 1vw;
}
.main_block .box_left .under_box ul {
    font-size: 1.9vw;
}
.main_block .box_right .title_01 .sub_title {
    font-size: 2.4vw;
    padding: 0vw 0;
}

.main_block .box_right .title_01 a.btn {
    font-size: 2vw;
}

.main_block .box_right .title_01 .button_block a.btn:after {
    position: inherit;
    padding-left: 1.5vw;
    top: inherit;
}
.main_block .box_right .title_01 {
    height: 13vw;
}
.main_block .box_left .title_02 {
    padding: 1vw 0;
    height: 14vw; 
}

.main_block .box_left .title_02 a.btn {
    font-size: 1em;
    width: 70%;
}

.main_block .box_left .under_box .green_ttl {
    font-size: 2.7vw;
}
#top {
    width: 100%;
    margin-top: 0;
}
.tab__label {
    width: 15.6vw;
}
.tab__switch:checked + .tab__label + .tab__content {
    padding: 0;
}

.bl_post .inner.half ul {
    padding: 0;
    border: inherit;
}

.bl_post .inner ul li a {
    padding: 1vw 0 1vw 3vw;
}

.bl_post .inner.half ul li a dl dd {
    width: 98%;
}
.bl_post .inner.half {
    width: 100%;
}
.bl_ct ul {
    flex-wrap: wrap;
}
.bl_ct ul li:nth-child(2) img{
    display:none;
}
.bl_ct ul li {
    width: 550px;
    margin: auto;
}
.bl_ct ul li:first-child {
height: 27vw;
    width: 100%;
}
.bl_ct ul li:first-child img {
    width: 56vw;
    right: 55%;
}
.bl_ct .txt {
    padding: 20px 0 20px;
    width: 440px;
}
.bl_ct {
    padding: 0vw 0 8vw;
}

.bl_ct ul li .tel_block {
    top: inherit !important;
    right: inherit !important;
    position: inherit !important;
}
.bl_ct ul li .tel_block p.name {
    left: 0;
    font-size: 19px;
    position: inherit;
    display: inline-block;
    top: 0;
    transform: inherit;
    line-height: inherit !important;
    width: 150px;
}

.bl_ct ul li:first-child .tel_num {
    padding-left: 0;
    position: absolute;
    right: 0;
    top: 13.3vw;
    left: 28vw;
    bottom: inherit;
    font-size: 8vw;
    line-height: 0 !important;
    width: 52vw;
}
.bl_ct ul li .tel_block {
    top: inherit !important;
    right: inherit !important;
    position: inherit !important;
    width: 100%;
}
.bl_ct ul li:first-child .date {
    bottom: -19.2vw;
    left: 30vw;
    font-size: 1.9vw;
    width: inherit;
}
.bl_ct_sp {
    display: none;
}
#top h4 {
    font-size: 2.4rem;
}

.bl_flow {
    z-index: -1;
    position: relative;
}
.bl_ct ul li .tel_num {
    position: absolute;
    right: 0;
    top: 0;
}
/**/
#page .page_under04 .inner {
    margin: auto;
}

/**/
.bl_free .btn {
    margin: auto;
}
#page .bl_free .btn .date {
    width: 100%;
    left: 64px;
    font-size: 10px;
    top: 194px;
}
#page .bl_free .tel_block {
    width: 490px !important;
    left: -140px;
    top: 68px;
}
/*contents_menu*/
.contents_menu {
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif;
    margin-bottom: 7vw;
}

.contents_menu .ac {
    position: relative;
}

.contents_menu .ac b {
    display: block;
    padding: 3.07vw 5.33vw 3.47vw;
    background: #fff;
    color: #f26767;
    font-size: 4.80vw;
    font-weight: bold;
    border: 0.27vw solid #f26767;
}

.contents_menu .ac .accordion_icon {
    top: 2.20vw;
    background: #f26767;

}
.contents_menu ul li a {
    display: block;
    border-bottom: 0.3vw solid #f88000;
    border-top: none;
    text-decoration: none;
    padding: 4vw 8vw 4vw 4vw;
    font-size: 4vw;
    font-weight: bold;
    color: #3a3a3a;
    background: #ffffff;
    position: relative;
    line-height: 1.2;
}

.contents_menu ul li a:after {
    content: " \f105";
    font-family: "Font Awesome 5 Free";
    color: #ff6605;
    position: absolute;
    right: 3vw;
    top: 35%;
}

.contents_menu ul .sub-menu {
  display: none;
}

.contents_menu ul .sub-menu li a {
background: #fff;
    color: #545454;
    border-bottom: 0.13vw solid #00c500;
}

footer .contents_menu ul .sub-menu li a {
    border-left: none;
    border-right: none;
}

.contents_menu ul .sub-menu li a:after {
color: #00c500;
}
.contents_menu {
    display: none;
}
/*  */
header .btn_box {
    display: none;
}
blcmn01 ul.img_banner li {
    width: 32.3%;
}
.blcmn01 ul {
    justify-content: space-around;
}
.bl_free {
    display: none;
}
.bl_reason .accordion_box {
    width: 48%;
    margin-bottom: 70px;
}
.bl_flow .accordion_box {
    width: 48%;
    margin-bottom: 60px;
}
.bl_company_info > div > div.display_none > ul > li:nth-child(1) {
    display: none;
}
.bl_company_info ul.about_box > li {
    width: 32%!important;
}
footer .btn_box {
    display: none;
}
ul.img_banner li {
    width: 48% !important;
}
/* 2023.05.22 サイドフローティング追加
======================================================== */
.Bnr{
  position: relative;
  margin: 0 auto;
  width: 1200px;
  z-index: 2;
  display: none;
}
.Bnr .Bnr__img{
    position: fixed;
    bottom: 190px;
    box-shadow: 0 4px 5px 0 rgb(0 0 0 / 14%), 0 1px 10px 0 rgb(0 0 0 / 12%), 0 2px 4px -1px rgb(0 0 0 / 20%);
    z-index: 88;
    left: 0;
    width: 230px;
    border: 3px solid var(--main-color);
    z-index: 999;
}
.Bnr__img__inner{
  box-sizing:border-box;
  padding: 10px;
  background-color: #fff;
}
.Bnr .Bnr__img__inner a{
  display: block;
}
.Bnr .Bnr__img p.close{
    position: absolute;
    left: -4px;
    top: -42px;
    padding: 8px;
    background-color: var(--main-color);
}
.Bnr .Bnr__img p.close a{
  display: block;
  width: 20px;
  height: 25px;
  text-align: center;
}
.Bnr .Bnr__img p.close a span{
  display: block;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.Bnr .Bnr__img p.close a i{
    font-size: 20px;
    z-index: 888;
    color: #fff;
}
.Bnr .Bnr__img p.image {
    overflow: hidden;
    max-height: 150px;
    padding: 10px 0;
}
.Bnr p.title {
    font-weight: bold;
    color: var(--main-color) !important;
    font-size: 17px;
    display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.Bnr .Bnr__img__inner a p {
    color: black;
    line-height: 1.4em;
}
.Bnr p.text {
	font-size: 14px;
}
.Bnr .Bnr__img__inner a.btn {
    background-color: var(--main-color);
    color: white;
    text-decoration: none;
    border-radius: 50px;
    padding: 25px 0px;
    font-weight: bold;
    font-size: 18px;
    margin: 10px 0;
	width: 100%;
	border: none;
    position: relative;
}
.Bnr .Bnr__img__inner a.btn:before {
  content: "詳しくはこちら";
  display: inline-block;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.Bnr .Bnr__img__inner a.btn:after {
	position: absolute;
	display: inline-block;
    content: '\f138';
    font-family: Font Awesome\ 5 Free;
    right: 15px;
    top: 50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    color: #eae7df;
    font-weight: 900;
    padding-left: 10px;
    font-size: 15px;
}
.bl_contact span.tel {
    top: 5vw;
    left: 21vw;
    font-size: 5vw;
}
.bl_contact .date {
    top: 11vw;
    left: 17vw;
    font-size: 2vw;
}
.bl_reason__item .ttl {
    font-size: 2.8vw;
}
.bl_reason .text {
    font-size: 1.8vw;
    padding: 1vw;
}
.bl_reason__item {
    border: 2px solid var(--main-color);
    width: 31%;
    height: 54vw;
    position: relative;
    padding-top: 4vw;
    border-radius: 9px;
    box-sizing: border-box;
}