@charset "utf-8";
/*----------------------------------------
	タイトル関連
-----------------------------------------*/
.bg{
  background-image: url(../images/common/bg_main.png);
  background-position: center top ;
}
.bg_recruit{
  background-image: url(../images/common/bg_main.png);
  background-position: center top ;
}
.bg_company{
  background-image: url(../images/common/bg_company.png);
  background-position: center top ;
}
.bg.service {
  background-position: center 300px;
}
.bg.pharmacist{
	background-position: center 300px;
  background-repeat: no-repeat;
}
.bg_store{
  background-image: url(../images/store/bg_store.png);
  background-position: center bottom ;
  background-repeat: no-repeat;
}
@media screen and (max-width: 760px) {
  .bg{
  background-image: url(../images/common/bg_main-sp.png);
}
.bg_recruit{
  background-image: url(../images/recruit/bg_recruit.png);
}
.bg_company{
  background-image: url(../images/common/bg_company-sp.png);
}
.bg.service {
  background-position: center 300px;
}
.bg.pharmacist{
	background-position: center 300px;
}
.bg_store{
  background-image: url(../images/common/bg_store-sp.png);
  background-position: center 25% ;
}
}

/* 共通タイトル */
.policy_ttl_main{
  font-size: 0.8125rem;
  font-weight: 700;
  color: #808080;
  position: relative;
  padding-left: 50px;
}
.policy_ttl_main::before{
  content: "";
  width: 40px;
  height: 40px;
  background-image: url(../images/policy/bg_ttl.png);
  position: absolute;
  left: 0;
  top: 1em;  
}
.policy_ttl_main span{
  font-size: 2rem;
  font-weight: 700;
  margin-right: 20px;
}
.policy_ttl_sub {
  font-size: 2rem;
  font-weight: 800;
  color: #808080;
  letter-spacing: 0.2em;
  margin-bottom: 100px;
}
.policy_ttl_en02{
    font-family: "Oswald", Arial, Helvetica, Roboto, sans-serif;
    font-size: 14.375rem;
    font-weight: 400;
    line-height: 0.9;
    text-align: right;
    color: #E3E3E3;
    opacity: 0.3;
    position: relative;
    z-index: -1;
}
.policy_txt {
  max-width: 512px;
  width: 100%;
  line-height: 2.5;
}
.policy_txt p{
  font-weight: 900;
  color: #808080;
  font-size: 0.875rem;
}
.policy_txt p span{
font-size: 1.25rem;
}
@media screen and (max-width: 760px) {
 .policy_ttl_main{
  font-size: 0.8125rem;
  font-weight: 700;
  color: #808080;
  position: relative;
  padding-left: 50px;
}
.policy_ttl_main span{
  font-size: 2rem;
  font-weight: 700;
  margin-right: 20px;
}
.policy_ttl_sub {
  font-size:1.75rem;
  margin-bottom: 80px;
  padding-left: 1em;
}
.policy_ttl_en02{
    font-size: 5.625rem;
}
.policy_txt {
  max-width: 600px;
  width: 100%;
  margin: 0 auto;
  padding-left: 1em;
}
.policy_txt p{
  font-size: 0.875rem;
}
.policy_txt p span{
font-size: 1.25rem;
} 
}

