@charset "utf-8";


/* パソコンで出してスマホは出さない */
.pc {
  display: inline !important;
}

.sp {
  display: none !important;
}

/* スマホは出してパソコンは出さない */
@media screen and (max-width: 736px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: inline !important;
  }
}


/* サイト全体への適用 */
html {
  width: 100%;
  height: 100%;
}

body {
  margin: 0;
  padding: 0;
  height: 100%;
  font-family: 'YuMincho', 'Yu Mincho', serif;
  font-size: 14.5px;
}

body > *{
  font-family: 'YuMincho', 'Yu Mincho', serif;
  font-size: 14.5px;
}

h1,
h2,
h3 {
  margin: 0;
  font-weight: normal;
}

h1 {
  height: 100%;
}

li {
  list-style: none;
}

ul {
  padding: 0;
}

/* 下線を消す */
a {
  text-decoration: none;
}

p {
  display: block;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  unicode-bidi: isolate;
}

div {
    display: block;
    unicode-bidi: isolate;
}

/* ヘッダー */
.header {
  background-color: #f5f5f5;
}

.header a {
  color: black;
  text-align: center;
}




.menu {
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.menu li {
  width: 100%;
  border-right: 1px solid black;
  padding: 1%;
}

.menu li:nth-child(6) {
  border-right: none;
}

.menu li:last-child {
  border-right: none;
  background-color: #ac4423;
}

.menu li:hover {
  opacity: 0.5;
}

.menu p {
  margin: 0;
}

.contact {
  background-color: #ac4423;
  color: #ffffff;
  padding: 5px 0;
}


/* トップ画像 */
.top {
  text-align: center;
  width: 100%;
  position: relative;
}

.test2 {
  width: 15%;
  position: absolute;
  top: 10%;
  left: 7%;
  z-index: 9999;
}

.test2 img {
  width: 100%;
}

.test2:hover {
  opacity: 0.5;
  transition: opacity 0.2s linear;
}



.top video {
  width: 100%;
  margin: 0;
  display: flex;
  align-items: center
}

.title {
  margin: 60px 0 1px;
  border-bottom: 1px solid #ac4423;
  width: 60%;
}

.title img {
  margin: 0 0 -20px 30%;
}

.subtitle {
  margin: 10% 0 0 10%;
}

.no_vacancy{
	width: 100%;
	line-height: 2.5em;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	background-color: #ac0023;
	color: white;
}



.update{
  text-align: right;
  width: 97%;
}

.slider {
  margin: 50px auto 0;
  max-width: 770px;
}

.slider img {
  width: 385px;
  /*スライダー内の画像を100%にしてレスポンシブ化*/
  height: auto;
}

.slider .slick-slide {
  transform: scale(0.8);
  /*左右の画像のサイズを80%に*/
  transition: all .5s;
  /*拡大や透過のアニメーションを0.5秒で行う*/
  opacity: 0.5;
  /*透過50%*/
}

.slider .slick-slide.slick-center {
  transform: scale(1);
  /*中央の画像のサイズだけ等倍に*/
  opacity: 1;
  /*透過なし*/
}


/*ドットナビゲーションの設定*/
.slick-dots button {
  border-radius: 50%;
}

.slick-dots .slick-active button {
  background: #000;
  /*ドットボタンの現在地表示の色*/
}


.roomplan {

  margin: 0 auto;
}

.roomplan_setumei {
  width: 550px;
  margin: 80px auto 0;
}

.roomphoto {
  max-width: 770px;
  padding-top: 80px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
}

.roomphoto p {
  text-align: right;
  width: 100%;
  max-width: 770px;
}

.roomphoto2 {
  text-align: right;
  max-width: 770px;
}

.equipment {
  background-color: #f7f7f7;
  padding: 80px 0;
  margin-top: 70px;
}

.equipment_photo {
  display: flex;
  margin: 100px auto 0;
  width: 100%;
  max-width: 770px;
  overflow: hidden;
}

.equipment_photo li img {
  width: 100%;
}




.fade-in {
  opacity: 0;
  transform: translateY(100px);
  transition: opacity 1.0s ease-in-out, transform 1.0s ease-in-out;
}

.up {
  transform: translateY(50px);
}

.down {
  transform: translateY(-50px);
}

.show {
  opacity: 1;
  transform: translateY(0);
}



.equipment_photo p {
  text-align: center;
}

.equipment_icon {
  display: flex;
  margin: 70px auto 0;
  width: 100%;
  max-width: 770px;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 60px;
}

.equipment_icon_text {
  text-align: left;
  width: 100%;
  max-width: 770px;
  margin: 20px auto -45px;
}

.equipment_setumei {
  margin: 80px auto 0;
  width: 550px;
}

.equipment_setumei2 {
  text-align: right;
  width: 100%;
  max-width: 770px;
  margin: 50px auto 0;
}

.equipment_icon p {
  text-align: center;
}

.location {
  margin-top: 90px;
}

.sitamachi {
  text-align: center;
}

.location_bg {
  margin: 80px auto 0;
  background-color: #721d1e;
  padding: 100px 0;
}

.location_setumei {
  margin: 80px auto;
  width: 550px;
  color: white;
}

.location_setumei2 {
  text-align: left !important;
  width: 100%;
  margin: 5px 0 0 0 !important;

}

.pin {
  position: absolute;
  margin-top: 30px;
  width: 40px;
}

.googlemap {
  margin: 50px auto;
  text-align: center;
  width: 100%;
  max-width: 770px;
}

.googlemap .map {
  position: relative;
  padding-bottom: 500px;
  overflow: hidden;
}

.googlemap .map iframe {
  position: absolute;
  top: -60px;
  left: 0;
  width: 100%;
  height: 100%;
}

.pinclick {
  position: absolute;
  bottom: 0;
  right: 0;
  color: white;
}

.relative_pin1 {
  position: relative;
}

.absolute_pin1 {
  position: absolute;
  left: 0px;
  margin-top: -45px;
  width: 45px;
}

.relative_pin2 {
  position: relative;
}

.absolute_pin2 {
  position: absolute;
  margin-top: -45px;
  left: 0px;
  width: 45px;
}

/* 画面幅が750px以下の時に適用 */
@media screen and (max-width: 797px) {
  .absolute_pin2 {
    width: 40px;
    margin-top: -33px;
  }

}

.location_shop {
  display: flex;
  margin: 10px auto 50px;
  padding: 0 20px;
  max-width: 770px;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 10px;
}

.location_shop li:first-child {
  width: 59%;
}

.location_shop li:nth-child(2) {
  width: 39%;
}

.lawson,
.laundry {
  width: 100%;
}



.location_shop p {
  text-align: center;
  color: white;
  margin-bottom: 2px;
}

.abinko {
  margin: 0 auto;
  width: 100%;
  padding: 100px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 50px;
}

.box {
  width: 90%;
  height: auto;
  background-color: #f7f7f7;
}


.abinko img {
  width: 100%;
}

.access {
  margin-top: 100px;
}

.access_bg {
  background-color: #f7f7f7;
}

.access_bg img {
  margin: 50px 0;
}

.access_title {
  margin: 0 auto -40px;
  width: 100%;
  max-width: 770px;
  text-align: center;
}

.access_setumei {
  margin: 80px auto 0;
  width: 550px;
}

.access_osaka li img {
  width: 100%;
}

.access_osaka_text {
  max-width: 770px;
  width: 100%;
  margin: 0 auto;
  text-align: right;
  padding-bottom: 30px;
}

.station {
  margin: 100px auto 0;
  width: 100%;
  max-width: 770px;
  background-color: #f7f7f7;
  overflow: hidden;
  text-align: center;
}

.station img {
  width: 150%;
  max-width: 770px;
}



/* 伸びる線 */
.red_line {
  display: flex;
  width: 100%;
  /*  opacity: 0.5; */
  justify-content: space-evenly;
  margin-bottom: -30px;
}

.circle {
  width: 70px;
  height: 0.5px;
  background-color: #ac4423;
  animation: expand ease forwards;
  animation-timeline: view();
  animation-range: cover 0% contain 100%;
}

@keyframes expand {
  0% {
    scale: 0.1;
  }

  100% {
    scale: 10;
  }
}


.access_osaka {
  display: flex;
  margin: 50px auto 0;
  width: 100%;
  max-width: 770px;
  justify-content: space-between;
  gap: 0 10px;
}

.outline {
  text-align: left;
  margin: 80px auto 0;
  width: 100%;
  max-width: 770px;
}

.outline h3 {
  font-size: 2.6rem;
  font-weight: bold;
  padding: 10px 0 10px 23px;
  text-align: center;
}

.outline table {
  border-collapse: collapse;
  border-spacing: 0;
}

.outline th {
  color: #ac4423;
  font-size: calc(16px + 4 * (100vw - 737px)/1663);
  width: 20%;
  padding: 0.7em 0.7em 0.7em 2em;
  border-top: 1px solid #CCC;
}

.outline td {
  width: 75%;
  padding: 1em 1em 1em 1.5em;
  border-top: 1px solid #CCC;
  text-align: justify;
}

.outline tr:last-child .outline td,
.outline tr:last-child .outline th {
  border-bottom: 1px solid #CCC;
}


/* お問い合わせ */
.contact_btn {
  background-color: #595757;
  width: 100%;
  margin: 20px auto 0;
  padding: 50px 0;
}

.otoiawase {
  font-size: 30px;
}

.contact_btn_box {
  width: 100%;
  max-width: 770px;
  color: white;
  margin: 0 auto 15px;
  text-align: center;
}


.between {
  display: flex;
  justify-content: space-between
}

.left {
  border-right: 1px solid white;
  width: 50%;
}

.left img {
  width: 50px;
}

.freedial {
  font-size: 30px;
  display: inline-block;
  margin: -20px 0;
}

.right {
  width: 50%;
}

.mail_bt {
  width: 100%;
  display: flex;
  align-items: center;
}

.mail_bt a {
  width: 100%;
}

.mail_bt img {
  max-width: 38px;
  height: 100%;
  margin: 0 3% 0 10%;
}



.otoiawaseform {
  width: 300px;
  padding: 10px 10px;
  border-radius: 20px;
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: 200% auto;
  background-image: linear-gradient(to right,
      #f4c04f 0%,
      #f4c04f 50%,
      white 50%,
      white 100%);
  margin: 0 auto;
  color: black;
  text-align: center;
  font-weight: bold;
  font-size: 15px;
  transition: background-position ease 0.4s;
  margin-right: 10%;
}

.otoiawaseform:hover {
  background-position: 0 0;
}


/*フッター
------------------------------*/

footer {
  width: 100%;
  max-width: 770px;
  position: relative;
  background-color: #ffffff;
  color: #000;
  margin: 0 auto;
}

.foot_wrap {
  width: 100%;
  max-width: 770px;
  padding-top: 30px;
}

.foot_wrap a {
  color: #000;
  margin: 20px 0;
}

.foot_ff ul {
  position: absolute;
  top: 100px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  display: flex;
  justify-content: center;
  margin: 0 auto;
  z-index: 1;
}

.foot_ff ul li:first-child {
  margin-right: calc(900px + 120 * (100vw - 737px)/1663);
}

.foot_ff ul li img {
  width: 70px;
}

.foot_fujilogo {
  width: 100px;
}

.foot_fujilogo img {
  width: 100%;
}

.foot_fujilogo a {
  -webkit-transition: all .3s;
  transition: all .3s;
}

.foot_fujilogo a:hover {
  opacity: .6;
}

.foot_main_left p {
  font-size: 14px;
  text-align: center;
}

.foot_main_left img {
  width: 100%;
}

.foot_main_left {
  width: 50%;
}

.foot_main {
  top: 30px;
  width: 100%;
  max-width: 770px;

}

.foot_main_wrap {
  display: flex;
  justify-content: space-around;
  margin-top: 5px;
  width: 100%;
  max-width: 770px;
}

.foot_main_right {
  padding: 20px 20px 0 0;

}

.foot_main_right p {
  font-size: 14px;
  text-align: center;
}

.foot_main_right ul li:nth-child(2) {
  margin-top: 10px 0 5px 0;
}

.foot_main_left ul li:first-child {
  margin: 5px 0 10px 0;
}

.foot_main_right ul li,
.foot_main_left ul li {
  line-height: 0.7;
  font-size: 40px;
  color: #ac4423;
}

.foot_main_right ul li:last-child a:hover {
  -webkit-transition: all .3s;
  transition: all .3s;
  opacity: .4;
}

.takken p {
  display: inline-block;
  font-size: 14px;
  line-height: 1.4;
  word-break: keep-all;
  text-align: center;
  padding-bottom: 30px;
}


.foot_contact {
  margin: 30px 0;
}

.foot_contact,
.foot_iiheya {
  text-align: center;
  margin: -15px;
  width: 100%;
}

.foot_contact a {
  position: relative;
  display: inline-block;
  width: 400px;
  height: 54px;
  text-align: center;
  line-height: 53px;
  outline: none;
}

.foot_contact a,
.foot_contact a::before,
.foot_contact a::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.foot_contact a::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  content: '';
  display: inline-block;
  width: 60px;
  height: 60px;
  background-image: url("../../image/f_abiko12/mail.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  mix-blend-mode: multiply;
  opacity: .1;
  z-index: 1;
}

.foot_contact a {
  background-color: #FEF8E1;
  border: 2px solid #FEF8E1;
  color: #252400;
  font-weight: 500;
  line-height: 50px;
  border-radius: 5em;
}

.foot_contact a:hover {
  background-color: transparent;
  border-color: #FEF8E1;
  color: #FEF8E1;
}

.foot_contact a:hover::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  content: '';
  display: inline-block;
  width: 60px;
  height: 60px;
  background-image: url("../../image/f_abiko12/mail.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  mix-blend-mode: multiply;
  opacity: .6;
  z-index: -1;
}

.foot_iiheya a:hover {
  -webkit-transition: all .3s;
  transition: all .3s;
  opacity: .4;
}

.copyright {
  width: 100%;
  max-width: 770px;
  bottom: 0;
  background-color: #FFF;
  color: #000;
  font-size: 14px;
  text-align: center;
  padding: 5px 0;
}









/* 以下お問い合わせフォーム用 */

/*contact.html
------------------------------*/


form#mailformpro dl dd {
  border-top: none!important;
}




