@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Oswald:400,600,700");
@import url("https://fonts.googleapis.com/css?family=Roboto");
@import url("//fonts.googleapis.com/earlyaccess/notosansjp.css");
@import url("//fonts.googleapis.com/earlyaccess/roundedmplus1c.css");
@import url("https://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,700");
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent; }

i {
  font-style: normal; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

dl, dt, dd,
ul {
  list-style: none; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

img {
  vertical-align: bottom; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  margin: 0;
  padding: 0;
  vertical-align: middle; }

address {
  font-style: normal; }

html {
  font-size: 62.5%;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%; }

/* clearfix
-------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

.clearfix {
  min-height: 1px; }

* html .clearfix {
  height: 1px;
  /*\*/
     /*/
height: auto;
overflow: hidden;
/**/ }

/* --------------------------------
Patterns - reusable parts of our design
-------------------------------- */
.overflow-hidden {
  overflow: hidden; }

/* ----------------------------------------------
Basic-Design
---------------------------------------------- */
*, *:before, *:after {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box; }

html,
body {
  width: 100%;
  background: #FFFFFF; }

html {
  position: relative;
  font-size: 62.5%;
  text-size-adjust: 100%;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased; }

/* html, body
--------------------------------------------------*/
body {
  color: #231815;
  background: #FFFFFF;
  font-size: 1.6em;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.8; }
  @media only screen and (max-width: 767px) {
    body {
      font-size: 1.6em; } }

@media only screen and (max-width: 1169px) {
  body.nav-on-left.overflow-hidden {
    overflow: hidden; } }
a {
  color: #190b03;
  text-decoration: none;
  transition: all .35s;
  -webkit-transition: all .35s;
  -moz-transition: all .35s; }

a:hover,
a:focus {
  color: #e83828;
  outline: 0; }

img {
  max-width: 100%;
  height: auto; }

@media screen and (min-width: 798px) {
  .pc_none {
    display: none; }

  .pc_block {
    display: block; } }
@media only screen and (max-width: 767px) {
  .sp_none {
    display: none !important; }

  .sp_block {
    display: block; } }
/* ----------------------------------------------
layout
---------------------------------------------- */
#wrapper {
  width: 100%; }

.object-fit-img {
  object-fit: cover;
  object-position: bottom;
  font-family: "object-fit: cover; object-position: bottom;"; }

/* ----------------------------------------------
 layout
---------------------------------------------- */
.both {
  clear: both; }

.fl_l {
  float: left; }

.fl_r {
  float: right; }

/* ----------------------------------------------
 margin・padding
---------------------------------------------- */
/* margin
------------------------------- */
.mt00 {
  margin-top: 0 !important; }

.mt10 {
  margin-top: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mb00 {
  margin-bottom: 0 !important; }

.mb10 {
  margin-bottom: 10px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.ml00 {
  margin-left: 0 !important; }

.ml10 {
  margin-left: 10px !important; }

.mr00 {
  margin-right: 0 !important; }

.mb_m {
  margin-bottom: 20px !important; }

.mb_l {
  margin-bottom: 40px !important; }

@media screen and (max-width: 767px) {
  .mb_m {
    margin-bottom: 15px !important; }

  .mb_l {
    margin-bottom: 20px !important; } }
/* padding
------------------------------- */
.pt00 {
  padding-top: 0 !important; }

.pt10 {
  padding-top: 10px !important; }

.pb00 {
  padding-bottom: 0 !important; }

.pb05 {
  padding-bottom: 5px !important; }

.pb10 {
  padding-bottom: 10px !important; }

.ps00 {
  padding-left: 0 !important;
  padding-right: 0 !important; }

/* ----------------------------------------------
 block
---------------------------------------------- */
.block03 {
  display: inline-block;
  width: 3em; }

.block05 {
  display: inline-block;
  width: 5em; }

.block10 {
  display: inline-block;
  width: 10em; }

.block12 {
  display: inline-block;
  width: 12em; }

.block15 {
  display: inline-block;
  width: 15em; }

/* ----------------------------------------------
 text
---------------------------------------------- */
.upp {
  text-transform: uppercase; }

.underline {
  text-decoration: underline; }

/* font-weight
------------------------------- */
.fw_bold {
  font-weight: bold; }

.fw_normal {
  font-weight: normal; }

.fw_big {
  font-weight: bold;
  font-size: 115%; }

/* color
------------------------------- */
.orange {
  color: #E95F00; }

.red {
  color: #E60012; }

.black {
  color: #333; }

.gray {
  color: #888; }

.blue {
  color: #06C; }

.orange {
  color: #E95F00; }

.pink {
  color: #D23C69; }

/* text-align
------------------------------- */
.ta_left {
  text-align: left !important; }

.ta_right {
  text-align: right !important; }

.ta_center {
  text-align: center !important; }

/* font-size
------------------------------- */
.fs_s {
  font-size: 85%; }

.fs_l {
  font-size: 105%; }

.fs_110 {
  font-size: 110%; }

.fs_150 {
  font-size: 150%; }

.fs_s {
  font-size: 85%; }

.fs_10 {
  font-size: 72%; }

.fs_12 {
  font-size: 12px; }

.fs_14 {
  font-size: 14px; }

.fs_16 {
  font-size: 107%; }

.fs_18 {
  font-size: 120%; }

.fs_20 {
  font-size: 134%; }

.p_chu {
  overflow: hidden;
  padding-left: 1em;
  text-indent: -1em; }

.s_chu {
  display: block;
  overflow: hidden;
  padding-left: 1em;
  text-indent: -1em; }

.d_n_pc {
  display: none; }
  @media only screen and (max-width: 767px) {
    .d_n_pc {
      display: block; } }

.d_n_sp {
  display: none; }
  @media only screen and (min-width: 767px) {
    .d_n_sp {
      display: block; } }

/* display
------------------------------- */
.d_b {
  display: block; }

.d_i_b {
  display: inline-block; }

#container .pageTtl_large {
  background: url("/common/img/company/ttlimg.jpg") 0 0 no-repeat;
  background-size: cover;
  height: 300px;
  display: flex;
  align-items: center; }
  @media only screen and (max-width: 992px) {
    #container .pageTtl_large {
      height: 15vh;
      background-position: 0 50%;
      padding: 0 20px; } }
  #container .pageTtl_large h2 {
    width: 1000px;
    margin: 0 auto;
    color: #FFFFFF;
    font-size: 24px;
    letter-spacing: 0.05em;
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 1180px) {
      #container .pageTtl_large h2 {
        width: 100%;
        padding-left: 40px; } }
    @media only screen and (max-width: 767px) {
      #container .pageTtl_large h2 {
        font-size: 18px;
        flex-direction: column;
        align-items: flex-start;
        padding-left: 0; } }
    #container .pageTtl_large h2 span {
      font-size: 36px;
      padding-right: 0.5em;
      letter-spacing: 0.05em;
      font-family: 'Open Sans Condensed', sans-serif;
      font-weight: 700;
      line-height: 1.0; }
      @media only screen and (max-width: 767px) {
        #container .pageTtl_large h2 span {
          font-size: 30px; } }
#container .pageTtl {
  background: url("/common/img/medicine/ttl.jpg") 0 35% no-repeat;
  background-size: cover;
  height: 180px;
  display: flex;
  align-items: center;
  justify-content: space-between; }
  @media only screen and (max-width: 992px) {
    #container .pageTtl {
      flex-wrap: wrap;
      height: 140px; } }
  #container .pageTtl h2 {
    margin: 0;
    padding: 0 0 0 40px;
    color: #1e2e53;
    font-size: 28px;
    letter-spacing: 0.05em; }
    @media only screen and (max-width: 1180px) {
      #container .pageTtl h2 {
        font-size: 24px;
        padding: 0 0 0 20px; } }
    #container .pageTtl h2 span {
      font-size: 32px;
      padding-right: 1em;
      letter-spacing: 0.05em;
      font-family: 'Open Sans Condensed', sans-serif;
      font-weight: 700;
      line-height: 1.2; }
      @media only screen and (max-width: 992px) {
        #container .pageTtl h2 span {
          font-size: 28px; } }
      @media only screen and (max-width: 767px) {
        #container .pageTtl h2 span {
          display: block; } }
  #container .pageTtl ul.pageLink {
    display: flex;
    justify-content: flex-start;
    padding: 0 40px 0 0; }
    @media only screen and (max-width: 1180px) {
      #container .pageTtl ul.pageLink {
        padding: 0 20px 0 0; } }
    @media only screen and (max-width: 992px) {
      #container .pageTtl ul.pageLink {
        display: none; } }
    #container .pageTtl ul.pageLink li {
      border-left: 1px solid #1e2e53; }
      #container .pageTtl ul.pageLink li:first-of-type {
        border-left: none; }
      #container .pageTtl ul.pageLink li a {
        color: #1e2e53;
        display: block;
        padding: 0 1em; }
