@charset "UTF-8";
/*
Theme Name: designsodan
Author: tajima
Description: ワイズ関西オフィシャルサイト
Version:1.5
License: GNU General Public License v2 or later
License URI: LICENSE
*/


body {
font-family: '游ゴシック Medium', '游ゴシック体', 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, 'MS PGothic', 'ＭＳ Ｐゴシック', sans-serif;
font-size: 16px;
-webkit-text-size-adjust: 100%;
font-weight: 400;
line-height: 1.9em;
background-color: #ffffff;
color: #333333;
text-align: justify;
background-color: inherit;
font-feature-settings: "palt";
letter-spacing: 0.15em;
}

body,html{padding: 0 ;margin: 0!important}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
}
table {
border-collapse:collapse;
border-spacing:0;
}
*{
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}

/* テキスト */
h1{font-size: 1.75em; font-weight: 300;}
h2 {font-size: 1.5em;font-weight: 600}
h3 {font-size: 1.25em}
h4 {font-size: 1.125em}
h5 {font-size: 1em}
h6 {font-size: 0.875em}

h1,h2,h3,h4,h5,h6{margin:0 0 10px;}

@media only screen and (max-width:520px){
h1 {font-size: 1.25em;}
h2 {font-size: 1.125em;}
h3 {font-size: 1em}
h4 {font-size: 1em}
}

.mincho{
font-family: "游明朝","Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 300;
}

button, input, label, select, textarea{
font-family: inherit;
font-size: 1em;
}

img{max-width: 100%;height: auto;}
a img{
transition: .6s ease;
-webkit-transition: .6s ease;
-ms-transition: .6s ease;}
a img:hover{opacity: .7;}

img.sukima {max-width: 100%; vertical-align: bottom;}