/* policy */
.policy_sld{
  margin-bottom: 150px;
}
.policy_head{
background-image: url(../images/policy/bg_policy.png);
background-position: center;
background-repeat: no-repeat;
}
.policy_head_inner{
padding-top: 170px;
position: relative;
overflow: hidden;
}
.policy_head_inner h1{
  color: #808080;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  margin-top: -20px;
  margin-bottom: 250px;
}
.policy_head_inner .policy_head_ttl_en{
    color: #fff;
    font-family: "Oswald", Arial, Helvetica, Roboto, sans-serif;
    font-size: 8rem;
    font-weight: 400;
    line-height: 0.9;
    text-align: center;
      -webkit-text-fill-color: white; 
  -webkit-text-stroke: 2px #70CCF0;
}
.policy_head_inner .policy_ttl_en02{
    position: absolute;
    right: 0;
    bottom: -30px;
    z-index: -1;
}
.policy_head_inner .policy_ttl_main {
  margin-bottom: 100px;
}
.policy_head_caption {
  margin-bottom: 100px;
  font-size: 2rem;
  font-weight: 800;
  color: #808080;
  letter-spacing: 0.2em;
}
.policy_head_caption span{
  font-size: 3rem;
}
@media screen and (max-width: 760px) {
  .policy_sld{
  margin-bottom: 80px;
}
.policy_head{
background-image: url(../images/policy/bg_policy.png);
background-position: center;
background-repeat: no-repeat;
}
.policy_head_inner{
padding-top: 170px;
position: relative;
overflow: hidden;
}
.policy_head_inner h1{
  color: #808080;
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center;
  margin-top: -10px;
  margin-bottom: 250px;
}
.policy_head_inner .policy_head_ttl_en{
    font-size: 6.25rem;
      -webkit-text-fill-color: white; 
  -webkit-text-stroke: 2px #70CCF0;
}
.policy_head_inner .policy_ttl_en02{
    position: absolute;
    right: 0;
    bottom: -10px;
    z-index: -1;
}
.policy_head_inner .policy_ttl_main {
  margin-bottom: 100px;
}
.policy_head_caption {
  margin-bottom: 100px;
  font-size: 1.25rem;
  letter-spacing: 0.2em;
}
.policy_head_caption span{
  font-size: 1.5rem;
}
}
/* vision */
.vision_img_sp{
  display: none;
}
.policy_vision {
padding-top: 190px;
padding-bottom: 190px;
background-image: url("../images/policy/bg_vision.png");
background-repeat: no-repeat;
background-position: center top;
position: relative;
  overflow: hidden;
}
.policy_vision::before {
  content: "";
  width: 100%;
  height: 600px;
 background-image:url("../images/policy/bg_vision02.png");
background-position: center top;
background-repeat: no-repeat;
background-size: contain;
position: absolute;
left: 0;
top: 50%;
z-index: -1;

}

