@charset "UTF-8";
html {
	position: relative!important;
	z-index: 0!important;
    
}
#container {
	position: relative;
	z-index: 0;
    overflow: hidden;
}
/*--------------------------
 BR
----------------------------*/
.BRPC {
  
}
.BRSM {
    display: none!important;  
}
/*--------------------------
 FIX
----------------------------*/
.gotop {
	position: fixed;
	bottom: 30px;
	right: 30px;
	text-decoration: none;
	color: white;
	font-size: 12px;
	display: none;
	background-image: url(../images/related_files/pageup.svg);
	background-repeat: no-repeat;
	background-position: center center;
	height: 40px;
	width: 40px;
	z-index: 1000;
}
/*--------------------------
 SWIPE MESSAGE
----------------------------*/
.swipe_message {
    display: none;    
   
}

/*--------------------------
 FOOTER
----------------------------*/
.footer_wrapper {
    padding-bottom: 50px;
}

.footer_wrapper a {
    -webkit-transition: all .3s;
    transition: all .3s;
    text-decoration: none;
    display: block;
}
.footer_wrapper a:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
}
.footer_official {
	width: 640px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 40px;
    padding-bottom: 40px;
}
.footer_official::after {
    content: "";
    display: block;
    clear: both;
}
.footer_chars {
	font-feature-settings: "palt";
    float: left;
    width: 300px;
}
.footer_logo {
    width: 275px;
    padding-bottom: 5px;
}
.footer_logo img {
    width: 100%;
    height: auto;
}
.footer_kanri {
    font-size: 14px;
    line-height: 32px;
    letter-spacing: 0.05em;
}
.footer_address {
    font-size: 12px;
    line-height: 24px;
    letter-spacing: 0.03em;
    font-style: normal;
}

.footer_spec_list {
    float: right;
    margin-top: 30px;
}
.footer_spec_list li {
    font-size: 10px;
    line-height: 18px;
}
/*--------------------------
 FOOTER COPYRIGHT
----------------------------*/
.copyright {
    padding-top: 80px;
    padding-bottom: 0px;
    text-align: center;
}
.copyright small {
    font-size: 10px;
    letter-spacing: 0.1em;
    font-weight: 300;
}
.copyright small span {
    padding-left: 5px;
}
/*--------------------------
 BOTTOM
----------------------------*/
.bottom_back {
    /*
    background-image: url(../images/footer_contact_back.webp);
	background-repeat: no-repeat;
	background-position: center center;
    background-size: cover;
    */
    /*background-color: #325b83;*/
}
.bottom_wrapper {
    position: relative;
    text-align: center;
    font-feature-settings: "palt";
    padding-top: 70px;
    padding-bottom: 25px;

    width: 640px;
    margin-left: auto;
    margin-right: auto;
}
.bottom_contact_sentense {
    font-size: 20px;
    line-height: 32px;
    letter-spacing: 0.08em;
    padding-bottom: 30px;
}
.bottom_contact_tel {
    font-size: 46px;
    line-height: 56px;
    letter-spacing: 0.08em;
    padding-bottom: 12px;
    padding-top: 12px;

    border-top-color: #000;
    border-top-style: dotted;
    border-top-width: 1px;
    border-bottom-color: #000;
    border-bottom-style: dotted;
    border-bottom-width: 1px;
}
.bottom_contact_tel a {
    -webkit-transition: all .3s;
    transition: all .3s;
    text-decoration: none;
    display: block;
    color: #003f87!important;  
}
.bottom_contact_tel a:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
}
.bottom_contact_tel span {
    font-size: 30px;
    line-height: 56px;
    letter-spacing: 0.08em;
    padding-bottom: 30px;
    padding-right: 5px;
    vertical-align: baseline;
}
.bottom_contact_shop {
    font-size: 20px;
    line-height: 56px;
    letter-spacing: 0.1em;
    padding-bottom: 20px;
    padding-top: 20px;
}
.bottom_contact_date {
    font-size: 12px;
    line-height: 20px;
    letter-spacing: 0.03em;
    padding-bottom: 30px;
}
.bottom_contact_date span {
    padding-left: 30px;
}

/*--------------------------
 SECTION TITLE
----------------------------*/
.section_title_type01 {
   text-align: center;
   padding-bottom: 0px;
}
.section_title_type01_eng {
    font-size: 30px;
    line-height: 40px;
    letter-spacing: 0.1em;
    padding-bottom: 10px;
}
.section_title_type01_shoulder {
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 0.1em;
    padding-bottom: 10px;
}
.section_title_type01_p {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 0.05em;
}
/*--------------------------
 AD BUTTON COPY
----------------------------*/
.adbutton_copy {
    text-align: center;
    padding-bottom: 40px;
    font-feature-settings: "palt";
}
.adbutton_copy_title {
    font-size: 20px;
    line-height: 20px;
    letter-spacing: 0.03em;
    padding-bottom: 20px;
}
.adbutton_copy_p {
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.00em;
}
.adbutton_copy_p br {
    display: none;
}
/*--------------------------
 AD BUTTON
----------------------------*/
@media screen and (min-width:768px) and ( max-width:860px) {
.adbutton_wrapper {
    margin-top: 50px;
    width: 650px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 80px;
}
}
@media screen and (min-width:860px) {
.adbutton_wrapper {
    margin-top: 80px;
    width: 860px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 80px;
}
}

