@charset "utf-8";

/* -------------------- section newgrad -------------------- */

/* ----- section newgrad-kv ----- */
.newgrad-kv-wrap{
    background-image: url(/wp-content/themes/heiseikai_theme/img/newgrad-kv.webp);
    border-bottom: min(0.75vw, 9px) solid #fff;
}

@media screen and (max-width: 600px) {
.newgrad-kv-wrap{
    border-bottom: 9px solid #fff;
}
}

/* ----- section newgrad01 ----- */
#newgrad01{
    padding-top: min(2.5vw, 30px);
    padding-bottom: min(4.166vw, 50px);
    background-color: #03A9E4;
    background-repeat: repeat-x;
}
.entry-h2-wrap{
    position: relative;
}
img.entrytype01{
   width: 100%;
}
h2.n-heading{
    color: #fff;
    font-size: min(4.166vw, 50px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
	white-space: nowrap;
}

h3.n-office-name{
    font-size: min(2.5vw, 30px);
    font-weight: 700;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    height: min(5.833vw, 70px);
    margin-top: min(2.166vw, 26px);
}
#newgrad01 h3.n-office-name{
    color: #00AAE6;
}
.n-office-name .h3-small{
    font-size: min(2vw, 24px);
}

dl.requirements{
   background-color: #fff;
   padding-top: min(2.5vw, 30px);
   padding-bottom: min(7.5vw, 90px);
   padding-left: min(5.833vw, 70px);
   padding-right: min(5.833vw, 70px);
   margin-top: min(2.166vw, 26px);
   text-align: left;
   display: flex;
   flex-wrap: wrap;
   width: 100%;
   color: #212121;
}

.requirements dt{
    font-size: min(1.75vw, 21px);
    font-weight: 600;
    width: 20%;
    padding-top: min(2.666vw, 32px);
    padding-bottom: min(2.666vw, 32px);
    vertical-align: middle;
    border-bottom: 1px solid #D0D0D0;
    position: relative;
    padding-left: min(1.666vw, 20px);
}

.requirements dt::before{
    content: '';
    width: min(0.583vw, 7px);
    height: min(2.666vw, 32px);
    background-color: #35AAE6;
    position: absolute;
    top: min(2.666vw, 32px);
    left: 0;
    display: inline-block;
}

.requirements dd{
    font-size: clamp(13px, 1.333vw, 16px);
    width: 80%;
    padding-top: min(3.083vw, 37px);
    padding-bottom: min(2.666vw, 32px);
    border-bottom: 1px solid #D0D0D0;
}

.entry-form-wrap{
    padding-top: min(8.333vw, 100px);
    padding-bottom: min(4.166vw, 50px);
    position: relative;
}

#newgrad01 .entry-form-wrap{
    background-color: #35AAE6;
}

.entry-form-inner{
    width: min(67.5vw, 810px);
    display: inline-block;
}

#flow {
    margin: min(4.166vw, 50px) 0 0 0;
    width: 100%;
}
#flow li {
    font-size: min(1.5vw, 18px);
    line-height: 70px;
    width: 32.8%;
    font-weight: 600;
    list-style: none;
    text-align: left;
    position: relative;
}
#flow span{
    font-size: min(2.083vw, 25px);
    line-height: 1;
    font-family:'Prompt', sans-serif;
    margin-right: 8px;
    vertical-align: middle;
}
.first span{
    padding-left: min(1.428vw, 20px);
}
.second span{
    padding-left: min(4vw, 44px);
}
.third span{
    padding-left: min(4vw, 44px);
}
#flow ul {
    text-align: center;
    width: 100%;
    display: inline-flex;
    justify-content: space-between;
    margin-block-start: 0;
    margin-block-end: 0;
    padding-inline-start: 0;
}
.basic {
    background: #D0D0D0;
    color: #333;
}
#newgrad01 .current {
    background: #212121;
    color: #fff;
}
li.first:after, li.second:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 35px 0 35px 24px;
    position: absolute;
    top: 0;
    right: -23px;
    z-index: 2;
}
#newgrad01 li.first:after {
    border-color: transparent transparent transparent #212121;
}
li.second:after {
    border-color: transparent transparent transparent #D0D0D0;
}
li.second:before, li.third:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 35px 0 35px 24px;
    border-color: transparent transparent transparent #35AAE6;
    position: absolute;
    top: 0;
    left: 0;
}
#newgrad01 li.second:before, #newgrad01 li.third:before {
    border-color: transparent transparent transparent #35AAE6;
}

.e-explain{
    font-size: clamp(11px, 1.166vw, 14px);
    font-weight: 600;
    color: #212121;
    text-align: center;
    margin-top: min(3vw, 36px);
}
.entry-title{
    position: absolute;
    top: -2.5%;
    left: 50%;
    transform: translateX(-50%);
    font-size: min(1.5vw, 18px);
    font-weight: 700;
    color: #212121;
}
.entry-title-en{
    font-size: min(4.166vw, 50px);
    font-weight: 600;
    font-family:'Prompt', sans-serif;
    display: block;
}
dl.entry-form{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    text-align: left;
}

