@charset "UTF-8";

.pc_only{
  display: block;
}

.pc_only02{
  display: inline-block;
}

.sp_only,
.sp_only02{
  display: none;
}

.none{
  display: none!important;
}

body{
  width: 100%;
  margin: 0 auto;
}

.block01 , .block02 , .block03 , .block04 , .block05 , .block06 , .block07 , .block08{
  margin-left: auto;
  margin-right: auto;
}

.block01{
  max-width: 1080px;
}

.block02{
  max-width: 650px;
}

.block03{
  max-width: 930px;
}

.block04{
  max-width: 1065px;
}

.block05{
  max-width: 1060px;
}

.block06{
  max-width: 824px;
}

.block07{
  max-width: 500px;
}

.block08{
  max-width: 890px;
}

.space01{
  display: block;
  width: 1px;
  height: 60px;
}

/*header*/
header{
  position: relative;
}

.sp_menu{
  display: none;
}

.logo-area #site-title{
  max-width: 411px;
  width: 100%;
}

.mypage-btn{
  position: absolute;
  right: 20px;
  top: 20px;
}

.mypage-btn a{
  display: block;
  position: relative;
  border: 2px solid #ed6d35;
  padding: 10px 43px 10px 10px;
}

.mypage-btn a::after{
  content: "";
  display: inline-block;
  width: 33px;
  height: 33px;
  background-image: url("/asset/img/icon/door02.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}

.mypage-btn .clip{
  position: relative;
  width: 52px;
  height: 52px;
  margin-right: 5px;
}

.mypage-btn .clip a{
  position: absolute;
  max-width: 44px;
  width: 100%;
  max-height: 44px;
  height: 100%;
  border: none;
  padding: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.mypage-btn .clip a::after{
  background: none;
}

.mypage-btn .clip a:hover{
  opacity: 0.7;
}

.mypage-btn .login a::after{
  background-image: url("/asset/img/icon/door01.png");
}

.main_menu_block{
  position: absolute;
  bottom: 0;
  left: 120px;
}

.main_menu_block ul{
  display: flex;
}

.main_menu_block ul li{
  margin-right: 92px;
  font-size: 2.0rem;
}

.main_menu_block ul li:last-child{
  margin-right: 0;
}

.main_menu_block ul li ul{
  display: block;
}

.main_menu_block ul li span.menu_child_title::after{
  position: relative;
  top: -2px;
  content: "";
  margin-left: 10px;
  display: inline-block;
  border-bottom: solid 3px #000;
  border-right: solid 3px #000;
  width: 12px;
  height: 12px;
  transform: rotate(45deg);
}

.main_menu_block ul li ul{
  position: relative;
}

.main_menu_block ul li.menu_child:hover ul{
  visibility: visible;
}

.main_menu_block ul li ul{
  visibility: hidden;
  position: absolute;
  z-index: 100;
}

.main_menu_block ul li ul li{
  width: 110%;
  background: #fff;
  text-align: left;
  padding: 15px;
  margin: auto;
  border-bottom: 1px solid #ccc;
}

.main_menu_block ul li ul li a{
  display: block;
}

.main_menu_block ul li .tel_block{
  position: relative;
  margin-left: 40px;
}

.main_menu_block ul li .tel_block span{
}

.main_menu_block ul li .tel_block span::before{
  content: "";
  display: inline-block;
  width: 37px;
  height: 42px;
  background-image: url("/asset/img/icon/tel.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  bottom: 0;
  left: -40px;
  margin: auto;
}

/*header end*/

/*nav*/
nav{
  width: 880px;
}
nav ul.menu{
  display: flex;
}

nav ul.menu li{
  width: 25%;
  text-align: center;
}

nav ul.menu li a{
  font-size: 1.6rem;
  font-weight: bold;
  color: #000;
}

nav .menu-item-has-children a::after{
  position: relative;
  top: -2px;
  content: "";
  margin-left: 10px;
  display: inline-block;
  border-bottom: solid 3px #000;
  border-right: solid 3px #000;
  width: 12px;
  height: 12px;
  transform: rotate(45deg);
}

nav .menu-item-has-children{
  position: relative;
}

nav .menu-item-has-children:hover .sub-menu{
  visibility: visible;
}

nav .sub-menu{
  visibility: hidden;
  position: absolute;
  z-index: 100;
}

nav .sub-menu .menu-item{
  width: 180%;
  background: #fff;
  text-align: left;
  padding: 15px;
}

nav .sub-menu .menu-item{
  border-bottom: 1px solid #ccc;
}

nav .sub-menu .menu-item a{
  font-size: 1.6rem;
  font-weight: normal;
}

nav .sub-menu .menu-item a::after{
  display: none;
}


/*nav end*/

/* sub page nav */
.sub_page_menu{
  position: relative;
  border-top: 10px solid #00608d;
  margin-bottom: 100px;
  z-index: 10;
}

.sub_page_menu .flex{
  padding-top: 30px;
  justify-content: space-between;
}

.sub_page_menu li{
  width: 175px;
}

.sub_page_menu li:first-child{
  width: 340px;
}

.sub_page_menu a:hover{
  opacity: 0.7;
}

/* sub page nav end */

/*top*/
.slider01{
  border-top: 14px solid #00608d;
}

.top.slider01{
  padding-bottom: 100px;
}

.top .slick-slide{
  -ms-filter: blur(6px);
  filter: blur(6px);
  height: auto;
}

.top .slick-slide.slick-current{
  -ms-filter: blur(0);
  filter: blur(0);
}

.top.slider01 .slick-track .img{
  width:100%;
  max-width:1080px;
  img{
    width: 100%;
  }  
}

.top .slick-dots{
  bottom:0!important;
}

.top .slick-dots li button:before{
    content:""!important;
}

.top .slick-dots li{
  width: 168px!important;
  height:56.7px!important;
  margin: 0 7px!important;
  box-sizing:border-box;
  border: 5px solid #464646;
}

.top .slick-dots li button{	
  height: 100%!important;
  width: 100%!important;
  background-repeat: no-repeat!important;
  background-size: cover!important;
  opacity: 0.5;
}

.top .slick-dots li.slick-active button{
  opacity: 1;
}

.banner-slider{
  padding: 40px 0;
}

.banner-slider .slick-slide{
  height: auto;
}

.banner-slider .slick-slide{
  margin-left: 10px;
  margin-right: 10px;
}

.search-navi{
  margin-bottom: 60px;
}

.search-navi.flex{
  justify-content: space-between;
}

.search-navi div{
  width: 350px;
  margin-bottom: 20px;
}

.search-navi .short{
  width: 465px;
}

.search-navi .long{
  width: 600px;
}

.recommendation{
  background: #fdf5e6;
  padding: 50px 0 80px;
  margin-bottom: 120px;
}

.recommendation .data.flex{
  justify-content: left;
  padding: 0 20px;
}

.recommendation .data li{
  width: 240px;
  background: #281a14;
  border: 2px solid #464646;
  margin-bottom: 60px;
  margin-right: 26px;
}

.recommendation .data li:nth-of-type(4n){
  margin-right: 0;
}

.recommendation .data a{
  color: #fff;
}

.recommendation .data .txt{
  color: #fff;
  padding: 10px;
  font-size: 1.4rem;
}

.news{
  margin-bottom: 120px;
}

.news ul{
  max-height: 400px;
  overflow: scroll;
}

.news li{
  border-bottom: 1px solid #c3c3c3;
  padding: 15px;
}

.news li:first-child{
  border-top: 1px solid #c3c3c3;
}

.news li p span{
  display: block;
}

.panorama{
  margin-bottom: 120px;
}

.panorama .flex{
  display: flex;
  padding: 0 20px;
  justify-content: space-between;
}

.panorama .flex li{
  max-width: 225px;
}

.panorama .flex li a{
}

.panorama .flex li h3.row1,
.panorama .flex li h3.row2{
  display: block;
  width: 100%;
}

.panorama .flex li h3.row1 span,
.panorama .flex li h3.row2 span{
  display: table-cell;
  vertical-align: middle;
  height: 70px;
  width: 225px;
}

.panorama .flex li h3{
  border-bottom: 1px solid #000;
  border-top: 1px solid #000;
  padding: 6px 0;
  text-align: center;
  font-size: 1.7rem;
  font-weight: bold;
  margin-bottom: 40px;
}

.panorama .flex li p{
  padding: 0 10px;
  font-size: 1.7rem;
}

.panorama .flex li .txt{
  margin-bottom: 40px;
}

.panorama_btn a{
  display: block;
  text-decoration: none;
  color: #fff;
  background: #000080;
  text-align: center;
  width: 96%;
  border-radius: 8px;
  padding: 20px 0;
}

.panorama_btn a:hover{
  opacity: 0.7;
}

.contents .flex{
  width: 972px;
  margin: auto auto 70px;
  justify-content: space-between;
}

.contents img:hover{
  opacity: 0.7;
}

.contents .flex div{
  width: 460px;
}

.contents ul{
  max-width: 600px;

  width: 100%;
  margin: auto;
}

.contents ul li{
  margin: auto auto 95px;
}

.contents ul li .txt{
  margin-top: 40px;
  text-align: center;

}

.contents ul li .txt a{
  color: #000;
  position: relative;
}

.contents ul li .txt a::before{
  content: "";
  display: inline-block;
  position: relative;
  top: 2px;
  background: #000;
  height: calc(1.8rem / 2 * tan(60deg));
  width: 1.5rem;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  margin-right: 5px;
}

.location{
  width: 100%;
  max-width: 640px;
  margin: auto auto 120px;
}

.location{
  text-align: center;
}

.location p{
  font-size: 2.4rem;
}

.location address p , .location address{
  font-size: 2.0rem;
}

.location address .flex{
  width: 100%;
  justify-content: center;
}

.tel-fax span:first-child{
  margin-right: 20px;
}

.access{
  margin: auto auto 120px;
}

.access .gmap{
  width: 100%;
  height: 700px;
  max-height: 100%;
  border: 2px solid #c3c3c3;
}

.access .gmap iframe{
  width: 100%;
  height: 100%;
}

.support-guide{
  background: #bdb76b;


  margin: auto auto 120px;
  padding: 60px 0;
}

.support-guide .img{
  width: 374px;
  margin: auto auto 25px;
}

.support-guide h2{
  text-align: center;
  font-size: 2.5rem;
  margin-bottom: 40px;
}

.useful{
  margin-bottom: 120px;
}

.useful .flex{
  justify-content: center;
}

.useful li{
  width: 230px;
  margin: 0 10px;
}

.useful li a:hover{
  opacity: 0.7;
}

.link-area{
  background: #e8e8e8;
  margin-bottom: 120px;
}

.link-area .flex{
  padding: 45px;
  justify-content: space-between;
}

.link-area .flex dl{
  width: 31%;
}

.link-area .flex dt{
  font-weight: bold;
  margin-bottom: 10px;
}

.link-area .flex dd{
  font-size: 1.4rem;
  margin-bottom: 10px;
  text-indent: -1.4em;
  padding-left: 1.4em;
}

.link-area .flex dd::before{
  content: "";
  width: 8px;
  height: 8px;
  border-right: 2px solid #000;
  border-top: 2px solid #000;
  display: inline-block;
  transform: rotate(45deg);
  margin-right: 10px;
}

.link-area .flex dl dt:nth-of-type(n+2){
  margin-top: 35px;
}

.link-area .flex dd a{
  color: #000;
}

.connection{
  background: #c3c3c3;
  margin-bottom: 120px;
}

.connection .block01{
  padding: 45px;
}

.connection h2{
  border-bottom: 1px solid #000;
  font-size: 1.4rem;
}

.connection h2,
.connection ul{
  padding: 10px;
}

.connection li::before{
  content: "";
  width: 8px;
  height: 8px;
  border-right: 2px solid #000;
  border-top: 2px solid #000;
  display: inline-block;
  transform: rotate(45deg);
  margin-right: 10px;
}

.connection li a{
  color: #000;
  font-size: 1.4rem;
}

/*top end*/

/*footer*/
#footer{
  text-align: center;
  padding-bottom: 120px;
}

#footer h6{
  font-weight: bold;
  font-size: 1.8rem;
}

#footer h6 span{
  margin-right: 1.6rem;
}

#footer p, #footer address, #copyright{
  font-size: 1.6rem;
}

#footer address{
  margin-bottom: 40px;
}
/*footer end*/

/* subpage */
.sub_page header{
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
}

/*.sub_page_contents{
  border-left: 1px solid #c3c3c3;
  border-right: 1px solid #c3c3c3;
}*/

.sub_page main{
  position: relative;
}

.sub_page_line{
  position: relative;
  z-index: 1;
}

.sub_page_line::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 1080px;
  height: 100%;
  margin: auto;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
}

.sub_page_line main{/*調整*/
  position: relative;
  z-index: 10;
}

/* subpage end*/

/* residence */
.residence_block h2,
.residence_block h3{
  font-size: 1.9rem;
  text-align: center;
  font-weight: bold;
}

.residence_block h3{
  margin-bottom: 70px;
}

.residence_block p{
  font-size: 1.8rem;
  line-height: 2;
  margin-bottom: 60px;
}

.residence_img{
  max-width: 960px;
  width: 100%;
  margin: auto auto 100px;
}

.residence_type .txt{
  font-size: 2.0rem;
  text-align: center;
  margin-bottom: 55px;
}

.residence_type{
  padding: 0 10px;
  margin-bottom: 120px;
}

.residence_type .is-layout-flex{
  justify-content: space-between;
}

.residence_type .wp-block-column{
  width: 505px;
  border: 4px solid #ffd700;
  padding: 15px;
  border-radius: 15px;
}

.residence_type .wp-block-column figure{
  width: 315px;
  margin: auto auto auto 0;
}

.residence_type h2{
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 25px;
}

.residence_type .wp-block-column p{
  line-height: 2;
  margin-bottom: 50px;
}

.residence_type .wp-block-column p:last-child{
  text-align: right;
  margin-bottom: 0;
}

.residence_map_area p{
  text-align: center;
  font-size: 2.0rem;
  font-weight: bold;
}

.residence_map_area figure{
  max-width: 700px;
  width: 100%;
  margin: auto auto 50px;
}

.residence_map_area .area_ex{
  padding: 0 10px;
}

.residence_map_area .area_ex .flex{
  justify-content: space-between;
}

.residence_map_area .area_ex li{
  border: 2px solid #debecc;
  padding: 10px;
  border-radius: 15px;
  width: 340px;
  margin-bottom: 15px;
}

.residence_map_area .area_ex li p{
  font-weight: normal;
  font-size: 1.6rem;
  text-align: left;
}


.residence_map_area .area_ex li span{
  display: block;
  font-size: 2rem;
  font-weight: bold;
  background-color: #a349a4;
  border-radius: 30px;
  color: #fff;
  width: 30px;
  text-align: center;
  margin: auto;
}

/* residence end */

/* heating */
.gray_over{
  background: #eee;
  padding: 50px 0;
  margin-bottom: 120px;
}

.gray_over .heating_txt{
  width: 1080px;
  margin: auto;
  text-align: center;
}

.gray_over .heating_txt dt{
  width: 586px;
  margin: auto auto 40px;
}

.gray_over .heating_txt dd{
  text-align: center;
  margin-bottom: 100px;
}

.gray_over .heating_txt dd p{
  line-height: 2;
}

.heating_img_block{
  position: relative;
}

.heating_img_block .fukidashi{
  width: 274px;
  position: absolute;
  right: 0;
  top: -200px;
}

.heating_img_block .wp-block-group-is-layout-flex{
  justify-content: space-between;
}

.heating_img_block .wp-block-group-is-layout-flex figure{
  width: 240px;
}

.fuel_block{
  width: 1060px;
  margin: auto auto 120px;
  background: #eee;
  border-radius: 8px;
  padding: 25px;
}








.fuel_block .fuel_type{
  width: 305px;
  background: #dcdcdc;
  border-radius: 8px;
  padding: 25px;
}

.fuel_block .fuel_ex p{
  font-weight: bold;
  margin-left: 30px;
  line-height: 2;
}

.refil_block{
  width: 743px;
  margin: auto;
  border: 3px solid #e17b34;
  border-radius: 8px;
  padding: 22px;
  text-align: center;
  margin-bottom: 120px;
}

.refil_block h2{
  font-weight: bold;
  margin-bottom: 15px;
}

/* heating end */

/* flow */
.flow_title{
  width: 300px;
  margin: auto auto 45px;
}

