/*
Theme Name: hinata
Theme URI: https://hinata-campus.com/
Description:ひなたキャンパス
Author: kusamura
Author URI: http://den55.com/
Version: 1.0
License: GNU General Public License
License URI:
Tags: red, white, two-columns, editor-style, custom-menu
Text Domain: den55
*/

/****************************************

General Setting

 *****************************************/
@import url(//use.fontawesome.com/releases/v5.15.4/css/all.css);

* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
	    margin: 0;
    padding: 0;
}

html{
  margin: 0;
  padding: 0;
	 scrollbar-gutter: stable;
}
body {
	font-family:'Noto Sans JP', sans-serif;
	color: #231815;
	font-size: 16px;
	line-height: 180%;
	background-color: #FFFFFF;
	margin: 0px;
	padding: 0px;
}

/**/
.wrapper{
    padding: 0 100px;
    width: 100%;
    max-width: 1800px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.content_area{
	margin-top: 150px;
	margin-bottom: 100px;
}
img {
  border:0;
}
a {
    color: inherit;
    text-decoration: none;
}

/*リンク下線つき*/
.for_rink{
	color: #0000ff;
	text-decoration: underline;
}

/* clearfix */

.clearfix {
  overflow: hidden;
  zoom: 1;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}
.clear {
	clear:both;
}
.wp-caption{}
.wp-caption-text{}
.sticky{}
.gallery-caption{}
.bypostauthor{}
.aligncenter{}
p {
	margin: 0px;
	padding: 0px;
	line-height: 180%;
}
.screen-reader-text{}

/*スマホの時だけ改行させる*/
.sma{
    display: none;
}
/*Chrome 黒い線を消す*/
input {
  outline: none;
}
/*PCは非表示　スマホ表示*/
.nopc_sma{
	display: none;
}
/*PCは表示　スマホ非表示*/
.pc_nosma{
	display: block;
}
/****************************************

タイトル

 *****************************************/
.cd-fixed-bg{
	width: 100%;
	height: 70vh;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: relative;
		
}
/*固定ページごとにH1の背景を設定*/  

.cd-fixed-bg.greetings {
	background-image: url(images/h1_greetings.jpg);
	}
.cd-fixed-bg.jigyogaiyo {
	background-image: url(images/h1_jigyogaiyo.jpg);
	}
.cd-fixed-bg.shisetu {
	background-image: url(images/h1_shisetu.jpg);
	}
.cd-fixed-bg.flow {
	background-image: url(images/h1_flow.jpg);
	}
.cd-fixed-bg.utilization-charge {
	background-image: url(images/h1_utilization-charge.jpg);
	}
.cd-fixed-bg.reservation {
	background-image: url(images/h1_reservation.jpg);
	}
.cd-fixed-bg.inquiry {
	background-image: url(images/h1_inquiry.jpg);
	}
.cd-fixed-bg.tokushoho {
	background-image: url(images/h1_tokushoho.jpg);
	}
.cd-fixed-bg.terms_of_use {
	background-image: url(images/h1_terms_of_use.jpg);
	}
.cd-fixed-bg.privacy_policy {
	background-image: url(images/h1_privacy_policy.jpg);
	}
.cd-fixed-bg.outline {
	background-image: url(images/h1_outline.jpg);
	}
.cd-fixed-bg.jigyo {
	background-image: url(images/h1_jigyogaiyo.jpg);
	}
.cd-fixed-bg.access {
	background-image: url(images/h1_access.jpg);
	}
.cd-fixed-bg.floor_map {
	background-image: url(images/h1_floor_map.jpg);
	}
.cd-fixed-bg.facility_description {
	background-image: url(images/h1_facility_description.jpg);
	}
.cd-fixed-bg.my-calendar {
	background-image: url(images/h1_my-calendar.jpg);
	}
.cd-fixed-bg.lecture-hall {
	background-image: url(images/h1_lecture-hall.jpg);
	}
.cd-fixed-bg.community-lounge {
	background-image: url(images/h1_community-lounge.jpg);
	}
.cd-fixed-bg.free-address-area {
	background-image: url(images/h1_free-address-area.jpg);
	}
.cd-fixed-bg.lecture-room {
	background-image: url(images/h1_lecture-room.jpg);
	}
.cd-fixed-bg.plaza {
	background-image: url(images/h1_plaza.jpg);
	}
.cd-fixed-bg.digital-signage {
	background-image: url(images/h1_digital-signage.jpg);
	}
.cd-fixed-bg.takeout-cafe {
	background-image: url(images/h1_takeout-cafe.jpg);
	}
.cd-fixed-bg.office {
	background-image: url(images/h1_office.jpg);
	}
.cd-fixed-bg.work_spot {
	background-image: url(images/h1_work_spot.jpg);
	}
.cd-fixed-bg.booth {
	background-image: url(images/h1_booth.jpg);
	}
/*画像無しページタイトル*/
.no_imgtitle_bg{
	text-align: center;
	margin: 0 auto 100px;
	    width: 100%;
    max-width: 1800px;

}
/*お知らせ　個別ページ用*/
.cd-fixed-singlebg{
	width: 100%;
	height: 80vh;
	overflow: hidden;
	display: flex;
	 justify-content: center;
	align-items: center;
}
.cd-fixed-singlebg img{
width: 100%;
  height: auto;
}
.cd-fixed-singlebgsvg{
	width: 100%;
	height: 80vh;
	overflow: hidden;
	display: flex;
	 justify-content: center;
	align-items: center;
	border-bottom: solid 1px #cccccc;
}
.cd-fixed-singlebgsvg img{
width: 40%;
  height: auto;
}

h1, h2, h3, h4, h5, h6{
	font-weight: normal;
	margin: 0px;
}
h1{
	line-height: 200%;
	}
h1.postfacilities{
	background-color: rgba(255,255,255,0.9);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	white-space: nowrap;
	padding: 50px;
	display: flex;
	align-items: center; 
}



h1.pagenotitle {
    display: inline-block;
    position: relative;
    color: #333;
	padding-bottom: 10px;
}

h1.pagenotitle:before {
    content: '';
    display: inline-block;
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    height: 10px;
	border-radius: 5px;
    background-color: #0075c2;
}
.lecture-hall{
	color: #315b89;
	font-weight: bold;
}
.community-lounge{
	color: #e07f00;
	font-weight: bold;
}
.free-address-area{
	color: #c25160;
	font-weight: bold;
}
.lecture-room{
	color: #6356a3;
	font-weight: bold;
}
.plaza{
	color: #00ada9;
	font-weight: bold;
}

.digital-signage{
	color: #008ccf;
	font-weight: bold;
}
.takeout-cafe{
	color: #956134;
	font-weight: bold;
}
.other-facilities{
	color: #956134;
	font-weight: bold;
}

.rank{
	display: inline-block;
	margin-right: 20px;
	font-size: 18px;
	border-bottom: solid 2px #FFFFFF;
	border-top: solid 2px #FFFFFF;
}
.phototext{
	position: absolute;
	right: 0;
	bottom: 0;
	background-color: rgba(255,255,255,0.9);
	padding: 20px;
	font-size: 18px;
	font-weight: bold;
	
	
}

h2 {
  align-items: center;
  display: flex;
	justify-content: center;
	font-size: clamp(1.25rem, 1.114rem + 0.68vw, 1.625rem);
	margin: 30px 0;
}


h2.heading-33 {
    border-bottom: 3px solid #f2f2f2;
	text-align: left;
}

h2.heading-33 span {
    display: inline-block;
    position: relative;
    padding: 0 .4em .2em;
    color: #ffffff;
}

h2.heading-33 span::before {
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #2589d0;
    content: '';
}
h2.heading-calendar {
    border-bottom: 3px solid #f2f2f2;
}

h2.heading-calendar span {
    display: inline-block;
    position: relative;
    padding: 0 .4em .2em;
    color: #231815;
}

h2.heading-calendar span::before {
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #2589d0;
    content: '';
}
h3{
	margin-bottom: 30px;
	font-size: clamp(1.25rem, 1.114rem + 0.68vw, 1.625rem);
}
h6{
	font-size: 80%;
}

/*スクロールダウン全体の場所*/
.scrolldown{
	position:absolute;
	left:50%;
	transform: translateX(-50%);
	bottom:15px;
	height:50px;
	white-space: nowrap;
}

/*Scrollテキストの描写*/
.scrolldown span{
    /*描画位置*/
	position: absolute;
	left: 50%;
	top: -30px;
	transform: translateX(-50%);
    /*テキストの形状*/
	color: #cccccc;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
}

/* 線の描写 */
.scrolldown::after{
	content: "";
    /*描画位置*/
	position: absolute;
	top: 0;
    /*線の形状*/
	width: 1px;
	height: 30px;
	background: #cccccc;
    /*線の動き1.4秒かけて動く。永遠にループ*/
	animation: pathmove 1.4s ease-in-out infinite;
	opacity:0;
}

/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:30px;
		opacity: 1;
	}
	100%{
		height:0;
		top:50px;
		opacity: 0;
	}
}

