  @charset "utf-8";

.access-top_text{
	font-size:1.8rem;
	color:#1F264E;
	margin:130px auto 0;
	text-align:center;
	line-height:1.5;
}
@media (max-width: 768px) {
.access-top_text{
	font-size:1.4rem;
	margin:130px auto 0;
	}
}


.white-bg{
	padding:40px;
	background:#fff;
	margin:40px auto 0;
}
@media (max-width: 768px) {
.white-bg{
	padding:20px;
	margin:40px auto 0;
	}

}
.grid-style{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:2rem 1rem;
	margin:20px 0 0;

}
@media (max-width: 768px) {
.grid-style{
	margin:10px 0 0;
	padding:10px 0;
	gap:1rem .5rem;
	}
}

.grid-style dt{
	position:relative;
}

.grid-style dd{
	font-size:1.1rem;
	line-height:1.3;
}
.grid-style dd ul{
	display:flex;
	margin:5px 0 0;
}

.icon_cmn{
	margin:0 5px 0 0;
	padding:3px 4px;
	border-radius:50%;
	font-size:.7rem;
}

@media (max-width: 768px) {
.grid-style dd{
	font-size:.75rem;
	}
}
.grid-style dd .span-small{
	display:inline-block;
	margin:0px 5px 0;
	font-size:.8rem;
	}
@media (max-width: 768px) {
.grid-style dd .span-small{
	font-size:.8rem;
	display:block;
	margin:-5px 0 0;
	}
}

.view-copy_location{
  position: absolute;
  right:5px;
  bottom:5px;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  color:#fff;
  font-size:.7rem;
}
.view-copy_location_left{
  position: absolute;
  left:5px;
  bottom:5px;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  color:#fff;
  font-size:.7rem;
}


.location-top_text{
	font-size:1.8rem;
	color:#1F264E;
	margin:130px auto 0;
	text-align:center;
	line-height:1.5;
}
@media (max-width: 768px) {
.location-top_text{
	font-size:1.4rem;
	margin:100px auto 0;
	}
}

.location-tab_text{
	font-size:1.8rem;
	color:#1F264E;
	margin:80px auto ;
	text-align:center;
	line-height:1.5;
}
@media (max-width: 768px) {
.location-tab_text{
	font-size:1.4rem;
	margin:40px auto ;
	}
}

/*--------ロケーション切り替え--------------*/
.location-bg{
	position:relative;
	margin: 0 auto;
}
.imgphoto02{
	position:absolute;
	right:10px;
	bottom:30px;
	font-size:.8rem;
}
.imgphoto03{
	position:absolute;
	right:10px;
	bottom:5px;
	font-size:.8rem;
}
.tab_name{
	font-size:2.3rem;
	margin:30px auto 0px;
	text-align:center;
	letter-spacing:2px;
	text-shadow: 0 0 20px rgba(255, 255, 255, 1)
}
@media (max-width: 768px) {
.tab_name{
	font-size:1.7rem;
	}
}


.demo__title{
    margin: 20px 0;
    font-size: 18px;
    /*background: linear-gradient(transparent 90%, #fbd1d2 30%);*/
}
.demo__sub-text{
    margin: 20px 20px 40px;
    font-size: 13px;
}
.tab__area{
    color: #333;
    margin: 50px auto ;
    font-size: 14px;
    line-height: 1.6;
    max-width:1040px;

}
@media (max-width: 768px) {
.tab__area{
	margin: 0px 0px 0;
	}
}
.tab__list{
    display: table;
    margin: 0 auto;
    width: 100%;
    zoom: 1;
    table-layout: fixed;
    border-spacing: 0;
}
@media (max-width: 768px) {
.tab__list{
    display: grid;
    grid-template-columns:1fr 1fr;
    flex-wrap:wrap;
    gap:10px; 
    margin:0 auto 10px;
    max-width:90%;
	}
}
.tab__item{
    display: table-cell;
    text-align: center;
    font-size: 12px;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position:relative;
}