.adbutton_wrapper::after {
    content: "";
    display: block;
    clear: both;
}
@media screen and (min-width:768px) and ( max-width:860px) {
.adbutton_left {
    margin-bottom: 20px;
}
.adbutton_right {

}
}
@media screen and (min-width:860px) {
.adbutton_left {
    float: left;
    width: 48%;
}
.adbutton_right {
    float: right;
	width: 48%;
}
}
/*--------------------------
 AD BUTTON KIRA DOUBLE
----------------------------*/
.button_kira_wrapper {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}
.button_kira {
    font-size: 20px;
    line-height: 32px;
    /*background: #155376;*/
    color: #fff;
    display: inline-block;
    overflow: hidden;
    padding-top: 12px;
    padding-right: 0px;
    padding-bottom: 12px;
    position: relative;
    text-decoration: none;
    background-image: url(../images/arrow_white.svg);
    background-repeat: no-repeat;
    background-position: right 30px center;
    background-size: 20px auto;
    width: 100%;
    text-align: center;
	/*-webkit-box-shadow: 10px 10px 0px 0px #969696;
    box-shadow: 3px 3px 5px #969696;*/
    -webkit-transition: all .3s;
    transition: all .3s;
}

.button_kira_p {
    /*padding-left: 30px; */ 
	letter-spacing: 0.1em;
}
.button_kira_col01 {
    background: #569fba;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.button_kira_col01:hover {
    opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
}
.button_kira_col02 {
    background: #a19a80;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.button_kira_col02:hover {
    opacity: 0.5;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
}
.button_kira:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=560)";
}
.button_kira::after {
	animation: 4s 0s shine linear infinite;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.4) 100%);
	content: '';
	height: 100%;
	left: -100%;
	position: absolute;
	top: 0;
	transform: skewX(-25deg);
	width: 50%;
}
@keyframes shine {
	20% {
		left: 150%;
	}
	100% {
		left: 150%;
	}
}

/*--------------------------
 BOTTOM ANNOTATION
----------------------------*/
@media screen and (min-width:768px) and ( max-width:1120px) {
.bottom_annotation {
    position: relative;
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 0px;
}
}
@media screen and (min-width:1120px) {
.bottom_annotation {
    position: relative;
    width: 960px;
    margin-left: auto;
    margin-right: auto;
	padding-top: 50px;
    padding-bottom: 0px;
}
}

.bottom_annotation li {
    font-size: 10px;
    line-height: 16px;
    letter-spacing: 0.02em;
    background-image: url(../images/related_files/reference_mark.svg);
    background-repeat: no-repeat;
    background-position: left top 3px;
    background-size: 10px auto;
    padding-left: 15px;
    padding-bottom: 3px;
}
/*--------------------------
 LOCATION
----------------------------*/
.location_wrapper {
    padding-top: 0px;
	padding-bottom: 180px;
}
/*--------------------------
 LOCATION LIST 2
----------------------------*/
.location_list_double02 {
    margin-top: 80px;
    padding-bottom: 40px;
    font-feature-settings: "palt";
}
@media screen and (min-width:768px) and ( max-width:960px) {
.location_list_double {
    margin-left: 20px;
    margin-right: 20px;
}
}
@media screen and (min-width:960px) {
.location_list_double {
    width: 960px;
    margin-left: auto;
    margin-right: auto;
}
}

.location_list_double::after {
    content: "";
    display: block;
    clear: both;
}
.location_list_double li {
    width: 47%;
    margin-right: 6%;
    float: left;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.03em;
    margin-bottom: 6%;
}
.location_list_double li span {
    display: block;
    font-size: 14px;
    line-height: 28px;
    letter-spacing: 0.02em;
}
.location_list_double li figcaption {
    padding-top: 10px;
}
.location_list_double li:nth-child(2n) {
    margin-right: 0%;
}
.location_list_double li img {
    width: 100%;
    height: auto;
}

/*--------------------------
 LOCATION LIST 3
----------------------------*/
.location_list_three_wrapper {
    font-feature-settings: "palt";
}
.location_list_three {
   padding-top: 40px;
    padding-bottom: 0px;
}
@media screen and (min-width:768px) and ( max-width:960px) {
.location_list_three {
    margin-left: 20px;
    margin-right: 20px;
}
}
@media screen and (min-width:960px) {
.location_list_three {
    width: 960px;
    margin-left: auto;
    margin-right: auto;
}
}

