@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP&subset=japanese");
@import url("https://fonts.googleapis.com/css?family=Roboto+Condensed");
/*-----------------------------------------------------------------------------------*/
/* -- Reset --
--------------------------------------------------------------　*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, cite, code, del, dfn, ins, kbd, q, s, samp, strike, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, figure {
  border: 0;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline; }

body {
  background: #fff; }

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

#bgl {
  overflow: hidden; }

/* -- framework && common --
--------------------------------------------------------------　*/
header, #site_navigation, #mainvisualarea, #breadcrumb, #pagetitlearea, #content, footer {
  width: 100%; }

#maincolumn {
  letter-spacing: 1px;
  line-height: 1.7; }
  #maincolumn a:hover, #maincolumn a:active {
    -webkit-transition: opacity .2s ease-out;
    opacity: 0.7;
    outline: 0;
    transition: opacity .2s ease-out; }
    #maincolumn a:hover img:hover, #maincolumn a:hover img:active, #maincolumn a:active img:hover, #maincolumn a:active img:active {
      -webkit-transition: opacity .2s ease-out;
      opacity: 0.7;
      outline: 0;
      transition: opacity .2s ease-out; }

body {
  color: #010101;
  font-family: "メイリオ", Meiryo, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", "メイリオ", Meiryo, "Hiragino Maru Gothic W4 JIS2004", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  letter-spacing: 0.5px;
  line-height: 1.5; }
  @media print, screen and (max-width: 767px) {
    body {
      font-size: 15px; } }

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

ol, ul, li {
  list-style-type: none; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%; }
  table caption, table th, table td {
    font-weight: normal;
    text-align: left; }

img {
  border: 0;
  height: auto;
  height: auto;
  max-width: 100%;
  max-width: 100%;
  vertical-align: bottom; }
  img[class*="wp-image-"], img[class*="attachment-"] {
    height: auto;
    max-width: 100%; }

a {
  color: #010101;
  text-decoration: none; }
  a img {
    border: 0; }

.clearfix {
  overflow: hidden;
  zoom: 1; }
  .clearfix:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden; }

p {
  line-height: 1.7em; }

h2, h3, h4, h5, h6 {
  line-height: 1.3; }

#tinymce h2,
.contentwrap h2 {
  font-size: 1.5em; }

#tinymce h3,
.contentwrap h3 {
  font-size: 22px; }
  @media print, screen and (min-width: 768px) {
    #tinymce h3,
    .contentwrap h3 {
      font-size: 30px; } }

#tinymce h4,
.contentwrap h4 {
  font-size: 1.2em; }

#tinymce h5,
.contentwrap h5 {
  font-size: 1.2em; }

#tinymce h6,
.contentwrap h6 {
  font-size: 1.2em; }

#tinymce p, #tinymce img, #tinymce h4, #tinymce h5, #tinymce h6,
#tinymce table, #tinymce ul, #tinymce ol,
.contentwrap p,
.contentwrap img,
.contentwrap h4,
.contentwrap h5,
.contentwrap h6,
.contentwrap table,
.contentwrap ul,
.contentwrap ol {
  line-height: 1.7;
  margin-bottom: 1em; }

#tinymce h1, #tinymce h2, #tinymce h3,
#tinymce .com_mb,
.contentwrap h1,
.contentwrap h2,
.contentwrap h3,
.contentwrap .com_mb {
  margin-bottom: 30px; }

#tinymce table th, #tinymce table td,
.contentwrap table th,
.contentwrap table td {
  padding: 10px; }

.aligncenter {
  display: block;
  margin: 0 auto; }

.alignright {
  float: right; }

.alignleft {
  float: left; }

blockquote {
  -webkit-margin-after: 1em;
  -webkit-margin-before: 1em;
  -webkit-margin-end: 40px;
  -webkit-margin-start: 40px;
  display: block; }

.mainwrap {
  margin: 0 auto;
  max-width: 1120px;
  width: calc(100% - 30px); }
  .mainwrap .mainwrap {
    max-width: 100%;
    width: 100%; }
  .mainwrap.mw_s {
    max-width: 980px; }
  .mainwrap.mw_l {
    max-width: 1600px; }
  .mainwrap.mw_100 {
    width: 100%; }

@media screen and (max-width: 767px) {
  .mainwrap.mw_max {
    margin: 0 0;
    width: 100%; } }

#globalnaviarea_wrap .mainwrap {
  margin: 0 auto; }
  @media screen and (max-width: 980px) {
    #globalnaviarea_wrap .mainwrap {
      max-width: 100%; } }

.inner_10 {
  padding: 10px; }

@media screen and (max-width: 767px) {
  #contentbody {
    padding: 0 0 0; }
  #sidecolumn {
    margin: 0 auto;
    width: calc(100% - 30px); } }

@media screen and (min-width: 768px) {
  #contentbody {
    padding: 0 0 0; }
  #maincolumn {
    float: left;
    line-height: 130%;
    width: 75%; }
  #sidecolumn {
    float: right;
    margin-bottom: 20px;
    width: 23%; } }

.home #maincolumn, .page #maincolumn {
  float: none;
  width: 100%; }

.home #sidecolumn, .page #sidecolumn {
  display: none; }

.clear:after {
  clear: both;
  content: "";
  display: block;
  overflow: hidden; }