#wrapper {
  font-size: calc(16px + 0.5*((100vw - 737px) / 263)) !important;
}

.contact_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 736px !important;
  width: 90% !important;
  margin: 0 auto !important;
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  font-weight: 400;
  font-size: 1.78rem;
  padding: 20px 0;
}

.contact_header img {
  width: 100%;
}

.contact_header li:first-child {
  width: 150px;
}

.contact_header li:first-child img {
  width: 150%;
}

.contact_header li:first-child a:hover {
  opacity: .6;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.contact_header li:last-child {
  line-height: 1;
  margin-left: 20px;
}

.contact_header li:last-child a {
  line-height: 0.1;
  color: #000;
}

.contact_header li:last-child a:hover {
  opacity: .6;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.txt_big {
  font-size: 3.75rem;
  color: #ac4423;
}

.txt_small1 {
  font-size: 1.25rem;
  color: black;
  letter-spacing: 0.05em;
}

.txt_small2 {
  font-size: 1.45rem;
  color: #ac4423;
  letter-spacing: 0.05em;
}

.contact_bg {
  /* 上部タイトル */
  display: block;
  padding: 50px 0 !important;
  padding-top: 10px !important;
  color: #FFF !important;
  font-size: calc(28px + 3 * ((100vw - 737px) / 263)) !important;
  font-weight: 600 !important;
  background: #ac4423;
  margin: 0 auto;
  text-align: center;
  line-height: 1.2 !important;
}

#contact_form {
  /* 上部タイトル・説明文 */
  width: 70% !important;
  text-align: center !important;
  margin: 0 auto !important;
}

#contact_form p {
  /* 上部説明文 */
  padding: 30px 0 !important;
  font-size: calc(16px + 0.5*((100vw - 737px) / 263)) !important;
}

