.font_kosugi {
  font-family: 'Kosugi', sans-serif;
}


.deco_after::after,
.deco_before::before {
  content: '';

  position: absolute;
  left: 0;
  right: 0;

  display: block;

  width: 37px;
  height: 98px;
  margin: 0 auto;

  background: url("../img/recruit/cmn_deco.svg") no-repeat;
  background-size: 37px;

  z-index: 2;
}

.deco_before::before {
  top: -48px;
}

.deco_after::after {
  bottom: -48px;
}

/* モバイル */
@media not screen and (min-width: 1280px) {
  body.page main {
    padding: 0;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  

}



.recruit header {
  position: absolute;
  width: 100%;
  padding: 20px 10px;
  transition: 0.3s;
}
.recruit header #logo {
	z-index: 1;
}
.recruit.page main {
  padding: 0;

  color: #1A1311;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  letter-spacing: 0.05em;
}

  .recruit main h2 {
    font-weight: bold;
    letter-spacing: 0.1em;
  }

  .recruit main p,.recruit main li {
    font-weight: bold;
  }

  .recruit main .text ul {
	padding-left: 1rem;
  }
  .recruit main .text li {
	list-style: disc;
	margin-bottom: .5em;
  }
/* モバイル */
@media not screen and (min-width: 1280px) {
  .recruit header {
    position: absolute;
  }

    .recruit header #logo {
      width: 80px;
      z-index: 10001;
    }

    .recruit main h2 {
      font-size: 1.5rem;
    }

    .recruit header.open #main_navigations::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      z-index: 10000;

      transition: 0.3s;
    }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  .recruit header {
    padding: 30px;
  }

  .recruit main h2 {
    font-size: 1.875em;
  }

  .recruit header #logo {
    width: 100px;
  }
}


.recruit .recruit_nav ul li a.btn {
  display: block;
  
  margin: auto;

  
  text-align: center;
  border: 2px solid var(--footer_heading_color);
  border-radius: 10px 0 10px 0;
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.3);
  transition: 0.3s;
}


/* モバイル */
@media not screen and (min-width: 1280px) {
  header.open {
    overflow: hidden;
  }


  #main_navigations {
    position: absolute;
    top: 0;
    left: 0;

    display: flex;
    flex-direction: column;

    width: 100%;
    height: 100vh;

    z-index: 0;
    
    opacity: 0;

    transition: opacity .2s ease;
  }


#main_navigations[aria-hidden="false"] {
  opacity: 1;
  z-index: 10000;
}

    #main_navigations ul {
      position: fixed;
      top: 0;
      left: 0;

      width: 100%;
      height: 100%;
      padding-top: 100px;


      color: var(--footer_heading_color);
      font-weight: bold;
      text-align: center;

      background-color: #fff;

      pointer-events: none;
      opacity: 0;

      transition: 0.3s;

    }

      header.open #main_navigations ul {
        pointer-events: auto;
        opacity: 1;

        z-index: 10001;
      }

    /* ボタン */
    .recruit .recruit_nav ul li a.btn {
      padding: 16px;
      color: #fff;
      background-color: var(--footer_heading_color);
    }


  /* 3本線の部分の設定 */
  #glb_nav_bt {
    position: fixed;
    top: 20px;
    right: 16px;


    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;
    cursor: pointer;

    z-index: 10001;
  }

  #glb_nav_bt svg {
    width: 30px;
    height: 30px;
  }

  #glb_nav_bt svg line {
    stroke: var(--footer_heading_color);
  }



  /* 3本線のアニメーション */
  #glb_nav_bt svg line {
    transition: all 0.2s ease;
  }

  #glb_nav_bt line.top {
    transform-origin: 11.5px 0.5px;
  }

  #glb_nav_bt line.bottom {
    transform-origin: 11.5px 14.5px;
  }

  #glb_nav_bt[aria-expanded="true"] line.top {
    transform: translate(0px, 7px) rotate(45deg);
  }

  #glb_nav_bt[aria-expanded="true"] line.bottom {
    transform: translate(0px, -7px) rotate(-45deg);
  }

  #glb_nav_bt[aria-expanded="true"] line.middle {
    transform: translate(-20px, 0px);
    opacity: 0;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  #glb_nav_bt {
    display: none;
  }

  /* ナビゲーション */
  .recruit .recruit_nav {
    position: fixed;
    top: 45px;
    right: 30px;
    z-index: 999;
  }

  .recruit .recruit_nav ul {
    color: #1A1311;
    font-weight: bold;
  }

  .recruit .recruit_nav ul li a:not(.btn) {
    color: #1A1311;
  }

  .recruit .recruit_nav ul li a:not(.btn):hover {
    color: var(--footer_heading_color);
  }

  .recruit .recruit_nav ul li a.btn {
    padding: 8px 16px;
    background-color: #fff;
  }
    .recruit .recruit_nav ul li a.btn:hover {
      color: #fff;
      background-color: var(--footer_heading_color);
    }


}