/* -- original common --
--------------------------------------------------------------　*/
strong, b, .bold {
  font-weight: bold; }
  strong.org, b.org, .bold.org {
    color: #fb8c00; }
  strong.size_l, b.size_l, .bold.size_l {
    font-size: 1.5em;
    line-height: 1.7em; }

em {
  font-style: italic; }

small, .small {
  font-size: 14px; }

.bg_w {
  background: #fff; }

.bg_g {
  background: #F2F2F2; }

.ta_c {
  text-align: center; }

.break_word {
  word-wrap: break-word; }

.mb7 {
  margin-bottom: 7px !important; }

.mb15 {
  margin-bottom: 15px !important; }

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

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

.mb50 {
  margin-bottom: 50px !important; }

.mb120 {
  margin-bottom: 120px !important; }

.lh14 {
  line-height: 1.4em; }

.lh17 {
  line-height: 1.7em; }

.lh2 {
  line-height: 2em; }

.img img {
  width: 100%; }

.switch {
  visibility: hidden; }

@media screen and (max-width: 767px) {
  .spview, .sp_taview, .sp_pcview {
    display: inline-block; }
  .taview, .ta_pcview, .pcview {
    display: none; } }

@media screen and (min-width: 768px) and (max-width: 980px) {
  .sp_taview, .taview, .ta_pcview {
    display: inline-block; }
  .spview, .sp_pcview, .pcview {
    display: none; } }

@media screen and (min-width: 981px) {
  .sp_pcview, .ta_pcview, .pcview {
    display: inline-block; }
  .spview, .sp_taview, .taview {
    display: none; } }

/* -- col f_size --
--------------------------------------------------------------　*/
@media print, screen and (max-width: 480px) {
  .col2_wrap img, .col3_wrap img, .col4_wrap img,
  .fsize_37 img,
  .gsize_37 img {
    display: block;
    margin: 0 auto 1em; } }

@media screen and (min-width: 768px) {
  .col2_wrap, .col3_wrap, .col4_wrap {
    -webkit-box-pack: justify;
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
  .col2_wrap .col2_item {
    width: calc((100% - 40px) / 2); }
  .col3_wrap .col3_item {
    width: calc((100% - 40px - 40px) / 3); }
  .col3_wrap .col3_item_2 {
    width: calc(100% - 40px - ((100% - 40px - 40px) / 3 )); }
  .col4_wrap .col4_item {
    width: calc((100% - 40px - 40px - 40px) / 4); }
  .fsize_37, .fsize_73, .fsize_46, .fsize_64, .fsize_55 {
    overflow: hidden; }
    .fsize_37 .leftdir, .fsize_73 .leftdir, .fsize_46 .leftdir, .fsize_64 .leftdir, .fsize_55 .leftdir {
      float: left; }
    .fsize_37 .rightdir, .fsize_73 .rightdir, .fsize_46 .rightdir, .fsize_64 .rightdir, .fsize_55 .rightdir {
      float: right; }
    .fsize_37 .clear, .fsize_73 .clear, .fsize_46 .clear, .fsize_64 .clear, .fsize_55 .clear {
      clear: both;
      float: none;
      overflow: hidden;
      width: 100%; }
  .fsize_37 .leftdir {
    width: calc(((100% - 40px) / 10) * 3); }
  .fsize_37 .rightdir {
    width: calc(((100% - 40px) / 10) * 7); }
  .fsize_73 .leftdir {
    width: calc(((100% - 40px) / 10) * 7); }
  .fsize_73 .rightdir {
    width: calc(((100% - 40px) / 10) * 3); }
  .fsize_46 .leftdir {
    width: calc(((100% - 40px) / 10) * 4); }
  .fsize_46 .rightdir {
    width: calc(((100% - 40px) / 10) * 6); }
  .fsize_64 .leftdir {
    width: calc(((100% - 40px) / 10) * 6); }
  .fsize_64 .rightdir {
    width: calc(((100% - 40px) / 10) * 4); }
  .fsize_55 .leftdir {
    width: calc(((100% - 40px) / 10) * 5); }
  .fsize_55 .rightdir {
    width: calc(((100% - 40px) / 10) * 5); }
  .gsize_37 {
    -webkit-box-align: center;
    -webkit-box-pack: justify;
    align-items: center;
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
  .gsize_37 .leftdir {
    width: calc(((100% - 40px) / 10) * 3); }
  .gsize_37 .rightdir {
    width: calc(((100% - 40px) / 10) * 7); } }

.fsize_37.andsp .leftdir, .fsize_73.andsp .leftdir, .fsize_46.andsp .leftdir, .fsize_64.andsp .leftdir, .fsize_55.andsp .leftdir {
  float: left; }

.fsize_37.andsp .rightdir, .fsize_73.andsp .rightdir, .fsize_46.andsp .rightdir, .fsize_64.andsp .rightdir, .fsize_55.andsp .rightdir {
  float: right; }

.fsize_37.andsp .clear, .fsize_73.andsp .clear, .fsize_46.andsp .clear, .fsize_64.andsp .clear, .fsize_55.andsp .clear {
  clear: both;
  float: none;
  overflow: hidden;
  width: 100%; }

.fsize_55.andsp {
  overflow: hidden; }
  .fsize_55.andsp .leftdir {
    width: calc(((100% - 20px) / 10) * 5); }
  .fsize_55.andsp .rightdir {
    width: calc(((100% - 20px) / 10) * 5); }

/* parts --
--------------------------------------------------------------　*/
.movie_wrap {
  padding-top: 56.25%;
  position: relative;
  width: 100%; }
  .movie_wrap iframe {
    height: 100% !important;
    position: absolute;
    right: 0;
    top: 0;
    width: 100% !important; }

.btn {
  text-align: center; }
  .btn a {
    background: #FF8925 url(../../images/arrow-6.png) 10px 50% no-repeat;
    background-image: -ms-linear-gradient(90deg, #bfbfbf 0%, #959595 50%, white 50%, white 100%);
    background-size: auto;
    border-color: #e6f3ff;
    border-radius: 3px;
    border-style: solid;
    border-width: 1px;
    box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.2);
    color: #fff;
    display: block;
    font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: bolder;
    padding: 8px 50px 12px; }
    @media print, screen and (min-width: 768px) {
      .btn a {
        display: inline-block;
        font-size: 30px;
        font-weight: bolder;
        padding: 20px 50px 23px; } }
  .btn.blue a {
    background: #1564C0 url(../../images/arrow-6.png) 10px 50% no-repeat;
    background-size: auto;
    display: block;
    font-weight: normal; }
  .btn.sml a {
    background-size: auto 20px;
    padding: 7px 50px 10px; }
    @media print, screen and (min-width: 768px) {
      .btn.sml a {
        font-size: 20px; } }

.btn2 {
  text-align: center; }
  .btn2 a {
    background: #1564C0 url(../../images/arrow.png) 5px 50% no-repeat;
    background-image: -ms-linear-gradient(90deg, #030000 0%, white 100%);
    background-size: auto 10px;
    border-color: #eeeeee;
    border-style: solid;
    border-width: 1px;
    color: #fff;
    display: block;
    padding: 7px 40px 10px; }

.sec {
  margin-bottom: 40px; }
  @media print, screen and (min-width: 768px) {
    .sec {
      margin-bottom: 80px; } }
  .sec_s {
    margin-bottom: 20px; }
    @media print, screen and (min-width: 768px) {
      .sec_s {
        margin-bottom: 40px; } }

.pad {
  padding: 40px 0; }
  @media print, screen and (min-width: 768px) {
    .pad {
      padding: 80px 0; } }
  .pad_s {
    padding: 20px 0; }
    @media print, screen and (min-width: 768px) {
      .pad_s {
        padding: 40px 0; } }

/* H2 ~ H6 --
--------------------------------------------------------------　*/
h2:not([class]) {
  font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 25px;
  font-style: normal;
  font-weight: 900;
  font-weight: bold;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    h2:not([class]) {
      font-size: 48px; } }

h2.h2_1 {
  background: url(../../images/border_h2.png) 50% 100% no-repeat;
  font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 25px;
  font-style: normal;
  font-weight: 900;
  font-weight: bold;
  padding-bottom: 10px;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    h2.h2_1 {
      font-size: 48px; } }
  @media print, screen and (min-width: 768px) {
    h2.h2_1 {
      padding-bottom: 20px; } }

h2.h2_2 {
  background: url(../../images/border_h2_w.png) 50% 100% no-repeat;
  font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 25px;
  font-style: normal;
  font-weight: 900;
  font-weight: bold;
  padding-bottom: 10px;
  text-align: center; }
  @media print, screen and (min-width: 768px) {
    h2.h2_2 {
      font-size: 48px; } }
  @media print, screen and (min-width: 768px) {
    h2.h2_2 {
      padding-bottom: 20px; } }

h3:not([class]) {
  font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 22px;
  font-style: normal;
  font-weight: 900;
  font-weight: bold; }
  @media print, screen and (min-width: 768px) {
    h3:not([class]) {
      font-size: 36px; } }

h3.h3_1 {
  border-bottom: solid 1px #1564C0;
  font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-family: "Yu Mincho", "YuMincho", "游明朝体", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "Sawarabi Mincho", "Yu Mincho", YuMincho, "MS P明朝", "MS PMincho", "Hiragino Mincho W3 JIS2004", "Hiragino Mincho Pro W3", "MS PMincho", serif;
  font-size: 22px;
  font-style: normal;
  font-weight: 900;
  font-weight: bold;
  padding-bottom: 7px; }
  @media print, screen and (min-width: 768px) {
    h3.h3_1 {
      font-size: 36px; } }

.gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 30%;
  padding-top: 30px;
  position: relative; }
  .gmap iframe, .gmap object, .gmap embed {
    height: 100% !important;
    left: 0;
    position: absolute;
    top: 0;
    width: 100% !important; }

.flexbox {
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  align-items: center;
  display: -webkit-box;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between; }

@media print, screen and (min-width: 768px) {
  .flexbox_pc {
    -webkit-box-align: center;
    -webkit-box-pack: justify;
    align-items: center;
    display: -webkit-box;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between; } }

/* pager --
--------------------------------------------------------------　*/
#pager {
  clear: both;
  overflow: hidden; }
  @media print, screen and (min-width: 768px) {
    #pager {
      margin-top: 30px; } }
  @media print, screen and (max-width: 767px) {
    #pager .sort {
      margin-bottom: 10px; } }
  @media print, screen and (min-width: 768px) {
    #pager .sort {
      float: left; } }
  #pager .sort ul {
    clear: both;
    margin-right: 3px;
    margin-top: 2px;
    overflow: hidden; }
    #pager .sort ul li {
      display: inline-block; }
      #pager .sort ul li a {
        background: #010101;
        border: solid 1px #010101;
        color: #fff;
        display: inline-block;
        line-height: 2em;
        padding: 0 10px; }
  @media print, screen and (min-width: 768px) {
    #pager .wp_pagenavi {
      float: left; } }
  #pager .wp_pagenavi .pages {
    border: solid 1px #010101;
    color: #010101;
    display: inline-block;
    line-height: 2em;
    padding: 0 8px; }
  #pager .wp_pagenavi .current {
    background: #1564C0;
    border: solid 1px #1564C0;
    color: #fff;
    display: inline-block;
    line-height: 2em;
    padding: 0 8px; }

