@charset "UTF-8";
@font-face {
    font-family: hirakaku;
    font-weight: 200;
    font-style: regular;
    src: url("../fonts/hirakaku ProN W2.woff") format("woff");
}
@font-face {
    font-family: hirakaku;
    font-weight: 400;
    font-style: normal;
    src: url("../fonts/hirakaku ProN W4.woff") format("woff");
}

@font-face {
    font-family: hirakaku;
    font-weight: 600;
    font-style: normal;
    src: url("../fonts/hirakaku Pro W6.woff") format("woff");
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: inherit;
}

.label{
    font-size: 18px;
    line-height: 32px;
    font-family: 'hirakaku';
}

.label2 {
    font-size: 16px;
    line-height: 32px;
    /*font-family: 'hirakaku';*/
}

.p20{
    padding: 20px 0;
}

#m01 {
    margin-top: -130px;
    padding-top: 130px;
}

.AwconquerorStdDidotLight {
    font-family: aw-conqueror-didot, serif;
    font-weight: 300;
    font-style: normal;
}

.AwconquerorStdDidotBold {
    font-family: aw-conqueror-didot, serif;
    font-weight: 700;
    font-style: normal;
}

.awConquerorDidotRegular {
    font-family: aw-conqueror-didot, serif;
    font-weight: 400;
    font-style: normal;
}

.hirakaku {
    font-family: 'hirakaku';
}

.notoserif {
    font-family: 'Noto Serif JP';
}


.ls1{
   letter-spacing: 0.1em;
}


.tac {
    text-align: center;
}

.mrauto {
    margin-right: auto;
}
.mlauto {
    margin-left: auto;
}

a {
    text-decoration: none;
    color: inherit;
}

.productImg {}

.colorGreen {
    color: #cfb11d;
}

.sp-show {
    display: none;
}

.header__nav_sp {
    display: none;
}

table.table01 {
	width:100%;
	border-right:#3EB1C6 solid 1px;
	border-collapse: collapse;
}
table.table01 thead th {
	background:#3EB1C6;
	color:#FFF;
	padding:10px 15px;
	border-right:#FFF solid 1px;
	border-bottom:#FFF solid 1px;
}
table.table01 thead th:last-child {
	border-right:#3EB1C6 solid 1px;
}
table.table01 tbody th {
	background:#3EB1C6;
	color:#FFF;
	padding:10px 15px;
	border-bottom:#FFF solid 1px;
	vertical-align:top;
}
table.table01 tbody tr:last-child th {
	border-bottom:#3EB1C6 solid 1px;
}
table.table01 tbody td {
	background:#FFF;
	padding:10px 15px;
	border-left:#3EB1C6 solid 1px;
	border-bottom:#3EB1C6 solid 1px;
	vertical-align:top;
}
::placeholder {
  color: #dddddd;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 768px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}


@media screen and (max-width: 640px) {
	table.table01 thead {
		display:none;
	}
	table.table01 tbody th {
		display:block;
	}
	table.table01 tbody td {
		display:block;
	}
	table.table01 tbody td::before {
		content: attr(label);
		float: left;
		clear:both;
		font-weight:bold;
	}
	table.table01 tbody td p {
		padding-left:6em;
	}
}

#header {
    box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
    position: fixed;
    top: 0;
    background-color: #FFF;
    width: 100%;
    z-index: 999;
}


#header2 {
    box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
    position: fixed;
    top: 0;
    background-color: #25a4ab;
    width: 100%;
    z-index: 999;
}

.header__wrap {
    max-width: 1860px;
    width: 100%;
    margin: 0 auto;
    height: 80px;
}

.header__logo {
    min-width: 180px;
     /*margin-right: 35px;
   -webkit-flex-basis: 223px;
    flex-basis: 223px;*/
}
.header__m {
    display: flex;
}

.headerLeft .header__logo {
    display: flex;
    align-items: center;
    margin-left: 30px;
}

.header__nav.header__nav_pc {
   /* display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;*/
    height: 100%;
}

.headerLeft {
    display: flex;
    /* width: 995px; */
    height: 100%;
    justify-content: space-between;
}

.headerRight {
    width: calc(100% - 995px);
    height: 100%;
}


.header__nav__list {
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
    text-decoration: none;
    list-style: none;
    align-items: center;
    font-size: 16px;
    white-space: nowrap;
    font-weight: 400;
}

.header__nav__list2 {
    display: flex;
    justify-content: flex-end;
    flex-direction: row;
    text-decoration: none;
    list-style: none;
    align-items: center;
    font-size: 16px;
    white-space: nowrap;
    font-weight: 600;
    color: #fff;
}

.headerLeft .header__nav__list {
   align-items: center;
}

.headerRight.header__nav__list {
    align-items: center;
}

.headerLeft .header__nav__list2 {
    align-items: flex-end;
}

.headerRight.header__nav__list2 {
    align-items: flex-start;
}


.headerRight.header__nav__list .header__nav__list__item a {
    margin-top: 27px;
    display: flex;
    align-items: center;
}

.headerRight.header__nav__list2 .header__nav__list__item a {
    margin-top: 27px;
    display: flex;
    align-items: center;
}

.header_world {
    margin-right: 5px;
    margin-bottom: 3px;
}

.header__nav__list__item {
    margin-right: 40px;
    position: relative;
}

.headerUnderline {
    transition: 0.3s ease-in-out;
    position: relative;
    overflow: hidden;
    padding-top: 2px;
}

.headerUnderline:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: 0.5s ease-in-out;
}

.headerUnderline:before {
    right: -50px;
    /*border-bottom: 3px solid  #898989;*/
    transform: translateX(-100%);
    z-index: -1;
}

.headerUnderline:hover:before {
    transform: translateX(0%);
    transition: 0.3s ease-in-out;
}

.hoverColorGreen:hover {
    transition: 0.3s ease-in-out;
    color:  #898989;
}

.hoverColorGreen2:hover {
    transition: 0.3s ease-in-out;
    color: #3c6467;
}


.mainVisual img {
    height: 100vh;
    width: 100%;
    position: relative;
    object-fit: cover;
}


.mainVisual .text {
    position: absolute;
    color: #333;
    width: 100%;
    top: 80%;
}

/* category */

/*オンライン*/
.tti_ca1{
    background-color: #1AAFD0;
    width: 200px;
    text-align: center;
    color: #fff;
    font-size: 18px;
}
/*対面*/
.tti_ca2{
    background-color: #6A67CE;
    width: 200px;
    text-align: center;
    color: #fff;
    font-size: 18px;
}
/*対面またはオンライン*/
.tti_ca3{
    background-color: #21C48F;
    width: 200px;
    text-align: center;
    color: #fff;
    font-size: 18px;
}

/* /category */


.rb{
    width: 20px;
    height: 20px;
    border-radius: 100px;
    position: relative;
    vertical-align: sub;
    margin-right: 5px;
  }
.rb::before, .rb::after{
    content: "";
    display: block;
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
  }
.rb::before {
    background-color: #fff;
    border: 1px solid #c2c1c1;
    height: 20px;
    width: 20px;
    left: 0px;
  }
.rb::after {
    background-color: #c2c1c1;
    opacity: 0;
    height: 14px;
    width: 14px;
    left: 4px;
  }
.rb:checked::after {
    opacity: 1;
  }