.entry-form dt{
    width: 28%;
    height: min(3.333vw, 40px);
    color: #fff;
    background-color: #212121;
    text-align: left;
    display: flex;
    align-items: center;
    padding-left: min(1vw, 12px);
    margin-top: min(1.666vw, 20px);
    margin-bottom: min(1.666vw, 20px);
    font-size: min(1.333vw, 16px);
    position: relative;
}
.require{
    width: min(3.333vw, 40px);
    height: min(1.666vw, 20px);
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #FFF72B;
    color: #212121;
    font-size: min(1.166vw, 14px);
    font-weight: 600;
    position: absolute;
	top: 50%;
    right: min(1vw, 12px);
	transform: translateY(-50%);
}

.entry-form dd{
    width: 71%;
     margin-top: min(1.666vw, 20px);
    margin-bottom: min(1.666vw, 20px);
    margin-left: 1%;
    font-size:  min(1.333vw, 16px);
    color: #212121;
    text-align: justify;
    align-items: center;
}
.type-design{
    font-size: min(1.75vw, 21px)!important;
    padding-top: min(0.166vw, 2px);
}
#newgrad01 .type-design{
    color: #fff!important;
}

.entry-form dd span{
    margin-left: min(0.666vw, 8px);
}
.border03{
    border-bottom: 1px solid #212121;
    width: 100%;
}

.text-area{
    background-color: #fff;
    border: 0;
    padding: min(1vw, 12px);
}
.text-area01{
    width: 100%;
    height: min(3.333vw, 40px);
}

.text-area02{
    width: 100%;
    height: min(11.666vw, 140px);
}
.text-area03{
    width: min(5.833vw, 70px);
    height: min(3.333vw, 40px);
}
.text-area04{
    width: min(4.166vw, 50px);
    height: min(3.333vw, 40px);
    margin-left: min(1vw, 12px);
}
.select01{
    width: 180px;
    height: min(3.333vw, 40px);
	margin-top: -6px;
	padding: 0 8px;
}
.wpcf7 p {
display: inline;
}

div.wpcf7 .wpcf7-spinner {
    display: block;
}
.submit-wrap{
    width: 100%;
    text-align: center;
    margin-top: min(5.833vw, 70px);
}
.submit01{
    width: min(27.166vw, 326px);
    height: min(3.333vw, 40px);
    font-size: min(1.75vw, 21px);
    font-weight: 600;
    color: #35AAE6;
    background-color: #fff;
    border: 0;
	cursor:pointer;
}
#hide{
	display: none;
}
#hide input{
	display: none!important;
}
@media screen and (max-width: 600px) {
#newgrad01 {
    padding-top: 30px;
    padding-bottom: 50px;
}
#newgrad .content940 {
        width: 90%;
        margin: 0 5%;
    }
h2.n-heading {
    font-size: 28px;
}
.entry-h2-wrap {
    height: 106px;
}
img.entrytype01 {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
h3.n-office-name {
    font-size: 38px;
    align-items: flex-end;
    height: 87px;
    margin-top: 10px;
    position: relative;
	padding-right: 38px;
}
.n-office-name .h3-small {
    position: absolute;
    font-size: 14px;
    margin-right: 0;
    top:4px;
    left: 8px;
}
dl.requirements {
    background-color: #fff;
    padding: 24px 30px 50px 30px;
    margin-top: 10px;
}
.requirements dt {
    font-size: 18px;
    width: 100%;
    padding: 30px 14px 0 14px;
    border-bottom: 0;
    padding-left: 14px;
}
.requirements dt::before {
    width: 7px;
    height: 26px;
    top: 32px;
}
.requirements dd {
    font-size: 14px;
    width: 100%;
    padding: 16px 0 30px 0;
}
.entry-title-en {
    font-size: 50px;
    line-height: 1.2;
}
.entry-title {
    top: -1.4%;
    font-size: 18px;
    line-height: 1.2;
    white-space: nowrap;
}
.entry-form-inner {
    width: 100%;
    padding: 30px;
    display: inline-block;
}
#flow ul {
 flex-direction: column;
 row-gap: 20px;
}
#flow li {
    font-size: 18px;
    line-height: 60px;
    width: 100%;
    margin-right: 8px;
}
.first span {
    padding-left: min(3.142vw, 44px);
}
li.first:after, li.second:after {
    content: "";
    border-width: 13px 8px 0 8px;
    top: 60px;
    right: initial;
    left: 10%;

}
#newgrad01 li.first:after {
    border-color: #212121 transparent transparent transparent;
}

