@charset "utf-8";
/*!
Theme Name: ikarifarm
Version: 0.0.1
*/

/* Don't overwrite this file. Compile "/assets/main.scss" to "/assets/dist/main.css" */
/* From http://codex.wordpress.org/CSS */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');
html { overflow-x: hidden; }
body { 
  -webkit-text-size-adjust: 100%;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  margin: 0;
  overflow: hidden;
  color: #333;
}
body.modal-open { padding-right: 0px !important; }
h1,h2,h3,h4,h5,h6 { margin-bottom: 0!important; }
#main { margin-top: 0; }
img { user-drag: none; -webkit-user-drag: none; -moz-user-select: none; }
.container, .container-lg, .container-md, .container-sm { max-width: 1120px!important; }
.container-full { width: 100%; position: relative; }
.container.single-wrap,.container.archive-wrap { background: #fff; margin-top: 0; min-height: 50vh; }
.row { padding-left: 0; padding-right: 0; }
.single-wrap h2,.single-wrap h3,.single-wrap h4,.single-wrap h5,.single-wrap h6 { font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-style: normal; font-weight: 400; }
.single-wrap h2 { font-weight: 500; position: relative; display: inline-block; margin-bottom: 1.5rem!important; }
.single-wrap h2::before {
  content: '';
  position: absolute;
  bottom: -5px;
  width: 6.0rem;
  height: 2px;
  background-color: #f39700;
}
.single-wrap h3 { background: #f39700; color:#fff; margin-bottom: 10px!important; display: inline-block; padding: 7px 30px; }
.single-wrap h4 { margin-bottom: 8px!important; border-bottom: 2px dashed #f39700; display: inline-block; padding: 8px 20px; }
.single-wrap h5 { margin-bottom: 8px!important; border-bottom: 1px solid #f39700; padding-bottom: 6px; }
.single-wrap h5::before { font-family: "Font Awesome 6 Free"; content: "\f138"; font-weight: 700; color:#f39700; margin-right: 0.5rem; }
.single-wrap h6 { margin-bottom: 8px!important; border-left: 4px solid #f39700; border-right: 4px solid #f39700; padding: 6px; display: inline-block; }
.post-date { background: #f39700; color: #fff; border-radius: 25px; padding: 4px 16px; display: inline-block; margin-bottom: 20px; }
.post-date::before { content: '\f133'; font-family: 'Font Awesome 6 Free'; font-weight: 900; padding-right: 6px; }

/* 共通パーツ */
.topBtn {
		opacity: 0;
		position: fixed;
		bottom: 70px;
		right: 15px;
		background: #fff;
		color: #f39700;
		width: 50px;
		height: 50px;
		border: 2.5px solid #f39700;
		border-radius: 50%;
		text-align: center;
		z-index: 9999;
		font-size: 2.0rem;
}
.topBtn:hover { transition: 0.8s; }
.font300 { font-weight: 300; }
.font400 { font-weight: 400; }
.font500 { font-weight: 500; }
.font700 { font-weight: 700; }
.fontS { font-size: 75% !important; }
.gothic { font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }
.fs-6 { font-size: 0.8rem!important; }
.mt-5 { margin-top: 3.0rem; }
.mt-10 { margin-top: 5.0rem; }
.bold { font-weight: 700!important; }
.icon i { margin-right: 4px; }
.w100 { width: 100%; }
.w290 { min-width: 290px; }
.h100 { height: 100%; }
.no-wrap { white-space: nowrap; }
.download-bt a { display: inline-block; color: #fff; background: #dc143c; padding:1.0rem 3.0rem; border-radius: 6px; }
.download-bt a:hover { background: #db8495; transition: 0.8s; color: #dc143c; }
.gyou-1 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; }
.gyou-2 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.gyou-3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.g-base { display: grid; grid-template-areas: "all"; justify-items: center; align-items: start; position: relative; }
.p-base { position: relative; }
.mt-8 { margin-top:3.0rem!important; }
.text-wrap-01 { font-size: 0.9rem; padding: 0.3rem; }
.text-vwrap { line-height: 2.0rem; }
.text-space { letter-spacing: 0.5rem; }
.text-stroke { -webkit-text-stroke: 5px #fff; text-stroke: 5px #fff; paint-order: stroke; }
.red { color: #dc143c; }
.green { color: #5A7800; }
.white { color: #fff; }
.blue { color: #f39700; }
.black { color: #333; }
.orange { color: #f39700; }
.grad-orange { background-image: linear-gradient(90deg, rgba(243, 151, 0, 0), rgba(243, 151, 0, 0.75) 23% 77%, rgba(243, 151, 0, 0)); }
.img100 { width:100%; height: auto; }
.over-img { overflow: hidden; }
.over-img img { height: 100%; width: 100%; object-fit: cover; }
.v-center { display:flex; align-items:center; }
.vh-center { display:flex; align-items:center; justify-content:center; }
.v-top { vertical-align: top; }
.v-bottom { vertical-align: bottom; }
.full-width { margin: 0 calc(50% - 50vw); }
.zoom-over:hover { transform:scale(1.1,1.1); transition:1s all; }
.shadow { box-shadow: 0 .15rem .5rem rgba(0, 0, 0, .5) !important; }
.t-shadow { text-shadow: 2px 2px #cce9ff; }
.blur{
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
}
.border-a { border-left: 6px solid #d8d8d8; padding-left:0.6rem; }
.border-b { border-left: 6px solid #f39700; padding-left:0.6rem; }
.nowrap { white-space: nowrap; }
.not-found { padding: 22% 0; }
.not-found p:first-of-type { font-size: 2.1rem; }
.not-found a { background: #0d6efd; color: #fff; padding: 10px 40px; border-radius: 10px; }
a.pdf:before { content: '\f1c1'; font-family: 'Font Awesome 6 Free'; font-weight: 900; padding-right: 6px; } 
.over-text { overflow: hidden; white-space: nowrap; width: 100%; text-overflow: ellipsis; }
.not-page { min-height: 60vh!important; }
.zoom-img { position: relative; }
.zoom-img::after { position: absolute; content: '\f00e'; font-family: 'Font Awesome 6 Free'; font-weight: 900; color: rgb(255, 255, 255, 0.5); bottom: 4px; left: 8px; }
.h-filter { transition: filter 0.8s ease; }
.h-filter:hover { filter: saturate(400%); }

/* Googlemap */
.gmap { width: 100%; height: 300px; position: relative; padding: 0; overflow: hidden; }
.gmap iframe { height: calc(100% + 300px); width: 100%; margin-top: -150px; vertical-align: bottom;}

.fadein {
	opacity: 0;
	animation-name: fadein;
	animation-duration: 1.5s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
	animation-delay: 0.5s;
}
@keyframes fadein {
  0% {
     opacity: 0;
     transform: translateY(0);
  }
  100% {
     opacity: 1;
     transform: translateY(20px);
  }
}

	/* パンくずリスト */
.breadcrumbs { margin-bottom: 0; }
.breadcrumbs-wrap { background: #fff; padding-top: 15px; }
.breadcrumbs-home { margin-right: 0.6rem; }
ul.breadcrumbs { display: flex; flex-wrap: wrap; list-style: none; padding:0; }
ul.breadcrumbs li:not(:last-child)::after { content: "＞"; margin: 0 .6em; }
ul.breadcrumbs li a { color: #f39700; }

/* ページネーション */
.pagination { display: flex; justify-content: center; margin-top:60px; }
.page-numbers { font-size: 1.3rem; }
a.page-numbers,.page-numbers.current {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 36px;
		height: 36px;
		border-radius: 50%;
		background-color: #045eb8;
		color: #fff;
		text-align: center;
		font-size: 15px;
		font-weight: bold;
}
.page-numbers.current { background: #d8d8d8; color: #333; }

/* ポストナビゲーション */
.container .post-navigation { padding-bottom: 20px; }
.post-navigation a { font-size: 1.6rem; background: #f39700; color:#fff; border: 2px solid #f39700; padding: 0 1.2rem; border-radius: 6px; }
.post-navigation a:hover { background: #fff; color:#f39700; border: 2px solid #f39700; transition: 0.4s; }

/* ヘッダベース */
.hero-wrap,.recruit-hero-wrap { position: relative; height: 100%; }
.recruit-hero-wrap { height: 100vh; background-image: url(../../image/recruit/hero_bg.jpg); background-position: center; background-repeat: no-repeat; background-size: cover; }
.container { position: relative; height: 100%; }
.header-logo-wrap { position: absolute; left: 30px; top: 30px;}
.header-logo-wrap h1 { line-height: 1.0rem; }
.hero-catch { position:absolute; top: 220px; width: 100%; }
.recruit-hero-catch { position:absolute; top: 100px; width: 100%; }
.recruit-hero-caption { position:absolute; bottom: -90px; width: 100%; }

/* ヘッダーナビ */
.navbar { position: absolute; width: 100%; top: 0; padding: 0; }
.navbar-bt-top,.navbar-bt { position: fixed; right: 0; top: 0; z-index:99; }
.navbar-toggler {
		position: relative;
		width: 70px;
		height: 70px;
		background: #f39700;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 12px;
}
.btn-close { font-size: 1.8rem; margin-top:20px; }
/* メニューアイコン ここから */
:root{--d:0.4s}
#toggle-icon-wrap{cursor:pointer}
#toggle-icon-wrap svg, #toggle-icon-wrap svg *{pointer-events:none}
.a,.b{
  transition:opacity 0s calc(var(--d)/2), transform var(--d);
  transform-box:view-box; transform-origin:50% 50%;
}
.a{opacity:1; transform:rotate(0) scale(1)}
.b{opacity:0; transform:rotate(90deg) scale(.6)}
#menu-icon.state .a{opacity:0; transform:rotate(-90deg) scale(.6)}
#menu-icon.state .b{opacity:1; transform:rotate(0) scale(1)}
/* メニューアイコン ここまで */
.offcanvas-header { margin-top: 10px; }
.offcanvas { background: rgb(243, 151, 0); }
.offcanvas-body::-webkit-scrollbar { display:none; }
.offcanvas-body { scrollbar-width: none; -ms-overflow-style: none; }
.offcanvas-body li,.offcanvas-body a { color: #fff; font-size: 1.25rem; padding: 0.35rem 0; }
.offcanvas-body a:hover { padding-left: 8px; border-bottom :1px solid #fff; transition: 0.8s; }
.offcanvas-backdrop { height: 100%; }
.offcanvas-header .btn-close { margin-left: 0; }
.award-h { position: fixed; top: 0; right: 70px; height: 70px; }


/* スライダー */
.slide-wrap { position: absolute; top: 0; z-index: -3; height: 100vh; }
.splide__track,.splide__list,.splide__slide { height: 100%; }
.splide__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	/* filter: brightness(95%) blur(3px); */
}
.splide__slide img { transition: 8s ease-out; }
.splide__slide.is-active img { transform: scale(1.15); transition-delay: 0s; }
.side-icon {
	position: fixed;
	top: 300px;
	right: 0;
	background: #fff;
	width: 70px;
	border-radius: 10px 0 0 10px;
	z-index: 99;
	padding: 14px;
	box-shadow: 0px 0px 15px -5px #777777;
}
.side-icon a img { padding: 0.15rem; }
.side-icon a img:hover { transform: scale(1.2); transition: 0.8s; }

.bottom-icon { position: fixed; bottom: 0; background: #f39700; z-index: 99; width: 100%; padding: 6px 0; }
.bottom-icon a { color: #fff; }
.bottom-icon img { width: 45px; }
.border-R { border-right: 2px solid #fff; }

/* スマホ用 bottom-icon：先頭では隠し、スクロールで下から表示 */
.bottom-icon.d-md-none {
    transform: translateY(100%);
    transition: transform 0.25s ease-out;
    visibility: visible;
}
.bottom-icon.d-md-none.is-visible {
    transform: translateY(0);
}


/* フロント info */
#info-front { margin-top: 2.0rem; }
.info-title h2 { font-size: 1.3rem; }
.info-link-archive a { position: absolute; bottom: 0; right: 1.0rem; border: 1px solid #f39700; padding: 0.2rem 3.0rem; border-radius: 50px; color: #333; }
.info-link-archive a::after { font-family: "Font Awesome 6 Free"; content: "\f178"; font-weight: 700; color: #f39700; margin-left:0.5rem; }
.info-item { border-top: 1px solid #333; padding: 1.0rem; }
.info-item:last-child { border-bottom: 1px solid #333; }
.info-item a { color: #333; }
.info-empty { text-align: center; padding: 15% 0; }
.info-link-body {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
}
.info-link-warp {
    display: flex;
    align-items: center;
    gap: .5rem;
}
.info-date {
    flex-shrink: 0;
}
.info-link-warp > a {
    display: block;
    flex: 1 1 0;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;  
    text-overflow: ellipsis;
}


/* フロントセクション01 */
#section01 {
	margin-top: 2.0rem;
	background: 
	linear-gradient(
		180deg,
		rgba(255, 255, 255, 1) 0%, 
		rgba(255, 255, 255, 0.7) 30%, 
		rgba(255, 255, 255, 0.7) 90%, 
		rgba(255, 255, 255, 1) 100%
	),
	url(../../image/section01_bg.jpg);
	background-size: cover;
	background-position: bottom;
	background-repeat: no-repeat;
	margin-bottom: -1px;
}
#section01 .g-base > .img-block { grid-area: all; width: 100%; height: auto; object-fit: cover; }
h2.section01-top-item { grid-area: all; align-self: start; z-index: 1; color: #fff; padding: .5rem 10rem; font-size: 1.8rem; }
.section01-bottom-item { grid-area: all; align-self: start; z-index: 1; font-size: 2rem; color: #f39700; margin-top: 4rem; margin-top: 10%; }
.section01-caption {
	grid-area: all;
	z-index: 1;
	width: 90%;
	/* 位置調整 */
	align-self: start;
	margin-top: 58%; /* 画像高さの真ん中〜下位置（50〜70% 調整可） */
	transform: translateY(-20%);
	padding: 1rem;
}
.bottom-item-title {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	background: rgb(243, 151, 0, 0.7);
	color: #fff;
	font-size: 1.3rem;
	line-height: 1.65rem;
}

/* フロントセクション02 */
#section02 { margin-top:2.0rem; }
.section02-item-wrap { padding: 1.5rem 0.5rem 0.5rem; background: linear-gradient(to bottom, #fcf3cb 0%, #fcf3cb 55%, #e8dda4 45%, #e8dda4 100%);}
h2.section02-top-item { position: absolute; top: 0; left: 0; color: #fff; background: linear-gradient(90deg,rgba(243, 151, 0, 0.7) 0%, rgba(243, 151, 0, 0.7) 70%, rgba(243, 151, 0, 0) 100%); font-size: 1.3rem; width: 50%; }
.section02-item-title span:first-child { font-size: 1.3rem; line-height: 2.5rem; }
.section02-item-title span:last-child { color: #937e28; }
.section02-item-wrap img { padding-left: 0rem; padding-right: 1.0rem; }
.section02-item-body {  }

/* フロントセクション03 */
#section03 { margin-top:2.0rem; padding-bottom: 2.0rem; }
#section03 {
	background: 
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 1) 0%,
			rgba(255, 255, 255, 0.7) 100%
		),
		url(../../image/section03_bg.jpg);
	background-size: cover;
	background-position: bottom;
	background-repeat: no-repeat;
}
.section03-top-item-wrap { background: #fee2ab; padding: 1.5rem 0; }
.section03-top-item-inner { border-top: 2px solid #fff; border-bottom: 2px solid #fff; padding: 0.8rem 0; }
.section03-top-item-inner h2 { font-size: 1.5rem; }
.section03-bottom-item-wrap { border: 2px solid #f39700; background: rgb(255, 255, 255, 0.5); }
.section03-item-title div:not(:last-child) { background: #f39700; color: #fff; font-size: 1.3rem; }
.section03-item-image {
	aspect-ratio: 4/3;
	overflow: hidden;
	text-align: center;
}
.section03-item-image img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }

.link-contact a { padding: 0.5rem 6.0rem; border:2.5px solid #f39700; border-radius: 15px; color: #333; background: #fcf3cb; font-size: 1.3rem; }
.link-detail { padding: 0.8rem 0; }
.link-detail a { padding: 0.8rem 3.0rem; border-radius: 50px; color: #333; background: #fcf3cb; }
.link-detail a::after { font-family: "Font Awesome 6 Free"; content: "\f178"; font-weight: 700; color: #f39700; margin-left:0.5rem; }


/* フロントセクション04 */
#section04 { margin-top:2.0rem; }
.section04-top-item-wrap {
	background-image: url(../../image/dotted_bg.png);
	background-size: contain;
	background-repeat: repeat-x;
	padding: 0.5rem 0;
}
.section04-top-item-inner h2 { font-size: 1.3rem; }
.link-shop-list { padding: 2.5rem 0 2.0rem 0; }
.link-shop-list a { padding: 1.0rem 6.0rem; border-radius: 20px; color: #f39700; background: #fee2ab; font-size: 1.3rem; }
.link-shop-list img { margin-right: 1.0rem; }
.link-shop-list a::after { font-family: "Font Awesome 6 Free"; content: "\f178"; font-weight: 700; color: #f39700; margin-left:0.5rem; }
.section04-bottom-item h3 { font-size: 1.3rem; }
.section04-bottom-item h3::before { font-family: "Font Awesome 6 Free"; content: "\f111"; font-weight: 700; color: #f39700; margin-right:0.5rem; }
.section04-bottom-item h3::after { font-family: "Font Awesome 6 Free"; content: "\f111"; font-weight: 700; color: #f39700; margin-left:0.5rem; }

/* おちゃのこネット商品出力調整 */
.product_item_thumb { overflow: hidden; aspect-ratio: 1/1;}
.product_item_thumb img { object-fit: cover; height: 100%; width: 100%; }
.product_item_thumb img:hover { transform:scale(1.1,1.1); transition: 1.0s; }
.product_item_name a { color: #333; }
.product_item_price { color: red; font-weight: 700; }

/* フロントセクション06 */
#section05 { margin-top:4.0rem; padding-bottom: 1.0rem; }
#section05 { background: linear-gradient(90deg, rgba(243, 151, 0, 1) 0%, rgba(254, 226, 171, 1) 100%); }
#section05 h2 { font-size: 1.75rem; color: #fff; text-align: center; margin:0; padding:0; }
#section05 .col-md-6 img {
  position: relative;
  z-index: 2;
  border: 4px solid #fff;
}
.bg-full {
  position: relative;
  z-index: 1;
}
.bg-full::before {
  content: "";
  position: absolute;
  top: 0; left: 100%;
  width: 300vw;
  height: 100%;
  background: rgba(255, 255, 255, 0.7);
  transform: translateX(-50%);
  z-index: -1;
}
.recruit-link { padding-top: 2.0rem; }
.recruit-link a { padding: 1.0rem 3.5rem; border-radius: 50px; color: #f39700; background: #fcf3cb; outline: 1px solid #f39700; outline-offset: -10px; }

/* リクルートページ */
.recruit-entry-bt-wrap { margin-top: 110px; text-align: center; }
.recruit-entry-bt-wrap a {
  background-image: repeating-linear-gradient(-45deg, #e18b00, #e18b00 5px, #f39700 5px, #f39700 10px);
  padding: 1.2rem 4.0rem;
  display: inline-flex;
  align-items: center;
  color: #fff;
  font-size: 1.25rem;
}
.recruit-entry-bt-wrap i { margin-left:1.0rem; font-size: 2.0rem; }
#recruit-field {
	margin-top: 2.0rem;
	padding: 30px 0;
	background-image: url(../../image/recruit/field_bg.svg);
	background-size: 100px;
	background-position: top center;
}
.field-head { 
	text-align: center;
	margin-bottom: 30px;
	background-image: url(../../image/recruit/field_line_bg.png);
	background-size: 2px;
	background-position: center;
	background-repeat: repeat-x;
}
.field-head img { max-width: 600px; }
.field-image-wrap { padding: 0 10px 10px 0; }
.field-image-wrap img { box-shadow: 10px 10px 0 0 #f39700; border: 2px solid #f39700; }

#recruit-fellow { margin-top: 2.0rem; }
.fellow-head { text-align: center; margin-bottom:30px; }
.fellow-head img { max-width: 380px; }
.fellow-wrap { border: 2px solid #f39700; border-radius: 8px; background: linear-gradient(to bottom, transparent 50%, #fce2c1 50%); }
.fellow-wrap h3 { font-size: 1.15rem; }
.fellow-image-wrap { padding: 1.0rem 3.0rem 0 3.0rem; o overflow: hidden; }
.fellow-image-wrap img { aspect-ratio: 4/3; object-fit: cover; }

#recruit-stepup { margin-top: 2.0rem; }
#recruit-stepup .recruit-stepup-head { text-align: center; background: #f39700; padding: 1.3rem 0; color: #fff; }
#recruit-stepup .recruit-stepup-head h2 { font-size: 1.5rem; }
.stepup-wrap-1 { background: #ecf4d9; padding: 3.0rem 0 2.0rem 0; }
.stepup-wrap-2 { background: #fbeac8; padding: 3.0rem 0 2.0rem 0; }
.stepup-01 { background-image: url(../../image/recruit/stepup_01_bg.png); background-size: 60%; background-repeat: no-repeat; background-position: left top; }
.stepup-02 { background-image: url(../../image/recruit/stepup_02_bg.png); background-size: 60%; background-repeat: no-repeat; background-position: left top; }
.stepup-01 ul,.stepup-02 ul { list-style: none; padding: 0; margin: 0; font-size: 1.15rem; min-height: 8.5rem; }
.stepup-01 ul li::before { content: "⚫︎"; color: #b3d469; font-size: 1.15rem; margin-right: 0; }
.stepup-02 ul li::before { content: "※"; font-size: 1.15rem; margin-right: 0; }
.stepup-01 li,.stepup-02 li { margin-left: 1.0em; text-indent: -1.0em; }

/* リクルートモーダルウインドウ */
.modal-title-wrap,.modal-image-wrap { text-align: center; }
.modal-header { border-bottom: none ; }
#stepup_modal_01_0 .modal-title,
#stepup_modal_01_1 .modal-title,
#stepup_modal_01_2 .modal-title,
#stepup_modal_01_3 .modal-title { color: #b2d369; text-align: center; width: 100%; padding-left:30px; font-weight: bold; font-size: 1.2rem; }
#stepup_modal_02_0 .modal-title,
#stepup_modal_02_1 .modal-title,
#stepup_modal_02_2 .modal-title,
#stepup_modal_02_3 .modal-title { color: #f39700; text-align: center; width: 100%; padding-left:30px; font-weight: bold; font-size: 1.2rem; }
#stepup_modal_01_0 .modal-title-wrap h2,
#stepup_modal_01_1 .modal-title-wrap h2,
#stepup_modal_01_2 .modal-title-wrap h2,
#stepup_modal_01_3 .modal-title-wrap h2 { background: #b2d369; color: #fff; padding: 10px 20px; border-radius: 25px; font-size: 1.2rem; }
#stepup_modal_01_0 .modal-body h3,
#stepup_modal_01_1 .modal-body h3,
#stepup_modal_01_2 .modal-body h3,
#stepup_modal_01_3 .modal-body h3 { color: #b2d369; font-size: 1.1rem; font-weight: bold; padding-bottom: 1.0rem; }
#stepup_modal_01_0 .modal-image-wrap img,
#stepup_modal_01_1 .modal-image-wrap img,
#stepup_modal_01_2 .modal-image-wrap img,
#stepup_modal_01_3 .modal-image-wrap img { border: 2px solid #b2d369; margin-top: 1.0rem; }
#stepup_modal_02_0 .modal-title-wrap h2,
#stepup_modal_02_1 .modal-title-wrap h2,
#stepup_modal_02_2 .modal-title-wrap h2,
#stepup_modal_02_3 .modal-title-wrap h2 { background: #f39700; color: #fff; padding: 10px 20px; border-radius: 25px; font-size: 1.2rem; }
#stepup_modal_02_0 .modal-body h3,
#stepup_modal_02_1 .modal-body h3,
#stepup_modal_02_2 .modal-body h3,
#stepup_modal_02_3 .modal-body h3 { color: #f39700; font-size: 1.1rem; font-weight: bold; padding-bottom: 1.0rem; }
#stepup_modal_02_0 .modal-image-wrap img,
#stepup_modal_02_1 .modal-image-wrap img,
#stepup_modal_02_2 .modal-image-wrap img,
#stepup_modal_02_3 .modal-image-wrap img { border: 2px solid #f39700; margin-top: 1.0rem; }

#recruit-overview,.overview-content { margin-top: 2.0rem; }
.overview-wrap { border: 3px solid #f39700; position: relative; }
.overview-wrap p {
	position: absolute;
	top: 0;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	background: #f39700;
	color: #fff;
	padding: 0.85rem;
	width: 80%;
	text-align: center;
	font-size: 1.2rem;
}
.overview-message { min-height: 18rem; background-image: url(../../image/recruit/overview_bg.jpg); background-repeat: no-repeat; background-position: left center; background-size: contain; }
.overview-message h3 { background: #f39700; color: #fff; padding: 10px 20px; border-radius: 25px; font-size: 1.2rem; text-align: center; }
.overview-inner { min-height: 18rem; }

/* ページヘッダー&見出し */
.page-head-wrap { width: 100%; height: 350px; }
.single .page-head-wrap,.blog .page-head-wrap,.archive .page-head-wrap { background-image: url(../../image/header_bg_01.jpg); background-repeat: no-repeat; background-position: bottom center; background-size: cover; }
.page .page-head-wrap { background-image: url(../../image/header_bg_02.jpg); background-repeat: no-repeat; background-position: bottom center; background-size: cover; }
.page-head-title { height: 350px; display: flex; justify-content: start; align-items: center; }
.page-head-wrap h1 { position: relative; display: inline-block; font-size: 2.0rem; font-weight: 500; color: #333; letter-spacing: 0.25rem; }	display: inline-block;
.page-head-wrap .single-title h1 { font-size: 1.8rem; }

.catimg-wrap { text-align: center; }
.catimg-wrap img { max-width: 600px; }

.content-page .title-wrap h3{ border-bottom: 3px solid #f39700; padding: 0 0 0.5rem 0; margin:0; }
.content-page .title-sub { font-size: 1.6rem; font-weight: 700; color: #ff6347; font-style: italic; }
.content-page .title-body { background: #f39700; padding: 2.0rem; color: #fff; }

/* 投稿ページ */
.custom-block:not(:first-child) { margin-top: 1.5rem; }
.post-img {
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #d8d8d8;
}
.post-img img { width: 100%; height: 100%; object-fit: cover; }
.custom-block-links-list li { margin-bottom: 0.3rem; color: #f39700; font-size: 1.1rem; }
.custom-block-links-list li a { color: #333; text-decoration: underline; text-underline-offset: 6px; }
.custom-block-links-list li a:hover { color: #f39700; transition: 0.8s; padding-left: 10px; }
.custom-block-links-buttons { margin-top: 1.0rem; display: flex; flex-direction: column; align-items: flex-start; gap: 0.5rem; }
.custom-block-links-buttons a { display: inline-block; color: #fff; background: #f39700; padding: 0.5rem 2.0rem; border-radius: 25px; }


/* アーカイブページ */
.year-select { background: rgba(3,110,184,0.1); height: 100%; padding: 1.5rem 1.0rem; }
.year-select p { font-size: 1.2rem; font-weight: 500; color: #f39700;  }
.year-select p:before { font-family: "Font Awesome 6 Free"; content: "\f073"; font-weight: 700; color:#f39700; margin-right:0.2rem; }
.year-select ul { padding: 0; }
.year-select li { list-style: none; }
.year-select li a { color: #f39700; font-size: 1.1rem; }
.year-select li a:before { font-family: "Font Awesome 6 Free"; content: "\f138"; font-weight: 700; color:#f39700; margin-right:0.2rem; }
.year-select li a:hover { padding-left: 10px; transition: 0.6s; }

.archive-wrap { margin-top: 2.0rem; margin-bottom: 2.0rem; }
.archive-item { border-bottom: 2px dotted #f39700; padding: 0.9rem 1.1rem; }
.archive-item a { display: inline-block; color: #333; }
.archive-item a:hover { padding-left: 10px; color: #f39700; transition: 0.6s; }
.archive-item h2 { font-size: 1.1rem; margin-bottom: 0; }
.archive-item h2:before { font-family: "Font Awesome 6 Free"; content: "\f054"; font-weight: 700; color:#333; margin-right:0.2rem; }
.archive-item h2:hover:before { color: #f39700; }

/* フォーム共通 */
.contact-form-head { text-align: center; }
.contact-form-head p:first-child { font-size: 1.2rem; font-weight: 500; }
.contact-number { font-size: 1.2rem; font-weight: 700; color:#f39700; }
.contact-number i { margin-right:0.3rem; }

.form80 { width: 79.3%; }
.form50 { width: 49.3%; }
.form30 { width: 30.5%; }
.form20 { width: 20.0%; }
.form10 { width: 10.5%; }
.form-entry-item { border: none; pointer-events : none; width:100%; }
.form-section:first-child { border-top: 1px solid #d8d8d8; }
.form-section { background: #f5f5f5; border-bottom: 1px solid #d8d8d8; }
.form-section .error { display:block !important; }
.req { font-size: 0.6rem; padding: 3px 5px; background: red; color: #fff; border-radius: 4px; margin-left : 6px; vertical-align: middle; }
.form-head { padding: 0.8rem; }
.form-body { background: #fff; padding: 1.2rem 0.8rem; }
.form-head p,.form-body p { margin: 0; }
.form-control::placeholder { color: #a9a9a9; }
.mwform-checkbox-field-text { margin-right: 1.2rem; }
p.form-area { font-weight:normal; margin: 0.5rem 0 0.5rem 0; }
.form-control { border:2.0px solid #c0c0c0; }
.form-link a { text-decoration: underline; }
.send-check { margin-right: 1.5rem; }
.form-error-ex span::before { content: "※"; }
.form-error-ex span.mwform-file-delete::before { content: ""; }
.mw_wp_form_confirm .msg-hidden { display: none; }
.hidden-height { min-height: 1.4rem; }

#autozip { display: none!important; }
.back-bt { color: #fff; background: #008080; padding:1.0rem 1.0rem; margin-top:1.0rem; border:none; border-radius: 6px; }
.back-bt:hover { background: #8fb3b3; transition: 0.8s; color: #008080; }
.send-bt { color: #fff; background: #dc143c; padding:1.0rem 1.0rem; margin-top:1.0rem; border:none; border-radius: 6px; }
.send-bt:hover { background: #db8495; transition: 0.8s; color: #dc143c; }
.thanks { padding: 10% 0; }
.thanks a { background: #0d6efd; color: #fff; padding: 10px 40px; border-radius: 10px; }

/* ポリシーページ */
.policy-head { background: #f39700; padding: 2.0rem; color: #fff; }
.policy-title { margin-top: 1.5rem; font-weight: 700; color:#f39700; }
.policy-body { padding-left: 1.0rem; }
.policy-list { margin: 1.0rem 0; }
.policy-list li { margin-bottom: 0.3rem; }
.policy-add { margin-top: 5.0rem; }

/* サイトマップページ */
.sitemap ul { margin: 1.5rem 0; list-style: none; }
.sitemap-list li { line-height: 1.75rem; }
.sitemap-list li a:before  { font-family: "Font Awesome 6 Free"; content: "\f054"; font-weight: 700; margin-right:0.4rem; }
.sitemap-list li a:hover { margin-left: 10px; transition: 0.8s; }

/* フッター */
#footer { background: #fff; padding-top: 3.0rem; padding-bottom: 3.0rem; }
.footer-info-wrap { margin-top: 3.0rem; }
.footer-sns { text-align: right; }
.footer-sns a:not(:last-child) { margin-right: 1.2rem; }
a.footer-contact { color: #333; border-bottom: 1.5px solid #333; padding: 0 1.0rem; padding-bottom: 4px; }
.menu-footer-menu-container ul { display: flex; list-style: none; padding: 0; margin: 0; justify-content: end; }
.menu-footer-menu-container li:not(:last-child) { margin-right: 0.8rem; }
.menu-footer-menu-container li a { display: inline; color: #333; font-size: 0.85rem; }
.menu-footer-menu-container li a::before { font-family: "Font Awesome 6 Free"; content: "\f054"; font-weight: 700; color:#333; margin-right:0.6rem; }
.copyright { margin-top: 1.0rem; }


/* SP調整 */
@media screen and (max-width: 991px) {
.header-logo-wrap,
.navbar-bt-top,
.side-icon,
.bottom-icon,
#main { zoom: 90%; }
}

@media screen and (max-width: 769px) {
.header-logo-wrap,
.navbar-bt-top,
.side-icon,
.bottom-icon,
.container-md { padding-left: 0; padding-right: 0; }
.header-logo-wrap { position: absolute; left: 25px; top: 4px;}
.recruit-hero-wrap { background-image: url(../../image/recruit/hero_bg_SP.jpg); }
.recruit-hero-catch { top: 90px; }
.recruit-hero-caption {bottom: 80px;}
.recruit-entry-bt-wrap { margin-top: 3.0rem; }
.info-link-archive a { position: static; }
#section01 { background: none; }
.section01-caption { width: 100%; margin-top: 77%; transform: translateY(-11%); padding: 0 1.5rem; }
h2.section02-top-item { width: 80%; }
.section02-item-wrap img { max-width: 300px; }
#section03 { background: none; padding-bottom: 0; }
.link-detail { padding: 2.0rem 0 1.0rem 0; text-align: center; }
#section05 { background: linear-gradient(180deg, rgba(243, 151, 0, 1) 0%, rgba(254, 226, 171, 1) 100%); }
#section05 h2 { padding:1.85rem 0; }
.recruit-link { padding-top: 2.5rem; padding-bottom: 1.5rem; }
.overview-message { background-image: url(../../image/recruit/overview_bg_SP.jpg); background-position: top center; background-size: contain; width: 100%; padding-top: 49% }
#footer { padding-bottom: 4.0rem; }
.overview-inner { min-height: 0; }
.footer-info-wrap { margin-top: 2.0rem; }
.copyright { font-size: 0.85rem; }
}

@media screen and (max-width: 575px) {
.section01-bottom-item { font-size: 1.6rem; }
}

@media screen and (max-width: 450px) {

}

@media screen and (min-width: 576px) {

}