@charset "UTF-8";
/* =================================== */
/*
/*     Name: lyout CSS
/*    Description: lyout Settings
/*
/*    Create: 171019
/*
/* =================================== */


/************************************************

1.container

************************************************/

div#container {
    width: 100%;
    margin-top: 0;
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
    position: relative;
    padding-bottom: 0;
    z-index: 10;
}
/************************************************

2.contents

************************************************/

div#contents {
    width: auto;
    margin: 0 auto;
    text-align: left;
    clear: both;
    display: block;
    position: relative;
    padding-top: 0;
    overflow: hidden;
}
/************************************************

3.header & nav

************************************************/

main {
    width: auto;
    margin: 0 auto;
    text-align: left;
    clear: both;
    display: block;
    position: relative;
    padding-top: 0;
    overflow: hidden;
}
header {
    width: 100%;
    z-index: 5002;
    background-color: #fff;
    position: relative;
    height: 100px;
	/*height: 140px; 20250604*/
}
/* 20250604
header .row {
    max-width: inherit;
}*/
#header {
	/* 20250604
	background-color: #fff;
	padding: 3rem 3rem 0;*/
}
.slide-down {
    animation-name: slideDown;
    animation-timing-function: ease-in;
    animation-iteration-count: 1;
    animation-delay: 0s;
    transform-origin: 50% 50% 0;
    animation-duration: .4s;
    top: 0;
}
@keyframes slideDown {
	0% {
	 	top: -85px;
	}
	 100% {
	 top: 0;
	}
}
.slide-up {
    animation-name: slideUp;
    animation-timing-function: ease-in;
    animation-iteration-count: 1;
    animation-delay: 0s;
    transform-origin: 50% 50% 0;
    animation-duration: .5s;
    top: -85px;
}
@keyframes slideUp {
	 0% {
	 top: 0;
	}
	 100% {
	 top: -56px;
	}
}
/*↓追加*/
.header_row{
	max-width: inherit;
	padding: 1.5rem 4rem 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
}
/*=====*/
#logo {
    /*width: 220px; 20250604*/
		width:244px;
    text-align: left;
    margin-bottom: 0;
}
/*↓追加*/
.header_row .sp_contact{
	display: none;
}
#nav_list{
	text-align: right;
}
/*=====*/
.comp__header-list li {
    display: inline-block;
    margin: 0 12px;
    font-size: 1.3rem;
}
.comp__header-list li:last-child {
		margin-right: 0;
    /*margin: 0;
    font-size: 1.4rem; 20250604*/
}
.comp__header-list li a {
    color: #201E1E;
}
.comp__header-list li a:hover {
    color: #005EAD;
}
.comp__header-list li.lang{
	font-size: 1.4rem;
}
.comp__header-list li.lang span{
	font-weight: 700;
	border-bottom: 1px solid #ccc;
}

.comp__navigation {
}
nav.navigation {
}
ul.nav {
    padding: 10px 0 0;
	/*padding: 0; 20250604*/
    z-index: 502;
    margin: 0;
}
ul.nav li {
    font-size: 1.4rem;
    /*height: 70px; 20250604*/
	height: 40px;
    display: block;
    margin: 0;
    padding: 0;
    list-style-type: none;
    float: left;
    z-index: 70;
    font-weight: 400;
}
ul.nav li a {
    white-space: nowrap;
    display: block;
    /*height: 70px; 20250604
    line-height: 70px;*/
	height: 40px;
	line-height: 40px;
    text-align: center;
    color: #201E1E;
    margin: 0 20px;
    overflow: hidden;
    position: relative;
    text-decoration: none;
    outline: 0;
    font-weight: 600;
	font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
}
/*↓追加*/
ul.nav li.btn_contact a{
	margin-right: 0;
	border:1px solid #201E1E;
	padding: 0 10px;
}
ul.nav li.corp,
ul.nav li.lang2{
	display: none;
}
/*=====*/
/* 20250604
ul.nav li:first-child a {
    margin: 0 25px 0 0;
}*/
ul.nav li a:hover {
    color: #005EAD;
    text-decoration: none;
}
ul.nav li a.current {
    color: #005EAD;
    text-decoration: none;
}
header nav li a:before {
    content: "";
    position: absolute;
    z-index: 1;
    left: 0;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(0) translateX(0);
    width: 0;
    bottom: 0;
    background: #005EAD;
    height: 3px;
    -webkit-transition-property: left, width;
    transition-property: width;
    -webkit-transition-duration: 0.2s;
    transition-duration: 0.2s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}
