@charset "utf-8";

@-ms-viewport {
  width: device-width;
}

@viewport {
  width: device-width;
}

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}


@media screen and (max-width:768px){
	
body {
	font-size: 3.7vw;
}


/*ヘッダー
-----------------------------------------------------------------------------------*/
header{
	height:65px;
	padding:5px 0 10px 0;
}

header h1{
	width:auto;
	height:100%;
	margin:0 auto;
	padding:0;
}

header h1 img{
	width:auto;
	height:50px;
	padding:10;
}

.sec_ttl{
	height:auto;
	display:block;
}

.sec_ttl h2{
	position:relative;
	padding:3vw 3%;
	font-size:5.5vw;
	display:inline-block;
}

.sec_ttl h2:after{
	width: 4vw;
}

.ttl_news,
.ttl_about,
.ttl_products,
.ttl_recruit,
.ttl_contact,
.ttl_etc{
	position:relative;
	top:0;
	right:0;
	width:100%;
}



/*ナビ
-----------------------------------------------------------------------------------*/
.box_navi{
	top:6px;
	right:10px;
	width:40px;
	height:50px;
}

.box_navi .form{
	display:none;
}

.box_navi .mail{
	display:none;
}

.box_navi .sp .form{
	float:left;
	width:calc(50% - 1px);
	height:auto;
	margin:0 1px 4vw 0;
	padding:0!important;
	display:block;
}

.box_navi .sp .form a{
	padding:3vw!important;
	background:none!important;
	font-size:3.7vw!important;
	color:#FFF!important;
}

#g-nav{
	top:0;
	width:100%;
}

#g-nav.panelactive{
    right: 0;
}

nav p{
	height:65px;
	padding:5px 0 10px 0;
}

nav p img{
	width:auto;
	height:50px;
}

nav ul li{
	width:100%;
}

nav ul li a{
	padding:4vw;
	background:url(../img/common/icon_link.png) right 4vw center / 1vw no-repeat;
	display:block;
}

#g-nav-list div{
	padding:4vw 3%;
}

#g-nav-list div a{
	padding:4vw;
	background:#FFF;
	color:#D24A39;
	letter-spacing:0.3em;
	text-align:center;
	font-size:18px;
	line-height:1.0;
	display:block;
}


nav p{
	width:60%;
	margin:6vw auto 2vw auto;
}

nav ul{
	float:none;
	width:100%;
	padding:0;
}

nav ul li span{
	margin:8vw 4vw 4vw 4vw;
	padding:0 0 0 3vw;
}

nav ul li a.link_pdf span{
	font-size:2.8vw;
}


/*ボタン
-----------------------------------------------*/
.openbtn1{
	top:6px;
	right:10px;
	width:40px;
	height:50px;
}

.openbtn1 em{
	position:absolute;
	top:30px;
	width:100%;
	font-size:2.4vw;
}

.openbtn1 span{
	left: 6px;
	width: 70%;
}

.openbtn1.active span{
	left: 10px;
	width: 55%;
}

.openbtn1 span:nth-of-type(1) {
  top:10px; 
}

.openbtn1 span:nth-of-type(2) {
  top:18px;
}

.openbtn1 span:nth-of-type(3) {
  top:26px;
}

.openbtn1.active span:nth-of-type(1) {
    top: 13px;
    left: 13px;
    transform: translateY(6px) rotate(-45deg);
    width: 50%;
}

.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}

.openbtn1.active span:nth-of-type(3){
    top: 25px;
    left: 13px;
    transform: translateY(-6px) rotate(45deg);
    width: 50%;
}



/*共通パーツ
-----------------------------------------------------------------------------------*/
.path{
	padding:3vw 5% 3vw 5%;
	font-size:3.2vw;
}

.sec{
	padding:10vw 0 15vw 0;
}

.contents,
.box_narrow{
	width:90%;
	margin:0 auto;
}

.bg_stripe{
	background:url(../img/common/bg_stripe.png) -70vw top / 150% no-repeat;
}

.btn a{
	width:80%;
	padding:3vw;
	font-size:4.4vw;
}

.btn_s a {
  width: 60%;
  padding: 2vw;
  font-size: 4.0vw;
}

.btn_more{
	text-align:right;
}

.btn_more a{
	padding:35px 8px 10px 30px;
	font-size:3.7vw;
}

