@charset "UTF-8";
/*	cmn-color
------------------------------------ */
/*	transition,hover
------------------------------------ */
/*	media-screen
------------------------------------ */
/*	font
------------------------------------ */
@font-face {
  font-family: "Poppins-Bold";
  src: url("../fonts/Poppins-Bold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Poppins-ExtraBold";
  src: url("../fonts/Poppins-ExtraBold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenKakuGothicNew-Regular";
  src: url("../fonts/ZenKakuGothicNew-Regular.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenKakuGothicNew-Medium";
  src: url("../fonts/ZenKakuGothicNew-Medium.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenKakuGothicNew-Bold";
  src: url("../fonts/ZenKakuGothicNew-Bold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenKakuGothicNew-Black";
  src: url("../fonts/ZenKakuGothicNew-Black.ttf");
  font-display: swap;
}
/*	layout
------------------------------------ */
/*	cmn-color
------------------------------------ */
/*	transition,hover
------------------------------------ */
/*	media-screen
------------------------------------ */
/*	font
------------------------------------ */
@font-face {
  font-family: "Poppins-Bold";
  src: url("../fonts/Poppins-Bold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "Poppins-ExtraBold";
  src: url("../fonts/Poppins-ExtraBold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenKakuGothicNew-Regular";
  src: url("../fonts/ZenKakuGothicNew-Regular.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenKakuGothicNew-Medium";
  src: url("../fonts/ZenKakuGothicNew-Medium.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenKakuGothicNew-Bold";
  src: url("../fonts/ZenKakuGothicNew-Bold.ttf");
  font-display: swap;
}
@font-face {
  font-family: "ZenKakuGothicNew-Black";
  src: url("../fonts/ZenKakuGothicNew-Black.ttf");
  font-display: swap;
}
/*	layout
------------------------------------ */
/*	font-size  cmn
------------------------------------ */
/************************************************

  SP layout

************************************************/
/*	cmn parts  SP
------------------------------------ */
.com-inner {
  padding: 50px 15px;
}

.com-md-inner {
  padding: 50px 15px;
}

.no-sb {
  margin: 30px auto 0;
}

.com-ib {
  display: inline-block;
}

.mb10 {
  margin-bottom: 10px;
}
.mb20 {
  margin-bottom: 20px;
}

.anchor-mp {
  margin: -80px auto 0;
  padding-top: 80px;
}

.com-txt-box p:nth-of-type(n+2) {
  margin-top: 15px;
}

/*  共通パーツ
------------------------------------ */
.news-post-ttl {
  margin-top: 5px;
}
.news-post-tag {
  border-width: 1px;
  margin-left: 3px;
  padding-left: 3px;
}

.com-tag {
  flex-direction: column;
  align-items: center;
}
.com-tag-item {
  max-width: 250px;
}
.com-tag-item:nth-of-type(n+2) {
  margin: 20px auto 0;
}
.com-tag-link {
  padding: 7px 30px;
}

/* =========================================

  main  SP

========================================= */
/*  top-about  SP
------------------------------------ */
#top-about {
  background-size: 100px, 80px, 120px, 100px, cover;
  background-position: 30px 15px, calc(100% - 30px) 50px, 0 60px, 100% 10px, center top;
}
#top-about .about-inner {
  padding: 150px 15px 50px;
}
#top-about .about-ttl-ja {
  font-size: 2.5rem;
  line-height: 1.5;
}
#top-about .about-txt-box {
  margin-top: 20px;
}

/*  top-career  SP
------------------------------------ */
#top-career .career-ttl {
  background-size: 100%;
}
#top-career .career-ttl-lg {
  font-size: 2.4rem;
}
#top-career .career-box {
  margin-top: 30px;
  padding: 20px 20px 30px;
}
#top-career .career-list {
  flex-direction: column;
  align-items: center;
}
#top-career .career-list-item {
  width: 100%;
}
#top-career .career-list-item:nth-of-type(n+2) {
  margin: 10px auto 0;
  padding-top: 10px;
  border-top: 2px solid #4164bc;
}
#top-career .career-list-ico {
  margin-top: 20px !important;
}
#top-career .career-list-ttl {
  font-size: 1.8rem;
}
#top-career .career-txt-box {
  margin-top: 25px;
}
#top-career .career-btn {
  margin: 25px auto 0;
}

/*  top-recruit  SP
------------------------------------ */
#top-recruit .recruit-img {
  margin-top: -20px;
}
#top-recruit .recruit-contents {
  margin: 15px auto 0;
}
#top-recruit .recruit-txt {
  margin-top: 16px;
}

/*  top-bnr  SP
------------------------------------ */
#top-bnr .bnr-list {
  flex-direction: column;
  align-items: center;
}
#top-bnr .bnr-list-item {
  padding: 25px 15px 20px;
}
#top-bnr .bnr-list-item:nth-of-type(n+2) {
  margin: 30px auto 0;
}
#top-bnr .bnr-list-ttl {
  display: block;
}
#top-bnr .bnr-list-ttl-en {
  display: block;
  font-size: 2rem;
}
#top-bnr .bnr-list-ttl-ja {
  display: inline-block;
  margin: 10px 0 0;
  font-size: 1.8rem;
}
#top-bnr .bnr-list-btn {
  margin-top: 20px;
}