header nav li a:hover:before, header nav li a:focus:before, header nav li a:active:before {
    left: 0;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(0) translateX(0);
    width: 100%;
}
header nav li a.current:before {
    left: 0;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(0) translateX(0);
    width: 100%;
}
/*↓追加*/
ul.nav li.btn_contact a:before{
	 background: transparent;
}
/*=====*/

div#header.header-sticky {
    position: fixed;
    background-color: #fff;
    z-index: 500;
    top: 0;
    left: 0;
    width: 100%;
    /*height: 80px; 20250604
    padding: 0 2rem 0;*/
	height: 85px;
	padding: 0;
    -webkit-box-shadow: 0 5px 10px rgba(5, 5, 5, 0.2);
    box-shadow: 0 5px 10px rgba(5, 5, 5, 0.2);
}
div#header.header-sticky .header_row{
	padding: 10px 4rem 0;
}
/* 20250604
div#header.header-sticky .row {
    display: block;
    float: left;
    padding-top: 20px;
}
div#header.header-sticky .comp__header-list {
    position: absolute;
    right: 10px;
    top: 28px;
}
div#header.header-sticky .comp__header-list li {
    display: none;
}
div#header.header-sticky .comp__header-list li.lang,
div#header.header-sticky .comp__header-list li.btn-contact,
div#header.header-sticky .comp__header-list li.btn-download {
    display: inline-block;
}

div#header.header-sticky .comp__navigation {
    float: left;
}

div#header.header-sticky .comp__navigation li a {
    margin: 0 15px;
}
div#header.header-sticky .comp__navigation li:first-child a {
    margin: 0 15px 0 0;
}
*/
/*↓追加*/
div#header.header-sticky ul.nav{
	padding: 5px 0 0;
}
div#header.header-sticky ul.nav li {
    height: 36px;
}
div#header.header-sticky ul.nav li a {
    height: 36px;
    line-height: 36px;
}
/*↑追加*/
.comp__subnavigation {
    position: relative;
    padding: 0 3rem 0;
    border-top: 1px solid #ccc;
    clear: both;
}
nav.subnavigation {
}
ul.subnav {
    padding: 0;
    z-index: 502;
}
ul.subnav li {
    font-size: 1.4rem;
    height: 60px;
    display: block;
    margin: 0;
    padding: 0px;
    list-style-type: none;
    float: left;
    z-index: 60;
    font-weight: 400;
    position: relative;
}
ul.subnav li a {
    white-space: nowrap;
    display: block;
    height: 60px;
    line-height: 60px;
    text-align: center;
    color: #2e3642;
    margin: 0 15px;
    overflow: hidden;
    position: relative;
    text-decoration: none;
    outline: 0;
    font-weight: 600;
	font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
}
ul.subnav li:first-child a {
    margin: 0 15px 0 0;
}
ul.subnav li.li_home a {
    color: #005EAD;
}
ul.subnav li a:hover {
    color: #005EAD;
    text-decoration: none;
}
ul.subnav li a.current {
    color: #005EAD;
    text-decoration: none;
}

@media only screen and (max-width: 1300px) {
	ul.nav li{
		font-size: 1.2rem;
	}
	ul.nav li a {
			margin: 0 6px;
	}
	ul.nav li.btn_contact a{
		padding: 0 5px;
	}
}

@media only screen and (max-width: 1200px) {
	/* 20250604
	div#header.header-sticky #logo img {
			height: 30px;
			width: auto;
	}
	div#header.header-sticky #logo {
			width: 160px;
			padding-top: 5px;
	}
	div#header.header-sticky .comp__navigation li a {
			margin: 0 5px;
			font-size: 1.3rem;
	}
	div#header.header-sticky .comp__navigation li:first-child a {
			margin: 0 5px 0 0;
	}*/
	div#header.header-sticky ul.nav li div.comp_large-menu .bbd__title a {
			font-size: 2.0rem;
	}
	div#header.header-sticky div.comp_large-menu .comp--bddmenu dt a {
			font-size: 1.8rem;
	}
	div#header.header-sticky div.comp_large-menu .comp--bddmenu dd li a {
			font-size: 1.4rem;
	}
	div#header.header-sticky div.comp_large-menu .comp--bddmenu dl.comp--bddmenu_list dt a {
			font-size: 1.6rem;
	}
}