.pc{display:none!important;}
.sp{display:block!important;}


/*styleguide
-----------------------------------------------------------------------------------*/
.sec h2{
	margin-bottom:10vw;
	padding-bottom:6vw;
	font-size:6.0vw;
}

.sec h2:after{
	width: 10vw;
}

.sec .ttl_line{
	margin-bottom:10vw;
	background:none;
}

.sec .ttl_line h2{
	width:100%;
	border-left:4vw solid #D24A39;
	padding:0.05em 0 0 4vw;
	font-size:10.0vw;
}

.sec .ttl_line h2 span{
	padding:4vw 0 0 0;
	font-size:3.2vw;
	display:block;
}

.sec h3{
	margin-bottom:8vw;
	font-size:5.0vw;
}

.sec h4{
	margin-bottom:4vw;
	padding-left:6vw;
	background:url(../img/common/icon_ttl.png) left 0.5em / 1.0em no-repeat;
	font-size:4.0vw;
}

.box_left{
	float:none;
	width:100%;
	margin-bottom:6vw;
}

.box_right{
	float:none;
	width:100%;
	margin-bottom:10vw;
}

.kakomi{
	padding:6vw 6vw 4vw 6vw;
}

.kakomi h2{
	margin-bottom:10vw;
	padding-bottom:6vw;
}

.sec table th,
.sec table td{
	padding:3vw;
	display:block;
}

.sec table tr:nth-child(even) td{
	background:#FFF;
}

.sec table tr:nth-child(even) th{
	background:#FFE3E1;
}

.sec .mb{
	margin-bottom:10vw;
}

.sec ul.ul_line li{
	padding:3vw;
}



/*トップ
-----------------------------------------------------------------------------------*/

/*MV
-----------------------------------------------*/
.mv .ttl{
	height:50vw;
}

.mv .ttl h1{
	height:50vw;
}

.mv .ttl h1 img{
	width:80%;
}

.mv .box_news{
	padding:2vw 2% 4vw 2%;
}

.mv .box_news h2{
	width:77%;
	font-size:4.0vw;
}

.mv .box_news h2 span{
	top:0;
	font-size:2.8vw;
}

.mv .box_news div{
	width:100%;
	padding:0.3em 0 0 0;
	display:block;
}

.mv .box_news div ul{
  width:77%;
}

.mv .box_news div ul li{
  width:100%;
	font-size:2.8vw;
  display:none;
}

.mv .box_news div ul li a{
	color:#FFF;
}

.mv .box_news div ul li span{
	width:6em;
	display:inline-block;
}

.mv .box_news div .btn{
	position:absolute;
	top:3vw;
	right:26%;
	padding-left:28px;
	background:url(../img/top/icon_newslist.png) no-repeat left center;
	background-size:2.8vw;
	font-size:2.8vw;
}


/*ボックス1（About）
-----------------------------------------------*/
.box{
    padding: 4vw;
}

#box1{
    background:url(../img/top/bg_top02.jpg) no-repeat center;
    background-size:cover;
}

.box_top01{
	width:70%;
	padding:5vw 0 0 5vw;
	font-size:3.7vw;
}

.box_top01 h2{
	margin-bottom:5vw;
	font-size:10.0vw;
}

.box_top01 h2 span{
	padding:2vw 0 0 0;
	font-size:3.7vw;
}

.box_top01 .btn_more{
	margin:5vw 0 3vw 0;
}


/*ボックス2（Products）
-----------------------------------------------*/
#box2{
    background:url(../img/top/bg_top03.jpg) no-repeat center;
    background-size: cover;
	overflow:hidden;
}

.ttl_vertical{
	position:relative;
	top:5vw;
	left:0;
	transform:rotate(0);
}

.box_top02 .ttl_vertical h2{
	margin:0 auto 8vw 0;
	font-size:10.0vw;
}

.box_top02 .ttl_vertical h2 span{
	padding:4vw 0 0 0;
	font-size:3.7vw;
	display:block;
}

.box_top02 .btn_more{
	position:absolute;
	top:3vw;
	right:22vw;
	width:55vw;
	margin:5vw 0 3vw 0;
	text-align:right;
	display:block;
}

.box_top02 .btn_more a{
	padding:35px 8px 10px 30px;
	font-size:3.7vw;
}

