@charset "UTF-8";
/* CSS Document */

/*////////////////////////////////////////////////////////

共通css

///////////////////////////////////////////////////////*/
body {}

body {
  font-size: 16px;
  font-family: YakuHanJP,  'Noto Sans JP', sans-serif;
  color: #1f1813;

}


ol, ul {
    list-style: none;
    list-style-type: none;
  }
    input {
    display: none;
    }
    button {
      border: none;
      background: none;
      outline:none;
    }

.wrap {
margin: 0 auto;
overflow: hidden;
}


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

#inner {
  padding: 0 15px;
}
#inner2 {
  padding: 0 10px;
}
}

/*=======================================================
メインビジュアル
 =======================================================*/

.line_ornament {
  width: 100%;
    background-image: url(../img/line_ornament.png);
    height: 6px;
}
.mainvisual {
  width: 100%; /*vw:viewportのwidth。100でフルサイズ：ie9対応（%指定をしなければwindowsなどで横スクロールバーが表示される）*/
  height: 712px; /*vw:viewportのheight。100でフルサイズ：ie9対応*/
  background-image: url(../img/mainvisual.png);
  background-repeat: no-repeat;
  background-size: inherit;
  background-position: center top; /* 背景の位置を定義 */

}




.mainvisual .box  {
margin: 0 auto;
width: 100%;
max-width: 1200px;
text-align: center
}


.mainvisual .box {
    margin: 0 auto;
    width: 100%;
    min-height: 720px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}


@media screen and (max-width: 768px) {
.line_ornament {
  width: 100%;
    background-image: url(../img/line_ornament.png);
    height: 6px;
    background-size: contain;
}
.mainvisual {
    width: 100%;
    /*height: 100vh;*/
    height: 300px;
    background-image: url(../img/mainvisual_sp.png);
    background-size: cover;
    background-position: center top;
}
.mainvisual .box {
    margin: 0 auto;
    width: 100%;
    min-height: auto;
    display: flex;
    justify-content: flex-start;
    align-items: center;

}
.mainvisual .box .content img {
width: 95%;
margin-top: 8px;

}
.catch_sp img {
width: 100%;
}
}

/*=======================================================
ナビゲーション
 =======================================================*/

nav {
  width:100%;
  margin: 0 auto;
  background: #74b920;
  height: 100px;
    display: flex;
  justify-content: center;
  align-items: center;
}
nav .navigation {
    margin: 0 auto;
  background: #9dd320;
  text-align: center;
  width: 100%;
  max-width: 1200px;

}


nav .navigation ul {
  display: flex;
justify-content: space-between;
  align-items: center;
  height: 100px;
}
nav .navigation ul li {
  list-style-type: none;

  color: #000;
  flex-grow: 1;
  text-align: center;
}
nav .navigation ul li {
  -webkit-transform: skewX(150deg);
  -moz-transform: skewX(150deg);
  transform: skewX(150deg);
  border-right: 2px solid #fff;
  text-align: center;  /* ← 追加 */
    display: flex;
  justify-content: center;

}

nav .navigation ul li:last-child {
border: 0;

}

nav a {
  display: flex;
  justify-content: center;
  color: #fff;

  text-decoration: none;
  transform: skewX(-150deg);
  font-size: 19px;
  font-weight: 500;
  letter-spacing: 0.05em;
}

nav a:hover {
color: #fff;
opacity: 0.8;
}


nav a span {
  padding-right: 2px;
}
@media screen and (max-width: 768px) {
nav {
  width:100%;
  margin: 0 auto;
  background: #74b920;
  height: 50px;
    display: flex;
  justify-content: center;
  align-items: center;
}
nav .navigation ul {
  display: flex;
justify-content: space-between;
  align-items: center;
  height: 50px;
}

nav .navigation ul li {
  -webkit-transform: skewX(150deg);
  -moz-transform: skewX(150deg);
  transform: skewX(150deg);
  border-right: 1px solid #fff;
  text-align: center;  /* ← 追加 */
    display: flex;
  justify-content: center;

}

  nav a {
  display: flex;
  justify-content: center;
  color: #fff;

  text-decoration: none;
  transform: skewX(-150deg);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.05em;
}
}
/*=======================================================
地図
 =======================================================*/
.map {
  margin: 0 auto;
  width: 100%;
  padding: 50px 0 0;
  background: #fcf8f4;
  text-align: center;
}

iframe {
  margin: 0 auto;
  width: 100%;
  max-width: 1200px;
}
@media screen and (max-width: 768px) {
  .map {
  padding: 20px 0 0;

}
}

/*map*/
 .map_wrapper {
  width:100%;
  max-width: 1200px;
  margin: 0 auto;
 }
#map {
  max-width: 1200px;
  height: 570px;

}
@media screen and (max-width: 768px) {
   .map_wrapper {
  margin: 0 auto;

 }
 #map {

  height: 300px;

}
}
/*=======================================================
エリア
 =======================================================*/

.area {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 40px;
  background: #fcf8f4;
  text-align: center;

}
.area ul.links {
    display: flex;
    flex-wrap: wrap;
    border: solid 1px #cccccc;
    background: #fff;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    

}


.area ul.links li {
    list-style-type: none;
    width: calc( 100% / 3 );
    text-align: center;
    margin: 0 auto;
    justify-content: center;
    align-items: flex-end;
  position: relative;
  height: 80px;
}

.area ul.links li:first-child, .area ul.links li:nth-child(2) {
  border-right: 1px solid #cccccc;

}

.area ul.links li {
    font-size: 15px;
    line-height: 15px;
    display: inline-block; 
}



.bw-arrow_area {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  text-align: center;
  width: 100%;
  height: 80px;
}

.bw-arrow_area > *:first-child {
  width: calc(100% - 10px * 3);
}


.bw-arrow_area::after {
  content: '';
  display: inline-block;
  padding: 0;

    width: 15px;
    height: 15px;
    background-image: url(../img/arrow_green.png);
    background-repeat: no-repeat;
}


.bw-arrow_area:hover {
  opacity: 0.5;
}

a.bw-arrow_area:link, a.bw-arrow_area:active, a.bw-arrow_area:hover, a
.bw-arrow_area:visited {

  text-decoration: none;
}

button .bw-arrow_area {
  width: 100%;
  border: none;
  cursor: pointer;
}






.area h2 {
  margin: 40px auto 30px;
  width: 100%;
  max-width: 1200px;
  background: #96ca1e;
  padding: 15px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}

.area ul.list3 {
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    justify-content: start;
}
.area ul.list3 li {
 width: 32%;
 list-style: none;
 background: #fff;
 box-sizing: border-box;
 border: 1px solid #ccc;
 margin-right: 2%;
 margin-bottom: 20px;
 padding: 20px 0 0 25px;

}
.area ul.list3 li {

}

.area ul.list3 li:nth-child(3) {
  margin-right: 0;
}
.area ul.list3 li:nth-child(6) {
  margin-right: 0;
}
.area .box {
  position: relative;
  width: 100%;
  height: 100%;
}
.area h3 {
  font-size: 12px;
  color: #3f90ca;
  text-align: left;
  font-weight: 600;

}
.area h3.pink {
  font-size: 12px;
  color: #fa899d;
  text-align: left;
  font-weight: 600;
}

.area h3.green {
  font-size: 12px;
  color: #93cb37;
  text-align: left;
  font-weight: 600;
}

.area h4 {
  font-size: 26px;
  text-align: left;
  font-weight: 600;
  margin-top: 5px;
}

