@charset "UTF-8";
.flex_box {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
   }

html {
  font-family: 'Noto Serif JP', 'Noto Serif JP otf', sans-serif, 'ヒラギノ明朝 ProN W6', 'HiraMinProN-W6', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
  -ms-font-feature-settings: "normal";
  animation-fill-mode: forwards;}
body {
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  overflow-x: hidden;}


/*header
  ------------------------------------------*/
/*footer
  ------------------------------------------*/
@media print, screen and (max-width: 1024px) {
  header,body {
    min-width: 1024px; }
}
/*PC
-----------------------------------------------------------------------------*/
@media print, screen and (min-width: 750px) {
  .sp {
    display: none; }

  .inner {
    width: 90%;
    max-width: 1100px;
    margin: auto; }

  .inner-m {
    width: 96%;
    max-width: 1000px;
    margin: 0 auto; }

  .inner-s {
    width: 96%;
    max-width: 800px;
    margin: 0 auto; }

  /*title
    ------------------------------------------*/
  .tit_box .category_tit {
    font-size: 3rem;
    font-weight: bold;
    text-align: center;
    color: #000;
    margin-bottom: 1rem;
    letter-spacing: 0.153em; }
    .tit_box .category_tit.white {
      color: #fff; }
  .tit_box .sub_tit {
    font-size: 1.5rem;
    font-weight: 500;
    color: #000;
    text-align: center;
    margin-bottom: 3.8rem;
    letter-spacing: 0.08em;
	padding-bottom: 2rem;
	background: url(../../img/report-titborder.png) no-repeat bottom center;}
    .tit_box .sub_tit.white {
      color: #fff; }

  /*header
    ------------------------------------------*/
  a {
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out; }
    a:hover {
      opacity: 0.7; }

  header {
    position: fixed;
    width: 100%;
    z-index: 100; }
    header .box {
      padding: 0.7vw 0; }
      header .box .inner {
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center; }
        header .box .inner h1 {
          font-size: 1.2rem;
          color: #fff;
          line-height: 1.2;
          margin: calc(0px - (((1em*1.2) - 1em)/2)) 0 calc(0px - (((1em*1.2) - 1em)/2)) 0; }
    header .nav_wrap {
      padding: 14px 0px;
      background-color: rgba(255, 255, 255, 1); }
      header .nav_wrap .inner {
        -webkit-justify-content: space-between;
        justify-content: space-between;
		max-width: 1200px; }
        header .nav_wrap .inner .logo {
          width: 13%;
		  display: flex;
		  align-items: center;}
        header .nav_wrap .inner nav {
          width: 85%;
		  padding: 7px 0;}
          header .nav_wrap .inner nav .list {
			justify-content: space-between;
            -webkit-align-items: end;
            align-items: end; }
            header .nav_wrap .inner nav .list li {
              padding: 0;
              position: relative;
			text-align: center;;}
            header .nav_wrap .inner nav .list li:nth-child(-n+6) {
              /*padding-bottom: 0.5%;*/
              margin:0 1% 0.5%;
			}
              header .nav_wrap .inner nav .list li.about-btn {
                /*width: 14%; */
              }
              	header .nav_wrap .inner nav .list li.about-btn a::before {
                	content: url(../img/hmenu01.png);
					display: block;
					vertical-align: middle;}
              header .nav_wrap .inner nav .list li.report-btn {
                /*width: 11.8823529%; */
              }
              	header .nav_wrap .inner nav .list li.report-btn a::before {
                	content: url(../img/hmenu02.png);
					display: block;
					vertical-align: middle;}
              header .nav_wrap .inner nav .list li.city-btn {
                /*width: 10.3529411%; */
              }
              	header .nav_wrap .inner nav .list li.city-btn a::before {
                	content: url(../img/hmenu03.png);
					display: block;
					vertical-align: middle; }
              header .nav_wrap .inner nav .list li.special-btn {
                /*width: 4.941176%; */
              }
              	header .nav_wrap .inner nav .list li.special-btn a::before {
                	content: url(../img/hmenu04.png);
					display: block;
					vertical-align: middle; }
              header .nav_wrap .inner nav .list li.qa-btn {
                /*width: 8.1764705%; */
              }
              	header .nav_wrap .inner nav .list li.qa-btn a::before {
                	content: url(../img/hmenu05.png);
					display: block;
					vertical-align: middle;}
				header .nav_wrap .inner nav .list li.dl-btn {
			  	/*width: 8.1764705%; */
        }
				header .nav_wrap .inner nav .list li.dl-btn a::before {
			  		content: url(../img/hmenu06.png);
			  		display: block;
			  		vertical-align: middle;}

              header .nav_wrap .inner nav .list li.rsv-btn {
	             width: 17%;
				}
              	header .nav_wrap .inner nav .list li.rsv-btn a {
                	width: 100%;
					height: 100%;
					display: block;
					background-color: #fff;
					padding: 20px 5px;
					position: relative;
                	border: 1px solid #009ee7;
				}
              	header .nav_wrap .inner nav .list li.rsv-btn a:hover {
					opacity: 1;
					background-color: #009ee7;
					color: #fff;
				}
              	header .nav_wrap .inner nav .list li.rsv-btn a::before {
                	content: url(../img/hmenu07.png);
					vertical-align: text-bottom;}
              	header .nav_wrap .inner nav .list li.rsv-btn a:hover::before {
                	content: url(../img/hmenu07w.png);
					vertical-align: text-bottom;}

				header .nav_wrap .inner nav .list li.btn-set{
					width: 17%;
				}
				header .nav_wrap .inner nav .list li.tel-btn{
					margin:0 0 5px;
				}
				header .nav_wrap .inner nav .list li.tel-btn a{
					font-size:20px;
	
				}
				header .nav_wrap .inner nav .list li.tel-btn a:before{
					content: url(../img/hmenu08.png);
					vertical-align: text-bottom;
				}
				  header .nav_wrap .inner nav .list li.inquiry-btn a {
					width: 100%;
					height: 100%;
					display: block;
					color:#fff;
					background-color: #e2007e;
					padding: 6px 5%;
					position: relative;
					border: 1px solid #e2007e;}
				  header .nav_wrap .inner nav .list li.inquiry-btn a:hover {
					opacity: 1;
					background-color: #fff;
					color: #e2007e;}
				  header .nav_wrap .inner nav .list li.inquiry-btn a::before {
					content: url(../img/hmenu09.png);
					vertical-align: text-bottom;
					position: relative;
					top:-2px;
					}
				  header .nav_wrap .inner nav .list li.inquiry-btn a:hover::before {
					content: url(../img/hmenu09p.png);
					vertical-align: text-bottom;}

              header .nav_wrap .inner nav .list li a {
                width: 100%;
                text-align: center;
                /* padding: 0 4.7%; */
                box-sizing: border-box;
                font-size: 1.4rem;
                font-weight: bold;
                color: #000;
                line-height: 1.2;
				        vertical-align: middle;
				        position: relative;
                display: inline-block;
              }
              header .nav_wrap .inner nav .list li a::before {
				vertical-align: -webkit-baseline-middle;
				padding-right: 5%;
        margin-bottom:10px;
      }
			  header .nav_wrap .inner nav .list li a::after {
				content: "";
				display: block;
    			position: absolute;
    			bottom: -0.5em;
    			left: 0;
    			height: 1px;
    			width: 0;
    			background: #000;
    			-moz-transition: all 0.3s;
    			-o-transition: all 0.3s;
    			-webkit-transition: all 0.3s;
    			transition: all 0.3s;}
			  header .nav_wrap .inner nav .list li a:hover {
				opacity: 1;}
			  header .nav_wrap .inner nav .list li a:hover::after {
  				width: 100%;}
			  header .nav_wrap .inner nav .list li a.current::after {
  				width: 100%;}
              header .nav_wrap .inner nav .list li.tel-btn a::after {
				display: none;}
              header .nav_wrap .inner nav .list li.inquiry-btn a::after {
				display: none;}
              header .nav_wrap .inner nav .list li.rsv-btn a {
				color: #009FE8;}
              header .nav_wrap .inner nav .list li.rsv-btn a::after {
				display: none;}
	
              .nav_wrap .inner nav .list li.grayout span{
				cursor: none;
				pointer-events: none;
				opacity: 0.3;
				display: inline-block;
				font-size: 1.4rem;
				margin-left: 0.5rem;}
              #foot-content .content-box li .link-box .grayout {
				cursor: none;
				pointer-events: none;
				opacity: 0.3;
				font-size: 1.3rem;}

  /*pagetop
    ------------------------------------------*/
  #PageTopBtn {
    position: fixed;
    bottom: 18px;
    right: 10px; }

  /*footer
    ------------------------------------------*/
  footer {
    background-color: rgba(0,0,0,0.1);
    padding: 0 0;
	position: relative;}
    footer .list_box {
      padding: 4rem 0; }
      footer .list_box .list_block {
        width: 22%; }
        footer .list_box .list_block .list.type01 {
          font-size: 1.4rem;
          font-weight: bold; }
          footer .list_box .list_block .list.type01 li {
            margin-bottom: 3rem; }
        footer .list_box .list_block .list.type02 {
          font-size: 1.2rem; }
          footer .list_box .list_block .list.type02 li {
            margin-bottom: 1.3rem;
            font-weight: bold; }
            footer .list_box .list_block .list.type02 li.category_top {
              font-size: 1.4rem;
              font-weight: bold;
              margin-bottom: 3rem; }
      footer .list_box .news_block {
        width: 19%; }
      footer .list_box .other_block {
        width: 15%; }
      footer .list_box .company_block .list.type02 li.category_top {
        margin-bottom: 1.7rem; }
	
	#banner {
	}
	#banner .banner-box{
	  -webkit-justify-content: space-between;
      justify-content: space-between;
	  padding-bottom: 3rem;
	  border-bottom: 1px solid #fff;}
	  #banner .banner-box li{
	    width: 23%;}
	    #banner .banner-box li a:hover{
	      opacity: 0.5;}
	
	#banner .banner-box::before{
 	 content:"";
 	 display: block;
  	width:23%;
  	order:1;
}
	#banner .banner-box::after{
  	content:"";
 	 display: block;
	 width:23%;
}
	
	#banner .double {
		border-bottom:0px;
		margin-bottom:-10px;	
	}
	
	
	#foot-content {
	  padding: 4rem 0;}
	  #foot-content .content-box {
	    padding: 4rem 0;
	    -webkit-justify-content: space-between;
        justify-content: space-between;}
	      #foot-content .content-box li{
	        width: 22%;}
	        #foot-content .content-box li .link-box{
	    	  -webkit-justify-content: space-between;
        	  justify-content: space-between;}
	        #foot-content .content-box li .link-box a {
				line-height: 1;}
          #foot-content .content-box li .link-box a:nth-child(6) {
        width:100%;}

	          #foot-content .content-box li a .link{
			    font-size: 1.3rem;
				color:#FFF;
				vertical-align: text-top;
				position: relative;
				line-height: 1;}
	            #foot-content .content-box li .link::before{
			      content: url(../img/arrow-r.png);
				  margin-bottom: 0.2rem;
				  margin-right: 0.3rem;
				  vertical-align: text-top;}
	            #foot-content .content-box li a .link::after {
				  content: "";
				  display: block;
    			  position: absolute;
    			  bottom: -2px;
    			  left: 0;
    			  height: 1px;
    			  width: 0;
    			  background: #000;
    			  -moz-transition: all 0.3s;
    			  -o-transition: all 0.3s;
    			  -webkit-transition: all 0.3s;
    			  transition: all 0.3s;}
	            #foot-content .content-box li a:hover {					
				  opacity: 1;}
	            #foot-content .content-box li a .link:hover::after {				
				  width: 100%;}
	        #foot-content .content-box li .sns-box{
	    	  margin-top: 0.5rem;}
	        #foot-content .content-box li .sns-box a:hover{
	    	  opacity: 0.7;}
			  #foot-content .content-box li .sns-box img{
	    	    width: auto !important;
				margin-right: 1rem;}
	      #foot-content .content-box li.left img{
	        width: 86.5%; }
	      #foot-content .content-box li.center{
	        width: 32%;
			padding: 0 6.5rem;
	        border-left: 1px solid #fff;
	        border-right: 1px solid #fff; }
	        #foot-content .content-box li.center .com-name {
  	          font-size: 1.5rem;
			  color:#FFF;
			  line-height: 2.2rem;
    		  margin-bottom: 1rem;
			  font-weight: bold;}
	        #foot-content .content-box li.center .com-add {
  	          font-size: 1.1rem;
			  color:#FFF;
			  line-height: 1.8rem;
    		  margin-bottom: 1rem;}
	        #foot-content .content-box li.center .com-txt {
  	          font-size: 1.1rem;
			  color:#FFF;
			  font-family: Noto sans, "Noto sans otf";
			  line-height: 1.8rem;
    		  margin-bottom: 1rem;}
          #foot-content .content-box li.center .mailmaga {
              font-size: 1.1rem;
        font-family: Noto sans, "Noto sans otf";
        line-height: 1.8rem;
          margin-bottom: 1rem;}
          #foot-content .content-box li.center .mailmaga a{
            text-decoration: underline;
          }
  .copy {
    text-align: center;
    font-size: 1.1rem;
    padding: 1.5rem 0;
    background: #fff;
	color: #999;}

  /*sub-page
    ------------------------------------------*/
  #main.sub {
    padding-top: 0.1rem; }


  /*btn
    ------------------------------------------*/

  .btn-area {
	width: 55.4%;
	margin: 7rem auto 0;
	font-size: 1.7rem;
	text-align: center;}
	.btn-area div {
		display: block;
		position: relative;
		width: 46.5%;
		margin: 0 auto;}
	.btn-area a {
		display: block;
		width: 100%;
		height: 100%;
		padding: 19px 0 0;
		border: 1px solid #000;}
	.btn-area a:hover {
		opacity: 1;
		background: #000;
		color: #fff;}
	.btn-area .btn01 {
		margin: 0 7% 0 0;}
	.btn-area .btn01 a::before {
        content: url(../img/sec01-icon01.png);
		vertical-align: middle;
		margin-right: 4%;}
	.btn-area .btn02 a::before {
        content: url(../img/sec01-icon02.png);
		vertical-align: middle;
		margin-right: 4%;}
	.btn-area .btn03 a::before {
        content: url(../img/sec04-icon01.png);
		vertical-align: middle;
		margin-right: 4%;}
	.btn-area .btn04 a::before {
        content: url(../img/qanda-icon.png);
		vertical-align: middle;
		margin-right: 4%;}
	.btn-area .btn05 a::before {
        content: url(../img/dl-icon.png);
		vertical-align: middle;
		margin-right: 4%;}
/*
    	.btn-area .btn05 a::before {
        content: url(../img/dl_document_icon.png);
		vertical-align: middle;
		margin-right: 4%;}
*/
	.btn-area .btn06 a::before {
        content: url(../img/special-icon.png);
		vertical-align: middle;
		margin-right: 4%;}
	.btn-area .btn01 a:hover::before {
        content: url(../img/sec01-icon01w.png);
		vertical-align: middle;
		margin-right: 4%;}
	.btn-area .btn02 a:hover::before {
        content: url(../img/sec01-icon02w.png);
		vertical-align: middle;
		margin-right: 4%;}
	.btn-area .btn03 a:hover::before {
        content: url(../img/sec04-icon01w.png);
		vertical-align: middle;
		margin-right: 4%;}
	.btn-area .btn04 a:hover::before {
        content: url(../img/qanda-iconw.png);
		vertical-align: middle;
		margin-right: 4%;}
/*
	.btn-area .btn05 a:hover::before {
        content: url(../img/dl_document_w2_icon.png);
		vertical-align: middle;
		margin-right: 4%;}
*/
	.btn-area .btn05 a:hover::before {
        content: url(../img/dl-iconw.png);
		vertical-align: middle;
		margin-right: 4%;}
	.btn-area .btn06 a:hover::before {
        content: url(../img/special-iconw.png);
		vertical-align: middle;
		margin-right: 4%;}
	
  .contact-btn-area{}
	.contact-btn-area a {
		opacity: 1;
		display: block;
		width: 100%;
		height: 100%;
		padding: 19px 0;
		border: 1px solid #000;
		margin: 0 auto;}
	.contact-btn-area a:hover {
		opacity: 1;
		background: #000;
		color: #fff;}
	.contact-btn-area .btn04 {
		margin: 0 7% 0 0;}
	.contact-btn-area .btn04 a::before {
        content: url(../img/icon-mail.png);
		vertical-align: middle;
		margin-right: 4%;}
	.contact-btn-area .btn04 a:hover::before {
        content: url(../img/icon-mailw.png);
		vertical-align: middle;
		margin-right: 4%;}
	
	.tel-number {
		cursor: none;
		pointer-events: none;
		color:#FFF;
	}
	
  /*--------------------------endPC--------------------------------*/ }

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop,
  #foot-content .content-box li a .link::after {
	content: "";
	display: block;
	position: absolute;
	top: 1rem;
	left: 0;
	height: 1px;
 	width: 0;
	background: #000;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;}
	
  *::-ms-backdrop,
  #foot-content .content-box li a {
	overflow: hidden;}
}