/***
 *
 * メインコンテンツ
 *
*/


/* 2の倍数の時背景色を付ける */
main>div:nth-child(2n) {
  background: linear-gradient(90deg, rgba(251, 237, 150, 0.2), rgba(171, 236, 214, 0.2));
}

/* モバイル */
@media not screen and (min-width: 1280px) {
  main:not(.modal__content)>div {
    position: relative;
    padding: 80px 0;
  }

  /* 各コンテンツの幅 */
  main .mod_box-centered {
    width: 99%;
  }
  
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  main:not(.modal__content)>div {
    position: relative;
    padding: 100px 0;
  }

  

  /* 各コンテンツの幅 */
  main .mod_box-centered {
    width: 1000px;
  }
}




/* タブの設定 */
.tabs li {
  min-width: 30%;
}

.tabs button {
  width: 100%;
  
  color: var(--footer_heading_color);
  text-align: center;
  font-weight: bold;
  border: 2px solid var(--footer_heading_color);
  border-radius: 50rem;
  background-color: #fff;
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.3);
  transition: 0.3s;
}

.tabs button[aria-selected="true"],
.tabs button[aria-selected="false"]:hover {
  color: #fff;
  background-color: var(--footer_heading_color);
}

/* モバイル */
@media not screen and (min-width: 1280px) {
  .tabs button {
    padding: 10px;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  .tabs button {
    padding: 20px;
  }
}



/* MV */

 #mv::before {
   content: "";
   position: absolute;
   top: 0;
   right: 0;

   display: block;
   
   height: 100%;

   
   
   z-index: 1;
 }


 #mv p {
   position: relative;
   display: inline-block;
   top: 50%;
   
   transform: translateY(-50%);
   z-index: 2;
 }


/* モバイル */
@media not screen and (min-width: 1280px) {
  #mv {
    height: 55vh;
  }
    #mv::before {
      width: 100%;
      height: 55vh;
      background: url("../img/recruit/mv.jpg") no-repeat top center;
      background-size: cover;
    }

  #mv p {
    left: 20px;
  }
    #mv p img {
      width: 200px;
    }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  #mv {
    position: relative;
    width: 100%;
    height: 100vh;

  }

  #mv::before {
    width: calc(100% - 150px);
    background: url("../img/recruit/mv.jpg") no-repeat top right;
    background-size: cover;
  }


  #mv::after {
    content: "";
    position: absolute;
    bottom: 0;
    display: block;
    width: 100%;
    height: 260px;
    background: linear-gradient(90deg, rgba(251, 237, 150, 0.2), rgba(171, 236, 214, 0.2));
  }

  #mv p {
    left: 60px;
  }
    #mv p img {
      width: 524px;
    }

}



/* 理念 */
#philosophy {
  position: relative;
  text-align: center;
  font-weight: bold;
}

  #philosophy .lead01 {
    color: var(--footer_heading_color);
  }

  #philosophy .lead02 {
    color: #3EBE96;
  }

#philosophy #group {
	margin-block-start: 4em;
}
#philosophy #group li {
	transition: 0.3s;
}
#philosophy #group li:hover {
	transform: translateY(-4px);
}
/* モバイル */
@media not screen and (min-width: 1280px) {
  #philosophy .lead01 .en {
    font-size: 1.25em;
  }
  #philosophy .lead01 .ja {
    font-size: 0.75em;
  }

  #philosophy .lead02 {
    font-size: 1.5em;
  }

  #philosophy .text {
    /* font-size: 0.875em; */
    text-align: left;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  #philosophy .lead01 .en,
  #philosophy .lead02 {
      font-size: 1.875em;
  }

  #philosophy .lead01 .en {
    letter-spacing: 0.1em;
  }
  
  #philosophy .lead02 {
    letter-spacing: 0.2em;
  }

}