.c-bnr.bg {
    position: relative;
    overflow: hidden;
}
.c-bnr.bg::before,
.c-bnr.bg::after {
    content: "";
    display: block;
    position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    margin: auto;
    transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
    opacity: 0;
}
.c-bnr.bg::before {
    background: rgba(190,91,70,.6);
    width: 100%;
    height: 100%;
}
.c-bnr.bg::after {
    color: #fff;
    content: "Read More";
    font-size: 22px;
    font-weight: bold;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    bottom: 0;
    right: 0;
}
 
.c-bnr.bg:hover::before,
.c-bnr.bg:hover::after {
    opacity: 1;
    cursor:pointer;
}


.tti_k{
    font-size: 32px;
    font-weight: 600;
    width: 100%;
    border-bottom: 1px solid #251e1c;
    margin-bottom: 5px;
}
.tti_kl{
    font-size: 21px;
    font-weight: 300;
    width: 100%;
    border-bottom: 1px solid #251e1c;
    margin-bottom: 30px;
    color:#fff;
    letter-spacing: 0.1em;
    line-height: 21px;
    margin-top: 10px;
}

/* 左から下線 */
.tti_kl a {
    padding: 10px;
    position: relative;
    text-align: center;
    display: inline-block;
}
.tti_kl a:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    /* background-color: #30a9de; */
    background-color: #fff;
    -webkit-transition: width 0.2s ease;
    -moz-transition: width 0.2s ease;
    -o-transition: width 0.2s ease;
    transition: width 0.2s ease;
}
.tti_kl a:hover:before {
    width: 100%;
}



.date{
    padding-right: 10px;
}


.mainVisualTextWrap {
    position: absolute;
    bottom: 10%;
    right: 42%;
    /*bottom: 0 */
}

/*
.mainVisualTextWrap {
    position: absolute;
    bottom: 10%;
    left: 9%;
}
*/
.mainVisualTextWrap .mainTitle {
    font-size: 3.8em;
    font-weight: 500;
    line-height: calc(70/47);
}

@media only screen and (max-width: 1300px){
	.mainVisual img {
	    height: 70vh;
	    width: 100%;
	    position: relative;
	    object-fit: cover;
	}
	.header__nav__list__item {
	    margin-right: 26px;
	    position: relative;
	}
	.header__nav__list {
	    display: flex;
	    justify-content: flex-end;
	    flex-direction: row;
	    text-decoration: none;
	    list-style: none;
	    align-items: center;
	    font-size: 13px;
	    white-space: nowrap;
	    font-weight: 400;
	}
	.mainVisualTextWrap .mainTitle {
	    font-size: 34px;
	    font-weight: 500;
	    line-height: calc(70/48);
	}
	.mainVisualTextWrap {
	    position: absolute;
	    bottom: 100px;
	    right: 7%;
	}
}



.mainVisualTextWrap .desc {
    font-size: 16px;
    line-height: calc(27.2/16);
    font-weight: 600;
}

.come{
    text-align: right;
    font-size: 14px;
    padding-bottom: 10px;
}

.posrel {
    position: relative;
}

.bgImageArea {
    position: relative;
}

.bgImageArea .textWrap {
    position: absolute;
    top: 170px;
    width: 850px;
    color: #000;
    right: -4%;
    z-index: 1;
}

.bgImageArea .textWrap .title {
    font-size: 36px;
    line-height: calc(140/70);
}

.bgImageArea .textWrap2 {
    position: absolute;
    top: 145px;
    width: 450px;
    color: #000;
    right: 9%;
    z-index: 1;
}

.bgImageArea .textWrap2 .title {
    font-size: 36px;
    line-height: calc(140/40);
}

.bgImageArea .textWrap3 {
    position: absolute;
    top: 35px;
    width: 850px;
    color: #000;
    /*left: 5%;*/
    left: 18%;
    z-index: 1;
}

.bgImageArea .textWrap3 .title {
    font-size: 36px;
    line-height: calc(140/70);
}

.bgImageArea .textWrap4 {
    position: absolute;
    top: 170px;
    width: 850px;
    color: #000;
    left: 7%;
    z-index: 1;
    padding: 20px;
    background-color: #fff;
    opacity: 0.8;
}
.bgImageArea .textWrap4 .title {
    font-size: 36px;
    line-height: calc(140/70);
}

.bgImageArea .textWrap5 {
    position: absolute;
    top: 170px;
    width: 850px;
    color: #000;
    right: 2%;
    z-index: 1;
    padding: 20px;
    background-color: #fff;
    opacity: 0.8;
}
.bgImageArea .textWrap5 .title {
    font-size: 36px;
    line-height: calc(140/70);
}


.bgImageBtnWrap {
    display: flex;
    justify-content: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.bgImageBtnWrap .link {
    width: 490px;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #FFF;
    border-width: 2px;
    color: #FFF;
    border-radius: 10px;
}


.t_read{
   padding-top: 20px;
   line-height: 28px;

}

.t_read a{
   text-decoration: underline;
   color: #25A4AB;
}

.bgImageBtnWrap .link:hover {

    border-width: 3px;

}

.company_a{
    display: flex;
    font-size: 3em;
    font-weight: 600;

}

.company_tit{
    display: flex;
    font-size: 2.2em;
    font-weight: 600;
    letter-spacing: 0.1em;
}

.company_r{
    padding-top: 20px;
    font-size: 1em;
}

.company_r2{
    padding-top: 20px;
    font-size: 16px;
    line-height: 1.8;
    padding-bottom: 50px;
}


.onhoverColorGreen {
    transition: border-width .3s ease-in-out;
}


.onhoverColorGreen:hover {
    color: #f3da2b;
    transition: border-width .2s ease-in-out;
}





/* .bgImageBtnWrap .link:before {

    content: '';

    transition: .6s ease-in-out;

    width: calc(100% - 1px);

    height: calc(100% - 1px);

    border: 1px solid #FFF;

    border-radius: 10px;

    opacity: 0;

}



.bgImageBtnWrap .link:hover:before {

    transition: .2s ease-in-out;

    opacity: 1;

} */



.bgImageBtnWrap .link a {

    width: 100%;

    height: 100%;

    display: flex;

    justify-content: center;

    align-items: center;

}



.bgImageBtnWrap .link:first-child {

    margin-right: 20px;

}

.commonBtn1 {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    border-radius: 10px;
    cursor: pointer;
}

.commonBtn1 a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
}

.commonBtn1.green {
    background-color: #34935e;
    color: #FFF;
    transition: 0.3s ease-in-out;
}

.commonBtn1.green:hover {
    background-color: #006934;
    color: #FFF;
    transition: 0.3s ease-in-out;
}
.commonBtn1.blank {
    color: #000;
    border: 3px solid #000;
}

.commonBtn1.blankgreen {
    color:#006934;
    border: 2px solid #006934;
}

.commonBtn1.green2 {
    background: repeating-linear-gradient(135deg, #a5ffb0, #a5ffb0 10px, #fff 10px, #FFF 15px);
    color: #000;
    font-weight: 600;
    transition: 0.3s ease-in-out;
}

.commonBtn1.green2:hover {
    background-color: #006934;
    color: #006934;
    font-weight: 600;
    transition: 0.3s ease-in-out;
}

.commonBtn1.green2 a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-weight: 600;
}



.col a:hover{
    opacity: 0.7;
    transition: 0.3s ease-out;
}

.btnCenter {
    margin-right: auto;
    margin-left: auto;

}

.mapBtn {
    font-size: 13px;
}

