@charset "UTF-8";
/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
ADD:追加cssはここに記入。style.cssは使用しない
*/

/*cocooon設定--フォント--メイリオをnotosansjpに書き換えて使用*/
@font-face {
src:url("https://https://tensuikai.or.jp/recruitment/wp-content/themes/cocoon-child-master/custom/fonts/notosansjp_regular400.woff2") format('woff2'), url("https://tensuikai.or.jp/recruitment/wp-content/themes/cocoon-child-master/custom/fonts/notosansjp_regular400.woff") format("woff");
        font-family: "Noto Sans JP";
        font-style: normal;
	    font-weight:400;
        font-display: swap;
 }
.ff-meiryo{	font-family: 'Noto Sans JP'; /*400*/}

:root{
	/*
	 --bs-white
	--bs-secondary:#6c757d;
	--bs-border-color;
	--cocoon-text-color:#101010;
	--bs-dark-bg-subtle:gray
	 */
	--color_green:#22ac38;
	--color_green_rgb:34,172,56;
	--color_yellow:#ffdc00;
	--color_red:#e83828;
	--color_red_rgb:232,56,40;
	--color_cream:#fff4cd;
	--color_pink:/*#f7b5bb*/#F8B8C6;
	--color_pink_rgb:248, 184, 198;
    --color_red_poppo:#fd3f3f;
	--color_yellow_poppo:#fdbe01;
	--color_female:#ff3051;
	--color_male:#03a9f4;	
	
	--fs_14:0.875rem;
	--fs_18:1.125rem;
	--fs_22:1.375rem;
	--header_h:100px;/*ヘッダーの高さ*/
	--header_h_sp:60px;
	--gnavi_h:60px;/*ヘッダーナビの高さ*/
	--mv_h: calc( 100vh );/*メインビジュアルの高さ*/
	--subpagetop_h:200px;/*サブページトップ*/
	--bar_b_h_sp:60px;/*フッターバーの高さ*/
	--line_image_s:24px;/*line_logo*/
	--line_image_l:250px;

	 --font_jp_name:"Noto Sans JP", sans-serif;
	--font_jp_maru_name:"Zen Kurenaido", sans-serif;/*ヘッダーで個別取り込み*/	
	--font_jp_min_name:"Shippori Mincho", serif;/*ヘッダーで個別取り込み*/	
	--font_en_name:"Lato", sans-serif;/*w-700*/
	--font_en_maru_name:"Jua", sans-serif;/*ヘッダーで個別取り込み*/
	--font_num_name:'Prompt', sans-serif;
	--font_num2_name:'Roboto Flex', sans-serif;
	--font_fa_name:"Font Awesome 5 Free";
	--fluid_max_w:/*1800px*/2500px;
	
	--border_round:50px;/*基本のborder-radius*/
	--timeline_left:4rem;/*timelineの位置*/
	--timeline_top:0.65rem;
}

body{letter-spacing: 0.05em;}
img{width:100%;height:auto;}
body.single .entry-content img {
  width: auto;
  height: auto;
}
a{transition: all .3s;}
.breadcrumb-item+.breadcrumb-item::before{display: none;}/*bootstrap設定を消す*/
/*cocoon設定の初期化*/
article a:hover{color:var(--color_gold);}
a:hover {text-decoration:none;}
.article dd{margin:0;}

/*ulのスタイルを解除するには .ul_unstyledを使用する。使用できない場合はこちらに記述*/
ul.ul_unstyled,ul[id^="menu-footer-menu"],ul[id^="menu-sitemap-"],ul[id^="menu-sitemap-"]  ul.sub-menu {list-style-type: none;padding: 0;}
ul.ul_unstyled li,ul[id^="menu-footer-menu"] > li,ul[id^="menu-sitemap-"] > li{margin: 0;}
/*ページ内リンクのヘッダー高さの対応（テスト中:scroll-padding-topが使えないため）*/
[id]:target {scroll-behavior: smooth;scroll-margin-top:80px;}/*ページ内リンクrootが使用できない*/

/*fluid-maxwide*/
#home_about .container-fluid,#home_interview .container-fluid{max-width:var(--fluid_max_w);}
.container-fluid.fluid-maxwide{max-width:var(--fluid_max_w);} /*クラスで使用できるようにした*/

/*loading---------------------------------*/
/*枠組み*/
.loader-wrap {
	z-index: 99999;
	position: fixed;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100vw;
	height: 100vh;
	background:var(--bs-white);
	overflow: hidden!important;
}
body:not(.front-top-page) .loader-wrap {
	background:var(--color_green);
}

