/*** 共通項目  ***/
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html{
    position: relative;
    min-height: 100%;
}
body {
    font-family: "Noto Sans JP", "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    margin: 0 auto;
    font-size: 90%;
    font-weight: 400;
    letter-spacing: 1px;
    color: #333;
    line-height: 1.4em;
    overflow-x: hidden;
}
header,main,footer{
    display: block;
}
img{
    max-width: 100%;
}
a:link, a:visited, a:hover, a:active {
	text-decoration: none;
}
a{
    color: #2b7bb9;
    transition: 0.1s;
}
a:hover{
    opacity: 0.8;
}
h2.sub_h2{
	padding: 0.3em 0 1em 0;
	margin-top: 1em;
	font-family: serif;
	font-size: 220%;
	font-weight: 500;
}
h2.sub_h2 a{
    color: #333;
}
h2.sub_h2 span{
	margin:0 1em;
	font-size: 80%;
	color:#017952;
}
h3,h5{
    font-weight: 500;
}
.sub_border{
    border-bottom: 1px solid #ddd;
}
.clearfix:after {
	display				: block;
	height				: 0;
	clear				: both;
	content				: " ";
}
.clear {
    clear: both;
}
span.display_pc{
    display: inline!important;
    margin: 0!important;
    float: none!important;
}
span.display_sp{
    display: none!important;
    margin: 0!important;
    float: none!important;
}
img.aligncenter { 
    display: block; 
    margin: 0 auto;
}
img.size-full,
img.size-large,
img.size-medium,
img.size-thumbnail{
    height: auto;
    margin: 1em 0;
}
.container_full {
    max-width: 1920px;
    margin: 0 auto;
}
.container {
    max-width: 1360px;
    margin: 0 auto;
    padding: 0 50px;
}
.padding_h20{
    padding: 20px 0;
}
.other_box {
    position: relative;
    max-width: 100%;
    font-weight: 500;
}
.other_box img {
    width: 100%;
    position: relative;
    z-index: 1;
    vertical-align: bottom;
}
.other_box span {
    position: absolute;
    color: rgb(65, 146, 109);
    border: solid 3px rgb(65, 146, 109);
    border-radius: 50px;
    background-color: #fff;
    z-index: 10;
    margin: 0 30px;
    font-size: 130%;
    transition: 0.1s;
}
.other_box span a {
    color: rgb(65, 146, 109);
    padding: 20px 100px;
    display: inline-block;
    white-space: nowrap;
}
.other_box span:hover{
    background-color: rgb(65, 146, 109);
}
.other_box span:hover a{
    color: #fff;
    opacity: 1;
}
.full_img{
	width:100%;
	height:auto;
	margin-bottom:1em;
}
h1 {
    font-size: 140%;
    padding-top: 10px;
    font-weight: normal;
	float:left;
}

.t_right{
	text-align:right;
}
p,
.full_box,
.tl_box,
.blog{
    line-height: 180%;
    margin: 1em 0px;
}
p{
	font-size:110%;
}
p.indent{
	text-indent:1em;
}
p.p2{
	margin-bottom:1em;
}
p.user{
	margin-top:0.5em;
}
div.blog{
	padding:1em 1.5em 1em 1.5em;
}
div.default{
	padding:1em 1.5em 1em 1.5em;
}
.button span{
	width:12em;
	text-align:center;
	line-height:2em;
	padding:0.5em;
}
.button  span,a.button  span{
  color: #fff;
  background-color: rgb(65,146,109);
}
.button  span:hover,
a.button  span:hover {
  color: #fff;
  background: #31a982;
}
a.button span{
   border-radius: 2px;
}
div.l_box{
	float: left;
	padding:1em;
}
div.l_box img{
	width:250px;
    height:auto;
}
h3{
	font-size:150%;
	border-left:5px solid rgb(65,146,109);
	margin:0.5em 0 0.5em 1em;
	padding:0.1em 0.5em;
}
h4{
    position: relative;
	font-size: 140%;
    line-height: 140%;
    font-weight: 500;
    border-bottom: 2px solid rgb(237,248,246);
	margin:0 0 1em;
	padding:0.7em 0;
}
h4:before{
    content: " ";
    bottom: 0;
    left: 0;
    width: 100px;
    position: absolute;
    border-bottom: 2px solid rgb(65,146,109);
}
h4 a{
	color:#333;
}
.red{
    color: #f00;
}
div.default p,div.blog p,div.news p,div.cont p,div.news_s p{
	margin-left:2.5em;
}
.nav_title{
    display: block;
    width: calc(100% - 60px);
    font-size: 140%;
    font-weight: 500;
    text-align: center;
    margin: 30px;
    padding: 60px 0;
    color: rgb(65,146,109);
    border-top: 2px solid rgb(65,146,109);
    border-bottom: 2px solid rgb(65,146,109);
}
/*** 共通項目end  ***/

/*** ヘッダ、メニュー ***/
header {
    background-color: #eee;
}
#head_content {
    background-color: rgba(0,0,0,0.3);
    z-index: 50;
    position: absolute;
    color: #ffff;
    padding: 20px 40px 20px 20px;
    top: 0;
    left: 0;
    width: 100%;
}
.head_page img#top_image{
    height: 300px;
    object-fit: cover;
    object-position: bottom;
}
#logo {
    float : left;
    width: 100px;
    padding: 5px 0 0 15px;
    filter: drop-shadow(1px 1px 1px #666);
}
#header {
    position: relative;
    font-weight: 500;
}
#header h1{
    margin-left: 3px;
}
#head {
    padding-left: 110px;
}
#head1 {
    /*columns: 2;*/
    border-bottom: 2px solid rgb(65,146,109);
    margin-left: 15px;
    padding-bottom: 5px;
	height: 3em;
    box-sizing: content-box;
}
#contact_list {
    text-align: right;
    padding-right: 5px;
	float:right;
}
#h_menu {
    display: none;
    font-size: 150%;
	color:#fff;
}

.contact {
    display: inline-block;
    padding: 6px 50px;
    margin:  3px 5px 0 0;
    border: 1px solid #fff;
    font-size: 90%;
    background-color: rgb(65,146,109);
}

