@charset "utf-8";


/*
 			英語サイト
								*/


/*!
Theme Name: nuh-en.niigata-u.ac.jp
Theme URI: 
Author: nuh
Author URI: https://www.nuh.niigata-u.ac.jp/en/
Description: 
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nuh
*/
html { 
	height: 100%;
	box-sizing: border-box;
}
*,
*:before,
*:after {
	box-sizing: border-box;
}
body { 
	margin: 0; 
	padding: 0; 
	font-size: 100%; 
	font-family:'Noto Sans JP', sans-serif, "游ゴシック", "Yu Gothic", Yu Gothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック"; 
	-webkit-text-size-adjust: 100%;
	line-height: 1.7; 
	color: #333; 
	height: 100%; 
	position: relative; 
	letter-spacing: 0.1em;
	overflow-wrap: break-word;
	word-wrap: break-word;
}
main {
    display:block;
}
header,main,article,section,nav,footer { 
	display: block;
}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin: 0; 
	padding: 0; 
	font-size: 100%;
}
ol li {
    list-style: decimal;
}
input {
	font-family: 'Open Sans' ,'Noto Sans JP', sans-serif, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック"; line-height: 1.7em; 
	color: #000; 
	position: relative; 
	letter-spacing: 0.1em;
	overflow-wrap: break-word;
	word-wrap: break-word;
}
table {	
	border-collapse: collapse; 
	border-spacing: 0;
}
fieldset,img { 
	border: 0;
}
address,caption,cite,code,dfn,th,var { 
	font-style: normal; 
	font-weight: normal;
}
em { 
	font-style: normal; 
	font-weight: 500;
}
ol,ul { 
	list-style: none;
}
caption{ 
	text-align: left;
}
h1,h2,h3,h4,h5,h6 { 
	font-size: 100%; 
	font-weight: normal;
}

html{visibility:hidden;}
html.wf-active, html.wf-inactive{visibility:visible;}

::-webkit-input-placeholder { color: #ccc;}
::-moz-placeholder { color: #ccc; opacity: 1;}
:-ms-input-placeholder { color: #ccc;}
input:focus::-webkit-input-placeholder { color:transparent;}
input:focus:-moz-placeholder { color:transparent;}
input:focus::-moz-placeholder { color:transparent;}


/**********************************************
 * 全ページ共通
 *********************************************/
.pc_size {
		display:block !important;
}
.sp_size {
		display:none !important;
}
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
    margin: 0;
    padding: 0;
    font-size: 100%;
}
h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}
ul {
    list-style: none;
}

a {
    text-decoration: none;	
    -webkit-transition: all ease 0.2s;
    -moz-transition: all ease 0.2s;
    -o-transition: all ease 0.2s;
    transition: all ease 0.2s;
}
a, a:visited {
    color: #333;
}
a:hover {
    text-decoration: none;
}
em {
    font-style: normal;
    font-weight: 500;
}
img {
	vertical-align: bottom;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}



/*--------------------------------------------------------
	header
--------------------------------------------------------*/
header {
	position:relative;
}
.header_wrap {
    transition: 0.3s ease;
	top: 0;
}
#logo {
	max-width: 1140px;
    padding: 25px 20px 20px 20px;
    margin: auto;
}
#logo a,#logo a img{
	display:block;
	position:relative;
	max-width:305px;
	z-index:2;
}
#toggle {
    display: none;
}
#menu{
	background:#0088CD;
}
#menu-box {
	z-index: 1;
}
#menu > nav > ul {
	max-width:1100px;
    display: flex;
	flex-wrap:wrap;
	justify-content: center;
	margin:auto;
	/*padding-bottom:10px;*/
	/*padding:12px 0 12px 0;*/
}
#menu > nav > ul > li {
	position:relative;
	width:32%;
}
#menu > nav > ul > li:before{
	content:"";
	position:absolute;
	width:1px;
	height:46px;
	left:0;
	top:calc(50% - 23px);
	background:#fff;
}
#menu > nav > ul > li:nth-child(3):after{
	content:"";
	position:absolute;
	width:1px;
	height:46px;
	right:0;
	top:calc(50% - 23px);
	background:#fff;
}

#menu > nav > ul > li > a {
    display: block;
	color: #fff;
	text-decoration: none;
    /*padding:5px 0 20px 0;
	background:url(img/arrow_under.svg)no-repeat bottom center;
	background-size:10px;*/
}
#menu .menu_item .menu_link{
	font-size:125%;
	text-align:center;
	padding:20px 0;
}
#menu .menu_item .menu_link:hover{
	background:#0175b0;
}