#container {
  width: 70% !important;
  margin: 0 auto !important;
  margin-bottom: 50px !important;
}

.yohaku {
  display: inline-block !important;
  width: 40px !important;
}

.yohaku2 {
  display: inline-block !important;
  width: 20px !important;
}

.contact_pp {
  padding: 30px 0 !important;
  text-align: center !important;
  font-size: calc(16px + 0.5*((100vw - 737px) / 263)) !important;
}

.must {
  background: #ac4423 !important;
  border: #ac4423 !important;
  background-image: none !important;
  font-size: calc(16px + 0.5*((100vw - 737px) / 263)) !important;
  margin: 0 !important;
}

form#mailformpro dl dt {
  width: calc(180px + 20 * ((100vw - 737px) / 263)) !important;
}

form#mailformpro dl dd {
  padding-top: 25px !important;
  padding-bottom: 25px !important;
  padding-left: calc(220px + 15 * ((100vw - 737px) / 263)) !important;
}

form#mailformpro label.mfp_not_checked {
  padding: 15px !important;
}

.mfp_element_all {
  max-width: 90% !important;
}

.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date,
.mfp_element_password {
  padding: 10px 8px !important;
  margin: 5px !important;
}

form#mailformpro li {
  padding-bottom: 10px !important;
}

form#mailformpro label {
  margin-right: 10px !important;
}