/* 院長のメッセージ */

    #message .text p {
      margin-bottom: 1.25em;
    }
    #message .text p.lead {
      position: relative;

      margin-bottom: 30px;
      padding-bottom: 30px;

      color: var(--footer_heading_color);
      font-size: 1.25em;
      
      line-height: 2;
    }
      #message .text p.lead:after {
        content: "";
        display: block;

        position: absolute;
        bottom: 0;
        left: 0;

        width: 100px;
        height: 3px;

        border-radius: 50rem;
        background: #6C893A;
      }

    #message .text p.name span {
      font-size: 1.25em;
    }

  #message .images div {
    border-radius: 30px 0 30px 0;
    overflow: hidden;
  }

/* モバイル */
@media not screen and (min-width: 1280px) {
  #message .text {
    padding: 30px 0;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  #message .text {
    width: calc(100% - 400px);
  }

  #message .images div {
    width: 400px;
  }
}





/* 特徴 */
#features {
  position: relative;
}

  /* 各病院の特徴アイコン */
  #features div[role="tabpanel"] ul {
    text-align: center;
  }
    #features div[role="tabpanel"] ul li {
      display: inline-block;
      
    }

/* モバイル */
@media not screen and (min-width: 1280px) {
  #features div[role="tabpanel"] ul li {
    width: 30%;
    margin: 1%;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  #features div[role="tabpanel"] ul li {
    width: 150px;
    margin: 10px;
  }
}



/* インタビュー */
#interview {
  position: relative;
}

  /* リスト */
  #interview_lists li {
    
    margin-bottom: 50px;
    overflow: hidden;
    border-radius: 30px 0 30px 0;
    border: solid 2px var(--footer_heading_color);
  }


    #interview_lists li {
      aspect-ratio: 480 / 301;
      transition: 0.5s;
    }
    /* #interview_lists button:hover  {
      transform: scale(1.05);
    } */

    #interview_lists li {
      position: relative;
      
    }
      #interview_lists li::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 100%;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        transition: all .3s ease-out;
      }
        #interview_lists li#modal_1::before {
          background-image: url("../img/recruit/sec05_img01.jpg");
        }
        #interview_lists li#modal_2::before {
          background-image: url("../img/recruit/sec05_img02.jpg");
        }
        #interview_lists li#modal_3::before {
          background-image: url("../img/recruit/sec05_img03.jpg");
        }
        #interview_lists li#modal_4::before {
          background-image: url("../img/recruit/sec05_img04.jpg");
        }
        #interview_lists li#modal_5::before {
          background-image: url("../img/recruit/sec05_img05.jpg");
        }
        #interview_lists li#modal_6::before {
          background-image: url("../img/recruit/sec05_img06.jpg");
        }

        #interview_lists li:hover::before {
          transform: scale(1.05);
        }

      
      #interview_lists li button {
        width: 100%;
        height: 100%;
      }
        #interview_lists li button span.open_interview {
          position: absolute;
          top: 0;
          left: 0;
          display: block;
          width: 100%;
          height: 100%;
        }
          #interview_lists li button span.open_interview img {
            width: 100%;
            height: 100%;
          }

        #interview_lists li button p {
          position: absolute;
          bottom: 20px;
          left: 0;
        }
          /* 肩書と医師名 */
          #interview_lists .vet_title,
          #interview_lists .vet_name {
            display: inline-block;
            color: #fff;
            font-weight: bold;
            background-color: var(--footer_heading_color);
          }
          #interview_lists .vet_title {
            margin-bottom: 5px;
            padding: 2px 5px;
            font-size: 0.875em;
          }
          #interview_lists .vet_name {
            padding: 3px 10px;
            font-size: 1.25em;
          }



/* モーダル用 */
.modal__container {
  position: relative;
  border-radius: 30px 0 30px 0;
  overflow-y: auto;
  background-color: #fff;
}
  .modal__container {
    scrollbar-color: #dddddd #f5f5f5;
    scrollbar-width: thin;
  }

.modal .modal__close {
  position: absolute;
}

.modal .image {
  overflow: hidden;
  border-radius: 30px 0 30px 0;
}

.modal h1 {
  color: var(--footer_heading_color);
  font-weight: bold;
  line-height: 1.4;
}
  .modal h1 .vet_title {
    display: block;
    font-size: 1.25em;
  }
  .modal h1 .vet_name {
    display: block;
    font-size: 2.25em;
  }

