@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@700&display=swap');

html{
  font-size: 62.5%;
}

.sp{display: none !important;}

p{
  margin: 0;
  padding: 0;
}
ul{
    /* margin-left: -1rem; */
}
li{
	list-style-type: none;
    /* text-indent: -1em; */
}

.row{
  margin-right: 0;
  margin-left: 0;
}
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
  padding-right: 0;
  padding-left: 0;
}
body{
	font-family:'Noto Sans JP',sans-serif,"メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "ＭＳ Ｐゴシック";
    font-size: 110%;
    color: #696969;
    font-size: 1.8rem;
}

h1{font-size: 3.3rem;}
h2{font-size: 2.3rem;}
h3{font-size: 2rem;}
h4{font-size: 1.2rem;}
.font_noto_serif{font-family: 'Noto Serif JP', serif !important;}
.font_noto_sans{font-family: 'Noto Sans JP', sans-serif !important;}

.bg_gray{
  background-color: #eee;
}


/* ========== hamburger menu ========== */
a {
font-family: sans-serif;
text-decoration: none;
}
.humberger {
    display: block;
    height: 50px;
    margin-left: auto;
    position: relative;
    z-index: 10;
    width: 60px;
    border: none;
    background-color: transparent;
}
.humberger.-active .humberger__line {
    background-color: transparent;
}
.humberger.-active .humberger__line::before {
    top: 0;
    transform: rotate(45deg);
}
.humberger.-active .humberger__line::after {
    top: 0;
    transform: rotate(-45deg);
}
.humberger__line {
    display: block;
    height: 2px;
    position: absolute;
    top: 23px;
    left: 50%;
    transform: translateX(-50%);
    width: 24px;
    background-color: #172e59;
    transition: 0.4s;
}
.humberger__line:before,
.humberger__line:after {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    background-color: #172e59;
    transition: inherit;
}
.humberger__line:before {
    top: -6px;
}
.humberger__line:after {
    top: 6px;
}
.humberger__text {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
}
.humberger__text::before {
    /* content: "メニュー"; */
    text-align: center;
    color: #172e59;
    font-size: 10px;
    font-weight: 900;
}
.header {
  width: 100%;
}
.header__nav-area {
    position: fixed;
    top: 0;
    left: -100%;
    z-index: 9;
    height: 100vh;
    width: 80%;
    visibility: hidden;
    padding-top: 60px;
    background-color: #fff;
    transition: 0.4s;
}
.header__nav-area.-active {
    left: 0;
  visibility: visible;
}
.global-navigation {
    padding-top: 40px;
    padding-right: 25px;
    padding-bottom: 120px;
    padding-left: 25px;
}
.global-navigation__list > li {
    padding-bottom: 20px;
    border-bottom: 2px solid #e7e9ee;
    text-indent: 0;
}
.global-navigation__list > li + li {
  margin-top: 20px;
}
.global-navigation__link {
  display: flex;
    align-items: center;
    justify-content: space-between;
    color: #172e59;
    font-weight: 900;
    transition: color 0.4s;
    font-size: 1.5rem;
}
.global-navigation__link.-accordion {
    position: relative;
    background: none;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    padding: 0;
}
.global-navigation__link.-accordion::after {
    content: '';
    display: block;
    height: 12px;
    position: absolute;
    top: 50%;
    right: 5px;
    width: 2px;
    background-color: #ed3242;
    transform: translateY(-50%);
    transition: transform 0.4s;
}
.global-navigation__link.-accordion::before {
    content: '';
    display: block;
    height: 2px;
    position: absolute;
    top: 50%;
    right: 0;
    width: 12px;
    background-color: #ed3242;
    transform: translateY(-50%);
    
}
.global-navigation__link.-active::after {
  transform: translateY(-50%) rotate(-90deg);
}
.accordion {
    height: 0;
    overflow: hidden;
    visibility: hidden;
    transition: 0.4s;
}
.accordion.-active {
    height: auto;
    padding-top: 30px;
    visibility: visible;
}
.accordion__list li {
    font-size: 0.75rem;
}
.accordion__list li + li {
     margin-top: 21px;
}
.accordion__link {
    color: #172e59;
}
/* ========== //hamburger menu ========== */