ul{padding: 0;margin: 0}
ul li{list-style:none}
a{text-decoration: none;color: #333333;}
p{margin:0 0 1em;}
.bold{font-weight:600}
.sp{display: none!important;}
.ipSp{display: none!important;}
.pcipSp{display: none!important;}

@media only screen and (max-width:768px){
.ip{display: none!important;}
.ipSp{display: inherit!important;}
.pcipSp{display: inherit!important;}
}

@media only screen and (max-width:480px){
.sp{display: inherit!important;}
.pc{display: none!important;}
.pcipSp{display: none!important;}
}

/* flexbox */
.d-flex{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
}
.d-flex02{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.d-flex-around{justify-content: space-around;}
.d-flex-start{justify-content: flex-start;}
.d-flex-end{justify-content: flex-end;}
.d-flex-center{justify-content: center;}
.align-center{align-items: center;}
.align-end{align-items: end;}
.flex-reverse{flex-wrap: wrap-reverse;}
.text-center {text-align: center;}
.text-right{text-align: right;}
.text-justify{text-align: justify;}

p.text-center,.text-center p{line-height: 1.8em;}

.col2{width: 48%;}
.col3{width: 30%;margin-right: 5%;margin-bottom: 30px;}
.col3:nth-of-type(3n){margin-right: 0;}

@media only screen and (max-width:768px){
.col2{width: 100%;}
.col3{width: 48%;margin-right: 0;}
.col3:nth-of-type(2n){margin-right: 0;}
.col2:last-child,
.col3:last-child{margin-bottom: 0;}
}

@media only screen and (max-width:520px){
.col3{width: 100%;}
}

.clear{clear: both;}
.bold{font-weight:bold;}
.normal{font-weight: normal!important;}

.red{color: #d9382b}
.black{color:#333333}
.darkgray{color: #b4b4b5;}


/* ------------------------------------------------
外枠
------------------------------------------------
*/ 

.container-inner{
max-width: 1240px;
padding: 0 20px;
margin: 0 auto;
}

main{margin-bottom: 100px;}
#page{margin-top: 10vh;}

#page {margin-top:0;}

/* Tablet*/
@media only screen and (max-width:920px){
main{margin-bottom: 50px;}
#page{margin-top: 3vh;}
.container-inner{padding: 0px 40px;}
}
/* SP*/
@media only screen and (max-width:520px){
.container-inner{padding: 0px 20px;}
}
/* margin */
.mb-1{margin-bottom: 10px;}
.mb-2{margin-bottom: 20px;}
.mb-3{margin-bottom: 30px;}
.mb-4{margin-bottom: 40px;}
.mb-5{margin-bottom: 50px;}
.mb-6{margin-bottom: 60px;}
.mb-7{margin-bottom: 70px;}
.mb-8{margin-bottom: 80px;}
.mb-9{margin-bottom: 90px;}
.mb-10{margin-bottom: 100px;}

@media only screen and (max-width:520px){
.mb-5{margin-bottom: 30px;}
.mb-6{margin-bottom: 40px;}
.mb-7{margin-bottom: 50px;}
.mb-8{margin-bottom: 60px;}
.mb-9{margin-bottom: 70px;}
.mb-10{margin-bottom: 80px;}
}


/* ------------------------------------------------
共通箇所
------------------------------------------------
*/

/* ------------------------------------------------
header 
------------------------------------------------
*/ 
header{
position: sticky;
top: 0;	
z-index: 220;
}
.header_cont{position: relative;}

.header_right{
padding: 10px 0;
background-color: #fff;
width: 100%;
}
.header_left {
position: absolute;
top: 0;	
left: 0;	
}
#header-logo a img:hover{opacity: 1;}
@media (min-width: 769px) and (max-width: 1000px) {

}

.nav-wrapper ul.grand-menu{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: flex-end;	
}

.nav-wrapper ul.grand-menu li{
margin-left: 20px;
font-size: 0.85em;
}

.nav-wrapper ul.grand-menu li:first-child{margin: 0;}

.nav-wrapper ul.grand-menu li a{
padding: 0.3em 0.2em;
display: inline-block;
}

.nav-wrapper ul.grand-menu li a{position: relative;}

.nav-wrapper ul.grand-menu li a:before{
background-color: #c30d23;
content: "";
width: 100%;
height: 1px;
position: absolute;
left: 0;
bottom: 0;
margin:auto;
transform-origin: right top;
transform: scale(0,1);
transition: transform .2s;
}

.nav-wrapper ul.grand-menu li a:hover:before{
transform-origin: left top;
transform: scale(1,1);
}

@media only screen and (min-width:851px){
.header_right .header-nav ul.grand-menu {margin-right: 30px;}
}
@media only screen and (max-width:850px){
header {
background-color: #fff;
width: 100%;
height: 50px;
}
nav #nav-wrapper {padding: 0 10px;}	
.header_left img {width: 30%; margin-left: 10px;}	
.header_right {
width: inherit;
padding: 0;
position: absolute;
right: 0;	
}
}

/*.nav-wrapper ul.grand-menu li .sub-menu{
position: absolute;
visibility: hidden;
transition: all .4s ease;
left: 0;
width: 230px;
background-color: #333333;
opacity: 0;
}

.nav-wrapper ul.grand-menu li .sub-menu li .sub-menu{
position: absolute;
visibility: hidden;
transition: all .4s ease;
top: 0;
left: 230px;
width: 230px;
background-color: #333333;
opacity: 0;
}

.nav-wrapper ul.grand-menu li{
position: relative;
}

.nav-wrapper ul.grand-menu li:hover .sub-menu,
.nav-wrapper ul.grand-menu li .sub-menu li:hover .sub-menu{
display: block;
visibility: visible;
transition: all .4s ease;
opacity: 1;
}

.nav-wrapper ul.grand-menu .sub-menu li{
margin-left: 0;
font-size: 12px;
}

.sub-menu li a{
display: block!important;
padding: 0.8em!important;
color: #ffffff;
}

.nav-wrapper ul.grand-menu li .sub-menu li a:hover{
background-color: #666666;
color: #ffffff;
transition: .5s;
}

.nav-wrapper ul.grand-menu li .sub-menu li a:hover:before{
transform-origin: 0;
transform: scale(0);
}*/


.ham,.black-bg{display: none;}


@media only screen and (max-width:1200px){
.nav-wrapper ul.grand-menu li{
margin-left: 20px;
font-size: 13px;
}
}

@media only screen and (max-width:1000px){
.nav-wrapper ul.grand-menu li{font-size: 12px;}

}

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

header{padding: 15px 0 10px;}

.ham {
position: relative;
width: 32px;
height: 32px;
cursor: pointer;
display: inherit;
z-index: 1000;
}

.ham_l {
position: absolute;
width: 32px;
height: 2px;
left: 0;
background-color: #c30d23;
transition: all .4s;
}

.ham_l-1 {top: 1px;}
.ham_l-2 {top: 10px;}
.ham_l-3 {top: 20px;}

.open .ham_l-1 {transform: rotate(-45deg);top: 11px;background-color: #c30d23;}
.open .ham_l-2 {opacity: 0;}
.open .ham_l-3 {transform: rotate(45deg);top: 11px;background-color: #c30d23;}


.header-nav {
position: fixed;
right: -100%;
top: 0;
width: 50%;
height: 100vh;
background-color: #ffffff;
transition: all .4s;
z-index: 220;
overflow-y: auto;
padding: 50px 30px;
}

.open .header-nav {right: 0;}

.black-bg {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100vh;
background-color: #333333;
opacity: 0;
visibility: hidden;
transition: all 0.5s;
display: inherit;
cursor: pointer;
z-index: 100;
}

.open .black-bg {opacity: 0.6;visibility: visible;}


.nav-wrapper ul.grand-menu{display: block;}

.nav-wrapper ul.grand-menu li{
font-size: 13px;
margin: 0;
margin-left: 0;
}

.nav-wrapper ul.grand-menu li a{
color: #333333;
border-bottom: 1px solid #c30d23;
display: block;
padding: 10px;
}

.nav-wrapper ul.grand-menu li a:before{
content: none;
}

.open .nav-wrapper ul.grand-menu {display: block;transition: .4s;}

/*.nav-wrapper ul.grand-menu li .sub-menu,
.nav-wrapper ul.grand-menu li .sub-menu li .sub-menu{
position: static;
display: none;
transition: all .4s ease;
left: 0;
width: auto;
background-color: #ffffff;
opacity: 0;
}

.nav-wrapper ul.grand-menu li:hover .sub-menu,
.nav-wrapper ul.grand-menu li .sub-menu li:hover .sub-menu{
display: block;
visibility: visible;
transition: all .4s ease;
opacity: 1;
}

.nav-wrapper ul.grand-menu li .sub-menu li a{
padding: 10px 10px 10px 40px!important;
}

.nav-wrapper ul.grand-menu li .sub-menu li .sub-menu li a{
padding: 10px 10px 10px 70px!important;
}

.nav-wrapper ul.grand-menu li .sub-menu li a:hover{
color: #333333;
background-color: #ffffff;
transition: .5s;
}*/
}

@media only screen and (max-width:520px){
.header-nav{width: 70%;padding: 50px 20px;}
}

/* ------------------------------------------------
footer
------------------------------------------------
*/ 

footer{
border-top: 6px solid #b3b3b3;
border-bottom: 6px solid #b3b3b3;	
padding: 25px 0 15px;
}

footer .footer-col{width: 15%;}
.footer_menue{width: 67%; margin-right: 3%;}
.footer_menue ul{justify-content: flex-end;}
.footer_menue ul li{font-size: 0.8em;}

.footer_cont,footer ul{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
}

.footer_menue ul li {margin-right: 20px;}

.copyright p {
font-size: 11px;
margin-bottom: 0;
line-height: 1.5em;	
text-align: end;
}

footer ul li:last-of-type{margin-right: 0;}

@media only screen and (max-width: 820px){
footer .footer-col {width: 50%;}
.footer_menue {width: 80%;}
.footer_menue ul {justify-content: flex-start;}	
.copyright p {text-align: start; margin-bottom: 10px;}	
}

@media only screen and (max-width: 620px){
footer ul {margin-bottom: 5px;}	
footer .footer-col,.footer_menue,
footer .footer-col:nth-of-type(2){width: 100%;}
}
@media only screen and (max-width:480px){
	.footer_menue{line-height:1.2em; font-size:0.8em;}
	.copyright p{font-size:7px;}
	.footer-col.sp a{width:48%;}
}

/* ------------------------------------------------
content
------------------------------------------------
*/

/*----------------------------
コンテンツ
----------------------------*/


/* アニメーション設定*/
.fadein{
opacity: 0;
transform: translate3d(0, 40px, 0);
}

.fadein.is-active{
opacity: 1;
transform: translate3d(0, 0, 0);
transition: 1s;
}


/* --------------パンくず-------------- */
ul.breadcrumb{
font-size: 0.8em;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin: 50px 0;
}

ul.breadcrumb li:not(:first-child){
margin-left: 28px;
position: relative;
}

ul.breadcrumb li:not(:first-child):before{
content: "";
position: absolute;
top: 45%;
left: -20px;
display: block;
width: 5px;
height: 1px;
background: #333333;
padding-left: 5px;
}

ul.breadcrumb li:last-child:after{content: ""}
ul.breadcrumb li:last-child{color: #b4b4b5}

@media only screen and (max-width:768px){
ul.breadcrumb{justify-content: flex-start;font-size: 0.677em;margin: 30px 0;}
}


/* --------------pagination-------------- */

.pagination {text-align: center;}

.nav-links{
display: flex;
justify-content: center;
flex-wrap: wrap;
}

.pagination .page-numbers {
display: flex;
align-items: center;
justify-content: center;
width: 35px;
height: 35px;
margin: 0 15px 20px 0;
color: #808080;
background: #ffffff;
border: 1px solid #808080;
border-radius: 5px;
line-height: 0;
}

.pagination a:hover{
transition: .3s;
background: #ec6c00;
border: 1px solid #ec6c00;
color: #ffffff;
}

.pagination .current {
display: flex;
align-items: center;
justify-content: center;
width: 35px;
height: 35px;
color: #ffffff;
background: #ec6c00;
border: 1px solid #ec6c00;
border-radius: 5px;
}

.pagination .dots {background: transparent;}



/* ------------------------------------------------
ブログ
------------------------------------------------
*/
.archive-post{width: 22%;margin: 0 4% 10px 0;}
.archive-post:nth-child(4n){margin: 0 0 10px 0;}

.post-thumbnail {flex: 1;}

.post-thumbnail {
position: relative;
width: 100%;
padding-top: calc(10 / 14 * 100%);	
}

.post-thumbnail img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}

/*.archive-post img{transition: transform .4s;}

.archive-post a:hover img{
transform: scale(1.1);
-webkit-transform: scale(1.1);
opacity: 1;
transition: .4s;	
}*/

.archive-post h3{
font-size: 1.1em;
font-weight: 600;
line-height: 1.6em;
margin-top: 7px;	
margin-bottom: 5px;
}

.post-description{
font-size: 0.9em;
margin-bottom: 0.2em;
color: #333333;
}

.post-text {
font-size: 0.9em;	
line-height: 1.5em;	
}

.more-link a {
text-align: center;
color: #727171;
font-size: 17px;
font-style: normal;
border: 1px solid #c30d23;
display:inline-block;
margin: 20px 0 0 0;
padding: 4px 20px;
border-radius: 20px;
transition: .6s;
z-index: 1;	
}

.more-link a:hover{
color: #fff;
background-color: #c30d23;
transition: .6s;
}

@media only screen and (max-width: 820px){
.archive-post{width: 48%; margin-bottom: 25px;} 
.archive-post:nth-child(2n){margin:0 0 25px 0}
.archive-post .post-categories li a{font-size: 12px;}
}

@media only screen and (max-width: 520px){
.archive-post h3{font-size:1em ;line-height:1.5em;}
.archive-post p{font-size:0.8em}
.archive-post{width: 100%;}	
}


/* ------------------------------------------------
共通箇所
------------------------------------------------
*/

.main-tit{
font-size: 2em;
text-align: center;
margin-bottom: 50px;
}

.post-time {
font-size: 0.9em;
color: #333333;
padding: 0;
margin: 8px 0 5px 0;
max-height: 30px;
line-height: 150%;	
}

.pagetitle {
color: #727171;
font-size: 15px;
font-style: normal;
border: 1px solid #c30d23;
display: inline-block;
margin: 20px 0 0 0;
padding: 0 13px;
border-radius: 17px;
}

.blog-tit {
font-size: 27px;
line-height: 130%;
font-weight: normal;
color: #333;
margin: 10px 0px 7px 0px;
padding: 18px 0px 15px 0px;
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
}

.wk_red {color: #c30d23}
																	
@media only screen and (max-width: 1000px){
.page-tit{font-size: 2em;margin: 0 auto 50px;}
}

@media only screen and (max-width: 520px){
.main-tit{font-size: 1.5em;margin-bottom: 20px;}
.page-tit{font-size: 1.8em;margin: 0 auto 20px;}
.blog-tit{font-size: 1.125em;margin: 10px 0;}
}


/* ------------------------------------------------
投稿ページ
------------------------------------------------
*/

.col--l .content{width: 70%;}
.sidebar{width: 25%;}

.col--l .content p a{
font-size: 1.2em;
color: #f39e52;
border: 2px solid #f39e52;
border-radius: 50px;
padding: 12px 20px;
display: inline-block;
}

.col--l .content p a:hover{
opacity: 1;
color: #ffffff;
background-color: #f39e52;
}

@media only screen and (max-width: 768px){
.col--l .content{width: 100%;}
/*.col--l .sidebar{display: none;}*/
.col--l .sidebar{width: 100%;}	
.col--l .content p a{font-size: 1em;padding: 10px 15px;border: 1px solid #f39e52;}
}

.post-item{margin-top: 50px;}

.post-tags{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.post-tags li{
font-size: 0.8em;
letter-spacing: 0.1em;
text-align: center;
display: inline-block;
margin-right: 15px;
}

.post-tags li a{color:#b4b4b5;}
.post-tags li a::after{content: ",";}
.post-tags li:last-of-type a::after{content: none;}
.post-tags li{margin-right: 5px;}

@media only screen and (max-width: 768px){
.post-item{margin-top: 30px;}
}


/* sidebar */
.sidebar .side-area{margin-bottom: 50px;}

.sidebar h3{
color: #888;
font-size: 1.1em;
font-weight: bold !important;
letter-spacing: 0.05em;
margin: 0 0 10px;
padding: 0 0 0.5em;
position: relative;
border-bottom: 1px solid #ccc;
background: 0;
border-radius: 0;
}

.sidebar h3:after {
content: ".";
line-height: 0;
display: block;
overflow: hidden;
position: absolute;
bottom: -1px;
width: 30%;
border-bottom: 2px solid #c30d23;
}

.sidebar .side-area ul li{border-bottom: 1px dotted #ddd; font-size: 0.9em;}

.sidebar .side-area ul li a{display: block; padding: 15px 0px 7px 0px;}

.sidebar .side-area ul li:first-child a{padding-top: 0;}

.sidebar .side-active select{
color: #333333;
border: 1px solid #333333;
width: 100%;
padding: 5px
}


/* 検索フォーム */
.search-container {
box-sizing: border-box;
position: relative;
border: 1px solid #808080;
width: 100%;
overflow: hidden;
margin-bottom: 50px;
}

.search-container input[type="text"] {
border: none;
padding: 6px;
width: 100%;
}

.search-container input[type="text"]:focus {
outline: 0;
}

.search-container input[type="submit"] {
cursor: pointer;
background-image: url(./images/common/search.svg);
background-size: 20px;
background-repeat: no-repeat;
background-color: #ffffff;
background-position: 16px 17px;
font-size: 1.3em;
border: none;
position: absolute;
width: 2.5em;
height: 2.5em;
right: 0;
top: -8px;
outline: none;
}

@media only screen and (max-width: 768px){
.search-container{width: 50%;margin: 0 auto 5%}
}

@media only screen and (max-width: 480px){
.search-container{width: 60%;}
}

.sidebar .side-active select{
width: 100%;
padding: 5px
}


@media only screen and (max-width: 520px){
.page-article{margin-top: 30px;margin-bottom: 15px;}
.previous-article,
.next-article{width: 100%;}
.previous-article{margin-bottom: 20px;}
.previous-article a:before,
.next-article a:after{padding-left: 11px;height: 11px;}
.side-area{margin-bottom: 20px;}
}

.col--l p,figure{margin-bottom: 1.5em;}


/* --------------------------------------------------------------------------------------------------------------------------------------------
*
各ページ
*
--------------------------------------------------------
------------------------------------------------------------------------------------
*/



/*----------------------------
top
----------------------------*/

div.vid_contents video {
width: 100%;
text-align: center;
margin: auto;
}

#site-content-top{margin-top: 80px;}

h1.main_copy {margin: 0 auto 30px; line-height: 1.5em;}

.top_message p {font-size: 1.25em; line-height: 2.5em;}

.top_bt {position: relative;}

.bt_tit {
position: absolute;
top: 0;	
left: 0;
}


.information-btn {
font-size:1.4em;
font-weight: 600;
border: 2px solid #c30d23;
padding: 15px 30px 15px 15px;
border-radius: 25px;
background-image: linear-gradient(90deg, #ffffff, #c30d23);
position: relative;	
}
.information-btn:hover {background-image:none;}
.information-btn p {
position: absolute;
top: 50%;
left: 5%;
transform: translateY(-50%);
-webkit- transform: translateY(-50%);
}
@media only screen and (max-width:530px){
	.information-btn{border-radius: 18px;}
}

.shigajob-btn img {width: 100%}

.kyujin_bt{
font-size:1.4em;
font-weight: 600;
text-align: center;
border: 2px solid #c30d23;
padding: 15px;
border-radius: 10px;
display: block;
width: 100%;	
}

.inquiry-btn {
font-size:1.4em;
font-weight: 600;
border-top: 2px solid #c30d23;
border-bottom: 2px solid #c30d23;
padding: 12px 20px;
align-items: center;
}
@media only screen and (max-width:530px) {
	.inquiry-btn {font-size: 1em;}
	.inquiry-btn .arrow02 {
		width: 30px;
		height: 30px;
	}
	.inquiry-btn .arrow02::before {
		left: 8px;
		width: 8px;
		height: 8px;
	}
	.inquiry-btn .arrow02::after {
		left: 6px;
		width: 11px;
	}
}

.contact_en {
display: flex;
align-items: center;	
}

a:hover .inquiry-btn {
color: #fff;
background-color: #c30d23;
transition: .6s;
}

/*----
.inquiry_bt {
font-size:1.9em;
font-weight: 600;
}

.inquiry_bt::before {
content: url("images/common/icon_mail.png");
margin-right: 20px;
position:relative;
top:20px;
left:0;	
}
.inquiry_bt::after {
content: url("images/common/icon_mail.png");
margin-left: 20px;
position:relative;
top:20px;
right:0;	
}

a .inquiry_bt:hover{opacity: .7;}
----*/
@media only screen and (min-width: 821px){
.top_message h1.main_copy,#site-content-top h2 img {width: 56%;}
}

.kyujin-btn a{
text-align: center;	
font-size:1.4em;
display: block;
background-color: #fff;
border: 2px solid #c30d23;
color: #333;
border-radius: 10px;	
padding: 15px;
transition: .6s;
z-index: 1;
}

.kyujin-btn a:hover{
color: #fff;
background-color: #c30d23;
transition: .6s;
}

@media only screen and (max-width:530px){	
.kyujin-btn a{font-size: 16px;padding: 15px;}
/*.shigajob-btn img {width: 30px}
.shigajob-btn {
background-image: linear-gradient(90deg, #ffffff 30%, #c30d23);}*/
#site-content-top{margin-top: 50px;}	
}

/*-------------ボタン------------------*/
.arrow,.arrow02 {
position: relative;
box-sizing: border-box;
width: 60px;
height: 60px;
border: 2px solid #c30d23;	
background-color: #fff;
-webkit-border-radius: 50%;
border-radius: 50%;
}
.arrow02 {width: 43px; height: 43px; margin-left: 10px; }

.arrow::before,.arrow02::before { 
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 25px;
  width: 10px;    
  height: 10px;  
  border-top: 2px solid #c30d23; 
  border-right: 2px solid #c30d23;
  transform: rotate(45deg); 
}

.arrow02::before {left: 15px; width: 10px; height: 10px; }

.arrow::after,.arrow02::after { 
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;	
  left: 19px;
  width: 17px;
  height: 2px;
  background: #c30d23;	
}

.arrow02::after {left: 10px; width: 17px;}

@media only screen and (max-width:530px){
.shigajob-btn {padding: 10px; font-size:1.1em;}	
.arrow {width: 30px; height: 30px;}
.arrow::before { 
left: 12px;
width: 6px;    
height: 6px;  }
.arrow::after { 	
left: 9px;
width: 9px;
height: 2px;}	
}

/*------------PHILOSOPHY----------------*/

#philosophy h1 {font-size: 2.3em}

.main_copy01 {font-size: 1.1em;line-height: 2.4em!important;margin-top: 50px;}
.main_copy02 {font-size: 1.25em;line-height: 2.8em!important;}

.sec_credo {
align-items: stretch;
}

ul.philosophy_text {
display: flex;
flex-direction: column;
gap: 40px;
}
ul.philosophy_text li {
border-left: 5px solid #c30d23;
border-right: 5px solid #c30d23;
padding: 0 15px;
letter-spacing: 0.05em;
line-height: 2em;	
display: flex;
align-items: center;
}

@media only screen and (max-width:520px){
#philosophy h1 {font-size: 1.9em}	
ul.philosophy_text li {font-size: 1em; line-height: 1.8em;}
#philosophy h3 img {margin-bottom: 10px!important;}
#philosophy	.col3 {margin-bottom: 50px;}
.main_copy02 {font-size: 1.15em; line-height: 2.2em!important;} 
}

.video-wrap{ position:relative; width:100%; aspect-ratio:16/9; background:#000; overflow:hidden; }
.video-wrap video{ width:100%; height:100%; display:block; object-fit:contain; }

.click-layer{
  position:absolute; left:0; top:0; width:100%; height:85%;
  background:transparent; border:0; padding:0; margin:0;
  cursor:pointer; z-index:2;
}

/* 白丸＋三角 */
.video-overlay{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:80px; height:80px; border-radius:50%;
  background:rgba(255,255,255,.95);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 0 10px rgba(0,0,0,.25);
  border:none; cursor:pointer; transition:opacity .2s;
  z-index:3;
}
.video-overlay.hidden{ opacity:0; pointer-events:none; }
.video-overlay .triangle{
  width:0; height:0;
  border-left:24px solid #c30d23;
  border-top:14px solid transparent;
  border-bottom:14px solid transparent;
}

@media (max-width:520px){
  .video-overlay{ width:64px; height:64px; }
  .video-overlay .triangle{ border-left-width:20px; border-top-width:12px; border-bottom-width:12px; }
  .click-layer{ height:80%; }
}

/*------------公開情報----------------*/

#p_information h1 {
border-bottom: 2px solid #c30d23;
text-align: center;
padding-bottom: 10px;	
}

/*------------事業内容----------------*/

#business h1{font-size: 2em;}

#business .container-inner {
background-image: url("images/business/shiga.gif");
background-repeat:repeat-y;
background-position: center top;	
background-size: contain;	
}

.red_dot {border-bottom: 5px dotted #c30d23;}

.business_cards {
margin: 0 auto;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 8px; 
}

.card {
position: relative;
/*background-image:
linear-gradient(#ffffff 35%, #969797),
url("images/business/bs_bt01.jpg");*/
background-size: cover;
background-position: center;
background-repeat: no-repeat;
background-blend-mode: multiply; 
aspect-ratio: 4 / 2.75;
border-radius: 6px;
overflow: hidden;
}

.card a {
display: block;
width: 100%;
height: 100%;
text-decoration: none;
position: relative;
color: inherit;
}

.card p {
position: absolute;
left: 50%;
transform: translateX(-50%);
bottom: 10%;
margin: 0;
color: #fff;
font-size: 1.35em;
line-height: 1.2em;  
text-align: center;
font-weight: bold;
text-shadow: 0 2px 4px rgba(0,0,0,.80);
white-space: nowrap;
pointer-events: none;
z-index: 999;	
}

.card a::after {
content: "";
position: absolute;
inset: 0;
background-color: #c30d23;
mix-blend-mode: multiply;
opacity: 0;
transition: opacity 0.3s ease;
}

.card a:hover::after {opacity: 0.2;}

.business_cards .c01 {background-image:
linear-gradient(#ffffff 35%, #969797),
url("images/business/bs_bt01.jpg");}
.business_cards .c02 {background-image:
linear-gradient(#ffffff 35%, #969797),
url("images/business/bs_bt02.jpg");}
.business_cards .c03 {background-image:
linear-gradient(#ffffff 15%, #8c8c8c),
url("images/business/bs_bt03.jpg");}
.business_cards .c04 {background-image:
linear-gradient(#ffffff 35%, #969797),
url("images/business/bs_bt04.jpg");}
.business_cards .c05 {background-image:
linear-gradient(#ffffff 35%, #969797),
url("images/business/bs_bt05.jpg");}
.business_cards .c06 {background-image:
linear-gradient(#ffffff 35%, #969797),
url("images/business/bs_bt06.jpg");}
.business_cards .c07 {background-image:
linear-gradient(#ffffff 35%, #969797),
url("images/business/bs_bt07.jpg");}
.business_cards .c08 {background-image:
linear-gradient(#ffffff 35%, #969797),
url("images/business/bs_bt08.jpg");}

.c01:hover {background-image: url("images/business/bs_bt01.jpg");}
.c02:hover {background-image: url("images/business/bs_bt02.jpg");}
.c03:hover {background-image: url("images/business/bs_bt03.jpg");}
.c04:hover {background-image: url("images/business/bs_bt04.jpg");}
.c05:hover {background-image: url("images/business/bs_bt05.jpg");}
.c06:hover {background-image: url("images/business/bs_bt06.jpg");}
.c07:hover {background-image: url("images/business/bs_bt07.jpg");}
.c08:hover {background-image: url("images/business/bs_bt08.jpg");}

 @media (max-width: 920px) {
.business_cards {
width: 100%;
grid-template-columns: repeat(3, 1fr);}
}

@media (max-width: 820px) {
.business_cards {
width: 100%;
grid-template-columns: repeat(2, 1fr);}	
}

@media (max-width: 520px) {
.card p {font-size: 1em;}
}

.bs_col01 {width: 40%}
.bs_col02 {width: 55%}

#business h3{font-size: 1.9em;
line-height: 2em;	
color: #4c4848;
margin-bottom: 40px;}

#business h3::before{
content: "";
display: inline-block; 
background-image: url('images/business/bs_icon.png');
background-size: cover;
background-repeat: no-repeat;
width: 32px;
height: 48px;
margin-right: 12px;	
position:relative;	
top:10px;	
}

@media only screen and (max-width:768px){
.bs_col01 {width: 100%; order: 1;}
.bs_col02 {width: 100%; order: 2;}
#business h3 {font-size: 1.3em; margin-bottom: 10px;}
#business h3::before{width: 20px; height: 30px; top:7px;}	
.bs_col p {font-size: 1em;}	
}

/*------------ABOUT US----------------*/
#aboutus .flexColC img {
vertical-align:top;
border: 1px solid #fff;
}

table.company_table {
width: 100%;
line-height: 2em;
}
.company_table th {
width:15%;
border-top: 1px solid #9fa0a0;
border-right: none;
border-left: none;
text-align: left;
padding-left: 12px;
}
.company_table td {
border-top: 1px solid #9fa0a0;
padding: 15px 0 15px 12px;
}
.company_table td.last_col,.company_table th.last_col
{border-bottom: 1px solid #9fa0a0;}
.business_cont02{margin-top: 20px;}

.history-list th{
	width:125px;
	border-top: none;
	padding: 0 12px 0 0;
	font-weight:400;
	vertical-align: top;
}
.history-list td{
	border-top: none;
	padding: 0;
}

@media only screen and (min-width:769px){
.company_table td .business_cont01 {width:80%;}
.company_table td .business_cont02 {width:10%;}
}
@media only screen and (max-width:530px){
	.company_table tr {
		display:flex;
		flex-direction:column;
	}
	.company_table th {
		width:100%;
	}
	.company_table th.last_col {
		border-bottom:none;
	}
	.company_table td {
		line-height:1.5em;
	}
	.history-list td {
		margin-bottom:10px;
	}
}

.office_name {width: 25%}
.company_link {width: 75%}
@media only screen and (max-width: 1000px){
.office_name {width: 40%}
.company_link {width: 60%}
}
@media only screen and (max-width: 768px){
.office_name {width: 100%}
.company_link {width: 100%}
}

.company_link a {
color: #c30d23;
margin-left: 30px;
border: 1px solid #c30d23;
padding: 3px 15px;
border-radius: 5px;	
}
@media only screen and (max-width: 530px){
	.company_link a{margin-left: 1em;}
}
td.office {line-height: 1.9em;}

/*@media only screen and (max-width:480px){
.company_link a {margin-left: 0;}
}*/

h2.subtitle,h3.subtitle {	
background-image:url("images/common/tit_back.png");
background-repeat: no-repeat;	
background-position: 0% 50%;
height: 37px;
background-size: contain;
position: relative;
text-align: center;	
}

.subtitle p{	
font-size: 1em;
font-weight: 600;
text-align: center;
position: absolute;
top: 50%;
left: 50%;	
transform: translateY(-50%) translateX(-50%);
-webkit- transform: translateY(-50%) translateX(-50%);
}

.office_detail {
background-color: #e2e1e6;
padding: 25px 20px;
margin-bottom: 30px;	
}

.office_detail h3 {
border-bottom: 6px solid #c30d23;
padding-bottom: 5px;
margin-bottom: 25px;
}
.office_detail p{margin: 30px 0;}
@media only screen and (max-width: 530px){
	p{letter-spacing:0.08em;}
}

.map {
position: relative;
width: 100%;
padding-top: 56.25%;/* 16:9*/
height: 0;
}

.map iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 99%;
}

@media only screen and (max-width:768px){
h2.subtitle {	background-image:url("images/common/tit_backIp.png");}
.subtitle p{font-size: 0.8em;}	
}
@media only screen and (max-width:530px){
h2.subtitle {background-image:url("images/common/tit_backSp.png");}
.subtitle p{font-size: 1em;}
.office_detail p{line-height: 1.6em;}	
}

/*------------スライダー----------------*/
.gradation_t {
width: 100%;
height: 25px;	
background: linear-gradient(to bottom, #cccccc, #fff);
}
.gradation_b {
width: 100%;
height: 25px;	
background: linear-gradient(to bottom, #fff, #cccccc);
}

/* スライダー全体 */
.slider-wrapper {
  display: flex; 
  overflow: hidden;
}
/* スライド3枚のグループ */
.slider,.sliderB {
animation: scroll-left 50s infinite linear .5s both;
display: flex;
align-items: center;
}
/* スライド */
.slide {
  width: calc(100vw / 8); /* スライドの枚数 */
}
.slideB {width: calc(100vw / 6);}

/* スライドの画像 */
.slide img{
  display: block;
  width: 50%;	
}
.slideB img {
  display: block;
  width: 100%;	
}

li.slide{margin-right: 60px;}
li.slideB{margin-right: 0;}

/* CSSアニメーション */
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

@media only screen and (max-width:920px){
.gradation_t,.gradation_b {height: 60px;}	
.slide img{width: 100%;}	
}
@media only screen and (max-width:530px){
.gradation_t,.gradation_b {height: 50px;}	
}



/*----------------------------
contact
----------------------------*/

/* お問い合わせkintone */
.inquiry-form {
position: relative;
padding: 2em 0;
}
.inquiry-form::before {
position: absolute;
content: "■ お問合せフォーム";
top: 20px;
display: block;
background: #c30d23;
border-radius: 0 40px 40px 0;
font-size: 1.3em;
color: #fff;
padding: 0.4em 1em;
font-weight: 700;
width: 50%;
}
@media only screen and (max-width:920px){
.inquiry-form::before {width: 80%;}
}
/* reCAPTCHA */
/*-----
.fixity .contact-privacy{
text-align:center;
font-size:12px
}
.grecaptcha-badge { visibility: hidden; }--/

/* 登録・就業中の方members */
.members-sec-bt-group {
	justify-content: center;
	margin-bottom:60px;
	padding:0 10%;
	justify-content:space-between;
}
.members-sec-bt{
	width:47%;
}
.members-sec-bt a {
	width:100%;
	padding: 10px 45px;
	color: #ffffff;
	font-weight: 600;
	background-color: #c30d23;
	border-radius: 17px;
	transition: background .2s;
	display:inline-block;
    gap: .4em;
}
.members-sec-bt a:hover {
	background-color: #c30d23BF;	
}

/*.members_sec_tit{
	background-image: url("images/common/tit_back_3.png");
	margin:0 auto 30px;
	padding: 35px 0;
	text-align:center;
	background-repeat: no-repeat;
	background-size: contain;
	position: relative;
	background-position: 0% 50%;
	color: #c30d23;
}*/
@media only screen and (max-width:768px) {
 /*.members_sec_tit {background-image: url("images/common/tit_backIp_3.png");}*/
	.members-sec-bt-group{padding:0;}
}
@media only screen and (max-width:530px) {
	.members-sec-bt-group {
	margin-bottom:20px;
	}
	.members-sec-bt{width:48%;}
	.members-sec-bt a{
		padding: 8px 10px;
		border-radius: 13px;
		margin: auto;
		line-height:1.2em;
	}
 	/*.members_sec_tit {background-image: url("images/common/tit_backSp_3.png");}*/
	.members-sec-bt a {
		font-size:0.8em;
	}
}

.members_sec_tit p {
	margin:20px 0;
}

.col4{width: 23%;margin-right: 2.666%;}
.col4:nth-of-type(4n){margin-right: 0;}
#members_mi article,#members_si article{justify-content:flex-start;}
@media only screen and (max-width:768px){
.col4{width: 48%;margin-right: 0;}
.col4:nth-of-type(2n){margin-right: 0;}
.col4:last-child{margin-bottom: 0;}
#members_mi article,#members_si article{justify-content:space-between;}
}
/*@media only screen and (max-width:520px){
.col4{width: 100%;}
}*/

.members_bt{
	background-color:#c30d23;
	margin-bottom:30px;
}
.members_bt img{ display:block; }
.members_bt_text{
	color:#ffffff;
	padding-left:10px;
	padding-right:10px;
	display: inline-flex;
	align-items: center;
	gap: 8px; 
}
.members_bt_text p {
	margin-bottom:0;
}
.members_bt_text::after{
  content: "";
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 9px solid #ffffff;
  transform: translateX(0);
  transition: transform .2s ease;
}
.members_bt:hover .members_bt_text::after{
  transform: translateX(4px);
}

.ribbon-heading {
	background-image: url("images/common/tit_back_2.png");
	background-repeat: no-repeat;
	background-position: 0% 50%;
	height: 38px;
	background-size: contain;
	position: relative;
	text-align: center;
}
.ribbon-heading span {
	font-size: 1em;
	font-weight: 600;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
}
@media only screen and (max-width:768px) {
 .ribbon-heading {background-image: url("images/common/tit_backIp_2.png");}
}
@media only screen and (max-width:530px) {
 .ribbon-heading {background-image: url("images/common/tit_backSp_2.png");}
}

.post-list{
  width: min(720px, 92vw);
	margin: 0 auto 30px;
}
.post-list__item{
  display:grid;
  grid-template-columns: max-content minmax(0, 1fr);
  column-gap: 12px;
  padding:10px 0;
  border-bottom:1px solid #e5e5e5;
  text-align:left;
}
.post-list__date{
  font-size:14px;
  opacity:.8;
  white-space: nowrap;
}
.post-list__title{
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.post-list__title:hover{ text-decoration:underline; }

@media (max-width: 530px){
  .post-list__item{grid-template-columns: 1fr;}
}

.post-list a {
	line-height:1.5em;
}

.category-members-information .d-flex,.category-staff-information .d-flex {flex-direction: column;}
.category-members-information .archive-post,.category-staff-information .archive-post {width:100%;}
.category-members-information .post-thumbnail,.category-staff-information .post-thumbnail {display:none;}

/* privacy policy */

#policy {
 color: #666666;
}

#policy h1 {
 text-align: center;
 border-bottom: 3px solid #c30d23;
 padding-bottom: 20px;
}

#policy h3 {
 font-size: 1rem;
 font-weight: 400;
}

#policy ul li {
 list-style-type: disc;
 margin-left: 1.4em;
}
#policy ul li li {
 list-style-type: circle;
}
#policy ol li {
 position: relative;
 list-style-type: none;
 margin-left: 2.2em;
}
#policy ol li:before {
 position: absolute;
 right: calc(100% + 0.5rem);
 content: "(" counter(list-item) ")";
}

.policy_sec_title {
 padding: 10px;
 border-left: 5px solid #c30d23;
 font-size: 1.2rem;
}

#policy address {
 font-style:normal;
}

.policy_date {
 text-align: end;
}

/*Sp行間*/
@media (max-width: 530px) {
  p {
	  line-height: 1.5em;
	}
  .main_copy01,.main_copy02,.top_message p {
	  line-height: 1.8em !important;
	  font-size: 1em;
	}
}

/*フローティングボタン*/
.fab{
  background-image: url("images/common/bt_top.webp");
  background-size: contain;
  position: fixed;
  right: 16px;
  bottom: calc(16px + env(safe-area-inset-bottom));
  z-index: 1000;
  aspect-ratio: 1 / 1;
  width: 90px;
  display: grid;
  place-items: center;
  transition: transform .15s, opacity .2s, box-shadow .2s;
  filter: drop-shadow(0 3px 9px rgba(0,0,0,.2));
}
@media (max-width: 530px) {
	.fab {width: 60px;}
}
.fab:hover{ transform: translateY(-2px); filter: drop-shadow(0 3px 10px rgba(0,0,0,.2)); }
.fab:active{ transform: translateY(0); }