.h_sub_menu{
	display: none;
}

/*
 		sub_menu				*/
.sub_menu{
	position:absolute;
	top:30px;
	display: flex;
	flex-wrap:wrap;
    justify-content: flex-end;
	align-items: center;
    max-width: 1140px;
    width: 100%;
    padding: 0 20px;
    margin: auto;
	right:0;
	left:0;
}
.sub_menu_box ul,.sub_menu_box2 ul{
	display:flex;
	justify-content: flex-end;
	align-items: center;
}
.sub_menu_box ul li{
	position:relative;
	padding:0 15px;
}
.sub_menu_box ul li:after{
	content: '';
    display: block;
    position: absolute;
    top: 0;
    right: -0;
    bottom: 0;
    margin: auto;
    width: 1px;
    height: 13px;
    background: #333;
}
.sub_menu_box li:last-child:after{
	content:none;
}
.sub_menu_box ul li a{
	display:inline-block;
	font-size:81.2%;
}
.sub_menu_box ul li a:hover{
	color:#0088CD;
}




.sub_menu_box2{
	display:flex;
	align-items: center;
}
.sub_menu_box2 ul li {
	position:relative;
	margin-left:8px;
	border:1px solid #ccc;
	border-radius:5px;
	background:#fff;
	-webkit-transition: all ease 0.2s;
    -moz-transition: all ease 0.2s;
    -o-transition: all ease 0.2s;
    transition: all ease 0.2s;
}
.sub_menu_box2 ul .sub_menu_btn:hover {
	background:#0088CD;
	cursor: pointer;
}
.sub_menu_box2 ul li:hover .sub_menu_item{
	color:#fff;
}

.sub_menu_box2 ul li:first-child{
	margin-left:0;
}
.sub_menu_box2 ul li .sub_menu_item{
	padding:3px 10px 3px 32px;
	font-size:81.2%;
}
/*.sub_menu_box2 ul li .mypage{
	background:url(img/icon_mypage.svg)no-repeat left 12px center;
	background-size:16px;
}
.sub_menu_box2 ul li:hover .mypage{
	background:url(img/icon_mypage_w.svg)no-repeat left 12px center;
	background-size:16px;
}*/
.sub_menu_box2 ul li .support{
	background:url(img/icon_assistance.svg)no-repeat left 9px center;
	background-size:16px;
}
.sub_menu_box2 ul li:hover .support{
	background:url(img/icon_assistance_w.svg)no-repeat left 9px center;
	background-size:16px;
}
.sub_menu_box2 ul li .lang{
	display:block;
	background:url(img/icon_language.svg)no-repeat left 11px center;
	background-size:16px;
}
.sub_menu_box2 ul li:hover .lang{
	background:url(img/icon_language_w.svg)no-repeat left 11px center;
	background-size:16px;
}
.sub_menu_box2 ul li:hover>a, .sub_menu_box2 ul li:hover .lang a{
	color:#fff;
}
.sub_menu_box2 ul li .lang a[target="_blank"]{
	background:none;
	padding-right:0;
}

 .header_font_in {
    position: absolute;
    top: 0;
    /*width: 262px;*/
    visibility: hidden;
    padding: 20px 19px;
    background: #fff;
    box-sizing: border-box;
    box-shadow: 0 0 5px rgb(0 0 0 / 30%);
    opacity: 0;
    z-index: 1;
  }
 .header_font_in.open {
    top: 50px;
	 right:-90px;
    display: block;
    opacity: 1;
    visibility: visible !important;
    transition: all 0.3s;
	 cursor:auto;
  }