.box_top_products{
	/*position:relative;*/
    left: 50%;
	width:80%;
	margin:0 auto;
}

.box_top_products ul{
	display:flex;
}

.box_top_products ul li{
	float:none;
	width:100%;
	margin:0;
}

.box_top_products ul li:nth-of-type(4){
	margin-left:auto;
	clear:none;
}

.box_top_products dl dd{
	padding:4vw;
}

.box_top_products dl dd h3{
	margin-bottom:2vw;
}

.box_top_products dl dd p{
	font-size:3.7vw;
}




/*ボックス3（Commitment）
-----------------------------------------------*/
#box3{
    background:url(../img/top/bg_top04.jpg) no-repeat center;
    background-size: cover;
}

.box_top03 h2{
	top:9vw;
	right:-40px;
	padding:4vw 10vw 2vw 6vw;
	font-size:7.5vw;
}

.box_top03 h2 span{
	padding:8vw 0 0 0;
	font-size:3.7vw;
}

.box_top_commitment{
	position:relative;
	top:16vw;
    left: auto;
	width:90%;
	margin:0 auto;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
}

.box_top_commitment .inner{
	top:auto;
	left:auto;
	width:100%;
	padding:10vw 6vw 8vw 6vw;
}

.box_top_commitment .inner h3{
	margin-bottom:4vw;
	font-size:5.5vw;
}

.box_top_commitment .inner h3 br{
	display:none;
}

.box_top_commitment .inner h4{
	margin-bottom:2vw;
	font-size:3.7vw;
}

.box_top_commitment .inner p{
	width:100%;
	font-size:3.7vw;
}

.box_top_commitment ul{
	position:relative;
	top:4vw;
	left:auto;
}

.box_top_commitment ul li{
	float:left;
	width:33.3%;
	height:auto/*30vw*/;
	border-left:1px solid #FFF;
}

.box_top_commitment ul li:nth-of-type(1){
	border-left:0;
	background:#FFF url(../img/top/ph_top_commitment01.jpg) no-repeat center top;
	background-size:cover;
}

.box_top_commitment ul li:nth-of-type(2){
	border-left:1px solid #FFF;
	background:#FFF url(../img/top/ph_top_commitment02.jpg) no-repeat center top;
	background-size:cover;
}

.box_top_commitment ul li:nth-of-type(3){
	background:#FFF url(../img/top/ph_top_commitment03.jpg) no-repeat center top;
	background-size:cover;
}

.box_top_commitment ul li a{
	width:100%;
	height:auto/*30vw*/;
	display:block;
}

.box_top_commitment ul li span{
	/*position:absolute;*/
	position:relative;
	bottom:0;
	width:100%;
	padding:3vw;
	font-size:3.7vw;
	text-align:center;
	display:block;
}

.box_top03 .btn_more{
	position: absolute;
	bottom: -8px;
	margin:5vw 0 3vw 0;
}

.box_top03 .btn_more a{
	padding:35px 8px 10px 30px;
	font-size:3.7vw;
}


/*ボックス4（Recruit）
-----------------------------------------------*/
.box_top_recruit{
	position:relative;
	top: auto;
    left: auto;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0)!important;
    -ms-transform: translate(0, 0);
	padding:0 0 0 0;
	background:none;
	z-index:1;
	
}

.box_top04{
	width:100%;
	height:100%;
	padding:5vw 5% 8vw 5%;
	background:url(../img/top/ph_top_recruit01.png) no-repeat center bottom;
	background-size:75%;
	
	position:relative;
	top: auto;
    left: auto;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0)!important;
    -ms-transform: translate(0, 0);
}

.box_top04 h2{
	margin:0 0 6vw 0;
	font-size:10.0vw;
}

.box_top04 h2 span{
	padding:4vw 0 0 0;
	font-size:3.7vw;
}

.box_top04 p{
	width:100%;
	margin:0;
	font-size:3.7vw;
}

.box_top04 .btn_more{
	margin:5vw 0 3vw 0;
}


/*ページネーション
-----------------------------------------------*/
.pagination {
	left:3%;
}

.pagination a {
	height:5px;
}

.pagination a:after {
	width:5px;
	height:5px;
}

.pagination a .hover-text{
		display: none;
}