.mapBtn i {
    margin-left: 5px;
}

.commonBtn1.blankgreen.onhoverBorder {
    border-width: 1px;
}

.commonBtn1.blankgreen.onhoverBorder:hover {
    border-width: 2px;
}

.commonTitle.eng {
    font-size: 40px;
    line-height: 1;
    color: #000;
    font-weight: 600;
}

.commonTitle.eng2 {
    font-size: 40px;
    line-height: 1;
    color: #fff;
    font-weight: 600;

}


.commonTitle.jap {
    font-size: 16px;
    line-height: calc(23/16);
    color:#888888;
    letter-spacing: 0.1em;
    font-family: 'Roboto', sans-serif;
}

.commonTitle {
    font-size: 28px;
    line-height: 1.7;
}
.commonTitle.sm {
    font-size: 20px;
    line-height: 1.7;
}
.commonTitle.borderBottom {
    border-bottom: 1px solid var(--color-gray2);
    padding-bottom: 40px;
}
.commonTitle.borderBottom2 {
    border-bottom: 1px solid var(--color-gray2);
    font-weight: 600;
    letter-spacing: 0.1em;
}
.commonTitle.sm.eng {
    font-size: 30px;
    line-height: 1;
}

.commonTitle.sm.jap {
    font-size: 15px;
    line-height: calc(21/15);
}

.newsDetail{
    padding: 25px;
}

.blockCentering {
    margin-right: auto;
    margin-left: auto;
}


.w500 {
    width: 500px;
}

.w320 {
    width: 320px;
}

.w260 {
    width: 260px;
}

.w150 {
    width: 150px;
}


.h60 {
    height: 60px;
}

.h45 {
    height: 45px;
}
.h30 {
    height: 30px;
}



.companyLinkWrap a {

    width: 100%;

    height: 100%;

    color: #FFF;

}



.companyLinkWrap .textWrap {

    position: absolute;

    top: 50%;

    left: 50%;

    transform: translate(-50%, -50%);

    -webkit-transform: translate(-50%, -50%);

    -ms-transform: translate(-50%, -50%);

    z-index: 1;

}



