﻿@charset "utf-8";

@import 'reset.css';
@import 'lib.css';


html, body, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p,
header, hgroup, section, article, aside, hgroup, footer, figure, figcaption, nav {
 margin: 0;
 padding: 0;
 font-size: 100%;
}

body {
 line-height: 1.0;
}

article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary { 
 display:block;
}

strong{
 font-weight:normal;
}
/*span {color:#ff8695;font-weight:bold;} */

ul, ol {
 list-style: none;
}

img {
 max-width :100%;
 height:auto;
 vertical-align:bottom;
}

a {margin:0px;}

.ttl-go00{font-family: "ＭＳ Ｐゴシック", "MS PGothic";font-weight:700;font-size:130%;margin-top:30px;}
.ttl-go01{font-family: "ＭＳ Ｐゴシック", "MS PGothic";font-weight:700;font-size:120%;}
.ttl-go02{font-family: "ＭＳ Ｐゴシック", "MS PGothic";font-weight:500;}

.txt-go-wrap{margin:0; padding:0;margin-left:60px;}
.txt-go{font-family: "ＭＳ Ｐゴシック", "MS PGothic";font-weight:500;}

#main .f125{font-size:125%;}
.b{ font-weight:bold;}

#main p{color:#222;padding-bottom:20px;}

h1{margin:0px; text-decoration:none;}

h2 {
 font-weight: bold;
 font-size: 20pt;
 margin-bottom:20px;
 padding: 10pt 0 0 0;
 text-align: center;
 position: relative;
 letter-spacing:2px;
 vertical-align:bottom;
 color:#222;
}
h2 span{
 font-weight: bold;
 font-size: 9pt;
 margin:0;
 padding:0;
 text-align: center;
 position: relative;
 color:#666;
 letter-spacing:0.5px;
 font-family: arial;
}
.h2-sub {
 font-weight: bold;
 font-size: 20pt !important;
 padding-bottom:30px !important;
 text-align: center;
 position: relative;
 letter-spacing:0;
 font-weight:bold;
 vertical-align:bottom;
 color:#222;
}

.sub-title {
 margin:0 0 30px 0;
 padding:0;
 font-size:16pt !important;
 font-weight:normal;
 color:#cc4515;
 line-height:140%;
}


h2.title-home{
 margin:0;padding:0 0 10px 0;font-size:16pt;display: flex; align-items: center;
}

h2.title-home:before,
h2.title-home:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #d45e16;
}

h2.title-home:before {
    margin-right: 1rem;
}

h2.title-home:after {
    margin-left: 1rem;
}


h2.title-home02{
 margin:30px 0 20px 0;padding:0 0 10px 0;font-size:18pt;display: flex; align-items: center;
}
h2.title-home02:before,
h2.title-home02:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #d45d16;
}
h2.title-home02:before { margin-right: 1rem;}
h2.title-home02:after { margin-left: 1rem;}



h2.title{
 clear:both;
 margin:20px 0 0 0;
 padding:0 0 15px 0;
 font-size:110%;
 font-weight:bold;
 text-align:center;
 letter-spacing:0px;
}

h2.ttl{
 clear:both;
 display:block;
 margin:20px 0 25px 0;
 padding:25px 0 21px 0;
 font-size:180%;
 font-weight:900;
 font-family: 'Noto Sans Japanese', "メイリオ", "Hiragino Kaku Gothic ProN", sans-serif;
 text-align:center;
 letter-spacing:1px;
 border-top:1px solid #222;
 border-bottom:1px solid #222;
}
h2.ttl-sol{
 clear:both;
 display:block;
 margin:20px 0 25px 0;
 padding:25px 0 21px 0;
 font-size:180%;
 font-weight:900;
 font-family: 'Noto Sans Japanese', "メイリオ", "Hiragino Kaku Gothic ProN", sans-serif;
 text-align:center;
 letter-spacing:1px;
 border-top:1px solid #c00000;
 border-bottom:1px solid #c00000;
}

h3.title {
  margin:40px 0 20px 0;
  background: #d45e16;
  box-shadow: 0px 0px 0px 5px #d45e16;
  border: dashed 1px #fff;
  padding: 0.3em 0.8em;
  color: #fff;
  font-size:120%;
  font-weight:normal;
}


h4.title{
margin:20px 0 15px 0;
display:flex; align-items:center;
font-size:120%;
}

h4.title:after{
margin-left:25px; border-top:1px solid #d45e16; content:""; flex-grow:1;
}




body {
 font-family: 'Noto Sans JP', "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
 font-size:100%;
 line-height: 1.6;
 color:#222;
}

#wrap {
 position:relative;
 margin:0 auto;
 padding:0;
 overflow: hidden;
 color:#222;
}

a:hover { color:#ff9900; }

.text-left{text-align:left;}

.f125{ font-size:125%; }
.comment{ font-size:80%;}
.bold { font-weight:bold; }
.brown { color:#663300; }
.red { color:#ff0000; }
.og { margin-bottom:0; padding-bottom:0; color:#ff6600; font-size:150%;}
.komemark { color:#ff0000; }
.text-center { text-align:center; }
#main .mt30{margin-top:30px;}
#main .mb15{margin-bottom:15px;}
#main .mb30{margin-bottom:30px;}

.sp-none{display:none; }

.img-center{ display:block; margin-left:auto; margin-right:auto;}
.img-resize {max-width: 100%; width:92%; height: auto;}

.link{ padding:0 0 0 20px; font-size:90%; background:url(../images/arrow_link.png) 0 4px no-repeat; }
.link a{ color:#333; text-decoration:none; }
.link a:hover{ color:#663300; text-decoration:underline;  }

div#breadcramb-list {
  margin-top: 10px;
  border-bottom: 1px solid #ccc;
  margin-bottom: 10px;
}

div#breadcramb-list p {
  width: 90%;
  margin: 0px auto;
  padding: 0px 0 14px;
  font-size: 9pt;
}

div#content {
  padding-top: 30pt;
  padding-bottom: 20pt;
}

/*div.content-width-wrapper {
 margin: 0px 5%;
}
*/

.section-heading {
  font-weight: normal;
  text-align: left;
  font-size: 14pt;
  line-height: 1.8em;
  margin-bottom: 15px;
  position: relative;
  color: #333;
 font-family: arial,'ヒラギノ角ゴ ProN W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif;
 border-bottom:1px solid #cc4515;
  display: inline-block;
}
.section-heading1 {
  font-weight: normal;
  text-align: left;
  font-size: 16pt;
  line-height: 0.8em;
  margin-bottom: 15px;
  position: relative;
  color: #333;
 text-align:center;
}
.section-heading1 span {
  font-size: 7pt;
  color: #85725e;
}

/* ============================================================== */
/*header*/
/* ============================================================== */

header {
  margin:0;
  padding:0;
}
header:after {
 content: '';
 display: block;
 clear: both;
}
header p {
 padding-top:3px;
 padding-left:3px;
 font-size:50%;
}
header #headLeft {
 margin-left:3px;
 margin-bottom:14px;
 padding-top:16px;
 width:70%;
 height:auto;
}
#headCenter{display:none;}
#headRight{display:none;}

/* ============================================================== */
/*navi*/
/* ============================================================== */

.gnavi {
 display:none;
}

.spnaviOpen {
  display: block;
  position: absolute;
  top: 0px;
  right: 0px;
  width: 46px;
  height: 46px;
  background: url(../images/btn_spmenu_bg.jpg) center left no-repeat;
  background-size: 46px 46px;
  text-indent: -9999px;
  z-index: 500;
}

nav.spnavi ul.drop-menu {
  box-sizing: border-box;
  /*background-color: #20bdbe;*/
  background-color: #2678a9;
  padding: 40px 25px 25px;
  position: fixed;
  top: 0;
  right: -80vw;
  width: 80vw;
  height: 100%;
  z-index: 500;
  transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

nav.spnavi ul.drop-menu.open {
  right: 0;
}

nav.spnavi ul.drop-menu li a {
  display: block;
  padding: 10px;
  color: #FFF;
  text-decoration: none;
  font-size: 14px;
font-weight:bold;
border-bottom:1px solid #fff;
}

nav.spnavi ul.drop-menu li.close {
 display:inline-block;
  position: absolute;
  /*width: 50px;
  height: 50px;  */
  text-align: center;
  right: 0;
  top: 0;
  /*line-height: 1em;*/
  font-size: 40px !important;
  color: #FFF;
  border:1px solid #fff;
  padding:-10px 10px;;
}


.sp-navi {
  width: 96%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.sp-navi li.first {
  display: block;
  width: 100%;
  margin: 0 1% 10px 10px;
  padding: 20px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  border: 1px solid #ff9600;
  color: #ff9600;
}

.sp-navi li {
  display: block;
  width: 45%;
  margin: 0 1% 10px 10px;
  padding: 20px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  border: 1px solid #ff9600;
  color: #ff9600;
}

.sp-navi li a {
  display: block;
  padding-top: 10px;
  text-decoration: none;
  color: #ff9600;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;

}

.sp-navi li a:hover {
  display: block;
  text-decoration: none;
  color: #fff;
  background: #ff9600;
}

.sp-navi li.current a {
  display: block;
  text-decoration: none;
  color: #fff;
  background: #ff9600;
}



.menu-btn {
    position: fixed;
    top: 10px;
    right: 10px;
    display: flex;
    height: 60px;
    width: 60px;
    justify-content: center;
    align-items: center;
    z-index: 90;
    background-color: #3584bb;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background-color: #ffffff;
    position: absolute;
}
.menu-btn span:before {
    bottom: 8px;
}
.menu-btn span:after {
    top: 8px;
}

#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
}

#menu-btn-check {
    display: none;
}

.menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%;/*leftの値を変更してメニューを画面外へ*/
    z-index: 80;
    background-color: #3584bb;
    transition: all 0.5s;/*アニメーション設定*/
}

.menu-content ul {
    padding: 70px 10px 0;
}
.menu-content ul li {
    border-bottom: solid 1px #ffffff;
    list-style: none;
}
.menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 15px;
    box-sizing: border-box;
    color:#ffffff;
    text-decoration: none;
    padding: 9px 15px 10px 0;
    position: relative;
}
.menu-content ul li a::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px #ffffff;
    border-right: solid 2px #ffffff;
    transform: rotate(45deg);
    position: absolute;
    right: 11px;
    top: 16px;
}