/****************************************

テキスト　装飾 画像デフォルトエリア

 *****************************************/

.text_center{
	text-align: center;
}
.text_left{
	text-align: left;
}
.text_right{
	text-align: right;
}
.bold{
	font-weight: bold;
}
.text_blue{
	color: #387dce;
}
.text_mainbule{
	color: #1b3c76;
}
.text_white{
	color: #FFFFFF;
}
.text_green{
	color: #00a73c;
}
.text_orange{
color: #ea5205;	
}
.text_pink{
color: #eb6ea5;	
}
.text_22{
	font-size:clamp( 18px, 3vw, 22px) ;
	
}
.text_18{
	font-size:clamp( 15px, 3vw, 18px) ;
	
}
.text_36{
	font-size:clamp( 20px, 3vw, 36px) ;

}
.text_70{
	font-size: 70%;
}
.text_80{
	font-size: 80%;
}
.text_90{
	font-size: 90%;
}
.img_area{
	width: 100%;
}
.img_area img{
	width: 100%;
	height: auto;
	vertical-align:top;
}
.margintop10{
	margin-top: 10px;
}
.margintop20{
	margin-top: 20px;
}
.margintop50{
	margin-top: 50px;
}
.marginbottom20{
	margin-bottom: 20px;
}
.marginbottom50{
	margin-bottom: 50px;
}
.padding_t50{
	padding-top: 50px;

}
.padding_b50{
	padding-bottom: 50px;

}
.padding_all20{
	padding: 20px;
}

.mb60{
	margin-bottom: 60px;
		}
		
.mt30{
	margin-top: 30px;
		}
.ml15{
	margin-left: 15px;
}
/*共通パディング*/
.common_areap50{
	padding: 50px 0;
	}
/****************************************

block　Flexbox スタイル　

****************************************/
/*〇両端のアイテムを余白を空けずに均等*/
.f-containersb{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	align-items: stretch;

}
/*〇両端のアイテムも含めて余白を均等*/
.f-containersa{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-around;
	align-items: stretch;

}
/*左右中央*/
.f-containercen{
	display:flex;
	flex-wrap:wrap;
	align-items: stretch;
	justify-content: center;

}
/*左右配置 上合わせ*/
.f-rightleftstart{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
/*並べて中央高さをあわせる*/
.f-containercc{
	display:flex;
	align-items: center; 
	justify-content: center;
}

/* ---------------------------------------------------------------------------------------------

　   HEADER

--------------------------------------------------------------------------------------------- */
#header {
  z-index: 99;
	width: 100%;
  top: 0;
  left: 0;
	height: 100px;
	position: fixed;
}
#h_top{
	display: flex;
	justify-content: space-between;
}
.h_logo{
	width: 250px;
	margin: 20px;
	position: relative;
	z-index: 500;
}
.h_logo img {
	width: 100%;
	height: auto;
  }
.h_nav{
	z-index: 100;

}
nav li {
  font-size: 16px;
  letter-spacing: 0.2em;
}


#gNav .nav {
    overflow-y: auto;
    height: 100vh;
  }
  .mean-nav .container {
    padding: 0;
  }
  nav li .fa {
    display: none;
  }

  #gNav li:last-child {
    margin-right: 0;
  }
  #gNav li i {
    font-size: 16px;
    margin-left: 5px;
  }
  #gNav li a {
    position: relative;
    display: block;
    text-align: center;
    line-height: 80px;
  }
#gNav .sub-menu {
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
  }

  #gNav ul > li:hover {
    -webkit-transition: all .5s;
    transition: all .5s;
  }
  #gNav ul > li:hover a,#gNav .current-menu-item a,#gNav .current-menu-parent a {
    color: #bfd0ff;
  }
  #gNav li:hover ul.sub-menu {
    top: 80px;
    visibility: visible;
    opacity: 1;
    z-index: 9999;
	    }

  #gNav li ul li:after {
    content: none;
  }
 #gNav li:hover ul.sub-menu a {
    color: #111;
  }
  #gNav .sub-menu li a:hover {
    background: #fff;
  }
  #gNav .contact_btn a:hover {
    color: #fff;
  }	
/*top固定メニュー*/	
.top_flexmenu{
	display: flex;
	margin-right: 80px;
	height: 80px;
		}
.menu_shisetuyoyaku{
	position: relative;
	z-index: 100;
	display: flex;
	flex-direction: column;
	justify-content: center;
	 align-items: center;
	padding: 10px 20px 0;
		}
.overlink{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-indent: -999px;

}	
.bg_orange{
	background-color: #ea5205;
	color: #FFFFFF;
		}
.bg_blue{
	background-color: #00355b;
	color: #00355b;
		}	
.waku_blue{
	border: solid 2px #00355b;
	color: #00355b;
	border-right: none;
	background-color: #ffffff;
		}		
.blue{
	color: #00355b;
		}
.menu_icon{
	width: 50px;
		}
.menu_icon img{
	width: 100%;
	height: auto;
		}
.menu_tellarea{
	display: flex;
	align-items: center;
	background-color: #00355b;
	color: #ffffff;
	padding: 10px 20px 0;
		}
.menu_fortelltext{
	text-align: center;
	line-height: 120%;
		}	
	

	
/****************************************

トップページ　スタイル

****************************************/
/* 背景スライダー */
.background-slider {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.background-slider .slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
}

.background-slider .slide.active {
  opacity: 1;
  z-index: 1;
}

.background-slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform 12s linear;
}

/* active のときズーム */
.background-slider .slide.active img {
  transform: scale(1.2);
}

/* コンテンツ部分 */
.page {
  position: relative;
  z-index: 1;
}
.hero {
  height: 100vh;
  display: grid;
  place-items: center;
  color: #fff;
}
.hero .hero-inner {
  text-align: center;
  padding: 24px 32px;
  font-size: clamp(22px, 3vw, 36px);
  text-shadow: 0 2px 8px rgba(0,0,0,.4);
}
.hero .hero-inner p{
	margin-top: 30px;
}