.tab__item a{
    display: block;
    padding: 15px;
    margin: 10px 0px 0px;
    overflow: hidden;
    position: relative;
    color: #fff;
    background-color: #8C8C8C;
/*    border-radius: 3px 3px 0 0;*/
    font-size: 16px;
    text-decoration: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
@media (max-width: 768px) {
.tab__item a{
	margin: 0px 0px 0px;
	padding: 8px;	
	}
}

/* hover時の背景色（グレー）の指定 */
.tab__item a:hover{
    background-color: #333;
}
/* タブ選択時の文字色の指定 */
.tab__item a.selected{
  color: #fff;
}
/* タブ01（ピンク）の背景色と文字色の指定 */
.tab__item:first-child a.selected{
    background-color: #D65A33;
	
}
.border-red{border-bottom:4px solid #D65A33;}
.border-orange{border-bottom:4px solid #E19F46;}
.border-green{border-bottom:4px solid #4877B9;}
.border-blue{border-bottom:4px solid #32A2DA;}
.border-lime{border-bottom:4px solid #4BA662;}
.icon01,
.icon02,
.icon03,
.icon04,
.icon05 {
   position: absolute;
    top: 60%;
    left: 5px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.iicon img{
	max-width:18px;
}

/* タブ02（オレンジ）の背景色と文字色の指定 */
.tab__item:nth-child(2) a.selected{
    background-color:#E19F46;
}
/* タブ03（グリーン）の背景色と文字色の指定 */
.tab__item:nth-child(3) a.selected{
    background-color: #4877B9;
}
/* タブ04（グリーン）の背景色と文字色の指定 */
.tab__item:nth-child(4) a.selected{
/*    background-color: #32A2DA;*/
    background-color: #4BA662;
}
/* タブ05（グリーン）の背景色と文字色の指定 */
.tab__item:nth-child(5) a.selected{
    background-color: #4BA662;
}
.tab__inner{
    margin-top: -1px;
}
/* タブ01（ピンク）選択時のコンテンツ内の背景色の指定 */
.tab__inner .pink{
    padding: 20px;
    background-color:#FFEFE6;

}
/* タブ02（オレンジ）選択時のコンテンツ内の背景色の指定 */
.tab__inner .orange{
    padding: 20px;
    background-color: #FFF3DF;

}
/* タブ03（グリーン）選択時のコンテンツ内の背景色の指定 */
.tab__inner .green{
    padding: 20px;
    background-color: #E4EBFF;
}
.tab__inner .blue{
    padding: 20px;
    background-color: #EEFDFF;
    background: linear-gradient(-170deg, #EEFDFF 0%, #EEFDFF 60%, #8ad5ff 80%, #8ad5ff 100%);
}
.tab__inner .lime{
    padding: 20px;
    background-color: #EEFFE3;
}

.shopping-icon{
	color:#fff;
	background:#d65a33;
}
.food-icon{
	color:#fff;
	background:#E19F46;
}
.education-icon{
	color:#fff;
	background:#4877B9;
}
.medical-icon{
	color:#fff;
	background:#4BA662;
}
.color_shopping{
	color:#D65A33;
}
.shopping-border{
	border-bottom:3px solid #D65A33;
}
.color_restaurant{
	color:#E19F46;
}
.restaurant-border{
	border-bottom:3px solid #E19F46;
}
.color_education{
	color:#4877B9;
}
.education-border{
	border-bottom:3px solid #4877B9;
}
.color_medical{
	color:#32A2DA;
}
.medical-border{
	border-bottom:3px solid #32A2DA;
}
.color_public{
	color:#4BA662;
}
.public-border{
	border-bottom:3px solid #4BA662;
}

/*-------タブの中身の設計-------*/
.location-map{
	text-align:center;
	margin:0px auto 0px;
}
.tab_select{
	font-size:1.4rem;
	text-align:center;
	margin:0px auto 20px;
	line-height:1.3;
}
@media (max-width: 768px) {
.tab_select{
	font-size:1.1rem;
	}
}
.sisetsu-title{
	margin:0 auto;
	max-width:100%;
	font-size:1.6rem;
	margin:80px auto 25px;
}

@media (max-width: 768px) {
.sisetsu-title{
	max-width:95%;
	font-size:1.2rem;
	margin:40px auto 15px;
	}
}
.sisetsu-list{
	font-size:1rem;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
@media (max-width: 768px) {
.sisetsu-list{
	max-width:95%;
	margin:0px auto 0px;
	}
}
.sisetsu-list li{
	padding:7px 0;
}
.sisetsu-list li:last-child{
	text-align:right;
}
@media (max-width: 768px) {
.sisetsu-list li:last-child{
	font-size:.9rem;
	}
}

.shopping__border {
	border-bottom:1px solid #D65A33;

}
.shopping__border li:first-child::before{
/*	content:"●";*/
	color: #D65A33;

}
.restaurant__border {
	border-bottom:1px solid #E19F46;
}
.restaurant__border li:first-child::before{
/*	content:"●";*/
	color: #E19F46;
}
.education__border {
	border-bottom:1px solid #4877B9;
}
.education__border li:first-child::before{
/*	content:"●";*/
	color: #4877B9;
}
.medical__border {
	border-bottom:1px solid #32A2DA;
}
.medical__border li:first-child::before{
/*	content:"●";*/
	color: #32A2DA;
}
.public__border {
	border-bottom:1px solid #4BA662;
}
.public__border li:first-child::before{
/*	content:"●";*/
	color: #4BA662;
}

/*----------------------------------------

ショッピングモール

-----------------------------------------*/
.imgphoto{
	text-align:right;
	margin:5px 0 0; 
}
.shoppimg-mall_title{
	padding:150px 0 0px;
	color:#1F264E;
}

@media (max-width: 768px) {
.shoppimg-mall_title{
	padding:300px 0 0px;
	}
}
.shoppimg-mall_title .shoppimg-mall {
	text-align:center;
	font-weight:700;

}
.shoppimg-mall_title .shoppimg-mall dt{
	font-size:1.3rem;
}
@media (max-width: 768px) {
.shoppimg-mall_title .shoppimg-mall dt{
	font-size:1rem;
	}
}
.shoppimg-mall_title .shoppimg-mall dd{
	font-size:4rem;
	margin:-15px 0 0;
}
@media (max-width: 768px) {
.shoppimg-mall_title .shoppimg-mall dd{
	font-size:2.3rem;
	margin:-10px 0 0;
	}
}

.shoppimg-mall_div{
	background:url(/bunjyo/himejiotsu/location/images/mall-bg.png) no-repeat 0 0% #E0F4F7;
	background-size:100% auto;
	padding:5rem 0 ;
	margin:60px 0 30px;
}
@media (max-width: 768px) {
.shoppimg-mall_div{
	background:url(/bunjyo/himejiotsu/location/images/mall-bg.png) no-repeat 50% 0% #E0F4F7 ;
	background-size:120%;
	padding:2rem 0 ;
	margin:30px 0 ;
	}
}
.shoppimg-mall_box{
	background:#fff;
	max-width:1040px;
	margin: 0px auto;
	padding:60px;
	box-sizing: border-box;
}
@media (max-width: 768px) {
.shoppimg-mall_box{
	max-width:100%;
	margin: 0px auto;
	padding:5px 30px 30px;
	}
}

.shoppimg-mall_box .mall-list{
	margin: 0 0 40px;
	color:#1F264E;
}

.shoppimg-mall_box .mall-list dt{
	font-size:2.2rem;
	line-height:1.2;
}
@media (max-width: 768px) {
.shoppimg-mall_box .mall-list dt{
	font-size:1.7rem;
	margin: 0 0 20px;
	}
}

.shoppimg-mall_box .mall-list dd{
	font-size:1.3rem;
	margin:40px 0 0;
}
@media (max-width: 768px) {
.shoppimg-mall_box .mall-list dd{
	font-size:1.05rem;
	margin:10px 0 0;
	}
}

.mall-grid{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:0 10px;
}
@media (max-width: 768px) {
.mall-grid{
	grid-template-columns:repeat(2,1fr);
	gap:10px;
	}
}

.mall-grid div{
	text-align:center;
	padding:30px 15px 15px;
	box-sizing: border-box;
	background:#F2DCE3;
	color:#C85192;
	outline: 2px dotted #C85192;/*outlineでドットの線を追加*/
	outline-offset: -8px;/*outline-offsetの値を-15pxにして内側に調整*/
}
.mall-grid div dt{
	font-size:1.1rem;
	line-height:1.2;
}
@media (max-width: 768px) {
.mall-grid div dt{
	font-size:1rem;

	}
}
.mall-grid div dd {
	font-size:1.1rem;
}
.mall-grid div dd span{
	font-size:3rem;
}
.shoppimg-mall_box .mall-kome{
	font-size:.8rem;
	margin:10px 0 0;
	text-align:right;
}

/*------------------------------

モールの中身

--------------------------------*/
.mall-service{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:0 10px;
	align-items:center;
	margin:30px 0 30px;
/*	border-bottom:1px solid #6EB4A5;*/
	padding:0 0 30px;
}
@media (max-width: 768px) {
.mall-service{
	grid-template-columns:1fr;
	gap:20px;
	padding:0 0 10px;
	margin:40px 0 30px;
	}
}
.mall-service div p{
	font-size:1.8rem;
}

.mall-service .order02{
	position:relative;
}
.mall-service .order02{
	position:relative;
}


@media (max-width: 768px) {
.mall-service div p{
	font-size:1.4rem;
	line-height:1.3;
	}
.mall-service .order01{
	grid-row: 2;
	}
.mall-service .order02{
	grid-row: 1;
	}
}
.mall-service .ieon_copy{
	font-size:.8rem;
}
.mall-floor{
	display:grid;
	grid-template-columns:1fr 6fr;
	gap:0 10px;
	align-items:center;
}
.mall-floor dt{
	background:#C8508C;
	color:#fff;
	text-align:center;
	padding:10px 5px;
	font-size:1.2rem;
}
@media (max-width: 768px) {
.mall-floor dt{
	padding:10px 10px;
	font-size:1rem;
	}
}
.mall-floor dd{
	font-size:1.6rem;
	color:#C8508C;
}
@media (max-width: 768px) {
.mall-floor dd{
	font-size:1.3rem;
	}
}
.floor-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:0 10px;
	align-items:center;
	margin:15px 0 40px;
}
@media (max-width: 768px) {
.floor-grid{
	grid-template-columns:1fr;
	gap:10px;
	margin:15px 0 40px;
	}
}
.floor-grid div{
	font-size:1.1rem;
	background:#6EB4A5;
	color:#fff;
	border-radius:5px;
	padding:20px 5px;
	text-align:center;
	font-weight:var(--w-700);
}
@media (max-width: 768px) {
.floor-grid div{
	font-size:.95rem;
	padding:10px 5px;
	}
}

.floor-grid02{
	display:grid;
	grid-template-columns:1fr 1fr ;
	gap:10px;
	align-items:center;
	margin:15px 0 0px;
}
@media (max-width: 768px) {
.floor-grid02{
	grid-template-columns:1fr 1fr;
	}
}

.floor-grid02 div{
	font-size:1.1rem;
	background:#6EB4A5;
	color:#fff;
	border-radius:5px;
	padding:20px 5px;
	text-align:center;
	font-weight:var(--w-700);
}
@media (max-width: 768px) {
.floor-grid02 div{
	font-size:.95rem;
	padding:10px 5px;
	}
.floor-grid02 .items01{
	grid-column:1;
	}
.floor-grid02 .items02{
	grid-column:2;
	}

.floor-grid02 .items04{
	grid-column:span 2;
	grid-row:2;
	}
.floor-grid02 .items05{
	grid-column:span 2;
	grid-row:3;
	}
.floor-grid02 .items06{
	grid-column:span 2;
	grid-row:4;
	}
.floor-grid02 .items07{
	grid-column:span 2;
	grid-row:5;
	}
}

.mall-child{
	font-size:1.8rem;
	margin:60px 0 40px;
	border-bottom:2px solid #6EB4A5;
	padding:10px 0;
	line-height:1.3;
	color:var(--point);
}
@media (max-width: 768px) {
.mall-child{
	font-size:1.4rem;

	}
}
/*------------------------------

livable-city

--------------------------------*/
.livable-city{
	background:url(/bunjyo/himejiotsu/location/images/city-bg.png) no-repeat #fff 100% 0% ;
	background-size:100%;
	padding:5rem 0 40rem;
	position:relative;
}
@media (max-width: 768px) {
.livable-city{
	background:url(/bunjyo/himejiotsu/location/images/city-bg_sp.png) no-repeat #fff 0% 0% ;
	background-size:cover;
	padding:1rem 0 25rem;
	}
}

.livable-city_div{
	color:#131D43;
	max-width:550px;
	display:block;
	margin: 0 0 0 auto;
}
@media (max-width: 1280px) {
.livable-city_div{
	max-width:70%;
	display:block;
	margin: 0 0 0 auto;
	text-align:right;
	}
}
@media (max-width: 768px) {
.livable-city_div{
	max-width:100%;
	display:block;
	margin: 0;
	text-align:left;
	}
}

.livable-city_div dt{
	font-size:2rem;
	line-height:1.3;
}
.livable-city_div dt span{
	font-size:5rem;
	display:block;
}
@media (max-width: 768px) {
.livable-city_div dt span{
	font-size:2em;
	}
}

.livable-city_div dd{
	font-size:1.2rem;
	margin:20px 0 0;
}
@media (max-width: 768px) {
.livable-city_div dd{
	font-size:1rem;
	margin:0px 0 0;
	}
}

.livable-city-another{
	background:#F1F3E9;
	padding:4rem 0 4rem;
}
@media (max-width: 768px) {
.livable-city-another{
	padding:2rem 0;
	}
}
.livable-city_map{
	display:grid;
	grid-template-columns:1fr 1fr ;
	gap:10px;
}
@media (max-width: 768px) {
.livable-city_map{
	grid-template-columns:1fr;
	gap:40px;
	}
}

.livable-city_map dt{
	position:relative;
}



.livable-city_map dd{
	font-size:1.1rem;
	margin:10px 0 0;
}
@media (max-width: 768px) {
.livable-city_map dd{
	font-size:1rem;
	}
}
.location-notice{
	margin:45px 0;
	font-size:.9rem;

	
}
.location-notice li{
	padding-left:1em;
	text-indent:-1em;
}

.location-notice li::before{
	content:"※";
}
@media (max-width: 768px) {
.location-notice{
	margin:0px auto;
	max-width:100%;
	font-size:.8rem;
	padding:20px 0  ;
	}
.bilingual{
	display:block;
	margin:-5px 0 0;
	}
}