/* Pager --
--------------------------------------------------------------　*/
.pagination {
  clear: both;
  display: inline-block;
  overflow: hidden;
  padding: 20px 0;
  position: relative; }
  .pagination span {
    background: #1564C0;
    display: block;
    float: left;
    font-size: 14px;
    line-height: 1;
    margin: 2px 5px 2px 0;
    padding: 14px 16px;
    text-align: center;
    text-decoration: none;
    width: auto; }
  .pagination a {
    background: #f2f2f2;
    display: block;
    float: left;
    font-size: 14px;
    line-height: 1;
    margin: 2px 5px 2px 0;
    padding: 14px 16px;
    text-align: center;
    text-decoration: none; }
    .pagination a:hover {
      background: #1564C0;
      opacity: 1; }
  .pagination .current {
    background: #1564C0;
    font-size: 14px;
    line-height: 1;
    padding: 14px 16px;
    text-align: center; }

@media screen and (min-width: 768px) {
  .title.nowrap {
    -o-text-overflow: ellipsis;
    -webkit-text-overflow: ellipsis;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; } }

/* Common frame --
--------------------------------------------------------------　*/
/* -- header --
--------------------------------------------------------------　*/
#header {
  background: rgba(255, 255, 255, 0.8);
  line-height: 1em;
  position: relative; }
  @media print, screen and (max-width: 767px) {
    #header {
      background: rgba(247, 247, 247, 0.9);
      width: 100%;
	  position: fixed;
      top: 0;
	  z-index: 3;}
      #header .head_top, #header .head_nav, #header .head_link {
        display: none; } }
  @media print, screen and (min-width: 768px) and (max-width: 1020px) {
    #header .drawer-toggle {
      display: none; } }
  #header #site_description_area {
    color: #000; }
    #header #site_description_area h1 {
      font-size: 12px;
      padding: 11px 0 0; }
  #header .menubtn_txt {
    display: inline-block;
    font-size: 9px;
    font-weight: bold;
    letter-spacing: -0.05em;
    margin-top: 14px;
    text-align: center;
    text-indent: 0.2em; }
  #header .head_sp_logoarea {
    overflow: hidden; }
    @media print, screen and (max-width: 767px) {
      #header .head_sp_logoarea .site_title {
        float: left; } }
  @media print, screen and (max-width: 767px) {
    #header .site_title {
      margin: 11px 0 10px 10px; }
      #header .site_title img {
        height: 30px;
        margin-bottom: 2px;
        margin-right: 7px;
        margin-top: 0;
        width: auto; } }
  @media print, screen and (min-width: 768px) {
    #header .ta_pcview {
      display: block; }
    #header .head_logoarea {
      padding: 20px 0; }
    #header .nav_head {
      margin-top: 25px;
      overflow: hidden; }
      #header .nav_head:after {
        content: "／"; }
      #header .nav_head li {
        display: inline-block;
        padding-right: 0.5em; }
        #header .nav_head li a {
          display: block; }
          #header .nav_head li a:before {
            content: "／";
            margin-right: 1em; }
    #header .info_head .tel {
      font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
      font-size: 24px;
      font-style: normal;
      font-weight: 900;
      font-weight: bold;
      margin-left: 1em; }
      #header .info_head .tel a {
        background: url(../../images/icon_tel.png) 0 50% no-repeat;
        background-size: 21px;
        color: #1564C0;
        display: block;
        line-height: 20px;
        padding-left: 24px; } }

