/*!
Theme Name: ツクリンク株式会社
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: tsukulink
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

tsukulink is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> 目次
----------------------------------------------------------------
# 一般的な
	- ノーマライズ
	- ボックスサイジング
# ベース
	- タイポグラフィ
	- エレメント
	- リンク
	- フォーム
## レイアウト
# コンポーネント
	- ナビゲーション
	- 投稿とページ
	- コメント
	- ウィジェット
	- メディア
	- キャプション
	- ギャラリー
# プラグイン
	- Jetpack 無限スクロール
# ユーティリティ
	- アクセシビリティ
	- アラインメント

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

/*--------------------------------------------------------------
# 一般的なもの
--------------------------------------------------------------*/

/* 正規化
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1.すべてのブラウザで行の高さを修正します。
 * 2. 2. iOS で向きを変えたときにフォントサイズが調整されないようにした。
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * すべてのブラウザでマージンを削除します。
 */
body {
	margin: 0;
}

/**
 * IE で `main` 要素を一貫してレンダリングします。
 */
main {
	display: block;
	margin-top: 70px;
}

/**
* Chrome、Firefox、Safari で `section` および `article` コンテキスト内の `h1` 要素のフォントサイズとマージンを修正しました。
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1.Firefox で正しいボックスサイズを追加します。
 * 2. EdgeとIEでオーバーフローを表示する。
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1.Firefox で正しいボックスサイズを追加します。
 * 2. EdgeとIEでオーバーフローを表示する。
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * IE 10 でアクティブなリンクの灰色の背景を削除します。
 */
a {
	background-color: transparent;
}

/**
 * 1. Chrome 57で下部のボーダーを削除する-。
 * 2. Chrome、Edge、IE、Opera、Safariで正しい文字装飾を追加します。
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Chrome、Edge、Safariで正しいフォントのウェイトを追加します。
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1.全てのブラウザで、フォントサイズの継承と拡大縮小を修正しました。
 * 2.全ブラウザで `em` のフォントサイズがおかしくなっているのを修正。
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
* すべてのブラウザで正しいフォントサイズを追加します。
 */
small {
	font-size: 80%;
}

/**
 * すべてのブラウザで、`sub` と `sup` 要素が行の高さに影響を与えないようにします。
 * すべてのブラウザで行の高さに影響しないようにします。
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * IE 10 でリンク内の画像のボーダーを削除する。
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1.すべてのブラウザでフォントスタイルを変更します。
 * 2. FirefoxとSafariのマージンを削除します。
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * IEでオーバーフローを表示する。
 * Edgeでオーバーフローを表示します。
 */
button,
input {
	overflow: visible;
}

/**
 * Edge, Firefox, IE でのテキスト変換の継承を解除する。
 * 1. Firefoxのテキスト変換の継承を解除します。
 */
button,
select {
	text-transform: none;
}

/**
 * iOS と Safari で、クリッカブルタイプにスタイルを設定できないのを修正しました。
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Firefox では、内側のボーダーとパディングを削除します。
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * 前のルールで設定されていないフォーカススタイルを復元します。
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Firefoxでのパディングを修正。
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1.EdgeとIEでのテキストの折り返しを修正しました。
 * 2.IEで `fieldset` 要素から色を継承するように修正しました。
 * 3.パディングを削除し、開発者が `fieldset` 要素をゼロにしたときに、すべてのブラウザで引っかからないようにしました。
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Chrome、Firefox、Operaで正しい垂直方向のアライメントを追加します。
 */
progress {
	vertical-align: baseline;
}

/**
 * IE 10+ のデフォルトの垂直スクロールバーを削除します。
 */
textarea {
	overflow: auto;
}

/**
 * 1.IE10で正しいボックスサイズになるようにする。
 * 2.IE10でパディングを削除します。
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
* Chrome のインクリメント、デクリメントボタンのカーソルスタイルを修正。
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1.Chrome、Safariで変な表示になるのを修正しました。
 * 2. Safariでのアウトラインスタイルの修正。
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * macOSのChromeとSafariで内側のパディングを削除します。
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1.iOS、Safariでクリッカブルタイプのスタイル指定ができない不具合を修正しました。
 * 2.Safariでフォントのプロパティを継承するように変更しました。
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
  * Edge、IE 10+、Firefoxで正しく表示されるようにします。
 */
details {
	display: block;
}

/*
* すべてのブラウザで正しく表示されるよう追加します。
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * IE 10+ で正しく表示されるようにする。
 */
template {
	display: none;
}

/**
 * IE10で正しく表示されるようにする。
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* box-sizing を継承することで、より簡単にコンポーネントレベルで値を変更することができます。 */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* 埋め込みとiframeがコンテナにフィットすることを確認します。*/
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- 
a {
	color: #4169e1;
}

a:visited {
	color: #800080;
}

a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}*/

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
    width: 100%;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#header[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/*========================================
追記
========================================*/
/*========================================
COMMON
========================================*/
body {
    font-family: 'YuGothic', 'Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',sans-serif;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.8;
    color: #000000;
    cursor: auto;
}
a {
    -webkit-tap-highlight-color: rgba(0,0,0,0.3);
    margin: 0;
    padding: 0;
    color: #333333;
    text-decoration: none;
    transition: all .2s ease 0s;
}
.lato-font {
    font-family: 'Lato', sans-serif !important;
    letter-spacing:2px;
}
#topcontrol {
    width: 60px;
    height: 60px;
    background: #333;
    z-index: 1000;
	border-radius: 10px;
}
#topcontrol a {
	position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