.area h5 {
  font-size: 16px;
  text-align: left;
  margin-top: 5px;
}
.area .small {
  font-size: 22px;
  margin-left: 5px;
}

.area ul.icon {
  display: flex;
  width: 100%;
  margin: 15px 0 15px 0;
  padding: 0;
}


.area ul.icon li {
  border: 0;

  width: auto;
  margin: 0;
  padding: 0 8px 0 0;
}

/* ボタン　ピンク*/
.bw-arrow_pink {
  position: absolute;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #f76f8d;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 0px;
  color: #FFFFFF;
  font-size: 14px;
  padding: 0;
  text-align: right;
  max-width: 140px;
  -webkit-transition: 0.3s linear 0s;
  -o-transition: 0.3s linear 0s;
  transition: 0.3s linear 0s;
  right: 0;
  bottom: 0;
}

.bw-arrow_pink > *:first-child {
  width: calc(100% - 10px * 3);
}

.bw-arrow_pink::after {
  content: '';
  display: inline-block;
  padding: 0;
  width: 6px;
  height: 6px;
  border-top: solid 1px #FFFFFF;
  border-right: solid 1px #FFFFFF;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg) translateX(-5px) translateY(5px);
  -ms-transform: rotate(45deg) translateX(-5px) translateY(5px);
  transform: rotate(45deg) translateX(-5px) translateY(5px);
  margin-left: 15px;
}

.bw-arrow_pink:hover {
  opacity: 0.5;
}
a.bw-arrow_pink:link, a.bw-arrow_pink:active, a.bw-arrow_pink:hover, a.bw-arrow_pink:visited {
  color: #FFFFFF;
  text-decoration: none;
}

button.bw-arrow_pink {
  width: 100%;
  border: none;
  cursor: pointer;
  height: 42px;
}
/* ボタン　緑*/
.bw-arrow_green {
  position: absolute;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #93cb37;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 0px;
  color: #FFFFFF;
  font-size: 14px;
  padding: 0;
  text-align: right;
  max-width: 140px;
  -webkit-transition: 0.3s linear 0s;
  -o-transition: 0.3s linear 0s;
  transition: 0.3s linear 0s;
  right: 0;
  bottom: 0;
}

.bw-arrow_green > *:first-child {
  width: calc(100% - 10px * 3);
}

.bw-arrow_green::after {
  content: '';
  display: inline-block;
  padding: 0;
  width: 6px;
  height: 6px;
  border-top: solid 1px #FFFFFF;
  border-right: solid 1px #FFFFFF;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg) translateX(-5px) translateY(5px);
  -ms-transform: rotate(45deg) translateX(-5px) translateY(5px);
  transform: rotate(45deg) translateX(-5px) translateY(5px);
  margin-left: 15px;
}

.bw-arrow_green:hover {
  opacity: 0.5;
}
a.bw-arrow_green:link, a.bw-arrow_green:active, a.bw-arrow_green:hover, a.bw-arrow_green:visited {
  color: #FFFFFF;
  text-decoration: none;
}

button.bw-arrow_green {
  width: 100%;
  border: none;
  cursor: pointer;
  height: 42px;
}
/* ボタン青　*/
.bw-arrow {
  position: absolute;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #115e97;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 0px;
  color: #FFFFFF;
  font-size: 14px;
  padding: 0;
  text-align: right;
  max-width: 140px;
  -webkit-transition: 0.3s linear 0s;
  -o-transition: 0.3s linear 0s;
  transition: 0.3s linear 0s;
  right: 0;
  bottom: 0;
}

.bw-arrow > *:first-child {
  width: calc(100% - 10px * 3);
}

.bw-arrow::after {
  content: '';
  display: inline-block;
  padding: 0;
  width: 6px;
  height: 6px;
  border-top: solid 1px #FFFFFF;
  border-right: solid 1px #FFFFFF;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-transform: rotate(45deg) translateX(-5px) translateY(5px);
  -ms-transform: rotate(45deg) translateX(-5px) translateY(5px);
  transform: rotate(45deg) translateX(-5px) translateY(5px);
  margin-left: 15px;
}

.bw-arrow:hover {
  opacity: 0.5;
}

a.bw-arrow:link, a.bw-arrow:active, a.bw-arrow:hover, a.bw-arrow:visited {
  color: #FFFFFF;
  text-decoration: none;
}

button.bw-arrow {
  width: 100%;
  border: none;
  cursor: pointer;
  height: 42px;
}
/* ボタン青 */


.area figure {
  margin: 0;
  padding: 0;

}
.area figure img {
  width: 100%;
  text-align: left;
  padding: 0 20px 0 0;
  margin-bottom: 15px;

}

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

.area {
  padding: 20px 0 20px;

}

.area ul.links li {

  height: 50px;
}



.area ul.links li {
    font-size: 12px;
    line-height: 12px;

}




.bw-arrow_area {

  font-size: 12px;
  padding: 5px;
  text-align: center;
  width: 100%;
  height: 50px;
}

.bw-arrow_area > *:first-child {
  width: calc(100% - 5px * 3);
}


.bw-arrow_area::after {
  content: '';
  display: inline-block;
  padding: 0;
  margin-top: 6px;
    width: 15px;
    height: 15px;
    background-image: url(../img/arrow_green.png);
    background-repeat: no-repeat;
}




.area h2 {
  margin: 20px auto 20px;
  width: 100%;

}

.area ul.list3 {
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    justify-content: start;
}
.area ul.list3 li {
 width: 100%;
 list-style: none;
 background: #fff;
 box-sizing: border-box;
 border: 1px solid #ccc;
 margin-right: 0;
 margin-bottom: 15px;
 padding: 15px 0 0 15px;

}
.area ul.list3 li {

}

.area ul.list3 li:nth-child(3) {
  margin-right: 0;
}
.area .box {
  position: relative;
  width: 100%;
  height: 100%;
}
.area h3 {
  font-size: 12px;
  color: #3f90cc;
  text-align: left;
  font-weight: 400;
}

.area h4 {
  font-size: 20px;
  text-align: left;
  font-weight: 600;
  margin-top: 5px;
}

.area h5 {
  font-size: 14px;
  text-align: left;
  margin-top: 5px;
}


.area ul.icon {
  display: flex;
  width: 100%;
  margin: 15px 0 15px 0;
  padding: 0;
}


.area ul.icon li {
  border: 0;

  width: auto;
  margin: 0;
  padding: 0 8px 0 0;
}




.area figure {
  margin: 0;
  padding: 0;

}
.area figure img {
  width: 100%;
  text-align: left;
  padding: 0 15px 0 0;
  margin-bottom: 15px;

}
}

/*-----------------------------------------------------20251117追記*/