#flow span {
    font-size: 25px;
}
li.second:before, li.third:before {
    content: initial;
}
li.second:after {
    border-color: #D0D0D0 transparent transparent transparent;
}
.e-explain {
    font-size: 14px;
   text-align: justify;
   margin-top: 30px;
}
dl.entry-form {
    margin-top: 30px;
}
.entry-form dt {
    width: 100%;
    height: 30px;
    align-items: center;
    padding-left: 10px;
    margin-top: 30px;
    margin-bottom: 0;
    font-size: 14px;
}
.entry-form dd {
    width: 100%;
    margin-top: 8px;
    margin-bottom: 0;
    margin-left: 0;
    font-size: 14px;
    color: #212121;
}
.require {
    width: 40px;
    height: 16px;
    font-size: 12px;
    right: 6px;
}
.select01 {
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #000;
  border-radius: 0;
  color: #000;
  height: 40px;
background-color: #fff;
}
.text-area01 {
    height: 40px;
}
.border03 {
    border-bottom: 0;
}
.type-design {
    font-size: 18px!important;
    padding-top: 2px;
}
.text-area {
-webkit-appearance: none;
  appearance: none;
  border: 1px solid #000;
  border-radius: 0;
  color: #000;
}
.text-area03 {
    width: 70px;
    height: 40px;
    margin-right: 5px;
}
.text-area04 {
    width: 50px;
    height: 40px;
    margin-left: 12px;
    margin-right: 5px;
}
.text-area02 {
    height: 140px;
}
.submit-wrap {
    margin-top: 30px;
}
.submit01 {
    width: 100%;
    max-width: 300px;
    height: 40px;
    font-size: 18px;
}
}

/* -------------------- section career -------------------- */

/* ----- section career-kv ----- */
.career-kv-wrap{
    background-image: url(/wp-content/themes/heiseikai_theme/img/career-kv.webp);
    border-bottom: min(0.75vw, 9px) solid #fff;
}
@media screen and (max-width: 600px) {
.career-kv-wrap{
    border-bottom: 9px solid #fff;
}
}
/* ----- section career01 ----- */
#career01{
    padding-top: min(2.5vw, 30px);
    padding-bottom: min(4.166vw, 50px);
    background-color: #03A9E4;
    background-repeat: repeat-x;
}

#career01 h3.n-office-name{
    color: #0159D6;
}


#career01 .entry-form-wrap {
    background-color: #0159D6;
}
#career01 .current {
    background: #fff;
    color: #0159D6;
}

#career01 .e-explain{
    color: #fff;
}
#career01 .entry-form dd{
    color: #fff;
}
#career01 li.second:before, #career01 li.third:before {
    border-color: transparent transparent transparent #0159D6;
}
#career01 li.first:after {
    border-color: transparent transparent transparent #fff;
}

#career01 .submit01 {
    color: #0159D6;
}

@media screen and (max-width: 600px) {
#career01{
    padding-top: 30px;
    padding-bottom: 50px;
}
#career01 li.first:after {
    border-color: #fff transparent transparent transparent;
}
}
/* -------------------- section newgrad-confirm -------------------- */

/* ----- section newgrad-confirm01 ----- */
#newgrad-confirm01{
    padding-top: min(7.5vw, 90px);
    padding-bottom: min(12.5vw, 150px);
    background-color: #03A9E4;
    background-repeat: repeat-x;
}
#newgrad-confirm01 .current {
    background: #fff;
    color: #35AAE6;
}
#confirm li.first:after {
    border-color: transparent transparent transparent #D0D0D0;
}
#confirm li.second:after {
    border-color: transparent transparent transparent #fff;
}
#confirm .entry-title {
    position: relative;
    color: #fff;
}
#confirm .entry-form-wrap{
    background-color: #35AAE6;
    padding-top: min(5vw, 60px);
}

@media screen and (max-width: 600px) {
#confirm li.first:after  {
        border-color: #D0D0D0 transparent transparent transparent;
}
#confirm li.second:after {
        border-color: #fff transparent transparent transparent;
}
}

/* -------------------- section career-confirm -------------------- */

/* ----- section career-confirm01 ----- */
#career-confirm01{
    padding-top: min(7.5vw, 90px);
    padding-bottom: min(12.5vw, 150px);
    background-color: #03A9E4;
    background-repeat: repeat-x;
}
#career-confirm01 .e-explain{
    color: #fff;
}
#career-confirm01 .current {
    background: #fff;
    color: #0159D6;
}
#career-confirm01 .entry-form-wrap{
    background-color: #0159D6;
    padding-top: min(5vw, 60px);
}
#career-confirm01 li.second:before, #c-confirm01 li.third:before {
    content: "";
    border-color: transparent transparent transparent #0159D6;
}

#career-confirm01 .entry-form dd{
    color: #fff;
}
#career-confirm01 .submit01 {
    color: #0159D6;
}

@media screen and (max-width: 600px) {
#career-confirm01 li.second:before, #c-confirm01 li.third:before {
    display: none;
}
}
/* -------------------- section newgrad-complete -------------------- */

