/*=============================
  Sub(Lower)Page setting
===============================*/
/*
**  ---------------------------------------
subcon comon
-------------------------------------------------------------*/
.subcon {
  letter-spacing: 0.03em;
  line-height: 1.6;
  font-size: 1.6rem;
}

.subcon img {
  width: 100%;
}

.subcon .inner {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 1%;
}

.subcon .inner__large {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 1%;
}

.bg_wt {
  background: #fff;
}

.bg_lb {
  background: #ecf4f8;
}

/* subtop */
.subcon .subtop {
  width: 100%;
  height: 423px;
  position: relative;
}

.subcon .subtop:before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 1800px;
  height: 420px;
  background: url(../img/top/bg_news.png) no-repeat center center / cover;
  z-index: -1;
}

.subcon .subtop_inner {
  position: relative;
  height: 100%;
}

/* page-ttl */
.subcon .page-ttl {
  letter-spacing: 0.06em;
  position: absolute;
  top: 48%;
  left: 0px;
  z-index: 100;
  color: #fff;
}

.subcon .page-ttl .eng {
  letter-spacing: 0.055em;
  display: block;
  font-weight: bold;
  font-size: 5rem;
  text-transform: uppercase;
}

.subcon .page-ttl .jp {
  font-weight: bold;
  font-size: 2rem;
}

/* bread_crumb*/
.subcon .bread_crumb_list {
  width: 100%;
}

.subcon .bread_crumb {
  text-align: left;
  margin: 0px auto;
  padding-top: 5px;
  padding-bottom: 5px;
  display: flex;
  justify-content: flex-start;
  max-width: 1080px;
}

@media not all and (min-width: 768px) {
.subcon .bread_crumb {
  margin: 0px 10px;
}
	}



.subcon .bread_crumb li {
  display: inline;
  font-size: 1.4rem;
  font-weight: 500;
}

.subcon .bread_crumb li.current {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 68%;
}

.subcon .bread_crumb li:after {
  content: ">";
  padding-left: 10px;
  margin-right: 10px;
}

.subcon .bread_crumb li:last-child:after {
  content: "";
  padding-left: 0px;
  margin-right: 0px;
}

.subcon .bread_crumb li a:hover {
  text-decoration: none;
}

/* section */
.subcon .section {
  padding: 90px 0 90px;
  /* margin-bottom: 50px; */
}

/* underlined-ttl */
.subcon .underlined-ttl {
  position: relative;
  font-size: 2rem;
  padding-bottom: 20px;
  line-height: 1.6;
  border-bottom: solid 1px #111;
  margin-bottom: 30px;
}

.subcon .underlined-ttl.ver02 {
  padding-left: 1em;
  text-indent: -0.9em;
}

.subcon .underlined-ttl.ver02::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 2.4rem;
  vertical-align: sub;
  background-color: #00a0e9;
  line-height: 1.7;
  margin-right: 15px;
}

/* btn-cmn01 */
.subcon .btn-cmn01 {
  margin-top: 40px;
}

/* table-base */
.subcon .tbl-base {
  width: 100%;
}

.subcon .tbl-base th,
.subcon .tbl-base td {
  margin: 0;
  vertical-align: middle;
  padding: 15px 35px;
  border-bottom: 1px solid #f6f6f6;
  border-top: 1px solid #f6f6f6;
  box-sizing: border-box;
  line-height: 1.7;
  text-align: left;
  background: #fff;
}

.subcon .tbl-base th {
  width: 230px;
  background-color: #00a0e9;
  border-bottom: 1px solid #43c3ff;
  border-top: 1px solid #fff;
  color: #fff;
  font-weight: bold;
}

.subcon .tbl-base tr:first-child th,
.subcon .tbl-base tr:last-child th {
  border-top: #f6f6f6 1px solid;
}

.subcon .td-block {
  margin-bottom: 20px;
  display: block;
}

/* pagenation
.subcon .pagenation {
  margin: 44px 0 0 0;
  text-align: center;
}

.subcon .pagenation li {
  display: inline-block;
  height: 36px;
  margin: 3px;
  line-height: 34px;
  border: 1px solid #00a0e9;
}

.subcon .pagenation li.current span {
  width: 36px;
  height: 36px;
  display: block;
  color: #fff;
  background: #00a0e9;
  text-decoration: none;
}

.subcon .pagenation li a {
  width: 36px;
  height: 36px;
  display: block;
  color: #00a0e9;
  text-decoration: none;
}

.subcon .pagenation li a:hover {
  color: #fff;
  background: #00a0e9;
  text-decoration: none;
} */