/*TAB
-----------------------------------------------------------------------------*/
@media screen and (min-width: 1121px) and (max-width: 1345px) {
	header .nav_wrap .inner{
    	width: 96% !important;
	}
	header .nav_wrap .inner nav .list li a {
    	font-size: 1.2rem;
	}
	header .nav_wrap .inner nav .list li.tel-btn a {
    	font-size: 1.8rem;
	}
	/* header .nav_wrap .inner nav .list li.contact-btn,
	header .nav_wrap .inner nav .list li.rsv-btn {
		width: 19.554477%;
	} */
}
@media screen and (min-width: 1041px) and (max-width: 1120px) {
	header .nav_wrap .inner{
    	width: 97% !important;
	}
	header .nav_wrap .inner nav .list li a {
    	font-size: 1.2rem;
	}
	header .nav_wrap .inner nav .list li.tel-btn a {
    	font-size: 1.7rem;
	}
	header .nav_wrap .inner nav .list li.inquiry-btn a::before {
		top:0;
		}

	/* header .nav_wrap .inner .logo {
	    margin-top: 1rem;
	} */
	/* header .nav_wrap .inner nav .list li.contact-btn,
	header .nav_wrap .inner nav .list li.rsv-btn {
		width: 19.554477%;
	} */
}
@media screen and (min-width: 751px) and (max-width: 1040px) {
	header .nav_wrap .inner{
    	width: 97% !important;
	}
	header .nav_wrap .inner nav .list li a {
    	font-size: 1.2rem;
	}
	header .nav_wrap .inner nav .list li.tel-btn a {
    	font-size: 1.68rem;
	}
	header .nav_wrap .inner nav .list li.inquiry-btn a::before {
		top:0;
		}
	/* header .nav_wrap .inner .logo {
	    margin-top: 1rem;
	} */
	/* header .nav_wrap .inner nav .list li.contact-btn,
	header .nav_wrap .inner nav .list li.rsv-btn {
		width: 19.554477%;
	} */
}
@media screen and (min-width: 751px) and (max-width: 940px) {
	header .nav_wrap .inner{
    	width: 98% !important;
	}
	/* header .nav_wrap .inner nav .list li {
	    text-align: center;
	}
	header .nav_wrap .inner nav .list li a {
    	font-size: 1.0rem;
	}
	header .nav_wrap .inner .logo {
	    margin-top: 1rem;
	}
	header .nav_wrap .inner nav .list li.contact-btn,
	header .nav_wrap .inner nav .list li.rsv-btn {
		width: 19.554477%;
	}
	header .nav_wrap .inner nav .list li.contact-btn a::before,
	header .nav_wrap .inner nav .list li.rsv-btn a::before {
		display: block;
		margin-bottom: 3px;
	}
	header .nav_wrap .inner nav .list li a::before {
		display: block !important;
	}
	header .nav_wrap .inner nav .list li a {
		display: block;
	} */
	
  /*--------------------------endTAB--------------------------------*/ }