.companyLinkWrap a:before {

    /* background-color: var(--color-main); */

    opacity: 0.2;

    transition: 0.3s ease-out;

    position: absolute;

    top: 0;

    right: 0;

    bottom: 0;

    left: 0;

    content: '';

    border-radius: 10px;

    width: 100%;

    height: 100%;

    background: linear-gradient(45deg, #25A4AB, rgba(255, 255, 255, 0));

    z-index: 1;

}



.companyLinkWrap a:hover:before {

    opacity: 0.5;

    transition: 0.3s ease-in;

}



.newsWrap .row a {

    height: 80px;

    display: flex;

    align-items: center;

    border-top: 1px solid var(--color-gray2);

    padding-left: 30px;

    padding-right: 30px;

    transition: .6s;

}



.newsWrap .row a:hover {

    background-color: var(--color-gray3);

    transition: .2s;

}



.newsWrap .row:last-child {

    border-bottom: 1px solid var(--color-gray2);

}



.newsDetail .headline {

    display: flex;

    align-items: center;

}



.newsWrap .row .time,

.newsDetail .headline .time {

    font-size: 14px;

    line-height: calc(50/14);

    margin-right: 26px;

    color:  #898989;

}



.newsWrap .row .category,

.newsDetail .headline .category {

    font-size: 10px;

    line-height: calc(14/10);

    margin-right: 50px;

    border: 1px solid  #898989;

    border-radius: 10px;

    min-width: 72px;

    min-height: 16px;

    display: flex;

    justify-content: center;

    align-items: center;

    color: #898989;

}



.newsWrap .row .desc {
    font-size: 14px;
    line-height: calc(20/14);
    /*overflow: hidden;*/
    max-width: 660px;

}

.newsWrap .row .desc p {
    /*
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
	*/
}
.newsImage img {
    height: 450px;
    width: 100%;
    object-fit: contain;
    font-family: 'object-fit: contain;';
}
.col3Wrap.linkCard {
    position: relative;
}

.col3Wrap.linkCard .label {
    background-color: #FFFFFF;
    color: #006934;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 300px;
    height: 50px;
    border-radius: 23px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 2;
}



.col3Wrap.linkCard .col:hover .label {
    transition: 0.3s ease-in-out;
    color: #FFF;
    background-color: #006934;
}



.col3Wrap.linkCard .col {

    position: relative;

    border-radius: 10px;

    overflow: hidden;

}



.col3Wrap.linkCard .col a {

    width: 100%;

    height: 100%;

    display: block;

}



.col3Wrap.linkCard .col .label .normal {
    display: block;
}

.col3Wrap.linkCard .col:hover .label .normal {
    display: none;
}

.col3Wrap.linkCard .col .label .onHover {
    display: none;
}

.col3Wrap.linkCard .col:hover .label .onHover {
    display: block;
}


.col2Wrap.linkCard img {
    width: 100%;
    transition: 0.3s ease-in;
    border-radius: 10px;
    padding-bottom: 20px;
}

.about_f{
    justify-content: space-around;
    align-items: flex-start;
    padding-bottom: 70px;
}
.about_t{
   font-size: 1.7em;
   font-weight: 600;
   padding-bottom: 5px;
   letter-spacing: 0.1em;
}
.about_st{
    font-size: 0.8em;
    font-weight: 300;
    border-bottom: 1px #000 solid;
    margin-bottom: 20px;
}


.col3Wrap.linkCard .col a:before {
    /* background-color: var(--color-main); */
    opacity: 0.2;
    transition: 0.3s ease-out;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    border-radius: 10px;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, #25A4AB, rgba(255, 255, 255, 0));
    z-index: 1;
}



.col3Wrap.linkCard .col a:hover:before {
    opacity: 0.5;
    transition: 0.3s ease-in;
}



.col3Wrap.linkCard img {
    width: 100%;
    transition: 0.3s ease-in;
}

.col3Wrap.linkCard .col:hover img {
    transition: 0.3s ease-out;
}

.col3Wrap.linkCard .col:hover img {
    transform: scale(1.1);
    transition: 0.3s ease-in;
}

.onhoverBgGreen {
    transition: .6s ease-in-out;
}

.onhoverBgGreen:hover {
    transition: .2s ease-in-out;
    background-color: #006934;
    color: #FFF;
}

.commonTxt {
    font-size: 16px;
    line-height: calc(32/12);
}

.commonTxt2 {
    font-size: 16px;
    line-height: calc(32/16);
    letter-spacing: 0.1em;
}

.commonTxt3 {
    font-size: 16px;
    line-height: calc(32/17);
    font-weight: 100;
}

.commonTxt4 {
    font-size: 19px;
    line-height: calc(32/16);
    letter-spacing: 0.1em;
}

.commonTxt5 {
    font-size: 14px;
    line-height: calc(32/17);
    font-weight: 100;
}

.commonTxt.lg {
    font-size: 18px;
    line-height: calc(32/18);
}

.commonTxt.lg2 {
    font-size: 24px;
    line-height: calc(32/18);
    letter-spacing: 0.1em;
}

.lowerMainVisual img {
    position: relative;
    width: 100%;
    height: 200px;
    display: flex;
    align-items: flex-end;
}
.c-lower_kv {
    position: relative;
    width: 100%;
    height: 450px;
    display: flex;
    align-items: flex-end;
}
.c-common_lead {
    position: relative;
    margin: 80px 0 120px;
    text-align: center;
}
.c-container {
    width: 1320px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 40px;
    padding-right: 40px;
}

.c-common_lead__title {
    font-size: 3rem;
    font-weight: 600;
    line-height: 1.9;
    color: #002914;
}

.c-common_lead__text {
    margin-top: 40px;
    font-size: 16px;
    line-height: 32px;
    letter-spacing: 0.1em;
}

.c-lower_kv__head {
    color: #fff;
    margin-bottom: 80px;
}

.c-lower_kv__head__en {
    display: inline-block;
    line-height: 1;
    font-family: "Sarala", sans-serif;
    margin-bottom: 0.8em;
}
.c-lower_kv__head__title {
    font-size: 5.2rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.5;
}

.bgg{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
/*
.lowerMainVisual img {
    height: 400px;
    object-fit: cover;
    font-family: 'object-fit: cover;';
}
*/

.lowerMainVisual2 img {
    height: 200px;
    object-fit: cover;
    font-family: 'object-fit: cover;';
}

.lowerMainVisualTitle {
    font-size: 40px;
    font-weight: 600;
    line-height: calc(50/35);
    position: absolute;
    top: 50%;
    left: 22%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #006934;
    letter-spacing: 0.15em;
}

.lowerMainVisualTitle2 {
    font-size: 35px;
    font-weight: 600;
    line-height: calc(50/35);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    /*color: #25a4ab;*/
    color: #fff;
    letter-spacing: 0.1em;
}

.lowerMainVisualTitle3 {
    font-size: 35px;
    font-weight: 600;
    line-height: calc(50/35);
    position: absolute;
    top: 50%;
    left: 23%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #006934;
    letter-spacing: 0.1em;
}
.lowerMainVisualTitle4 {
    font-size: 35px;
    font-weight: 600;
    line-height: calc(50/35);
    position: absolute;
    top: 50%;
    left: 25%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #006934;
    letter-spacing: 0.1em;
}

.lowerMainVisualTitle5 {
    font-size: 35px;
    font-weight: 600;
    line-height: calc(50/35);
    position: absolute;
    top: 50%;
    left: 27%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #006934;
    letter-spacing: 0.1em;
}

.frmbg{
    background-color: #cbdcdd;
    padding-top: 20px;
    margin-bottom: 40px;
    padding-bottom: 1px;
    padding-left: 20px;
    padding-right: 20px;
}

.frmtxt{
    padding-bottom: 10px;
    font-size: 18px;
}


.toTopBtn {
    width: 100%;
    height: 50px;
    transition: .6s ease-out;
}

.toTopBtn:hover {
    background-color: #777777;
    color: #FFF;
    transition: .2s ease-in;
}

.toTopBtn .fa-chevron-up {
    margin-right: 5px;
}

.toTopBtn a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.pankuzu {
    display: flex;
    margin-top: 20px;
    /*margin-left: 20px;
    margin-bottom: 20px;*/
}

.pankuzu .link {
    margin-right: 10px;
}

.fw500 {
    font-weight: 500;
}

.fw600 {
    font-weight: 500;
}

.presidentFlex {
    display: flex;
}



.presidentFlex .img {

    width: 202px;

}



.presidentFlex .textWrap {

    width: calc(100% - 267px);

    margin-left: auto;

}



.prestidentName {

    display: flex;

    justify-content: flex-end;

    align-items: baseline;

}



.prestidentName .role {

    font-size: 11px;

    line-height: calc(32/11);

    margin-right: 10px;

}



.prestidentName .name {

    font-size: 14px;

    line-height: calc(32/14);

}



.linkAreaContainer {

    display: flex;

    justify-content: space-between;

    /*width: 780px;*/
    width: 1030px;


}



.linkAreaWrap {
    color: #fff;
}



.linkAreaTitle {

    margin-bottom: 10px;
    font-size: 18px;
    line-height: calc(20/14);
    letter-spacing: 0.1em;

}



.privacyLink {

    font-size: 14px;

    line-height: calc(20/14);

}



.linkAreaChild {

    font-size: 10px;

    line-height: calc(18/12);

    margin-bottom: 10px;

}



.linkArea {

    display: flex;

    justify-content: center;

}



.bgGray3 {

    background-color: var(--color-gray3);

}



footer .bgGray4 {
    padding-top: 50px;
    /*background-color: var(--color-gray3);*/
    /*background-color: #062405;*/
}



.pt85 {

    padding-top: 85px;

}

.pb50 {

    padding-bottom: 50px;

}

.pb135 {
    padding-bottom: 135px;
}



.copyright {
    font-size: 16px;
    line-height: calc(50/12);
    text-align: center;
    color: #fff;
}



.onHoverZoom {
    transition: 0.3s ease-in-out;
    overflow: hidden;
}



.onHoverZoom .bgImage {
    transition: 0.3s ease-in-out;
    position: relative;
    height: 700px;
    object-fit: cover;
    width: 100%;
}

.onHoverZoom .bgImage2 {
    transition: 0.3s ease-in-out;
    position: relative;
    height: 600px;
    object-fit: cover;
    width: 100%;
}


.onHoverZoom:after {
    content: '';
    width: 100%;
    height: 100%;
    transition: 0.3s ease-in-out;
    background-color: #d9d9d9;
    opacity: 0;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}


.onHoverZoom:hover:after {

    transition: 0.3s ease-in-out;

    opacity: 0.3;

}



.onHoverZoom:hover .bgImage {

    transition: 0.3s ease-in-out;

    transform: scale(1.05);

}



.to-inquiry {

    position: fixed;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 100px;

    height: 100px;

    right: 100px;

    bottom: 5%;

    color: #FFF;

    cursor: pointer;

    background: #aa790c;

    border-radius: 100px;

    z-index: 5;

    font-size: 11px;

    flex-direction: column;

    transition: .6s ease-out;

}



.to-inquiry:hover {

    transition: .6s ease-in;

    background-color: var(--color-orange);

}



.to-inquiry img {

    margin-bottom: 10px;

    width: 27.8px;

    height: 29.58px;

}



.footerBg img {

    height: 500px;

    object-fit: cover;

    font-family: 'object-fit: cover;';

}



.pager {

    display: flex;

    justify-content: center;

    align-items: center;

    margin: 0 -10px;

    list-style: none;

}



.pager>li {

    margin: 0 10px;

}



.pager>li>a {

    display: flex;

    justify-content: center;

    align-items: center;

    width: 40px;

    height: 40px;

    border: 1px solid var(--color-main);

    color: var(--color-main);

    transition: .2s;

}



.pager>li>a.active,

.pager>li>a:hover {

    background-color: var(--color-main);

    color: #FFF;

    transition: .2s;

}



.col2ProductWrap .row {

    display: flex;

    flex-basis: 100%;

    flex-wrap: wrap;

}



.col2ProductWrap .row:nth-child(even) {

    flex-direction: row-reverse;

}



.col2ProductWrap .col {

    flex-basis: 50%;

}



.col2ProductWrap .col.image {

    max-width: 960px;

    max-height: 700px;

}



.col2ProductWrap .col.image img {

    width: 960px;

    height: 700px;

    object-fit: cover;

    font-family: 'object-fit: cover;';

}



.col2ProductWrap .col .subtitle {

    font-size: 14px;

    line-height: calc(27.2/14);

}



.col2ProductWrap .col .title {

    font-size: 25px;

    line-height: calc(37/25);

}



.col2ProductWrap .col.desc {

    display: flex;

    justify-content: center;

    align-items: center;

}



.col2ProductWrap .col .descWrap {

    width: 477px;

}



.col3Wrap.philosophy {
    display: flex;
    justify-content: center;

}

.col3Wrap.philosophy .col {
    border-radius: 10px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    margin-bottom: 34px;
    padding-top: 30px;
    padding-bottom: 34px;
    min-height: 200px;
}

.col3Wrap.philosophy .num {
    font-size: 30px;
    text-align: center;
}



.col3Wrap.philosophy .desc {
    font-size: 15px;
    line-height: calc(22.4/15);
    font-weight: 300;
    padding-right: 29.3px;
    padding-left: 29.3px;

}



.colWrap.philosophy2 .col {
    border-radius: 10px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    margin-bottom: 34px;
    padding-top: 30px;
    padding-bottom: 34px;
    /*min-height: 330px;*/
}

.colWrap.philosophy2 .num {
    font-size: 30px;
    text-align: left;
    font-weight: 600;
    padding-left: 30px;
    padding-top: 30px;
}

.colWrap.philosophy2 .desc {
    font-size: 15px;
    line-height: calc(22.4/15);
    font-weight: 300;
    padding-right: 29.3px;
    padding-left: 29.3px;

}

.colWrap.philosophy {
    display: flex;
    justify-content: center;

}

.colWrap.philosophy .col {
    border-radius: 10px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    margin-bottom: 34px;
    padding-top: 30px;
    padding-bottom: 34px;
    min-height: 200px;
}

.colWrap.philosophy .num {
    font-size: 30px;
    text-align: center;
}

.colWrap.philosophy .desc {
    font-size: 15px;
    line-height: calc(22.4/15);
    font-weight: 300;
    padding-right: 29.3px;
    padding-left: 29.3px;

}
.colWrap.philosophy2 .col {
    border-radius: 10px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    margin-bottom: 34px;
    padding-top: 30px;
    padding-bottom: 34px;
    /*min-height: 240px;*/
}

.colWrap.philosophy2 .num {
    font-size: 30px;
    text-align: left;
    font-weight: 600;
    padding-left: 30px;
    padding-top: 30px;
}

.colWrap.philosophy2 .desc {
    font-size: 15px;
    line-height: calc(35/15);
    font-weight: 300;
    padding-right: 29.3px;
    padding-left: 29.3px;
}


.col3Wrap.philosophy2 .col {
    /*border-radius: 10px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);*/
    margin-bottom: 34px;
    padding-top: 30px;
    padding-bottom: 34px;
    min-height: 200px;
}

.col3Wrap.philosophy2 .num {
    font-size: 30px;
    text-align: center;
}



.col3Wrap.philosophy2 .desc {
    font-size: 15px;
    line-height: calc(22.4/15);
    font-weight: 300;
    padding-right: 29.3px;
    padding-left: 29.3px;

}

.medi_tit{
    font-size: 16px;
    padding-top: 50px;
    line-height: 28px;
    width: 660px;
    letter-spacing: 0.1em;
}

.simpleRow {
    display: flex;
    align-items: center;
    background-color: #fff;
    border-radius: 5px;
    padding-left: 45px;
    padding-right: 45px;
    padding-top: 22px;
    padding-bottom: 22px;
    margin-bottom: 10px;
    font-size: 16px;
}



.simpleRow .title {
    width: 35%;
    margin-right: 10px;
}



.simpleRow .desc {
    font-size: 15px;
    line-height: calc(25.5/15);

}

.simpleRow .desc2 {
    font-size: 15px;
    line-height: calc(25.5/15);
    width: 40%;

}

.googleMap {
    width: 100%;
}



.accessDescWrap {
    display: flex;
    justify-content: center;
}



.accessDescWrap .desc {

    margin-top: 15px;

}



.accessDescWrap .row {

    display: flex;

    align-items: center;

    margin-bottom: 10px;

}



.accessDescWrap .row img {

    margin-right: 10px;

}



.globalSite {

    color: var(--color-gray1);

    font-size: 13px;

}



.colorRed {

    color: #FF0000;

}



.privacyChk {
    display: flex;
    justify-content: center;
    align-items: center;
}



.privacyChk .commonCheckbox {
    margin-right: 20px;
    width: 10px;
    height: 17px;

}

.formContainer .row {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
    font-size: 18px;
   font-weight: 100;
    line-height: calc(30/18);
}

.formContainer .row .title {
    display: flex;
    font-weight: 100;
    width: 30%;
}

.formContainer .row .title .colorRed {
    margin-left: 10px;
}

.formContainer .row .title2 {
    width: calc(100% - 755px) !important;
    display: flex;
}

.formContainer .row .title2 .colorRed {
    margin-left: 10px;
}



.formContainer .row .inputArea {
    display: flex;
    flex-wrap: wrap;
    width: 70%;
}

.formContainer .row .inputArea2 {
    display: flex;
    flex-wrap: wrap;
}


.formContainer .row .inputArea textarea,
.formContainer .row .inputArea input[type="text"],
.formContainer .row .inputArea input[type="email"] {
    width: 750px;
    height: 50px;
    padding: 14px 21px;
    font-family: hirakaku;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(30/18);
    border: 1px solid #DDDDDD;
    border-radius: 3px;

}

.formContainer .row .inputArea2 input[type="text"],
.formContainer .row .inputArea2 input[type="email"] {

    width: 400px;
    height: 50px;
    padding: 14px 21px;
    font-family: hirakaku;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(30/18);
    border: 1px solid #DDDDDD;
    border-radius: 3px;

}

.formContainer .row .inputArea3 input[type="text"],
.formContainer .row .inputArea3 input[type="email"] {

    width: 300px;
    height: 50px;
    padding: 14px 21px;
    font-family: hirakaku;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(30/18);
    border: 1px solid #DDDDDD;
    border-radius: 3px;

}



.formContainer .row .inputArea input[type="number"],
.formContainer .row .inputArea input[type="tel"]{

    width: 400px;
    height: 50px;
    padding: 14px 21px;
    font-family: hirakaku;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(30/18);
    border: 1px solid #DDDDDD;
    border-radius: 3px;
}

.formContainer .row .inputArea input[type="date"]{

    width: 300px;
    height: 50px;
    padding: 14px 21px;
    font-family: hirakaku;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(30/18);
    border: 1px solid #DDDDDD;
    border-radius: 3px;
}

/*
.formContainer .row .inputArea input[type="radio"] {
    width: 20px;
    height: 20px;
    border-radius: 100px;
    position: relative;
    vertical-align: sub;
    margin-right: 5px;
  }
.formContainer .row .inputArea  input[type="radio"]::before, input[type="radio"]::after{
    content: "";
    display: block;
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
  }
.formContainer .row .inputArea  input[type="radio"]::before {
    background-color: #fff;
    border: 1px solid #c2c1c1;
    height: 20px;
    width: 20px;
    left: 0px;
  }
.formContainer .row .inputArea  input[type="radio"]::after {
    background-color: #c2c1c1;
    opacity: 0;
    height: 14px;
    width: 14px;
    left: 4px;
  }
.formContainer .row .inputArea  input[type="radio"]:checked::after {
    opacity: 1;
  }
*/

.formContainer .row .inputArea  input[type="checkbox"] {
	transform: scale(2);
	margin: 0 6px 0 0;
}


.deco-radio { 
	display: block; 
	font-size: 16px; 
	padding-right: 20px;
	font-weight: 500;
}


.deco-radio:hover { cursor: pointer; }
.deco-radio input { display: none; }
.deco-radio input+.dummy {

    width:25px;
    height: 25px;
    border: 1px solid #000;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    vertical-align: text-top;
}

.deco-radio input:checked+.dummy:after {
    content: "";
    width: 50%;
    height: 50%;
    background-color: #3F51B5;
    border-radius: 50%;
}



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

.formContainer .row .inputArea input[type="file"] {}



.formContainer .row .inputArea textarea {
    height: 450px;
}

.formContainer .row .inputArea select {
     width: 400px;
    height: 50px;
    padding: 5px 21px;
    font-family: hirakaku;
    font-size: 18px;
    font-weight: 400;
    line-height: calc(30/18);
    border: 1px solid #DDDDDD;
    border-radius: 3px;
}


.formContainer .row .inputArea textarea::placeholder .formContainer .row .inputArea input::placeholder {

    color: #DDDDDD;

}





/* IE */



.formContainer .row .inputArea textarea:-ms-input-placeholder,

.formContainer .row .inputArea input:-ms-input-placeholder {

    color: #DDDDDD;

}





/* Edge */



.formContainer .row .inputArea textarea::-ms-input-placeholder,

.formContainer .row .inputArea input::-ms-input-placeholder {

    color: #DDDDDD;

}



.formContainer .row .inputArea.radio {

    width: 750px;

    display: block;

}



.inputArea .resumeText {

    width: 100%;

    font-size: 14px;

    line-height: calc(30/14);

}



.formContainer .row.alignStart {

    align-items: flex-start;

}



.underline {

    text-decoration: underline;

}



.entryFormFlg {

    display: none;

}



.col2Wrap.recruit {

    align-items: center;

    justify-content: space-between;

}



.recruitGreyBg {

    background-color: #F8F8F8;

    width: 100%;

    padding-top: 30px;

    padding-bottom: 30px;

    padding-right: 60px;

    padding-left: 60px;

}



.recruitGreyBg .image img {

    margin-right: auto;

    margin-left: auto;

}



.recruitTable .row {

    display: flex;

    height: auto;

    height: 155px;

    align-items: center;

}



.recruitTable .row:first-child {

    border-top: 1px solid #333333;

}



.recruitTable .row:not(:first-child) {

    border-top: 1px solid #DDDDDD;

}



.recruitTable .row:last-child {

    border-bottom: 1px solid #DDDDDD;

}



.recruitTable .row .title {

    margin-left: 95px;

    width: 90px;

    font-size: 18px;

    line-height: calc(26/18);

}



.recruitTable .row .desc {

    margin-left: 180px;

    font-size: 18px;

    line-height: calc(26/18);

}



.recruitTable .row .desc.flex {

    display: flex;

    align-items: center;

}



.recruitTable .row .desc.flex .commonTxt {

    margin-right: 10px;

}



.commonTable {

    border: 1px solid;

}



.commonTable td,

.commonTable th {

    padding: 10px 5px;

}



.commonTable th {

    background-color: var(--color-main);

    color: #FFF;

}



.commonTable td {

    background-color: #fff;

    text-align: center;

}



.commonTable td:not(:last-child),

.commonTable th:not(:last-child) {

    border-right: 1px solid;

}



.commonTable tr:not(:last-child) {

    border-bottom: 1px solid;

}





/* .commonTable .tableHeader,
.commonTable .row {
    display: flex;
    flex-basis: 100%;
    width: 100%;
}

.commonTable .col {
    display: flex;
    justify-content: center;
    align-items: center;
} */

.slider6-wrap {
    width: 1920px;
    margin: 0 auto;
    position: relative;
}
.slider-6 .slick-slide {
    height: 700px;
    overflow: hidden;
}
.slider-6 .slick-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.thumbs_dots {
    text-align: center;
    margin-bottom: 50px;
}
.thumbs_list li {
    display: inline-block;
    width: 150px;
    height: 80px;
    opacity: 0.4;
    cursor: pointer;
    transition: opacity 0.3s;
}
.thumbs_list li.slick-active {
    opacity: 1;
}
.main_a{
    margin-top: 3%;
}
.main_ab{
    background-color: #000;
}
.ev_btn{
    display: flex;
    padding: 10% 0;
    justify-content: space-between;
}

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



@media screen and (max-width: 991px) {
      .ev_btn{
         display: flex;
         padding: 10% 0;
         justify-content: space-between;
      }
     .tti_kl{
         font-size: 16px;
         font-weight: 300;
         width: 100%;
         border-bottom: 1px solid #251e1c;
         margin-bottom: 30px;
         color:#fff;
         letter-spacing: 0.1em;
         line-height: 26px;
     }
    .come{
        text-align: left;
        font-size: 11px;
        padding-bottom: 10px;
    }
    .main_a{
        margin-top: 5%;
    }
    .slider6-wrap {
        width: 100%;
        margin: 0 auto;
        position: relative;
    }
    .slider-6 .slick-slide {
        height: auto;
        overflow: hidden;
    }
    .mb40,
    .mb50,
    .mb60,
    .mb70,
    .mb80,
    .mb90,
    .mb100 {
        margin-bottom: 30px;
    }

    .mb110,
    .mb120,
    .mb130,
    .mb140,
    .mb150,
    .mb160,
    .mb170,
    .mb180,
    .mb190,
    .mb200 {
        margin-bottom: 50px;
    }

    .sp-hide {
        display: none;
    }

    .sp-show {
        display: block;
    }

    .header__nav_sp {
        display: block;
    }

    .header__nav.header__nav_pc {
        display: none;
    }

    .header__wrap {
        height: 60px;
        align-items: center;
        display: flex;
    }

    .header__logo {
        max-width: 133px;
        margin-left: 10px;
        min-width: unset;
    }

    .main {
        /*margin-top: 60px;*/
    }

    .mainVisual img {
        height: 60vh;
    }

    .mainVisual .text {
        padding-left: 0;
        top: 70%;
    }

    .bgImageArea .textWrap {
        position: absolute;
        top: 15%;
        width: 800px;
        color: #000;
        right: -26%;
        z-index: 1;
     }
 
     .bgImageArea .textWrap2 {
        position: absolute;
        top: 15%;
        width: 800px;
        color: #fff;
        right: -26%;
        z-index: 1;
     }
 
    .onHoverZoom .bgImage {
        transition: 0.3s ease-in-out;
        position: relative;
        object-fit: cover;
        height: 60vh;
    }
    .mainVisualTextWrap .mainTitle {
        font-size: 2.5em;
    }

    .mainVisualTextWrap {
        position: absolute;
        bottom: 130px;
        right: 3%;
    }


    .mainVisualTextWrap {
        padding-left: 10px;
        padding-right: 10px;
    }

    .to-inquiry {
        bottom: 5%;
        right: 20px;
    }

    .newsWrap .row a {
        flex-wrap: wrap;
        height: auto;
    }

    .newsWrap .row .desc {
        flex-basis: 100%;
    }

    .newsWrap .row {
        padding-bottom: 20px;
    }

    .bgImageBtnWrap {
        flex-wrap: wrap;
        width: 90%;
        margin-right: auto;
        margin-left: auto;
    }

    .bgImageBtnWrap .link:first-child {
        margin-right: 0px;
        margin-bottom: 20px;
    }

    .bgImageBtnWrap .link {
        width: 100%;
        height: 80px;
    }

    .linkAreaContainer {
        width: 100%;
        flex-direction: column;
    }

    .linkArea {
        flex-wrap: wrap;
    }

    .globalSite {
        margin-top: 10px;
    }

    .commonTitle.eng {
        font-size: 30px;
    }

    .pager {
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .pager>li {
        margin-bottom: 10px;
    }

    .col2ProductWrap {
        flex-wrap: wrap;
    }

    .col2ProductWrap .row {
        margin-bottom: 30px;
    }

    .col2ProductWrap .col {
        flex-basis: 100%;
        padding: 0 10px;
        max-width: 100%;
        margin-bottom: 30px;
    }

    .col2ProductWrap .col.image img {
        height: 200px;
    }

    .commonBtn1.green {
        margin-right: auto;
        margin-left: auto;
    }

    .commonTitle.sm.eng {
        font-size: 24px;
    }

    .simpleRow {
        padding-left: 10px;
        padding-right: 10px;
        flex-wrap: wrap;
    }

    .simpleRow .title {
        margin-bottom: 10px;
    }

    .simpleRow .title {
        flex-basis: 100%;
    }

    .accessDescWrap {
        flex-wrap: wrap;
    }

    .accessDescWrap .desc {
        margin-bottom: 30px;
    }

    .formContainer .row .title {
        width: 100%;
        margin-bottom: 10px;
    }

    .formContainer .row {
        flex-wrap: wrap;
    }

    .formContainer .row .inputArea {
        width: 100%;
    }

    .formContainer .row .inputArea input[type="text"] {
        width: 100%;
    }

    .lowerMainVisualTitle {
        font-size: 26px;
    }

    .recruitTable .row {
        height: auto;
        padding: 10px;
        flex-wrap: wrap;
    }

    .recruitTable .row .title {
        margin-left: 0px;
        margin-bottom: 10px;
    }

    .recruitTable .row .desc {
        margin-left: 0px;
        width: 100%;
    }

    .recruitTable .row .desc.flex {
        flex-wrap: wrap;
    }

    .commonTxt {
	font-size: 16px;
	line-height: 2.1;
    }

}

.sdgs_img{
	width: 50%
}

@media screen and (min-width :768px) and (max-width: 991px){
        .ev_btn{
              display: flex;
              padding: 10% 0;
              justify-content: center;
        }
	.bgImageArea .textWrap {
	    position: absolute;
	    top: 15%;
	    width: 800px;
	    color: #000;
	    right: -36%;
	    z-index: 1;
	}

}

@media screen and (max-width: 768px) {
        .ev_btn{
           display: block;
           padding: 10% 0;
        }
	.mainVisualTextWrap {
	    position: absolute;
	    bottom: 130px;
	    right: 20%;
	}
	.commonTxt2 {
	    font-size: 16px;
	    line-height: calc(32/16);
	    letter-spacing: 0.1em;
	    width: 95%; 
	}
	.bgImageArea .textWrap3 .title {
	    font-size: 36px;
	    line-height: calc(140/70);
	    width: 100%;
	}

	.bgImageArea .textWrap3 {
	    position: absolute;
	    top: 35px;
	    color: #000;
	    left: 3%;
	    z-index: 1;
	    width: 95%;
	}


	.sdgs_img{
		width: 100%
	}
	.company_tit {
	    display: flex;
	    font-size: 2.2em;
	    font-weight: 600;
	    letter-spacing: 0.1em;
	    line-height: 50px;
	}

	.company_a{
	    display: flex;
	    font-size: 2em;
	    font-weight: 600;
	    line-height: 32px;
	}

	.commonBtn1.blank {
	    color: #000;
	    border: 3px solid #000;
	    background-color: #fff;
	}
	.commonTxt {
	    font-size: 18px;
	    line-height: 2.1;
	}
	.commonBtn1 {
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    font-size: 16px;
	    border-radius: 10px;
	    cursor: pointer;
            width: 100%;
	   padding: 0 10px;
	}

	.bgImageArea .textWrap3 {
	    position: absolute;
	    top: 35px;
	    /*width: 95%;*/
	    color: #000;
	    /* left: 5%; */
	    left: 3%;
	    z-index: 1;
	}

    .bgImageArea .textWrap {
        position: absolute;
        top: 50px;
        width: 100%;
        right: unset;
        left: unset;
        padding: 0 10px;
        text-align: right;
        color: #000;
    }

    .bgImageArea .textWrap2 {
        position: absolute;
        top: 50px;
        width: 100%;
        right: unset;
        left: unset;
        padding: 0 10px;
        text-align: right;
        color: #fff;
    }

    .bgImageArea .commonBtn1.blank {
         margin-right: auto;
   	margin-left: auto;
    }

    .onHoverZoom .bgImage {
        /*height: 380px;*/
       /*height: 650px; */
      transition: 0.3s ease-in-out;
       position: relative;
       object-fit: cover;
       height: 125vh;
       min-height: 100vh;
       width: 100%;
    }

.onHoverZoom .bgImage2 {
    transition: 0.3s ease-in-out;
    position: relative;
    height: 600px;
    object-fit: cover;
    width: 100%;
}
 
    .col3Wrap.linkCard .col:not(:last-child) {
         margin-bottom: 30px;
    }

    .presidentFlex .img {

        width: auto;

        margin-right: auto;

        margin-left: auto;

        margin-bottom: 30px;

    }

    .presidentFlex .textWrap {

        width: calc(100%);

    }

    .presidentFlex {

        flex-wrap: wrap;

    }

    .lowerMainVisual img {

        height: 200px;

    }

    .footerBg img {

        height: 300px;

    }

    .pankuzu {

        display: flex;

        margin-left: 10px;

        margin-bottom: 30px;

        flex-wrap: wrap;

    }

    .pankuzu .link {

        margin-bottom: 15px;

    }

    .recruitGreyBg {

        padding-right: 10px;

        padding-left: 10px;

    }

    .recruitGreyBgWrap .flexWrap {

        flex-wrap: wrap;

    }

    .recruitGreyBgWrap .textWrap {

        margin-bottom: 30px;

        margin-left: 10px;

        margin-right: 10px;

    }

    .recruitGreyBgWrap .flexWrap .image {

        margin-left: 10px;

        margin-right: 10px;

    }

    .recruitGreyBg .image img {

        margin-top: 30px;

    }

}



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

    .bgImageArea .textWrap {
        text-align: left;
    }

    .mainVisualTextWrap .mainTitle {
        font-size: 24px;
    }

    .bgImageArea .commonBtn1.blank {
         margin-right: auto;
   	margin-left: auto;
    }

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




/* judge */
/*既存cssの調整*/
.remodal-overlay {
    background: rgba(43,46,56,.7);
}
.remodal{
	padding: 45px 45px;
}
@media only screen and (max-width: 640px){
	.remodal{padding: 60px 20px;}
}
.remodal-is-initialized{
	border-radius: 7px;
}
.remodal-close{
	color: #80A2C5 !important;
}

.remodal-close:before{
	border: 2px #80A2C5 solid;
	border-radius: 7px;
	font-size: 36px;
	text-align: center;
}
.remodal-close, .remodal-close:before{
	top:7px;
	right: 7px;
	left: auto;
}
@media only screen and (min-width: 641px){
	.remodal{max-width: 1000px !important;}
}

.remodal-btn{
	background: #25a4ab;
	border-radius: 7px;
	font-weight: bold;
	width: 55%;
	display: inline-block;
	padding: 5px ;
	cursor: pointer;
 	-webkit-transition: background 0.2s;
	transition: background 0.2s;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	border: 0;
	outline: 0;
	font: inherit;
	font-weight: bold;
	color: #FFF;
	letter-spacing: 0.1em;
	margin-top: 20px;
	height: 48px;
}
.remodal-btn:hover{
	background: #328CE7;
}


/*------------*/
#modal-judge a:link{
	text-decoration: underline;
}
#modal-judge a:hover{
	text-decoration: none;
}

#modal-judge{
	text-align: left;
}
#modal-judge .lead{
	font-size: 14px;
	text-align: center;
}
#modal-judge .lead .rep{
	font-weight: bold;
	/*color: #C50876;*/
	color: #9178B5;
}
#modal-judge .lead .mth {
    font-weight: bold;
    color: #791285;
}
#modal-judge .lead .ped{
	font-weight: bold;
	color: #0C5DAA;
}
#modal-judge .lead .noc{
	font-weight: bold;
	color: #f38326;
}
#modal-judge .area-btn{
	display: flex;
	margin: 30px auto;
	width: 95%;
	box-sizing: border-box;
}
@media only screen and (max-width: 640px){
	#modal-judge .area-btn { 
		width: 100%;
		display: block;
	}
}
#modal-judge .area-btn .box-btn{
	background: #f4f4f4;
	/*border: 2px #0092D4 solid;*/
	border-radius: 7px;
	width: 50%;
	text-align: center;
	margin-left: 20px;
	padding-bottom: 15px;
}
@media only screen and (max-width: 640px){
	#modal-judge .area-btn .box-btn { 
		width: 100%;
		margin-left: 0;
		margin-top: 20px;
	}
}