/*company
-----------------------------------------------------------------------------------*/
.box_company_subnavi{
	margin-bottom:10vw;
	text-align:center;
}

.box_company_subnavi ul li{
	width:24%;
	font-size:3.2vw;
}

.box_company_subnavi ul li a{
	padding:1vw 0;
}

.sec .table_history th,
.sec .table_history td,
.sec .table_history tr:nth-child(even) th,
.sec .table_history tr:nth-child(even) td{
	padding:6vw 0;
}

.sec .table_history td,
.sec .table_history tr:nth-child(even) td{
	padding-left:6vw 0;
}

.sec .table_history th{
	width:100%;
	background:#F7F7F7;
	font-size:10.0vw;
}

.sec .table_history th:nth-child(odd){
	background:#F7F7F7!important;
}

.sec .table_history th span{
	width:5em;
	margin:1vw auto 0 auto;
	padding:5px 0 7px 0;
	font-size:3.2vw;
}

.sec .table_history td dl{
	padding:3vw 0;
}

.sec .table_history td dl dt{
	float:none;
	width:100%;
	margin-bottom:4vw;
	padding:0 0 0 7vw;
	background:url(../img/common/icon_ttl.png) left center / 4.6vw no-repeat;
	font-size:4.0vw;
	display:inline-block;
}

.sec .table_history td dl dt span{
	font-size:6.0vw;
}

.sec .table_history td dl dd{
	float:none;
	width:100%;
}

.sec .table_history td dl dd img{
	float:none;
	width:100%;
	padding:0 0 4vw 0;
}

.box_company_group .inner{
	padding:6vw;
}

.box_company_group.mainoffice .inner{
	padding:6vw;
}

.box_company_group .box_left,
.box_company_group .box_right{
	float:none;
	width:100%;
}

.box_company_group.mainoffice .box_left,
.box_company_group.mainoffice .box_right{
	margin-bottom:6vw;
}

.box_company_group.box_left{
	margin-bottom:10vw;
}

.box_company_group h3{
	margin:0 0 6vw 0;
	padding:0 0 0 4vw;
	font-size:5.0vw;
}

.box_company_group .box_left div{
	float:none;
	width:100%;
}

.box_company_group .box_left img{
	float:none;
	width:100%;
}

.box_company_group iframe{
	height:60vw;
}

.box_company_group dl{
	float:none;
	width:100%;
	margin:0 0 4vw 0;
}

.box_company_group h4,
.box_company_group dt{
  margin-bottom: 2vw;
  padding:0 0 2vw 6vw;
  background: url(../img/common/icon_ttl.png) left 0.5em / 1.0em no-repeat;
  font-size: 4.0vw;
}

.box_company_group span{
	font-size:2.8vw;
}

.box_company_group .w48per iframe{
	height:60vw;
}

.box_company_group .data{
	padding-top:4vw;
}

.box_company_group .data dl{
	margin:0 0 3vw 0;
	padding-bottom:3vw;
}

.box_company_group .data dt{
	float:none;
	width:100%;
	margin-bottom: 0;
	padding:0 0 0 6vw;
	background: url(../img/common/icon_ttl.png) left 0.5em / 1.0em no-repeat;
	font-size: 3.7vw;
}

.box_company_group .data dd{
	float:none;
	width:100%;
}

.ul_about{
	width:100%;
}


/*products list
-----------------------------------------------------------------------------------*/
.box_lead{
	padding:10vw 5% 6vw 5%;
}

.box_lead p{
	margin-bottom:8vw;
}

.box_lead .cf{
	margin-bottom:4vw;
}

.box_lead a{
	width:100%;
	padding:3vw;
}

.box_lead p.btn{
	width:80%;
	margin:0 auto 4vw auto;
	display:block;
}

.box_products_list{
	margin-bottom:10vw;
}

.box_products_list dl{
	width:48%;
	margin:0 4% 4% 0;
}

.box_products_list dl:nth-of-type(3n){
	margin:0 4% 4% 0;
}

.box_products_list dl:nth-of-type(2n){
	margin:0 0 4% 0;
}

.box_products_list dl dt{
	height:21vw;
}

.box_products_list dl dd h3{
	margin:6vw 0 4vw 0;
	padding:0 0 0 3vw;
	font-size:5.0vw;
}