/*loading_message*/
.loading_message svg{width:100%;height:auto;max-width:750px;}
[class^="svg-elem-"] {
    opacity: 0;
    animation: loadingfadeIn 1s forwards;}
     @keyframes loadingfadeIn {
          from { opacity: 0; }
          to { opacity: 1; }
      }
        .svg-elem-1 { animation-delay: 0.35s; }
        .svg-elem-2 { animation-delay: 0.2s; }
        .svg-elem-3 { animation-delay: 0.2.5s; }
        .svg-elem-4 { animation-delay: 0.3s; }
        .svg-elem-5 { animation-delay: 0.35s; }
        .svg-elem-6 { animation-delay: 0.4s; }
        .svg-elem-7 { animation-delay: 0.45s; }
        .svg-elem-8 { animation-delay: 0.5s; }
        .svg-elem-9 { animation-delay: 0.55s; }
        .svg-elem-10 { animation-delay: 0.6s; }
        .svg-elem-11 { animation-delay: 0.65s; }
		.svg-elem-12 { animation-delay: 0.7s; }
		.svg-elem-13 { animation-delay: 0.75s; }
        .svg-elem-14 { animation-delay: 0.8s; }
        .svg-elem-15 { animation-delay: 0.85s; }
        .svg-elem-16 { animation-delay: 0.9s; }
        .svg-elem-17 { animation-delay: 0.95s; }
        .svg-elem-18 { animation-delay: 1s; }
        .svg-elem-19 { animation-delay: 1.05s; }
        .svg-elem-20 { animation-delay: 1.1s; }
        .svg-elem-21 { animation-delay: 1.15s; }
        .svg-elem-22 { animation-delay: 1.15s; }
        .svg-elem-23 { animation-delay: 1.2s; }
        .svg-elem-24 { animation-delay: 1.25s; }
        .svg-elem-25 { animation-delay: 1.3s; }

/*mainimg vegas------------------------------*/
.header-cover {
    margin: 0 auto;
    width: 100%;
    background:var(--bs-white);
	height: 100vh;
   height: calc(var(--vh, 1vh) * 100);
	z-index:0;
}
.slider {
	z-index:1;
	width: 100%;
	height: 100vh;
	/*height: calc(var(--vh, 1vh) * 100);*/
    background-position:center;
    background-size: cover;
}
#main_catch{
	display:block;
	width:90%;
	max-width:700px;
	height:auto;
	position:absolute;
	 top: 65%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
     z-index:4;
}

#main_icons > span{
	width:75px;
	height:75px;
	display:block;
	background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/main_icon.png');
	background-size:contain;
	position:absolute;
	z-index:3;
}

#main_icons > span:nth-child(1) {
	bottom: 30%;
	right: 20%;
	animation-name: anime_mainicon_1;
	animation-delay: 0.5s;
	animation-duration: 8s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	opacity: 0;
}

@keyframes anime_mainicon_1{
	0%{
		transform: translateX(0) translateY(0) scale(1) rotate(0);
		opacity: 0;
	}
	10%; {opacity: 1;}
	25% {
		transform: translateX(115%) translateY(-80%) scale(0.9) rotate(0.1turn);
		opacity: 0;
	}
	37.5% {opacity: 1;}
	70%{
		transform: translateX(230%) translateY(-100%) scale(1.1) rotate(0.2turn);
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}

#main_icons > span:nth-child(2) {
	bottom: 30%;
	right: 80%;
	animation-name: anime_mainicon_2;
	animation-delay: 1.5s;
	animation-duration: 8s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	opacity: 0;
}
@keyframes anime_mainicon_2 {
	0%{
		transform: translateX(0) translateY(0) scale(1) rotate(0);
		opacity: 0;
	}
	12.5% {opacity: 1;}
	25% {
		transform: translateX(-115%) translateY(-80%) scale(0.9) rotate(-0.1turn);
		opacity: 0;
	}
	37.5% {opacity: 1;}
	50%{
		transform: translateX(-230%) translateY(-100%) scale(1.1) /*rotate(-0.15turn)*/rotate(-0.2turn);
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}
#main_icons > span:nth-child(3) {
	bottom: 50%;
	right: 80%;
	animation-name: anime_mainicon_3;
	animation-delay: 2.5s;
	animation-duration: 8s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	opacity: 0;
}
@keyframes anime_mainicon_3 {
	0%{
		transform: translateX(0) translateY(0) scale(1) rotate(0);
		opacity: 0;
	}
	12.5% {opacity: 1;}
	25% {
		transform: translateX(-115%) translateY(-100%) scale(0.9) rotate(-0.1turn);
		opacity: 0;
	}
	37.5% {opacity: 1;}
	50%{
		transform: translateX(-230%) translateY(-200%) scale(1.1) /*rotate(-0.15turn)*/rotate(-0.2turn);
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}

#main_icons > span:nth-child(4) {
	bottom: 60%;
	right: 30%;
	animation-name: anime_mainicon_4;
	animation-delay: 3.5s;
	animation-duration: 8s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	opacity: 0;
}
@keyframes anime_mainicon_4{
	0%{
		transform: translateX(0) translateY(0) scale(1) rotate(0);
		opacity: 0;
	}
	12.5% {opacity: 1;}
	25% {
		transform: translateX(50%) translateY(-100%) scale(0.9) rotate(0.1turn);
		opacity: 0;
	}
	37.5% {opacity: 1;}
	50%{
		transform: translateX(100%) translateY(-200%) scale(1.1) /*rotate(0.15turn)*/rotate(0.2turn);
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}

#main_icons > span:nth-child(5) {
	bottom: 60%;
	right: 50%;
	animation-name: anime_mainicon_5;
	animation-delay: 4s;
	animation-duration: 8s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	opacity: 0;
}
@keyframes anime_mainicon_5 {
	0%{
		transform: translateX(0) translateY(0) scale(1) rotate(0);
		opacity: 0;
	}
	12.5% {opacity: 1;}
	25% {
		transform: translateX(20%) translateY(-100%) scale(0.9) rotate(-0.1turn);
		opacity: 0;
	}
	37.5% {opacity: 1;}
	50%{
		transform: translateX(70%) translateY(-200%) scale(1.1) /*rotate(-0.15turn)*/rotate(-0.2turn);
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}

#main_icons > span:nth-child(6) {
	bottom: 10%;
	right: 70%;
	animation-name:anime_mainicon_6;
	animation-delay: 5s;
	animation-duration: 6s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	opacity: 0;
}
@keyframes anime_mainicon_6 {
	0%{
		transform: translateX(0) translateY(0) scale(1) rotate(0);
		opacity: 0;
	}
	12.5% {opacity: 1;}
	25% {
		transform: translateX(-60%) translateY(-50%) scale(0.9) rotate(-0.1turn);
		opacity: 0;
	}
	37.5% {opacity: 1;}
	50%{
		transform: translateX(-100%) translateY(-75%) scale(1.1) /*rotate(-0.15turn)*/rotate(-0.2turn);
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}

#main_icons > span:nth-child(7) {
	bottom: 50%;
	right: 65%;
	animation-name: anime_mainicon_7;
	animation-delay: 6s;
	animation-duration: 8s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	opacity: 0;
}
@keyframes anime_mainicon_7 {
	0%{
		transform: translateX(0) translateY(0) scale(1) rotate(0);
		opacity: 0;
	}
	12.5% {opacity: 1;}
	25% {
		transform: translateX(-115%) translateY(-80%) scale(0.9) rotate(-0.1turn);
		opacity: 0;
	}
	37.5% {opacity: 1;}
	50%{
		transform: translateX(-230%) translateY(-100%) scale(1.1) /*rotate(-0.15turn)*/rotate(-0.2turn);
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}

#main_icons > span:nth-child(8) {
	bottom: 10%;
	right: 25%;
	animation-name: anime_mainicon_8;
	animation-delay: 3s;
	animation-duration: 8s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	opacity: 0;
}
@keyframes anime_mainicon_8 {
	0%{
		transform: translateX(0) translateY(0) scale(1) rotate(0);
		opacity: 0;
	}
	10%; {opacity: 1;}
	25% {
		transform: translateX(115%) translateY(-80%) scale(0.9) rotate(0.1turn);
		opacity: 0;
	}
	37.5% {opacity: 1;}
	70%{
		transform: translateX(230%) translateY(-100%) scale(1.1) rotate(0.2turn);
		opacity: 0;
	}
	100%{
		opacity: 0;
	}
}