/* g_menuメインs_menuサブc_menuクリクラ */
.sinryoi img{
	width:100%;
	height:auto;
    border-radius: 15px;
}
.answer{
	padding-left:4em;
	margin-bottom:2em;
}
#head_content a:link, #head_content a:visited, #head_content a:hover, #head_content a:active {
	color: #fff;
}
#g_menu {
    list-style-type: none;
    padding-top: 15px;
    display: block;
}
#g_menu li {
    display: inline-block;
    font-size: 95%;
    white-space: nowrap;
}
#g_menu li a{
    padding: 5px 15px;
}
#g_menu li.c-list {
    display: none;
}
#s_menu a:link, #s_menu a:visited, #s_menu a:hover, #s_menu a:active {
	color: #111;
}
#s_menu {
    font-weight: 500;
    list-style-type: none;
    padding: 20px;
    display: block;
}
#s_menu a{
    white-space: nowrap;
    opacity: 1;
}
#s_menu a:hover{
    color: #888;
}
#s_menu li {
    display: inline-block;
    margin-right: 40px;
}
#s_menu li.current_page_item a{
	color:rgb(65,146,109);
}
#s_menu li.c-list {
    display: none;
}
#c_menu{
    font-size: 120%;
    font-weight: 500;
	list-style-type: none;
    padding-left: 30px;
}
#c_menu li{
    position: relative;
}
#c_menu li::before{
    position: absolute;
    content: "\002d";
    top: 10px;
    left: 2px;
}
#c_menu li.nolink::before{
    content: "\002b";
    left: 0;
}
#c_menu li.nolink_toggle::before{
    content: "\00d7";
    font-size: 80%;
    left: -2px;
}
#c_menu li.nolink ul{
    display: none;
    list-style: none;
    font-size: 80%;
    padding-left: 35px;
}
#c_menu li.nolink ul li a{
    padding-left: 20px;
}
#c_menu,#c_menu a{
    color: rgb(65,146,109);
}
#c_menu li a{
    position: relative;
    z-index: 1;
    display: inline-block;
    margin: 10px 0;
    padding-left: 30px;
    white-space: nowrap;
    cursor: pointer;
}
#c_menu.p_group li.noline{
	border:0px;
}
#c_menu li.noline a{
	padding:0.4em 1em 0.3em 1em;
}
#top_image {
    float: left;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    max-height: 700px;
    object-fit: cover;
    object-position: bottom;
}

/*** ヘッダ、メニューend ***/
/*** 画像角丸 ***/
img.radius,
.newslist img,
.general img,
.policli img,
.clicla img,
.seminar img,
.program img,
.jornalclub img,
.staff img{
    border-radius: 10px;
}
img.noradius,
.general .bookshelf img{
    border-radius: 0px;
    border: solid 1px #eee;
}
/*** トップ ***/
#about {
    padding: 100px 0 150px 0;
    background-image :url('https://ds.cc.yamaguchi-u.ac.jp/~primary/wp-content/themes/blankslate/image/about.jpg');
    background-position: left top;
    background-repeat: no-repeat;
    background-size:100% auto;/*この場合は高さが自動設定*/
    background-size:cover;
}
#about_title {
	font-family : YuMincho, 'Yu Mincho';
    font-size: 200%;
    margin: 30px 0 60px 0;
    color: rgb(65,146,109);
}
#about_content {
    font-family : YuMincho, 'Yu Mincho';
    font-size: 130%;
    line-height: 200%;
    padding-left: 60px;
    padding-right: 50px;
    position: relative;
}
#about_box{
    text-align: right;
}
#about span {
    position: static;
    margin-top: 80px;
    display: inline-block;
    width: 250px;
    max-width: 100%;
    text-align: center;
}
#about span a{
    width: 100%;
    padding: 20px 0;
}
#about span.reverse{
    background-color: rgb(65,146,109);
}
#about span.reverse a{
    color: #fff;
}
#follow{
    text-align: center;
    background-color: #eee;
    padding: 75px 0 100px 0;
}
#follow a,
#follow .section_title{
    color:#333;
}
#follow .section_title::before {
    background-color: #333;
}
#follow .flex-container{
    margin: 75px 0 50px 0;
}
#follow .flex-item{
    width: calc(100% / 3 - 30px);
    height: 500px;
    margin: 0 15px;
	overflow-y: scroll;
    background-color: #fff;
    border-radius: 10px;
}
#follow iframe,
#follow .fb_iframe_widget,
#follow .fb_iframe_widget span,
#follow .fb_iframe_widget div{
    max-width: 100%!important;
    min-width: auto!important;
}
#follow .instagram{
    padding: 5px;
    font: normal normal 14px/1.4 Helvetica,Roboto,"Segoe UI",Calibri,sans-serif;
}
#follow .instagram_header{
    text-align: left;
    position: relative;
    margin: 5px 0 10px 0;
    padding: 0 0 5px 45px;
    border-bottom: 1px solid rgba(15,70,100,.12);
}
#follow .instagram_header a{
    font-size: 12px;
    font-weight: bold;
}
#follow .instagram_header_account{
    font-size: 11px;
    color: #90949c;
}
#follow .instagram_header img{
    display: inline-block;
    position: absolute;
    top: 3px;
    left: 5px;
    width: 30px;
    height: 30px;
    border-radius: 100%;
}
#follow .instagram_header_profile{
    position: absolute;
    width: 100px;
    border-radius: 5px;
    display: inline-block;
    padding: 5px 10px;
    top: 5px;
    right: 5px;
    background-color: #08f;
}
#follow .instagram_header_profile a{
    color: #fff;
}
#follow .jr-insta-datacontainer{
    padding: 10px;
    margin-bottom: 5px;
    border-bottom: 1px solid rgba(15,70,100,.12);
    font-size: 12px;
    text-align: left;
}
#iryou {
    background-color: rgb(237,248,246);
    padding: 60px 0 100px 0;
}
#iryou_content {
    /*columns : 3;*/
	/* float:left; (不要？これがあると画像のaタグ範囲がおかしくなる) */
	width:100%;
    white-space: nowrap; /* 行落ち防止 */
}
#iryou .flex-container{
    margin: 75px 0 50px 0;
}
#iryou .flex-item{
    width: calc(100% / 3 - 30px);
    margin: 0 15px;
    background-color: #fff;
    text-align: center;
    border-top: 10px solid rgb(65,146,109);
    font-size: 140%;
    transition: 0.2s;
}
#iryou .flex-item_reverse{
    background-color: rgb(65,146,109);
}
#iryou .flex-item a{
    display: block;
    height: 100%;
    color: rgb(65,146,109);
    padding: 60px 30px;
}
#iryou .flex-item_reverse a{
    color: #fff;
}
#iryou .flex-item:hover{
    background-color: rgb(65,146,109);
}
#iryou .flex-item:hover a{
    color: #fff;
    opacity: 1;
}
#iryou .flex-item:hover .iryou_top{
    border-bottom: solid 1px #fff;
}
#iryou .iryou_top{
    padding-bottom: 30px;
    border-bottom: 1px solid rgb(65,146,109);
}
#iryou .flex-item_reverse .iryou_top{
    border-bottom: 1px solid #fff;
}
#iryou .iryou_bottom{
    padding-top: 30px;
}
#iryou .iryou_top,#iryou .iryou_bottom{
    line-height: 200%;
    white-space: nowrap;
}
#mission .flex-item:first-child,
#journal .flex-item:last-child,
#interview .flex-item:first-child{
    width: 55%;
}
#mission .flex-item:last-child,
#journal .flex-item:first-child,
#interview .flex-item:last-child{
    width: 45%;
}
#mission .flex-item:first-child,
#journal .flex-item:last-child,
#interview .flex-item:first-child{
    background-image :url('https://ds.cc.yamaguchi-u.ac.jp/~primary/wp-content/themes/blankslate/image/mission.jpg');
    background-position: right top;
    background-repeat: no-repeat;
    background-size: cover;
    box-shadow: -225px 0 100px -100px #fff inset;
}
#journal .flex-item:last-child{
    background-image :url('https://ds.cc.yamaguchi-u.ac.jp/~primary/wp-content/themes/blankslate/image/diary.jpg');
    background-position: left top;
    box-shadow: 225px 0 100px -100px #fff inset;
}
.main_box .flex-item{
    text-align: center;
    padding: 150px 20px;
}
.main_box .main_title{
    margin: 0 0 30px 0;
}
.main_box .main_text,
.main_box .main_title{
    font-family: YuMincho, 'Yu Mincho';
    font-size: 1.8vw;
    line-height: 150%;
    white-space: nowrap;
}
.main_box .flex-item span{
    position: static;
    display: inline-block;
}
.main_box span{
    margin-top: 50px;
}
/*** トップend ***/