.section {
  position: relative;
  padding: 120px 24px;
  background: #1b3c76;

}

.section_wh {
	  position: relative;
  padding: 120px 24px;
	background-color: #ffffff;

}
.section.alt {
  background: rgba(0,153,255,0.9);
  color: #fff;
}
.section p { max-width: 960px; margin: 0 auto; }

/*イベントスケジュール*/
.calendar-mobile {
  display: none;
}

/*お知らせ*/
	
.top_newsconarea{
	width: 70%;
	    max-width: 1000px;
    margin: 50px auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
		}
.top_newslist {
  display: flex;
  align-items: flex-start;
  padding: 30px;
	margin: 0 0 3px;
  gap: 15px;
	background-color: #FFFFFF;
	color: #231815;
}
.news_archiveflyerimg{
	width: 20%;
	overflow: hidden;
	display: flex;
	 justify-content: center;
	align-items: flex-start;
	margin-right: 30px;
	aspect-ratio: 4 / 3;
	border: solid 1px #cccccc;
}

.news_archiveflyerimg img{
	width: 100%;
	height: auto;
	object-fit: cover;
	
}


.news_archivecon {
  flex: 1;
}

.news_aday {
  font-size: 0.9em;
  color: #666;
  margin-bottom: 5px;
}

.news_aday .term {
  margin-left: 5px;
}

.news_aday .term a {
  background: #1b3c76;
  padding: 2px 6px;
  border-radius: 3px;
  font-size: 0.85em;
  color: #ffffff;
  text-decoration: none;
}

.top_newstitle a {
  	font-size: 18px;
	color:#1b3c76; 
  font-weight: bold;
  text-decoration: none;

}

.top_newstitle a:hover {
  text-decoration: underline;
}


/*top施設紹介*/
.top_shisetsuarea {
  display: grid;
  gap: 20px;
	margin: 50px 0;
	grid-template-columns: repeat(4, 1fr);
}

	
.top-sitem {
  display: flex;
  flex-direction: column;
	margin-bottom: 30px;
	background-color: #ffffff;
	height: 100%;
}
.top-sitem:hover img{
	opacity: 0.6;
	
}
.top_shisetsuimgarea {
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;

}
.top_shisetsuimgarea img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.top_shisetsutitle {
  flex-grow: 0;
  text-align: center;
	padding: 20px 0 0;
	color: #ea5205;
	font-size: 20px;
}
.top_shisetsutext {
	padding: 20px;
}
/*もっと見る*/
.viewbutton a {
    position: relative;
    overflow: hidden;
    border-radius: 3px;
    text-decoration: none;
    display: block;
    max-width: 300px;
    background: #ffffff;
    margin: auto;
    padding: 10px 20px;
    text-align: center;
    line-height: 1.8;
    text-decoration: none;
    outline: none;
    transition: ease .2s;
	color: #231815;
}

.viewbutton a span {
    position: relative;
    z-index: 3;
}

.viewbutton a:hover span{
    color:#fff;
}

.viewbutton a:hover {
    color: #FFF;
}			
.bgcentery:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  background: #0068b7;
  width: 100%;
  height: 100%;
  transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(1, 0);
  transform-origin:center;
}

.bgcentery:hover:before{
  transform:scale(1, 1);
}
/*お知らせ用*/
span.viewmore::before {
	ontent: "";
	  font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-size: 14px;
	font-weight: bold;
	margin-right: 10px;
	color: #231815;
}
.viewbutton a:hover span.viewmore::before {
  color: #ffffff;
}
span.outside-link{
	font-size: 80%;
		}	

/*トップアクセス*/
.top_accessarea{
	display: flex;
		}	
.top_access_left{
	width: 50%;
		}	
	
.top_access_right{
	width: 50%;
		}


/****************************************

Footer

 *****************************************/
.footer_smpflex{
	display: none;
}
.footer_allarea{
	width: 100%;
	position: relative;
	z-index: 5;
	background-color: #ffffff;
}
.footer_area{
	background-color: #f7f8f8;
	padding: 20px;
	}


ul.footer_list{
	width: 100%;
	font-size: 90%;
	display: flex;
	flex-wrap:wrap;
	}	
ul.footer_list li{
	margin-right: 20px;
	list-style-type: none;
	}


.footer_textarea{
	display: flex;
	justify-content: center;
	margin-top: 30px;
	}
.footer_leftlogo{
	width: 200px;
	margin-bottom: 20px;
		}
.footer_leftlogo img{
	width: 100%;
	height: auto;
		}

.footer_adressarea{
width: 300px;
	
		}		
.footer_iconarea{
	display: flex;
	 justify-content: space-between;
	margin-bottom: 50px;
	margin: 20px 0;
	padding: 20px 40px;
	width: 200px;
	height: 80px;

}
.footer_icon{
	width: 40px;
		}
.footer_icon img{
	width: 100%;
	height: auto;
		}	

.footer_kanrenlist{

}
.footer_kanrenlist div{
	text-align: center;
	}


ul.footer_grouplist li{
	list-style-type: none;
	font-size: 90%;
}

ul.footer_grouplist li::before{
	  font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-size: 14px;
	font-weight: bold;
	margin-right: 10px;
		}
.footer_bottomlist{
	background-color: #f7f8f8;
		display: flex;
	justify-content: center;
	padding: 10px 0;
	margin-top: 30px;
	}
.footer_bottomlist div{
	margin-right: 10px;
	padding-right: 10px;
	border-right: solid 1px #231815;
	font-size: 90%;
	}
.footer_bottomlist div:nth-of-type(3){
	margin-right: 0;
	padding-right: 0;
	border-right: none;
	}		
.copyright{
		text-align: center;
		font-size: 80%;
	background-color: #1b3c76;
	color: #ffffff;
	padding: 10px 0;
	
	}	
	
.footerno_pc{
	display: none;
	}

/****************************************

editor

 *****************************************/
strong{font-weight: bold;}
em { font-style: italic; }
blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 40px;
  -webkit-margin-end: 40px;
}
                             
/* img */

.aligncenter {
  display: block;
  margin: 0 auto;
}
.alignright {
	float: right;
	margin-left: 30px;
	margin-top: 20px;
}
.alignleft {
	float: left;
	margin-right: 30px;
	margin-top: 20px;
}

img[class*="wp-image-"],
img[class*="attachment-"] {
  height: auto;
  max-width: 100%;
}
	
/****************************************

固定ページ　page.php

 *****************************************/


/*施設概要*/
.perth_area{
	width: 100%;
	margin-bottom: 50px;
	margin-top: 50px;
}
.perth_area img{
	width: 100%;
	height: auto;
}
.shisetu_tablearea{
	width: 45%;
}
.shisetu_yallowbg{
	background-color: #fffcd1;
}
table.shisetu_table{
	width: 100%;
	margin-bottom: 30px;

}
table.shisetu_table, th, td {
  border:1px solid #333333;
	border-collapse: collapse;
	background-color: #FFFFFF;
}
table.shisetu_table th {
	width: 60%;
}
table.shisetu_table td {
	width: 40%;
	text-align: right;
	padding: 10px 20px;
}
/*面積と定員*/
.table_area01 {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  max-width: 700px;
  text-align: center;
	margin-bottom: 30px;
}
.table_area01 th, .table_area01 td {
  border: 1px solid #333333;
  padding: 1em;
}
.table_area01 thead th {
  background-color: #fffcd1;
  color: #231815;
  border: 1px solid #333333;
  border-right: 1px solid #333333;
  border-bottom: 1px solid #333333;
}
.table_area01 thead th:last-of-type {
  border-right: 1px solid #333333;
}
.table_area01 tbody th {
  color: #1b3c76;
  font-weight: bold;
  text-align: center;
}