/*SP
-----------------------------------------------------------------------------*/
@media screen and (max-width: 750px) {
  .pc {
    display: none; }

  header,body {
    min-width: auto; }

  /*title
    ------------------------------------------*/
  .tit_box .category_tit {
    font-size: 2.2rem;
    font-weight: bold;
    text-align: center;
    color: #000;
    margin-bottom: 1rem;
    letter-spacing: 0.153em; }
    .tit_box .category_tit.white {
      color: #fff; }
  .tit_box .sub_tit {
    font-size: 1.2rem;
    font-weight: 500;
    color: #000;
    text-align: center;
    margin-bottom: 3.8rem;
    letter-spacing: 0.08em;
	padding-bottom: 2rem;
	background: url(../../img/report-titborder.png) no-repeat bottom 3px center;}
    .tit_box .sub_tit.white {
      color: #fff; }

  /*header
    ------------------------------------------*/
  a {
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
    a:hover {
      opacity: 0.7; }

  header {
    position: fixed;
    width: 100%;
    z-index: 100;	}
    header .box {
      background-color: #0A5898;
      padding: 0.7vw 0; }
      header .box .inner {
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center; }
        header .box .inner h1 {
          font-size: 0.6rem;
          color: #fff;
          line-height: 1.2;
          margin: calc(0px - (((1em*1.2) - 1em)/2)) 0 calc(0px - (((1em*1.2) - 1em)/2)) 0; }
        header .box .inner .txt_block {
          width: 66.7%; }
        header .box .inner .other_block {
          width: 23.3%;
          -webkit-justify-content: space-between;
          justify-content: space-between; }
          header .box .inner .other_block .snsicon {
            width: 11%;
            max-width: 26px; }
    header .nav_wrap {
      padding: 1.15rem 1.8666666667% 1.15rem 4%;
	  background: url(../img/sp/header-bg.png) no-repeat center top;
	  background-size: cover;}
      header .nav_wrap .inner {
        -webkit-justify-content: space-between;
        justify-content: space-between; }
        header .nav_wrap .inner .logo {
          width: 27.8666666667%; }
    	  header .nav_wrap .inner nav .list {
            width: 90%;
    		margin: 0 5%;}
	
      .nav_wrap .inner nav .list {
            text-align: left; }
            .nav_wrap .inner nav .list li {
              padding: 19px 0 27px;
              position: relative;
			  background: url(../img/sp/menu-border.png) repeat-x bottom center;}
              .nav_wrap .inner nav .list li.about-btn {
                width: 100%; }
              	.nav_wrap .inner nav .list li.about-btn a::before {
                	content: '';
					background: url(../img/sp/hmenu01.png) no-repeat top 50% center;
    				background-size: contain;
    				height: 20px;
					vertical-align: middle;
					margin-right: 3%;
					display: inline-block;
					margin-top: -4px;}
              .nav_wrap .inner nav .list li.report-btn {
                width: 100%; }
              	.nav_wrap .inner nav .list li.report-btn a::before {
                	content: '';
					background: url(../img/sp/hmenu02.png) no-repeat top 50% center;
    				background-size: contain;
    				height: 20px;
					vertical-align: middle;
					margin-right: 3%;
					display: inline-block;
					margin-top: -3px;}
              .nav_wrap .inner nav .list li.city-btn {
                width: 100%;}
              	.nav_wrap .inner nav .list li.city-btn a::before {
                	content: '';
					background: url(../img/sp/hmenu03.png) no-repeat top 50% center;
    				background-size: contain;
    				height: 20px;
					vertical-align: middle;
					margin-right: 3%;
					display: inline-block;
					margin-top: -3px;}
              	.nav_wrap .inner nav .list li.city-btn span {
					opacity: 0.3;
					width: 100%;
    				text-align: center;
    				padding: 7px 4% 9px 0;
    				box-sizing: border-box;
    				font-size: 1.6rem;
    				font-weight: bold;
    				color: #000;
    				line-height: 1.2;
    				vertical-align: middle;}
              .nav_wrap .inner nav .list li.special-btn {
                width: 100%;}
              	.nav_wrap .inner nav .list li.special-btn a::before {
                	content: '';
					background: url(../img/sp/hmenu04.png) no-repeat top 50% center;
    				background-size: contain;
    				height: 20px;
					vertical-align: middle;
					margin-right: 3%;
					display: inline-block;
					margin-top: -3px;}
              	.nav_wrap .inner nav .list li.special-btn span {
					opacity: 0.3;
					width: 100%;
    				text-align: center;
    				padding: 7px 4% 9px 0;
    				box-sizing: border-box;
    				font-size: 1.6rem;
    				font-weight: bold;
    				color: #000;
    				line-height: 1.2;
    				vertical-align: middle;}
              .nav_wrap .inner nav .list li.qa-btn {
                width: 100%; }
              	.nav_wrap .inner nav .list li.qa-btn a::before {
                	content: '';
					background: url(../img/sp/hmenu05.png) no-repeat top 50% center;
    				background-size: contain;
    				height: 20px;
					vertical-align: middle;
					margin-right: 3%;
					display: inline-block;
					margin-top: -2px;}
              .nav_wrap .inner nav .list li.dl-btn {
                width: 100%; }
              	.nav_wrap .inner nav .list li.dl-btn a::before {
                	content: '';
					background: url(../img/sp/hmenu06.png) no-repeat top 50% center;
    				background-size: contain;
    				height: 20px;
					vertical-align: middle;
					margin-right: 3%;
					display: inline-block;
					margin-top: -2px;}



              .nav_wrap .inner nav .list li.rsv-btn {
                width: 100%;
				padding: 19px 0 0;
				background: none;
				}

              	.nav_wrap .inner nav .list li.rsv-btn a{
                	width: 100%;
					height: 100%;
					display: block;
					text-align: center;
					color:#009ee7;
					border:1px solid #009ee7;
					padding:25px 0;
				}

              	.nav_wrap .inner nav .list li.rsv-btn a::before {
                	content: '';
					background: url(../img/hmenu07.png) no-repeat top 50% center;
    				background-size: contain;
    				height: 20px;
					vertical-align: middle;
					margin-right: 3%;
					display: inline-block;
					margin-top: -4px;}

				.nav_wrap .inner nav .list li.btn-set {
					width: 100%;
					padding: 0 0 0;
					background: none;
				}
				.nav_wrap .inner nav .list li.btn-set ul{
					display: flex;
					justify-content: space-between;
					align-items: center;
					width: 100%;
				}
				.nav_wrap .inner nav .list li.btn-set ul li{
					background: none;
				}

              .nav_wrap .inner nav .list li a {
                width: 100%;
                text-align: center;
                padding: 7px 4% 9px 0;
                box-sizing: border-box;
                font-size: 1.6rem;
                font-weight: bold;
                color: #fff;
                line-height: 1.2;
				vertical-align: middle;}
              .nav_wrap .inner nav .list li a::before {
				vertical-align: -webkit-baseline-middle;
				padding-right: 5%;}
              .nav_wrap .inner nav .list li.grayout a {
				cursor: none;
				pointer-events: none;
				opacity: 0.3;}
			  .nav_wrap .inner .sns-box {
				  width: 20%;
				  margin: 2rem 40%;}
			  .nav_wrap .inner .sns-box a {
				  width: 30%;
				  margin: 0 auto;}
			  	  .nav_wrap .inner .sns-box a img {
				  	vertical-align: middle;}
				.nav_wrap .inner nav .list li.tel-btn{
					width: 66%;
				}
				.nav_wrap .inner nav .list li.tel-btn a{
					font-size:5.5vw;
				}
				.nav_wrap .inner nav .list li.tel-btn a::before {
                	content: '';
					background: url(../img/sp/hmenu08.png) no-repeat top 50% center;
    				background-size: contain;
    				height: 50px;
					width: 8px;
					vertical-align: middle;
					margin-right: 4%;
					display: inline-block;
					margin-top: -2px;
				}
				.nav_wrap .inner nav .list li.inquiry-btn{
					width: 35%;
				}
				.nav_wrap .inner nav .list li.inquiry-btn a{
					background: #e2007e;
					color:#fff;
					display: block;
					font-size:3.8vw;
					padding:18px 0;
				}
				.nav_wrap .inner nav .list li.inquiry-btn a::before {
                	content: '';
					display: block;
					background: url(../img/hmenu09.png) no-repeat top 50% center;
    				background-size: contain;
    				height: 13px;
					vertical-align: middle;
					margin:0 0 8px;
					margin-top: -2px;}

  nav.globalMenuSp {
    position: fixed;
    top: 0;
    left: 0;
    background-color: #fff;
    color: #000;
    text-align: center;
    transform: translateY(-300%);
    transition: all 0.6s;
    width: 100%;
    padding: 0;
    z-index: 999;
    height: 100%;
	overflow: scroll;
    box-sizing: border-box;
	padding:0 0 50px}

  nav.globalMenuSp.active {
    transform: translateY(0%);
    margin-top: 15vw;
	background-color: #395b85; }

  .navToggle {
    display: block;
    right: 2%;
    top: 0.7rem;
    width: 9.3333333333%;
    cursor: pointer;
    z-index: 3;
    text-align: center;
    background-image: url(../img/sp/menu.png);
    background-size: contain;
    background-position: center center;
	background-repeat: no-repeat}
    .navToggle.active {
      background-image: url(../img/sp/menu_close.png); }


  /*pagetop
    ------------------------------------------*/
  #PageTopBtn {
    position: fixed;
    right: 10px;
    width: 14.2666666667%;
    z-index: 10; }

  /*footer
    ------------------------------------------*/
  footer {
    background-color: rgba(0,0,0,0.1);
    padding: 0 0;
	position: relative;}
    footer .list_box {
      padding: 4rem 0; }
      footer .list_box .list_block {
        width: 22%; }
        footer .list_box .list_block .list.type01 {
          font-size: 1.4rem;
          font-weight: bold; }
          footer .list_box .list_block .list.type01 li {
            margin-bottom: 3rem; }
        footer .list_box .list_block .list.type02 {
          font-size: 1.2rem; }
          footer .list_box .list_block .list.type02 li {
            margin-bottom: 1.3rem;
            font-weight: bold; }
            footer .list_box .list_block .list.type02 li.category_top {
              font-size: 1.4rem;
              font-weight: bold;
              margin-bottom: 3rem; }
      footer .list_box .news_block {
        width: 19%; }
      footer .list_box .other_block {
        width: 15%; }
      footer .list_box .company_block .list.type02 li.category_top {
        margin-bottom: 1.7rem; }
	
	#banner {
	}
	#banner .banner-box{
	  -webkit-justify-content: space-between;
      justify-content: space-between;}
	  #banner .banner-box li{
	    width: 60%;
		margin: 1rem 20%;
  		padding: 0px;
}
	
	.foot-navi.nav_wrap{
		margin: 0 4% 8%;
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
		margin-top: 30px;
	}
	
	#foot-content {
	  padding: 0 0 4rem 0;}
	  #foot-content .content-box {
	    padding: 0 0 0 0;
	    -webkit-justify-content: space-between;
        justify-content: space-between;}
	      #foot-content .content-box li{
	        width: 100%;}
	        #foot-content .content-box li .link-box{
	    	  -webkit-justify-content: space-between;
        	  justify-content: space-between;}
	          #foot-content .content-box li .link{
			    font-size: 1.3rem;}
	            #foot-content .content-box li .link::before{
			      content: url(../img/arrow-r.png);
				  margin-bottom: 0.2rem;
				  margin-right: 0.2rem;}
	        #foot-content .content-box li .sns-box{
	    	  margin-top: 1rem;}
			  #foot-content .content-box li .sns-box img{
	    	    width: auto !important;
				margin-right: 1rem;}
	      #foot-content .content-box li.left img{
	        width: 54%;
    		margin: 0 23% 1.5rem; }
	      #foot-content .content-box li.center{
	        width: 100%;
			padding: 0 4%;
			text-align: center;}
	        #foot-content .content-box li.center .com-name {
			  font-size: 1.5rem;
			  color:#FFF;
			  line-height: 2.2rem;
    		  margin-bottom: 1rem;}
	        #foot-content .content-box li.center .com-add {
  	          font-size: 1.1rem;
			  color:#fff;
			  line-height: 1.8rem;
    		  margin-bottom: 1rem;}
	        #foot-content .content-box li.center .com-txt {
  	          font-size: 1.1rem;
			  color:#FFF;
			  font-family: Noto sans, "Noto sans otf";
			  line-height: 1.8rem;
    		  margin-bottom: 1.5rem;}
          #foot-content .content-box li.center .mailmaga {
              font-size: 1.1rem;
        font-family: Noto sans, "Noto sans otf";
        line-height: 1.8rem;
          margin-bottom: 1rem;}
          #foot-content .content-box li.center .mailmaga a{
            text-decoration: underline;
          }

  .copy {
    text-align: center;
    font-size: 1rem;
    padding: 1.5rem 0;
    background: #fff;
	color: #999;}

  /*sub-page
    ------------------------------------------*/
  #main.sub {
    padding-top: 0.5vw; }
	
  /*btn
    ------------------------------------------*/

  .btn-area {
	width: 64.266667%;
	margin: 4rem auto 0;
	font-size: 1.7rem;
	text-align: center;}
	.btn-area div {
		display: block;
		position: relative;
		width: 100%;
		margin: 4rem auto 0;}
	.btn-area a {
		display: block;
		width: 100%;
		height: 100%;
		padding: 19px 0 0;
		border: 1px solid #000;}
	.btn-area .btn01 {
		margin: 0 0 0 0;}
	.btn-area .btn01 a::before {
        content: '';
    	background: url(../../img/sp/sec01-icon01.png);
    	background-size: 100% 100%;
    	width: 23px;
    	height: 22px;
    	vertical-align: middle;
    	margin-right: 4%;
    	display: inline-block;
		margin-top: -8px;}
	.btn-area .btn02 a::before {
        content: '';
    	background: url(../../img/sp/sec01-icon02.png);
    	background-size: 100% 100%;
    	width: 20px;
    	height: 22px;
    	vertical-align: middle;
    	margin-right: 4%;
    	display: inline-block;
		margin-top: -4px;}
	.btn-area .btn03 a::before {
        content: '';
    	background: url(../img/sp/sec04-icon01.png);
    	background-size: 100% 100%;
    	width: 20px;
    	height: 20px;
    	vertical-align: middle;
    	margin-right: 4%;
    	display: inline-block;
		margin-top: -4px;}
	
	.btn-area .btn04 a::before {
        content: '';
    	background: url(../img/sp/qanda-icon.png);
    	background-size: 100% 100%;
    	width: 13.2px;
    	height: 21.6px;
    	vertical-align: middle;
    	margin-right: 4%;
    	display: inline-block;
		margin-top: -4px;}
	.btn-area .btn05 a::before {
        content: '';
    	background: url(../img/sp/dl-icon.png);
    	background-size: 100% 100%;
    	width: 25.8px;
    	height: 24.6px;
    	vertical-align: middle;
    	margin-right: 4%;
    	display: inline-block;
		margin-top: -4px;}
/*
    	.btn-area .btn05 a::before {
        content: '';
    	background: url(../img/sp/dl_document_icon.png);
    	background-size: 100% 100%;
    	width: 25.8px;
    	height: 24.6px;
    	vertical-align: middle;
    	margin-right: 4%;
    	display: inline-block;
		margin-top: -4px;}
*/
	.btn-area .btn06 a::before {
        content: '';
    	background: url(../img/sp/special-icon.png);
    	background-size: 100% 100%;
    	width: 19.8px;
    	height: 23.4px;
    	vertical-align: middle;
    	margin-right: 4%;
    	display: inline-block;
		margin-top: -4px;}
  .contact-btn-area{}
	.contact-btn-area a {
		display: block;
		width: 100%;
		height: 100%;
		padding: 19px 0;
		border: 1px solid #000;
		margin: 0 auto;}
	.contact-btn-area .btn04 {
		margin: 1rem 0 0;}
	.contact-btn-area .btn04 a::before {
        content: '';
    	background: url(../img/sp/icon-mail.png);
    	background-size: 100% 100%;
    	width: 26px;
    	height: 16px;
    	vertical-align: middle;
    	margin-right: 4%;
    	display: inline-block;
		margin-top: -4px;}
	
  /*--------------------------endSP--------------------------------*/ }