/*** フッタ ***/
#footer {
    font-weight: 500;
    background-color: rgb(64,64,64);
    color: #fff;
    padding: 60px;
}
#footer_logo {
    float : left;
    width: 90px;
    padding-top: 8px;
    padding-left: 20px;
}
#f_title {
    font-size: 120%;
    padding: 5px 0;
}
#footer_content {
    padding: 0 10px 20px 105px;
}
#f_box1, #f_box2 {
    display: inline-block;
    vertical-align : top;

}
#f_box1 {
    margin-right: 20px;
}
#copy {
    /* border-top: 1px solid #fff; */
    text-align: center;
    padding: 5px 10px;
}
#sns{
    display: inline-block;
    float: right;
    margin-top: 5px;
}
#sns img{
    margin-right: 1em;
}
#policy{
    margin-top: 10px;
    text-decoration: underline;
}
#policy a{
    color: #fff;
}
/*** フッタend ***/

#program1 span {
    top: 100%;
    left: 40%;
}
#program2 span {
    top: 60%;
    left: 60%;
}

#c_box {
    font-weight: 500;
    position: relative;
    max-width: 100%;
    padding: 100px 0;
    background-color: rgb(65, 146, 109);
}
#c_box_title {
    display: inline-block;
    font-size: 200%;
    padding: 50px;
    margin-bottom: 80px;
    border-left: solid 3px #fff;
    color: #fff;
}
.c_box_text{
    font-size: 50%;
    margin-top: 20px;
}
#c_box span {
    float: right;
    margin: 70px 70px 0 0;
}
#c_box span a{
    font-size: 120%;
    padding: 20px 100px;
    margin-top: 50px;
    background-color: #fff;
    color: rgb(65, 146, 109);
}
#c_box span a:hover{
    color: #fff;
    background-color: rgb(25,105,70);
    opacity: 1;
}
#c_box iframe{
    width: 100%!important;
}
/*** プログラム ***/
div.program1_content {
    columns : 1;
	text-align:center;
	padding:1em 0;
}
div.program1_content img{
    display: block;
    height:auto;
	max-width: 700px;
    margin: 0 0 2rem 0;
}
.program .flex-container a{
    display: inline-block;
    width: calc(50% - 4em);
    color: rgb(65,146,109);
    background-color: rgb(237,248,246);
    margin: 1em 2em;
    position: relative;
    transition: 0.1s;
    text-align: center;
    border-radius: 15px;
}
.program .flex-container a:hover{
    color: #fff;
    background-color: rgb(65,146,109);
    opacity: 1;
}
.program .flex-container a img{
    width: calc(100% - 4em);
    height: 200px;
    margin: 2em 2em 3em 2em;
    object-fit: cover;
    border-radius: 15px;
}
.program .flex-container a .program_title{
    font-size: 130%;
    margin: 0 2em;
    padding-bottom: 1em;
    border-bottom: solid 1px rgb(65,146,109);
}
.program .flex-container a:hover .program_title{
    border-bottom: solid 1px #fff;
}
.program .flex-container a .program_text{
    font-size: 115%;
    padding: 1em 2em 4em 2em;
}
/*** 挨拶 ***/
div.message{
	padding:1em 0 0 0;
}
div.message div.tl_box{
	float: left;
	padding: 1em 3em 1em 0;
	width: 400px;
}
div.message div.tl_box img{
    width: 100%;
    height: 400px;
    border-radius: 15px;
    object-fit: cover;
    object-position: top;
}
div.message div.tr_box{
	float: left;
	padding:1em;
	width: calc(100% - 400px);
}
div.message div.tr_box p{
    margin-bottom: 3em;
    line-height: 220%;
}
.signature{
	margin:1em;
	font-size:110%;
    font-weight: 500;
	line-height:1.2em;
}
.signature span{
	font-size: 180%;
    font-weight: 700;
	/*font-family: "HG行書体","HGP行書体",cursive;*/
	/*letter-spacing: 0.2em;*/
	line-height:1.5em;
}
/*** 挨拶end ***/

/*** 総合診療医 aboutだとtopのクラスと被るのでgeneral ***/
.general .magazine ul{
    padding-left: 35px;
}
.general .magazine ul li{
    font-size: 110%;
    margin: 5px 0;
}
.general .bookshelf .flex-container{
    position: relative;
}
.general .bookshelf .flex-container .flex-item{
    display: flex;
    align-items: center;
    width: calc(20% - 15px);
    margin: 0 15px 15px 0;
}
.general .bookshelf .flex-container .flex-item img{
    cursor: pointer;
}
.general .bookshelf .flex-container .flex-item .window{
    display: none;
    position: absolute;
    top: 30px;
    left: 30px;
    width: 600px;
    background-color: #fff;
    z-index: 1;
    box-shadow: 0px 0px 10px #555;
    padding: 30px;
    border-radius: 10px;
    max-width: calc(100% - 75px);
}
.general .bookshelf .flex-container .flex-item .window img{
    float: left;
    width: 150px;
    max-width: none;
    cursor: default;
}
.general .bookshelf .flex-container .flex-item .window .window_content{
    float: left;
    width: calc(100% - 150px);
    padding-left: 20px;
    box-sizing: border-box;
}
.general .bookshelf .flex-container .flex-item .window .window_title{
    font-size: 120%;
    font-weight: 700;
    margin-bottom: 20px;
}
.general .bookshelf .flex-container .flex-item .window .window_subtitle{
    font-size: 90%;
    font-weight: 500;
    display: inline-block;
    color: #fff;
    background: rgb(65,146,109);
    margin: 15px 0 10px 0;
    padding: 3px 10px;
}
.general .bookshelf .flex-container .flex-item .window .window_text{
    font-size: 100%;
}
.general .bookshelf .flex-container .flex-item .window .window_close{
    position: absolute;
    color: rgb(65,146,109);
    font-weight: 700;
    right: 0;
    top: 0;
    padding: 10px;
    cursor: pointer;
}
/*** ニュース ***/
#news,
.medical_seminar{
    padding: 60px 0;
    background-color: rgb(237,248,246);
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: cover;
    font-weight: 500;
    text-align: center;
}
.section_title {
    width: 100%;
    font-size: 200%;
    font-weight: 500;
    text-align: left;
    color: rgb(65, 146, 109);
    position: relative;
    padding-left: 75px;
}
.section_title::before{
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    width: 50px;
    height: 2px;
    background-color: rgb(65, 146, 109);
}
.section_title img {
    max-width: 100%;
}
#news_list {
    width: 90%;
    max-width: 1360px;
    margin:0 auto;
    margin-top: 30px;
}
#news_wrap {
    padding : 10px;
}
#news_list div.slick-slide {
    position: relative;
    max-width: 30%;
    margin: 0 15px;
    background-color: #fff;
    border-radius: 15px;
}
#news_list .news_image{
    width: 100%;
    padding: 30px;
}
#news_list img {
    height: 250px;
    width: 100%;
    object-fit: cover;
    border-radius: 10px;
}
.news_cap {
    width: 100%;
    text-align: left;
    padding: 0px 30px 20px 30px;
    line-height:1.2;
}
.news_abst{
    box-sizing: content-box;
    height: 40px;
    padding-bottom: 20px;
    color: #333;
    overflow: hidden;
}
.news_date {
    margin-bottom: 3px;
    color: #aaa;
    font-size: 85%;
}
.slick-prev::before, .slick-next::before {
    color: rgb(65, 146, 109);
    opacity: 1;
}
.slick-prev{
    left: -40px!important;
}
.slick-next{
    right: -40px!important;
}
.slick-prev, .slick-next{
    width: auto!important; 
    height: auto!important;
    transform: scale(1,1.5);
}
.slick-prev:before, .slick-next:before {
    font-size: 30px!important;
}
.slick-prev::before {
    content: "\25C0"!important;
}
.slick-next::before {
    content: "\25B6"!important;
}
#news_all {
    display: inline-block;
    margin-top: 30px;
    color: rgb(65,146,109);
}
#news_all a {
    border: 2px solid rgb(65,146,109);
    border-radius: 20px;
    background-color: #fff;
    padding: 8px 25px;
    color: rgb(65,146,109);
}
div.news{
	padding:1em 1.5em 1.5em 1.5em;
}
div.news h3{
	margin-bottom:0.5em;
}
div.news_s{
	padding:1em 1.5em 1.5em 1.5em;
}
.newslist .previous_link,
.newslist .next_link{
    display: block;
    margin: 15px 5px 0 5px;
    text-align: center;
}