/*360*/
.vr_area{
	width: 60%;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}
.vr-ratio iframe {
  width: 100%;
	height: auto;
  aspect-ratio: 4 / 3;
}
.address{
	text-align: center;
	margin-bottom: 20px;
	margin-top: 50px;
	font-size:clamp(1.125rem, 1.034rem + 0.45vw, 1.375rem) ;
	
}		
.address_map{
	width: 60%;
		margin-left: auto;
	margin-right: auto;
}
.address_map img{
	width: 100%;
	height: auto;
		}		
.access_area{
	width: 100%;
	margin: auto;
		}	
.access{
	  display: flex;
  flex-wrap: wrap;
		}
	
.access dt {
  width: 30%;
	border:  solid 2px #0075c2;
	padding: 20px;
	color: #0075c2;
	margin: 0 0 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
}
.access dd{
	  width: 70%;
	padding: 10px;
		display: flex;
	align-items: center;
	margin: 0 0 50px;
		}		
.access ul{
	margin: 0 0 0 20px;
	padding: 0;
		}
/*施設紹介*/		
h3.facility_description{
	color: #FFFFFF;
	padding: 20px;
	text-align: center;
	margin: 100px 0;
	font-size: clamp(1.25rem, 1.159rem + 0.45vw, 1.5rem);/*20-24*/
	
		}	
#bg_lecture-hall{
	background-color: #315b89;
		}
#bg_community-lounge{
	background-color: #e07f00;
		}
#bg_free-address-area{
	background-color: #c25160;
		}		
#bg_lecture-room{
	background-color: #6356a3;
		}
#bg_plaza{
	background-color: #00ada9;
		}
#bg_digital-signage{
	background-color: #008ccf;
		}
#bg_takeout-cafe{
	background-color: #956134;
		}
#bg_other-facilities{
	background-color: #956134;
		}	
.facility_flexleft{
	    padding: 0;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	
		}
.facility_flexright{
		    padding: 0;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
		}		
.facility_photoarea{
	width: 48%;
	aspect-ratio: 16 / 9;
		}
.facility_photoarea img{
	width: 100%;
	height: auto;
	overflow: hidden;
		}
.facility_textarea{
	width: 48%;
	font-size: 18px;
	line-height: 200%;
		}		

/*予約について*/

.shisetuyoyaku_area{
	width: 47%;
		}
.shiharaititle{
  position: relative;
  padding: 0.5em;
	height: 80px;
	display: flex;
	align-items: center;
	font-size: 22px;
}

.shiharaititle::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px rgb(210, 210, 210);
}		
		
.yoyaku_textarea{
	background-color: #fdfdfd;
	padding: 20px;
	margin-left: 22px;
	margin-top: -15px;
		}		
.bglline_orange{
	background-color: #fef8fb;
	border-left: solid 5px #ea5205;
	color: #ea5205;
		}		
.bglline_pink{
	background-color: #fef8fb;
	border-left: solid 5px #eb6ea5;
	color: #eb6ea5;
	
		}
/*フローチャート*/
.two_division{
	display: flex;
	justify-content: space-around; 
	}
.two_division2{
	display: flex;
	justify-content: space-around; 
	}
.width_50area{
	width: 50%;
	text-align: center;
	}	
	
.center-inblock{
	display: inline-block;
	margin-right:auto;
	margin-left:auto;
	padding: 20px;
	border-radius: 20px;
	text-align: left;
}
	
.bgtext_orange{
	background-color: #ea5205;
	color: #FFFFFF;
		}		
.bgtext_pink{
	background-color: #eb6ea5;
color: #FFFFFF;
		}
.bgtext_blue{
	background-color: #0075c2;
	color: #FFFFFF;
	}
.info_centerblok{
	text-align: center;
	padding: 20px 0;
	background-color:#d9edf7;
	color:#31708f;
	margin-top: 20px;
	}
.m-arrow-down{
	margin: 20px 0;
	}
.dli-chevron-down {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: 1.5em;
  height: 1.5em;
  border: 0.5em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(-25%) rotate(135deg);
}

.yoyaku_infotext{
	text-align: left;
	padding: 20px;
	}

/*イベントカレンダー*/
.mc-categories{
	color: #0075c2;
}
.mc-event-image {
  margin-top: 1.5em;
  text-align: center;
}

.mc-event-image img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
}
span.date-wrapper{
	margin-right: 2em;
}
.sub-details{
	margin: 50px 0;
}