/* ========== header ========== */
.navi_pc{
	background-color: rgba(255, 255, 255, 0.8);
	border-radius: 0 0 14px 14px;
	width: 960px;
	margin: 0 auto;
  padding: 0.5rem;
  font-size: 1rem;
}
.head_logo{
  font-weight: 700;
}
.head_logo a{
  text-decoration: none;
  color: #696969;
  font-size: 22px;
}

.head_logo img{
  width: 36px;
}
.navi_pc ul.nav li a{
	font-size: 11.5pt;
  padding: 0.2em 0.8em;
	color: #696969;
  font-family: 'Noto Sans JP', sans-serif !important;
}
.navi_pc ul.nav li a.active{
  border-bottom: 2px solid #696969;
}

@media screen and (max-width : 959px){
  .header__inner a{
    color: #696969;
    font-weight: 700;
  }
  img.head_logo{
    width: 2rem;
  }
}


#mainImage{
	background-image: url("../img/main.jpeg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}
#mainImage .inner{
	width: 960px;
	max-width: 100%;
	margin: 0 auto;
	padding-top: 760px;
	position: relative;
}
body.page_recruit #mainImage{
	background-image: url("../img/main_recruit.jpg");
	background-position: center 20%;
}
body.page_inquiry #mainImage{
	background-image: url("../img/main_inquiry.jpg");
	background-position: center 30%;
}
body.page_privacy #mainImage{
	background-image: url("../img/main_privacy.jpg");
	background-position: center 0;
}


/* TOP以外用 */
#mainImage.head_sub .inner{
	padding-top: 400px;
}

#mainImage #mainTxt{
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 46%;
	transform: translate(-100%,-50%);
}


@media (min-width: 1200px){
.container {
    max-width: 960px;
}
}
@media screen and (max-width : 959px){
	#mainImage .inner{padding-top:calc(520 / 960 * 100%);}
}
@media screen and (max-width: 959px) {
  #mainImage #mainTxt{
    top: 50%;
    left: 5%;
    transform: translate(-2%,-50%);
  }
  .container {
		max-width: 959px;
	}
	.navi_pc{
		display: none !important;
	}
	.header{
		display: block !important;
	}
}
/* ========== //header ========== */

/* ========== footer ========== */
.footer{
	background-color: #cacaca;
	padding: 2em;
	text-align: center;
}
/* ========== //footer ========== */

/* ========== contents ========== */
.container{
    padding: 30px;
}
.contents{
  /* border: 2px solid #00f; */
  margin-bottom: 4rem;
}
.required_mark{
    color: #f00;
    font-size: 1.4rem;
    margin-left: 0.2em;
}
.pagetop{
  position: fixed;
  right: 1%;
  bottom: 1%;
  padding: 10px;
  cursor: pointer;
  transition: .3s;
  
  opacity: 0;
  visibility: hidden;
}
.pagetop span{
	font-size: 64px;
}

.pagetop.active{
  opacity: 1;
  visibility: visible;
}
.multilist01{
  margin-left: 1em;
  padding-left: 0;
}
.multilist01 li{
  text-indent: -1em;
}
.multilist01 li::before{
  content: "・";
}
button:focus{
	outline: 0 !important;
}
.btn-group-lg>.btn, .btn-lg{
  padding: .5rem 1rem 1rem;
}
.btn-submit{
  color: #fff;
  background-color: #008000;
  border-color: #008000;
  font-size: 2rem;
}
.btn-submit:hover{
  color: #fff !important;
  background-color: #038f03;
  border-color: #008000;
  font-size: 2rem;
}
.pagetitle{
  max-width: 960px;
  margin: 0 auto;
}
.pagetitle h1{
  width: 14em;
  background-color: rgba(255, 255, 255, 0.66);
  padding: 0.4em;
  text-align: center;
  letter-spacing: 0.3rem;
}
.midashi_lv1::before{
    content: url(../img/icon_midashi_lv1.svg);
    vertical-align: middle;
    padding-right: 13px;
}
a.open_new_tab::after{
    font-family: "Material Icons Outlined";
    content: "\e89e";
    font-size: 16px;
    vertical-align: middle;
}
.form-control{
  font-size: 2rem;
}
textarea.form-control.input_textarea{
  height: 13rem;
}
input[type=checkbox], input[type=radio]{
  width: 1.4rem;
  height: 2rem;
}
.form-check-label{
  margin-left: 0.4rem;
}
.form-check-label:hover{
  cursor: pointer;
}
.input_sample{
  font-size: 1.5rem;
}
/* ========== //contents ========== */