.newslist .previous_link a,
.newslist .next_link a{
    color: rgb(10,90,50);
    font-weight: 500;
}
/*** ニュースend ***/

/*** 医学生,セミナー ***/
div.formedicalstudent{
	overflow: hidden;
}
div.formedicalstudent .medical_seminar ul{
    list-style: none;
    margin: 50px 0;
}
div.formedicalstudent .medical_seminar ul li{
    background-color: rgb(65,146,109);
    margin: 20px;
    text-align: left;
    border-radius: 0 10px 10px 0;
    overflow: hidden;
    white-space: nowrap;
}
div.formedicalstudent .medical_seminar ul li a{
    display: block;
    width: 100%;
}
div.formedicalstudent .medical_seminar ul li a:hover{
    opacity: 1;
}
div.formedicalstudent .medical_seminar ul li:hover{
    opacity: 0.8;
}
div.formedicalstudent .medical_seminar ul li .category{
    padding: 20px;
    width: 200px;
    display: inline-block;
    color: rgb(65,146,109);
    background-color: #fff;
    text-align: center;
}
div.formedicalstudent .medical_seminar ul li time{
    color: rgb(65,146,109);
    background-color: rgb(237,248,246);
    padding: 5px 30px;
    margin: 0 50px;
    border-radius: 10px;
}
div.formedicalstudent .medical_seminar ul li .title{
    display: inline-block;
    color: #fff;
    font-size: 120%;
    padding: 15px 0;
}
div.formedicalstudent #interview .flex-item:first-child{
    background-image :url('https://ds.cc.yamaguchi-u.ac.jp/~primary/wp-content/themes/blankslate/image/interview.jpg');
    background-position: left top;
}
div.formedicalstudent #c_box{
    padding: 160px 40px;
}
div.formedicalstudent #c_box_title{
    margin: 0;
}
div.formedicalstudent #c_box span{
    margin-top: 100px;
}
#sougou span {
    top: 50%;
    left: 60%;
}
#kougi {
    padding: 60px 0;
	background-color: rgb(237,248,246);
	text-align:center;
}
#kougi img{
    margin:1.5em 0;
}
#kougi h3, #rinen h3, .advantage h3{
    position: relative;
    display: inline-block;
    padding: 0 8em;
	color:#fff;
	border:0;
	border:none;
	margin-left:0;
	margin-right:0;
	margin-bottom:1em;
}
#kougi h3:before,
#kougi h3:after,
#rinen h3:before,
#rinen h3:after,
.advantage h3:before,
.advantage h3:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 7em;
    height: 2px;
    background-color: #fff;
}
#kougi h3:before,
#rinen h3:before,
.advantage h3:before{
    left: 0;
}
#kougi h3:after,
#rinen h3:after,
.advantage h3:after{
    right: 0;
}
#kagai span {
    margin-top:2em;
	position:static;
	line-height:2em;
	display:inline-block;
}
#kagai{
	text-align:center;
	height: 16em;
    margin: 5em;
}
#kagai h3 {
	border:0;
	border:none;
	margin-left:0;
	margin-right:0;
	color:rgb(65,146,109);
}
#kougi  .section_title{
    margin: 10px 0;
}
#kougi .flex-container{
}
#kougi .flex-container .flex-item{
    width: calc(100% / 3 - 4em);
    margin: 4em 2em;
    display: inline-block;
    position: relative;
}
#kougi .kougi_img_content span{
    position: absolute;
    top: calc(50% - 20px);
    left: 0;
    width: 100%;
    background: none;
    font-size: 230%;
    letter-spacing: 2px;
    z-index: 3;
    margin: 0;
    color: #fff;
    border: none;
}
#kougi .kougi_img_content a:before{
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.1);
    z-index: 2;
    opacity: 1;
    transition: 0.1s;
}
#kougi .kougi_img_content a:hover:before{
    background:#086;
    opacity: 0.8;
}
#kougi .kougi_img img{
    width: auto;
    max-width: 100%;
    margin: 0;
}

/* クリクラ ポリクリ */
.clinicalclerkship,.policli,.keitoukougi{
	display:table;
    table-layout: fixed
}

div.clinicalclerkship h3,div.policli h3,.keitoukougi h3{
    color: rgb(65,146,109);
    font-family : YuMincho, 'Yu Mincho';
	font-size: 200%;
    text-align: center;
	padding: 60px 0 20px 0;
	line-height: 1.5em;
	border-left: 0px;
}
div.clinicalclerkship h4,div.policli h4,.keitoukougi h4{
	font-size: 150%;
	margin: 1em 0;
	padding: 0.5em 0 0.5em 20px;
	padding: 0.5em 0;
	line-height: 1.5em;
}
div.clinicalclerkship h5,div.policli h5,.keitoukougi h5{
	font-size: 120%;
	border-left: 5px solid rgb(65,146,109);
	margin: 2em 0;
	padding: 0.5em 0 0.5em 1em;
	line-height: 1.5em;
}
div.clinicalclerkship div.tl_box h5,div.policli div.tl_box h5{
	margin:0 0 1.5em 0;
}