.area ul.list4 {
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.area ul.list4 li.list4-item {
 width: 32%;
 list-style: none;
 display: flex;
 flex-direction: column;
 align-items: center;
 margin-bottom: 40px;
}
.area ul.list4 li.list4-item .list-box{
 background: #fff;
 box-sizing: border-box;
 border: 1px solid #ccc;
 margin-right: 0;
 margin-bottom: 12px;
 padding: 24px;
 position: relative;
}
.area ul.list4 li.list4-item .list-box figure img{
  padding:0;
  margin:0;
}
.entry-btn {
  background-color: #1595cd;
  color: #fff;
  width: 100%;
  max-width: 320px;
  display: block;
  border-radius: 40px;
  padding: 16px;
  height: auto;
  position: relative;
  padding: 16px 40px; /* 矢印分の右側の余白を確保 */
  text-align: center; /* テキストを中央寄せにする */
    box-shadow: 0 12px 12px -12px rgba(0, 0, 0, 0.3);
    font-weight: bold;
  transition: all 0.2s;
}

/* ▼▼▼ 矢印（＞）を追加するCSS ▼▼▼ */
.entry-btn::after {
  content: ''; /* 疑似要素として空の内容を設定 */
  position: absolute; /* ボタン内で絶対配置 */
  top: 50%; /* 上から50%の位置に */
  right: 20px; /* 右端から15pxの位置に */
  width: 4px; /* 矢印の幅 */
  height: 4px; /* 矢印の高さ */
  border-top: solid 2px #fff; /* 上の線 */
  border-right: solid 2px #fff; /* 右の線 */
  transform: translateY(-50%) rotate(45deg); /* 中央寄せと回転 */
}
a.entry-btn:hover{
  color: #fff;
opacity: 0.5;
}



@media screen and (max-width: 768px) {
.area ul.list4 li.list4-item {
 width: 100%;
}
}



/*=======================================================
メニュー
 =======================================================*/


.menu {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.menu ul.contents {
  background: #f2ede3;
  margin: 0 auto;
}


.menu ul.contents li {
 border-bottom: 1px solid #fff;

}

.menu ul.contents li:last-child {
 border-bottom: 0;

}

.menu a {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 1200px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  height: 58px;
color: #4f3e3c;
font-weight: 500;
}


.menu .text {
color: #4f3e3c;
font-weight: 500;
font-size: 18px;
line-height: 18px;
}



.menu .text:before {
    content: '';
    display: inline-block;
    width: 18px;
    height: 18px;
    background-image: url(../img/arrow_baige.png);
    background-position: right 0 bottom 0;
    background-repeat: no-repeat;
    background-size: auto;
    vertical-align: middle;
    margin-right: 10px;
    margin-bottom: 2px;
}

@media screen and (max-width: 1200px) {
.menu a {
padding: 0 15px;
}
}



@media screen and (max-width: 768px) {
.menu .text {
color: #4f3e3c;
font-weight: 500;
font-size: 14px;
line-height: 14px;
}
.menu a {

  height: 50px;
padding: 0;
}

}


/*=======================================================
footer
 =======================================================*/

footer {
  width: 100%;
  background: #fff;
  margin: 0 auto;
  overflow: hidden;
  padding: 60px 0 45px;
}

footer .banner {
  margin: 0 auto 50px;
  width: 100%;
  text-align: center;
}


footer .banner2 {
  margin: 0 auto 50px;
  width: 100%;
  max-width: 1200px;
  text-align: center;
}
footer .banner2 {
  display: flex;
  flex-wrap: flex;
}

footer .banner2 .banner_nsg {
width: 50%;
margin-right: 5px;
}

footer .banner2 .banner_kaishi {
width: 50%;
margin-left: 5px;
}
footer .banner2 img {
width: 100%;
}

ul.footer_nav{
margin: 0 auto;
padding: 0;
width: 100%;
max-width: 1200px;
text-align: center;
}
ul.footer_nav li{
list-style: none;
display: inline-block;
width: auto;
padding: 0 20px;
line-height: 13px;

}
ul.footer_nav li:not(:last-child){
border-right: 1px solid #8f8b89;
}
ul.footer_nav a{
text-decoration: none;
color: #333;
font-size: 13px;
}
/*ul.footer_nav a.current{
color: #00B0F0;

}*/
ul.footer_nav a:hover{
opacity: 0.8;

}

.copy {
  font-size: 11px;
  margin: 20px auto 0;
  color: #000;
  text-align: center;
  
}
@media screen and (max-width: 1200px) {
footer .banner2 {
padding: 0 15px;
}
}

@media screen and (max-width: 768px) {
  footer .banner2 {
padding: 0;
}

footer {
  padding: 20px 0 20px;
}
footer .banner {
  margin: 0 auto 20px;
  width: 100%;
  text-align: center;
}
ul.footer_nav li{

padding: 0 4px;


}
footer .banner img {
width: 100%;
}
.copy {
  font-size: 10px;
  margin: 20px auto 0;
  
}
footer .banner2 {
  display: flex;
  flex-wrap: flex;
  flex-direction: column;
}

footer .banner2 .banner_nsg {
width: 100%;
margin-right: 0;
margin-bottom: 10px;
}

footer .banner2 .banner_kaishi {
width: 100%;
margin-left: 0;
}
footer .banner2 img {
width: 100%;
}
}

/*=======================================================
第二階層ヘッダー
 =======================================================*/

header {
  width: 100%;
  border-bottom: 1px solid #efe7e2;
}
header .header {
  margin: 0 auto;
  width: 100%;
  max-width: 1200px;
  height: 60px;
  display: flex;
  justify-content: left;
  align-items: center;

}

header .header img {
  margin-right :10px;

}

header .header .text {
  font-size: 17px;
  font-weight: 600;

}

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

header {
  padding-left: 15px;
}
}
/*=======================================================
第二階層 keyvisual
 =======================================================*/

.domitory {
  width:100%;
  margin: 0 auto;
  background: #fcf8f4;
  padding: 40px 0 0;

}
.domitory .keyvisual {
  width: 100%;
  max-width: 1200px;
  max-height: 599px;
  margin: 0 auto;
  text-align: center;
  position: relative;
}
.domitory .keyvisual .iconset {
    position: absolute;
    top: 0;
    right: 0;
}
.domitory .keyvisual .dormname {
    position: absolute;
    bottom: 57px;
    left: 0;

}

.domitory .keyvisual .dormname .box_lgr {
width: 520px;
opacity: 0.95;
background: linear-gradient( 90deg, #9dd320 0%, #9dd320 50%, transparent 100%);
background: -moz-linear-gradient( 90deg, #9dd320 0%, #9dd320 50%, transparent 100%);
background: -webkit-linear-gradient( 90deg, #9dd320 0%,#9dd320 50%, transparent 100%);
background: linear-gradient( 90deg, #9dd320 0%, #9dd320 50%, transparent 100%);
}

.domitory .keyvisual .dormname .box_pink {
width: 520px;
opacity: 0.95;
background: linear-gradient( 90deg, #fa8197 0%, #fa8197 50%, transparent 100%);
background: -moz-linear-gradient( 90deg, #fa8197 0%, #fa8197 50%, transparent 100%);
background: -webkit-linear-gradient( 90deg, #fa8197 0%, #fa8197 50%, transparent 100%);
background: linear-gradient( 90deg, #fa8197 0%, #fa8197 50%, transparent 100%);
}

.domitory .keyvisual .dormname .box_blue {
width: 520px;
opacity: 0.95;
background: linear-gradient( 90deg, #0b71be 0%, #0b71be 50%, transparent 100%);
background: -moz-linear-gradient( 90deg, #0b71be 0%, #0b71be 50%, transparent 100%);
background: -webkit-linear-gradient( 90deg, #0b71be 0%, #0b71be 50%, transparent 100%);
background: linear-gradient( 90deg, #0b71be 0%, #0b71be 50%, transparent 100%);
}

.domitory .keyvisual .dormname .name {
  text-align: left;
  color: #fff;
  font-size: 46px;
  font-weight: 600;
  padding-top: 25px;
  padding-bottom: 0;
  padding-left: 18px;
}
.domitory .keyvisual .dormname .room {
  text-align: left;
  color: #fff;
  font-size: 20px;
  font-weight: 600;
  padding-top: 0;
  padding-bottom: 15px;
  padding-left: 18px;
}

.domitory .keyvisual .dormname .small {

  font-size: 30px;
  margin-left: 10px;

}


.domitory ul.icon {

  display: flex;
  width: 100%;
  margin: 15px 15px 15px 0;
  padding: 0;
}


.domitory ul.icon li {
  border: 0;

  width: auto;
  margin: 0;
  padding: 0 8px 0 0;
}
.domitory ul.icon li:last-child {
padding-right: 0;
}
@media screen and (max-width: 768px) {
.domitory .keyvisual {

  
  height: 300px;
  margin: 0 auto;
  text-align: center;
  position: relative;
}
.domitory .keyvisual img {
  width: auto;
  height: 100%;
  max-height: 300px;
}
.domitory .keyvisual .dormname {
    position: absolute;
    bottom: 20px;
    left: 0;

}
.domitory .keyvisual .dormname .small {

  font-size: 14px;
  margin-left: 5px;

}
.domitory .keyvisual .dormname .box_lgr {
width: 250px;
opacity: 0.95;
background: linear-gradient( 90deg, #9dd320 0%, #9dd320 50%, transparent 100%);
background: -moz-linear-gradient( 90deg, #9dd320 0%, #9dd320 50%, transparent 100%);
background: -webkit-linear-gradient( 90deg, #9dd320 0%, #9dd320 50%, transparent 100%);
background: linear-gradient( 90deg, #9dd320 0%, #9dd320 50%, transparent 100%);
}
.domitory .keyvisual .dormname .box_pink {
width: 250px;
opacity: 0.95;
background: linear-gradient( 90deg, #fa8197 0%, #fa8197 50%, transparent 100%);
background: -moz-linear-gradient( 90deg, #fa8197 0%, #fa8197 50%, transparent 100%);
background: -webkit-linear-gradient( 90deg, #fa8197 0%, #fa8197 50%, transparent 100%);
background: linear-gradient( 90deg, #fa8197 0%, #fa8197 50%, transparent 100%);
}
.domitory .keyvisual .dormname .box_blue {
width: 250px;
opacity: 0.95;
background: linear-gradient( 90deg, #0b71be 0%, #0b71be 50%, transparent 100%);
background: -moz-linear-gradient( 90deg, #0b71be 0%, #0b71be 50%, transparent 100%);
background: -webkit-linear-gradient( 90deg, #0b71be 0%, #0b71be 50%, transparent 100%);
background: linear-gradient( 90deg, #0b71be 0%, #0b71be 50%, transparent 100%);
}


.domitory .keyvisual .dormname .name {
  text-align: left;
  color: #fff;
  font-size: 24px;
  font-weight: 600;
  padding-top: 10px;
  padding-bottom: 0;
  padding-left: 10px;
}
.domitory .keyvisual .dormname .room {
  text-align: left;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  padding-top: 0;
  padding-bottom: 10px;
  padding-left: 10px;
}

.domitory {

  padding: 0;

}

.domitory ul.icon {

  display: flex;
  width: 100%;
  margin: 5px 5px 5px 0;
  padding: 0;
}


.domitory ul.icon img {
width: 50px;

}

.domitory ul.icon li {
  border: 0;

  width: auto;
  margin: 0;
  padding: 0 5px 0 0;
}
.domitory ul.icon li:last-child {
padding-right: 0;
}
}
/*=======================================================
第二階層 メインの白背景
 =======================================================*/
.maincontainer {
  width: 100%;
  margin: 0 auto;
  background: #fcf8f4;
  padding-bottom: 100px;
}

.maincontainer_bg {
  max-width: 1200px;
  background: #fff;
  padding: 50px 50px 60px;
  margin: 0 auto;

}

@media screen and (max-width: 768px) {
  .maincontainer_bg {
  padding: 20px 0 35px;
  margin: 0 auto;

}
.maincontainer {
  padding-bottom: 0;
}

}
/*=======================================================
第二階層 room women
 =======================================================*/

 .room {
  width:100%;
  margin: 0 auto;
  padding: 0 0 40px;

}

 #room {
width: 100%;
max-width: 1100px;
margin: 0 auto;

 }

.room h2 {
  color: #0a76c6;
  font-size: 26px;
  letter-spacing: 0.03em;
  font-weight: 600;
  margin-bottom: 20px;

}
.room h2.pink {
  color: #fa899d;
  font-size: 26px;
  letter-spacing: 0.03em;
  font-weight: 600;
  margin-bottom: 20px;

}


.room h3 {
 font-size: 16px;
 }

.room ul.room_pic {
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: 60px;
}
.room ul li {

    text-align: center;
    list-style-type: none;
    width: 31%;
    box-sizing: border-box;
}
.room ul li {
    margin-right: 3.5%;
}
.room ul li:nth-child(3), .room ul li:nth-child(6), .room ul li:nth-child(9), .room ul li:nth-child(12) {
    margin-right: 0;
}

.room img {
  width: 100%;

}

.room .text {
  font-size: 12px;
  text-align: left;
  margin-bottom: 20px;
}



@media screen and (max-width: 768px) {
.room img {
  width: 100%;
  height: auto;
  min-height: 

}
.room h2 {
  font-size: 20px;
  letter-spacing: 0.03em;
  font-weight: 600;
  margin-bottom: 10px;

}


.room h2.pink {
  color: #fa899d;
  font-size: 20px;
  letter-spacing: 0.03em;
  font-weight: 600;
  margin-bottom: 10px;

}
.room ul.room_pic {
    padding: 0;
    display: flex;
    flex-wrap: wrap;
   


}
.room ul li {
    margin-bottom: 20px;
    text-align: center;
    list-style-type: none;
    width: 48%;
    box-sizing: border-box;
}
.room ul li {
    margin-right: 4%;
}
.room ul li:nth-child(3), .room ul li:nth-child(9) {
    margin-right: 4%;
}


.room ul li:nth-child(2), .room ul li:nth-child(4), .room ul li:nth-child(6), .room ul li:nth-child(8), .room ul li:nth-child(10), .room ul li:nth-child(12) {
    margin-right: 0;
}
.room ul.room_pic {
    margin-top: 20px;
}
.room ul li {
    margin-bottom: 0;

}

.room h3 {
 font-size: 14px;
 }
 .room {
  padding: 0;

}
.room .text {

  margin-bottom: 10px;
}


}
/*=======================================================
第二階層 desc women
 =======================================================*/


.desc_women {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;
  text-align: center;

}

#desc_women {
width: 100%;
max-width: 1100px;
margin: 0 auto;
text-align: center;
}


.desc_women ul.links {
    display: flex;
    flex-wrap: wrap;
    border: 0;
    background: #fff;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    
  border: 1px solid #ccc;
}


.desc_women ul.links li {
    list-style-type: none;
    width: calc( 100% / 4 );
    text-align: center;
    margin: 0 auto;
    justify-content: center;
    align-items: flex-end;
  position: relative;


}

.desc_women ul.links li:nth-child(1), .desc_women ul.links li:nth-child(2), .desc_women ul.links li:nth-child(3), .desc_women ul.links li:nth-child(5), .desc_women ul.links li:nth-child(6), .desc_women ul.links li:nth-child(7) {
  border-right: 1px solid #cccccc;

}

.desc_women ul.links li:nth-child(1), .desc_women ul.links li:nth-child(2), .desc_women ul.links li:nth-child(3), .desc_women ul.links li:nth-child(4) {
  border-bottom: 1px solid #cccccc;

}

.desc_women ul.links li {
    font-size: 15px;
    line-height: 15px;
    display: inline-block; 
}



.bw-arrow_women {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  text-align: center;
  width: 100%;
  height: 80px;
}

.bw-arrow_women > *:first-child {
  width: calc(100% - 10px * 3);
}


.bw-arrow_women::after {
  content: '';
  display: inline-block;
  padding: 0;

    width: 15px;
    height: 15px;
    background-image: url(../img/arrow_pink.png);
    background-repeat: no-repeat;
}


.bw-arrow_women:hover {
  opacity: 0.5;
}

a.bw-arrow_women:link, a.bw-arrow_women:active, a.bw-arrow_women:hover, a
.bw-arrow_women:visited {

  text-decoration: none;
}

button .bw-arrow_women {
  width: 100%;
  border: none;
  cursor: pointer;
}


.bw-arrow_women2 {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  text-align: center;
  width: 100%;
  height: 80px;
}

.bw-arrow_women2 > *:first-child {
  width: calc(100% - 10px * 3);
}

.desc_women h2 {
  margin: 40px auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #fa899d;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}

.desc_women h3 {
  font-size: 24px;
  text-align: left;
  font-weight: 600;

}
.desc_women h4 {
  font-size: 12px;
  text-align: left;

}

.desc_women ul.list4 {
width: 100%;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin: 40px auto 40px;
}

.desc_women ul.list4 li {
  font-size: 14px;
  padding: 20px 0 20px 20px;
}
.desc_women ul.list4 li:nth-child(odd) {
width: 20%;
    display: flex;
    flex-wrap: wrap;
    background: #fff9fa;
}
.desc_women ul.list4 li:nth-child(even) {
width: 30%;
    display: flex;
    flex-wrap: wrap;
    background: #fff;
}
.desc_women ul.list4 li:nth-child(1), .desc_women ul.list4 li:nth-child(2), .desc_women ul.list4 li:nth-child(3), .desc_women ul.list4 li:nth-child(4), .desc_women ul.list4 li:nth-child(5), .desc_women ul.list4 li:nth-child(6), .desc_women ul.list4 li:nth-child(7), .desc_women ul.list4 li:nth-child(8) {
border-bottom: 1px dotted #ccc;
}

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

.desc_women {
  padding: 10px 0 0;

}
.desc_women h3 {
  font-size: 20px;
  text-align: left;
  font-weight: 600;

}

.desc_women ul.links {
    display: flex;
    flex-wrap: wrap;
    border: 0;
    background: #fff;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    
  border: 1px solid #ccc;
}
.desc_women ul.links li {
    list-style-type: none;
    width: calc( 100% / 3 );
    text-align: center;
    margin: 0 auto;
    justify-content: center;
    align-items: flex-end;
  position: relative;
}


.desc_women ul.links li:nth-child(1), .desc_women ul.links li:nth-child(2), .desc_women ul.links li:nth-child(4), .desc_women ul.links li:nth-child(5) {
  border-right: 1px solid #cccccc;

}

.desc_women ul.links li:nth-child(3), .desc_women ul.links li:nth-child(6), .desc_women ul.links li:nth-child(7) {
  border-right: 0;
}

.desc_women ul.links li:nth-child(1), .desc_women ul.links li:nth-child(2), .desc_women ul.links li:nth-child(3) {
  border-bottom: 1px solid #cccccc;

}
.desc_women ul.links li:nth-child(4)  {
border-bottom: 0;
}


.bw-arrow_women {

  font-size: 12px;
  padding: 5px;
  text-align: center;
  width: 100%;
  height: 50px;
}

.bw-arrow_women > *:first-child {
  width: calc(100% - 5px * 3);
}


.bw-arrow_women::after {
  content: '';
  display: inline-block;
  padding: 0;
  margin-top: 6px;
    width: 15px;
    height: 15px;
    background-image: url(../img/arrow_pink.png);
    background-repeat: no-repeat;
}


.bw-arrow_women2 {
  font-size: 12px;
  padding: 5px;
  text-align: center;
  width: 100%;
  height: 50px;
}

.bw-arrow_women2 > *:first-child {
  width: calc(100% - 5px * 3);
}



.desc_women h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}
.desc_women h4 {
  font-size: 12px;
  text-align: left;
  padding: 0 15px;

}
.desc_women ul.list4 {
width: 100%;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin: 20px auto 20px;
}

.desc_women ul.list4 li {
  font-size: 12px;
  padding: 5px 0 5px 10px;
}
.desc_women ul.list4 li:nth-child(odd) {
width: 30%;
    display: flex;
    flex-wrap: wrap;
    background: #fff9fa;
}
.desc_women ul.list4 li:nth-child(even) {
width: 70%;
    display: flex;
    flex-wrap: wrap;
    background: #fff;
}
.desc_women ul.list4 li:nth-child(1), .desc_women ul.list4 li:nth-child(2), .desc_women ul.list4 li:nth-child(3), .desc_women ul.list4 li:nth-child(4), .desc_women ul.list4 li:nth-child(5), .desc_women ul.list4 li:nth-child(6), .desc_women ul.list4 li:nth-child(7), .desc_women ul.list4 li:nth-child(8), .desc_women ul.list4 li:nth-child(9), .desc_women ul.list4 li:nth-child(10) {
border-bottom: 1px dotted #ccc;
}
}

/*=======================================================
第二階層 price women
 =======================================================*/

.price_women {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;
  text-align: center;

}

#price_women {
width: 100%;
max-width: 1100px;
margin: 0 auto;
text-align: center;
}


.price_women h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #fa899d;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}


.price_women ul.list2 {
width: 100%;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin: 40px auto 0;
}

.price_women ul.list2 li {
  font-size: 14px;
  padding: 15px 0 15px 20px;
  text-align: left;

  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.price_women ul.list2 li:nth-child(odd) {
width: 20%;

    background: #fff9fa;
}
.price_women ul.list2 li:nth-child(even) {
width: 80%;
    background: #fff;
}
.price_women ul.list2 li:not(:last-child) { /*ここ*/
border-bottom: 1px dotted #ccc;
}

.price_women .pinktext {
display: contents;
  color: #f76f8d;
}
@media screen and (max-width: 768px) {

.price_women {
  margin: 0 auto;
  width: 100%;
  padding: 0;
  text-align: center;

}

.price_women h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}
.price_women ul.list2 {

    margin: 20px auto 0;
}
.price_women ul.list2 li:nth-child(odd) {
width: 30%;

    background: #fff9fa;
}
.price_women ul.list2 li:nth-child(even) {
width: 70%;
    background: #fff;
}

.price_women ul.list2 li {
  font-size: 12px;
  line-height: 20px;
  padding: 5px 0 5px 20px;
  text-align: left;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.price_women ul.list2 li:nth-child(1), .price_women ul.list2 li:nth-child(2) {
  font-size: 12px;
  line-height: 18px;
  padding: 5px 10px 5px 20px;
  text-align: left;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}


}
/*=======================================================
第二階層 floor women
 =======================================================*/

.floor_women {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;
  text-align: center;

}

#floor_women {
width: 100%;
max-width: 1100px;
margin: 0 auto;
text-align: center;
}

.floor_women h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #fa899d;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}

.floor_women .title {
  padding: 0.25em 0.5em;
  font-size: 18px;
  font-weight: bold;
  background: transparent;
  border-left: solid 5px #fa899d;
  text-align: left;
  margin-bottom: 15px;
}

.floor_women .container {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-direction: flex;
}
.floor_women .container img {
width: 100%;
}
.floor_women .container .room_pic {
  width: 55%;
  padding-right: 5%;
}


.floor_women .container .map_pic {
  width: 45%;
  padding-left: 5%;
}
.floor_women .container .map_pic2 {
  width: 45%;
}


@media screen and (max-width: 768px) {
  .floor_women {
  padding: 0;
  text-align: center;

}

.floor_women h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}
.floor_women .title {
  padding: 0.05em 0.5em;
  font-size: 16px;
  font-weight: bold;
  background: transparent;
  border-left: solid 5px #fa899d;
  text-align: left;
  margin-bottom: 15px;
}

.floor_women .container {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  padding-bottom: 20px;
}
.floor_women .container img {
width: 100%;
}
.floor_women .container .room_pic {
width: 100%;
  padding-right: 0;
  margin-bottom: 20px;
}


.floor_women .container .map_pic {
width: 100%;
  padding-left: 0;
}
.floor_women .container .map_pic2 {
width: 100%;
  padding-left: 0;
}

}

/*=======================================================
第二階層 manage women
 =======================================================*/

.manage_women {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;



}

#manage_women {
width: 100%;
max-width: 1100px;
margin: 0 auto;

}

.manage_women h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #fa899d;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}
.manage_women h3 {
  color: #f76f8d;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}
.manage_women h4 {
  color: #f76f8d;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}

.manage_women ul.text {
margin-block-start: 0;

    padding-inline-start: 1.3em;
}
.manage_women ul.text li {
 /*   padding-left: 1.3em; */
    position: relative;
}
.manage_women ul.text li::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 100%;
  display: inline-block;
  background-color: #000;
  position: relative;
  top:-2px;
  left: -10px;
}



@media screen and (max-width: 768px) {
  .manage_women {
  padding:0;

  text-align: center;

}

.manage_women h2 {
  margin: 0 auto 20px;
  width: 100%;
padding: 15px 20px;
}
.manage_women h3 {
  color: #f76f8d;
  font-size: 14px;
  font-weight: 600;
  text-align: left;
}
.manage_women h4 {
  color: #f76f8d;
  font-size: 14px;
  font-weight: 600;
  text-align: left;
}

.manage_women ul.text li {
    font-size: 12px;
    text-align: left;
    margin-top: 5px;
    margin-bottom: 5px;
}

}


/*=======================================================
第二階層 規則
 =======================================================*/

.rule_women {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;



}

#rule_women {
width: 100%;
max-width: 1100px;
margin: 0 auto;

}

.rule_women h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #fa899d;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}
.rule_women h3 {
  color: #f76f8d;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}
.rule_women h4 {
  color: #f76f8d;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}

.rule_women ul.text {
margin-block-start: 0;

    padding-inline-start: 0;
}
.rule_women ul.text li {
    text-align: left;
    margin-bottom: 10px;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-inline-start: 0;
}



@media screen and (max-width: 768px) {
  .rule_women {
  padding:0;
  text-align: center;

}

.rule_women h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}
.rule_women h3 {
  font-size: 14px;
  font-weight: 600;
  text-align: left;
}

.rule_women ul.text li {
font-size: 12px;
}

}

/*=======================================================
第二階層 設備 women
 =======================================================*/

.facility_women {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 0;

  text-align: center;

}

#facility_women  {
width: 100%;
max-width: 1100px;
margin: 0 auto;
text-align: center;
}

.facility_women h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #fa899d;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}


.facility_women ul.list2 {
width: 100%;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin: 40px auto 0;
}

.facility_women ul.list2 li {
  font-size: 14px;
  padding: 15px 0 15px 20px;
  text-align: left;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.facility_women ul.list2 li:nth-child(odd) {
width: 20%;

    background: #fff9fa;
}
.facility_women ul.list2 li:nth-child(even) {
width: 80%;
    background: #fff;
}
.facility_women ul.list2 li:nth-child(1), .facility_women ul.list2 li:nth-child(2) {
border-bottom: 1px dotted #ccc;
}

.facility_women .pinktext {
display: contents;
  color: #f76f8d;
}
@media screen and (max-width: 768px) {

.facility_women {

  margin: 0 auto;
  width: 100%;
  padding: 0;
  text-align: center;

}

.facility_women h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}
.facility_women ul.list2 {

    margin: 20px auto 0;
}
.facility_women ul.list2 li {
  font-size: 12px;
  line-height: 18px;
  padding: 5px 10px 5px 20px;
  text-align: left;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.facility_women ul.list2 li:nth-child(odd) {
width: 30%;

    background: #fff9fa;
}
.facility_women ul.list2 li:nth-child(even) {
width: 70%;
    background: #fff;
}
.facility_women ul.list2 li:nth-child(1), .facility_women ul.list2 li:nth-child(2) {


  text-align: left;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}


}

/* 男子寮　*/
/*=======================================================
第二階層 desc women
 =======================================================*/


.desc_men {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;
  text-align: center;

}

#desc_men {
width: 100%;
max-width: 1100px;
margin: 0 auto;
text-align: center;
}


.desc_men ul.links {
    display: flex;
    flex-wrap: wrap;
    border: 0;
    background: #fff;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    
  border: 1px solid #ccc;
}


.desc_men ul.links li {
    list-style-type: none;
    width: calc( 100% / 4 );
    text-align: center;
    margin: 0 auto;
    justify-content: center;
    align-items: flex-end;
  position: relative;


}

.desc_men ul.links li:nth-child(1), .desc_men ul.links li:nth-child(2), .desc_men ul.links li:nth-child(3), .desc_men ul.links li:nth-child(5), .desc_men ul.links li:nth-child(6), .desc_men ul.links li:nth-child(7) {
  border-right: 1px solid #cccccc;

}

.desc_men ul.links li:nth-child(1), .desc_men ul.links li:nth-child(2), .desc_men ul.links li:nth-child(3), .desc_men ul.links li:nth-child(4) {
  border-bottom: 1px solid #cccccc;

}

.desc_men ul.links li {
    font-size: 15px;
    line-height: 15px;
    display: inline-block; 
}



.bw-arrow_men {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  text-align: center;
  width: 100%;
  height: 80px;
}

.bw-arrow_men > *:first-child {
  width: calc(100% - 10px * 3);
}


.bw-arrow_men::after {
  content: '';
  display: inline-block;
  padding: 0;

    width: 15px;
    height: 15px;
    background-image: url(../img/arrow_blue.png);
    background-repeat: no-repeat;
}


.bw-arrow_men:hover {
  opacity: 0.5;
}

a.bw-arrow_men:link, a.bw-arrow_men:active, a.bw-arrow_men:hover, a
.bw-arrow_men:visited {

  text-decoration: none;
}

button .bw-arrow_men {
  width: 100%;
  border: none;
  cursor: pointer;
}


.bw-arrow_men2 {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  text-align: center;
  width: 100%;
  height: 80px;
}

.bw-arrow_men2 > *:first-child {
  width: calc(100% - 10px * 3);
}




.desc_men h2 {
  margin: 40px auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #0a76c7;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}

.desc_men h3 {
  font-size: 24px;
  text-align: left;
  font-weight: 600;

}
.desc_men h4 {
  font-size: 12px;
  text-align: left;

}

.desc_men ul.list4 {
width: 100%;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin: 40px auto 40px;
}

.desc_men ul.list4 li {
  font-size: 14px;
  padding: 20px 0 20px 20px;
}
.desc_men ul.list4 li:nth-child(odd) {
width: 20%;
    display: flex;
    flex-wrap: wrap;
    background: #f3f8fc;
}
.desc_men ul.list4 li:nth-child(even) {
width: 30%;
    display: flex;
    flex-wrap: wrap;
    background: #fff;
}
.desc_men ul.list4 li:nth-child(1), .desc_men ul.list4 li:nth-child(2), .desc_men ul.list4 li:nth-child(3), .desc_men ul.list4 li:nth-child(4), .desc_men ul.list4 li:nth-child(5), .desc_men ul.list4 li:nth-child(6), .desc_men ul.list4 li:nth-child(7), .desc_men ul.list4 li:nth-child(8) {
border-bottom: 1px dotted #ccc;
}

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

.desc_men {
  padding: 10px 0 0;

}
.desc_men h3 {
  font-size: 20px;
  text-align: left;
  font-weight: 600;

}
.desc_men h4 {
  font-size: 12px;
  text-align: left;
  padding: 0 15px;

}
.desc_men ul.links {
    display: flex;
    flex-wrap: wrap;
    border: 0;
    background: #fff;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    
  border: 1px solid #ccc;
}
.desc_men ul.links li {
    list-style-type: none;
    width: calc( 100% / 3 );
    text-align: center;
    margin: 0 auto;
    justify-content: center;
    align-items: flex-end;
  position: relative;
}


.desc_men ul.links li:nth-child(1), .desc_men ul.links li:nth-child(2), .desc_men ul.links li:nth-child(4), .desc_men ul.links li:nth-child(5) {
  border-right: 1px solid #cccccc;

}

.desc_men ul.links li:nth-child(3), .desc_men ul.links li:nth-child(6), .desc_men ul.links li:nth-child(7) {
  border-right: 0;
}

.desc_men ul.links li:nth-child(1), .desc_men ul.links li:nth-child(2), .desc_men ul.links li:nth-child(3) {
  border-bottom: 1px solid #cccccc;

}
.desc_men ul.links li:nth-child(4)  {
border-bottom: 0;
}


.bw-arrow_men {

  font-size: 12px;
  padding: 5px;
  text-align: center;
  width: 100%;
  height: 50px;
}

.bw-arrow_men > *:first-child {
  width: calc(100% - 5px * 3);
}


.bw-arrow_men::after {
  content: '';
  display: inline-block;
  padding: 0;
  margin-top: 6px;
    width: 15px;
    height: 15px;
    background-image: url(../img/arrow_blue.png);
    background-repeat: no-repeat;
}


.bw-arrow_men2 {
  font-size: 12px;
  padding: 5px;
  text-align: center;
  width: 100%;
  height: 50px;
}

.bw-arrow_men2 > *:first-child {
  width: calc(100% - 5px * 3);
}



.desc_men h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}

.desc_men ul.list4 {
width: 100%;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin: 20px auto 20px;
}

.desc_men ul.list4 li {
  font-size: 12px;
  padding: 5px 0 5px 10px;
}
.desc_men ul.list4 li:nth-child(odd) {
width: 30%;
    display: flex;
    flex-wrap: wrap;
    background: #f3f8fc;
}
.desc_men ul.list4 li:nth-child(even) {
width: 70%;
    display: flex;
    flex-wrap: wrap;
    background: #fff;
}
.desc_men ul.list4 li:nth-child(1), .desc_men ul.list4 li:nth-child(2), .desc_men ul.list4 li:nth-child(3), .desc_men ul.list4 li:nth-child(4), .desc_men ul.list4 li:nth-child(5), .desc_men ul.list4 li:nth-child(6), .desc_men ul.list4 li:nth-child(7), .desc_men ul.list4 li:nth-child(8), .desc_men ul.list4 li:nth-child(9), .desc_men ul.list4 li:nth-child(10) {
border-bottom: 1px dotted #ccc;
}
}

/*=======================================================
第二階層 price women
 =======================================================*/

.price_men {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;
  text-align: center;

}

#price_men {
width: 100%;
max-width: 1100px;
margin: 0 auto;
text-align: center;
}

.price_men h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #0a76c7;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}


.price_men ul.list2 {
width: 100%;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin: 40px auto 0;
}

.price_men ul.list2 li {
  font-size: 14px;
  padding: 15px 0 15px 20px;
  text-align: left;

  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.price_men ul.list2 li:nth-child(odd) {
width: 20%;

    background: #f3f8fc;
}
.price_men ul.list2 li:nth-child(even) {
width: 80%;
    background: #fff;
}
.price_men ul.list2 li:nth-child(1), .price_men ul.list2 li:nth-child(2), .price_men ul.list2 li:nth-child(3), .price_men ul.list2 li:nth-child(4), .price_men ul.list2 li:nth-child(5), .price_men ul.list2 li:nth-child(6), .price_men ul.list2 li:nth-child(7), .price_men ul.list2 li:nth-child(8) {
border-bottom: 1px dotted #ccc;
}

.price_men .pinktext {
display: contents;
  color: #f76f8d;
}
@media screen and (max-width: 768px) {

.price_men {
  margin: 0 auto;
  width: 100%;
  padding: 0;
  text-align: center;

}

.price_men h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}
.price_men ul.list2 {

    margin: 20px auto 0;
}
.price_men ul.list2 li:nth-child(odd) {
width: 30%;

    background: #f3f8fc;
}
.price_men ul.list2 li:nth-child(even) {
width: 70%;
    background: #fff;
}

.price_men ul.list2 li {
  font-size: 12px;
  line-height: 20px;
  padding: 5px 0 5px 20px;
  text-align: left;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.price_men ul.list2 li:nth-child(1), .price_men ul.list2 li:nth-child(2) {
  font-size: 12px;
  line-height: 18px;
  padding: 5px 10px 5px 20px;
  text-align: left;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}


}
/*=======================================================
第二階層 floor women
 =======================================================*/

.floor_men {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;
  text-align: center;

}

#floor_men {
width: 100%;
max-width: 1100px;
margin: 0 auto;
text-align: center;
}

.floor_men h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #0a76c7;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}

.floor_men .title {
  padding: 0.25em 0.5em;
  font-size: 18px;
  font-weight: bold;
  background: transparent;
  border-left: solid 5px #0a76c7;
  text-align: left;
  margin-bottom: 15px;
}

.floor_men .container {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-direction: flex;
}
.floor_men .container img {
width: 100%;
}
.floor_men .container .room_pic {
  width: 55%;
  padding-right: 5%;
}


.floor_men .container .map_pic {
  width: 45%;
  padding-left: 5%;
}
.floor_men .container .map_pic2 {
  width: 45%;
}



@media screen and (max-width: 768px) {
  .floor_men {
  padding: 0;
  text-align: center;

}

.floor_men h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}
.floor_men .title {
  padding: 0.05em 0.5em;
  font-size: 16px;
  font-weight: bold;
  background: transparent;
  border-left: solid 5px #0a76c7;
  text-align: left;
  margin-bottom: 15px;
}

.floor_men .container {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  padding-bottom: 20px;
}
.floor_men .container img {
width: 100%;
}
.floor_men .container .room_pic {
width: 100%;
  padding-right: 0;
  margin-bottom: 20px;
}


.floor_men .container .map_pic {
width: 100%;
  padding-left: 0;
}
.floor_men .container .map_pic2 {
width: 100%;
  padding-left: 0;
}

}

/*=======================================================
第二階層 manage women
 =======================================================*/

.manage_men {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;



}

#manage_men {
width: 100%;
max-width: 1100px;
margin: 0 auto;

}

.manage_men h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #0a76c7;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}
.manage_men h3 {
  color: #f76f8d;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}
.manage_men h4 {
  color: #f76f8d;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}


/*
.manage_men ul.text {
margin-block-start: 0;

    padding-inline-start: 1.3em;
}
.manage_men ul.text li {

    list-style: disc;
    padding-left: 1.3em;
    text-indent: -0.8em;
    text-align: left;
    margin-bottom: 10px;

    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 1.3em;
    margin-inline-end: 0;
    padding-inline-start: 0;
}
*/
.manage_men ul.text {
  margin-block-start: 0;
  
      padding-inline-start: 1.3em;
  }
  .manage_men ul.text li {
   /*   padding-left: 1.3em; */
      position: relative;
  }
  .manage_men ul.text li::before {
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 100%;
    display: inline-block;
    background-color: #000;
    position: relative;
    top:-2px;
    left: -10px;
  }
  


@media screen and (max-width: 768px) {
  .manage_men {
  padding:0;

  text-align: center;

}

.manage_men h2 {
  margin: 0 auto 20px;
  width: 100%;
padding: 15px 20px;
}
.manage_men h3 {
  color: #f76f8d;
  font-size: 14px;
  font-weight: 600;
  text-align: left;
}
.manage_men h4 {
  color: #f76f8d;
  font-size: 14px;
  font-weight: 600;
  text-align: left;
}

/*
.manage_men ul.text li {
    font-size: 12px;
    list-style: disc;
    padding-left: 1.3em;
    text-indent: -1.3em;
    text-align: left;
    margin-bottom: 10px;

    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 1.3em;
    margin-inline-end: 0;
    padding-inline-start: 0;
}
*/

.manage_men ul.text li {
  font-size: 12px;
  text-align: left;
  margin-top: 5px;
  margin-bottom: 5px;
}

}


/*=======================================================
第二階層 規則
 =======================================================*/

.rule_men {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 20px;



}

#rule_men {
width: 100%;
max-width: 1100px;
margin: 0 auto;

}

.rule_men h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #0a76c7;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}
.rule_men h3 {
  color: #f76f8d;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}
.rule_men h4 {
  color: #f76f8d;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}

.rule_men ul.text {
margin-block-start: 0;

    padding-inline-start: 0;
}
.rule_men ul.text li {
    text-align: left;
    margin-bottom: 10px;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-inline-start: 0;
}



@media screen and (max-width: 768px) {
  .rule_men {
  padding:0;
  text-align: center;

}

.rule_men h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}
.rule_men h3 {
  font-size: 14px;
  font-weight: 600;
  text-align: left;
}

.rule_men ul.text li {
font-size: 12px;
}

}

/*=======================================================
第二階層 設備 women
 =======================================================*/

.facility_men {

  margin: 0 auto;
  width: 100%;
  padding: 45px 0 0;

  text-align: center;

}

#facility_men  {
width: 100%;
max-width: 1100px;
margin: 0 auto;
text-align: center;
}

.facility_men h2 {
  margin: 0 auto 30px;
  width: 100%;
  max-width: 1100px;
  background: #0a76c7;
  padding: 24px 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
}


.facility_men ul.list2 {
width: 100%;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    margin: 40px auto 0;
}

.facility_men ul.list2 li {
  font-size: 14px;
  padding: 15px 0 15px 20px;
  text-align: left;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.facility_men ul.list2 li:nth-child(odd) {
width: 20%;

    background: #f3f8fc;
}
.facility_men ul.list2 li:nth-child(even) {
width: 80%;
    background: #fff;
}
.facility_men ul.list2 li:nth-child(1), .facility_men ul.list2 li:nth-child(2) {
border-bottom: 1px dotted #ccc;
}

.facility_men .pinktext {
display: contents;
  color: #f76f8d;
}
@media screen and (max-width: 768px) {

.facility_men {

  margin: 0 auto;
  width: 100%;
  padding: 0;
  text-align: center;

}

.facility_men h2 {
  margin: 20px auto 20px;
  width: 100%;
padding: 15px 20px;
}
.facility_men ul.list2 {

    margin: 20px auto 0;
}
.facility_men ul.list2 li {
  font-size: 12px;
  line-height: 18px;
  padding: 5px 10px 5px 20px;
  text-align: left;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.facility_men ul.list2 li:nth-child(odd) {
width: 30%;

    background: #f3f8fc;
}
.facility_men ul.list2 li:nth-child(even) {
width: 70%;
    background: #fff;
}
.facility_men ul.list2 li:nth-child(1), .facility_men ul.list2 li:nth-child(2) {


  text-align: left;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}


}





.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

.movie-wrap-title h3 {
  font-size: 24px;
  text-align: left;
  font-weight: 600; margin-bottom:25px;
}
@media screen and (max-width: 768px) {
.movie-wrap-title h3 {
  font-size: 20px;
  text-align: left;
  font-weight: 600; margin-bottom:25px; margin-top:20px;

}
}




/*=======================================================
右下追従ボタン
 =======================================================*/
  .fixed {
    position: fixed;
    right: 12px;
    bottom: 12px;
    z-index: 1;
}

.fixed-btn {
background-color: #1595cd;
    color: #fff;
    /* padding: 12px 24px; */
    /* border-radius: 40px; */
    width: 280px;
    display: block;
    text-align: center;
    align-items: center;
    height: 80px;
    display: flex
;
    flex-direction: column;
    justify-content: center;
    /* border: 2px solid #ed6c00; */
    font-weight: bold;
    box-shadow: 0 12px 12px -12px rgba(0, 0, 0, 0.3);
    transition: all 0.2s;
    position: relative;
    border-radius: 4px;
    text-align: left;
    /* width: 100%; */
    padding: 12px;
    padding-right: 24px;
        gap: 4px;
        display: flex
;
    flex-direction: column;
}
.fixed-btn span{
  font-size: 12px;
}

/* ▼▼▼ 矢印を追加（最初はオレンジ色） ▼▼▼ */
.fixed-btn::after {
  content: '';
  position: absolute;
  top: 50%;
    right: 24px;
    width: 5px;
    height: 5px;
  border-top: 2px solid #fff;   /* 最初は文字色と同じオレンジ */
  border-right: 2px solid #fff; /* 最初は文字色と同じオレンジ */
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.2s; /* 色の変化を滑らかにする */
}

/* ▼▼▼ ホバー時の設定（矢印を白色に変える） ▼▼▼ */
.fixed-btn:hover {
  background-color: #ed6c00;
  color: #fff;
}

.fixed-btn:hover::after {
  border-color: #fff; /* ホバーしたら矢印を白くする */
}




@media screen and (max-width: 768px) {
.fixed{
      right: 0;
    width: 100%;
    display: flex;
    bottom: 0;
    padding: 4px;
    box-sizing: border-box;
}
.fixed-btn{
      width: 100%;
    border-radius: 4px;
    height: auto;
    display: flex;
    font-size: 12px;
    padding: 12px;
}
.fixed-btn span{
  font-size: 10px;
}
}
