@charset "UTF-8";

/*------------------------------------------------------------------------------
	高周波ネッスル - SP CSS
	URL: http://www.hfn.co.jp/
	Date: 2017-08-08
	(c) 2017高周波ネッスル
------------------------------------------------------------------------------*/

/*============================================================================================================================
	スマートフォン　640px未満
============================================================================================================================*/
header .hamburger{
	display: none;
}
.spElm{display: none;}
.pcElm{display: block;}
@media only screen and (max-width:736px) {
* {
    box-sizing: border-box;
}
.spElm{display: block;}
.pcElm{display: none;}	
img {
    max-width: 100%;
    height: auto;
}
a:link, a:visited, a:hover, a:active {
    text-decoration: none;
}
html {
    font-size: 62.5%;
}
html.mobile body {
    -webkit-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none;
    font-size: 1.6rem;
}
/*共通*/
header {
    width: 100%;
    height: auto;
    background: none;
    border-bottom: 5px solid #02253e;
}
header #siteTitle {
    padding: 12px;
    background: #fff;
}
header #siteTitle a {
    border-right: none;
}
header #siteTitle span {
    width: auto;
    height: 6vw;
    margin: 0;
    margin-right: 4%;
}
header #siteTitle span img {
    max-width: inherit;
    width: auto;
    height: 100%;
}
header #siteTitle a {
    height: auto;
    flex-direction: row;
    justify-content: flex-start;
}
header #headIn {
    display: none;
    background: rgba(2,37,62,0.97);
}
header ul#globalNav {
    height: auto;
    padding: 2% 3% 0;
	margin-bottom: 2%;
}
header #headIn {
	overflow-y: auto;
    width: 100vw;
    height: auto;
    position: fixed;
	top: 64px;
    top: calc(6vw + 29px);
	bottom: 0;
	left: 0;
    padding: 0;
	padding-bottom: 10vw;
}
	header ul#globalNav li {
		margin-bottom: 0px;
	background-image: linear-gradient(to left, #0f3f62 0%, #1e87c6 100%);
	}
header ul#globalNav li a {
    font-size: 1.4rem;
    padding: 2.4vw 0;
    margin: 0;
		border-bottom: 1px solid rgba(255,255,255,0.2);
}
	
	header ul#globalNav .menu_inner a{
		border-bottom: 1px solid rgba(255,255,255,0.1);
		
	}
	header ul#globalNav > li .menu{
		position: relative;
		padding: 0;
		z-index: 1;
		opacity: 1;
		width: 100%;
		height: auto;
    background: none
	}
	header ul#globalNav > li:hover .menu {
	opacity: 1;
	left: 0;
	}
	header ul#globalNav > li .menu li a:hover {
	color: #fff;
	}
	header ul#globalNav > li .menu li{
		margin-bottom: 0;
		background: none;
	}
	header ul#globalNav li:hover{
		background-image: none;
	}
	header #hContact .telNum{
		margin: 0 0 10px;
	}
	#headline #pageTitle{
		height: 250px;
    letter-spacing: 5px;
	}
	#headline .pan{
		margin: 10px 3%;
		flex-wrap: wrap;
	}
	#headline .pan a{
    	margin-right: 2vw;
    	padding-right: 3.5vw;
		font-size: 1.3rem;
	}
	#headline .pan strong{
		font-size: 1.3rem;
	}
	header #hContact h2{
		margin-bottom: 3%;
	}
header #hContact .telNum img {
    width: 59%;
}
header #hContact .btn a {
    font-size: 1.6rem;
    text-align: center;
    padding: 20px 0;
}
header #hContact .btn span {
    display: inline-block;
    margin-top: 0;
    font-size: 100%;
}
header .hamburger {
	display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto 0;
    padding: 0;
}
	header .hamburger .hamburger-inner,
	header .hamburger .hamburger-inner:after,
	header .hamburger .hamburger-inner:before{
   		background: #02253e;		
	}