#topcontrol a::before {
    position: absolute;
    top: 45%;
    left: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    width: 20px;
    height: 20px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.sp-none {
	display: block !important;
}
.pc-none {
	display: none !important;
}
.dlb_btn a, .dlb_btn_inlineb a {
	background-color: #000;
    color: #fff;
    border-radius: 100px;
}
.dlb_btn a:hover, .dlb_btn_inlineb a:hover {
	background-color: #7FC05D;
    color: #fff;
}
.white_bg {
	background-color: #fff;
}
.gray_bg {
	background-color:#EEEEEE;
	padding: 60px 0;	
}
.green_box {
	position:relative;
}
.green_box::before {
	content: "";
	position:absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: url(/wp/wp-content/uploads/2023/06/rs01.png) no-repeat left 0px/40px auto;
}
.green_box::after {
	content: "";
	position:absolute;
	width: 100%;
	height: 100%;
	right: 0;
	background: url(/wp/wp-content/uploads/2023/06/rs02.png) no-repeat right 0px/40px auto;
}
.green_color {
	color: #7FC05D !important;
}
.white_color {
	color: #fff !important;
}
.italic {
	font-style: italic;
}
.under_line {
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 1px;
}
.scroll-up {
  opacity: 0; 
  visibility: hidden;
  transform: translateY(50px);
  transition: all 1s;
}
.scroll-up.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}
.gray_color {
	color: #999;
} 
.small_font {
	font-size: 13px;
}
.br-pc {
	display: inline-block;
}
.br-sp {
	display: none;
}
.list-none {
	list-style: none;
}
@media only screen and (max-width: 690px) {
	a:hover {
		opacity: 1 !important;
		transition: none !important;
	}
	.pc-none {
		display: block !important;
	}
	.sp-none {
		display: none !important;
	}
	#topcontrol {
    	width: 40px;
    	height: 40px;
		border-radius: 6px;
	}
	#topcontrol a::before {
    	width: 14px;
    	height: 14px;	
	}
	.news-block .dlb_btn.pc-none {
    	position: relative;
    	max-width: 80%;
    	margin-left: auto;
    	margin-right: auto;
	}
	.br-sp {
		display: inline-block;
	}
	.br-pc {
		display: none;
	}
	.green_box {
		padding: 17px !important;
	}
	.dlb_btn a:hover, .dlb_btn_inlineb a:hover {
		background-color: #000;
	}
}

/*========================================
header
========================================*/
header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
}
#header {
    width: 100%;
    background-color: #ffffff;
    -webkit-box-shadow: 0 0 10px 3px rgb(0 0 0 / 10%);
    box-shadow: 0 0 10px 3px rgb(0 0 0 / 10%);
}
#header_area {
    max-width: 1200px;
    margin: auto;
    height: 70px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
#header_logo {
	margin-left:16px;
    margin-right: 16px;
}
header #header_logo a {
    display: flex;
}
header #header_logo img {
    max-width: 100%;
	max-height: 30px;
    width: auto;
    height: auto;
}
header .gnavi_area {
    margin-left: auto;
    height: 100%;
    display: block;
}
header .gnavi_area nav, .menu-header-container {
    height: 100%;
}
#header-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    height: 100%;
}
#header-menu li {
    margin-right: 2em;
    list-style: none;
    height: 100%;
}
#header-menu li a {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 8px 0;
    position: relative;
    font-weight: bold;
    -webkit-transition: all .3s ease 0s;
    -o-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
    font-size: 13px;
}
#header-menu li a:hover {
	text-decoration: none;
	color: #7FC05D;
}
header .gnavi_area ul li a::after {
    position: absolute;
    right: 0;
    bottom: 25%;
    left: 0;
    width: 100%;
    height: 2px;
    margin: auto;
    -webkit-transform: scale(0,1);
    transform: scale(0,1);
    -webkit-transform-origin: right top;
    transform-origin: right top;
    background: #7FC05D;
    content: '';
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s,-webkit-transform .3s;
}
header .gnavi_area ul li a:hover:after {
    background-color: #7FC05D;
    -webkit-transform: scale(1,1);
    transform: scale(1,1);
    -webkit-transform-origin: left top;
    transform-origin: left top;
}
#header-menu li a.menu-active {
	color: #7FC05D;
}
#header-menu li a.menu-active::after {
    background: #7FC05D;
    transform: inherit;
	transition: none;
}
#header-menu li:first-child a.menu-active {
	color: #333;
}
#header-menu li:first-child a.menu-active::after {
    background: #fff;
}
.home #header-menu li:first-child a.menu-active {
	color: #7FC05D;
}
.home #header-menu li:first-child a.menu-active::after {
    background: #7FC05D;
}
header .gnavi_btn_sp {
    display: none;
}
header .gnavi_area_sp.panelactive {
	display: block;
}
	header .gnavi_area_sp #site-navigation {
	    position: fixed;
    	z-index: 999;
   		top: -120%;
    	left: 0;
    	width: 100%;
    	height: 100vh;
    	background: #EEEEEE;
    	transition: all 0.6s;
	}

@media only screen and (max-width: 768px) {
	header #header_logo img {
		max-height: 25px;
	}
}

