@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

/*!
* ress.css • v1.0.1
* MIT License
* github.com/filipelinhares/ress
*/
/* # =================================================================
# Global selectors
# ================================================================= */
/**
* 1. All browsers without overlaying scrollbars
* 2. iOS 8+

* 1. すべてのブラウザで、スクロールバーのオーバーレイを無し。
* 2. iOS 8+
*/
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow-y: scroll;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

*,
::before,
::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit; }

/**
* 1. Inherit text-decoration and vertical align to ::before and ::after pseudo elements

* 1. 「::before」と「::after」に、「text-decoration」と「vertical-align」を継承。
*/
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit; }

/**
* 1. Set `background-repeat: no-repeat` to all elements
* 2. Reset `padding` and `margin` of all elements

* 1. すべての要素に、「background-repeat: no-repeat;」を指定。
* 2. すべての要素に、「padding」と「margin」をリセット。
*/
* {
  background-repeat: no-repeat;
  /* 1 */
  padding: 0;
  /* 2 */
  margin: 0; }

/* # =================================================================
# General elements
# ================================================================= */
/**
* Add the correct display in iOS 4-7.

* iOS 4-7に、正しいdisplayを設定。
*/
audio:not([controls]) {
  display: none;
  height: 0; }

/**
* 1. Show the overflow in Edge and IE

* 1. EdgeとIEに、「overflow: visible;」を定義。
*/
hr {
  overflow: visible;
  /* 1 */ }

/**
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11

* IE8/9に、displayプロパティを定義。
* IE10/11とFirefoxのdetail要素とsummary要素に、displayプロパティを定義。
* IE11のmain要素に、displayプロパティを定義。
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
* 1. Set font-size to 80% in `small` elements

* 1. small要素に、フォントサイズ「80%」を定義。
*/
small {
  font-size: 80%;
  /* 1 */ }

/**
* 1. Add the correct display in IE

* 1. IEに、displayプロパティを定義。
*/
[hidden],
template {
  display: none;
  /* 1 */ }

/**
* 1. Add a bordered underline effect in all browsers
* 2. Remove text decoration in Firefox 40+

* 1. すべてのブラウザに、点線を定義。
* 2. Firefox40+に、テキストの装飾を削除。
*/
abbr[title] {
  border-bottom: 1px dotted;
  /* 1 */
  text-decoration: none;
  /* 2 */ }

/**
* 1. Remove the gray background on active links in IE 10
* 2. Remove gaps in links underline in iOS 8+ and Safari 8+

* 1. IE10に、アクティブリンクのグレーの背景を削除。
* 2. iOS8+とSafari8+に、リンクの下線のギャップを削除。
*/
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
* 1. Remove the outline when hovering in all browsers

* 1. すべてのブラウザに、ホバー時のアウトラインを削除。
*/
a:active,
a:hover {
  outline-width: 0;
  /* 1 */ }

/**
* 1. Specify the font family of code elements

* 1. コード要素に、フォントファミリーを指定。
*/
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */ }

/**
* 1. Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+

* 1. Edge12+, Safari6.2+, Chrome18+に、「bold」を適用。
*/
b,
strong {
  font-weight: bolder;
  /* 1 */ }

/**
* 1. Address styling not present in Safari and Chrome

* 1. SafariとChromeに、定義。
*/
dfn {
  font-style: italic;
  /* 1 */ }

/**
* Address styling not present in IE 8/9

* 1. IE8/9に、定義。
*/
mark {
  background-color: #ff0;
  color: #000; }

/**
* https://gist.github.com/unruthless/413930
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* # =================================================================
# Forms
# ================================================================= */
input {
  border-radius: 0; }

/**
* 1. Firefox 36+

* 1. Firefox 36+
*/
[type="number"] {
  width: auto;
  /* 1 */ }

/**
* 1. Safari 8+

* 1. Safari 8+
*/
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */ }

/**
* 1. Safari 8

* 1. Safari 8
*/
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  /* 1 */ }

