@charset "UTF-8";

/*----------------------------------
コンテンツ基本
----------------------------------*/
.main-area {margin: 20px 0 50px 0; text-align: center;}

h1 {
  color: #00a6d0;
  font-size: 2.1rem;
  font-weight: normal;
  margin: 25px auto 20px;
}
h2 {
  color: #00a6d0;
  font-size: 1.2rem;
  margin: 0 auto 20px;
}
h3 {
  color: #000;
  font-size: 0.9rem;
  font-weight: normal;
}

.main-copy {
  text-align: justify;
  font-size: 1.1rem;
  letter-spacing: -0.05rem;
  line-height: 1.6;
  color: #555;
}

ul, li {list-style-type: none;}

.text-important {color: #00a6d0; font-weight: bold;}

.txt-area {text-align: justify; line-height: 2.0;}
.txt-area > p {margin-bottom: 20px;}

.link-tel {font-weight: bold; color: #00a6d0; font-size: 1.1rem;}
.link-tel:link {color: #00a6d0;}
.num-fax {font-weight: normal; color: #000; font-size: 1.1rem;}

/* ------ バナー ------ */
.yaetsubaki-banner {
  width: 100%;
  max-width: 410px;
  margin: 30px auto 0;
}
.yaetsubaki-banner img {width: 100%; height: auto;}

.banner {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.banner img {width: 100%; height: auto;}
.haken-banner {max-width: 578px; padding-bottom: 0;}
.haken-banner img {max-width: 578px;}


/* ------ PCレイアウト ------ */
@media (min-width: 769px) {
  h1 {margin: 40px auto 15px;}
  .main-copy {
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.6;
  }
  
  .haken-banner {padding-bottom: 45px;}
}

/*----------------------------------
人材育成　レイアウト
----------------------------------*/
.training-photo {
  display: block;
  width: 295px;
  margin: 25px auto;
}

/*  Pスマホレイアウト  */
@media (max-width: 768px) {
  .training-photo li:last-child {margin-top: 20px;}
}
/*  PCレイアウト  */
@media (min-width: 769px) {
  .training-photo {
    display: flex;
    justify-content: space-between;
    width: 610px;
    margin: 40px auto 50px;
  }
}

/* ------ 人材の育成 ------ */
.business-wrapper {
  display: flex;
  margin: 30px auto;
}
.business-img {margin-bottom: 25px;}

.business-cont {text-align: justify;}
.business-cont h3 {margin-top: 30px;}
.business-cont > .business-table {margin: 15px auto;}
.business-cont > .business-table li {
	border-bottom: 1px #999 dotted;
	padding: 8px 0;
	color: #eb6c99;
}
.business-cont > .business-table li:first-child {border-top: 1px #999 dotted;}

/*  スマホレイアウト  */
@media (max-width: 768px) {
  .business-wrapper {
    flex-wrap: nowrap;
    align-items: flex-start;
    flex-direction: column-reverse;
  }
}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .business-wrapper {
    flex-wrap: wrap;
    justify-content: flex-end;
    flex-direction: row-reverse;
    align-items: center;
  }
  .business-cont {width: 60%;}
  .business-img {width: 40%;}
}

/* ------ お子さまの育成 ------ */
.child-wrapper {
  display: block;
  width: 100%;
  margin: 50px auto 30px;
}
.child {text-align: left;}
.child h2 img {margin: 15px auto 10px;}
.child h3 {font-size: 1.2rem; font-weight: bold; margin-bottom: 10px;}
.child iframe {width: 100%; height: 350px; border: 0; margin-top: 15px;}

/*  スマホレイアウト  */
@media (max-width: 768px) {
  .child-wrapper {max-width: 430px;}
  .child {padding-bottom: 30px; border-bottom: 1px #999 dotted;}
  .child:last-child {padding-top: 30px;}
}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .child-wrapper {
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin: 50px auto 30px;
  }
}

/*  PCレイアウト  */
@media (max-width: 1210px) {
  .child-wrapper {display: block; max-width: 430px;}
  .child {padding-bottom: 30px; border-bottom: 1px #999 dotted;}
  .child:last-child {padding-top: 30px;}
}

/*----------------------------------
人材派遣　レイアウト
----------------------------------*/
.temporary-img {
  width: 100%;
  max-width: 490px;
  margin: 55px auto 35px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  text-align: center;
}
.temporary-img > div {text-align: justify; letter-spacing: -0.03rem;}
.temporary-img > div:nth-of-type(1) {width: calc(50%-27px); max-width: 218px; flex-grow: 1;}
.temporary-img > div:nth-of-type(3) {width: calc(50%-27px); max-width: 218px; flex-grow: 1;}
.temporary-img > div:nth-of-type(2) {flex-basis: 54px; padding-top: 50px;}
.temporary-img > div img {width: 100%; max-width: 156px; height: auto; margin: 0 auto;}

/*  スマホレイアウト  */
@media (max-width: 768px) {
  .temporary-img > div:nth-of-type(1) {width: 45%;}
  .temporary-img > div:nth-of-type(3) {width: 45%;}
  .temporary-img > div:nth-of-type(2) {width: 10%; padding-top: 50px;}
  .temporary-img > div:nth-of-type(2) img {width: 100%; height: auto; margin: 0 auto;}
}

.temporary-job h2 {margin: 0;}
.temporary-job h3 {font-size: 1.05rem; color: #00a6d0; font-weight: bold; margin: 15px 0 8px 0;}

.job-txt {
  padding: 15px 22px 20px 22px;
  text-align: justify;
  font-size: 0.92rem;
  line-height: 1.4;
}
.job-wrapper > .temporary-job {
  width: 100%;
  max-width: 360px;
  margin: 0 auto;
  background: #eeeeea;
  border-radius: 9px;
}
.job-wrapper > .temporary-job {width: 100%; max-width: 360px;}
.job-wrapper > .temporary-job img {width: 100%; height: auto;}
.job-wrapper > .temporary-job:first-child {margin-bottom: 30px;}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .job-wrapper {
    width: 100%;
    max-width: 750px;
    margin: 0 auto;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: stretch;
  }
  .job-wrapper > .temporary-job:first-child {margin-bottom: 0;}
}

@media (min-width: 769px) and (max-width: 1045px) {
  .job-wrapper {display: block;}
  .job-wrapper > .temporary-job:first-child {margin-bottom: 30px;}
}

/*----------------------------------
人材派遣　情報公開
---------------------------------- */
.results h2 {color: #333; text-align: center; line-height: 1.4;}

.results h3 {
	text-align: center;
  font-weight: bold;
	font-size: 18px;
	padding: 0 0 15px 0;
}

.results_cap {
  width: 100%;
  border: 0;
  padding: 30px 0;
  margin: 25px auto 20px;
	line-height: 1.5;
	font-size: 12px;
	text-align: center;
}
.results_cap2 {width: 85%;}

.results_cap p {padding-top: 20px;}

.results_cap .results_date {
	text-align: center;
	color: #00a6cf;
	font-weight: bold;
	font-size: 14px;
	padding: 8px 0 8px 0;
}

.results_list {width: 100%;}
.results_list table {width: 100%; text-align: center; font-size: 12px; margin: 0 auto 10px;}
.results_list th {background: #00a6cf; color: #fff; padding: 8px 0; font-weight: normal; border-right: 1px #fff dotted;}
.results_list th:last-child {border-right: 0px;}
.results_list .cap {line-height: 1.3; font-size: 10px; margin: 0; padding: 2px 0 0 0;}
.results_list td {padding: 8px 0; border-right: 1px #999 dotted;}
.results_list td:first-child {border-left: 1px #999 dotted; background: #888; color: #fff;}
.td_btm {border-top: 1px #999 dotted; border-bottom: 1px #999 solid;}

.results_list .posi {position: relative;}
.results_list .next_mark {
  position: absolute;
  top: 3px;
  right: -30px;
  width: 23px;
  text-align: center;
  font-size: 11px;
  z-index: 100;
}
.results_list .next_mark img {
  display: block;
  width: 23px;
  margin-bottom: 1px;
}
.next_mark a:link, .next_mark a:visited, .next_mark a:active {color: #ec6b98; text-decoration: none;}
.next_mark a:hover {color: #fd015b; text-decoration: none;}

.results_fraction {width: 85%; margin: 20px auto 0; text-align: left;} 
.results_fraction table {margin: 7px auto 2px; padding: 12px 30px; font-size: 12px; background: #eee;}
.results_fraction td {text-align: center; padding: 8px 8px;}
.fraction_line {border-top: 1px #333 solid; padding-top: 10px;}

.results_wrap {width: 100%; margin: 0 auto; text-align: left;}
.results_cap h4 {font-size: 16px; font-weight: bold; margin: 0; padding: 15px 0 0 0;}
.results_info {font-size: 14px; margin-top: 8px;}
.results_wrap dl {border-top: 1px #999 dotted; display: flex; flex-wrap: wrap; box-sizing: border-box;}
.results_info dt {width: 30%; padding: 10px; border-bottom: 1px #999 dotted; background: #eee;}
.results_info dd {width: 70%; padding: 10px; border-bottom: 1px #999 dotted;}

/*  スマホレイアウト  */
@media (max-width: 768px) {
  .wrap-div {width: 85%; margin: 0 auto; text-align: justify;}
  .results .main-wrapper {width: 100%;}
  .results .main-area {width: 100%;}
  
  .results_list {padding-left: 7.5%;}
  .results_list::-webkit-scrollbar {
    width: 5px;
    height: 5px;
  }
  .results_list::-webkit-scrollbar-thumb {
    background-color: #00a6d0;
  }
  .results_list::-webkit-scrollbar-track {
    background: #ccc;
  }
  
  .results_list {overflow-x: scroll;}
  .results_list table {width: 700px; margin-right: 7.5%;}
}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .results_cap {
    width: 100%;
    margin: 25px auto 20px;
    border: 1px #999 solid;
    padding: 30px 30px;
  }
  .results_list {overflow-x: hidden;}
  .results_list table {width: 90%;}
  
  .results_wrap {width: 90%;}
  .results_info dt {padding: 10px 0 10px 20px;}
  .results_info dd {padding: 10px 0 10px 20px;}
  
  .results_fraction {width: 90%; margin: 0 auto; text-align: left;}
  .results_cap2 {width: 100%;}
}

/*----------------------------------
会社情報　ご挨拶
---------------------------------- */
.president-name {
  font-size: 1.0rem;
  font-weight: bold;
  text-align: right;
  margin-top: 25px;
}
.president-photo {width: 147px;}

/*  スマホレイアウト  */
@media (max-width: 768px) {
  .company-wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    flex-direction: column-reverse;
  }
  .president-photo {margin: 30px auto 20px;}
}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .company-wrapper {
    width: 100%;
    max-width: 735px;
    margin: 0 auto;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  .company-wrapper .txt-area {
    width: calc(100% - 187px);
    box-sizing: border-box;
  }
}

/*----------------------------------
会社情報　会社理念
---------------------------------- */
.concept h2 {
  font-size: 1.1rem;
  color: #00a6d0;
  line-height: 1.4;
  padding: 10px 0;
  margin-bottom: 10px;
  border-top: 1px #00a6d0 dotted;
  border-bottom: 1px #00a6d0 dotted;
}
.concept h2:nth-child(2) {margin-top: 20px;}

.concept .txt-area {
  width: 100%;
  max-width: 540px;
  margin: 0 auto;
}

.concept .txt-area li {
  list-style-type: disc;
  list-style-position: outside;
  margin-left: 20px;
  padding: 6px 0;
}
.txt-caption {font-size: 0.78rem; line-height: 1.5; margin-top: 5px;}

/*----------------------------------
会社情報　会社概要
---------------------------------- */
.profile {position: relative; z-index: 1;}

.profile h2 {font-size: 0.9rem; margin: 12px 0 8px 0;}
.profile h3 {margin-bottom: 8px; margin: 12px 0 7px 0;}

.profile table {
  width: 100%;
	max-width: 520px;
	margin: 15px auto 70px;
  border-bottom: 1px #999 dotted;
}

.profile th {
	text-align: left;
	width: 150px;
  padding: 10px 0;
  line-height: 1.5em;
	border-top: 1px #999 dotted;
	font-weight: normal;
	font-size: 13px;
}

.profile td {
	width: 370px;
	font-size: 0.9em;
  padding: 10px 0;
	text-align: left;
  line-height: 1.5em;
	border-top: 1px #999 dotted;
}

.profile td a, .profile td a:visited, .profile td a:link {color: #000;}
.profile td a:hover {color: #00a6cf;}

.history table, .travel-profile table {
  width: 100%;
	max-width: 520px;
	margin: 15px auto 30px;
  border-bottom: 1px #999 dotted;
}

.history th, .travel-profile th {
	text-align: left;
	width: 120px;
  padding: 10px 0;
  line-height: 1.5em;
	border-top: 1px #999 dotted;
	font-weight: normal;
	font-size: 13px;
}

.history td, .travel-profile td {
	width: 400px;
	font-size: 0.9em;
  padding: 10px 0;
	text-align: left;
  line-height: 1.5em;
	border-top: 1px #999 dotted;
}

/*----------------------------------
会社情報　アクセス
---------------------------------- */
.access {
  width: 100%;
  max-width:750px;
  margin: 0 auto;
}

.access li {
  width: 100%;
  display: block;
  text-align: left;
}
.access li:nth-child(1) {margin-bottom: 20px; border-bottom: 1px #999 dotted;}
.access li:nth-child(2) {margin-top: 20px;}

.access h2 {font-size: 0.95rem; line-height: 1.4;}
.access .access-txt {width: 100%;}
.access .map-tel {margin: 8px 0 13px 0;} 
.access iframe {width: 100%; border: 0; height: 250px; margin-bottom: 20px;}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .access li {display: flex; justify-content: space-between;}
  .access .access-txt {width: 35%}
  .access iframe {width: 65%}
}

/*----------------------------------
旅行事業
---------------------------------- */
.travel main {position: relative;}
.trave-logo {
  position: absolute;
  top: 20vh;
  left: 0;
  padding: 25px 40px;
  background: #fff;
  color: #ae194c;
  z-index: 1;
  font-size: 1.6rem;
  letter-spacing: -0.07rem;
  font-weight: bold;
  text-align: center;
}
.trave-logo-area {width: 130px; height: auto; margin : 0 auto; text-align: left;}
.trave-logo-area img {width: 130px; height: auto; margin : 5px auto 0;}

.travel .main-single {width: 100%; max-width: 780px; margin: 20px auto 50px; padding: 20px; text-align: center; background: #fff;}

.travel-copy {text-align: center; margin-bottom: 40px;}

.travel-profile {margin: 70px auto;}
.travel-profile h2 {color: #333; font-size: 1.0rem;}

.travel-profile table {
  max-width: 740px;
  margin: 15px auto 30px;
  border: 1px #999 solid;
  padding: 10px;
  background: #f4f0ed;
}
.travel-profile th {width: 30%; background: #fff; padding: 8px 8px 8px 15px;}
.travel-profile td {width: 70%; background: #fff; padding: 8px 8px 8px 0;}
.travel-profile td::before {content: "：";}

.contact-information {
  width: 100%;
  text-align: center;
  border: 2px #99dbec solid;
  padding: 20px 0 15px 0;
  line-height: 1.6;
}

.tel-fax {font-weight: bold; color: #000; font-size: 1.0rem;}
.tel-fax:link {color: #00a6d0;}

.travel-list {width: 100%; max-width: 410px; margin: 50px auto 70px;}
.travel-list ul {display: block; border-top: 1px #ccc dotted;}
.travel-list li {
  position: relative;
  list-style-type: disc;
  text-align: left;
  list-style-position: inside;
  padding: 8px 0 8px 15px;
  border-bottom: 1px #ccc dotted;
  box-sizing: border-box;
}
.mark-pdf {
  position: absolute;
  right: 0;
  top: 4px;
}

/*  スマホレイアウト  */
@media (max-width: 768px) {
  .travel-wrapper {
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    flex-direction: column-reverse;
  }
  .president-photo {width: 147px; margin: 30px auto 20px;}
  
  .travel-profile table {width: 90%;}
}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .travel-wrapper {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row-reverse;
    justify-content: flex-end;
    justify-content: space-between;
    flex-grow: 1;
  }
  .travel-wrapper .txt-area {
    width: calc(100% - 190px);
    box-sizing: border-box;
  }
  a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
  .trave-logo {
  width: 240px;
  position: fixed;
  top: 270px;
  left: 0;
  padding: 25px 40px;
    background: #fff;
  border-right: 2px #ae194c solid;
  }
  .trave-logo-area {width: 170px; height: auto; margin : 0 auto; text-align: left;}
.trave-logo-area img {width: 170px; height: auto; margin : 5px auto 0;}
}


.travel main {
  position: relative;
  width: 100%;
  max-width: auto;
}
.travel .main-wrapper {
  position: relative;
  width: 100%;
  max-width: auto;
}

/* スライダー全体 */
.slider-wrapper {
  position: sticky;
  top: 0;
  left:0;
  display: flex; /* スライドのグループを横並び */
  overflow: hidden; /* はみ出たスライドを隠す */
  z-index: -10;
}
/* スライド3枚のグループ */
.slider {
  animation: scroll-left 30s infinite linear .5s both;
  display: flex; /* スライドを横並び */
}
/* スライド */
.slide {
  width: calc(100vw / 4); /* 3はスライドの枚数 */
}
/* スライドの画像 */
.slide img {
  display: block;
  width: 100%;
}
/* CSSアニメーション */
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

/*  スマホレイアウト  */
@media (max-width: 768px) {
  .slider-wrapper {display: none;}
  
  .slider-wrapper-sp {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    max-height: 90vh;
    overflow: hidden;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    display: flex;
    z-index: -100;
  }
  
  .slider-sp {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  
  /* 各スライド画像を重ねる */
  .slide-sp {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    animation: fade 12s infinite;
  }
  /* 画像サイズ調整 */
  .slide-sp img {
    width: 100%;
    height: 50%;
    object-fit: cover;
  }
  
  .trave-logo {top: calc(50vh - 80px); left: 0;}
}

/* アニメーション設定 */
@keyframes fade {
  0% { opacity: 0; }
  10% { opacity: 1; }
  33% { opacity: 1; }
  43% { opacity: 0; }
  100% { opacity: 0; }
}

/* 各画像の表示タイミングをずらす */
.slide-sp:nth-child(1) {
  animation-delay: 0s;
}
.slide-sp:nth-child(2) {
  animation-delay: 4s;
}
.slide-sp:nth-child(3) {
  animation-delay: 8s;
}
.slide-sp:nth-child(4) {
  animation-delay: 12s;
}

/*  スマホレイアウト  */
@media (min-width: 769px) {
  .slider-wrapper-sp {display: none;}
}

/*----------------------------------
募集情報
---------------------------------- */
.recruit .main-single {width: 100%; max-width: 780px; margin: 20px auto 50px; padding: 20px; text-align: center;}

.recruit-wrapper {
  width: 100%;
  max-width: 248px;
  margin: 0 auto 40px;
  display: block;
}

.recruit-box {
  position: relative;
  width: 248px;
  border-radius: 10px;
  background: #eee;
  border: 1px #999 solid;
  text-align: center;
  padding: 15px 0;
  margin: 310px auto 0;
}

.recruit-box h2 {
  position: absolute;
  top: -280px;
  left: 0;
  width: 248px;
  height: 279px;
}

.recruit-box ul {width: 150px; margin: 5px auto 0;}
.recruit-box li {
  border-bottom: 1px #999 dotted;
  padding: 8px 0;
}

.recruit-box > div > img {width: 134px; margin: 0 auto;}

.recruit-box .bt {
	width: 170px;
	margin: 7px auto 0;
	font-size: 14px;
	padding: 7px 0;
	background: #00a6cf;
	border: 1px #00a6cf solid;
	color: #fff;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	background: -moz-linear-gradient(top,  #00a6cf 0%, #1e5799 100%);
	background: -webkit-linear-gradient(top,  #00a6cf 0%,#1e5799 100%);
	background: linear-gradient(top,  #00a6cf 0%,#1e5799 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a6cf', endColorstr='#1e5799',GradientType=0 );
}
.recruit-box .bt a {display: block;}
.recruit-box .bt a:link, .recruit-box .bt a:visited, .recruit-box .bt a:active {color: #fff;}

.recruit-caution {
  width: 85%;
  color: #cc0033;
  font-size: 15px;
  padding: 13px 0 12px 0;
  border-top: 1px #cc0033 solid;
  border-bottom: 1px #cc0033 solid;
  margin: 0 auto 25px;
}
.recruit .txt-area {width: 85%; line-height: 1.7; text-align: left; margin: 0 auto 60px; border-bottom: 1px #999 solid;}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .recruit-wrapper {
    max-width: 580px;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    margin: 40px auto;
  }
  .recruit-box {margin: 280px auto 0;}
  .recruit-caution {width: 100%;}
  .recruit .txt-area {width: 100%;}
}

/*----------------------------------
お問い合わせ
---------------------------------- */
.contact .main-single {width: 100%; margin: 20px auto 50px; padding: 20px 0 0 0; text-align: center;}
.contact h1 {font-size: 1.9rem; line-height: 1.3;}

.contact table {
	width: 85%;
  max-width: 650px;
	margin: 10px auto 30px;
  box-sizing: border-box;
}

.contact th,
.contact td {
    display: block;
    width: 100%;
    vertical-align: top;
    box-sizing: border-box;
}
.contact th:last-child,
.contact td:last-child {border-bottom: 1px #999 dotted;}
  
.contact th {
	text-align: left;
	width: 100%;
  padding: 10px 0 10px 15px;
	border-top: 1px #999 dotted;
	font-size: 13px;
  background: #eee;
}

.contact td {
	width: 100%;
	font-size: 0.9em;
  padding: 11px 0;
	text-align: left;
	border-top: 1px #999 dotted;
}

.line-h {line-height: 2.0;}
.contact-check {
  color: #00a6d0;
  font-weight: bold;
  margin-bottom: 10px;
}

.privacy {
	width: 90%;
  max-width: 740px;
	margin: 0 auto 20px;
	border: 1px #999 solid;
  padding: 0;
  height: 200px;
	overflow: auto;
}

.privacy_wrap {
  width: 100%;
  max-width: 740px;
	margin: 0 auto;
  padding: 5px 30px 25px 25px;
	text-align: justify;
	line-height: 1.6;
}

.privacy_wrap p {
	font-weight: bold;
	padding: 25px 0 8px 0;
}

#form_bt {
	font-size: 14px;
	width: 250px;
	height: 40px;
	margin: 0 0 20px 0;
	cursor: pointer;
}

.contact_thanks {
  width: 90%;
  max-width: 740px;
	margin: 30px auto;
	background: #eeeeea;
	font-size: 14px;
	line-height: 2.0;
	color: #695f6d;
	font-weight: bold;
	padding: 130px 0;
}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .contact table {width: 90%; max-width: 740px;}
  .contact th, .contact td {display: table-cell;}
  .contact th {width: 30%; padding: 10px 0 10px 15px;}
  .contact td {width: 70%; padding: 11px 0 11px 15px;}
}

/*----------------------------------
プライバシーポリシーほか
---------------------------------- */
.info .main-single {
  width: 90%;
  max-width: 780px;
  margin: 20px auto 50px;
  padding: 20px; 
  ext-align: justify;
  line-height: 1.4;
}

.info h1 {text-align: center;}
.info .title-sub {font-size: 1.1rem;}
.info .rule-txt > li > h2 {color: #333; margin: 20px 0 10px 0;}

.info .rule-txt {
  width: 100%;
  margin: 40px auto;
  ext-align: justify;
  line-height: 1.7;
}

.rule-txt > li > div {
  padding-left: 22px; box-sizing: border-box; text-align: justify;
}
.rule-txt .list-mark {
  padding-left: 22px; box-sizing: border-box;
}
.rule-txt .list-mark li {
  text-align: justify; list-style-type: disc; padding: 8px 0;
}
.rule-txt .list-mark-sub {margin: 10px 0 10px 0;}
.rule-txt .list-mark-sub li {
  text-align: justify; list-style-type: circle; padding: 3px 0; margin-left: 35px;
}

.rule-information h2 {font-size: 0.95rem; color: #333;}
.rule-information-name {font-size: 0.95rem; font-weight: bold;}
.txt-name {font-size: 0.95rem; margin-top: 8px;}
.rule-right {text-align: right;}
.txt-underline {text-decoration: underline;}

/*  セキュリティアクション  */
.securty-action {
  width: 100%;
  border: 1px #999 solid;
  margin: 50px auto 0;
  padding: 25px 8%;
  display: block;
}

.securty-action h2 {font-size: 1.6rem; font-weight: normal; width: 100%; text-align: center;}
.securty-action-txt {width: 100%; font-size: 0.95rem; line-height: 1.6; margin-right: 0; text-align: justify;}
.securty-action-txt p {font-size: 1.1rem; margin-bottom: 10px;}
.securty-action-mark {width: 220px; margin: 15px auto 0;}
.securty-action-mark img {width: 100%; max-width: 220px; height: auto;}

/*  PCレイアウト  */
@media (min-width: 769px) {
  .securty-action {display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; padding: 25px 5%;}
  .securty-action-txt {flex-grow: 1; width: 65%; margin-right: 2%;}
  .securty-action-mark {flex-grow: 1; width: 30%; margin: 0;}
}