@media only screen and (max-width: 1024px) {
	/* 20250604
	div#header.header-sticky #logo img {
			height: 30px;
			width: auto;
	}
	div#header.header-sticky #logo {
			width: 160px;
			padding-top: 5px;
	}*/
}

@media only screen and (max-width: 978px) {
	#navi_btn {
			width: 35px;
			height: 30px;
			z-index: 10000;
			display: none;
	}
	#navi_btn {
			/*position: relative; 20250604*/
			position: absolute;
			top: 0;
			right: 30px;
			cursor: pointer;
	}
	#navi_btn.scroll {
			position: fixed;
	}
	.smt-logo {
			display: none;
	}
	.menu-trigger, .menu-trigger span {
			display: inline-block;
			transition: all .4s;
			box-sizing: border-box;
	}
	.menu-trigger {
			position: absolute;
			width: 26px;
			height: 23px;
			top: 3px;
			left: 15px;
	}
	.menu-trigger span {
			position: absolute;
			left: 0;
			width: 100%;
			height: 3px;
			background-color: #848E93;
	}
	.menu-trigger span:nth-of-type(1) {
			top: 0;
			background-color: #201E1E;
	}
	.menu-trigger span:nth-of-type(2) {
			top: 10px;
			background-color: #201E1E;
	}
	.menu-trigger span:nth-of-type(3) {
			bottom: 0;
			background-color: #201E1E;
	}
	.menu-trigger.active span:nth-of-type(1) {
			-webkit-transform: translateY(10px) rotate(-315deg);
			transform: translateY(10px) rotate(-315deg);
	}
	.menu-trigger.active span:nth-of-type(2) {
			opacity: 0;
	}
	.menu-trigger.active span:nth-of-type(3) {
			-webkit-transform: translateY(-20px) rotate(315deg);
			transform: translateY(-10px) rotate(315deg);
	}
	.fixing-body {
			position: fixed;
			width: 100%;
			height: 100%;
	}
	header {
			height: 70px;
	}
	#header {
			background-color: #fff;
			padding: 2rem 0 0;
	}
	/*↓追加*/
	.header_row{
		display: block;
		padding: 0;
	}
	/*=====*/
	#logo {
			width: auto !important;
			padding: 0 0 0 2rem !important;
	}
	#logo img {
			width: auto;
			height: 30px;
	}
	/*↓追加*/
	.header_row .sp_contact{
		display: inline-block;
		position: absolute;
		top:0;
		right: 75px;
	}
	.header_row .sp_contact a{
		display: inline-block;
		color: #201E1E;
		border:1px solid #201E1E;
		padding: 0 15px;
		line-height: 30px;
	}
	.comp__subnavigation {
			position: relative;
			padding: 0 0 0;
			border-top: 1px solid #ccc;
	}
	.comp__navigation {
			display: none;
			position: relative;
			margin-top: 20px;
			/*background-color: #005eac; 20250604*/
			background-color: #ffffff;
			left: 0;
			overflow-y: scroll;
			-webkit-overflow-scrolling: touch;
			height : -webkit-calc(100vh - 70px);
			height: calc(100vh - 70px);
			-webkit-transition: opacity .4s ease, top 0s ease 1s;
			transition: opacity .4s ease, top 0s ease 1s;
			width: 100%;
			/*padding:20px; 20250607*/
			padding: 0 20px 20px;
	}
	.comp__navigation * {
			/*color: #fff !important; 20250604*/
			color: #201E1E !important;
	}
	ul.nav {
			margin: 0 0 60px;
	}
	ul.nav li {
			font-size: 1.5rem;
			height: auto;
			display: block;
			margin: 0;
			padding: 0px;
			list-style-type: none;
			float: none;
			z-index: 70;
			font-weight: 400;
			/*border-bottom: 1px solid #85b1df; 20250605*/
		border-bottom: 1px solid #201E1E;
	}
	ul.nav li a {
			white-space: nowrap;
			display: block;
			height: 50px;
			line-height: 50px;
			text-align: left;
			/*color: #2e3642; 20250605*/
		color: #201E1E;
			margin: 0;
			overflow: hidden;
			position: relative;
			text-decoration: none;
			outline: 0;
			font-weight: 600;
			padding: 0;
		font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
	}
	/*追加 202506*/
	ul.nav li.btn_contact{
		display: none;
	}
	ul.nav li.corp{
		display: block;
		border-bottom: none;
	}
	ul.nav li.corp a{
		font-weight: 400;
	}
	ul.nav li.lang2{
		display: flex;
		align-items: center;
		border-bottom: none;
	}
	ul.nav li.lang2 a{
		display: inline-block;
		font-weight: 400;
	}
	ul.nav li.lang2 a:before {
    background: #FFF;
	}
	ul.nav li.lang2 span{
		padding: 0 20px;
	}
	/*====*/
	/*
	ul.nav li:first-child a {
			margin: 0 0 0 0;
	}
	ul.nav li.pc_none.download {
			margin: 0;
			display: block !important;
	}
	ul.nav li.pc_none {
			margin: 20px 20px 0;
			display: inline-block !important;
	}*/
	.comp__header-list {
		display: none;
			/*position: absolute;
			right: 10px;
			top: inherit;*/
	}
	div#header.header-sticky {
			padding: 0;
			min-width: inherit;
			height: 70px;
	}
	/* 20250604
	div#header.header-sticky .row {
		display: block;
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
	}*/
	/*追加　20250607*/
	div#header.header-sticky .header_row{
		padding: 2rem 0 0;
	}
	div#header.header-sticky .header_row .sp_contact{
		top: 2rem;
	}
	div#header.header-sticky .header_row #navi_btn{
		top: 2rem;
	}
	/*====*/
	div#header.header-sticky .comp__navigation {
			float: none;
			position: fixed;
			margin-top: 0;
			top: 70px;
	}
	div#header.header-sticky ul.nav li {
			height: auto;
	}
	div#header.header-sticky ul.nav li a {
			height: 50px;
			line-height: 50px;
	}
	div#header.header-sticky .comp__navigation li:first-child a {
			margin: 0;
	}
	div#header.header-sticky .comp__navigation li a {
			margin: 0;
	}
	/* 20250604
	div#header.header-sticky .comp__header-list {
			position: absolute;
			right: 10px;
			top: inherit;
	}
	.comp__header-list li {
			/* display: none; */
	/*
	}
	.comp__header-list li.lang {
			display: none;
	}
	.comp__header-list li.btn-contact {
			display: inline-block;
	}
	li.btn-contact a {
			/* border: 1px solid #005EAD; */
	/*
			padding: 8px 8px;
			overflow: hidden;
			position: relative;
			margin: 0;
			font-size: 1.2rem;
	}
	li.btn-download a {
			color: #fff !important;
			padding: 8px 8px;
			overflow: hidden;
			position: relative;
			margin: 0;
			font-size: 1.2rem;
	}*/
	ul.subnav {
			width: 100%;
			max-width: inherit;
			overflow-x: scroll;
			-webkit-justify-content: initial;
			justify-content: initial;
			flex: 1;
			display: -webkit-flex;
			display: flex;
	}
	ul.subnav li {
			font-size: 1.2rem;
			height: 50px;
			display: block;
			margin: 0;
			padding: 0px;
			list-style-type: none;
			float: left;
			z-index: 60;
			font-weight: 400;
			position: relative;
	}
	ul.subnav li:first-child a {
			margin: 0 5px 0 15px;
	}
	ul.subnav li a {
			white-space: nowrap;
			display: block;
			height: 50px;
			line-height: 50px;
			text-align: center;
			color: #2e3642;
			margin: 0 10px;
			overflow: hidden;
			position: relative;
			text-decoration: none;
			outline: 0;
			font-weight: 600;
		font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
	}
}