.flow_block{
  padding: 0 10px;
}

.flow_block .txt{
  width: 538px;
}

.flow_block .txt h2{
  font-size: 2.0rem;
  margin-bottom: 30px;
}

.flow_block .txt h2 span,
.flow_block03 .txt h2 span{
  display: block;
  font-style: italic;
  font-size: 2.7rem;
  color: #4d718e;
  margin-bottom: 20px;
}

.flow_block .txt h3,
.flow_block02 h3{
  font-weight: bold;
  font-size: 1.9rem;
  margin-bottom: 20px;
}

.flow_block02 h3{
  margin-left: 2rem;
}

.flow_block .txt p{
  line-height: 2;
}

.flow_block .img{
  width: calc( 100% - 538px );
  text-align: center;
}

.flow_block .img.visit img,
.flow_block .img.phone img{
  margin: 60px auto;
}

.flow_block .img.visit img{
  width: 261px;
}

.flow_block .img.phone img{
  width: 350px;
}

.flow_block .calender{
  width: 390px;
  margin: auto;
  border: 2px solid #7f7f7f;
  padding: 15px;
}

.flow_block .calender_img{
  width: 128px;
  margin: auto auto 100px;
}

.flow_block02{
  margin-bottom: 100px;
}

.flow_block02 .flex{
  align-items: center;
  justify-content: space-between;
}

.flow_block02 .flex div{
  background: #eee;
  width: calc( 50% - 30px );
  padding: 40px 35px;
}

.flow_block02 .flex div h4{
  font-weight: bold;
  margin-bottom: 20px;
}

.flow_block02 .flex div.txt p{
  line-height: 2;
}

.flow_block02 .flex div:nth-of-type(2){
  width: 60px;
  background: none;
  padding: 0;
}

.flow_block02 .flex div:nth-of-type(2) p{
  border: 2px solid #eee;
  width: 56px;
  height: 56px;
  border-radius: 28px;
  color: #000;
  font-weight: bold;
  margin: auto;
}

.flow_block02 .flex div:nth-of-type(2) p span{
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  width: 56px;
  height: 56px;
}

.flow_block03{
  padding: 0 20px;
}

.flow_block03 h2{
  font-size: 1.9rem;
  margin-bottom: 30px;
}

.flow_block03 .fl,
.flow_block03 .fr{
  width: 540px;
  position: relative;
}

.flow_block03 .height_ajust{
  padding-bottom: 200px;
}

.flow_block03 .height_ajust02{
  padding-top: 30px;
}

.flow_block03 .img02{
  position: absolute;
}

.flow_block03 .img02.tel,
.flow_block03 .img02.mail{
  width: 100px;
}

.flow_block03 .img02.mail{
  left: 170px;
  top: 180px;
}

.flow_block03 .img02.tel{
  top: 230px;
}

.flow_block03 .img02.hanko{
  width: 183px;
  top: 200px;
  right: 0;
}

.flow_block03 .img02.key{
  width: 150px;
  top: 0;
  right: 150px;
}

.room_block{
  width: 375px;
  margin: 90px auto 200px;
}

/* flow end */

/* faq */
.faq_title{
  width: 468px;
  margin: auto auto 100px;
}

.faq_block{
  width: 935px;
  margin: auto auto 200px;
}

.faq_block dt{
  font-size: 2.0rem;
  border-bottom: 1px solid #000;
  padding: 0 0 20px 10px;
  cursor: pointer;
}

.faq_block dt,
.faq_block dd{
  position: relative;
  padding-top: 40px;
  padding-left: 60px;
}

.faq_block dt::before{
  background-image: url(../img/icon/Q.png);
}

.faq_block dt::after{
  content: '';
  width: 10px;
  height: 10px;
  border-top: solid 2px #7d7d7d;
  border-right: solid 2px #7d7d7d;
  position: absolute;
  right: 10px;
  top: 10px;
  bottom: 0;
  margin: auto;
  transform: rotate(135deg);
}

.faq_block dt.active::after{
  transform: rotate(-45deg);
}

.faq_block dd::before{
  background-image: url(../img/icon/A.png);
}

.faq_block dt::before,
.faq_block dd::before{
  position: absolute;
  display: inline-block;
  content: "";
  width: 56px;
  height: 50px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  left: 0;
  top:  26px;
}

.faq_block dd{
  margin-bottom: 90px;
}

.faq_block dd p{
  line-height: 2;
}

/* commission free */
.commission_free_title{
  text-align: center;
}

.commission_free_title h2,
.commission_free_title h3{
  font-weight: bold;
  font-size: 2.0rem;
}

.commission_free_title h2{
  margin-bottom: 40px;
}

.commission_free_title h3{
  align-items: center;
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
}

.commission_free_title h3::before,
.commission_free_title h3::after{
background-color: #ed1c24;
  border-radius: 3px;
  content: "";
  height: 3px;
  width: 50px;
}

.commission_free_title h3::before{
  margin-right: 10px;
  transform: rotate(45deg);
}

.commission_free_title h3::after{
  margin-left: 10px;
  transform: rotate(-45deg); 
}

.commission_free_point p{
  font-size: 1.2rem;
  text-align: center;
  margin-bottom: 80px;
}

.commission_block{
  width: 885px;
  margin: auto auto 100px;
}

.commission_title_img{
  width: 251px;
  margin: auto auto 10px;
}

.commission_banner{

  border: 2px solid #a4d5bd;
  background: #eee;
}

.commission_banner .is-layout-flex{
  align-items: stretch;
  flex-grow: 1;
}

.commission_banner .is-layout-flex figure{
  width: 430px;
  font-size: 0;
  margin-right: 0;
}

.commission_banner .is-layout-flex figure img{
  vertical-align: bottom;
  font-size: 0;
}

.commission_banner .is-layout-flex div.is-layout-constrained{
  width: calc( 100% - 426px );
  padding: 20px;
  text-align: center;
  margin-left: 0;
}

.commission_banner.commission_free_page .is-layout-flex div.is-layout-constrained{
  width: 100%;
  padding: 20px;
  text-align: center;
  margin-left: 0;
}

.commission_banner .is-layout-flex div.is-layout-constrained h3{
  font-weight: bold;
  margin-bottom: 30px;
}

.commission_banner .is-layout-flex div.is-layout-constrained p{
  line-height: 2;
}

.commission_contents_data{
  width: 1080px;
  margin: auto;
  position: relative;
  text-align: center;
}

.commission_contents_data .commission_contents_title{
  width: 180px;
  margin: auto auto 50px;
}

.commission_contents_data h2{
  font-size: 2.0rem;
  font-weight: bold;
  margin-bottom: 40px;
}

.commission_contents_data p{
  line-height: 3;
}

.commission_contents_img{
  position: absolute;
  top: 180px;
}

.commission_contents_img.left{
  left: 20px;
}

.commission_contents_img.right{
  right: 20px;
}

.commission_contents_img.no01{
  width: 240px;
}

.commission_contents_img.no02{
  width: 254px;
}

.commission_contents_img.no03{









  width: 360px;
}

.commission_contents_img.no04{
  width: 250px;
}

/* commission free end */

/* early ect kyuupage */
#foreign #content-link{
			margin:30px 0;
		}
		#foreign #content-link li{
			width:100%;
			margin-bottom:20px;
			position:relative;

		}
		#foreign #content-link a{
			display:block;
			text-align:center;
			font-size:110%;
			border-radius:10px;
			color:#fff;
			padding:1em 1em 2em 1em;
			line-height:1.25;
			text-decoration:none;
		}
		#foreign #content-link a:after{
			display:block;
			position:absolute;
			bottom:0;
			left:50%;
			font-size:140%;
			font-family: "fontello";
			content: '\e806';
			color:#fff;
		}

		#foreign #content-link li:nth-child(1) a{
			background:#2660AD;
		}

		#foreign #content-link li:nth-child(2) a{
			background:#cc6d00;
		}

		#foreign #content-link li:nth-child(3) a{
			background:#009442;
		}

		#foreign #step h2{
			border-color:#2660AD;

			color:#2660AD;
		}
		#foreign #faq1 h2{

			border-color:#cc6d00;
			color:#cc6d00;
		}

		#foreign #faq2 h2{


			border-color:#009442;


			color:#009442;
		}
		#foreign main{
			position:relative;
			padding-top:60px;
		}
		#foreign main h2{
			margin-top:60px;
			letter-spacing:0;
		}
		#foreign p.lead{
			margin-top:0;
		}
		#foreign #step ul{
			margin-top:0.25em;
		}
		#foreign #step li{
			position:relative;
		}
		#foreign #step h3{
			border:none;
			background:#00a0e9;
			color:#fff;
			margin:0;
			text-align:center;
			padding:1em 0.75em 0.25em 0.75em;
			cursor:pointer;
			position:relative;
		}
		#foreign #step h3:after{
			display:block;
			font-size:140%;
			font-family: "fontello";























			content: '\e806';
			color:#fff100;
			font-weight:normal;
			text-align:center;
		}
		#foreign #step li:not(:last-child) h3{
			border-bottom:1px solid rgba(255,255,255,0.35);


		}
		#foreign #step li:first-child h3{

			border-radius:8px 8px 0 0;
		}
		#foreign #step li:last-child h3{
			border-radius:0 0 8px 8px;
		}
		#foreign #step h3 span{
			display:block;
			font-size:110%;
			text-transform:uppercase;
			font-weight:normal;

			margin-bottom:0.25em;

		}
		#foreign #step .wrapper{
			padding:15px 5px;
		}
		#foreign .faq{
			margin-top:30px;
		}
		#foreign .faq dt{
			color:#000;
			line-height:1.25;
			font-size:110%;
			margin-bottom:0.5em;
		}
		#foreign .faq dt span{
			font-family:sans-serif;
			font-size:120%;
			font-weight:bold;
			display:inline-block;
			margin-right:1em;
			color:#00c711;
			float:left;
		}
		#foreign .faq dd{
			margin-bottom:1em;
			padding:0.25em 0 1em 3.5em;
			position:relative;
		}
		#foreign .faq dd:not(:last-child){
			border-bottom:1px dotted #999;
		}
		#foreign .faq dd:before{
			font-family:sans-serif;
			font-size:140%;
			color:#00a0e9;
			font-weight:bold;
			content:'A.';
			position:absolute;
			top:6px;
			left:15px;
		}
		#foreign main .rightcolumn,
		#foreign main .rightcolumn2,
		#foreign main .rightcolumn3,
		#foreign main .rightcolumn4,
		#foreign main .rightcolumn5,
		#foreign main .rightcolumn6,
		#foreign #money{
			text-align:center;
		}
		#foreign main img{
			width:70%;
			height:auto;
			margin:10px 0;
		}
		#foreign main .rightcolumn3 img{
			width:85%;
		}
		#foreign main .rightcolumn2 img{
			width:55%;
		}
		#foreign main .rightcolumn img{
			width:100%;
		}
		#foreign .en{
			font-family: 'Roboto', sans-serif;
			font-size:105%;
			line-height:1.5em;
		}
		#foreign .en h1{
			word-spacing:0.25em;
		}
		#foreign .en h2{
			word-spacing:0.25em;
			text-transform:uppercase;
		}
		#foreign #language{
			position:absolute;
			top:20px;
			left:5px;
			display: block;
		}
		#foreign #language li{
			float:left;
			margin-right:5px;
		}
		#foreign #language li a{
			display:block;
			padding:0.75em 1em;
			background:#d5d5d5;
			color:#999;
			text-decoration:none;
		}
		#foreign #language li.current a{
			background:#006ea1;
			color:#fff;
		}

.square_block{
	width: 100%;
	position: relative;
	padding: 7px;

  box-sizing: border-box;
}

.square_block span{
	position: absolute;
	width: 30px;
	height: 30px;
	top: 0;
  bottom: 0;
	left: 10px;
	margin: auto;
}

.bg_green09{
  background-color: #2e8b57;
}

.link_btn:after,
.link_btn01:after{
  display: none;
}

.link_btn:hover,
.link_btn01:hover{
  text-decoration: none;
  opacity: 0.7;
}

.link_btn01{
  border-radius: 10px;
}

.txt_white{
  color: #fff;
}

.border04{
  border-color: #2e8b57!important;
}

.examinee_map{
	width: 100%;
	max-width: 642px;
	margin-left: auto;
	margin-right: auto;
}
.examinee_map img{
	max-width: 100%;
}

.area_block.flex{
  -webkit-justify-content: space-between; /* Safari */
  justify-content:         space-between;	
}

.area_block div{
	width: 48%;
	margin-bottom: 40px;
	border: 3px solid #e6cde3;
	padding: 5px;
	box-sizing: border-box;
}

.area_block div div{
	width: 100%;
	border: 0;
	margin: auto;
	font-weight: bold;
	font-size: 1.2rem;
}

.area_block div div span{
	color: #fff;
	background-color: #a349a4;
	border-radius: 15px;
	width: 30px;
	display: inline-block;
	text-align: center;
	margin-right: 3px;
}

.type_of_housing{
	text-align: center;
}

.type_of_housing .divided{
	text-align: left;
	width: 100%;
	margin:auto auto 30px;
}
.type_of_housing .divided li::before{
	content: "\025c6";
	color: #3a90db;
}

.type_of_housing .divided li:nth-of-type(2n)::before{
	color: #ffcc33;
}

.type_ex{
	margin-bottom: 60px;
}

.type_ex.flex{
  -webkit-justify-content: space-between; /* Safari */
  justify-content:         space-between;	
}

.type_ex div{
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
	background-color: #f5f5f5;
}

.type_ex div h2{
	text-align: center;
	border: 0;
	color: #000;
	background-color: #89c3eb;
	margin: 0 0 20px;
	font-size: 1.0rem;
	padding: 8px 0;
}

.type_ex div:nth-of-type(2n) h2{
	background-color: #ffcc33;
}

.type_ex div p{
	margin: 0;
}

.school_commute div{
	max-width: 700px;
	margin: auto auto 60px;
	background-color: #250d00;
	padding: 20px;
	box-sizing: border-box;
}

.school_commute h2{
	border: 0;
	padding: 0;
	margin: 0 0 20px;
	text-align: center;
}

.school_commute h2 span{
	display: inline-block;
	border-radius: 15px;
	background-color: #a349a4;
	width: 15px;
	height: 15px;
	margin: 0 5px;
}

.school_commute h2 span:nth-of-type(1),
.school_commute h2 span:nth-of-type(10){
	width: 5px;
	height: 5px;
	margin-bottom: 5px;
}

.school_commute h2 span:nth-of-type(2),
.school_commute h2 span:nth-of-type(9){
	width: 8px;
	height: 8px;
	margin-bottom: 4px;
}

.school_commute h2 span:nth-of-type(3),
.school_commute h2 span:nth-of-type(8){
	width: 10px;
	height: 10px;
	margin-bottom: 3px;
}

.school_commute h2 span:nth-of-type(4),
.school_commute h2 span:nth-of-type(7){
	width: 12px;
	height: 12px;
	margin-bottom: 2px;
}

.school_commute h2 span:nth-of-type(5){
	margin-right: 20px;
}

.school_commute h2 span:nth-of-type(6){
	margin-left: 20px;
}


.school_commute div,
.school_commute div h2{
	color: #fff;
}

.school_commute div:nth-of-type(2n),
.school_commute div:nth-of-type(2n) h2{
	color: #000;
}

.school_commute div:nth-of-type(2n){
	background-color: #fff;
	border: 1px solid #000;
}

#examinee hr{
	border: 0;
	border-top: 1px solid #c3c3c3;
	margin-bottom: 50px;
}

.aim_block{
	width: 100%;
	max-width: 800px;
	margin: auto;
}

.aim_block div h2{
	border: 0;
	color: #000;
	text-align: center;
	padding: 10px 0;
	margin-bottom: 20px;
}

/*.aim_block div{
	border-bottom: 3px solid;
	padding-bottom: 30px;
}*/

.aim_block div:nth-of-type(1) h2{
	background-color: #b0c4ce;
	margin-top: 5px;
}

.aim_block div:nth-of-type(1){
	/*border-bottom-color: #b0c4ce;*/
}

.aim_block div:nth-of-type(2) h2{
	background-color: #d2b48c;
}

.aim_block div:nth-of-type(2){
	border-bottom-color: #d2b48c;
}

.aim_block div:nth-of-type(3) h2{
	background-color: #db7093;
}

.aim_block div:nth-of-type(3){
	border-bottom-color: #db7093;

	margin-bottom: 60px;
}