/* -- mainvisualarea --
--------------------------------------------------------------　*/
.firstview {
  background: url(../../images/mv_bg.png);
  background-size: auto 100%; }
  @media print, screen and (min-width: 768px) {
    .firstview {
      background-size: auto; } }

#mainvisualarea {
  width: 100%; }
  #mainvisualarea .mainwrap {
    padding: 40px 0;
    text-align: center; }
    @media print, screen and (min-width: 768px) {
      #mainvisualarea .mainwrap {
        padding: 60px 0; } }

/* -- pagetitlearea --
--------------------------------------------------------------　*/
#pagetitlearea {
  background: #EBE7E1 url(../../images/mainvisual/mv_page_bg_ph.png) 50% 50% no-repeat;
  background-size: auto 100%; }
  #pagetitlearea .mainwrap {
    padding: 50px 0; }
    @media print, screen and (min-width: 768px) {
      #pagetitlearea .mainwrap {
        padding: 80px 0; } }
  #pagetitlearea .pagetitlearea_title h2 {
    border-bottom: none;
    border-top: none;
    color: #000;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 0;
    padding: 0;
    text-align: left; }
    @media print, screen and (min-width: 768px) {
      #pagetitlearea .pagetitlearea_title h2 {
        font-size: 46px;
        line-height: 46px; } }

@media print, screen and (max-width: 767px) {
  #mainvisualarea, #pagetitlearea {
    margin-top: 53px; } }

/* -- breadcrumb --
--------------------------------------------------------------　*/
#breadcrumb {
  background: #fff; }
  @media screen and (max-width: 767px) {
    #breadcrumb {
      -o-text-overflow: ellipsis;
      -webkit-text-overflow: ellipsis;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; } }
  @media print, screen and (min-width: 768px) {
    #breadcrumb {
      padding: 15px 0; } }
  #breadcrumb span {
    color: #010101;
    display: inline-block;
    padding: 3px 1px 3px 0; }
    @media screen and (max-width: 767px) {
      #breadcrumb span {
        font-size: 13px; } }
  #breadcrumb a span {
    color: #1564C0;
    text-decoration: underline; }
  #breadcrumb a.home span {
    display: none; }
  #breadcrumb a.home::before {
    color: #1564C0;
    content: "\f015";
    font-family: "Font Awesome 5 Free";
    font-weight: 900; }

@media print, screen and (max-width: 767px) {
  .scrolling_wrap {
    height: 100%;
    overflow-y: scroll; }
    .scrolling_wrap.swsp {
      -webkit-overflow-scrolling: touch;
      height: 100vh; }
    .scrolling_wrap .scrolling_wrap_top {
      padding: 0 10px 10px; }
      .scrolling_wrap .scrolling_wrap_top ul {
        overflow: hidden; }
        .scrolling_wrap .scrolling_wrap_top ul li {
          float: left;
          margin-top: 10px;
          width: 49%; }
          .scrolling_wrap .scrolling_wrap_top ul li:nth-child(2n) {
            float: right; }
          .scrolling_wrap .scrolling_wrap_top ul li a {
            -moz-border-radius: 5px;
            -webkit-border-radius: 5px;
            background: #f2f2f2;
            border: solid 1px #1564C0;
            border-radius: 5px;
            box-shadow: 0 -2px 5px 1px #ddd;
            display: block;
            font-weight: bold;
            padding: 15px 0;
            text-align: center; } }
          @media print, screen and (max-width: 767px) and (max-width: 767px) and (max-width: 767px) {
            .scrolling_wrap .scrolling_wrap_top ul li a {
              font-size: 11px; } }

