@charset "utf-8";
/*===================目次========================

部品
module.css
最終更新日：2023年10月25日

==============================================*/
/*==============================================
◆共通
==============================================*/
  @media screen and (max-width: 600px) {
    #mainScroll.blur {
      -ms-filter: none;
      filter: none; } }
	/*==============================================
	◆1：ヘッダー
	==============================================*/
  @media screen and (max-width: 1280px) {
    #header {
      height: auto;
	  }
	#header__inner {
        padding: 0 0 0 40px;
        width: auto;
	  }
	#global-area {
      display: none; }
	#headerRightArea,
	  #btn_nav {
		  display: block;
	  }
}
  @media screen and (max-width: 600px) {
	html {
		min-width:100%;
		scroll-padding-top: 85px;
	}
    #header {
      box-shadow: 0 0.8vw 0.8vw 0 rgba(0, 0, 0, 0.2);
	  		}
	#header__inner {
        padding: 0 0 0 2.333vw;
	  				}
	#header-top {
      height: 16vw;
	  			}
	#identity-area a {
      gap: 0 1.333vw;
	  		}
	#identity-area a .identity-area--logo {
        flex: 0 0 47.467vw; }
	#identity-area a .identity-area--text {
        padding: 1.333vw 2.667vw;
        font-size: 2.667vw;
        border: 0.267vw solid #00559D;
        border-radius: 5.333vw; }
	#btn_nav {
			display:block;
			position:fixed;
			top:0;
			right:0;
			cursor: pointer;
			background-color:#00559D;
			width:16vw;
			height:16vw;
			z-index:1001;
		}
		#btn_nav span:after {
			display:block;
			font: 26px/100% 'icomoon';
			padding:4vw;
			vertical-align:middle;
			width:8vw;
			height:8vw;
			color:#ffffff;
			content: '\e035';
		}
		#btn_nav .navopen:after {
			content: '\e038';
		}
		#header #headerRightArea {
			display:none;
			width:100%;
			height:100%;
			float:none;
			padding:0;
			margin:0;
			text-align:center;
			position:fixed;
			background-color:rgba(255,255,255,0.9);
			top:0;
			left:0;
			z-index:1000;
		}
		#headerRightArea nav {
			width:auto;
		}
		#gNavi {
			width:auto;
			margin:0;
			padding:16vw 5% 20px 5%;
			background-color: #F2F5F9;
			
		}
		#gNavi ul {
			width:100%;
			text-align:left;
			border-bottom: 0.267vw solid #CCC;
		}
		#gNavi li {
			width:100%;
			height:auto;
			border-left:none;
			margin:0;
			box-sizing:border-box;
			border-top: 0.267vw solid #CCC;
		}
		#gNavi li a {
			display:block;
			width:auto;
			padding:5.3vw;
			height:auto;
			background-color: #F2F5F9;
			margin:0 0 0 0;
			color:#192C55;
			line-height: 1.3em;
			font-size: 4.2vw;
		}
		#gNavi li a:hover,
		#gNavi li a.current, 
		#gNavi li a:hover span,
		#gNavi li a.current span{}
		#gNavi li a span {}
		#gNavi li a span:before {}
		#gNavi .engNavi {
			line-height: 100%;
		}  
}


	/*==============================================
	◆3：グローバルナビ
	==============================================*/