#modal-judge .area-btn .box-btn .box-ttl{
	background: #25a4ab;
	border-top-right-radius: 7px;
	border-top-left-radius: 7px;
}
#modal-judge .area-btn .box-btn .box-ttl .p-ttl{
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	text-align: center;
       margin-block-start:0;
	margin-block-end:0;
	padding: 25px;
	margin-top: 0;
	letter-spacing: 0.15em;
}
#modal-judge .area-btn .box-btn .box-ttl .p-ttl img{
	padding-right: 0.5em;
	display:inline-block;
}


#modal-judge .area-btn .box-btn:first-child{
	margin-left: 0;
}

#modal-judge .note{
	font-size: 16px;
	/*background: #E6EEF6;*/
	padding: 10px 20px;
}
#modal-judge .txt{
       font-size: 16px;
       margin-top: 20px;
       margin-left: 20px;
       margin-right: 20px;
       line-height: 28px;
       letter-spacing: 0.1em;
}
@media only screen and (max-width: 640px){
	#modal-judge .txt{
		margin: 0.5em;
	}
}
#modal-judge .medi-type{
		width: 100%;
}
#modal-judge .medi-type ul{
	display: flex;
	padding-inline-start:0;
	padding: 0 41.5px;
	margin: 0 2px;

}
#modal-judge .medi-type li{
	display: inline-block;
	background: #747578;
  	width: 100%;
	margin-left: 2px;
	margin-bottom: 2px;
	height: 50px;
}
#modal-judge .medi-type li p{
	margin: 0;
	line-height: 1.2;
}
#modal-judge .medi-type li span{
	font-size: 80%;
	letter-spacing: 1px;
}
#modal-judge .medi-type li a{
	color: #FFF;
	text-decoration: none;
	width: 100%;
	height: 100%;
	display: flex;
       align-items: center;
       justify-content: center;
       font-size: 18px;
}