@media only screen and (max-width: 690px) {
	header #header_area {
    	height: 50px;
	}
	header .gnavi_btn_sp {
    	display: block;
    	position: absolute;
    	top: 0;
    	width: 60px;
    	right: 0;
    	text-align: center;
    	line-height: 1;
    	z-index: 1000;
		height: 50px;
		background: #7FC05D;
	}
	header .gnavi_btn_sp_in {
    	position: relative;
    	width: 26px;
    	height: 20px;
    	cursor: pointer;
    	z-index: 2;
		top: 50%;
		transform: translateY(-50%);
	}
	header .gnavi_btn_sp_in, header .gnavi_btn_sp_in span {
    	display: inline-block;
    	-webkit-transition: all .4s;
    	-o-transition: all .4s;
    	transition: all .4s;
    	-webkit-box-sizing: border-box;
    	box-sizing: border-box;	
	}
	header .gnavi_btn_sp_in span {
    	position: absolute;
    	left: 0;
    	width: 100%;
    	height: 1px;
    	background-color: #fff;
    	border-radius: 4px;
	}
	header .gnavi_btn_sp_in span:nth-of-type(1) {
    	top: 0;
	}
	header .gnavi_btn_sp_in span:nth-of-type(2) {
    	top: 8px;
	}
	header .gnavi_btn_sp_in span:nth-of-type(3) {
    	top: 16px;
	}
	/*header .gnavi_btn_sp .open {
    	font-weight: bold;
	}
	header .gnavi_btn_sp .close {
    	display: none;
    	font-weight: bold;
	}
	header .gnavi_btn_sp.active .close {
    	display: block;
    	font-weight: bold;
	}
	header .gnavi_btn_sp.active .open {
    	display: none;
	}*/
	header .gnavi_btn_sp.active .gnavi_btn_sp_in span:nth-of-type(1) {
    	-webkit-transform: translateY(16px) rotate(-45deg);
    	-ms-transform: translateY(16px) rotate(-45deg);
    	transform: translateY(16px) rotate(-45deg);
    	top: -8px;
	}
	header .gnavi_btn_sp.active .gnavi_btn_sp_in span:nth-of-type(2) {
    	opacity: 0;
	}
	header .gnavi_btn_sp.active .gnavi_btn_sp_in span:nth-of-type(3) {
    	-webkit-transform: translateY(-16px) rotate(45deg);
    	-ms-transform: translateY(-16px) rotate(45deg);
    	transform: translateY(-16px) rotate(45deg);
    	top: 24px;
	}
	header .gnavi_area {
		display: none;
	}
	header .gnavi_area_sp.panelactive, #header-sp-menu {
		display: block;
	}
	header .gnavi_area_sp.panelactive #site-navigation {
	    top: 0;
	}
	header .gnavi_area_sp.panelactive #site-navigation .menu-header-sp-container {
    	position: fixed;
    	z-index: 999;
    	width: 100%;
    	height: 100vh;
    	overflow: auto;
    	-webkit-overflow-scrolling: touch;
	}
	#header-sp-menu {
	    position: absolute;
    	z-index: 999;
    	top: 50%;
    	left: 50%;
    	transform: translate(-50%,-50%);
	}
	#header-sp-menu li {
		margin-bottom: 20px;
	}
	#header-sp-menu li a {
		position: relative;
		text-decoration: none;
		color: #333;
		font-weight: bold;
		font-size: 16px;
		line-height: 1.4;
	}
	#header-sp-menu li a::after {
    	position: absolute;
    	content: "";
    	top: 50%;
    	left: -26px;
    	width: 14px;
    	height: 1px;
    	background: #777;
    	transform: translatey(-50%);
	}
	#header-sp-menu li:first-child a.menu-active {
		color: #333;
	}
	#header-sp-menu li a.menu-active, .home #header-sp-menu li:first-child a.menu-active {
		color: #7FC05D;
	}
}

/*========================================
footer
========================================*/
.entry-footer {
	display: none;
}
footer #footer_info {
    background-color: #fff;
}
footer #footer_info .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 24px;
    padding-bottom: 8px;
}
footer .footer_info_navi a {
    color: #333;
    padding-right: 20px;
    font-size: 12px;
}
footer .footer_info_navi a + a {
    padding-left: 20px;
    border-left: 1px solid #333;
}
footer .footer_info_navi a:hover {
	text-decoration: none;
	color: #7FC05D;
}
footer #footer_info small {
    margin-left: auto;
    color: #333;
}
footer .footer_menu_block {
    background-color: #EEEEEE;
}
.footer_nav_block {	
    display: flex;
    justify-content: flex-end;
}
.footer_nav_block.sp-none {
    display: flex !important;
}
.footer_nav_block ul li {
	list-style: none;
    font-weight: bold;
    margin-bottom: 16px;
}
.footer_nav_block ul li a:hover {
	text-decoration: none;
	color: #7FC05D;
}
#footer_lead {
    display: flex;
    justify-content: space-between;
    padding: 60px 0 80px;
}
footer .footer_lead_block h2 {
	font-weight: normal;
	font-size: 100%;
}
.menu-footer-1-container, .menu-footer-2-container {
    margin-right: 100px;	
}
.footer_logo a img {
	height: 30px;
	width: auto;
}