/* ----- section newgrad-complete01 ----- */
#newgrad-complete01{
    padding-top: min(7.5vw, 90px);
    padding-bottom: min(12.5vw, 150px);
    background-color: #03A9E4;
    background-repeat: repeat-x;
}
#newgrad-complete01 .entry-form-wrap {
    background-color: #35AAE6;
    padding-top: min(5vw, 60px);
}
#complete .entry-title {
    position: relative;
    color: #fff;
}
#newgrad-complete01 li.second:before, #n-complete01 li.third:before {
    border-color: transparent transparent transparent #35AAE6;
}
#newgrad-complete01 .current{
    background-color: #fff;
    color: #35AAE6;
}
#complete li.second:after {
    border-color: transparent transparent transparent #D0D0D0;
}
#complete li.first:after {
    border-color: transparent transparent transparent #D0D0D0;
}
.copy07{
    font-size: min(5vw, 60px);
    color: #fff;
    margin-top: min(8.333vw, 100px);
}
.copy08{
    font-size: min(2.916vw, 35px);
    color: #fff;
    margin-top: min(5.833vw, 70px);
}
#complete p.main-text{
    text-align: center;
    font-size: min(1.333vw, 16px);
    margin-top: min(1.666vw, 20px);
}
.btn03-wrap{
    margin-top: min(8.333vw, 100px);
}
a.btn03{
    width: min(33.333vw, 400px);
    height: min(3.333vw, 40px);
    font-size: min(1.75vw, 21px);
    font-weight: 600;
    color: #35AAE6;
    background-color: #fff;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
img.dl-icon{
    width: min(2.333vw, 28px);
}
@media screen and (max-width: 600px) {
a.btn03{
        width: 100%;
        max-width: 300px;
        height: 40px;
        font-size: 14px;
}
#complete li.first:after, #complete li.second:after{
    border-color: #D0D0D0 transparent transparent transparent;
}
img.dl-icon{
    width: 18px;
}
.copy07{
    font-size: 40px;
    margin-top: 50px;
}
.copy08{
    font-size: 17px;
    margin-top: 40px;
}
#complete p.main-text{
    font-size: 13px;
    margin-top:20px;
}
}
/* -------------------- section career-complete -------------------- */

/* ----- section career-complete01 ----- */
#career-complete01{
    padding-top: min(7.5vw, 90px);
    padding-bottom: min(12.5vw, 150px);
    background-color: #03A9E4;
    background-repeat: repeat-x;
}
#career-complete01 .entry-form-wrap {
    background-color: #0159D6;
    padding-top: min(5vw, 60px);
}

#career-complete01 .current{
    background-color: #fff;
    color: #0159D6;
}
#career-complete01 p.main-text{
	color: #fff;
}
#career-complete01 li.second:before, #career-complete01 li.third:before {
    content: "";
    border-color: transparent transparent transparent #0159D6;
}
@media screen and (max-width: 600px) {
#career-complete01 li.second:before, #c-complete01 li.third:before {
    display: none;
}
#career-complete01 li.third:before {
content: initial;
}
}
/* -------------------- section blog -------------------- */

/* ----- section blog-kv ----- */
.blog-kv-wrap{
    background-image: url(/wp-content/themes/heiseikai_theme/img/blog-kv.webp);
    border-bottom: min(0.75vw, 9px) solid #03A9E4;
}
@media screen and (max-width: 600px) {
.blog-kv-wrap{
    border-bottom: 9px solid #03A9E4;
}
}

/* ----- section blog01 ----- */
#blog01{
    padding-top: min(3.333vw, 40px);
    padding-bottom: min(8.333vw, 100px);
}
.menu-title{
    width: min(9.166vw, 110px);
    font-size: min(1.666vw, 20px);
    font-weight: 600;
    text-align: right;
    display: inline-block;
}