#menu-btn-check:checked ~ .menu-content {
    left: 0;/*メニューを画面内へ*/
}

/* ============================================================== */
/*home*/
/* ============================================================== */

#pictMainSpBox{ 
 display:block;
 width:100%;
 margin:0 auto;
 padding:20px 0 0 0;
 position: relative;
 overflow:hidden;
 text-align:center;
}

#pictMainBox{
 display:none;
}
#pictMainBox02{
 display:none;
}

.box{ width:100%; margin:0 auto;  padding-bottom:30px;}


.ttl-home-top{
 display:block;
 margin-bottom:30px;
 padding-top:28px;
 padding-bottom:18px;
 border-top:1px solid #58bf85;
 border-bottom:1px solid #58bf85;
 font-weight:700;
 text-align:center;
 font-size:150% !important;
 color:#222;
}
.ttl-home-top p{
 display:block;
 line-height:160%;
}
.ttl-home-top .ttl-top01{
 font-size:130% !important;
 color:#663300;
}
.ttl-home-top .ttl-top02{
 display:block;
 padding-top:20px;
 font-size:130% !important;
 color:#dd6639;
 padding-left:5px;
}

.ttl-home-pr{
 display:block;
 margin-bottom:30px;
 color:#2699d2;
 text-align:left;
 font-size:150% !important;
 font-weight:700;
 line-height:140%;
}
.ttl-home-pr span{
 display:block;
 color:#222;
 font-size:90% !important;
 font-weight:700;
 line-height:140%;
}


.home-pr-left{width:100%;float:none;text-align:left}
.home-pr-right{width:100%;float:none;}
.home-pr-right img{width:100%;margin:0 auto;}