.padding {
  padding-top: 40px !important;
}

.padding2 {
  padding-top: 36px !important;
}

.padding3 {
  padding-top: 100px !important;
}

.line_break2 {
  display: none !important;
}

.any {
  display: block;
  background-color: #F0F0F0;
  background-image: none !important;
  border: #F0F0F0;
  padding: 2px 5px;
  font-size: calc(16px + 0.5*((100vw - 737px) / 263)) !important;
  color: #000;
  float: left;
  margin: 0 !important;
  border-radius: 4px;
}

.must3 a {
  color: #551a8b;
}

.must3 a:hover {
  color: red;
}


@media screen and (min-width:880px) {
  .nowrap {
    white-space: nowrap
  }
}

#mfp_confirm_table th,
#mfp_confirm_table td {
  font-size: calc(16px + 0.5*((100vw - 737px) / 263)) !important;
}

/*thanks.html
------------------------------*/
#contactmail {
  width: 600px;
  margin: 0 auto;
  padding-top: 50px;
  font-size: calc(16px + 0.5 * ((100vw - 737px) / 263)) !important;
}

#mfp_thanks {
  padding-top: 30px !important;
  padding-bottom: 50px !important;
}

#mfp_thanks h3 {
  font-size: 2.2rem !important;
  font-weight: 600 !important;
  color: #ac4423;
}