.menu-cat-wrap{
    text-align: left;
	display: inline-block;
}
.menu-cat-inner{
    text-align: left;
    display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: left;
	margin-top: min(2.083vw, 25px);
}
.separate{
    border: min(0.166vw, 2px) solid #000;
    padding-top: min(0.166vw, 2px);
    padding-bottom: min(0.166vw, 2px);
    margin-left: min(1vw, 12px);
    margin-right: min(1vw, 12px);
	height: min(2.083vw, 25px);
}
.menu-cat{
    width: min(8.333vw, 100px);
    height: min(4.833vw, 58px);
    border: min(0.166vw, 2px) solid #000;
    border-radius: min(1.333vw, 16px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #000;
    font-size: min(1.666vw, 20px);
    font-weight: 600;
    margin-left: min(0.666vw, 8px);
    margin-right: min(0.666vw, 8px);
}
.blog01-wrap{
    display: flex;
    flex-wrap: wrap;
	gap: min(5.416vw, 65px);
	row-gap: min(8.333vw, 100px);
    margin-top: min(8.333vw, 100px);
}

.blog01-item{
    width: min(22.5vw, 270px);
}
img.blog-img{
    width: 100%;
    aspect-ratio: 3 / 2;
    object-fit: cover;
    object-position: center;
    border-radius: min(1.333vw, 16px) min(1.333vw, 16px) 0 0;
}
.b-title-wrap{
    background-color: #212121;
    color: #fff;
    text-align: left;
    padding: min(0.333vw, 4px);
    border-radius: 0 0 min(1.333vw, 16px) min(1.333vw, 16px);
    display: block;
    height: min(13.333vw, 160px);
}
.b-title-inner{
    margin-top: min(1.666vw, 20px);
    margin-bottom: min(0.833vw, 10px);
    margin-left: min(0.833vw, 10px);
    margin-right: min(0.833vw, 10px);
    display: flex;
}
.blog-date{
    font-size: clamp(11px, 1.166vw, 14px);
    margin-right: min(0.666vw, 8px);
    font-family:'Prompt', sans-serif;
}
.blog-cat{
    font-size: clamp(10px, 1vw, 12px);
    margin-left: min(0.666vw, 8px);
}
.b-title-wrap a{
	color: #fff;
}
.blog-title{
    font-size: min(1.666vw, 20px);
    padding-right: min(0.833vw, 10px);
    width: 94%;

}
.arrow-wrap{
    display: flex;
    align-items: center;
    width:6%;
}

.pagination{
    display: inline-flex;
    margin-top: min(12.5vw, 150px);
    font-size: min(1.666vw, 20px);
    line-height: 1;
    font-family:'Prompt', sans-serif;
    color: #4E4E4E;
}
.b-page-num{
    width: min(4.166vw, 50px);
   border-right: 1px solid #707070;
    color: #4E4E4E;
}
.page-omission{
    width: min(4.166vw, 50px);
}
.page-all{
    width: min(4.166vw, 50px);
}
.b-page-num:last-child{
    border-right: 0;
}
.news-kv-wrap {
    background-image: url(/wp-content/themes/heiseikai_theme/img/news-kv.webp);
    border-bottom: min(0.75vw, 9px) solid #03A9E4;
}

@media screen and (max-width: 600px) {
#blog01 {
    padding-top: 40px;
    padding-bottom: 60px;
}
.menu-title {
    width: 80px;
    font-size: 14px;
}
.menu-cat {
    width: 64px;
    height: 28px;
    border: 2px solid #000;
    border-radius: 7px;
    font-size: 13px;
    font-weight: 600;
    margin-left: 3px;
    margin-right: 3px;
}
.separate {
    border: 2px solid #000;
    padding-top: 2px;
    padding-bottom: 2px;
    margin-left: 6px;
    margin-right: 6px;
	height: 20px;
}
.blog01-wrap{
    justify-content: center;
    row-gap: 60px;
    margin-top: 90px;
}

.blog01-item{
    width: 270px;
}
img.blog-img {
    border-radius: 16px 16px 0 0;
}
.blog-date {
    font-size: 14px;
    margin-right: 8px;
}
.b-title-wrap {
    padding: 4px;
    border-radius: 0 0 16px 16px;
    display: block;
    height: auto;
}
.blog-cat {
    font-size: clamp(10px, 1vw, 12px);
    margin-left: min(0.666vw, 8px);
}
.b-title-inner {
    margin: 20px 10px 10px 10px;
}
.blog-title {
    font-size: 16px;
    padding-right: 10px;
}
.pagination {
 margin-top: 60px;
    font-size: 20px;
}
.b-page-num {
    width: 38px;
	font-size: 16px;
}
.page-omission {
    width: 38px;
}
.page-all {
    width: 38px;
}
} 

/* -------------------- blog single -------------------- */


ul.single-wrap{
    margin-top: min(7.5vw, 90px);
}

.single-title-wrap{
    width: 100%;
    text-align: left;
    background-color: #fff;
    border-radius: 10px;
    padding-top: 16px;
    padding-bottom: 16px;
}
.space-left{
    padding-left: min(0.833vw, 10px);
}
.single-title{
    font-size:  min(2vw, 24px);
    font-weight: 600;
    padding-top: 6px;
    padding-bottom: 10px;
	padding-left: min(4.166vw, 50px);
	padding-right: min(3.333vw, 40px);
    border-bottom: 1px solid #707070;
}

.single-img-wrap{
    margin-top: 24px;
}
img.single-img{
    width: 100%;
}
.img-title{
    font-size: min(1.666vw, 20px);
    text-align: center;
    margin-top: 20px;
    padding-bottom: 8px;
    width: 90%;
    border-bottom: 1px solid #707070;
    margin-left: 5%;
}
#single-contents p{
    font-size: min(1.666vw, 20px);
    line-height: 3;
    margin-top: min(5vw, 60px);
}
.related-wrap{
    margin-top: min(16.666vw, 200px);
}
.related-inner{
    display: flex;
    flex-wrap: wrap;
    gap: min(5.416vw, 65px);
    row-gap: min(8.333vw, 100px);
    margin-top: min(3.333vw, 40px);
}
.single-arrow{
    width: min(12.5vw, 150px);
    height: min(3.333vw, 40px);
    border: 1px solid #707070;
    border-radius: 20px;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
	font-size: min(1.333vw, 16px);
    font-weight: 600;
}
.tolist{
	font-size: min(1.5vw, 18px);
    color: #000;
	margin-top: min(0.5vw, 6px);
	margin-bottom: min(0.5vw, 6px);
	margin-left: min(1.666vw, 20px);
	margin-right: min(1.666vw, 20px);
	vertical-align: middle;
}
.single-navi-wrap{
	margin-top: min(8.333vw, 100px);
	display: inline-flex;
}