.location_list_three::after {
    content: "";
    display: block;
    clear: both;
}
.location_list_three li {
    width: 32%;
    margin-right: 2.0%;
    float: left;
}
.location_list_three li:nth-child(3n) {
    margin-right: 0%;
}
.location_list_three li img {
    width: 100%;
    height: auto;
}
@media screen and (min-width:768px) and ( max-width:960px) {
.location_list_three li figcaption {
    padding-top: 10px;
    font-size: 15px;
    line-height: 25px;
    letter-spacing: 0.03em;
    padding-bottom: 35px;
}
.location_list_three li figcaption span {
    font-size: 14px;
    padding-right: 0px;
    padding-left: 0px;
    vertical-align: baseline;
}
}
@media screen and (min-width:960px) {
.location_list_three li figcaption {
    padding-top: 10px;
    font-size: 15px;
    line-height: 26px;
    letter-spacing: 0.02em;
    padding-bottom: 35px;
}
.location_list_three li figcaption span {
    display: block;
    font-size: 14px;
    line-height: 28px;
    letter-spacing: 0.02em;
}
}


/*--------------------------
 GOOGLE MAP IFRAME
----------------------------*/
@media screen and (min-width:768px) and ( max-width:1200px) {
.googlemap {
	margin-top: -40px;
	padding-bottom: 20px;
}
}
@media screen and (min-width:1200px) {
.googlemap {
	margin-top: -30px;
	padding-bottom: 20px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
}
.ggmap {
	position: relative;
	height: 500px;
	/*overflow: hidden;*/
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 500px;
}
/*--------------------------
 SMART HEAD LOGO
----------------------------*/
.smart_head_logo {
    display: none;
}
/*--------------------------
 MAIN IMAGE
----------------------------*/
.main_image {
    position: relative;
    z-index: 0;
    /*margin-left: 50px;*/
}

@media screen and (min-width:768px) and ( max-width:1000px) {
.main_image_back {
    width: 100%;
    height: auto;
    margin-top: 85px;
}
}
@media screen and  (min-width:1000px) {
.main_image_back {
    width: 100%;
    height: auto;
    margin-top: 64px;
}
}

.main_image_back img {
    width: 100%;
    height: auto;
}
.main_image_back_sm {
    display: none;    
}
.main_image_back_sm img {
    width: 100%;
    height: auto;
}

.main_wrapper {
    position: absolute;
    z-index: 100;
    width: 60%;
    bottom: 30px;
    left: 0%;
    right: 0%;
    margin-left: auto;
    margin-right: auto; 
}

.main_image_caption {
    font-size: 10px;
    line-height: 20px;
    letter-spacing: 0.02em;
    position: absolute;
    bottom: 15px;
    right: 15px;
}
/*--------------------------
 APPEAL
----------------------------*/
.appeal_back {
    padding-top: 5px;
    padding-bottom: 10px;
    margin-top: 0px;
    background-color: #569fba;
}
@media screen and (min-width:768px) and ( max-width:960px) {
.appeal_pc_wrapper {
    margin-left: 20px;
    margin-right: 20px;
}
}
@media screen and  (min-width:960px) {
.appeal_pc_wrapper {
    width: 960px;
    margin-left: auto;
    margin-right: auto;
}
}
.appeal_pc {
    
}
.appeal_pc img {
    width: 100%;
    height: auto;
}

.appeal_xs {
    display: none;
}
.appeal_xs img {
    width: 100%;
    height: auto;
}
/*--------------------------
 COPY
----------------------------*/
.copy_wrapper {
    margin-left: auto;
    margin-right: auto;
    font-feature-settings: "palt";
    text-align: center;
    padding-top: 100px;
}
.copy_name {
    font-size: 24px;
    line-height: 36px;
    letter-spacing: 0.05em;
    padding-bottom: 10px;
}
.copy_sholder {
    font-size: 46px;
    line-height: 60px;
    letter-spacing: 0.05em;
    /*font-style: italic;*/
    color: #569fba;
    padding-bottom: 30px;
}
.copy_app {
    font-size: 26px;
    line-height: 34px;
    letter-spacing: 0.05em;
    padding-top: 15px;
    padding-bottom: 18px;
    width: 320px;
    margin-left: auto;
    margin-right: auto;
    background-color: #FFF;

    border-left-color: #569fba;
    border-left-style: solid;
    border-left-width: 2px;

	border-right-color: #569fba;
    border-right-style: solid;
    border-right-width: 2px;

    border-top-color: #569fba;
    border-top-style: solid;
    border-top-width: 2px;

    border-bottom-color: #569fba;
    border-bottom-style: solid;
    border-bottom-width: 2px;
    
}
.copy_wrapper_bottom_use {
    background-color: #eaf2f1!important;
    padding-bottom: 1px!important;
    padding-top: 80px!important;
    margin-bottom: 0px!important;
}
/*--------------------------
 PLAN
----------------------------*/
.plan_title {
    background-image: url(../images/section_roomplan_pc.webp);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    height: 400px;
}

@media screen and (min-width:768px) and ( max-width:1160px) {
.plan_wrapper {
    margin-left: auto;
    margin-right: auto;
    font-feature-settings: "palt";
    padding-bottom: 60px;
    position: relative;
}
}
@media screen and (min-width:1160px) {
.plan_wrapper {
    width: 1120px;
    margin-left: auto;
    margin-right: auto;
    font-feature-settings: "palt";
    padding-bottom: 80px;
    position: relative;
}
}

.plan_title h2 {
    font-size: 70px;
    line-height: 80px;
    letter-spacing: 0.1em;
    padding-bottom: 10px;
    text-align: center;
    padding-top: 130px;
}
/*--------------------------
 PLAN SPEC
----------------------------*/
.plan_spec {
    margin-top: 30px;
    margin-bottom: 50px;
    padding-bottom: 20px;

    border-bottom-color: #000000;
    border-bottom-style: solid;
    border-bottom-width: 1px;
}
.plan_spec_eng {
margin-left: 20px;
}
.plan_spec_eng_alpha {
    font-size: 70px;
    line-height: 90px;
    letter-spacing: 0.05em;
}
.plan_spec_eng_type {
    font-size: 26px;
    line-height: 100px;
    letter-spacing: 0.05em;
    vertical-align: middle;
    padding-left: 5px;
}
.plan_spec_mado {
    font-size: 46px;
    line-height: 80px;
    letter-spacing: 0.05em;
    vertical-align: middle;
    padding-left: 20px;
}
/*--------------------------
 PLAN DESCRIPTION
----------------------------*/
@media screen and (min-width:768px) and ( max-width:1160px) {
.plan_desc {
    margin-left: 20px;
    margin-top: 20px;
}
}
@media screen and (min-width:1160px) {
.plan_desc {
    margin-left: 360px;
    margin-top: -60px;
}
}
.plan_desc {
    margin-bottom: 30px;
    font-size: 14px;
    line-height: 24px;
    letter-spacing: 0.05em;
}
.plan_desc_area {
    font-size: 36px;
    line-height: 14px;
    letter-spacing: 0.05em;

    padding-left: 10px;
    padding-right: 3px;
}
.plan_desc_unit {
    font-size: 24px;
    
    letter-spacing: 0.05em;
    margin-right: 15px;
}
.plan_sentence {
    font-size: 18px;
    line-height: 28px;
    letter-spacing: 0.05em;
    margin-left: 20px;
    margin-top: 30px;
}
/*--------------------------
 PLAN MADORI
----------------------------*/
.plan_madori {
    border-top-color: #000000;
    border-top-style: solid;
    border-top-width: 1px;

    border-bottom-color: #000000;
    border-bottom-style: solid;
    border-bottom-width: 1px;

    margin-bottom: 50px;

}
.plan_madori::after {
    content: "";
    display: block;
    clear: both;
}
.plan_madori_left {
    float: left;
    width: 49.5%;
    text-align: center;
    padding-bottom: 30px;
}
.plan_madori_left img {
    width: 85%;
    height: auto;
}
.plan_madori_right {
    float: right;
    width: 50%;
    border-left-color: #000000;
    border-left-style: solid;
    border-left-width: 1px;
    text-align: center;
    background-color: #f6f7f9;
    padding-bottom: 30px;
}
.plan_madori_right img {
    width: 85%;
    height: auto;
}
.plan_madori_head01 {
    height: 64px;
}
.plan_madori_head02 {
    font-size: 22px;
    line-height: 32px;
    letter-spacing: 0.05em;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 5px;
    background-color: #f7931e;
    color: #FFF;
    height: 40px;
    margin-bottom: 10px;
}
/*--------------------------
 PLAN SELECT TAB
----------------------------*/
/*タブ切り替え全体のスタイル*/
.tabs {
  margin-top: 0px!important;
  padding-bottom: 140px;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  width: 100%;
  margin: 0 auto;


}
/*タブのスタイル*/
.tab_item {
  /*width: calc(100%/3); これが本物。タブの数を自動調整できるが、ボタンデザインを調整しづらい。*/
  width: 26%;
  height: 80px;
  /*border-bottom: 3px solid #192e5d;*/
  background-color: #e6e6e6;
  line-height: 80px;
  text-align: center;
  color: #808080;
  display: block;
  float: left;
  text-align: left;
  font-weight: bold;
  transition: all 0.2s ease;
  letter-spacing: 0.05em;

  padding-left: 3%;
  margin-top: 5%;
  background-image: url(../images/tab_arrow_gray.svg);
  background-position: center right 20px;
  background-size: 15px auto;
  background-repeat: no-repeat;
}
@media screen and (min-width:768px) and ( max-width:960px) {
.tab_item {
  font-size: 18px;
}
}
@media screen and (min-width:960px) {
.tab_item {
  font-size: 22px;
}
}

.tab_item:first-of-type {
  margin-left: 5%!important;
  margin-right: 0%!important;
}
.tab_item:nth-child(2n) {
  margin-right: 1.4%!important;
}
.tab_item:nth-child(3n) {
  margin-right: 0%!important;
}

.tab_item:hover {
  opacity: 0.6;
}
.tab_item span {
    padding-left: 10px;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 40px 80px 0;
  clear: both;
  overflow: hidden;
  margin-bottom: -50px!important;/*一番下が広すぎるが...*/
}

/*選択されているタブのコンテンツのみを表示*/
#ATYPE:checked ~ #ATYPE_content,
#BTYPE:checked ~ #BTYPE_content,
#CTYPE:checked ~ #CTYPE_content,
#DTYPE:checked ~ #DTYPE_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #569fba;
  color: #fff;
  background-image: url(../images/tab_arrow_white.svg);
  background-position: center right 20px;
  background-size: 15px auto;
  background-repeat: no-repeat;
}
/*--------------------------
 EQUIPMENT
----------------------------*/
@media screen and (min-width:768px) and ( max-width:1120px) {
.equipment_wrapper {
    padding-top: 80px;
	padding-bottom: 40px;
	background-color: #e2e1da;
    margin-left: auto;
    margin-right: auto;
    border-radius: 10px;
}
}
@media screen and (min-width:1120px) {
.equipment_wrapper {
    padding-top: 80px;
	padding-bottom: 40px;
	background-color: #e2e1da;
    width: 1120px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 10px;
    margin-bottom: 120px;
}
}