/**
* 1. Internet Explorer 11+
* 2. Specify textarea resizability

* 1. Internet Explorer 11+
* 2. textarea要素に、垂直方向のリサイズを指定。
*/
textarea {
  overflow: auto;
  /* 1 */
  resize: vertical;
  /* 2 */ }

/**
* 1. Specify font inheritance of form elements

* 1. フォーム要素に、フォントの継承を指定。
*/
button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* 1 */ }

/**
* 1. Restore the font weight unset by the previous rule.

* 1. 前の指定により、フォントのウェイトを再定義。
*/
optgroup {
  font-weight: bold;
  /* 1 */ }

/**
* 1. Address `overflow` set to `hidden` in IE 8/9/10/11

* 1. IE8/9/10/11に、overflow時にhiddenを設定。
*/
button {
  overflow: visible;
  /* 1 */ }

/**
* Remove inner padding and border in Firefox 4+

* Firefox4+に、内側のpaddingとborderを削除。
*/
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: 0;
  padding: 0; }

/**
* Replace focus style removed in the border reset above

* 1. フォーカス時のスタイルを定義。
*/
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText; }

/**
* 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`controls in Android 4
* 2. Correct the inability to style clickable types in iOS

* 1. Android4に、ネイティブのaudio要素とvideo要素のコントロールのバグを防ぐ。
* 2. iOSに、クリッカブルなbutton要素のtypeのスタイルを修正。
*/
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
* 1. Firefox 40+, Internet Explorer 11-

* 1. Firefox 40+, Internet Explorer 11-
*/
button,
select {
  text-transform: none;
  /* 1 */ }

/**
* Remove the default button styling in all browsers

* すべてのブラウザにおいて、デフォルトのボタンのスタイルを削除。
*/
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit; }

/**
* Style select like a standard input
* 1. Firefox 36+
* 2. Chrome 41+

* 標準的なinput要素のスタイルを選択。
* 1. Firefox 36+
* 2. Chrome 41+
*/
select {
  -moz-appearance: none;
  /* 1*/
  -webkit-appearance: none;
  /* 2 */ }

/**
* 1. Internet Explorer 11+

* 1. Internet Explorer 11+
*/
select::-ms-expand {
  display: none;
  /* 1 */ }

/**
* 1. Internet Explorer 11+

* 1. Internet Explorer 11+
*/
select::-ms-value {
  color: currentColor;
  /* 1 */ }

/**
* 1. Correct `color` not being inherited in IE 8/9/10/11
* 2. Correct the color inheritance from `fieldset` elements in IE
* 3. Correct the text wrapping in Edge and IE
* 4. Correct the text wrapping in Edge and IE
* 5. Correct the text wrapping in Edge and IE

* 1. IE 8/9/10/11に、カラーの継承を定義。
* 2. IEに、fieldset要素からカラーを継承するように定義。
* 3. EdgeとIEに、テキストのラッピングを修正。
* 4. EdgeとIEに、テキストのラッピングを修正。
* 5. EdgeとIEに、テキストのラッピングを修正。
*/
legend {
  border: 0;
  /* 1*/
  color: inherit;
  /* 2 */
  display: table;
  /* 3 */
  max-width: 100%;
  /* 4 */
  white-space: normal;
  /* 5 */ }

/**
* 1. Correct the inability to style clickable types in iOS and Safari
* 2. Change font properties to `inherit` in Chrome and Safari

* 1. iOSとSafariに、クリッカブルなtypeのスタイルを修正。
* 2. ChromeとSafariに、フォントプロパティの継承を変更。
*/
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/**
* Correct the text style of placeholders in Chrome, Edge, and Safari

* Chrome, Edge, Safariに、テキストのスタイルを修正。
*/
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

/**
* 1. Correct the odd appearance in Chrome and Safari
* 2. Correct the outline style in Safari

* 1. ChromeとSafariに、アピアランスを修正。
* 2. Safariに、アウトラインを修正。
*/
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/* # =================================================================
# Specify media element style
# ================================================================= */
/**
* 1. Remove border when inside `a` element in IE 8/9/10

* 1. IE8/9/10に、a要素の中にある時にボーダーを削除。
*/
img {
  border-style: none;
  /* 1 */ }