.policy_vision .policy_ttl_main{
margin-bottom: 100px;
}
.policy_vision .policy_txt{
margin-bottom: 130px;
}
.policy_vision .policy_ttl_sub{
  margin-top: -100px;

}
.vision_list{
  max-width: 400px;
  margin-bottom: 130px;
}
.policy_vision_inner{
  position: relative;
}
.vision_list li{
  background-color: #FFFFFF;
  border-radius: 10px;
  padding: 35px;
  margin-bottom: 35px;
  text-align: center;
}
.vision_list li:last-child{
margin-bottom: 0;
}
.vision_list li:first-child{
  box-shadow: 0 0 14px #70CCF0;
}
.vision_list li:nth-child(2){
  box-shadow: 0 0 14px #8EC182;
}
.vision_list li:nth-child(3){
  box-shadow: 0 0 14px #FFCBCB;
}
.vision_list li span{
  color: #FFFFFF;
font-weight: 900;
font-size: 1.25rem;
display: inline-block;
margin: 0 auto 20px auto;
padding: 0.5em 1em;
line-height: 1;
}
.vision_list li:first-child span{
  background-color: #70CCF0;
}
.vision_list li:nth-child(2) span{
 background-color: #8EC182;
}
.vision_list li:nth-child(3) span{
  background-color: #FFCBCB;
}
.vision_list li p{
font-weight: 900;
font-size: 0.625rem;
color: #808080;
line-height: 2;
}
.vision_medium{
  max-width: 560px;
  text-align: center;
}
.vision_medium .vision_medium_ttl{
    color: #fff;
    font-family: "Oswald", Arial, Helvetica, Roboto, sans-serif;
    font-size: 2rem;
    font-weight: 400;
    line-height: 0.9;
    color: #E3E3E3;
    z-index: -1;
}
.vision_medium h3{
font-size: 0.9375rem;
font-weight: 900;
color: #808080;
margin-bottom: 20px;
margin-top: -10px;
}
.vision_medium_box{
    background-color: #FFFFFF;
  border-radius: 10px;
  padding: 35px;
  margin-bottom: 35px;
  box-shadow: 0 0 14px #FFD600;
  color: #808080;
}
.vision_medium_box span{
font-weight: 900;
margin-bottom: 10px;
display: block;
font-size: 0.9375rem;
}
.vision_medium_box p{
font-weight: 900;
font-size: 1.5rem;
display: block;
}
.fix_img{
  position: relative;
}
.vision_img{
  position: absolute;
   top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  width: 74.375rem;;
  text-align: right;
  z-index: -1;
    transition-duration: .6s;
    padding-top: 10%;
}
.vision_img img{
  width: auto;
  max-width: 600px;
}
.vision_img.fixed{
position: fixed;
transition-duration: .6s;
}
.vision_img.fixed.none{
opacity: 0;
}
@media screen and (max-width: 1000px) {
  .vision_img{
display: none;
}
}
@media screen and (max-width: 760px) {
  .vision_img_sp{
  display: block;
  margin-bottom: 60px;
}
.policy_vision {
padding-top: 100px;
padding-bottom: 100px;
background-image: url("../images/policy/bg_vision.png");
background-repeat: no-repeat;
background-position: 30% top;
background-size: 300%;
}
.policy_vision .policy_ttl_main{
margin-bottom: 80px;
}
.policy_vision .policy_txt{
margin-bottom: 60px;
}
.policy_vision .policy_ttl_sub{
  margin-top: 0;
}
.vision_list{
  max-width: 400px;
  margin: 0 auto 130px auto;
}
.vision_list li{
  background-color: #FFFFFF;
  border-radius: 10px;
  padding: 35px;
  margin-bottom: 35px;
  text-align: center;
}
.vision_list li span{
  color: #FFFFFF;
font-weight: 900;
font-size: 1.25rem;
display: inline-block;
margin: 0 auto 20px auto;
padding: 0.5em 1em;
line-height: 1;
}
.vision_list li p{
font-weight: 900;
font-size: 0.625rem;
color: #808080;
line-height: 2;
}
.vision_medium{
  max-width: 560px;
  text-align: center;
}
.vision_medium .vision_medium_ttl{
    color: #fff;
    font-family: "Oswald", Arial, Helvetica, Roboto, sans-serif;
    font-size: 2rem;
    font-weight: 400;
    line-height: 0.9;
    color: #E3E3E3;
    z-index: -1;
}
.vision_medium h3{
font-size: 0.9375rem;
font-weight: 900;
color: #808080;
margin-bottom: 20px;
margin-top: -10px;
}
.vision_medium_box{
    background-color: #FFFFFF;
  border-radius: 10px;
  padding: 35px 20px;
  margin-bottom: 35px;
  box-shadow: 0 0 14px #FFD600;
  color: #808080;
}
.vision_medium_box span{
font-weight: 900;
margin-bottom: 10px;
display: block;
font-size: 0.9375rem;
}
.vision_medium_box p{
font-weight: 900;
font-size: 1.5rem;
display: block;
}
}
@media screen and (max-width: 550px) {
}
/* mission */
.policy_mission {
padding-top: 190px;
padding-bottom: 190px;
background-image: url("../images/policy/bg_mission.png");
background-repeat: no-repeat;
background-position: center top;
}
.policy_mission .policy_ttl_main {
    margin-bottom: 100px;
}
.policy_mission .policy_ttl_sub {
    margin-top: -100px;
    margin-bottom: 20px;
}
.policy_mission .caption {
    color: 0.875rem;
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 80px;
}
.policy_mission .policy_txt{
  margin-bottom: 60px;
}


@media screen and (max-width: 760px) {
.policy_mission {
padding-top: 100px;
padding-bottom: 100px;
background-image: url("../images/policy/bg_mission.png");
background-repeat: no-repeat;
background-position: 30% top;
background-size: 300%;
}
.policy_mission .policy_ttl_main {
    margin-bottom: 100px;
}
.policy_mission .policy_ttl_sub {
    margin-top: 0;
    margin-bottom: 20px;
}
.policy_mission .caption {
    font-size: 0.8125rem;
    font-weight: 700;
    margin-bottom: 80px;
    padding-left: 1em;
}
.policy_mission .policy_ttl_main {
        margin-bottom: 80px;
    }
.policy_mission .policy_txt{
  margin-bottom: 60px;
}
}
/* value */
.policy_value {
padding-top: 190px;
padding-bottom: 190px;
background-image: url("../images/policy/bg_value.png");
background-repeat: no-repeat;
background-position: center top;
}
.policy_value .policy_ttl_main {
    margin-bottom: 100px;
}
.policy_value .policy_ttl_sub {
    margin-top: -100px;
    margin-bottom: 100px;
}
.policy_value .policy_txt{
  margin-bottom: 60px;
}