/*特定商取引法に基づく表記*/
table.tbl-r02{
  margin: 20px auto;
	border-collapse:collapse;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
table.tbl-r02 tr{
  background-color: #fff;
  border: 1px solid #333333;
  padding: .35em;
		}
table.tbl-r02 th {
  padding: 1em 10px 1em 1em;
	color: #FFFFFF;
	background-color: #777777;
}
table.tbl-r02 td {
  padding: 1em 10px 1em 1em;
}


/*利用規約とプライバシーポリシー*/
.cancelarea{
	margin-left: 30px;
	margin-top: 30px;
	width: 600px;
}
.cancelarea div{
	color: #0075c2;
	font-weight: bold;
	}
	
dl.cancel_list{
	  display: flex;
  flex-wrap: wrap;
  width: 100%;
	box-sizing: border-box;
	margin-bottom: 80px;
	}
dl.cancel_list dt::before{
	   content: "●";
   padding-right: 5px;
   color: #0075c2;
	font-size: 70%;
	
	}
	
dl.cancel_list dt{
	margin: 0;
	padding: 10px;
	width: 350px;
	box-sizing: border-box;
	}
dl.cancel_list dt:nth-of-type(2n){
	background-color: #F6F6F6;
	}	
dl.cancel_list dd{
	margin: 0;
	padding: 10px 0;
	width: calc(100% - 350px);
	box-sizing: border-box;
	font-weight: bold;
	}
dl.cancel_list dd:nth-of-type(2n){
	background-color: #F6F6F6;
	}

.listdefault p{
	text-indent: 1em;
		}	
/*ol要素の共通設定*/  
ol.propositions, ol.propositions, ol{
  padding-left: 1em; /*入れ子が起こるたびにインデント．0でもよいと思う*/
}
		
/*数字*/		
ol.number{
	padding-left: 1em;
		}
ol.number li{
  list-style-type:none; /*標準の番号を消す*/
  margin-left: 3em;     /*下のmargin-leftの符号違いを設定*/
	margin-bottom: 1em;
	counter-increment: noitem;
	}
ol.number li:before {
  content: counter(noitem)'.';
	font-weight: bold;
	color: #0075c2;
	  display: inline-block; 
  text-align: right; /*i), ii)などを右寄せさせるため*/
  width: 2em;        /*リスト番号の幅*/
  margin-right: 1em; /*リスト番号と文章の間隔*/
  margin-left: -3em; /*上の2つと足して0になるように設定*/
		}
		
/*かっこ*/
ol.propositions li{
  list-style-type:none; /*標準の番号を消す*/
  margin-left: 3em;     /*下のmargin-leftの符号違いを設定*/
	margin-bottom: 1em;
}

ol.propositions li:before{
  display: inline-block; 
  text-align: right; /*i), ii)などを右寄せさせるため*/
  width: 2em;        /*リスト番号の幅*/
  margin-right: 1em; /*リスト番号と文章の間隔*/
  margin-left: -3em; /*上の2つと足して0になるように設定*/
}

/*カウンターの設定（olの階層ごとに設定）*/
ol.propositions>li{
  counter-increment: level1;
}

ol.propositions>li:before{
	content: "(" counter(level1) ") ";
  font-weight: bold;
	color: #0075c2;
}
/*丸数字*/
ol.circle_number>li{
  counter-increment: level2;
	position: relative;
}

ol.circle_number>li:before{
  content: counter(level2);
  border: 1px solid;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 22px;
  width: 22px;
  font-size: 85%;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}
/*ulドット*/
ul.dotlist{
	padding-left: 0;
	margin-left: 0;
		}
ul.dotlist>li{
  counter-increment: dot1;
}

ul.dotlist>li:before{
	content: '・';
  font-weight: bold;
	color: #0075c2;
}
.tR{
	text-align: right;
		}

/*各施設利用料金*/
.red_btext{
	color: #ff0000;
	font-weight: bold;
		}

.tbl-r05 {
	width: 100%;
	 border-collapse: collapse;
 border-spacing: 0;
	
  }
.tbl-r05 tr:nth-child(2n+1) {
 background: #f8f8f8;
	
}
.tbl-r05 th {
 padding: 10px;
 background: #f0f0f0;
	text-align: center;
	border: solid 1px #898989;
}
.tbl-r05 th:last-child {

}
.tbl-r05 td {
 padding: 10px;
border: solid 1px #898989;
	text-align: center;
}
.tbl-r05 td:last-child {

}
  .tbl-r05 td > span{
      display: block;
	  margin: 0 auto;
      width:6em;
      text-align: right;
  }

.tbl-r05 td:first-child {
	font-weight: bold;
	text-align: left;
 
}
.tbl-r05.lecture-hall-text td:first-child {
color: #315b89;
 }
.tbl-r05.lecture-room-text td:first-child {
color: #6356a3;
 }
.tbl-r05.free-address-area-text td:first-child {
color: #c25160;
 }
.tbl-r05.community-lounge-text td:first-child {
color: #e07f00;
 }
.tbl-r05.other-facilities-text td:first-child {
color: #956134;
 }
.tbl-r05.plaza-text td:first-child {
color: #00ada9;
 }

.setubibox {
    position: relative;
    margin: 50px 0 0 0;
    padding: 10px;
    border: solid 3px #778ca3;
	display: inline-block;
	background-color: #FFFFFF;
}
.setubibox .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #778ca3;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.setubibox p {
    margin: 0; 
    padding: 0 0 20px;
}
.foryoyakubox {
    position: relative;
    margin: 50px 0 50px 0;
    padding: 10px;
    border: solid 3px #0075c2;
	background-color: #FFFFFF;
	display: inline-block;
}
.foryoyakubox .box-title2 {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #0075c2;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.foryoyakubox p {
    margin: 0; 
    padding: 0 0 20px;
}
.chushaku{
	text-align: right;
	color: #ff0000;
		}
.width45{
			width: 45%;
		}		
.f-containersb{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	align-items: stretch;

}
/*各施設*/
.facilities_flex2{
	display: flex;
	align-items: center;
		}
.facilities_flex2start{
	display: flex;
	align-items: flex-start;
		}

.facilities_flex4{
    display: flex;
		}
.facilities_flex4 img{
	    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 690px;
		}		
.facilities_flex4 p{
	display: flex;
justify-content: center;
	 align-items: center; 
	font-size: 80%;
	background-color: #cccccc;
	margin-left: 5px;
	margin-right: 5px;
		}
/*会場パターン*/
.pattern_row {
  display: flex;
	 justify-content: space-between;
	max-width: 800px;
	margin: 30px auto;
	padding: 0;
	
}
.pattern_row img {
  height: 230px;
  object-fit: contain;
  width: auto;
	display: block;
  margin: 0 auto; 
  
}
.pattern_row div {
  text-align: center; 
}		
.pattern_caption{
	font-size: 80%;
	background-color: #cccccc;
	text-align: center;
	padding: 8px 0;
	margin: 0 0 10px;
		}

.facilities_singlephote{
	width: 80%;
	margin: 30px auto;
}
.facilities_singlephote img{
	width: 100%;
	height: auto;
}
.facilities_flexlayout{
	display: flex;
	flex-wrap:wrap;
		}		
.facilities_subtitleleft{
	font-size: 22px;
	padding: 0 30px;
	border-right: solid 2px #231815;
		}
.facilities_subtitleleft18{
	font-size: 18px;
	padding: 0 30px;
	border-right: solid 2px #231815;
		}
.facilities_subtitleright{
	padding: 20px 30px;
		}
.facilities_soubi{
	color: #FFFFFF;
	padding: 30px;
	margin-left: 30px;
		}
ul.soubi li{
	list-style:none;
		}
ul.soubi li::before{
	  font-family: "Font Awesome 5 Free";
  content: '\f560';
	font-weight: bold;
  font-size: 16px;
	margin-right: 10px;
		}
		
.lecture-hall_bg{
	background-color: rgba(49,91,137,0.95);
		}
.lecture-room_bg{
	background-color: rgba(121,107,175,0.95);
		}
.facilities_subimgarea{
	width: 50%;	
		}
.facilities_subimgarea img{
	width: 100%;
	height: auto;
		}
.facilities_subimgarea p{
	margin-top: 20px;
		}
.facilities_layout{
	width: 30%;
	margin-right: 5%;
	margin-bottom: 5%;
		}
.facilities_layout45{
	width: 45%;
	margin-right: 5%;
	margin-bottom: 5%;
		}
.facilities_layout45:nth-child(2n){
	width: 45%;
	margin-right: 0;
	margin-bottom: 5%;
		}
.facilities_layout45 img{
	width: 100%;
	height: auto;
		}
.facilities_layout45 p{
	text-align: center;
}
.facilities_layout60{
	width: 60%;
	margin-right: 5%;
	margin-bottom: 5%;
		}
.facilities_layout:nth-child(3n){
	width: 30%;
	margin-right: 0;
	margin-bottom: 5%;
		}
.facilities_layout img{
 width: 100%;
	height: auto;
		}
.facilities_layout p{
	font-size: 80%;
	text-align: center;
}
.facilities_zumen{}
.facilities_zumen img{
	width: 100%;
	height: auto;
		}
.facilities_zumenpattern{
	width: 45%;
	margin-right: 10%;
		}
.facilities_zumenpattern:nth-child(2n){
	width: 45%;
	margin-right: 0;
		}		
.facilities_zumenpattern img{
	width: 100%;
	height: auto;
		}
.table-wrap {
	background-color: #dfe2ea;
	padding: 20px;
	 
}
.facilities_table {
  border-collapse: collapse;
  white-space: nowrap;
}
.facilities_table th,
.facilities_table td {
  border: 2px solid #231815;
  padding: 10px;
	background-color: #FFFFFF;
}
.facilities_table td{
	text-align: right;
		}
td.facilities_tabletitle01{
	background-color: #315b89;
	color: #FFFFFF;
	text-align: center;
		}
td.facilities_tabletitle02{
	background-color: #dce7f6;
	text-align: center;
		}
.table-wrap p{
	text-align: right;
		}
.facilities_flexriyou{
	display: flex;
	align-items: flex-start;
		}		
.facilities_riyou{
	width: 30%;
	position: relative;
		}
.facilities_riyou ul{
	margin: 0;
	position: absolute;
	left: 40%;
	transform: translateX(-40%);
		}	