/*
	/*==============================================
	◆4：キービジュアル
	==============================================*/

	/*==============================================
	◆5：コンテンツ
	==============================================*/
	@media screen and (max-width: 600px) {
		#contentsArea {
			padding-top: 50px;
		}
		#contents-area__inner {
			margin:0 auto;
			width:100%;
		}
	}
	/*==============================================
	◆6：トピックパス
	==============================================*/
	/*==============================================
	◆7：メインコンテンツ
	==============================================*/
	@media screen and (max-width: 600px) {
		section {
			margin-bottom: 100px;
		}
		#about .dBox {
			width: 100%;
		}
		#about .dBoxleft,
		#about .dBoxright {
			width: 100%;
			float: none;
			}
		.dBoxleft figure img {
			width: 100%;
			height: auto;
			float: none;
		}
		.dBoxleft figure {
			margin-bottom: 0;
			}
		#about .dBoxright p {
			font-size: 14px;
			line-height: 21px; /* 150% */
			padding: 20px 5%;
		}
		#contents ul,
		#work ul {
			width: 90%;
			margin: 0 5%;
		}
		#contents ul li,
		#work ul li {
			/*display: inline-block;*/
			width: 100%;
			vertical-align: top;
			margin: 0 0 40px 0;
		}
		#contents ul li h3,
		#work ul li h3 {
			padding: 5px 0;
			margin: 0;
			color:#00559D;
			font-size: 16px;
			line-height: 24px; /* 150% */
		}
		#work ul li button {
			margin-bottom: 0;
		}
		#work ul li:last-child {
			margin-bottom: 0;
		}
		#contents ul li figcaption {
			padding: 10px 0;
			font-size: 14px;
			line-height: 21px;
		}
		#contents ul li .detail-link {
			width: 100%;
			border-radius: 20px;
		}
		#contents ul li .detail-link a {
			font-size: 14px;
			line-height: 21px; /* 150% */
			padding: 10px 0;
		}
		#contents ul li .detail-link a:after{
			width: 20px;
			height: 20px;
			margin-left: 5px;
		}
		#contents ul li .detail-link a:hover {
			opacity: .7;
		}
		#contents ul li:last-child {
			margin-bottom: 0;
		}
		#strengths .dBox {
			width: 100%;
		}
		#strengths .dBoxleft,
		#strengths .dBoxright {
				float: none;
				}
		#strengths .dBoxleft {
			width: 90%;
			margin: 0 5% 20px;
		}
		#strengths .dBoxright {
			width: 100%;
		}
		#strengths .dBoxright ul li {
			padding: 10px 5%;
			margin: 0 0 15px 0;
		}
		#strengths .dBoxright ul li span {
			font-size: 14px;
			line-height: 21px; /* 150% */
		}
		#strengths .dBoxright ul li p {
			font-size: 14px;
			line-height: 21px;
		}
		#strengths .summary {
			margin-top: 20px;
			font-size: 14px;
			margin: 0 5%;
			text-align:left;
			line-height: 21px; /* 150% */
		}
		#introduction .lead,
		#work .lead {
			font-size: 14px;
			line-height: 21px; /* 150% */
			margin: 0 5% 20px;
			text-align:left;
		}
		#introduction .introduction-menu {
			margin-bottom: 30px;
		}
		.introduction-menu label {
			width: 100%;
			padding: 15px 5%;
			font-size: 16px;
			line-height: 24px; /* 150% */
		}
		.introduction-menu label:after {
		  position: absolute;
		  right: 3%; /* 左からの距離 */
		}
		.introduction-menu input:checked ~ label::after {
			right: 3%; /* 左からの距離 */
		}
		.introduction-menu input:checked ~ div.introduction-menu-detail {
		  padding: 20px 5% 0 5%; /* 中身の枠内の余白 */
		}
		#introduction .introduction-menu-detail p {
			font-size: 14px;
			line-height: 21px; /* 150% */
			margin: 0 0 15px 0;
		}
		#introduction .introduction-menu-detail ul li {
			margin: 0 0 6px 0;
		}
		#introduction .introduction-menu-detail ul li span {
			font-size: 14px;
			line-height: 21px;
		}
		#introduction .introduction-menu-detail ul li p {
			font-size: 14px;
			line-height: 21px; /* 150% */
		}
		#introduction .dBox {
			width: 100%;
			margin:0;
		}
		#introduction .dBoxleft,
		#introduction .dBoxright {
			float: none;
			width: 100%;
			margin-bottom: 10px;
		}
		#introduction .dBoxleft {
			margin-right: 0;
		}
		#introduction .dBoxleft strong,
		#introduction .dBoxright strong {
			margin-top: 6px;
			font-size: 14px;
			line-height: 21px; /* 150% */
		}
		#features .pc-flow {
			display: none;
		}
		#features .sp-flow {
			display: block;
		}
		#features .dBox {
			width: 100%;
			margin-bottom: 40px;
		}
		#features .dBoxleft,
		#features .dBoxright {
			float: none;
			width: 100%;
			}
		#features .dBoxleft {
			margin-right:0;
		}
		#features .text-area {
			width: 90%;
			margin: 0 5%;
		}
		#features .image-area {
			width: 90%;
			margin: 0 5%;
		}
		#features .image-area img {
			width: 100%;
			height: auto;
			margin-bottom: 10px;
		}
		#features h3 {
			padding: 0 0 6px 0;
			margin: 0 0 15px 0;
			font-size: 20px;
			line-height: 30px; /* 150% */
		}
		#features .text-area p {
			font-size: 14px;
			line-height: 21px; /* 150% */
			margin: 0 0 15px 0;
		}
	}	
	
	/*==============================================
	◆8：サブコンテンツ
	==============================================*/
	/*==============================================
	◆9：フッター
	==============================================*/
	@media screen and (max-width: 1280px) {
		#footer {
		  margin-bottom: 60px; } 
		#footer__inner {
			display: block;
			width: auto; }
		#footer-companyarea {
			  margin: 0 auto;
			  width: 100%; } 
		#footer-companyarea address .footer-link a {
			justify-content: center; }
		#copyright {
		  text-align: center; }
	}
	 @media screen and (max-width: 600px) {
		#footer {
				margin: 0;
				padding-bottom: 13.334vw; }
		 #footer__inner {
	           padding: 0 5.333vw; }
		 #footer-companyarea {
		  	   width: 100%; }
		 #footer-companyarea address .footer-logo {
		       flex: 0 0 47.467vw; }
		 #footer-companyarea address .footer-logo--text {
			 	padding: 1.333vw 2.667vw;
				font-size: 2.667vw;
				border: 0.267vw solid #00559D;
				border-radius: 5.333vw; }
		 #footer-companyarea address .footer-address dl {
				margin-bottom: 5.334vw;
				width: 77.867vw; }
		 #footer-companyarea address .footer-address dl > dt {
		         font-size: 3.734vw; }
		 #footer-companyarea address .footer-address dl > dd {
          		font-size: 3.734vw; }
		 #footer-companyarea address .footer-link a {
				justify-content: flex-start;
				font-size: 3.2vw; }
		 #footer-companyarea address .footer-link a::after {
				  margin-left: 1.334vw;
				  width: 6.4vw;
				  height: 6.4vw; }
		 #copyright {
			  font-size: 2.667vw;
			  margin-top: 9.334vw;
			  padding: 5.334vw 0; } 
		}


	/*==============================================
	◆00：module.css
	==============================================*/
	/* h2関連 */
	@media screen and (max-width: 600px) {
		h2 {
			font-size: 24px;
			line-height: 39px; /* 150% */
			padding: 12px 0;
			margin: 0 0 30px;
		}
	}

/*==============================================
◆共通
==============================================*/

/*==============================================
◆WordPress部分
==============================================*/

/*==============================================
◆その他の書式設定
==============================================*/

/*==============================================
◆リンク
==============================================*/
/*==============================================
◆セクション
==============================================*/
/*============================================
◆ボックス
==============================================*/

/*============================================
◆マージン、パディング
==============================================*/