/* ========== index ========== */
.top_threesupoorts{
	background-color: #dcc4d9;
}
.top_threesupoorts_title{
	font-size: 36pt;
	font-weight: 700;
	color: #771b6c;
  margin-bottom: 30px;
}
.top_supportlist{
	font-size: 16pt;
}
.top_supportlist>div{
	/* width: 214px; */
	width: 100%;
}
.top_supportlist>div p{
	font-size: 16pt;
	color: #771b6c;
  font-weight: 700;
  width: 80%;
  display: inline-block;
}

.header_seal{
	width: 52%;
  margin-top: 30px;
}
.top_kv_text1{
	font-size: 48pt;
	font-weight: 700;
	color: #771b6c;
}
.top_kv_text2{
	font-size: 12pt;
  letter-spacing: 0.26em;
	font-weight: 400;
}
@media screen and (max-width : 959px){
  .top_kv_text2{
    font-size: 12pt;
    letter-spacing: 0.02em;
  }
}

.top_midashi{
	font-size: 36pt;
	font-weight: 700;
	color: #771b6c;
}

@media screen and (max-width : 959px){
  .top_kv_text1{
    font-size: 4.5rem;
  }
  .top_kv_text2{
    font-size: 1.7rem;
  }
  .top_midashi{
    font-size: 3.1rem;
  }
  .top_threesupoorts_title{
    font-size: 3.1rem;
  }
   


}

.field_category>div{
	background-color: #fafafa;
	width: 48%;
}
.field_title{
	font-size: 2.1rem;
  font-weight: 700;
}
.field_works{
	min-height: 13em;
}
.field_skill{
	background-color: #b482c8;
	padding: 0.6em;
	text-align: center;
	color: #fff;
}

/* ========== //index ========== */

/* ========== company ========== */
.access_map{
  width:100%;
  height:20rem;
  border:0;
}
.company_profile{}

.company_profile dl{
  display: flex;
  justify-content: space-around;
}
.company_profile dt{
  width: 20%;
}
.company_profile dd{
  width: 80%;
}
.president_profile{
  background-color: #771b6c;
  color: #fff;
}
.president_name_alphabet{
  font-size: 2rem;
}
.slogan{
  font-size: 1.7rem;
}
/* ========== //company ========== */

/* ========== recruit ========== */
.tab_sup{
  display: flex;
  justify-content: space-between;
}
.tab_sup .nav-item{
  text-align: center;
  width: 33%;
}
.tab_sup .nav-item a{
  font-size: 26px;
  color: #9c9c9c;
  background-color: #e5e5e5;
  width: 100%;
  padding: 10px 10px 5px 10px;
  border-radius: 10px 10px 0 0;
}

.tab_sup .nav-item a.active
,.tab_sup .nav-item a:hover{
  background-color: #fdcf50;
  color: #5b4d4d;
}

.tab-content{
  background-color: #fdcf50;
  /* padding: 17px; */
}

.step_list {
  padding: 17px;
}
.step_join{
background-color: #dcc4d9;
}
.step_contents {
  background-color: #fff;
  padding: 20px;
  font-size: 18px;
}

.step_list_arrow {
  line-height: 1;
  padding: 0.3rem 0;
}
.step_list_arrow .arrow {
width: 0;
height: 0;
border-right: 50px solid transparent;
border-left: 50px solid transparent;
border-top: 15px solid #fff;
margin: 9px;
display: inline-block;
}



.step_support div div > div:first-child{
  width: 73%;
  padding: 1em;
}

.step_support div div > div:last-child{
  width: 27%;
  text-align: center;
}


.youkou{}

.youkou dl{
  display: flex;
  justify-content: space-around;
}
.youkou dt{
  width: 20%;
}
.youkou dd{
  width: 80%;
}
/* ========== recruit ========== */