.aim_block h3{
	color: #000;
	border: 0;
	margin-top: 0;
}

.aim_block div table{
	width: 100%;
	max-width: 500px;
	margin: auto;
}

.aim_block div table.max300{
	max-width: 300px;
}

.aim_block div table th,
.aim_block div table td{
	text-align: left;
	vertical-align: top;
	padding: 10px 0;
}

.aim_block div table th{
	width: 80px;
}

.pre-pass.flex{
  -webkit-justify-content: space-between; /* Safari */
  justify-content:         space-between;	
}

.pre-pass div{
	max-width: 380px;
	width: 30%;
}

.pre-pass div img{
	max-width: 100%;
}

@media screen and (max-width:600px){
  .square_block span{
    width: 8px;
    height: 80%;
  }
}

.left_border01{
  border-left: 5px solid;


  padding: 10px;
}

.sideline01{
    display: flex;
    align-items: center;
}
 
.sideline01:before,
.sideline01:after {
    content: "";
    height: 0.8rem;
    flex-grow: 1;
}
 
.sideline01:before {
    margin-right: 0.5rem;
}
 
.sideline01:after {
    margin-left: 0.5rem;
}

.sideline01.bc_blue02::before,
.sideline01.bc_blue02::after{
  background-color: #a4c1d7;
}

.pattern_blue{
	background-color: #b0c4de;
}

.pattern_blue span{
	background-color: #799ac8;

}

.pattern_brown{
	background-color: #d2b48c;
}

.pattern_brown span{
	background-color: #bb8e53;
}

.pattern_yellow{
	background-color: #e9bc00;
}

.pattern_yellow span{
	background-color: #6f5436;
}

.event_calender div{
	max-width: 300px;
	margin: 0 40px 30px 0;
}

.event_calender div img{
	width: 100%;
}

.apply_button01{
	display: block;
	text-align: center;
	padding: 20px 0;
	max-width: 400px;
	width: 100%;
	background-color: #d2ddec;
	border: 5px solid #b0c4de;
	color: #000;
	font-weight: bold;
  box-sizing: border-box;
}

.apply_button01::after{
	display: none;
}

.apply_button01:hover{
	opacity: 0.7;
}

.bg_yellow{
  background-color: #ffcc33;
}
.kowa_start{
	width: 900px;
	margin: auto;
}
.kowa_start div{
	width: 440px;
	margin:0 20px 20px 0;
}

.kowa_start div:nth-of-type(2n){
	margin-right: 0;
}

.hokudai_only{
	width: 410px;
	margin-left: auto;
	margin-right: auto;
}

.relief .flex div{
	max-width: 380px;
	margin-right: 20px;
}

.kowa_map , .kowa_menu{
	width: 350px;
	margin-left: auto;
	margin-right: auto;
}

.kowa_start div{
	margin-bottom: 20px;
}

.relief{
	padding-top: 40px;
	position: relative;
}

.relief .no{
	position: absolute;
	background-color: #fff;
	color: #c3c3c3;
	text-align: center;
	width: 80px;
	height: 80px;
	border-radius: 40px;
	top: -40px;
}

.relief .no span{
	position: relative;
	top: 20px;
	font-size: 1.8rem;
	line-height:1.1;
}

.relief .no span:before{
	content: "ココが安心";
	display: block;
	font-size: 0.8rem;
}

.relief .flex div{
	width: 48%;
}

.relief .flex div:first-child{

	margin-right: 4%;
}
.bg_yellow05{
  background-color: #faf0e5;
}
.kowa_twitter{
	background-color: #dcdcdc;
	padding: 20px;
}

.kowa_twitter .twitter_box{
	max-height: 50rem;
	overflow-y: scroll;
}

.attraction p{
	padding: 10px;
	background-color: #fdede4;
}

.attraction p:nth-of-type(2n){
	background-color: #e8ece9;
}

.attraction p strong{
	font-size: 120%;
}

#osusume_gakusei_kaikan img{
	max-width: 100%;

}

#osusume_gakusei_kaikan section li{
	width: 100%;
	border: 2px solid #c3c3c3;
	margin: 0 0 20px;
	box-sizing: border-box;
}



#osusume_gakusei_kaikan section li a:after{
	display: none;
}

#osusume_gakusei_kaikan section li h2{
	font-size: 115%;
	margin: 3px 3px 5px;
	padding: 2px;
	background-color: #ffd700;
	border: 0;
	color: #000;
}

#osusume_gakusei_kaikan li h2 span{
	border: 1px solid #000;
	display: block;
	padding: 10px 0;
	text-align: center;
}

#osusume_gakusei_kaikan .gakusei_apartment01 li h2{
	background-color: #ffa500;
}

#osusume_gakusei_kaikan .gakusei_apartment02 li h2{
	background-color: #79c06e;
}

#osusume_gakusei_kaikan .gakusei_apartment01 li h2 span ,
#osusume_gakusei_kaikan .gakusei_apartment02 li h2 span{
	border: 0;
}

#osusume_gakusei_kaikan table,
#osusume_gakusei_kaikan td,
#osusume_gakusei_kaikan div{
	box-sizing: border-box;
}

#osusume_gakusei_kaikan table{
	width: calc( 100% - 6px );
	margin: 3px auto 10px;
}

#osusume_gakusei_kaikan table td:nth-of-type(2){
	width: 130px;
	border: 1px solid #c3c3c3;
}

#osusume_gakusei_kaikan table td .outward{
	display: table-cell;
	width: 130px;
	height: 167px;
	text-align: center;
	vertical-align: middle;
}

#osusume_gakusei_kaikan .gakusei_apartment01 table td .outward,
#osusume_gakusei_kaikan .gakusei_apartment02 table td .outward{
	height: 200px;
}

#osusume_gakusei_kaikan table td .outward img{
	max-height: 190px;
}

#osusume_gakusei_kaikan .kowa li .reccomend{
	background-color: #000;
}

#osusume_gakusei_kaikan li h3{
	font-size: 140%;
	margin: 3px 3px 10px;
	border-color: #c3c3c3;
	color: #000;
}


#osusume_gakusei_kaikan li .link a:after{
	display: none;

}

#osusume_gakusei_kaikan li .price01{
	font-size: 120%;
	color: #f00;
}

#osusume_gakusei_kaikan li .price01 span{
	font-size: 140%;
}

#osusume_gakusei_kaikan li .price01 span.price_after{
	font-size: 66%;
}

#osusume_gakusei_kaikan li .reccomend{
	background-color: #000;
	color: #fff;
	padding: 10px;
	font-size: 130%;
}

#osusume_gakusei_kaikan .gakusei_apartment01 li .reccomend,
#osusume_gakusei_kaikan .gakusei_apartment02 li .reccomend{
	background-color: #192f60;
}

/*#osusume_gakusei_kaikan .gakusei_apartment01 li:nth-of-type(2n) .reccomend,
#osusume_gakusei_kaikan .gakusei_apartment02 li:nth-of-type(2n) .reccomend{
	background-color: #dc143c;
}*/

#osusume_gakusei_kaikan li .reccomend.blue{
	background-color: #192f60!important;
}

#osusume_gakusei_kaikan li .reccomend.pink{

	background-color: #dc143c!important;
}

#osusume_gakusei_kaikan li .reccomend.gray{
	background-color: #333333!important;
}

#osusume_gakusei_kaikan li .reccomend p{
	margin-bottom: 10px;
}

#osusume_gakusei_kaikan li .reccomend p a.inline{
	width: auto;
	color: #fff;
	text-decoration: underline;
}

#osusume_gakusei_kaikan li .reccomend a{
	width: 49%;
	/*text-align: center;
	background-color: #ffd700;
	font-size: 66%;
	color: #000;
	padding: 5px 0;*/
}

#osusume_gakusei_kaikan li .reccomend a:first-child{
	margin-right: 2%;
}

#osusume_gakusei_kaikan .n22 li h2{
	background-color: #ccccff;
}

#osusume_gakusei_kaikan .dormy li h2{
	background-color: #ffcc99;
}

#osusume_gakusei_kaikan li .contact_btn{

	padding: 10px;
}

#osusume_gakusei_kaikan li .contact_btn a{
	width: 49%;
}

#osusume_gakusei_kaikan li .contact_btn a:first-child{
	margin-right: 2%;
}

#osusume_gakusei_kaikan .kowa li:nth-of-type(2n) .reccomend{
	background-color: #8b0000; 
}

#osusume_gakusei_kaikan .kowa_dining td{
	width: 100%!important;
	display: block;
	border: 0!important;
}

#osusume_gakusei_kaikan .n22 li .reccomend{
	background-color: #009999;
}

#osusume_gakusei_kaikan .n22 li:nth-of-type(2n) .reccomend{
	background-color: #800000;
}

#osusume_gakusei_kaikan .dormy li .reccomend{
	background-color: #d2691e;
}

#osusume_gakusei_kaikan .dormy li:nth-of-type(2n) .reccomend{
	background-color: #003300;
}

#voice img{
	max-width: 100%;
}









#voice .voice_block li{
	border: 3px solid #f39800;
	padding: 20px;
	box-sizing: border-box;
	margin-bottom: 40px;
}

#voice .voice_block li:nth-of-type(2n){
	border-color: #5a79ba;
}

#voice .voice_block li:last-child{
	margin-bottom: 0;
}

#voice .voice_block li .img{
	max-width: 130px;
}

.merit_block{
  background: #ede4e1;
  padding: 20px;
  margin-bottom: 40px;
}

.sub_page_block .merit_block h2{
  border: none;
  text-align: center;
}

.btn03.bg_red{
  display: block;
  color: #fff;
  background: #ff3737;
  text-align: center;
  border-radius: 8px;
}

.btn03.bg_blue07{
  display: block;
  color: #fff;
  background: #0070c0;
  text-align: center;
  border-radius: 8px;
}

.chance_blcok div{
  background: #f2f2b0;
  padding: 20px;
  margin-bottom: 20px;
}

.chance_blcok div:nth-of-type(2n){
  background: #d3ccd6;
  margin-bottom: 40px;
}

.unifrate_logo{
  margin: auto auto 60px;
  text-align: center;
}

.unifrate_out{
  text-align: center;
}

.madori .flex{
  justify-content: space-between;
}

.madori .flex div{
  width: 45%;
}

.unifrate .madori .flex div{
  text-align: center;
}

.unifrate .plan_view
{
  margin: 40px 0;
}

.sp_floor.bg_brown{
  background: #b9afa5;
  border-radius: 8px;
  text-align: center;
}

.unifrate.bg_over{
	position: relative;
	height: 266px;
}

.unifrate.bg_over .img{
	position: absolute;
	z-index: 100;
	margin: auto;
	width: 360px;
	border: 2px solid #fff;
	left: 0;
	right: 0;
}

.unifrate.bg_over:after{
	display: block;
	content: "";
	left: -30px;
	top: 0;
	bottom: 0;
	margin: auto;
	position: absolute;
	height: 120px;
	width: calc( 100% + 60px );
}

.bg_over.brown:after{
	background-color: #b9afa5;
}

.unifrate_out a{
	display: block;
	background-color: #191970;
	text-align: center;
	color: #fff;
	padding: 20px 0;
}

.unifrate_out a:hover{
	text-decoration: none;
	opacity: 0.7;
}

.unifrate_detail{
	width: 98%;
	margin-left: auto;
	margin-right: auto;
}

.unifrate_detail ul li{
	text-align: center;
	border-bottom: 1px solid #b9afa5;
	padding-bottom: 10px;
	margin-bottom: 10px;
  font-size: 1.6rem;
}

.unifrate_detail ul li:first-child{
	border-top: 1px solid #b9afa5;
	padding-top: 10px;
}

.unifrate_detail ul li span.pc_only{
	display: inline-block;
}

.txt_c{
  text-align: center;
}

/* early end */

/* contact form */
.attention{
  color: red;
  font-size: 1.4rem;
}

.sub_page_block.contact_page_form_block .attention p,
.sub_page_block.contact_form_block .attention p{
  margin-bottom: 0;
}

.sub_page_block.contact_form_block{
  margin-bottom: 120px;
}


.sub_page_block.contact_form_block h2{
  background-color: #fac07a;
  border: 0;
  color: #000;
  text-align: center;
  margin-bottom: 40px;
}

.sub_page_block.contact_form_block table{
  width: 100%;
}

.sub_page_block.contact_form_block td,
.sub_page_block.contact_form_block th{
  border:1px solid #959595;
  padding:0.825em;
  vertical-align: middle;
}
.sub_page_block.contact_form_block th{
  background:#f5f5f5;
  color:#000;
}

.sub_page_block.contact_form_block tr:last-child th{
  vertical-align: top;
}
.sub_page_block.contact_form_block th p:last-child,
.sub_page_block.contact_form_block td p:last-child{
  margin-bottom: 0;
}

.sub_page_block.contact_form_block input,
.sub_page_block.contact_form_block textarea{
  width: 100%;
  border: 1px solid #000;
  font-size: 1.8rem;
  padding: 5px;
}

.sub_page_block.contact_form_block .submit_block{
  text-align: center;
}

.sub_page_block.contact_form_block input.wpcf7-submit{
  background:#0097dd;
  border: 0;
  color: #fff;
  width: 320px;
  margin: auto;
}

.sub_page_block.contact_form_block input.wpcf7-submit:hover{
  opacity: 0.7;
}

/* contact form end */

/* mypage */
.mypage_title{
  margin-bottom: 60px;
}

.mypage_link dl{
  width: 100%;
  max-width: 640px;
  margin: auto auto 60px;
}

.mypage_link dl dt{
  border: 1px solid #c3c3c3;
  border-radius: 7px 7px 0 0;
  background: #eee;
}

.mypage_link dl dd{
  border: 1px solid #c3c3c3;
  border-top: 0;
  border-radius: 0 0 7px 7px;
}

.mypage_link dl dt,
.mypage_link dl dd{
  padding: 25px;
}

.mypage_link dl dd p{
  margin-bottom: 20px;
}

.mypage_link dl dd .login_btn,
.mypage_link dl dd .regist_btn{
  text-align: center;
  width: 100%;
  margin: auto;
}

.mypage_link dl dd .login_btn a{
  display: block;
  background-color: #ed6d35;
  color: #fff;
  padding: 10px;
}

.mypage_link dl dd .regist_btn a{
  display: block;
  border: 5px solid #ed6d35;
  color: #000;
  padding: 10px;
}

.mypage_link dl dd a:hover{
  opacity: 0.7;
  text-decoration: none;
}

.mypage_regist_title{
  border: 3px solid #ed6d35;
  text-align: center;
  font-size: 2.0rem;
  padding: 20px;
  border-radius: 7px;
  margin-bottom: 40px;
}

.regist_block{
  max-width: 800px;
  width: 100%;
  margin:  auto auto 120px;
}

.regist_block dl{
  background: #fef2e5;
  border: 1px solid #eee;
  padding: 20px;
  margin: auto auto 40px;
}

.regist_block dl dt{
}

.regist_block dl dd{
  margin-bottom: 20px;
}

.regist_block dl dd input[type=text],
.regist_block dl dd input[type=password]{
  border: 1px solid #999;
  font-size: 1.8rem;
  padding: 5px;
  width: 100%;
}

.regist_block dl dd .sex li{
  margin-right: 2rem;
}

.regist_block dl dd .password li{
  margin-bottom: 10px;
}

.attention_block{
  border: 2px solid #f00;
  background: #ffe7f7;
  margin-bottom: 20px;
}

.sub_page_block .attention_block p{
  margin: 0;
  text-align: center;
  padding: 10px;
  color: #f00;
}

.regist_block .submit_block.flex{
  width: 100%;
  justify-content: space-between;
}

.regist_block .submit_block.flex div{
  width: 46%;
}

.regist_block .submit_block.flex div.submit_btn{
  width: 100%;
}

.regist_block .submit_btn,
.mypage_block .submit_btn{
  text-align: center;
}

.regist_block .submit_btn button,
.mypage_block .submit_btn button{
  border: 0;
  background: #f77c00;
  color: #fff;
  max-width: 370px;
  width: 100%;
  font-size: 2.0rem;
  margin: auto;
  padding: 20px 0;
  border-radius: 5px;

  cursor: pointer;
}

.regist_block .submit_btn.back button{
  background: #999;
}

.submit_btn button:hover{
  opacity: 0.7;
}

.mypage_block dl dd table{
  width: 100%;
  margin-bottom: 10px;
}