/*header---------------------------------*/
.header-container{
	position: fixed!important; 
	top: 0px; left: 0px; width: 100%!important;
	z-index:10;
	transition: 0.5s;
}
.header-container.scroll-nav{ top :-100px;}
#header-container{
	background: transparent;
}
body.front-top-page #header-container, body.add-parentid-jobs #header-container{
	background: linear-gradient(180deg, rgba(195,188,159,0.8) 0%, rgba(195,188,159,0) 80%, rgba(195,188,159,0) 100%);
}
.header,#header-container .navi{ background: transparent;}

/*logo*/
.header-container-in.hlt-top-menu .logo-header {max-height :var(--header_h);}
.header-container-in.hlt-top-menu .logo-header img{max-height :var(--header_h);}
.header-container-in.hlt-top-menu{padding-right:80px;}
.header-container-in.hlt-top-menu.wrap{width:100%;}
.site-name-text-link{padding:0;}

/*gnavi*/
.navi-in > ul li{height:var(--gnavi_h); border-left:1px solid rgba(var(--bs-white-rgb), 0.7);}
.navi-in > ul li:first-child{border-left:none;}
.navi-in > ul li.header_entry{
	background-color:var(--color_green);
	border-left:none;
	border:1px solid var(--bs-white);
	margin-left:1rem;
}
#navi .navi-in>.menu-header .sub-menu{
	background-color:transparent!important;
}
.navi-in  ul.sub-menu > li{
	background:rgba(var(--color_green_rgb),1);
	height:calc(var(--gnavi_h) / 1.5)!important;
	border:1px solid var(--bs-white);
	border-radius:100vh;
	margin: 2px 0;
}
#navi .navi-in>ul>li>a{padding:0 1.2em;}
#navi .navi-in  ul.sub-menu > li > a:hover {border-radius:100vh;}
#navi .navi-in > ul > li > a:hover {background-color:rgba(var(--color_green_rgb),0.6);}

/*footer---------------------------------*/
/*コピーライトエリア*/
.footer,.footer-bottom{ margin-top:0;}
/*コンテンツ下部エリア*/
.footer_logo_border{border-top :1px solid var(--bs-white);}
.footer_logo_img{max-width:380px;}

/*content-bottomの幅を100%に変更*/
#content-bottom-in.wrap{width:100%;}
.content-bottom{margin:0;}
.widget.widget-content-bottom,.content-bottom{margin-bottom:0;!important}

/*foote-sitemap*/
ul[id^="menu-sitemap-"]{
	margin-bottom:0;
	padding-left:1rem;
}
ul[id^="menu-sitemap-"] a{
	color:var(--bs-white);
	padding: 0.25rem 0;
	display:inline-block;
}
ul[id^="menu-sitemap-"]  ul.sub-menu{ margin-left:1rem; font-size:0.9rem;}
ul[id^="menu-sitemap-"] a:hover{ color:var(--color_yellow);}
/*footermenu*/
ul[id^="menu-footer-menu"]{
	margin-bottom:0;
	display:flex;
	flex-wrap:nowrap;
}
ul[id^="menu-footer-menu"] a{
	color:var(--bs-white);
	padding: 0.25rem 0.5rem;
	display:inline-block;
}