.recruit main .modal h2 {
  font-size: 1.25em;
}
  .modal h2::before {
    content: url("../img/recruit/ico_tx.svg");
    display: inline-block;
    width: 30px;
    margin-inline-end: 0.25em;
    vertical-align: middle;
  }

.modal .text {
  font-size: 0.875em;
  line-height: 2;
}
  .modal .text p+h2 {
    margin-block-start: 2em;
  }
  .modal .text p+p {
    margin-block-start: 1em;
  }

/* モバイル */
@media not screen and (min-width: 1280px) {
  .modal__container {
    max-width: 90%;
    max-height: 90vh;
    padding: 48px 24px;
  }

  .modal .modal__close {
    position: fixed;
    top: 0;
    right: 0;
    width: 40px;
    height: 40px;
  }

  .modal h1 {
    padding: 24px 0;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  .modal__container {
    max-width: 1040px;
    max-height: 90vh;
    padding: 50px;
  }

  .modal .modal__close {
    top: 0;
    right: 0;
    width: 60px;
    height: 60px;
  }

  .modal .image {
    margin-right: 30px;
    margin-bottom: 15px;
  }

  .modal h1 {
    padding: 40px 0;
  }

  .recruit main .modal h2 {
    font-size: 1.25em;
  }
}


/**************************\
  Basic Modal Styles
\**************************/

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

  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);

  z-index: 20000;
}


.modal__btn:focus,
.modal__btn:hover {
  /* -webkit-transform: scale(1.05);
  transform: scale(1.05); */
}

/**************************\
  Demo Animation Style
\**************************/
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes mmfadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes mmslideIn {
  from {
    transform: translateY(15%);
  }

  to {
    transform: translateY(0);
  }
}

@keyframes mmslideOut {
  from {
    transform: translateY(0);
  }

  to {
    transform: translateY(-10%);
  }
}

.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}




/* 動物病院の1日 */
  #oneday .timeline {
    margin: auto;
  }

  #oneday .headline {
    margin-bottom: 3em;
    padding-bottom: 3em;
    border-bottom: 2px solid var(--footer_heading_color);
  }

  #oneday .timeline h3 {
    font-weight: bold;
    line-height: 2;
  }
    #oneday .timeline h3 .person {
      font-size: 1.5em;
    }

  #oneday .timeline ul {
    font-size: 1.25em;
    font-weight: bold;
  }
    #oneday .timeline ul li {
      margin-block-end: 1em;
    }
      /* 画像がないとき */
      #oneday .timeline ul li.no_image {
        padding-bottom: 2em;
      }

    /* 時間 */
    #oneday .timeline ul .time {
      color: var(--footer_heading_color);
    }

    #oneday .timeline ul li > .mod_grid {
      grid-template-columns: 1fr 4fr;
      align-items: center;
    }

    
      #oneday .timeline ul .mod_grid.images .image {
        width: 100%;
      }


/* モバイル */
@media not screen and (min-width: 1280px) {
  #oneday .timeline {
    max-width: 400px;
  }

  /* 写真 */
  #oneday .timeline ul .mod_grid.images {
    grid-template-columns: 1.5fr 2fr;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  #oneday .timeline {
    width: 57%;
    margin: auto;
  }

  #oneday .timeline .image {
    width: 35.1%;
  }

  /* 写真 */
  #oneday .timeline ul .mod_grid.images {
    grid-template-columns: 1fr 3fr;
  }
}


/* 募集要項 */
#requirements #panel_nara_yakan p {
	color: #6C893A;
    font-size: 20px;
    padding: 20px 0;
}
#requirements table {
  width: 100%;
}

#requirements table th,
#requirements table td {
  font-weight: bold;
  
}

#requirements table th {
  line-height: 1.5;
}

#requirements table td {
  line-height: 2;
}

  #requirements table td ul {

  }
  #requirements table td ul li {
    position: relative;
    display: inline-block;
    padding-left: 20px;
  }
    #requirements table td ul li:not(:last-child) {
      margin-right: 30px;
    }
    #requirements table td ul li::before {
      content: '';
      position: absolute;
      display: block;
      width: 12px;
      height: 12px;
      background: #6C893A;
      border-radius: 6px;
      left: 0;
      top: 10px;
    }