h3.ttl{
 margin:30px 0 0 0;padding:0 0 10px 0;font-size:22pt;display: flex; align-items: center;
}
h3.ttl:before,
h3.ttl:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #5eb3df;
}
h3.ttl:before { margin-right: 1rem;}
h3.ttl:after { margin-left: 1rem;}
.ttl-under{display:block;font-size:100%; color:#2799d3;font-weight:bold;padding-bottom:2px; text-align:center;}


h3.ttl02 {
 margin:30px 0 15px 0;padding:10px 0 10px 0;font-size:160%;display: block;  background-color: #f2f2f2;  border-left:5px solid #5eb3df;  text-align:left;
padding-left:24px;
}

#home-nayami{clear:both;width:100%;margin:0 auto;}

.ttl-home-nayami{
 display:block;
 padding-top:40px;
 margin-bottom:40px;
 text-align:center;
 font-size:160% !important;
 font-weight:700;
 line-height:140%;
 border-top:5px double #ccc;
}
.home-nayami-in{width:100%;margin:0 auto;}
.home-nayami-in:after{ content: ''; display: block; clear: both;}
.home-nayami-left{width:100%;margin-left:10px;float:none;}
.home-nayami-left li{font-weight:bold;margin-bottom:20px;padding-top:20px;padding-bottom:20px;background:url(../images/home_komari_bg.jpg) 0 0 no-repeat; text-align:left;padding-left:46px;}
.home-nayami-right{width:100%;margin-left:10px;float:none;}
.home-nayami-right li{font-weight:bold;margin-bottom:20px;padding-top:20px;padding-bottom:20px;background:url(../images/home_komari_bg.jpg) 0 0 no-repeat; text-align:left;padding-left:46px;}


#home-case{clear:both;width:100%;margin:0 auto; padding-bottom:30px;
  background: linear-gradient(180deg, #fff 0%, #fff 10%, #2678a9 10%, #2678a9 100%);
  /*display: flex;*/
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
}

.ttl-home-case{
 display:block;
 padding-top:40px;
 margin-bottom:40px;
 text-align:center;
 font-size:300% !important;
 font-weight:700;
 line-height:140%;
 border-top:5px double #ccc;
 color:#df7146;
 letter-spacing:3px;
}
.case00{
 font-size:50% !important;
 font-weight:700;
 line-height:140%;
 color:#222;
}
.home-case-in{width:100%;margin:0 auto;}
.home-case-in:after{ content: ''; display: block; clear: both;}
.case-box-wrap{width:100%;margin:0 auto;
    display: blobk;
 }
.case-box{width:100%;margin:0 auto;margin-bottom:30px;text-align:center;}
.case-box img{width:94%;margin:0 auto;text-align:center;}
.case-box-ttl{font-size:150%;font-weight:normal;padding:15px 0;color:#fff;}
.case-box p{font-size:110%;text-align:center;padding-bottom:25px;color:#fff !important;}


.ttl-home-support{
 display:block;
 padding-top:40px;
 padding-left:20px;
 padding-right:20px;
 margin-bottom:40px;
 text-align:center;
 font-size:150% !important;
 font-weight:700;
 line-height:140%;
}
.ttl-home-support .ttl00{
 font-size:200% !important;
 color:#58bf85;
 line-height:160%;
}

.ttl-home-support .ttl01{
 font-size:200% !important;
 color:#58bf85;
}
.ttl-home-support .ttl02{
 font-size:110% !important;
 color:#58bf85;
 padding-left:5px;
}
.home-support{width:100%;margin:0 auto;padding-bottom:30px;background:#ecf7f0;}
.home-support-in{width:96%;margin:0 auto;}
.home-support-in:after{ content: ''; display: block; clear: both;}
.home-support-left{width::100%; margin-top:20px;float:none; text-align:left;}
.home-support-right{width::100%; float:none; margin:0 auto;margin-top:30px;}


.home-flow{width:100%;margin:0 auto;padding-bottom:30px;background:#ecf7f0;}
.home-flow-in{width:94%;margin:0 auto; }
.home-flow-in:after{ content: ''; display: block; clear: both;}
.flow-box-wrap{width:100%;margin:0 auto; display: block;margin-bottom:30px;
 }
.flow-box-wrap .flow-img{width:100vw;margin:0 auto; display: block;}
.flow-box{width:100%;margin:0 auto;text-align:center;}
.flow-box-ttl{text-align:left;font-size:150%;font-weight:bold;padding:15px 0 12px 0;}
.flow-box-ttl img{vertical-align:middle;margin-right:15px;}
.flow-box p{font-size:110%;text-align:left;padding-bottom:25px;}

.home-flow-ttl{
 display:block;
 padding-top:60px;
 margin-bottom:40px;
 text-align:center;
 font-size:300% !important;
 font-weight:700;
 line-height:140%;
 color:#222;
 letter-spacing:3px;
  font-style: italic;
  transform: skew(-10deg);
}
.flow-ttl00{
 color:#3d6399;
}


.home-voice-box{width:100%;margin:0 auto; display: block;margin-bottom:30px;
 }
.home-voice{width:90%;margin:0 auto;text-align:center;border:1px solid #aaa;
padding:20px 10px 5px 10px;border-radius:10px;margin-bottom:30px;}
.home-voice-ttl01{font-size:130%;font-weight:bold;padding:15px 0 12px 0;}
.home-voice-ttl02{color:#d10c0c;}
.home-voice p{font-size:110%;text-align:left;padding-top:10px;padding-bottom:25px;}

.ttl-home-voice{
 display:block;
 padding-top:60px;
 margin-bottom:40px;
 text-align:center;
 font-size:260% !important;
 font-weight:700;
 line-height:140%;
 color:#222;
 letter-spacing:3px;
}



.home-zero{width::100%;margin:0 auto; margin-bottom:40px;}
.home-zero:after{ content: ''; display: block; clear: both;}
.home-zero p{padding-top:50px !important;text-align:left;}

.home-support{width:100%;margin:0 auto;padding-bottom:30px;background:#ecf7f0;}
.home-safe{width:90%;margin:0 auto;margin-bottom:40px;}
.home-safe:after{ content: ''; display: block; clear: both;}
.home-safe-left{width:96%; margin:0 auto;float:none; text-align:center;}
.home-safe-right{width:96%; margin:0 auto;margin-top:30px;margin-left:0;float:none; }
.home-safe-right p{text-align:left; color:#222;}
.home-safe-right02{width:96%; margin:0 auto;margin-top:30px;margin-left:0;float:none; }
.home-safe-right02 p{margin:0; padding:0; text-align:left; color:#222; }

.home-safe-ttl{
 display:block;
 margin-bottom:15px;
 color:#58bf85;
 text-align:center;
 font-size:130% !important;
 font-weight:700;
 line-height:130%;
}


/*
.btm-contact{ width:100%;margin:0 auto; background:#51bd88;}
.btm-contact-in{ width:96%;margin:0 auto; overflow:hidden; padding-top:30px;padding-bottom:30px;text-align:center;}

.btm-contact-in .btm-contact-ttl{ font-size:160%;font-weight:700;margin-bottom:30px; padding-bottom:0;color:#fff;text-align:center;}
#btm-contact-box-in p{ padding-top:20px;font-size:100%;color:#663300;}

.btm-contact-left img{ width:90%;margin:0 auto;padding-bottom:30px;float:none; text-align:center;}

.btm-contact-right{ width:90%;margin:0 auto;float:none;text-align:center !important; }

.btm-contact-right li{ width:42%;margin:0 auto;float:left;padding-bottom:30px;}
.btm-contact-right li:last-child{ width:55%;margin:0 auto;float:right;  }
*/


.box-after-top{width:100%;margin:0 auto;margin-bottom:40px;padding:30px 0;background:#e7f3eb;}
.box-after-top-in{width:94%;margin:0 auto;border:3px solid #2eb087;background:#fff; border-radius:10px;}
.box-after-top-in:after{ content: ''; display: block; clear: both;}
.box-after-left{width:90%;margin-left:10px;margin-right:0;padding:20px 0 20px 20px;float:none;text-align:left;}
.box-after-right{width:90%;padding:20px 20px 20px 0;float:none;}

.after-ttl01{display:inline-block;margin-bottom:15px;padding:15px;font-size:160%;font-weight:700;background:#ffff99;letter-spacing:1px;}
.after-ttl02{margin-bottom:20px;font-size:150%;font-weight:700;letter-spacing:1px;line-height:140%;}
.after-ttl03{margin-bottom:20px;font-size:130%;font-weight:700;letter-spacing:1px;color:#58bf85;line-height:140%;}


.box-after{width:100%;margin:0 auto;margin-bottom:50px;text-align:left;}
.box-after-ttl{display:block;margin-bottom:15px;font-size:130%;font-weight:700;letter-spacing:1px;color:#58bf85;}
.box-after-ttl img{vertical-align:middle;margin-right:15px;width:16%;height:auto;}
.box-after-txt {border-left:1px solid #58bf85;padding-left:30px;}
.box-after-txt p{color:#222; padding-top:12px;padding-bottom:20px;}
.box-after li{ color: #58bf85;margin-left:20px;margin-bottom:10px;text-align:left;list-style-type:disc;}
.box-after span {color: #222;}
                                        
.box-in01{ width:98%; margin:0 auto;  padding-bottom:30px; text-align:left;}
.box-in02{ width:98%; margin:0 auto;  padding-bottom:30px; text-align:left;}
.box02{ width:98%; margin:0 auto; padding-top:30px; padding-bottom:30px;
 border-bottom:1px solid #ccc;}
.box03{ width:98%; margin:0 auto; padding-bottom:10px;}
.box-in{ width:98%; margin:0 auto; padding-bottom:30px;}

.box-grey{ width:100%; margin:0 auto;  padding-top:16px; padding-bottom:20px;
 background:#f7f7f7;}
.box-grey-in{ width:90%; margin:0 auto;  margin-left:12px;
 border:1px solid #999;}
.box-grey-in-in{ width:90%; margin:0 auto;  padding-top:30px;margin-left:10px;padding-bottom:30px;}


.box-home-wrap{margin:0 auto; padding:60px 0 60px 0;text-align:center;}
.box-home-wrap img{margin-top:20px;}
.box-home{width:96%;margin:0 auto; padding:0;}
.box-home-in{width:100%; margin:0 auto; background:url(../images/box_home_bg.jpg); text-align:center;}
.box-home .sub-title{font-size:110% !important;}
.box-home-in02{width:100%; margin:0 auto;}
.box-home-in02 p{line-height:180% !important; text-align:left;}

.home-btn{display:block;text-align:center;width:40%;margin:0 auto;}

.home-service{
 width:100%;
 margin:0 auto;
 margin-bottom:30px;
 text-align:center;
}
.home-service:after{
 content: '';
 display: block;
 clear: both;
}

.home-sv-right{width:100%;float:none;text-align:left}
.home-sv-left{width:100%;float:none;}
.home-sv-left img{width:100%;margin:0 auto;}

.home-service li{
 width:100%;
 margin:10px 0 30px 0;
 text-align:center;
 border-bottom:1px solid #ccc;
 list-style:none;
}
.home-service img{
 margin-top:20px;
 text-align:center;

}
.home-service-box{ width:100%; margin:0 auto; padding:20px 0 20px 0; overflow:hidden;background:#fff;}
.home-service-ttl{margin-bottom:0;padding-bottom:0;font-size:140%;font-weight:bold;text-align:center;}
.home-service-txt{padding:15px;font-size:92% !important;text-align:left;}
.btn-more{width:30%; margin-bottom:50px;}


.box-prd{margin:0 auto;margin:30px 0;padding:50px 0;background:#f0fafd;}
.box-prd-in{width:96%;margin:0 auto;}

.home-prd{
 width:100%;
 margin:0 auto;
 padding:0 auto;
}
.home-prd:after{
 content: '';
 display: block;
 clear: both;
}
.home-prd li{
 width:45%;
 height:auto;
 margin-top:20px;
 margin-right:20px;
 float:left;
 text-align:center;
}
.home-prd img{
 margin-bottom:10px;
 text-align:center;
}
.home-prd li p{
 font-size:90%;
}
.home-prd li:nth-child(even){
 width:45%;
 height:auto;
 margin-right:0;
 float:left;
 text-align:center;
}
.home-prd li:last-child p{
 font-size:100%;
}

/* ============================================================== */
/*index-news*/
/* ============================================================== */

#news-wrap {
  background: url(../images/home_top_bg.jpg) no-repeat center/cover;
}

#news-box{width:100%;margin:0 auto;margin-top:50px !important;margin-bottom:50px;padding-bottom:20px;padding-top:20px;
background:#f5f7f8;}
#news-box:after{ content: ''; display: block; clear: both;}
#news-left{float:none;color:#2678a9;font-size:1.6em;font-weight:bold;padding-top:20px;}
#news-left span{color:#2678a9;font-size:0.6em;font-weight:bold;}
#news-right{float:none;width:90%;margin:0 auto;}
#home-news{float:none;}
#index-news {
 margin:0;
 padding:0;
 background-color: #fff;
 padding-bottom: 10pt;
}

#index-news div {
 margin: 0px auto;
 -webkit-box-sizing: border-box; /* Webkit系用 */
 -moz-box-sizing: border-box;     /* Firefox用 */
 box-sizing: border-box;
}

#index-news div.wn-item {
  width: 90%;
  padding: 20px 0 20px 0;
  position: relative;
  border-bottom: 1px solid #ddd;
  font-size: 100%;
  text-align:left;
}
#index-news div.wn-item a{
  color:#222;
 text-decoration:none;
}
#index-news div.wn-item a:hover{
  color:#3782bd;
}
div#index-news div.wn-date { font-weight:700;margin-bottom:5px;
}
div.wn-date img{width:18%;margin-top:3px; margin-left:5px; }
div#index-news div.wn-article {line-height:160%;}

#fb-wrap{width:96%; margin:0 auto;}
#fb-box{width:100%; max-width:500px; margin:0 auto; margin-left:20px; margin-right:auto; margin:30px 0;}



.box-home-about-wrap{ background: url(../images/home_about_bg02_sp.jpg) no-repeat top center; padding-block: 120px;background-size: contain;
}                                        
.box-home-about{ background: url(../images/home_about_bg.png) no-repeat center;
 background-size: contain;margin-top:80px;
}



.home-guide-box{ display:block; width:100%; margin:0 auto;margin-top:30px;padding-top:50px; background:#eff7fe;}

.home-guide-box02 {
  background: url(../images/home_guide02_bg.png) no-repeat top;
  /*padding-block: -120px; */ padding-bottom:70px; background-size: contain;
}

.home-guide-box-in{ display:block; width:64%; margin:0 auto;}
.home-guide-box-in p{ text-align:left;padding-top:30px !important;padding-bottom:20px;}


.home-schedule-box {
  background: url(../images/home_schedule_bg_sp.jpg) top center;
 background-size: contain;background-repeat: no-repeat;width:100%; height:auto;
}

.home-schedule-box-in{ display:block; width:100%; margin:0 auto;
}
.home-schedule-box02{width:90%;margin:0 auto;padding-top:30px;padding-bottom:20px;}
.home-schedule-box02 p{text-align:left;}

.box-home-in{width:100%; margin:0 auto; background:url(../images/box_home_bg.jpg);}
.box-home-in02{width:80%; margin:0 auto;}
.box-home-in02 p{padding-top:0px;line-height:180% !important; text-align:left;color:#663300;}


.top-box{clear:both; width:100%;margin:0 auto; margin-top:20px;padding-top:30px;padding-bottom:30px;background:#fffdca;}
.top-box-in{width:80%;margin:0 auto; margin-left:15px;margin-right:10px;padding:20px; border:1px solid #666;}

.pr-box{ width:100%; margin:0 auto;padding-top:20px;padding-bottom:20px;}
.pr-box:after{ content: ''; display: block; clear: both;}
.pr-left{width:100%; margin:0 auto;padding-top:20px;padding-bottom:20px;float:none;}
.pr-right{width:100%;margin:0 auto;padding-bottom:20px; float:none;}
.pr-right img{width:100%;margin:0 auto;}

.btm-contact{ background: url(../images/btm_contact_bg.jpg) no-repeat;padding-top:0px;padding-bottom:20px;
}
.btm-contact-in{ width:90%;margin:0 auto; overflow:hidden; padding-top:30px;padding-bottom:30px; background:#fff;}

.btm-contact-ttl{ font-size:160%;font-weight:900;margin-bottom:30px;padding-top:50px; padding-bottom:0;color:#fff;text-align:center;}
.btm-contact-left { width:70%;margin:0 auto;padding-bottom:30px;float:none; text-align:center;}

.btm-contact-right{ width:82%;margin:0 auto;float:none;text-align:center !important; }



/* ============================================================== */
/*footer */
/* ============================================================== */

footer{
 clear:both;
 width:100%;
 border-top:1px solid #ddd;
}
#foot{
 width:100%;
 margin:0 auto;
 text-align:center;
}
#foot-logo{
 width:50%;
 height:auto;
 margin:0 auto;
 padding-top:24px;
 margin-bottom:24px;
 text-align:center;
}
#foot-menu{display:none;}
#foot-box{
 width:96%;
 margin:0 auto;
 padding-bottom:10px;
}
#foot-box:after {
 content: "";
 clear: both;
 height: 0;
 display: block;
 visibility: hidden;
}
#foot-left{
 padding-top:20px;
 margin-bottom:30px;
 text-align:center;
 float:none;
}

#foot-right{
 clear:both;
 height:auto;
 margin:0 auto;
 margin-top:20px;
 text-align:center !important;
 float:none;
}

.foot-table{width:100%; border:none;margin-top:15px; margin-bottom:15px;}
.foot-table td{padding:12px 0; border:none; text-align:left;}
.foot-table th{padding:12px 0;width:20%; border:none;text-align:left;}
#foot-right{width:100%;float:none; margin:0 auto;}

.foot-company{display:inline-block; margin:0 auto;padding-top:17px;font-weight:700;font-size:90%;border-bottom:1px solid #333;padding-bottom:10px;text-align:center !important;}
.foot-add{padding-top:20px;font-weight:normal;font-size:80%;text-align:center;}

#copy-box{width:100%; margin-bottom:20px;padding:5px 0;background:#fff;color:#222;}
.copyright{margin-bottom:0; padding:10px 0 5px 0; font-size:85% !important; text-align:center;color:#222;
}

.copyright{
 padding-top:10px;
 text-align:center;
 font-size:60% !important;
}
.copyright a{
 color:333;
 text-decoration:none;
}

#foot-right ul{
 text-align:center;
 font-size:90%;
 margin:0 auto;
 display:flex;
 align-items:center;
justify-content: center;
}

#foot-right li {
  box-sizing:border-box;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -ms-box-sizing:border-box;
  -o-box-sizing:border-box;
  text-align:center;
  align-items:center;
 display:flex;
 margin:10px;

}


/* ============================================================== */
/* 下層コンテンツ */
/* ============================================================== */

.box {
 width:92%;
 margin:0 auto;
 padding:30px 0px 30px 0px;
 text-align:center;
}
.box-w {
 width:100%;
 margin:0 auto;
 padding:30px 0px 30px 0px;
 text-align:center;
}
.box:after {
 content: '';
 display: block;
 clear: both;
}
.home-box02 {
 width:92%;
 margin:0 auto;
 padding:30px 0px 30px 0px;
 text-align:center;
}
.home-box02:after {
 content: '';
 display: block;
 clear: both;
}
.home-box02 p{
 padding-bottom:15px;
 text-align:left;
}

.float-box {
 width:100%;
 margin:0 auto;
 padding:0px 0px 30px 0px;
}
.float-box:after {
 content: '';
 display: block;
 clear: both;
}
.float-left {
 width:100%;
 margin:0 0 20px 0;
 text-align:center;
 float:none;
}
.float-right{
 width:100%;
 display:block;
 margin:0 0 20px 0;
 text-align:center;
 float:none;
}
.float-box p{
 padding-bottom:15px;
 text-align:left;
}

.sp-center{ display:block; margin-left:auto; margin-right:auto; text-align:center;}

.list-base li{
 margin-bottom:10px;
 padding-left:22px;
 line-height:190%;
 text-align:left;
 background:url(../images/list_base.png) 0 11px no-repeat;
}
.list-red{
 width:100%;
 margin: 0 auto;
 text-align:left;
}
.list-red li{
 padding-left:28px;
 padding-bottom:10px;
 background:url(../images/check_red.jpg) 0 2px no-repeat;
}

.pict3{margin:20px 0 0 0;}
.pict3 li{margin-bottom:20px;}

/*-------------事業内容-------------*/

.feature-wrap{width:100%;margin:0 auto;margin-bottom:0px;padding:10px 0 10px 0; display:flex;flex-wrap: wrap;justify-content: space-between;}

.feature-box{width: 100%; margin:0 auto; margin-bottom:10px;}
.feature-wrap .ft-ttl{margin-bottom:20px;padding-bottom:10px;font-size:160%;font-weight:bold;color:#2699d2;border-bottom:1px solid #2699d2; text-align:left;}
.feature-wrap .ft-ttl02{padding-bottom:10px;font-size:140%;font-weight:bold;color:#222;text-align:left;}
.feature-box p{text-align:left;}

.ft-wrap{width:100%;margin:0 auto;margin-bottom:30px;padding:20px 0; display:block;}
.ft-wrap .ft-ttl{display:block;margin-top:30px;margin-bottom:20px;padding-bottom:10px;font-size:160%;font-weight:bold;color:#2699d2;border-bottom:1px solid #2699d2; text-align:left;}
.ft-wrap .ft-ttl02{margin-top:30px;padding-bottom:10px;font-size:120%;font-weight:bold;color:#222;text-align:left;}
.ft-wrap p{text-align:left;}


.sample-wrap{ width:100%;margin:0 auto; margin-top:30px;margin-bottom:90px; }
.sample-wrap:after{ content: ''; display: block; clear: bomargin-top:30px;th;}
.sample-left{ width:100%;margin:0 auto;float:none;
 /*background:#ffffdd;*/background:#f0f4fa;}
.sample-left ul{ margin-left:30px;padding-bottom:40px;}
.sample-left ul li{ padding-left:20px;margin-bottom:15px;background:url(../images/list_blue.png) 0 6px no-repeat;}
.sample-ttl{font-size:120%;padding:30px 20px 20px 24px;font-weight:bold;}
.sample-right{ width:100%;margin:0 auto;float:none;margin-top:30px;}

.spec-box{ width:100%;margin:0 auto; margin-bottom:50px; background:#f5f7f8; }
.spec-box:after{ content: ''; display: block; clear: both;}
.spec-box-in{ width:90%;margin:0 auto; padding-top:40px; margin-left:20px; }
.spec-box-left{ width:100%;margin:0 auto;float:none;
 text-align:center; font-size:180%;font-weight:bold;}
.spec-box-right{ width:100%;margin:0 auto;float:none;
 text-align:left; font-size:100%;font-weight:normal;padding-top:30px;padding-bottom:50px !important; }
.spec-box-ttl{ text-align:center; font-size:180%;font-weight:bold;}

.voice-box01{width:100%;margin:0 auto;margin-bottom:30px;padding:20px 0;background:#fffcb9;}
.voice-box02{width:100%;margin:0 auto;margin-bottom:30px;padding:20px 0;background:#fffdca;}
.voice-box-in{width:92%;margin:0 auto;}
.recruit-name{
 display:inline-block;
 margin:15px 0 6px 0;
 padding:0;
 border:1px solid #d45d16;
 background:#d45d16;
}
.recruit-name .rec-name{
 padding:5px 15px 5px 15px !important;
 color:#fff;
 font-size:110% !important;
 text-align:center;
}

.recruit-table {
 width:100%; 
 margin:10px 0 30px 0; 
 padding:0;
 border-spacing: 0; 
 border: none;
}
.recruit-table th{
 width: 100%;
 padding-top:10px;
 display: block;
 border: none;
 font-weight:bold;
 text-align:left;
 color:#dc6238;
 }
.recruit-table td{
 width: 100%;
 padding-bottom:10px;
 display: block;
 border: none;
 text-align:left;
 font-size:90%;
 border-bottom:1px dashed #ccc;
}
.recruit-table td.bordernone{
 border:none; 
}
.recruit-table tr:first-child th { 

}
.recruit-box{text-align:left;}


/* ============================================================== */
/* 会社概要 */
/* ============================================================== */

.company-table {
 width:100%; 
 margin:10px 0 30px 0; 
 padding:0;
 border-spacing: 0; 
 border: none;
}
.company-table th{
 width: 100%;
 padding-top:10px;
 display: block;
 border: none;
 font-weight:bold;
 text-align:left;
 color:#2799d3;
 }
.company-table td{
 width: 100%;
 padding-bottom:10px;
 display: block;
 border: none;
 text-align:left;
 font-size:90%;
 border-bottom:1px dashed #ccc;
}
.company-table td.bordernone{
 border:none; 
}
.company-table tr:first-child th { 

}
.company-box{text-align:left;}


.box3{
 clear:both;
 width:100%;
 margin:0 auto;
}
.box3:after{
 content: '';
 display: block;
 clear: both;
}

.box3 img{
 margin-bottom:10px;
}

.box3 li {
  box-sizing:border-box;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  -ms-box-sizing:border-box;
  -o-box-sizing:border-box;
  float:none;
 width:100%;
 height:auto;
 margin:0 auto;
  padding:0 0 20px 0;
  background:none;
  text-align:center;
}
.box3 li:last-child {
 margin:0 auto;
 float:none;
 width:100%;
 height:auto;
 text-align:center;
}

/*
.company-box p{ padding-bottom:20px; }
.company-box .con-title{ margin-bottom:0;padding-bottom:0; }

.company-box02{margin-bottom:20px;text-align:left;}
.company-box02 p{ padding-bottom:20px; }
.company-box02 .con-title{ margin-bottom:0;padding-bottom:0; }
*/


.gmap {
margin-bottom:25px;
position: relative;
padding-bottom: 75%;
height: 0;
overflow: hidden;
}
.gmap iframe,
.gmap object,
.gmap embed {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

/* ============================================================== */
/* 施工実績*/
/* ============================================================== */

.workTable{
 width:100%;
 margin:0 0 25px 0;
 border:none;
}
.workTable td{
 padding:12px 0 12px 0;
 font-size:90%;
 border:none;
 border-bottom:1px dotted #aaa;
 vertical-align:top;
 text-align:left;
}
.workTable .leftArea{
 padding:12px 0 12px 2px;
 font-size:90%;
 vertical-align:top;
 text-align:left;
}

.gallery02{
 margin:0 auto;
 width: 100%;
 background: #fff;
 clear: both;
 display: block;
 overflow: hidden;
 margin: 10px 0 20px;
}
.gallery02 ul{
 width:96%;
 padding: 0 0 20px 0;
}
.gallery02 ul li{
 display: block;
 margin: 0 0 10px 0;
}
.gallery02 ul li img{
 border: 5px solid #eee;
}






/* ============================================================== */
/* contact */
/* ============================================================== */


section .contact-table {
 width:100%; 
 margin:35px 0 30px 0; 
 padding:0;
 border: none;
 border-spacing: 0; 
}
section .contact-table th{
 width: 100%;
 display: block;
 border: none;
 font-weight:normal;
 }
section .contact-table td{
 width: 100%;
 display: block;
 border: none;
 margin-bottom:15px;
}
section .contact-table td.bordernone{
 border:none; 
}
section .contact-table tr:first-child th { 

}

section .contact-table .size1{ 
 width:100%;
 margin-bottom:5px;
}
section .contact-table .size2{ 
 width:100%;
 margin-bottom:5px;
}
section .contact-table .size3{ 
 width:100%;
 height:150px;
}

section .contact-table input,select{ 
 height:27px;
 vertical-align:middle;
}
section .contact-table radio,checkbox{ 
 vertical-align:middle;
}
section .contact-box button{ 
 padding:10px 15px 10px 15px;
}

input{ 
 padding:10px 10px 10px 10px;
}
button{ 
 padding:10px 10px 10px 10px;
}
section .contact-table-conf {
 width:100%; 
 margin:35px 0 30px 0; 
 padding:0;
 border-spacing: 0; 
}
section .contact-table-conf th{
 width: 100%;
 display: block;
 border: none;
 font-weight:normal;
 }
section .contact-table-conf td{
 width: 100%;
 margin-bottom:10px;
 padding-bottom:10px;
 display: block;
 border: none;
 border-bottom:1px solid #ccc;
}
section .contact-table-conf td.bordernone{
 border:none; 
}
section .contact-table-conf tr:first-child th {

}

.com-box{
 width:94%;
 margin:0 auto;
 margin-top:40px;
 border:1px solid #ccc;
}
.com-box-in{margin:0 auto; padding:20px;}
.com-box-in p{ text-align:left;}


/* プライバシーポリシー
--------------------------------------------*/

.privacyTop{
 margin:30px 5px 20px 3px;
 padding:0;
 text-align:left;
 font-size:13px;
}
.privacy-title{
 margin:0;
 padding:10px 0 0 3px;
 text-align:left;
 font-size:13px;
 font-weight:bold;
}
.privacy-text{
 margin:5px 5px 10px 5px;
 padding:0 0 20px 0;
 text-align:left;
 font-size:90%;
}
.privacy_date{
margin: 0 15px 0 5px;
padding:20px 0 15px 0;
font-size:13px;
text-align:right;
line-height:140%;
}
#main .privacy_contact{
margin: 0 5px 0 12px;
padding:10px 0 15px 0;
font-size:13px;
line-height:140%;
}


/*-------------ボタン-------------*/

.btn-base {
 font-size:100%;
 font-family: "genshin-m","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", "メイリオ","Meiryo";
}
.btn-line {
 clear:both;
 margin:0 auto;
 margin-top:20px;
 margin-bottom:30px;
 width:80%;
 border:1px solid #2583c1;
 background:#fff;
}
.btn-line a {
 display:block;
 padding:16px 0;
 color:#2583c1;
 text-align:center;
 text-decoration:none;
}
.btn-line a:hover {
 background:#2583c1;
 color:#fff;
}
.btn-line02 {
 clear:both;
 margin:0 auto;
 margin-top:20px;
 width:80%;
 border:1px solid #71aecc;
}
.btn-line02 a {
 display:block;
 padding:16px 0;
 color:#71aecc;
 text-align:center;
 text-decoration:none;
}
.btn-line02 a:hover {
 background:#71aecc;
 color:#fff;
}

.btn-line03 {
 clear:both;
 margin:0 auto;
 margin-top:14px;
 width:80%;
 border:1px solid #2583c1;
 background:#fff;
}
.btn-line03 a {
 display:block;
 padding:16px 0;
 color:#2583c1;
 text-align:center;
 text-decoration:none;
 line-height:150%;
 font-size:100%;

}
.btn-line03 a:hover {
 background:#2583c1;
 color:#fff;
}

.btn-box{width:100%;}
.btn-box:after{ content: ""; clear: both; height: 0; display: block; visibility: hidden;}
.btn-box-left{float:none;margin-right:0;margin-bottom:15px;}
.btn-box-right{float:none;}


/* サイトマップ
--------------------------------------------*/

.sitemapTitle{
 width:100%;
 margin:10px 0 0 0;
 padding:5px 0 2px 10px;
 text-align:left;
 font-size:15px;
 background:#f2f2f2;
}

.smList{
 margin:5px 0 20px 10px; 
 padding:0;
 text-align:left;
}

.smList li{
 margin-left:15px;
 padding:10px 0 10px 0;
 font-size:13px;
 list-style-type:none;
 text-align:left;
}

.smList li a{
 color:#333;
 text-decoration:none;
}

.smList li a:hover{
 color:#dc6238;
 text-decoration:underline;
}



/* slide
--------------------------------------------*/

.viewer_02 {
 margin: 0 auto;
 width:100%;
 height: 320px;
 height:auto;
 text-align: left;
 overflow: hidden;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.viewer_02 ul {
 width:100%;
 height: 320px;
 overflow: hidden;
 position: relative;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.viewer_02 ul li {
 width:100%;
 height: 320px;
 display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}



/* table
--------------------------------------------*/

.history-table {
 width:100%;
 margin:20px 0 30px 0;
 padding:0;
 border-spacing: 0;
 border: none;
}
.history-table th{
 width: 100%;
 display: block;
 border: none;
 font-weight:bold;
 text-align:left;
}
.history-table td{
 width: 100%;
 margin-bottom:20px;
 padding-bottom:20px;
 display: block;
 border: none;
 text-align:left;
 border-bottom:1px solid #ddd;
}
.history-table td.bordernone{
 border:none;
}
.history-table tr:first-child th {

}



.member-table {
 width:100%;
 margin:20px 0 30px 0;
 padding:0;
 border-spacing: 0;
 border: none;
}
.member-table th{
 width: 100%;
 display: block;
 border: none;
 font-weight:bold;
 text-align:left;
}
.member-table td{
 width: 100%;
 margin-bottom:20px;
 padding-bottom:20px;
 display: block;
 border: none;
 text-align:left;
 border-bottom:1px solid #ccc;
}
.member-table td.bordernone{
 border:none;
}
.member-table tr:first-child th {

}



/* 1日の流れ
--------------------------------------------*/

.sec-flow {
  margin-top: 50px;
}

.sec-flow .box-column {
  display: table;
}

.sec-flow .box-column:nth-last-of-type(1) .image,
.sec-flow .box-column:nth-last-of-type(1) .text {
  padding-bottom: 90px;
}

.sec-flow .image,
.sec-flow .text {
  box-sizing: border-box;
  display: table-cell;
  vertical-align: top;
}

.sec-flow .image {
  width: 150px;
  padding: 10px 30px 30px 0px;
  text-align: right;
}

.sec-flow .text {
  position: relative;
  *zoom: 1;
  padding: 5px 20px 30px 25px;
  /*border-left: solid 1px #06153f;*/
  border-left: solid 1px #d45e16;
}

.sec-flow .text:after {
  content: "";
  display: table;
  clear: both;
}

.sec-flow .text:before {
  content: "";
  width: 5px;
  height: 5px;
  /*background-color: #06153f;*/
  background-color: #d45e16;
  border-radius: 100%;
  position: absolute;
  left: -3px;
  top: 20px;
}

.sec-flow .text figure {
  float: right;
  margin: 10px 0 0 30px;
  text-align: right;
}
.sec-flow .text figure img{
  margin-bottom: 6px;
}

.sec-flow .text dl {
  overflow: hidden;
}

.sec-flow .text dt {
  font-weight: bold;
  font-size: 18px;
  line-height: 2;
  /*color: #114dba;*/
  color: #d45e16;
}

.sec-flow .text dd {
  line-height: 1.875;
}


  .sec-flow .box-column:nth-last-of-type(1) .image,
  .sec-flow .box-column:nth-last-of-type(1) .text {
    padding-bottom: 40px;
  }

  .sec-flow .image {
    width: 75px;
    padding: 10px 20px 20px 0px;
  }

  .sec-flow .text {
    padding: 0 0px 20px 15px;
  }

  .sec-flow .text:before {
    top: 15px;
  }

  .sec-flow .text figure {
    float: none;
    margin: 10px 0;
    text-align: left;
  }

  .sec-flow .text dt {
    font-size: 16px;
  }

  .sec-flow .text dd {
    font-size: 14px;
  }



.box-comment{
 clear:both;
 width:100%;
 margin:0 auto;
 margin-top:20px;
 margin-bottom:100px;
 /*border:3px double #ccc;*/
 background:#fffdca;
}
.box-comment:after{
 content: '';
 display: block;
 clear: both;
}
.box-comment-in{
 width:90%;
 margin:0 auto;
 padding-top:35px;
 margin-left:25px;
 padding-bottom:20px;
}


#ContBox01 {
    margin-top: 1px;
    text-align:center;
  }

#ContBox01 .innerBasic section.contSubBox.add_friend {
    margin-top: 0 !important;
  }
#ContBox01 .innerBasic .contSubBox {
    margin-top: 57px;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line {
    position: relative;
    display: table;
    border-bottom: 1px solid #dcdcdc;
    padding-bottom: 25px; 
    width: 100%;
    text-align:center;
  }

#ContBox01 .innerBasic .contSubBox .desc_Line:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -8px; 
    left: 0;
    display: inline-block;
    margin: 0 auto;
    border-width: 11px 6px 0 6px;
    border-style: solid;
    border-color: #222 transparent transparent transparent;
    width: 0;
    height: 0;
  }

#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(2) {
    margin-top: 30px;
    padding-bottom: 27px;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(2) dl dd:first-of-type {
    position: relative;
  }
/*
#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(2) dl dd:first-of-type:after {
    content: "";
    position: absolute;
    bottom: -11px;
    left: -4px;
    display: block;
    width: 76px;
    height: 3px;
    background: #222;
  }
*/


#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(3) {
    margin-top: 30px;
    padding-bottom: 26px;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(3)> dl> dd:first-of-type {
    position: relative;
  }
/*
#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(3)> dl> dd:first-of-type:after {
    content: "";
    position: absolute;
    bottom: -11px;
    left: -4px;
    display: block;
    margin: auto;
    width: 103px;
    height: 3px;
    background: #222;
  }
*/
#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(3)> dl> dd:nth-of-type(2) span {
    font-weight: 700;
  }


#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(4) {
    margin-top: 30px;
    padding-bottom: 27px;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(4) dl dd:first-of-type {
    position: relative;
  }
/*
#ContBox01 .innerBasic .contSubBox .desc_Line:nth-of-type(4) dl dd:first-of-type:after {
    content: "";
    position: absolute;
    bottom: -11px;
    left: -4px;
    display: block;
    width: 76px;
    height: 3px;
    background: #222;
  }
*/

#ContBox01 .innerBasic .contSubBox .desc_Line:last-of-type {
    margin-top: 30px;
    margin-bottom: 30px; 
    border: none;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line:last-of-type:after {
    display: none;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line:last-of-type dl dd:first-of-type {
    position: relative;
  }
/*
#ContBox01 .innerBasic .contSubBox .desc_Line:last-of-type dl dd:first-of-type:after {
    content: "";
    position: absolute;
    bottom: -11px;
    left: -4px;
    display: block;
    width: 110px;
    height: 3px;
    background: #222;
  }
*/

#ContBox01 .innerBasic .contSubBox .desc_Line> dl {
    display: table-cell;
    vertical-align: top;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line> dl dt {
    margin-top: -7px; 
    text-transform: uppercase;
    font-family: "Lato", sans-serif;
    font-weight: 700;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line> dl dt span {
    font-family: "Oswald", sans-serif; 
    font-size: 32px;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line> dl dd {
    line-height: 16px;
    font-size: 16px;
    font-weight: 700;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line> dl dd:first-of-type {
    position: relative;
    margin-top: 18px;
    margin-left: 5px;
    letter-spacing: 1px;
  }
/*
#ContBox01 .innerBasic .contSubBox .desc_Line> dl dd:first-of-type:after {
    content: "";
    position: absolute;
    bottom: -11px;
    left: -4px; 
    display: block;
    width: 93px;
    height: 3px;
    background: #222;
  }
*/

#ContBox01 .innerBasic .contSubBox .desc_Line> dl dd:nth-of-type(2) {
    margin-top: 37px;
    line-height: 27px; 
    font-weight: 500;
  }


/*
#ContBox01 .innerBasic .contSubBox .desc_Line figure {
    display: table-cell;
    width: 165px;
    text-align: center; 
    vertical-align: top;
  }
#ContBox01 .innerBasic .contSubBox .desc_Line figure img {
    width: 128px;
  }
*/



/* list_gray02
-----------------------------------*/

#report-box{width:92%;margin:0 auto;}

.list_gray02{
 margin-top:20px;
 margin-bottom:25px;
}

.list_gray02 li{
 padding:7px 0 7px 16px;
 font-size:14px;
 background:url(../images/arrow_gray02.jpg) 0 12px no-repeat;
 text-align:left;
}

.list_gray02 li a{
 color:#333;
 text-decoration:none;
}
.list_gray02 li a:hover{
 color:#333;
 text-decoration:underline;
}

.list_gray02 img{
 vertical-align:middle;
}


.home-blog{
 width:100%;
 margin:0 auto;
 margin-top:30px;
 text-align:center !important;
}


h2.ttl-home{
 margin:0;padding:50px 0 10px 0;font-size:190%;display: block; text-align: center;font-weight:700;color:#663300;}

.sub-title {
 margin:0;
 padding:0 40px 20px 40px;
 font-size:16pt !important;
 font-weight:bold;
 color:#663300;
 line-height:140%;
}

.day-sp{margin:0 auto;text-align:center;}
.day-pc{display:none;}

.sch-in{width:100%; margin:0 auto;}
.sch-in:after{ content: ""; clear: both; height: 0; display: block; visibility: hidden;}
.sch-in-left{float:none;margin:0 auto; width:90%;}
.sch-in-right{float:none;margin:0 auto; width:90%;}

.sch-box02{width:100%; margin:0 auto; margin-top:30px;}
.sch-box02:after{ content: ""; clear: both; height: 0; display: block; visibility: hidden;}
.sch-box02-left{float:none;margin:0 auto; width:100%;}
.sch-box02-right{float:none;margin:0 auto; width:100%;}
.sch-sub{font-size:120% !important;font-weight:700;color:#663300;margin-bottom:0 !important; padding:0;margin-top:15px !important;padding-bottom:0 !important; }
.sch-txt{font-size:100%;font-weight:normal;color:#663300;margin-top:0 !important; padding-top:0 !important;}



/* ============================================================== */
/*faq*/
/* ============================================================== */

.faqBox{
 width:96%;
 margin:0 auto;
 padding-top:15px;
 padding-bottom:40px;
 margin-bottom:40px;
 clear:both;
 position:relative;
 border-bottom:1px dashed #ccc;
}

.faqQ{
 background: url(../images/q.png) no-repeat 0 0px;
 padding-top:5px;
 padding-bottom:24px;
 padding-left:60px;
 margin-bottom:15px;
 font-size:100%;
 color:#222;
 text-align:left;
}
.faqA{
 background: url(../images/a.png) no-repeat 0 0px;
 padding-top:5px;
 padding-bottom:5px;
 padding-left:60px;
 font-size:100%;
 color:#222;
 text-align:left;
}

.voice-box{width:96%;margin:0 auto;margin-bottom:40px;border:3px solid #2eb087;background:#fff; border-radius:10px;}
.voice-box-in{width:90%;margin:0 auto;text-align:left;padding:30px 10px 20px 10px; color:#222;}
.voice-box-in:after{ content: ''; display: block; clear: both;}
.voice-name{display:inline-block;margin-bottom:15px;padding:15px;font-size:110%;font-weight:bold;background:#ffff99;letter-spacing:1px;}



.box-line{width:100%;background:url(../images/line.jpg) repeat-x;
padding-bottom:50px;}
.voice-box-left{width:100%;float:none;margin:0 auto;text-align:center;}
.voice-box-right{width:100%;float:none;}


.p-sitemap {
  margin: 30px 0 0 0;
}
.p-sitemap li.lv-1 {
  width: 100%;
  /*border-bottom: 1px solid #0074be; */
  font-size: 120%;
  font-weight: bold;
  /*padding-left: 8px;*/
  /*border-left: 4px solid #0074be;*/
 list-style:none;
}

.lv-2 {
  float: left;
  margin-right: 50px;
}


#fixedBtn {width:100%;position:fixed;margin-top:56px !important;bottom:0px; }
.fixedBtnIn { width:100%; margin:0 auto;    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;}
.fixedBtn-tel{width:48%; margin:0 auto;padding:16px;background: #52cb98;}
.fixedBtn-tel img{margin:0 auto;text-align:center;}
.fixedBtn-mail{width:48%; margin:0 auto;padding:16px;background: #ffff99;}
.fixedBtn-mai img{margin:0 auto;text-align:center;}


  .p-interview-list__nav {
  margin-top: 36px;
  margin-bottom: 26px;
    gap: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
.p-interview-list__nav a{
  color: #2eb087;
  text-decoration:none;
}
  .p-interview-list__navLink {
    width: 30%;
    font-size: 80%;
    text-align:center;
    line-height:130%;
    padding-block: 8px;
  color: #0073be;
  border: 2px solid #2eb087;
  }

.p-interview-list__navLink:hover {
  opacity: 1;
  background-color: #2eb087;
  color: #fff;
}


  .p-interview-list__nav02 {
  margin-top: 36px;
  margin-bottom: 26px;
    gap: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
.p-interview-list__nav02 a{
  color: #2eb087;
  text-decoration:none;
}


.case-top-wrap{width:100%; margin:0 auto;}
.case-top-wrap:after{ content: ""; clear: both; height: 0; display: block; visibility: hidden;}


.case-table{width:100%;float:none;
 margin-top:0;
 margin:10px 0 30px 0; 
 padding:0;
 border-spacing: 0; 
 border: none;
}
.case-table th{
 width: 100%;
 padding-top:10px;
 display: block;
 border: none;
 font-weight:bold;
 text-align:left;
 color:#2799d3;
 }
.case-table td{
 width: 100%;
 padding-bottom:10px;
 display: block;
 border: none;
 text-align:left;
 font-size:90%;
 border-bottom:1px dashed #ccc;
}
.case-table td.bordernone{
 border:none; 
}
.case-table tr:first-child th { 

}

.case-list ul{ margin-left:0px;padding-bottom:40px;}
.case-list ul li{ padding-left:20px;margin-bottom:15px;background:url(../images/list_blue.png) 0 6px no-repeat;}


.service-box{width:100%; margin:0 auto;margin-bottom:35px; padding-bottom:45px;border-bottom:1px dashed #999;}
.service-box:after{ content: ""; clear: both; height: 0; display: block; visibility: hidden;}

.service-box-left{display:block;width:100%; float:none;margin:0 auto;}
.service-box-right{display:block;width:100%; float:none; text-align:center; margin-top:20px !important;}
.service-box-right div{text-align:center;}
.service-box-right p{text-align:left;}

.btn-btm{width:50%;margin-top:20px; text-align:center;}

.ttl-box{display:none;}


.ttl-box-sp{ 
position: relative; width:100%; margin-bottom:20px;
}
.ttl-box-sp:before {
position: absolute;
    top: 0;
right: 0;
bottom: 0;
left: 0;
content: ' ';
  background-color: rgba(0,0,0,.3);
}
.ttl-box-sp p{ 
  position: absolute;
  font-weight: bold; 
  font-size: 2.0em;
  color: #fff !important;
 font-family: 'Noto Sans JP',  Sans-Serif;
  top: 40%;
  right:0; left:0; bottom:0;
  margin:auto;
 text-align:center;
/*
  left: 50%;
*/
/*
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
*/
  /*margin:0 auto;*/
  padding:0;

}
.ttl-box-sp img{ 
 width: 100%;
}

/* sitemap.html
---------------------------------------------*/

#sitemap{
 width:100%;
 margin:0 auto;
 margin-top:5px;
 margin-bottom:20px;
}
	
#sitemap-left{
 float:none;
 width:100%;
 margin:0 auto;
 padding:0;
 text-align:left;
}

#sitemap-right{
 float:none;
 width:100%;
 margin:0 auto;
 padding:0 40px 0 0;
 text-align:left;
}

.sitemap-box{
 width:100%;
 margin:0 auto;
 margin:0 0 0 5px;
 padding:10px 0 10px 0;
 text-align:left;
}

.sitemap-text{
 margin:0;
 padding:5px 0 2px 0;
 text-align:left;
 font-size:14px;
}

.sitemap-text a{
 color:#222;
 text-decoration:none;
}

.sitemap-text a:hover{
 color:#2678a9;
}

.sitemap-subtext{
 margin:0;
 padding:2px 0 2px 10px;
 text-align:left;
 font-size:14px;
}

.sitemap-subtext a{
 color:#222;
 text-decoration:none;
}

.sitemap-subtext a:hover{
 color:#2678a9;
}



.case01-table { 
 width: 100%;
 margin-top:30px;
 margin-bottom:60px;
 margin-left: auto;
 margin-right: auto; 
 padding:0;
 border-collapse: collapse;
 border-spacing: 0;
 border:none; 
 border-top:1px solid #ccc;
 border-left:1px solid #ccc;
}
.case01-table th{
 width:20%;
 margin:0; 
 padding:20px 5px 18px 5px; 
 font-size:100%;
 font-weight:bold;
 text-align:left;
 border-top:none;
 border-left:none;
 border-right:1px solid #ccc;
 border-bottom:1px solid #ccc;
} 
.case01-table td{ 
 padding:20px 5px 18px 5px;
 font-size:100%;
 line-height:180%;
 text-align:left;
 border-top:none;
 border-left:none;
 border-right:1px solid #ccc;
 border-bottom:1px solid #ccc;
}
.case01-table td.bordernone{
 border:none; 
}
.top-carea01{width:10%;background:#d5ebf3; border-top:1px solid #0074be;
 border-left:1px solid #ccc; padding:20px 5px 18px 5px;
 font-size:100%; text-align:center !important;}

.top-carea02{width:25%;background:#d5ebf3; border-top:1px solid #0074be;
 border-left:1px solid #ccc; padding:20px 5px 18px 5px;
 font-size:100%; text-align:center !important;}

.top-carea03{width:25%;background:#d5ebf3; border-top:1px solid #0074be;
 border-left:1px solid #ccc; padding:20px 5px 18px 5px;
 font-size:100%; text-align:center !important;}

.top-carea04{width:25%;background:#d5ebf3; border-top:1px solid #0074be;
 border-left:1px solid #ccc; padding:20px 5px 18px 5px;
 font-size:100%; text-align:center !important;}



.flow-box{width:94%; margin:0 auto; margin-top:30px; margin-bottom:30px;border:5px solid #00659f;}
.flow-box-in{width:96%; margin:0 auto; margin-top:20px;margin-bottom:20px;}