/**
* Add the correct vertical alignment in Chrome, Firefox, and Opera

* 1. Chrome, Firefox, Operaに、正しいvertical-alignを与える。
*/
progress {
  vertical-align: baseline; }

/**
* 1. Internet Explorer 11-

* 1. Internet Explorer 11-
*/
svg:not(:root) {
  overflow: hidden;
  /* 1 */ }

/**
* 1. Internet Explorer 11+, Windows Phone 8.1+

* 1. Internet Explorer 11+, Windows Phone 8.1+
*/
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */ }

/* # =================================================================
# Acessibility
# ================================================================= */
/**
* Hide content from screens but not screenreaders

* コンテンツを隠す時は、スクリーンリーダーからでなく、スクリーンから。
*/
@media screen {
  [hidden~="screen"] {
    display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important; } }

/**
* Specify the progress cursor of updating elements

* アップデート中の要素のプログレスのカーソルを指定。
*/
/* */
[aria-busy="true"] {
  cursor: progress; }

/**
* Specify the pointer cursor of trigger elements

* トリガー要素のポインターのカーソルを指定。
*/
[aria-controls] {
  cursor: pointer; }

/**
* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements

* 使用不可、編集不可の要素のスタイルが無いカーソルを指定。
*/
[aria-disabled] {
  cursor: default; }

/* # =================================================================
# Selection
# ================================================================= */
/**
* Specify text selection background color and omit drop shadow

* テキスト選択時の背景色を指定し、ドロップシャドウを削除。
*/
/**
* 1. Required when declaring ::selection

* 1. 「::selection」を使用する時に必要。
*/
::-moz-selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #fff;
  text-shadow: none; }

/**
* 1. Required when declaring ::selection

* 1. 「::selection」を使用する時に必要。
*/
::-moz-selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #fff;
  text-shadow: none; }
::selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #fff;
  text-shadow: none; }

img {
  width: 100%;
  vertical-align: bottom; }

iframe {
  width: 100%;
  vertical-align: bottom; }

h1, h2, h3, h4, h5, h6, p, a, th, td, li {
  font-family: BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif; }

.nav_btn {
  position: fixed;
  z-index: 10000;
  top: 0;
  right: 0;
  background-color: #ff9100;
  width: 60px;
  height: 60px; }
  .nav_btn span {
    display: block;
    background-color: #000000;
    height: 2px;
    width: 40px;
    margin: 10px 10px 0 10px; }
    .nav_btn span:last-child {
      margin-bottom: 10px; }

.nav_btn span.active:nth-child(1) {
  -webkit-transform: translateY(12px) rotate(-675deg);
  -ms-transform: translateY(12px) rotate(-675deg);
  transform: translateY(12px) rotate(-675deg); }

.nav_btn span.active:nth-child(2) {
  opacity: 0; }

.nav_btn span.active:nth-child(3) {
  -webkit-transform: translateY(-12px) rotate(675deg);
  -ms-transform: translateY(-12px) rotate(675deg);
  transform: translateY(-12px) rotate(675deg); }