.font_box{
	display:flex;
	align-items: center;
	margin-bottom:18px;
}
.font_box_r{
	display:flex;
	margin-left:10px;
	border:1px solid #ccc;
	border-radius:5px;
	overflow:hidden;
}
.font_box_r a{
	display:block;
	color: #333;
	background:#fff;
	padding:5px 10px;
}
.font_box_r a:hover{
	background:#E4F2F9;
	color:#0088CD;
}
.font_zoom{
	font-size:93.75%;
	border-right:1px solid #ccc;
}
.font_ttl,.bg_ttl{
	width:95px;
	font-size:81.25%;
}
.bg_box{
	display:flex;
	align-items: center;
	margin-bottom:30px;
}
.bg_box_r{
	margin-left:10px;
}
.bg_box_r{
	display: flex;
	border:1px solid #ccc;
	border-radius:5px;
	overflow:hidden;
}
.bg_box_r a{
	display: block;
    padding: 5px 10px;
	border-right:1px solid #ccc;
}
.bg_box_r a:last-child{
	border-right:none;
}
.bg_box_r .bg_white:hover{
	background:#E4F2F9;
}
.bg_box_r .bg_white{
	color:#333;
	background:#fff;
}
.bg_box_r .bg_black{
	color:#fff;
	background:#000000;
}
.bg_box_r .bg_black:hover{
	color:#0088CD;
	background:#E4F2F9;
}
.bg_box_r .bg_blue{
	color:#fff;
	background:#00008B;
}
.bg_box_r .bg_blue:hover{
	color:#0088CD;
	background:#E4F2F9;
}


/*
 		mypage				*/
.head_page_in{
	position: absolute;
    top: 0;
   	width: 262px;
    visibility: hidden;
    padding: 20px 19px;
    background: #fff;
    box-sizing: border-box;
    box-shadow: 0 0 5px rgb(0 0 0 / 30%);
    opacity: 0;
    z-index: 1;
	cursor:auto;
}
.sub_menu_btn .head_page_in.open{
	top: 50px;
    right: -90px;
    display: block;
    opacity: 1;
    visibility: visible !important;
    transition: all 0.3s;
    cursor: auto;
}
.keep_list{
	margin-bottom:20px;
}
.keep_item{
	display: flex;
    align-items: center;
	justify-content: space-between;
	padding:5px 0;
	margin:5px auto;
	border-bottom:1px dotted #ccc;
}
.keep_item:first-child{
	border-top:1px dotted #ccc;
}
.keep_item a{
	background: url(img/arrow_right_blue.svg)left center no-repeat;
    background-position:left 10px center;
    background-size: 16px;
    padding-left: 30px;
}
.keep_item a:hover{
	color:#0088CD;
	text-decoration:underline;
}
.keep_btn{
	cursor:pointer;
	display:block;
    border: 1px solid #0088CD;
    padding: 5px;
    border-radius: 5px;
    width:100%;
    margin: 0 auto 15px auto;
	color:#0088CD;
	background:#fff;
	font-size:87.5%;
	text-align:center;
	-webkit-transition: all ease 0.2s;
    -moz-transition: all ease 0.2s;
    -o-transition: all ease 0.2s;
    transition: all ease 0.2s;
}
.keep_btn.checked{
	color:#fff!important;
	background:#0088CD!important;
	pointer-events: none;
}
.keep_btn:hover{
	color:#0088CD;
	background:#E4F2F9;
}
.close_btn2{
	display:flex;
	width:12px;
	min-width:12px;
}
.close_btn2:hover{
	cursor:pointer;
}
.close{
	cursor:pointer;
	display: flex;
    justify-content: center;
    border: 1px solid #ccc;
    padding: 5px;
    border-radius: 30px;
    max-width: 125px;
    margin: auto;
	font-size:87.5%;
	-webkit-transition: all ease 0.2s;
    -moz-transition: all ease 0.2s;
    -o-transition: all ease 0.2s;
    transition: all ease 0.2s;
}
.close:hover{
	background:#E4F2F9;
}
.close .close_btn{
	padding-left:24px;
	background: url(img/icon_cross.svg)no-repeat left center;
    background-size: 10px;
	font-size:87.5%;
	line-height:2.2;
}


/*
 	検索ボタン			*/


.search_smp{
	display:none;
}
.serch_pc{
	position:relative;
	margin-left:20px;
}

/*
 snav */
/*.res_nav{
	display:none;
}*/

