@charset "utf-8";
/* CSS Document */


@media (min-width: 737px) {
		a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}




@media screen and (max-width:736px) {
  html, body {
    width: 100%;
    -webkit-text-size-adjust : 100%;
    font-size: 2.6667vw;
    /*  font-sizeの計算式：　10(px) / 375(px) * 100 = 2.6666...
        画面幅375pxの時に "font-size: 10px" 相当になる
    */
    line-height: 1.7em;
  }


	img {
        max-width: 100% !important;
        height: auto;
        vertical-align: bottom;
    }

  .mobile{display: inherit;}
  .pc{display:none;}

  .inner,.inner.w1100{
      width: 92%;
      margin: 0 auto;
      padding: 7rem 0;
  }

  .dflex{
			flex-wrap: wrap;
		}
  
	.tel-link a {color: #00469B;text-decoration: underline;}
  
  
    /*----ボタン---*/
  .btn_c {
    max-width: 88%;
    margin-top: 1.5rem auto 0;
  }

  .btn_c a {
    font-size: 1.4rem;
    padding: 0.75em 0;
  }
  .btn_c a:before{
  }

  /*ボタン黒枠線*/
  .btn_black_l a {
      font-size: 1.8rem;
      border-width: 3px;
      padding: 0.5em 0;
  }

  .btn_black_l {width: 100%;}
  .btn_black_l.excel a:before {
      width: 11vw;
      height: 13vw;
      margin-right: 1rem;
  }


  .btn_black_l.excel a {justify-content: flex-start;padding: 1rem 1rem;}  

  
  .btn_mail a {
    font-size: 1.6rem;
    line-height: 1.4;
    border-width: 3px;
    border-radius: 10px;
    padding: 1em 0.5em;
  }

  .btn_mail a:before{
    width: 7vw;
    height: 6vw;
  }

	/*.cont_ttl{
		font-size: 9.6vw;
		font-size: 36px;
		display: flex;
		justify-content: center;
		align-items: center;
		font-family: 'Noto Serif JP', serif;
		margin-bottom: 20px;
	}
	.cont_ttl:before, .cont_ttl:after{
		content: "";
		background: url("../images/common/ttl_icon.png") no-repeat center center / contain;
		width: 5.33vw;
		height: 13vw;
	}
	.cont_ttl:before{
		margin-right: 20px;
	}
	.cont_ttl:after{
		margin-left: 20px;
	}
	
	.cont_sttl{
		font-size: 5.33vw;
		line-height: 1.6;
		text-align: center;
		font-family: 'Noto Serif JP', serif;
	}
	*/
	/*.btn a{
		display: block;
		text-align: center;
		font-size: 7.47vw;
		padding: 16px 10px 20px;
	}*/
	/*----------

	header

	---------*/
	header {padding: 0 0;}
	header .inner{
		width: 100%; 
		padding: 0;
		justify-content: center; 
		flex-wrap: wrap;
		margin-top: 10px;
	}
	header .siteid{
		float:none;
		padding: 0 3%;
		width: 33%;
		box-sizing: border-box;
	}
	header .siteid span{
		margin-bottom: 3px;
		font-size:2vw;
	}

	header .head_right{
		float:none;
		padding-top: 0;
		max-width: 70%;
	}
	header .head_right .hr_contact{display: none;}

    /*---- nav ------*/
	/*#nav-toggle,
    #sp-nav{display: block;}

	#nav-toggle {
	  position: fixed;
	  top: 0px;
	  right: 0px;
	  width: 50px;
	  height: 60px;
	  cursor: pointer;
	  box-sizing: border-box;
	  background: #f58200;
	}
	#nav-toggle > div {
	  position: relative;
	  width: 36px;
	}
	#nav-toggle span {
	  width: 80%;
	  height: 2px;
	  left: 10px;
	  display: block;
	  background: #fff;
	  position: absolute;
	  transition: top .5s ease, -webkit-transform .3s ease-in-out;
	  transition: transform .3s ease-in-out, top .5s ease;
	  transition: transform .3s ease-in-out, top .5s ease, -webkit-transform .3s ease-in-out;
	   #nav-toggle close 
	}


	#nav-toggle span:nth-child(1) {top: 10px;}
	#nav-toggle span:nth-child(2) {top: 18px;}
	#nav-toggle span:nth-child(3) {top: 26px;}
	#nav-toggle span:nth-child(4) {
		color: #fff;
		top: 36px;
		background:none;
		height: auto;
		left:8px;
		font-size: 11px;
		text-align: center;
	}

	.open #nav-toggle span:nth-child(1) {
	  top: 20px;
	  -webkit-transform: rotate(45deg);
	          transform: rotate(45deg);
	}
	.open #nav-toggle span:nth-child(2) {
	  top: 20px;
	  width: 0;
	  left: 50%;
	}
	.open #nav-toggle span:nth-child(3) {
	  top: 20px;
	  -webkit-transform: rotate(-45deg);
	          transform: rotate(-45deg);
	}*/

	/* z-index */
	#nav-toggle {z-index: 999;}
	header nav {z-index: 900;}

	.nav-bg {
	  opacity: 0;
	  background-image: linear-gradient(-45deg, #FF00BF, #FFEA00);
	  position: fixed;
	  left: 0;
	  right: 0;
	  top: 0;
	  bottom: 0;
	  z-index: 1;
	  transition: all 1s ease;
	}
	.nav-bg.active {opacity: 1;}

    header nav {
    	float: none;
	    position: fixed;
	    width: 100%;
	    /*top: 60px;*/
	    top:0;
	    bottom: 0;
	    z-index: 990;
	    /*padding-top: 100px;*/
	    -webkit-transform: translateX(100%);
		transform: translateX(100%);
	  	transition: -webkit-transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	  	transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	  	transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	  	overflow-y: auto;
	  	box-sizing: border-box;
  	}

	 .open header nav {transform: translateX(0);}


     /* ナビゲーション */
     header .head_right #nav{
     	background:#fff;
     	padding: 68px 0 0;
     	color: #333;
     }
	header .head_right #nav li{
		position:relative;
		float:none;
	    text-align:left;
		font-size:3.5vw;
		width: 100%;
		box-sizing: border-box;
	}

	header .head_right #nav ul li a{border-bottom: 1px solid #808080; border-right:none;}
	header .head_right #nav ul li:first-child a{border-top: 1px solid #808080; border-left:none; }

	header .head_right #nav ul.children-1 li a{border-left:none; border-right: none;}

	header .head_right #nav a{
	    display: block;
		font-weight: bold;
		color: #333;
		box-sizing: border-box;
		width: 100%;
	}

	header .head_right #nav li a{
		display:block;
		padding: 3% 3%;
	}

	header .head_right #nav .children-1 a{
		width: 100%;
		background: #f4f4f4;
		border-top: 1px solid #D8D7CA;
		padding-left: 6%;
		box-sizing: border-box;
	}

	header .head_right #nav li .children-1 li{
		width:100%;
		border-left: 5px solid #008241;
	}

	header .head_right #nav li .children-1{
		display:none;
		position:inherit;
		top:auto;
		left:0px;
		width:100%;
	}

	header .head_right #nav li:hover .children-1{
		display:none;
		background:#E6E4D7;
	}

	header .head_right #nav li.select a,
	header .head_right #nav li:hover > a,
	header .head_right #nav li:hover a:hover{background-color:#f58200; color: #fff;}

	header .head_right #nav ul li a.nav_parent{
		display: block;
		background-image:url(../images/common/icon_arrow_green_down.png);
		background-repeat: no-repeat;
		background-position: 96% center;
	}
	header .head_right #nav ul li a.nav_parent.on{
		background-image:url(../images/common/icon_arrow_up.png);
	}
	/*----------

	index

	---------*/
		
	.mainimg_wrap {
		height: auto;
    border-radius: 0 0 35px 35px;
	}
	.mainimg{
    width: 100%;
    height: auto;
    padding: 20vw 0 10vw;
	}
	.mainimg_inner {
    max-width: 92%;
    justify-content: center;
    align-items: center;
    display: block;
    width: 100%;
	}
  .main_ttl_sub {
      left: -2vw;
      top: -15vw;
      width: 27vw;
  }
	.mainimg_inner .main_item{position: absolute;width: 19%;}
  .mainimg_inner .main_item.item01{
		top: 25vw;
		left: 2vw;
		width: 18%;
	}
	.mainimg_inner .main_item.item02{
		/*top: 55vw;*/
		top: 48vw;
		left: -3vw;
		width: 18%;
	}
	.mainimg_inner .main_item.item03{
    top: 70vw;
    left: 4vw;
    width: 14%;
 }
	.mainimg_inner .main_item.item04{
    top: 25vw;
    right: 2vw;
    width: 18%;
 }
	.mainimg_inner .main_item.item05{
    top: 48vw;
    right: -3vw;
    width: 18%;
 }
	.mainimg_inner .main_item.item06{
    top: 70vw;
    right: 4vw;
    width: 14%;
 }
  .mainimg_illust {margin-bottom: 2rem;}


  .main_subarea .subttl {
    font-size: 1.8rem;
    padding: 0.5em;
    width: 90%;
    line-height: 1.5;
  }

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

  事業継続計画

  ---------*/


  .about_catchy span {font-size: 2rem;}

  .about_ttl {
      flex-wrap: wrap;
      margin-top: 2rem;
      margin-bottom: 4rem;
  }

  .about_ttl:after {
      width: 50vw;
      height: 30vw;
  }

  .about_ttl .txt {
      margin-bottom: 1rem;
      margin-right: auto;
  }

  .about_subttl {
      border-radius: 10px;
      padding: 0.5em;
      margin-bottom: 1.5rem;
  }
  .about_subttl span.red {margin-top: 0.5em;}


  .about_iconlist .item {width: 41%;margin-bottom: 5%;}
  .about_iconlist .txt {border-width: 3px;width: 100%;}
  .about_iconlist {justify-content: space-around;}

  .about_detail {text-align: left;padding-top: 4rem;}
  .about_detail .txt {font-size: 1.4rem;}
  .about_movie .movie_item {border-width: 4px;}
  .about_movie .movie_item.example {height: 62.5%;padding: 8% 25%;}
  
  /*----------

  事業継続計画（BCP）の大切さ

  ---------*/
  .important .important_list_wrap {
      border-width: 4px;
      border-radius: 20px;
  }

  .important_ttl {
      flex-wrap: wrap;
      max-width: 95%;
      font-size: 2.3rem;
      text-align: center;
      line-height: 1.5;
      padding: 0 0.75em 0.5em;
      box-shadow: 5px 5px 0 rgb(228 0 17);
  }

  .important_ttl:before {
      width: 22vw;
      height: 16vw;
      margin-top: -12vw;
      margin-left: -3vw;
      margin-right: auto;
  }
  
  .important_box_wrap {padding: 0 3% 2.5rem;}

  .important_box {border-width: 4px;}
  .important_box + .important_box{margin-top: 4rem;}
  
  /*.important_box .ttl {font-size: 1.85rem;padding: 0.4em 0 0.6em;}*/
  .important_box .ttl {font-size: 2.2rem;padding: 0.2em 0 0.4em;}

  .important_box .content {padding: 2rem 1rem;justify-content: center;}

  .important_box .content .imgarea {max-width: 100%;text-align: center;}
  .important_box .content .imgarea .imgarea_illust {width: 54%;}
  
  
  .important_box .txtarea {
    max-width: 100%;
    margin-top: 3rem;
  }

  .important_box .txtarea .txt01 {
      border-width: 2px;
      border-radius: 15px;
      font-size: 1.6rem;
      margin-bottom: 6.5rem;
  }

  .important_box .txtarea .txt02 {
      padding: 1.5rem 1rem;
  }

  .important_box .txtarea .txt02 .txt {
      font-size: 1.4rem;
      line-height: 1.5;
      margin-bottom: 1.5rem;
  }

  .important_box .txtarea .txt01:after {
      width: 26vw;
      height: 11vw;
  }
  .important_box.box01 .txtarea .txt01:after{margin-bottom: 0;}
    
    
  /*----------

  あなたのリスク管理能力をチェックしてみよう!

  ---------*/
  .checkarea .ttlarea {max-width: 100%;}
  .checkarea .ttlarea .ttl {max-width: 100%;}
  .checkarea .ttlarea .ttl small {font-size: 1.4rem;line-height: 1.5;}
  .checkarea .ttlarea .ttl img {margin-left: 0;}
  .checkarea .ttlarea:after{
    width: 50vw;
    height: 37vw;
    margin: 1rem auto 0;
  }
  
  .checkarea .intro_desc{font-size: 1.4rem;line-height: 1.6;margin-bottom: 3rem;}
  
  
  .checklist_wrap_ttl span {padding: 0.5em;line-height: 1.6;width: 100%;}
  
  
  .checklist_item{margin-bottom: 6rem;}
  .checklist_item dl {margin-bottom: 1.5rem;}
  .checklist_item dl dt {width: 84%; padding-left:0;}
  .checklist_item dl dd {width: 14%;}


  .checklist_item .item_ttl{margin-bottom: 1.5rem;}
  .checklist_item .item_ttl dt:before {
      width: 8.5vw;
      height: 8.5vw;
      border-width: 2px;
      background-size: 52%;
      top: -1.85rem;
  }
  .checklist_item .item_ttl dt span {
    border-width: 2px;
    border-radius: 8px;
    padding: 0.5em;
  }
  .checklist_item .item_ttl dt span small{font-size: .6em;}

  .checklist_item .item_ttl .icon_txt_check:after{margin-top: 0.25rem;}
  .checklist_item .item_row dt {
      font-size: 1.3rem;
      line-height: 1.5;
      padding: 1em 0.5em;
  }

  .checklist_item .item_row dt, .checklist_item .item_row dd {
      min-height: 14.72vw;
  }
  
  .checklist_item .item_row dd{padding: 2%;}
  
  .checklist_button{max-width: 100%;}
  
  
  
  
  .checkarea .addtion_wrap:before{margin-top: 5rem;}
  .checkarea .addtion {width: 100%;}
  .checkarea .addtion:after {
      border-width: 5px;
      right: -10px;
      bottom: -10px;
      width: 95%;
      height: 95%;
  } 
  .checkarea .addtion_in {
      border-width: 5px;
      padding: 1.25rem 0.5rem;
      flex-wrap: wrap;
  }

  .checkarea .addtion .txt {font-size: 2.2rem;margin-right: 0.5em;}
  .checkarea .addtion .img {
      width: 93%;
      margin-top: 1rem;
  }
  
  
 
  /*----------

  あなたの会社に足りない項目は

  ---------*/
  .result {background-size: 70vw;background-position: top -9vw center ;padding-bottom: 7rem;}

  .result .inner{padding-top: 6rem;}
  
  .result_ttl {
    margin-bottom: 25vw;
  }
  .result_ttl span{
    border-width: 4px;
    letter-spacing: 0.05em;
    max-width: 100%;
    line-height: 1.4;
    padding: 0.5em 2em;
  }

 .result-tablist li {
    width: 100%;
    max-width: 100%;
    font-size: 2.2rem;
    line-height: 1.4;
    border-bottom: 3px solid #000 ;
    /*padding: 0.75em 0.5em 0.75em 15vw;
    text-align: left;*/
    padding: 0.5em;
    text-align: left;
  }
  
  .result-tablist li:before {
    width: 9vw;
    height: 9vw;
    margin-right: 0.35em;
    /*top: 0;
    bottom: 0;
    margin: auto;
    left: 1rem;*/
  }

  .result-tablist li small {display: inline-block;font-size: 0.6em;margin-right: 0.15em;}
    
  
  .result-tablist li + li{margin-top: 1rem;}
  
  
  .result-list {
    border-width: 4px;
    padding: 1rem 3%;
    margin-top: 4rem;
  }

  .result-list .ttlarea {padding: 2rem 3%;}


  .result-list .ttlarea .ttl span {
      width: 100%;
      margin-right: 0;
      margin-bottom: 2rem;
      line-height: 1.25;
  }

  .result-list .ttlarea .ttl_illust {width: 63%;}
  
  .result-list .ttlarea .detail .txtarea {font-size: 1.4rem;}

  .result-list .ttlarea .detail .txtarea .btn_c {margin: 1rem auto 0;}

  .result-list .ttlarea .detail .imgarea {
      max-width: 40%;
      margin-left: 0;
      margin-top: 1.5rem;
  }
  
  .result-list .method_item {
    width: 100%;
    margin-bottom: 4rem;
    font-size: 1.4rem;
    line-height: 1.5;
  }

  .result-list .method_item dt {font-size: 2rem;margin-bottom: 0.5em;}
  .result-list .method_item .subtxt {padding: 1em;}
  .result-list .method_item .mark_list li + li { margin-top: 1rem; }
  .result-list .method_item .btn_c { margin: 1.25rem auto 0; }
  
  
  .result-list .method_item {
    width: 100%;
    margin-bottom: 4rem;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .result-list .method_item:last-child{margin-bottom: 6rem;}

  .result-list .method_item dt {font-size: 2rem;margin-bottom: 0.5em;}

  .result-list .method_item .mark_list li + li {margin-top: 0.5rem;}

  .result-list .method_item .btn_c {width: 83%; margin: 1rem auto 0;}

  .result-list .pointarea {
      border-radius: 15px;
      font-size: 1.4rem;
      line-height: 1.5;
      padding: 10vw 1rem 33vw;
  }

  .result-list .pointarea:before {
      width: 14vw;
      height: 14vw;
      margin: inherit;
      top: -7vw;
      left: 0;
      background-size: 11vw;
  }

  .result-list .pointarea:after {
    top: auto;
    bottom: 3vw;
    left: 0;
    right: 0;
  }
  .result-list .pointarea.num01{padding-bottom: 26vw;}
  .result-list .pointarea.num01:after{
    height: 20vw;
  }

  .result-list .pointarea.num03:after,
  .result-list .pointarea.num05:after{
    width:80%;
    height:26vw;
  }
  
  
  .result-list .pointarea .ttl{font-size: 1.6rem;margin-bottom: 0.25em;}
  
  .result .downloadarea .btn_black_l:nth-child(2n) {margin-left: auto;}
  
  .result .downloadarea.sheetall .btn_black_l a{ font-size: 1.6rem;}
  .result .downloadarea.sheetall .btn_black_l.excel a:before{ width: 8vw;}
  .result .downloadarea.sheetall .btn_black_l .txt_num:before{
     width: 25vw;
     height: 11vw;
  }
  
  /*-----pegetop----*/
  #page-top {
    position: fixed;
    bottom: 4%;
    right: 4%;
  }
  #page-top a {
    background-size: 100%;
    width: 40px;
    height: 40px;
  }
  #page-top a:hover {
    background-size: 100%;
  }



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

  side-bnr

  ---------*/
  .side-bnr{
    top:auto;
    bottom:0;
  }
  .side-bnr ul{
    display: flex;
  }
  .side-bnr ul li{
    margin-bottom: 0px;
  }
  /*----------

	footer

	---------*/

  footer {border-radius: 35px;}

  footer:before {width: 45vw;height: 35vw; margin-top: -19vw;}

  footer .inner {padding: 8rem 0 1.5rem;}

  footer .ftr_ttl {line-height: 1.4; margin-bottom: 0.5em;}

  footer .ftr_chachy {font-size: 1.8rem;}
  
  .ftr_contact{justify-content: center;}
  .ftr_contact dt {
      font-size: 1.4rem;
      line-height: 1.6;
      text-align: center;
  }
  .ftr_contact dd{ margin-top: 1.875rem;}
  .ftr_contact .tel img,
  .ftr_contact .fax img {height: 12vw;}
  
  /*.ftr_contact dd.mail a {
    max-width: 100%;
    border-width: 2px;
    border-radius: 10px;
    padding: 1.75rem 2rem;
  }*/

  footer p.copy {
      font-size: 1.2rem;
      line-height: 1.4;
      padding: 1.5rem 1rem 15vw;
  }



	/*----------s

	accrodion
	---------*/

	.js_acc:after {
		width: 16px;
		height: 10px;
		top: 50%;
		right: 5px;
		background-size: contain;
	}



}