.box_products_list .btn_more{
	margin-top:8vw;
	padding-top:8vw;
}

.box_products_list .btn_more a{
	padding:35px 8px 10px 30px;
	font-size:3.7vw;
}

.box_products_list .btn_more a span{
	top:-2vw;
	font-size:4.0vw;
}

.box_document ul{
	margin-bottom:8vw;
}

.box_document ul li{
	float:left;
	width:48%;
	margin:0 0 4%  4%;
	padding-bottom:4vw;
}

.box_document ul li:nth-of-type(1),
.box_document ul li:nth-of-type(3){
	margin-left:0;
}

.box_document ul li img{
	margin-bottom:4vw;
}

.kakomi .btn a{
	width:100%;
	padding:3vw;
}

.box_products_lineup{
	padding:10vw 0;
}

.box_products_lineup h2{
	width:100%;
	margin:0 auto 8vw auto;
	padding:0 0 0 2vw;
	font-size:10.0vw;
	line-height:1.2;
}

.box_products_lineup h2 span{
	padding:4vw 0 0 0;
	font-size:3.7vw;
}

.box_products_lineup ul li{
	float:left;
	width:48%;
	margin:0 4% 4% 0;
}

.box_products_lineup ul li:nth-of-type(3n){
	margin:0 4% 4% 0;
}

.box_products_lineup ul li:nth-of-type(2n){
	margin:0 0 4% 0;
}

.box_products_lineup ul li a{
	min-height:5em;
	padding:3vw;
	background:#FFF url(../img/common/bg_btn.png) right 5px bottom 5px / 4vw 4vw no-repeat;
}



/*products single
-----------------------------------------------------------------------------------*/
.sec_products_single{
	padding:10vw 0;
	background:url(../img/common/bg_footmenu.jpg) no-repeat top;
}

.sec_products_single h2{
	margin-bottom:5vw;
}

.box_products_single{
	margin-bottom:6vw;
	padding-top:6vw;
}

.box_products_single h3{
	margin:0 6vw;
	padding:0 0 0 4vw;
	font-size:5.0vw;
}

.box_products_single h3 + .cf{
	padding:6vw 6vw 4vw 6vw;
}

.box_products_single .box_left{
	float:none;
	width:100%;
	margin-bottom:6vw;
}

.box_products_single .box_right{
	float:none;
	width:100%;
	margin-bottom:6vw;
}

.box_products_single .box_right p{
	margin-bottom:6vw;
}

.box_products_single .box_right dl{
	margin-bottom:4vw;
	padding-bottom:4vw;
}

.box_products_single .box_right dl dt{
	float:none;
	width:100%;
	margin-bottom:2vw;
	padding-left:6vw;
}

.box_products_single .box_right dl dd{
	float:none;
	width:100%;
}

.box_products_single .box_right dl dd ul.icon li{
	margin:0 1vw 0 0;
	padding:0 2vw 0.2em 2vw;
	font-size:3.2vw;
}

.box_products_single .box_right dl dd ul li{
	margin-left:4vw;
}

.box_pdf_dl{
	padding:4vw 0 0 0;
}

.box_pdf_dl h4{
	margin:0 0 4vw 5%;
	padding:0 0 0 4vw;
	font-size:3.7vw;
}

.box_pdf_dl ul{
	padding:4vw 5% 1vw 5%;
}

.box_pdf_dl ul li{
	float:none;
	width:100%;
	margin:0 0 4% 0;
}

.box_pdf_dl ul li:nth-of-type(2n){
	margin:0 0 4% 0;
}

.box_pdf_dl ul li a{
	padding:2vw;
	background:#FFF url(../img/common/bg_btn.png) right 5px bottom 5px / 3vw 3vw no-repeat;
}


/*recruit
-----------------------------------------------------------------------------------*/
.box_recruit_bana ul li a{
	height:20vw;
}

.box_recruit_bana ul li em{
	font-size: 4.0vw;
}

.bg_message{
	background:url(../img/recruit/bg_message2.jpg) no-repeat bottom center;
	background-size:cover;
}

.bg_message h2{
	margin-bottom:2vw;
	font-size:6.0vw;
}

.bg_message .box_message{
	width:100%;
	margin-bottom:30vw;
}

.box_recruit_swiper{
	width:90%;
	margin:0 auto 10vw auto;
}

