@charset "UTF-8";
/* MOBILE CSS */



@media only screen and (max-width: 960px){
body {
    min-width: 960px;
}

/*-----------------------------------------------
 __#HEADER
-----------------------------------------------*/
#HEADER .HeadBody{
    width: auto;
    margin-left: 3vw;
    margin-right: 3vw;
}
#HEADER .NavGlobal > ul{
    width: auto;
    margin-left: 3vw;
    margin-right: 3vw;
}
#HEADER .NavGlovalAbout{
    width: 960px;
}
#HEADER .NavGlovalAbout li{
    width: 20%;
    min-width: 20%;
}
#HEADER .sub-menu{
    width: auto;
}
#HEADER .NavGlobal ul#menu-global{
    width: auto;
}
#HEADER .NavGlobal .sub-menu li{
    width: 160px;
    min-width:160px;
}
/*-----------------------------------------------
 __footer
-----------------------------------------------*/
footer .FootBody{
    width: auto;
    margin-left: 3vw;
    margin-right: 3vw;
}

/*-----------------------------------------------
 __article
-----------------------------------------------*/
article .MainVisual{
    width: 100%;
}
article .MainVisual h1{
    width: auto;
    margin-left: 3vw;
    margin-right: 3vw;
}
article .MainVisual .En{
    width: auto;
    margin-left: 3vw;
    margin-right: 3vw;
}
article .Container{
    width: auto;
    margin-left: 3vw;
    margin-right: 3vw;
}
/*-----------------------------------------------
 __home
-----------------------------------------------*/
.home article .BnBox .BnMed{
    width: 200px;
    height: 94px;
}
.home article .BnBox .BnSup{
    width: 200px;
    height: 67px;
}
/*-----------------------------------------------
 __greet
-----------------------------------------------*/
.greet article .MainVisual{
background-position: calc((100% - 1000px)/2 + 1000px - 200px) 100%, 50% 100%;
}
/*-----------------------------------------------
 __ys_group
-----------------------------------------------*/
.tax-ys_group_category .Corp .CorpOutline,
.post-type-archive-ys_group .Corp .CorpOutline {
    min-width:300px;
}
/*-----------------------------------------------
 __Contact
-----------------------------------------------*/
.contact article form {
    padding-left: 10vw;
    padding-right:5vw;
}
}

@media only screen and (max-width: 767px){
body {
    min-width: inherit;
}


/*-----------------------------------------------
 __Hamburger Menu
-----------------------------------------------*/
#HEADER #nav-drawer #nav-open{
	display: block;
}
#nav-drawer {
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
	display:block;
	width: 20vw;
	height: 20vw;
	font-size:12px;
	color:#FFF;
	text-align:center;
	padding-top:2vw;
	vertical-align: middle;
	background-color:#005580;
	position: fixed;
	top:0;
	right:0vw;
	z-index:9999;
}
/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span {
  display: block;
  position: absolute;
	top:10vw;
	left:3.5vw;
  height: 1px;/*線の太さ*/
  width: 12vw;/*長さ*/
  border-radius: 3px;
  background:#FFF;
  content: '';
  cursor: pointer;
}
#nav-open span:nth-of-type(2) {
	top:13vw;
	left:3.5vw;
}
/*アイコン回転*/
#nav-open span {
	transition: all .4s;
}
#nav-open.Active span:nth-of-type(1){
	transform: translateY(2vw) rotate(-405deg);
}
#nav-open.Active span:nth-of-type(2){
  transform: translateY(-1vw) rotate(405deg);
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 9999;
  top: 0;/*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;/*最前面に*/
  width: 80vw;/*右側に隙間を作る（閉じるカバーを表示）*/
  max-width:80vw;/*最大幅（調整してください）*/
  height: 100%;
  	background-color:rgba(0,85,128,0.95);/*背景色*/
  transition: .3s ease-in-out;/*滑らかに表示*/
  transform: translateX(-105%);/*左に隠しておく*/
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;/*カバーを表示*/
  opacity: .5;
}