div.clinicalclerkship div.tl_box,div.policli div.tl_box{
	float: left;
	padding:0 1em 1em 3em;
	width:60%;
}
div.clinicalclerkship div.il_box,div.policli div.il_box{
	float: right;
	padding:1em 2em 1em 0;
	max-width:40%;
}
div.clinicalclerkship,div.policli,div.keitoukougi{
	width:100%;
}
div.full_box{
	margin-bottom: 3em;
}
div.il_box img{
	max-width:100%;
	height:auto;
}
div.cliclier{
	margin: 0 3em;
	text-align:center;
}
div.clinicalclerkship nav,
div.policli nav,
.keitoukougi nav{
	width:250px;
	display:table-cell;
	background-color: rgb(237,248,246);
	margin:0;
	padding: 0 0 50px 0;
	vertical-align:top;
}
div.clinicalclerkship .full_box{
    border-bottom: 2px solid rgb(237,248,246);
    margin-bottom: 50px;
    padding-bottom: 50px;
}
div.lc_box{
	padding: 0 0 50px 30px;
	width: 100%;
}
div.keitoukougi .full_box{
    margin: 1em 2em 3em 2em;
}
video {
    max-width: 100%;
    height: auto!important;
    display: block;
}
.wp-video {
    width: 100%!important;
}
.siryo .flex-container .flex-item{
    width: calc(50% - 6em);
    margin:1em 3em 1em 3em;
    background: #EDF8F6;
}
.siryo .flex-container .flex-item .full_box{
    padding: 0;
    margin: 0; 
}
.siryo .flex-container .flex-item .siryo_text{
    margin: 0;
    font-weight: 700;
    line-height: 1.5em;
    padding: 2em;
}
.siryo .flex-container .flex-item h5{
    margin: 0;
    padding: 5px 0 0 0;
    border-left: 0px;
}
/************************* 初期研修医の方へ *************************/
.flex-container{
    display: flex;
    flex-wrap: wrap;
}
.flex-item img{
    max-width: 100%;
}
.resident .greeting{
    margin-top: 30px;
    margin-bottom: 90px;
}
.resident #rinen{
    color:#fff;
    font-family : YuMincho, 'Yu Mincho';
	background: rgb(65,146,109);
	text-align:center;
    padding: 80px 0;
}
.resident #rinen .section_title{
    color: #fff;
    margin: 40px 0;
}
.resident #rinen .section_title::before{
    background-color: #fff;
}
.resident #rinen span{
    font-size: 160%;
}
.resident #rinen P{
    font-size: 90%;
    font-weight: 500;
}
#facility .flex-item:first-child{
    width: 60%;
}
#facility .flex-item:last-child{
    width: 40%;
}
#facility .flex-item:first-child{
    background-image :url('https://ds.cc.yamaguchi-u.ac.jp/~primary/wp-content/themes/blankslate/image/map.png');
    background-position: left center;
    background-repeat: no-repeat;
    background-size: cover;
}
#syoki span {
    top: 80%;
    left: 70%;
	font-size: 250%;
	background:none;
	color:#000;
}
#ob{
    background-color: rgb(237,248,246);
	text-align: center;
	padding: 10em 0 12em 0;
	color:#fff;
}
#rinen p{
	padding-bottom:1em;
}
.rinen_logo{
	max-width: 220px;
	height: auto;
	margin: 2em;
}
.advantage{
    text-align:center;
	padding-top: 6em;
    padding-bottom: 2em;
}
.advantage h3{
    color: rgb(65,146,109);
}
.advantage h3:before,
.advantage h3:after{
    background-color: rgb(65,146,109);
}
.advantage .flex-container{
    flex-wrap: wrap;
    margin-top: 50px;
}
.advantage .flex-item{
	width: 50%;
    position: relative;
}
.advantage .flex-item img{
    width: auto;
	max-width: 100%;
    padding: 10px 0 10px 40px;
}
.advantage .flex-item span,
#ob span{
    position: static;
    display: inline-block;
    margin-top: 50px;
}
.map .flex-item{
    position: relative;
}
.map .flex-item img{
    position: absolute;
    top: -200px;
    left: 0;
    padding: 0;
}
.map .map-text{
    font-size: 1.8vw;
    font-weight: 500;
    line-height: 2.2vw;
}
.map .flex-item span{
    margin-bottom: 200px;
}

