/*
Theme Name: Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}








/* CSS */
@charset "UTF-8";

html {
    font-size: 16px!important;
    font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif!important;
    color: #333;
}

body {
    width: 100%;
    margin: 0px;
    padding: 0px;
    overflow-x: clip;
	font-size: 16px;
	font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

img {
    width: 100%;
}

a {
    color: #333;
    text-decoration: none;
}

.has-global-padding {
	padding: 0!important;
	margin: 0!important;
}

p {
	line-height: 2;
	margin: 0;
}

/*-- header --*/
.header_pc, .menu_pc ul {
    display: flex;
    justify-content: space-between;
    vertical-align: middle;
}

.header_pc {
    width: 90%;
    height: 90px;
    margin: 0 auto;
}

.header_pc .logo {
    padding: 10px;
}

.menu_pc ul, .menu_sp ul {
    list-style-type: none;
    padding: 0px;
    margin: 0px;
}

.menu_pc ul a {
    display: block;
    text-decoration: none;
    font-weight: 500;
    font-size: 1.125rem;
    padding: 33px;
    white-space: nowrap;
}

.menu_pc ul .recruit a {
    font-weight: 700;
    font-size: 1.1875rem;
    background-color: #F5DA76;
}

.header_sp, .menu_sp {
    display: none;
}

header a:hover {
	opacity: 0.5;
}

/*-- 問い合わせエリア --*/
.contact {
    position: relative;
    z-index: 0;
    background-color: #F6F6F6;
	padding-bottom: 60px;
}

.contact .title_bg {
    bottom: auto;
    top: 50px;
    width: 90%;
    left: auto;
}

.contact h2 {
	padding: 164px 0 17px;
	color: rgb(0, 0, 0, 0.9);
}

.contact h2 + p {
	margin-top: 39px;
}

.contact p {
	font-size: 1.188rem;
}

.contact .text_box p:last-child {
	font-size: 1rem;
	line-height: 1.7;
	white-space: nowrap;
	text-align: left;
}

.contact .inner_box {
	margin: 60px 0;
}

.contact h3 {
	margin: 0 0 47px;
}

.contact .right_cont {
    width: 40%;
    position: relative;
    z-index: 0;
}

.contact .right_cont .text_box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    white-space: nowrap;
	color: #fff;
	text-align: center;
}

.contact .right_cont .text_box .num, .contact .right_cont .text_box span {
    font-weight: 500;
    font-size: 1rem;
    color: #fff!important;
	line-height: 1.7;
    margin: 0;
}

.contact .right_cont p.num {
    font-size: 1.5rem;
	white-space: nowrap;
	color: #fff!important;
	text-align: center;
}

.contact .text_box p.num > span {
    font-size: 2rem;
	color: #fff!important;
}

.wpcf7.js {
	background-color: #F6F6F6;
	margin: 0;
	padding-bottom: 100px;
}

.wpcf7.js form {
	width: 658px;
	margin: 0 auto;
	border-top: 2px solid rgb(83, 83, 83, 0.9);
	background-color: #fff;
}

.wpcf7.js form p {
	margin: 0;
}

.wpcf7.js form input[type="text"], .wpcf7.js form input[type="email"], .wpcf7.js form input[type="tel"] {
    border-color: #BEBEBE;
    display: block;
    margin: 50px auto;
    border-radius: 10px;
    width: 342px;
    height: 50px;
    font-size: 20px;
}

.wpcf7.js form textarea {
	width: 342px;
    height: 221px;
    margin: 50px auto 24px;
    font-size: 20px;
    border-color: #BEBEBE;
    border-radius: 10px;
    position: relative;
    left: 10px;
}

.wpcf7.js form .wpcf7-form-control-wrap {
	width: 60%;
}

.wpcf7.js form .label_name {
	background-color: #F6F6F6;
    padding: 44px 35px 76px;
    display: block;
    width: 227px;
	position: relative;
	border-right: 1px solid #838383;
	font-size: 1.25rem;
	line-height: 1.6;
}

.wpcf7.js form label {
	border-bottom: 1px solid #838383;
	border-left: 2px solid rgb(83, 83, 83, 0.9);
	border-right: 2px solid rgb(83, 83, 83, 0.9);
    display: flex;
}

.wpcf7.js form p:nth-child(6) .label_name,
.wpcf7.js form p:nth-child(7) .label_name {
	padding-top: 44px;
	padding-bottom: 46px;
}

.wpcf7.js form p:nth-child(6) .label_name:after, 
.wpcf7.js form p:nth-child(7) .label_name:after {
	top: auto;
	bottom: 18px;
}


.wpcf7.js form p:nth-child(8) {
	border-bottom: 2px solid rgb(83, 83, 83, 0.9);
}

.wpcf7.js form .texts {
	background-color: #fff;
	border-right: 0;
	font-weight: bold;
	font-size: 1.25rem;
}

.wpcf7.js form .label_name:after {
	content: "任意";
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	background-color: #646464;
	display: inline-block;
	padding: 0 5px;
	position: absolute;
	left: 35px;
	top: 75px;
	letter-spacing: 0.02em;
}

.wpcf7.js form .label_name.required:after {
	content: "必須";
	background-color: #B40202;
}

.wpcf7.js form .wpcf7-not-valid-tip {
	padding-left: 20px;
	font-weight: bold;
}

.wpcf7.js form p.text_bottom {
	padding: 63px 52px 33px 34px;
	font-size: 1.188rem;
}

.wpcf7.js form p.text_bottom, .wpcf7.js form p:nth-child(10) {
	background-color: #F6F6F6;
}

.wpcf7.js form .wpcf7-response-output {
	margin: 0;
	color: #dc3232;
	font-weight: bold;
}

.wpcf7.js form .btn_box {
	position: relative;
	display: block;
}