@media print, screen and (max-width: 767px) {
            .scrolling_wrap .scrolling_wrap_top ul li a .dashicons {
              color: #1564C0;
              font-size: 2em;
              margin-bottom: 10px; }
    .scrolling_wrap .scrolling_wrap_bottom {
      padding: 10px 7px 50px 7px; }
  .drawer-open .drawer-hamburger span.drawer-hamburger-icon {
    background-color: transparent; }
  .drawer-hamburger span.drawer-hamburger-icon {
    background-color: #1564C0;
    height: 3px;
    margin-left: 3px; }
    .drawer-hamburger span.drawer-hamburger-icon:before, .drawer-hamburger span.drawer-hamburger-icon:after {
      background-color: #1564C0;
      height: 3px; }
  .sp_menu ul li a {
    background: #1564C0 url(images/common/ico_navi_white_sp.png) no-repeat 94.0625% center;
    background-size: 8px;
    border-bottom: solid 1px #fff;
    box-sizing: border-box;
    color: #fff;
    display: block;
    height: 45px;
    line-height: 45px;
    padding: 0 15px;
    width: 100%; }
  .sp_menu ul li.menu-item-has-children a {
    background: #1564C0 url(images/common/ico_plus_sp.png) no-repeat 94.0625% center;
    background-size: 8px; }
    .sp_menu ul li.menu-item-has-children a.active {
      background: #1564C0 url(images/common/ico_minus_sp.png) no-repeat 94.0625% center;
      background-size: 8px; }
    .sp_menu ul li.menu-item-has-children a ul li a {
      background: #fff url(images/common/ico_navi_white_sp.png) no-repeat 94.0625% center;
      background-size: 8px; }
  .sp_menu ul li ul.sub-menu {
    display: block; }
    .sp_menu ul li ul.sub-menu li a {
      background: #FFFFFF url(images/common/ico_navi_sp.png) no-repeat 94.0625% center !important;
      background-size: 8px !important;
      border-bottom: solid 1px #ddd !important;
      color: #010101 !important; }
  .sp_menu ul.sp_head_submenu {
    overflow: hidden; }
    .sp_menu ul.sp_head_submenu li {
      float: left;
      font-size: 11px;
      width: 50%; }
      .sp_menu ul.sp_head_submenu li a {
        background: #3D3D3E url(images/common/ico_navi_white_sp.png) no-repeat 94.0625% center;
        background-size: 8px; }
      .sp_menu ul.sp_head_submenu li:first-child a {
        border-right: solid 1px #fff; } }

@media print, screen and (min-width: 768px) {
  #globalnaviarea_wrap {
    background: #1564C0 url(../../images/gn_bg.png) 50% 0 repeat-x;
    margin-top: 10px;
    position: relative; }
    #globalnaviarea_wrap .menu-item-has-children {
      height: 56px; }
      #globalnaviarea_wrap .menu-item-has-children .header-nav-child {
        box-shadow: 7px 7px 5px rgba(153, 153, 153, 0.3);
        width: 100%; }
    #globalnaviarea_wrap ul#main-nav {
      -webkit-box-pack: justify;
      display: -webkit-box;
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between;
      padding: 0;
      width: 100%;
      *zoom: 1; }
      #globalnaviarea_wrap ul#main-nav > li {
        -webkit-box-flex: 1;
        flex-grow: 1;
        font-size: 16px;
        margin: 0;
        position: relative;
        text-align: center; } }
      @media print, screen and (min-width: 768px) and (max-width: 1199px) {
        #globalnaviarea_wrap ul#main-nav > li {
          font-size: 15px; } }

@media print, screen and (min-width: 768px) {
        #globalnaviarea_wrap ul#main-nav > li > a {
          background: url(../../images/head_gnborder.png) 100% 50% no-repeat;
          color: #fff;
          display: block;
          font-weight: bolder;
          padding: 22px 7px; }
          #globalnaviarea_wrap ul#main-nav > li > a span {
            color: #FF8925;
            display: block;
            font-size: 16px;
            font-weight: normal;
            padding-top: 5px; }
        #globalnaviarea_wrap ul#main-nav > li ul {
          margin: 0 auto;
          position: absolute;
          width: 100%;
          z-index: 1000; }
          #globalnaviarea_wrap ul#main-nav > li ul li {
            border-top: solid 1px #f2f2f2;
            padding: 0;
            width: 100%; }
            #globalnaviarea_wrap ul#main-nav > li ul li a {
              background: #fff;
              color: #1564C0;
              display: block;
              height: auto;
              letter-spacing: -0.02em;
              line-height: 1.7em;
              padding: 15px 7px 15px; }
              #globalnaviarea_wrap ul#main-nav > li ul li a:hover {
                background: #1564C0;
                border: solid 1px #1564C0;
                color: #fff; }
  .home #globalnaviarea_wrap .header-nav-child.activate {
    margin-top: 0; }
  .home #globalnaviarea_wrap.fixed .header-nav-child.activate {
    margin-top: 42px; } }

@media print, screen and (max-width: 767px) {
  #sidecolumn {
    padding-top: 30px; } }

#sidecolumn .widget {
  margin-bottom: 30px; }
  #sidecolumn .widget img {
    width: 100%; }
  #sidecolumn .widget.title_none h2.widget-title {
    display: none; }

#back_to_top a {
  float: right; }

.home #back_to_top {
  background: #EEEEEE; }