.mfp_thanks_p {
  font-weight: 600 !important;
  letter-spacing: 0.2rem !important;
  color: #ac4423 !important;
}

.line_break3 {
  display: none !important;
}


.contact_line {
  height: 1px;
  background-color: #ac4423;
  border: none;
  margin-bottom: 20px;
}

.thanks_address {
  width: 500px;
  border: 1px solid #ac4423;
  padding: 1em;
  margin: 0 auto;
}

.top_back {
  text-align: center;
  margin-top: 30px;
}

.top_back a {
  display: inline-block;
  text-align: center;
  outline: none;
  background-color: #ac4423;
  border-radius: 50px;
  border: 1px solid #ac4423;
  color: #FFF;
  padding: 0.8em 6em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .5s;
  transition: all .5s;
  letter-spacing: 0.1rem;
  font-size: calc(15px + 2 * ((100vw - 737px) / 263)) !important;
  font-weight: 500;
}

.top_back a:hover {
  background-color: transparent;
  background: darkgray;
  border: 1px solid darkgray;
  color: #fff;
}

div#mfp_overlay h4 {
  font-size: 2.2rem;
  text-align: center;
  margin: 10px 0 20px 0;
}


/*ページスクロール
------------------------------*/
#page-top {
  background-color: #721d1e;
  filter: drop-shadow(0 0 4px #FEF8E1);
  color: white;
  width: 70px;
  height: 70px;
  position: fixed;
  bottom: 20px;
  right: 20px;
  border-radius: 50%;
  z-index: 1000;
}

#page-top a {
  padding: 10% 0 0 0;
  display: block;
  width: 70px;
  height: 70px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

#page-top a:link,
#page-top a:visited {
  color: #FFF;
  font-size: 35px;
  text-decoration: none;
}


/* Firefox用 */
@-moz-document url-prefix() {
  .slick-dots li.slick-active button:before
  {
      top: 1px;
  }
  .takken{
    display: flex!important;
    justify-content: center;
  }
}