/*--------------------------------------------------------
	search
--------------------------------------------------------*/
.modal_open{
	display:block;
	width:30px;
	height:50px;
	border-radius:10px;
	cursor:pointer;
	text-decoration:none;
	transition:opacity 0.3s;
}
.modal_txt{
	display:block;
	position:relative;
	height:100%;
	background:url(img/icon_search.svg) no-repeat center right;
	border-radius:10px;
	font-size:0;
}
.modal_open:hover .modal_txt{background-image:url(img/icon_search_blue.svg)}
.modal_content{
	position:fixed;
	display:none;
	z-index:5000;
	text-align:center;
	width:526px;
}
.search_box{
	position:relative;
	width:100%;
	margin-bottom:35px;
	background:#fff;
}
.search_txt{
	display:block;
	width:100%;
	padding:20px 60px 19px 20px;
	background:none;
	border:none;
	box-sizing:border-box;
	font-size:112.5%;
}
.search_txt::placeholder{color:#aaa;}
.search_btn{
	display:block;
	position:absolute;
	top:0;
	right:0;
	font-size:0;
	width:60px;
	height:69px;
	background:url(img/icon_search.svg) no-repeat center/30px;
	border:none;
	cursor:pointer;
}
.modal_close{
	position:relative;
	display:inline-block;
	padding-left:20px;
	color:#fff !important;
	text-decoration:none !important;
	cursor:pointer;
}
.modal_close:hover{text-decoration:underline !important;}
.modal_close::before, .modal_close::after{
	content:'';
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:6px;
	width:2px;
	height:14px;
	margin:auto;
	background:#fff;
}
.modal_close::before{transform:rotate(45deg);}
.modal_close::after{transform:rotate(-45deg);}
#s_overlay{
	display: none;
	position:fixed;
	z-index:3000;
	top:0;
	left:0;
	width:100%;
	height:120%;
	background-color:rgba(0,136,205,0.85);
}



/*--------------------------------------------------------
	Outpatient Hours
--------------------------------------------------------*/
#f_information{
	background:url(img/pic_reception_info.jpg)no-repeat;
	background-size:cover;
}
#f_information h2{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:700;
	font-size:150%;
	color:#fff;
	text-align:center;
	margin-bottom:20px;
	margin-top:0;
}
#f_information h2:before{
	content:none;
}
.f_information_in{
	max-width:1140px;
	padding:40px 20px 50px 20px;
	margin:auto;
}
.info_box_area{
	background:#fff;
	border-radius:5px;
}

.info_item.time .info_txt{
	display:flex;
	flex-wrap:wrap;
	align-items: center;
	margin-bottom:15px;
}
.info_item.time .info_txt p{
	letter-spacing:0.04em;
}
.info_txt .dept_name{
	width:200px;
	padding:2px 10px;
	margin-right:15px;
	background:rgba(0,136,205,0.1);
	border-radius:5px;
}
.info_box{
	padding:30px 30px 15px 30px;
}
.info_item.tel .info_txt{
	display:flex;
	flex-wrap:wrap;
	align-items: center;
}

.info_item.tel{
	padding-top:5px;
	margin-top:20px;
	border-top:1px dotted #999;
}
.info_item.tel .info_txt .tel_num{
	display:inline-block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:160%;
	font-weight:700;
	letter-spacing:0.06em;
	color:#0088CD;
	margin-right:45px;
}


/*--------------------------------------------------------
	footer
--------------------------------------------------------*/
footer {
    position: relative;
}
.footer_main{
	max-width:1140px;
	display:flex;
	flex-wrap:wrap;
	margin:auto;
	padding:30px 20px;
}
.footer_menu:nth-child(1){
	width:10.5%;
}
.footer_menu:nth-child(2){
	width:27%;
}
.footer_menu:nth-child(3){
	width:23%;
}
.footer_menu:nth-child(4){
	width:15%;
}
.footer_menu_list {
    margin: 0 auto;
}
.footer_menu_list_item {
	list-style: none;
}
.footer_menu_list_link{
	font-size:87.5%;
}
.footer_menu_list a {
	display: block;
    text-decoration: none;
	transition: all 0.3s;
}
.footer_menu_list a:hover {
    color:#0088CD;
}
.footer_menu_list_link.f_parent_link{
	margin-bottom:10px;
	position:relative;
	overflow:hidden;
}
/* .footer_menu_list_link.f_parent_link:after{
	content:"";
	position:absolute;
	width:100%;
	height:1px;
	top:calc(50% - 1px);
	background:#fff;
} */
.f_sub_list {
	font-size:68.75%;
	margin: 0 auto 0;
}
.f_sub_item{
	position:relative;
	padding-left:12px;
	margin-bottom:10px;
}
.f_sub_item:before{
	content: '-';
    position: absolute;
    left: 0;
    top: -1px;
}
.f_sub_item:last-child{
	margin-bottom:0;
}

.f_content{
	position: relative;
}