@media only screen and (max-width: 820px) {
	.menu-footer-1-container, .menu-footer-2-container {
    	margin-right: 50px;
	}
}
@media only screen and (max-width: 690px) {
	#footer_lead {
	    display: block;
    	padding: 40px 0;
	}
	.footer_logo {
    	text-align: center;
    	margin-bottom: 16px;		
	}
	.footer_lead_block {
		margin-bottom: 30px;
	}
	.footer_nav_block {
    	display: block;
	}
	footer #footer_info .inner {
    	display: block;
    	text-align: center;
    	padding-top: 20px;
    	padding-bottom: 8px;
	}
	footer #footer_info .footer_info_navi a {
    	padding: 10px;
    	font-size: 12px;
   		border: none;
	}
	.footer_info_navi {
    	display: flex;
    	flex-direction: column;
    	align-items: center;
	}
	footer #footer_info small {
    	display: block;
    	padding-top: 8px;
    	border-top: 1px solid rgba(255, 255, 255, 0.1);
	}
	.footer_nav_block.pc-none {	
	    display: flex !important;
	    justify-content: space-around;
	}
	.footer_nav_block.sp-none {
		display: none !important;
	}
}

/*========================================
TOP
========================================*/
.top_main {
	background-image: url(/wp/wp-content/uploads/2023/04/main_mv.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
	height: 700px;
	margin-bottom: 60px;
}
.main_txt {
    height: 100%;
    position: relative;
}
.top_main .main_txt_area {
    position: absolute;
    top: 40%;
    transform: translateY(-50%);
}
/*.top_main h1 .lato-font {
	font-size: 60px;
    text-shadow: 1px 2px 3px #fff;
}
.top_main h1 .lato-font .sub_title {
	font-size: 40px;
    text-shadow: 1px 2px 3px #fff;
}
.top_main h1 .under_line {
    font-size: 26px !important;
}*/
.main-title {
	font-size: 60px;
    line-height: 65px;
	margin-bottom: 20px;
    /*text-shadow: 1px 2px 3px #fff;*/
}
.main-title2 {
	font-size: 30px;
}
.top_2_block .col {
	position: relative;
}
.top_2_img img {
	width: 100% !important;
	border-radius: 50px;
}
.top_2_block .sub_title a {
    letter-spacing: 1px;
}
.top_2_block a:hover {
	text-decoration: none;
}
.title_block {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.title_block h2 {
	position: relative;
	padding-bottom: 11px;
}
.title_block h2::before {
	position: absolute;
	content: "";
	width: 60%;
	height: 2px;
	background-color: #fff;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
.recruit_block {
	background-image: url(/wp/wp-content/uploads/2023/05/top-recruit2.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    height: 600px;
	position: relative;
}
.recruit_block::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: -moz-linear-gradient(top, transparent 50%, rgba(255, 255, 255, 0.4), #fff);
    background: -webkit-linear-gradient(top, transparent 50%, rgba(255, 255, 255, 0.4), #fff);
    background: linear-gradient(to bottom, transparent 50%, rgba(255, 255, 255, 0.4), #fff);
}
.recruit_wrapper .dlb_box1_txt {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: auto !important;
    box-shadow: 2px 3px 20px rgb(0 0 0 / 20%);
    margin-top: -100px !important;
}
.recruit_wrapper .dlb_btn a {
	min-width: 250px;
}
#recruit #comments {
	display: none;
}

.home .blog-main {
	width: 100%;
	margin-right: 0;
}
/*==================================================
スライダーのためのcss
===================================*/
.office_slider .slick-slide img {
	width: 50vw !important;/*スライダー内の画像を50vwにしてレスポンシブ化*/
    height:auto;
}
.office_slider .slick-slide {
	transform: scale(0.8);/*左右の画像のサイズを80%に*/
	transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
	opacity: 0.5;/*透過50%*/
}
.office_slider .slick-slide.slick-center{
	transform: scale(1);/*中央の画像のサイズだけ等倍に*/
	opacity: 1;/*透過なし*/
}
/*ドットナビゲーションの設定*/
.slick-dots {
    text-align:center;
	margin:20px 0 0 0;
}
.slick-dots li {
    display:inline-block;
	margin:0 5px;
}
.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;/*ドットボタンのサイズ*/
    height:8px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
    background:#ccc;/*ドットボタンの色*/
}
.slick-dots .slick-active button{
    background:#333;/*ドットボタンの現在地表示の色*/
}
@media only screen and (max-width: 690px) {
	main {
		margin-top: 50px;
	}
	/*.top_main h1 .lato-font {
    	font-size: 40px;
	}
	.top_main h1 .lato-font .sub_title {
	    font-size: 24px;
	}
	.top_main h1 .under_line {
    	font-size: 20px !important;
	}*/
	.main-title {
    	font-size: 26px;
    	line-height: 36px;
   	 	margin-bottom: 10px;
	}
	.main-title2 {
    	font-size: 14px;
	}
	.top_main {
		height: 60vh;
	}
	.recruit_wrapper .dlb_box1_txt {
   		display: block;
		margin-top: -70px !important;
	}
	.recruit_wrapper .txt_box {
		margin-bottom: 20px;
	}
	.home .blog-3col .blog-item {
		display: none !important;
	}
	.home .blog-3col .blog-item:nth-of-type(1), .home .blog-3col .blog-item:nth-of-type(2) {
		display: block !important;
	}
}

/*========================================
下層
========================================*/
.page_header {
    padding: 100px 0 60px;
}
.pagetitle {
	color: #7FC05D;
	font-size: 40px;
    line-height: 40px;
}
.sub_title {
	font-size: 16px;
}
.pagetitle .sub_title .post-categories {
	display: inline-block;
	list-style: none;
}
.pagetitle .sub_title .post-categories a {
	color: #7FC05D;
}

@media only screen and (max-width: 690px) {
	.page_header {
    	padding: 40px 0 60px;
	}
	.pagetitle {
		font-size: 30px;
    	line-height: 30px;
	}
	.pagetitle .sub_title {
		font-size: 14px;
	}
}

/*========================================
私たちについて
========================================*/
.president_message {
    background-image: url(/wp/wp-content/uploads/2023/03/about-04.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
	height: 750px;
}
.president_message .white_bg {
    width: 50%;
	height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
	padding: 60px;
	padding-right: 40px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
.president_message  h2, .president_message  h3, .president_message  p {
	margin-left: 0 !important;
	margin-top: 0 !important;
}
.president_message_sp {
	display: none;
}
.message_block_pc .dlb_box2-8_txt.white_bg {
    border: none;
    width: 80%;
    box-shadow: 2px 2px 10px rgba(0, 0,0, 0.6);
    height: auto;
    top: auto;
    bottom: -50%;
}
.news-block {
	display: none;
}
.home .news-block, #about .news-block {
	display: block;
}
.news-block .inner {
	position: relative;
}
.news-block .dlb_btn {
	position: absolute;
	right: 0;
	top: 0;
    min-width: 200px;
}
.section_value .col2_m_221 {
	align-items: center;
    border-bottom: 1px solid #f5f5f5;
    padding-bottom: 20px;
}
.section_value .col2_m_221.value_first {
	padding-top: 20px;
    border-top: 1px solid #f5f5f5;
}
.section_value .col2_m_221 > .col:first-child {
    width: calc(32% - 20px) !important;
}
.section_value .col2_m_221 > .col:nth-child(2) {
    width: calc(68% - 20px) !important;
}
.section_reason .col2_m_221 > .col:first-child {
    width: calc(40% - 20px) !important;
}
.section_value .dlb_subtitle3_01.tab_name {
    width: auto;
    padding: 20px;
    margin: 0;
}
.section_origin .col2_m_221 {
	align-items: center;
}
.tab_name {
	background-color: #7FC05D;
	padding: 8px 10px;
	color: #fff;
	border-radius: 3px;
	margin-right: 20px;
    width: 100px;
    text-align: center;
}
.tab-group{
  display: flex;
  justify-content: center;
}
.tab-list {
	list-style: none;
}
.tab-list-item{
	border-top: 1px solid #f5f5f5;
	border-bottom: 1px solid #f5f5f5;
	padding: 8px 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
	font-weight: bold;
    cursor: pointer;
    background: url(/wp/wp-content/uploads/2023/05/arrow.png) no-repeat 98% 17px/25px auto;
    -webkit-transition: all .3s ease 0s;
    -o-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
}

.tab-list-item:hover {
	color: #7FC05D;
    background: url(/wp/wp-content/uploads/2023/05/arrow_green.png) no-repeat right 17px/25px auto;
}

.tab-contents{
  display: none;
}

.origin_tab_p {
  font-weight: normal;
}

.is-contents-active{
  display: block;
}
.origin_sp {
	display: none;
}
/*origin_sp*/
.accordion-001 {
    border-bottom: 1px solid #f5f5f5;
    border-top: 1px solid #f5f5f5;
    padding: 10px 0;
}
.accordion-001 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    font-weight: 600;
    cursor: pointer;
    padding: 0 1em 0 0;
}
.accordion-001 summary::-webkit-details-marker {
    display: none;
}
.accordion-001 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 2px solid #7FC05D;
    border-right: 2px solid #7FC05D;
    content: '';
    transition: transform .3s;
}
.accordion-001[open] summary::after {
    transform: rotate(225deg);
}
.accordion-001 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 2em 1em;
    transition: transform .5s, opacity .5s;
}
.accordion-001[open] p {
    transform: none;
    opacity: 1;
}

@media only screen and (max-width: 1190px) {
	.president_message {
		height: auto;	
	}
	.president_message .white_bg {
    	width: 55%;
	}
}
@media only screen and (max-width: 979px) {
	.col3_m_321 .col:nth-child(2n) {
		margin-bottom: 40px;
    	margin-right: 15px !important;
	}
}
@media only screen and (max-width: 820px) {
	.president_message .white_bg {
		padding: 40px;
		padding-right: 30px;	
	}
}
@media only screen and (max-width: 690px) {
	.col3_m_321 .col:nth-child(2n) {
    	margin-bottom: 0px;
    	margin-right: 0 !important;
	}
	.president_message .white_bg {
    	width: 100%;
    	padding: 40px 20px;
	}
	.president_message {
		display: none;
	}
	.president_message_sp {
		display: block;
	}
	.section_value .col2_m_221 > .col:first-child, .section_value .col2_m_221 > .col:nth-child(2), .section_reason .col2_m_221 > .col:first-child, .section_reason .col2_m_221 > .col:nth-child(2) {
		width: 100% !important;
		margin-top:0;
	}
	.section_value .dlb_subtitle3_01.tab_name {
		margin-bottom: 20px;
	}
	.tab_name {
		margin-right: 10px;
	}
	.tab-list-item {
    	background: url(/wp/wp-content/uploads/2023/05/arrow.png) no-repeat right 17px/20px auto;
	}
	.tab-list-item:hover {
    	background: url(/wp/wp-content/uploads/2023/05/arrow_green.png) no-repeat right 17px/20px auto;
	}
	.origin_sp {
		display: block;
	}
	.origin_pc, .president_message_pc {
		display: none !important;
	}
}

/*========================================
会社概要
========================================*/
.company_table td {
	border: none !important;
}
.company_table tr {
	border-bottom: 1px solid #DFDDDD !important;
}
.history_table td:first-child {
	width: 20%;
}
.officer-img img {
	border-radius: 10px;
}
.officer-img .col {
	margin-bottom: 30px;
	cursor: pointer;
}
#popup-wrapper, #popup-wrapper2, #popup-wrapper, #popup-wrapper3 {
  background-color: rgba(0, 0, 0, .5);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  z-index: 1000;
}
#popup-inside {
  width: 100%;
  background: white;
  position: fixed;
    padding: 65px 40px 50px;
    max-width: 850px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#message .col2_m_221 {
	align-items: center;
}

