/*
Theme Name: kokusaiaeromarine.co.jp Theme
Theme URI: http://www.kokusaiaeromarine.co.jp/
Description: This is kokusaiaeromarine.co.jp Theme.
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&family=Oswald:wght@200..700&family=Zen+Antique+Soft&display=swap');

body {
	font-family: 'Noto Sans JP', serif;
    font-weight: 400;
}
a {
    text-decoration: none;
}
.img-hover a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.img-fluid-100 {
    width: 100%;
}
header .container {
    max-width: 1920px;
}
.container {
    max-width: 1200px;
}
/* ヘッダーイメージ */
.block-mv {
    position: relative;
}
.img-layer,
.img-layer-2nd {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.img-mv,
.img-layer img,
.img-mv-2nd,
.img-layer-2nd img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    min-height: 0;
}
.ico-2nd-l {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 1;
}
.ico-2nd-r {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
}
.block-mv h5 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 160px;
    color: rgba(0,106,184,0.18);
    letter-spacing: 8px;
    z-index: 2;
}
.block-mv h2 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    font-weight: 700;
    font-size: 48px;
    letter-spacing: 8px;
    z-index: 3;
    white-space: nowrap;
}
@media (min-width: 1400px) {
    .img-mv,
    .img-layer img {
        height: 850px;
    }
    .img-mv-2nd,
    .img-layer-2nd img {
        height: 290px;
    }
    .img-layer-2nd img {
        width: 100%;
    }
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .img-mv,
    .img-layer img {
        height: 850px;
    }
    .img-mv-2nd,
    .img-layer-2nd img {
        height: 290px;
    }
    .ico-2nd-l img,
    .ico-2nd-r img {
        max-height: 160px;
    }
    .block-mv h5 {
        font-size: 140px;
    }
    .block-mv h2 {
        font-size: 42px;
    }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .img-mv,
    .img-layer img {
        height: 750px;
    }
    .img-mv-2nd,
    .img-layer-2nd img {
        height: 250px;
    }
    .ico-2nd-l img,
    .ico-2nd-r img {
        max-height: 140px;
    }
    .block-mv h5 {
        font-size: 120px;
    }
    .block-mv h2 {
        font-size: 36px;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .img-mv,
    .img-layer img {
        height: 650px;
    }
    .img-mv-2nd,
    .img-layer-2nd img {
        height: 250px;
    }
    .ico-2nd-l img,
    .ico-2nd-r img {
        max-height: 120px;
    }
    .block-mv h5 {
        font-size: 90px;
    }
    .block-mv h2 {
        font-size: 32px;
    }
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .img-mv {
        height: 550px;
    }
    .img-layer img {
        height: 622px;
    }
    .img-mv-2nd {
        height: 220px;
    }
    .img-layer-2nd img {
        height: 292px;
    }
    .ico-2nd-l img,
    .ico-2nd-r img {
        max-height: 100px;
    }
    .block-mv h5 {
        font-size: 72px;
        margin-top: 2rem;
    }
    .block-mv h2 {
        font-size: 24px;
        margin-top: 2rem;
    }
}
@media (max-width: 575.98px) {
    .img-layer {
        position: absolute;
        top: auto;
        left: 0;
        right: 0;
        margin: auto;
        text-align: center;
    }
    .img-mv,
    .img-layer img {
        height: 770px;
    }
    .img-mv-2nd {
        height: 120px;
    }
    .img-layer-2nd img {
        height: 192px;
    }
    .ico-2nd-r {
        top: 72px;
        bottom: inherit;
    }
    .block-mv h5 {
        font-size: 48px;
        margin-top: 2rem;
    }
    .block-mv h2 {
        font-size: 21px;
        margin-top: 2rem;
    }
}
/* ロゴ・メニュー */
.block-header {
   position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 9999;
}
@media (max-width: 767.98px) {
}
.logo {
    float: left;
    padding: 1rem 1.5rem;
}
h1 {
    font-size: 10px;
    font-weight: 400;
    color: #2c2c2c;
}
.logo img {
    max-height: 47px;
    max-width: 100%;
}
@media (min-width: 576px) and (max-width: 1199.98px) {
}
@media (max-width: 575.98px) {
    h1 {
        font-size: 8px;
    }
    .logo-s img {
        max-height: 34px !important;
    }
}
/*ハンバーガー */
@media (min-width: 768px) {
    .logo-s {
        display: none;
    }
}
.logo-s {
    padding: 1rem 1.5rem;
}
.logo-s img {
    max-height: 47px;
    max-width: 100%;
}
@media (max-width: 767.98px) {
    .block-header {
        position: fixed;
        width: 100%;
        z-index: 9999;
        background: #fff;
    }
    .block-mv {
        padding-top: 4.5rem;
    }
    .logo {
        display: none;
    }
}
#menu {
	width: 100%;
	/*background: rgba(33,184,206,0.9);*/
    background-image: -webkit-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: -o-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: linear-gradient(165deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
	position: fixed;
	left: 0;
    right: 0;
	bottom: 0;
	z-index: 9999;
	display: none;
	height: 100%;
    overflow-y: scroll; 
    padding: 0;
}
.menulist {
    list-style: none;
    padding-left: 0;
    margin: 0 2rem;
    width: 70%;
}
.menulist li.list-single {
    padding: 0.8rem 1.5rem;
    border-bottom: 1px solid rgba(255,255,255,0.7);
}
.menulist li:last-child.list-single {
    padding: 0.8rem 1.5rem;
    border-bottom: hidden;
}
.menulist li a {
    font-size:14px;
    color: #fff;
}
.menulist li a:hover,
.menulist li a:active {
    color: #006ab8;
}
#sp-icon {
    width: 70px;
	height: 70px;
	position: fixed;
	right: 0rem;
	top: 0.3rem;
	z-index: 99999;
}
#sp-icon:hover {
	cursor: pointer;
	opacity: 0.7;
}
#sp-icon span,
#sp-icon span::before,
#sp-icon span::after {
	display: inline-block;
	width: 34px;
	height: 2px;
	background: #000;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.3s;
}
#sp-icon.sp-open span,
#sp-icon.sp-open span::before,
#sp-icon.sp-open span::after {
	background: #fff;
}
#sp-icon span {
	left: 50%;
	top: 50%;
	transform: translate( -50%, -50% );
}
#sp-icon span::before {
	content: "";
	transform: translateY( -10px ) rotate( 0deg );
}
#sp-icon span::after {
	content: "";
	transform: translateY( 10px ) rotate( 0deg );
}
.sp-open span {
	background: transparent !important;
}
.sp-open span::before {
	transform: rotate( 45deg ) !important;
}
.sp-open span::after {
	transform: rotate( -45deg ) !important;
}
@media (min-width: 768px) {
    #sp-icon {
        display: none;
    }
}
@media (max-width: 575.98px) {
    #sp-icon {
    	top: 0;
    }
}
.submenu {
	font-size: 14px;
	display: block;
    color: #fff;
	cursor: pointer;
	position: relative;
    border-bottom: 1px solid rgba(255,255,255,0.7);
    padding: 0.8rem 1.5rem;
}
.submenu:hover {
	color: #006ab8;
}
.submenu::after {
	content: url("images/ico-arrow-a.png")!important;
	display: inline-block;
    vertical-align: top;
	padding-left: 1rem;
}
.submenu.active::after {
	content: url("images/ico-arrow-b.png")!important;
}
.mdd_inner .submenu {
    padding: 0 0 0.8rem;
}
.nest {
    margin: 0.6rem 1rem 2rem;
}
.nest ul {
    list-style: none;
	padding-left: 0;
}
.nest ul li {
	padding: 0.4rem 1.5rem;
}
.nest ul li a {
    font-size: 14px;
}
.g_nav {
    list-style: none;
    /*position: relative;*/
    text-align: center;
    margin: 1.5rem auto 0;
    float: right;
    padding-right: 3.5rem;
}
.g_nav > ul {
    margin:0 auto;
}
.g_nav > ul > li {
    color:#000;
    display: inline-block;
    font-weight: 500;
    font-size: 18px;
    cursor: pointer;
    padding: 0 0.8rem 5px;
    position: relative;
}
.g_nav > ul > li span::after {
	content: url("images/ico-arrow.png");
	display: inline-block;
	padding-left: 0.5rem;
}
.g_nav > ul > li a {
    color:#000;
    font-size: 18px;
    text-decoration: none;
}
.g_nav > ul > li:hover,
.g_nav > ul > li a:hover,
.g_nav > ul > li:active {
    color: #21b8ce;
    text-decoration: none;
    padding-bottom: 2px;
}
.g_nav > ul > li:not(:last-child) {
    margin-right: 1.2rem;
}
.block-tab {
    text-align: center;
    padding: 0 1.5rem;
    display: none;
}
.block-tab.m_fixed {
    right: 0;
    margin: auto;
	position: fixed;
	top: 3rem;
    z-index: 9;
    /*display: block;*/
}
.list-tab {
    max-width: 1200px;
    margin: 2.0rem auto;
    list-style: none;
    padding-left: 0;
}
.list-tab2 {
    margin: 2.5rem auto;
    list-style: none;
    padding-left: 0;
    /*display: flex;
    flex-wrap: nowrap;
    justify-content: center;*/
}
.list-tab > li {
    display: inline-block;
    margin: 0 0.6rem;
    cursor: pointer;
    position: relative;
}
.list-tab2 > li {
    display: inline-block;
    margin: 0 0.6rem;
    cursor: pointer;
    position: relative;
}
.list-tab > .list-tab-item a {
    background: #2d2d2d;
    display: block;
    min-width: 177px;
    padding: 0.7rem 1rem 0.9rem;
    font-size: 18px;
    color: #fff;
    position: relative;
    margin-bottom: 0.7rem;
    text-align: center;
}
.list-tab3 > .list-tab-item a {
    min-width: 277px;
    padding: 0.7rem 1rem 0.9rem;
    font-size: 18px;
}
.list-tab2 > .list-tab-item a {
    background: #2d2d2d;
    padding: 0.7rem 6.3rem 0.9rem;
    font-size: 18px;
    color: #fff;
    position: relative;
}
.list-tab2 > .list-tab-item:last-child a {
    padding: 0.7rem 1rem 0.9rem;
}
.list-tab2 > .list-tab-item span {
    background: #2d2d2d;
    font-size: 18px;
    color: #fff;
    position: relative;
}
.list-tab2 > .list-tab-item span.active {
    padding: 0.7rem 6.3rem 0.9rem;
}
.list-tab > .list-tab-item a small {
    font-size: 75%;
}
.list-tab > .list-tab-item a.active,
.list-tab2 > .list-tab-item a.active,
.list-tab2 > .list-tab-item span.active {
    background: #006ab8;
}
.list-tab > .list-tab-item ul > li a,
.list-tab2 > .list-tab-item ul > li a {
    background: none;
    padding: 0;
    position: inherit;
}
.list-tab > .list-tab-item a:hover,
.list-tab2 > .list-tab-item a:hover{
    color: #fff49a;
}
.list-tab2 > .list-tab-item span a:hover {
    color: #fff49a;
}
.list-tab > .list-tab-item a::before,
.list-tab2 > .list-tab-item a::before,
.list-tab2 > .list-tab-item span.active::before {
    display: block;
    position: absolute;
    right: -10px;
    top: 0;
    content: '';
    background: url("images/ico-submenu.png") no-repeat;
    background-size: contain;
    width: 10px;
    height: 100%;
    z-index: 2;
}
.list-tab > .list-tab-item a.active::before,
.list-tab2 > .list-tab-item a.active::before,
.list-tab2 > .list-tab-item span.active::before {
    display: block;
    position: absolute;
    right: -10px;
    top: 0;
    content: '';
    background: url("images/ico-submenu02.png") no-repeat;
    background-size: contain;
    width: 10px;
    height: 100%;
    z-index: 2;
}
.list-tab2 > .list-tab-item ul li a::before {
    content: none;
}
.list-tab2 > .list-tab-item h7 a::after,
.list-tab2 > .list-tab-item .active h7::after{
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f107";
    position: absolute;
    right: 1rem;
    top: 0.7rem;
}
.list-tab-xs {
    margin: 2.5rem auto;
    display: none;
}
.list-tab-xs dt {
    background-image: -webkit-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: -o-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: linear-gradient(165deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    padding: 0.7rem 1rem 0.9rem;
    font-size: 16px;
    color: #fff;
    position: relative;
}
/*.list-tab-xs dt::before {
    display: block;
    position: absolute;
    right: -10px;
    top: 0;
    content: '';
    background: url("images/ico-submenu.png") no-repeat;
    background-size: contain;
    width: 10px;
    height: 100%;
    z-index: 2;
}*/
.list-tab-xs dt span::after {
	content: '\2b';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    color: #fff;
    font-size: 18px;
    float: right;
}
.list-tab-xs dt.active span::after {
    content: '\f068';
}
.list-tab-xs dd {
    display: none;
	background: rgba(33,184,206,0.9);
    padding-bottom: 1rem;
}
.list-tab-xs dd .menulist {
    text-align: left;
}
.list-tab-sm {
    margin: 1.95rem 0;
    width: 320px;
}
.list-tab-sm dt {
    background-image: -webkit-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: -o-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: linear-gradient(165deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    padding: 0.7rem 1rem 0.9rem;
    font-size: 16px;
    color: #fff;
    position: relative;
}
/*.list-tab-sm dt::before {
    display: block;
    position: absolute;
    right: -10px;
    top: 0;
    content: '';
    background: url("images/ico-submenu.png") no-repeat;
    background-size: contain;
    width: 10px;
    height: 100%;
    z-index: 2;
}*/
.list-tab-sm dt span::after {
	content: '\2b';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    color: #fff;
    font-size: 18px;
    float: right;
}
.list-tab-sm dt.active span::after {
    content: '\f068';
}
.list-tab-sm dd {
    display: none;
	background: rgba(33,184,206,0.9);
    padding-bottom: 1rem;
}
.list-tab-sm dd .menulist {
    text-align: left;
}
.mdd_wrap {
    position:absolute;
    left:-80px;
    width:260px;
    z-index: 9999;
}
.list-tab2 > .list-tab-item .mdd_wrap {
    top:140%;
    left:0px;
    width:280px;
    z-index: 9999;
}
.mdd_wrap .mdd_inner {
    display:none;
    margin: auto;
    box-shadow: 0px 3px 6px 3px rgba(83, 29, 15, 0.2);
    padding: 1.5rem 1.5rem;
    /*background: rgba(33,184,206,0.9);*/
    background-image: -webkit-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: -o-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: linear-gradient(165deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
}
.mdd_wrap .mdd_inner > .mdd_wrap .mdd_inner {
    box-shadow: none;
    padding: 0 !important;
}
.mdd_wrap .mdd_inner ul {
    padding-left: 0;
    list-style: none;
    display: block;
    margin: 0 auto;
    vertical-align: top;
}
.mdd_wrap .mdd_inner li {
    border-bottom: 1px solid #fff;
}
.mdd_wrap .mdd_inner li:last-child {
    border-bottom: none;
}
.mdd_wrap .mdd_inner li a {
    display: block;
    margin: 0.7rem auto;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
}
.mdd_wrap .mdd_inner li a:hover {
    color: #000;
    text-decoration: none;
    border-bottom: none;
    padding-bottom: 0;
}
/*.mdd_wrap .mdd_inner li a::after {
    font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f061";
    margin-left: 0.5rem;
}*/
.submenu2,
.submenu2:hover {
    border-bottom: 1px solid rgba(255,255,255,0.7) !important;
    padding-bottom: 0.8rem !important;
}
.submenu2::after {
	content: url("images/ico-arrow-a.png")!important;
	display: inline-block;
    vertical-align: top;
	padding-left: 1rem;
}
.mdd_wrap .mdd_inner li ul li {
    border-bottom: none;
}
.mdd_wrap .mdd_inner li ul li:last-child {
    padding-bottom: 0.7rem;
}
.mdd_wrap .mdd_inner li ul li a {
    margin: 0.5rem auto;
    font-size: 14px;
    font-weight: 400;
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .list-tab > .list-tab-item a {
        min-width: 168px;
    }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .g_nav > ul > li {
        font-size: 16px;
        padding: 0 0.5rem 5px;
    }
    .g_nav > ul > li a {
        font-size: 16px;
    }
    .list-tab > .list-tab-item a {
        min-width: 130px;
        padding: 0.7rem 1rem 0.9rem;
        font-size: 14px;
    }
    .list-tab2 > .list-tab-item a {
        padding: 0.7rem 6.3rem 0.9rem;
        font-size: 18px;
    }
    .list-tab2 > .list-tab-item span.active {
        padding: 0.7rem 6.3rem 0.9rem;
        font-size: 18px;
    }
    .mdd_wrap .mdd_inner li a {
        font-size: 13px;
    }
    .mdd_wrap .mdd_inner li ul li a {
        font-size: 11px;
    }
    .list-tab2 > .list-tab-item .mdd_wrap {
        top:140%;
        width:280px;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .g_nav {
        padding-right: 2rem;
    }
    .g_nav > ul > li {
        font-size: 10px;
        padding: 0 0.01rem 5px;
    }
    .g_nav > ul > li a {
        font-size: 10px;
    }
    .list-tab > .list-tab-item a {
        min-width: 90px;
        padding: 0.7rem 0.5rem 0.9rem;
        font-size: 12px;
    }
    .list-tab2 > .list-tab-item a {
        padding: 0.7rem 4.5rem 0.9rem;
        font-size: 14px;
    }
    .list-tab2 > .list-tab-item span.active {
        padding: 0.7rem 4.5rem 0.9rem;
        font-size: 14px;
    }
    .list-tab2 > .list-tab-item h7::after {
        font-size: 14px;
        right: 1rem;
        top: 0.6rem;
    }
    .mdd_wrap {
        left:-70px;
        width:190px;
    }
    .mdd_wrap .mdd_inner li a {
        font-size: 12px;
    }
    .mdd_wrap .mdd_inner li ul li a {
        font-size: 11px;
    }
    .list-tab2 > .list-tab-item .mdd_wrap {
        top:140%;
        width:210px;
    }
}
@media (max-width: 767.98px) {
    .g_nav {
        display: none;
    }
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .list-tab > li {
        margin: 0 0.3rem;
    }
    .list-tab2 > li {
        margin: 0 0.3rem;
    }
    .list-tab > .list-tab-item a {
        min-width: 68px;
        padding: 0.7rem 0.5rem 0.9rem;
        font-size: 11px;
    }
    .list-tab2 > .list-tab-item a {
        padding: 0.7rem 3.5rem 0.9rem;
        font-size: 11px;
    }
    .list-tab2 > .list-tab-item span.active {
        padding: 0.7rem 3.5rem 0.9rem;
        font-size: 11px;
    }
    .list-tab2 > .list-tab-item h7::after {
        font-size: 12px;
        right: 0.5rem;
        top: 0.7rem;
    }
    .mdd_wrap .mdd_inner li a {
        font-size: 12px;
    }
    .list-tab2 > .list-tab-item .mdd_wrap {
        top:140%;
        width:180px;
    }
}
@media (max-width: 575.98px) {
    .block-tab.m_fixed {
	    top: 1.6rem;
        left: 0;
    }
    .list-tab,
    .list-tab2 {
        display: none;
    }
    .list-tab-xs {
        display: block;
    }
    .list-tab-sm {
        display: none;
    }
}
.fixed_header {
    display:none;
    width:100vw;
    height: auto;
    position:fixed;
    left:0;
    top:0;
    z-index:999;
    background:rgba(255,255,255,1);
    /*box-shadow: 0px 6px 6px 0px rgba(83, 29, 15, 0.2);*/
}
@media (max-width: 767.98px) {
    .fixed_header {
        display:none !important;
    }
}
body:not(.home) .block-message,
body:not(.home) .block-news {
    display: none;
}
.block-message {
    position: absolute;
    top: 3rem;
    left: 0;
    right: 0;
    margin: auto;
    max-width: 1200px;
    width: 100%;
    z-index: 2;
}
.box-message {
    max-width: 510px;
}
.box-message p {
    font-size: 17px;
    line-height: 2.5;
}
.integrity-first {
    text-align: center;
    margin-bottom: 2rem;
}
.integrity-first img {
    filter:drop-shadow(0px 0px 5px rgba(255,255,255,0.3));
}
.text-message {
    position: absolute;
    top: 20rem;
    left: 0;
    right: 0;
    margin: auto;
    max-width: 1200px;
    width: 100%;
    z-index: 2;
}
.text-message p {
    font-family: "Zen Antique Soft", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 32px;
    color: #fff;
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.8);
    display: none;
    line-height: 1.8;
    letter-spacing: 8px;
}
.text-message p strong {
    font-size: 48px;
}
.block-news {
    background: #006ab8;
    padding: 1.5rem 2rem;
    z-index: 2;
}
.block-news table {
    width: 100%;
    max-width: 700px;
    margin: auto;
}
.block-news table th {
    font-family: "Roboto Condensed", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 24px;
    color: #fff;
    vertical-align: middle;
    border-right: 1px solid rgba(255,255,255,0.8);
    width: 160px;
}
.block-news table td {
    padding: 1rem 1.5rem;
}
.box-news {
    height: 50px;
	overflow-y: scroll;
    -ms-overflow-style: none;
    /* IE, Edge 対応 */
    scrollbar-width: none;
}
.box-news::-webkit-scrollbar {
    /* Chrome, Safari 対応 */
    display: none;
}
.simplebar-scrollbar::before {
    background: #006ab8 !important;
    border-radius: 0;
    width: 5px;
    margin-left: 2px;
    margin-top: 2px;
}
.simplebar-scrollbar.simplebar-visible::before {
    opacity: 1;
}
.simplebar-track {
    background: #fff;
    width: 13px !important;
}
.block-news table td dl {
    font-size: 14px;
}
.block-news table td dl dt {
    float: left;
    width: 7em;
    margin-bottom: 0.5rem;
    color: #fff;
}
.block-news table td dl dd {
    margin-left: 7em;
    margin-bottom: 0.5rem;
}
.block-news table td dl dd a {
    color: #fff;
}
.block-news table td dl dd a:hover {
    opacity: 0.7;
}
.scroll {
    position: absolute;
    bottom: 3rem;
    left: 2rem;
    z-index: 2;
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .block-message {
        position: absolute;
        top: 4rem;
        max-width: 1100px;
    }
    .text-message {
        top: 18rem;
        max-width: 1100px;
    }
    .text-message p {
        font-size: 32px;
        line-height: 1.8;
        letter-spacing: 8px;
    }
    .text-message p strong {
        font-size: 42px;
    }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .block-message {
        position: absolute;
        top: 4rem;
        max-width: 900px;
    }
    .box-message p {
        font-size: 16px;
        line-height: 2.5;
    }
    .integrity-first {
        margin-bottom: 1rem;
    }
    .integrity-first img {
        max-height: 150px;
    }
    .text-message {
        top: 18rem;
        max-width: 920px;
    }
    .text-message p {
        font-size: 24px;
        line-height: 1.8;
        letter-spacing: 8px;
    }
    .text-message p strong {
        font-size: 36px;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .block-message {
        position: absolute;
        top: 4rem;
        max-width: 720px;
    }
    .box-message p {
        font-size: 15px;
        line-height: 2.2;
    }
    .integrity-first {
        margin-bottom: 1rem;
    }
    .integrity-first img {
        max-height: 130px;
    }
    .text-message {
        top: 16rem;
        max-width: 720px;
    }
    .text-message p {
        font-size: 24px;
        line-height: 1.8;
        letter-spacing: 4px;
    }
    .text-message p strong {
        font-size: 36px;
    }
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .block-message {
        position: absolute;
        top: 6rem;
        max-width: 520px;
    }
    .box-message p {
        font-size: 14px;
        line-height: 2;
    }
    .integrity-first {
        margin-bottom: 1rem;
    }
    .integrity-first img {
        max-height: 120px;
    }
    .box-news {
        height: 70px;
    }
    .scroll {
        bottom: 2rem;
        left: 1rem;
    }
    .scroll img {
        max-height: 124px;
    }
    .text-message {
        top: 14rem;
        max-width: 520px;
    }
    .text-message p {
        font-size: 18px;
        line-height: 1.8;
        letter-spacing: 8px;
    }
    .text-message p strong {
        font-size: 28px;
    }
}
@media (max-width: 575.98px) {
    .block-message {
        position: absolute;
        top: 10rem;
        max-width: 520px;
    }
    .box-message p {
        font-size: 14px;
        line-height: 3;
        padding: 0 1.5rem;
    }
    .integrity-first {
        margin-bottom: 2rem;
        text-align: center;
        padding-left: 0;
    }
    .integrity-first img {
        max-height: 120px;
    }
    .block-news table th {
        display: block;
        border-right: hidden;
        width: 100%;
    }
    .block-news table td {
        display: block;
        padding: 1rem 0rem;
    }
    .box-news {
        height: 70px;
    }
    .scroll {
        bottom: 2rem;
        left: 1rem;
    }
    .scroll img {
        max-height: 124px;
    }
    .text-message {
        top: 17rem;
        max-width: 520px;
        padding: 0 1rem;
    }
    .text-message p {
        font-size: 14px;
        line-height: 1.8;
        letter-spacing: 2px;
        text-align: center;
    }
    .text-message p strong {
        font-size: 24px;
    }
    .text-message p span {
        display: none;
    }
}
.br-lg {
    display: none;
}
.br-md {
    display: none;
}
.br-sm {
    display: none;
}
.br-xs {
    display: none;
}
.br-lg-none {
    display: block;
}
.br-md-none {
    display: block;
}
.br-sm-none {
    display: block;
}
.br-xs-none {
    display: block;
}
@media (max-width: 1199.98px) {
    .br-lg {
        display: block !important;
    }
    .br-lg-none {
        display: none !important;
    }
}
@media (max-width: 991.98px) {
    .br-md {
        display: block !important;
    }
    .br-md-none {
        display: none !important;
    }
}
@media (max-width: 767.98px) {
    .br-sm {
        display: block !important;
    }
    .br-sm-none {
        display: none !important;
    }
}
@media (max-width: 575.98px) {
    .br-xs {
        display: block !important;
    }
    .br-xs-none {
        display: none !important;
    }
}
/* パンくず */
.block-bread {
    background: #f6f5f1;
    padding: 0.8rem 1.5rem;
}
.list-bread {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding-left: 0;
    font-size: 12px;
    max-width: 1200px;
    margin: auto;
}
.list-bread li a {
    color: #404040;
}
.list-bread li a:hover {
    color: #fb6666;
}
.list-bread li {
  padding-left: 0.5rem;
}
.list-bread li::before {
    float: left;
    padding-right: 0.5rem;
    content: '＞';
}
.list-bread li:first-child::before {
    content: none;
}
.list-bread li.active {
    color: #404040;
}
/* ページレイアウト */
.block-contents {
    max-width: 1200px;
    margin: auto;
    padding: 5rem 2.5rem;
}
.company .block-contents {
    padding: 12rem 2.5rem 5rem;
}
.information .block-contents {
    padding: 12rem 2.5rem 5rem;
}
.location .block-contents {
    padding: 17rem 2.5rem 5rem;
}
.block-contents h2 {
    font-weight: 700;
    font-size: 36px;
    text-align: center;
    margin: 0 auto 6rem;
}
.block-contents h2 span {
    display: block;
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    color: #006ab8;
    margin-top: 1rem;
    letter-spacing: 3px;
}
.mb-6 {
    margin-bottom: 6rem !important;
}
.block-contents p {
    font-weight: 400;
    font-size: 16px;
    line-height: 2.5;
    margin-bottom: 2rem;
}
.block-contents ul{
    margin-bottom: 2rem;
    
}
.block-contents li {
    font-size: 16px;
    line-height: 2;
}
.block-contents table {
    margin-bottom: 2rem;
}
.block-contents th,
.block-contents td {
    font-size: 16px;
    line-height: 2;
}
.list-indent {
    list-style: none;
    padding-left: 0;
}
.list-indent li {
    text-indent: -1em;
    padding-left: 1em;
}
h4 {
    font-size: 30px;
    font-weight: 700;
    display: flex;
    flex-wrap: nowrap;
    margin-bottom: 4rem;
}
h4::before {
    content: url("images/ico-h4.png");
    margin-right: 1.5rem;
    margin-top: -9px;
}
.h4-02 {
    color: #fff;
}
.h4-02::before {
    content: url("images/ico-h4-02.png");
    margin-right: 1.5rem;
    margin-top: -9px;
}
.h4-03 {
    color: #fff;
}
.h4-03::before {
    content: none;
}
h5 {
    font-size: 24px;
    font-weight: 700;
    color: #006ab8;
    margin-bottom: 2rem;
}
@media (max-width: 575.98px) {
    .block-contents {
        padding: 5rem 1.5rem 5rem;
    }
    .company .block-contents {
        padding: 2rem 1.5rem 5rem;
    }
    .information .block-contents {
        padding: 10rem 2.5rem 5rem;
    }
    .location .block-contents {
        padding: 9rem 2.5rem 5rem;
    }
    .block-contents h2 {
        font-size: 20px;
        margin-bottom: 2rem;
    }
    .block-contents h2 span {
        font-size: 11px;
        letter-spacing: 1px;
    }
    .mb-6 {
        margin-bottom: 3rem;
    }
    .block-contents p,
    .block-contents li,
    .block-contents dt,
    .block-contents dd,
    .block-contents th,
    .block-contents td {
        font-size: 14px;
    }
    h4 {
        font-size: 20px;
        margin-bottom: 2rem;
    }
    h4::before {
        content: '';
        background: url("images/ico-h4.png") no-repeat;
        background-size: contain;
        width: 30px;
        height: 3px;
        margin-right: 1rem;
        margin-top: 9px;
    }
    .h4-02::before {
        content: '';
        background: url("images/ico-h4-02.png") no-repeat;
        background-size: contain;
        width: 30px;
        height: 3px;
        margin-right: 1rem;
        margin-top: 9px;
    }
    h5 {
        font-size: 18px;
    }
}
/* home */
.home .block-contents {
    padding: 4rem 1.5rem 2rem;
}
.home .block-contents ul {
    list-style: none;
    padding-left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 1.5rem;
    margin-bottom: 0;
}
.home .block-contents ul li {
    width: 100%;
    text-align: center;
    margin-bottom: 2rem;
}
.home .block-contents ul li img {
    height: auto;
    transition: transform .6s ease;/* ゆっくり変化させる */
    width: 100%;
}
.home .block-contents ul li:hover img {
    transform: scale(1.1);/* 拡大 */
}
@media (max-width: 575.98px) {
    .home .block-contents {
        padding: 2rem 1.5rem 1rem;
    }
    .home .block-contents ul {
        grid-template-columns: 1fr 1fr;
        gap:  0rem 1rem;
    }
    .home .block-contents ul li {
        margin-bottom: 1rem;
    }
}
/* アンカー */
anchor {
    display: block;
    position: relative;
    z-index: 10;
}
.anchor {
    padding-top: 5rem;
    display: block;
}
.company anchor,
.location anchor,
.recruit anchor,
.information anchor {
    height: 100px;
}
@media (max-width: 575.98px) {
    .company anchor,
    .location anchor,
    .recruit anchor,
    .information anchor {
        height: 100px;
    }
    .anchor-pt0 {
        padding-top: 0;
    }
    .anchor02 {
        padding-top: 12rem;
    }
}
/* AEO・ISO認証取得・資料ダウンロード */
.box-aeo {
    display: flex;
    flex-wrap: nowrap;
}
.box-aeo dt {
    width: 75%;
    padding: 0 4rem 0 0;
    font-weight: 400;
}
.box-aeo dd {
    width: 25%;
}
.box-aeo dd ul {
    list-style: none;
    padding-left: 0;
}
.box-aeo dd ul li {
    display: block;
    margin-bottom: 1rem;
}
.aeo h4,
.iso h4,
.publicnotice h4,
.document h4 {
    margin-bottom: 2rem !important;
}
.aeo p,
.iso p,
.publicnotice p,
.publicnotice table,
.document p,
.document table {
    margin-bottom: 4rem !important;
}
.box-aeo dt table th {
    width: 9em;
    font-weight: 400;
    vertical-align: top;
}
.modal {
    z-index: 9999 !important;
}
.publicnotice td a,
.document td a {
    color: #000;
}
.publicnotice td a:hover,
.document td a:hover {
    color: #006ab8;
}
.box-aeo li {
    position: relative;
}
.box-aeo li a::after {
    font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f00e";
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    font-size: 32px;
    color: #000;
}
.box-aeo li a:hover::after {
    color: #006ab8;
}
@media (max-width: 575.98px) {
    .box-aeo {
        display: block;
    }
    .box-aeo dt {
        width: 100%;
        padding: 0 0 0 0;
    }
    .box-aeo dd {
        width: 100%;
    }
    .box-aeo dd ul {
        display: flex;
        flex-wrap: nowrap;
    }
    .box-aeo dd ul li {
        width: 50%;
        margin-bottom: 1rem;
    }
    .box-aeo dd ul li:first-child {
        margin-right: 0.5rem;
    }
    .box-aeo dd ul li:last-child {
        margin-left: 0.5rem;
    }
}
/* お問い合わせ */
.contact .block-contents {
    max-width: 820px;
}
.contact dl dt {
    padding: 0 1.5rem;
    font-size: 18px;
    margin-bottom: 1rem;
}
.contact dl dt span {
    background: #006ab8;
    padding: 0 0.5rem;
    font-size: 15px;
    color: #fff;
    margin-left: 0.8rem;
}
.contact dl dd {
    margin-bottom: 2.2rem;
}
.form-select {
    padding: 1rem 1.5rem;
    background-color: #efefef;
}
.form-control {
    padding: 1rem 1.5rem;
    background-color: #efefef;
}
.box-submit {
    margin: 4rem auto 3rem;
    text-align: center;
}
.box-submit p {
    font-size: 13px;
    margin-bottom: 1.3rem;
}
.btn-submit {
    width: 400px;
    padding: 1.7rem 1.7rem;
    font-size: 18px;
    color: #fff;
    background-image: -webkit-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: -o-linear-gradient(75deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    background-image: linear-gradient(165deg, rgba(33, 183, 207, 1), rgba(0, 106, 184, 1));
    border: none;
    border-radius: 0;
}
.btn-submit:hover {
    color: #fff;
    opacity: 0.7;
}
@media (max-width: 575.98px) {
    .btn-submit {
        width: 100%;
    }
}
/* 企業情報 */
.box-greeting {
    display: block;
    margin-bottom: 3rem;
}

.box-greeting .float-end {
    padding: 0 0 0.4rem 2rem;
}
.img-hara {
    max-height: 42px;
}
.table-about {
    width: 100%;
}
.table-about th {
    vertical-align: top;
    padding-bottom: 1.5rem;
}
.table-about td {
    padding-bottom: 1.5rem;
}
.table-about01 {
    margin-bottom: 8rem !important;
}
.table-about01 th {
    width: 17.5%;
}
.table-about02 {
    max-width: 720px;
}
.table-about02 th {
    width: 16em;
}
.table-about02 td dl {
    display: table;
}
.table-about02 td dt,
.table-about02 td dd {
    display: table-cell;
    font-weight: normal;
}
.table-about02 td dt {
    width: 10em;
}
.table-about02 td dd {
}
.box-chart {
    margin-left: 3vw;
}
.box-member {
    max-width: 300px;
    margin: 0 auto 3rem;
}
.box-member dt {
    float: left;
    width: 11em;
    margin-bottom: 2rem;
    font-size: 16px;
}
.box-member dd {
    margin-left: 11em;
    margin-bottom: 2rem;
    font-size: 16px;
}
.box-histroy {
    max-width: 900px;
    margin: auto;
}
.box-history table th,
.box-history table td,
.box-client table td {
    padding-bottom: 1.5rem;
}
.box-history table th {
    width: 17%;
    vertical-align: top;
}
.box-client table {
    width: 100%;
}
.box-client table td {
    width: 33.33333333%;
    vertical-align: top;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-size: 15px;
}
.csr dl {
    font-size: 16px;
    margin-bottom: 4rem;
}
.csr dl dt {
    color: #006ab8;
}
.csr dl dd {
    margin-bottom: 1rem;
}
.csr p {
    line-height: 1.5;
    margin-bottom: 1rem;
}
.csr ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 1rem;
}
.csr ul li {
    text-indent: -2.8em;
    padding-left: 2.8em;
    line-height: 1.5;
}
.list-icon {
    list-style: none;
    padding-left: 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    gap: 1.2rem;
    max-width: 850px;
    margin: 6rem auto 4rem;
}
.list-icon li img {
    height: auto;
    transition: transform .6s ease;/* ゆっくり変化させる */
    width: 100%;
}
.list-icon li:hover img {
    transform: scale(1.1);/* 拡大 */
}
@media (max-width: 767.98px) {
    .box-greeting .float-end {
        float: none !important;
        text-align: center;
        padding: 0 0 0 !important;
        margin-bottom: 1rem;
    }
}
@media (max-width: 575.98px) {
    .table-about01 {
        margin-bottom: 2rem !important;
    }
    .table-about01 th,
    .table-about02 th,
    .table-about01 td,
    .table-about02 td {
        display: block;
        width: 100%;
    }
    .table-about th,
    .table-about td {
        padding-bottom: 1rem;
    }
    .table-about02 td {
        padding-left: 2rem;
    }
    .table-about02 td dt {
        width: 10em;
    }
    .box-member {
        max-width: 240px;
    }
    .box-member dt {
        float: none;
        width: 100%;
        margin-bottom: 1rem;
        font-size: 14px;
    }
    .box-member dd {
        margin-left: 0;
        margin-bottom: 2rem;
        font-size: 14px;
    }
    .csr dl {
        font-size: 14px;
    }
    .list-icon {
        grid-template-columns: 1fr 1fr;
    }
}
/* 事業紹介 */
.block-business01 {
    background: url("images/bg-business01.jpg") no-repeat;
    background-size: cover;
    padding: 4rem 0 2rem;
}
.box-business01 {
    margin: 0 auto 4rem;
}
.box-business01 p {
    margin: 2rem auto;
    line-height: 2.5;
}
.block-business02 {
    background: url("images/bg-business02.jpg") no-repeat;
    background-size: cover;
}
.box-business02 {
    margin-top: 3rem;
}
.box-business02 p,
.box-business02 ul {
    font-weight: 400;
    color: #fff;
    line-height: 2.5;
}
.box-business02 ul {
    padding-left: 1rem;
}
.block-business03 {
    background: url("images/bg-business03.jpg") no-repeat;
    background-size: cover;
    padding: 3rem 0 0;
}
.box-business03 p {
    font-weight: 400;
    line-height: 2.5;
}
.block-business04 {
    background: url("images/bg-business04.jpg") no-repeat;
    background-size: cover;
    padding: 3rem 0 0;
}
.box-business04 {
}
.box-business04 p {
    font-weight: 400;
    color: #fff;
    line-height: 2.5;
}
.block-business05 {
    background: url("images/bg-business05.jpg") no-repeat;
    background-size: cover;
    padding: 2rem 0 0;
}
.box-business05 {
}
.box-business05 p {
    font-weight: 400;
    line-height: 2.5;
}
.block-business06 {
    background: url("images/bg-business06.jpg") no-repeat;
    background-size: cover;
    padding: 2rem 0 0;
}
.box-business06 p {
    font-weight: 400;
    color: #fff;
    line-height: 2.5;
}
/* 拠点紹介 */
.img-zoom {
    max-width: 287px;
    width: 100%;
    text-align: center;
}
.img-zoom img {
    height: auto;
    transition: transform .6s ease;/* ゆっくり変化させる */
    width: 100%;
}
.img-zoom:hover img {
    transform: scale(1.1);/* 拡大 */
}
.location p strong {
    font-size: 18px;
    font-weight: 700;
}
.box-location01 {
    max-width: 1200px;
    margin: 0 auto 5rem;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 1.3rem;
}
.box-location02,
.box-location03 {
    padding: 0 1.5rem;
    margin-top: 5rem;
}
.box-location02 p strong {
    font-size: 115%;
}
.box-location04,
.box-location05 {
    display: flex;
    flex-wrap: nowrap;
}
.box-location04 dt {
    width: 73.3333333%;
    padding: 0 2rem 0 0;
}
.box-location04 dt p strong {
    font-size: 115%;
}
.box-location04 dd {
    width: 26.6666667%;
}
.box-location04 dd ul,
.box-location05 dd ul {
    list-style: none;
    padding-left: 0;
}
.box-location04 dd ul li {
    margin-bottom: 0.7rem;
}
.box-location05 dt {
    width: 50%;
    padding: 0 2rem 0 0;
}
.box-location05 dd {
    width: 50%;
}
.box-location05 dd ul {
    display: flex;
    flex-wrap: nowrap;
}
.box-location05 dd ul li:last-child {
    margin-left: 0.7rem;
}
.dl-9 {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 0;
    margin-left: 1em;
}
.dl-9 dt {
    float: left;
    width: 9em;
    font-weight: 400;
}
.dl-9 dd {
    margin-left: 9em;
}
.dl-10 {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 3rem;
}
.dl-10 dt {
    float: left;
    width: 10em;
    font-weight: 400;
}
.dl-10 dd {
    margin-left: 10em;
    margin-bottom: 0;
}
.box-map {
    margin-bottom: 3rem;
}
.location th,
.location td {
    font-size: 16px;
    font-weight: 400;
    vertical-align: middle;
}
@media (max-width: 575.98px) {
    .location p strong {
        font-size: 16px;
    }
    .box-location01 {
        margin: 0 auto 3rem;
        grid-template-columns: 1fr 1fr;
        gap: 1rem;
    }
    .box-location02,
    .box-location03 {
        padding: 0 0rem;
        margin-top: 2rem;
    }
    .box-location04,
    .box-location05 {
        display: block;
    }
    .box-location04 dt {
        width: 100%;
        padding: 0;
    }
    .box-location04 dd {
        width: 100%;
    }
    .box-location04 dd ul {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
    }
    .box-location04 dd ul li {
        margin-bottom: 0;
    }
    .box-location04 dd ul li:last-child,
    .box-location05 dd ul li:last-child {
        margin-left: 0.7rem;
    }
     .box-location05 dt {
        width: 100%;
        padding: 0;
    }
    .box-location05 dd {
        width: 100%;
    }
    .dl-9 {
        margin-left: 0;
    }
    .dl-9 dt,
    .dl-10 dt {
        float: none;
        width: 100%;
    }
    .dl-9 dd {
        margin-left: 0;
    }
    .dl-10 dd {
        margin-left: 0;
    }
    .location th,
    .location td {
        font-size: 10px;
    }
}
/* KAMの特徴 */
.img-oath {
    max-width: 800px;
    margin: 0 auto 6rem;
}
.box-feature01,
.box-feature02 {
    display: flex;
    flex-wrap: nowrap;
}
.box-feature01 dt {
    /*width: 64.1666667%;*/
    width: 100%;
    padding: 3rem 2rem 0 2rem;
}
.box-feature01 dd {
    display: none;
    width: 35.8333333%;
}
.box-feature02 dt {
    display: none;
    width: 35.8333333%;
}
.box-feature02 dd {
    /*width: 64.1666667%;*/
    width: 100%;
    /*padding: 3rem 0 0 4rem;*/
    padding: 3rem 2rem 0 2rem;
}
.feature h3 {
    font-size: 24px;
    position: relative;
    margin-bottom: 1.5rem;
    line-height: 2;
}
.feature h3 span {
    color: #006ab8;
}
.feature h3 strong {
    position: absolute;
    top: -5rem;
    left: -40px;
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 72px;
    color: #fff49a;
    z-index: -1;
}
@media (max-width: 991.98px) {
    .box-feature01 {
        display: block;
    }
    .box-feature02 {
        flex-direction: column-reverse;
    }
    .box-feature01 dt,
    .box-feature02 dd {
        width: 100%;
        padding: 0;
    }
    .box-feature01 dd,
    .box-feature02 dt {
        width: 100%;
        text-align: center;
    }
    .feature h3 strong {
        position: static;
        display: block;
        line-height: 1.5;
    }
}
@media (max-width: 575.98px) {
    .feature h3 {
        font-size: 20px;
    }
    .feature h3 strong {
        font-size: 60px;
    }
}
/* 採用情報 */
.img-recruit01 {
    margin: 11.9rem auto 0;
}
.img-recruit01 img {
    width: 100%;
}
.recruit .block-contents h2 {
    font-weight: 700;
    font-size: 48px;
    text-align: center;
    margin: 0 auto 6rem;
    letter-spacing: 8px;
}
.recruit .block-contents h2 span {
    display: block;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 24px;
    color: #006ab8;
    margin-top: 1rem;
    letter-spacing: 3px;
}
.block-recruit01 {
    background: #eaf6ff;
    position: relative;
    z-index: -1;
    margin-top: -5rem;
    padding-bottom: 0;
}
.block-recruit00 {
    background: #eaf6ff;
    padding-bottom: 13rem;
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .img-recruit01 {
        margin: 9.4rem auto 0;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .img-recruit01 {
        margin: 9.4rem auto 0;
    }
    .block-recruit01 {
        margin-top: -7rem;
    }
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .img-recruit01 {
        margin: 12rem auto 0;
    }
    .block-recruit00 {
        padding-bottom: 12rem;
    }
    .recruit .block-contents {
        padding: 2rem 2.5rem;
    }
}
@media (max-width: 575.98px) {
    .img-recruit01 {
        margin: 5.7rem auto 0;
    }
    .block-recruit00 {
        padding-bottom: 10rem;
    }
    .recruit .block-contents {
        padding: 2rem 2.5rem;
    }
    .recruit .block-contents h2 {
        font-size: 20px;
        margin: 0 auto 3rem;
        letter-spacing: 2px;
    }
    .recruit .block-contents h2 span {
        font-size: 14px;
    }
}
.block-recruit02 {
    background: #fff;
    position: relative;
    z-index: 0;
    margin-top: 0;
}
.block-recruit02::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #fff;
    transform: skewY(-5deg) translateY(-180px);
    z-index: -1;
}
.block-recruit02 .block-contents {
    padding: 0 2.5rem 5rem;
}
.img-president {
    position: absolute;
    top: -18rem;
    right: 0;
    z-index: 1;
}
.recruit h3,
.block-recruit01-2 h3 {
    font-size: 48px;
    font-weight: 700;
    letter-spacing: 5px;
    margin-bottom: 4rem;
    position: relative;
    z-index: 2;
}
.recruit h3 span,
.block-recruit01-2 h3 span {
    display: block;
    font-size: 24px;
    color: #006ab8;
    margin-top: 1rem;
    letter-spacing: 3px;
}
.text-recruit01 {
    position: relative;
    z-index: 2;
    max-width: 630px;
}
.text-recruit01 p:last-child {
    margin-bottom: 0;
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .img-president {
        top: -18rem;
    }
    .img-president img {
        max-height: 380px;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .img-president {
        top: -18rem;
    }
    .img-president img {
        max-height: 280px;
    }
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .img-president {
        top: -15rem;
    }
    .img-president img {
        max-height: 240px;
    }
    .block-recruit02 .block-contents {
        padding: 5rem 2.5rem 5rem;
    }
    .block-recruit02 h3 {
        position: absolute;
        top: -4rem;
        font-size: 32px;
    }
}
@media (max-width: 575.98px) {
    .img-president {
        top: -13.5rem;
    }
    .img-president img {
        max-height: 240px;
    }
    .block-recruit02 .block-contents {
        padding: 5rem 2.5rem 2rem;
    }
    .block-recruit02 h3 {
        position: absolute;
        top: -4rem;
        font-size: 20px;
    }
    .block-recruit02 h3 span {
        font-size: 14px;
    }
}
.block-recruit01-2 {
    max-width: 1200px;
    margin: auto;
    padding: 0 1.5rem;
}
.block-recruit01-2 h3 {
    margin-bottom: 2rem;
}
.block-recruit01-3 {
    background-color: #0076cd;
    padding: 3rem 1.5rem;
}
.text-blue {
    max-width: 1200px;
    margin: auto;
    font-size: 30px;
    font-weight: 400;
    color: #fff;
    line-height: 2;
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .text-blue {
        font-size: 24px;
    }
}
@media (max-width: 575.98px) {
    .block-recruit01-2 h3 {
        font-size: 36px;
    }
    .block-recruit01-2 h3 span {
        font-size: 14px;
    }
    .text-blue {
        font-size: 17px;
    }
}
.block-recruit03 {
    background-color: #eaf6ff;
    background-image: url("images/bg-recruit01.jpg");
    background-position: top right;
    background-repeat: no-repeat;
    background-size: 48.0729167%;
    position: relative;
    padding-bottom: 8rem;
    z-index: -1;
}
.our-work {
    position: absolute;
    top: 8rem;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    z-index: 0;
}
.block-recruit03 .block-contents {
    padding: 13rem 2.5rem 5rem;
    position: relative;
    z-index: 1;
}
.text-recruit02 {
    max-width: 805px;
    margin-bottom: 6rem;
}
.box-recruit01 {
    display: table;
    width: 100%;
    background-color: #fff;
    border-radius: 20px;
    margin-left: 33px;
    margin-bottom: 2rem;
    box-shadow: 0px 0px 15px -5px rgba(0,0,0,0.3);
}
.box-recruit01 dt {
    display: table-cell;
    width: 28%;
    vertical-align: middle;
    text-align: center;
    position: relative;
}
.box-recruit01 dt span {
    position: absolute;
    top: 50%;
    left: -35px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.box-recruit01 dd {
    padding: 2rem 4rem 2rem 0;
}
.box-recruit01 dd p {
    margin-bottom: 0;
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .ico-recruit {
        max-height: 130px;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .ico-recruit {
        max-height: 110px;
    }
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .box-recruit01 {
        display: block;
        margin: 4rem 0;
    }
    .box-recruit01 dt {
        display: block;
        width: 100%;
        padding-top: 3rem;
    }
    .box-recruit01 dt span {
        top: -35px;
        left: 0;
        right: 0;
        transform: translateY(0%);
        -webkit-transform: translateY(0%);
        -ms-transform: translateY(0%);
        margin: auto;
        text-align: center;
    }
    .box-recruit01 dd {
        padding: 0rem 2rem 2rem;
    }
}
@media (max-width: 575.98px) {
    .block-recruit03 {
        background-size: 63.0729167%;
    }
    .our-work {
        display: none;
    }
    .block-recruit03 .block-contents {
        padding: 6rem 1.5rem 0rem;
    }
    .block-recruit03 .block-contents h3 {
        font-size: 20px;
        letter-spacing: 2px;
    }
    .block-recruit03 .block-contents h3 span {
        font-size: 14px;
    }
    .text-recruit02 {
        margin-bottom: 4rem;
    }
    .box-recruit01 {
        display: block;
        margin: 4rem 0;
    }
    .box-recruit01 dt {
        display: block;
        width: 100%;
        padding-top: 3rem;
    }
    .box-recruit01 dt span {
        top: -35px;
        left: 0;
        right: 0;
        transform: translateY(0%);
        -webkit-transform: translateY(0%);
        -ms-transform: translateY(0%);
        margin: auto;
        text-align: center;
    }
    .box-recruit01 dd {
        padding: 0rem 2rem 2rem;
    }
}
.block-recruit04 {
    position: relative;
    z-index: 1;
    margin-top: -4rem;
}
.block-recruit04::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgb(0,119,205);
    background: linear-gradient(60deg, rgba(0,119,205,1) 0%, rgba(24,184,226,1) 100%);
    transform: skewY(4deg);
    z-index: -1;
}
.recruit .block-recruit04 h3 {
    font-size: 56px !important;
    color: #fff !important;
}
.recruit .block-recruit04 h3 span {
    font-size: 18px !important;
    color: #fff !important;
}
.box-recruit02 {
    display: flex;
    flex-wrap: nowrap;
}
.box-recruit02 div {
    text-align: center;
}
.box-recruit02 img {
    box-shadow: 0px 0px 15px -5px rgba(0,0,0,0.5);
}
.box-recruit02 p {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    margin: 0.5rem auto 2rem;
}
.box-recruit02 div:first-child {
    margin-right: 1.2rem;
}
.box-recruit02 div:last-child {
    margin-left: 1.2rem;
    padding-top: 3rem;
}
@media (max-width: 575.98px) {
    .block-recruit04 .block-contents {
        padding: 2rem 1.5rem;
    }
    .recruit .block-recruit04 h3 {
        font-size: 20px !important;
    }
    .recruit .block-recruit04 h3 span {
        font-size: 14px !important;
    }
    .box-recruit02 p {
        font-size: 14px;
    }
    .box-recruit02 div:first-child {
        margin-right: 0.5rem;
    }
    .box-recruit02 div:last-child {
        margin-left: 0.5rem;
        padding-top: 3rem;
    }
}
.block-recruit05 {
    padding: 3rem 0 10rem;
}
.block-recruit05 h2 {
    margin-bottom: 2rem !important;
}
.box-recruit03 {
    max-width: 1200px;
    margin: 0 auto 0;
    padding: 0 1.5rem;
}
.box-recruit03 h3 {
    font-size: 24px;
    font-weight: 700;
    color: #0076cd;
    margin-bottom: 1rem;
}
.box-recruit03 h3 strong {
    font-size: 36px;
}
.dl-recruit03 {
    box-shadow: 0px 0px 15px -5px rgba(0,0,0,0.3);
    margin-bottom: 2rem;
}
.dl-recruit03 dt {
    background: #0076cd;
    padding: 1rem 3rem;
    position: relative;
    display: table;
    width: 100%;
    cursor: pointer;
}
.dl-recruit03 > dt span {
    display: table-cell;
    vertical-align: middle;
    font-size: 18px;
    font-weight: 500;
    color: #fff;
}
.dl-recruit03 dt span small {
    font-size: 12px;
}
.dl-recruit03 > dt::after {
    content: '▼';
    position: absolute;
    top: 50%;
    right: 2rem;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    color: #fff;
}
.dl-recruit03 > dt.active::after {
    content: '▲';
}
.dl-recruit03 dd {
    display: none;
    background: #fff;
    padding: 2rem;
}
.dl-recruit03 dd h5 {
    font-size: 16px;
    font-weight: 700;
    color: #0076cd;
    margin-bottom: 0;
}
.dl-recruit03 dd p {
    font-size: 16px;
    font-weight: 400;
}
.dl-recruit03 dd p:last-child {
    margin-bottom: 0;
}
.dl-recruit03 ul {
    list-style: none;
    padding-left: 0;
}
.dl-recruit03 ul li {
    font-size: 16px;
    font-weight: 400;
    text-indent: -1em;
    padding-left: 1em;
}
.bg-recruit01 {
    position: relative;
    margin-top: -45rem;
    height: 50rem;
    display: none;
}
.bg-recruit01::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #353535;
    transform: skewY(-4deg) translateY(180px);
    z-index: -1;
}
@media (max-width: 575.98px) {
    .block-recruit05 {
        padding: 3rem 0 7rem;
    }
    .block-recruit05 .block-contents {
        padding: 2rem 1.5rem;
    }
    .box-recruit03 {
        padding: 0 1.5rem;
    }
}
.block-recruit06 {
    position: relative;
    z-index: 1;
    margin-top: -10rem;
    padding: 15rem 0 5rem;
}
.block-recruit06::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgb(0,119,205);
    background: linear-gradient(60deg, rgba(24,184,226,1) 0%, rgba(0,119,205,1) 100%);
    transform: skewY(-4deg) translateY(180px);
    z-index: -1;
}
.block-recruit06 h2,
.block-recruit06 h2 span {
    color: #fff !important;
}
.block-recruit06 h2 {
    margin-bottom: 2rem !important;
}
.block-recruit06 p {
    color: #fff;
}
.box-recruit04 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1.6rem;
    margin-top: 7rem;
}
.box-recruit04 div {
    border: 4px solid #fff;
    border-radius: 20px;
    padding: 4rem 2rem 2rem;
}
.box-recruit04 div:last-child {
    padding: 2rem 2rem 2rem;
}
.box-recruit04 div h6 {
    text-align: center;
    margin-bottom: 3rem;
}
.box-recruit04 div:last-child h6 {
    margin-bottom: 1rem;
}
.box-recruit04 div h5 {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-bottom: 2rem;
    line-height: 1.5;
}
.box-recruit04 div p {
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    margin-bottom: 0;
}
.box-recruit05 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 1.6rem;
    margin-top: 2rem;
}
.box-recruit05 dl {
    border: 4px solid #fff;
    border-radius: 20px;
    display: table;
    margin-bottom: 0;
}
.box-recruit05 dt {
    display: table-cell;
    width: 37.5426621%;
    vertical-align: middle;
    text-align: center;
}
.box-recruit05 dd {
    display: table-cell;
    width: 62.4573379%;
    padding: 2rem 4rem 2rem 0;
}
.box-recruit05 dd h5 {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 2rem;
}
.box-recruit05 dd p {
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    margin-bottom: 0;
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .box-recruit04 {
        gap: 1.0rem;
    }
    .box-recruit05 {
        gap: 1.0rem;
        margin-top: 1rem;
    }
    .box-recruit04 div h5 {
        font-size: 19px;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .box-recruit04 {
        gap: 1.0rem;
    }
    .box-recruit05 {
        gap: 1.0rem;
        margin-top: 1rem;
    }
    .box-recruit04 div h5 {
        font-size: 19px;
    }
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .box-recruit04 {
        display: block;
        margin-top: 5rem;
    }
    .box-recruit04 div {
        padding: 2rem;
        margin-bottom: 2rem;
    }
    .box-recruit05 {
        display: block;
        margin-top: 0;
    }
    .box-recruit05 dl {
        display: block;
        margin-bottom: 2rem;
    }
    .box-recruit05 dt {
        display: block;
        width: 100%;
        padding: 2rem;
    }
    .box-recruit05 dd {
        display: block;
        width: 100%;
        padding: 0 2rem 2rem;
    }
    .box-recruit05 dd h5 {
        text-align: center;
    }
}
@media (max-width: 575.98px) {
    .block-recruit06 {
        margin-top: -10rem;
        padding: 12rem 0 0rem;
    }
    .box-recruit04 {
        display: block;
        margin-top: 5rem;
    }
    .box-recruit04 div {
        padding: 2rem;
        margin-bottom: 2rem;
    }
    .box-recruit04 div h5,
    .box-recruit05 dd h5 {
        font-size: 21px;
    }
    .box-recruit04 div p,
    .box-recruit05 dd p {
        font-size: 14px;
    }
    .box-recruit05 {
        display: block;
        margin-top: 0;
    }
    .box-recruit05 dl {
        display: block;
        margin-bottom: 2rem;
    }
    .box-recruit05 dt {
        display: block;
        width: 100%;
        padding: 2rem;
    }
    .box-recruit05 dd {
        display: block;
        width: 100%;
        padding: 0 2rem 2rem;
    }
    .box-recruit05 dd h5 {
        text-align: center;
    }
}
.block-recruit07 {
    position: relative;
    z-index: 1;
    margin-top: -10rem;
    padding: 15rem 0 5rem;
}
.block-recruit07::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    transform: skewY(4deg) translateY(180px);
    z-index: -1;
}
.box-recruit06 {
    margin-bottom: 1.5rem;
}
.box-recruit06 > dt {
    background: #0076cd;
    padding: 1rem 3rem;
    position: relative;
    display: table;
    width: 100%;
    cursor: pointer;
}
.box-recruit06 > dt strong {
    display: table-cell;
    vertical-align: middle;
    width: 4rem;
    font-size: 36px;
    font-weight: 400; 
    color: #fff;
}
.box-recruit06 > dt span {
    display: table-cell;
    vertical-align: middle;
    font-size: 18px;
    font-weight: 500;
    color: #fff;
}
.box-recruit06 > dt::after {
    content: '▼';
    position: absolute;
    top: 50%;
    right: 2rem;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    color: #fff;
}
.box-recruit06 > dt.active::after {
    content: '▲';
}
.box-recruit06 > dd {
    display: none;
    background: #eaf6ff;
    padding: 1rem 7rem 3rem 3rem;
}
.box-recruit06 > dd strong {
    display: table-cell;
    width: 4rem;
    font-size: 36px;
    font-weight: 400;
}
.box-recruit06 > dd span {
    display: table-cell;
    font-size: 16px;
    font-weight: 500;
    line-height: 2.5;
}
@media (max-width: 575.98px) {
    .block-recruit07 {
        padding: 11rem 0 2rem;
    }
    .block-recruit07 .block-contents {
        padding: 5rem 1.5rem 0;
    }
    .box-recruit06 > dt {
        padding: 1rem 1rem;
    }
    .box-recruit06 > dt strong {
        width: 2rem;
        font-size: 24px;
    }
    .box-recruit06 > dt span {
        font-size: 16px;
        width: 86%;
    }
    .box-recruit06 > dt::after {
        right: 1rem;
    }
    .box-recruit06 > dd {
        padding: 1rem 1rem 1rem 1rem;
    }
    .box-recruit06 > dd strong {
        width: 2rem;
        font-size: 24px;
    }
    .box-recruit06 > dd span {
        font-size: 14px;
    }
}
.block-recruit08 {
    position: relative;
    z-index: 1;
    margin-top: -10rem;
    padding-top: 15rem;
}
.block-recruit08::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #eaf6ff;
    transform: skewY(-4deg) translateY(180px);
    z-index: -1;
}
.box-recruit07 {
    max-width: 930px;
    margin: 0 auto 3rem;
}
.box-recruit07 dt {
    float: left;
    width: 12em;
    font-size: 18px;
    font-weight: 500;
    color: #0076cd;
    line-height: 2;
    letter-spacing: 3px;
}
.box-recruit07 dd {
    margin-left: 12em;
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 1rem;
    line-height: 2;
}
.box-recruit07 dd table td {
    vertical-align: top;
}
.box-recruit07 ul {
    list-style: none;
    padding-left: 0;
}
.box-recruit07 ul li {
    text-indent: -1em;
    padding-left: 1em;
    font-size: 18px;
}
.block-recruit08 p {
    max-width: 930px;
    margin: auto;
}
@media (max-width: 575.98px) {
    .block-recruit08 {
        margin-top: -7rem;
    }
    .block-recruit08 .block-contents {
        padding: 0rem 1.5rem 2rem;
    }
    .box-recruit07 dt {
        float: none;
        width: 100%;
        font-size: 14px;
        letter-spacing: 2px;
    }
    .box-recruit07 dd {
        margin-left: 0;
        font-size: 14px;
        margin-bottom: 2rem;
    }
    .box-recruit07 dd table td {
        display: block;
    }
    .box-recruit07 ul li {
        font-size: 14px;
    }
}
.block-recruit09 {
    position: relative;
    z-index: 1;
    margin-top: -10rem;
    padding-top: 15rem;
}
.block-recruit09::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    transform: skewY(-4deg) translateY(180px);
    z-index: -1;
}
.block-recruit10 {
    position: relative;
    padding: 9rem 0 0;
    z-index: 2;
}
.box-recruit08 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    max-width: 1200px;
    margin: auto;
    position: relative;
    padding: 0 1.5rem;
}
.box-recruit08 div {
    background: #fff;
}
.box-recruit08 div h3 {
    font-size: 56px;
    font-weight: 700;
    color: #0076cd;
    text-align: center;
    margin-bottom: 3rem;
}
.box-recruit08 div h3 span {
    display: block;
    font-size: 18px;
    font-weight: 500;
}
.inner-recruit {
    box-shadow: 0px 0px 15px -5px rgba(0,0,0,0.3);
    position: relative;
}
.inner-recruit dt {
    text-align: center;
}
.box-recruit08 div dd {
    padding: 3rem 4rem 1rem;
}
.box-recruit08 div dd p {
    font-size: 16px;
    line-height: 2.5;
}
.btn-entry {
    padding: 0 2rem 2rem;
    position: absolute;
    bottom: -7rem;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 3;
}
.btn-entry a {
    display: block;
    background: #0076cd;
    font-size: 24px;
    font-weight: 500;
    text-align: center;
    color: #fff;
    padding: 1.5rem;
}
.btn-entry span {
    display: block;
    background: #0076cd;
    font-size: 24px;
    font-weight: 500;
    text-align: center;
    color: #fff;
    padding: 1.5rem;
    opacity: 0.7;
}
.btn-entry a:hover {
    opacity: 0.7;
}
.bg-recruit02 {
    position: relative;
    margin-top: -42rem;
    height: 57rem;
}
.bg-recruit02::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #0076cd;
    z-index: -1;
}
@media (min-width: 1800px) and (max-width: 1919.98px) {
    .inner-business01,
    .inner-business02 {
        max-width: 1460px;
    }
}
@media (min-width: 1700px) and (max-width: 1799.98px) {
    .inner-business01,
    .inner-business02 {
        max-width: 1430px;
    }
}
@media (min-width: 1600px) and (max-width: 1699.98px) {
    .inner-business01,
    .inner-business02 {
        max-width: 1330px;
    }
}
@media (min-width: 1500px) and (max-width: 1599.98px) {
    .inner-business01,
    .inner-business02 {
        max-width: 1290px;
    }
}
@media (min-width: 1300px) and (max-width: 1499.98px) {
    .inner-business01,
    .inner-business02 {
        max-width: 1290px;
    }
}
@media (min-width: 1200px) and (max-width: 1299.98px) {
    .inner-business01,
    .inner-business02 {
        max-width: 1290px;
    }
    .inner-business01 dt {
        padding: 0 1.5rem;
    }
    .inner-business02 p,
    .num-business{
        padding: 0 0 0 1.5rem;
    }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .inner-business01 dt {
        width: 50%;
        padding: 0 1.5rem;
    }
    .inner-business01 dd {
        width: 50%;
    }
    .inner-business02 dt {
        width: 75%;
    }
    .inner-business02 dd {
        width: 25%;
    }
    .inner-business02 p,
    .num-business{
        padding: 0 0 0 1.5rem;
    }
    .box-recruit08 {
        gap: 2rem;
    }
    .box-recruit08 div dd {
        padding: 3rem 2rem 1rem;
    }
    .box-recruit08 div h3 {
        font-size: 48px;
    }
}
@media (max-width: 991.98px) {
    .box-greeting {
        flex-direction: column-reverse;
    }
    .box-greeting dt {
        width: 100%;
        padding: 0;
    }
    .box-greeting dd {
        width: 100%;
    }
    .box-history table th,
    .box-history table td {
        display: block;
    }
    .box-history table th {
        width: 100%;
        padding-bottom: 0;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .inner-business01 dt {
        width: 50%;
        padding: 0 1.5rem;
    }
    .inner-business01 dd {
        width: 50%;
    }
    .inner-business02 dt {
        width: 85%;
    }
    .inner-business02 dd {
        width: 15%;
    }
    .inner-business02 p,
    .num-business{
        padding: 0 0 0 1.5rem;
    }
    .box-recruit07 dt {
        width: 10em;
        font-size: 16px;
    }
    .box-recruit07 dd {
        margin-left: 10em;
        font-size: 16px;
    }
    .box-recruit07 dd td {
        font-size: 16px;
    }
    .box-recruit07 ul li {
        font-size: 16px;
    }
    .box-recruit08 {
        gap: 1rem;
    }
    .box-recruit08 div dd {
        padding: 3rem 2rem 1rem;
    }
    .box-recruit08 div h3 {
        font-size: 36px;
    }
    .btn-entry {
        bottom: -6rem;
    }
    .btn-entry a,
    .btn-entry span {
        font-size: 18px;
    }
}
@media (max-width: 767.98px) {
    .box-business01 {
        display: block;
    }
    .box-business01 dt {
        display: block;
        width: 100%;
        padding-right: 0;
        padding-bottom: 2rem;
    }
    .box-business01 dd {
        display: block;
        width: 100%;
        padding-left: 0;
    }
    .inner-business01 {
        display: flex;
        flex-direction: column-reverse;
        margin-bottom: 8rem;
        position: relative;
        float: none;
    }
    .inner-business01 dt {
        display: block;
        width: 100%;
        padding: 0 1.5rem;
    }
    .inner-business01 dd {
        display: block;
        width: 100%;
        text-align: center;
        margin-bottom: 2rem;
    }
    .inner-business02 dt {
        width: 100%;
    }
    .inner-business02 dd {
        width: 0%;
    }
    .inner-business02 p,
    .num-business {
        padding: 0 1.5rem;
    }
    .inner-business02 p {
        margin-bottom: 2rem !important;
    }
    .box-business04 {
        display: block;
        margin-bottom: 5rem;
    }
    .box-business04 dt {
        width: 100%;
        margin-bottom: 2rem;
    }
    .box-business04 dd {
        width: 100%;
        padding: 0;
    }
    .box-business05 {
        display: block;
        margin-bottom: 0;
    }
    .box-business05 dt {
        width: 100%;
        margin-bottom: 2rem;
    }
    .box-business05 dd {
        width: 100%;
        padding: 0;
    }
}
@media (min-width: 576px) and (max-width: 767.98px) {
    .box-recruit07 dt {
        width: 10em;
        font-size: 16px;
    }
    .box-recruit07 dd {
        margin-left: 10em;
        font-size: 16px;
    }
    .box-recruit07 dd td {
        font-size: 16px;
    }
    .box-recruit07 ul li {
        font-size: 16px;
    }
    .box-recruit08 {
        display: block;
    }
    .box-recruit08 .inner-recruit02 {
        margin-bottom: 9rem;
    }
}
@media (max-width: 575.98px) {
    .block-recruit09 .block-contents {
        padding: 2rem 1.5rem;
    }
    .block-recruit10 {
        padding: 5rem 0 0;
    }
    .box-recruit08 {
        display: block;
    }
    .box-recruit08 .inner-recruit02 {
        margin-bottom: 9rem;
    }
    .box-recruit08 div h3 {
        font-size: 32px;
        margin-bottom: 3rem;
    }
    .box-recruit08 div h3 span {
        display: block;
        font-size: 18px;
    }
    .box-recruit08 div dd {
        padding: 2rem 2rem 1rem;
    }
    .box-recruit08 div dd p {
        font-size: 14px;
    }
    .bg-recruit02 {
        height: 53rem;
    }
    .btn-entry {
        bottom: -6rem;
    }
    .btn-entry a,
    .btn-entry span {
        font-size: 18px;
    }
}
footer {
    background: url("images/bg-footer.jpg") no-repeat center;
    background-size: cover;
    padding: 1.5rem 1.5rem 1.5rem;
}
footer .container {
    max-width: 1540px;
}
footer h2 {
    margin-bottom: 2rem;
}
footer h2 img {
    max-height: 47px;
    max-width: 100%;
}
.box-footer {
    display: flex;
    flex-wrap: nowrap;
    border-bottom: 1px solid rgba(255,255,255,0.5);
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
}
footer h6 {
    font-family: "Roboto Condensed", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400 !important;
    font-style: normal;
    font-size: 32px !important;
    padding: 0 0 0 1rem;
    width: 300px;
    letter-spacing: 0 !important;
    margin-bottom: 0 !important;
    line-height: 1 !important;
    display: table;
}
footer h6 span {
    display: table-cell;
    width: 4em;
}
footer h6 small {
    font-size: 16px;
    margin-left: 1rem;
}
footer h6 a {
    color: #fff;
}
footer h6 a:hover {
    color: #21b8ce;
}
.menu-recruit {
    letter-spacing: 3px;
}
.footer-menu01 {
    list-style: none;
    padding-left: 0;
    display: table;
    width: 60%;
}
.footer-menu01 li {
    display: table-cell;
    line-height: 1.5;
    width: 40%;
}
.footer-menu01 li:last-child {
    width: 60%;
}
.hr-footer {
    border-top: 1px solid rgba(255,255,255,0.5);
    margin: 1rem auto 1rem;
}
.footer-menu02 {
    list-style: none;
    padding-left: 0;
    margin: 0 1rem;
}
.footer-menu02 li {
    display: inline-block
}
.footer-menu02 li:not(:last-child) {
    margin-right: 1.5rem;
}
.footer-menu01 li a {
    font-size: 16px;
    color: #fff;
}
.footer-menu01 li a::after{
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f054";
    display: inline-block;
    margin-left: 1rem;
}
.footer-menu02 li a {
    font-size: 14px;
    color: #fff;
}
.footer-menu01 li a:hover,
.footer-menu02 li a:hover {
    color: #21b8ce;
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .footer-menu01 li {
        width: 45%;
    }
    .footer-menu01 li:last-child {
        width: 55%;
    }
    .footer-menu01 li a {
        font-size: 14px;
    }
    .footer-menu01 li a::after{
        margin-left: 0.5rem;
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .footer-menu01 li a {
        font-size: 14px;
    }
}
@media (max-width: 767.98px) {
    footer {
        padding: 3rem 1.5rem 3rem;
    }
    .box-footer {
        display: block;
    }
    footer h6 {
        font-size: 24px;
        width: 100%;
    }
    footer h6 small {
        font-size: 12px;
    }
    .footer-menu01 {
        margin-left: 1rem;
        display: block;
        width: 100%;
    }
    .footer-menu01 li {
        display: block;
        width: 100%;
    }
    .footer-menu01 li:last-child {
        width: 100%;
    }
    .footer-menu01 li a {
        font-size: 12px;
    }
    .footer-menu02 li a {
        font-size: 10px;
    }
}
/* 戻るアンカー */
#page-top {
	position: fixed;
	bottom: 1.5rem;
	right: 1rem;
	opacity: 0;
    z-index: 9999;
}
#page-top.fade-in {
	opacity: 1;
	transition: opacity 1s;
	cursor: pointer;
}
#page-top.fade-in:hover {
	opacity: 0.7;
}
@media (max-width: 767.98px) {
    #page-top {
    	bottom: 2.5rem;
    }
	#page-top.fade-in img {
		max-width: 45px;
	}
}
.your-privacy .wpcf7-list-item {
    padding: 0.175rem 0.75rem;
    border: 1px solid #e8e8e8;
    border-radius: 2px;
    margin: 0 auto 0.3rem !important;
    background: #e8e8e8;
    display: table;
    width: 45%;
}
.your-privacy .wpcf7-list-item::before {
    content: '個人情報保護について';
    display: table-cell;
    font-size: 15px;
    color: #212121;
    margin-right: 0.4rem;
}
.your-type .wpcf7-list-item {
    padding: 0.175rem 0.75rem;
    border: 1px solid #e8e8e8;
    border-radius: 2px;
    width: 32.5%;
    display: inline-block;
    margin: 0 0.15rem 0.3rem !important;
    background: #e8e8e8;
}
@media (max-width: 599.98px) {
    .your-type .wpcf7-list-item {
        width: 48.2%;
        margin: 0 0.15rem 0.3rem;
    }
}
.widgettitle {
	display: none;
}
.widget_rss {
	list-style: none;
}
.widget_rss ul li {
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
    border-bottom: 1px dotted #000;
    font-size: 13px;
    color: #000;
}
.widget_rss ul li a {
    font-size: 13px;
    color: #000;
}
.widget_rss ul li a:hover {
    color: #333;
    opacity: 0.7;
}
.widget_rss ul li a::before {
    content: '';
    background-image: url(images/ico-no01.png);
    background-position: 5px center;
    background-repeat: no-repeat;
    padding: 0 0 0 20px;
    display: inline-block;
    width: 6px;
    height: 9px;
}
@media (min-width:576px) and (max-width: 991.98px) {
    .your-privacy .wpcf7-list-item {
        width: 57.2%;
        margin: 0 0.15rem 0.3rem;
    }
}
@media (max-width: 575.98px) {
    .your-privacy .wpcf7-list-item {
        width: 100%;
    }
    .your-privacy .wpcf7-list-item::before,
    .wpcf7-list-item-label {
        font-size: 10px;
    }
}
.pagenation {
    margin: 0 auto 1rem;
    text-align: center;
}
.pagenation a {
    font-size: 14px;
    color: #5f5648;
}
.oldpage {
    float: left;
    font-size: 1.1rem;
}
.newpage {
    float: right;
    font-size: 1.1rem;
}
.pagenum span {
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    background: #000;
    padding: 0 0.7rem;
}
.pagenum a {
    color: #000;
    font-size: 15px;
    font-weight: 400;
    position: relative;
}
.pagenum a:hover {
    color: #006ab8;
}
.pagenum a .arrow-l::before {
    content: url("images/ico-arrow-l.png");
    position: absolute;
    top: 0.1rem;
    left: -20px;
}
.pagenum a .arrow-r::after {
    content: url("images/ico-arrow-r.png");
    position: absolute;
    top: 0.1rem;
    right: -20px;
}
@media (max-width: 575.98px) {
    .pagenation {
        margin: 1rem auto 2rem;
    }
    .pagenation span,
    .pagenation a {
        font-size: 12px;
    }
}
/* fadeUpをするアイコンの動き */
.slick-active .fadeUp {
    animation-name: fadeUpAnime;
    animation-duration:1.5s;
    animation-fill-mode:forwards;
    opacity: 0;
    display: block;
}
@keyframes fadeUpAnime{
    from {
        opacity: 0;
        transform: translateY(100px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.slick-active .fadeUp2 {
    animation-name: fadeUpAnime2;
    animation-duration:16s;
    animation-fill-mode:forwards;
    opacity: 0;
    display: block;
}
@keyframes fadeUpAnime2 {
    0% {
		opacity: 0;
        transform: translateY(100px);
	}
	10% {
		opacity: 1;
        transform: translateY(0);
	}
	30% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
/* fadeOutをするアイコンの動き */
.slick-active .fadeOut {
    animation-name: fadeOutAnime;
    animation-delay: 1.5s;
    animation-duration: 15s;
    animation-fill-mode: both;
}
@keyframes fadeOutAnime{
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
.animatemenu01 {
	animation-duration: 0.2s; /* アニメーションの時間 */
	animation-delay: 0s; /* アニメーション開始時間 */
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
	/*animation-iteration-count: infinite; アニメーションの繰り返し回数 */
}
.animatemenu02 {
	animation-duration: 0.4s;
	animation-delay: 0.2s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu03 {
	animation-duration: 0.6s;
	animation-delay: 0.4s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu04 {
	animation-duration: 0.8s;
	animation-delay: 0.6s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu05 {
	animation-duration: 1.0s;
	animation-delay: 0.8s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu06 {
	animation-duration: 1.2s;
	animation-delay: 1.0s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu07 {
	animation-duration: 1.4s;
	animation-delay: 1.2s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu08 {
	animation-duration: 1.6s;
	animation-delay: 1.4s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu09 {
	animation-duration: 1.8s;
	animation-delay: 1.6s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu10 {
	animation-duration: 2.0s;
	animation-delay: 1.8s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu11 {
	animation-duration: 2.2s;
	animation-delay: 2.0s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.animatemenu12 {
	animation-duration: 2.4s;
	animation-delay: 2.2s;
	-webkit-animation-name: fadeUpAnime;
	animation-name: fadeUpAnime;
}
.delay {
    animation-delay: 0.8s;
}
.slide {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}
.slick-animation .img-mv {
    animation: fadezoom 5s 0s forwards;
}
@keyframes fadezoom {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.07);
  }
}
.page-numbers {
    list-style: none;
    padding-left: 0;
    display: flex;
    margin: auto;
    justify-content: center;
}
.page-numbers li {
    margin: 0 0.3rem;
}
.wpcf7-spinner {
    display: none !important;
}