html{-webkit-overflow-scrolling: touch;}
body{min-width: initial;}
body.no_scroll{overflow:hidden;}


.pt-xs-sp	{padding-top:20px;}
.pt-xs30-sp	{padding-top:30px;}
.pt-md-sp	{padding-top:40px;}
.pb-xs-sp	{padding-bottom:20px;}
.pb-md-sp	{padding-bottom:40px;}

.border-bottom-sp{border-bottom:0.5px solid #004B6C;}

/*header*/
header{z-index:4;height:90px;padding:30px 10px 0;}
#header_logo img {width:130px;}
header h1 {margin:0;padding:0;}
header a{color:#004B6C;}

header.popup{
	position:fixed;
	top:0;left:0;
	width:100%;
	height:100%;
	overflow:auto;
	background:rgba(255,255,255,1);
}

	/*メニューボタン*/
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 28px;
  height: 38px;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #004B6C;
  border-radius: 1.5px;
}
.menu-trigger p {
	font-size:1rem;
	text-align:center;
	padding:0; margin:0;
	position:absolute;
	bottom:0;
	letter-spacing:0.01em;
	width:28px;
	color: #004B6C;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 7px;
}
.menu-trigger span:nth-of-type(3) {
  top: 14px;
}
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(7px) rotate(-45deg);
  transform: translateY(7px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-7px) rotate(45deg);
  transform: translateY(-7px) rotate(45deg);
}


	/*menu*/

.sp_nav_main{
	display:flex;
	-webkit-justify-content: space-between;
	justify-content:         space-between;
	margin:0;
	padding:0 20px;
	height:60px;
}

#header_menu{
	position:fixed;
	padding:0 10px;
	top:90px;
	left:0;right:0;
	width:100%;
	height:100%;
	background:rgba(255,255,255,1);
	display:none;
	overflow: auto;
}
#header_menu .gnavi{
	margin:0;
	padding:0;
	height:100%;
	-webkit-overflow-scrolling: touch;
 }
#header_menu ul li{
	position:relative;
	font-weight:bold;
}
#header_menu ul li.last_sp{
	padding-bottom:90px;
}

#header_menu ul li ul{
	padding:0 20px;
}
#header_menu ul li ul.submenu{
	display:none;
	padding-bottom:10px;
}
#header_menu ul li ul.submenu li ul.submenu li a{
	padding:10px 0;
	border:none;
}
#header_menu ul li ul.submenu li{
	border-bottom:0.5px solid #004B6C;
}
#header_menu ul li ul.submenu li ul li{
	border-bottom:none;
	padding-left:10px;
}
#header_menu a{
	font-size:1.2rem;
	display:block;
	padding:15px 0px 15px 20px;
}
#header_menu ul li.level2 a{
	font-size:1.2rem;
	display:block;
	padding:5px 0px 10px 30px;
}
#header_menu a.border{
	/*
	border-bottom:0.5px solid #004B6C;
	*/
}
#header_menu ul li a.btn_brown{
	margin:20px 0;
	color:#fff;
}
#header_menu .menu_btn_oc{
	position:absolute;
	right:10px;
	top:10px;
	width:45px;
	height:45px;
}


/*sidemenu*/
.sidemenu_box{padding-bottom:40px;}
ul.sidemenu{margin:0;padding:0;border-top:0.5px solid #d3d3d3;}
ul.sidemenu li{
	margin:0;padding:0;
	font-size:1.5rem;
 }
ul.sidemenu li{border-left:0.5px solid #d3d3d3;border-bottom:0.5px solid #d3d3d3;border-right:0.5px solid #d3d3d3;}
ul.sidemenu a{display:block;padding:10px;text-align:center;}


/*footer*/

footer{padding:0 10px 10px;text-align:center;}
#foot_menu_top{padding:0 0 15px 0;}
#foot_menu_top ul li{position:relative;}
#foot_menu_top ul li ul{padding:0 20px;}
#foot_menu_top ul li ul.submenu li ul.submenu li a{padding:10px 0;}
#foot_menu_top ul li ul.submenu li ul.submenu{padding-bottom:10px;}
#foot_menu_top ul li ul.submenu li{border-bottom:１px solid #004B6C;}
#foot_menu_top ul li ul.submenu li ul li{
	border-bottom:none;
}
#foot_menu_top a{
	font-size:1.2rem;
	display:block;
	padding:15px 0px;
	font-weight:bold;
}
#foot_menu_top a.border{
	border-top:0.5px solid #004B6C;
}
#foot_menu_top .foot_menu_top_2nd a{
	padding:10px 0px;
}
#foot_menu_top .foot_menu_top_2nd li:first-child a{padding-top:25px;}
#foot_menu_top .menu_btn_oc{
	position:absolute;
	right:10px;
	top:7px;
	width:45px;
	height:45px;
}

#foot_copyright{
	border-top:0.5px solid #004B6C;
	padding-top:10px;
}
#foot_menu_top a.fblogo{padding-bottom:0;line-height:0;}
#foot_menu_top a.fblogo img{width:25px;}
.foot_menu_top_2nd{padding-bottom:18px;}