#container ul.pageLink_tl {
  display: flex;
  justify-content: flex-start;
  padding: 0 0; }
  @media only screen and (min-width: 992px) {
    #container ul.pageLink_tl {
      display: none; } }
  @media only screen and (max-width: 992px) {
    #container ul.pageLink_tl {
      display: flex;
      flex-wrap: wrap; } }
  @media only screen and (max-width: 767px) {
    #container ul.pageLink_tl {
      flex-wrap: wrap; } }
  #container ul.pageLink_tl li {
    padding: 1px;
    width: 33.3%; }
    @media only screen and (max-width: 767px) {
      #container ul.pageLink_tl li {
        width: 50%; } }
    @media only screen and (max-width: 414px) {
      #container ul.pageLink_tl li {
        width: 100%; } }
    #container ul.pageLink_tl li a {
      color: #FFFFFF;
      display: block;
      width: auto;
      padding: 0.8em 1em;
      text-align: center;
      background: #1e2e53; }
      @media only screen and (max-width: 767px) {
        #container ul.pageLink_tl li a {
          padding: 0.6em 1em; } }
#container #contents {
  padding: 60px 0; }
  @media only screen and (max-width: 992px) {
    #container #contents {
      padding: 30px 0; } }
  #container #contents .scrollBox {
    margin: 30px auto 30px; }
    @media only screen and (max-width: 767px) {
      #container #contents .scrollBox {
        overflow-x: scroll;
        width: 100%; }
        #container #contents .scrollBox::-webkit-scrollbar {
          height: 10px; }
        #container #contents .scrollBox::-webkit-scrollbar-track {
          background: #EFEFEF;
          border-bottom: solid 1px #ececec; }
        #container #contents .scrollBox::-webkit-scrollbar-thumb {
          background: #01182e;
          box-shadow: inset 0 0 0 2px #FFFFFF; } }
    @media only screen and (max-width: 767px) {
      #container #contents .scrollBox > * {
        width: max-content; } }
  #container #contents > section {
    width: 1000px;
    margin: 0 auto; }
    @media only screen and (max-width: 1180px) {
      #container #contents > section {
        width: 100%;
        padding: 0 20px; } }
    #container #contents > section h3.page_sttl {
      color: #1e2e53;
      background: #EFEFEF;
      font-size: 26px;
      padding: 0.3em 20px 0.3em 20px;
      line-height: 1.4;
      margin-bottom: 40px; }
      #container #contents > section h3.page_sttl span {
        font-size: 20px; }
        @media only screen and (max-width: 767px) {
          #container #contents > section h3.page_sttl span {
            font-size: 18px; } }
        @media only screen and (max-width: 414px) {
          #container #contents > section h3.page_sttl span {
            font-size: 16px; } }
      @media only screen and (max-width: 767px) {
        #container #contents > section h3.page_sttl {
          font-size: 24px; } }
      @media only screen and (max-width: 414px) {
        #container #contents > section h3.page_sttl {
          font-size: 22px; } }