.pagenation-wrapper {
  margin-top: 100px;
}

@media not all and (min-width: 768px) {
  .pagenation-wrapper {
    margin-top: 60px;
  }
}

.pagenation {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Prompt", sans-serif;
  margin-top: 50px;
  max-width: 100%;
  overflow-x: auto;
}

.pagenation li a {
  display: inline-block;
  color: inherit;
  background-color: #fff;
  border: 1px solid #00a0e9;
  color: #00a0e9;
  padding: 0.4em 0.7em 0.3em;
  margin: 0 0.5em;
  text-align: center;
  text-decoration: none;
  transition: 0.4s;
}

.pagenation li a.current {
  display: inline-block;
  color: inherit;
  background-color: #00a0e9;
  border: 1px solid #00a0e9;
  color: #fff;
  padding: 0.4em 0.7em 0.3em;
  margin: 0 0.5em;
  text-align: center;
  text-decoration: none;
  transition: 0.4s;
  cursor: pointer;
}

@media not all and (min-width: 768px) {
  .pagenation li a {
    margin: 0 0.2em;
  }
}

.pagenation li a:hover,
.pagenation li a:active {
  color: #fff;
  background-color: #00a0e9;
  font-weight: bold;
  opacity: 1;
}

.pagenation .current span {
  font-weight: bold;
  display: inline-block;
  color: inherit;
  background-color: #00a0e9;
  border: 2px solid #00a0e9;
  color: #fff;
  padding: 0.3em 0.8em;
  margin: 0 0.5em;
  text-align: center;
  text-decoration: none;
  transition: 0.4s;
}

@media not all and (min-width: 768px) {
  .pagenation .current span {
    margin: 0 0.2em;
  }
}

.pagenation .ellipsis span {
  font-weight: bold;
  display: inline-block;
  color: inherit;
  border: 2px solid transparent;
  color: #00a0e9;
  padding: 0.3em 0.8em;
  margin: 0 0.5em;
  text-align: center;
  text-decoration: none;
  transition: 0.4s;
}

@media not all and (min-width: 768px) {
  .pagenation .ellipsis span {
    margin: 0 0.2em;
  }
}

/* flex-wrapper */
.subcon .flex-wrapper {
}

.subcon .flex-wrapper figure {
  width: 43%;
}

.subcon .flex-wrapper .txtbox {
  width: 50%;
}

.subcon .flex-wrapper .txtbox.full {
  width: 100%;
}

.subcon .flex-wrapper .ttl {
  font-size: 2.2rem;
  /* margin-bottom: 15px; */
  font-weight: bold;
}

.subcon .flex-wrapper .ttl {
  margin-bottom: 22px;
}

.subcon .flex-wrapper .desc-wrapper {
  line-height: 1.9;
}

.subcon .flex-wrapper .desc {
  margin-bottom: 10px;
}

/* num-list */
.subcon .num-list {
}

.subcon .num-list .item:not(:last-child) {
  margin-bottom: 60px;
}

.subcon .num-list .underlined-ttl {
  margin-bottom: 30px;
}

.subcon .num-list .underlined-ttl .num {
  display: inline-block;
  padding: 6px 12px;
  background: #00a0e9;
  border-radius: 50px;
  color: #fff;
  font-weight: bold;
  margin-right: 6px;
}

.subcon .num-list .underlined-ttl h3 {
  display: inline-block;
  font-weight: bold;
}

.subcon .num-list .flex-wrapper.overview {
  margin-bottom: 36px;
}

.subcon .num-list .flex-wrapper.point {
  flex-direction: row-reverse;
  background: #ecf4f8;
  padding: 50px;
  border-radius: 20px;
}

.subcon .num-list .flex-wrapper.point .label {
  display: inline-block;
  background: #00a0e9;
  padding: 6px 10px;
  line-height: 1;
  color: #fff;
  border-radius: 4px;
  margin-bottom: 12px;
}

/* sub-box */
/* sub-box */
.subcon .sub-box {
  background: #ecf4f8;
  padding: 35px 40px 40px;
  margin: 40px 0px 10px;
  width: 100%;
}

.subcon .sub-box .item-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.subcon .sub-box .item-list:after {
  content: "";
  width: 31%;
}

