@charset "UTF-8";
/* 表示・非表示切替 --------------------------------------- */
/* PCのみ表示 */
@media only screen and (max-width: 640px) {
  .onlypc {
    display: none !important; } }

/* スマートフォンのみ表示 */
.onlysp {
  display: none !important; }
  @media only screen and (max-width: 640px) {
    .onlysp {
      display: inherit !important; } }

.sp-br {
  display: none; }
  @media only screen and (max-width: 640px) {
    .sp-br {
      display: block; } }

@media only screen and (max-width: 640px) {
  .pc-br {
    display: none; } }

body {
  min-width: 1040px; }
  @media only screen and (max-width: 640px) {
    body {
      min-width: initial; } }

table {
  border-collapse: collapse;
  border-top: 1px #dddddd solid;
  width: 100%;
  margin-bottom: 10px; }
  table th, table td {
    font-size: 15px;
    font-weight: normal;
    padding: 0.5em 1em;
    border-bottom: 1px #dddddd solid;
    border-right: 1px #dddddd solid; }
    table th:nth-last-of-type(1), table td:nth-last-of-type(1) {
      border-right: none; }
  table th {
    text-align: center;
    background-color: rgba(26, 17, 143, 0.2); }
  table td {
    text-align: left;
    background-color: rgba(255, 255, 255, 0.2); }

section {
  margin-bottom: 80px; }

p {
  font-size: 15px;
  line-height: 1.8;
  margin-bottom: 1.2em; }

.contents_wrapper {
  background: url(/oral/img/bg_header.jpg) no-repeat center top; }
  @media only screen and (max-width: 640px) {
    .contents_wrapper {
      background: url(/oral/img/bg_header.jpg) no-repeat right top;
      background-size: contain; } }
  .contents_wrapper .inner {
    width: 960px;
    margin: 0 auto; }
    @media only screen and (max-width: 640px) {
      .contents_wrapper .inner {
        width: 100%; } }
    .contents_wrapper .inner h1 {
      font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", serif;
      line-height: 126px;
      margin: 0;
      font-weight: normal;
      padding-left: 20px;
      color: #555; }
      @media only screen and (max-width: 640px) {
        .contents_wrapper .inner h1 {
          line-height: 63px; } }
      .contents_wrapper .inner h1 ~ hr {
        position: relative;
        height: 1px;
        width: 80%;
        border-width: 0;
        background-image: -moz-linear-gradient(left, #ccc, #ccc 50%, transparent 100%);
        background-image: -webkit-linear-gradient(left, #ccc, #ccc 50%, transparent 100%);
        background-image: linear-gradient(90deg, #ccc, #ccc 50%, transparent 100%);
        margin: 0 0 6px; }
        @media only screen and (max-width: 640px) {
          .contents_wrapper .inner h1 ~ hr {
            width: 65%; } }
    .contents_wrapper .inner .pankuzu ul {
      list-style: none;
      margin: 0 0 50px;
      padding: 0;
      display: flex; }
      @media only screen and (max-width: 640px) {
        .contents_wrapper .inner .pankuzu ul {
          margin: 0 0 25px; } }
      .contents_wrapper .inner .pankuzu ul li {
        height: 36px;
        margin: 0;
        padding: 0;
        font-size: 13px; }
        .contents_wrapper .inner .pankuzu ul li:before {
          content: "/"; }
        .contents_wrapper .inner .pankuzu ul li:first-child:before {
          content: none; }
        .contents_wrapper .inner .pankuzu ul li a {
          padding: 6px 10px;
          line-height: 36px;
          color: #777; }

.contents_inner {
  display: flex;
  justify-content: space-between;
  width: 960px;
  margin: 0 auto; }
  @media only screen and (max-width: 640px) {
    .contents_inner {
      width: 100%;
      flex-direction: column-reverse; } }
  .contents_inner .local_nav {
    width: 240px;
    margin-bottom: 120px; }
    @media only screen and (max-width: 640px) {
      .contents_inner .local_nav {
        width: 100%;
        margin-bottom: 60px; } }
    .contents_inner .local_nav ul {
      list-style: none;
      margin: 0 0 40px;
      padding: 0; }
      .contents_inner .local_nav ul li {
        border-bottom: 1px #004294 solid;
        min-height: 50px;
        margin: 0;
        padding: 0; }
        .contents_inner .local_nav ul li a {
          display: block;
          padding: 0 10px;
          line-height: 50px;
          color: #333; }
          .contents_inner .local_nav ul li a:hover {
            background-color: #ffffe9; }
          .contents_inner .local_nav ul li a.active {
            background-color: #ffffe9; }
    .contents_inner .local_nav .page-title {
      background-color: #004294;
      color: #fff;
      text-align: center;
      line-height: 56px;
      height: 56px; }
    .contents_inner .local_nav .side-banner {
      margin: 30px 0; }
      @media only screen and (max-width: 640px) {
        .contents_inner .local_nav .side-banner {
          margin: 30px 5%; } }
      .contents_inner .local_nav .side-banner a {
        display: block;
        border: 1px solid #004294;
        color: #004294;
        padding: 10px 10px 10px 26px;
        font-size: 15px;
        background: url(/oral/img/arrow.png) no-repeat 6px 13px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        /* &::before{
        	content:"\f054";
        	font-family: 'Font Awesome 5 Free';
        	font-weight: 900;
        	margin-right: 0.5em;
        	margin-left: 1.5em;
        	text-indent: -1.5em;
        } */ }
  .contents_inner .content {
    width: 650px;
    margin-bottom: 120px; }
    @media only screen and (max-width: 640px) {
      .contents_inner .content {
        width: auto;
        padding: 0 5%;
        margin-bottom: 60px; } }
    .contents_inner .content h2 {
      font-size: 21px;
      color: #777;
      border-bottom: 2px solid #004294;
      padding: 0 0 6px;
      margin-bottom: 30px;
      font-family: "UD Shin Go Medium", sans-serif;
      letter-spacing: 0.15em; }
      @media only screen and (max-width: 640px) {
        .contents_inner .content h2 {
          margin-bottom: 10px; } }
    .contents_inner .content h3 {
      font-size: 18px;
      font-family: "UD Shin Go Medium", sans-serif;
      padding: 0;
      margin: 40px 0 16px;
      color: #555; }
      @media only screen and (max-width: 640px) {
        .contents_inner .content h3 {
          margin: 10px 0 16px; } }
      .contents_inner .content h3:first-child {
        margin-top: 0; }
    .contents_inner .content a[href*="tel:"] {
      pointer-events: none; }
    @media only screen and (max-width: 640px) {
      .contents_inner .content a[href*="tel:"] {
        pointer-events: initial; } }
    .contents_inner .content #shokaijo {
      margin: 60px 0;
      background-color: #F0F4E8;
      padding: 32px;
      -moz-border-radius: 16px;
      -webkit-border-radius: 16px;
      border-radius: 16px;
      background-image: url(/oral/img/bg_file.png);
      background-position: 90% center;
      background-repeat: no-repeat; }
      @media only screen and (max-width: 640px) {
        .contents_inner .content #shokaijo {
          margin: 30px 0; } }
      .contents_inner .content #shokaijo h3 {
        font-size: 17px;
        margin-bottom: 16px;
        color: #387B53;
        font-family: "UD Shin Go Medium", sans-serif; }
      .contents_inner .content #shokaijo p:nth-last-of-type(1) {
        margin-bottom: 0; }

.tokucho h3 {
  border-bottom: 1px #004294 solid;
  margin-top: 60px; }
.tokucho h4 {
  border: 1px #004294 solid;
  width: 120px;
  padding: 10px 0;
  text-align: center;
  letter-spacing: 1em;
  text-indent: 1em;
  color: #004294;
  margin: 60px 0 40px;
  font-family: "UD Shin Go Medium", sans-serif; }
  @media only screen and (max-width: 640px) {
    .tokucho h4 {
      margin: 60px auto 40px; } }
.tokucho ul {
  padding: 0;
  margin: 0 0 0 36px;
  list-style: none; }
  @media only screen and (max-width: 640px) {
    .tokucho ul {
      margin: 0 2%; } }
  .tokucho ul li {
    font-weight: bold;
    margin-bottom: 1em;
    margin-left: 1.5em;
    text-indent: -1.5em;
    color: #333; }
    .tokucho ul li:before {
      content: "\f14a";
      font-family: 'Font Awesome 5 Free';
      font-weight: 900;
      margin-right: 0.5em;
      line-height: 1.35;
      font-size: 18px;
      color: #004294; }
.tokucho #spec1 {
  background: none; }
  @media only screen and (max-width: 640px) {
    .tokucho #spec1 {
      background-size: contain; } }
.tokucho #spec2 {
  background: none; }
  @media only screen and (max-width: 640px) {
    .tokucho #spec2 {
      background-size: contain; } }
.tokucho #spec3 {
  background: none; }
  @media only screen and (max-width: 640px) {
    .tokucho #spec3 {
      background-size: contain; } }

@media only screen and (max-width: 640px) {
  .nyuin img {
    width: 100%;
    height: auto; } }
.nyuin table {
  border: none; }
  .nyuin table th, .nyuin table td {
    border: none;
    background-color: transparent; }
  .nyuin table th {
    padding: 10px 0;
    vertical-align: middle;
    width: 110px; }
    @media only screen and (max-width: 640px) {
      .nyuin table th {
        vertical-align: top; } }
    .nyuin table th span {
      vertical-align: middle;
      display: table-cell;
      width: 110px;
      height: 110px;
      -moz-border-radius: 55px;
      -webkit-border-radius: 55px;
      border-radius: 55px;
      background-color: #A9C6B5;
      font-size: 17px;
      background-image: -moz-linear-gradient(120deg, #a1c4fd 0%, #c2e9fb 100%);
      background-image: -webkit-linear-gradient(120deg, #a1c4fd 0%, #c2e9fb 100%);
      background-image: linear-gradient(120deg, #a1c4fd 0%, #c2e9fb 100%); }
    .nyuin table th .fa-caret-down {
      color: #999;
      font-size: 36px; }
  .nyuin table td .box {
    display: inline-block;
    border: 1px #004294 solid;
    padding: 4px 16px;
    margin: 0.75em 1em 0.75em 0; }
    @media only screen and (max-width: 640px) {
      .nyuin table td .box {
        display: block;
        width: auto;
        margin: 0.75em 0 0.5em 0; } }
.nyuin .gendogaku {
  border: 1px #c96 solid;
  padding: 24px;
  margin: 40px 0; }
  .nyuin .gendogaku h3 {
    color: #c96; }
    .nyuin .gendogaku h3:after {
      content: "";
      border-bottom: 4px #c96 solid;
      width: 54px;
      display: block;
      padding-bottom: 12px; }
  .nyuin .gendogaku p {
    margin-bottom: 0; }

.content .jisseki {
  /* h2{
  	margin-bottom: 0;
  }*/ }
  .content .jisseki #jisseki {
    background: url(/oral/img/jisseki.jpg) no-repeat center bottom;
    padding-bottom: 260px; }
    @media only screen and (max-width: 640px) {
      .content .jisseki #jisseki {
        background-size: contain;
        padding-bottom: 120px; } }
  .content .jisseki table {
    margin-bottom: 60px; }
    .content .jisseki table tbody td {
      text-align: right; }
      .content .jisseki table tbody td:first-child {
        text-align: left;
        width: 34%; }

.flow {
  text-align: center; }
  .flow img {
    margin: 0.3em auto; }
    @media only screen and (max-width: 640px) {
      .flow img {
        margin-top: 1.5em;
        width: 100%; } }

/*# sourceMappingURL=oral.css.map */