@media screen and (min-width:768px) and ( max-width:980px) {
.equipment_list {
    margin-top: 60px;
    margin-left: 20px;
    margin-right: 20px;
}
}
@media screen and (min-width:980px) {
.equipment_list {
    margin-top: 60px;
    width: 960px;
    margin-left: auto;
    margin-right: auto; 
}
}
.equipment_list::after {
    content: "";
    display: block;
    clear: both;
}
.equipment_list li {
    float: left;
    width: 14%;
    margin-right: 3.2%;
    margin-bottom: 3.2%;
}
.equipment_list li:nth-child(6n) {
    margin-right: 0%!important;
}
.equipment_list li img {
    width: 100%;
    height: auto;
}
/*--------------------------
 ACCESS
----------------------------*/
.access_wrapper {
    padding-top: 0px;
	padding-bottom: 180px;
    background-color: #eaf2f1;
}

@media screen and (min-width:768px) and ( max-width:1200px) {
.access_image {
    width: 100%;
}
}
@media screen and  (min-width:1200px) {
.access_image {
    width: 90%;
}
}
.access_image {
    display: flex;
    justify-content: space-around;
    margin-top: 60px;
    margin-left: auto;
    margin-right: auto;
}
.access_image li img {
    width: 100%;
    height: auto;
}
.access_image_xs {
    display: none;
}
.access_image_xs img {
    width: 100%;
    height: auto;
}