@media screen and (max-width: 760px) {
.policy_value {
padding-top: 100px;
padding-bottom: 100px;
background-image: url("../images/policy/bg_value.png");
background-repeat: no-repeat;
background-position: 30% top;
background-size: 300%;
}
.policy_value .policy_ttl_main {
    margin-bottom: 100px;
}
.policy_value .policy_ttl_sub {
    margin-top: 0;
    margin-bottom: 20px;
}
.policy_value .policy_ttl_main {
        margin-bottom: 80px;
    }
.policy_value .policy_txt{
  margin-bottom: 60px;
}
}

/* FUTURE */
.policy_future {
padding-top: 0;
padding-bottom: 190px;
background-image: url("../images/policy/bg_future.png"),url("../images/policy/bg_rainbow.png");
background-repeat: no-repeat;
background-position: center bottom,center 10%;
}
.future_box {
display: flex;
justify-content: space-between;
}
.future_box img{
  max-width: 300px;
}
.future_txt{
  color: #808080;
  text-align:center;
  padding: 100px 20px 0 20px;
}
.future_txt h2{
  font-size: 0.625rem;
  font-weight: 900;
  margin-bottom: 80px;
}
.future_txt h2 span{
  font-size: 2rem;
  font-weight: 900;
  display: block;
  margin-bottom: 10px;
}
.future_txt .txt01{
  font-weight: 900;
  font-size: 2rem;
  margin-bottom: 100px;
}
.future_txt .txt02{
  font-weight: 900;
  font-size: 1.25rem;
  margin-bottom: 100px;
}

@media screen and (max-width: 1000px) {
.future_box {
}
.future_box img{
  max-width: 200px;
}
}

@media screen and (max-width: 760px) {
.policy_future {
padding-top: 0;
padding-bottom: 100px;
background-image:none,url("../images/policy/bg_rainbow.png");
background-repeat: no-repeat;
background-position: center bottom,center 30%;
background-size: 150%;
}
.future_box {
  flex-direction: column;
}
.future_txt{
  padding: 0 ;
}
.future_box img{
  display: none;
}
.future_txt .txt02{
  font-size: 1rem;
}
}
/* detail */
.policy_detail {
padding-top: 0;
padding-bottom: 190px;
}
.p-recruit-detail__en-title {
    color: #D9D9D9;
    font-family: "Oswald", Arial, Helvetica, Roboto, sans-serif;
    font-size: 8rem;
    font-weight: 700;
    line-height: 0.9;
    opacity: 0.3;
    text-align: center;
}
.p-recruit-detail__head {
    margin-top: -3.375rem;
    position: relative;
    z-index: 2;
    text-align: center;
}
.p-recruit-detail__title {
    margin-bottom: 140px;
}
.detail_list{
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
.detail_list li{
  width: calc( 100% / 3 - 20px );
}
.detail_list li a img{
  border-radius: 30px;
  overflow: hidden;
}
.detail_list li a p{
 padding-top: 30px;
 text-align: center;
 font-size: 2rem;
 font-weight: 900;
 color: #808080;
}
.detail_list li a:hover{
  opacity: 0.7;
}
@media screen and (max-width: 760px) {
      .p-recruit-detail__inner {
        padding: 0 0.625rem;
    }
    .p-recruit-detail__head {
    margin-top: -20px;
}
      .p-recruit-detail__title {
        line-height: 1.5;
        margin-right: auto;
        font-size: 1.5rem;
        margin-bottom: 60px;
    }
    .p-recruit-detail__en-title {
        font-size: 4rem;
    }
  }