.wpcf7.js form .sub_btn {
	margin: 0 auto;
	width: 100%;
	height: 117px;
	border: 1px solid #000;
	background-color: #F4CE42;
	font-weight: bold;
	font-size: 2.25rem;
	color: #000;
	outline: 2px solid #fff;
	outline-offset: -10px;
	cursor: pointer;
	line-height: 1.5;
	letter-spacing: 0.01em;
	position: relative;
}

.wpcf7.js form .sub_btn:hover {
	background-color: #fff;
	outline: 2px solid #EFD572;
	border: 1px solid #EFD572;
	color: #EFD572;
}

.wpcf7.js form .sub_btn:hover + span + svg {
	fill: #fff;
    stroke: #f1d980;
    stroke-width: 2px;
}

.wpcf7.js form .btn_box svg {
    position: absolute;
    top: 43px;
    right: 100px;
    width: 32px;
    height: 32px;
}


/*-- footer --*/
.wp-block-template-part {
	margin: 0;
}

footer {
    background: url(https://hikaku-express.jp/wp-content/uploads/2025/04/footer_bg.png) no-repeat 0 0 / cover;
    padding: 40px;
    margin-top: 40px;
}

footer a, footer p {
    color: #fff;
    display: block;
}

.ft_top, .ft_bottom {
    display: flex;
    justify-content: space-between;
    width: 90%;
    margin: 0 auto;
}

.ft_top .right_cont {
    display: flex;
}

.ft_top .right_cont a {
    padding: 20px;
    margin: 10px 20px;
}

.ft_top .right_cont .recruit a {
    color: #333;
    margin-right: 0px;
}

.ft_top {
    padding-bottom: 40px;
    border-bottom: 0.7px solid #B9B8B8;
}

.ft_bottom {
    padding-top: 40px;
}

.ft_bottom .right_cont {
    margin-top: auto;
    text-align: right;
}

footer .ft_top .left_cont p{
	font-size: 1.5rem;
	letter-spacing: 0.02em;
}

footer .ft_bottom .right_cont p {
	line-height: 2.4;
	letter-spacing: 0em;
}

footer a:hover {
	opacity: 0.5;
}

/*-- 共通項目 --*/
.fv {
    width: 100%;
    height: 575px;
    background: url(https://hikaku-express.jp/wp-content/uploads/2025/05/fv.jpg) no-repeat 0 0 / cover;
    position: relative;
}

.fv .fv_text_area {
    position: absolute;
    left: 10%;
    bottom: 0;
    z-index: 0;
}
.fv .fv_text_area h1 {
    font-family: YuMincho, "Hiragino Mincho ProN", serif;
    font-style: normal;
    font-weight: 800;
    color: #fff;
    font-size: clamp(2.5rem, 1.866rem + 2.37vw, 4rem);
	letter-spacing: 0.03em;
}

.fv .fv_text_area h1 .text_en {
    font-family:"Noto Serif JP", serif;
    font-style: normal;
    font-weight: 800;
}

section {
    position: relative;
    width: 100%;
}

section .inner {
    width: 80%;
    margin: 0 auto;
}

section h2 {
    margin: 0;
    padding: 124px 0 20px;
    position: relative;
    font-weight: 700;
    font-size: 4rem;
    color: rgb(3, 48, 76, 0.9);
	line-height: 1.5;
}

section h2:after {
    content: "";
    width: 114px;
    height: 2px; 
    background-color: #03304C;
    position: absolute;
    left: 0;
    bottom: 10px;
}

section h3 {
    font-weight: 700;
    font-size: 2rem;
	line-height: 1.5;
}

.line {
    content: "";
    height: 1px;
    width: 200px;
    background-color: #03304C;
    position: absolute;
    z-index: -5;
    transform: rotate(-25deg);
}

.title_bg {
    position: absolute;
    z-index: -5;
    left: 0;
    bottom: 0;
}

.inner_box {
    display: flex;
    justify-content: space-between;
    position: relative;
}

.breadcrumb ul {
    list-style-type: none;
    display: flex;
    margin: 0;
    padding: 20px 0 20px 10%;
}

.breadcrumb ul li:first-child:after {
    padding:0 20px;
    content: "\03e";
    font-weight: bold;
}

.sp_img {
    display: none;
}

.pc_br {
	display: block;
}

/*-- TOP --*/
#home .home_fvtext {
	display: block;
	height: 20px;
}

#home .sec1_bg {
    position: absolute;
    z-index: -5;
    width: 70%;
    height: 500px;
}

#home .sec1 .inner {
    display: flex;
    justify-content: space-between;
    position: relative;
}

#home .sec1 .left_cont p {
	font-size: 1.188rem;
}

#home .sec1 .right_cont {
    width: 40%;
	margin-top: 5px;
}

#home .sec1 .right_cont a {
    padding: 40px 10px;
	margin-top: 35px;
	border: 1px solid #03304C;
    background-color: #03304C;
    color: #fff;
    font-weight: 700;
    font-size: 1.5rem;
	line-height: 1.5;
    text-align: center;
    display: block;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}

#home .sec1 .right_cont a:hover {
	background-color: #fff;
	color: #03304C;
	border: 1px solid #03304C;
}

#home .sec1 .line {
    left: 20%;
    bottom: -50px;
}

#home .sec2 {
    position: relative;
    margin-bottom: 100px;
}

#home .sec2 .inner {
    position: relative;
}

#home .sec2 .title_bg {
    bottom: auto;
    top: 160px;
}

#home .sec2 h2 {
	padding-top: 159px;
}

#home .sec2 h3 {
	margin: 14px 0 56px;
}

#home .sec2 .left_cont {
    width: 417px;
}

#home .sec2 .left_cont .line {
    left: 60px;
    bottom: -50px;
}

