@charset "UTF-8";
/* CSS Document */
@import url('reset.css');
@import url('global.css');
@import url('font.css');

/*------------------------------------------------------

	common css

------------------------------------------------------*/

html { font-size: 62.5%; }

h1,h2,h3,h4,h5,h6 { font-size: 100%; }

body { position: relative; min-width: 1100px; color: #333; overflow: hidden; font-size: 1.6em; }

@media (max-width: 767px) {
    body { min-width: auto; }
}

a:hover { opacity: 0.8; }
.font1 { font-family: 'M PLUS 1p', sans-serif; }

figure { text-align: left; }
figure img { width: 100%; vertical-align: bottom; }
figcaption { margin: 0px; color: #0086E0; font-weight: bold; font-size: 1.6rem;}

.bg-gray { background: #EEEEEE; }

.pc { display:block; }
.sp { display:none; }

@media (max-width: 767px) {
    .fullScreen { height: auto; border-radius: 0px; margin: 0 calc(50% - 50vw) 20px; width: 100vw; }

    .pc { display: none; }
	  .sp { display: block; }
}

/* ---------------
header
------------------- */

header { width: 100%; /*background: #ffccff;*/ position: relative; border-bottom: 4px solid #1D4A8C;}
header 

@media (max-width: 767px) {
    header{ height: 48px; }
}

#head-logo { width: 385px; overflow: hidden; height: 100px; }
#head-logo:hover { opacity: 1; }
#head-logo img { width: 100%; }

@media (min-width: 1200px){
    #head-logo { margin-left: 40px; }
}
@media (max-width: 767px) {
    #head-logo { width: 230px; height: auto; margin-left: 5px; }
}

header .l_col-head { position: relative; height: 100%; /* max-width: 1400px; */margin: 0px auto; height: auto; padding-top: 5px; padding-bottom: 5px;}

@media (max-width: 767px) {
    header { background: #fff; z-index: 999; }
    header .l_col-head { background: #fff; }
}

@media (min-width: 1200px){
#head-info { margin-right: 40px; }
}

@media (min-width: 768px) {
  #head-info .l_col-info { width: 700px;}
}

#head-info .l_col-info { align-items: center; margin-right: 0; margin-left: auto; }
#head-info .comment { font-size: 1.15rem; margin-bottom: 10px;letter-spacing: -0.1px;}

#head-info .catch { font-size: 2.2rem; color: #F82811; }
#head-info .tel { font-size: 3.2rem;  border:1px solid #E4E4E4; border-radius: 10px; padding: 3px 15px 7px 15px; /* height: 48px; */ /* vertical-align: top; */ position: relative; background: #fff;}
#head-info .tel a { color: #F82811; text-decoration: none; vertical-align: middle; }
#head-info .tel address { display: inline-block; margin-left: -10px; font-style: normal; }
#head-info .tel address span { margin-right: 5px; vertical-align: middle; }
#head-info .tel address strong { vertical-align: top; display: inline-block; }
#head-info .kagiQ-phone:before { font-size: 20px; background: #0086E0; padding: 4px; border-radius: 25%; color: #fff; width: 28px; height: 28px; box-sizing: border-box; display: inline-block; vertical-align: middle; }

#head-info .mail { color: #1D4A8C; font-weight: bold; border:1px solid #E4E4E4; border-radius: 10px; padding: 10px; /* height: 48px; */ padding: 8px 10px 5px 10px; background: #fff;} 
#head-info .mail div { display: inline-block; margin-left: 5px; line-height: 1.4rem;}
#head-info .mail .text-blue  { font-size: 1.2rem; }
#head-info .kagiQ-contact { font-size: 1.8rem; background: #0086E0; padding: 5px; border-radius: 25%; color: #fff; width: 28px; height: 28px; display: inline-block; box-sizing: border-box; vertical-align: text-bottom; }


/*#head-info strong { font-weight: normal; }*/

.text-blue { font-size: 12px; color: #1D4A8C; font-weight: bold; display: inline-block; line-height: 1.25; /*height: 100%; */}

#gnav_pc{ display: -webkit-flex; display: flex;  -webkit-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: space-between; ustify-content: space-between; list-style: none; /* padding-top: 10px; padding-bottom: 10px; */ font-size: 1.8rem;  padding: 15px 0px; }

#gnav_pc li { -webkit-flex: 0 1 20%; flex: 0 1 20%;  width: auto; text-align: center; border-left: 1px dotted #DDDDDD;}

#gnav_pc li:last-child { border-right: 1px dotted #DDDDDD; }

#gnav_pc li a:hover { color: #0086E0; background: #FFE934; }

#gnav_pc li a { color: #333; text-decoration: none; display: block; position: relative; font-weight: bold; letter-spacing: 1px; height: 30px; line-height: 30px; }
#gnav_pc li a.active { color: #0086e0; }


/* ---------------
sp-menu
------------------- */
.btn-trigger { position: relative; width: 24px; height: 20px; cursor: pointer; margin: 6px 5px 0px 0px; }
.btn-trigger span {  position: absolute; left: 0; width: 100%; height: 3px; background-color: #0086E0; border-radius: 4px; }
.btn-trigger, .btn-trigger span { display: inline-block; transition: all .5s;box-sizing: border-box; }

.btn-trigger span:nth-of-type(1) { top: 0; }
.btn-trigger span:nth-of-type(2) { top: 8px; }
.btn-trigger span:nth-of-type(3) { bottom: 0; }

@media (max-width: 767px) {
    #gnav_sp { position: fixed; top: 48px; left: 0; right: 0; width: 100vw; height: 100vh; background: #fff; z-index: 1; display: none; padding-bottom: 200px; overflow-y: scroll; }
    #gnav_sp .address-wrap { background: #f82811; padding: 0 15px 15px; }
    #gnav_sp .address-wrap .catch { color: #ffe934; font-size: 2.2rem; font-weight: 600; padding: 4px 0; text-align: center; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
    #gnav_sp .address-wrap .catch::before ,
    #gnav_sp .address-wrap .catch::after { content: ''; height: 2px; flex-grow: 1; background-color: #ffe934; }
    #gnav_sp .address-wrap .catch::before { margin-right: 1rem; }
    #gnav_sp .address-wrap .catch::after { margin-left: 1rem; }
    #gnav_sp .address-wrap .link-box { background: #fff; border-radius: 8px; padding: 10px; }
    #gnav_sp .address-wrap .tel { margin-bottom: 15px; }
    #gnav_sp .address-wrap .tel address { max-width: 325px; font-style: normal; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 0 auto 4px; }
    #gnav_sp .address-wrap .tel address > span:not(.kagiQ-phone) { font-size: 1.2rem; margin-right: 7px; }
    #gnav_sp .address-wrap .tel address > a { font-size: 3.0rem; color: #f82811; text-decoration: none; line-height: 1; font-weight: 600; }
    #gnav_sp .address-wrap .tel > p { max-width: 325px; font-size: 1.8rem; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 0 auto; }
    #gnav_sp .address-wrap .tel > p span { background: #1d4a8c; color: #fff; font-size: 1.4rem; padding: 1px 8px 0 8px; margin-right: 10px; }
    #gnav_sp .address-wrap > ul { list-style: none; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
    #gnav_sp .address-wrap > ul li { width: calc( (100% / 2) - 8px ); }
    #gnav_sp .address-wrap > ul li a { text-decoration: none; font-size: 1.4rem; line-height: 1; display: block; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
    #gnav_sp .address-wrap span[class^='kagiQ-'] { font-size: 20px; background: #0086E0; padding: 4px; border-radius: 25%; color: #fff; width: 28px; height: 28px; box-sizing: border-box; display: inline-block; vertical-align: text-bottom; }
    #gnav_sp .address-wrap .kagiQ-phone { margin-right: 7px; }
    #gnav_sp .address-wrap .kagiQ-contact { margin-right: 7px; }
    #gnav_sp .address-wrap .kagiQ-access { margin-right: 7px; }
    #gnav_sp ul.site-list { font-size: 1.6rem; list-style: none; }
    #gnav_sp ul.site-list li { border-bottom: 1px solid #e4e4e4; }
    #gnav_sp ul.site-list li a { color: inherit; text-decoration: none; font-weight: 600; display: block; padding: 12px 10px 12px 32px; position: relative; }
    #gnav_sp ul.site-list li a:before { content: ''; position: absolute; top: 50%; left: 15px; border-right: 2px solid; border-bottom: 2px solid; border-color: #f82811; width: 8px; height: 8px; margin-top: -4px; transform: rotate( -45deg ); }

    /* ハンバーガーメニュー周辺CSS */
    header.open { position: fixed; top: 0px; left: 0px; right: 0px; }

     .btn-trigger:not(.firstRead) span:nth-of-type(1) {
        animation: menu-bar01 .55s forwards;
      }
      @keyframes menu-bar01 {
        0% {
          transform: translateY(9px) rotate(45deg);
        }
        50% {
          transform: translateY(9px) rotate(0);
        }
        100% {
          transform: translateY(0) rotate(0);
        }
      }
      .btn-trigger:not(.firstRead) span:nth-of-type(2) {
        transition: all .25s .25s;
        opacity: 1;
      }
      .btn-trigger:not(.firstRead) span:nth-of-type(3) {
        animation: menu-bar02 .55s forwards;
      }
      @keyframes menu-bar02 {
        0% {
          transform: translateY(-8px) rotate(-45deg);
        }
        50% {
          transform: translateY(-8px) rotate(0);
        }
        100% {
          transform: translateY(0) rotate(0);
        }
      }
      header.open .btn-trigger span:nth-of-type(1) {
        animation: active-menu-bar01 .55s forwards;
      }
      @keyframes active-menu-bar01 {
        0% {
          transform: translateY(0) rotate(0);
        }
        50% {
          transform: translateY(9px) rotate(0);
        }
        100% {
          transform: translateY(9px) rotate(45deg);
        }
      }
      header.open .btn-trigger span:nth-of-type(2) {
        opacity: 0;
      }
      header.open .btn-trigger span:nth-of-type(3) {
        animation: active-menu-bar03 .55s forwards;
      }
      @keyframes active-menu-bar03 {
        0% {
          transform: translateY(0) rotate(0);
        }
        50% {
          transform: translateY(-8px) rotate(0);
        }
        100% {
          transform: translateY(-8px) rotate(-45deg);
        }
      }

}


/* ---------------
container
------------------- */

.container { width: 1100px; margin: 0 auto; }
/* .container.l_col-contents { margin-top: 120px; } */

@media (min-width: 768px) {
  .container.l_col-contents { margin-top: 120px; }
}

@media (max-width: 767px) {
    .container { width: calc(100% - 30px); }
    .container.l_col-contents { /*margin-top: 76px;*/ text-align: center; }
}

/* ---------------
breadcrumb-a
------------------- */

.breadcrumb-a a { color: #007dd0; text-decoration: underline; }

.breadcrumb-a { display: block; width: 100%; }
.breadcrumb-a ul { max-width: 1100px; margin: 10px auto 0px auto; }

.breadcrumb-a.foot { border-top: 1px solid #E4E4E4; }
.breadcrumb-a.foot ul { margin: 20px auto 0px auto; }

@media (min-width: 768px){
  .breadcrumb-a.foot { margin-top: 70px; }
  
}

@media (max-width: 767px){
    .breadcrumb-a { display: none; }
    .breadcrumb-a.foot { margin-top: 30px; padding-left: 15px; display: block; }
    
}
/* ---------------
main
------------------- */

main { /* background: #ccffff; */ box-sizing:border-box; width: 815px; padding: 0px 40px; }

#page-title { height: 120px; background: #0086E0; }

#page-title .container { display:-webkit-box; display:-ms-flexbox; display:flex;  -webkit-align-items: flex-start; align-items: flex-start; align-items: center; height: 100%;  }
#page-title .container h1 { font-size: 3.6rem; color: #fff; width: auto; font-weight:normal; }
#page-title .container div { font-size: 1.8rem; vertical-align: middle; color: #F8ED54; margin-left: 15px; padding-left: 15px; }

@media (min-width: 768px) {
  #page-title { left: 0; position: absolute; margin: -120px auto 0 auto; width: 100%; }
}

@media (max-width: 767px) {
    h2 { position: static; margin-top: 0px; height: auto; }
    main { width: 100%; padding: 0px; margin-bottom: 0px; }
    header [class*="l_col-"] > *, footer [class*="l_col-"] > * { margin-bottom: 0px; }
    #page-title .container h1 { font-size: 2.8rem; }
    #page-title .container { -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; }
    #page-title { /* position: static; */ height: auto; padding: 10px 0 14px 0; /*margin-top: -76px;*/ margin: 0 calc(50% - 50vw); width: 100vw; }
    #page-title .container h2 { font-size: 2.6rem; line-height: 1.4; } 
    #page-title .container div {  margin-left: 0px; padding-left: 0px; font-size: 1.4rem; font-weight: bold; line-height: 1; }

}


/* maincontents */
#page-contents { margin-top: 60px; }
#page-contents .main-visual { width: 100%; }

#page-contents section { margin-bottom: 70px; }

.title-a { border-top: 5px solid #0086E0; font-size: 2.4rem; padding: 10px 0px; margin-bottom: 40px; position: relative; padding-left: 14px; background-size: 3px 1px; background-position: bottom;background-repeat: repeat-x; background-image: linear-gradient(to right, #007dd0, #007dd0 1px, transparent 1px, transparent 1px);     font-family: 'M PLUS 1p', sans-serif; }

.title-a::before { content:''; border-left: 6px solid #FFE934; position: absolute; height: calc(100% - 20px); left: 0; top: 10px; }

.title-b { font-size: 2.0rem; color: #0086E0; margin-bottom: 20px; font-family: 'M PLUS 1p', sans-serif; }

.text { line-height: 1.8; margin-bottom: 40px; }

.btn-a { width: 360px; border-radius: 200px; border: 1px solid #fff; background: #FFE934; display: block; padding: 14px 0px; overflow: hidden; text-decoration: none; box-shadow: 0 3px 6px rgba(0,0,0,0.1); color: #0086E0; font-weight: bold; text-align: center; background: rgb(255,218,51); background: linear-gradient(0deg, rgba(255,218,51,1) 0%, rgba(255,233,52,1) 100%); font-size: 1.8rem; position: relative; }

.btn-a:hover { opacity: .8; }

.btn-a:after { content: ''; position: absolute; top: 50%; right: 10px; transform: translateY(-50%) rotate( 45deg ); border-top: 2px solid #0086E0; border-right: 2px solid #0086E0; width: 9px; height: 9px; }

.link-a { position: relative; display: inline-block;}

.link-a:after { content: ''; position: absolute; top: 68%; right: -10px; transform: translateY(-50%) rotate( 45deg ); margin-top: -7px; border-top: 2px solid #0086E0; border-right: 2px solid #0086E0; width: 9px; height: 9px; }

.lead-a { font-size: 2.0rem; font-weight: bold; color: #1D4A8C; margin-bottom: 10px;  font-family: 'M PLUS 1p', sans-serif;}
.lead-b { font-size: 2.0rem; font-weight: bold; color: #F82811;  margin-bottom: 10px; font-family: 'M PLUS 1p', sans-serif;}

.l_col-3 { text-align: center; }

.l_col-2 { text-align: center; }
.l_col-2 img { width: 100%; }

.list-a { text-align: left; }
.list-a li { list-style-type: none; position: relative; padding-left: 0.6em; }

 .list-a li:before {border-radius: 50%; width: 5px; height: 5px; display: block; position: absolute; left: 0; top: 0.6em; content: ""; background: #1ec4e6; }

.bg-yellow { background: #FCFBD2; padding: 10px; }
.list-a.bg-yellow li:before { background: #FF9400; }

.bg-blue { background: #EDF3FA; padding: 10px; }
.list-a.bg-blue li:before { background: #0086E0; }

.bg-red { background: #F9EDF4; padding: 10px; }
.list-a.bg-red li:before { background: #F82811; }


 .table-a { width: 100%; text-align: left;}
 .table-a tr { border-bottom: 1px solid #0086E0; }
 .table-a th { display: inline-block; width: 25%; vertical-align: top; color: #0086E0;  padding: 10px 10px 5px 10px; }
 .table-a td { display: inline-block; width: 74%; padding: 10px 0px; }

 @media (min-width: 768px) {

  #tenpoPhotoWrap.l_col-2 { padding: 0px 20px; }
  #tenpoPhotoWrap.l_col-2 figure { width: 330px; }
  #tenpoPhotoWrap.l_col-2 figure:nth-child(n + 3)  { margin-top: 10px; }
  
 }


 @media (max-width: 767px) {
    #page-contents { text-align: left; margin-top: 30px; }
    #page-contents .main-visual { height: auto; border-radius: 0px; /* margin: 0 calc(50% - 50vw) 20px; width: 100vw; */ }
    /*
    #page-contents .main-visual img {  position: absolute; left: 0px; }
    #page-contents .main-visual::before { content: "";display: block; padding-top: 50%; /* 1:1  }
    */
    #page-contents p { text-align: left; }

    .title-a { margin-bottom: 20px; font-size: 2rem; }

    .btn-a { width: 100%; }
    .table-a td,.table-a th { width: 100%; display: block; }
    .table-a th {border-bottom: 1px solid #0086E0; padding-left: 0px;  }
    .table-a tr { border-bottom: 0px solid #e4e4e4; }

    #shop-info .table-a th { border-bottom: 1px solid #e4e4e4; }
    #shop-info .table-a .l_col-2 dt { margin-bottom: 0px; }
    #shop-info .table-a .l_col-2 dd:last-of-type { margin-bottom: 0px; }
    
 }


/* ---------------
sidenav
------------------- */

#page-side { position: relative; }
#page-side { margin-top: 50px; /* background: #ccccff; */ width: 245px; }
#page-side  .side-title01 { font-size: 2.0rem; }

#page-side .side-title01 { margin-bottom: 20px; }
#page-side .side-title01 span { background: #E02811; width: 36px; height: 36px; border-radius: 50%; display: inline-block;  color: #fff; padding: 8px 7px 7px 9px; margin-right: 10px; position: relative; }
#page-side .side-title01 span:before {  }
#page-side ul>li>ul { padding-left: 15px; }

#page-side .side_list { border-top: 3px solid #FFE934; padding: 20px; line-height: 3.2rem; }

#page-side .side_list ul {  }
#page-side .side_list li { list-style: none; }
#page-side .side_list li:last-child { margin-bottom: 0px; }
#page-side .side_list li a { color: #333; text-decoration: none; }
#page-side .side-inner span { margin-right: 10px; }

@media (min-width: 768px) {
  #page-side {}
  #page-side::before { content: ''; position: absolute; width: 1px; height: 100%; background-color: #e4e4e4; left: -40px; top: 0;}
    #page-side .side-inner { margin-bottom: 30px; }
  }
  
  @media (max-width: 767px) {
      #page-side { width: 100%; border: 2px solid #ffe934; border-radius: 6px; }
      .l_col-contents nav { width: 100%; }
      #page-side .side-title01 { margin-bottom: 0; font-size: 1.8rem; padding: 7px 10px; text-align: left; }
      #page-side .side-inner:not(:first-child) .side-title01 { border-top: 2px solid #ffe934; }
      #page-side .side-title01 [class^='kagiQ-'] { width: 28px; height: 28px; font-size: 17px; padding: 5px; }
      #page-side .side-title01 .kagiQ-key02 { padding: 5px 4px 5px 6px; }
      #page-side .side_list { border: none; display: none; border-top: 2px solid #ffe934; text-align: left; padding: 20px 20px 20px 40px; }
  
  }

/* ---------------
footer
------------------- */

footer {  width: 100%; /* background: #ffcccc; */ border-top: 1px solid #E4E4E4; padding-top: 35px; margin-top: 20px; }

/* footinfo */
#foot-info { position: relative; margin-bottom: 20px; }

@media (max-width: 767px) {
    #foot-info .l_col-foot { -webkit-flex-direction: column; flex-direction: column;-webkit-align-items: center; align-items: center; }
}

#foot-info .sns { list-style: none; margin: 30px 0px 20px 0px; }
#foot-info .sns li { list-style: none; width: 50px; height: 50px;}
#foot-info .sns li img { width: 100%; }

#foot-info .l_col-sns { -webkit-justify-content: flex-start; justify-content: flex-start; }
#foot-info .l_col-sns > * { margin-right: 20px; }

#foot-info .shopinfo dt { background: #1D4A8C; width: 100px; color: #fff; display: inline-block; font-size: 1.4rem; text-align: center; padding: 2px 0px; margin-bottom: 10px;   vertical-align: top;}
#foot-info .shopinfo dd { width: 70%; display: inline-block; font-size: 1.8rem;}

#foot-info-L { width: 55% }
#foot-info-R { width: 45% }

#foot-info-L img { width: 490px; margin-bottom: 10px;}

#foot-info .foot-link { text-align: right; margin-right: 40px;}
#foot-info .foot-link a { width: 80%; text-decoration: none; color: #F82811; font-size: 1.8rem; font-weight: bold; position: relative;}

#popupTel { position: fixed; left: 0;  bottom: -6px; width: 100%; z-index: 200; background: #F82811; border-top: 2px solid #fff; text-align: center; }
#popupTel > .inner { display: inline-block; margin: 0 auto; position: relative; }
#popupTel a { opacity: 1; height: 50px; width: 100%; display: block; position: relative; color: #fff; font-size: 29px; padding-left: 30px; text-decoration: none; white-space: nowrap; }
#popupTel .kagiQ-phone { position: absolute; transform: rotate(90deg); color: #F82811; background: #fff; padding: 4px; font-size: 20px; border-radius: 5px; top: 8px; margin: 0px auto; display: block; left: -5px; }
#popupTel a img { width: 100%; }
#popupTel .yellow { color: #ffe934; font-size: 1.4rem; padding-left: 5px; height: 100%; vertical-align: middle; }
 


@media (min-width: 768px) {
    #foot-info .shopinfo { height: 90px; }
    #foot-info-R.l_col-info-R { -webkit-flex-direction: column-reverse; flex-direction: column-reverse; }
}
@media (max-width: 767px) {
    #foot-info .sns { margin: 15px 0px 10px 0px; }

    #foot-info .shopinfo dt { width: 80px; margin-right: 10px; font-size: 1.2rem;}
    #foot-info .shopinfo dd { width: 100%; }

    #foot-info-L img { width: 100%; margin-bottom: 10px;}
    #foot-info .foot-link { text-align: left; }

    #foot-info-L, #foot-info-R { width: 100% }
    #foot-info-L img { width: 100%; margin: 0px auto 20px auto; display: block;}
    #foot-info .shopinfo dd { margin-bottom: 10px; font-size: 1.6rem; }
}

/* #foot-info-L a { text-decoration: none; color: #F82811; font-size: 1.8rem; font-weight: bold; position: relative;} */

#foot-info .foot-link a:after { content: ''; position: absolute; top: 12px; right: -12px; margin-top: -7px; border-top: 2px solid #F82811; border-right: 2px solid #F82811; transform: rotate( 45deg ); width: 9px; height: 9px; }

.foot-color1 { width: 100%; background: #0086E0; }

/* footcontact */

#foot-contact  { /* height: 140px; */ padding: 20px 0px;}
#foot-contact .l_col-contact { -webkit-justify-content: center; justify-content: center; align-items: center;}
#foot-contact .l_col-contact > * { width: calc( (100% / 3) - 26.66px ); }
#foot-contact .l_col-contact dl:first-child { margin-right: 39px; }
#foot-contact .l_col-contact dl:last-child { margin-left: 39px; }
#foot-contact dl {  border-radius: 8px; background: #FFF; box-sizing: border-box; border: 2px solid #fff; text-align: center; position: relative; }

#foot-contact dl dt { background: #F82811; border-radius: 8px 8px 0px 0px; color: #fff; font-size: 1.4rem; padding: 5px 0px; font-weight: bold;}
#foot-contact dl dd { width: 100%; overflow: hidden;  }

#foot-contact .kagiQ-phone:before { font-size: 20px; background: #0086E0; padding: 4px;  border-radius: 25%; color: #fff; width: 28px; height: 28px; box-sizing: border-box; display: inline-block; vertical-align: text-bottom; }
#foot-contact .kagiQ-contact:before { font-size: 20px; background: #0086E0; padding: 4px;  border-radius: 25%; color: #fff; width: 28px; height: 28px; box-sizing: border-box; display: inline-block; vertical-align: middle; }
#foot-contact .icon-line:before { width: 28px; height: 28px; 
background-size:cover; display: inline-block; vertical-align: text-bottom; }


#foot-contact .tel { font-size: 3.2rem; color: #1D4A8C; padding: 9px 0px; }
#foot-contact .tel a { color: #1D4A8C; text-decoration: none; }
#foot-contact .mail { font-size: 2.4rem;  padding: 14.5px 0px; }
#foot-contact .mail a { color: #1D4A8C; text-decoration: none;    vertical-align: middle; }
#foot-contact .mail a span {  }
#foot-contact .line { font-size: 2.4rem; color: #00BA00; padding: 14.5px 0px; position: relative; }
#foot-contact .line a { color: #00BA00; text-decoration: none; }
#foot-contact .line a span { background-image: url(/wp-content/themes/base/images/common/icon-line.png); width: 28px; height: 28px; background-size:contain; display: inline-block;     box-sizing: border-box; vertical-align: middle; }

#foot-contact .line .kagiQ-phone:before { background: #00BA00; }

@media (max-width: 767px) {
#foot-contact  { /* height: 140px; */ padding: 15px 0px; }

#foot-contact .l_col-contact { -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: center; align-items: center; }
#foot-contact .l_col-contact dl:first-child { margin-right: 0px; }
#foot-contact .l_col-contact dl:last-child { margin-left: 0px; }
#foot-contact .l_col-contact dl:not(:first-child){ margin-top: 15px; }
#foot-contact .l_col-contact > * { width: 100%; }

#foot-contact .kagiQ-phone:before { vertical-align: baseline; }

#foot-contact .tel { padding: 0px 0px; }
#foot-contact .mail { padding: 5px 0px; }
#foot-contact .mail { font-size: 2.2rem; }
#foot-contact .line { padding: 5px 0px; }
#foot-contact .line { font-size: 2.2rem }
}

/* footlinker1 */

#foot-linker1 { font-size: 1.2rem;  text-align: center; position: relative; padding: 22px;}
#foot-linker1 a { color: #1D4A8C; text-decoration: none; }
.foot-color2 { background: #FFE934; }

@media (max-width: 767px) {
    #foot-linker1 { font-size: 1.0rem; padding: 22px 0px 22px 0px;}
}

/* footlinker2 */

#foot-linker2 { position: relative; border-bottom:1px solid #E4E4E4; padding: 28px 0px; }
#foot-linker2 a { color: #444444; text-decoration: none; }
#foot-linker2 ul li { list-style: none; line-height: 140%; }
#foot-linker2 ul li:not(:last-child){ margin-bottom: 8px; }
#foot-linker2 ul li.title { position: relative; font-weight: bold;}
#foot-linker2 ul li ul { font-weight: normal; margin-top: 5px;}
#foot-linker2 .title:before { content: ''; position: absolute; top: 12px; left: -12px; margin-top: -5px; border-top: 2px solid #F82811; border-right: 2px solid #F82811; transform: rotate( 45deg ); width: 9px; height: 9px; }

@media (max-width: 767px) {
    #foot-linker2 { border-bottom:0px solid #E4E4E4; padding: 0px;}
    #foot-linker2 .container { width: 100%; }
    #foot-linker2 .l_col-6 { -webkit-flex-direction: column; flex-direction: column;
-webkit-align-items: center; align-items: center; }
    #foot-linker2 .l_col-6 li { width: 100%; /* padding: 20px 20px 20px 30px;*/ border-bottom: 1px solid #E4E4E4; }
    #foot-linker2 .l_col-6 li a { padding: 20px 20px 20px 30px; display: block; }
    #foot-linker2 .l_col-6 li ul { display: none; }
    #foot-linker2 .title:before { top: 33px; left: 10px; margin-top: -5px; border-top: 2px solid #F82811; border-right: 2px solid #F82811; }
    
}


.foot-copyright { text-align: center; position: relative; font-size: 1.2rem; padding: 14px 0px ; }
.foot-copyright p { color: #1D4A8C; }

a#pageTop { font-size: 1.6rem; position: fixed; right: 20px; bottom: 60px; z-index: 1000; cursor: pointer; overflow: hidden;  width: 60px; height: 40px; text-decoration: none; padding: 8px;  background: #000; opacity: 0.5; text-align: center; border-radius: 5px; color: #FFF; }


/* ---------------
7月8日以降追記
------------------- */

/* .title-c { font-size: 2rem; line-height: 1.4; background-size: 6px 1px; background-position: bottom; background-repeat: repeat-x; margin-bottom: 20px; padding-left: 5px; padding-bottom: 5px; color: #007dd0; background-image: linear-gradient(to right, #007dd0, #007dd0 4px, transparent 4px, transparent 2px); } */

.list-a li a { color: #333; text-decoration: none;}

.list-a.blue li:before { background: #0086E0; }
.list-a.yellow li:before { background: #FF9400; }
.list-a.red li:before { background: #F82811; }

.list-allow {}
.list-allow li { padding-left: 20px; position: relative; line-height: 1.4; margin-bottom: 10px; }
.list-allow li::before { content: ''; position: absolute; top: 4px; left: 0; margin-right: 3px; width: 14px; height: 14px; border-radius: 50%; background: #007dd0; }
.list-allow li::after { content: ''; position: absolute; top: 8px; left: 3px; border-top: 1px solid #fff; border-right: 1px solid #fff; width: 5px; height: 5px; transform: rotate(45deg); }
.list-allow.red li::before { background: #F82811; }
.list-allow.yellow li::before { background: #FF9400; }

/* 2023.09.07 shimura */
.wp-block-group__inner-container p:not(:last-of-type) { margin-bottom: 15px; }


/* ---------------
2024730追記 nakao
------------------- */

.title-c { font-size: 1.8rem; font-weight: bold; font-family: 'M PLUS 1p', sans-serif; margin-bottom: 10px; }

/* ---------------
WP記事出力基本設定 editor 240731 nakao
------------------- */

.body.text.editor ul { /* background: #EDF3FA; padding: 10px; */ margin-bottom: 20px; }
.body.text.editor ul li { list-style-type: none; position: relative; padding-left: 0.6em; }
.body.text.editor ul li:before { border-radius: 50%; width: 5px; height: 5px; display: block; position: absolute; left: 0; top: 0.6em; content: ""; background: #0086E0;
}

.body.text.editor p { margin-bottom: 15px; }
.body.text.editor p a { color: #007dd0 !important; }

#case .body.text.editor h3 { font-size: 2.0rem; color: #0086E0; margin-bottom: 20px; font-family: 'M PLUS 1p', sans-serif; }
#case .body.text.editor h4 { font-size: 1.8rem; font-weight: bold; font-family: 'M PLUS 1p', sans-serif;
margin-bottom: 10px; }