.footer {
  background: #1564C0;
  color: #fff;
  font-size: 14px; }
  @media print, screen and (max-width: 767px) {
    .footer {
      text-align: center; } }
  .footer a {
    color: inherit; }
  .footer_content {
    padding: 40px 0; }
    .footer_content .nav_foot {
      margin-bottom: 7px;
      overflow: hidden; }
      @media print, screen and (max-width: 767px) {
        .footer_content .nav_foot {
          display: none; } }
      .footer_content .nav_foot:after {
        content: "／"; }
      .footer_content .nav_foot li {
        display: inline-block;
        padding-right: 0.5em; }
        .footer_content .nav_foot li a {
          display: block; }
          .footer_content .nav_foot li a:before {
            content: "／";
            margin-right: 1em; }
    @media print, screen and (max-width: 767px) {
      .footer_content .info_foot {
        margin-top: 10px; } }
    .footer_content .info_foot .tel {
      font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
      font-size: 24px;
      font-style: normal;
      font-weight: 900;
      font-weight: bold;
      margin-left: 1em; }
      @media print, screen and (max-width: 767px) {
        .footer_content .info_foot .tel {
          margin-top: 7px; } }
      .footer_content .info_foot .tel a {
        background: url(../../images/icon_tel_f.png) 0 50% no-repeat;
        background-size: 21px;
        display: inline-block;
        padding-left: 24px; }

.copyrigh {
  background: #000;
  color: #fff;
  height: 36px;
  line-height: 36px; }
  .copyrigh a {
    color: #fff; }
  .copyrigh .mainwrap {
    clear: both;
    font-size: 12px;
    letter-spacing: 1.2px;
    overflow: hidden;
    text-align: center; }

@media print, screen and (max-width: 980px) {
  #copyright_wrap {
    padding: 10px 0 50px;
    text-align: center; } }

@media print, screen and (max-width: 980px) {
  #copyright_wrap .mainwrap {
    font-size: 0.6em; } }

/* single page --
--------------------------------------------------------------　*/
.single .thumbnail .f_size55, .single .thumbnail .f_size64, .single .thumbnail .f_size46, .single .thumbnail .f_size73, .single .thumbnail .f_size37, .single .thumbnail .f_size82, .single .thumbnail .f_size28, .single .thumbnail .f_size91, .single .thumbnail .f_size19,
.single .entry-content .f_size55,
.single .entry-content .f_size64,
.single .entry-content .f_size46,
.single .entry-content .f_size73,
.single .entry-content .f_size37,
.single .entry-content .f_size82,
.single .entry-content .f_size28,
.single .entry-content .f_size91,
.single .entry-content .f_size19,
.single .singlesignature .f_size55,
.single .singlesignature .f_size64,
.single .singlesignature .f_size46,
.single .singlesignature .f_size73,
.single .singlesignature .f_size37,
.single .singlesignature .f_size82,
.single .singlesignature .f_size28,
.single .singlesignature .f_size91,
.single .singlesignature .f_size19,
.single .single_pager .f_size55,
.single .single_pager .f_size64,
.single .single_pager .f_size46,
.single .single_pager .f_size73,
.single .single_pager .f_size37,
.single .single_pager .f_size82,
.single .single_pager .f_size28,
.single .single_pager .f_size91,
.single .single_pager .f_size19 {
  margin-bottom: 1em; }

.single .thumbnail img {
  display: block;
  margin: 0 auto 30px; }
  @media print, screen and (min-width: 768px) {
    .single .thumbnail img {
      width: 80%; } }

@media print, screen and (min-width: 768px) {
  .single_pager ul {
    -webkit-box-pack: justify;
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; } }

@media print, screen and (min-width: 768px) {
  .single_pager ul li {
    width: calc((100% - 15px) / 3); } }

.single_pager ul li:nth-child(1) {
  overflow: hidden;
  position: relative; }
  .single_pager ul li:nth-child(1) a {
    padding-left: 2.5em; }
  .single_pager ul li:nth-child(1) a::before {
    -webkit-transform: translate(0, -50%);
    content: '\f053';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    left: 1em;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%); }

.single_pager ul li:nth-child(3) {
  position: relative; }
  .single_pager ul li:nth-child(3) a {
    padding-right: 2.5em; }
  .single_pager ul li:nth-child(3) a::before {
    -webkit-transform: translate(0, -50%);
    content: '\f054';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translate(0, -50%); }

.single_pager ul li a {
  background: url(../../images/banner_bg.png);
  background-size: 100%;
  color: #FF8925;
  display: block;
  height: 100%;
  padding: 1em;
  width: 100%; }

.single_pager ul li.backlink {
  text-align: center; }
  .single_pager ul li.backlink a {
    background: #493013;
    color: #fff;
    position: relative; }
    .single_pager ul li.backlink a div {
      -webkit-transform: translate(-50%, -50%);
      left: 50%;
      position: absolute;
      top: 50%;
      transform: translate(-50%, -50%); }

.page_category ul li {
  margin-bottom: 30px;
  position: relative; }
  .page_category ul li .day {
    color: #FF8925; }
  .page_category ul li .title {
    font-weight: bold;
    margin-bottom: 7px; }
  .page_category ul li .des {
    font-size: 14px; }
  .page_category ul li .btn {
    margin-top: 15px; }
    @media print, screen and (min-width: 768px) {
      .page_category ul li .btn {
        bottom: 0;
        position: absolute;
        right: 0; } }
    .page_category ul li .btn a {
      display: block;
      padding: 5px; }
      @media print, screen and (min-width: 768px) {
        .page_category ul li .btn a {
          padding: 5px 30px; } }

.wsp-container li {
  line-height: 2em; }
  .wsp-container li ul {
    margin-bottom: 0;
    margin-left: 1em; }
    .wsp-container li ul li:before {
      color: #1564C0;
      content: "・"; }

@media print, screen and (min-width: 768px) {
  .archive.default .fsize_46 {
    position: relative; }
    .archive.default .fsize_46 .leftdir img {
      margin-bottom: 0; }
    .archive.default .fsize_46 .btn {
      bottom: 0;
      position: absolute;
      right: 0; } }

.archive.default .cont {
  margin-bottom: 15px; }
  @media print, screen and (max-width: 767px) {
    .archive.default .cont {
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 3;
      display: -webkit-box;
      overflow: hidden; } }

.archive #pager {
  width: 100%; }