#home .sec2 .right_cont {
    width: 50%;
    margin-left: 123px;
}

#home .sec2 .right_cont h3 {
	position: absolute;
	top: -80px;
	display: inline-block;
}

#home .sec2 .right_cont p {
	font-size: 1.188rem;
}

#home .sec2 .right_cont a {
    width: 60%;
    padding: 40px 10px;
    background-color: #F5DA76;
	border: 1px solid #F5DA76;
    font-weight: 700;
    font-size: 1.5rem;
    text-align: center;
    display: block;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
	margin-top: 30px;
}

#home .sec2 .right_cont a:hover {
	background-color: #fff;
	border: 1px solid #EFD572;
	color: #EFD572;
}


#home .sec2_bg {
    position: absolute;
    z-index: -5;
    top: 120px;
}

#home .sec2 .right_cont .line {
    width: 300px;
    height: 2px;
    right: -80px;
    bottom: 60px;
}



/*-- 会社案内 --*/
#company .breadcrumb {
    background-color: transparent;
}

#company .fv {
    background: url(https://hikaku-express.jp/wp-content/uploads/2025/04/company-fv.png) no-repeat 0 0 / cover;
}

#company section {
    background-color: rgba(245, 245, 245, 0.9);
}

#company .title_bg {
    z-index: 0;
}

#company .sec2 h2 {
	text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
    

#company .sec1, #company .sec3 h2, #company .sec4 h2 {
    text-align: center;
}

#company .sec1 h2:after, #company .sec3 h2:after, #company .sec4 h2:after {
    left: 50%;
    transform: translateX(-50%);
}

#company .sec1 {
    position: relative;
    padding-bottom: 100px;
}

#company .sec1 p {
    font-family: ta-fuga-fude, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: clamp(2rem, 0.308rem + 6.32vw, 6rem);
    margin: 10px;
}

#company .sec1 .title_bg:first-child {
    margin-top: 40px;
    width: 90%;
    left: 50%;
    transform: translateX(-50%);
    bottom: auto;
}

#company .sec1 .title_bg:last-child {
    width: 50%;
    z-index: 0;
    right: 0;
    left: auto;
    bottom: 100px;
}

#company .sec2 {
    background-color: #1B445D;
    padding: 100px 0px;
}

#company .sec2 .inner_box {
    margin-bottom: 300px;
}

#company .sec2 h2 {
    color: #fff;
    -webkit-text-stroke: 2px #2F536A;
    text-stroke: 2px #2F536A;
    position: relative;
    z-index: 1;
}

#company .sec2 h2:after {
    background-color: #fff;
}

#company .sec2 .right_cont {
    width: 60%;
    position: absolute;
    right: 0;
    z-index: 0;
    background-color: #fff;
    padding: 100px 80px;
}

#company .sec2 .right_cont p {
    width: 70%;
    margin: 0 auto;
	font-size: 1.188rem;
}

#company .sec2 .right_cont > p:first-child {
    margin-bottom: 30px;

}

#company .sec2 .right_cont p strong {
	font-weight: bold;
	font-size: 1.5rem;
}

#company .sec2 .right_cont div {
    text-align: right;
}

#company .sec2 .right_cont div p {
	line-height: 1.6;
}

#company .sec2 .line {
	background-color: #fff;
	z-index: 0;
	bottom: 0;
    left: 50%;
}

#company .sec2 .title_bg {
    width: 90%;
    left: 50%;
    transform: translateX(-50%);
    bottom: 60px;
}

#company .sec3 .title_bg {
    width: 90%;
    left: 0;
    bottom: auto;
    top: 60px;
}

#company .sec3 .title_bg.pc_img {
    width: 50%;
    left: 15%;
    transform: translateX(-10%);
    bottom: 0;
    top: auto;
}

#company .sec3 {
    padding-bottom: 40px;
}

#company .sec3 .inner_box {
    margin-top: 40px;
}

#company .sec3 .left_cont {
    width: 34%;
    align-content: center;
}

#company .sec3 .right_cont {
    width: 60%;
}

#company .sec3 table {
	border-collapse: collapse;
}

#company .sec3 table th {
    background-color: #1B445D;
    color: #fff;
    padding: 20px;
    border-bottom: 1px solid #979797;
	font-size: 1.25rem;
}

#company .sec3 table td {
    border-bottom: 1px solid #979797;
    padding: 20px;
}

#company .sec3 table td p {
    margin: 0;
}

#company .sec4_bg {
    position: relative;
}

#company .sec4_bgbox {
    position: absolute;
    top: -200px;
    overflow: hidden;
    z-index: 1;
}

#company .sec4_bgbox img {
    margin-top: 100px;
}

#company .sec4 {
    position: relative;
    z-index: 2;  
}

#company .sec4 .title_bg {
    width: 200px;
    top: 120px;
    left: auto;
    right: 0;
    z-index: 6;
}

#company .sec4 .inner_box {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
	padding: 60px 0;
}

#company .sec4 .inner_box div {
	width: 45%;
	margin-bottom: 60px;
}

#company .sec4 .inner_box .img_cont {
	height: 574px;
}

#company .sec4 .inner_box .text_cont {
    padding: 20px;
    background-color: rgba(255, 255, 255, 0.9);
    position: relative;
    z-index: 5;
    left: -10%;
    height: 476px;
	width: 50%;
}

#company .sec4 .inner_box .text_cont h3 {
	margin: 28px 0 10px;
}

#company .sec4 .inner_box .text_cont h4 {
	font-weight: bold;
	font-size: 1.188rem;
	margin-top: 16px;
}

#company .sec4 .inner_box .text_cont p {
	font-size: 1.188rem;
}

#company .sec4 .inner_box .text_cont:nth-child(4), #company .sec4 .inner_box .text_cont:nth-child(9) {
    left: 10%;
}