#nav-input:checked ~ #nav-content {
 	transform: translateX(0%);/*中身を表示（右へスライド）*/
 	box-shadow: 6px 0 25px rgba(0,0,0,.15);
 }

/*-----------------------------------------------
 __#HEADER
-----------------------------------------------*/
#HEADER {
    height: 20vw;
 }
.confirm #HEADER {
    height: 20vw;
 }
#HEADER .HeadBody{
    width: auto;
    padding-top: 3vw;
}
#HEADER .TitleMain{
    width: 50vw;
    height: 13vw;
    margin-left: 15vw;
    margin-bottom: 4vw;
}
#HEADER .InqBox{
    display: none;
}
#HEADER .NavGlobal ul#menu-global {
    display: block;
    width: auto;
    border-radius: 0;
    background-color: inherit;
}
#HEADER .NavGlobal ul#menu-global > li{
    width: auto;
    line-height: inherit;
    text-align: left;
    border-bottom:1px solid rgba(255,255,255,0.5);
}
#HEADER .NavGlobal ul#menu-global > li > a{
    color: #FFF;
    padding: 0.5em 1em;
    border-bottom: 0 !important;
}
#HEADER .NavGlobal ul#menu-global > #menu-item-154 > a{
    color: #FFF !important;
}
#HEADER .NavGlobal ul li.ForMed a {
        color: #FFF;
    }
.confirm #HEADER .NavGlobal ul#menu-global > li#menu-item-154 > a {
    border-bottom: 0px !important;
}
#HEADER .NavGlobal ul#menu-global > li#menu-item-154 > a:hover {
    border-bottom: 0px !important;
}
#HEADER .NavGlobal .sub-menu{
    display: block !important;
    width: auto;
    height: auto;
    position:inherit;
    background-color: inherit;
}
#HEADER .NavGlobal .sub-menu li{
    display: block !important;
    width: auto;
    min-width: inherit;
    line-height: 1.5;
    text-align: left;
}
#HEADER .NavGlobal .sub-menu li a{
    font-weight: normal;
    border-bottom: 0;
    padding: 0.3em 1em 0.3em 2em;
    border-bottom: 0 !important;
}
/*-----------------------------------------------
 __footer
-----------------------------------------------*/
footer .FootBody{
    width: auto;
}
footer .Sitemap{
    display: none;
}
footer .InqBox{
    display: block;
}
footer .InqBox li{
    width: 60vw;
    height: 13.56vw;
    margin: 0 auto 3vw;
}
footer .Privacy{
    display: block;
}
footer .Privacy li:first-child{
    display: none;
}
footer .Privacy li{
    text-align: center;
    margin: 0 auto;
}
footer .Privacy li.Group{
    display: block;
}
footer .Copyright{
    display: block;
}
footer .Copyright figure{
    display: block;
    width: 40vw;
    height: 6.4vw;
    margin: 0 auto 3vw;
}
footer .Copyright figure img{
    display: inline-block;
    width: 40vw;
    height: 6.4vw;
}
footer .Copyright .Copy{
    font-size: 1rem;
    text-align: center;
}
footer .PageTop{
    right: 3vw;
}
/*-----------------------------------------------
 __article
-----------------------------------------------*/
article{
    padding-top: 0;
}
article .MainVisual{
    width: 100vw;
    height: 30vw;
    padding-left: 3vw;
    padding-right: 3vw;
}
article .MainVisual h1{
    width: auto;
    font-size: 2rem;
}
article .MainVisual .En{
    font-size: 1.6rem;
    margin-left: 3vw;
    margin-right: 0;
}
article .Container{
    width: auto;
}
article h2{
    font-size: 2rem;
}
article h3{
    font-size: 1.8rem;
}
article h4{
    font-size: 1.6rem;
}
article h5{
	font-size:1.4rem;
}
article p{
    font-size: 1.4rem
}
article ul{
    font-size: 1.4rem
}
article ol{
    font-size: 1.4rem
}
article li ul,
article li ol,
article li dl{
    font-size: 1.4rem
}
article dl{
    font-size: 1.4rem
}
article figure{
    font-size: 1.4rem
}
article sup{
	font-size:0.75%;
	vertical-align:top;
}
article sub{
	font-size:0.75%;
	vertical-align:bottom;
}