#container {
    width: 100%;
    margin-left: 0;
    margin-top: calc(6vw + 24px);
}
#headline #tagline {
    font-size: 1.2rem;
    padding: 0 3%;
    right: auto;
    top: 10px;
}
#wrapper #container main section {
    padding-left: 3%;
    padding-right: 3%;
}
footer {
    padding: 5vw 3% 0;
    margin-top: 0;
}
footer .toTop {
    position: relative;
    text-align: center;
    right: 0;
    margin-bottom: 12vw;
}
footer .toTop a:before {
    display: none;
}
 footer #ftContact h2 {
	 padding: 0 6%;
	 font-size: 2.0rem;
	}
 footer #ftContact h2 br{
	 display: none;
}
	footer #ftContIn{
		width: 100%;
		display: block;
		margin: 7vw 0 ;
	}
	footer #ftContIn div{
		width: 100%;
	}
	footer #ftContIn:after{
		display: none;
	}
	footer #ftContIn div h3{
		font-size: 5vw;
		margin-bottom: 3vw;
		padding: 0 0 5px;
	}
	footer #ftContact .ftTel {
		margin-bottom: 6vw;
	}
	footer #ftContact .ftTel .telNum{
		margin: 0 auto;
		width: 65%;
		font-size: 1.6rem;
	}
	footer #ftContact .ftTel .telNum strong{
		margin-bottom: 0;
	}
	footer #ftInner{
		padding: 7vw 0 0;
		display: block;
		text-align: center;
	}
	footer #ftInner address{
		font-size: 1.4rem;
	}
	footer #ftContact .ftForm .btn a{
		font-size: 1.8rem;
	}
	footer #copyright{
		text-align: center;
		padding: 10px 0;
    color: #1e87c6;
	}
	footer #ftInner #subNav{
		display: block;
		border-left: none;
    border-top: 1px solid #c4d9e5;
		margin-bottom: 3vw;
	}
	footer #ftInner #subNav li{
		display: block;
		width: 100%;
	}
	footer #ftInner #subNav li a{
		border-right: none;
		padding: 10px 0;
    	border-bottom: 1px solid #c4d9e5;
		display: block;
	}
	main section h3{
		font-size: 1.9rem;
		line-height: 1.6;
	}
	main section h2.ttl01{
    font-size: 2.3rem;
    justify-content: center;
    display: block;
    text-align: center;
    padding-bottom: 20px;
    margin: 0 0 8%;
	}
	main section h2.ttl01 strong{
		padding: 0;
		text-align: center;
	}
	main section h2.ttl01:before{
		right: 0;
		bottom: 0;
		margin: 0 auto;
	}
	.scrTable p strong{		
    color: #1e87c6;
	}
	#sub #localNave {
		padding: 0 3%;
	}
	#sub #localNave a{
		display: block;
		border: 2px solid #b0d4ea;
		padding: 15px 0;
		margin-bottom: 10px;
		text-align: center;
	}
	
/*==============================================================
　body#home : トップページ
===============================================================*/
#home main #greeting{
    padding-top: 3%;
    font-size: 1.4rem;
}
    
#home main #greeting span{
    margin-bottom: 1.3em;
}
#home main #greeting div{
    padding: 3%;
    line-height: 1.6;
}
#home main #mainvisual {
    display: block;
    height: auto;
    padding: 0 0 6%;
	background-image:url(../../img/bg_mainVisual_sp.jpg);
}
#home main #mainvisual p {
    font-size: 1.6rem;
}
#home main #mainvisual h2.active, #home main #mainvisual h2 {
    margin: 0;
    padding: 53vw 0 3vw;
}
#home main #mainvisual p.txt.active {
    padding: 0 ;
    line-height: 1.6;
}
#home main #mainvisual p.txt.active br{
	display: none;
	}
#home main #mainvisual:before {
    width: 20%;
    height: 35vw;
    content: "";
    background: url(../../img/fig_mainItem.png) no-repeat left;
    background-size: 100% auto!important;
    left: 0;
    bottom: auto;
    top: 15vw;
    margin: 0 auto;
}
#home main #mainvisual p.btn {
    width: 85%;
    margin: 4vw auto 0;
}
#home main #mainvisual p.btn a {
    font-size: 1.8rem;
}
#home main #lead {
    margin-bottom: 8%;
}
#home main #lead h2 {
    font-size: 2.6rem;
    margin-bottom: 6vw;
}
#home main #lead div {
    display: block;
}
#home main #lead div p {
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.7;
}
#home main #lead {
    padding: 7vw;
}
#home main #lineUp h2 {
    font-size: 2.2rem;
	margin-bottom: 7vw;
}
#home main #lineUp h2 strong {
    padding: 0 4%;
}
#home main #lineUp ul li a {
    font-size: 1.6rem;
}
#home main #lineUp ul {
    display: block;
}
#home main #lineUp ul li {
    width: 100%;
}
	#home main #lineUp ul li.active:nth-child(1),
	#home main #lineUp ul li.active:nth-child(2),
	#home main #lineUp ul li.active:nth-child(3){
		margin-top: 0;
		margin-bottom: 12vw;
	}
#home main #lineUp ul li a span {
    margin-bottom: 4%;
}
#home main #business div a {
    min-height: 55vw;
}
#home main #business div h2 {
    font-size: 1.8rem;
}
#home main #business div a figcaption {
    display: none;
}
	#wrapper #home main #business div::before{
		top: -1px;
	}
	#wrapper #home main #business div::after{
		bottom: -1px;
	}
#home main #business div#feauture.active {
    margin-top: 75px;
}
#home main #business div p.btn{
	width: 80%;
	font-size:1.3rem;
	padding: 3%;
}	
	#home main #business div:after{
		bottom: -1px;
	}