#company .sec4 .text_cont h4 {
	margin: 0;
}

#company .sec4 .text_cont h4 + p {
    margin: 0;
}

#company .sec5 {
    padding: 80px 0px;
}

#company .sec5 h2 {
    color: #fff;
    text-shadow: 1px 1px 0px #2F536A;
    position: relative;
    z-index: 1;
	padding-top: 168px;
}

#company .sec5 .title_bg {
    width: 70%;
    bottom: auto;
    left: auto;
    right: 10%;
    top: 40px;
}

#company .sec5 .inner_box {
    justify-content: center;
}

#company .sec5 .left_cont {
    z-index: 5;
    background-color: #F5F5F5;
    height: 485px;
    width: 371px;
	padding: 5px;
    margin: 40px;
}

#company .sec5 .left_cont p {
    border-top: 1px dashed #1B445D;
    padding: 12px 0 12px 10px;
}

#company .sec5 p .space_left {
	text-indent: -3.2em;
    padding-left: 3.2em; 
}


#company .sec5 .right_cont.map {
    margin-top: 40px;
    width: 100%;
    height: 0;
    position: relative;
    padding-top: 40%;
}

#company .sec5 .right_cont.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}



/*-- 採用情報 --*/
#recruit .fv {
    background: url(https://hikaku-express.jp/wp-content/uploads/2025/05/recruit-fv-scaled.jpg) no-repeat 0 0 / cover;
}

#recruit .fv_text_area h1 {
	font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
	letter-spacing: 0.05em;
}

#recruit .fv_text_area img {
    width: 50%;
    margin-left: 50%;
}

#recruit .breadcrumb {
    background-color: rgba(245, 245, 245, 0.9);
}

#recruit .breadcrumb li, #recruit .breadcrumb a {
	font-size: 0.875rem;
}

#recruit section {
    background-color: rgba(245, 245, 245, 0.9);
}

#recruit .sec1 {
	padding: 102px 0 32px;
}

#recruit .sec1 p {
    font-family: ta-fuga-fude, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: clamp(2.25rem, 1.933rem + 1.19vw, 3rem);
    margin: 0px;
    padding: 100px 0;
    text-align: center;
}

#recruit section h2 {
    text-align: center;
    color: #03304C;
}

#recruit section h2:after {
    display: none;
}

#recruit section {
    padding-bottom: 100px;
}

#recruit .sec2 {
	padding-bottom: 130px;
}

#recruit .sec2 h2 {
	padding-top: 244px;
}

#recruit .sec2 .title_bg {
    width: 50%;
    bottom: auto;
    left: auto;
    top: 220px;
    right: 0;
}

#recruit .sec2 .left_cont, #recruit .sec2 .right_cont {
    width: 45%;
}

#recruit .sec2 h3, #recruit .sec2 h4 {
    color: #CF2C1A;
    font-weight: bold;
}

#recruit .sec2 h3 {
    font-size: 4rem;
    margin: 0;
	line-height: 64px;
}

#recruit .sec2 h4 {
    font-size: 1.5rem;
	margin: 20px 0;
}

#recruit .sec2 .right_cont p {
	font-size: 1.125rem;
}

#recruit .sec2 .right_cont > div {
    text-align: right;
}

#recruit .sec2 .right_cont > div p {
    display: inline-block;
    text-align: left;
	font-size: 1.125rem;
	line-height: 1.6;
	margin-top: 26px;
}

#recruit .sec3 {
    background: url(https://hikaku-express.jp/wp-content/uploads/2025/04/recruit-recruit_bg.png) no-repeat 0 0 / cover;
    background-color: #EEEDED;
	padding-bottom: 120px;
}

#recruit .sec3 h2 {
	padding-top: 120px;
}

#recruit .sec3 .work_1, #recruit .sec3 .work_2, #recruit .sec3 .work_other {
    background-color: #fff;
    width: 80%;
    padding: 40px;
    margin: 0 auto;
    text-align: left;
}

#recruit .sec3 caption {
    font-size: 2rem;
    font-weight: bold;
    text-align: left;
	padding-bottom: 28px;
}

#recruit .sec3 table {
    border-collapse: collapse;
    width: 90%;
    margin: 0 auto;
}

#recruit .sec3 th, #recruit .sec3 td {
    padding: 10px;
	line-height: 1.7;
}

#recruit .sec3 td p {
	line-height: 1.7;	
}

#recruit .sec3 th {
    width: 20%;
	padding-left: 20px;
}

#recruit .sec3 tr {
    border-bottom: 2px solid #9F9F9F;
}

#recruit .sec3 .work_2 tr:first-child, #recruit .sec3 .work_other tr:first-child {
	border-top: 2px solid #9F9F9F;
}

#recruit .sec3 .work_2 tr:last-child, #recruit .sec3 .work_other tr:last-child {
	border-bottom: 0;
}

#recruit .sec4 {
	padding: 200px 0 139px;
}

#recruit .sec4 .title_bg {
    width: 30%;
    bottom: auto;
    left: auto;
    top: 280px;
    right: 0;
}

#recruit .sec4 table {
    border-collapse: collapse;
    width: 90%;
    margin: 22px auto;
    text-align: left;
	font-size: 1.25rem;
}

#recruit .sec4 th {
    background-color: #31566C;
    color: #fff;
    font-weight: bold;
    padding: 10px;
	font-size: 1.25rem;
}

#recruit .sec4 td {
    background-color: #fff;
    padding: 10px;
	font-size: 1.25rem;
}

#recruit .sec5 {
    background-color: #31566C;
	padding-bottom: 119px;
}

#recruit .sec5 .title_bg {
    width: 30%;
    bottom: auto;
    left: auto;
    top: 60px;
    right: 0;
    z-index: 0;
}