.facilities_riyou h3{
margin-left: 40%;
	margin-bottom: 20px;
		}
.facilities_community-loungearea{
	width: 60%;
		}
.facilities_community-loungeareatext{
	width: 40%;
	padding-left: 30px;
}
.facilities_community-loungearea img{
	widows: 100%;
	height: auto;
		}
.digital-signagewaku{
	display: inline-block;
	padding: 20px;
	border: solid 2px #CCCCCC;
}

/*ご利用の流れ*/
.flow_title{
	background-color: #485157;
	border-left: solid 5px #9fa0a0;
	color: #FFFFFF;
	padding: 10px 20px;
	margin-bottom: 30px;
		}
.flow_flex{
	display: flex;
		}
.flow_sarea{
	width: 48%;
	margin-right: 4%;
		}
.flow_sarea::nth-child(2n){
	width: 45%;
	margin-right: 0;
		}
.flow_arrow_s{
	  position: relative;
  display: inline-block;
  padding-left: 20px;
	color: #ea5514;
		}
.flow_arrow_s::before{
 content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 8px 0 8px;
  border-color: #ea5514 transparent transparent transparent ;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
		}	
	
.flow {
  display: flex;
  flex-wrap: wrap;
}
.flow dt {
  width: 30%;
  background-color: #0075c2;
	padding: 20px;
	color: #FFFFFF;
	margin-bottom: 50px;
	display: flex;
	align-items: center; 
	font-size: 22px;
	position: relative;
}
.flow dt::after{
	width: 0;
height: 0;
position: absolute;
top: 100%;
left: 50%;
margin: 0 0 0 -20px;
border: 20px solid transparent;
border-top-color: #4b94d1;
content: '';
		}
.flow dt:last-of-type::after{
	display: none;
		}		
.flow dd{
	  width: 70%;
	margin-left: 0;
  background-color: #e5e8ec;
	padding: 10px;
margin-bottom: 50px;
	color: #231815;
		}

.icon {
	display: inline-block;
	padding-right: 20px;
	border-right: solid 1px #FFFFFF;
	margin-right: 20px;

  }	
.line_qr{
	width: 180px;
	margin: 10px auto;
		}
.line_qr img{
	width: 100%;
	height: auto;
		}
		
.flow_yoyakuwaku{
	border: solid 2px #0075c2;
	padding: 30px;
	width: 70%;
	margin: 50px auto;
	display: flex;
	align-items: center;
	background-color: #ffffff;
		}		
.flow_yoyakutoawa{
	color: #0075c2;
	font-size: 20px;
	font-weight: bold;
	border-right: solid 2px #0075c2;
	padding-right: 30px;
		}		
.flow_yoyakutel{
	font-size: 20px;
	padding-left: 30px;
	color: #231815;
		}
/*googlemap*/
.googlemap {
    position: relative;
    width: 70%;
	margin: 20px auto;
    padding-top: 56.25%;
    /* 16:9のアスペクト比 */
    height: 0;
}

.googlemap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}	

/****************************************

カスタム投稿　共通スタイル

 *****************************************/
/*カスタム投稿共通*/
.post_allarea{
	margin-top: 50px;
}
.pagenavi{
	display: flex;
	justify-content: flex-end;
	margin: 50px 0;
}
.next_link{
	margin: 50px auto;
}
.nav-below{
	text-align: right;
}



/****************************************

お問合せ mw wp form

 *****************************************/
.contact-form-inner {
    max-width: 700px;
    margin: 0 auto;
    padding: 50px 0;
}
.form-item:first-child {
    margin-top: 0;
}
.form-item {
    width: 70%;
    margin: 30px auto 0;
}
.form-item label{
    display: block;
    font-size: 16px;
    color: #333333;
	margin: 0;
}
.form-item input{
    width: 100%;
    height: 50px;
    border-radius: 20px;
	padding: 15px;
    border: 1px solid #cccccc;
    margin-top: 10px;
}
.form-item input::placeholder,
.form-item textarea::placeholder {
}
.form-hissu {
    color: #ffffff;
    font-size: 13px;
    margin-left: 15px;
    padding: 3px 5px;
    background-color: red;
}
.form-item textarea{
    height: auto;
    width: 100%;
    border-radius: 20px;
    border: 1px solid #cccccc;
    margin-top: 10px;
	padding: 15px;
}
.last-check {
	  display: flex;
  align-items: center;
	    width: 70%;
    margin: 30px auto 0;
}
.last-check > input {
    width: auto;
    height: auto;
    margin: 0 10px 0 0;
}
.last-check a {
    text-decoration: none;
}
.form-item.send-btn{
    max-width: 200px;
    margin: 40px auto 0;
}
.form-item.send-btn input{
    background-color: #0075c2;
    color: #ffffff;
    border-radius: 0px;
    font-weight: 700;
    cursor: pointer;
}
.form-item.send-btn input:hover {
    background-color: #FFFFFF;
    color: #0075c2;
    border: 1px solid #0075c2;
    transition: all .3s;
}


/*reCAPTCHA*/
.recaptcha_setumei{
	font-size: 80%;
	text-align: right;
}
.grecaptcha-badge { visibility: hidden; }


/* =Tablet (Landscape　横)
-----------------------------------------------------------------------------*/
@media only screen and (max-width: 1199px) {
*:focus {
outline: none;
}
.wrapper{
	width:100%;
	padding-left:20px;
	padding-right:20px;
	}
	
	

.news_wrapper{
	width:100%;
	padding-left:20px;
	padding-right:20px;
}

	
	
}


/* =Tablet (Portraint　縦)
-----------------------------------------------------------------------------*/
@media only screen and (max-width: 937px) {
.facilities_flexriyou{
	display: block;
		}	
.table-wrap {
  overflow-x: scroll;
	width: 100%;
}
	.facilities_riyou{
	width: 100%;
		}
.facilities_riyou h3{
	text-align: center;
	margin: 20px auto;
	width: 100%;
	background-color: aliceblue;
		}	
h2.usage-charge{
	background-color: aliceblue;
	}
/*会場パターン*/
  .pattern_row {
    display: block;
    max-width: 80%;
  }

  .pattern_row div {
    text-align: center;
    margin-bottom: 20px;
  }
	
	
}