.single-arrow.disabled {
    pointer-events: none;
    opacity: 0;
}
img.s-arrow{
	width: min(1.166vw, 14px);	
}
#news .news-date {
    margin-right: 0;
}
a.nolink{
	pointer-events: none;
	color: #000;
}
@media screen and (max-width: 600px) {
.single-title {
    font-size: 20px;
    padding-left:30px;
    padding-right:20px;
}
.img-title {
    font-size: 14px;
    margin-top: 12px;

}
#single-contents p {
    font-size: 14px;
    margin-top: 40px;
}
.related-wrap {
    margin-top: 100px;
}
.related-inner{
    justify-content: center;
    row-gap: 40px;
	margin-top: 40px;
}
.single-arrow {
    width: 120px;
    height: 36px;
    font-size: 13px;
}
.tolist {
    font-size: 14px;
    margin: 6px 14px;
}
img.s-arrow{
	width: 12px;	
}
}	
/* -------------------- news -------------------- */

/* ----- section news01 ----- */
#news01 {
    padding-top: min(3.333vw, 40px);
    padding-bottom: min(8.333vw, 100px);
}
ul.news01-wrap {
    margin-top: min(1.666vw, 20px);
}
.news01-item {
    display: flex;
    flex-wrap: wrap;
    gap: min(1.666vw, 20px);
    width: 100%;
    margin-top: min(6.666vw, 80px);
}
img.news-img {
    width: min(17.5vw, 210px);
    aspect-ratio: 1 / 1;
    border-radius: min(2.666vw, 32px);
    object-fit: cover;
    object-position: center;
}

.n-title-wrap {
    width: calc(100% - min(19.166vw, 230px));
    text-align: left;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
}

.n-title-inner {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.n-title-left {
    width: 93%;
    display: inline-block;
    padding-bottom: min(1.333vw, 16px);
    border-bottom: min(0.333vw, 4px) solid #000;
}
#news01 .news-date {
    font-size: min(1.5vw, 18px);
    line-height: 1.4;
	color: #000;
}
.news-title {
    font-size: min(2.5vw, 30px);
    line-height: 1.4;
	color: #000;
}
.n-arrow-wrap {
    width: 7%;
    display: flex;
    align-items: center;
    height: auto;
    justify-content: right;
}

@media screen and (max-width: 600px) {
#news01 {
    padding-top: 40px;
    padding-bottom: 60px;
}
.news01-item {
    gap:10px;
    width: 100%;
    justify-content: center;
    margin-top: 70px;
}
img.news-img {
    width: 300px;
    aspect-ratio: 5 / 3;
    border-radius: 18px;
}
.n-title-wrap {
    width: 290px;
    margin-left: 10px;
}
.n-title-left {
    padding-bottom: 10px;
    border-bottom: 2px solid #000;
}
#news01 .news-date {
    font-size: 14px;
}
.news-title {
    font-size: 23px;
    margin-top: 4px;
}
}

/* -------------------- section faq -------------------- */

/* ----- section faq-kv ----- */
.faq-kv-wrap {
    background-image: url(/wp-content/themes/heiseikai_theme/img/faq-kv.webp);
    border-bottom: min(0.75vw, 9px) solid #03A9E4;
}
/* ----- section faq01 ----- */
#faq01 {
    padding-top: min(9.166vw, 110px);
    padding-bottom: min(8.333vw, 100px);
}
h2.f-heading {
    width: 100%;
    font-size: min(3vw, 36px);
    padding-top: min(1.666vw, 20px);
    padding-bottom: min(1.666vw, 20px);
    border-top: min(0.166vw, 2px) solid #212121;
    border-bottom: min(0.166vw, 2px) solid #212121;
    text-align: center;
    position: relative;
}

.f-heading .h2-en {
    font-size: min(1.5vw, 18px);
    text-align: left;
    font-weight: 600;
    color: #03A9E5;
    position: absolute;
    top: min(-1.333vw, -16px);
    left: 0;
    width: min(5.833vw, 70px);
    background-color: #F5F5F5;
}
.f-question {
    height: min(4.166vw, 50px);
    background-color: #D0D0D0;
    font-size: min(1.666vw, 20px);
    display: flex;
    align-items: center;
    position: relative;
    text-align: left;
    padding-left: min(5.833vw, 70px);
    border-radius: min(0.833vw, 10px);
    margin-top: min(5vw, 60px);
}
.faq-q {
    font-size: min(2.083vw, 25px);
    font-family: 'Prompt', sans-serif;
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(4.166vw, 50px);
    height: min(4.166vw, 50px);
    border-radius: min(0.833vw, 10px);
    background-color: #00AAE5;
    color: #212121;
    position: absolute;
    top: 0;
    left: 0;
}
.f-answer {
    padding-top: min(2.833vw, 34px);
    padding-bottom: min(2vw, 24px);
    padding-left: min(1.666vw, 20px);
    padding-right: min(1.666vw, 20px);
    background-color: #00AAE5;
    margin-top: min(-0.833vw, -10px);
    margin-left: min(3.333vw, 40px);
    border-radius: 0 0 min(0.833vw, 10px) min(0.833vw, 10px);
    color: #212121;
}
#faq01 p.main-text {
    font-size: clamp(12px, 1.25vw, 15px);
    color: #fff;
}
@media screen and (max-width: 600px) {
#faq01 {
    padding: 60px 0;
}
h2.f-heading {
    font-size: 25px;
    padding-top: 16px;
    padding-bottom: 16px;
    border-top: 1px solid #212121;
    border-bottom: 1px solid #212121;
}
.f-heading .h2-en {
    font-size: 16px;
    top: -15px;
    width: 60px;
}
.f-question {
    height: auto;
    font-size: 16px;
    padding: 12px 16px 12px 50px;
    border-radius: 3px;
    margin-top: 60px;
}
.faq-q {
    font-size: 20px;
    width: 35px;
    height: 35px;
    border-radius: 3px;
}
.f-answer {
    padding: 20px 30px;
    background-color: #00AAE5;
    margin-top: -3px;
    margin-left: 0;
    border-radius: 0 0 3px 3px;

}
p.main-text {
    font-size: 15px;
}
}
/* -------------------- section search -------------------- */