#modal-judge .medi-type li a,
#modal-judge .medi-type li a p,
#modal-judge .medi-type li a p span,
#modal-judge .medi-type li a span{
	color: #FFF;
}
#modal-judge .medi-type li a:hover{
	background: #008189;
	transition: background 0.5s;
}

#modal-judge .mb_judge-done{
	margin-bottom: 80px;
}

/*LoginForm*/
#modal-judge .LoginArea{
	margin-top: 15px;
}
#modal-judge .formArea{
	width: 100%;
    padding: 5px 0;
    display: flex;
    flex-wrap: wrap;
	padding: 1em 1.5em 0 1.5em;
	box-sizing: border-box;
	align-items: center;
}
@media only screen and (max-width: 640px){
	#modal-judge .formArea{
		padding: 0.5em;
	}
	
}
#modal-judge .formArea .formLabel{
	color: #0C5DAA;
	font-size: 14px;
	font-weight: bold;
	width: 80px;
}
#modal-judge .formBox{
    width: calc(100% - 100px);
    display: inline-block

	
}
#modal-judge .formBox .formInput{
	background: rgb(232, 240, 254);
	width: 100%;
    	border: 1px solid #9d9d9d;
	margin-left: 20px;
	line-height: 3;
	box-sizing: border-box;
	padding-left: 10px;
}

 .formInput::placeholder {
       color: #dddddd;
}