.cform {
  margin: auto;
  width: 100%; }
  .cform th, .cform td {
    border-bottom: solid 15px #EEEEEE;
    padding: 10px 10px !important;
    vertical-align: middle; }
  .cform th {
    background: #1564C0;
    color: #fff;
    font-size: 14px;
    /*変なところで改行される場合はここの数字を変更します。*/
    font-weight: normal;
    width: 20%; }
    @media print, screen and (min-width: 768px) {
      .cform th {
        min-width: 18em; } }
  .cform td {
    font-size: 14px; }
  @media only screen and (max-width: 767px) {
    .cform th, .cform td {
      border-bottom: none;
      border-top: none;
      display: block;
      padding: 10px 5px !important;
      width: 100%; } }
  .cform option,
  .cform textarea,
  .cform input[type=text],
  .cform input[type=email],
  .cform input[type=search],
  .cform input[type=url] {
    border: solid 1px #ddd;
    border-radius: 3px;
    padding: 7px;
    width: 100%; }
    .cform option.your-tel,
    .cform textarea.your-tel,
    .cform input[type=text].your-tel,
    .cform input[type=email].your-tel,
    .cform input[type=search].your-tel,
    .cform input[type=url].your-tel {
      width: 5em; }
    @media print, screen and (min-width: 768px) {
      .cform option,
      .cform textarea,
      .cform input[type=text],
      .cform input[type=email],
      .cform input[type=search],
      .cform input[type=url] {
        padding: 13px 10px; } }

.check {
  text-align: center; }

.required {
  background: #ce0000;
  border-radius: 3px;
  color: #fff;
  font-size: 8pt;
  margin-left: 10px;
  padding: 2px 5px;
  vertical-align: middle; }

.submit_dir {
  background: #fff;
  padding: 2em 1em; }
  @media print, screen and (min-width: 768px) {
    .submit_dir {
      padding: 2em; } }

.submit-btn {
  margin-top: 30px;
  text-align: center; }
  .submit-btn input {
    background: url(../../images/btn_bg.png);
    background-size: 100% 100%;
    border: none;
    color: #fff;
    display: inline-block;
    font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1.2em;
    font-style: normal;
    font-weight: 900;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 3em;
    min-width: 45%;
    padding: 0 1em; }
    .submit-btn input:hover {
      -webkit-transition: all 0.4s ease;
      opacity: .7;
      transition: all 0.4s ease; }