/* ----- section search-kv ----- */
.search-kv-wrap {
    background-image: url(/wp-content/themes/heiseikai_theme/img/search-kv.webp);
    border-bottom: min(0.75vw, 9px) solid #fff;
}

@media screen and (max-width: 600px) {
.search-kv-wrap {
    border-bottom: 9px solid #fff;
}
}
/* ----- section search01 ----- */
#search01 {
    padding-top: min(13.333vw, 160px);
    padding-bottom: min(9.166vw, 110px);
    background-color: #03A9E4;
    background-repeat: repeat-x;
}
.content820 {
    width: min(68.333vw, 820px);
    display: inline-block;
}
h2.s-heading {
    color: #fff;
    font-size: min(3vw, 36px);
    width: min(54.166vw, 650px);
    padding-bottom: min(1vw, 12px);
    border-bottom: min(0.416vw, 5px) solid #fff;
    text-align: center;
    display: inline-block;
}
.search-navi {
    background-color: #E5E5E5;
    margin-top: min(2.5vw, 30px);
    padding-top: min(2.083vw, 25px);
    padding-left: min(2.083vw, 25px);
    padding-right: min(2.083vw, 25px);
    padding-bottom: min(1.333vw, 16px);
}
.s-navi-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.s-window-wrap{
    width: calc(100% - min(8.333vw, 100px));
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.s-chack-wrap {
    display: flex;
    flex-wrap: wrap;
    font-size: min(1.666vw, 20px);
    margin-top: min(1.333vw, 16px);
}
.s-chack-wrap span {
    margin-right: min(1.666vw, 20px);
}

.area-select, .type-select {
    width: min(26.666vw, 320px);
    padding-left: min(1.666vw, 20px);
    height: min(4.5vw, 54px);
    border: 0;
    font-size: min(1.666vw, 20px);
}
button.search-btn {
    width: min(5.5vw, 66px);
    height: min(4.5vw, 54px);
    background-color: #707070;
}
label{
    margin-left: 4px;
}
.tab-group {
    margin-top: min(5vw, 60px);
    list-style: none;
    text-align: center;
}

.tab-button {
display: flex;
list-style: none;
cursor: pointer;

}

.tab-button .is-active {
background-color: #fff;
color: #03A9E5;
}

.tab {
    width: calc(100% / 2);
    padding: 8px;
    border-bottom: none;
	background-color:#666;
	color: #999;
	font-size: 20px;
	font-weight: 600;
}

.tab-contents {
    border-top: none;
}

.content {
    display: none;
    text-align: left;
}

.content.is-display {
    display: block;
    width: 100%;
}

@media screen and (max-width: 600px) {
#search01 {
padding:60px 0;
}
.content820 {
    width: 85%;
    margin: 0 7.5%;
}
h2.s-heading {
    display: none;
}
.s-window-wrap {
    width: calc(100% - 60px);
    row-gap: 10px;
}
.area-select, .type-select {
    width: 100%;
    padding-left: 14px;
    height: 32px;
    font-size: 14px;
}
button.search-btn {
    width:50px;
    height: auto;
}
.s-chack-wrap {
    font-size: 16px;
    margin: 10px 6px 0 6px;
}
.s-chack-wrap span {
    margin-right: 16px;
}
.search-navi {
    margin-top: 0;
    padding-top: 10px;
	margin-top: 10px;
}
.tab-group {
    margin-top: 0;
}
.tab {
    font-size: 16px;
}
input, select {
  -webkit-appearance: none;
  appearance: none;
}
}
/* ----- section search01 ----- */