.subcon .sub-box .item-list li {
  background: #fff;
  font-weight: bold;
  font-size: 1.5rem;
  width: 31%;
  padding: 5px 0px 5px 14px;
  height: fit-content;
  margin-bottom: 15px;
  border: 1px solid #009fe952;
}

.subcon .sub-box .item-list li:before {
  content: "";
  display: inline-block;
  background: url(../img/cmn/check_gr.png) no-repeat;
  background-size: cover;
  width: 13px;
  height: 12px;
  margin-right: 14px;
}

.subcon .sub-box.indicator li {
  position: relative;
}

.subcon .sub-box.indicator li a {
  display: block;
}

.subcon .sub-box.indicator li:before {
  display: none;
  margin-right: 0px;
}

.subcon .sub-box.indicator li:after {
  content: "";
  display: block;
  /* font-family: "Font Awesome 5 Free"; */
  /* line-height: 20px; */
  position: absolute;
  right: 20px;
  text-align: center;
  top: 35%;
  width: 10px;
  height: 10px;
  /* font-weight: bold; */
  border: 1px solid #555;
}

/* page-tab */
.subcon .page-tab {
  margin-bottom: 60px;
}

.subcon .page-tab li {
  width: 49.3%;
  text-align: center;
  padding-bottom: 20px;
  padding-top: 20px;
  background: #00a0e9;
  color: #fff;

  cursor: pointer;
  transition: all 0.5s;

  border: 2px solid #00a0e9;
}

.subcon .page-tab li.current {
  color: #00a0e9;
  background: #fff;
}

.subcon .page-tab li:hover {
  color: #00a0e9;
  background: #fff;
}

.subcon .page-tab li:hover a {
  opacity: 1;
}

.subcon .page-tab li .eng {
  font-size: 2rem;
  font-weight: bold;
}

.subcon .page-tab li .jp {
  display: block;
}

/* card-list_03 */
.subcon .card-list__03 {
  margin-top: 50px;
}

.subcon .card-list__03 .item {
  width: 31.3%;
  background-color: #fff;
  padding: 26px 25px 20px;
  position: relative;
  margin-bottom: 4%;
}

.subcon .card-list__03 .item.bg_lb {
  background-color: #ecf4f8;
}

.subcon .card-list__03 figure {
  width: 100%;
  margin: 0 auto;
  margin-bottom: 18px;
}

.subcon .card-list__03 figure.icon {
  width: 60px;
  height: 62px;
  margin: 0 auto;
  margin-bottom: 18px;
}