/*-----------------------------------------------
 __home
-----------------------------------------------*/
.home #HEADER{
    height: 70vw;
    background: url("refer/bg_title_index.jpg") no-repeat 50% 100%;
    background-size: cover;
}
.home #HEADER h2{
    width: 90vw;
    height: 10vw;
    margin-top: 20vw;
    background-image: url("refer/title_theme_sp.png");
}
.home #HEADER .NavGlovalAbout{
    display: block;
}
.home #HEADER .NavGlobal ul li.Home > a{
    border-bottom: 0;
}
.home article{
    padding-top: 30px;
}
.home article .Container{
    display:block;
}
.home article .AboutBox{
    display:block;
}
.home article .AboutBox .About{
    width: 100%;
    margin-bottom: 10vw;
}
.home article .NavAbout li{
    width: 49%;
}
.home article .NavAbout li:nth-child(even){
    margin-right: 0;
}
.home article .AboutBox .Business{
    width: 100%;
    margin-bottom: 10vw;
}
.home article .WhatsNew{
    margin: 0 0 10vw;
}
.home article .WhatsNew h2{
    font-size: 2.6rem;
}
.home article .WhatsNew li{
    padding-left: 0;
}
.home article .WhatsNew li .Date{
    display: block;
    font-size: 1.2rem;
    position: inherit;

}
.home article .BnBox{
    margin-bottom: 10vw;
}
.home article .BnBox .BnMed{
    width: 80vw;
    height: 37.4vw;
    margin: 0 auto 5vw;
}
.home article .BnBox .BnSup{
    width: 80vw;
    height: 26.6vw;
    margin: 0 auto 5vw;
}
/*-----------------------------------------------
 __greetings
-----------------------------------------------*/
.greetings article .MainVisual{
    background-position: 90% 100%, 50% 100%;
    background-size: 23vw, cover;
}
.greetings article .Container{
    display: block;
}
.greetings article .Container .MainBox{
    width: auto;
    padding: 0;
}
.greetings article .Container .BnBox{
    width: auto;
}
.greetings article .Container .MainBox .President{
    font-size: 1.6rem;
}
/*-----------------------------------------------
 __goup
-----------------------------------------------*/
.tax-ys_group_category article .MainVisual .En,
.post-type-archive-ys_group article .MainVisual .En{
    padding-right: 0;
}

.tax-ys_group_category article .Corp,
.post-type-archive-ys_group article .Corp{
    display: block;
}
.tax-ys_group_category article .Corp .CorpInfo,
.post-type-archive-ys_group article .Corp .CorpInfo{
    width: auto;
    padding: 0;
    margin: 0 auto 1em;
    border: 0;
}
.tax-ys_group_category article .Corp .CorpInfo h3,
.post-type-archive-ys_group article .Corp .CorpInfo h3{
    margin-top: 1em;
    font-size: 1.8rem;
}
.tax-ys_group_category article .Corp .CorpOutline,
.post-type-archive-ys_group article .Corp .CorpOutline{
    width: auto;
    min-width: inherit;
    max-width: inherit;
    padding-right: 0;
}
.tax-ys_group_category article .Corp .CorpImg,
.post-type-archive-ys_group article .Corp .CorpImg{
    width: auto;
}
/*-----------------------------------------------
 __our-business
-----------------------------------------------*/
.our-business article .MainVisual .Title{
    padding-right: 0;
}
.our-business article .MainVisual .En{
    padding-right: 0;
}
.our-business article .Container .Section{
    display: block;
}
.our-business article .Container .Section .MainBox{
    width: auto;
    padding-top: 0;
    padding-right: 0;
}
.our-business article .Container .Section .BnBox{
    width: auto;
}
.our-business article .Container .Section .BnBox figure{
    margin-bottom: 10vw;
}
.our-business article .Container .Section .BnBox figure img{
    width: 90vw;
    height: auto;
}
.our-business article .Container .FigBox figure img {
    margin-right: auto;
}