@media only screen and (max-width: 30em) {
/*.comp__header-list li.btn-contact {
    display: none;
}
.comp__header-list li.tel {
    display: block;
    border: 1px solid #FFF;
    color: #FFF;
    padding: 5px 5px;
    overflow: hidden;
    margin: 0 0 0 0;
    font-size: 13px;
    font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
    background: -webkit-gradient(linear, left top, right top, from(rgba(5, 79, 178, 1)), to(rgba(254, 12, 118, 1)));
    background: linear-gradient(90deg, rgba(5, 79, 178, 1), rgba(254, 12, 118, 1));
    display: none;
}
.comp__header-list li.tel a {
    color: #FFF;
}
.comp__header-list li i.fa-mobile {
    display: none;
}
div#header.header-sticky .comp__header-list li.btn-contact {
    display:none;
}
div#header.header-sticky .comp__header-list li.tel {
    display: block;
    border: 1px solid #FFF;
    color: #FFF;
    padding: 5px 5px;
    overflow: hidden;
    margin: 0 0 0 0;
    font-size: 13px;
    font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
    background: -webkit-gradient(linear, left top, right top, from(rgba(5, 79, 178, 1)), to(rgba(254, 12, 118, 1)));
    background: linear-gradient(90deg, rgba(5, 79, 178, 1), rgba(254, 12, 118, 1));
    display: none;
}
div#header.header-sticky .comp__header-list li.tel a {
    color: #FFF;
}*/
}
/* ===================================

4: Footer

====================================== */