.f_content_b{
	position:relative;
}
.f_content_b:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:1px;
	background:#ccc;
}
.f_content_b_in{
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	max-width: 1140px;
    padding:20px 20px 40px 20px;
    margin: auto;
}
.f_sitemap_menu{
	font-size:87.5%;
}

.f_sitemap_menu a:hover{
	color:#0088CD;
}
.return {
    clear: both;
    position: fixed;
    bottom: 80px;
    right: 10px;
    z-index: 9999;
    display: none;
    background: #0088CD url(img/pagetop_white.svg) center no-repeat;
    width: 50px;
    height: 50px;
	border-radius:35px;
    transition-duration: 0.2s;
    font-size: 0;
    text-decoration: none;
    cursor: pointer;
}
.return:hover {
    background: #6dceff url(img/pagetop_white.svg) center no-repeat;
}
#copyright p {
    margin: 0;
}




/**********************************************
 * 共通
 *********************************************/
[href^="tel:"]{
	pointer-events:none;
	text-decoration:none;
}


@media screen and (max-width: 1100px) {
	#logo a, #logo a img{
		max-width:250px;
	}
	.sub_menu_box ul li{
		padding:0 10px;
	}
}

@media screen and (max-width: 1024px) {

/**********************************************
 * 全ページ共通
 *********************************************/
	
	body.fixed {
		position: fixed;
		width: 100%;
	}
	/*#wrapper {
		padding-bottom: 62px;
	}	*/
	/*--------------------------------------------------------
			header
	--------------------------------------------------------*/
	.header_wrap.hide {
		transform: translateY(-100%);
	}
	#logo{
		/*padding:20px 20px 35px 20px;*/
		padding:20px 20px 50px 20px;
	}
	#logo a, #logo a img{
		max-width:305px;
		width:100%;
	}
	#menu > nav > ul > li:first-child{
		border-left:none;
	}
	#menu > nav > ul > li:nth-child(3){
		border-right:none;
	}
	#menu > nav > ul > li:nth-child(3):after {
    content: none;
}
	#menu .menu_item .menu_link{
		font-size:112.5%
	}
	.sub_menu{
		flex-direction: column-reverse;
    	align-content: flex-end;
		align-items:unset;
	}
	sub_menu_box2{
		margin-bottom:15px;
	}
	.h_sub_list .h_sub_link{
		position:relative;
		display:block;
		padding:10px 0 10px 20px;
	}
	.h_sub_list .h_sub_link:before{
		content: "";
    	position: absolute;
		top: 50%;
    	left: 10px;
    	width: 5px;
   		height: 1px;
    	background: #000;
	}
	.h_sub_list {
		display: block;
		overflow: hidden;
		margin: 0;
		padding:0 0 0 20px;
	}
	.s_sub_item.top_item a{
		padding:10px 0 10px 10px;
	}
	.s_sub_item.top_item a:before{
		content:none;
	}

	
	 /* snav */
	/*.res_nav{
		display:block;
	}*/
	/*.snav_main {
		position: fixed;
		display: flex;
		width: 100%;
		bottom: 0;
		left: 0;
		background: #fff;
		padding-bottom: calc(constant(safe-area-inset-bottom)*.5);
		padding-bottom: calc(env(safe-area-inset-bottom)*.5);
		border-top: 1px solid #F5F5F5;
		padding-left: 0 !important;
		margin: 0;
		transition-duration: 0.2s;
		z-index: 10000;
	}
	.snav_main li {
		width: 33.3%;
		text-align: center;
		font-size: 100%;
		letter-spacing: 1.2px;
		line-height: 2.0rem;
		color: #000;
		padding: 31px 0 1px;
		margin: 0 !important;
		cursor: pointer;
		list-style: none;
		position: relative;
	}
	.snav_main li.reception {
    	background: url(img/icon_reception_blue.svg) no-repeat center top 8px;
	}
	.snav_main li.access {
    	background: url(img/icon_access_blue.svg) no-repeat center top 8px;
	}*/
	/*.snav_main li.mypage {
    	background: url(img/icon_mypage_blue.svg) no-repeat center top 12px;
	}*/
	/*.snav_main li:nth-child(2n)::before, .snav_main li:nth-child(3n)::before {
		content: '';
		position: absolute;
		left: 0;
		top: calc(50% - 20px);
		width: 1px;
		height: 40px;
		background: #F5F5F5;
	}

	.snav_menu {
		display: block;
		position: fixed;
		z-index: 9999;
		top: 100vh;
		left: 0;
		width: 100vw;
		height: calc(100vh - 62px);
		padding-bottom: 62px;
		background: #fff;
		transition: top 0.3s;
	}
	.snav_menu {
		z-index: 9999;
		top: 100vh;
	}
	.snav_menu.open {
		top: 0;
	}	
	.snav_menu_wrap {
		position: relative;
	}	
	.snav_menu_close {
		position: absolute;
		z-index: 100;
		top: 0;
		right: 0;
		width: 100px;
		height: 60px;
		cursor: pointer;
	}
	.snav_menu_close span {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 100%;
		padding-left: 25px;
		font-size: 92.86%;
		letter-spacing: 1.65px;
	}	
	.snav_menu_close span::before, .snav_menu_close span::after {
		content: '';
		position: absolute;
		top: 1px;
		bottom: 0;
		left: 21px;
		margin: auto;
		width: 15px;
		height: 1px;
		background: #000;
	}
	.snav_menu_close span::before {
		transform: rotate(45deg);
	}
	.snav_menu_close span::after {
		transform: rotate(-45deg);
	}	
	.snav_menu_in {
		padding: 60px 20px;
	}
	.snav_keep_list {
		margin-bottom: 20px;
	}
	.snav_keep_item {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 10px 0;
		border-bottom: 1px dotted #ccc;
	}
	.snav_keep_item:first-child {
		border-top: 1px dotted #ccc;
	}
	.snav_keep_item a {
		background: url(img/arrow_right_blue.svg)left center no-repeat;
		background-position: left 10px center;
		background-size: 16px;
		padding-left: 30px;
	}	*/
	/*
	 * mypage */
	/*.keep_btn{
		padding: 10px 5px;
		font-size: 100%;
	}	*/
	/*--------------------------------------------------------
			footer
	--------------------------------------------------------*/



}