.mypage_block dl dd table th,
.mypage_block dl dd table td{
  border: 1px solid #c3c3c3;
  padding: 5px;
}

.mypage_block dl dd table th{
  background: #eee;
}

.mypage_block dl dd input[type=text],
.mypage_block dl dd input[type=password]{
  border: 1px solid #999;
  font-size: 1.8rem;
  padding: 5px;
  width: 100%;
}

.mypage_block ul li h2{
  font-size: 2.0rem;
  font-weight: bold;
}

.mypage_block ul li h2 a{
  text-decoration: underline;
}

.mypage_block ul li{
  border-bottom: 1px solid #a9a9a9;
  padding: 20px 0;
}

.mypage_block .favorite_data ul{
  width: 100%;
}

.mypage_block .favorite_data .outward{
  max-width: 352px;
  width: 176px;
  max-height: 264px;
  height: 132px;
}

.mypage_block .favorite_data .outward span{
  display: block;
  width: 176px;
  height: 132px;
  border:1px solid #a9a9a9;
  background: #c3c3c3;
  text-align: center;
}

.mypage_block .favorite_data .outward span img{
  width: auto;
  height: 100%;
}

.mypage_block .favorite_data ul li:first-child{
  margin-right: 10px;
}

.mypage_block .favorite_data ul li{
  border-bottom: none;
}

.mypage_block .favorite_data ul li .data_title{
  padding: 4px 20px;
  background: #eeeeee;
}

.mypage_block .favorite_data ul li .data_ex{
  padding: 4px 20px;
}

.mypage_block .favorite_data ul li .data_title span,
.mypage_block .favorite_data ul li .data_ex span{
  display: block;
}

.mypage_block .favorite_data ul li .data_ex span.rent{
  font-size: 1.8rem;
  font-weight:bold;
  color: red;
}

.mypage_block .btn{
  margin: 20px 0 60px;
}

.mypage_block .btn div{
  margin-right: 20px;
}

.mypage_block .btn div:last-child{
  margin-right: 0;
}

.mypage_block .btn a{
  position: relative;
  display: block;
  padding: 8px 20px;
  min-height: 50px;
}

.mypage_block .btn .trash a{
  border:1px solid #a9a9a9;
  background: #eee;
  color: #000;
}

.mypage_block .btn .trash a::before{
  display: inline-block;
  position: relative;
  content: "";
  width: 24px;
  height: 24px;
  background-image: url("/asset/img/icon/trash.png");
  background-position: center;
  background-size: 100%;
  top: 4px;
  margin-right: 10px;
}


.mypage_block .btn .contact a{
  background: #ed6d35;
  color: #fff;
  line-height: 34px;
}



.mypage_block .btn .contact a::after{
  content: '';
  width: 10px;
  height: 10px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  right: 10px;
  top: 2px;
  bottom: 0;
  margin: auto;
  transform: rotate(45deg);
}

/* mypage end */

/* panorama*/
.panorama_list_block h2{
  text-align: center;
  font-size: 2.0rem;
  margin-bottom: 60px;
}

.panorama_list_block h3{
  border-left: 4px solid #fcc800;
  margin-bottom: 14px;
  padding: 2px 8px;
  font-size: 1.8rem;
  font-weight: bold;
}

.panorama_list_block ul{
  margin-bottom: 60px;
}

.panorama_list_block li{
  border: 2px solid #fcc800;
  width: 260px;
  margin: 0 6px 30px 0;
  padding: 8px;
}

.panorama_list_block li:nth-of-type(4n){
  margin-right: 0;
}

.panorama_list_block li .img{
  display: table;
  width: 114px;
  height: 114px;
  margin: 14px auto;
}

.panorama_list_block li .img span{
  display: table-cell;
  width: 114px;
  height: 114px;
  background-color: #e5e5e5;
  text-align: center;
  vertical-align: middle;
  margin: auto;;
}

.panorama_list_block li .img span img{
  width: auto;
  max-height: 100%;
}

.panorama_list_block .panorama_btn.flex{
  justify-content: space-between;
}

.panorama_list_block .panorama_btn div{
  width: 49%;
  margin-bottom: 10px;
}

.panorama_list_block .panorama_btn a{
  width: 100%;
  border-radius: 0;
  font-size: 1.2rem;
  padding: 8px;
  box-sizing: border-box;
  background: #000;
  border: 2px solid #000;
}

.panorama_list_block .panorama_btn div:last-child a{
  background: none;
  color: #000;
  position: relative;
  border: 2px solid #fcc800;
}

.panorama_list_block .panorama_btn div:last-child a::after{
  content: '';
  width: 8px;
  height: 8px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  position: absolute;
  right: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(45deg);
}

/* panorama end */

/* search */
.pankuzu{
  width: 1020px;
  margin: auto auto 100px;
  font-size: 2.0rem;
}

.search_map_block01,
.search_map_block02{
  margin: auto auto 40px;
}

.search_map_block01{
  width: 985px;
}

.search_map_block02{
  width: 985px;
}

.search_map_block01 h2{
  font-size: 2.2rem;
  font-weight: bold;
  color: #004d25;
  margin-bottom: 10px;
  text-align: center;
}

.search_map_block01 .txt{
  font-size: 2.0rem;
}

.search_form_block01{
  width: 1040px;
  margin: auto;
}

.search_form_block01 .form_data{
  margin: auto auto 160px;
}

.search_form_block01 .faculty01{
  margin-bottom: 60px;
}

.search_form_block01 .faculty02{
  margin-bottom: 20px;
}

.search_form_block01 .faculty02{


  margin-bottom: 60px;
}

.search_form_block01 .faculty01 dt,
.search_form_block01 .faculty02 dt{
  background: #deb887;
  font-weight: bold;
  font-size: 2.0rem;
}

.search_form_block01 .faculty02 dt{
  background: #ead7a4;
}

.search_form_block01 .faculty01 dt,
.search_form_block01 .faculty01 dd,
.search_form_block01 .faculty02 dt,
.search_form_block01 .faculty02 dd{
  border: 1px solid #7f7f7f;
  padding: 30px 35px;
}

.search_form_block01 .faculty01 dd,
.search_form_block01 .faculty02 dd{
  border-top: 0;
}

.search_form_block01 .faculty01 ul,
.search_form_block01 .faculty02 ul{
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.search_form_block01 .faculty01 ul li,
.search_form_block01 .faculty02 ul li{
  max-width: 25%;
  width: 100%;
  margin-bottom: 10px;

}

.search_form_block01 .faculty01 .note{
  font-size: 1.8rem;
  font-weight: bold;
  color: #f00;
}

.area_search{
  margin-bottom: 60px;
}

.area_search .flex{
  justify-content: space-between;
}

.area_search .area_map{
  width: 620px;
}

.area_search .area_data{
  width: calc( 100% - 640px );
}

.area_search .area_map .txt h2{
  font-size: 2.4rem;
  position: relative;
  display: inline-block;
}

.area_search .area_map .txt h2::after{
  content: "";
  display: block;
  position: absolute;
  width: 57px;
  height: 57px;
  background-image: url("/asset/img/icon/loupe.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  right: -70px;
  top: -20px;
}

.area_search .area_map .txt h3{
  font-size: 2.0rem;
  margin-bottom: 30px;
}

.area_search .area_map .txt h2,
.area_search .area_map .txt h3{
  font-weight: bold;
}

.area_search .area_list dt label{
  position: relative;
}

.area_search .area_list dt input[type=checkbox]{
  scale: 1.2;
  position: relative;
  top: -3px;
}

.area_search .area_list dt div{
  display: inline-block;
  margin-left: 10px;
  font-size: 2.0rem;
  font-weight: bold;
  line-height: 30px;
}

.area_search .area_list dt div span{
  display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 20px;
  color: #fff;
  text-align: center;
  margin-right: 5px;
}

.area_search .area_list dt div span{
  background: #c1436f;
}

.area_search .area_list dt:nth-of-type(2) div span{
  background: #00877b;
}

.area_search .area_list dt:nth-of-type(3) div span{
  background: #689dff;
}

.area_search .area_list dt:nth-of-type(4) div span{
  background: #ce662b;
}

.area_search .area_list dt:nth-of-type(5) div span{
  background: #3f1e7a;
}

.area_search .area_list dt:nth-of-type(6) div span{
  background: #da70d6;
}

.area_search .area_list dd{
  border-bottom: 1px solid #7f7f7f;
  padding: 15px;
  margin-bottom: 15px;
}

.request_form_block .area_search .area_list dt p{
  margin-bottom: 0;
  padding-bottom 0;
}

.request_form_block .area_search .area_list dd{
  padding: 0 15px 5px;
  margin-bottom: 15px;
}

.search_add{
  text-align: center;
  margin-bottom: 60px;
}

.search_add .narrow_down{
  width: 574px;
  margin: auto;
}

.search_form_block02,
.search_form_block02 dl{
  margin-bottom: 100px;
}

.search_form_block02 dl dt{
  background: #dcdcdc;
  font-weight: bold;
}

.search_form_block02 dl dt span{
  font-weight: normal;
  margin-left: 3rem;
}

.search_form_block02 dl dt,
.search_form_block02 dl dd{
  border: 1px solid #7f7f7f;
  padding: 30px 20px;
}

.search_form_block02 dl dd{
  border-top: 0;
  border-bottom: 0;
}

.search_form_block02 dl dd:last-child{
  border-bottom: 1px solid;
}

.search_form_block02 dl dd li{
  margin-bottom: 20px;
}

.search_form_block02 dl dd .bukken_type_list li{
  width: 100%;
}

.search_form_block02 dl dd .rent_block.flex{
  width: 100%;
  align-items: center;
  margin-bottom: 30px;
}

.search_form_block02 dl dd .rent_block div{
  width: 33%;
  max-width: 240px;
}

.search_form_block02 dl dd .rent_block div:nth-of-type(2){
  width: 30px;
  text-align: center;
}

.search_form_block02 dl dd select{
  background: none;
  border: 1px solid #7f7f7f;
  padding: 15px;
  width: 100%;
}

.search_form_block02 dd .floor_plan li{
  width: 50%;
}

.search_form_block02 dd .exclusive_area{
  width: 33%;
  max-width: 240px;
}

.search_form_block02 dd .chikunen li{
  width: 25%;
}

.search_form_block02 dd  li{
  width: 25%;
}

.search_form_block02 dd .flex.bukken_type li{
  width: auto;
  margin-right: 2rem;
}

.search_form_block01 .search_btn a{
  display: block;



}

.search_form_block01 .search_btn,
.search_form_block01 .search_btn a,
.search_form_block02 .search_btn{
  text-align: center;
}

.search_form_block01 .search_btn button,
.search_form_block01 .search_btn a,
.search_form_block02 .search_btn button{
  margin: auto;
  color: #fff;
  background: #00608d;
  text-align: center;
  cursor: pointer;
  border: none;
  max-width: 572px;
  width: 90%;
  padding: 40px 0 40px 20px;
  font-size: 2.4rem;
}

.search_form_block01 .search_btn a{
  color: #00608d;
  background: #fff;
  border: 10px solid #00608d;
  padding: 30px 0 30px 20px;
  margin: 60px auto;
}

.search_form_block01 .search_btn button i,
.search_form_block01 .search_btn a i,
.search_form_block02 .search_btn button i{
  position: relative;
}

.search_form_block01 .search_btn button i::before,
.search_form_block01 .search_btn a i::before,
.search_form_block02 .search_btn button i::before{
  content: "";
  width:0;
  height:0;
  border-style: solid;
  border-width: 10px 0 10px 17.3px;
  border-color: transparent transparent transparent #FFFFFF;
  position: absolute;
  top: 4px;
  left: -20px;
  margin: auto 0 auto;
  padding-right: 15px;
}

.search_form_block01 .search_btn a i::before{
  border-color: transparent transparent transparent #00608d;
}

.search_form_block01 .search_btn.jump a i::before{
  border-style: solid;
  border-color: transparent;
  border-width: 17.3px 10px;
  border-top-color: currentColor;
  border-bottom: 0;
  padding: 0;
  top: 7px;
}

.search_form_block01 .search_btn button:hover,
.search_form_block01 .search_btn a:hover,
.search_form_block02 .search_btn button:hover{
  opacity: 0.7;
  text-decoration: none;
}

.student_union_sp_slider_block{
  display: none;
}

.student_union_slider_block.flex{
  justify-content: space-between;
  margin-bottom: 120px;
}

.student_union_slider_block{
  width: 1060px;
  border: 2px solid #c3c3c3;

  border-radius: 10px;
  padding: 70px 25px;
  margin: auto;
}

.student_union_slider_block .txt{
  width: calc( 100% - 500px );
}

.student_union_slider_block .txt h2{
  font-weight:bold;
  font-size: 2.0rem;
}

.student_union_slider_block .student_union_slider{
  width: 450px;
}

.student_union_slider_block .student_union_slider .slick-slide{
  -ms-filter: none;
  filter: none;
}

.student_union_slider_block .student_union_slider .slick-prev,
.student_union_slider_block .student_union_slider .slick-next{
  display: block;
  content: "";
  width: 40px;
  height: 64px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: 5;
}

.student_union_slider_block .student_union_slider .slick-prev:hover,
.student_union_slider_block .student_union_slider .slick-next:hover{
  opacity: 0.7;
}

.student_union_slider_block .student_union_slider .slick-prev{
  background-image: url("/asset/img/search/prev02.png");
  left: -20px;
}

.student_union_slider_block .student_union_slider .slick-next{
  background-image: url("/asset/img/search/next02.png");
  right: -20px;
}

.student_union_slider_block .student_union_slider .slick-prev::before,
.student_union_slider_block .student_union_slider .slick-next::before{
  display: none;
}

.search02 h2{
  text-align: center;
  font-weight: bold;
  font-size: 2.0rem;
  color: #990000;
}

.coop_search_block{
  width: 985px;
  margin: auto auto 120px;
  position: relative;
}

.coop_search_block .img{
  position: absolute;
  width: 125px;
  left: 0;
}

.coop_search_block .txt{
  text-align: center;
  margin: auto;
}

.coop_search_block .txt h2{
  font-weight: bold;
  font-size: 2.0rem;
}

.coop_search_block .txt p{
  line-height: 2;
}

.search03 h2{
  text-align: center;
  font-weight: bold;
  font-size: 2.0rem;
  color: #191970;
}

.hokudai_search_block{

  width: 985px;
  margin: auto auto 120px;
  position: relative;
}

.hokudai_search_block .img{
  position: absolute;
  width: 160px;
  left: 0;
}

.hokudai_search_block .txt{
  text-align: center;
  margin: auto;
}

.hokudai_search_block .txt h2{
  font-weight: bold;
  font-size: 2.0rem;
}

.hokudai_search_block .txt p{
  line-height: 2;
}

.search04 h2{
  text-align: center;

  font-weight: bold;
  font-size: 2.0rem;
  color: #0075c2;
}

.all_electric_block01{
  max-width: 680px;
  width: 100%;
  margin: auto auto 120px;
  text-align: center;
  background: #281a14;
  color: #fff;
  padding: 40px;
  border-radius: 10px;
}

.all_electric_block01 h2{
  font-size: 2.0rem;
  font-weight: bold;
  align-items: center;
  display: flex;
  justify-content: center;

  margin-bottom: 30px;
}

.all_electric_block01 h2::before,
.all_electric_block01 h2::after {
  background-color: #ffd700;
  border-radius: 3px;
  content: "";
  height: 3px;
  width: 40px;
}
.all_electric_block01 h2::before {
  margin-right: 10px;

  transform: rotate(60deg);
}
.all_electric_block01 h2::after {
  margin-left: 10px;

  transform: rotate(-60deg);
}

.all_electric_block01 p{
  line-height: 2;
}

.search01_block{
  width: 100%;
  margin: auto auto 100px;
  background: #ffffe0;
  padding: 60px 0;
}

.search01_block .txt{
  width: 880px;
  margin: auto auto 90px;
  background: #fff;
  border: 2px solid #004d25;
  padding: 35px;
}

.search01_block .txt p{
  margin: auto;
  line-height: 3.2rem;
}

.search01_block .txt p.pc_only{
  text-align: center;
}

.search01_block .search01_btn_block{
  width: 904px;
  margin: auto;
}

.search01_block .search01_btn_block .shows{
  width: 450px;
  margin: auto auto 60px;
}

.search01_block .search01_btn_block .flex{
  justify-content: space-between;
}

.search01_block .search01_btn_block .pc_only .search01a a,
.search01_block .search01_btn_block .pc_only .search01b a{
  display: block;
  width: 400px;
  height: 400px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  text-indent: -9999px;
}

.search01_block .search01_btn_block .pc_only .search01a a{
  background-image: url("/asset/img/search/search01_pc_menu01.png");
}

.search01_block .search01_btn_block .pc_only .search01a a:hover{
  background-image: url("/asset/img/search/search01_pc_menu01b.png");
}

.search01_block .search01_btn_block .pc_only .search01b a{
  background-image: url("/asset/img/search/search01_pc_menu02.png");
}

.search01_block .search01_btn_block .pc_only .search01b a:hover{
  background-image: url("/asset/img/search/search01_pc_menu02b.png");
}

/* search end */

/* request */
.request_form_block h2.request_form_title{
  width: 882px;
  border: 2px solid #a27e39;
  border-radius: 8px;
  padding: 30px;
  font-weight: bold;
  font-size: 2.0rem;
  margin: auto;
  text-align: center;
}

.request_form_block01{
  width: 1040px;
  margin: auto;
}

.request_form_attention{
  padding: 3px;
  border-bottom: 2px solid #a27e39;
  margin: auto;
}

.request_form_attention,
.request_form_block01 table{
  width: 860px;
}

.request_form_block01 table{
  margin: 30px auto;
}

.request_form_block01 table tr th{
  text-align: right;
  padding-right: 10px;
  width: 280px;
}

.request_form_block01 table tr th,
.request_form_block01 table tr td{
  vertical-align: top;
  padding-top: 20px;
  padding-bottom: 20px;
}

.request_form_block01 table tr td{
  padding-left: 20px;
}

.request_form_block01 table tr td .wpcf7-list-item{
  margin: 0 1rem 0.5rem 0;
}

.request_form_block .area_search .area_map .txt h2{
  display: block;
  border: none;
}

.request_form_block .area_search .area_map .txt h2::after{
  display: none;
}






















.request_form_block .area_search .area_map .txt h3{
  position: relative;
  display: inline-block;
  padding: 5px 40px;
}

.request_form_block .area_search .area_map .txt h3::before{
  content: "";
  display: block;
  position: absolute;
  width: 40px;
  height: 40px;
  background-image: url("/asset/img/icon/loupe.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  left:0;
  top: -0;
}

.request_form_block01 .area_search .area_list dt label span{
  font-size: 2rem;
  font-weight: bold;
}

.request_form_block01 .require{
  color: #f00;
}

.request_form_block01 .privacy{
  text-align: center;
  margin: auto auto 60px;
}

.request_form_block01 .submit p input{
  margin-bottom: 10px;  
}

/* request end */

/* search contents */
.search_block{
  width: calc( 100% - 730px );
}

.narrow_down_block{
  display: none;
}

.search_block .search_title{
  border: 8px solid #7f7f7f;
  background-color: #7f7f7f;
  margin-bottom: 30px;
}

.search_block .search_title h2{
  border: 2px solid #fff;
  text-align: center;
  color: #fff;
}

.search_block button{
  width: 100%;
  padding: 25px 0;
  color: #fff;
  border-radius: 8px;
  background-color: #202f55;
  border: 0;
  font-size: 1.8rem;
  cursor: pointer;
}

.search_block button:hover{
  opacity: 0.7;
  text-decoration: none;
}

.search_block button i{
  margin-left: 1rem;
}

.water_heater p,
.budget p,
.gate p,
.floor_plan p,
.facility01 p,
.facility02 p,
.floor_plans p,
.heater p,
.detail p{
  font-weight: bold;
}

.water_heater p span,
.budget p span,
.gate p span,
.floor_plan p span,
.facility01 p span,
.facility02 p span,
.floor_plans p span,
.heater p span,
.detail p span{
  font-weight: normal;
  margin-left: 2rem;
}

#pager.flex{
  justify-content: left;
}

#pager.flex li{
  margin-right: 1rem;
  margin-bottom: 1rem;
}

#pager.flex li:last-child{
  margin-right: 0;
}