/*==============================================================
　body#flowIndex : 納品までの流れ
===============================================================*/
	#flowIndex main section{
		margin: 0 ;
	}
	#flowIndex main{
		margin: 5vw 0 ;
	}
	#flowIndex main section .flowBox .num{
		width: 60px;
	}
	#flowIndex main section .flowBox .boxR{
		 width: calc(100% - 63px);
	}
	#flowIndex main #flowArea:after{
		left: calc(28px + 3%);
	}
	#flowIndex main section .flowBox .boxR h3{
		line-height: 1.4;
	}
/*==============================================================
　.technology : 技術紹介
===============================================================*/
	.technology main section{
		margin: 0 0 20vw;
	}
	.technology main section h2.ttl01{
		margin-left: 0;
    font-size: 2.4rem;
		text-align: center;
	}
	
	.technology main section .flex{
		display: block;
	}
	.technology main section .flex .photo{
		margin: 0 auto 5vw;
		display: block;
		text-align: center;
	}
	#technologyIndex main section .flex .photo{
		width: 192px;
	}
	#technologyFeauture main section .flex .photo{
		width: 257px;
	}
	#technologyIndex main section ul{
		padding: 0;
	}
	.technology main section .flex .txt p, .technology main section h3 + p{
		margin-bottom: 6vw;
		line-height: 1.6;
	}
	#technologyFeauture main section ul li{
		width: 100%;
		font-size: 1.4rem;
	}
	#technologyFeauture main section h3{
		font-size: 2.1rem;
	}
	#technologyProduct main #lead ul li{
		width: 100%;
	}
	.technology main section .scrTable{
		overflow-x:auto;
		margin-bottom: 5vw;
	}
	.technology main section table.tbl002{
		width: 1000px;
		margin-bottom: 0;
	}
	#technologyLineup main .lineupBox{
		margin-bottom: 12vw;
	}
	#technologyLineup main .lineupBox figure{
		width: 70%;
		padding-right: 0;
		margin: 0 auto 5vw;
		border: none;
	}
	#technologyLineup main .textBox{
		width: 100%;
	}
	#technologyLineup main .featureBox{
		padding: 0;
	}
	#technologyLineup main .featureBox.other{
		padding: 5%;
	}
	
	
/*==============================================================
　#faqIndex : よくあるご質問
===============================================================*/
	#faqIndex main section .faqBox h3.quewstion:before{
		font-size: 2.6rem;
	}
	#faqIndex main section .faqBox{
		margin-bottom: 7vw;
	}
	#faqIndex main section{
		margin: 0 0 20vw;
	}
/*==============================================================
　#companyIndex : 会社概要
===============================================================*/
	#companyIndex table.tbl001 th,
	#companyIndex table.tbl001 td{
		display: block;
		width: 100%;
	}
	#companyIndex table.tbl001 th{
		padding: 10px 20px;
		    background: #f5f7f8;
	}
/*==============================================================
　#policyIndex : プライバシーポリシー
===============================================================*/
	#policyIndex main section .leadTxt{
		font-size: 1.6rem;
		line-height: 1.7;
	}
	#policyIndex main section div,
	#policyIndex main section .leadTxt{
		margin-bottom: 12vw;
	}
	#companyIndex main section{
		margin: 0 0 6vw;
	}

/*==============================================================
　#sitemapIndex : サイトマップ
===============================================================*/	
	#sitemapIndex main section .pageWrapper{
		display: block;
	}
	#sitemapIndex main section .pageBox{
		width: 100%;
	}
	#sitemapIndex main section li a{
		padding: 15px;
	}
	#sitemapIndex main section .thirdClass a{
		padding-left: 16%;
		
	}
	#sitemapIndex main section .thirdClass li:last-of-type a{
		border-bottom: none;
	}
/*==============================================================
　.form : フォーム
===============================================================*/		
	.form #formStep li.cr .num:after,.form #formStep li .num:after{
		transform: skewX(0deg);
	}
	.form #formStep li .num{
		margin-right: 0;
		overflow: hidden;
		width: 90%;
		padding:10px 0;
		margin-bottom: 7px;
		font-size: 1.8rem;
	}
	.form #formStep li{
		padding: 5px 0 20px;
		flex-direction: column;
		text-align: center;
		justify-content: center;
	}
	.form form table.tbl001 th, .form form table.tbl001 td{
		display: block;
		width: 100%;
	}
	.form form table.tbl001 th {
		padding: 10px 20px;
		    background: #f5f7f8;		
	}
	.form form input#zip, .form form select#pref{
		width: 100%;
	}
	.form form input[value="確認画面へ"], .form form input[value="戻る"], .form form input[value="送信"]{
		width: 45%;
		font-size: 2.0rem;
	}
	.form form input[value="確認画面へ"]{
		width: 100%;
	}
	
	#contactThanks main{
		margin: 4vw 0;
	}
	#contactThanks main section{
		margin-bottom: 6vw;
	}
	#contactThanks main #formStep{
		margin-bottom: 4vw;
	}
	#contactThanks footer {
		padding-top: 0px;
	}

	
	
	
	
	
}


/*--EOF-----------------------------------------------------------------------*/