@media screen and (max-width: 959px) {

	/*--------------------------------------------------------
			footer
	--------------------------------------------------------*/
	.footer_menu:nth-child(1){
		width:13%;
	}
	.footer_menu:nth-child(2){
		width:33%;
	}
	.footer_menu:nth-child(3){
		width:30%;
	}
	.footer_menu:nth-child(4){
		
	}
	
}



@media screen and (max-width: 767px) {
	[href^="tel:"]{
		pointer-events:all;
	}
	.pc_size {
		display:none !important;
	}
	.sp_size {
		display:block !important;
	}
	body {
		-webkit-text-size-adjust: 100%;
		-webkit-tap-highlight-color: rgba(0,0,0,0);
		font-size: 87.5%;
		min-width: 0;
	}
	img{
		width:auto;
		height:auto !important;
		max-width:100%;
		width:100%;
		margin:auto;
	}
	.return {
		width: 50px;
		height: 50px;
	}
	
	/*--------------------------------------------------------
			header
	--------------------------------------------------------*/
	#logo a, #logo a img{
		max-width:250px;
	}
	.header_wrap{
		display:flex;
		align-items: center;
		justify-content: space-between;
		position:fixed;
		width:100%;
		height:70px;
		background:#fff;
		z-index:1000;
	}
	#logo {
		padding:0 10px 0 20px;
		margin:0;
	}
	 	#menu-box {
		padding: 0;
		z-index: 10000;
		display: block;
    	z-index: 50;
    	right: 0;
    	bottom: 0;
    	left: 0;
    	width: 70px;
    	height: 100%;
    	/*overflow: hidden;*/
	} 
	#toggle {
		display: block;
		position: relative;
		width:70px;
		height: 70px;
		top: 0;
		right: 0;
		z-index: 1000;
		float: right;
	}
	#toggle a {
		display: block;
		background: none;
		background: #0088CD;
		color: #fff;
		text-decoration: none;
		font-size: 66.7%;
		width: 70px;
		height: 100%;
		text-align: center;
		box-sizing: border-box;
		padding: 40px 0 0;
		letter-spacing: 0;
		position: relative;
	}
	#toggle a span, #toggle a::before, #toggle a::after {
		content: "";
		font-size: 0;
		position: absolute;
		display: block;
		background: #fff;
		width: 25px;
		height: 2px;
		margin: auto;
		left: 0;
		right: 0;
		transition: top 0.3s;
	}
	#toggle a::before {
		top: 18px;
	}
	#toggle a em::after {
		content: 'MENU';
	}
	#toggle a span {
		top: 27px;
	}
	#toggle a::after {
		top: 36px;
	}
	#toggle a.open:before {
		-moz-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		top: 26px;
		left: 0;
		right: 0;
	}
	#toggle a.open span {
		opacity: 0;
	}
	#toggle a.open:after {
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		top: 26px;
		left: 0;
		right: 0;
	}
	.menu_dis {
		display: none !important;
	}
	#menu {
		display: block;
		padding-bottom:80px;
		background: #E4F2F9;
		position:fixed;
		z-index: 200;
		left: 0;
		top: 70px;
		width: 100%;
		height: calc(100% - 64px);
		transition: all 0.3s;
		opacity: 1;
		z-index: 1000;
		overflow: auto;
	}
	#menu nav{
		padding:60px 20px 20px 20px;
		
	}
	#menu nav ul li{
		margin: 0;
		width:100%;
	}
	#menu nav ul li a, #menu .sub_menu ul li a {
		height: auto;
	}
	#menu > nav > ul > li{
		border-right:none;
	}
	#menu > nav > ul > li:first-child{
		border-left:none;
	}
	#menu > nav > ul{
		background:#fff;
		padding:10px 20px;
		border:1px solid #ccc;
		border-radius:5px;
	}
	#menu > nav > ul > li > a{
		font-size:142.85%;
		color:#333;
		padding:5px 0 5px 30px;
		border-bottom:1px dotted #ccc;
		background: url(img/icon_add.svg)no-repeat left center;
	}
	#menu > nav > ul > li:last-child a{
		border-bottom:none;
	}
	#menu .menu_item .menu_link:hover{
		background: url(img/icon_add.svg)no-repeat left center;
	}
	#menu .menu_item .menu_link.open{
		background: url(img/icon_pull.svg)no-repeat left center;
	}
	#menu .menu_item .menu_link{
		padding:10px 0 10px 30px;
		text-align:left;
	}
	#menu > nav > ul > li:before{
		content:none;
	}
	
	/*
	 		sub_menu		*/ 
	.sub_menu{
		top:15px;
	}

	/*
 		検索ボタン			*/
	.serch_pc{
		display:none;
	}
	.search_smp {
		position:relative;
		display:block;
	}
	#form2{
		padding:0 20px;
	}
	#sbox2{
		width:100%;
		border:1px solid #ccc;
		border-radius:5px;
		height:55px;
		padding:10px 50px 10px 10px;
		outline:0;
	}
	#sbox_img{
		position:absolute;
		right:40px;
		top:calc(50% - 10px);
	}

	/*--------------------------------------------------------
	Outpatient Hours
	--------------------------------------------------------*/
	.info_txt .dept_name{
		width:100%;
		margin-right:0;
		margin-bottom:10px;
		text-align:center;
	}
	.info_item.time .info_txt p{
		width:100%;
		text-align:center;
	}
	.info_item.tel .info_txt .tel_num{
		margin-right:0;
	}
	.info_item.tel .info_txt{
		justify-content: center;
	}
	.info_item.tel .info_txt p{
		width:100%;
		text-align:center;
	}
	
	
	/*--------------------------------------------------------
			footer
	--------------------------------------------------------*/
	
	.footer_menu {
		padding-top: 0;
		margin: 0;
		max-width:100%;
		width: 100%;
	}
	.footer_menu:nth-child(1),.footer_menu:nth-child(2),.footer_menu:nth-child(3),.footer_menu:nth-child(4){
		width:100%;
	}
	.footer_main {
	    flex-direction: column;
	    padding: 0;
	}
	.footer_menu_list {
	    width: 100%;
	    padding: 0;
		font-size: 13px;
		margin:0;
	}
	.footer_menu_list_link.f_parent_link{
		margin-bottom:0;
	}
	.footer_menu_list_link {
	    padding: 15px 20px;
	}
	.footer_menu_list_item {
	    position: relative;
	    margin: 0 !important;
	    border-bottom: 1px solid rgba(0,0,0,.25);
	}
	.footer_menu_list a.f_parent_link::before, .footer_menu_list a.f_parent_link::after {
	    content: '';
	    display: block;
	    position: absolute;
	    top: 0;
	    margin: auto;
	    background: #0088CD;
		opacity: 1;
	}
	.footer_menu_list a.f_parent_link::before {
	    top: 24px;
	    right: 19px;
	    width: 14px;
	    height: 2px;
	}
	.footer_menu_list a.f_parent_link::after {
	    top: 18px;
	    right: 25px;
	    width: 2px;
	    height: 14px;
	    transition: opacity 0.3s;
	}
	.footer_menu_list a.f_parent_link.open::after {
	    opacity: 0;
	}
	.f_sub_item.sp_size {
	    padding: 0;
	    border-bottom: 1px solid #444;
	}
	.sp_size .f_sub_link {
	    display: block;
	    padding: 15px 20px;
	    font-size: 13px;
	    letter-spacing: 1.3px;
	}
	.f_sub_item, .footer_lnk_top {
	    padding: 10px 20px;
	    margin: 0;
	}
	.footer_menu_list .f_sub_item a{
		padding-left:15px;
	}
	.f_sub_item:before{
		/*content:none;*/
		top:unset;
		left:20px;
	}
	.footer_lnk_top {
		border-bottom: 1px solid rgba(0,0,0,.25);
	}
	.f_sub_list {
	    display: none;
		padding:0;
	    margin: 0 !important;
	    border-top: 1px solid rgba(0,0,0,.25);
	}
	.f_parent_link::before, .f_parent_link::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		margin: auto;
		background:#0088CD;;
	}
	.f_parent_link::before {
		top: 24px;
		right: 19px;
		width: 14px;
		height: 2px;
	}
	.f_parent_link::after {
		top: 18px;
		right: 25px;
		width: 2px;
		height: 14px;
		transition: opacity 0.3s;
	}
	.f_content_b:before{
		content:none;
	}
	.f_content_b_in{
		padding:0;
	}
	.f_content_b_in > div{
		width:100%;
		padding:10px 20px;
		border-bottom:1px solid rgba(0,0,0,.25);
	}
	.f_content_b_in > div a{
		display:block;
	}
	#copyright{
		text-align:center;
	}
	.copy_txt{
		font-size:71.4%;
	}
}