.box_recruit_swiper dl dt{
	height:40vw;
}

.box_recruit_swiper dl dd h3{
	font-size:7.0vw;
}

.box_recruit_swiper dl dd h3 span{
	font-size:3.7vw;
}

.box_recruit_swiper .swiper-button-next{
	right:-5%;
}

.box_recruit_swiper .swiper-button-prev{
	left:-5%;
}

.box_recruit_swiper .swiper-button-next,
.box_recruit_swiper .swiper-button-prev{
	top:35%;
	width: 8vw;
	height: 16vw;
	background-color:#D24A39;
}

.sec_recruit .contents h3 {
  margin: 0 0 10vw 0;
  padding: 0 0 0 4vw;
  font-size: 5.0vw;
}

.sec_recruit .btn_more{
	padding:7vw 3px 5px 6vw;
	background:url(../img/common/bg_btn.png) no-repeat right top;
	background-size:contain;
	font-size:3.5vw;
}

.box_interview_list dl{
	float:none;
	width:100%;
	margin:0 0 8vw 0;
}

.box_interview_list dl:nth-of-type(3n){
	margin:0 0 8vw 0;
}

.box_interview_list dl dt{
	height:40vw;
}

.box_interview_list dl dd h3{
	font-size:6.0vw!important;
}

.box_interview_list dl dd h3 span{
	font-size:3.7vw;
}

.box_interview_single .box_profile{
	padding:0;
	font-size:3.2vw;
}

.box_interview_single .ph_sasamoto{
	background:url(../img/recruit/ph_sasamoto02.jpg) no-repeat center 15vw;
	background-size:100%;
}

.box_interview_single .ph_toda{
	background:url(../img/recruit/ph_toda02.jpg) no-repeat center 15vw;
	background-size:100%;
}

.box_interview_single .ph_ishizu{
	background:url(../img/recruit/ph_ishizu02.jpg) no-repeat center 15vw;
	background-size:100%;
}

.box_interview_single .ph_onuma{
	background:url(../img/recruit/ph_onuma02.jpg) no-repeat center 15vw;
	background-size:100%;
}

.box_interview_single .ph_ishiai{
	background:url(../img/recruit/ph_ishiai02.jpg) no-repeat center 15vw;
	background-size:100%;
}

.box_interview_single .ph_ishikawa{
	background:url(../img/recruit/ph_ishikawa02.jpg) no-repeat center 15vw;
	background-size:100%;
}

.box_interview_single .ph_huse{
	background:url(../img/recruit/ph_huse02.jpg) no-repeat center 15vw;
	background-size:100%;
}

.box_interview_single .ph_takeuchi{
	background:url(../img/recruit/ph_takeuchi02.jpg) no-repeat center 15vw;
	background-size:100%;
}

.box_interview_single .box_profile .voice{
	margin:0 0 56vw 0;
	font-size:5vw;
}

.box_interview_single .box_profile h3{
	margin-bottom:6vw;
	padding:0;
	font-size:8.0vw;
}

.box_interview_single .box_profile h3 span{
	font-size:3.7vw;
}

.box_question{
	float:none;
	width:90%;
	margin-bottom:6vw;
	padding:4vw 4vw 2vw 4vw;
}

.box_question h4{
	position:absolute;
	top:-5vw;
	left:4vw;
	background:#000;
	padding:0 3vw 0 4vw;
}

.box_voice{
	float:none;
	width:90%;
	margin:0 0 26vw 10%;
	padding:4vw 4vw 6vw 4vw;
}

.fukidashi{
	bottom:-19vw;
	right:4vw;
	width:60%;
}

.box_thanks{
	width:100%;
	margin:10vw auto 0 auto;
	padding:4vw 4vw 2vw 4vw;
}

.box_thanks h4{
	padding:0;
	background:url(../img/recruit/bg_thanks.png) no-repeat bottom center;
	background-size:contain;
}


/*FAQ
-----------------------------------------------------------------------------------*/
.box_faq_subnavi{
	margin-bottom:10vw;
	text-align:center;
}

.box_faq_subnavi ul li{
	width:24%;
	font-size:3.2vw;
}

.box_faq_subnavi ul li a{
	padding:1vw 0;
}

.box_faq_subnavi ul li a .pc{
	display:none!important;
}