/*-----------------------------------------------
 __company-overview
-----------------------------------------------*/
.company-overview .Overview dt {
    float:none;
    font-size: 1.6rem;
    font-weight: bold;
}
.company-overview .Overview dd {
    padding-left: 0;
}
.company-overview .History dt{
    float: none;
}
.company-overview .History dd{
    padding-left: 0;
}

/*-----------------------------------------------
 __access
-----------------------------------------------*/
.access .Map{
    display: block;
}
.access iframe{
    width: 94vw;
    height: 94vw;
}
.access .Map dl{
    width: auto;
}
.access .Flex{
    display: block;
}
.access .Flex .Ex{
    width: auto;
}
.access .Flex .Photo{
    width: auto;
}
.access .Flex .Photo img{
    width: 94vw;
    height: auto;
}
/*-----------------------------------------------
 __recruit
-----------------------------------------------*/
.recruit .MainVisual .Title{
    text-align: left;
}
.recruit .MainVisual .Title h1 {
    padding-right:0;
}
.recruit .MainVisual .Title .En {
    padding-right: 0;
}
/*-----------------------------------------------
 __privacy-policy
-----------------------------------------------*/
.privacy-policy .MainVisual{
    height: 30vw;
}
/*-----------------------------------------------
 __archive / single-post
-----------------------------------------------*/
.archive article,
.single-post article{
    padding-top:5vw;
    padding-bottom:5vw;
}
.archive article h1,
.single-post article h1{
    font-size: 2rem;
    margin-left: 0;
    margin-right: 0;
}
.archive article .Container,
.single-post article .Container{
    display: block;
}
.archive article .Container .MainBox,
.single-post article .Container .MainBox{
    width: auto;
}
.archive article .Container .Year,
.single-post article .Container .Year{
    width: auto;
    margin-top: 60px;
}
.archive article .Container .Pager,
.single-post article .Container .Pager{
    margin-top: 60px;
    margin-bottom: 60px;
}
.archive article .Container .wp-pagenavi{
    margin-bottom: 60px;
}
.archive article .NewsList li{
    padding-left: 0;
}
.archive article .NewsList li .Date{
    position: inherit;
    display: block;
}

/*-----------------------------------------------
 __contact
-----------------------------------------------*/
.contact article .MainVisual {
    height: 30vw;
}
.contact article form{
    padding-left: 17vw;
}
.contact article form label input {
    width: 70vw;
}
.contact article form label .wpcf7-textarea {
    width: 70vw;
}
.contact .BtBox{
    margin-left: -17vw;
}
.contact .BtBox .BtSubmit, 
.contact .BtBox .BtCancel {
    width: 40vw;
    margin-right: 3vw;
    margin-left: 3vw;
}
.contact .BtBox .BtSubmit input, 
.contact .BtBox .BtCancel a {
    font-size: small;
}
/*-----------------------------------------------
 __confirm（医療関係者ですか？）
-----------------------------------------------*/
.confirm article{
    background-position: 0 0;
}
.confirm .Container{
    padding: 5vw;
}
.confirm .Container .Logo{
    width: 60vw;
    height: 12vw;
    margin-bottom: 3vw;
}
.confirm .Container .Logo + p{
    font-size: 1.6rem;
}
.confirm .Container h1{
    font-size: 1.8rem;
    font-weight: 500;
    margin-top: 10vw;
    margin-bottom: 5vw;
}
.confirm .Container .BtSelect li{
    width: 30vw;
}


}