/*お知らせ一覧ショートコード用[post_list]-----------------------------*/
ul.ul_post_list > li{
	border-bottom:2px dotted var(--color_green);
	padding:2px;
}
ul.ul_post_list > li > a{
	display:flex;
	align-items:start;
	/*flex-wrap:wrap; */
   padding:0.5rem 1.5rem 0.5rem 0.5rem;
	color:var(--bs-body-color);
	line-height:1.4;
	position:relative;
}
ul.ul_post_list > li > a::after{
 font-family: var(--font_fa_name);
  content: '\f054';
  font-weight: 900;
  color:var(--bs-white);
  position:absolute;
	right:0.5rem;
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	transition: color 0.3s ease-in-out;
}
ul.ul_post_list > li > a:hover::after{color:var(--color_green);}

ul.ul_post_list > li .post_date{
	width:8em;
	background-color:var(--color_green);
	color:var(--bs-white);
	text-align:center;
	margin-right:1rem;
	letter-spacing:0.025rem;
}
ul.ul_post_list > li .post_title{
	margin:0;
	display:flex;
	flex-direction:column;
	flex:1;
}
ul.ul_post_list .post_category,ul.add_slick .post_category{
	color:var(--color_green);
	padding :1px 12px;
	margin:0 2px 0 0 ;
	border-radius:1rem;
	background-color:var(--bs-white);
	border:1px solid var(--color_green);
}
ul.add_slick .post_category{padding :3px 8px;border-radius:0;}
ul.ul_post_list .post_category.cat_important{color:var(--bs-danger);border-color:var(--bs-danger);}
ul.ul_post_list .post_category.cat_closed{color:#E8686B;border-color:#E8686B}
ul.ul_post_list .post_category.cat_recruit{color:#838EDE;border-color:#838EDE;}
ul.add_slick .post_category.cat_column,.cat_column{color:var(--color_sky);border-color:var(--color_sky);}
ul.add_slick .post_category.cat_blog,.cat_blog{
	background: rgb(227,5,255);
	background: linear-gradient(145deg, rgba(227,5,255,1) 0%, rgba(217,32,169,1) 18%, rgba(247,85,28,1) 58%, rgba(221,123,2,1) 100%);
}
	.cat-link{color:var(--bs-white);}
/*固定+トップ共通*/
.article h2,.article h3,.article h4,.article h5{
	background-color:transparent;
	margin-bottom:0;
	padding:0;
	margin-block-start: 0;
    margin-block-end:0;
	border:none;
	color:var(--cocoon-text-color);
	/*font-weight:600;*/
}
body.home.entry-content,body.page.entry-content{margin-bottom:0!important;}
/*固定ページテンプレート:body:not(.home)-----------------------*/
.page .date-tags {display: none;}
.content{margin-top:0;}
.main{padding: 0;}

/*固定ページヘッダー部：body.home ,body.add-parentid-jobs--------------------------*/
body.home .main,body.add-parentid-jobs .main{padding-top:0;}
body.home .entry-title,body.add-parentid-jobs .entry-title{display:none;}
body.home .entry-content,.body .article,.entry-content >*, body.jobs .entry-content,body.add-parentid-jobs .entry-content,body.add-parentid-guidelines .entry-content{margin-bottom:0;}


/*トップページ：body.home*/
#home_about .bg_mark::before{
	content:'';
	width:100%;
	height:100%;
	max-width:200px;
	display:block;
	opacity:0.2;
	background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/mark_color.svg');
	background-repeat:no-repeat;
	background-size:contain;
	background-position:center center;
	
	position:absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);	
	z-index:-1;
}
/*home_support*/
#home_support{min-height:400px;}
.home_support_photo{
	display:block;
	border-radius: 0 0 var(--border_round) 0;
	width:40vw;
	height:100%;
	background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/photo_home_support-min.jpg');
	background-repeat:no-repeat;
	background-size:cover;
	background-position:left center;
	
	position:absolute;
	left:0;
	top:0;
	z-index:-1;
}

/*#home_interview*/
#home_interview_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	overflow:hidden
}
#home_interview_bg > span{
	display:block;
	width:40vw;
	height:40vw;
	background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/icon_mark.svg');
	background-size:contain;
	opacity: 0.6;
	position:absolute;
	z-index:1;
     transform-origin: 50% 50%; /* 回転の基準を中央に */
}
#home_interview_bg > span:nth-child(1){
	top:-2vw;right:-2vw;
	 animation: rotate-icons-odd 3s infinite steps(1, end);
}
#home_interview_bg > span:nth-child(2) {
	bottom:2vw;left:-2vw;
	animation: rotate-icons-even 3s infinite steps(1, end);
}
/*animaton*/
/* カチカチと回転するアニメーション */
/* 奇数の要素の回転（-20度 → 20度） */
@keyframes rotate-icons-odd {
    0% { transform: rotate(0deg); }
    50% { transform: rotate(-20deg); }
    100% { transform: rotate(20deg); }
}

/* 偶数の要素の回転（20度 → -20度） */
@keyframes rotate-icons-even {
    0% { transform: rotate(0deg); }
    50% { transform: rotate(20deg); }
    100% { transform: rotate(-20deg); }
}