/* =SmartPhone (Landscape　横)
-----------------------------------------------------------------------------*/
@media only screen and (max-width: 780px) {
	html,body {
	background-color: #Fff;
	margin: 0px;
	padding: 0px;
		width:100%;
	-webkit-text-size-adjust: 100%;
}
h3{
	width: 60%;
	
}	
	
.contentarea{
	margin-top: 40px;
	}
	
/*サイドバー*/

.right_area{
	width: 150px;
}
.left_arera{
	width: calc(100% - 150px);
}	
	
/*スマホの時に改行*/
.sma{
	display: block;
}
	
/*トップメニュー　フッター固定*/
.top_flexmenu{
	display: none;
	}
	
/*お知らせ*/
.top_newsconarea{
	width: 100%;
		}		
/*イベントスケジュール*/
	  .calendar-desktop {
    display: none;
  }
  .calendar-mobile {
    display: block;
  }
/****************************************

Footer

 *****************************************/
.footer_allarea{
	margin-bottom: 100px;
}	
.footer_smpflex{
	display: flex;
	position: fixed;
	bottom: 0;
	z-index: 9999;
	background-color: #ffffff;
	height: 100px;
}
.footermenu_shisetuyoyaku{
	position: relative;
	z-index: 100;
	display: flex;
	flex-direction: column;
	justify-content: center;
	 align-items: center;
	padding: 10px 0 0;
	width: 20%;
		}	
.footermenu_icon{
	width: 50%;
		}
.footermenu_icon img{
	width: 100%;
	height: auto;
		}	
.menu_tellarea{
width: 40%;
		}
	
/*トップアクセス*/
.top_accessarea{
	display: block;
		}	
.top_access_left{
	width: 100%;
		}	
	
.top_access_right{
	width: 100%;
		}	
	
/****************************************

トップページ　スタイル

****************************************/
/*top施設紹介*/
.top_shisetsuarea {
	grid-template-columns: repeat(2, 1fr);
}



.ba{
	display:none;
}
/****************************************

トップページ　スタイル

****************************************/

/* img */

.aligncenter {
  display: block;
  margin: 0 auto;
}
.alignright {
	float: none;
  display: block;
  margin: 0 auto;
}
.alignleft {
	float:none;
  display: block;
  margin: 0 auto;
}
img {
    max-width: 100%;
    height:auto;
}
	
	
/*ご利用の流れ*/
.flow_flex{
	display: block;
		}
.flow_sarea{
	width: 100%;
	margin-right: 0;
		}
.flow_sarea::nth-child(2n){
	width: 100%;
	margin-right: 0;
		}
.flow {
	display: block;
}
.flow dt {
  width: 100%;
	margin-bottom: 0;
}
.flow dt::after{
	display: none;
		}
.flow dt:last-of-type::after{
	display: none;
		}		
.flow dd{
	  width: 100%;
position: relative;
		}
.flow dd::after{
	width: 0;
height: 0;
position: absolute;
top: 100%;
left: 50%;
margin: 0 0 0 -20px;
border: 20px solid transparent;
border-top-color: #4b94d1;
content: '';
		}
.flow dd:last-of-type::after{
	display: none;
		}	
.flow_yoyakuwaku{
	display: block;
	width: 100%;
	padding: 10px;
		}
.flow_yoyakutoawa{
	padding: 20px 0;
	border-right: none;
	border-bottom: solid 2px #0075c2;
	text-align: center;
		}		
.flow_yoyakutel{
	padding: 20px;
	text-align: center;
		}
		
/*利用規約*/
.cancelarea{
	width: 100%;
	margin-left: 0;
	}
dl.cancel_list{
	display: block;
	}
dl.cancel_list dt{
	width: 100%;
	background-color: #F6F6F6;
	}
dl.cancel_list dd{
	width: 100%;
	padding: 20px 25px;
	}
dl.cancel_list dd:nth-of-type(2n){
	background-color: #ffffff;
	}	
	

	}
	
	
	
	


/* =SmartPhone (Portraint　縦)
-----------------------------------------------------------------------------*/
@media only screen and (max-width: 480px) {
.h_logo{
	width: 200px;
}	
	
/*サイドバー*/
.flex_2area{
	display: block;
}

.right_area{
	width: 100%;
	border-left: none;
	padding-left: 0;
}
.left_arera{
	width: 100%;
	padding-right: 0;
}	
	
	
/*スマホの時表示を消す*/
.sp_none{
	display: none;
	}
/*PCは非表示　スマホ表示*/
.nopc_sma{
	display: block;
}
/*PCは表示　スマホ非表示*/
.pc_nosma{
	display: none;
	background-color: antiquewhite;
}	

/*top　予約*/
h2.topyoyaku{
	font-size: 16px;
}
h3{
	width: 80%;
	
}

	
/*左右配置 上合わせ*/
.f-rightleftstart{
	display: block;

}
	

	
/*top*/
.background {
	width: 100%;
 height: 100vh;
	height: 100lvh;
	position: static;
 top: 0;
}
.background img{
	width: 100%;
 height: 100%;
	object-fit: cover;
		}	

.bgCover{
	display: none;
	}
.content {
 height: 100vh;
	height: 100svh;
 margin-top: -100vh;
	position: static;
}
.contCover {
display: none;
}

#layer {
 height: 70vh;
}
	
.toleft-animation{
	transform: translateX(-100vw); 

		}	
	
/*top施設紹介*/
.top_shisetsuarea {
	grid-template-columns: repeat(1, 1fr);
}
/*お知らせ*/
.top_newslist{
	display: block;
	padding: 30px;
	margin: 0 0 3px;
	background-color: #FFFFFF;
		}	
.news_archiveimg{
	width: 50%;
	margin: 0 auto;
}

.news_archiveflyerimg{
	width: 50%;
	margin: 0 auto;
}	
.news_archivecon{
	width: 100%;
}

		
	
/*イベント*/	
.top_eventarea{
	display: flex;
	flex-direction: column;
}	

.top_topevtitlewb{
	width: 100%;
	background-color: rgba(255,255,255,0.9);
	padding: 10px 0;
	text-align: center;
	white-space: nowrap;
	margin: 0 auto;
	top: 100%;
	left: 50%;
	transform: translate(-50%,-100%);
	z-index: 10;
		}			
.tec_topev_list{
		min-width: 380px;
    max-width: 50vw;
		display: flex;
	flex-direction: column;
	margin: 0;
	padding: 90px 10px 10px;
	z-index: 20;

		}
.tec_topev_day{
	font-size: 16px;
		}
.tec_topev_title{
	font-size: 16px;
	margin: 10px 0;
	border-bottom: dashed 1px #cccccc;
	padding-bottom: 10px;
	color: #FFFFFF;
		}
span.tec_topev_cate{
	padding: 3px;
		}	
		
.toptopev_boton{
	margin: 20px auto;

	
 }
		

/****************************************

Footer

 *****************************************/
.menu_tellarea{
	display: none;
	}
	
.footermenu_shisetuyoyaku{
	width: calc(100% / 3);
	border-right: solid 4px #00355b;
		}
.footer_textarea{
	display: block;
	}
.footer_adressarea{
	width: 100%;
	text-align: center;

	}		
.footer_leftlogo{
	width: 200px;
	margin:0 auto 20px;
		}
.footer_iconarea{
	margin: 20px auto;
}	
ul.footer_grouplist{
	    width: fit-content;
    margin: auto;
	}


		
.copyright{
	margin-bottom: 100px;
	
	}	
	


/****************************************

editor

 *****************************************/

                             
/* img */

.alignright {
	float:none;
	margin:0;
}
.alignleft {
	float:none;
	margin:0;
}
/****************************************

固定ページ

 *****************************************/

/*施設概要*/
.shisetu_tablearea{
	width: 100%;
	margin-top: 50px;
}
.shisetu_smtable{
	margin-top: 200px;
		
	}
	
.access_area{
	width: 100%;
		}	
.access{
	display: block;
		}
	
.access dt {
  width: 100%;
	margin: 0;
	font-size: 22px;
	padding: 10px;
}
.access dd{
	  width: 100%;
		}
.address_map{
	width: 100%;
}
/*360*/
.vr_area{
	width: 90%;
}
/*面積と定員*/
  .table_area01 {
    text-align: left;
  }
  .table_area01 thead {
    display:none;
  }
  .table_area01 th, .table_area01 td {
    display: block;
    border: 0;
    border-bottom: 1px solid #333333;
  }
  .table_area01 tbody th{
    background: #1b3c76;
    color:#fff;
  }
  .table_area01 td::before{
    content: attr(data-label);
    color: #1b3c76;
    font-weight: bold;
    display: inline-block;
    width: 20%;
    min-width: 4em;
  }	