.com-entry {
  padding: 30px 15px;
}
.com-entry-ttl-ja {
  font-size: 2.6rem;
}
.com-entry-txt {
  margin-top: 20px;
}
.com-entry-list {
  margin-top: 15px;
  flex-direction: column;
  align-items: flex-start;
}
.com-entry-list li {
  padding-left: 20px;
  background-position: left 7px;
  background-size: 15px;
  line-height: 1.5;
}
.com-entry-list li:nth-of-type(n+2) {
  margin: 10px 0 0;
}
.com-entry-btn {
  height: 60px;
}
.com-entry-btn-wrap {
  flex-direction: column;
  align-items: center;
}
.com-entry-btn-wrap li:nth-of-type(n+2) {
  margin: 25px auto 0;
}
.com-entry-btn-mail::before {
  margin-right: 10px;
}
.com-entry-btn-line::before, .com-entry-btn-insta::before {
  width: 26px;
  height: 26px;
  margin-right: 10px;
}

/*  top-news  SP
------------------------------------ */
#top-news .news-btn {
  width: 125px;
  height: 45px;
  line-height: 45px;
}

/* =========================================

sub layout  SP

========================================= */
/*  message  SP
------------------------------------ */
#message .message-wrap {
  margin-top: 30px;
  text-align: center;
}
#message .message-img {
  width: 60%;
  margin: auto;
  position: static;
}
#message .message-ttl {
  margin: 20px auto 0;
  font-size: 2rem;
  line-height: 1.5;
}
#message .message-txt-box {
  text-align: left;
}
#message .charm-list {
  margin-top: 30px;
  flex-direction: column;
  align-items: center;
}
#message .charm-list-item {
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 15px;
}
#message .charm-list-item:nth-of-type(n+2) {
  margin-top: 25px;
}
#message .charm-list-num {
  width: 40px;
  height: 40px;
  font-size: 2.2rem;
  line-height: 40px;
}
#message .charm-list-ttl {
  font-size: 2rem;
}
#message .charm-txt {
  margin-top: 20px;
  text-align: left;
}
#message .civil-txt {
  margin-top: 20px;
  text-align: left;
}
#message .civil-list {
  margin-top: 30px;
  flex-direction: column;
  align-items: center;
}
#message .civil-list-item:nth-of-type(n+2) {
  margin: 20px auto 0;
}
#message .civil-note {
  margin-top: 40px;
  text-align: left;
}

/*  ideal  SP
------------------------------------ */
#ideal .ideal-ttl {
  margin-top: 30px;
  font-size: 2rem;
}
#ideal .ideal-list {
  flex-direction: column;
  align-items: center;
}
#ideal .ideal-list-item {
  height: 100px;
  background-size: 50px;
}
#ideal .ideal-list-item:nth-of-type(n+2) {
  margin-top: 20px;
}
#ideal .ideal-list-ttl {
  font-size: 1.8rem;
}
#ideal .ideal-note {
  margin-top: 15px;
}
#ideal .works-ttl {
  line-height: 1.5;
}
#ideal .works-ttl-wrap {
  margin-top: 50px;
  padding-bottom: 10px;
  background-size: 280px;
}
#ideal .works-list-item {
  max-width: 270px;
  height: 270px;
  padding: 185px 0 0;
}
#ideal .works-list-item:nth-of-type(n+2) {
  margin: 30px auto 0;
}
#ideal .works-list-item01 {
  background-size: 130px;
}
#ideal .works-list-item02 {
  background-size: 110px;
}
#ideal .works-list-item03 {
  background-size: 130px;
}
#ideal .works-list-item04 {
  background-size: 130px;
  background-position: center 20px;
}
#ideal .works-list-item05 {
  background-size: 100px;
  background-position: center 30px;
}
#ideal .map-box {
  padding: 30px 15px;
  background-position: calc(100% - 10px) 30px;
  background-size: 100px;
}
#ideal .map-con01-txt {
  margin-top: 15px;
}
#ideal .map-con02 {
  margin-top: 30px;
  flex-direction: column;
  align-items: center;
}
#ideal .map-con02-con {
  margin: 10px auto 0;
}
#ideal .map-con02-txt {
  margin-top: 15px;
}

/*  faq  SP
------------------------------------ */
#faq .faq-inner {
  padding: 50px 15px;
}
#faq .faq-list-item:nth-of-type(n+2) {
  margin-top: 25px;
}
#faq .faq-list-ttl {
  padding: 15px 15px 15px 40px;
  font-size: 1.8rem;
}
#faq .faq-list-ttl::before {
  font-size: 2.5rem;
  left: 10px;
  top: 17px;
}
#faq .faq-list-txt {
  padding: 15px 15px 15px 40px;
}
#faq .faq-list-txt::before {
  font-size: 2.5rem;
  left: 10px;
  top: 17px;
}

/*  information  SP
------------------------------------ */
#information .information-box {
  margin-top: 30px;
  padding: 15px 15px;
}
#information .map-ttl {
  background-size: 20px;
  font-size: 2rem;
}

/*  news  SP
------------------------------------ */
#news .com-ttl02 {
  font-size: 2rem;
}/*# sourceMappingURL=style_sp.css.map */