.title_img_l > img{max-width:300px;}
a[class^="link_home_person_"] {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
a[class^="link_home_person_"] > img {
  padding-left: 4px;
  display: block;
  width: 100%;
  transition: opacity 0.3s ease-in-out;
}
a[class^="link_home_person_"]:hover img {
  opacity:0.7;
}
a[class^="link_home_person_"] > article {
  position: absolute;
  left: 0;
  bottom: 1rem;
  display: flex;
  flex-direction: column;
  gap:2px; /* 要素間の余白 */
}
/* ホバー時に表示されるテキストのスタイル */
a[class^="link_home_person_"] span.hover_text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: var(--bs-white);
  font-size: 1.5rem;
  background-color:var(--color_red);
	padding:4px 6px;
  font-family: var(--font_en_maru_name);
  letter-spacing: 0.02rem;
  line-height: 1.2;
  text-align: center;
  opacity: 0;
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  pointer-events: none;
  z-index:10;
}
a.link_home_person_green span.hover_text {background-color:var(--color_green);}
/* ホバー時にテキストを表示 */
a[class^="link_home_person_"]:hover span.hover_text {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.1);
}

a[class^="link_home_person_"] > article h3 > span{
	background-color:rgba(255,255,255,0.9);
	display:inline;
	padding:1px 6px;
	font-weight:400;
	letter-spacing:0.2rem;
}
a[class^="link_home_person_"] > article  ul > li{
	line-height:1.2;
	padding:4px 8px;
	border-radius:2px;
	color:var(--bs-white);
	background-color: rgba(var(--color_red_rgb), 0.85);
	margin:1px;
}
a.link_home_person_green > article ul > li{
	background-color: rgba(var(--color_green_rgb), 0.85);
}

#home_info h2{border-bottom:1px solid var(--color_green);}
#home_info h2 > img{max-width:300px;}


/*subpage下層ページ---------------------------------*/
/*パン屑 homeは非表示にする*/
.breadcrumb{margin:0 ; padding:1rem;}
.breadcrumb, .breadcrumb a{color :var(--bs-body-color);font-size:var(--fs_14);}

/*下層固定ページ共通 トップページ、職種ページ, 新卒ページ以外*/
/*entry-header*/
body.page:not(.home):not(.add-parentid-jobs ) .entry-header{	
	height:var(--subpagetop_h);
	position:relative;
	display:flex;
	align-items:end;
	justify-content:end;
}
body.page:not(.home):not(.add-parentid-jobs ) .entry-header::before{
	content:'';
	display:block;
	width:90vw;
	height:100%;
	background-color:var(--color_green);
	position:absolute;
	top:0;
	right:0;
	border-radius:0 0 0 var(--border_round);
}
body.page:not(.home):not(.add-parentid-jobs ) .entry-header::after{
	content:'';
	display:block;
	width:80px;
	height:80px;
	position:absolute;
    bottom: -20px;
    right: 25px;
	background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/icon_logomark.svg');
	background-size:cover;	
}
body.page:not(.home):not(.add-parentid-jobs ) .entry-header h1{ 
	width:100%;
	text-align:end;
	font-family: var(--font_jp_name);
	font-weight:700;
	color:var(--bs-white);
	font-size:2rem;
	 letter-spacing:0.25rem;
	padding-top:1rem;
	padding-left:14vw;
	position:relative;
	white-space: nowrap; /* 改行を防止 */
	margin-right:120px;
}

/*投稿ページ共通 投稿ページはページタイプを1カラム狭いに強制*/
body.single #header-container,body.blog #header-container {background:var(--color_green)!important;}
.single.column-narrow .content-in,.blog.public-page .content-in,.archive.public-page .content-in{width:900px;padding:calc(var(--header_h) * 1.5) 16px 0 16px ;}
body.single .entry-header h1{
	margin-top:2rem;
padding:1rem 0;
letter-spacing:0.1rem;
border-bottom: 2px dotted var(--bs-border-color);
font-weight:400;
}
/*投稿一覧*/
#list .entry-card-wrap{border-bottom: 2px dotted var(--bs-border-color);}
#list .entry-card-wrap .entry-card-info > * {font-size:1em;}
/*サムネイル非表示*/
#list .entry-card-wrap .entry-card  figure {display:none;}
#list .entry-card-wrap .entry-card .entry-card-content {margin-left:0;}
.related-entry-card-title, .entry-card-title{font-weight:400;}
/*カテゴリがなぜか非表示になるので*/
.e-card-meta .e-card-categorys{display:inline-block;padding-top:0.5rem;}
.e-card-meta .e-card-categorys > span.entry-category{
	color: var(--color_green);
padding: 1px 12px;
margin: 0 2px 0 0;
border-radius: 1rem;
background-color: var(--bs-white);
border: 1px solid var(--color_green);
	
}

/*subpage nav*/
.subpage_nav a{
	position: relative;
	padding: 1rem 2rem ;
	color: var(--bs-white);
	background-color:var(--color_green);
	border-radius: 100vh;
	border:2px solid var(--color_green);
	display:flex;
	align-items:center;
	line-height:1.25;
}
.subpage_nav a::after{
	 content:'\f078';
	font-family: var(--font_fa_name);
	font-weight: 900;
	font-size:0.75rem;
	position: absolute;
	right:1rem;
	top :50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);	
	z-index:1;
	transition: all .1s; 
}
.subpage_nav a:hover{background-color:var(--bs-white);color:var(--color_green);}
.subpage_nav a:hover::after{color:var(--color_green);}