.subcon .card-list__03 .num {
  position: absolute;
  top: -22px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.subcon .card-list__03 .num:before {
  content: "";
  display: block;
  width: 50px;
  height: 50px;
}

.subcon .card-list__03 li:nth-child(1) .num:before {
  background: url(../img/top/icon_num01.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.subcon .card-list__03 li:nth-child(2) .num:before {
  background: url(../img/top/icon_num02.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.subcon .card-list__03 li:nth-child(3) .num:before {
  background: url(../img/top/icon_num03.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.subcon .card-list__03 .ttl {
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 10px;
  font-weight: bold;
}

.subcon .card-list__03 .txtbox {
  padding: 0px 20px 30px;
}

@media screen and (max-width: 1200px) {
  /* page-ttl */
  .subcon .page-ttl {
    text-align: center;
    top: 42%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
}

@media screen and (max-width: 1040px) {
  .subcon .inner {
    padding: 0 3%;
  }

  .subcon .inner__large {
    padding: 0 3%;
  }

  .subcon .sub-box.indicator li {
    width: 48%;
  }
}

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

@media screen and (max-width: 767px) {
  .subcon {
    font-size: 1.4rem;
  }

  /* subtop */
  .subcon .subtop {
    height: 300px;
  }

  .subcon .subtop:before {
    height: 290px;
  }

  /* section */
  .subcon .section {
    padding: 45px 0 45px;
    margin-bottom: 30px;
  }

  .subcon .inner {
    padding: 0 5%;
  }

  .subcon .inner__large {
    padding: 0 5%;
  }

  /* page-ttl */
  .subcon .page-ttl {
    text-align: center;
    top: 42%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }

  .subcon .page-ttl .eng {
    font-size: 5rem;
  }

  .subcon .page-ttl .jp {
    font-size: 2rem;
  }

  /* bread_crumb */
  .subcon .bread_crumb li.current {
    width: 50%;
  }

  /* underlined-ttl */
  .subcon .underlined-ttl {
    padding: 15px 0px 10px;
    font-size: 2rem;
    margin-bottom: 23px;
  }

  .subcon .underlined-ttl span {
    display: block;
    margin-left: 0px;
    margin-top: 0px;
  }

  /* tbl-base */
  .subcon .tbl-base th,
  .subcon .tbl-base td {
    display: block;
    width: 100%;
    border: none;
  }

  .subcon .tbl-base th {
    padding: 15px 15px;
    border: none;
  }

  .subcon .tbl-base td {
    padding: 15px;
  }

  /* flex-wrapper */
  .subcon .flex-wrapper figure {
    width: 100%;
    margin-bottom: 30px;
  }

  .subcon .flex-wrapper .txtbox {
    width: 100%;
  }

  .subcon .flex-wrapper .ttl {
    font-size: 1.8rem;
  }

  .subcon .flex-wrapper .ttl span {
    font-size: 1.8rem;
  }

  .subcon .num-list .flex-wrapper.overview {
    margin-bottom: 20px;
  }

  /* card-list_03 */
  .subcon .card-list__03 .item {
    width: 100%;
    margin-bottom: 12%;
  }

  .subcon .card-list__03 .ttl {
    font-size: 1.8rem;
  }

  .subcon .card-list__03 .txtbox {
    padding: 0px 20px 10px;
  }

  /* sub-box */
  .subcon .sub-box {
    padding: 8px 22px 24px;
    margin-top: 20px;
  }

  .subcon .sub-box .item-list li {
    width: 100%;
  }

  .subcon .sub-box.indicator li {
    padding: 0px;
    text-align: center;
    padding: 10px;
  }

  .subcon .sub-box.indicator li:after {
    position: unset;
    margin: 0 auto;
    content: "\f107";
  }
}

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

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

/*
**  ---------------------------------------
office
-------------------------------------------------------------*/
.subcon .s-img figure {
  width: 21%;
}

.subcon .s-img .txtbox {
  width: 74%;
}

#pageOffice .executive .ttl span {
  font-size: 1.6rem;
  padding-bottom: 3px;
  border-bottom: 2px solid #ddd;
  margin-bottom: 16px;
  display: inline-block;
}

#pageOffice .block {
  margin-bottom: 30px;
  line-height: 2;
}

#pageOffice .block .strong {
  font-size: 2.6rem;
}

#pageOffice .top-message {
  padding-bottom: 120px;
}

#pageOffice .new-branch {
  margin-top: 90px;
}

/* access */
#pageOffice .access figure {
  width: 25%;
  margin-bottom: 20px;
  min-width: 150px;
}

#pageOffice .access .gmap {
  width: 47%;
  height: auto;
}

#pageOffice .access .txtbox {
  width: 47%;
}

#pageOffice .gmap iframe {
  width: 100%;
  height: 100%;
}

#pageOffice .desc li {
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .subcon .s-img figure {
    width: 26%;
  }

  .subcon .s-img .txtbox {
    width: 66%;
  }
}

@media screen and (max-width: 767px) {
  #pageOffice .top-message {
    padding-bottom: 60px;
  }

  #pageOffice .gmap {
    height: 300px;
  }

  #pageOffice .access {
    width: 100%;
    height: auto;
    flex-direction: column-reverse;
  }

  #pageOffice .access .gmap {
    width: 100%;
    height: auto;
    margin-top: 10px;
  }

  #pageOffice .access .txtbox {
    width: 100%;
  }

  #pageOffice .access figure {
    margin: 0 auto 20px;
  }

  #pageOffice .access .ttl {
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .subcon .s-img .ttl {
    font-size: 2rem;
    margin-bottom: 15px;
  }

  #pageOffice .block .strong {
    font-size: 2rem;
  }

  #pageOffice .top-message p {
    font-size: 1.4rem;
  }

  #pageOffice .new-branch {
    margin-top: 45px;
  }
}

@media screen and (max-width: 599px) {
  .subcon .s-img figure {
    width: 40%;
    margin: 0 auto 20px;
  }

  .subcon .s-img .txtbox {
    width: 100%;
    margin: 0 auto;
  }

  .subcon .s-img .ttl {
    text-align: center;
  }

  .subcon .s-img .ttl span {
    margin-bottom: 12px;
  }
}

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

/*
**  ---------------------------------------
business
-------------------------------------------------------------*/
.subcon .service-btn_wrapper {
  padding-bottom: 0px;
}