/*
 foot [
----------------------------------------------------------- */

.btn-pagetop {
    position: fixed;
    right: 20px;
    bottom: 45px;
    z-index: 130;
    margin: 0;
    cursor: pointer;
}
/* #footer  ================ */

footer {
    clear: both;
    position: relative;
    background-color: #2e3642;
    border-top: 1px solid #ccc;
}
footer * {
    color: #fff;
}
footer .lines-blue {
    background-color: #005EAC;
    height: 10px;
    display: block;
}
footer .lines-skyblue {
    background-color: #85B1DF;
    height: 10px;
    display: block;
}
footer .lines-orange {
    background-color: #F5AF3C;
    height: 10px;
    display: block;
}
footer .lines-black {
    background-color: #201e1e;
    height: 30px;
    display: block;
}
div#footer {
    clear: both;
    margin: 0 auto;
    padding: 60px 0 60px;
    position: relative;
    text-align: left;
}
div#footer ul.sns li {
    letter-spacing: 1.1px;
    display: inline-block !important;
    padding: 0;
    margin: 0 20px 0 20px;
    font-size: 2.4rem;
}
div#footer .column.no2 {
    padding: 0;
}
div#footer .comp__footer-sitemap {
    padding-top: 40px;
}
div#footer .comp__footer-sitemap ul {
    list-style-type: none;
    padding-left: 0;
    margin-bottom: 10px;
}
div#footer .comp__footer-sitemap li {
    margin: 0 0 20px;
    display: block;
    font-size: 1.5rem;
    text-align: left;
    font-weight: 600;
    line-height: 1.6;
	font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
}
div#footer .comp__footer-sitemap li a {
    color: #fff;
}
div#footer .comp__footer-sitemap li a:hover {
    color: #fff;
    text-decoration: underline;
}
div#footer .comp__footer-sitemap ul ul {
    padding-top: 20px;
}
div#footer .comp__footer-sitemap ul li ul li {
    margin: 0 0 10px;
    font-size: 1.3rem;
    font-weight: 400;
}
div#footer .comp__footer-sitemap .txt-description {
    margin: 0;
}
div#footer .comp__footer-sitemap dt {
    font-weight: 600;
    margin-bottom: 20px;
    font-size: 1.5rem;
    float: none;
    padding: 0;
    line-height: 1.6;
	font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
}
div#footer .comp__footer-sitemap .txt-description dd {
    padding: 0;
    border-top: none;
}
div#footer .comp__footer-sitemap dt a, div#footer .comp__footer-sitemap dd a {
    color: #fff;
}
div#footer .comp__footer-sitemap dt a:hover, div#footer .comp__footer-sitemap dd a:hover {
    color: #fff;
    text-decoration: underline;
}
div#footer .comp__footer-sitemap dd ul li {
    margin: 0 0 10px;
    font-size: 1.3rem;
    font-weight: 400;
}
div#footer .comp__footer-sitemap dd .row {
    margin: 0;
}
div#footer .comp__txt{
	max-width: 118rem;
	margin-right: auto;
	margin-left: auto;
	padding-top: 40px;
}
div#footer .comp__txt p{
	font-size: 1.2rem;
	margin-bottom: 0;
}

@media only screen and (max-width: 960px) {
div#footer .comp__footer-sitemap li {
    font-size: 1.3rem;
}
div#footer .comp__footer-sitemap dd ul li {
    font-size: 1.2rem;
}
div#footer .comp__footer-sitemap dt {
    font-size: 1.3rem;
}
}