.hope_area{
  text-align: center;
  margin-bottom: 60px;
}

.hope_area .choise h2{
  margin-bottom: 20px;
}

.hope_area p span{
  font-weight: normal;
  margin-left: 2rem;
}

.choise_area{
  max-width: 893px;
  margin: auto;
}

.choise_area .flex{
  justify-content: space-between;
}

.choise_area .flex li{
  width: 392px;
  border: 2px solid;
  margin-bottom: 30px;
}

.choise_area .flex li:nth-of-type(1){
  border-color: #00008b;
}

.choise_area .flex li:nth-of-type(2){
  border-color: #dc143c;
}

.choise_area .flex li:nth-of-type(3){
  border-color: #c71585;
}

.choise_area .flex li:nth-of-type(4){
  border-color: #008b8b;
}

.choise_area .flex li input{
  transform: scale(3);
}

.choise_area .flex li{
  display: flex;
  align-items: center;
}

.choise_area .flex li .checkbox{
  text-align: center;
  width: calc( 100% - 298px );
}

.choise_area .flex li .img{
  width: 298px;
}

.arrow{
  width: 67px;
  margin: auto auto 15px;
}

.narrow_down{
  width: 504px;
  margin: auto auto 25px;
}

.narrow_down .txt{
  padding: 20px;
}

.rent_block{
  width: 550px;
  margin: auto auto 60px;
}

.rent_block table{
  width: 100%;
}

.rent_block table th,
.rent_block table td{
  vertical-align: middle;
}

.rent_block table th{
  font-size: 1.8rem;
  width: 158px;
  text-align: left;
}

.rent_block table td{
  width: calc( 100% - 158px );
}

.rent_block table td .flex{
  align-items: center;
  justify-content: space-between;
}

.rent_block table td select{
  background: none;
  border: 1px solid;
  font-size: 1.9rem;
  padding: 20px 40px;
  border-radius: 8px;
  cursor: pointer;
}

.rent_block table td select:hover{
  background-color: #eee;
}

.rent_block .costincluded{
  padding: 20px;
  font-size: 1.9rem;
}

.rent_block .costincluded input[type=checkbox]{
  position: relative;
  transform: scale(1.5);
  vertical-align: middle;
  top: -3px;
  margin-right: 2rem;
}

.distance_block{
  width: 600px;

  margin: auto auto 60px;
}

.distance_block th,
.distance_block td{
  text-align: left;
  vertical-align: top;
}

.distance_block th{
  width: 287px;
}

.distance_block th span{
  display: block;
  font-weight: normal;
}

.distance_block th{
  font-size: 1.9rem;
}

.distance_block td input[type=radio]{
  position: relative;
  transform: scale(1.5);
  vertical-align: middle;
  top: -3px;
  margin-right: 2rem;
}


.distance_block td li{
  margin-bottom: 10px;
}

.searchpage03 button{
  width: 500px;
  display: block;
  margin: auto;
  cursor: pointer;
  padding: 35px;
  text-align: center;
  border: 0;
  background-color: #202f55;
  color: #fff;
  font-size: 2.6rem;
  font-weight: bold;
  
}

.searchpage03 button:hover{
  opacity: 0.7;
  text-decoration: none;
}

.searchpage03 button i{
  margin-left: 1rem;
}

.search_form .radio li{
  display: flex;
}

.search_form .radio li div{
  width: 30px;
}

.search_form .radio li label{
  width: calc( 100% - 30px );
}

.search_form .radio li label span.comment{
  font-size:1.2rem;
}

.search_form .floor_plans li,
.search_form .heater li,
.search_form .detail li{
  display: flex;
}

/* search contents end */

/* search result */
.result_title h2,
.result_title h3{
  font-size: 2rem;
  margin-bottom: 30px;
}

.result_back a{
  display: block;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: #3c3c3c;
  padding: 15px 0;
}

.result_back a:hover{
  opacity: 0.7;
  text-decoration: none;
}

.result_back a span{
  position: relative;
}

.result_back a span::before,
.result_back02 a span::before{
  content: '';
  width: 12px;
  height: 12px;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  position: absolute;
  left: -1.5rem;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(-135deg);
}

.result_title_block.flex,
.search_list.flex{
  justify-content: space-between;
}

.search_list .data ul.flex{
}

.search_list .data li{
  position: relative;
  border: 1px solid #c3c3c3;
  border-radius: 15px;
  padding: 10px;
  width: 49%;
  margin-right: 2%;
  margin-bottom: 30px;
}


.search_list .data li:nth-of-type(2n){
  margin-right: 0;
}
.result_title,
.search_list .data{
  width: calc( 100% - 320px );
}

.result_back,
.search_list .search_block{
  width: 300px;
  height: auto;
}

.result_back02_title{
  font-size: 2rem;
  margin-bottom: 20px;
}

.search_list .search_block .search_contents{
  background-color: #e5f2ff;
  padding: 27px;
}

.search_list .data li div{
  margin-bottom: 5px;
}

.search_list .data li div.flag_data{
  margin-bottom: 10px;
}

.search_list .data li .type{
  border: 1px solid #3f48cc;
  color: #3f48cc;
  display: inline-block;
  padding: 4px 8px;
  margin-bottom: 10px;
}

.search_list .data li .map_no{
  display: inline-block;
  padding: 4px 8px;
  color: #fff;
  position: absolute;
  top: 48px;
  right: 2%;
  background: #990000;
  font-weight: bold;
  text-align: center;
}

.search_list .data li .map_no span{
  display: block;
  font-size: 1rem;
  line-height: 1.2rem;
}

.search_list .data.original_mansion li .map_no{
  background: #191970;
}

.search_list .data.mansion li .map_no{
  background: #0075c2;
}

.search_list .data li .bukken_name{
  font-size: 1.8rem;
  font-weight: bold;
}

.search_list .data li .flex{
  justify-content: space-between;
}

.search_list .data li .flex .outward span{
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  background-color: #e5e5e5;
  border: 1px solid #000;
  width: 100px;
  height: 100px;
}

.search_list .data li .flex .outward img{
  width: auto;
  max-height: 100%;
}

.search_list .data li .flex .data{
  width: 230px;
}

.search_list .data li .flex .data .rent{
  font-size: 1.8rem;
  font-weight: bold;
  color: #f00;
}

.search_list .flex span{
  margin-right: 2%;
}

.search_list .flex span:last-child{
  margin-right: 0;
}

.search_list .flex .reserve_none{
  display: block;
  height: 36.6px;
}


.search_list .reserve01,

.search_list .reserve02{
  /*padding: 2px;
  text-align: center;
  font-size: 1.3rem;*/
  width: 49%;
}

/*.search_list .reserve01{
  background: #c82c55;
  color: #fff;
}

.search_list .reserve02{
  background: #68a4d9;
  color: #fff;
}*/

.search_list .data #pager li{
  position: relative;
  border: none;
  border-radius: 15px;
  padding: 0;
  width: auto;
  margin-right: 2.5rem;
  margin-bottom: 2rem;
}

.search_list .data #pager li#current{
  text-decoration: underline;
}



/* search result end */

/*detail*/
.fovorite_regist{
  font-size: 3rem;
  color: #f00;
}

.property_top_block{
  background-color: #eaeaea;
  padding: 25px 10px;
  margin-top: 35px;
}

.property_top_block .type01,
.property_top_block .type02{
  border: 1px solid;
  background-color: #fff;
  display: inline-block;
  padding: 10px 15px;
  margin-bottom: 15px;
}

.property_top_block .type01{
  border-color: #ed1c24;
}

.property_top_block .type02{
  border-color: #5f66d2;
}

.property_top_block .bukken_title{
  margin-bottom: 40px;
}

.property_top_block .bukken_title h2{
  font-size: 2.0rem;
  font-weight: bold;
}

.property_top_block .bukken_title h2 span{
  font-weight: normal;
  margin-left: 100px;
}


.property_top_block{
  margin-bottom: 80px;
  position: relative;
}

.property_top_block .favorite_minibtn{
  position: absolute;
  top: 20px;
  right: 10px;
}

.property_top_block .favorite_minibtn{
  width: 292px;
}

.property_top_block .slider_block .detail_slider{
  border :1px solid #d2d2d2;
  width: 600px;
  background-color: #fff;
  padding: 50px;
}

.property_top_block .slider_block .detail_slider .slick-list{
  margin: auto;
  width: 500px;
  height: 500px;
  position: relative;
}

.property_top_block .slider_block .detail_slider .slick-slide{
  text-align: center;
  margin: auto;
  width: 500px;
  height: 500px;
  background-color: #fff;
}

.property_top_block .slider_block .detail_slider .slick-slide img{
  max-height: 100%;
  height: auto;
  width: auto;
  max-width: 100%;
  margin: auto;
}

.property_top_block .slider_block .slick_thumb{
  width: calc( 100% - 660px );
}

.detail_block .panorama.flex{
  max-width: 870px;
  width: 100%;
  margin: auto auto 120px;
}

.detail_block .panorama.flex div{
  max-width: 400px;
  width: 50%;
  margin: auto 70px 20px 0;
}

.detail_block .panorama.flex div:nth-of-type(2n){
  margin-right: 0;
}

.detail_block .panorama.flex div a{
  display: block;
  border: 2px solid #191970;
  border-radius: 8px;
  padding: 30px 0;
  text-align: center;
  color: #000;
}

.detail_block .panorama.flex div a:hover{
  text-decoration: none;
  opacity: 0.7;
}

.update_date{
  text-align: right;
}

.property_data_block{
  margin-bottom: 80px;
}

.property_data_block ul li{
  display: flex;
  border-bottom: 1px solid #979797;
  border-right: 1px solid #979797;
}

.property_data_block ul li:first-child{
  border-top: 1px solid #979797;
}

.property_data_block ul li .item{
  border-left: 1px solid #979797;
  width: 164px;
  background-color: #d4d9dc;
  font-weight: bold;
}

.property_data_block ul li .data{
  width: calc( 100% - 164px );
  border-left: 1px solid #979797;
}

.property_data_block ul li.col4 .data{
  width: 360px;
}

.property_data_block ul li .item,
.property_data_block ul li .data{
  padding: 20px 0 20px 10px;
}

.contact_btn02{
  width: 100%;
  max-width: 650px;
  margin: auto auto 80px;
}

.contact_btn02 a{
  width: 100%;
  display: block;
  text-align: center;
  color: #fff;
  font-size: 2.7rem;
  background-color: #942343;
  padding: 35px 0;
  border-radius: 8px;
}

.contact_btn02 a:hover{
  opacity: 0.7;
  text-decoration: none;
}

.contact_btn02 a i{
  margin-left: 1rem;
}

.gmap_i{
  width: 100%;
  margin-bottom: 80px;
}

.gmap_i iframe{
  width: 100%;
  height: 660px;
  border: 1px solid #979797;
}

.detail_contact_block{
  max-width: 515px;
  width: 100%;
  margin: auto auto 80px;
  text-align: center;
}

.detail_contact_block li{
  margin-bottom: 30px;
}

.detail_contact_block li .txt{
  text-align: left;
}

.detail_contact_block .txt{
  text-align: center;
}

.detail_contact_block .txt table th,
.detail_contact_block .txt table td{
  vertical-align: middle;
  text-align: left;
}

.detail_contact_block .txt table th{
  font-weight: bold;

  font-size: 3.6rem;
  padding: 0 25px;
}

.detail_contact_block .txt table td{
}

.detail_contact_block .img:hover{
  opacity: 0.7;
}

.detail_contact_block .line{
  margin-bottom: 80px;
}

.detail_contact_block .line:hover{
  opacity: 0.7;
}

.detail_contact_block .flex{
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}

.detail_contact_block .tel,
.detail_contact_block .time{
  text-align: left;
}

.detail_contact_block .tel{
  font-size: 3rem;
  font-weight: bold;
}

.detail_contact_block .time p{
  font-size: 1.4rem;
  line-height: 1.2;
}

.detail_contact_block .email_btn{
  width: 100%;
}

.email_btn a i{
  margin-right: 2rem;
  font-size: 4rem;
}

.email_btn a{
  display: block;
  border-radius: 8px;
  color: #fff;
  background-color: #191970;
  padding: 20px;
  font-size: 1.8rem;
  position: relative;
}

.email_btn a:hover{
  opacity: 0.7;
  text-decoration: none;
}

.email_btn a span{
  position: relative;
  top: -8px;
}

.slider_block.flex{
  justify-content: space-between;
}