@media screen and (min-width:768px) and ( max-width:1120px) {
.access_draw {
    margin-left: 20px;
    margin-right: 20px;
    padding-top: 20px;
    padding-bottom: 50px;
}
}
@media screen and  (min-width:1120px) {
.access_draw {
    width: 1120px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 40px;
    padding-bottom: 80px;
}
}
.access_draw_pc {
    
}
.access_draw_pc img {
    width: 100%;
    height: auto;
}

.access_draw_xs {
    display: none;
}
.access_draw_xs img {
    width: 100%;
    height: auto;
}
/*--------------------------
 ACCESS SCROLL
----------------------------*/
@media screen and (min-width:768px) and ( max-width:1120px) {
.access_draw_scroll {
    margin-left: 30px;
    margin-right: 30px;
}
}
@media screen and (min-width:1120px) {
.access_draw_scroll {
    width: 1120px;
    margin-left: auto;
    margin-right: auto;
}
}
.access_draw_scroll {
    margin-top: 40px;
    padding-bottom: 60px;
}
.access_draw_scroll img {
    width: 100%;
    height: auto;
}
/*--------------------------
 ACCESS LIST DOUBLE
----------------------------*/
.access_list_double02 {
    margin-top: 50px;
    padding-bottom: 0px;
    font-feature-settings: "palt";
}
@media screen and (min-width:768px) and ( max-width:960px) {
.access_list_double {
    margin-left: 20px;
    margin-right: 20px;
}
}
@media screen and (min-width:960px) {
.access_list_double {
    width: 960px;
    margin-left: auto;
    margin-right: auto;
}
}
.access_list_double::after {
    content: "";
    display: block;
    clear: both;
}
.access_list_double li {
    width: 47%;
    margin-right: 6%;
    float: left;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.03em;
    margin-bottom: 6%;
}
.access_list_double li span {
    display: block;
    font-size: 14px;
    line-height: 28px;
    letter-spacing: 0.02em;
}
.access_list_double li figcaption {
    padding-top: 10px;
}
.access_list_double li:nth-child(2n) {
    margin-right: 0%;
}
.access_list_double li img {
    width: 100%;
    height: auto;
}