.subcon .service-btn_wrapper .btn-list {
  /* padding: 70px 20px 20px;
  margin-top: -85px; */
}

.subcon .btn-list li {
  border-radius: 3px;
  padding: 10px;
  width: 33.3%;
  position: relative;
}

.subcon .btn-list::after {
  display: block;
  width: 23%;
  content: "";
}

.subcon .btn-list li a {
  display: block;
  font-weight: bold;
  padding-top: 11px;
  padding-bottom: 10px;
  text-align: center;
  background: #00a0e9;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 79px;
}

.subcon .btn-list li:after {
  content: "";
  display: inline-block;
  background-image: url(../img/cmn/btn_arw.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 8px;
  height: 12px;
  position: absolute;
  right: 16px;
  top: 39%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transition: all 0.3s;
}

.subcon .btn-list li:hover a {
  color: #00a0e9;
  background-color: #fff;
  border: 2px solid #00a0e9;
}

.subcon .btn-list li:hover:after {
  right: 12px;
}

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

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

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

@media screen and (max-width: 599px) {
  .subcon .btn-list li {
    width: 46%;
    margin: 2%;
    padding: 0;
  }

  .subcon .btn-list li a {
    padding: 10px 3px;
  }
}

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

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

/*
**  ---------------------------------------
staff
-------------------------------------------------------------*/

/* staff */
#pageStaff .staff_list {
  margin: 0 auto;
}

#pageStaff .staff_list li {
  padding: 5%;
  background: #ecf4f8;
  margin-bottom: 45px;
}

#pageStaff .staff_list .txtbox {
  text-align: left;
  width: 63%;
}

#pageStaff .staff_list .underlined-ttl {
  border-bottom: 1px solid #333;
}

#pageStaff .staff_list .underlined-ttl h4 {
  align-self: end;
  margin-bottom: 8px;
  margin-top: 12px;
  font-size: 2rem;
  line-height: 1.6;
  font-weight: bold;
  letter-spacing: 0.05em;
}

#pageStaff .staff_list .txtbox .desc {
  margin-bottom: 15px;
}

#pageStaff .staff_list figure {
  width: 30%;
  align-self: center;
  margin: 0;
}

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

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

@media screen and (max-width: 767px) {
  #pageStaff .staff_list {
    margin: 0 auto;
  }

  #pageStaff .staff_list li {
    margin-bottom: 35px;
    padding: 7%;
  }

  #pageStaff .staff_list .txtbox,
  #pageStaff .staff_list figure {
    width: 100%;
  }

  #pageStaff .staff_list .txtbox p {
    margin-bottom: 10px;
  }

  #pageStaff .staff_list .underlined-ttl {
    margin-bottom: 18px;
  }

  #pageStaff .staff_list .underlined-ttl .font-en {
    font-size: 1.4rem;
  }

  #pageStaff .staff_list .underlined-ttl .num {
    font-size: 7rem;
    line-height: 4.7rem;
  }

  #pageStaff .staff_list .underlined-ttl h4 {
    font-size: 1.7rem;
    align-self: flex-end;
    margin-top: 4px;
  }

  #pageStaff .staff_list figure {
    /* margin-top: 20px; */
    margin-bottom: 20px;
  }

  #pageStaff .staff_list .txtbox p {
    margin-bottom: 0px;
  }
}

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

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

/*
**  ---------------------------------------
guide
-------------------------------------------------------------*/
#pageGuide .s-txt {
  display: block;
  font-size: 1.5rem;
  margin-top: 8px;
}

#pageGuide .step-list {
  position: relative;
  z-index: 1;
  margin: 0 auto;
  background: #fff;
  padding: 30px;
}

#pageGuide .step-list .item {
  position: relative;
  overflow-x: inherit;
  overflow-y: hidden;
  display: flex;
  margin-top: 5px;
  margin-bottom: 50px;
}

#pageGuide .step-list .item-content {
  width: calc(100% - 90px);
}

#pageGuide .step-list .item .txtbox {
  width: 58%;
  text-align: left;
}

#pageGuide .step-list .item-content_ttl {
  line-height: 1.66667;
  letter-spacing: 0.4em;
  margin-bottom: 7px;
}

#pageGuide .step-list .item-content_ttl {
  letter-spacing: 0.04em;
  font-size: 20px;
  font-weight: bold;
}

#pageGuide .step-list .item-content_txt {
  line-height: 2.42857;
  letter-spacing: 0.15em;
  padding-bottom: 1.625rem;
}

