@charset "UTF-8";

/*-------------------------------------------------------------------------------------*/
/*↓ここから編集-----------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------*/


@media (min-width:1200px){}
@media (max-width:1199px){}
@media (min-width:992px){}
@media (max-width:991px){}
@media (min-width:768px){}
@media (max-width:767px){}

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

/*all*/

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

/* ナビゲーション PC*/

.main-nav-block02,
.main-nav-block03,
.header-contact-custom {
	display: none;
}

.pc-nav .nav-list {
	display: flex;
    justify-content: space-between;
    align-items: center;
}

.pc-nav .nav-list > li {
	padding: 0;
	margin: 0;
	list-style: none;
	position: relative;
}
.pc-nav .nav-list > li > a {
	width: 100%;
	height: 85px;
	text-align: center;
	display: table;
	padding: 0 25px;
	font-weight: 700;
	color:#333;
    display: flex;
    align-items: center;
    justify-content: center;
	transition: .2s;
}
.pc-nav .nav-list > li > a:hover,
.pc-nav .nav-list >.current-menu-item > a {
	text-decoration: none;
	color: #0033cc;
}
.pc-nav .nav-list > li > a > small {
	font-size: 50%;
	color: #0033cc;
	display:table-row-group;
}
.pc-nav .nav-list > li > a > span {
	width: 100%;
	display: table-cell;
	vertical-align: middle;
}
.pc-nav .nav-list > li a:after {
	position: absolute;
	bottom: 20px;
	left: 15%;
	content: '';
	width: 70%;
	height: 2px;
	background: #0033cc;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}

.pc-nav .nav-list > li a:hover:after,
.pc-nav .nav-list >.current-menu-item > a:after {
  transform-origin: left top;
  transform: scale(1, 1);
}

.header {
	width: 100%;
	padding: 0 20px;
}

.header-block-wrap {
	display: flex;
    justify-content: flex-start;
	height: 85px;
}

.header-logo-block {
	display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
}

.logo {
	margin-right: 30px;
}

.logo a {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	line-height: 1;
}

.logo img {
	max-height: 60px;
	width: auto
}

.header-logo-text {
	margin: 0;
	padding: 0;
	font-size:18px;
	display: table-cell;
	vertical-align: middle;
	font-weight: 700;
	margin-right: 30px;
}

.header-catch {
	width: 100%;
}

.header-catch-text {
	color: #333;
}

.header-catch-inner {
	display: flex;
	align-items: center;
}


.header-catch-text p {
	font-size: 11px;
	margin: 0;
	padding: 0;
}

.header_search {
	margin-left: 10px;
}

.header-contact-block {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-left: auto;
}


.header-tel {
	font-size: 28px;
	font-weight: 700;
	margin-right: 20px;
	font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: bold;
}

.icon-tel,
.icon-fax {
	vertical-align: middle;
}

.icon-tel svg {
	width: 20px;
	height: 27px;
}

.icon-fax svg {
	width: 19px;
	height: 20px;
}

.icon-tel svg path {
	fill: #0033cc;
}

.icon-mail {
	vertical-align: middle;
}

.icon-mail svg polygon {
    fill: #fff;
}

.icon-mail svg {
	width: 20px;
	height: 15px;
}

.header-contact {
	padding-bottom: 0px;
}

.header-contact a {
	display: block;
	width: 180px;
	height: 50px;
	background-color: #df0e0e;
	text-align:center;
	display: flex;
    justify-content: center;
    align-items: center;
	font-size: 16px;
	font-weight: bold;
	color: #FFFFFF;
	line-height: 1;
}

.header-contact-text {
	font-weight: bold;
	padding-left: 6px;
}

.header-contact a .header-icon_mail01 {
	fill: #FFFFFF;
	height: 20px;
	width:27px;
	vertical-align: -6%;
}

.header-contact a:hover {
	opacity: 0.8;
	color: #fff;
}


@media (max-width:1665px){
	.pc-nav .nav-list > li > a {
		padding: 0 15px !important;
	}
	
	.header-logo-block {
		max-width: 30%;
	}
}

@media (max-width:1400px){
	
	.pc-nav .nav-list {
		justify-content: flex-start;
	}
	.pc-nav .nav-list > li > a {
		font-size: 14px;
	}
	.header-tel {
		font-size: 22px;
		margin-right: 10px;
	}
	.icon-tel svg {
		width: 20px;
		height: 20px;
	}
	.logo {
		margin-right: 15px;
	}
	.header-contact-text {
		display: none;
	}
	.header-contact a {
		width: auto;
		padding: 0 20px;
	}
}

@media (max-width:1199px){
	.header-block-wrap {
		display: block;
		position: relative;
		height: auto;
	}
	.header-contact-block {
		width: 50%;
		position: absolute;
		right: 0;
		top: 0;
	}
	.header-logo-block {
		width: 50%;
		display: block;
		margin-top: 15px;
	}
	.main-nav-block01 {
		width: 100%;
		margin-top: 10px;
	}
	.header_search_text {
		width: 180px !important;
	}
	.pc-nav .nav-list > li > a {
		height: 60px;
	}
	.pc-nav .nav-list > li a:after {
		bottom: 12px;
	}
	.header_search_text {
		width: 100px !important;
	}
	.pc-nav .nav-list {
		justify-content: space-between;
	}
}
@media (max-width:991px){
	
}
@media (max-width:767px){
	#search_list li a {
		margin: 0 0 15px 0;
		padding: 0 0 15px 0;
	}
	#page-top {
		right: 10px;
		bottom: 10px;
	}
	#page-top a {
		width: 40px;
		height: 40px;
		line-height: 40px;
	}
	.icon-tel svg {
		vertical-align: 0;
	}
	#header_sp_tel .icon-tel svg {
		width: 30px;
    	height: 30px;
	}
	#header_sp_tel .icon-tel svg path {
		fill: #fff;
	}
	.header_sp_mail .icon-mail svg {
		width: 30px;
    	height: 30px;
	}
	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.menu-trigger {
		position: relative;
		width: 40px !important;
		height: 40px !important;
	}
	.menu-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 4px;
		background-color: #fff;
		border-radius: 4px;
	}
	.menu-trigger span:nth-of-type(1) {
		top: 5px;
	}
	.menu-trigger span:nth-of-type(2) {
		top: 18px;
	}
	.menu-trigger span:nth-of-type(3) {
		bottom: 5px;
	}
	
	.menu-trigger span:nth-of-type(2)::after {
	  position: absolute;
	  top: 0;
	  left: 0;
	  content: '';
	  width: 100%;
	  height: 4px;
	  background-color: #fff;
	  border-radius: 4px;
	  transition: all .4s;
	}
	.menu-trigger.active span:nth-of-type(1) {
	  transform: translateY(20px) scale(0);
	}
	.menu-trigger.active span:nth-of-type(2) {
	  -webkit-transform: rotate(-45deg);
	  transform: rotate(-45deg);
	}
	.menu-trigger.active span:nth-of-type(2)::after {
	  -webkit-transform: rotate(90deg);
	  transform: rotate(90deg);
	}
	.menu-trigger.active span:nth-of-type(3) {
	  transform: translateY(-20px) scale(0);
	}
	
	.menu li ul {
		visibility: visible;
		transform: rotateX(0deg);
		transform-origin: 50% 0;
		transition: .3s;
	}

}