/***************************************************
 * Concept
 **************************************************/

.wp-pagenavi {
	margin-top: 60px;
    text-align: center;
}
.wp-pagenavi .pages {
    display: none;
}
.wp-pagenavi a, .wp-pagenavi span {
    padding: 10px 17px;
    margin: 4px;
	color: #222;
	display: inline-block;
}
.wp-pagenavi span.current {
	background: #6dceff;
	color: #fff;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
    border-color: #6dceff;
	background: #6dceff;
	color: #fff;
}
.content_area .pagenav {
	width: 100%;
    text-align: center;
	margin: 40px 0;
}

.single #main_img_child .pagetit_box h1 {
    font-size: 213.33%;
    font-weight: bold;
    letter-spacing: 0.1em;
    position: relative;
    padding-bottom: 35px;
	line-height: 1.2;
}
.single #main_img_wrap {
    padding: 70px 20px 0;
}


/***************************************************
 * Sitemap
 **************************************************/
 .sitemap .content_area {
    margin-bottom: 80px;
}
.sitemap .content_area  a {
    color: #222;
	text-decoration:underline;
}
.sitemap .content_area a:hover{
	text-decoration:none;
}


/***************************************************
 * Error
 **************************************************/
.content_area.error {
    margin-bottom: 80px;
}
.content_area.error a {
    color: #222;
    text-decoration: none;
}
.content_area.error a:hover {
    text-decoration: underline;
}

/***************************************************
 * Outline
 **************************************************/

.overview ul {
	margin: 0;
	padding-left: 0;
}
.overview ul li {
	list-style: none;
}



/***************************************************
 * 後でチャイルドに
 **************************************************/

.column_2, .column_3{
	display:flex;
	flex-wrap:wrap;
}
.column_2 div{
	width:48%;
	margin:0 4% 20px 0;
}
.column_2 div:nth-child(2n){margin-right:0;}
.column_3 div{
	width:32%;
	margin:0 2% 25px 0;
}
.column_3 div:nth-child(3n){margin-right:0;}

/**/
.column_table {
	display:flex;
	flex-wrap:wrap;
}
.column_table .table_box{
	width:48%;
	margin:0 4% 20px 0;
}
.column_table .table_box:nth-child(2n){margin-right:0;}
/**/


@media screen and (max-width:767px){

.column_2, .column_3{display:block;}
.column_2 div, .column_3 div{
	width:auto;
	margin:0 0 15px;
}
	
	.column_table {
	display:block;
}
.column_table .table_box{
	width:auto;
	margin:0 0 15px;
}

}