.contentwrap .home_business, .contentwrap .home_about {
  background: url(../../images/about_bg.png) 50% 0 no-repeat;
  background-size: auto 100%;
  color: #fff; }
  @media print, screen and (min-width: 768px) {
    .contentwrap .home_business, .contentwrap .home_about {
      background-size: auto; } }
  @media print, screen and (min-width: 1600px) {
    .contentwrap .home_business, .contentwrap .home_about {
      background-size: 100% auto; } }
  .contentwrap .home_business h2, .contentwrap .home_about h2 {
    text-shadow: 2px 2px 2px #333; }

.contentwrap .home_about table {
  background: #fff;
  border: solid 4px #fff; }
  .contentwrap .home_about table th, .contentwrap .home_about table td {
    border-bottom: solid 2px #fff;
    vertical-align: middle; }
  .contentwrap .home_about table th {
    background: #1564C0;
    min-width: 7em; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_about table th {
        min-width: 10em; } }
  .contentwrap .home_about table td {
    color: #010101; }

.contentwrap .home_about .qualification {
  background: rgba(21, 100, 192, 0.8); }
  .contentwrap .home_about .qualification ul {
    overflow: hidden; }
    .contentwrap .home_about .qualification ul li {
      line-height: 2em; }
      @media print, screen and (min-width: 768px) {
        .contentwrap .home_about .qualification ul li {
          float: left;
          width: 33.33%; } }

.contentwrap .home_strength {
  background: #fff url(../../images/strength_bg.png) 50% 0 no-repeat; }
  @media print, screen and (min-width: 768px) {
    .contentwrap .home_strength {
      background-size: 100%; } }
  .contentwrap .home_strength .ttl_sub {
    font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 900;
    font-weight: bold; }
    .contentwrap .home_strength .ttl_sub span {
      color: #1564C0; }
  .contentwrap .home_strength .item {
    position: relative; }
    .contentwrap .home_strength .item img {
      margin-bottom: 0; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_strength .item.item1 {
        padding-bottom: 40px;
        text-align: left; }
        .contentwrap .home_strength .item.item1 .txt {
          bottom: 0;
          position: absolute;
          right: 0; } }
    @media print, screen and (min-width: 768px) and (min-width: 1000px) {
      .contentwrap .home_strength .item.item1 .txt {
        padding-right: 10%; } }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_strength .item.item2 {
        padding-bottom: 40px;
        text-align: right; }
        .contentwrap .home_strength .item.item2 .txt {
          bottom: 0;
          left: 0;
          position: absolute; } }
    @media print, screen and (min-width: 768px) and (min-width: 1000px) {
      .contentwrap .home_strength .item.item2 .txt {
        padding-left: 10%; } }
  .contentwrap .home_strength .txt {
    background: rgba(255, 255, 255, 0.8) url(../../images/arrow_l.png) 0 0 no-repeat;
    max-width: 1020px;
    padding: 2em 1em 1em;
    text-align: left; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_strength .txt {
        padding: 50px 60px; } }
    .contentwrap .home_strength .txt.ar2 {
      background: rgba(255, 255, 255, 0.8) url(../../images/arrow_r.png) 100% 0 no-repeat; }
    .contentwrap .home_strength .txt ul li {
      background: url(../../images/icon_check.png) 0 50% no-repeat;
      color: #1564C0;
      padding: 10px 0 10px 35px;
      padding-left: 35px; }
    .contentwrap .home_strength .txt p:last-child {
      margin-bottom: 0; }

.contentwrap .home_case ul li, .contentwrap .home_flow ul li {
  position: relative; }
  .contentwrap .home_case ul li .item, .contentwrap .home_flow ul li .item {
    background: #fff;
    padding: 5em 1em 1em; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_case ul li .item, .contentwrap .home_flow ul li .item {
        padding: 70px 60px 30px; } }
    .contentwrap .home_case ul li .item .no, .contentwrap .home_flow ul li .item .no {
      background: url(../../images/arrow_flow.png) 0 0 no-repeat;
      color: #fff;
      height: 121px;
      left: 0;
      position: absolute;
      text-align: center;
      top: 0;
      width: 121px; }
      .contentwrap .home_case ul li .item .no span, .contentwrap .home_flow ul li .item .no span {
        font-size: 48px;
        font-style: oblique;
        left: 12px;
        position: absolute; }

.contentwrap .home_case {
  background: #fff url(../../images/case_bg.png) 100% 0 no-repeat; }
  .contentwrap .home_case h3 {
    text-align: center; }
  .contentwrap .home_case ul {
    overflow: hidden; }
    .contentwrap .home_case ul li {
      border: solid 1px #ddd;
      box-shadow: 0 2px 5px 1px #ddd; }
      @media print, screen and (max-width: 767px) {
        .contentwrap .home_case ul li .fsize_55 .leftdir {
          background: url(../../images/arrow-2.png) 50% 100% no-repeat;
          margin-bottom: 20px;
          padding-bottom: 20px; } }
      @media print, screen and (min-width: 768px) {
        .contentwrap .home_case ul li .fsize_55 {
          background: url(../../images/arrow-1.png) 50% 30% no-repeat; }
          .contentwrap .home_case ul li .fsize_55 .leftdir,
          .contentwrap .home_case ul li .fsize_55 .rightdir {
            padding: 0 1em; } }
      @media print, screen and (min-width: 768px) {
        .contentwrap .home_case ul li:nth-child(3), .contentwrap .home_case ul li:nth-child(4) {
          float: left;
          margin-bottom: 0;
          width: calc(((100% - 40px) / 10) * 5); }
          .contentwrap .home_case ul li:nth-child(3) h3, .contentwrap .home_case ul li:nth-child(4) h3 {
            font-size: 150%; }
        .contentwrap .home_case ul li:nth-child(4) {
          float: right; } }

.contentwrap .home_flow {
  background: #F1F1F1; }
  @media print, screen and (min-width: 768px) {
    .contentwrap .home_flow {
      background: #F1F1F1 url(../../images/flow_bg.png) 0 0 no-repeat; } }
  @media print, screen and (max-width: 767px) {
    .contentwrap .home_flow ul li {
      padding-top: 60%; } }
  @media print, screen and (min-width: 768px) {
    .contentwrap .home_flow ul li {
      padding-right: 35%; } }
  .contentwrap .home_flow ul li.no1 {
    background: #fff url(../../images/flow-1.png) 100% 0 no-repeat;
    background-size: 100%; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_flow ul li.no1 {
        background-size: 35%; } }
  .contentwrap .home_flow ul li.no2 {
    background: #fff url(../../images/flow-2.png) 100% 0 no-repeat;
    background-size: 100%; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_flow ul li.no2 {
        background-size: 35%; } }
  .contentwrap .home_flow ul li.no3 {
    background: #fff url(../../images/flow-3.png) 100% 0 no-repeat;
    background-size: 100%; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_flow ul li.no3 {
        background-size: 35%; } }
  .contentwrap .home_flow ul li.no4 {
    background: #fff url(../../images/flow-4.png) 100% 0 no-repeat;
    background-size: 100%; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_flow ul li.no4 {
        background-size: 35%; } }
  .contentwrap .home_flow ul li.no5 {
    background: #fff url(../../images/flow-5.png) 100% 0 no-repeat;
    background-size: 100%; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_flow ul li.no5 {
        background-size: 35%; } }
  .contentwrap .home_flow ul li.ttl {
    background: #1564C0;
    color: #fff;
    font-family: a-otf-ud-shin-go-pr6n, "A-OTF 新ゴ Pro", A-OTF Shin Go Pro, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Maru Gothic W4 JIS2004", "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 22px;
    font-style: normal;
    font-weight: bold;
    font-weight: 900;
    font-weight: bold;
    line-height: 2em;
    padding: 0;
    text-align: center; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_flow ul li.ttl {
        font-size: 36px; } }
  .contentwrap .home_flow ul li.arrow {
    background: url(../../images/arrow-2.png) 50% 50% no-repeat;
    height: 50px;
    padding: 0; }
  .contentwrap .home_flow ul li .item {
    background: rgba(255, 255, 255, 0.8);
    padding: 2em 1em 1em; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_flow ul li .item {
        padding: 70px 60px 30px; } }
  .contentwrap .home_flow ul li.no5 .item .no {
    background: url(../../images/arrow_flow_o.png) 0 0 no-repeat;
    height: 121px;
    width: 121px; }

.contentwrap .home_maker {
  background: #fff;
  text-align: center; }

.contentwrap .home_contact {
  background: #EEEEEE; }
  .contentwrap .home_contact h2 {
    text-align: center; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_contact h2 {
        font-size: 48px; } }
  .contentwrap .home_contact ul.point {
    line-height: 2em; }
    @media print, screen and (min-width: 768px) {
      .contentwrap .home_contact ul.point {
        line-height: 3em;
        text-align: center; } }
  .contentwrap .home_contact .frame {
    border-top: solid 1px #a0a0a0; }
    .contentwrap .home_contact .frame h3 {
      font-weight: normal; }
      @media print, screen and (min-width: 768px) {
        .contentwrap .home_contact .frame h3 {
          font-size: 36px; } }
  .contentwrap .home_contact_btn {
    background: #1564C0 url(../../images/com_contact_bg.png) 0 0 no-repeat;
    background-size: auto 100%; }
    .contentwrap .home_contact_btn h2 {
      color: #fff; }