#pageGuide .step-list .item-content_txt {
  letter-spacing: 0.04em;
}

#pageGuide .step-list .item figure {
  width: 32%;
}

#pageGuide .step-list .item:last-child {
  margin-bottom: 0;
}

#pageGuide .step-list .item:last-child:before {
  display: none;
}

#pageGuide .step-list .item:before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  position: absolute;
  background-color: #e7e7e7;
}

#pageGuide .step-list .item:before {
  top: 5.3rem;
  left: 3.6rem;
}

#pageGuide .step-list .num {
  font-weight: bold;
  color: #48c7ab;
  line-height: 1;
  letter-spacing: 0.05em;
  font-size: 20px;
  margin-top: 5px;
  margin-right: 50px;
  width: 100px;
  text-transform: uppercase;
}

#pageGuide .step-list .item:last-child .num {
  position: relative;
}

#pageGuide .strong-box {
  font-size: 2.6rem;
  background: #00a0e9;
  color: #fff;
  padding: 30px;
  margin-top: 20px;
}

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

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

@media screen and (max-width: 767px) {
  #pageGuide .s-txt {
    font-size: 1.3rem;
    margin-top: 12px;
    margin-bottom: 12px;
  }

  #pageGuide .step-list {
    margin: 2%;
    padding: 0;
  }

  #pageGuide .step-list .item .txtbox {
    width: 100%;
  }

  #pageGuide .step-list .item figure {
    width: 100%;
  }

  #pageGuide .step-list .num {
    margin-right: 20px;
    width: 76px;
    font-size: 16px;
  }

  #pageGuide .step-list .item-content_txt {
    padding-bottom: 20px;
    line-height: 2;
  }

  #pageGuide .step-list .item-content_ttl {
    font-size: 16px;
  }

  #pageGuide .strong-box {
    font-size: 1.8rem;
    padding: 20px;
  }
}

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

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

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

.faq_list .menu__item {
  background: #fff;
  margin-bottom: 20px;
  cursor: pointer;
  display: table;
  width: 100%;
  font-size: 1.7rem;
  border: 1px solid #333;
  line-height: 1.8;
}

.faq_list .menu__item span {
  font-size: 2.4rem;
  /* font-family: "Montserrat", sans-serif; */
  color: #00a0e9;
  display: table-cell;
  width: 30px;
}

.faq_list .menu__item p {
  display: table-cell;
  width: calc(100% - 30px);
}

.faq_list .menu__item__link {
  display: block;
  position: relative;
  padding: 20px 20px 22px;
}

.faq_list .menu__item__link:after {
  content: "\f067";
  display: block;
  font-family: "Font Awesome 5 Free";
  line-height: 20px;
  position: absolute;
  right: 20px;
  text-align: center;
  top: 42%;
  width: 20px;
  font-weight: bold;
}

.faq_list .menu__item__link.on:after {
  content: "\f068";
  font-weight: bold;
}

.faq_list .submenu {
  border-top: 1px dashed #ddd;
  background: #fff;
  display: none;
  padding: 30px;
  box-sizing: border-box;
}

.faq_list .submenu span {
  color: #48c7ab;
}

.subcon .faq_list .submenu p {
  letter-spacing: 0;
}

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

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

@media screen and (max-width: 767px) {
  .faq_list .menu__item {
    font-size: 1.5rem;
  }

  .faq_list .menu__item__link {
    padding: 21px 30px 50px;
  }

  .faq_list .menu__item__link:after {
    content: "\f107";
    right: auto;
    text-align: center;
    top: auto;
    left: 50%;
    bottom: 10%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }

  .faq_list .menu__item__link.on:after {
    content: "\f106";
    font-weight: bold;
  }
}

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

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

/*
**  ---------------------------------------
link
-------------------------------------------------------------*/
#pageLink .sub-box {
  margin-top: 0px;
}

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

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

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

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

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

/*
**  ---------------------------------------
recruit
-------------------------------------------------------------*/

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

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

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

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

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

/*
**  ---------------------------------------
News
-------------------------------------------------------------*/
#pageNews .top-news {
  padding: 80px 0;
  margin-bottom: 100px;
}

#pageNews .top-news:before {
  background: none;
}

#pageNews .top-news-list li {
  margin-bottom: 4%;
}

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

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

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

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

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

/*
**  ---------------------------------------
NewsDetail
-------------------------------------------------------------*/