/*--------------------------
 CONCEPT
----------------------------*/
.concept_wrapper {
    background-image: url(../images/concept_back.webp);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding-top: 130px;
    padding-bottom: 140px;

    position: relative;
}
.concept_wrapper::after {
    content: "";
    display: block;
    clear: both;
}
.concept_image {
    width: 50%;
    float: right;
    margin-right: 5%;
}
.concept_image img {
   width: 100%;
   height: auto;
}
.concept_copy {
    width: 22%;
    margin-left: 18%;
    float: left;
    max-width: 320px;
    margin-top: 5%;
}
.concept_copy img {
   width: 100%;
   height: auto;
}

/*--------------------------
 LIFE INFORMATION（LOCATION）
----------------------------*/
.lifeinfo_wrapper {
    background-color: #f9f5e9;
    padding-bottom: 180px;
}

.lifeinfo_title_img_wrapper {
    position: relative;
    z-index: 0!important;
    width: 100%;
}
.lifeinfo_title_img {
    width: 100%;
}
.lifeinfo_title_img img {
    width: 100%;
    height: auto;
}
.lifeinfo_title {
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.lifeinfo_title_eng {
    font-size: 30px;
    line-height: 40px;
    letter-spacing: 0.1em;
    
}


.lifeinfo_center_box {
    font-feature-settings: "palt";
    margin-top: 20px;
    text-align: center;
}
.lifeinfo_center_image {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
}
.lifeinfo_center_image img {
    width: 100%;
    height: auto;
}
.lifeinfo_center_shoulder {
    font-size: 28px;
    line-height: 42px;
    letter-spacing: 0.08em;
    padding-top: 30px;
    padding-bottom: 40px;
    
}
.lifeinfo_center_shoulder br {
    display: none;
}
.lifeinfo_center_p {
    font-size: 18px;
    line-height: 44px;
    letter-spacing: 0.03em;
    padding-bottom: 80px;
}
.lifepbr {
    display: none;
}
/*--------------------------
 LIFE INFORMATION（LOCATION） BOTSU
----------------------------*/
@media screen and (min-width:768px) and ( max-width:1420px) {
.lifeinfo_box {
    margin-left: 0px;
    margin-right: 20px;
    font-feature-settings: "palt";
    padding-bottom: 0px;
    margin-top: 80px;
}
}
@media screen and (min-width:1420px) {
.lifeinfo_box {
    width: 1400px;
    margin-left: auto;
    margin-right: auto;
    font-feature-settings: "palt";
    margin-top: 80px;
}
}

.lifeinfo_box::after {
    content: "";
    display: block;
    clear: both;
}

@media screen and (min-width:768px) and ( max-width:850px) {
.lifeinfo_left {
    margin-left: 50px;
    margin-right: 50px;
    margin-bottom: 50px;
}
.lifeinfo_right {
    margin-left: 20px;
}
}
@media screen and (min-width:850px) and ( max-width:1000px) {
.lifeinfo_left {
    float: right;
    width: 35%;
    padding-right: 5%;
}
.lifeinfo_right {
    float: left;
    width: 55%;
}
}
@media screen and (min-width:1000px) and ( max-width:1420px) {
.lifeinfo_left {
    float: right;
    width: 30%;
    padding-right: 5%;
}
.lifeinfo_right {
    float: left;
    width: 60%;
}
}
@media screen and (min-width:1420px) {
.lifeinfo_left {
    float: right;
    width: 25%;
    padding-right: 5%;
}
.lifeinfo_right {
    float: left;
    width: 63%;
}
}


@media screen and (min-width:768px) and ( max-width:850px) {
.lifeinfo_shoulder {
    font-size: 26px;
    line-height: 42px;
    letter-spacing: 0.1em;
    padding-top: 0px;
    padding-bottom: 30px;
}
}
@media screen and (min-width:850px) {
.lifeinfo_shoulder {
    font-size: 26px;
    line-height: 42px;
    letter-spacing: 0.1em;
    padding-top: 40px;
    padding-bottom: 30px;
}
}

.lifeinfo_p {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 0.05em;
}
.lifeinfo_right img {
    width: 100%;
    height: auto;
}
/*--------------------------
 フェードイン(初期値)
----------------------------*/
.js-fadeUp {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .8s, transform .8s;
}
/* フェードイン(スクロールした後) */
.js-fadeUp.is-inview {
  opacity: 1;
  transform: translateY(0);
  transition-delay: .5s;
}
.js-fadeLeft {
  opacity: 0;
  transform: translateX(30px);
  transition: opacity .8s, transform .8s;
}
/* フェードイン(スクロールした後) */
.js-fadeLeft.is-inview {
  opacity: 1;
  transform: translateY(0);
  transition-delay: .5s;
}
.js-fadeRight {
  opacity: 0;
  transform: translateX(-30px);
  transition: opacity .8s, transform .8s;
}
/* フェードイン(スクロールした後) */
.js-fadeRight.is-inview {
  opacity: 1;
  transform: translateY(0);
  transition-delay: .5s;
}
/*--------------------------
 SECTION TITLE
----------------------------*/
.section_title_wrapper {
    position: relative;
    z-index: 0;
}
.section_title {
    
}
.section_title img {
    width: 100%;
    height: auto;
}
.secimgpc {
    
}
.secimgxs {
    display: none;
}
.section_title_chars {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: center;
}
.section_title_chars_eng {
    font-size: 45px;
    line-height: 60px;
    letter-spacing: 0.3em;
    padding-bottom: 10px;
}
.section_title_chars_copy {
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0.1em;
}
/*--------------------------
 SECTION TITLE ILLEGULAR
----------------------------*/
@media screen and (min-width:768px) and ( max-width:1000px) {
.section_title_chars_roomplan{
    top: 30%!important;
}
.section_title_chars_eng_roomplan {
    padding-bottom: 0px!important;
}
}
@media screen and (min-width:1000px) {
.section_title_chars_roomplan{
    top: 43%!important;
}
}
@media screen and (min-width:768px) and ( max-width:960px) {
.section_title_chars_eng_lifeinfo {
    letter-spacing: 0.15em!important;
}
}
@media screen and (min-width:960px) {
.section_title_chars_eng_lifeinfo {
    letter-spacing: 0.2em!important;
}
}
/*--------------------------
 SECTION TITLE NON
----------------------------*/
.section_title_wrapper_non {
    position: relative;
    z-index: 0;
}
.section_title_char_nons {
    padding-top: 100px;
    text-align: center;
    padding-bottom: 10px;
}
.section_title_chars_eng_non {
    font-size: 45px;
    line-height: 60px;
    letter-spacing: 0.3em;
    padding-bottom: 10px;
}

/*--------------------------
 OUTLINE SUB TITLE
----------------------------*/
.outline_sub_title {
    font-size: 20px;
    line-height: 30px;
    text-align: center;
    padding-top: 60px;
    letter-spacing: 0.05em;
    padding-bottom: 30px;
}
/*--------------------------
 OUTLINE
----------------------------*/
.outline_back {
    background-color: #f6f6f6;
    padding-bottom: 100px;
}



@media screen and (min-width:768px) and ( max-width:1000px) {
	.outline_wrapper {
		margin-left: auto;
		margin-right: auto;
		position: relative;
		width: 95%;
		padding-top: 80px;
		padding-bottom: 20px;
	}
}
@media screen and (min-width:1000px) {
	.outline_wrapper {
		margin-left: auto;
		margin-right: auto;
		width: 960px;
		position: relative;
		padding-top: 50px;
		padding-bottom: 20px;
	}
}
/*--------------------------
 OUTLINE TABLE
----------------------------*/
@media screen and (min-width:768px) and ( max-width:960px) {
	.outline_table {

	}
}
@media screen and (min-width:960px) {
	.outline_table {

	}
}

.outline_table {
	margin-left: auto;
	margin-right: auto;
	border-bottom: 1px dotted #999999;
}
.outline_table tr {
	border-top: 1px dotted #999999;
	
}
.outline_table tr th {
    font-size: 14px;
    line-height: 24px;
    font-weight: normal;
    width: 250px;
    padding-top: 8px;
    padding-bottom: 8px;
    text-align: left;
    padding-left: 30px;
    /*background-color: #e8edf5;*/
}
.outline_table tr td {
    font-size: 14px;
    line-height: 24px;
    padding-top: 8px;
    padding-bottom: 8px;
    text-align: left;
    padding-right: 20px;
    padding-left: 30px;
}

.table_cap{
	margin-top:50px;
	font-size:12px;
}
.table_cap a{
	color:#569fba;
	text-decoration:underline;
}
.table_cap a:hover{
	text-decoration:none;
}

/*--------------------------
 OUTLINE TABLE ILLEGULAR
----------------------------*/
.outline_table_push {
    padding-top: 50px!important;	
}
.outline_table_tr_gray {
    background-color: #f7f3f3!important;	
}



/*--------------------------
 MADORI SINGLE
----------------------------*/
@media screen and (min-width:768px) and ( max-width:900px) {
	.madori-tab-wrapper {
			width: 100%;
			margin-left: auto;
			margin-right: auto;
	}
}
@media screen and (min-width:900px) {
	.madori-tab-wrapper {
			width: 80%;
			margin-left: auto;
			margin-right: auto;
	}
}
/*--------------------------
 MADORI SINGLE A TYPE
----------------------------*/
.tab-btn-A {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
.btn-A {
        flex-basis: 45%;
        text-align: left;
    }
.btn-A a {
        display: block;
        position: relative;
        font-size: 22px;
        padding: 20px;
        text-decoration: none;
        line-height: 1.2;
        color: #808080;
        background-color: #e6e6e6;
        cursor: pointer;
        background-image: url(../images/tab_arrow_gray.svg);
        background-position: center right 20px;
        background-size: 15px auto;
        background-repeat: no-repeat;
        -webkit-transition: all .3s;
        transition: all .3s;
        padding-left: 30px;
}
.btn-A a.is-active {
        background-color: #a19a80;
        background-image: url(../images/tab_arrow_white.svg);
        background-position: center right 20px;
        background-size: 15px auto;
        background-repeat: no-repeat;
        color: #FFF;
}
.btn-A a:hover {
        opacity: 0.6!important;
        filter: alpha(opacity=60)!important;
        -ms-filter: "alpha(opacity=60)"!important;
}
.tab-contents-item-A {
        display: none;
        width: 100%;
        height: 1200px;
        justify-content: center;
        padding-top: 60px;
        margin-bottom: 100px;
}
.tab-contents-item-A.is-active {
        display: flex;
        /*background-color: #ececec;*/

}
.tab-contents-item-A>p {
        margin: auto;
        height: 40px;
        opacity: 0;
}
.tab-contents-item.is-active-A>p {
      animation:  fadeinAnime 2s forwards;
}
@keyframes fadeinAnime{
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
        }
    }
/*--------------------------
 MADORI SINGLE B TYPE
----------------------------*/
.tab-btn-B {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
.btn-B {
        flex-basis: 45%;
        text-align: left;
    }
.btn-B a {
        display: block;
        position: relative;
        font-size: 22px;
        padding: 20px;
        text-decoration: none;
        line-height: 1.2;
        color: #808080;
        background-color: #e6e6e6;
        cursor: pointer;
        background-image: url(../images/tab_arrow_gray.svg);
        background-position: center right 20px;
        background-size: 15px auto;
        background-repeat: no-repeat;
        -webkit-transition: all .3s;
        transition: all .3s;
        padding-left: 30px;
}
.btn-B a.is-active {
        background-color: #a19a80;
        background-image: url(../images/tab_arrow_white.svg);
        background-position: center right 20px;
        background-size: 15px auto;
        background-repeat: no-repeat;
        color: #FFF;
}
.btn-B a:hover {
        opacity: 0.6!important;
        filter: alpha(opacity=60)!important;
        -ms-filter: "alpha(opacity=60)"!important;
}
.tab-contents-item-B {
        display: none;
        width: 100%;
        height: 1200px;
        justify-content: center;
        padding-top: 60px;
        margin-bottom: 100px;
}
.tab-contents-item-B.is-active {
        display: flex;
        /*background-color: #ececec;*/

}
.tab-contents-item-B>p {
        margin: auto;
        height: 40px;
        opacity: 0;
}
.tab-contents-item.is-active-B>p {
      animation:  fadeinAnime 2s forwards;
}
@keyframes fadeinAnime{
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
        }
    }
    /*--------------------------
 MADORI SINGLE C TYPE
----------------------------*/
.tab-btn-C {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
.btn-C {
        flex-basis: 45%;
        text-align: left;
    }
.btn-C a {
        display: block;
        position: relative;
        font-size: 22px;
        padding: 20px;
        text-decoration: none;
        line-height: 1.2;
        color: #808080;
        background-color: #e6e6e6;
        cursor: pointer;
        background-image: url(../images/tab_arrow_gray.svg);
        background-position: center right 20px;
        background-size: 15px auto;
        background-repeat: no-repeat;
        -webkit-transition: all .3s;
        transition: all .3s;
        padding-left: 30px;
}
.btn-C a.is-active {
        background-color: #a19a80;
        background-image: url(../images/tab_arrow_white.svg);
        background-position: center right 20px;
        background-size: 15px auto;
        background-repeat: no-repeat;
        color: #FFF;
}
.btn-C a:hover {
        opacity: 0.6!important;
        filter: alpha(opacity=60)!important;
        -ms-filter: "alpha(opacity=60)"!important;
}
.tab-contents-item-C {
        display: none;
        width: 100%;
        height: 1200px;
        justify-content: center;
        padding-top: 60px;
        margin-bottom: 100px;
}
.tab-contents-item-C.is-active {
        display: flex;
        /*background-color: #ececec;*/

}
.tab-contents-item-C>p {
        margin: auto;
        height: 40px;
        opacity: 0;
}
.tab-contents-item.is-active-C>p {
      animation:  fadeinAnime 2s forwards;
}
@keyframes fadeinAnime{
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
        }
    }


/*--------------------------
 SECTION TITLE  V3
----------------------------*/
.section_title_v3_wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: center;
}
.section_title_v3 {
    
}
.section_title_v3 {
    width: 550px;
    height: auto;
}
.section_title_v3_noimg {
    padding-top: 300px;
    text-align: center;
    margin-bottom: -80px;
}

.white {
	color: #fff !important;
}