.fa-arrow-circle-up {
  z-index: 10000;
  font-size: 60px;
  position: fixed;
  bottom: 30px;
  left: 80%;
  color: #ff9d00; }

.back_btn {
  display: none; }
  .no_service{
    padding: 20px;
    width: 95%;
    margin: 0 auto;
    background-color: #ffecd5;
    font-size: 1.3rem;
  }
  .no_service>h2{
    color:#ff0000;
    font-size: 20px;
  }
  .no_service>p{
    font-size: 1.0rem;
  }

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

.header {
  width: 100%;
  position: relative;
  z-index: 9998; }

.site_ttl {
  width: 240px;
  padding: 10px; }

@media screen and (min-width: 768px) {
  .header {
    top: 0;
    position: fixed;
    margin: 0 auto;
    background-color: #ffffff;
    height: 70px;
    opacity: 0.9;
    -webkit-filter: drop-shadow(1px 2px 2px rgba(0, 0, 0, 0.2));
    filter: drop-shadow(1px 2px 2px rgba(0, 0, 0, 0.2));
    border-bottom: 1px solid #ccc; }
  .site_ttl {
    width: 200px;
    position: relative;
    float: right; } }

@media screen and (min-width: 1024px) {
  .site_ttl {
    margin-right: 10%; } }

.nav {
  display: none;
  width: 100%;
  position: fixed;
  z-index: 9999;
  top: 0; }
  .nav ul {
    background-color: #fff;
    opacity: 0.9; }
    .nav ul li {
      height: 60px;
      border-bottom: 1px solid #000;
      text-align: center; }
      .nav ul li:hover {
        background-image: url(../images/here_icon.png);
        background-position: center center; }
      .nav ul li a {
        display: block;
        line-height: 60px;
        color: #000;
        text-decoration: none; }
  .nav .here {
    background-image: url(../images/here_icon.png);
    background-position: center center; }

@media screen and (min-width: 768px) {
  .no_service{
    padding: 100px;
    width: 70%;
    margin: 0 auto;
    background-color: #ffecd5;
    font-size: 1.3rem;
  }
  .no_service>h2{
    color:#ff0000;
  }
  .no_service>p{
    font-size: 1.2rem;
  }
  .nav {
    display: block;
    width: calc(100% - 240px);
    margin-right: 240px;
    overflow: hidden; }
    .nav ul li {
      width: 20%;
      float: left;
      border-bottom: none; }
      .nav ul li a {
        line-height: 70px; } }

@media screen and (min-width: 1024px) {
  .nav {
    width: calc(100% - 240px); }
    .nav ul {
      width: 70%;
      margin-left: 15%; } }

.main {
  padding: 0 10px;
  margin: 0 auto;
  margin-top: 400px; }
  .main iframe {
    width: 100%; }

.sect_ttl {
  font-size: 14px;
  margin-top: 20px; }

.txt {
  line-height: 40px; }

.service_ttl {
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
  font-weight: bold;
  font-family: "Rounded Mplus 1c"; }

.service_sub_ttl {
  font-size: 12px; }

.main_visual {
  position: relative;
  margin-bottom: 30px; }

.main_slide {
  display: block;
  position: relative;
  width: 300px;
  margin: auto; }
  .main_slide img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 8;
    opacity: 0.0; }
  .main_slide img.active {
    z-index: 10;
    opacity: 1.0; }
  .main_slide img.last-active {
    z-index: 9; }

.main_visual_txt {
  padding: 0 10px;
  display: block;
  position: relative;
  top: 320px;
  width: 100%;
  background-image: url(../images/main_txt_bgi.png);
  background-position: center center;
  background-size: contain; }
  .main_visual_txt p {
    color: #000;
    font-weight: bold;
    line-height: 30px;
    text-align: center; }

.top_block {
  background-color: #ffffff !important;
  margin-bottom: 30px; }

.bottom_block {
  background-color: #ffffff !important;
  padding-top: 30px;
  margin-top: 30px; }

.service_contents_block {
  width: 100%;
  overflow: hidden; }
  .service_contents_block .service_img {
    width: 80px;
    height: 80px;
    float: left;
    font-size: 12px;
    text-align: center;
    line-height: 20px;
    padding: 20px 0;
    font-family: "Rounded Mplus 1c";
    background-size: contain;
    background-position: center center; }
  .service_contents_block .care_img {
    background-image: url(../images/service_img.png); }
  .service_contents_block .disability_img {
    background-image: url(../images/disability_img.png); }
  .service_contents_block .service_txt {
    width: calc(95% - 80px);
    float: right; }

.middle_txt_block {
  width: 100%;
  max-width: 500px;
  margin: 30px auto;
  padding: 20px 0;
  border-top: dotted 3px #000;
  border-bottom: dotted 3px #000; }

.middle_block {
  background-color: #ffecd6; }

.middle_wrap {
  padding: 30px 0 !important; }

.middle_txt {
  font-weight: bold;
  text-align: center;
  font-size: 20px;
  color: #000000 !important; }

.middle_img {
  display: none; }

.access_contents_block {
  margin: 30px auto;
  padding-bottom: 50px; }
  .access_contents_block .add {
    width: 100%;
    display: block;
    margin: 0 auto; }
    .access_contents_block .add p {
      font-size: 20px;
      line-height: 40px; }
  .access_contents_block .panf {
    background-image: url(../images/panh_link.png);
    background-size: cover;
    background-position: center center;
    text-align: center;
    border-radius: 20px;
    margin: 20px auto;
    width: 200px;
    height: 200px;
    background-color: #cccccc; }
    .access_contents_block .panf:hover {
      background-color: #ffd768;
      opacity: 0.9; }
    .access_contents_block .panf a {
      display: block;
      padding: 60px 0;
      text-decoration: none;
      color: #000000;
      font-weight: bold;
      text-align: center;
      line-height: 40px;
      font-size: 18px; }

@media screen and (min-width: 768px) {
  .bg_orange{
    background-color: #FE9106;
    padding: 30px 0;
  }
  .main {
    position: relative;
/*    top: 650px;*/
    margin: 0;
    z-index: 2 !important; }
    .main img {
      display: block;
      width: 60%;
      max-width: 1024px;
      margin: 30px auto; }
  .main_sect {
    padding: 10px; }
  .sect_ttl {
    font-size: 18px; }
  .sub_ttl img {
    width: 50%;
    margin: 0 25%; }
  .main_visual {
    padding: 0;
    background-image: url(../images/main_visual_bgi.jpg);
    background-position: center right;
    background-size: cover;
    top: 0;
    width: 100%;
    height: 650px;
    z-index: 1 !important;
/*    position: fixed;*/
  }
  .main_slide {
    display: block;
    top: 100px;
    position: relative;
    width: 350px;
    max-width: 500px;
    margin-left: 50px; }
  .main_visual_txt {
    width: 360px;
    margin-left: 40px;
    top: 460px; }
    .main_visual_txt p {
      background-color: #ffffff;
      opacity: 0.7; }
  .service_block {
    width: 100%;
    overflow: hidden; }
    .service_block div {
      width: 50%;
      float: left; }
  .service_sub_ttl {
    font-size: 14px; }
  .service_contents_block {
    width: 100%;
    margin: 0 auto;
    max-width: 1024px;
    overflow: hidden;
    margin-top: 30px; }
  .service_img {
    background-color: #eefeff;
    width: 200px !important;
    height: 200px !important;
    font-size: 30px !important;
    line-height: 50px !important;
    padding: 50px 0 !important;
    -webkit-filter: drop-shadow(5px 3px 3px rgba(0, 0, 0, 0.5));
    filter: drop-shadow(5px 3px 3px rgba(0, 0, 0, 0.5)); }
  .service_txt {
    padding: 10px;
    width: calc(95% - 210px) !important;
    border-radius: 20px; }
    .service_txt p {
      color: #ffffff;
      line-height: 40px; }
  .care_txt {
    background-color: #F359B4; }
  .disability_txt {
    background-color: #80CC28; }
  .middle_txt_block {
    max-width: 700px;
    margin: 50px auto;
    padding: 40px 0; }
  .middle_txt {
    font-size: 30px; }
  .access_contents_block {
    width: 100%;
    overflow: hidden;
    margin-bottom: 50px;
    padding-bottom: 70px; }
    .access_contents_block .panf {
      margin: 0;
      float: right;
      line-height: 40px;
      padding: 30px 0 !important; }
      .access_contents_block .panf a {
        line-height: 40px;
        padding: 35px 0; }
    .access_contents_block .map {
      width: calc(100% - 220px);
      margin-right: 20px; } }

@media screen and (min-width: 1024px) {
  .main_visual {
    background-position: center left;
    background-color: #fe9106; }
  .main_slide {
    width: 380px;
    margin: auto;
    margin-left: 10%; }
  .br::before {
    content: "\A";
    white-space: pre; }
  .main_visual_txt {
    top: 480px;
    width: 400px;
    margin-left: 10%; }
    .main_visual_txt p {
      background-color: transparent;
      padding: 20px 0;
      opacity: 1; }
  .main {
    padding: 0; }
  .main_sect {
    padding: 0; }
  .sect_ttl {
    font-size: 28px;
    margin-top: 50px; }
  .service_sub_ttl {
    font-size: 20px; }
  .service_wrap {
    width: 100%;
    max-width: 1024px;
    margin: 0 auto; }
    .service_wrap section {
      width: 50%;
      float: left; }
  .service_txt {
    float: left !important;
    position: relative;
    margin-top: 180px;
    z-index: 2 !important;
    width: 400px !important;
    height: 220px !important; }
  .service_img {
    float: left !important;
    position: absolute;
    margin-left: 300px;
    z-index: 1 !important; }
  .top_block {
    background-color: #ffffff;
    position: relative;
    height: 600px;
    padding-top: 10px; }
  .middle_block {
    margin: 50px 0; }
  .middle_wrap {
    width: 80%;
    max-width: 1024px;
    margin: 100px auto;
    overflow: hidden; }
  .middle_txt_block {
    width: calc(100% - 400px);
    margin: 20px 0 0 0 !important;
    padding: 50px 0;
    float: left; }
  .middle_img {
    display: block;
    width: 400px !important;
    float: right;
    margin: 0; }
    .middle_img img {
      margin: 0;
      display: block;
      margin-left: 40%; }
  .middle_txt {
    font-size: 35px;
    line-height: 50px; }
  .access_contents_block {
    width: 100%;
    margin: 50px auto 70px;
    max-width: 1024px;
    overflow: hidden;
    padding-bottom: 100px; }
    .access_contents_block .panf {
      font-size: 18px;
      margin: 0; }
    .access_contents_block .map {
      width: calc(100% - 220px); } }

@media screen and (min-width: 1366px) {
  .main_visual div {
    margin-left: 10%; } }

.c_main {
  margin-top: 0 !important; }

.sub_ttl img {
  width: 50%;
  margin: 0 25%; }

@media screen and (min-width: 768px) {
  .bg_01{
    background-color: #ffecd5;
  }
  .c_main {
    top: 80px; }
  .disability {
    border-left: 1px solid #ccc; }
  .service_block02 {
    width: 80%;
    margin: 0 10%; } }

.footer {
  margin-top: 30px; }
  .footer p {
    color: #ffffff; }

.top_footer {
  background-color: #6d6d6d;
  height: 30px; }

.middle_footer {
  background-color: #4b4647; }

.bottom_footer {
  background-color: #30292a;
  padding: 10px 0; }
  .bottom_footer p {
    text-align: center; }
    .bottom_footer p .company {
      font-size: 28px;
      line-height: 45px; }
    .bottom_footer p .f_add {
      font-size: 20px;
      line-height: 40px; }
    .bottom_footer p .tel {
      font-size: 24px;
      line-height: 50px; }

.copy {
  background-color: #ffffff;
  color: #555 !important;
  text-align: center;
  font-size: 10px;
  line-height: 50px; }

.footer_nav {
  padding: 30px 0; }
  .footer_nav li {
    list-style-type: none;
    text-align: center;
    padding: 10px 0; }
    .footer_nav li a {
      display: block;
      color: #fff;
      font-weight: bold;
      line-height: 30px; }
      .footer_nav li a img {
        width: 30px; }

@media screen and (min-width: 768px) {
  .footer {
    position: relative;
/*    margin-top: 650px;*/
    z-index: 2; }
  .c_footer {
    margin-top: 0; }
  .footer_nav {
    width: 100%;
    overflow: hidden;
    max-width: 1024px;
    margin: 0 auto;
    padding: 20px 0; }
    .footer_nav li {
      width: 20%;
      float: left; }
      .footer_nav li a {
        display: block;
        text-decoration: none;
        line-height: 40px; }
        .footer_nav li a img {
          width: 40px; }
  .bottom_footer {
    padding: 20px 0; }
  .copy {
    line-height: 70px; } }

@media screen and (min-width: 1024px) {
  .footer_nav {
    width: 80%;
    max-width: 1024px;
    padding: 50px 0; }
    .footer_nav li a {
      line-height: 60px; }
      .footer_nav li a img {
        width: 60px; } }