/*募集要項ページ*/
.wrap_round_white{
  border-radius:0 0  calc(var(--border_round) / 2) calc(var(--border_round) / 2)  ;
  background-color:var(--bs-white);
}
.job_title{
  background-color:var(--color_green)!important;
  color:var(--bs-white)!important;
 padding:1rem 1rem 1rem 3rem!important;
  border-radius:calc(var(--border_round) / 2) calc(var(--border_round) / 2) 0 0 ;
  margin:0;
position: relative;
}
.job_title::before{
content: '';
width: 1.5rem;
height: 1.5rem;
display: block;
background-image: url('https://tensuikai.or.jp/recruitment/wp-content/uploads/icon_logomark_dark.svg');
background-repeat: no-repeat;
background-position: center center;
background-size: contain;
position: absolute;
top: 50%;
left: 1rem;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}

/*animation--------------------------------*/
.fadeIn,.fadeUp{opacity: 0;}
.delay_s{animation-delay: 0.4s;}
.delay_m{animation-delay: 0.8s;}
.delay_l{animation-delay: 1.2s;}
.delay_1{animation-delay: 0.1s;}
.delay_2{animation-delay: 0.2s;}
.delay_3{animation-delay: 0.3s;}
.delay_4{animation-delay: 0.4s;}
.delay_5{animation-delay: 0.5s;}
.delay_6{animation-delay: 0.6s;}