@media only screen and (max-width: 48em) {
.btn-pagetop {
    bottom: 55px;
}
.btn-pagetop img {
    width: 40px;
    height: auto;
}
div#footer {
    padding: 40px 0rem 40px;
}
div#footer ul.sns li {
	margin: 10px 10px 0 10px;
	font-size: 2.0rem;
}
div#footer .column.no2{
    padding-right: 1rem;
    padding-left: 1rem;
}
div#footer .comp__footer-sitemap {
    padding-top: 0;
}
div#footer .comp__footer-sitemap .txt-description {
    margin: 0 0 10px;
    border-bottom: 1px solid #555555;
}
div#footer .comp__footer-sitemap .txt-description dt {
    font-weight: 600;
    margin-bottom: 0;
    font-size: 1.3rem;
    margin: 10px 0 0;
    padding: 20px 0;
    border-top: 1px solid #555555;
	font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
}
div#footer .comp__footer-sitemap .txt-description dd {
    padding: 0 0 10px;
    border-top: none;
    line-height: 1.6;
}
div#footer .comp__footer-sitemap .txt-description dt i.icon:before {
    background: #fff;
}
div#footer .comp__footer-sitemap .txt-description dt i.icon:after {
    background: #fff;
}
div#footer .comp__footer-sitemap ul {
    margin-bottom: 0;
}
div#footer .small-12 figure {
    text-align: left !important;
    ;
    margin-bottom: 20px;
}
div#footer .comp__footer-sitemap .no1 li {
    display: inline-block;
    width: 50%;
    float: left;
}
div#footer .comp__footer-sitemap li {
    display: block;
    font-size: 1.3rem;
    text-align: left;
    font-weight: 600;
    padding: 10px 0;
    margin: 0;
	font-family: "Neue Helvetica W01", "Helvetica Neue", Helvetica, lato, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Noto Sans Japanese Light", Meiryo, Arial, sans-serif;
}
div#footer .comp__footer-sitemap ul ul {
    padding-top: 10px;
}
div#footer .comp__footer-sitemap dd ul li {
    margin: 0 15px 0 0;
    font-size: 1.3rem;
    padding: 8px 0;
    display: inline-block;
}
div#footer .comp__footer-sitemap ul li ul li {
    margin: 0 10px 0;
    font-size: 1.3rem;
    font-weight: 400;
}
div#footer .comp__footer-sitemap ul li ul li:first-child {
    margin: 0 10px 0 0;
}
div#footer .small-12.column, div#footer .small-12.columns {
    margin-bottom: 10px;
}
div#footer .small-12.column .column, div#footer .small-12.columns .column {
    margin-bottom: 0;
}
	div#footer .comp__footer-sitemap .no3{
		padding: 10px 1rem 0;
	}
	div#footer .comp__footer-sitemap .no3 dl{
		border-bottom: 1px solid #555555;
	}
	div#footer .comp__footer-sitemap .no3 .corp{
		padding: 20px 0 10px;
	}
	div#footer .comp__txt{
		padding: 20px 1rem 0;
	}
}


/************************************************

CV Header

************************************************/

.cv-header {
    background-color: #fff;
    padding: 3rem 3rem 0;
}

@media only screen and (max-width: 978px) {
.cv-header {
    padding: 2rem 0 0;
}
}