/*各施設利用料金*/
.width45{
			width: 100%;
		}	
  .tbl-r05 {
    width: 100%;
	  
  }
  .tbl-r05 .thead {
    display: none;
  }
  .tbl-r05 tr {
    width: 100%;
  }
	
.tbl-r05 tr.last td:last-child {

}	
  .tbl-r05 td {
    display: block;
    text-align: right;
    width: 100%;
	  padding-right: 30px;
	  padding-left: 30px;
	   border-top: none;
	  border-bottom: dotted 1px #898989;

  }
.tbl-r05 tr:nth-child(2n+1) {
 background: #ffffff;
}
  .tbl-r05 td:first-child {
    background: #0075c2;
    color: #fff;
    font-weight: bold;
    text-align: center;
	  
  }
	
.tbl-r05.lecture-hall-text td:first-child {
    background: #315b89;
    color: #fff;
    font-weight: bold;
    text-align: center;
 }
.tbl-r05.lecture-room-text td:first-child {
    background: #6356a3;
    color: #fff;
    font-weight: bold;
    text-align: center;
	
 }
.tbl-r05.free-address-area-text td:first-child {
    background: #c25160;
    color: #fff;
    font-weight: bold;
    text-align: center;	
 }
.tbl-r05.community-lounge-text td:first-child {
    background: #e07f00;
    color: #fff;
    font-weight: bold;
    text-align: center;	
 }
.tbl-r05.other-facilities-text td:first-child {
    background: #956134;
    color: #fff;
    font-weight: bold;
    text-align: center;	
 }
.tbl-r05.plaza-text td:first-child {
    background: #00ada9;
    color: #fff;
    font-weight: bold;
    text-align: center;	
 }	
	
	
  .tbl-r05 td:before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    margin-right: 10px;
  }
.tbl-r05 td:last-child {
border-bottom: solid 1px #898989;
}
  .tbl-r05 td > span{
	  display: inline;
	  margin: 0 auto;
      width:100%;
      text-align: right;
  }
.setubibox {
	display: block;
	width: 100%;
}

.foryoyakubox {
	display: block;
	width: 100%;
    margin: 50px auto;
}
.facilities_community-loungearea{
	width: 100%;
		}
.facilities_community-loungeareatext{
	width: 100%;
	padding-left: 0;
	padding-top: 20px;
}	
	
/*施設紹介*/		
h3.facility_description{
	width: 100%;

		}	

.facility_flexleft{
	display: block;
	
		}
.facility_flexright{
	display: block;
		}		
.facility_photoarea{
	width: 100%;
	aspect-ratio: 16 / 9;
		}
.facility_photoarea img{
	width: 100%;
	height: auto;
	overflow: hidden;
		}
.facility_textarea{
	width: 100%;
	font-size: 18px;
	line-height: 200%;
		}		

/*各施設*/
.facilities_flex2{
	display: block;
		}
.facilities_flex2start{
	display: block;
		}
.facilities_flex4{
	display: block;
		}	
.facilities_flexlayout{
	display: flex;
	flex-wrap:wrap;
		}		
.facilities_subtitleleft{
	font-size: 20px;
	padding: 10px;
	border-bottom: solid 2px #231815;
	border-right: none;
		}
.facilities_subtitleright{
	padding: 10px;
		}
.facilities_soubi{
	margin-left: 0;
		}

.facilities_subimgarea{
	width: 100%;	
		}

.facilities_layout{
	width: 100%;
	margin-right: 0;
	margin-bottom: 1%;
		}
.facilities_layout:nth-child(3n){
	width: 100%;
	margin-right: 0;
	margin-bottom: 1%;
		}
.facilities_layout45{
	width: 100%;
	margin-right: 0;
	margin-bottom: 5%;
		}
.facilities_layout45:nth-child(2n){
	width: 100%;
	margin-right: 0;
	margin-bottom: 5%;
		}
.facilities_zumenpattern{
	width: 100%;
	margin-right: 0;
	margin-bottom: 1%;
		}
.facilities_zumenpattern:nth-child(2n){
	width: 100%;
	margin-right: 0;
	margin-bottom: 1%;
		}		
		
.facilities_riyou{
	width: 100%;
	position: relative;
		}
.facilities_riyou ul{
	margin: 0;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
		}		
.facilities_subtitleleft18{
	border-right: none;
	border-bottom: solid 2px #231815;
		}
.facilities_layout60{
	width: 100%;
	margin-right: 0;
	margin-bottom: 5%;
	margin-top: 20px;
	padding: 10px;
		}
	/*googlemap*/
.googlemap {
    width: 100%;
}
	
	
/*予約について*/

.shisetuyoyaku_area{
	width: 100%;
	margin-bottom: 50px;
		}	
/*フローチャート*/
.two_division{
	display: block;
	}	
.width_50area{
	width: 100%;
	text-align: center;
	}

/*特定商取引法に基づく表記*/
table.tbl-r02{
	width: 100%;
}
table.tbl-r02 tr{
	border: none;
		}
table.tbl-r02 th {
	display: block;
	width: 100%;
}
table.tbl-r02 td {
  	display: block;
	width: 100%;
}
table.tbl-r02 td:first-of-type{
	border-bottom: solid 1px #cccccc;
	}
/*利用規約とプライバシーポリシー*/
	
/*ol要素の共通設定*/  
ol.propositions, ol.propositions, ol{
  padding-left: 1em;
}
		
/*数字*/		
ol.number{
	padding-left: 1em;
		}
ol.number li{
  list-style-type:none; /*標準の番号を消す*/
  margin-left: 1em;     /*下のmargin-leftの符号違いを設定*/
	margin-bottom: 1em;
	counter-increment: noitem;
	}
ol.number li:before {
  content: counter(noitem)'.';
	font-weight: bold;
	color: #0075c2;
	  display: inline-block; 
  text-align: right; /*i), ii)などを右寄せさせるため*/
  width: 2em;        /*リスト番号の幅*/
  margin-right: 1em; /*リスト番号と文章の間隔*/
  margin-left: -3em; /*上の2つと足して0になるように設定*/
		}
		
/*かっこ*/
ol.propositions li{
  list-style-type:none; /*標準の番号を消す*/
  margin-left: 1em;     /*下のmargin-leftの符号違いを設定*/
	margin-bottom: 1em;
}

ol.propositions li:before{
  display: inline-block; 
  text-align: right; /*i), ii)などを右寄せさせるため*/
  width: 2em;        /*リスト番号の幅*/
  margin-right: 1em; /*リスト番号と文章の間隔*/
  margin-left: -3em; /*上の2つと足して0になるように設定*/
}

/*カウンターの設定（olの階層ごとに設定）*/
ol.propositions>li{
  counter-increment: level1;
}

ol.propositions>li:before{
	content: "(" counter(level1) ") ";
  font-weight: bold;
	color: #0075c2;
}
/*丸数字*/
ol.circle_number>li{
  counter-increment: level2;
	position: relative;
}

ol.circle_number>li:before{
  content: counter(level2);
  border: 1px solid;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 22px;
  width: 22px;
  font-size: 85%;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}
/*ulドット*/
ul.dotlist{
	padding-left: 0;
	margin-left: 0;
		}
ul.dotlist>li{
  counter-increment: dot1;
}

ul.dotlist>li:before{
	content: '・';
  font-weight: bold;
	color: #0075c2;
}


/****************************************

カスタム投稿　共通スタイル

 *****************************************/
/*カスタム投稿共通*/
.post_allarea{
	margin-top: 100px;
}	
	

	
	
	
}