.fadeIn.is-show{
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-perspective: 1000; 
perspective: 1000; 	
will-change: transform, opacity;
animation-name: fadeInAnime;
animation-duration:0.8s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
/*下から */
.fadeUp.is-show{
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
will-change: transform, opacity;
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(200px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}
/*dl-----------------------------*/
dl.dl_table{
margin-left:0 ;
margin-right:0;
margin-block-start: 0;
 margin-block-end: 0;
}
dl.dl_table > dt{
    border-bottom: 1px solid var(--color_green);
	 border-radius: .5px;
     padding: 20px 5px 16px 15px;
	font-weight:normal;
	margin-bottom: 0;
	color:var(--color_green);
}
dl.dl_table > dd{
    border-bottom: 1px solid var(--bs-border-color);
	 border-radius: .5px;
    padding: 20px 5px 16px 15px;
	margin-bottom: 0;
	margin-left:0;
}
@media (max-width:767px){
	dl.dl_table > dt{padding-bottom: 5px;padding-top: 5px;}
	dl.dl_table > dd{padding-top:4px; padding-bottom: 20px;border:none;}
}

/*dtの先頭にdeco*/
dl.dl_square > dt::before{
 content:"\f45c";
font-family:var(--font_fa_name);
 font-weight: 900;
 color:var(--bs-dark-bg-subtle);
 font-size:0.75rem;
margin-right:0.5rem;
}

/*btn--------------------------------------*/
.btn_red{
	position: relative;
	width:calc(100% - 30px);
	height:60px;
	padding: 0 30px;
	background-color:var(--color_red);
	border:3px solid var(--color_red);
	color: var(--bs-white);
	letter-spacing:0.1rem;
	line-height:1.4;
	text-align:center;
	border-radius:30px 0 0 30px;
	
	display:flex;
	align-items:center;
	justify-content:center;
}
.btn_red::before{
	content:'';
	display:block;
	width:60px;
	height:60px;
	border:3px solid var(--color_red);
	border-radius:50%;
	background-color:var(--bs-white);
     position: absolute;
	 top: 50%;
     right:-30px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
	z-index:1;
}
.btn_red::after{
	content:'';
	display:block;
	width:20px;
	height:20px;
    background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/arrow_r_red.svg');
	background-size:contain;
	background-position:center center;
	background-repeat:no-repeat;
    position: absolute;
	top: 50%;
    right:-15px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
	z-index:1;
	transition: right 0.3s ease-in-out;
}
.btn_red:hover{color:var(--bs-white);}
.btn_red:hover::after{
	right:-20px;
}
.btn_descript,.btn_newgrad{ 
	position: relative;
	padding: 1.5rem 2rem;
	background-color:var(--bs-white);
	border:2px solid var(--color_red);
	color: var(--color_red);
	letter-spacing:0.1rem;
	text-align:center;
	border-radius:20px;
}
.btn_descript{ 
	background-color:var(--color_red);
	border:2px solid var(--bs-white);
	color: var(--bs-white);
}
.btn_descript::after,.btn_newgrad::after{
	 content:'';
	display:block;
	width:30px;
	height:30px;
    background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/arrow_maru_r_white.svg');
	background-size:contain;
	background-repeat:no-repeat;
    position: absolute;
	right:1rem;
	 top :50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);	
	z-index:1;
}
.btn_newgrad::after{  background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/arrow_maru_r_red.svg');}

.btn_newgrad:hover{background-color:var(--color_red);color:var(--bs-white);border-color:var(--bs-white);}
.btn_newgrad:hover::after{background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/arrow_maru_r_white.svg');}
.btn_descript:hover{background-color:var(--bs-white);color:var(--color_red);border-color:var(--color_red);}
.btn_descript:hover::after{background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/arrow_maru_r_red.svg');}

/*deco---------------------------------------*/
.mark_title{
position: relative;
padding: 0.25rem 0 0.25rem 2rem!important;
border-bottom: 1px solid var(--color_red);
line-height:1.5;
}
.mark_title::before {
content: '';
width: 1rem;
height: 1rem;
display: block;
background-image: url('https://tensuikai.or.jp/recruitment/wp-content/uploads/icon_logomark.svg');
background-repeat: no-repeat;
background-position: center center;
background-size: contain;
position: absolute;
top: 50%;
left: 0;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}
/*underline*/
.marker{
  background: -webkit-linear-gradient(to right, #FFDC00 50%, transparent 50%);
  background: -moz-linear-gradient(to right, #FFDC00 50%, transparent 50%);
  background: linear-gradient(to right, #FFDC00 50%, transparent 50%);	
	
  background-repeat: no-repeat;
  background-size: 200% .8em; 
    background-position: 100% .7em;
    transition: 2s;
}
.marker_pink {
  background: -webkit-linear-gradient(to right, rgba(var(--color_pink_rgb),0.5) 50%, transparent 50%);
  background: -moz-linear-gradient(to right, rgba(var(--color_pink_rgb),0.5) 50%, transparent 50%);
  background: linear-gradient(to right, rgba(var(--color_pink_rgb),0.5) 50%, transparent 50%);
  background-repeat: no-repeat;
  background-size: 200% .8em; 
    background-position: 100% .7em;
    transition: 2s;
}
.marker.is-show,.marker_pink.is-show{background-position: 0% .7em;}

/*タグリスト*/
ul.ul_tag_green > li{
	border:2px solid var(--color_green);
	background-color:var(--bs-white);
	line-height:1.5;
	font-size:var(--fs_14);
	border-radius :100vh;
	padding: 0.5em 2em;
	margin:2px!important;
	color:var(--color_green);
}
/*縦リスト*/
.ul_mark_vertical > li{
	position:relative;
	padding:40px 0.25rem 0.25rem 0.25rem;
}
.ul_mark_vertical > li::before{
content:'';
width:30px;
height:30px;
display:block;
background-image:url('https://tensuikai.or.jp/recruitment/wp-content/uploads/icon_logomark.svg');
background-repeat:no-repeat;
background-position:center center;
background-size:contain;
position:absolute;
    top:0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);

}

.rounded-image-left > img{  border-radius: 10px 0 0 10px;}
.rounded-image-nuts > img{  border-radius: 20px 0 20px 0;}
.rounded-image > img{border-radius:var(--border_round);}
.zoom-image > a{cursor: zoom-in;}

/*ul*/
/*grayのドット付き*/
ul.list_gray {
    list-style-type: none; 
    padding-left: 0; 
}
ul.list_gray > li {
    padding-left:1rem; 
	position:relative;
    line-height: 1.8;
}
ul.list_gray >li:before {
	font-family: var(--font_fa_name);
	font-weight: 900;
    content:'\f111'; 
	font-size:0.5rem;
    color: var(--bs-dark-bg-subtle);
    position: absolute;
    left: 0;
    top: 0.9em;

}

/*共通---------------------------------------*/
.fs_14{font-size:var(--fs_14)!important;}
.fs_18{font-size:var(--fs_18)!important;}
.font_bold{font-family: var(--font_jp_name);font-weight:700!important;} /*ヘッダーで個別取り込み*/	
.font_maru{font-family: var(--font_jp_maru_name);font-weight:400!important;} 
.font_min{font-family: var(--font_jp_min_name);font-weight:500!important;} 
.font_en{font-family: var(--font_en_name);font-weight:700!important;} 
.font_num{font-family: var(--font_num_name);font-weight:400!important;} 
.font_num2{
	font-family: var(--font_num2_name);
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
	letter-spacing:-0.02rem;
  font-variation-settings:
    "slnt" 0,
    "wdth" 60,
    "GRAD" <grade>,
    "XOPQ" 89,
    "XTRA" 397,
    "YOPQ" 75,
    "YTAS" 750,
    "YTDE" -203,
    "YTFI" 788,
    "YTLC" 514,
    "YTUC" 712;
}
.fw-400 { font-weight: 400!important;}

.color_body{color:var(--cocoon-text-color);}
.color_green{color:var(--color_green)!important;}
.color_red{color:var(--color_red)!important;}
.color_red_poppo{color:var(--color_red_poppo);}
.color_female{color:var(--color_female);}
.color_male{color:var(--color_male);}

.bg_cream{background-color:var(--color_cream);}
.bg_green{background-color:var(--color_green);}
.bg_yellow{background-color:var(--color_yellow);}
.bg_red{background-color:var(--color_red);}
.bg_pink{background-color:var(--color_pink);}

.link_line{
	border-bottom:dotted 1px var(--bs-secondary);
	padding-bottom:0.25rem;
}
.link_line:hover{color:var(--color_green);}

/************************************
** bootstrap:レスポンシブデザイン用のメディアクエリ
************************************/
@media screen and (min-width: 1200px){

}
@media screen and (max-width: 1199.98px) { /*xl（ここからmobile-menu表示）*/
/*gnave非表示*/
.navi-in .menu-pc {display: none;}
/*mobilemenu:表示*/
.mobile-menu-buttons{
	display:flex;
	justify-content: space-between;
	top:16px;
	bottom:auto;
	right:0;
    left:auto;
	background-color:transparent;
	box-shadow:none;
	width:80px;
	height:80px;
	z-index:20;
}
.mobile-menu-buttons .menu-button{
	width:100%;
	height:100%;
}
.menu-button-in{
	width:100%;
	height:100%;
    background-color:var(--color_green);
	border:1px solid var(--bs-white);
	border-right: none;
	border-radius:10px 0 0 10px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	-webkit-transition: all 0.2s ease-in-out;
	        transition: all 0.2s ease-in-out;
}
.menu-button-in:hover{background-color:#1fc73a;opacity:1!important;}

.sidebar-menu-button .menu-icon{
	color:var(--bs-white);
	font-size:var(--fs_22);
    display:flex;
	justify-content:center;
	align-items:center;
	padding:4px 0;
}
.sidebar-menu-button .menu-caption{color:var(--bs-white);opacity:1;font-size:13px; font-weight:600;}
.navi-menu-content{/*右からスライドに変更*/
	left: auto;
	right: 0;
	transform: translateX(101%);
	
	background-color:rgba(32,33,33,0.9);
	padding:0;
    margin:0;
}
.menu-content .menu-drawer{padding-top:30px;}
.menu-close-button{color:var(--color_green);text-align:right;padding:0 10px;}
.fa-times:before{content:'\f00d';}
/*mobile sidebar*/
.menu-content,.sidebar{background-color:var(--color_yellow);}
#slide-in-sidebar{padding: 0 1rem ;}
	.widget-sidebar { margin-bottom:2rem!important;}

.widget_nav_menu ul > li {
	padding:0.2rem 0.25rem ;
	color:var(--cocoon-text-color);
	border-bottom:2px dotted var(--color_green);
}
.widget_nav_menu ul.menu > li > a{
	font-size:1.15rem;
	position:relative;
}
.widget_nav_menu ul.menu > li > a::after{
	  content:'\f105';
font-family: var(--font_fa_name);
  font-weight: 900;
	position:absolute;
	top:50%;
	right:4px;
	 transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    color:var(--color_green);
	font-size:1rem;
	
}
.widget_nav_menu ul > li.menu-item-has-children > a{border:none;}

/*サブメニュー*/
.widget_nav_menu .sub-menu{
		display:flex;
		flex-wrap:wrap;
	    padding:0;
	    margin-bottom:0.5rem;
	}
.widget_nav_menu .sub-menu > li{
	border:none;
	background-color:var(--color_green);
	border-radius:100vh;
	margin:2px;
	}
.widget_nav_menu .sub-menu > li > a{
	padding: 0.25rem 1rem;
	color:var(--bs-white);
	}
	
/*メニュー内ボタン*/
	.widget_nav_menu ul > li.btn_menu_entry/*,.widget_nav_menu ul > li.btn_menu_guide*/{
		border:none;
	}
.widget_nav_menu ul > li.btn_menu_entry > a /*,.widget_nav_menu ul > li.btn_menu_guide > a*/{
		background-color:var(--color_red);
		color:var(--bs-white)!important;
		padding:0.75rem 1rem!important ;
		border-radius:100vh ;
		font-size:var(--fs_18);
	     text-align:center;
	    border:2px solid var(--color_red);
	}
	.widget_nav_menu ul > li.btn_menu_entry > a:hover{
		background-color:var(--bs-white);
		color:var(--color_red)!important;
	}
	
 .mt-lg-n10{margin-top:0!important;}
}
@media screen and (max-width:991.9px){/*lg*/	
  ul[id^="menu-footer-menu"]{
	 text-align:center;
	  display:inline-block;
	}
  .single.column-narrow .content-in,.blog.public-page .content-in,.archive.public-page .content-in{width:auto;}
}
@media screen and (max-width:767.9px) {/*md: sp*/	
	body.page:not(.home):not(.add-parentid-jobs ) .entry-header h1 {font-size: 1.5rem; margin-right:80px;letter-spacing:0;}
	body.page:not(.home):not(.add-parentid-jobs ) .entry-header::after{width:60px;height:60px;}

/*footer_bar*/
#bar_bottom{
	position: fixed;
	width:100vw;
	height:var(--bar_b_h_sp);
	left:0;
	bottom: 0;
	z-index:10;
	opacity:0;
	 transform: translateY(var(--bar_b_h_sp)); /* 初期状態でバーを下に隠す */
}
#bar_bottom a{
	margin: 0;
	padding: 0;
	background-color:var(--color_gold);
	color:var(--bs-white);
	display:flex;
	align-items:center;
	justify-content:center;
	border-right:1px solid var(--bs-white);
}
#bar_bottom a:last-child{	border:none;}
#bar_bottom.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(var(--bar_b_h_sp));
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}
#bar_bottom.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(var(--bar_b_h_sp));
  }
}
	/*information*/
	ul.ul_post_list > li > a {flex-direction:column;}
	ul.ul_post_list > li .post_title { margin-top: 0.5rem;}

	#home_interview_bg > span{
		width:60vw;
		height:60vw;
	}
	#home_interview_bg > span:nth-child(1) {
		top: var(--header_h);
        right: -2vw;
	}
	#home_interview_bg > span:nth-child(2) {
		display:none;
	}
	
	.home_support_photo{
		position:static;
		width:100%;
		height:360px;
	}
}

@media screen and (max-width:575.9px){/*sm*/
	body:not(.home) main > article::before{	max-width:90%;}
	body:not(.home) .entry-header::after{font-size:5rem;}
	
	ul.ul_hours > li:last-child{flex-direction:column;}
}

/************************************
** cocoon:レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下 humbergerMenuの表示*/
@media screen and (max-width: 1023px){
	.header-container-in.hlt-top-menu {flex-direction:row;}
}

/*834px以下*/
@media screen and (max-width: 834px){
main.main{padding:0!important;}/*必要：モバイルの両端の余白を取り除く*/
.header-container-in.hlt-top-menu .header .header-in, .header-container-in.hlt-top-menu .header .logo-text{display:flex;}	
   
   table th, table td{font-size:1rem;}	
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