#facility{
    margin: 40px 5%;
}
#ob h3{
    color: rgb(65,146,109);
    font-size: 220%;
    font-weight: 500;
    margin: 0;
    padding: 10px;
}
#program1{
	margin-bottom:2em;
}
#program2{
	text-align:center;
}
#program2 img{
	padding:1em 0;
	max-width:950px;
}
h3.program{
	color:rgb(65,146,109);
	text-align:center;
	border:none;
	border:0;
	margin-bottom:1em;
}
div.sinryoui a{
    color: rgb(65,146,109);
    background-color: rgb(237,248,246);
    width: calc( 100% / 3 - 20px);
    margin: 10px;
}
div.sinryoui a:hover{
    background-color: rgb(65,146,109);
    color: rgb(237,248,246); 
    opacity: 1;
}
div.sinryoui a .flex-item{
    text-align: center;
    padding: 30px 50px;
}
div.sinryoui a .flex-item img{
    width: 100%;
    border-radius: 100%;
}
div.sinryoui a .flex-item .sinryoui_name{
    width: 100%;
    font-size: 120%;
    font-weight: 500;
    padding: 30px 0 15px 0;
    border-bottom: solid 1px rgb(65,146,109);
}
div.sinryoui a:hover .sinryoui_name{
    border-bottom: solid 1px #fff;
}
div.sinryoui a .flex-item .sinryoui_title{
    font-size: 100%;
    padding-top: 15px;
}
div.clinicalclerkship table.requirement{
    border-collapse:collapse;
    border-top: solid 1px #ddd;
}
div.clinicalclerkship table.requirement td{
    border-bottom: solid 1px #ddd;
    padding: 1rem 3rem 1rem 1rem;
}
div.facility table{
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
div.facility table tr td{
    border: solid 1px #aaa;
    padding: 1em 2em;
}
div.facility table tr td:nth-child(1){
    width: 15em;
    background: #eee;
}
div.facility .doctor .photo{
	width: auto;
}
div.facility .doctor .photo img{
    height: 200px;
    width: 200px;
    object-fit: cover;
    margin-bottom: 1em;
}
div.facility .profile_name{
    font-size: 150%;
    padding: 0 0 1em 0;
}
div.facility .profile_name_en{
    font-size: 50%;
    color: rgb(65,146,109);
}
div.facility .photo-bottom img{
    width: 100%;
    height: 18vw;
    padding-right: 5em;
    object-fit: cover;
}
div.facility .flex-container .flex-item{
    width: calc(50% - 1em);
    margin: 0.5em;
    position: relative;
    font-weight: 500;
}
div.facility .flex-container .flex-item img{
    width: 100%;
    height: 250px;
    object-fit: cover;
    vertical-align:top;
}
div.facility .flex-container .flex-item a span{
    position: absolute;
    top: calc(50% - 10px);
    left: 0;
    width: 100%;
    text-align: center;
    background: none;
    color: #fff;
    font-size: 180%;
    z-index: 3;
}
div.facility .flex-container .flex-item a:before{
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: #000;
    z-index: 2;
    opacity: 0.2;
    transition: 0.1s;
}
div.facility .flex-container .flex-item a:hover:before{
    background: #086;
    opacity: 0.8;
}

/************************* 業績 *************************/
.gyoseki h6{
    font-size: 140%;
    margin: 0;
    line-height: 1.5em;
    color: rgb(65,146,109);
}
.gyoseki .gyoseki_box{
    background-color: rgb(237,248,246);
    padding: 30px;
    margin-bottom: 20px;
}
.gyoseki .gyoseki_box table{
    margin: 20px 0 0 20px;
}
.gyoseki .gyoseki_box table th{
    color: rgb(65,146,109);
    background-color: #fff;
    padding: 5px 10px;
    border: solid 5px rgb(237,248,246);
    white-space: nowrap;
}
.gyoseki .gyoseki_box table td{
    word-break: break-all;
    padding: 10px;
}
/************************* ニュース *************************/
div.newslist .lc_box time{
    display: block;
    font-size: 70%;
    color: rgb(10,90,50);
    padding-bottom: 10px;
}
div.newslist .date{
    font-size: 110%;
    font-weight: 700;
    color: rgb(65,146,109);
    padding: 0.5em;
}
div.newslist p{
    margin: 2em 0;
    word-wrap: break-word;
}

div.newslist nav{
    float: left;
	width: 250px;
	display:table-cell;
	background:#fff;
	margin:0;
	padding: 2em 0 0 0;
	vertical-align:top;
}
div.newslist .nav_box{
    margin-bottom: 2rem;
    color: rgb(65,146,109);
    background-color: rgb(237,248,246);
}
div.newslist .nav_box_header{
    font-size: 120%;
    font-weight: bold;
    padding: 1.2em 1em 0 1.5em
}
div.newslist .nav_box_content{
    padding: 1em 2em 2em 2em;
    font-size: 90%;
}
div.newslist .nav_box_content ul{
    list-style: none;
}
div.newslist .nav_box_content ul li{
    padding: 0.5em 0;
}
div.newslist .nav_box_content ul li a{
    color: rgb(65,146,109);
    font-weight: 500;
}
div.newslist div.lc_box{
    float: right;
    width: calc(100% - 250px);
    padding: 2em 2em 2em 5em;
}
div.newslist .calendar-table{
    width: 180px;
    margin: 0 auto;
    padding-top: 5px;
}
div.newslist .calendar-table thead{
    color: rgb(10,90,50);
    padding-bottom: 5px;
}
div.newslist .calendar-header{
    text-align: center;
    position: relative;
    width: 180px;
    margin: 0 auto;
}
div.newslist .calendar-header button{
    position: absolute;
    top: 0px;
    border: none;
    color: rgb(10,90,50);
    font-size: 120%;
    background-color: transparent;
    cursor: pointer;
}
div.newslist .calendar-header .calendar-header__title{
    color: rgb(10,90,50);
    font-weight: bold;
}
div.newslist .calendar-header button.calendar-header__prev{
    left: 8px;
}
div.newslist .calendar-header button.calendar-header__next{
    right: 8px;
}
div.newslist .calendar-table td{
    text-align: right;
    padding: 1px;
    color: #aaa;
}
div.newslist .calendar-table td a{
    font-weight: 900;
    color: rgb(65,146,109);
}
div.newslist .author{
    background: #EDF8F6;
    padding: 3em 3em 4em 3em;
}
div.newslist .author img{
    float: left;
    width: 150px;
    height: 150px;
    border-radius: 100%;
    object-fit: cover;
    margin-right: 40px;
}
div.newslist .author .author-infomation{
    display:  inline-block;
    font-size: 125%;
}
div.newslist .author .author-infomation-belong{
    padding: 50px 0 20px 0;
}
div.newslist .author .author-infomation-name{
    font-weight: 700;
}
div.newslist .author .author-description{
    width: 100%; 
    font-size: 105%;
    line-height: 160%;
    padding-top: 3em;
}
div.newslist .lc_box ol,div.newslist .lc_box ul{
    margin-left: 2em;
}
.pnavi{
    margin: 60px 0 40px 0;
    text-align: center;
}
.pnavi .page-numbers{
    padding: 8px 12px;
    margin: 0px 5px;
    color: rgb(65,146,109);
    border: solid 1px rgb(65,146,109);
    background-color: rgb(237,248,246);
}
.pnavi .page-numbers a{
    color: rgb(65,146,109);
}
.pnavi .current{
    color: #fff;
    background-color:rgb(65,146,109);
}
/************************* ジャーナルクラブ *************************/
div.jornalclub .lc_box table{
    margin-bottom: 2em;
    
}
div.jornalclub .lc_box table th{
	background:rgb(65,146,109);
    color: #fff;
    padding: 0.5em 1em;
}
div.jornalclub .lc_box table td{
    padding: 0.5em 1em;
    background-color: rgb(237,248,246);
}
div.jornalclub .lc_box table a{
    text-decoration: underline;
}
div.jornalclub .lc_box table a:hover{
    text-decoration: none;
}
div.jornalclub .keypoint,
div.jornalclub .reference{
	color:rgb(65,146,109);
    font-weight: bold;
    margin-top: 1.5em;
}
div.jornalclub .reference{
    color: #000;
}
div.jornalclub .keypoint_content,
div.jornalclub .reference_content{
    line-height: 200%;
}
/************************* お問い合わせ *************************/
div.cont{
	padding:1em 2em 1em 1.5em;
}

div.staff .button{
	background:rgb(65,146,109);
	color:#fff;
	line-height: 1.7em;
    margin-top: 0.1em;
}
div.staff h3{
    margin: 20px 0;
}
div.staff .staff_img{
    margin: 40px 0 20px 0;
}
div.staff div.tl_box{
	float: left;
}
div.staff div.tl_box img{
    width: 200px;
    margin: 0 30px 10px 0;
}
div.staff div.il_box{
	float: left;
    width: calc(100% - 230px);
	padding:1em 2em 1em 0.5em;
}
div.staff span.s_name{
	font-size:120%;
}
div.staff span.s_name_en{
    font-size: 80%;
    color: rgb(65,146,109);
}
div.staff dt{
	float:left;
	width :  5em;
	height: 1.8em;
	text-align:center;
	margin-bottom:0.5em;
}
div.staff dd{
	margin-left: 7em;
	min-height:2em;
	margin-bottom:1em;
	line-height: 160%;
}
div.staff div.comment{
	border: dashed 2px rgb(65,146,109);
    border-radius: 8px;
	padding: 1em 2em;
	margin:2em 0;
    width: 100%;
	max-width: 700px;
    min-height: 150px;
}
div.staff p.comment{
	color:rgb(65,146,109);
	margin: 0 0 0.5em 0;
}
div.cont h3{
    margin: 30px 0;
}
div.cont dl{
	margin:1.5em 0 0;
	margin-left: 2em;
}
div.cont div.form{
    text-align: center;
}
div.cont div.form a{
    display: inline-block;
    background-color: rgb(65, 146, 109);
    padding: 1em 3em;
    color:#fff;
    font-size: 130%;
    font-weight: bold;
    margin: 1em 0;
    white-space: nowrap;
}
div.cont div.form a:hover{
    background: #017952;
}
div.cont dt{
	clear: left;
	float:left;
	display:block;
	width :  4em;
	height:2.5em;
	text-align:center;
	margin-bottom:0.5em;
	line-height:1.5em;
}
div.cont dd{
	display:block;
	float:left;
	margin-bottom:0.5em;
	height:2.5em;
	line-height:1.5em;
}

div.cont span.cont{
	color:rgb(65,146,109);
	font-size:150%;
	font-weight:bold;
}

div.cont table.cont{
	border-collapse: separate;
	border-spacing: 0px;
	border-top: 1px solid #ccc;
	margin:1em 0 1em 3em;
}
div.cont table.cont th{
	vertical-align: top;
	padding:0.5em;
	color: #000;
	background-color: #fafafa;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
div.cont table.cont td{
	padding:0.5em;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

/************************* 1200px未満 *************************/
@media only screen and (max-width: 1200px){
    .other_box span a {
        padding-top: 15px;
        padding-bottom: 15px;
    }
    #g_menu li a {
        display: inline-block;
        width: 160px;
        padding: 5px 0px;
    }
    #news{
        padding: 60px 20px;
    }
    #news_list img{
        height: 200px;
        border-radius: 10px;
    }
    .section_title{
        font-size: 150%;
    }
    #about,#iryou,
    .iryou_bottom,
    .main_box,
    #c_box{
        font-size: 80%;
    }
    #c_box2{
        text-align: center;
    }
    #c_box2 #c_box_title{
        display: block;
        text-align: center;
        border: 0px;
        margin: 0;
    }
    #c_box2 span{
        float: none;
        display: inline-block;
        
    }
    #iryou .flex-item a{
        padding: 30px;
    }
    #c_box_title {
        padding: 30px;
    }
    #c_box span {
        margin: 50px 0 0 0;
    }
    #c_box span a{
        padding: 20px 50px;
    }
    div.newslist div.lc_box{
        padding: 2em 3em;
    }
    div.formedicalstudent .medical_seminar ul li{
        font-size: 90%;
    }
    div.formedicalstudent #c_box span {
        margin-top: 40px;
    }
    div.formedicalstudent #c_box {
        padding: 100px 0 140px 0;
    }
    #kougi .kougi_img_content span{
        font-size: 2.2vw;
    }
    div.clinicalclerkship div.sinryoui a{
        width: calc( 100% / 2 - 20px);
        margin: 10px;
    }
    .advantage .flex-item span,
    #ob span{
        border-radius: 50px;
        font-size: 120%;
        margin-top: 40px;
    }
    .program .flex-container a{
        width: calc(50% - 2em);
        font-size: 80%;
        margin: 1em;
    }
}
/************************* 950px以上 *************************/
@media only screen and (min-width: 950px){
    #c_menu li.nolink ul.c_menu_left{
        padding-left: 10px;
    }
}
/************************* 950px未満 *************************/
@media only screen and (max-width: 950px){
    nav.nomenu{
        display: none!important;
    }
	div.message div.tr_box,
    div.message div.tl_box{
		float: none;
		width: 100%;
	}
    div.message div.tl_box {
        padding: 1em 0;
    }
    #logo {
        width: 60px;
        padding-top: 5px;
    }
    #header {
        position: static;
    }
    #head {
        padding-left: 70px;
    }
    #head1 {
        columns: 1;
        padding-bottom: 5px;
        margin-left: 5px;
        height: auto;
    }

    #h_menu {
        float: right;
        padding-top: 10px;
        padding-right: 10px;
        display: block;
        text-align: right;
        cursor: pointer;
    }
    #contact_list{
        display: none;
    }
    #sns{
        float: none;
        display: block;
        margin-top: 30px;
    }