.slider_block.flex .slider{
  width: 600px;
  text-align: center;
}

.slider_block.flex .slider .slick-list{
  position: relative;
  width: 600px;
  height: 680px;
  background-color: #fff;
}

.slider_block.flex .slider .slick-list::before{
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #c7c7c7;
  position: absolute;
  bottom: 80px;
}

.slider_block.flex .slider .slick-list .slider-item{
  width: 100%;
  height: 600px;
  position: relative;
}

.slider_block.flex .slider .slick-list .slider-item img{
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.slider_block.flex .slider .slick-list .slider-item.wid img{
  width: 480px;
  height: auto;
}

.slider_block.flex .slider .slick-list .slider-item.hei img{
  width: auto;
  height: 480px;
}

.slider_block .slick-prev,
.slider_block .slick-next{
  z-index: 20;
  top: 630px;
}

.slider_block .slick-prev{
  left: 44%;  
}

.slider_block .slick-next{
  right: 44%;
}

.slider_block .slick-prev::before,
.slider_block .slick-next::before{
  content: "";
  width: 35px;

  height: 35px;
  display: block;
  background-position: center;
  background-size: 100%;
}

.slider_block .slick-prev::before{
  background-image: url(../img/slider/prev01.png);
}

.slider_block .slick-next::before{
  background-image: url(../img/slider/next01.png);
}

.slider_block.flex .thumbnail{
  width: calc( 100% - 640px );
}

.slider_block.flex .thumbnail .slick-track{
  transform: unset !important;

  width: 100% !important;
  display: flex;
  flex-flow: row wrap;

}

.slider_block.flex .thumbnail .slick-track::before,
.slider_block.flex .thumbnail .slick-track::after{
  display: none;
}

.slider_block.flex .thumbnail .slick-slide{
  cursor: pointer;
  display: block!important;
  float: none !important;
}

.slider_block.flex .thumbnail .slick-slide:hover{
  opacity: 0.7;
}

.slider_block.flex .thumbnail .slick-slide.slider-item{
  width: 100px!important;
  height: 100px;
  border: 1px solid #c7c7c7;
  background-color: #fff;

  position: relative;
  margin-bottom: 10px;
  margin-right: 10px;
}

.slider_block.flex .thumbnail .slick-slide.slider-item img{
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.slider_block.flex .thumbnail .slick-slide.slider-item.hei img{
  width: auto;
  height: 100%;
  margin: auto;
}

.slider_block.flex .thumbnail .slick-slide.slider-item.wid img{
  width: 100%;

  height: auto;
  margin: auto;
}

.slider-area img {
  max-width: 100%;
  display: block;
  height: auto;
}

.slider-area {
  overflow: hidden;
  width: 100%;
  margin: auto;
}

.thumnail .slick-track {
  transform: unset !important;
  width: 100% !important;
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
}

.thumnail .slick-slide {
    display: block!important;
    float: none !important;
    flex: 0 0 47.5%;
}

.property_top_block .slider_block{

  position: relative;
}

.tab_block{
  width: calc( 100% - 640px );
  position: absolute;
  bottom: 0;
  left: 600px;
  right: 0;
  margin: auto;
}

.tab_block.flex{
  justify-content: center;
}


.tab_block div{
  border: 2px solid #c3c3c3;
  color: #c3c3c3;
  padding: 4px 12px;
  text-align: center;
  font-size: 2rem;
  background: #fff;
  cursor: pointer;
}

.tab_block div{
  border: 2px solid #c3c3c3;
  color: #c3c3c3;
  padding: 4px 12px;
  text-align: center;
  font-size: 2rem;
  background: #fff;
  margin-right: 10px;
}

.tab_block div:last-child{
  margin-right: 0;
}

.tab.tab1on .slick-track div:nth-of-type(n+13){
  display: none!important;
}

.tab.tab2on .slick-track div:nth-of-type(-n+12),
.tab.tab2on .slick-track div:nth-of-type(n+25){
  display: none!important;
}

.tab.tab3on .slick-track div:nth-of-type(-n+24){
  display: none!important;
}

.tab_block div.on{
  pointer-events: none;
  border-color: #a27e39;
  color: #a27e39;
}

.reserve_block span{
  font-size: 2.5rem;
  padding: 20px 30px;
  text-align: center;
  color: #fff;
}

.reserve_block span.reserve01{
  background: #c82c55;
  background: #f50415;
}

.reserve_block span.reserve02{
  background: #68a4d9;
}

.reserve_btn{
  margin: 40px 0;
}

.request_block{
  width: 757px;
  margin: auto auto 100px;
}

.request_block .request_txt{
  position: relative;
  font-weight: bold;
  font-size: 2.0rem;
  text-align: center;
  border: 3px dotted #a27e39;
  padding: 30px 0 60px;
  margin-bottom: 100px;
}

.request_block .request_txt span{
  color: #f00;
}

.request_block .request_txt .arrow::after{
  content: "";
  border: 30px solid transparent;
  border-top: 30px solid #a27e39;
  position: absolute;
  height: 0;
  width: 0;
  z-index: 1;
  left: -15px;
  right: 0;
  top: 100%;
  margin: auto;
}

.request_block .request_txt .arrow{
  display: block;
  width: 30px;
  height: 50px;
  position: absolute;

  background: #a27e39;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: auto;
}

.request_block .request_banner{
  max-width: 600px;
  width: 100%;
  margin: auto;
}

.request_block .request_banner:hover{
  opacity: 0.7;
}

/*detail end*/

/* contact */
.sub_page_block.contact_form_block02{
  max-width: 800px;
  margin: auto;
}

.sub_page_block.contact_form_block02 p{
  margin: auto;

}

.sub_page_block.contact_page_form_block h2,
.sub_page_block.contact_form_block02 h2{
  text-align: center;
  background: none;
  border: 2px solid #fac07a;
  border-radius: 6px;
  padding: 25px 0;
  font-size: 2.2rem;
}

.sub_page_block.contact_page_form_block h2{
  margin: 70px auto 30px;
}

.sub_page_block.contact_page_form_block .property h2,
.sub_page_block.contact_form_block02.property h2{
  text-align: center;
  background-color: #ed6d35;
  border: none;
  border-radius: 8px;
  color: #fff;
  font-size: 2.5rem;
  font-weight: normal;
  padding: 22px 0;
  margin: 70px 0;
}

.sub_page_block.contact_page_form_block table,
.sub_page_block.contact_form_block02 table{
  max-width: 700px;
  margin: auto;
}

.sub_page_block.contact_page_form_block table th,
.sub_page_block.contact_page_form_block table td,
.sub_page_block.contact_form_block02 table th,
.sub_page_block.contact_form_block02 table td{
  vertical-align: top;
}

.sub_page_block.contact_page_form_block table td,
.sub_page_block.contact_form_block02.contact table td{
  padding-bottom: 40px;
}

.sub_page_block.contact_page_form_block table th,
.sub_page_block.contact_form_block02.contact table th{
}

.sub_page_block.contact_page_form_block .contact_page_form02 table th{
  padding: 7px;
  text-align: right;
}

.sub_page_block.contact_page_form_block .contact_page_form01 table th,
.sub_page_block.contact_form_block02 table th{
  padding: 7px;
  text-align: right;
}

.sub_page_block.contact_page_form_block .contact_page_form01 table td,
.sub_page_block.contact_form_block02 table td{
  text-align: left;
}

.contact_page_form_block table textarea,
.contact_page_form_block table input[type=text],
.contact_page_form_block table input[type=tel],
.contact_page_form_block table input[type=email],
.contact_form_block02 table textarea,
.contact_form_block02 table input[type=text],
.contact_form_block02 table input[type=tel],
.contact_form_block02 table input[type=email],

.request_form_block table textarea,
.request_form_block table input[type=text],
.request_form_block table input[type=tel],
.request_form_block table input[type=email]{
  border:1px solid #7f7f7f;
  border-radius: 7px;
  padding: 7px;
  font-size: 1.8rem;
  width: 100%;
  max-width: 498px;
}

.sub_page_block.contact_page_form_block .submit,
.sub_page_block.contact_form_block02 .submit,
.request_form_block01 .submit{
  position: relative;
  width: 304px;
  margin: auto;
}

.sub_page_block.contact_page_form_block .submit input,
.sub_page_block.contact_form_block02 .submit input,
.request_form_block01 .submit input{
  position: relative;
  width: 100%;
  display: block;
  margin: auto auto 30px;
  background-color: #313131;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 25px 0;
  font-size: 2.5rem;
  cursor: pointer;
}

.sub_page_block.contact_page_form_block .submit::before,
.sub_page_block.contact_form_block02 .submit::before,
.request_form_block01 .submit::before{
  display: block;
  content: '';
  width: 12px;
  height: 12px;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  position: absolute;
  left: 100px;
  top: 35px;
  margin: auto;
  transform: rotate(45deg);
  z-index: 5;
}

.sub_page_block.contact_page_form_block .submit input:hover,

.sub_page_block.contact_form_block02 .submit input:hover,
.request_form_block01 .submit input:hover{
  opacity: 0.7;
}


.sub_page_block.contact_page_form_block .contact_page_form01 table,
.sub_page_block.contact_form_block02.property table{
  border-top: 1px solid #c3c3c3;
  max-width: 100%;
  width: 100%;
  margin-bottom: 60px;
}

.sub_page_block.contact_form_block02.property table tr{
}

.sub_page_block.contact_page_form_block .contact_page_form01 table tr th,
.sub_page_block.contact_page_form_block .contact_page_form01 table tr td,
.sub_page_block.contact_form_block02.property table tr th,
.sub_page_block.contact_form_block02.property table tr td{
  border-bottom: 1px solid #c3c3c3;
  text-align: left;
  padding: 20px 17px;
  font-size: 1.7rem;
}

.sub_page_block.contact_page_form_block .contact_page_form01 table tr th,
.sub_page_block.contact_form_block02.property table tr th{
  width: 200px;
}

.sub_page_block.contact_page_form_block .contact_page_form01 table tr td,
.sub_page_block.contact_form_block02.property table tr td{
  width: calc( 100% - 220px );
}

.sub_page_block.contact_page_form_block .require,
.sub_page_block.contact_form_block02.property .require{
  color: #f00;
  margin-left: 0.5rem;
}

.sub_page_block.contact_page_form_block .contact_page_form01 select,
.sub_page_block.contact_form_block02.property select{
  background: none;
  border: 1px solid;
  font-size: 1.9rem;
  padding: 15px;
  border-radius: 8px;
  cursor: pointer;
  margin-right: 1rem;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .name li,
.sub_page_block.contact_form_block02.property .name li{
  width: 49%;
  position: relative;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .name li label,
.sub_page_block.contact_form_block02.property .name li label{
  display: inline-block;
  width: 100%;
  padding-left: 3.6rem;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .name li label{
  width: 100%;
}

.sub_page_block.contact_page_form_block .name{
  position: relative;
}

.sub_page_block.contact_page_form_block .before_contents{
  position: absolute;
  top: 3px;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .name li label input{
  width: 90%;
  margin-left: auto;
}

.sub_page_block.contact_form_block02.property .name li label input{
  width: 100%;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .name p span,
.sub_page_block.contact_form_block02.property .name p span{
  display: inline-block;
  margin-right: 10px;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .name p span.kan,
.sub_page_block.contact_form_block02.property .name p span.kan{
  padding-left: 1.6rem;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .kubun ul.flex{
  justify-content: space-between;  
}

.sub_page_block.contact_page_form_block .contact_page_form01 .kubun .flex li{
  width: 50%;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .kubun .flex li input{
  width: 85%;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .kubun .flex li .after_contents{
  margin-left: 5px;
}

.sub_page_block.contact_page_form_block .contact_page_form01 ul.note,
.sub_page_block.contact_form_block02 ul.note{
  padding: 0 0 0 10px;
}

.sub_page_block.contact_page_form_block .contact_page_form01 .note li p,
.sub_page_block.contact_form_block02 .note li p{
  margin: 0;
  font-size: 1.2rem;
  color: #555;
  padding-left:1rem;
  text-indent:-1rem;
}

.sub_page_block.contact_form_block02 .hidden_data{
  padding: 10px 20px;
}

.sub_page_block.contact_form_block02 .desired.hidden_data .flex li{
  width: 26%;
}

.sub_page_block.contact_form_block02 .hidden_data .flex li{
  width: 49%;
  position: relative;
}

.sub_page_block.contact_form_block02 .hidden_data .flex li input{
  width: 82%;
}

.sub_page_block.contact_form_block02 .hidden_data .flex li span{
  /*! display: inline-block; */
  margin-left: 5px;
}

.sub_page_block.contact_form_block02 .hidden_data .flex li span.after_contents,
.sub_page_block.contact_form_block02 .hidden_data .flex li span.before_contents,
.sub_page_block.contact_form_block02.property .name p span.before_contents{
  position: absolute;
  top: 5px;
}

.sub_page_block.contact_form_block02 .hidden_data .flex li span.after_contents{
  right: 0;
}

.sub_page_block.contact_form_block02 .hidden_data .flex li span.before_contents{
  left: 0;
}

.sub_page_block.contact_form_block02 .hidden_data p.note{
  font-size: 1.4rem;
  color: #f00;
}

.sub_page_block .contact_title_block p{
  margin-bottom: 5px;
}

.sub_page_block .contact_title_block .mypage_link span{
  color: #ff7f27;
}

.sub_page_block .contact_form_title,
.sub_page_block .contact_page_form01 .wpcf7,
.sub_page_block .contact_page_form02 .wpcf7{
  max-width: 800px;
  margin: auto;
}

.sub_page_block .contact_page_form01{
  margin-bottom: 100px;
}

.sub_page_block .contact_form_title{
  margin-left: auto!important;
  margin-right: auto!important;
}

.sub_page_block.contact_page_title{

  text-align: center;
  font-size: 2.0rem;
  font-weight: bold;
  border-bottom: 1px solid #c4c4c4;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

/* contact end */

/* sub page */
.sub_page_block{

  width: 1000px;
  margin: auto;
}


.sub_page_block h2{
  font-size: 2.4rem;
  font-weight: bold;
  border-bottom: 1px solid #eee;
  margin-bottom: 20px;
  padding-bottom: 5px;
}

.sub_page_block h3{

  font-size: 2.0rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.sub_page_block p{
  margin-bottom: 20px;

}

.sub_page_block strong{
  font-weight: bold;
}

.sub_page_block .contact_btn a{
	background: #fac07a;
	color: #000;
	width: 100%;
	display: block;
	font-size: 100%;
	padding: 0.825em 0;
	border: 0;
  text-align: center;
}


.sub_page_block .contact_btn a:hover{
  opacity: 0.7;
  text-decoration: none;
}

.sub_page_block .contact_banner{
  max-width: 517px;
  width: 100%;
  margin: 0 0 60px;
}

.sub_page_block .contact_banner img:hover{
  opacity: 0.7;
}

/* sub page end */

/*other*/
.fl{
  float: left;
}

.fr{
  float: right;

}

.cl{
  overflow: hidden;
}

.title01{
  position: relative;
  font-size: 2.5rem;
  text-align: center;
  margin-bottom: 80px;
}

.title01::after{
  content: '';
	display: block;
	position: absolute;
	left: 50%; /* 位置調整 */
	transform: translate(-50%); /* 位置調整 */
	bottom: -30px; /* 下線の上下位置調整 */
	width: 60px; /* 下線の幅 */
	height: 2px; /* 下線の太さ */
	background-color: #2a2a2a; /* 下線の色 */
}

.title02{
  font-size: 2.5rem;
  text-align: center;

  margin-bottom: 50px;
}


.title03{
  background: #3399ff;
  text-align: center;
  padding: 15px 0;
  margin-bottom: 30px;
}

.title03 p{
  color: #fff;
  font-size: 2.4rem;
  font-weight: bold;
  margin: 0;
}

.title04{}

.title05{
  text-align: center;
  font-size: 2.0rem;

  font-weight: bold;
  margin-bottom: 40px;
}

.sub_title01{
  display: flex;
  align-items: center;
  font-size: 3rem;
  margin-bottom: 50px;
}
 
.sub_title01::before,
.sub_title01::after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #666;
}

.sub_title01::before {
  margin-right: 2rem;
}

.sub_title01::after {
  margin-left: 2rem;
}

.sub_title02{
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 20px;
}
 
.sub_title02::before,
.sub_title02::after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #666;
}

.sub_title02::before {
  margin-right: 2rem;
}

.sub_title02::after {
  margin-left: 2rem;
}

.line01{
  margin-bottom: 120px;
  border: 0;
  border-top: 1px solid;
}


/*other end*/

/* event */
.tour_block{
  padding: 40px 70px;
  border: 3px solid;
  margin-bottom: 80px;
}

.tour_block h3 span{
  display: block;
  font-size: 2.4rem;
}

.tour_block.tour01{
  border-color: #ffc768;
  background: #ffefd5;
}

.tour_block.tour02{
  border-color: #ff7171;
  background: #ffe0e0;
}

.tour_block .held table{
  width: 100%;
  margin-bottom: 40px;
}

.tour_block .held table th{
  width: 100px;
  font-weight: bold;
  text-align: left;
}

.tour_block .way_to_participate{
  background: #fff;
  padding: 30px;
}

.tour_block .way_to_participate h4{
  font-weight: bold;
  border-bottom: 2px solid #ffc768;
  padding-left: 10px;
  margin-bottom: 20px;
}

.tour_block .way_to_participate li{
  margin-bottom: 20px;
}

.number li{
  text-indent: -2rem;
  padding-left: 2rem;
}

.tour_block.tour02 p{
  margin-bottom: 30px;
}

.tour_block .reserve_date{
  width: 100%;
  max-width: 600px;
  border: 2px solid #828282;
  padding: 20px 40px;
  margin-bottom: 30px;
}

.tour_block .reserve_date table th{
  font-weight: bold;
}

.tour_block .reserve_date table td{
  text-align: right;
}

.tour_block.tour02 .way_to_participate h4{
  border-bottom-color: #ff7171;
}

.visit_tour h2{
  border: none;
}

.visit_tour h3{
  margin-bottom: 60px;
}

.visit_tour dl dt{
  padding: 30px 35px;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 25px;
  background: #daa520;
}

.visit_tour dl dt:nth-of-type(2){
  background: #bcbace;
}

.visit_tour dl dt:nth-of-type(3){
  background: #68a9cf;
}

.visit_tour dl dt:nth-of-type(4){
  background: #e9967a;
}

.visit_tour dl dt:nth-of-type(5){
  background: #87ceeb;
}

.visit_tour dl dt:nth-of-type(6){
  background: #dda0dd;
}

.visit_tour dl dt:nth-of-type(7){
  background: #3cb371;
}

.visit_tour dl dd{
  padding: 0 30px;
}

.visit_tour .course_detail p{
}

.visit_tour .course_detail .flex.multi{
  width: 670px;
  margin: auto;
  justify-content: space-between;
}

.visit_tour .course_detail .flex div{
  padding: 30px 35px;
  width: 310px;
  border: 1px solid #000;
  margin-bottom: 30px;
}

.visit_tour .course_detail .flex.single div{
  width: 440px;
  margin-left: auto;
  margin-right: auto;
}

.visit_tour .course_detail .flex div h3{
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 30px;
}

.visit_tour .course_detail .flex div p{
  margin-bottom: 0;
}

.visit_tour .course_detail .flex div a{
  text-decoration: underline;
  color: #000;
}

.time_table.flex{

  justify-content: space-between;
}

.time_table div{
  width: 450px;
  margin-bottom: 40px;
}

.time_table div:last-child{
  margin-bottom: 80px;
}

.time_table div th,
.time_table div td{
  text-align: center;
  vertical-align: middle;
  padding: 10px;
  border: 1px solid #000;
}

.time_table div th{
  background: #c3c3c3;
  font-weight: bold;
}

.time_table div.sun th{
  background: #deb887;
}

.time_table div td:first-child{
  font-weight: bold;
}

.time_table div td a{
  background: #ffc90e;
  color: #000;
  padding: 5px 10px;
}

.time_table div td a:hover{
  opacity: 0.7;
  text-decoration: none;
}

/* event end */

/* international student */
.international_student .tab{
  width: 100%;
  display: flex;
  margin-bottom: 30px;
  border: 0;
}

.international_student .tab div{
  margin-right: 10px;
  margin-bottom: 30px;
}

.international_student .tab div a{
  background: #006ea1;
  color: #fff;
  padding: 15px 30px;
  border: 0;
}

.international_student .tab div a:hover{
  text-decoration: none;
  opacity: 0.7;
}

.international_student .tab::before{
  display: none;
}

.international_student .tab div.on a{
  background: #d5d5d5;
  color: #999;
  pointer-events: none;
}

.international_student .title_block,
.international_student .contents_block{
  max-width: 950px;
  width: 100%;
  margin: auto;
}

.international_student .title_block{
  margin-bottom: 40px;
}

.international_student .title_block p{
  position: relative;
  padding: 0 70px;
  font-size: 2.2rem;
  font-weight: bold;
}

.international_student .title_block p::before,
.international_student .title_block p::after{
  position: absolute;
  display: inline-block;
  content: "";
  width: 60px;
  height: 110px;
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
  top: 0;
  bottom: 0;
  margin: auto;
}

.international_student .title_block p::after{
  background-image: url("/asset/img/other/attention_line_right.png");
  right: 0;
}

.international_student .title_block p::before{
  background-image: url("/asset/img/other/attention_line_left.png");
  left: 0;
}

.international_student .town{
  width: 100%;
  max-width: 750px;
  margin: auto auto 60px;
}

.international_student .link_block{
  width: 100%;
  max-width: 520px;
  margin: auto auto 60px;
}

.international_student .link_block li span{
  margin-right: 1rem;
}

.international_student .link_block li a{
  font-size: 2.0rem;
  color: #000;
  text-decoration: none;
  border-bottom: 1px solid #0000ff;
}

.international_student .link_block li a:hover{
  color: #0000ff;
}

.international_student .property_data li{
  width: 490px;
  background: #000;
  border-radius: 8px;
  padding: 20px;
  color: #fff;
  margin-right: 20px;
  margin-bottom: 20px;
}

.international_student .property_data li:nth-of-type(2n){
  margin-right: 0;
}

.international_student .property_data li .img.flex div{
  position: relative;
  width: 48%;
  height: 216px;
  margin-right: 4%;
  margin-bottom: 25px;
  background: #fff;
}

.international_student .property_data li .img.flex div img{
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: auto;
  max-height: 100%;
}

.international_student .property_data li .img.flex div:nth-of-type(2n){
  margin-right: 0;
}

.international_student .property_data li .property_name{
  position: relative;
}

.international_student .property_data li .property_name span{
  position: absolute;
  width: 50px;
  height: 50px;
  border-radius: 25px;
  background: #c3c3c3;
  color: #000;
  display: inline-block;
  text-align: center;
  line-height: 50px;
  font-size: 2rem;
}

.international_student .property_data li .property_name p{
  position: relative;
  left: 60px;
  font-size: 2.2rem;
  font-weight: bold;
}

.international_student .property_data li .btn{
  width: 100%;
  text-align: center;
  border-radius: 8px;
  background: #fff;
  margin-bottom: 10px;
}

.international_student .property_data li .btn a{
  position: relative;
  display: block;
  color: #000;
  border-radius: 8px;
  background: #ededed;
  font-size: 2rem;
  font-weight: bold;
  padding: 20px 0 ;
}

.international_student .property_data li .btn.pdf a{
  background: #ff7f27;
  padding: 12px;
}

.international_student .property_data li .btn a:hover{
  text-decoration: none;
  opacity: 0.7;
}

.international_student .property_data li .btn.pdf a::after{
  display: none;
}

.international_student .property_data li .btn a::after{
  position: absolute;
  display: inline-block;
  content: "";
  width: 57px;
  height: 45px;
  background-image:url("/asset/img/icon/ico_mail01.png");
  background-position: center;
  background-size: 100%;
  top: 0;
  bottom: 0;
  margin: auto 20px auto;
}

.international_student .property_data li .btn a span.border{
  margin: auto;
  width: 100px;
  display: block;
  border: 1px solid #000;
}

.international_student h2{
  border: 0;
}

.international_student h3{
  color: #f00;
}

.international_student .goal::before{
  content: "";
  display: block;
  background-image: url("/asset/img/other/attention_line_top.png");
  background-position: center;
  background-size: 100%;
  width: 50px;
  height: 26px;
}

.international_student .step_block{
  margin-bottom: 30px;
}

/*.international_student .step_block{
  position: relative;
}

.international_student .step .number{
  width: 100px;
  height: 100px;
  border-radius: 50px;
  text-align: center;
  background: #00608d;
  color: #fff;
  font-size: 1.8rem;
  line-height: 1;
}

.international_student .step .number div span{
  display: block;
  font-size: 1.8rem;
  font-weight: normal;
  margin-bottom: 10px;
}

.international_student .step .number div{
  display: table-cell;
  font-size: 2.8rem;
  font-weight: bold;
  margin: auto;
  width: 100px;
  height: 100px;
  text-align: center;
  vertical-align: middle;
}

.international_student .step .contents{
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}

.international_student .step .contents ol{
  display: flex;
  word-break: break-all;
  width: 100%;
}

.international_student .step .contents ol li{
  display: inline-block;
  vertical-align: middle;
  line-height: 2.0rem;
  border: 1px solid #00608d;
}

.international_student .step .contents ol li:first-child{
  width: 350px;
  padding-left: 120px;
  font-weight: bold;
  background: #d8e1ed;
  border-right: none;
}

.international_student .step .contents ol li:last-child{
  width: calc( 100% - 356px );
  font-weight: bold;
  padding-left: 55px;
  background-image: url("/asset/img/international_student/step_bg.png");
  background-position: left;
  background-repeat: no-repeat;
  background-size: 45px auto;
  background-color: #fffee8;
  border-left: none;
}*/

/* international student end */

/* entry information */
.sub_page_block.entry_information h2{
  border: none;
}

.sub_page_block.entry_information h2 span{
  font-weight: normal;
  display: block;
  font-size: 1.6rem;
}

.entry_application_banner{
  width: 100%;
  max-width: 812px;
  margin-left: auto;
  margin-right: auto;
}

.entry_application_banner a:hover{
  opacity: 0.7;
}

.entry_information .flow_block{
  padding: 0;
}

.entry_information .step_block li{
  border: 2px solid #cf101a;
  border-radius: 5px;
  padding: 20px;
  margin-bottom: 30px;
}


.entry_information .step_block li .step_no p{
  font-size: 2.0rem;
  font-weight: bold;
  color: #7f7f7f;
 }

.entry_information .step_block li h4{
  font-weight: bold;

  margin: 20px 0;
 }

.entry_information .step_block li .step_no p,
.entry_information .step_block li p{
  margin-bottom: 20px;  
}

.entry_information .step_block li p:last-child{
  margin-bottom: 0;
}

/* entry information end */

/* know here */
.nijumad{
  width: 100%;
  max-width: 240px;
  margin-bottom: 10px;
}

.stove{
  width: 100%;
  max-width: 320px;
  margin-bottom: 30px;
}

/* know here end */

/* hotline */
.hotline_img{
  width: 100%;
  max-width: 1044px;
  margin: 40px auto 60px;
}

.hotline_block{
  border: 3px solid #e60012;
  border-radius: 8px;
  margin: 40px auto 60px;
}

.hotline_block h2{
  background: #e60012;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  margin: 0;
}

.hotline_block dl{
  padding: 20px 30px;
}

.hotline_block dl dt{
  font-weight: bold;
  font-size: 1.8rem;
}

.hotline_block dl dd{
  margin-bottom: 40px;
}

.hotline_block dl dd:last-child,
.hotline_block dl dd p{
  margin-bottom: 0;
}

.hotline_flow_title{
  width: 375px;
  margin: auto auto 60px;
  text-align: center;
  background: #e5e5e5;
  padding: 10px 0;
  font-weight: bold;
  font-size: 1.8rem;
}

.hotline_flow{
  margin-bottom: 80px;
}

.hotline_flow li{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 20px;
  margin-bottom: 40px;
  border-bottom: 1px solid #7e7e7e;
  width: 100%;
}

.hotline_flow li .step{
  width: 90px;
  height: 90px;
}

.hotline_flow li .step div{
  display: table;
  border-radius: 45px;
  background: #e60012;
  width: 90px;
  height: 90px;
}

.hotline_flow li .step div p{
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  font-size: 3.0rem;
  font-weight: bold;
}

.hotline_flow li .step div p span{
  display: block;
  font-size: 1.6rem;
  line-height: 1.6rem;
  margin-bottom: 0;
}

.hotline_flow li .txt{
  width: calc( 100% - 120px );
}

.hotline_btn{
  width: 100%;
  max-width: 770px;
  margin: auto auto 80px;
}

.hotline_btn a{
  position: relative;
  background: #e60012;
  border-radius: 8px;
  display: block;
  color: #fff;
  text-align: center;
  font-size: 3.0rem;
  padding: 25px 0;
}

.hotline_btn a:hover{
  opacity: 0.7;
  text-decoration: none;
}

.hotline_btn a::after{
  position: absolute;
  display: inline-block;
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  transform: rotate(45deg);
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
}

/* hotline end */

/* housing center */
.housing_center .housing_center_btn{
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.housing_center .housing_center_btn a{
  display: block;
  background: #ffb52b;
  border-radius: 8px;
  padding: 40px 0;
  text-align: center;
  color: #000;
  font-size: 2.1rem;
}

.housing_center .housing_center_btn a:hover{
  opacity: 0.7;
  text-decoration: none;
}

.housing_center .housing_center_btn a span{
  position: relative;
}

.housing_center .housing_center_btn a span::after{
  position: absolute;
  display: inline-block;
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  transform: rotate(45deg);
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  top: 0;
  bottom: 0;
  right: -40px;
  margin: auto;
}

.housing_center .flow h3{
  text-align: center;
  margin-bottom: 70px;
}

.housing_center .flow dl{
  position: relative;
  background: #eeeeee;
  padding: 50px 40px;
  margin-bottom: 60px;
}

.housing_center .flow dl::before{
  position: absolute;
  content: "";
  width:0;
  height:0;
  border-style:solid;
  border-width: 0 80px 55px 80px;
  border-color: transparent transparent #eeeeee transparent;
  top: -55px;
  left: 0;
  right: 0;
  margin: auto;
}

.housing_center .flow dl dt{
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 1rem;
}

.housing_center .flow dl dt span{
  display: block;
  font-weight: normal;
  font-size: 2.6rem;
}

.housing_center .flow dl dd{

  margin-bottom: 60px;
}

.housing_center .flow dl dd:last-child,
.housing_center .flow dl dd p{
  margin-bottom: 0;
}

.housing_center .schedule{
  width: 100%;
  max-width: 600px;
  border: 2px solid #c3c3c3;
  padding: 20px 30px;
  margin-bottom: 60px;
}

.housing_center .schedule dl dt{
  font-weight: bold;
}

.housing_center .schedule dl dd{
  border-bottom: 3px dotted #000;
  margin-bottom: 20px;
}

.housing_center .schedule dl dd:last-child{
  margin-bottom: 0;
}


/* housing center end */

/* key */
.key_img{
  width: 100%;
  max-width: 1050px;
  margin-bottom: 60px;
}

.key .key_reserve{
  position: relative;
}

.key .key_reserve::before{
  position: absolute;
  display: inline-block;
  content: "";
  width: 65px;
  height: 65px;
  background: #ffc90e;
  
}

.key .key_reserve p{
  padding: 5px 0 0 80px;
}

.key .prepare{
  width: 50%;
  max-width: 370px;
  border: 2px solid #ffc90e;
  background: #ffffe0;
  padding: 15px 40px;
}

.key .prepare p{
  margin-bottom: 20px;
}

.key .prepare p:last-child{
  margin-bottom: 0;
}

.key .flow li{
  border: 1px solid #c3c3c3;
  border-radius: 8px;
  padding: 30px;
  margin-bottom: 30px;
}

.key .flow li .no{
  color: #7f7f7f;
  font-weight: bold;
  font-size: 2.1rem;
  margin-bottom: 20px;
}

.key .flow li h3{
  font-weight: bold;
  font-size: 2.1rem;
  border-bottom: 3px solid #7f7f7f;
  padding-bottom: 5px;
  margin-bottom: 20px;
}

.key .flow li .txt h4{
  font-weight: bold;
  margin-bottom: 10px;
}

.key .flow li .flex{
  align-items: center;
}

.key .flow li .txt{
  position: relative;
  width: calc( 100% - 570px );
}

.key .flow li .txt::after{
  position: absolute;
  content: "";
  display: inline-block;
  width: 35px;
  height: 35px;
  right: 50px;
  transform: rotate(45deg);
  border-top: solid 2px #7f7f7f;
  border-right: solid 2px #7f7f7f;
  top: 0;
  bottom: 0;
  margin: auto;
}

.key .flow li .btn{
  width: 570px;
}

.key .flow li .btn a{
  display: block;
  border-radius: 8px;
  background: #418bcf;
  color: #fff;
  text-align: center;
  padding: 25px 0;
  font-weight: bold;
}

.key .flow li .btn a:hover{
  text-decoration: none;
  opacity: 0.7;
}

.key .flow li .btn.no01 a{
  background: #418bcf;
}

.key .flow li .btn.no02 a{
  background: #329666;
}

.key .flow li .btn.no03 a{
  background: #c82c55;
}

.key .flow li .btn.no04 a{
  background: #ee7800;
}

.key .flow li .schedule table{}

.key .flow li .schedule th,
.key .flow li .schedule td{
  border: 1px solid #c3c3c3;
  padding: 5px 20px;
}

.key .flow li .schedule th{
  background: #ccd9e3;
}

.key .notes{
  padding: 15px;
  background: #eee;
}

.key .notes dt{
  font-weight: bold;
}

.key .notes dt,
.key .notes dd{
  margin-bottom: 10px;
}

/* key end */

/* reservation */

.reservation_before_passing .reservation_block h3{
  border: 4px solid #00008b;
  background: #ffefd5;
  padding: 20px 0;
  margin-bottom: 50px;
}

.reservation_before_passing .calender{
  width: 100%;
  max-width: 990px;
  margin: auto auto 60px;
  padding: 30px 20px 10px;
  background: #ffefd5;
}

.reservation_before_passing .calender h4{
  text-align: center;
  font-size: 1.7rem;
  font-weight: bold;
  margin-bottom: 20px;
}

.reservation_before_passing .calender h4::before,
.reservation_before_passing .calender h4::after{
  width: 84px;
  height: 14px;
  content: "";
  display: inline-block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
}

.reservation_before_passing .calender h4::after{
  background-image: url(/asset/img/reservation/dia02.png);
  margin-left: 20px;
}

.reservation_before_passing .calender h4::before{
  background-image: url(/asset/img/reservation/dia01.png);
  margin-right: 20px;
}

.reservation_before_passing .calender .img{
  width: 100%;
  max-width: 400px;
}

.reservation_before_passing .calender .txt{
  width: calc( 100% - 420px ) ;
  margin-left: auto;
}



.reservation_before_passing .calender .txt table{
  margin-top: 60px;
  margin-bottom: 20px;
  border-top: 1px solid #7f7f7f;
}
.reservation_before_passing .calender .txt th,
.reservation_before_passing .calender .txt td{
  border-bottom: 1px solid #7f7f7f;
  padding: 10px;
}

.reservation_before_passing .calender .txt th{
  width: 120px;
}

.reservation_before_passing .calender .txt td{
  font-weight: bold;
}

.reservation_before_passing .calender .txt td p{
  margin-bottom: 0;
}

.reservation_before_passing .reservation_date{
  border: 1px solid #00008b;
  padding: 20px;
  border-radius: 15px;
  margin-bottom: 50px;
}

.reservation_before_passing .reservation_date h5{
  font-size: 1.8rem;
  font-weight: bold;
}

.reservation_before_passing .reservation_date h6{
  font-size: 1.5rem;
  padding: 10px;
  border-bottom: 2px solid #00008b;
  margin-bottom: 30px;
}

.reservation_before_passing .reservation_date h2{
  border: none;
}

.reservation_before_passing .reservation_date h3{
  margin-bottom: 60px;
}

.reservation_before_passing .reservation_date ul li{
  border-left: 5px solid #ff7f27;
  padding: 20px 0 20px 10px;
  margin-bottom: 50px;
}

.reservation_before_passing .reservation_date dl dt{
  padding: 30px 35px;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 25px;
  background: #daa520;
}

.reservation_before_passing .reservation_date li:nth-of-type(3) dl dt{
  background: #3cb371;
}

.reservation_before_passing .reservation_date li:nth-of-type(4) dl dt{
  background: #bc64a4;
}

.reservation_before_passing .reservation_date dl dd{
  padding: 0 15px;
}

.reservation_before_passing .reservation_date .course_detail p{
}

.reservation_before_passing .reservation_date .course_detail .flex.multi{
  width: 670px;
  margin: auto;
  justify-content: space-between;
}

.reservation_before_passing .reservation_date .course_detail .flex div{
  padding: 30px 35px;
  width: 310px;
  border: 1px solid #000;
  margin-bottom: 30px;
}

.reservation_before_passing .reservation_date .course_detail .flex.single div{
  width: 440px;
  margin-left: auto;
  margin-right: auto;
}

.reservation_before_passing .reservation_date .course_detail .flex div h3{
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 30px;
  padding: 0;
  border: 0;
  background: none;
}

.reservation_before_passing .reservation_date .course_detail .flex div p{
  margin-bottom: 0;
}

.reservation_before_passing .reservation_date .course_detail .flex div a{
  text-decoration: underline;
  color: #000;
}

.reservation_before_passing .reservation_date .time_table div{
}

.reservation_before_passing .reservation_date .square span{
  color: #00008b;
}

.reservation_before_passing .reservation_date .square p{
  text-indent: -1em;
  margin-left: 1em;
}

.reservation_before_passing .reservation_date .flow{
  background: #ebebeb;
  padding: 20px 10px;
}

.reservation_before_passing .reservation_date .flow ul li{
  border-left: none;
  padding: 0 10px;
  margin-bottom: 30px;
}

.reservation_before_passing .reservation_date .flow h6{
  color: #00008b;
  font-weight: bold;
  font-size: 1.7rem;
}

.reservation_before_passing .reservation_date .after_step{
  background: #fbf7e6;
  padding: 20px 10px;
}

.reservation_before_passing .reservation_date .after_step h6{
  color: #00008b;
  font-weight: bold;
  font-size: 1.7rem;
}

.reservation_before_passing .reservation_date .after_step ul li{
  border-left: none;
  padding: 0 10px;
  margin-bottom: 30px;
}

.reservation_before_passing .reservation_date .after_step ul li p strong{
  color: #00008b;
  font-weight: bold;
}

.reservation_before_passing .time_table div td a{
  background: none;
  padding: 0;
  width: 100%;
  max-width: 90px;
  display: block;
}

.reservation_before_passing .reservation_block .banner{
  width: 100%;
  max-width: 873px;
  margin-left: auto;
  margin-right: auto;
}

.reservation_before_passing .reservation_block .form_banner_block h3{
  border: 0;
  background: none;
  text-align: center;
  line-height: 30px;
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
}

.reservation_before_passing .reservation_block .form_banner_block p.ex{
  text-align: center;
  font-weight: bold;
}

.reservation_before_passing .reservation_block .form_banner_block h3::after,
.reservation_before_passing .reservation_block .form_banner_block h3::before{
  content: "";
  background: #000;
  width: 30px;
  height: 30px;
  display: inline-block;
  position: relative;
  top: 5px;
}

.reservation_before_passing .reservation_block .form_banner_block h3::after{
  margin-left: 15px;
}

.reservation_before_passing .reservation_block .form_banner_block h3::before{
  margin-right: 10px;
}

.reservation_before_passing .reservation_block .form_banner_block .flex{
  justify-content: space-between;
}

.reservation_before_passing .reservation_block .form_banner_block .flex li{
  width: 48%;
  max-width: 489px;
  padding: 20px 2%;
}

.reservation_before_passing .reservation_block .form_banner_block .flex .housing01{
  background: #f6ae54;
}

.reservation_before_passing .reservation_block .form_banner_block .flex .housing02{
  background: #94adda;
}

.reservation_before_passing .reservation_block .form_banner_block .flex li h4{
  text-align: center;
  font-weight: bold;
  margin-bottom: 10px;
}

.reservation_before_passing .reservation_block .form_banner_block .flex li .txt p{
  margin-bottom: 5px;
}

.reservation_before_passing .reservation_block .form_banner_block .flex li .txt p span{
  color: #fff;
}

.reservation_before_passing .reservation_block .form_banner_block .flex li.housing01 .banner{
  margin-top: 30px;
}

.reservation_before_passing .reservation_block .form_banner_block .flex li .pdf{
  margin: 20px 0;
}

.reservation_before_passing .reservation_block .form_banner_block .flex li .pdf:hover,
.reservation_before_passing .reservation_block .form_banner_block .flex li .banner:hover{
  opacity: 0.7;
}

/* reservation end */

/* unifrate n18 */
.unifraten18 .unifrate_ex .img{
  width: 100%;
  max-width: 979px;
  margin: auto;
}

.unifraten18 .unifrate_content{
  width: 100%;
  justify-content: space-between;
  justify-items: top;
}

.unifraten18 .unifrate_content .out{
  width: 315px;
  text-align: center;
}

.unifraten18 .unifrate_content .ex{
  width: 663px;
  text-align: center;
}

.unifraten18 .unifrate_madori .vacancy{
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
  max-width: 494px;
  width: 100%;
}

.unifraten18 .unifrate_madori ul{
  justify-content: space-between;
  width: 100%;
}

.unifraten18 .unifrate_madori li{
  width: 50%;
  max-width: 448px;
}

.unifraten18 .panorama{
  width: 100%;
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
}

.unifraten18 .panorama ul.flex{
  width: 100%;
  justify-content: space-between;
}

.unifraten18 .panorama li{
  width: 100%;
  max-width: 450px;
}

.unifraten18 .panorama li a:hover{
  opacity: 0.7;
}

.unifraten18 .detail_btn a{
  display: block;
  width: 80%;
  max-width: 400px;
  margin: auto auto 60px;
  background: #191970;
  font-size: 2.2rem;
  text-align: center;
  color: #fff;
  padding: 20px 0;
}

.unifraten18 .detail_btn a span{
  position: relative;
}

.unifraten18 .detail_btn a span::after{
  position: absolute;
  content: "";
  left: calc( 100% + 20px );
  top: 0;
  bottom: 0;
  margin: auto;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.unifraten18 .detail_btn a:hover{
  opacity: 0.7;
  text-decoration: none;
}

/* unifrate n18 end */

/* housing entry sapporo hakodate*/
.housing_entry .target_apartment{
  border: 4px solid #00cc66;
  width: 100%;
  max-width: 500px;
}

.housing_entry .target_apartment h3{
  border-bottom: 2px solid #00cc66;
}

.housing_entry.hakodate .target_apartment,
.housing_entry.hakodate .target_apartment h3{
  border-color: #87cefa;
}

.housing_entry .target_apartment p{
  margin-bottom: 0;
}

.housing_entry .target_apartment h3,
.housing_entry .target_apartment p{
  padding: 15px 45px;
}

.housing_entry .entry_merit li{
  background: #ed1c24;
  color: #fff;
  padding: 20px 30px;
  font-size: 2.1rem;
  max-width: 500px;
  margin-bottom: 20px;
}

.housing_entry .entry_merit li:nth-of-type(2){
  background: #1d9842;
}

.housing_entry .entry_merit li:nth-of-type(3){
  background: #3f48cc;
}

.housing_entry .guidance{
  margin-bottom: 60px;
}

.housing_entry .guidance h2{
  border: none;
  margin-bottom: 10px;
  padding-bottom: 0;
}

.housing_entry .guidance h2,
.housing_entry .guidance h3{
  padding-left: 1rem;
}

.housing_entry .guidance h3{
  margin-bottom: 20px;
}

.housing_entry .guidance h4{
  margin-bottom: 20px;
}

.housing_entry .guidance h4 span{
  color: #00cc66;
}

.housing_entry.hakodate .guidance h4 span{
  color: #0787d3;
}

.housing_entry .guidance li{
  border: 3px solid #dcdcdc;
  margin-bottom: 60px;
  padding: 25px;
}

.housing_entry .guidance li:last-child{
  margin-bottom: 20px;
}

.housing_entry .guidance li h5{
  max-width: 160px;
  text-align: center;
  font-size: 2.1rem;
  font-weight: bold;
  background: #00cc66;
  color: #fff;
  padding: 10px;
}

.housing_entry.hakodate .guidance li h5{
  max-width: 200px;
  background: #0787d3;
}

.housing_entry .guidance li .season{
  padding: 30px 30px 0;
}

.housing_entry .guidance li .season p{
  margin: auto auto 20px;
}

.housing_entry .application{
  margin-bottom: 60px;
}

.housing_entry .application h2{
  text-align: center;
  border: none;
  font-weight: normal;
}

.housing_entry .application .flex{
  justify-content: space-between;
}

.housing_entry .application .flex li h3{
  font-size: 1.8rem;
}

.housing_entry .application .flex li{
  background: #dcdcdc;
  width: 483px;
  padding: 20px 30px;
  border-radius: 8px;
}

.housing_entry .application .flex li .business_hours{
  padding-left: 80px;
}

.housing_entry .banner a:hover{
  opacity: 0.7;
}

.housing_entry .flow{
  margin-bottom: 60px;
}

.housing_entry .flow li{
  background: #bee0c2;
  padding: 30px;
  margin-bottom: 30px;
}

.housing_entry.hakodate .flow li{
  background: #bbe2f1;
}

.housing_entry .flow li:nth-of-type(2n+1){
  background: #f5f5dc;
}

.housing_entry .flow li .no{
  font-size: 2.4rem;
  margin-bottom: 20px;
}

.housing_entry .flow li .banner{
  max-width: 866px;
  width: 100%;
  margin: auto;
}

.housing_entry .notes{
  margin-bottom: 100px;
}

.property_list_col2 li{
	width: calc( 50% - 20px );
	margin: 0 40px 20px 0;
  border: 2px solid #c3c3c3;
}

.property_list_col2 li .price01{
	font-size: 160%;
	color: #f00;
}

.property_list_col2 li .price01 span{
	font-size: 2.8rem;
}

.property_list_col2 li .reccomend{
	font-size: 2rem;
  padding: 10px;
}

.property_list_col2 li:nth-of-type(2n){
	margin-right: 0;
}

.property_list_col2 li .reccomend,
.property_list_col2 li:nth-of-type(4) .reccomend,
.property_list_col2 li:nth-of-type(8) .reccomend{
	background-color: #000;
}

.property_list_col2 li:nth-of-type(2) .reccomend,
.property_list_col2 li:nth-of-type(3) .reccomend,
.property_list_col2 li:nth-of-type(6) .reccomend,
.property_list_col2 li:nth-of-type(7) .reccomend{
	background-color: #8b0000; 
}

.property_list_col2 li .reccomend p{
  color: #fff;
	margin-bottom: 0;
}

.property_list_col2li .reccomend a:hover,
.property_list_col2 li .contact_btn a:hover{
	opacity: 0.7;
	text-decoration: none;
}

.property_list_col2 li h2 span{
  border: 1px solid #000;
  display: block;
  padding: 10px 0;
  text-align: center;
}

.property_list_col2 li h2{
  font-size: 115%;
  margin: 3px 3px 5px;
  padding: 2px;
  background-color: #ffd700;
  border: 0;
  color: #000;
}


.property_list_col2 li h2{
  background-color: #ffd700;
}

.property_list_col2 li table,
.property_list_col2 li td,
.property_list_col2 li div{
  box-sizing: border-box;
  vertical-align: top;
}

.property_list_col2 li table{
  width: calc( 100% - 6px );
  margin: 3px auto 10px;
}

.property_list_col2 li table td:nth-of-type(2){
  width: 130px;
}

.property_list_col2 li table td .outward{
  display: table-cell;
  width: 130px;
  height: 130px;
  text-align: center;
  vertical-align: middle;
  border: 1px solid #c3c3c3;
}

.property_list_col2 li table td .outward img{
  max-height: 190px;
}

.property_list_col2 li h3{
  font-size: 2.2rem;
  margin: 3px 3px 10px;
  border-color: #c3c3c3;
  color: #000;
  border-bottom: 1px solid #000;
}

.property_list_col2 li h3 span{
  font-size: 1.4rem;
  display: block;
  margin: 0;
}

.sub_page_block .property_list_col2 li .contact_btn a{
  background: none;
  width: 362px;
  margin: auto auto 0;
}

.property_list_col2 li div.link{
  margin: 15px 0 20px;
  text-align: center;
}


/* housing entry end*/

.not-found{
  text-align: center;
  margin: 6rem auto 10rem;
}