#pageNewsDetail .single {
  padding: 4.5%;
  text-align: left;
  margin: 0 auto;
  line-height: 1.9;
  background-color: #ecf4f8;
}

#pageNewsDetail .single .underlined-ttl {
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: 1px solid #ddd;
}

#pageNewsDetail .sup_wrapper {
  display: flex;
  margin-bottom: 20px;
}

#pageNewsDetail .single .cat {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  background: #00a0e9;
  padding: 1px 10px 0px;
  color: #fff;
  display: inline-block;
}

#pageNewsDetail .single .date {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  color: #00a0e9;
  display: block;
  margin-right: 13px;
}

#pageNewsDetail .link__btn a {
  text-align: center;
  margin-top: 50px;
  margin: 50px auto 0px;
}

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

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

@media screen and (max-width: 767px) {
  #pageNewsDetail .single {
    padding: 30px 5.5%;
  }

  #pageNewsDetail .sup_wrapper {
    display: flex;
    margin-bottom: 5px;
  }

  #pageNewsDetail .single .underlined-ttl {
    font-size: 1.6rem;
  }

  #pageNewsDetail .single .cat {
    font-size: 1.4rem;
  }

  #pageNewsDetail .single .date {
    font-size: 1.4rem;
  }
}

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

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

/*
**  ---------------------------------------
privacy
-------------------------------------------------------------*/
#pagePrivacy .privacy_list .item:not(:last-child) {
  margin-bottom: 45px;
}

#pagePrivacy .underlined-ttl {
  padding-bottom: 10px;
  margin-bottom: 16px;
}

#pagePrivacy .privacy_list p {
  line-height: 1.9;
}

#pagePrivacy .desc_list {
  margin-top: 10px;
}

#pagePrivacy .desc_list li {
  padding-left: 1em;
  text-indent: -0.52em;
}

#pagePrivacy .desc_list li::before {
  content: "・";
  display: inline-block;
}

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

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

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

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

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

/*
**  ---------------------------------------
sitemap
-------------------------------------------------------------*/

#pageSitemap .sitemap_list {
  margin: 30px auto 0;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#pageSitemap .sitemap_list li {
  width: 31.3%;
  float: left;
  margin: 1%;
}

#pageSitemap .sitemap_list li a {
  display: block;
  width: 100%;
  background: #00a0e9;
  border: 2px solid #00a0e9;
  text-align: center;
  padding: 25px 0;
  color: #fff;
  font-weight: bold;
}

#pageSitemap .sitemap_list li:hover a {
  text-decoration: none;
  color: #00a0e9;
  background: #fff;
  opacity: 1;
}

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

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

@media screen and (max-width: 767px) {
  #pageSitemap .sitemap_list li {
    width: 100%;
    margin-bottom: 5px;
  }

  #pageSitemap .sitemap_list li a {
    width: 100%;
    font-size: 16px;
    padding: 17px 0;
  }
}

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

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

/*
**  ---------------------------------------
contact
-------------------------------------------------------------*/

#pageContact .txtbox {
  margin-bottom: 30px;
}

/* contact tbl-base */
#pageContact .tbl-base th {
  width: 240px;
  margin: 0;
  text-align: left;
  vertical-align: middle;
  font-weight: 600;
  padding: 20px;
  font-size: 1.4rem;
  line-height: 2em;
  letter-spacing: 0.05em;
}

/* table-base form*/
.tbl-base input[type="text"],
.tbl-base input[type="tel"] {
  border: 1px solid #ddd;
  padding: 1.5%;
  background: #fff;
  border-radius: 2px;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 7px;
}

#pageContact .tbl-base th {
  width: 220px;
  margin: 0;
  text-align: left;
  vertical-align: middle;

  line-height: 2em;
  letter-spacing: 0.05em;
}

.tbl-base textarea {
  border: 1px solid #ddd;
  padding: 2%;
  background: #fff;
  border-radius: 2px;
  width: 100%;
  box-sizing: border-box;
}

.CheckboxInput {
  padding: 12px 8px;
  display: flex;
  align-items: center;
  cursor: pointer;
}

.CheckboxInput-Input {
  margin: 0;
  width: 0;
  opacity: 0;
}

.CheckboxInput:hover > .CheckboxInput-DummyInput {
  background: #f1f4f7;
}

.CheckboxInput-Input:focus + .CheckboxInput-DummyInput {
  background: rgb(195, 195, 195);
}