/* モバイル */
@media not screen and (min-width: 1280px) {
  #requirements tr,
  #requirements th,
  #requirements td {
    display: block;
    width: 100%;
  }

  #requirements table th {
    padding: 20px 10px 0;
	font-size: 1.25rem;
  }
  #requirements table td {
    padding: 10px;
  }

  #requirements table td {
    border-bottom: 2px solid var(--footer_heading_color);
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  #requirements table th,
  #requirements table td {
    padding: 20px;
  }
  
  #requirements table th {
    width: 25%;
    font-size: 1.25em;
    border-bottom: 1px solid var(--footer_heading_color);
  }

  #requirements table td {
    border-bottom: 1px solid #ccc;
  }

}


/* エントリーフォーム */

  #entry_form table {
    width: 100%;
  }
      #entry_form table .mod_grid {
        grid-template-columns: 4fr 1fr;
      }

    #entry_form table td {
      padding-bottom: 2em;
    }


  #entry_form .required,
  #entry_form .optional {
    display: block;

    width: 60px;
    height: 30px;
    
    text-align: center;
    font-size: 0.875rem;

    border-radius: 50rem;
    
  }
  
  #entry_form .required {
    color: #fff;
    line-height: 30px;
    background: var(--footer_heading_color);
  }
  #entry_form .optional {
    color: var(--footer_heading_color);
    line-height: 29px;
    border: solid 2px var(--footer_heading_color);
  }

/* モバイル */
@media not screen and (min-width: 1280px) {
  #entry_form tr,
  #entry_form th,
  #entry_form td {
    display: block;
    width: 100%;
  }
  
  #entry_form table th {
    padding: 1em 0;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  #entry_form {
    font-size: 1.25em;
  }

  #entry_form table th {
    width: 30%;
    padding-right: 2em;
  }
}


/* ラジオボタン */
input[type="radio"] {
  position: relative;
  width: 30px;
  height: 30px;

  vertical-align: -2px;

  border: 2px solid var(--footer_heading_color);
  border-radius: 50%;
  background: #fff;

  appearance: none;
}

input[type=radio]:checked::before {
  content: '';

  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  width: 16px;
  height: 16px;

  border-radius: 50%;
  background: var(--footer_heading_color);
}

/* チェックボタン */
input[type="checkbox"] {
  position: relative;
  width: 30px;
  height: 30px;

  margin-right: 0.5em;

  border: 2px solid var(--footer_heading_color);
  border-radius: 4px;
  background: #fff;

  appearance: none;
}

input[type="checkbox"]:checked::before {
  content: "";

  position: absolute;
  top: 3px;
  left: 3px;

  width: 26px;
  height: 12px;

  transform: rotate(-45deg);

  border-left: 2px solid #6C893A;
  border-bottom: 2px solid #6C893A;
}

.submit {
  width: 300px;
  margin: auto;
}
.wpcf7-spinner {
	display: contents;
}
.recruit .submit input {
	pointer-events: none;
	position: relative;
	width: 100%;
	margin-top: 3em;
	color: #ccc;
	font-size: 1rem;
	text-align: center;
	border: solid 2px #ccc;
	border-radius: 50rem;
	line-height: 4;
}
/* チェックされていたら */
.submit.checked input {
	pointer-events: auto;
	cursor: pointer;

	color: #6C893A;




	border: solid 2px #6C893A;
	border-radius: 50rem;

	background: #fff;

	transition: 0.3s;
}

.submit.checked input:hover {
	color: #fff;
	background: var(--footer_heading_color);
}

.confirm .submit input {
	margin-top: 3em;
	color: #6C893A;
	font-size: 1rem;
	text-align: center;
	border: solid 2px #6C893A;
	border-radius: 50rem;
	line-height: 4;
	width: 50%;
}
.confirm .submit input:hover {
	color: #fff;
	background: var(--footer_heading_color);
}

/* インプット */
input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
  width: 100%;
  padding: 15px 20px;

  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;

  border: solid 2px var(--footer_heading_color);
  border-radius: 10px;
  background: #fff;
}
  input::placeholder,
  textarea::placeholder {
    color: #ccc;
  }