#modal-judge .formArea .formNote{
	font-size: 70%;
	margin-left: 100px;
}
#modal-judge .autoLogin{
	margin-top: 1em;
}
#modal-judge .autoLogin .autoLogin-txt{
	font-size: 70%;
	vertical-align: middle;
}
#modal-judge .atten-link{
	font-size: 70%;
	margin: 1em;
}
#modal-judge .atten-link img{
	display: inline-block;
}
#modal-judge .atten-link.right{
	text-align: left;
	margin: 10px 48px;
}
#modal-judge .atten-link a {
	color: #0d5daa;
	margin-left: 5px;
}
#modal-judge input[type="checkbox"] {
	display: inline-block;
	-webkit-appearance: checkbox;
}
/*------------*/

/* ページャー  */

.pager{
	padding-bottom: 100px;
}


.pager  ul.pagination {
	text-align: center;
	margin: 0;
	padding: 0;
}

.pager .pagination li {
	display: inline;
	 margin: 0 2px;
	 padding: 0;
	 display: inline-block;
	 background:#33a0af;
	 width: 50px;
	 height: 50px;
	 text-align: center;
	 position: relative;
}

.pager .pagination li a{
	vertical-align: middle;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display:table;
	color: #fff;
	text-decoration: none;
}

.pager .pagination li a span{
	display:table-cell;
	vertical-align:middle;
}

.pager .pagination li a:hover,
.pager .pagination li a.active{
	color: #fff;
	background: #008189;
}

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

.simpleRow .desc {
    font-size: 15px;
    line-height: calc(25.5/15);
    width: 100%;
}

.simpleRow .desc2 {
    font-size: 15px;
    line-height: calc(25.5/15);
    width: 100%;
}



.bgImageArea .textWrap .title {
    font-size: 28px;
    /* line-height: calc(36/25); */
    line-height: calc(80/40);
}


.pager .pagination li{
	display: none;
}

 .pager .pagination li.pre,
 .pager .pagination li.next{
	display: inline-block;
	width: 40%;
	height: 50px;
	text-align: center;
}

 .pager .pagination li.pre a,
 .pager .pagination li.next a{
	width: 100%;
	text-align: center;
  }

.pager .pagination li.pre span::after{
	 content: "　前の10件へ";
  }

.pager .pagination li.next span::before{
	content: "次の10件へ　";
}

}


