/* 上段メニューページを非表示 */
li.upperpage {
	display: none;
}
.drop_down_logo {
	position: relative;
	top: -30px;
}
.drop_down_logo img {
	width: 100%;
	max-width: 343px;
}
nav.drawer-content {
	padding: 0;
}
/* メインメニューの設定 */
.drop_down_header {
	display: flex;
	justify-content: space-between;
	float: right;
}
/* チェックボックスは非表示に */
.drawer-hidden {
  display: none;
}

@media screen and (min-width:988px) {
	.drawer-content {
		padding-top: 34px;
	}
	.gnav {
	    display: flex;
	    height: 4rem;
	    margin: 0 auto;
	    padding-left: 0;
/*		justify-content: space-between;*/
	}
	/*全てのリスト・リンク共通*/
	.gnav li {
	    list-style: none;
	    position: relative;
		z-index: 10;
/*		width: 100%; */
	}
	.gnav li a {
	    background: rgb(69,120,206);
	    border-right: 1px dotted rgb(255,255,255);
	    border-bottom: 2px solid rgb(69,120,206);
	    color: rgb(255,255,255);
	    display: block;
		padding: 1rem 1rem;
	    text-align: center;
	    text-decoration: none;
	}
	.gnav li.active > a {
	    background: rgb(255,167,62);
	}
	li:has(ul li.active) a {
	    background: rgb(255,167,62);
	}
	.gnav li a:hover {
	    transition: .5s;
	    border-bottom: 2px solid rgb(255,167,62);
	}
	.gnav ul {
		padding-left: 0;
	}
	/*子階層以降共通*/
	.gnav li li {
	    height: 0;
	    overflow: hidden;
	    transition: .5s;
	}
	.gnav li li a {
	    border-top: 1px solid rgb(255,255,255);
	    background: rgba(69,120,206,0.6);
	    color: rgb(255,255,255);
	    border-right: none;
	    border-bottom: none;
	}
	.gnav li li.active > a {
	    background: rgba(255,167,62,0.6);
	}
	.gnav li li a:hover {
	    background: rgba(255,182,95,0.6);
	    border-bottom: 2px solid rgb(255,255,255);
	}
	.gnav li:hover > ul > li {
/*	    height: auto;*/
	    height: 4rem;
	    overflow: visible;
	}
	/*孫階層以降共通*/
	.gnav li ul li ul {
	    left: 100%;
	    position: absolute;
	    top: 0;
	    width: 100%;
	}
	.drawer-open {
	  display: none;
	}
}
@media screen and (max-width:1198px){
	.drop_down_header{
		width: 100%;
		display: inherit;
		justify-content: inherit;
	}
	.drop_down_logo {
		top: -6px;
	}
	nav.drawer-content {
		padding: 0;
	}
	.gnav {
		justify-content: space-between;
	}
	.gnav li {
		width: 100%;
	}
	.gnav li:hover > ul > li {
	    height: auto;
	}
}

@media screen and (max-width:988px) {
	.drop_down_header {
		align-items: center;
		max-width: 718px;
		margin: 0 calc((100% - 718px)/2);
	    display: flex;
		top: 0!important;
	}
	/* 上段メニューの非表示 */
	li.upperpage {
		display: inherit;
	}
	.drop_down_logo {
		position: inherit;
		top: inherit;
	}
	.drawer {
		margin-left: auto;
	}
	.menu_hr {
		position: relative;
		top: 65px;
	}
	/*------------------------------

	  ここから下がハンバーガーメニュー
	  に関するCSS

	------------------------------*/
	  
	/* ハンバーガーアイコンの設置スペース */
	.drawer-open {
	  display: flex;
	  height: 45px;
	  width: 45px;
	  justify-content: center;
	  align-items: center;
	  position: relative;
	  z-index: 100;/* 重なり順を一番上に */
	  cursor: pointer;
	  padding-top: 20px;
	}

	/* ハンバーガーメニューのアイコン */
	.drawer-open span,
	.drawer-open span:before,
	.drawer-open span:after {
	  content: '';
	  display: block;
	  height: 3px;
	  width: 25px;
	  border-radius: 3px;
	  background: rgb(69,120,206);
	  transition: 0.5s;
	  position: absolute;
	}

	/* 三本線のうち一番上の棒の位置調整 */
	.drawer-open span:before {
	  bottom: 8px;
	}

	/* 三本線のうち一番下の棒の位置調整 */
	.drawer-open span:after {
	  top: 8px;
	}

	/* アイコンがクリックされたら真ん中の線を透明にする */
	#drawer-check:checked ~ .drawer-open span {
	  background: rgba(255, 255, 255, 0);
	}

	/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
	#drawer-check:checked ~ .drawer-open span::before {
	  bottom: 0;
	  transform: rotate(45deg);
	}

	#drawer-check:checked ~ .drawer-open span::after {
	  top: 0;
	  transform: rotate(-45deg);
	}
	/* アイコンがクリックされたらメニューを表示 */
	#drawer-check:checked ~ .drawer-content {
	  left: 0;/* メニューを画面に入れる */
	}

	/* メニューのデザイン*/
	.drawer-content {
	  width: 100%;
	  position: fixed;
	  left: 100%;/* メニューを画面の外に飛ばす */
	  z-index: 40;
	  background: #fff;
	  transition: .5s;
	  margin-top: 15px;
	  padding-top: 0;
	}
	ul.gnav {
	  margin-bottom: 0;
	  padding-left: 0;
	}
	.menu__item {
	  background: rgb(69,120,206);
	  color: #fff;
	  cursor: pointer;
	  display: block;
	  margin-bottom: 1px;
	}
	.menu__item__link {
	  color: #fff;
	  display: block;
	  line-height: 48px;
	  padding: 0 1rem;
	  position: relative;
	}
	.menu__item:hover {
	  background: rgba(69,120,206,0.7);
	}
	.js-menu__item__link {
	  position: relative;
	}
	.js-menu__item__link:after {
	  background:  rgba(10,68,165,0.6);
	  font-family: 'Material Icons';
	  content: "keyboard_arrow_down";
	  font-size: 36px;
	  display: block;
	  line-height: 48px;
	  position: absolute;
	  right: 0;
	  text-align: center;
	  top: -48px;
	  width: 48px;
	}
	.js-menu__item__link.on:after {
	  content: "keyboard_arrow_up";
	}
	 
	.submenu {
	  background: #fff;
	  display: none;
	  list-style: none;
	}
	.submenu .submenu__item {
	  border-bottom: 1px solid rgb(69,120,206);
	}
	.submenu .submenu__item:last-child {
	  border: none;
	}
	.submenu .submenu__item .menu__item__link {
	  color: rgb(69,120,206);
	}
	.submenu .submenu__item:hover {
	  background: rgba(69,120,206,0.2);
	}
}
@media screen and (max-width:780px) {
	.drop_down_header {
		align-items: center;
		margin: 0 auto;
		padding: 0;
	}
}
@media screen and (max-width:420px) {
	.drawer-content {
	  margin-top: 6px;
	}
	.menu__item__link {
	  line-height: 50px;
	}
	.js-menu__item__link:after {
	  line-height: 50px;
	  top: -50px;
	  width: 50px;
	}
	.menu_hr {
		top: 54px;
	}
}