/* g_menuメインs_menuサブ */
	#g_menu a:link, #g_menu a:visited, #g_menu a:hover, #g_menu a:active {
		color: #111;
        display: block;
	}
    #g_menu:before {
        content: "MENU";
        display:  block;
        text-align: center;
        border-top: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
        background-color: #eee;
        padding: 10px;
    }
    #g_menu {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        overflow-y: auto;
        height: 100%;
        width: 220px;
        left: -220px;
        background-color: #fff;
        color: #111;
        z-index: 100;
    }
    #g_menu li {
        display: block;
        padding: 10px;
        margin-right: 0;
    }
    #g_menu li.c-list {
        display: block;
    }
	#s_menu li{
		display:block;
		text-align:center;
	}
	#s_menu {
		columns : 3;
	}
	#c_menu {
		padding: 0;
	}
    #c_menu li {
        position: relative;
        width: 250px;
        margin: 0 auto;
    }
    #c_menu li a{
        padding: 0;
        width: 100%;
    }
    #c_menu li.nolink ul {
        padding-left: 0;
    }
    #c_menu li.nolink ul li a {
        padding-left: 10px;
    }
    #news_list img {
        height: 200px;
    }
    #news_list .news_image {
        padding: 20px;
    }
    #news_list div.slick-slide {
        margin: 0 10px;
    }
    .news_cap {
        padding: 0px 20px 20px 20px;
    }
	#about{
		padding: 60px 20px;
	}
	#about_content{
		padding-left: 10px;
		padding-right: 10px;
	}
	#about_title{
		font-size:150%;
		text-align: center;
	}
    #about_box {
        text-align: center;
    }
    #about span{
        width: 250px;
        margin-top: 70px;
        margin-bottom: 40px;
    }
    #iryou .flex-item {
        font-size: 100%;
    }
    #iryou .flex-container {
        margin: 50px 0 20px 0;
    }
    #iryou .iryou_top{
        padding-bottom: 15px;
    }
    #iryou .iryou_bottom{
        padding-top: 15px;
    }
    #follow .flex-item{
        width: calc(100% - 30px);
        max-width: 500px;
        margin:0 auto;
        margin-bottom: 50px;
    }
	#mission span,
    #journal span,
    #sougou span{
		left: 20%;
		width: 60%;
		text-align: center;
	}
	#mission span a,
    #journal span a,
    #about span a,
    #sougou span a {
		padding: 10px 0;
        width: 100%;
	}
	#kougi h3 {
		padding: 0 5em;
	}
	#kougi h3:before,
	#kougi h3:after {
		width: 4em;
	}
    div.lc_box {
        padding: 1em 0 10em 0em;
    }
    .gyoseki h6,
    .gyoseki .full_box{
        padding: 1.5em;
    }
    .clinicalclerkship,
    .policli, 
    .keitoukougi,
    div.clinicalclerkship nav,
    div.policli nav,
    .keitoukougi nav,
    div.clinicalclerkship div.tl_box,
    div.policli div.tl_box{
        display: block;
        width: 100%;
    }
    div.facility table tr td:nth-child(1){
        width: auto;
    }
    h2.sub_h2 span{
        display: block;
        margin: 0;
        padding: 20px 0 0 10px;
    }
    div.formedicalstudent .seminar-left{
        position: static;
    }
    div.formedicalstudent .seminar-right{
        width: 100%;
        margin: 0;
        border-left: 0px;
    }
    div.formedicalstudent .seminar-right ul li a{
        display: block;
    }
    div.formedicalstudent .medical_seminar ul li {
        border-radius: 10px;
    }
    div.formedicalstudent .medical_seminar ul li .category {
        display: none;
    }
    div.formedicalstudent .medical_seminar ul li time{
        margin: 0 20px;
    }
    div.clinicalclerkship nav,
    div.policli nav,
    .keitoukougi nav{
        padding-bottom: 50px;
        margin: 10px 0;
        text-align: center;
    }
    div.clinicalclerkship h3,
    div.policli h3,
    .keitoukougi h3{
        padding-top: 20px;
        margin-left: 0;
    }
    #kougi .flex-container .flex-item {
        width: calc(100% / 3 - 2em);
        margin: 4em 1em;
    }
    .nav_title{
        padding: 50px 0 0 0;
        border-top: 0px;
        border-bottom: 0px;
    }
    .answer{
        padding-left: 2em;
        padding-right: 1em;
    }
    .program .program_box .flex-container .flex-item{
        height: 250px;
        width: 250px;
    }
    .program .program_box .flex-container .flex-item:first-child{
        width: calc(100% - 260px);
    }
    .advantage{
        padding-bottom: 6em;
    }
    .advantage .flex-item{
        width: 100%;
        text-align: center;
    }
    .advantage .flex-item img{
        width: 70%;
        max-width: 450px;
        padding: 1em 0;
    }
    .advantage .flex-item span,
    #ob span{
        border: solid 3px rgb(65, 146, 109);
        border-radius: 0px;
        margin-bottom: 50px;
    }
    .map{
        color: #fff;
        background-color: rgb(65,146,109);
    }
    .map .flex-item img{
        display: none;
    }
    .map .map-text {
        font-size: 160%;
        line-height: 160%;
    }
    div.facility .photo{
        margin-bottom: 0;
        padding-bottom: 0;
    }
    div.facility .profile{
        margin-top: 0;
    }
    div.staff .button {
        display: block;
    }
    div.staff div.il_box{
        width: 100%;
    }
    div.staff div.comment{
        display: block;
    }
    .general .bookshelf .flex-container .flex-item .window{
        font-size: 90%;
    }
}
@media only screen and (max-width: 680px){
    span.display_pc{
        display: none!important;
    }
    span.display_sp{
        display: inline!important;
    }
    .container {
        padding: 0 20px;
    }
    p{
        font-size: 100%;
    }
    .newslist img,
    .seminar img,
    .jornalclub img{
        height: auto!important;
    }
    #head{
        padding-left: 40px;
    }
    #head h1{
        font-weight: 700;
    }
    #logo {
        width: 40px;
        padding-left: 0;
    }
    #top_image {
        height: 250px;
        object-fit: cover;
    }
	#s_menu {
		columns : 2;
	}
    #footer{
        text-align: center;
        padding: 60px 30px;
    }
    #footer_logo{
        display: none;
    }
    #footer_content{
        padding: 0 0 30px 0;
    }
    #f_title {
        font-size: 110%;
    }
    #about span {
        margin-top: 30px;
        margin-bottom: 0px;
    }
    #about_content{
        font-size: 120%;
    }
    #mission .flex-item:first-child,
    #journal .flex-item:last-child,
    #interview .flex-item:first-child{
        display: none;
    }
    #mission .flex-item:last-child,
    #journal .flex-item:first-child,
    #interview .flex-item:last-child{
        width: 100%;
        padding: 100px 20px;
        color: #fff;
        background-color: rgb(65,146,109);
    }
    #journal .flex-item:first-child {
        color: rgb(65,146,109);
        background-color: rgb(237,248,246);
    }
    .main_box .main_text,
    .main_box .main_title {
        font-size: 4vw;
    }
    .other_box span{
        border: none;
    }
    #c_box_title {
        display: block;
        padding: 20px;
        margin-bottom: 0;
        border: none;
    }
    #c_box{
        text-align: center;
    }
    #c_box span {
        float: none;
        display: inline-block;
        width: 100%;
        margin: 30px 0 50px 0;
    }
    #c_box span a{
        width: 60%;
        display: inline-block;
        margin: 0;
        padding: 10px 0;
    }
    .other_box span {
        border-radius: 0px;
    }
    #iryou .flex-item {
        width: 100%
    }
    #iryou .flex-item a {
        padding: 50px;
        font-size: 120%;
    }
	#kougi h3 {
		padding: 0 2.5em;
	}
	#kougi h3:before,
	#kougi h3:after {
		width: 2em;
	}
    #kougi h3, #rinen h3, .advantage h3{
        padding: 0;
    }
    #kougi h3:before, #rinen h3:before, .advantage h3:before,
    #kougi h3:after, #rinen h3:after, .advantage h3:after{
        display: none;
    }
    #kougi .kougi_img{
        margin: 2em 0;
    }
    #kougi .kougi_img_content{
        width: 50%;
        margin: 1.5em 0;
    }
    #kougi .kougi_img_content span{
        font-size: 5vw;
    }
    div.formedicalstudent .medical_seminar ul li time{
        color: #fff;
        background-color: transparent;
        display: block;
        padding-left: 0;
    }
    div.formedicalstudent .medical_seminar ul li .title {
        font-size: 120%;
        padding: 0 0 15px 20px;
        white-space: normal;
    }
    #kougi .flex-container .flex-item {
        width: 100%;
        margin: 1em 2em;
    }
    div.formedicalstudent #c_box{
        padding: 40px 0;
    }
    div.formedicalstudent #c_box span {
        margin-top: 20px;
    }
    .advantage .flex-item span a,
    .map .flex-item span a,
    #ob span a{
        font-size: 90%;
        padding: 10px 60px;
    }
    .siryo .flex-container .flex-item{
        width: calc(100% - 6em);
    }
    div.facility .flex-container .flex-item{
        width: calc(100% - 1em);
        margin: 0.5em;
        position: relative;
    }
    div.facility .flex-container .flex-item img{
        height: 200px;
    }
    div.facility .flex-container .flex-item a span{
        font-size: 5vw;
    }
    .program .program_box .flex-container .flex-item,
    .program .program_box .flex-container .flex-item:first-child{
        width: 100%;
        margin: 30px 0 0 0;
    }
    div.newslist nav{
        display: block;
        width: 100%;
    }
    div.newslist div.lc_box{
        width: 100%;
    }
    .resident #rinen span {
        font-size: 140%;
    }
    .general .bookshelf .flex-container .flex-item{
        width: calc(33% - 15px);
        margin: 0 15px 15px 0;
    }
    .general .bookshelf .flex-container .flex-item .window{
        font-size: 80%;
    }
    .general .bookshelf .flex-container .flex-item .window img{
        width: 100px;
    }
    .general .bookshelf .flex-container .flex-item .window .window_content {
        width: calc(100% - 100px);
    }
    .general .bookshelf .flex-container .flex-item .window{
        left: 25px;
        padding: 20px;
    }
}
@media only screen and (max-width: 500px){
    #head1{
        position: relative;
    }
    h1 {
        font-size: 3vw;
        position: absolute;
    }
    div.newslist div.lc_box{
        padding: 0 1em 2em 1em;
    }
    div.clinicalclerkship div.il_box{
        max-width: 100%;
        padding-left: 3em;
    }
    div.staff dd{
        margin-left: 0;
        padding: 3em 0 1em 0;
    }
	#kougi h3 {
		padding: 0 1.5em;
	}
	#kougi h3:before,
	#kougi h3:after {
		width: 1em;
	}
    h2.sub_h2{
        font-size: 160%;
    }
    h2.sub_h2 span{
        padding: 10px 0 0 5px;
    }
    #mission span a,#journal span a,#about span a,#sougou span a {
        font-size: 80%;
	}
    div.clinicalclerkship div.sinryoui a{
        width: calc( 100% - 20px);
        margin: 10px;
    }
    .program .flex-container a{
        width: calc(100% - 2em);
        margin: 1em;
    }
    #ob {
        padding: 8em 0 10em 0;
    }
    #ob h3 {
        font-size: 150%;
    }
    .gyoseki h6,
    .gyoseki .full_box{
        padding: 0.5em;
    }
    .gyoseki .gyoseki_box table{
        margin: 0;
    }
}