.block {
	margin-bottom:6vw;
	padding-bottom:6vw;
}

.block__title {
	padding-right: 4vw;
}

.block__title span{
	position:absolute;
	top:0;
	left:0;
	padding:2vw 3vw 1.8vw 3vw;
	font-size:3.7vw;
}

.block__title h4 {
	margin:0 0 0 3.0vw;
	padding:1vw 4vw 8vw 10vw;
	background:none;
	font-size:3.7vw;
	line-height:1.8;
}

.block__title::after {	
	padding:0 4vw 2px 4vw;
}

.block__content {
	position:relative;
	padding:0 0 2vw 14vw;
}

.block__content span{
	position:absolute;
	top:0;
	left:0;
	padding:2vw 3vw 2vw 3vw;
	font-size:3.7vw;
}

#tab02,#tab03,#tab04,#tab05{
	padding-top:10vw;
}


/*contact
-----------------------------------------------------------------------------------*/
form table{
	margin-bottom:8vw;
}

.submit{
	width:100%;
	margin:0 auto 4vw auto;
	padding:4vw 2vw;
	font-size:3.7vw;
}

.back{
	width:100%;
	margin:0 auto 4vw auto;
	padding:4vw 2vw;
	font-size:3.7vw;
}

.box_pp{
	margin-bottom:8vw;
	padding:4vw;
}

.box_doui{
	margin-bottom:8vw;
}

.ttl_thanks{
	margin-bottom: 8vw!important;
	font-size: 4.8vw!important;
}



/*news
-----------------------------------------------------------------------------------*/
.sec_news dl {
  margin: 0 0 3vw 0;
  padding-bottom: 3vw;
}

.sec_news dl dt {
  float: none;
  width: 10em;
}

.sec_news dl dd {
  float: none;
  width: 100%;
}

.sec_news .pagination {
	padding-top:8vw;
}

.sec_news .next,
.sec_news .prev{
	font-size:4vw;
}

.sec_news h2{
	margin: 0 0 10vw 0;
	padding: 0 0 0 4vw;
	font-size: 4.4vw;
}

.sec_news .box_pageing{
	padding-top:10vw;
}


/*sitemap
-----------------------------------------------------------------------------------*/
.box_sitemap ul:nth-of-type(2),
.box_sitemap ul:nth-of-type(4),
.box_sitemap ul:nth-of-type(6){
	float:none;
	width:100%;
}

.box_sitemap ul:nth-of-type(3),
.box_sitemap ul:nth-of-type(5){
	float:none;
	width:100%;
}

.box_sitemap ul{
	margin-bottom:10vw;
}

.box_sitemap ul li a{
	padding:4vw;
	background:url(../img/common/icon_link_red.png) left center / 1.6vw no-repeat;
	display:block;
}

.box_sitemap span{
	margin:0 0 6vw 0;
	padding:0 0 0 4vw;
	font-size:4.4vw;
}

.box_sitemap a.link_pdf span{
	font-size:2.8vw;
}



/*footer
-----------------------------------------------------------------------------------*/
footer{
	font-size:3.2vw;
}

footer h2{
	margin:10vw 0;
	font-size:10.0vw;
}

footer h2 span{
	padding:4vw 0 0 0;
	font-size:3.7vw;
}

footer p{
	margin-bottom:4vw;
}

footer .cf{
	margin-bottom:8vw;
}

footer .btn{
	width:80%;
	margin:0 auto 4vw auto;
	display:block;
}
footer .btn a{
	width: 100%;
}

footer .box_tel ul{
	margin-bottom:4vw;
}

footer .box_tel ul li{
	margin:0 0.8em 4vw 0.8em;
}

footer .box_tel ul li span{
	font-size:8.0vw;
	line-height:1.0;
}

footer .box_tel p{
	font-size:3.2vw;
}

footer small{
	bottom:6vw;
}


/*中国語版設定
-----------------------------------------------*/
.cn .box{
	height:100vh;
}

.cn .mv .box_news div ul {
  position:relative;
  top:auto;
}

.swiper2 .swiper-container,
.swiper2 .swiper-slide {
   height: 100vh;
}

.swiper2 .swiper-slide > img {
   object-fit: cover; /* IE: not support */
   width: 100%;
   height: 100%;
}

}