#main.sub #contact {
	padding: 10rem 0;
	position: relative;
}
#main.sub .inner-m {
	position: relative;
}
#main.sub .l-b {
	position: absolute;
	bottom: -14.5rem;
	left: -23rem;
	z-index: 2;
}
#main.sub .l-b2 {
	position: absolute;
	bottom: -3.5rem;
	left: -23rem;
	z-index: 2;
}
#main.sub .l-b3 {
	position: absolute;
	bottom: -22.5rem;
	left: -23rem;
	z-index: 2;
}
#main.sub .l-b4 {
	position: absolute;
	bottom: -13.5rem;
	left: -23rem;
	z-index: 2;
}
#main.sub .l-b5 {
	position: absolute;
	bottom: -12.5rem;
	left: -23rem;
	z-index: 2;
}
#main.sub .r-b {
	position: absolute;
	bottom: -14.5rem;
	right: -23rem;
	z-index: 2;
}
#main.sub .r-b2 {
    position: absolute;
    bottom: -14.5rem;
    right: -13rem;
    z-index: 2;
}
#main.sub .r-b3 {
    position: absolute;
    bottom: -3.5rem;
    right: -17rem;
    z-index: 2;
}
#main.sub #contact .contact-box {
	padding: 1rem;
	border: 2px solid #009FE8;
	font-weight: bold;
	padding: 3rem 5rem;
}
#main.sub #contact .contact-box h3 {
	color: #009FE8;
	text-align: center;
	font-size: 2.5rem;
	padding-bottom: 1rem;
	border-bottom: 1px dashed #009FE8;
	width: 100%;
	padding: 0 0 3rem 0;
}
#main.sub #contact .contact-box .com-name {
	text-align: center;
	font-size: 2.5rem;
	width: 100%;
	padding: 3rem 0;
}
#main.sub #contact .contact-box .tel-box {
	text-align: center;
	font-size: 3rem;
	width: 48%;
	font-weight: bold;
	letter-spacing: 0.6rem;
	margin-top: 1.3rem;
}
#main.sub #contact .contact-box .tel-box span {
	font-size: 1.5rem;
}
#main.sub #contact .contact-box .mail-box {
	text-align: center;
	font-size: 1.8rem;
	width: 48%;
}
#main.sub #contact .address-box {
	text-align: center;
	width: 100%;
	font-weight: bold;
	letter-spacing: 0.6rem;
	margin: -10px auto 30px;
}
.single-sec {
    padding: 10rem 0;
}
.single-sec h2.tit02 {
    font-size: 3rem;
    font-weight: bold;
    margin-bottom: 4rem;
    text-align: center;
    letter-spacing: 0.1em;
    padding-bottom: 3rem;
    background: url(../img/report-titborder.png) no-repeat bottom center;
}
.bg-brown {
    background: url(../common/img/sec-bg2.png) repeat top center;
    height: 100%;
}
.bg-blue {
	background: url(../common/img/sec01-bg01.png) repeat top center;
	height: 100%;
}
.border-w {
	border: 9px solid rgba(255,255,255,0.5);
}