#message .col2_m_221 .col {
	margin-bottom: 0;
}
.c-officer-modal__close {
    position: absolute;
    top: 14px;
    left: auto;
    right: 14px;
    width: 40px;
    height: 40px;
  	cursor: pointer;
}
.c-officer-modal__close:after, .c-officer-modal__close:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 100%;
    height: 2px;
    background: #23221f;
    transition: .3s cubic-bezier(.79,.17,.15,.96);
    opacity: 1;
    transition: opacity .3s cubic-bezier(.79,.17,.15,.96),-webkit-transform .4s cubic-bezier(.08,.92,.35,1);
    transition: transform .4s cubic-bezier(.08,.92,.35,1),opacity .3s cubic-bezier(.79,.17,.15,.96);
    transition: transform .4s cubic-bezier(.08,.92,.35,1),opacity .3s cubic-bezier(.79,.17,.15,.96),-webkit-transform .4s cubic-bezier(.08,.92,.35,1);
}
.c-officer-modal__close:before {
    -webkit-transform: rotate(-45deg) scaleX(1) translate3d(0,0,0);
    transform: rotate(-45deg) scaleX(1) translate3d(0,0,0);
}
.c-officer-modal__close:after {
    -webkit-transform: rotate(45deg) scaleX(1) translate3d(0,0,0);
    transform: rotate(45deg) scaleX(1) translate3d(0,0,0);
}