/************************************************

4.#fixfooter

************************************************/
#fixfooter .row .column span.btn > a > span.fixfooter_text_pc{
  display: initial;
}
#fixfooter .row .column span.btn > a > span.fixfooter_text_sp{
  display: none;
}
#fixfooter .row .btn-fixfooter1{
  text-align: right;
}
#fixfooter .row .btn-fixfooter1 span.btn a{
  background: rgba(133,177,223,1);
}
#fixfooter .row .btn-fixfooter1 span.btn{
  background: rgba(1,94,174,1);
}
#fixfooter .row .btn-fixfooter1 span.btn a > span{
  position: relative;
  padding-left: 35px;
}
#fixfooter .row .btn-fixfooter1 span.btn a > span:before{
  content: "";
  position: absolute;
  top: -3px;
  bottom: 0;
  left: 0;
  width: 30px;
  height: 30px;
  background: url(../images/common/icon_fixfooter2.svg) no-repeat center center / cover;
}
#fixfooter .row .btn-fixfooter2 span.btn a{
  background: rgba(245,175,60,1);
}
#fixfooter .row .btn-fixfooter2 span.btn{
  background: rgba(1,94,174,1);
}
#fixfooter .row .btn-fixfooter2 span.btn a > span{
  position: relative;
  padding-left: 35px;
}
#fixfooter .row .btn-fixfooter2 span.btn a > span:before{
  content: "";
  position: absolute;
  top: -5px;
  bottom: 0;
  left: 0;
  width: 30px;
  height: 30px;
  background: url(../images/common/icon_fixfooter1.svg) no-repeat center center / cover;
}
#fixfooter{
    position: fixed;
    bottom: -100px;
    left: 0;
    width: 100%;
    z-index: 1000;
    background: #0067CC;
    color: #FFF;
    transition: 0.5s all ease;
}
#fixfooter.fixfooter_view{
    bottom: 0;
}
#fixfooter .row .column.no1 span.footer-tel a{
  font-size: 2.4rem;
  color: #FFF;
}
#fixfooter .row .column.no1 span.fixfooter_text_pc{
  display: initial;
}
#fixfooter .row .column.no1 span.fixfooter_text_sp{
  display: none;
}
#fixfooter .row .column.no1 span.footer-tel i{
  margin-right: 5px;
}
#fixfooter .row .column{
    padding: 5px 0 0 0;
}
#fixfooter .btn.blue > * {
    border: 1px solid #FFF;
}
#fixfooter .btn.blue > a:hover {
}
.btn.yellow > * {
    background-color: #F5AF3C;
    border: 1px solid #F5AF3C;
    font-weight: 700;
    border: 1px solid #FFF;
}
.btn.yellow > a:hover {
    background-color: #F5AF3C;
    border: 1px solid #F5AF3C !important;
}
#fixfooter .btn.blue > a .reflection {
  height: 100%;
  width: 30px;
  position: absolute;
  top: -180px;
  left: 0;
  background-color: #FFF;
  opacity: 0;
  transform: rotate(45deg);
  animation: reflection 4s ease-in-out infinite;
  -webkit-transform: rotate(45deg);
  -webkit-animation: reflection 4s ease-in-out infinite;
  -moz-transform: rotate(45deg);
  -moz-animation: reflection 4s ease-in-out infinite;
  -ms-transform: rotate(45deg);
  -ms-animation: reflection 4s ease-in-out infinite;
  -o-transform: rotate(45deg);
  -o-animation: reflection 4s ease-in-out infinite;
}
@media print, screen and (max-width: 48em){
  #fixfooter .row .column.no1 br{
    display: none;
  }
  #fixfooter .row .column.no1 span.fixfooter_text_pc{
    display: none;
  }
  #fixfooter .row .column.no1 span.fixfooter_text_sp{
    display: initial;
    margin-right: 15px;
  }
  #fixfooter .row .column span.btn > a > span.fixfooter_text_pc{
    display: none;
  }
  #fixfooter .row .column span.btn > a > span.fixfooter_text_sp{
    display: initial;
    font-size: 1.8rem;
  }
  #fixfooter .row .column span.btn > a{
    padding: 0!important;
  }
  #fixfooter .row .column{
    margin-bottom: 0;
  }
  #fixfooter .row .btn-fixfooter1{
    text-align: center;
    padding-right: 2%;
  }
  #fixfooter .row .btn-fixfooter2{
    text-align: center;
    padding-left: 2%;
  }
  #fixfooter .row span.btn{
    width: 100%;
  }
  #fixfooter .row span.btn a{
    display: block;
    width: 100%;
  }
  #fixfooter{
      bottom: -200px;
  }
}
@keyframes reflection {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.1;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 0.5;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@-webkit-keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.1;
  }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 0.5;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@-moz-keyframes reflection {
  0% {
    -moz-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -moz-transform: scale(0) rotate(45deg);
    opacity: 0.1;
  }
  81% {
    -moz-transform: scale(4) rotate(45deg);
    opacity: 0.5;
  }
  100% {
    -moz-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@-ms-keyframes reflection {
  0% {
    -ms-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -ms-transform: scale(0) rotate(45deg);
    opacity: 0.1;
  }
  81% {
    -ms-transform: scale(4) rotate(45deg);
    opacity: 0.5;
  }
  100% {
    -ms-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@-o-keyframes reflection {
  0% {
    -o-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -o-transform: scale(0) rotate(45deg);
    opacity: 0.1;
  }
  81% {
    -o-transform: scale(4) rotate(45deg);
    opacity: 0.5;
  }
  100% {
    -o-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