/*SP
-----------------------------------------------------------------------------*/
@media print, screen and (max-width: 750px) {
/*共通
-----------------------------------------------------------------------------*/
#main.sub {
	padding-top: 1vw;
}
.page-tit {
	background: none;
	padding: 4rem 4%;
	margin-bottom: 0;
}
#main.sub .sub-inner {
	background: url(../common/img/sec-bg2.png) repeat top center;
	margin: 0;
	padding: 4rem 0 6rem;
}
#main.sub #contact {
	padding: 5rem 0;
	margin: 0;
}
#main.sub #contact .contact-box {
	border: 2px solid #009FE8;
	font-weight: bold;
	padding: 3rem 1rem;
	margin: 0 4%;
}
#main.sub #contact .contact-box h3 {
	color: #009FE8;
	text-align: center;
	font-size: 1.6rem;
	border-bottom: 1px dashed #009FE8;
	width: 100%;
	padding: 0 0 2rem 0;
}
#main.sub #contact .contact-box .com-name {
	text-align: center;
	font-size: 1.7rem;
	line-height: 2.8rem;
	width: 100%;
	padding: 2rem 0;
}
#main.sub #contact .contact-box .tel-box {
	text-align: center;
	font-size: 2.6rem;
	width: 100%;
	font-weight: bold;
	letter-spacing: normal;
	word-spacing : normal;
}
#main.sub #contact .contact-box .tel-box span {
	font-size: 1.6rem;
	line-height: 4rem;
}
#main.sub #contact .contact-box .mail-box {
	text-align: center;
	font-size: 1.8rem;
	width: 100%;
}
#main.sub #contact .address-box {
	text-align: center;
	font-size: 1.8rem;
	line-height: 2.5rem;
	margin: -10px auto 15px;
	width: 100%;
}
.pagenavi {
	margin-bottom: 0;
}

.single-sec {
    padding: 2rem 0;
}
/*--------------------------endSP--------------------------------*/ }