@media only screen and (max-width: 690px) {
	.company_table {
		width: 100% !important;
	}
	.officer-img .w80 {
		width: 90% !important;
	}
	.company_table tr {
    	display: flex;
    	flex-direction: column;
	}
	.company_table td:first-child {
		width: 100%;
    	border-bottom: 1px solid #DFDDDD !important;
    	background-color: #eee;
	}
	.officer-img .col3_m_321 .col {
		margin-bottom: 30px;
	}
	.officer-img .col:nth-child(even) {
		margin-top: 0 !important;
		margin-right: 0px !important;
		width: 100%;
	}
	#message .col2_m_221 .col:first-child {
		margin-bottom: 30px;
	}
	#popup-inside {
    	width: 90%;
    	padding: 50px 30px 40px;
	}
	.c-officer-modal__close {
		top: 10px;
	    width: 30px;
    	height: 30px;
	}
	
}

/*========================================
事業内容
========================================*/
.it-service .col {
	margin-bottom: 40px;
}
.it-service .col:nth-child(even) {
	margin-right: 20px !important;
}
.service-app.col2_m_221 > .col {
	width: auto !important;
}
.service-app a {
	display: block;
}
.title_wing {
	position: relative;
	display: inline-block;
	padding: 50px;
}
.title_wing::before {
    content: "";
    position: absolute;
    top: 30%;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(/wp/wp-content/uploads/2023/06/title_left.png) no-repeat left 0/50px auto;
}
.title_wing::after {
	content: "";
	position: absolute;
	top: 30%;
	right: 0;
	width: 100%;
	height: 100%;
   	background: url(/wp/wp-content/uploads/2023/06/title_right.png) no-repeat right 0px/50px auto;
}
@media only screen and (max-width: 690px) {
	.it-service .col {
		margin-bottom: 30px;
	}
	.it-service .col:nth-child(even) {
		margin-right: auto !important;
	}
	.it-service .col2_m_221 > .col:nth-child(n+2), .service-app.col2_m_221 > .col:nth-child(n+2) {
		margin-top: 0 !important;
	}
	.service-app.col2_m_221 > .col {
		margin-right: 10px;
	}
	.service-app {
	    flex-wrap: nowrap !important;
    	justify-content: space-between;		
	}
	.business_block .col2_m_221 {
    	flex-direction: column-reverse;
	}
	.business_block .col2_m_221 > .col:nth-child(n+2) {
		margin-top: 0 !important;
	}
	.service-app img {
		width: 100%;
	}
}
/*========================================
採用情報
========================================*/
.recruit-img-block {
	position: relative;
}
.recruit-img {
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
}
.recruit-img-block .dlb_subtitle2_01, .recruit-img-block p {
	font-size: 13px;
	width: 100%;
   margin-left: 0;
}
.recruit-img2 {
	position: relative;	
	z-index: -2;
}
.section_recruiting .col2_m_221 {
    align-items: center;
}
.qrcode {
	/*width: 150px !important;*/
}
@media only screen and (max-width: 690px) {
	.recruit_block {
		height: 250px;
	}
	.recruit-img {
	    position: relative;
    	width: 60%;
    	margin: 40px auto;		
	}
	.recruit-img-block .dlb_subtitle2_01, .recruit-img-block p {
		font-size: 13px !important;
		width: 100%;
   	  margin-left: auto;
	}
	.section_recruiting .col2_m_221 > .col:nth-child(n+2) {
		margin-top: 0 !important;
	}
	.section_recruiting .dlb_btn_w50 {
		margin-left: auto;
		margin-right: auto;
	}
}