#recruit .sec5 h2 {
    color: #fff;
	padding: 60px 0;
}

#recruit .sec5 .inner_box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

#recruit .sec5 .step1, #recruit .sec5 .step2 {
    width: 45%;
    background-color: #fff;
    padding: 20px;
    position: relative;
    border: 2px solid #E9695B;
}

#recruit .sec5 .step3, #recruit .sec5 .step4, #recruit .sec5 .step5 {
    width: 28%;
    background-color: #fff;
    padding: 20px;
    position: relative;
    border: 2px solid #E9695B;
    margin-top: 3%;
}

#recruit .sec5 .number_bg {
    width: 213px;
    position: absolute;
    right: 0;
    top: 0;
	z-index: 0;
}

#recruit .sec5 h3 {
    color: #E9695B;
    font-weight: bold;
	margin-left: 60px;
	font-size: 3rem;
	letter-spacing: -0.05em;
	position: relative;
	z-index: 5;
}

#recruit .sec5 p {
    font-weight: bold;
	font-size: 1.188rem;
	margin: 0 50px 50px;
}

#recruit .contact h2 {
    text-align: left;
    position: relative;
}

#recruit .contact h2:after {
    content: "";
    width: 114px;
    height: 2px;
    background-color: #03304C;
    position: absolute;
    left: 0;
    bottom: 10px;
    display: block;
}

/*-- プライバシーポリシー --*/
#privacypolicy .fv_text_area h1 {
	font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

#privacypolicy .sec1 .inner {
	margin-bottom: 120px;
}

#privacypolicy .fv {
    background: #fff; 
}

#privacypolicy .fv .fv_text_area h1 {
	color: #333;
	-webkit-text-stroke: 2px #000;
	text-stroke: 2px #000;
	white-space: nowrap;
}

#privacypolicy .fv .fv_text_area {
	bottom: auto;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}

#privacypolicy .breadcrumb li, #privacypolicy .breadcrumb a {
	font-size: 0.875rem;
}

#privacypolicy .breadcrumb ul {
	padding-bottom: 120px;
}

#privacypolicy p, #privacypolicy li ul {
	list-style-type: disc;
	font-size: 1.25rem;
	font-weight: 500;
}

#privacypolicy p, #privacypolicy li ul li {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 500;
}

#privacypolicy ol > li {
	font-size: 1.25rem;
	font-weight: bold;
}

#privacypolicy li {
	margin-top: 20px;
}

@media (max-width: 1024px) {
    /*-- header --*/
    .header_pc {
        width: 100%;
    }
    .header_pc .logo img {
        width: 400px;
        height: auto;
    }
    .menu_pc ul a {
        padding: 33px 20px;
    }

    /*-- 問い合わせエリア --*/
	.wpcf7.js {
		padding-bottom: 15px;
	}
	.contact .inner {
		width:90%;
		margin: 0 auto;
	}
	
	.contact .inner h2 + p {
		font-weight: bold;
		margin: 50px 0 67px;
	}
	
	.contact .inner h2 {
		font-size: 3.5rem;
		padding-top: 120px;
	}
	
	.contact .inner h3 {
		margin-bottom: 47px;
		font-size: 1.8rem;
		word-break: keep-all;
	}
		
    .contact .title_bg {
        top: 200px;
    }

    .contact .inner_box {
        display: block;
        width: 100%!important;
    }
	
	.contact .inner_box .left_cont {
		margin-bottom: 30px;
	}
		
    .contact .right_cont {
        width: 100%;
    }

	.contact .right_cont .text_box {
		width: 80%;
		font-size: 1rem;
	}
	
	.contact .right_cont .text_box a {
		color: #fff!important;
	}
	
	.contact .text_box p:last-child {
		width: 50%;
    	margin: 0 auto;
	}
	
	.wpcf7.js form {
        width: 90%;
	}
	
	.wpcf7.js form .label_name {
		border-bottom: 1px solid #D6D6D6;
		border-right: 0;
		width: auto;
	}
		
	.wpcf7.js form .label_name:after {
		position: relative;
		left: 10px;
		top: 0;
	}	
	
	 .wpcf7.js form label {
		display: block;
		border-bottom: 1px solid #D6D6D6;
	}
	
	.wpcf7.js form input[type="text"], .wpcf7.js form input[type="email"], .wpcf7.js form input[type="tel"] {
		width: 80%;
	}

	.wpcf7.js form .texts {
		background-color: #F6F6F6;
	}
	
	.wpcf7.js form textarea {
		left: 10%;
        width: 80%;
	}

	.wpcf7.js form p.text_bottom {
		padding: 60px 0px 40px;
		font-size: 1.188rem;
	}

	#home .contact {
		background-color: #fff;
	}
	
	#wpcf7-f89-p2-o1, #wpcf7-f89-p2-o1 form p.text_bottom, #wpcf7-f89-p2-o1 form p:nth-child(10) {
		background-color: #fff!important;
	}
	
	.wpcf7.js form p:nth-child(6) .label_name:after, .wpcf7.js form p:nth-child(7) .label_name:after {
		bottom: 0;
	}
	
	
    /*-- 共通項目 --*/
	.fv .fv_text_area {
		left: 20px;
		bottom: 40px;	
	}
	
    .sp_img {
        display: block;
    }

    .pc_img {
        display: none!important;
    }

	/*-- TOP --*/
	#home .sec1 .right_cont {
		margin-top: auto;
	}
	
	#home .sec2 .right_cont .line {
		display: none;
	}
	
    /*-- 会社案内 --*/	
	#company .sec4_bgbox img:first-child {
        margin-top: 0;
    }

	#company .sec4 .inner_box div {
		width: 100%;
		height: auto!important;
	}
	
    #company .sec4_bgbox, #company .sec4_bgbox img {
        overflow: hidden;
    }

    #company .sec4_bgbox img {
        margin-top: 500px;
        height: 550px;
    }

    #company .sec4 .title_bg {
        top: 20px;
        width: 60px;
    }

	#company .sec4 h2 {
		font-size: 3.5rem;
	}
	
    #company .sec4 .inner_box .text_cont, #company .sec4 .inner_box .text_cont:nth-child(4), #company .sec4 .inner_box .text_cont:nth-child(9) {
        width: 100%;
        margin: 0px auto 108px;
        padding: 20px 10px;
        left: auto;
    }

	#company .sec4 .inner_box .text_cont:nth-child(9) {
		margin-bottom: 20px;
	}
	
	#company .sec4 .text_cont h3 + p {
		margin-bottom: 20px;
	}
	
	#company .sec4 .text_cont h4 + p {
		margin-bottom: 20px;
	}
	
    #company .sec4 .inner_box .img_cont {
        margin: 0px auto;
    }

	#company .sec5 {
		padding-top: 0;
	}
	
    /*-- 採用情報 --*/
    #recruit .fv_text_area img {
        width: 70%;
        margin-left: 30%;
    }

    #recruit .sec2 h2, #recruit .sec4 h2, #recruit .sec5 h2 {
        text-align: left;
        margin: 0 auto;
    }

    #recruit .sec2 .inner_box, #recruit .sec5 .inner_box {
        display: block;
    }

    #recruit .sec2 .inner_box > div, #recruit .sec5 .inner_box > div {
        width: 85%;
        margin: 20px auto;
    }

    #recruit .sec2 .title_bg {
        width: 90%;
        left: 5%;
        top: 100px;
    }
	
	#recruit .sec2 .inner_box > div, #recruit .sec5 .inner_box > div {
		width: 90%;
		margin: 0 auto 20px;
	}
	
	#recruit .sec2 .inner_box .right_cont h3 {
		font-size: 3rem;
		word-break: keep-all;
		position: relative;
		left: -2%;
		margin: 60px 0 30px;
		line-height: 64px;
	}
	
	#recruit .sec2 .inner_box .right_cont h4 {
		line-height: 31px;
	}
	
    #recruit .sec3 th {
        width: 40%;
    }

    #recruit .sec4 .title_bg {
        width: 40%;
        top: 80px;
        right: 10%;
    }
	
	
}