.CheckboxInput-Input:checked + .CheckboxInput-DummyInput {
  background: #555555;
}

.CheckboxInput-Input:checked + .CheckboxInput-DummyInput::before {
  content: "";
  display: block;
  position: absolute;
  top: 30%;
  left: 62%;
  width: 35%;
  height: 2px;
  transform: translate(-5px, 6px) rotateZ(-135deg);
  transform-origin: 1px 1px;
  background: #ffffff;
}

.CheckboxInput-Input:checked + .CheckboxInput-DummyInput::after {
  content: "";
  display: block;
  position: absolute;
  top: 31%;
  left: 63%;
  width: 70%;
  height: 2px;
  transform: translate(-5px, 6px) rotateZ(-45deg);
  transform-origin: 1px 1px;
  background: #ffffff;
}

.CheckboxInput-DummyInput {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 18px;
  height: 18px;
  border: 1px solid #ddd;
}

.CheckboxInput-LabelText {
  margin-left: 12px;
  display: block;
  font-size: 1.4rem;
}

.CheckboxInput-LabelText a {
  border-bottom: 1px solid #ddd;
  display: inline-block;
  padding-bottom: 2px;
}

#pageContact .clrred {
  color: #aa2d30;
  margin-left: 3px;
}

.subcon .tbl-base .btn-wrapper td {
  border-bottom: none;
}

#pageContact .link_btn {
  text-align: center;
  margin-top: 10px;
  position: relative;
}

#pageContact .section.mail-form {
  padding-top: 30px;
}

/* radio-btn */
#pageContact input[type="radio"] {
  appearance: none;
  display: none;
  opacity: 0;
  width: 1px;
  position: absolute;
  height: 1px;
}

#pageContact input[type="radio"] + span {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  padding: 10px 11px 8px 36px;
  border-radius: 4px;
  font-weight: 500;
  font-size: 14px;
}

#pageContact input[type="radio"] + span::before,
#pageContact input[type="radio"] + span::after {
  position: absolute;
  content: "";
  display: block;
  border-radius: 50%;
  top: 0;
  bottom: 0;
  margin: auto 10px auto 0;
  box-sizing: border-box;
}

#pageContact input[type="radio"] + span::before {
  width: 16px;
  height: 16px;
  background: #fff;
  border: 2px solid #999999;
  left: 11px;
}

#pageContact input[type="radio"] + span::after {
  width: 8px;
  height: 8px;
  background: #999999;
  left: 15px;
  opacity: 0;
}

#pageContact input[type="radio"]:checked + span::before {
  background-color: #0070bd;
  border-color: #0070bd;
}

#pageContact input[type="radio"]:checked + span::after {
  opacity: 1;
  background: #fff;
}

#pageContact .submit-btn {
  text-align: center;
}

#pageContact .submit-btn input {
  /* background: none;
  border: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 100%;
  border: 1px solid #00a0e9;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  color: #00a0e9; */
  background: none;
  border: none;
  font-size: 14px;
  font-weight: 500;
  color: #00a0e9;
  font-family: "Zen Maru Gothic", sans-serif;
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

/* #pageContact .btn-cmn01 input::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: -20px;
  width: 40px;
  height: 1px;
  background: #00a0e9;
} */

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

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

@media screen and (max-width: 767px) {
  #pageContact .tbl-base th {
    width: 100%;
  }

  .contact_list li {
    width: 100%;
    margin-bottom: 4%;
  }

  #pageContact .section_ttl + .txtbox {
    margin-bottom: 30px;
    text-align: left;
  }
}

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

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



/*
guid
***************************************************/

/* ----------------------
  gallery page
-------------------------*/
.gallert_list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
.gallert_list li {
  width: 23%;
  margin: 0 1% 20px;
}
.gallert_list li a {
  display: block;
}
.gallert_list li a:hover {
  opacity: 1;
}
.gallert_list li a:hover .list_photo img {
  transform: scale(1.1);
  transition: 0.4s;
}
.gallert_list li .list_photo {
  display: block;
  overflow: hidden;
}
.gallert_list li .list_photo img {
  transition: 0.4s;
}
@media all and (max-width: 1100px) {
  .gallert_list li {
    width: 31%;
  }
}
@media all and (max-width: 896px) {
  .gallert_list li {
    width: 48%;
  }
}
@media all and (max-width: 639px) {
  .gallert_list li {
    width: 48%;
  }
}