/*========================================
NEWS,BLOG
========================================*/
.news-item__body {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 10px;
    margin-bottom: 20px;
    border-bottom: 1px solid #DFDDDD;
}
.news-item__body time {
	margin-right: 30px;
}
.news-cate a {
    font-size: 14px;
    background-color: #7FC05D;
    padding: 3px 7px;
    border-radius: 6px;
    color: #fff;
	 text-decoration: none;
	 border: 1px solid #7FC05D;
}
.news-cate a:hover {
    background-color: #fff;
	 border: 1px solid #7FC05D;
	 color: #7FC05D;
	 text-decoration: none;
}
.news-item__title {
	font-weight: bold;
	margin-left: 0;
	font-size: 16px;
}
.news-item__title a:hover {
	text-decoration: none;
    color: #7FC05D;
}
.news-time-cate {
    display: flex;
    align-items: center;
    max-width: 270px;
    width: 100%;
}
.news-time-cate .news-time-cate_in{
	width: auto;
    display: flex;
    align-items: center;
}
.news-2col, .blog-2col, .blog-3col  {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.news-main {
	width: calc(75% - 5%);
	margin-right: 10%;
}
.single .news-time-cate {
    max-width: inherit;
    justify-content: space-between;
}
.news-sidebar h2 {
    color: #7FC05D;
    letter-spacing: 0.05em;
}
.news-sidebar li {
	list-style: none;
	padding-left: 20px;
}
.news-sidebar li a {
	position: relative;
	color: #ccc;
   padding-left: 20px;
    line-height: 40px;
    display: inline-block;
}
.news-sidebar li a:hover {
	text-decoration: none;
   color: #7FC05D;
    transition: all .2s ease 0s;
}
.news-sidebar li a::before {
	content: "";
	position: absolute;
	width: 16px;
	height: 2px;
	top: 50%;
	left: 0;
	transform: translatex(-50%);
	background-color: #ccc;
}
.news-sidebar li a:hover:before {
	background-color: #7FC05D;
    transition: all .2s ease 0s;
}
.news-sidebar li a.side-active, .archive.post-type-archive .news-side-cate li:first-child a, .news-side-archive ul > li > a.current {
   color: #7FC05D;
}
.news-sidebar li a.side-active::before, .archive.post-type-archive .news-side-cate li:first-child a::before, .news-side-archive ul > li > a.current::before {
	background-color: #7FC05D;
}
.news-side-cate {
	margin-bottom: 20px;
}
.single-news-title {
    margin-top: 20px;
	margin-bottom: 20px;
}
.single-news-cate {
	margin-right: 20px;
}
.back_btn a {
	font-weight: bold;
    font-size: 22px;
    line-height: 1.4;
    padding: 12px 0 10px 50px;
    background: url(/wp/wp-content/uploads/2023/03/news_btn.png) no-repeat 5% 12px/25px auto;
}
.back_btn a:hover {
	color: #7FC05D;
	text-decoration: none;
    background: url(/wp/wp-content/uploads/2023/03/news_btn.png) no-repeat left 12px/25px auto;
}
.blog-main {
    width: calc(80% - 5%);
    margin-right: 5%;
}
.blog-main-in {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.blog-item {
	width: calc(50% - 20px);
    margin-right: 20px;
    margin-bottom: 40px;
}
.blog-item:nth-child(even) {
    margin-right: 0;
}
.blog-item img {
	border-radius: 20px;
	max-width: 90% !important;
	margin-bottom: 20px;
}
.blog-3col .blog-main {
    width: 100%;
    margin-right: 0;
}
.blog-3col .blog-item {
	width: calc(100% / 3 - 20px);
    margin-right: 20px;
    margin-bottom: 30px;
}
.blog-time-cate {
	display: flex;
	align-items: center;
    margin-bottom: 10px;
}
.blog-time-cate .post-categories li {
	list-style: none;
	margin-right: 10px;
}
.blog-time-cate .post-categories li a {
	color: #7FC05D;
	font-weight: bold;
}
.blog-cate {
	margin-right: 10px;
}
.blog-cate a {
	color: #7FC05D;
	font-weight: bold;
}
.single-blog-img img {
	width: 80% !important;
	border-radius: 20px;
}
.pagination {
	margin: 40px auto 0;
}
.pagination ul {
    display: flex;
    justify-content: center;
    align-items: center;
}
.pagination li {
	font-weight:bold;
	list-style: none;
    margin-right: 20px;
}
.pagination li a {
    padding: 2px 10px;
}
.pagination li.active {
    background-color: #4B4B4B;
    color: #fff;
    padding: 2px 10px;
    border-radius: 6px;
}
.pagination li:last-child {
    margin-right: 0;
}
.sns_btn_2col, .sns__container {
	display: flex;
    align-items: center;
}
.sns_2col {
	display: flex;
    align-items: center;
    background-color: #F6F6F6;
    border-radius: 100px;
    padding: 10px 20px;
}
.sns__container a {
	margin-right: 5px;
	margin-left: 5px;
}
.sns__container img {
	max-width: 20px !important;
}
@media only screen and (max-width: 690px) {
	.news-main {
    	width: 100%;
    	margin-bottom: 40px;
    	margin-right: 0;
	}
	.news-cate a {
    	font-size: 12px;
    	padding: 2px 5px;
	}
	.news-2col, .blog-2col {
		display: block;
	}
	.news-time-cate .news-time-cate_in {
		display: block;
	}
	.news-time-cate {
		margin-bottom: 10px;
	}
	.single .news-time-cate {
    	max-width: initial;
    	justify-content: space-between;
	}
	.blog-main {
    	width: 100%;
    	margin-right: 0;
	}
	.blog-main-in {
    	display: block;
    	margin-bottom: 40px;
	}
	.blog-item, .blog-3col .blog-item {
    	width: 100%;
    	margin-right: 0;
	}
	.back_btn a {
    	font-size: 16px;
    	padding-left: 30px;
    	background: url(/wp/wp-content/uploads/2023/03/news_btn.png) no-repeat left 10px/20px auto;
	}
	.back_btn a:hover {
    	background: url(/wp/wp-content/uploads/2023/03/news_btn.png) no-repeat left 10px/20px auto;
	}
	.pagination {
		margin: 20px auto 40px;
	}
	.blog-3col .blog-main {
		margin-bottom: 0;
	}
	.blog-item a {
		display: block;
	}
	.blog-item img {
		max-width: 100% !important;
	}
	.single-blog-img img {
		width: 100% !important;
	}
}

.account-list .col a {
    padding: 10px 34px 10px 0;
    background: url(/wp/wp-content/uploads/2023/06/pdf-icon.png) no-repeat right 7px/30px auto;
}

@media only screen and (max-width: 690px) {
	.account-list .dlb_subtitle3_01 {
		font-size: 18px !important;
	}
	.account-list.col4_m_431 {
		justify-content: space-between;
	}	
	.account-list.col4_m_431 .col {
    	width: calc(50% - 20px) !important;
    	margin: 0 !important;
    	margin-bottom: 20px !important;
	}
}

/*========================================
CONTACT
========================================*/
.contact_form {
    width: 80%;
    margin: auto;
}
.contact-form-block {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
}
.contact-form-block label {
	width: 50%;
}
.contact-form-block .form {
	width: 50%;
}
.required {
	background-color: #FF0000;
	color: #fff;
	padding: 2px 4px;
	border-radius: 4px;
	font-size: 12px;
	margin-left: 10px;
}
.privacy_txt {
	font-size: 14px;
}
.form-item {
    display: flex;
    flex-direction: column
}
.form-item .mwform-checkbox-field {
	margin-left: 0 !important;
	margin-bottom: 10px;
}
.contact_btn input {
    background-color: #7FC05D;
    color: #fff;
    min-width: 200px;
    padding: 18px;
    font-weight: bold;
    border: 2px solid #7FC05D;
}
.contact_btn input:hover {
    background-color: #fff;
    color: #7FC05D;
    border: 2px solid #7FC05D;
}
#contact .contact_block {
	display: none;
}
.privacy_txt a {
	color: #7FC05D;
}
@media only screen and (max-width: 690px) {
	.contact-form-block {
    	display: block;
	}
	.contact-form-block .form {
    	width: 100%;
    	margin-top: 20px;
	}
	.contact_form {
    	width: 100%;
	}
}

/*========================================
SITEMAP
========================================*/
.sitemap ul {
    display: flex;
    flex-wrap: wrap;
}
.sitemap ul li {
    width: calc(33% - 40px);
	list-style: none;
    font-size: 22px;
    line-height: 1.4;
	margin-right: 40px;
    margin-bottom: 40px;
    font-weight: bold;
}
.sitemap ul li a {
	padding-right: 30px;
	display: block;
    background: url(/wp/wp-content/uploads/2023/03/arrow_gray.png) no-repeat 98% 0px/30px auto;
}
.sitemap ul li a:hover {
	text-decoration: none;
    background: url(/wp/wp-content/uploads/2023/03/arrow_gray.png) no-repeat right 0px/30px auto;
    color: #7FC05D;
}
@media only screen and (max-width: 690px) {
	.sitemap ul {
		justify-content: space-between;
	}
	.sitemap ul li {
    	width: calc(50% - 20px);
	    font-size: 14px;
	    margin-right: 20px;
    	margin-bottom: 30px;
	}
	.sitemap ul li:nth-child(even) {
	    margin-right: 0;
	}
	.sitemap ul li a {
		font-size: 16px;
	    background: url(/wp/wp-content/uploads/2023/03/arrow_gray.png) no-repeat right 0px/22px auto;
    	padding-right: 20px;
	}
	.sitemap ul li a:hover {
	    background: url(/wp/wp-content/uploads/2023/03/arrow_gray.png) no-repeat right 0px/22px auto;
	}
}
.sp-size01 {
  font-weight: bold;
  font-size: 18px;
}
@media only screen and (max-width: 690px){
.sp-size01 {
  font-weight: 500;
  font-size: 14px;
}
}