/* プライバシーポリシー */
#entry_form .policy {
  overflow: auto;

  width: 100%;
  max-height: 400px;

  margin-bottom: 60px;

  font-weight: bold;

  border: solid 2px var(--footer_heading_color);
  border-radius: 20px;

  background: #fff;
}
  #entry_form .policy h3 {
    margin-bottom: 28px;
    color: var(--footer_heading_color);
  }

  #entry_form .policy h4 {
    margin-top: 3em;
    margin-bottom: 1em;
    
    color: var(--footer_heading_color);
    font-size: 1.375rem;
    
  }

  #entry_form .policy p,
  #entry_form .policy li {
    font-size: 1rem;
    line-height: 2;
  }
  #entry_form .policy ol {
    counter-reset: number;
    margin-top: 0.5em;
    margin-bottom: 1em;
  }
    #entry_form .policy ol li {
      position: relative;
      padding-left: 2.1em;
    }
      #entry_form .policy ol li:not(:last-child) {
        margin-bottom: 0.5em;
      }
    #entry_form .policy ol li::before {
      counter-increment: number;
      content: counter(number);

      position: absolute;
      top: 5px;
      left: 0;

      width: 24px;
      height: 24px;

      color: var(--footer_heading_color);
      text-align: center;
      line-height: 1.5;

      border: 1px solid var(--footer_heading_color);
      border-radius: 50%;

    }
/* モバイル */
@media not screen and (min-width: 1280px) {
	#entry_form .policy {
		padding: 24px;
	}
	#entry_form .policy h3 {
		font-size: 1.5rem;
	}
}
/* パソコン */
@media print,
screen and (min-width : 1280px) {
	#entry_form .policy {
	  padding: 40px;
	}
	#entry_form .policy h3 {
    	font-size: 1.875rem;
  	}
}
.thx .return {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin: 3rem auto 0;
	display: block;
}
.thx .return:hover {
	color: #fff;
}
.confirm #entry_form h2,.thx #entry_form h2 {
	font-size: 1.5em;
	font-weight: bold;
}

/* フォトギャラリー */
#photo_gallery {
  padding: 100px 0 150px;
}



/* 矢印 */
#photo_gallery .swiper-button-prev,
#photo_gallery .swiper-button-next {
  height: 60px;
  width: 60px;
}

/* 前へ次への矢印カスタマイズ */
#photo_gallery .swiper-button-prev::after,
#photo_gallery .swiper-button-next::after {
  content: "";

  margin: auto;

  background-repeat: no-repeat;
  background-size: contain;
}

/* 前への矢印カスタマイズ */
#photo_gallery .swiper-button-prev::after {
  background-image: url("../img/recruit/slide_arr.svg");
}

/* 次への矢印カスタマイズ */
#photo_gallery .swiper-button-next::after {
  background-image: url("../img/recruit/slide_arr.svg");
  transform: rotate(180deg);
}

/* ページネーション */
#photo_gallery .swiper-pagination {
  bottom: 100px;
}

/* 〇 */
#photo_gallery .swiper-pagination-bullet {
    border: solid 2px #6C893A;
    border-radius: 50rem;
    background: transparent;
    opacity: 1;
}
  #photo_gallery .swiper-pagination-bullet:not(:last-child) {
    margin: 0 8px;
  }
/* ● */
#photo_gallery .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--footer_heading_color);
}


/* モバイル */
@media not screen and (min-width: 1280px) {
  #photo_gallery .swiper-button-prev::after,
  #photo_gallery .swiper-button-next::after {
    width: 30px;
    height: 30px;
  }

  /* 前への矢印カスタマイズ */
  #photo_gallery .swiper-button-prev {
    top: initial;
    right: 45px;
    bottom: 0;
    left: initial;
  }

  /* 次への矢印カスタマイズ */
  #photo_gallery .swiper-button-next {
    top: initial;
    right: 0;
    bottom: 0;
    left: initial;
  }

    #photo_gallery .swiper-pagination-bullet {
		width: 40px;
		height: 10px;
  }
}

/* パソコン */
@media print,
screen and (min-width : 1280px) {
  #photo_gallery .swiper-slide {
    overflow: hidden;
    border-radius: 40px 0 40px 0;
  }

  #photo_gallery .swiper-button-prev::after,
  #photo_gallery .swiper-button-next::after {
    width: 60px;
    height: 60px;
  }

  /* 前への矢印カスタマイズ */
  #photo_gallery .swiper-button-prev {
    left: 21%;
  }

  /* 次への矢印カスタマイズ */
  #photo_gallery .swiper-button-next {
    right: 21%;
  }
  #photo_gallery .swiper-pagination-bullet {
  	width: 64px;
  	height: 12px;
  }
}