@charset "utf-8";
/* ===================================================================
CSS information

 file name  :module.css
 author     :第53回日本臨床矯正歯科医会大会
 style info :共通（ヘッダー、フッター）
=================================================================== */

/* -----------------------------------------------------------
	header
		ヘッダー
----------------------------------------------------------- */


.l-header {
	position: relative;
	background-color: #FFF;
	border-top: 8px solid #4394D0;
	/*box-shadow: 0 0 10px RGBa(0,0,0,.4);	*/
	z-index: 1;
}

.l-header__inner {
	position: relative;
	/*margin: 0 auto;
  text-align: center;*/
}

/*---------- メインメニュー ----------*/
.l-header__main-menu {
	width: 100%;
}

.l-header__main-menu.m_fixed {
 left: 0;
 position: fixed;
 width: 100%;
 top: 0;
 background-color: #e0edf7;
 opacity: 0.9;
}

/*
.l-header__main-menu-inner {
}
*/

.l-header__main-menu-content {
  display: flex;
	flex-wrap: wrap;
	justify-content: space-between;	
	max-width: 1000px;
  margin: 0 auto;
}

.l-header__main-menu-item {
	position: relative;
	padding: 8px 0 0;
	flex-basis: 12%;
	/* flex-basis: 14.28%; 7つ */
	text-align: center;
	box-sizing: border-box;
}

.l-header__main-menu-item:not(:first-of-type)::before {
	position: absolute;
	content: "";
	top: 13px;
	left: 0;
	width: 1px;
	height: 25px;
	background-color: #CCC;	
}

.l-header__main-menu-item a {
	position: relative;
	display: block;
	width: 100%;
	height: 45px;
	margin: 0 auto;
	/* padding: 0 10px;		*/
	border-bottom: 3px solid transparent;
	text-decoration: none;
	/*font-size: 1em;*/
	font-weight: 700;	
	color: #4C4C4C;
	line-height: 40px;	
	-webkit-box-sizing: border-box;
	box-sizing: border-box;	
	transition: all .2s ease;		
}

/*
.l-header__main-menu-item:last-of-type a {
	font-size: 90%;
}*/


.l-header__main-menu-item a:link, 
.l-header__main-menu-item a:visited {
	color: #333;
}

.l-header__main-menu-item a:hover {
	color: #1144AD;
	-webkit-transition: all .3s;
	transition: all .3s;	
}

.l-header__main-menu-item a:hover {
	border-bottom: 3px solid #1144AD;
	color: #1144AD;
}

/*,
.l-header__main-menu-item.current a
*/

/*-----------スマホ トグルボタン-------------*/
#nav-toggle {
  position: absolute;
  right: 0;
  top: 10px;
  width: 30px;
  height: 30px;
  padding: 10px 16px 15px;
  cursor: pointer;
  z-index: 101;
}
	/* 
#nav-toggle::before {
	content: "メニュー";
	position: absolute;
	bottom: -11px;
	left: -1px;
	font-size: 60%;
	font-weight: 700;
}
.nav-open #nav-toggle::before {
	content: "閉じる";
	position: absolute;
	bottom: -11px;
	left: 2px;
	font-size: 70%;
	font-weight: 700;
} */

#nav-toggle div {
	position: relative;
}
#nav-toggle span {
	display: block;
	position: absolute;
	width: 36px;
	height: 4px;
	background-color: #444;
	left: 0;
	-webkit-transition: .35s ease-in-out;
	-ms-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;	
	transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
	top: 0;
}
#nav-toggle span:nth-child(2) {
	top: 11px;
}
#nav-toggle span:nth-child(3) {
	top: 22px;
}

.nav-open #nav-toggle span{
  left: 30%;        
}   
.nav-open #nav-toggle span:nth-child(1){
  top: 11px;
  transform: rotate(45deg);
}
.nav-open #nav-toggle span:nth-child(2){
  opacity: 0;
}
.nav-open #nav-toggle span:nth-child(3){
  top: 11px;
  transform: rotate(-45deg);
}


	

/*----------モーダル　オーバーレイ----------*/
#modal-overlay {
	display: none;
	position: fixed;
	background: rgba(255,255,255,.6);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
} 

/*
.sp_navi_btn {
}
*/


.sp_navi_li {
  display: none;
  position: absolute;
  width: 100%;
  padding: 0;
  background-color: #3677A6;
  /*border-bottom: 8px solid #f0d57a;*/
}

.sp_navi_li li {
  margin-bottom: 0;
}

.sp_navi_li li a{
  display: block;
  padding: 1em 8px;
  border-bottom: 1px solid #63A0CC;
  text-decoration: none;
  text-align: center;
  color: #FFF;
}


/* -----------------------------------------------------------
	footer
		フッター
----------------------------------------------------------- */
/*
.l-footer {
}
*/

/*---------- トップスクロールボタン ----------*/
#js-page-top__scroll {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 100%;
	z-index: 99;
}

#js-page-top__scroll a {
	position: relative;
	display: block;	
	width: 50px;
	height: 50px;
	line-height: 50px;
	background-color: rgba(67, 148, 208, 0.6);
	text-align: center;
	text-decoration: none;	
}

#js-page-top__scroll a:after {
	content: "";
	position: absolute;
	display: inline-block;
	top: 40%;
	left: 37%;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	border-top: 3px solid #FFF;
	border-right: 3px solid #FFF;
}

#js-page-top__scroll a:hover {
	text-decoration: none;
	cursor: pointer;
	-webkit-opacity: .7;
	opacity: .7;
}

/*---------- フッターコンテンツ ----------*/
.l-footer__inner {
	background-color: #333;	
}

/*---------- 事務局 ----------*/
/*
.p-footer-office {
}
*/

.p-footer-office__inner {
	color: #FFF;	
	margin: 0 auto;
	padding: 30px;
}

/*
.p-footer-office__head {
}
*/

.p-footer-office__content {
	font-size: 90%;
}

/*
.p-footer-office__contact-link {
}
*/

.p-footer-office__contact-link .c-btn__container {
	width: 100%;
}

.p-footer-office__contact-link .c-btn__container .c-btn {
	font-size: 90%;
}

.p-footer-office__info {
	margin: 20px 0;
	padding: 15px 25px;
	background-color: RGBa(255, 255, 255, .13);
	font-size: 95%;
	line-height: 1.6;
}

.p-footer-office__info a {
	color: #FFF;
}

/*---------- コピーライト ----------*/
.p-footer-copy-right {
	background-color: #4394D0;
	border-top: 1px solid RGBa(255, 255, 255, .2);
  padding: 0.5rem 0;
}

.p-footer-copy-right__inner {
	text-align: center;
	font-size: 75%;
	font-weight: 500;
	color: #FFF;	
}

.p-footer-copy-right__inner a {
	color: #FFF;	
}