.search-wrap li {
    display: flex;
    margin-top: min(3.333vw, 40px);
    background-color: #fff;
}
.search-item {
    position: relative;
    height: min(7.5vw, 90px);
    text-align: left;
}
.search-item01 {
    width: 45%;
}
.search-item02 {
    display: flex;
    align-items: center;
    width: 55%;
}
.cat-occu {
    width: 100%;
    height: 100%;
    line-height: 1;
    font-weight: 600;
	font-feature-settings: 'palt';
}
p.nosearch{
	text-align: center;
	color: #fff;
	font-size: clamp(16px, 1.666vw, 20px) ;
	margin-top: min(3.333vw, 40px);
}
#search01 .jobtype02{
    border-left: min(1.666vw, 20px) solid #E6DC00;
    color: #E6DC00;
    font-size: min(3.333vw, 40px);
}
#search01 .jobtype03 {
    border-left: min(1.666vw, 20px) solid #F9952C;
    color: #F9952C;
    font-size: min(2.666vw, 32px);
}
#search01 .jobtype07 {
    border-left: min(1.666vw, 20px) solid #38D068;
    color: #38D068;
    font-size: min(2.666vw, 32px);

}
#search01 .jobtype04 {
    border-left: min(1.666vw, 20px) solid #E25D5D;
    color: #E25D5D;
    font-size: min(3.333vw, 40px);
}


#search01 .jobtype01 {
    border-left: min(1.666vw, 20px) solid #2F85FF;
    color: #2F85FF;
    font-size: min(3.333vw, 40px);
}
#search01 .jobtype05 {
    border-left: min(1.666vw, 20px) solid #FBA2FF;
    color: #FBA2FF;
    font-size: min(2.666vw, 32px);
}
#search01 .jobtype06 {
    border-left: min(1.666vw, 20px) solid #C4A600;
    color: #C4A600;
    font-size: min(3.333vw, 40px);
}

.tag-type {
    position: absolute;
    top: min(4.166vw, 50px);
    left: min(2.666vw, 32px);
    font-size: min(2.833vw, 34px);
    line-height: 1;
    font-weight: 600;
    color: #443D3F;
    font-feature-settings: 'palt';
}

.s-office {
    font-size: min(2vw, 24px);
    color: #837A7D;
    line-height: 1.5;
}
.s-address {
    font-size: min(1.5vw, 18px);
    display: block;
}
.search-arrow {
    position: absolute;
    top: 50%;
    right: min(0.833vw, 10px);
    transform: translateY(-50%);
}

#search .pagination {
    color: #fff;
    margin-top: min(3.333vw, 40px);
}

#search .b-page-num {
    border-right: min(0.083vw, 1px) solid #fff;
    color: #fff;
}
#search .content{
	text-align: center;
}

#search .page-current {
    color: #03A9E4!important;
    background-color: #fff!important;
}

#search .b-page-num:first-child {
    border-left: min(0.083vw, 1px) solid #fff;
}
.banner-wrap{
	margin-top: min(7.5vw, 90px);
}
@media screen and (max-width: 600px) {
.s-office {
    font-size: 12px;
	width: 90%;
}
.search-item {
    height: 64px;
}
.search-item01 {
    width: 40%;
}
.search-item02 {
    width: 60%;
}
.search-wrap li {
    margin-top: 15px;
}
#search01 .jobtype01 {
    border-left: 13px solid #2F85FF;
    font-size: 26px;
}
#search01 .jobtype02 {
    border-left: 13px solid #E6DC00;
    font-size: 26px;
}
#search01 .jobtype03 {
    border-left: 13px solid #F9952C;
    font-size: 26px;
}
#search01 .jobtype04 {
    border-left: 13px solid #E25D5D;
    font-size: 22px;
}
#search01 .jobtype05 {
    border-left: 13px solid #FBA2FF;
    font-size: 17px;
}
#search01 .jobtype06 {
    border-left: 13px solid #C4A600;
    font-size: 26px;
}
	#search01 .jobtype07 {
    border-left: 13px solid #38D068;
    font-size: 18px;
}
.tag-type {
    top: 40px;
    left: 16px;
    font-size: 20px;
}
.s-address {
    font-size: 12px;
}
#search .pagination {
        margin-top: 40px;
}
p.nosearch{
	font-size: 14px;
}
}
/* -------------------- section privacy policy -------------------- */
/* ----- section policy-kv ----- */
.policy-kv-wrap {
    background-image: url(/wp-content/themes/heiseikai_theme/img/policy-kv.webp);
    border-bottom: min(0.75vw, 9px) solid #fff;
}

@media screen and (max-width: 600px) {
.search-kv-wrap {
    border-bottom: 9px solid #fff;
}
}
/* ----- section policy01 ----- */
#policy01{
	padding-top: min(8.333vw, 100px);
	padding-bottom: min(16.666vw, 200px);
}
h2.policy-title{
    text-align: center;
	font-size: min(2.5vw, 30px);
}
.policy-wrap{
	margin-top: min(5.833vw, 70px);
}
.policy-wrap p{
	font-size: min(1.666vw, 20px);
	line-height: 2.5;
	color: #000;
}
@media screen and (max-width: 600px) {
h2.policy-title{
	font-size: 20px;
}
.policy-wrap p{
	font-size: 15px;
	line-height: 2;
}
}

/* -------------------- recaptcha hidden -------------------- */
.grecaptcha-badge { visibility: hidden; }