@media (max-width: 768px) {
    /*-- header --*/
    .header_pc, .menu_pc ul {
        display: none;
    }

    .header_sp {
        width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        vertical-align: middle;
    }

    .header_sp .logo {
        padding: 24px 18px 20px;
        width: 200px;
    }

    .header_sp .menu.recruit a {
        display: block;
        text-decoration: none;
        font-weight: bold;
        font-size: 1.125rem;
		letter-spacing: 0.02em;
        background-color: #F5DA76;
		width: 121px;
		height: 51px;
		text-align: center;
		padding-top: 20px;
    }

    .hamburger {
        display: block;
    }

    .hamburger_btn {  
        display: flex;
        position: relative;
        top: 10px;
        width: 60px;
        height: 50px;
        flex-direction: column;
        justify-content: space-between;
        cursor: pointer;
        z-index: 300;
        background: none;
        border: none;
        padding: 20px;
    }

    .hamburger-line {
        display: block;
        width: 100%;
        height: 2px;
        background-color: #333;
        transition: transform 0.3s, opacity 0.3s;
    }

    .hamburger_btn.active .hamburger-line:nth-child(1) {
        transform: translateY(2px) rotate(45deg);
    }
        
    .hamburger_btn.active .hamburger-line:nth-child(2) {
        opacity: 0;
    }
        
    .hamburger_btn.active .hamburger-line:nth-child(3) {
        transform: translateY(-6px) rotate(-45deg);
    }
        
    .menu_sp {
        visibility: hidden;
        opacity: 0;
    }

    .menu_sp.active {
        visibility: visible;
        opacity: 1;
        display: block;
        background-color: rgb(248, 248, 248, 0.9);
        width: 100vw;
        height: 100vh;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 10;
        padding-top: 100px;
    }

    .menu_sp.active ul {
        text-align: center;
    }

    .menu_sp.active li {
        margin: 20px auto;
    }

    .menu_sp.active a {
        display: block;
        text-decoration: none;
        font-weight: 500;
        font-size: 1.125rem;
        padding: 20px;
    }

    /*-- footer --*/
	footer.wp-block-template-part {
		margin-top: 120px;
	}
	
    footer {
        background: url(http://hikaku-express.jp/wp-content/uploads/2025/05/footer_bg_sp.png) no-repeat 0 0 / cover;
		padding: 10px;
    }

    .ft_top, .ft_bottom {
        width: 100%;
    }

    footer .ft_top, footer .ft_top .menu_pc ul {
        display: block;
    }

    footer .ft_top .menu_pc {
        text-align: left;
    }

    .ft_top .right_cont a {
        margin: 0;
        padding-left: 0;
		font-size: 1.125rem;
    }

    .ft_top .right_cont .recruit a {
        margin-top: 20px;
        padding-left: 20px;
    }

    .ft_bottom {
        display: block;
    }

    .ft_bottom .right_cont {
        text-align: left;
    }

	footer .ft_bottom .right_cont p:last-child {
		font-size: 0.9rem;
	}
	
    /*-- 問い合わせエリア --*/
	.wpcf7.js {
		padding-bottom: 130px;	
	}
	
	.contact .title_bg {
        top: 190px;
    }

	.contact .right_cont {
		margin: 30px auto 60px;
	}
	
	.contact .right_cont .text_box {
		width: 60%;
	}	
	
	.contact .text_box p:last-child {
		width: 100%;
		white-space: wrap;
	}
	
	.contact .right_cont + h3 {
		margin: 60px 0 30px;
	}
	
	.wpcf7.js form .label_name {
		height: 50px;
		padding: 20px 14px 0;
	}
	
	.wpcf7.js form .label_name + br {
		display: none;
	}
	
	.wpcf7.js form input[type="text"], .wpcf7.js form input[type="email"], .wpcf7.js form input[type="tel"] {
		width: 90%;
        height: 50px;
        margin: 10px auto;
	}
	
	.wpcf7.js form p:nth-child(6) .label_name, .wpcf7.js form p:nth-child(7) .label_name {
		height: 50px;
		padding: 20px 14px 0;		
	}
	
	.wpcf7.js form textarea {
		margin: 20px auto 30px;
		width: 90%;
		left: 17px;
	}
	
	.wpcf7.js form p.text_bottom {
		padding: 36px 0 30px;
	}
	
	.wpcf7.js form .btn_box svg {
		right: 34px;
	}
	
    /*-- 共通項目 --*/
    .sp_br {
        display: block;
    }

    .pc_only {
        display: none;
    }

	.pc_br {
		display: none;
	}
	
	.breadcrumb ul {
		padding-left: 5%;
	}
	
    .fv {
        background: url(https://hikaku-express.jp/wp-content/uploads/2025/05/fv_sp.jpg) no-repeat 0 0 / cover;
    }

    .fv .fv_text_area h1 {
        margin: 0;
		font-size: 2.2rem;
		line-height: 1;
		letter-spacing: 0.03em;
	}

    .fv .fv_text_area .text_en {
        font-size: 1.5rem;
		line-height: 1.4;
		letter-spacing: 0em;
    }

	section h2 {
		padding: 180px 0 20px;
		margin-bottom: 30px;
	}
	
	section h3 {
		font-size: 1.5rem;
	}
	
    /*-- TOP --*/
    #home .inner_box {
        display: block;
        width: 90%;
        margin: 0 auto;
    }

	#home .fv .fv_text_area h1 {
		letter-spacing: 0.05em;
	}
	
	#home .home_fvtext {
		display: block;
		height: 10px;
	}
	
    #home .sec1 .inner {
        display: block;
        width: 90%;
        margin: 0 auto;
    }

    #home .sec1 .left_cont .title_bg {
        bottom: auto;
        top: 370px;
    }

    #home .sec1 .right_cont {
        width: 100%;
    }

	#home .sec1 .line {
		left: auto;
		right: 10px;
		bottom: -100px;
	}
	
	#home .sec2 {
		margin: 40px 0 0;
	}
	
	#home .sec2 .inner {
		width: 90%;
	}
	
    #home .sec2 .title_bg {
        top: 310px;
    }
	
	#home .sec2 .inner_box {
		width: 100%;
	}
	
    #home .sec2 .left_cont, #home .sec2 .right_cont {
        width: 100%;
    }

	#home .sec2 .right_cont h3 {
		line-height: 1.5;
		margin: 30px 0;
		position: relative;
		top: auto;
		left: 40px;
	}
	
	#home .sec2 .right_cont {
		margin-left: 0;
	}
	
    #home .sec2 .right_cont > div a {
        margin: 80px auto;
		width: 90%;
		opacity: 0.9;
		line-height: 1.5;
    }

    #home .sec2_bg {
        top: auto;
        bottom: 20px;
    }

    #home .sec2 .right_cont .line {
		display: block;
        bottom: 200px;
        width: 94px;
        height: 1px;
		right: 59px;
    }
	
	#home .sec2 h3 {
		margin: 0 0 30px;
	}
	
	#home .sec2 .right_cont p {
		letter-spacing: 0.03em;
	}
	
	#home .contact h2 {
		padding-top: 40px;
	}
	
	#home .contact .title_bg {
		top: 100px;
	}
	
    /*-- 会社案内 --*/    
    #company .sp_br {
        display: block;
    }
	
	#company section h2 {
		margin-bottom: 40px;
	}
	
	#company .fv {
        background: url(https://hikaku-express.jp/wp-content/uploads/2025/04/company-fv_sp.png) no-repeat 0 0 / cover!important;
    }
	
	#company .fv .fv_text_area h1 {
		font-size: 2.2rem;
		line-height: 1.5;
	}
	
    #company .title_bg {
        margin-top: 100px!important;
    }
	
	#company .inner_box {
        display: block;
        width: 90%;
        margin: 0 auto;
    }

    #company .inner {
        display: block;
        width: 90%;
        margin: 0 auto;
    }
	
	#company section h2 {
		padding-top: 110px;
	}
		
	#company .sec1 .title_bg:first-child {
		top: 100px;
	}
	
    #company .sec2 .inner_box, #company .sec3 .inner_box, #company .sec4 .inner_box, #company .sec5 .inner_box {
        display: block;
        width: 95%;
        margin: 0 auto;
    }
	
    #company .sec2 {
        padding: 0px 0px 60px;
    }
	
	#company .sec2 h2 {
		padding-top: 60px;
	}
	
	#company .sec2 .title_bg {
		bottom: 80px;
	}
	
	#company .sec2 .line {
		background-color: #fff;
		z-index: 0;
		bottom: 0;
		left: 40px;		
	}

    #company .left_cont, #company .right_cont, 
    #company .sec2 .right_cont p, #company .sec3 .left_cont,
    #company .sec3 .right_cont, #company .sec3 table, #company .sec3 table tbody, #company .sec3 table tr,
    #company .sec3 table th, #company .sec3 table td, #company .sec4 .inner_box div {
        display: block;
        width: 100%;
    }

    #company .sec2 .inner_box {
        margin-bottom: 515px;
    }

    #company .sec2 .right_cont {
        padding: 5%;
        width: 90%;
        right: auto;
		
    }
	
	#company .sec2 .right_cont p strong {
		font-size: 1.3rem;
	}
	
	#company .sec3 h2 {
		text-align: left;
		padding-top: 120px;
	}
	
	#company .sec3 h2:after {
		left: 0;
		transform: none;
	}

    #company .sec3 .title_bg {
        top: 140px;
    }
	
	#company .sec3 table th {
		font-size: 1.5rem;
	}

	#company .sec3 table td {
		line-height: 1.7;
		letter-spacing: 0.02em;
	}
	
    #company .sec3 .left_cont img:first-child {
        padding-bottom: 58px;
    }

    #company .sec3 .left_cont .title_bg.sp_img {
        top: 330px;
        margin-top: 0 !important;
    }

    #company .sec3 table th, #company .sec3 table td {
        display: block;
        width: 90%;
        margin: 0 auto;
		text-align: left;
		border: 0;
    }

	#company .sec4_bgbox img {
		margin-top: 600px;
	}
	
	#company .sec4_bgbox img:first-child {
		margin-top: 100px;
	}

	#company .sec4 .inner_box .text_cont, #company .sec4 .inner_box .text_cont:nth-child(4), #company .sec4 .inner_box .text_cont:nth-child(9) {
		width: 95%;
	}
	
    #company .sec5 {
        padding: 0px 0px 40px;
    }

	#company .sec5 h2 {
		padding-top: 118px;
	}
	
	#company .sec5 .title_bg {
		top: 0;
		left: 5%;
	}
	
    #company .sec5 .left_cont {
        width: 95%;
        margin: 40px auto;
        padding: 5px 10px;
		position: relative;
    }
    
    #company .sec5 .right_cont.map {
        padding-top: 50%;
    }

    #company .contact .title_bg {
        margin-top: 0!important;
    }	
    /*-- 採用情報 --*/
	#recruit .breadcrumb {
		padding-bottom: 120px;
	}
	
    #recruit .fv {
        background: url(https://hikaku-express.jp/wp-content/uploads/2025/05/recruit-fv_sp.jpg) no-repeat 0 0 / cover!important;
    }
	
	#recruit .fv .fv_text_area {
		bottom: 0;
	}
	
	#recruit .fv .fv_text_area h1 {
		font-size: 2.2rem;
		line-height: 1.5;
	}
	
    #recruit .fv_text_area img {
        width: 100%;
        margin-left: 0;
    }

	#recruit .inner_box {
        display: block;
        width: 90%;
        margin: 0 auto;
    }

    #recruit .inner {
        display: block;
        width: 90%;
        margin: 0 auto;
    }
	
	#recruit .sec1 {
		padding: 20px 0 120px;
	}
	
	#recruit .sec2 h2 {
		padding-top: 0;
		line-height: 75px;
	}
	
	#recruit .sec2 .inner_box, #recruit .sec2 .left_cont, #recruit .sec2 .right_cont {
		width: 100%!important;
	}
	
	#recruit .sec3 .work_1, #recruit .sec3 .work_2, #recruit .sec3 .work_other {
		width: 100%;
        padding: 5% 0;
        margin: 0;
	}
	
	#recruit .sec3 {
		font-size: 1.6rem;
		padding-bottom: 135px;
	}
	
	#recruit .sec3 caption {
    	font-size: 1.5rem;
	}
	
	#recruit .sec3 tr:last-child {
		border: 0;
	}
	
	#recruit .sec3 th, #recruit .sec3 td {
		padding: 20px 0;
		font-size: 1.0rem;
	}
 
	#recruit .sec3 th {
		vertical-align: top;
	}
	
	#recruit .sec4 h2 {
		word-break: keep-all;
		font-size: 3.6rem;
	}
	
	#recruit .sec4 .title_bg {
		width: 50%;
        top: 250px;
        right: 0;
	}
	
	#recruit .sec4 {
		padding: 0 0 210px;
	}
	
	#recruit .sec4 table {
		width: 100%;
		margin-bottom: 30px;
	}
	
	#recruit .sec5 {
		padding-bottom: 60px;
	}

	#recruit .sec5 .inner_box {
		width: 100%;
	}
	
	#recruit .sec5 h2 {
		padding: 60px 0 72px;
	}
	
	#recruit .sec5 .title_bg {
		width: 50%;
        top: 180px;
        right: 0;
	}
	
	#recruit .sec5 .step1, #recruit .sec5 .step2, #recruit .sec5 .step3, #recruit .sec5 .step4 {
		margin-bottom: 60px!important;
	}
	
	#recruit .sec5 h3 {
		margin-left: 10px;
	}
	
	#recruit .sec5 div p {
		line-height: 1.7;
		margin: 0 10px 10px;
	}
	
	#recruit .sec5 .inner_box > div {
		padding: 17px;
	}
	
	#recruit .sec5 .number_bg {
		width: 174px;
	}
	
	/*-- プライバシーポリシー --*/
	#privacypolicy .fv .fv_text_area h1 {
		/*font-size: 2.5rem; 改行される*/
		-webkit-text-stroke: 0;
		text-stroke: 0;
	}
	
	#privacypolicy .sec1 .inner {
		width: 90%;
	}
	
	#privacypolicy ol, #privacypolicy ol li p {
		padding-left: 0;
	}
	
	#privacypolicy ol li {
		list-style-position: inside;
		margin-top: 40px;
	}
	
	#privacypolicy ol li ul {
		padding-left: 1em;		
	}
	
	#privacypolicy ol li ul li {
		list-style-position: outside;
		margin-top: 0;
	}
}



@media (max-width: 430px) {
	.contact .right_cont .text_box {
		width: 95%;
	}

	
	::-webkit-full-page-media, :future, :root .wpcf7.js form textarea {
  		left: 5px;
	}

	
}