/*共通*/
.pco{display:none;}
.frm_sp{padding-left:10px;padding-right:10px;}
.pager ul{
  -webkit-justify-content: center;
  justify-content:         center;
}
.text_block_sp{padding-left:20px;padding-right:20px;}

	/*メニュー展開ボタン*/
#header_menu .menu_btn_oc.open::after,
#foot_menu_top .menu_btn_oc.open::after,
.sp_category_menu h3 a.open::after,
.sp_category_menu .menu_btn_oc.open::after{
    content: '';
    position: absolute;
    z-index: 0;
    top: 35%;
    right: 15px;
	width: 7px;
	height: 7px;
	border-bottom: 1px solid #656565;
	border-right: 1px solid #656565;
	transform: rotate(45deg);
}
#header_menu .menu_btn_oc.close::after,
#foot_menu_top .menu_btn_oc.close::after,
.sp_category_menu h3 a.close::after,
.sp_category_menu .menu_btn_oc.close::after{
    content: '';
    position: absolute;
    z-index: 0;
    top: 45%;
    right: 15px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #656565;
	border-left: 1px solid #656565;
	transform: rotate(45deg);
}
	
/*top*/
#top_slide_copy{
	font-size:4rem;
}
.top section {
    padding: 0 0 20px 0;
}
.btn.normal a{width:161px;}
.btn.normal.sizeM a{width:181px;}

	/*business*/
.top_business .item_box{
	margin:0 auto 10px;
	width:100%;
}
.top_business .item_box:last-child{
	margin-bottom:0;
}
.flow_block{
	padding-left:15px;
	padding-right:15px;
}
.flow_box{
	position:relative;
	padding:0.1px 0 0.1px 75px;
}
.flow_box img{line-height:1;}
.flow_box::after {
  top: 25%;
}
.flow_box:first-child::before{
  top: 25%;
	height:75%;
}
.flow_box:last-child::before{
	bottom:75%;
	height:25%;
}
.flow_box_inner{
	padding:20px;
	margin:15px 0;
}
.flow_box_inner::before {
  top: calc(22%);
}

	/*information*/
.top_info_outer {
	padding-top:20px;
}
.top_info_outer h2{
	margin:0 20px 10px;
	line-height:1;
}
.top_info .info_box{padding-bottom:10px;}
.top_info .info_box:last-child{padding-bottom:0px;margin-bottom:0;}
.top_info .info_box p.date{line-height:1;}
.top_info .info_box p{
	padding:0 0px;
	margin:0 0 10px 0;
}

/*2nd pages common*/
.border-top-sp{border-top:0.5px solid #004B6C;}
.border-bottom-sp{border-bottom:0.5px solid #004B6C;}
.pages_submenu ul li{width:48%;margin-bottom:10px;}
.pages_submenu.sp_one ul li{width:100%;margin-bottom:10px;}

/*corporate*/
.profile_logo_image{width:100%;padding-bottom:20px;margin:0 auto;}
.profile_table table tr td{display:block;padding-bottom:0px;padding-right:0;}
.profile_table table tr {display:block;margin-bottom:20px;}
.profile_table table tr td dl{
	display:flex;
	justify-content:flex-start;
}
.profile_table table tr td dl dt,
.profile_table table tr td dl dd{
	padding:0;
	margin:0;
}
.profile_table table tr td dl dt{width:90px;}
.profile_table.group_table table tr {margin-bottom:10px;}


/*business*/
.biz_logo_list ul li{
	width:30%;
	margin-bottom:4%;
}
.related_banner ul li{width:100%; text-align:center;}
.jumpout_sp{margin-left:-20px;margin-right:-20px;}
.jumpout_sp h3{padding-left:20px;padding-right:20px;}

.eco_title h2{
	margin:0 -20px;
	padding:0 20px 20px;
	line-height:1;
}
.eco_title p{
	font-size:1.2rem;
	margin:0;
	padding:15px 0 15px;
	line-height:2em;
	text-align:center;
}
.alert_blue_bold .big{
	font-size:1.7rem;
	display:block;
}

/*guide*/
.guide_box_fig{margin:0 auto 30px;width:50%;}
.guide_box.col2 .guide_box_fig{width:100%;}


/*new*/

.new_title ul{
	display:flex;
	justify-content:space-between;
	flex-wrap: wrap;
}
.new_title ul li{width:48%;margin-bottom:10px;}
.new_title ul li a{
	border:0.5px solid #004B6C;
	height:30px;
	font-size:1.1rem;
	display:block;
	text-align:center;
	font-weight:bold;
	line-height:30px;
}
.new_title ul li a:hover{
	color:#E74F17;
	background:#ddd;
}

.new_table table tr td{display:block;padding-bottom:0px}
.new_table table tr {display:block;margin-bottom:20px;}

/*products*/
.product_list_table table tr td{display:block;padding-bottom:0px;padding-right:0;}
.product_list_table table tr {display:block;margin-bottom:20px;}
.product_list_table table tr td .btn{margin-top:5px;max-width:150px;}

/*inquiry*/
.form_table table tr td{display:block;padding-bottom:0px;padding-right:0;}
.form_table table tr {display:block;margin-bottom:20px;}

/*form*/
form label{display:block;}
form input[type="text"],
form input[type="tel"],
form input[type="email"],
form select,
form textarea{
width:100%;
}