#medicine .pageTtl {
  background: url("/common/img/medicine/ttl.jpg") 0 70% no-repeat;
  background-size: cover; }

#dentistry .pageTtl {
  background: url("/common/img/dentistry/ttl.jpg") 0 50% no-repeat;
  background-size: cover; }

#welfare .pageTtl {
  background: url("/common/img/welfare/ttl.jpg") 0 55% no-repeat;
  background-size: cover; }

#corporation .pageTtl {
  background: url("/common/img/corporation/ttl.jpg") 0 50% no-repeat;
  background-size: cover; }

#individual .pageTtl {
  background: url("/common/img/individual/ttl.jpg") 0 55% no-repeat;
  background-size: cover; }

#plus1 .pageTtl {
  background: url("/common/img/plus1/ttl.jpg") 0 76% no-repeat;
  background-size: cover; }

#business {
  background: #efefef; }
  #business #container #contents {
    padding-bottom: 0px; }
    #business #container #contents > section {
      width: 1000px;
      margin: 0 auto 80px; }
      @media only screen and (max-width: 1180px) {
        #business #container #contents > section {
          width: 100%;
          padding: 0 20px;
          margin: 0 auto 60px; } }
      @media only screen and (max-width: 992px) {
        #business #container #contents > section {
          margin: 0 auto 40px; } }
      #business #container #contents > section.content01 .inner__content {
        width: 1000px;
        margin: 0 auto;
        padding: 5em 0; }
        @media only screen and (max-width: 1180px) {
          #business #container #contents > section.content01 .inner__content {
            width: 100%; } }
        @media only screen and (max-width: 992px) {
          #business #container #contents > section.content01 .inner__content {
            padding: 3em 0; } }
        @media only screen and (max-width: 767px) {
          #business #container #contents > section.content01 .inner__content {
            padding: 2em 0; } }
        #business #container #contents > section.content01 .inner__content ul {
          display: flex;
          justify-content: center; }
          @media only screen and (max-width: 992px) {
            #business #container #contents > section.content01 .inner__content ul {
              width: 100%;
              padding: 0 20px;
              justify-content: space-between;
              flex-wrap: wrap; } }
          #business #container #contents > section.content01 .inner__content ul li {
            background: #1e2e53;
            width: 240px;
            margin: 0 30px; }
            @media only screen and (max-width: 992px) {
              #business #container #contents > section.content01 .inner__content ul li {
                width: 30%;
                margin: 0 auto; } }
            @media only screen and (max-width: 767px) {
              #business #container #contents > section.content01 .inner__content ul li {
                width: 90%;
                margin: 0 auto 20px; } }
            @media only screen and (max-width: 414px) {
              #business #container #contents > section.content01 .inner__content ul li {
                width: 100%; } }
            #business #container #contents > section.content01 .inner__content ul li dl {
              padding: 40px; }
              @media only screen and (max-width: 992px) {
                #business #container #contents > section.content01 .inner__content ul li dl {
                  padding: 20px; } }
              #business #container #contents > section.content01 .inner__content ul li dl dt {
                color: #FFFFFF;
                text-align: center;
                font-weight: bold;
                padding-bottom: 20px;
                margin-bottom: 20px;
                height: 100px;
                display: flex;
                justify-content: center;
                align-items: center;
                vertical-align: middle;
                border-bottom: 1px solid #FFF; }
                @media only screen and (max-width: 767px) {
                  #business #container #contents > section.content01 .inner__content ul li dl dt br {
                    display: none; } }
                #business #container #contents > section.content01 .inner__content ul li dl dt span {
                  display: inline;
                  text-align: center;
                  width: 100%;
                  letter-spacing: 0.1em;
                  font-size: 18px; }
              #business #container #contents > section.content01 .inner__content ul li dl dd {
                text-align: center;
                font-weight: bold; }
                #business #container #contents > section.content01 .inner__content ul li dl dd a {
                  color: #1e2e53;
                  background: #FFFFFF;
                  display: block;
                  font-size: 14px;
                  padding: 0.5em 0.5em;
                  line-height: 1.0; }
                  @media only screen and (max-width: 992px) {
                    #business #container #contents > section.content01 .inner__content ul li dl dd a {
                      padding: 1em 0.5em; } }
                  #business #container #contents > section.content01 .inner__content ul li dl dd a:hover {
                    color: #e83828; }
            #business #container #contents > section.content01 .inner__content ul li:first-of-type dl dd {
              display: flex;
              justify-content: space-between; }
              @media only screen and (max-width: 992px) {
                #business #container #contents > section.content01 .inner__content ul li:first-of-type dl dd {
                  flex-direction: column; }
                  #business #container #contents > section.content01 .inner__content ul li:first-of-type dl dd a {
                    margin-bottom: 0.5em; } }
