@charset "UTF-8";
/*==============================================
	共通利用スタイル
  ============================================== */
@import url("https://fonts.googleapis.com/css?family=Roboto:500,700");
/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url("fonts/fontawesome-webfont.eot");
  src: url("fonts/fontawesome-webfont.eot") format("embedded-opentype"), url("fonts/fontawesome-webfont.woff2") format("woff2"), url("fonts/fontawesome-webfont.woff") format("woff"), url("fonts/fontawesome-webfont.ttf") format("truetype"), url("fonts/fontawesome-webfont.svg") format("svg");
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-fw {
  width: 1.28571em;
  text-align: center;
}

.fa-ul {
  padding-left: 0;
  margin-left: 2.14286em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}

.fa-li {
  position: absolute;
  left: -2.14286em;
  width: 2.14286em;
  top: 0.14286em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714em;
}

.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eee;
  border-radius: .1em;
}

.fa-pull-left {
  float: left;
}

.fa-pull-right {
  float: right;
}

.fa.fa-pull-left {
  margin-right: .3em;
}
.fa.fa-pull-right {
  margin-left: .3em;
}

/* Deprecated as of 4.4.0 */
.pull-right {
  float: right;
}

.pull-left {
  float: left;
}

.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}

.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8);
}

@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}

.fa-stack-1x, .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: #fff;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "";
}

.fa-music:before {
  content: "";
}

.fa-search:before {
  content: "";
}

.fa-envelope-o:before {
  content: "";
}

.fa-heart:before {
  content: "";
}

.fa-star:before {
  content: "";
}

.fa-star-o:before {
  content: "";
}

.fa-user:before {
  content: "";
}

.fa-film:before {
  content: "";
}

.fa-th-large:before {
  content: "";
}

.fa-th:before {
  content: "";
}

.fa-th-list:before {
  content: "";
}

.fa-check:before {
  content: "";
}

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "";
}

.fa-search-plus:before {
  content: "";
}

.fa-search-minus:before {
  content: "";
}

.fa-power-off:before {
  content: "";
}

.fa-signal:before {
  content: "";
}

.fa-gear:before,
.fa-cog:before {
  content: "";
}

.fa-trash-o:before {
  content: "";
}

.fa-home:before {
  content: "";
}

.fa-file-o:before {
  content: "";
}

.fa-clock-o:before {
  content: "";
}

.fa-road:before {
  content: "";
}

.fa-download:before {
  content: "";
}

.fa-arrow-circle-o-down:before {
  content: "";
}

.fa-arrow-circle-o-up:before {
  content: "";
}

.fa-inbox:before {
  content: "";
}

.fa-play-circle-o:before {
  content: "";
}

.fa-rotate-right:before,
.fa-repeat:before {
  content: "";
}

.fa-refresh:before {
  content: "";
}

.fa-list-alt:before {
  content: "";
}

.fa-lock:before {
  content: "";
}

.fa-flag:before {
  content: "";
}

.fa-headphones:before {
  content: "";
}

.fa-volume-off:before {
  content: "";
}

.fa-volume-down:before {
  content: "";
}

.fa-volume-up:before {
  content: "";
}

.fa-qrcode:before {
  content: "";
}

.fa-barcode:before {
  content: "";
}

.fa-tag:before {
  content: "";
}

.fa-tags:before {
  content: "";
}

.fa-book:before {
  content: "";
}

.fa-bookmark:before {
  content: "";
}

.fa-print:before {
  content: "";
}

.fa-camera:before {
  content: "";
}

.fa-font:before {
  content: "";
}

.fa-bold:before {
  content: "";
}

.fa-italic:before {
  content: "";
}

.fa-text-height:before {
  content: "";
}

.fa-text-width:before {
  content: "";
}

.fa-align-left:before {
  content: "";
}

.fa-align-center:before {
  content: "";
}

.fa-align-right:before {
  content: "";
}

.fa-align-justify:before {
  content: "";
}

.fa-list:before {
  content: "";
}

.fa-dedent:before,
.fa-outdent:before {
  content: "";
}

.fa-indent:before {
  content: "";
}

.fa-video-camera:before {
  content: "";
}

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "";
}

.fa-pencil:before {
  content: "";
}

.fa-map-marker:before {
  content: "";
}

.fa-adjust:before {
  content: "";
}

.fa-tint:before {
  content: "";
}

.fa-edit:before,
.fa-pencil-square-o:before {
  content: "";
}

.fa-share-square-o:before {
  content: "";
}

.fa-check-square-o:before {
  content: "";
}

.fa-arrows:before {
  content: "";
}

.fa-step-backward:before {
  content: "";
}

.fa-fast-backward:before {
  content: "";
}

.fa-backward:before {
  content: "";
}

.fa-play:before {
  content: "";
}

.fa-pause:before {
  content: "";
}

.fa-stop:before {
  content: "";
}

.fa-forward:before {
  content: "";
}

.fa-fast-forward:before {
  content: "";
}

.fa-step-forward:before {
  content: "";
}

.fa-eject:before {
  content: "";
}

.fa-chevron-left:before {
  content: "";
}

.fa-chevron-right:before {
  content: "";
}

.fa-plus-circle:before {
  content: "";
}

.fa-minus-circle:before {
  content: "";
}

.fa-times-circle:before {
  content: "";
}

.fa-check-circle:before {
  content: "";
}

.fa-question-circle:before {
  content: "";
}

.fa-info-circle:before {
  content: "";
}

.fa-crosshairs:before {
  content: "";
}

.fa-times-circle-o:before {
  content: "";
}

.fa-check-circle-o:before {
  content: "";
}

.fa-ban:before {
  content: "";
}

.fa-arrow-left:before {
  content: "";
}

.fa-arrow-right:before {
  content: "";
}

.fa-arrow-up:before {
  content: "";
}

.fa-arrow-down:before {
  content: "";
}

.fa-mail-forward:before,
.fa-share:before {
  content: "";
}

.fa-expand:before {
  content: "";
}

.fa-compress:before {
  content: "";
}

.fa-plus:before {
  content: "";
}

.fa-minus:before {
  content: "";
}

.fa-asterisk:before {
  content: "";
}

.fa-exclamation-circle:before {
  content: "";
}

.fa-gift:before {
  content: "";
}

.fa-leaf:before {
  content: "";
}

.fa-fire:before {
  content: "";
}

.fa-eye:before {
  content: "";
}

.fa-eye-slash:before {
  content: "";
}

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "";
}

.fa-plane:before {
  content: "";
}

.fa-calendar:before {
  content: "";
}

.fa-random:before {
  content: "";
}

.fa-comment:before {
  content: "";
}

.fa-magnet:before {
  content: "";
}

.fa-chevron-up:before {
  content: "";
}

.fa-chevron-down:before {
  content: "";
}

.fa-retweet:before {
  content: "";
}

.fa-shopping-cart:before {
  content: "";
}

.fa-folder:before {
  content: "";
}

.fa-folder-open:before {
  content: "";
}

.fa-arrows-v:before {
  content: "";
}

.fa-arrows-h:before {
  content: "";
}

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "";
}

.fa-twitter-square:before {
  content: "";
}

.fa-facebook-square:before {
  content: "";
}

.fa-camera-retro:before {
  content: "";
}

.fa-key:before {
  content: "";
}

.fa-gears:before,
.fa-cogs:before {
  content: "";
}

.fa-comments:before {
  content: "";
}

.fa-thumbs-o-up:before {
  content: "";
}

.fa-thumbs-o-down:before {
  content: "";
}

.fa-star-half:before {
  content: "";
}

.fa-heart-o:before {
  content: "";
}

.fa-sign-out:before {
  content: "";
}

.fa-linkedin-square:before {
  content: "";
}

.fa-thumb-tack:before {
  content: "";
}

.fa-external-link:before {
  content: "";
}

.fa-sign-in:before {
  content: "";
}

.fa-trophy:before {
  content: "";
}

.fa-github-square:before {
  content: "";
}

.fa-upload:before {
  content: "";
}

.fa-lemon-o:before {
  content: "";
}

.fa-phone:before {
  content: "";
}

.fa-square-o:before {
  content: "";
}

.fa-bookmark-o:before {
  content: "";
}

.fa-phone-square:before {
  content: "";
}

.fa-twitter:before {
  content: "";
}

.fa-facebook-f:before,
.fa-facebook:before {
  content: "";
}

.fa-github:before {
  content: "";
}

.fa-unlock:before {
  content: "";
}

.fa-credit-card:before {
  content: "";
}

.fa-feed:before,
.fa-rss:before {
  content: "";
}

.fa-hdd-o:before {
  content: "";
}

.fa-bullhorn:before {
  content: "";
}

.fa-bell:before {
  content: "";
}

.fa-certificate:before {
  content: "";
}

.fa-hand-o-right:before {
  content: "";
}

.fa-hand-o-left:before {
  content: "";
}

.fa-hand-o-up:before {
  content: "";
}

.fa-hand-o-down:before {
  content: "";
}

.fa-arrow-circle-left:before {
  content: "";
}

.fa-arrow-circle-right:before {
  content: "";
}

.fa-arrow-circle-up:before {
  content: "";
}

.fa-arrow-circle-down:before {
  content: "";
}

.fa-globe:before {
  content: "";
}

.fa-wrench:before {
  content: "";
}

.fa-tasks:before {
  content: "";
}

.fa-filter:before {
  content: "";
}

.fa-briefcase:before {
  content: "";
}

.fa-arrows-alt:before {
  content: "";
}

.fa-group:before,
.fa-users:before {
  content: "";
}

.fa-chain:before,
.fa-link:before {
  content: "";
}

.fa-cloud:before {
  content: "";
}

.fa-flask:before {
  content: "";
}

.fa-cut:before,
.fa-scissors:before {
  content: "";
}

.fa-copy:before,
.fa-files-o:before {
  content: "";
}

.fa-paperclip:before {
  content: "";
}

.fa-save:before,
.fa-floppy-o:before {
  content: "";
}

.fa-square:before {
  content: "";
}

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "";
}

.fa-list-ul:before {
  content: "";
}

.fa-list-ol:before {
  content: "";
}

.fa-strikethrough:before {
  content: "";
}

.fa-underline:before {
  content: "";
}

.fa-table:before {
  content: "";
}

.fa-magic:before {
  content: "";
}

.fa-truck:before {
  content: "";
}

.fa-pinterest:before {
  content: "";
}

.fa-pinterest-square:before {
  content: "";
}

.fa-google-plus-square:before {
  content: "";
}

.fa-google-plus:before {
  content: "";
}

.fa-money:before {
  content: "";
}

.fa-caret-down:before {
  content: "";
}

.fa-caret-up:before {
  content: "";
}

.fa-caret-left:before {
  content: "";
}

.fa-caret-right:before {
  content: "";
}

.fa-columns:before {
  content: "";
}

.fa-unsorted:before,
.fa-sort:before {
  content: "";
}

.fa-sort-down:before,
.fa-sort-desc:before {
  content: "";
}

.fa-sort-up:before,
.fa-sort-asc:before {
  content: "";
}

.fa-envelope:before {
  content: "";
}

.fa-linkedin:before {
  content: "";
}

.fa-rotate-left:before,
.fa-undo:before {
  content: "";
}

.fa-legal:before,
.fa-gavel:before {
  content: "";
}

.fa-dashboard:before,
.fa-tachometer:before {
  content: "";
}

.fa-comment-o:before {
  content: "";
}

.fa-comments-o:before {
  content: "";
}

.fa-flash:before,
.fa-bolt:before {
  content: "";
}

.fa-sitemap:before {
  content: "";
}

.fa-umbrella:before {
  content: "";
}

.fa-paste:before,
.fa-clipboard:before {
  content: "";
}

.fa-lightbulb-o:before {
  content: "";
}

.fa-exchange:before {
  content: "";
}

.fa-cloud-download:before {
  content: "";
}

.fa-cloud-upload:before {
  content: "";
}

.fa-user-md:before {
  content: "";
}

.fa-stethoscope:before {
  content: "";
}

.fa-suitcase:before {
  content: "";
}

.fa-bell-o:before {
  content: "";
}

.fa-coffee:before {
  content: "";
}

.fa-cutlery:before {
  content: "";
}

.fa-file-text-o:before {
  content: "";
}

.fa-building-o:before {
  content: "";
}

.fa-hospital-o:before {
  content: "";
}

.fa-ambulance:before {
  content: "";
}

.fa-medkit:before {
  content: "";
}

.fa-fighter-jet:before {
  content: "";
}

.fa-beer:before {
  content: "";
}

.fa-h-square:before {
  content: "";
}

.fa-plus-square:before {
  content: "";
}

.fa-angle-double-left:before {
  content: "";
}

.fa-angle-double-right:before {
  content: "";
}

.fa-angle-double-up:before {
  content: "";
}

.fa-angle-double-down:before {
  content: "";
}

.fa-angle-left:before {
  content: "";
}

.fa-angle-right:before {
  content: "";
}

.fa-angle-up:before {
  content: "";
}

.fa-angle-down:before {
  content: "";
}

.fa-desktop:before {
  content: "";
}

.fa-laptop:before {
  content: "";
}

.fa-tablet:before {
  content: "";
}

.fa-mobile-phone:before,
.fa-mobile:before {
  content: "";
}

.fa-circle-o:before {
  content: "";
}

.fa-quote-left:before {
  content: "";
}

.fa-quote-right:before {
  content: "";
}

.fa-spinner:before {
  content: "";
}

.fa-circle:before {
  content: "";
}

.fa-mail-reply:before,
.fa-reply:before {
  content: "";
}

.fa-github-alt:before {
  content: "";
}

.fa-folder-o:before {
  content: "";
}

.fa-folder-open-o:before {
  content: "";
}

.fa-smile-o:before {
  content: "";
}

.fa-frown-o:before {
  content: "";
}

.fa-meh-o:before {
  content: "";
}

.fa-gamepad:before {
  content: "";
}

.fa-keyboard-o:before {
  content: "";
}

.fa-flag-o:before {
  content: "";
}

.fa-flag-checkered:before {
  content: "";
}

.fa-terminal:before {
  content: "";
}

.fa-code:before {
  content: "";
}

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "";
}

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "";
}

.fa-location-arrow:before {
  content: "";
}

.fa-crop:before {
  content: "";
}

.fa-code-fork:before {
  content: "";
}

.fa-unlink:before,
.fa-chain-broken:before {
  content: "";
}

.fa-question:before {
  content: "";
}

.fa-info:before {
  content: "";
}

.fa-exclamation:before {
  content: "";
}

.fa-superscript:before {
  content: "";
}

.fa-subscript:before {
  content: "";
}

.fa-eraser:before {
  content: "";
}

.fa-puzzle-piece:before {
  content: "";
}

.fa-microphone:before {
  content: "";
}

.fa-microphone-slash:before {
  content: "";
}

.fa-shield:before {
  content: "";
}

.fa-calendar-o:before {
  content: "";
}

.fa-fire-extinguisher:before {
  content: "";
}

.fa-rocket:before {
  content: "";
}

.fa-maxcdn:before {
  content: "";
}

.fa-chevron-circle-left:before {
  content: "";
}

.fa-chevron-circle-right:before {
  content: "";
}

.fa-chevron-circle-up:before {
  content: "";
}

.fa-chevron-circle-down:before {
  content: "";
}

.fa-html5:before {
  content: "";
}

.fa-css3:before {
  content: "";
}

.fa-anchor:before {
  content: "";
}

.fa-unlock-alt:before {
  content: "";
}

.fa-bullseye:before {
  content: "";
}

.fa-ellipsis-h:before {
  content: "";
}

.fa-ellipsis-v:before {
  content: "";
}

.fa-rss-square:before {
  content: "";
}

.fa-play-circle:before {
  content: "";
}

.fa-ticket:before {
  content: "";
}

.fa-minus-square:before {
  content: "";
}

.fa-minus-square-o:before {
  content: "";
}

.fa-level-up:before {
  content: "";
}

.fa-level-down:before {
  content: "";
}

.fa-check-square:before {
  content: "";
}

.fa-pencil-square:before {
  content: "";
}

.fa-external-link-square:before {
  content: "";
}

.fa-share-square:before {
  content: "";
}

.fa-compass:before {
  content: "";
}

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "";
}

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "";
}

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "";
}

.fa-euro:before,
.fa-eur:before {
  content: "";
}

.fa-gbp:before {
  content: "";
}

.fa-dollar:before,
.fa-usd:before {
  content: "";
}

.fa-rupee:before,
.fa-inr:before {
  content: "";
}

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "";
}

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "";
}

.fa-won:before,
.fa-krw:before {
  content: "";
}

.fa-bitcoin:before,
.fa-btc:before {
  content: "";
}

.fa-file:before {
  content: "";
}

.fa-file-text:before {
  content: "";
}

.fa-sort-alpha-asc:before {
  content: "";
}

.fa-sort-alpha-desc:before {
  content: "";
}

.fa-sort-amount-asc:before {
  content: "";
}

.fa-sort-amount-desc:before {
  content: "";
}

.fa-sort-numeric-asc:before {
  content: "";
}

.fa-sort-numeric-desc:before {
  content: "";
}

.fa-thumbs-up:before {
  content: "";
}

.fa-thumbs-down:before {
  content: "";
}

.fa-youtube-square:before {
  content: "";
}

.fa-youtube:before {
  content: "";
}

.fa-xing:before {
  content: "";
}

.fa-xing-square:before {
  content: "";
}

.fa-youtube-play:before {
  content: "";
}

.fa-dropbox:before {
  content: "";
}

.fa-stack-overflow:before {
  content: "";
}

.fa-instagram:before {
  content: "";
}

.fa-flickr:before {
  content: "";
}

.fa-adn:before {
  content: "";
}

.fa-bitbucket:before {
  content: "";
}

.fa-bitbucket-square:before {
  content: "";
}

.fa-tumblr:before {
  content: "";
}

.fa-tumblr-square:before {
  content: "";
}

.fa-long-arrow-down:before {
  content: "";
}

.fa-long-arrow-up:before {
  content: "";
}

.fa-long-arrow-left:before {
  content: "";
}

.fa-long-arrow-right:before {
  content: "";
}

.fa-apple:before {
  content: "";
}

.fa-windows:before {
  content: "";
}

.fa-android:before {
  content: "";
}

.fa-linux:before {
  content: "";
}

.fa-dribbble:before {
  content: "";
}

.fa-skype:before {
  content: "";
}

.fa-foursquare:before {
  content: "";
}

.fa-trello:before {
  content: "";
}

.fa-female:before {
  content: "";
}

.fa-male:before {
  content: "";
}

.fa-gittip:before,
.fa-gratipay:before {
  content: "";
}

.fa-sun-o:before {
  content: "";
}

.fa-moon-o:before {
  content: "";
}

.fa-archive:before {
  content: "";
}

.fa-bug:before {
  content: "";
}

.fa-vk:before {
  content: "";
}

.fa-weibo:before {
  content: "";
}

.fa-renren:before {
  content: "";
}

.fa-pagelines:before {
  content: "";
}

.fa-stack-exchange:before {
  content: "";
}

.fa-arrow-circle-o-right:before {
  content: "";
}

.fa-arrow-circle-o-left:before {
  content: "";
}

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "";
}

.fa-dot-circle-o:before {
  content: "";
}

.fa-wheelchair:before {
  content: "";
}

.fa-vimeo-square:before {
  content: "";
}

.fa-turkish-lira:before,
.fa-try:before {
  content: "";
}

.fa-plus-square-o:before {
  content: "";
}

.fa-space-shuttle:before {
  content: "";
}

.fa-slack:before {
  content: "";
}

.fa-envelope-square:before {
  content: "";
}

.fa-wordpress:before {
  content: "";
}

.fa-openid:before {
  content: "";
}

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "";
}

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "";
}

.fa-yahoo:before {
  content: "";
}

.fa-google:before {
  content: "";
}

.fa-reddit:before {
  content: "";
}

.fa-reddit-square:before {
  content: "";
}

.fa-stumbleupon-circle:before {
  content: "";
}

.fa-stumbleupon:before {
  content: "";
}

.fa-delicious:before {
  content: "";
}

.fa-digg:before {
  content: "";
}

.fa-pied-piper-pp:before {
  content: "";
}

.fa-pied-piper-alt:before {
  content: "";
}

.fa-drupal:before {
  content: "";
}

.fa-joomla:before {
  content: "";
}

.fa-language:before {
  content: "";
}

.fa-fax:before {
  content: "";
}

.fa-building:before {
  content: "";
}

.fa-child:before {
  content: "";
}

.fa-paw:before {
  content: "";
}

.fa-spoon:before {
  content: "";
}

.fa-cube:before {
  content: "";
}

.fa-cubes:before {
  content: "";
}

.fa-behance:before {
  content: "";
}

.fa-behance-square:before {
  content: "";
}

.fa-steam:before {
  content: "";
}

.fa-steam-square:before {
  content: "";
}

.fa-recycle:before {
  content: "";
}

.fa-automobile:before,
.fa-car:before {
  content: "";
}

.fa-cab:before,
.fa-taxi:before {
  content: "";
}

.fa-tree:before {
  content: "";
}

.fa-spotify:before {
  content: "";
}

.fa-deviantart:before {
  content: "";
}

.fa-soundcloud:before {
  content: "";
}

.fa-database:before {
  content: "";
}

.fa-file-pdf-o:before {
  content: "";
}

.fa-file-word-o:before {
  content: "";
}

.fa-file-excel-o:before {
  content: "";
}

.fa-file-powerpoint-o:before {
  content: "";
}

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "";
}

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "";
}

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "";
}

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "";
}

.fa-file-code-o:before {
  content: "";
}

.fa-vine:before {
  content: "";
}

.fa-codepen:before {
  content: "";
}

.fa-jsfiddle:before {
  content: "";
}

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "";
}

.fa-circle-o-notch:before {
  content: "";
}

.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: "";
}

.fa-ge:before,
.fa-empire:before {
  content: "";
}

.fa-git-square:before {
  content: "";
}

.fa-git:before {
  content: "";
}

.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: "";
}

.fa-tencent-weibo:before {
  content: "";
}

.fa-qq:before {
  content: "";
}

.fa-wechat:before,
.fa-weixin:before {
  content: "";
}

.fa-send:before,
.fa-paper-plane:before {
  content: "";
}

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "";
}

.fa-history:before {
  content: "";
}

.fa-circle-thin:before {
  content: "";
}

.fa-header:before {
  content: "";
}

.fa-paragraph:before {
  content: "";
}

.fa-sliders:before {
  content: "";
}

.fa-share-alt:before {
  content: "";
}

.fa-share-alt-square:before {
  content: "";
}

.fa-bomb:before {
  content: "";
}

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "";
}

.fa-tty:before {
  content: "";
}

.fa-binoculars:before {
  content: "";
}

.fa-plug:before {
  content: "";
}

.fa-slideshare:before {
  content: "";
}

.fa-twitch:before {
  content: "";
}

.fa-yelp:before {
  content: "";
}

.fa-newspaper-o:before {
  content: "";
}

.fa-wifi:before {
  content: "";
}

.fa-calculator:before {
  content: "";
}

.fa-paypal:before {
  content: "";
}

.fa-google-wallet:before {
  content: "";
}

.fa-cc-visa:before {
  content: "";
}

.fa-cc-mastercard:before {
  content: "";
}

.fa-cc-discover:before {
  content: "";
}

.fa-cc-amex:before {
  content: "";
}

.fa-cc-paypal:before {
  content: "";
}

.fa-cc-stripe:before {
  content: "";
}

.fa-bell-slash:before {
  content: "";
}

.fa-bell-slash-o:before {
  content: "";
}

.fa-trash:before {
  content: "";
}

.fa-copyright:before {
  content: "";
}

.fa-at:before {
  content: "";
}

.fa-eyedropper:before {
  content: "";
}

.fa-paint-brush:before {
  content: "";
}

.fa-birthday-cake:before {
  content: "";
}

.fa-area-chart:before {
  content: "";
}

.fa-pie-chart:before {
  content: "";
}

.fa-line-chart:before {
  content: "";
}

.fa-lastfm:before {
  content: "";
}

.fa-lastfm-square:before {
  content: "";
}

.fa-toggle-off:before {
  content: "";
}

.fa-toggle-on:before {
  content: "";
}

.fa-bicycle:before {
  content: "";
}

.fa-bus:before {
  content: "";
}

.fa-ioxhost:before {
  content: "";
}

.fa-angellist:before {
  content: "";
}

.fa-cc:before {
  content: "";
}

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "";
}

.fa-meanpath:before {
  content: "";
}

.fa-buysellads:before {
  content: "";
}

.fa-connectdevelop:before {
  content: "";
}

.fa-dashcube:before {
  content: "";
}

.fa-forumbee:before {
  content: "";
}

.fa-leanpub:before {
  content: "";
}

.fa-sellsy:before {
  content: "";
}

.fa-shirtsinbulk:before {
  content: "";
}

.fa-simplybuilt:before {
  content: "";
}

.fa-skyatlas:before {
  content: "";
}

.fa-cart-plus:before {
  content: "";
}

.fa-cart-arrow-down:before {
  content: "";
}

.fa-diamond:before {
  content: "";
}

.fa-ship:before {
  content: "";
}

.fa-user-secret:before {
  content: "";
}

.fa-motorcycle:before {
  content: "";
}

.fa-street-view:before {
  content: "";
}

.fa-heartbeat:before {
  content: "";
}

.fa-venus:before {
  content: "";
}

.fa-mars:before {
  content: "";
}

.fa-mercury:before {
  content: "";
}

.fa-intersex:before,
.fa-transgender:before {
  content: "";
}

.fa-transgender-alt:before {
  content: "";
}

.fa-venus-double:before {
  content: "";
}

.fa-mars-double:before {
  content: "";
}

.fa-venus-mars:before {
  content: "";
}

.fa-mars-stroke:before {
  content: "";
}

.fa-mars-stroke-v:before {
  content: "";
}

.fa-mars-stroke-h:before {
  content: "";
}

.fa-neuter:before {
  content: "";
}

.fa-genderless:before {
  content: "";
}

.fa-facebook-official:before {
  content: "";
}

.fa-pinterest-p:before {
  content: "";
}

.fa-whatsapp:before {
  content: "";
}

.fa-server:before {
  content: "";
}

.fa-user-plus:before {
  content: "";
}

.fa-user-times:before {
  content: "";
}

.fa-hotel:before,
.fa-bed:before {
  content: "";
}

.fa-viacoin:before {
  content: "";
}

.fa-train:before {
  content: "";
}

.fa-subway:before {
  content: "";
}

.fa-medium:before {
  content: "";
}

.fa-yc:before,
.fa-y-combinator:before {
  content: "";
}

.fa-optin-monster:before {
  content: "";
}

.fa-opencart:before {
  content: "";
}

.fa-expeditedssl:before {
  content: "";
}

.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
  content: "";
}

.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: "";
}

.fa-battery-2:before,
.fa-battery-half:before {
  content: "";
}

.fa-battery-1:before,
.fa-battery-quarter:before {
  content: "";
}

.fa-battery-0:before,
.fa-battery-empty:before {
  content: "";
}

.fa-mouse-pointer:before {
  content: "";
}

.fa-i-cursor:before {
  content: "";
}

.fa-object-group:before {
  content: "";
}

.fa-object-ungroup:before {
  content: "";
}

.fa-sticky-note:before {
  content: "";
}

.fa-sticky-note-o:before {
  content: "";
}

.fa-cc-jcb:before {
  content: "";
}

.fa-cc-diners-club:before {
  content: "";
}

.fa-clone:before {
  content: "";
}

.fa-balance-scale:before {
  content: "";
}

.fa-hourglass-o:before {
  content: "";
}

.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: "";
}

.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: "";
}

.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: "";
}

.fa-hourglass:before {
  content: "";
}

.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: "";
}

.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: "";
}

.fa-hand-scissors-o:before {
  content: "";
}

.fa-hand-lizard-o:before {
  content: "";
}

.fa-hand-spock-o:before {
  content: "";
}

.fa-hand-pointer-o:before {
  content: "";
}

.fa-hand-peace-o:before {
  content: "";
}

.fa-trademark:before {
  content: "";
}

.fa-registered:before {
  content: "";
}

.fa-creative-commons:before {
  content: "";
}

.fa-gg:before {
  content: "";
}

.fa-gg-circle:before {
  content: "";
}

.fa-tripadvisor:before {
  content: "";
}

.fa-odnoklassniki:before {
  content: "";
}

.fa-odnoklassniki-square:before {
  content: "";
}

.fa-get-pocket:before {
  content: "";
}

.fa-wikipedia-w:before {
  content: "";
}

.fa-safari:before {
  content: "";
}

.fa-chrome:before {
  content: "";
}

.fa-firefox:before {
  content: "";
}

.fa-opera:before {
  content: "";
}

.fa-internet-explorer:before {
  content: "";
}

.fa-tv:before,
.fa-television:before {
  content: "";
}

.fa-contao:before {
  content: "";
}

.fa-500px:before {
  content: "";
}

.fa-amazon:before {
  content: "";
}

.fa-calendar-plus-o:before {
  content: "";
}

.fa-calendar-minus-o:before {
  content: "";
}

.fa-calendar-times-o:before {
  content: "";
}

.fa-calendar-check-o:before {
  content: "";
}

.fa-industry:before {
  content: "";
}

.fa-map-pin:before {
  content: "";
}

.fa-map-signs:before {
  content: "";
}

.fa-map-o:before {
  content: "";
}

.fa-map:before {
  content: "";
}

.fa-commenting:before {
  content: "";
}

.fa-commenting-o:before {
  content: "";
}

.fa-houzz:before {
  content: "";
}

.fa-vimeo:before {
  content: "";
}

.fa-black-tie:before {
  content: "";
}

.fa-fonticons:before {
  content: "";
}

.fa-reddit-alien:before {
  content: "";
}

.fa-edge:before {
  content: "";
}

.fa-credit-card-alt:before {
  content: "";
}

.fa-codiepie:before {
  content: "";
}

.fa-modx:before {
  content: "";
}

.fa-fort-awesome:before {
  content: "";
}

.fa-usb:before {
  content: "";
}

.fa-product-hunt:before {
  content: "";
}

.fa-mixcloud:before {
  content: "";
}

.fa-scribd:before {
  content: "";
}

.fa-pause-circle:before {
  content: "";
}

.fa-pause-circle-o:before {
  content: "";
}

.fa-stop-circle:before {
  content: "";
}

.fa-stop-circle-o:before {
  content: "";
}

.fa-shopping-bag:before {
  content: "";
}

.fa-shopping-basket:before {
  content: "";
}

.fa-hashtag:before {
  content: "";
}

.fa-bluetooth:before {
  content: "";
}

.fa-bluetooth-b:before {
  content: "";
}

.fa-percent:before {
  content: "";
}

.fa-gitlab:before {
  content: "";
}

.fa-wpbeginner:before {
  content: "";
}

.fa-wpforms:before {
  content: "";
}

.fa-envira:before {
  content: "";
}

.fa-universal-access:before {
  content: "";
}

.fa-wheelchair-alt:before {
  content: "";
}

.fa-question-circle-o:before {
  content: "";
}

.fa-blind:before {
  content: "";
}

.fa-audio-description:before {
  content: "";
}

.fa-volume-control-phone:before {
  content: "";
}

.fa-braille:before {
  content: "";
}

.fa-assistive-listening-systems:before {
  content: "";
}

.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: "";
}

.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: "";
}

.fa-glide:before {
  content: "";
}

.fa-glide-g:before {
  content: "";
}

.fa-signing:before,
.fa-sign-language:before {
  content: "";
}

.fa-low-vision:before {
  content: "";
}

.fa-viadeo:before {
  content: "";
}

.fa-viadeo-square:before {
  content: "";
}

.fa-snapchat:before {
  content: "";
}

.fa-snapchat-ghost:before {
  content: "";
}

.fa-snapchat-square:before {
  content: "";
}

.fa-pied-piper:before {
  content: "";
}

.fa-first-order:before {
  content: "";
}

.fa-yoast:before {
  content: "";
}

.fa-themeisle:before {
  content: "";
}

.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: "";
}

.fa-fa:before,
.fa-font-awesome:before {
  content: "";
}

.fa-handshake-o:before {
  content: "";
}

.fa-envelope-open:before {
  content: "";
}

.fa-envelope-open-o:before {
  content: "";
}

.fa-linode:before {
  content: "";
}

.fa-address-book:before {
  content: "";
}

.fa-address-book-o:before {
  content: "";
}

.fa-vcard:before,
.fa-address-card:before {
  content: "";
}

.fa-vcard-o:before,
.fa-address-card-o:before {
  content: "";
}

.fa-user-circle:before {
  content: "";
}

.fa-user-circle-o:before {
  content: "";
}

.fa-user-o:before {
  content: "";
}

.fa-id-badge:before {
  content: "";
}

.fa-drivers-license:before,
.fa-id-card:before {
  content: "";
}

.fa-drivers-license-o:before,
.fa-id-card-o:before {
  content: "";
}

.fa-quora:before {
  content: "";
}

.fa-free-code-camp:before {
  content: "";
}

.fa-telegram:before {
  content: "";
}

.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
  content: "";
}

.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
  content: "";
}

.fa-thermometer-2:before,
.fa-thermometer-half:before {
  content: "";
}

.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
  content: "";
}

.fa-thermometer-0:before,
.fa-thermometer-empty:before {
  content: "";
}

.fa-shower:before {
  content: "";
}

.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
  content: "";
}

.fa-podcast:before {
  content: "";
}

.fa-window-maximize:before {
  content: "";
}

.fa-window-minimize:before {
  content: "";
}

.fa-window-restore:before {
  content: "";
}

.fa-times-rectangle:before,
.fa-window-close:before {
  content: "";
}

.fa-times-rectangle-o:before,
.fa-window-close-o:before {
  content: "";
}

.fa-bandcamp:before {
  content: "";
}

.fa-grav:before {
  content: "";
}

.fa-etsy:before {
  content: "";
}

.fa-imdb:before {
  content: "";
}

.fa-ravelry:before {
  content: "";
}

.fa-eercast:before {
  content: "";
}

.fa-microchip:before {
  content: "";
}

.fa-snowflake-o:before {
  content: "";
}

.fa-superpowers:before {
  content: "";
}

.fa-wpexplorer:before {
  content: "";
}

.fa-meetup:before {
  content: "";
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}

/*! sanitize.css v4.0.0 | CC0 License | github.com/10up/sanitize.css */
/* Display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none;
}

/* Elements of HTML (https://www.w3.org/TR/html5/semantics.html)
   ========================================================================== */
/**
 * 1. Remove repeating backgrounds in all browsers (opinionated).
 * 2. Add box sizing inheritence in all browsers (opinionated).
 */
*,
::before,
::after {
  background-repeat: no-repeat;
  /* 1 */
  box-sizing: inherit;
  /* 2 */
}

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritence in all browsers (opinionated).
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */
}

/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Add the default cursor in all browsers (opinionated).
 * 3. Add a flattened line height in all browsers (opinionated).
 * 4. Prevent font size adjustments after orientation changes in IE and iOS.
 */
html {
  box-sizing: border-box;
  /* 1 */
  cursor: default;
  /* 2 */
  font-family: sans-serif;
  /* 3 */
  line-height: 1.5;
  /* 3 */
  -ms-text-size-adjust: 100%;
  /* 4 */
  -webkit-text-size-adjust: 100%;
  /* 5 */
}

/* Sections (https://www.w3.org/TR/html5/sections.html)
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Correct the font sizes and margins on `h1` elements within
 * `section` and `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: .67em 0;
}

/* Grouping content (https://www.w3.org/TR/html5/grouping-content.html)
   ========================================================================== */
/**
 * 1. Correct font sizing inheritance and scaling in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * 1. Correct the height in Firefox.
 * 2. Add visible overflow in Edge and IE.
 */
hr {
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
nav ol,
nav ul {
  list-style: none;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Add a bordered underline effect in all browsers.
 * 2. Remove text decoration in Firefox 40+.
 */
abbr[title] {
  border-bottom: 1px dotted;
  /* 1 */
  text-decoration: none;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct colors in IE 9-.
 */
mark {
  background-color: #ffff00;
  color: #000000;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Correct the font size in all browsers.
 */
small {
  font-size: 83.3333%;
}

/**
 * Change the positioning on superscript and subscript elements
 * in all browsers (opinionated).
 * 1. Correct the font size in all browsers.
 */
sub,
sup {
  font-size: 83.3333%;
  /* 1 */
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

/*
 * Remove the text shadow on text selections (opinionated).
 * 1. Restore the coloring undone by defining the text shadow (opinionated).
 */
::-moz-selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #000000;
  /* 1 */
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #000000;
  /* 1 */
  text-shadow: none;
}

/* Embedded content (https://www.w3.org/TR/html5/embedded-content-0.html)
   ========================================================================== */
/*
 * Change the alignment on media elements in all browers (opinionated).
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
svg {
  fill: currentColor;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Links (https://www.w3.org/TR/html5/links.html#links)
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove the gaps in underlines in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * Remove the outline when hovering in all browsers (opinionated.
 */
:hover {
  outline-width: 0;
}

/* Tabular data (https://www.w3.org/TR/html5/tabular-data.html)
   ========================================================================== */
/*
 * Remove border spacing in all browsers (opinionated).
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* transform-style:  (https://www.w3.org/TR/html5/forms.html)
   ========================================================================== */
/**
 * 1. Remove the default styling in all browsers (opinionated).
 * 3. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  background-color: transparent;
  /* 1 */
  border-style: none;
  /* 1 */
  color: inherit;
  /* 1 */
  font-size: 1em;
  /* 1 */
  margin: 0;
  /* 3 */
}

/**
 * Correct the overflow in IE.
 * 1. Correct the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance in Edge, Firefox, and IE.
 * 1. Remove the inheritance in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent the WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Correct the focus styles unset by the previous rule.
 */
:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the border, margin, and padding in all browsers.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: .35em .625em .75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 2 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Remove the vertical scrollbar in IE.
 * 2. Change the resize direction on textareas in all browsers (opinionated).
 */
textarea {
  overflow: auto;
  /* 1 */
  resize: vertical;
  /* 2 */
}

/**
 * Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  padding: 0;
}

/**
 * Correct the cursor style on increment and decrement buttons in Chrome.
 */
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari for OS X.
 */
::-webkit-search-cancel-button,
::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style on placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: .54;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* WAI-ARIA (https://www.w3.org/TR/html5/dom.html#wai-aria)
   ========================================================================== */
/**
 * Change the cursor on busy elements (opinionated).
 */
[aria-busy="true"] {
  cursor: progress;
}

/*
 * Change the cursor on control elements (opinionated).
 */
[aria-controls] {
  cursor: pointer;
}

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements (opinionated).
 */
[aria-disabled] {
  cursor: default;
}

/* User interaction (https://www.w3.org/TR/html5/editing.html)
   ========================================================================== */
/*
 * Remove the tapping delay on clickable elements (opinionated).
 * 1. Remove the tapping delay in IE 10.
 */
a,
area,
button,
input,
label,
select,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  /* 1 */
  touch-action: manipulation;
}

/*
 * Change the display on visually hidden accessible elements (opinionated).
 */
[hidden][aria-hidden="false"] {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute;
}

[hidden][aria-hidden="false"]:focus {
  clip: auto;
}

:root, html, body {
  background-color: #fff;
  color: #000;
  width: 100%;
  font-family: "Hiragino Kaku Gothic ProN","メイリオ",sans-serif;
}

* {
  box-sizing: border-box;
}

body {
  line-height: 1;
  word-break: break-all;
  overflow-wrap: break-word;
  min-width: 320px;
}

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;
}

body#top {
  font-size: 100%;
}
@media (min-width: 1200px) {
  body#top {
    font-size: 100%;
  }
}

body {
  font-size: 100%;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
}
@media only screen and (max-width: 768px) {
  table {
    width: 100%;
    border-top: solid 1px #ddd;
  }
}

th {
  padding: 15px 25px;
  border: solid 1px #ddd;
  background: #f9f9f9;
}
@media only screen and (max-width: 768px) {
  th {
    width: 100% !important;
    padding: 10px 20px;
    border-top: none;
    border-bottom: none;
  }
}

td {
  padding: 15px 25px;
  border: solid 1px #ddd;
}
@media only screen and (max-width: 768px) {
  td {
    padding: 10px 20px 20px;
  }
}

th, td {
  vertical-align: top;
  line-height: 2em;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  th, td {
    display: block;
  }
}

caption {
  text-align: left;
}

p {
  color: #000;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}

li {
  list-style-type: none;
  margin-bottom: 0.4em;
}

nav li {
  margin: 0;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: #000;
}
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
  color: #4d79ff;
}

a {
  text-decoration: none;
  color: #000;
  transition: background 0.4s, opacity 0.4s, color 0.4s, outline-color 0.4s;
}
a img {
  transition: background 0.4s, opacity 0.4s, color 0.4s, outline-color 0.4s;
}
a:hover {
  text-decoration: none;
  color: #4d79ff;
}
a:hover img {
  opacity: 0.5;
}

.clearfixb::before {
  content: "";
  display: block;
  clear: both;
}

@media only screen and (min-width: 993px) {
  .pc-none {
    display: none;
  }
}
@media only screen and (max-width: 992px) {
  .tb-none {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  .sp-none {
    display: none;
  }
}
@media only screen and (min-width: 993px) {
  .pc-block {
    display: block;
  }
}
@media only screen and (max-width: 992px) {
  .tb-block {
    display: block;
  }
}
@media only screen and (max-width: 768px) {
  .sp-block {
    display: block;
  }
}
.u-prl20px {
  padding: 0 20px;
}

.u-mb0px {
  margin-bottom: 0px !important;
}

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

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

.u-mb25px {
  margin-bottom: 25px !important;
}

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

.u-mt20px {
  margin-top: 20px !important;
}

.u-mt60px {
  margin-top: 60px !important;
}

.u-mr30px {
  margin-right: 30px !important;
}

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

.u-txt-center {
  text-align: center !important;
}

.u-txt-right {
  text-align: right !important;
}

.u-txt-left {
  text-align: left !important;
}

.u-w10per {
  width: 10%;
}

.u-w20per {
  width: 20%;
}

.u-w30per {
  width: 30%;
}

.u-w40per {
  width: 40%;
}

.u-w50per {
  width: 50%;
}

.u-w60per {
  width: 60%;
}

.u-w70per {
  width: 70%;
}

.u-w80per {
  width: 80%;
}

.u-w90per {
  width: 90%;
}

.u-w100per {
  width: 100%;
}

.fa-bigger {
  font-size: 1.3em;
  position: relative;
  top: 0.05em;
}

.u-marker {
  color: #000033;
  background: linear-gradient(transparent 40%, #c8ebff 40%);
}

.img-responsive {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

@media only screen and (min-width: 993px) {
  .u-pc-none {
    display: none;
  }
}
@media only screen and (max-width: 992px) {
  .u-tb-none {
    display: none;
  }
}
@media only screen and (min-width: 993px) {
  .br-pc {
    display: none;
  }
}
@media only screen and (max-width: 992px) {
  .br-tb {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  .br-sp {
    display: none;
  }
}
.u-maxwidth-window {
  width: 99vw;
  margin-left: calc(50% - 50vw);
}

.Table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin-bottom: 1.4em;
}
@media only screen and (max-width: 768px) {
  .Table {
    width: 100%;
    border-top: solid 1px #ddd;
  }
}
.Table__main {
  padding: 15px 25px;
  border: solid 1px #ddd;
}
@media only screen and (max-width: 768px) {
  .Table__main {
    padding: 10px 20px 20px;
  }
}
.Table__sub {
  width: 25%;
  padding: 15px 25px;
  border: solid 1px #ddd;
  background: #f9f9f9;
}
@media only screen and (max-width: 768px) {
  .Table__sub {
    width: 100%;
    padding: 10px 20px;
    border-top: none;
    border-bottom: none;
  }
}
.Table__main, .Table__sub {
  vertical-align: top;
  line-height: 1.4em;
  text-align: left;
}
@media only screen and (max-width: 768px) {
  .Table__main, .Table__sub {
    display: block;
  }
}

.button-main {
  display: inline-block;
  padding: 15px 100px;
  color: #fff;
  background: #000033;
  box-shadow: 0px 2px 0px 0px black;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.33333;
  cursor: pointer;
}
.button-main .fa {
  margin-right: 5px;
}
.button-main:hover {
  color: #fff;
  background: #4bafe9;
  box-shadow: 0px 2px 0px 0px #1e9be3;
}
.button-main.revers {
  background: #4bafe9;
  box-shadow: 0px 2px 0px 0px #1e9be3;
}
.button-main.revers:hover {
  background: #000033;
  box-shadow: 0px 2px 0px 0px black;
}
@media only screen and (max-width: 768px) {
  .button-main {
    padding: 3% 10%;
  }
}

.button-medium {
  display: inline-block;
  padding: 10px 25px;
  color: #fff;
  background: #000033;
  box-shadow: 0px 3px 0px 0px black;
  font-weight: bold;
  font-size: 16px;
  cursor: pointer;
}
.button-medium:hover {
  color: #fff;
  background: #4bafe9;
  box-shadow: 0px 3px 0px 0px #1e9be3;
}
.button-medium.revers {
  background: #4bafe9;
  box-shadow: 0px 2px 0px 0px #1e9be3;
}
.button-medium.revers:hover {
  background: #000033;
  box-shadow: 0px 2px 0px 0px black;
}

.button-small {
  display: inline-block;
  padding: 8px 18px;
  color: #fff;
  background: #000033;
  box-shadow: 0px 2px 0px 0px black;
  font-size: 12px;
  cursor: pointer;
}
.button-small:hover {
  color: #fff;
  background: #4bafe9;
  box-shadow: 0px 2px 0px 0px #1e9be3;
}
.button-small.reverse {
  background: #4bafe9;
  box-shadow: 0px 2px 0px 0px #1e9be3;
}
.button-small.reverse:hover {
  background: #000033;
  box-shadow: 0px 2px 0px 0px black;
}

.PageTitle {
  margin-bottom: 30px;
  padding: 24px 30px 24px 30px;
  font-size: 34px;
  font-size: 2.125rem;
  line-height: 1.17647;
  color: #fff;
  background: #000033;
  border-bottom: 2px solid #4bafe9;
}
@media only screen and (max-width: 768px) {
  .PageTitle {
    padding: 14px 22px;
    margin-bottom: 20px;
    font-size: 28px;
    font-size: 1.75rem;
    line-height: 1.21429;
  }
}
.PageTitle__sub {
  display: block;
  font-size: 16px;
  line-height: 0.9em;
  font-family: 'Signika', sans-serif;
  font-weight: 600;
  color: #949494;
}

.PostTitle {
  display: flex;
  padding: 10px 14px;
  margin-bottom: 36px;
  font-size: 1.4em;
  align-items: center;
  background: #000033;
  line-height: 1.2em;
  color: #fff;
}
.PostTitle::before {
  display: block;
  flex: 0 0 16px;
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 16px;
  border: solid 4px #fff;
  margin-right: 10px;
}

.PostTitle-medium {
  position: relative;
  font-size: 1.2em;
  line-height: 1.2em;
  display: flex;
  align-items: center;
  padding: 5px 12px 5px 12px;
  margin-bottom: 24px;
  border-left: 5px solid #000033;
}
.PostTitle-medium::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -4px;
  left: -5px;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #ddd;
  padding-left: 5px;
  box-sizing: content-box;
}

.PostTitle-small {
  font-size: 1em;
  line-height: 1em;
  display: flex;
  align-items: center;
  padding: 8px 10px;
  margin-bottom: 14px;
  background: #e5e5e5;
}
.PostTitle-small::before {
  content: "-";
  display: block;
  width: 7px;
  height: 0.25em;
  margin-right: 12px;
  color: #ff8400;
  font-size: 1.5em;
  line-height: 0;
}

.PostTitle-mini {
  padding: 5px 14px;
  margin-bottom: 20px;
  left: 10px;
  font-size: 14px;
  background: #e5e5e5;
}

.SubHead {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3em;
  margin-bottom: 5px;
}

.BreadCrumb__items {
  list-style-type: none;
  margin: 10px 0 10px 0;
  padding: 0;
  font-size: 13px;
}
@media only screen and (max-width: 768px) {
  .BreadCrumb__items {
    margin-left: 14px;
  }
}
.BreadCrumb__item {
  display: inline;
}
.BreadCrumb__item::after {
  content: ">";
  margin: 0 5px;
}
.BreadCrumb__item:last-child::after {
  content: none;
}

.ListNavi {
  display: flex;
  margin: 50px 0 80px;
  justify-content: center;
  align-items: center;
  font-family: 'Signika', sans-serif;
  font-weight: 600;
}
.ListNavi__items {
  display: flex;
}
.ListNavi__item {
  display: inline-block;
  border-radius: 5px;
  padding: 10px 15px;
  margin-right: 3px;
  color: #fff;
  background: #000033;
  box-shadow: 0px 2px 0px 0px black;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
}
.ListNavi__item.active {
  background: #f40202;
  box-shadow: 0px 2px 0px 0px #c10202;
  cursor: auto;
}
.ListNavi__item:hover {
  color: #fff;
  background: #4bafe9;
  box-shadow: 0px 2px 0px 0px #1e9be3;
}
.ListNavi__next, .ListNavi__prev {
  display: inline-block;
  border-radius: 5px;
  padding: 10px 12px;
  margin: 0 14px;
  color: #fff;
  background: #000033;
  box-shadow: 0px 2px 0px 0px black;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
}
.ListNavi__next:hover, .ListNavi__prev:hover {
  color: #fff;
  background: #4bafe9;
  box-shadow: 0px 2px 0px 0px #1e9be3;
}

.PostNavi {
  display: flex;
  justify-content: space-between;
  margin: 80px 0 120px;
  padding-top: 30px;
  border-top: solid 1px #ddd;
}
.PostNavi a {
  color: #000;
}
.PostNavi a:hover {
  color: #000033;
}
.PostNavi__item {
  flex: 0 0 36%;
  padding: 22px 18px;
  font-size: 14px;
  line-height: 1.3em;
  background: url("../images/common/bg-dot.png");
}
.PostNavi__item.next {
  margin-left: auto;
}
.PostNavi__sub {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
  font-family: 'Signika', sans-serif;
  font-weight: 600;
  color: #000033;
  font-size: 16px;
}
.PostNavi__sub i {
  font-size: 12px;
}

.MetaInfo {
  flex: 1 0 0%;
  display: flex;
  align-items: flex-end;
  margin-right: auto;
  padding-bottom: 2px;
}
.MetaInfo__item {
  display: flex;
  align-items: center;
}
.MetaInfo__item span {
  margin: 0 18px 0 5px;
  line-height: 1.4;
  font-size: 13px;
}
.MetaInfo__item .date {
  font-family: Avenir,"Open Sans" ,"Helvetica Neue" ,Helvetica ,Arial ,Verdana;
  line-height: 1.3em;
}
.MetaInfo__item .site-url a {
  color: #949494;
}
@media only screen and (max-width: 768px) {
  .MetaInfo {
    display: block;
  }
}

.MetaCategory {
  display: flex;
  margin: 0 18px 0 5px;
}
.MetaCategory li {
  margin-right: 6px;
  line-height: 1.4;
  font-size: 13px;
  margin-bottom: 0;
}
.MetaCategory li::after {
  content: "/";
  margin-left: 6px;
}
.MetaCategory li:last-child::after {
  content: none;
}

/*==============================================
    全体 レイアウト
  ============================================== */
.l-column-base {
  max-width: 1200px;
  margin: 0 auto;
}

.l-column {
  flex: 0 1 930px;
  max-width: 930px;
  margin: 0 auto;
}

.l-row {
  display: flex;
  justify-content: left;
  flex-wrap: wrap;
  margin: 0 auto;
}

.l-halfColumn {
  width: 49%;
  flex: 1 0 auto;
  max-width: 49%;
  margin-bottom: 30px;
  margin-right: 2%;
}
.l-halfColumn:nth-child(2n) {
  margin-right: 0;
}
@media only screen and (max-width: 768px) {
  .l-halfColumn {
    margin: 0 0 30px 0;
  }
}

.l-thirdColumn {
  width: 32%;
  flex: 1 0 32%;
  max-width: 32%;
  margin-bottom: 30px;
  margin-right: 2%;
}
.l-thirdColumn:nth-child(3n) {
  margin-right: 0;
}
@media only screen and (max-width: 768px) {
  .l-thirdColumn {
    width: 49%;
    flex: 1 0 auto;
    max-width: 49%;
    margin-bottom: 2%;
    margin-right: 2%;
  }
  .l-thirdColumn:nth-child(3n) {
    margin-right: 2%;
  }
  .l-thirdColumn:nth-child(2n) {
    margin-right: 0;
  }
}

.l-quaterColumn {
  width: 24.2%;
  flex: 1 0 auto;
  max-width: 24.2%;
  margin-bottom: 2%;
  margin-right: 1%;
}
.l-quaterColumn:nth-child(4n) {
  margin-right: 0;
}
@media only screen and (max-width: 768px) {
  .l-quaterColumn {
    width: 49%;
    flex: 1 0 auto;
    max-width: 49%;
    margin-bottom: 2%;
    margin-right: 2%;
  }
  .l-quaterColumn:nth-child(3n) {
    margin-right: 2%;
  }
  .l-quaterColumn:nth-child(2n) {
    margin-right: 0;
  }
}

@media only screen and (max-width: 768px) {
  .sp-column {
    flex-direction: column;
  }
}

.PageDescription {
  padding: 4px;
  font-size: 0.8125rem;
  color: #616161;
}
@media only screen and (max-width: 992px) {
  .PageDescription {
    padding-left: 5px;
  }
}
@media only screen and (max-width: 768px) {
  .PageDescription {
    display: none;
  }
}

.Header {
  position: relative;
  background-image: url(../images/header_underline.png);
  background-repeat: repeat-x;
  background-position: bottom;
  padding-bottom: 3px;
}

.HeaderMain {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 0;
  flex: 0 0 65%;
}
.HeaderMain__sub {
  display: none;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (min-width: 993px) {
  .HeaderMain__sub {
    display: block;
  }
}
.HeaderMain__sub__button {
  display: none;
}
@media only screen and (min-width: 993px) {
  .HeaderMain__sub__button {
    display: block;
  }
}
.HeaderMain__sub__button a {
  display: inline-block;
  margin-right: 10px;
}
.HeaderMain__sub__button a:last-child {
  margin-right: 0;
}
.HeaderMain__sub__item1 {
  font-style: normal;
  text-align: right;
}
.HeaderMain__sub__item1 span.primary {
  color: #616161;
}
.HeaderMain__sub__item1 span.secondary {
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .HeaderMain__sub__item1 span.secondary {
    font-size: 2rem;
  }
}
.HeaderMain__sub__item2 {
  font-style: normal;
  text-align: right;
  font-size: 14px;
  margin-top: 2%;
  margin-bottom: 2%;
}
@media only screen and (max-width: 768px) {
  .HeaderMain {
    padding: 6px 0;
  }
}
@media only screen and (max-width: 992px) {
  .HeaderMain {
    padding: 10px 0;
  }
  .HeaderMain__main {
    width: 63%;
    min-width: 160px;
    margin: 0 auto;
    max-width: 374px;
  }
}

@media only screen and (min-width: 993px) {
  .SpButton {
    display: none;
  }
}
@media only screen and (max-width: 992px) {
  .SpButton {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translate(0%, -50%);
    z-index: 2;
    padding: 8px;
    border: solid 1px #ddd;
    border-radius: 5px;
    color: #000;
    font-size: 22px;
    cursor: pointer;
  }
}

.Menu {
  float: right;
}
.Menu__wrapper {
  display: none;
}
@media only screen and (min-width: 993px) {
  .Menu__wrapper {
    display: block;
  }
}
.Menu__wrapper ::after {
  content: "";
  display: block;
  clear: both;
}
.Menu li {
  display: inline-block;
  float: left;
  margin-left: 9px;
}

.SpMenu {
  width: 200px;
  position: fixed;
  top: 10px;
  right: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.3s ease;
}
@media only screen and (min-width: 993px) {
  .SpMenu {
    display: none;
  }
}
.SpMenu__item {
  margin: 0;
}
.SpMenu__item a {
  display: block;
  padding: 15px 10px;
  border-bottom: solid 1px #ddd;
  line-height: 1.2em;
  color: #000;
}
.SpMenu__item a:hover {
  color: #000;
}
.isOpened .SpMenu {
  opacity: 1;
  transition: opacity 0.3s ease;
  z-index: 1;
}
.SpMenu__wrapper {
  left: 0px;
  width: 100%;
  transition: left 0.3s ease;
}
.SpMenu__wrapper.isOpened {
  position: fixed;
  left: 200px;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.3);
}
.SpMenu__overlay {
  position: relative;
  display: none;
}
.isOpened .SpMenu__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 200px;
  z-index: 2;
  display: block;
}

.Content {
  display: flex;
}
@media only screen and (max-width: 992px) {
  .Content {
    padding: 0 2%;
    display: block;
  }
}
.Content__main {
  flex: 1 0 0%;
  order: 1;
}
@media only screen and (max-width: 768px) {
  .Content__main {
    flex: 1 0 0%;
  }
}
.Content__sub {
  flex: 0 0 240px;
  order: 2;
  margin-left: 30px;
}
@media only screen and (max-width: 992px) {
  .Content__sub {
    display: none;
  }
}
@media only screen and (min-width: 993px) {
  .Content__sub {
    display: block;
  }
}

.Section {
  margin-bottom: 42px;
}
@media only screen and (max-width: 768px) {
  .Section__body {
    margin: 0 14px 28px;
  }
}
.Section__item {
  margin-bottom: 42px;
}
.Section__item:last-child {
  margin-bottom: 0;
}

.SideMenu {
  background-color: #f5f5f5;
  margin-bottom: 45px;
}
.SideMenu__head {
  padding: 12px 17px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  line-height: 1em;
  background-color: #000033;
  border-bottom: 2px solid #4bafe9;
}
.SideMenu__head__sub {
  display: block;
  margin-top: 8px;
  font-family: 'Signika', sans-serif;
  font-weight: 600;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 0.83333;
  color: #949494;
}
.SideMenu__body {
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  border-left: 1px solid #ddd;
  transition: background 0.4s, opacity 0.4s, color 0.4s, outline-color 0.4s;
}
.SideMenu__body:hover {
  background: #4bafe9;
}
.SideMenu__body:hover .SideMenu__body__main {
  color: #fff;
}
.SideMenu__body:hover .square-arrow {
  background: #fff;
}
.SideMenu__body:hover .square-arrow .fa {
  color: #4bafe9;
}
.SideMenu__body__main {
  display: flex;
  align-items: center;
  padding: 16px 16px;
  font-size: 14px;
  line-height: 1.25em;
  color: #000;
  transition: background 0.4s, opacity 0.4s, color 0.4s, outline-color 0.4s;
}
.SideMenu__body__main:hover {
  color: #000033;
}

.SideSubMenu {
  background: #fff;
  margin-bottom: 45px;
}
.SideSubMenu__head {
  color: #333;
  background-color: #f5f5f5;
  border: 1px solid #ddd;
  border-bottom: 2px solid #4bafe9;
  padding: 12px 17px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1em;
}
.SideSubMenu__head__sub {
  display: block;
  margin-top: 8px;
  font-family: 'Signika', sans-serif;
  font-weight: 600;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 0.83333;
  color: #949494;
}
.SideSubMenu__body {
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  border-left: 1px solid #ddd;
  transition: background 0.4s, opacity 0.4s, color 0.4s, outline-color 0.4s;
}
.SideSubMenu__body:hover {
  background: #4bafe9;
}
.SideSubMenu__body:hover .SideSubMenu__body__main {
  color: #fff;
}
.SideSubMenu__body:hover .square-arrow {
  background: #fff;
}
.SideSubMenu__body:hover .square-arrow .fa {
  color: #4bafe9;
}
.SideSubMenu__body__main {
  display: block;
  padding: 16px 16px;
  font-size: 14px;
  line-height: 1em;
  color: #000;
  transition: background 0.4s, opacity 0.4s, color 0.4s, outline-color 0.4s;
}
.SideSubMenu__body__main:hover {
  color: #000033;
}

.SideBnr__body {
  margin-bottom: 15px;
  line-height: 0;
}
.SideBnr__body.separate {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #ddd;
}

.Footer__sub {
  width: 100%;
  padding: 15px 0;
  background-color: #ffd734;
  color: #000;
  text-align: center;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
}
.Footer__top {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}
.Footer__top__wrapper {
  background-image: url(../images/main26-bg.png);
  background-repeat: repeat-y;
  background-position: top center;
  padding-top: 5%;
}
.Footer__top .primry {
  font-size: calc(1.2875rem + 0.45vw);
  text-align: center;
}
@media (min-width: 1200px) {
  .Footer__top .primry {
    font-size: 1.625rem;
  }
}
@media only screen and (max-width: 768px) {
  .Footer__top .primry {
    font-size: 1rem;
  }
}
.Footer__top .secondary {
  font-weight: 400;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  .Footer__top .secondary {
    font-size: 0.875rem;
  }
}
.Footer__top .Img {
  width: auto;
}
.Footer__top__menu ul {
  display: flex;
  justify-content: space-around;
}
.Footer__top__menu ul li {
  max-width: 325px;
  width: 30%;
  margin: 3% 3% 3% 0;
  padding-bottom: 8px;
}
.Footer__top__menu ul li img {
  max-width: 100%;
}
.Footer__top__menu ul li a {
  color: #000;
  display: inline-block;
  height: 100%;
  width: 100%;
  line-height: 0;
}
.Footer__top__menu ul li:last-child {
  margin-right: 0;
}
.Footer__top__menu ul li span {
  background-color: #ffcc00;
  display: inline-block;
  width: 100%;
  height: 37px;
  padding-top: 20px;
}
.Footer__main {
  max-width: 1200px;
  margin: 0 auto;
}
.Footer__main__menu ul {
  width: 100%;
  display: grid;
  gap: 2%;
  grid-template-columns: repeat(auto-fit, minmax(23%, 1fr));
  padding-left: 0;
  margin: 3% 0;
}
@media only screen and (max-width: 768px) {
  .Footer__main__menu ul {
    grid-template-columns: repeat(auto-fit, minmax(30%, 1fr));
  }
}
.Footer__main__menu ul li {
  width: 100%;
  max-width: 276px;
}
.Footer__main__menu ul li img {
  height: auto;
  max-width: 100%;
}
.Footer__bottom {
  max-width: 1200px;
  margin: 0 auto;
}
.Footer__bottom__left {
  float: left;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  font-size: 1.125rem;
  font-weight: normal;
}
@media only screen and (max-width: 768px) {
  .Footer__bottom__left {
    text-align: center;
    float: none;
    font-size: 0.875rem;
  }
}
.Footer__bottom__left img {
  width: auto;
}
.Footer__bottom__right {
  float: right;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Footer__bottom__right {
    text-align: center;
    float: none;
  }
}
.Footer__bottom__right .primary {
  color: #616161;
}
.Footer__bottom__right .secondary {
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .Footer__bottom__right .secondary {
    font-size: 2rem;
  }
}

/*==============================================
    トップページ
  ============================================== */
body#top {
  font-family: noto-sans-cjk-jp, sans-serif;
  font-weight: 600;
  font-style: normal;
  line-height: 1.6;
}

#top .headline{
	color:gray;
  	max-width:1300px;
	margin:1em auto;
	padding:.5em .3em;
	background:#ffd734;
}
.top img {
  max-width: 100%;
}

h1, h2, h3, h4 {
  font-size: 1em;
}

.MainVisual {
  position: relative;
  max-width: none;
  height: auto;
  margin: 0em -23em;
}
@media only screen and (max-width: 768px) {
  .MainVisual {
    margin: 0;
  }
}
.MainVisual__wrapper {
  width: 100%;
  height: auto;
  overflow: hidden;
  margin-top: 0em;
  margin-bottom: 0em;
  margin-left: 0em;
  margin-right: -4em;
}
.MainVisual__body {
  height: auto;
  -ms-interpolation-mode: bicubic;
  display: block;
  margin: 0 auto;
  max-width: 1920px;
}
@media only screen and (max-width: 768px) {
  .MainVisual__body {
    max-width: 100%;
  }
}

.Main01 {
  padding: 0 1%;
  position: relative;
  line-height: 1;
}
.Main01__wrapper {
  background-repeat: no-repeat;
  background-image: url(../images/main01_bg.png);
  padding: 3% 0;
  background-position: top center;
}
.Main01__wrapper.pt2 .Main01__middle__bottom {
  display: flex;
  margin-left: 5%;
  background-color: #fff;
  padding: 2% 0% 2% 13vw;
  justify-content: space-between;
  max-width: 850px;
}
.Main01__top {
  padding: 1% 1% 1% 13%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Main01__top {
    padding: 1% 1% 1% 2%;
  }
}
.Main01__top::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0px;
  border: none;
  border-bottom: solid 17px transparent;
  border-right: solid 19px #ddb100;
}
.Main01__top__wrapper {
  width: 90%;
  background-color: #ffd734;
  min-height: 9vh;
  z-index: 1;
  box-shadow: 3px 4px 0px 0 #ddb100;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .Main01__top__wrapper {
    width: 95%;
  }
}
.Main01__top .primary {
  text-shadow: -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 1px 1px 0px white, 2px 2px 0px white, 2px 2px 0px white, 2px 2px 0px white, 2px 2px 0px white, 2px 2px 0px white, 2px 2px 0px white, 2px 2px 0px white, 2px 2px 0px white, 2px 2px 0px white, 2px 2px 0px white, 2px 2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white, -2px -2px 0px white;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Main01__top .primary {
    line-height: 1.4;
  }
}
.Main01__top .secondary {
  display: inline-block;
  font-size: calc(1.325rem + 0.9vw);
  font-weight: bold;
  padding-top: 2%;
  text-shadow: 2px 1px 0px white;
}
@media (min-width: 1200px) {
  .Main01__top .secondary {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main01__top .secondary {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main01__top .secondary {
    line-height: 1.3;
    padding-bottom: 2%;
    text-align: center;
  }
}
.Main01__middle {
  width: 94%;
  margin-left: 3%;
  margin-right: 3%;
  background-color: #fff;
  padding-top: 2%;
  margin-top: -2%;
  position: relative;
  z-index: 0;
}
.Main01__middle__top {
  padding: 1% 3% 2% 23%;
  background-color: #fffae7;
}
@media only screen and (max-width: 768px) {
  .Main01__middle__top {
    padding: 4% 2% 2% 10vw;
    text-align: center;
  }
}
.Main01__middle__top .primary {
  color: #ffa800;
  font-size: calc(1.2625rem + 0.15vw);
  font-weight: bold;
  display: inherit;
  padding: 1% 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media (min-width: 1200px) {
  .Main01__middle__top .primary {
    font-size: 1.375rem;
  }
}
.Main01__middle__top .secondary {
  font-size: 1.0625rem;
  color: #a2a09a;
  letter-spacing: 2px;
}
.Main01__middle__top .tel {
  font-size: calc(1.4375rem + 2.25vw);
  display: inline-block;
  padding-right: 2%;
  padding: 1% 0;
}
@media (min-width: 1200px) {
  .Main01__middle__top .tel {
    font-size: 3.125rem;
  }
}
.Main01__middle__top .tel a {
  color: #000;
}
.Main01__middle__top .tertiary {
  display: inline-block;
  font-size: 1.125rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Main01__middle__top .tertiary {
    font-size: 0.875rem;
    padding-left: 2em;
  }
}
.Main01__middle__top .tap {
  color: #a2a09a;
  font-size: 1.125rem;
  padding-top: 2%;
  display: inherit;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Main01__middle__top .tap {
    font-size: 0.875rem;
  }
}
.Main01__middle__bottom {
  display: flex;
  margin-left: 5%;
  background-color: #fff;
  padding: 2% 7% 2% 17%;
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  .Main01__middle__bottom {
    padding: 2% 0% 2% 9%;
  }
}
.Main01__middle__bottom a {
  display: inline-block;
  margin-right: 3%;
}
.Main01__left {
  max-width: 252px;
  position: absolute;
  bottom: -1px;
  width: 21vw;
  z-index: 2;
  left: 0;
}
@media only screen and (max-width: 768px) {
  .Main01__left {
    width: 29vw;
    min-width: 100px;
  }
}

.Main02 {
  position: relative;
}
.Main02__header {
  background-color: #60bfee;
  font-size: calc(1.5625rem + 3.75vw);
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 2%;
  position: relative;
}
@media (min-width: 1200px) {
  .Main02__header {
    font-size: 4.375rem;
  }
}
.Main02__header span {
  color: #fff000;
}
.Main02::after {
  content: "";
  position: absolute;
  bottom: -10vw;
  left: 43%;
  border: 7vw solid transparent;
  border-top: 4vw solid #60bfee;
  z-index: 2;
}
.Main02__wrapper {
  background-color: #ddeefa;
}
.Main02__top {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  padding-left: 22%;
  max-width: 1200px;
  padding-right: 8%;
  background-image: url(../images/main02_shape01.png), url(../images/main02_shape02.png);
  background-repeat: no-repeat;
  background-position: 12% 48%,right bottom;
  padding-top: 7%;
  padding-bottom: 1%;
  margin: 0 auto;
  list-style: none;
}
@media only screen and (max-width: 768px) {
  .Main02__top {
    padding-bottom: 5%;
    padding-right: 26%;
    padding-left: 1%;
  }
}
.Main02__top li {
  background-color: #fff;
  border-radius: 7px;
  padding: 1%;
  font-size: calc(1.26875rem + 0.225vw);
  position: relative;
  margin-bottom: 30px;
}
@media (min-width: 1200px) {
  .Main02__top li {
    font-size: 1.4375rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main02__top li {
    font-size: 1.25rem;
  }
}
.Main02__top li::after {
  content: url(../images/main02_bg.png);
  position: absolute;
  bottom: -24px;
  right: 2%;
}
.Main02__bottom {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  padding-left: 14%;
  max-width: 1200px;
  padding-right: 16%;
  background-image: url(../images/main02_shape04.png), url(../images/main02_shape03.png);
  background-repeat: no-repeat;
  background-position: left bottom 16%,right 5% top 27%;
  padding-bottom: 4%;
  margin: 0 auto;
  list-style: none;
}
@media only screen and (max-width: 768px) {
  .Main02__bottom {
    padding-left: 29%;
    padding-right: 2%;
    background-position: left bottom,right 5% top 27%;
  }
}
.Main02__bottom li {
  font-size: calc(1.26875rem + 0.225vw);
  background-color: #fff;
  border-radius: 7px;
  padding: 1%;
  font-size: 23px;
  position: relative;
  margin-bottom: 30px;
}
@media (min-width: 1200px) {
  .Main02__bottom li {
    font-size: 1.4375rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main02__bottom li {
    font-size: 1.25rem;
  }
}
.Main02__bottom li::after {
  content: url(../images/main02_bg_rv.png);
  position: absolute;
  bottom: -24px;
  left: 2%;
}

.Main03 {
  max-width: 1200px;
  margin: 0 auto 3%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
.Main03__header {
  color: #60bfee;
  font-size: calc(1.34375rem + 1.125vw);
  font-weight: bold;
  text-align: center;
  padding: 3% 0;
}
@media (min-width: 1200px) {
  .Main03__header {
    font-size: 2.1875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main03__header {
    padding: 2%;
  }
}
.Main03__top {
  display: flex;
  border: 5px solid #ffd734;
  border-radius: 9px;
  padding: 3%;
}
@media only screen and (max-width: 768px) {
  .Main03__top {
    flex-direction: column;
  }
}
.Main03__top__left {
  width: 40%;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .Main03__top__left {
    width: auto;
  }
}
.Main03__top__left .Img {
  max-width: 298px;
  margin: 0 auto;
}
.Main03__top__left .Text {
  font-size: 1.125rem;
  line-height: 1.7;
  text-align: left;
}
.Main03__top__right {
  width: 60%;
  margin-left: 5%;
  .text-align: center;
}
@media only screen and (max-width: 768px) {
  .Main03__top__right {
    width: auto;
    margin-left: 0;
  }
}
.Main03__top__right Img {
  margin: 0 auto;
}
.Main03__top__right .Text {
  font-size: 1.125rem;
  line-height: 1.7;
  text-align: left;
}
.Main03__bottom {
  position: relative;
}
.Main03__bottom__header {
  color: #60bfee;
  font-size: calc(1.34375rem + 1.125vw);
  text-align: left;
  padding: 1% 0;
  background-color: #ddeefa;
  border-radius: 15px;
  margin-top: 3%;
  margin-bottom: 3%;
  padding-left: 27%;
}
@media (min-width: 1200px) {
  .Main03__bottom__header {
    font-size: 2.1875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main03__bottom__header {
    padding-left: 1%;
    text-align: center;
  }
}
.Main03__bottom__header span {
  font-weight: bold;
}
.Main03__bottom .Text {
  font-size: 1.125rem;
  line-height: 1.7;
  text-align: left;
  padding-left: 27%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Main03__bottom .Text {
    padding-left: 24%;
  }
}
.Main03__bottom__left {
  position: absolute;
  left: 12%;
  bottom: 0;
  max-width: 12%;
}
@media only screen and (max-width: 768px) {
  .Main03__bottom__left {
    left: 0;
    bottom: 0;
    max-width: 20%;
  }
}

.Main04 {
  max-width: 1200px;
  margin: 0 auto;
}
.Main04__wrapper {
  background-image: url(../images/main04_bg.png), url(../images/main04_bg2.png);
  background-repeat: no-repeat,repeat-y;
  background-size: contain;
}
.Main04__top {
  display: flex;
}
@media only screen and (max-width: 768px) {
  .Main04__top {
    flex-direction: column;
  }
}
.Main04__top__left {
  background-image: url(../images/main04_bg02.png);
  background-repeat: no-repeat;
  width: 32%;
  background-position: 0 91%;
  padding-top: 5%;
  background-size: contain;
}
@media only screen and (max-width: 768px) {
  .Main04__top__left {
    width: 100%;
    background-position: 50% 20px;
    min-height: 247px;
    padding-top: 61px;
  }
}
.Main04__top__left .Text {
  font-size: 1.125rem;
  line-height: 1.7;
  text-align: center;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Main04__top__left .Text {
    font-size: 0.9375rem;
    line-height: 1.4;
  }
}
.Main04__top__right {
  text-align: center;
}
.Main04__top__right .Head {
  padding-top: 9%;
  font-size: calc(1.28125rem + 0.375vw);
}
@media only screen and (max-width: 768px) {
  .Main04__top__right .Head {
    padding-top: 0;
  }
}
.Main04__top__right .Head img {
  width: 38px;
}
@media only screen and (max-width: 768px) {
  .Main04__top__right .Head img {
    max-width: 3%;
  }
}
@media (min-width: 1200px) {
  .Main04__top__right .Head {
    font-size: 1.5625rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main04__top__right .Head {
    font-size: calc(1.28125rem + -1.725vw);
  }
}
.Main04__top__right .Foot {
  padding-top: 2.5%;
  font-weight: bold;
  line-height: 1.3;
  font-size: calc(1.4875rem + 2.85vw);
}
.Main04__top__right .Foot img {
  width: 38px;
}
@media (min-width: 1200px) {
  .Main04__top__right .Foot {
    font-size: 3.625rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main04__top__right .Foot {
    font-size: calc(1.3625rem + 1.35vw);
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main04__top__right .Foot {
    font-size: 2.375rem;
  }
}

.Main04__bottom {
  display: flex;
  justify-content: center;
  padding: 3% 0;
}
.Main04__bottom a {
  display: inline-block;
  width: 30%;
  max-width: 335px;
  color: #fff;
  border-radius: 20px;
  padding: 7px;
  text-align: center;
  font-weight: bold;
  margin-right: 2%;
  font-size: calc(1.3rem + 0.6vw);
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 1200px) {
  .Main04__bottom a {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main04__bottom a {
    line-height: 1.2;
  }
}
.Main04__bottom a:nth-child(1) {
  background-color: #18a8f0;
}
.Main04__bottom a:nth-child(2) {
  background-color: #6dbe3e;
}
.Main04__bottom a:nth-child(3) {
  background-color: #f40202;
  margin-right: 0;
}

.Main05 {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}
.Main05__wrapper {
  background-image: url(../images/main05_bgline.png);
  background-position: bottom;
  border-top: 10px solid #18a8f0;
  margin-top: 10px;
  background-repeat: no-repeat;
}
.Main05__header {
  max-width: 850px;
  margin: 0 auto 2%;
  width: 70%;
  background-color: #18a8f0;
  color: #fff;
  border-radius: 0 0 10px 10px;
  padding: 2%;
  font-size: calc(1.45625rem + 2.475vw);
}
@media (min-width: 1200px) {
  .Main05__header {
    font-size: 3.3125rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main05__header {
    font-size: calc(1.4rem + 1.8vw);
    width: 80%;
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main05__header {
    font-size: 2.75rem;
  }
}

.Main05__header span {
  font-size: calc(1.26875rem + 0.225vw);
  display: inline-block;
}
@media (min-width: 1200px) {
  .Main05__header span {
    font-size: 1.4375rem;
  }
}
.Main05__header__sub {
  font-size: calc(1.35625rem + 1.275vw);
  background: linear-gradient(transparent 60%, #fff100 60%);
  display: inline;
}
@media (min-width: 1200px) {
  .Main05__header__sub {
    font-size: 2.3125rem;
  }
}
.Main05__main {
  display: flex;
}
@media only screen and (max-width: 768px) {
  .Main05__main {
    flex-direction: column;
  }
}
.Main05__main__item {
  background-size: contain;
  background-repeat: no-repeat;
  padding-top: 3%;
  min-height: 427px;
  width: 33%;
  margin-top: 2.5%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  .Main05__main__item {
    width: 100%;
    padding-top: 3%;
    margin: 0 auto;
    background-position: top center;
    background-size: 100%;
    min-height: 23em;
  }
}
.Main05__main__item:nth-child(1) {
  background-image: url(../images/main05_case1.png);
  max-width: 370px;
  text-indent: -26px;
}
.Main05__main__item:nth-child(2) {
  max-width: 350px;
  background-image: url(../images/main05_case2.png);
}
.Main05__main__item:nth-child(3) {
  max-width: 343px;
  background-image: url(../images/main05_case3.png);
}
@media only screen and (max-width: 768px) {
  .Main05__main__item:nth-child(1) {
    background-image: url(../images/main05_spcase1.png);
  }
  .Main05__main__item:nth-child(2) {
    background-image: url(../images/main05_spcase2.png);
  }
  .Main05__main__item:nth-child(3) {
    background-image: url(../images/main05_spcase3.png);
  }
}

.Main06 {
  padding: 0 1%;
}
.Main06__wrapper {
  background-repeat: no-repeat;
  background-image: url(../images/main06_bg1.png);
  padding: 3% 0;
}
.Main06__main {
  position: relative;
  background-color: #fff;
  box-shadow: 5px 0px 15px #000;
  width: 96%;
  margin: 0 auto;
}
.Main06__header {
  padding: 1% 1% 1% 1%;
  text-align: center;
}
.Main06__header::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0px;
  border: none;
  border-bottom: solid 17px transparent;
  border-right: solid 19px #ddb100;
}
.Main06__header::after {
  position: absolute;
  content: '';
  top: 100%;
  right: -3px;
  border: none;
  border-bottom: solid 17px transparent;
  border-left: solid 19px #ddb100;
}
.Main06__header__wrapper {
  width: 104%;
  background-color: #ffd734;
  min-height: 9vh;
  position: absolute;
  top: 1%;
  left: -2%;
  z-index: 1;
  box-shadow: 3px 4px 0px 0 #ddb100;
}
.Main06__header .primary {
  text-shadow: 3px 3px 0px white;
  font-size: calc(1.39375rem + 1.725vw);
  font-weight: bold;
}
@media (min-width: 1200px) {
  .Main06__header .primary {
    font-size: 2.6875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main06__header .primary {
    line-height: 1.4;
    font-size: calc(1.3125rem + 0.75vw);
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main06__header .primary {
    font-size: 1.875rem;
  }
}

.Main06__top {
  display: flex;
  padding-top: 7.5em;
}
@media only screen and (max-width: 768px) {
  .Main06__top {
    padding-top: 7em;
    display: block;
  }
}
.Main06__middle {
  width: 100%;
  background-color: #fff;
}
.Main06__middle__top {
  padding: 2% 3% 2% 2%;
  background-color: #fffae7;
}
.Main06__middle__top .primary {
  color: #ffa800;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  font-size: calc(1.2625rem + 0.15vw);
  font-weight: bold;
  display: inline-block;
  padding: 1% 0;
  margin-right: 2%;
}
@media (min-width: 1200px) {
  .Main06__middle__top .primary {
    font-size: 1.375rem;
  }
}
.Main06__middle__top .secondary {
  font-size: 1.0625rem;
  color: #a2a09a;
  letter-spacing: 2px;
}
.Main06__middle__top .tel {
  font-size: calc(1.4375rem + 2.25vw);
  display: inline-block;
  padding-right: 2%;
}
@media (min-width: 1200px) {
  .Main06__middle__top .tel {
    font-size: 3.125rem;
  }
}
.Main06__middle__top .tel a {
  color: #000;
}
.Main06__middle__top .tertiary {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  display: inline-block;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  .Main06__middle__top .tertiary {
    font-size: 1rem;
  }
}
.Main06__middle__top .tap {
  color: #a2a09a;
  font-size: 1.125rem;
  padding-top: 2%;
  display: inherit;
}
@media only screen and (max-width: 768px) {
  .Main06__middle__top .tap {
    font-size: 0.875rem;
  }
}
.Main06__middle__bottom {
  display: flex;
  width: 95%;
  margin-left: 5%;
  background-color: #fff;
  padding: 2%;
  justify-content: center;
}
@media only screen and (max-width: 768px) {
  .Main06__middle__bottom {
    display: flex;
    width: 100%;
    margin-left: 0;
    background-color: #fff;
    padding: 2% 0 2% 2%;
    justify-content: center;
  }
}
.Main06__middle__bottom a {
  display: inline-block;
  margin-right: 3%;
}

.Main07 {
  max-width: 1200px;
  margin: 0 auto 3%;
  font-size: 1.125rem;
  letter-spacing: 1.8px;
}
.Main07__header {
  font-size: calc(1.49375rem + 2.925vw);
  max-width: 825px;
  text-align: center;
  margin: 2% auto;
  color: #ffb400;
  border-bottom: 2px dotted;
  padding-bottom: 1%;
}
@media (min-width: 1200px) {
  .Main07__header {
    font-size: 3.6875rem;
  }
}
.Main07__header .Img {
  max-width: 148px;
  width: 18%;
}
@media only screen and (max-width: 768px) {
  .Main07__top {
    padding: 2% 7% 0;
  }
}

.Main08 {
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 22%;
  margin-bottom: 2%;
  background-image: url(../images/main07_shape01.png);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: left bottom;
}
@media only screen and (max-width: 768px) {
  .Main08 {
    background-size: calc(1.475rem + 24.7vw);
    background-position: center 10px;
    padding-top: calc(1.475rem + 44.7vw);
    padding-left: 0;
  }
}
.Main08__wrapper {
  background-image: url(../images/main07_bg.png), url(../images/main04_bg2.png);
  background-repeat: no-repeat,repeat-y;
  background-size: contain;
  background-position: top center;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper {
    background-position: 0 -84px;
  }
}
.Main08__wrapper.pt2 {
  background-image: url(../images/main04_bg.png), url(../images/main04_bg2.png);
  background-size: auto;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt2 .Head {
    padding: 0em 1em 0em 2em;
    margin-bottom: 2em;
  }
}
.Main08__wrapper.pt3 .Main08 {
  max-width: 1050px;
  padding-left: 18%;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt3 .Main08 {
    background-position: center 42px;
    padding-left: 0;
  }
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt3 .Main08__top {
    text-align: center;
  }
}
.Main08__wrapper.pt3 .Main08__top .Head {
  padding: 0 34px;
  margin-left: 3em;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt3 .Main08__top .Head {
    float: none;
    margin-left: unset;
    padding: 0px 2%;
    margin-top: 2em;
    margin-bottom: 1em;
  }
}
.Main08__wrapper.pt3 .Main08__top .Foot {
  float: none;
  background-position: 10% 50%,90% 50%;
}
.Main08__wrapper.pt3 .Main08__middle .primary {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt3 .Main08__middle .primary {
    display: block;
  }
}
.Main08__wrapper.pt3 .Main08__middle .secondary {
  margin-right: 0.3em;
}
.Main08__wrapper.pt3 .Main08__middle .tertiary .tap {
  font-weight: normal;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt3 .Main08__middle .tertiary .tap {
    font-size: 0.875rem;
  }
}
.Main08__wrapper.pt3 .Main08__middle .Middle {
  text-align: right;
}
.Main08__wrapper.pt4 .Main08 {
  background: none;
  position: relative;
  padding-bottom: 3.5em;
  padding-top: 3em;
  max-width: 1045px;
  padding-left: 19em;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt4 .Main08 {
    padding-left: 0;
    padding-bottom: 0;
    padding-top: calc(1.475rem + 34.7vw);
  }
}
.Main08__wrapper.pt4 .Main08__top {
  padding-top: 0%;
  padding-bottom: 4%;
}
.Main08__wrapper.pt4 .Main08__top .Foot {
  float: right;
  margin: 0;
  background-position: 10% 50%,90% 50%;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt4 .Main08__top .Foot {
    padding-top: 0;
    float: none;
    margin: 2% auto;
  }
}
.Main08__wrapper.pt4 .Main08__middle .primary {
  justify-content: center;
  align-items: baseline;
}
.Main08__wrapper.pt4 .Main08__middle .primary .tel a {
  font-size: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .Main08__wrapper.pt4 .Main08__middle .primary .tel a {
    font-size: 1.875rem;
  }
}
.Main08__wrapper.pt4 .Main08__middle .secondary {
  font-size: 1.25rem;
}
.Main08__wrapper.pt4 .Main08__middle .tertiary {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt4 .Main08__middle .tertiary {
    font-size: 0.8125rem;
  }
}
.Main08__wrapper.pt4 .Main08 .Img {
  position: absolute;
  width: auto;
  left: 0;
  bottom: 0;
}
@media only screen and (max-width: 768px) {
  .Main08__wrapper.pt4 .Main08 .Img {
    max-width: calc(1.475rem + 19.7vw);
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    top: 10px;
  }
}
.Main08__top {
  padding-top: 10%;
}
@media only screen and (max-width: 768px) {
  .Main08__top {
    padding-top: 0;
  }
}
.Main08__top .Head {
  text-shadow: 1px -3px 0px white, 1px 3px 0px white, -1px -3px 0px white, -2px 3px 0px white;
  font-size: calc(1.275rem + 0.3vw);
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  text-align: center;
  background-image: url(../images/main07_icon04.png), url(../images/main07_shap03.png);
  background-repeat: no-repeat,no-repeat;
  background-size: auto;
  background-position: left bottom,right bottom;
  display: inline-block;
  padding: 0 57px;
}
@media (min-width: 1200px) {
  .Main08__top .Head {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main08__top .Head {
    padding: 0;
    text-align: center;
    background: left top,right top;
    width: 100%;
  }
}
.Main08__top .Middle {
  clear: both;
  padding-top: 2%;
  text-align: center;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
.Main08__top .Foot {
  font-size: calc(1.3125rem + 0.75vw);
  background-color: #f40202;
  border-radius: 20px;
  min-height: 90px;
  color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90%;
  box-shadow: 5px 5px #934725;
  background-image: url(../images/main07_icon01.png), url(../images/main07_icon02.png);
  background-repeat: no-repeat,no-repeat;
  background-size: auto;
  background-position: 16% 50%,83% 50%;
  margin: 4% 8% 0% 0;
}
@media (min-width: 1200px) {
  .Main08__top .Foot {
    font-size: 1.875rem;
  }
}
.Main08__top .Foot a {
  color: #fff;
}
@media only screen and (max-width: 768px) {
  .Main08__top .Foot a {
    font-size: calc(1.26875rem + 0.225vw);
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main08__top .Foot a {
    font-size: 1.4375rem;
  }
}

@media only screen and (max-width: 768px) {
  .Main08__top .Foot {
    margin: 3% 0;
    background-position: 5% 50%,95% 50%;
    padding: 0 10%;
    margin-right: auto;
    width: 68%;
    min-width: 310px;
    background-size: 10%,10%;
    margin-left: auto;
  }
}
.Main08__top .Foot.pt2 {
  margin: 0 auto;
}
.Main08__top .red {
  color: #f40202;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .Main08__top .red {
    font-size: 2rem;
  }
}
.Main08__middle {
  clear: both;
}
.Main08__middle .primary {
  display: flex;
  align-items: center;
  color: #f40202;
  font-size: 1.125rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Main08__middle .primary {
    text-align: center;
    display: block;
    font-size: 1rem;
    line-height: 1;
    margin-top: 1em;
    padding-top: 4vw;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .Main08__middle .primary {
    margin-top: 0;
    padding-top: 0;
  }
}

.Main08__middle .secondary {
  color: #000;
  font-size: calc(1.2875rem + 0.45vw);
  font-weight: 400;
  margin: 0 2%;
}
@media (min-width: 1200px) {
  .Main08__middle .secondary {
    font-size: 1.625rem;
  }
}
.Main08__middle .tel {
  font-size: calc(1.475rem + 2.7vw);
}
.Main08__middle .tel a {
  color: #000;
}
@media (min-width: 1200px) {
  .Main08__middle .tel {
    font-size: 3.5rem;
  }
}
.Main08__middle .tertiary {
  text-align: right;
  font-size: 1.125rem;
  margin-right: 8%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Main08__middle .tertiary {
    margin-right: 0%;
    text-align: center;
  }
}
.Main08__middle .tertiary .tap {
  color: #f40202;
}
@media only screen and (max-width: 768px) {
  .Main08__middle .tertiary .tap {
    font-size: 0.875rem;
  }
}

.Main09 {
  max-width: 1200px;
  margin: 0 auto;
}
.Main09__header {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  padding: 1em 0;
  text-align: center;
  background-image: url(../images/main08_bg.png);
  background-repeat: no-repeat;
  background-position: 46vw;
}
@media only screen and (max-width: 768px) {
  .Main09__header {
    background-position: right -11% bottom;
    background-size: 36vw;
    margin-bottom: 4em;
    padding-bottom: 4em;
    padding-top: 1em;
  }
}
.Main09__header__wrapper {
  background-color: #eee;
}
.Main09__header__top {
  font-size: calc(1.3125rem + 0.75vw);
  padding-right: 25%;
}
@media (min-width: 1200px) {
  .Main09__header__top {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main09__header__top {
    padding-right: 10%;
  }
}
.Main09__header__middle {
  font-size: calc(1.64375rem + 4.725vw);
  padding-right: 25%;
}
@media (min-width: 1200px) {
  .Main09__header__middle {
    font-size: 5.1875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main09__header__middle {
    padding-right: 0%;
  }
}
.Main09__header__middle .to {
  font-size: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  .Main09__header__middle .to {
    font-size: 3rem;
  }
}
.Main09__header__middle .primary {
  background-color: #18a8f0;
  color: #fff;
  padding: 0% 0.5em;
  border: 3px solid #fff;
  border-radius: 27px;
}
.Main09__header__middle .secondary {
  background-color: #6dbf16;
  color: #fff;
  padding: 0% 0.5em;
  border: 3px solid #fff;
  border-radius: 27px;
}
.Main09__header__bottom {
  font-size: calc(1.425rem + 2.1vw);
  padding-right: 25%;
}
@media (min-width: 1200px) {
  .Main09__header__bottom {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main09__header__bottom {
    padding-right: 10%;
  }
}
.Main09__top ul {
  counter-reset: cp_clist;
  list-style-type: none;
  position: relative;
  border: 3px dotted #18a8f0;
  padding: 3em 0.5em 1em 3em;
  margin-top: 4%;
}
@media only screen and (max-width: 768px) {
  .Main09__top ul {
    padding: 3em 0.5em 1em 1em;
  }
}
.Main09__top li.title {
  font-size: calc(1.3125rem + 0.75vw);
  position: absolute;
  top: -10px;
  left: -43px;
  background-color: #18a8f0;
  color: #fff;
  padding: 0% 1em;
  border-radius: 7px;
  transform: rotate(-12deg);
  z-index: 1;
}
@media (min-width: 1200px) {
  .Main09__top li.title {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main09__top li.title {
    left: 0px;
  }
}
.Main09__top li.num {
  font-size: 1.25rem;
  font-weight: 400;
  position: relative;
  padding-left: 30px;
  padding: 0 0.5em 0 36px;
  margin-bottom: 0;
}
.Main09__top li.num span {
  content: url(../images/main08_03.png);
  padding: 0 0.5em 0 0.5em;
}
.Main09__top li.num::before {
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 0;
  counter-increment: cp_clist;
  content: counter(cp_clist);
  padding: 0 0.2em 0 0.2em;
  background: #18a8f0;
  color: #fff;
  font-weight: bold;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  line-height: 27px;
  text-align: center;
  transform: translateY(-50%);
}
.Main09__top .pic {
  max-width: 410px;
  position: absolute;
  right: 0;
  top: -7%;
  width: 35%;
}
.Main09__middle ul {
  counter-reset: cp_clist;
  list-style-type: none;
  position: relative;
  border: 3px dotted #6dbf16;
  padding: 3em 0.5em 1em 3em;
  margin-top: 4%;
  margin-bottom: 5%;
}
@media only screen and (max-width: 768px) {
  .Main09__middle ul {
    margin-top: 10%;
    padding: 3em 0.5em 1em 1em;
  }
}
.Main09__middle li.title {
  font-size: calc(1.3125rem + 0.75vw);
  position: absolute;
  top: -10px;
  left: -43px;
  background-color: #6dbf16;
  color: #fff;
  padding: 0% 1em;
  border-radius: 7px;
  transform: rotate(-12deg);
  z-index: 1;
}
@media (min-width: 1200px) {
  .Main09__middle li.title {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main09__middle li.title {
    left: 0px;
  }
}
.Main09__middle li.num {
  font-size: 1.25rem;
  font-weight: 400;
  position: relative;
  padding-left: 30px;
  padding: 0 0.5em 0 36px;
  margin-bottom: 0;
  margin-left: 32%;
}
@media only screen and (max-width: 768px) {
  .Main09__middle li.num {
    margin-left: 0;
  }
}
.Main09__middle li.num span {
  content: url(../images/main08_03.png);
  padding: 0 0.5em 0 0.5em;
}
.Main09__middle li.num::before {
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 0;
  counter-increment: cp_clist;
  content: counter(cp_clist);
  padding: 0 0.2em 0 0.2em;
  background: #6dbf16;
  color: #fff;
  font-weight: bold;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  line-height: 27px;
  text-align: center;
  transform: translateY(-50%);
}
.Main09__middle .pic {
  max-width: 410px;
  position: absolute;
  left: -17px;
  bottom: -17%;
  width: 35%;
}
@media only screen and (max-width: 768px) {
  .Main09__middle .pic {
    max-width: 410px;
    position: absolute;
    right: 0;
    top: -7%;
    width: 35%;
    left: unset;
  }
}
.Main09__bottom {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  font-size: calc(1.3625rem + 1.35vw);
  text-align: center;
  margin: 3% 0;
}
@media (min-width: 1200px) {
  .Main09__bottom {
    font-size: 2.375rem;
  }
}

.Main10 {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3% 0 5%;
}
.Main10__wrapper {
  background-image: url(../images/main09_bg01.png);
  background-repeat: no-repeat;
  background-position: top center;
}
@media only screen and (max-width: 768px) {
  .Main10__wrapper {
    background-repeat: repeat-y;
  }
}
.Main10__top {
  color: white;
  text-align: center;
}
.Main10__top .Head {
  font-size: calc(1.35625rem + 1.275vw);
}
@media (min-width: 1200px) {
  .Main10__top .Head {
    font-size: 2.3125rem;
  }
}
.Main10__top .Foot {
  font-size: calc(1.6875rem + 5.25vw);
}
@media (min-width: 1200px) {
  .Main10__top .Foot {
    font-size: 5.625rem;
  }
}
.Main10__main__list {
  width: 100%;
  margin: 0 0 5% 0;
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(auto-fit, minmax(29%, 1fr));
  padding-left: 0;
}
@media only screen and (max-width: 768px) {
  .Main10__main__list {
    gap: 7px;
    grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
  }
}
.Main10__main__item {
  background-color: white;
  padding: 0.5em;
}
.Main10__main__item .Head {
  font-size: calc(1.26875rem + 0.225vw);
  background-color: #ffcc00;
  text-align: center;
  color: #000;
  padding: 0.25em 0.25em;
}
@media (min-width: 1200px) {
  .Main10__main__item .Head {
    font-size: 1.4375rem;
  }
}
.Main10__main__item .Foot {
  font-size: 1.125rem;
  text-align: center;
  color: #000;
  padding: 0.75em 0 0.25em;
  font-weight: 400;
}
@media only screen and (max-width: 768px) {
  .Main10__main__item .Foot {
    font-size: 0.9375rem;
  }
}

.Main11 {
  max-width: 1200px;
  margin: 0 auto;
}
.Main11__main__item .Head {
  font-size: calc(1.3125rem + 0.75vw);
  margin-bottom: 0.5em;
}
@media (min-width: 1200px) {
  .Main11__main__item .Head {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main11__main__item .Head {
    line-height: 1;
    text-align: center;
  }
}
.Main11__main__item .Head span {
  font-size: calc(1.3625rem + 1.35vw);
  color: #f40202;
}
@media (min-width: 1200px) {
  .Main11__main__item .Head span {
    font-size: 2.375rem;
  }
}
.Main11__main__item .Head img {
  width: auto;
  vertical-align: middle;
  margin-right: 0.5em;
}
.Main11__main__item:nth-child(odd) .Head {
  padding-top: 2em;
}
.Main11__main__item .Foot {
  font-size: 1.125rem;
  line-height: 2em;
  font-weight: 400;
}
@media only screen and (max-width: 768px) {
  .Main11__main__item .Foot {
    padding: 0 1em;
  }
}
.Main11__main__item .Img {
  float: left;
  width: auto;
  max-width: 100%;
  margin: 0 1.5em 1.5em 0;
}
@media only screen and (max-width: 768px) {
  .Main11__main__item .Img {
    max-width: 100%;
    margin: 0 auto;
    display: block;
    float: none;
  }
}
@media only screen and (max-width: 768px) {
  .Main11__main__item.rv > div {
    text-align: center;
  }
  .Main11__main__item.rv > div > span {
    position: relative;
    display: inline-block;
    margin-top: 60px;
  }
  .Main11__main__item.rv .number {
    position: absolute;
    top: -50px;
    left: -3px;
  }
}
.Main11__main__item.rv .Img {
  float: right;
  margin: 0 0 1.5em 1.5em;
}
@media only screen and (max-width: 768px) {
  .Main11__main__item.rv .Img {
    float: none;
    margin: 0 auto;
    display: inline;
  }
}
.Main11__main__item.float img {
  float: left;
}
@media only screen and (max-width: 768px) {
  .Main11__main__item.float img {
    float: none;
  }
}
.Main11__main__item.float {
  line-height: 1.6;
}

.Main12 {
  max-width: 1200px;
  margin: 0 auto;
}
.Main12__wrapper {
  background-color: #fff6d2;
  padding-bottom: 1em;
}
.Main12__top {
  text-align: center;
  padding: 3%;
}
.Main12__top .Head {
  font-size: calc(1.3125rem + 0.75vw);
  color: #fff;
  background-color: #ffcc00;
  width: 33%;
  text-align: center;
  border-radius: 9px;
  display: inline-block;
  padding: 0 0.5em;
  margin-right: 3%;
  position: relative;
}
@media (min-width: 1200px) {
  .Main12__top .Head {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main12__top .Head {
    width: 90%;
    max-width: 342px;
  }
}
.Main12__top .Head::after {
  content: url(../images/main09_bg.png);
  position: absolute;
  bottom: -24px;
  right: 2%;
}
.Main12__top .Foot {
  font-size: calc(1.5625rem + 3.75vw);
  display: inline-block;
}
@media (min-width: 1200px) {
  .Main12__top .Foot {
    font-size: 4.375rem;
  }
}
.Main12__main__list {
  width: 100%;
  display: grid;
  gap: 39px;
  grid-template-columns: repeat(auto-fit, minmax(46%, 1fr));
  padding-left: 0;
}
@media only screen and (max-width: 768px) {
  .Main12__main__list {
    gap: 1em;
    grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
  }
}
.Main12__main__list li {
  max-width: 530px;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .Main12__main__list li {
    margin: 0 auto;
  }
}
.Main12__item__top {
  width: 88%;
}
.Main12__item__bottom {
  background-color: #fff;
  padding: 1em;
  min-height: 10em;
  position: relative;
  z-index: 1;
  width: 88%;
  margin-left: 12%;
  margin-top: -10%;
}
.Main12__item__bottom .Head {
  font-size: 1.1875rem;
  line-height: 1.4;
}
.Main12__item__bottom .Foot {
  font-weight: 400;
}

.Main13 {
  max-width: 1200px;
  margin: 0 auto;
}
.Main13__header {
  background-image: url(../images/main12_bg01.png);
  padding-top: 0%;
  background-repeat: no-repeat;
  background-position: bottom;
  background-color: #fff6d2;
  font-size: calc(1.43125rem + 2.175vw);
  text-shadow: -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, 1px 1px 0px white, 2px 2px 0px white;
}
@media (min-width: 1200px) {
  .Main13__header {
    font-size: 3.0625rem;
  }
}
.Main13__header__inner {
  max-width: 1200px;
  margin: 0 auto;
  background-image: url(../images/main12_bg01_1.png);
  background-repeat: no-repeat;
  padding-top: 7vw;
  text-align: center;
  min-height: 14vw;
  display: flex;
  align-items: center;
  background-position: right bottom;
  background-size: 15%;
}
@media only screen and (max-width: 768px) {
  .Main13__header__inner {
    padding: 2% 1.8em 1% 1%;
    justify-content: center;
    background-size: 2.6em;
    line-height: 1.3;
    font-size: calc(1.3375rem + 1.05vw);
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main13__header__inner {
    font-size: 2.125rem;
  }
}

.Main13__top {
  padding: 5% 0;
}
.Main13__top dl {
  border-bottom: 1px solid;
  padding-left: 116px;
  background-repeat: no-repeat;
  background-position: left 30px;
}
@media only screen and (max-width: 768px) {
  .Main13__top dl {
    background-size: 5em;
    padding-left: 6em;
    background-position: 0.5em 4px;
    padding-top: 0.5em;
  }
}
.Main13__top dl:nth-child(1) {
  background-image: url(../images/q1.png);
}
.Main13__top dl:nth-child(2) {
  background-image: url(../images/q2.png);
}
.Main13__top dl:nth-child(3) {
  background-image: url(../images/q3.png);
}
.Main13__top dt {
  font-size: calc(1.3rem + 0.6vw);
  line-height: 4.3;
}
@media (min-width: 1200px) {
  .Main13__top dt {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main13__top dt {
    line-height: 1.6;
    font-size: 1.1875rem;
  }
}
.Main13__top dd {
  font-size: 1.125rem;
  font-weight: 400;
  padding-bottom: 2%;
}
.Main13__middle {
  border: 7px dotted #18a8f0;
  position: relative;
  padding: 3.5em 3em;
  margin-bottom: 5%;
  margin-top: 6%;
}
@media only screen and (max-width: 768px) {
  .Main13__middle {
    padding: 5.5em 1em 3em;
    margin-top: 10%;
  }
}
.Main13__middle__head {
  width: 68%;
  display: inline-block;
  background-color: #18a8f0;
  color: #fff100;
  border-radius: 82px;
  padding: 1em 0;
  position: absolute;
  font-size: calc(1.3125rem + 0.75vw);
  text-align: center;
  top: -1.8em;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
@media (min-width: 1200px) {
  .Main13__middle__head {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main13__middle__head {
    width: 95%;
    padding: 0.2em 0;
    line-height: 1.2;
  }
}
.Main13__middle__head span {
  color: #fff;
}
.Main13__middle__primary dt {
  font-size: calc(1.28125rem + 0.375vw);
  color: #18a8f0;
  line-height: 2.3;
}
@media (min-width: 1200px) {
  .Main13__middle__primary dt {
    font-size: 1.5625rem;
  }
}
.Main13__middle__primary dd {
  font-weight: normal;
  font-size: 1.125rem;
}
.Main13__middle__secondary dt {
  font-size: calc(1.28125rem + 0.375vw);
  color: #f40202;
  padding-top: 2em;
  line-height: 2.3;
}
@media (min-width: 1200px) {
  .Main13__middle__secondary dt {
    font-size: 1.5625rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main13__middle__secondary dt {
    line-height: 1.3;
  }
}
.Main13__middle__secondary dd {
  font-weight: normal;
  font-size: 1.125rem;
}

.Main14 {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}
.Main14__wrapper {
  background-image: url(../images/main05_bgline.png);
  background-position: bottom;
  border-top: 10px solid #6dbf16;
  margin-top: 10px;
  background-repeat: no-repeat;
}
.Main14__header {
  max-width: 850px;
  margin: 0 auto 2%;
  width: 70%;
  background-color: #6dbf16;
  color: #fff;
  border-radius: 0 0 8px 8px;
  padding: 2%;
  font-size: calc(1.45625rem + 2.475vw);
}
@media (min-width: 1200px) {
  .Main14__header {
    font-size: 3.3125rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main14__header {
    font-size: calc(1.4rem + 1.8vw);
    width: 80%;
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main14__header {
    font-size: 2.75rem;
  }
}

.Main14__header span {
  font-size: calc(1.26875rem + 0.225vw);
  display: inline-block;
}
@media (min-width: 1200px) {
  .Main14__header span {
    font-size: 1.4375rem;
  }
}
.Main14__header__sub {
  font-size: calc(1.35625rem + 1.275vw);
  background: linear-gradient(transparent 60%, #fff100 60%);
  display: inline;
}
@media (min-width: 1200px) {
  .Main14__header__sub {
    font-size: 2.3125rem;
  }
}
.Main14__main {
  display: flex;
}
@media only screen and (max-width: 768px) {
  .Main14__main {
    flex-direction: column;
  }
}
.Main14__main__item {
  background-size: contain;
  background-repeat: no-repeat;
  padding: 3%;
  min-height: 427px;
  width: 33%;
  margin-top: 2.5%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  .Main14__main__item {
    width: 100%;
    padding-top: 30px;
    margin: 0 auto;
    background-size: 100%;
  }
}
.Main14__main__item:nth-child(1) {
  background-image: url(../images/main13_01.png);
  max-width: 370px;
  text-indent: -26px;
}
.Main14__main__item:nth-child(2) {
  max-width: 350px;
  background-image: url(../images/main13_02.png);
}
.Main14__main__item:nth-child(3) {
  max-width: 343px;
  background-image: url(../images/main13_03.png);
}

.Main15 {
  max-width: 1200px;
  margin: 0 auto;
}
.Main15__wrapper {
  background-image: url(../images/main14_bg.png);
  background-repeat: no-repeat;
}
.Main15__header {
  text-align: center;
  font-size: calc(1.39375rem + 1.725vw);
  padding: 3% 0;
}
@media (min-width: 1200px) {
  .Main15__header {
    font-size: 2.6875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main15__header {
    font-size: calc(1.26875rem + 0.225vw);
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main15__header {
    font-size: 1.4375rem;
  }
}

.Main15__header .green {
  font-size: calc(1.45rem + 2.4vw);
  color: #6dbf16;
}
@media (min-width: 1200px) {
  .Main15__header .green {
    font-size: 3.25rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main15__header .green {
    font-size: calc(1.35625rem + 1.275vw);
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main15__header .green {
    font-size: 2.3125rem;
  }
}

.Main15__header .small {
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .Main15__header .small {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main15__header .small {
    font-size: 1rem;
  }
}
.Main15__header__foot {
  background-color: #6dbf16;
  color: #fff;
  font-size: calc(1.3125rem + 0.75vw);
  position: relative;
  text-align: center;
}
@media (min-width: 1200px) {
  .Main15__header__foot {
    font-size: 1.875rem;
  }
}
.Main15__header__foot::after {
  content: "";
  position: absolute;
  bottom: -2vw;
  left: 43%;
  border: 1vw solid transparent;
  border-top: 1.5vw solid #6dbf16;
  z-index: 2;
}
.Main15__top ul {
  counter-reset: cp_clist;
  list-style-type: none;
  position: relative;
  margin-top: 4%;
  display: flex;
  justify-content: center;
  align-content: center;
}
@media only screen and (max-width: 768px) {
  .Main15__top ul {
    flex-direction: column;
  }
}
.Main15__top li.num {
  font-size: calc(1.275rem + 0.3vw);
  position: relative;
  padding-left: 30px;
  padding: 0.5em 0.5em 0.5em 3em;
  margin-bottom: 0;
  display: inline-block;
  width: 25%;
  background-color: #fff;
  border: 2px solid #6dbf16;
  border-radius: 13px;
  max-width: 325px;
  margin-right: 20px;
  line-height: 1.3;
  display: flex;
  align-items: center;
}
@media (min-width: 1200px) {
  .Main15__top li.num {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 993px) {
  .Main15__top li.num:last-child {
    margin-right: 0;
  }
}
@media only screen and (max-width: 768px) {
  .Main15__top li.num {
    width: 90%;
    margin: 0 auto 2%;
    height: auto;
    font-size: 1rem;
  }
}
.Main15__top li.num::before {
  position: absolute;
  display: inline-block;
  top: 50%;
  left: 0;
  counter-increment: cp_clist;
  content: counter(cp_clist);
  padding: 0 0.2em 0 0.2em;
  background: #ffcc00;
  color: #fff;
  font-weight: bold;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  line-height: 26px;
  text-align: center;
  transform: translateY(-50%);
  margin-left: 20px;
}
.Main15__middle {
  margin: 5% 0;
}
.Main15__bottom ul {
  counter-reset: cp_clist;
  list-style-type: none;
  position: relative;
  border: 3px dotted #ffcc00;
  padding: 3em 0.5em 1em 2em;
  margin: 4% auto;
  width: 77%;
}
@media only screen and (max-width: 768px) {
  .Main15__bottom ul {
    padding: 3em 0.5em 1em 0em;
    width: 90%;
  }
}
.Main15__bottom li.title {
  font-size: calc(1.3125rem + 0.75vw);
  position: absolute;
  top: -10px;
  left: -43px;
  background-color: #ffcc00;
  color: #000;
  padding: 0% 1em;
  border-radius: 7px;
  transform: rotate(-12deg);
  z-index: 1;
}
@media (min-width: 1200px) {
  .Main15__bottom li.title {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main15__bottom li.title {
    left: 0px;
  }
}
.Main15__bottom li.num {
  font-size: 1.25rem;
  font-weight: 400;
  padding-left: 30px;
  padding: 0 0.5em 0 36px;
  margin-bottom: 0;
}
.Main15__bottom li.num span {
  content: url(../images/main08_03.png);
  padding: 0 0.5em 0 0.5em;
}
.Main15__bottom li.Foot {
  font-size: 1.25rem;
  font-weight: 400;
  padding-left: 30px;
  padding: 0 0.5em 0 36px;
  margin-bottom: 0;
  text-align: right;
}
.Main15__Foot {
  background-color: #6dbf16;
  border-radius: 7px;
  padding: 3px;
  width: 77%;
  margin: 5% auto;
  text-align: center;
  color: #fff;
}
@media only screen and (max-width: 768px) {
  .Main15__Foot {
    width: 82%;
  }
}
.Main15__Foot__inner {
  border: 2px solid #fff;
  border-radius: 7px;
  font-size: calc(1.2875rem + 0.45vw);
  padding: 2%;
}
@media (min-width: 1200px) {
  .Main15__Foot__inner {
    font-size: 1.625rem;
  }
}
.Main15__Foot__inner span {
  font-size: calc(1.3375rem + 1.05vw);
}
@media (min-width: 1200px) {
  .Main15__Foot__inner span {
    font-size: 2.125rem;
  }
}

.Main16 {
  padding: 0 1%;
  position: relative;
  line-height: 1;
}
.Main16__wrapper {
  background-repeat: no-repeat;
}
.Main16__middle {
  width: 94%;
  margin-left: 3%;
  margin-right: 3%;
  background-color: #fff;
  padding-top: 2%;
  margin-top: -2%;
  position: relative;
  z-index: 0;
}
.Main16__middle__top {
  padding: 2% 3% 2% 23%;
  background-color: #fffae7;
}
@media only screen and (max-width: 768px) {
  .Main16__middle__top {
    padding: 2% 0% 2% 10vw;
    text-align: center;
  }
}
.Main16__middle__top .primary {
  color: #ffa800;
  font-size: calc(1.2625rem + 0.15vw);
  font-weight: bold;
  display: inherit;
  padding: 1% 0;
}
@media (min-width: 1200px) {
  .Main16__middle__top .primary {
    font-size: 1.375rem;
  }
}
.Main16__middle__top .secondary {
  font-size: 1.0625rem;
  color: #a2a09a;
  letter-spacing: 2px;
}
.Main16__middle__top .tel {
  font-size: calc(1.4375rem + 2.25vw);
  display: inline-block;
  padding-right: 2%;
}
@media (min-width: 1200px) {
  .Main16__middle__top .tel {
    font-size: 3.125rem;
  }
}
.Main16__middle__top .tel a {
  color: #000;
}
.Main16__middle__top .tertiary {
  display: inline-block;
  font-size: 1.125rem;
  font-weight: 400;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
.Main16__middle__top .tap {
  color: #a2a09a;
  font-size: 1.125rem;
  padding-top: 2%;
  display: inherit;
  font-weight: 400;
}
@media only screen and (max-width: 768px) {
  .Main16__middle__top .tap {
    font-size: 0.875rem;
  }
}
.Main16__middle__bottom {
  display: flex;
  width: 95%;
  margin-left: 5%;
  background-color: #fff;
  padding: 2% 7% 2% 17%;
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  .Main16__middle__bottom {
    width: 100%;
    margin-left: 0%;
    padding: 2% 0% 2% 10%;
  }
}
.Main16__middle__bottom a {
  display: inline-block;
  margin-right: 3%;
}
.Main16__left {
  max-width: 252px;
  position: absolute;
  bottom: -1px;
  width: 21vw;
  z-index: 2;
  left: 0;
}

.Main17 {
  max-width: 1200px;
  margin: 0 auto;
}
.Main17__header {
  background-image: url(../images/main12_bg01.png);
  padding-top: 0%;
  background-repeat: no-repeat;
  background-position: bottom;
  font-size: calc(1.39375rem + 1.725vw);
  text-shadow: -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, 1px 1px 0px white, 2px 2px 0px white;
}
@media (min-width: 1200px) {
  .Main17__header {
    font-size: 2.6875rem;
  }
}
.Main17__header__inner {
  max-width: 1200px;
  margin: 0 auto;
  background-image: url(../images/main15_bg.png);
  background-repeat: no-repeat;
  padding-top: 2.5em;
  background-position: right bottom;
  background-size: auto;
  min-height: 4.5em;
}
@media only screen and (max-width: 768px) {
  .Main17__header__inner {
    padding: 6% 2.4em 0 1%;
    justify-content: center;
    background-size: 4em;
    line-height: 1.3;
    font-size: 22px;
    font-size: calc(1.2625rem + 0.15vw);
    text-align: center;
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main17__header__inner {
    font-size: 1.375rem;
  }
}

.Main17__top {
  padding: 5% 0;
}
.Main17__top dl {
  border-bottom: 1px solid;
  padding-left: 116px;
  background-repeat: no-repeat;
  background-position: left 30px;
}
@media only screen and (max-width: 768px) {
  .Main17__top dl {
    background-size: 5em;
    padding-left: 6em;
    background-position: 0.5em 4px;
  }
}
.Main17__top dl:nth-child(1) {
  background-image: url(../images/q1.png);
}
.Main17__top dl:nth-child(2) {
  background-image: url(../images/q2.png);
}
.Main17__top dl:nth-child(3) {
  background-image: url(../images/q3.png);
}
.Main17__top dl:nth-child(4) {
  background-image: url(../images/q4.png);
}
.Main17__top dt {
  font-size: calc(1.3rem + 0.6vw);
  line-height: 4.3;
}
@media (min-width: 1200px) {
  .Main17__top dt {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main17__top dt {
    line-height: 1.6;
    font-size: 1.1875rem;
  }
}
.Main17__top dd {
  font-size: 1.125rem;
  font-weight: 400;
  padding-bottom: 2%;
}
.Main17__middle {
  border: 7px dotted #6dbf16;
  position: relative;
  padding: 3.5em 3em;
  margin-bottom: 5%;
  margin-top: 6%;
}
@media only screen and (max-width: 768px) {
  .Main17__middle {
    padding: 5.5em 1em 3em;
    margin-top: 10%;
  }
}
.Main17__middle__head {
  width: 68%;
  display: inline-block;
  background-color: #6dbf16;
  color: #fff100;
  border-radius: 82px;
  padding: 1em 0;
  position: absolute;
  font-size: calc(1.3125rem + 0.75vw);
  text-align: center;
  top: -1.8em;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
@media (min-width: 1200px) {
  .Main17__middle__head {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main17__middle__head {
    width: 80%;
    padding: 0.2em 0;
    line-height: 1.2;
  }
}
.Main17__middle__head span {
  color: #fff;
}
.Main17__middle__primary dt {
  font-size: calc(1.28125rem + 0.375vw);
  color: #6dbf16;
  line-height: 2.3;
}
@media (min-width: 1200px) {
  .Main17__middle__primary dt {
    font-size: 1.5625rem;
  }
}
.Main17__middle__primary dd {
  font-weight: normal;
  font-size: 1.125rem;
}
.Main17__middle__secondary dt {
  font-size: calc(1.28125rem + 0.375vw);
  color: #f40202;
  padding-top: 2em;
  line-height: 2.3;
}
@media (min-width: 1200px) {
  .Main17__middle__secondary dt {
    font-size: 1.5625rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main17__middle__secondary dt {
    padding-top: 1em;
    line-height: 1.3;
  }
}
.Main17__middle__secondary dd {
  font-weight: normal;
  font-size: 1.125rem;
}

.Main18 {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}
.Main18__wrapper {
  border-top: 10px solid #f40202;
  margin-top: 10px;
}
.Main18__header {
  max-width: 850px;
  margin: 0 auto 2%;
  width: 70%;
  background-color: #f40202;
  color: #fff;
  border-radius: 0 0 8px 8px;
  padding: 2%;
  font-size: calc(1.45625rem + 2.475vw);
}
@media (min-width: 1200px) {
  .Main18__header {
    font-size: 3.3125rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main18__header {
    font-size: calc(1.4rem + 1.8vw);
    width: 80%;
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main18__header {
    font-size: 2.75rem;
  }
}

.Main18__header span {
  font-size: calc(1.26875rem + 0.225vw);
  display: inline-block;
}
@media (min-width: 1200px) {
  .Main18__header span {
    font-size: 1.4375rem;
  }
}
.Main18__header__sub {
  font-size: calc(1.35625rem + 1.275vw);
  background: linear-gradient(transparent 60%, #fff100 60%);
  display: inline;
}
@media (min-width: 1200px) {
  .Main18__header__sub {
    font-size: 2.3125rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main18__header__sub {
    font-size: 1.1875rem;
  }
}
.Main18__header__foot {
  page-break-after: always;
  font-weight: normal;
  text-align: left;
  margin: 3% 7%;
}
.Main18__main {
  display: flex;
  justify-content: space-around;
  align-items: center;
  max-width: 1100px;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  .Main18__main {
    flex-direction: column;
  }
}
.Main18__main__item {
  background-size: contain;
  background-repeat: no-repeat;
  padding: 0.5em 0.3em;
  width: 33%;
  margin-top: 2.5%;
  font-size: 1.125rem;
  border: 2px solid #f40202;
  color: #f40202;
  border-radius: 8px;
  max-width: 250px;
  text-align: center;
  margin-right: 2%;
  line-height: 1.4;
  font-size: 1.125rem;
}
@media only screen and (min-width: 993px) {
  .Main18__main__item:last-child {
    margin-right: 0;
  }
}
.Main18__main__item img {
  max-width: 90px;
  margin: 0 auto 8%;
  width: auto;
  display: block;
}
@media only screen and (max-width: 768px) {
  .Main18__main__item {
    width: 80%;
    padding-top: 6%;
    margin: 0 auto;
    min-height: auto;
  }
}
@media only screen and (max-width: 768px) {
  .Main18__main__arrow {
    transform: rotate(90deg);
  }
}
.Main18__foot {
  padding-top: 83px;
  color: #f40202;
  font-size: calc(1.39375rem + 1.725vw);
  background-image: url(../images/main18_line.png);
  background-repeat: no-repeat;
  background-position: top center;
  margin-bottom: 1em;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media (min-width: 1200px) {
  .Main18__foot {
    font-size: 2.6875rem;
  }
}

.Main19 {
  max-width: 1200px;
  margin: 0 auto;
}
.Main19__header {
  background-image: url(../images/main12_bg01.png);
  padding-top: 0%;
  background-repeat: no-repeat;
  background-position: bottom;
  font-size: calc(1.39375rem + 1.725vw);
  position: relative;
  text-shadow: -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, -1px -1px 0px white, 1px 1px 0px white, 2px 2px 0px white;
  text-align: center;
  margin-top: 3em;
  padding: 0.5em;
}
@media (min-width: 1200px) {
  .Main19__header {
    font-size: 2.6875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main19__header {
    padding: 0.5em 0 0.5em 0.5em;
    margin-top: 0em;
    font-size: calc(1.29375rem + 0.525vw);
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main19__header {
    font-size: 1.6875rem;
  }
}

.Main19__header__inner {
  position: relative;
  padding-right: 4em;
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  .Main19__header__inner {
    padding-right: 2.3em;
  }
}
.Main19__header .Img {
  position: absolute;
  width: auto;
  bottom: -0.5em;
  max-width: 4em;
  right: 0;
}
@media only screen and (max-width: 768px) {
  .Main19__header .Img {
    right: 0;
    max-width: 2.6em;
  }
}
.Main19__top {
  padding: 5% 0;
}
.Main19__top dl {
  border-bottom: 1px solid;
  padding-left: 116px;
  background-repeat: no-repeat;
  background-position: left 30px;
}
@media only screen and (max-width: 768px) {
  .Main19__top dl {
    background-size: 5em;
    padding-left: 6em;
    background-position: 0.5em 4px;
  }
}
.Main19__top dl:nth-child(1) {
  background-image: url(../images/q1.png);
}
.Main19__top dl:nth-child(2) {
  background-image: url(../images/q2.png);
}
.Main19__top dl:nth-child(3) {
  background-image: url(../images/q3.png);
}
.Main19__top dl:nth-child(4) {
  background-image: url(../images/q4.png);
}
.Main19__top dt {
  font-size: calc(1.3rem + 0.6vw);
  line-height: 4.3;
}
@media (min-width: 1200px) {
  .Main19__top dt {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main19__top dt {
    line-height: 1.6;
    font-size: 1.1875rem;
  }
}
.Main19__top dd {
  font-size: 1.125rem;
  font-weight: 400;
  padding-bottom: 2%;
}
.Main19__middle {
  border: 7px dotted #f40202;
  position: relative;
  padding: 3.5em 3em;
  margin-bottom: 5%;
  margin-top: 6%;
  max-width: 1200px;
  margin: 7% auto;
}
@media only screen and (max-width: 768px) {
  .Main19__middle {
    margin-top: 14%;
    padding: 5.5em 1em 3em;
  }
}
.Main19__middle__head {
  width: 68%;
  display: inline-block;
  background-color: #f40202;
  color: #fff100;
  border-radius: 82px;
  padding: 1em 0;
  position: absolute;
  font-size: calc(1.3125rem + 0.75vw);
  text-align: center;
  top: -1.8em;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
@media (min-width: 1200px) {
  .Main19__middle__head {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main19__middle__head {
    width: 80%;
    padding: 0.2em 0;
    line-height: 1.2;
  }
}
.Main19__middle__head span {
  color: #fff;
}
.Main19__middle__primary dt {
  font-size: calc(1.28125rem + 0.375vw);
  color: #6dbf16;
  line-height: 2.3;
}
@media (min-width: 1200px) {
  .Main19__middle__primary dt {
    font-size: 1.5625rem;
  }
}
.Main19__middle__primary dd {
  font-weight: normal;
  font-size: 1.125rem;
}
.Main19__middle__secondary dt {
  font-size: calc(1.28125rem + 0.375vw);
  color: #f40202;
  padding-top: 2em;
  line-height: 2.3;
}
@media (min-width: 1200px) {
  .Main19__middle__secondary dt {
    font-size: 1.5625rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main19__middle__secondary dt {
    line-height: 1.3;
  }
}
.Main19__middle__secondary dd {
  font-weight: normal;
  font-size: 1.125rem;
}
.Main19__middle .primary {
  color: #f40202;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  .Main19__middle .primary {
    text-align: center;
  }
}
.Main19__middle .secondary {
  color: #000;
  font-size: calc(1.2875rem + 0.45vw);
  font-weight: 400;
}
@media (min-width: 1200px) {
  .Main19__middle .secondary {
    font-size: 1.625rem;
  }
}
.Main19__middle .tel {
  color: #000;
  font-size: calc(1.475rem + 2.7vw);
}
@media (min-width: 1200px) {
  .Main19__middle .tel {
    font-size: 3.5rem;
  }
}
.Main19__middle .tertiary {
  font-weight: 400;
  text-align: right;
  font-size: 1.125rem;
  margin-right: 8%;
}
.Main19__middle .tertiary .tap {
  color: #f40202;
}
@media only screen and (max-width: 768px) {
  .Main19 .Main08__top .Foot {
    min-width: 210px;
  }
}

.Main20 {
  max-width: 1100px;
  margin: 0 auto;
  background-color: #ffefb0;
}
.Main20__header {
  display: inline-block;
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 400;
  position: relative;
  padding: 3% 0;
}
@media (min-width: 1200px) {
  .Main20__header {
    font-size: 2.5rem;
  }
}
.Main20__header:before, .Main20__header:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 33%;
  height: 10px;
  background-color: #ffe478;
}
@media only screen and (max-width: 768px) {
  .Main20__header:before, .Main20__header:after {
    width: 20%;
  }
}
.Main20__header:before {
  left: -35%;
}
@media only screen and (max-width: 768px) {
  .Main20__header:before {
    left: -20%;
  }
}
.Main20__header:after {
  right: -35%;
}
@media only screen and (max-width: 768px) {
  .Main20__header:after {
    right: -20%;
  }
}
.Main20__header__wrapper {
  text-align: center;
}
.Main20__main__list {
  counter-reset: cp_clist2;
}
.Main20__item {
  width: 87%;
  background-color: #fff;
  margin: 0 auto 10%;
  padding: 3% 3% 3% 14%;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .Main20__item {
    padding: 3%;
    margin-bottom: 100px;
  }
  .Main20__item:last-child {
    margin-bottom: 3%;
  }
}
.Main20__item__top {
  text-align: center;
}
.Main20__item__top .Head {
  font-size: calc(1.275rem + 0.3vw);
  border-bottom: 1px dotted #aeaeae;
  line-height: 1.8;
  padding-left: 2%;
  text-align: left;
  position: relative;
  padding-top: 1em;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media (min-width: 1200px) {
  .Main20__item__top .Head {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main20__item__top .Head {
    padding-left: 19vw;
    line-height: 1.6;
    font-size: 1.1875rem;
  }
}
.Main20__item__top .Head:before {
  font-size: calc(1.66875rem + 5.025vw);
  position: absolute;
  display: inline-block;
  top: 0.5em;
  left: -1.2em;
  counter-increment: cp_clist2;
  content: "0" counter(cp_clist2);
  color: #ffd93c;
  font-weight: bold;
  line-height: 25px;
  text-align: center;
  transform: translateY(-50%);
  font-size: calc(1.66875rem + 5.025vw);
}
@media (min-width: 1200px) {
  .Main20__item__top .Head:before {
    font-size: 5.4375rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main20__item__top .Head:before {
    top: 50%;
    left: 0;
  }
}
.Main20__item__top .Contact {
  background-color: #f40202;
  border-radius: 20px;
  min-height: 90px;
  color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90%;
  box-shadow: 5px 5px #934725;
  background-image: url(../images/main07_icon01.png), url(../images/main07_icon02.png);
  background-repeat: no-repeat,no-repeat;
  background-size: auto;
  background-position: 16% 50%,83% 50%;
  font-size: calc(1.3125rem + 0.75vw);
  margin: 2% auto 5%;
  text-align: left;
}
.Main20__item__top .Contact a {
  color: #fff;
}
@media only screen and (max-width: 768px) {
  .Main20__item__top .Contact a {
    font-size: 1rem;
  }
}
@media (min-width: 1200px) {
  .Main20__item__top .Contact {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main20__item__top .Contact {
    margin: 3% 0;
    background-position: 4% 50%,96% 50%;
    padding: 0 11%;
    margin-right: auto;
    width: 60%;
    min-width: 229px;
    line-height: 1.6;
    margin-left: auto;
  }
}
.Main20__item__top .Text {
  font-weight: normal;
  margin: 3% 0;
  padding-left: 2%;
  text-align: left;
}
.Main20__item__top ul {
  border: 2px solid #f40202;
  border-radius: 10px;
  display: inline-block;
  padding: 1em;
  text-align: left;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
.Main20__item__top li:first-child {
  color: #f40202;
}
.Main20__item__top li:not(:first-child) {
  text-indent: 2em;
}
.Main20__item__bottom {
  text-align: center;
  position: absolute;
  bottom: -90px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
s
.Main20__item__bottom .Img {
  width: auto;
}
.Main20__middle .primary {
  color: #f40202;
  font-size: 1.125rem;
}
@media only screen and (max-width: 768px) {
  .Main20__middle .primary {
    text-align: center;
    line-height: 1.2;
  }
}
.Main20__middle .secondary {
  color: #000;
  font-size: calc(1.2875rem + 0.45vw);
  font-weight: 400;
}
@media (min-width: 1200px) {
  .Main20__middle .secondary {
    font-size: 1.625rem;
  }
}
.Main20__middle .tel {
  font-size: calc(1.475rem + 2.7vw);
}
@media (min-width: 1200px) {
  .Main20__middle .tel {
    font-size: 3.5rem;
  }
}
.Main20__middle .tel a {
  color: #000;
}
@media only screen and (max-width: 768px) {
  .Main20__middle .tel a {
    line-height: 1.6;
    font-size: calc(1.35rem + 1.2vw);
  }
}
@media only screen and (max-width: 768px) and (min-width: 1200px) {
  .Main20__middle .tel a {
    font-size: 2.25rem;
  }
}

.Main20__middle .tertiary {
  text-align: right;
  font-size: 1.125rem;
  margin-right: 8%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .Main20__middle .tertiary {
    line-height: 1.6;
    font-size: 0.875rem;
  }
}
.Main20__middle .tertiary .tap {
  color: #f40202;
}
@media only screen and (max-width: 768px) {
  .Main20__middle .tertiary .tap {
    font-size: 0.75rem;
  }
}
.Main20__footer {
  padding: 0 4% 4%;
  text-align: center;
  margin: 3% 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
.Main20__footer__top {
  font-size: calc(1.275rem + 0.3vw);
  margin: 3% 0;
  line-height: 2;
}
@media (min-width: 1200px) {
  .Main20__footer__top {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main20__footer__top {
    line-height: 1.6;
    font-size: 1.1875rem;
  }
}
.Main20__footer__middle {
  color: #f40202;
  font-size: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .Main20__footer__middle {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main20__footer__middle {
    line-height: 1.6;
    font-size: 1.1875rem;
  }
}
.Main20__footer__bottom {
  font-size: 1.125rem;
}
.Main20__footer__foot {
  border: 14px solid #fff8db;
  border-radius: 10px;
  background-color: #ffd734;
  margin: 3% 0;
  padding: 3% 0;
}
.Main20__footer__foot .primary {
  text-shadow: 3px -1px 1px white, -3px -1px 1px white, 1px -2px 2px white, -1px 2px 1px white, 1px 1px 1px white, 2px 2px 1px white;
  font-size: calc(1.3125rem + 0.75vw);
  line-height: 2.3;
}
@media (min-width: 1200px) {
  .Main20__footer__foot .primary {
    font-size: 1.875rem;
  }
}
.Main20__footer__foot .secondary {
  font-size: calc(1.2625rem + 0.15vw);
  display: block;
  font-weight: 400;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: bold;
}
@media (min-width: 1200px) {
  .Main20__footer__foot .secondary {
    font-size: 1.375rem;
  }
}
.Main20__footer__foot .secondary .small {
  font-size: 1.125rem;
  display: block;
}

.Main21 {
  margin: 0 auto;
  max-width: 1200px;
}
.Main21__header {
  font-size: calc(1.5rem + 3vw);
  background-image: url(../images/main25head.png);
  background-repeat: no-repeat;
  background-position: top center;
  min-height: 4.5em;
  background-size: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 1200px) {
  .Main21__header {
    font-size: 3.75rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main21__header {
    background-position: bottom center;
    min-height: 4em;
    text-align: center;
  }
}
.Main21 input[type="submit"] {
  font-size: calc(1.35rem + 1.2vw);
  font-weight: normal;
  background-color: #f40202;
  border-radius: 20px;
  min-height: 90px;
  color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30%;
  box-shadow: 5px 5px #934725;
  background-position: 16% 50%,83% 50%;
  margin: 2% auto 5%;
  border: none;
}
@media (min-width: 1200px) {
  .Main21 input[type="submit"] {
    font-size: 2.25rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main21 input[type="submit"] {
    min-height: 40px;
  }
}
.Main21 input[type="checkbox"] {
  border: 1px solid #c6c6c6;
  background: #ececec;
  color: #555;
  clear: none;
  cursor: pointer;
  display: inline-block;
  line-height: 0;
  outline: 0;
  padding: 0 !important;
  text-align: center;
  vertical-align: middle;
  width: 35px;
  height: 33px;
  -webkit-appearance: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  -webkit-transition: .05s border-color ease-in-out;
  transition: .05s border-color ease-in-out;
  border-radius: 4px;
  margin-right: 10px;
}
.Main21 input[type=checkbox]:checked:before {
  content: url(../images/checkmark.png);
  margin: 5px 0 0 5px;
}
.Main21 input[type=checkbox]:checked:before, .Main21 input[type=radio]:checked:before {
  float: left;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  font: 400 21px/1 dashicons;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.Main21 > div input[type="text"], .Main21 > div input[type="tel"], .Main21 > div input[type="email"], .Main21 > div textarea, .Main21 > div select, .Main21 > div input[type="date"] {
  display: inline-block;
  padding: 6px 0;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px #a0a0a0;
  box-shadow: inset 0 1px 1px #a0a0a0;
  -webkit-transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  margin: 0;
}
.Main21__top__title {
  text-align: center;
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 400;
  position: relative;
  padding: 3% 0;
  display: inline-block;
}
@media (min-width: 1200px) {
  .Main21__top__title {
    font-size: 2.5rem;
  }
}
.Main21__top__title:before, .Main21__top__title:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40%;
  height: 10px;
  background-color: #ffe478;
}
.Main21__top__title:before {
  left: -50%;
}
.Main21__top__title:after {
  right: -50%;
}
.Main21__top__title__wrapper {
  text-align: center;
}
.Main21__top img {
  width: auto;
  margin-right: 2em;
}
.Main21__top .smalltxt {
  background-color: #f40202;
  color: #fff;
  padding: 2px 5px;
  font-weight: normal;
  margin-left: 2em;
}
.Main21__top .smallnini {
  background-color: #bcbcbc;
  color: #fff;
  padding: 2px 5px;
  font-weight: normal;
  margin-left: 2em;
}
.Main21__top .Note {
  color: #f40202;
  font-size: 1.125rem;
  font-weight: normal;
}
.Main21__top > div input[type="text"], .Main21__top > div input[type="tel"], .Main21__top > div input[type="email"], .Main21__top > div textarea, .Main21__top > div select, .Main21__top > div input[type="date"] {
  float: left;
  width: 75%;
}
@media only screen and (max-width: 768px) {
  .Main21__top > div input[type="text"], .Main21__top > div input[type="tel"], .Main21__top > div input[type="email"], .Main21__top > div textarea, .Main21__top > div select, .Main21__top > div input[type="date"] {
    margin-left: 10%;
  }
}
.Main21__top > div input.Smallsize[type="text"] {
  width: 20%;
  float: none;
  margin-right: 10px;
}
.Main21__top > div input.Bigsize[type="text"] {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .Main21__top > div input.Bigsize[type="text"] {
    width: 75%;
    margin-left: 3%;
  }
}
.Main21__top > div input.Smallsize[type="text"]:last-child {
  margin-left: 10px;
}
.Main21__top__column {
  padding: 1%;
  border-bottom: 2px dotted #bcbcbc;
}
.Main21__top__column > div {
  display: inline-block;
  padding-top: 13px;
  width: 25%;
  float: left;
}
@media only screen and (max-width: 768px) {
  .Main21__top__column > div {
    display: block;
    padding-bottom: 13px;
    width: 100%;
    float: none;
  }
}
.Main21__top__column label {
  margin-right: 12%;
}
@media only screen and (max-width: 768px) {
  .Main21__top__column label {
    margin-right: 0%;
    min-width: 150px;
    display: inline-block;
    margin-top: 6px;
  }
}
@media only screen and (min-width: 993px) {
  .Main21__top__column__right {
    width: 75% !important;
  }
}
@media only screen and (max-width: 768px) {
  .Main21__top__column__right {
    width: 90% !important;
    margin: 0 auto;
  }
}
.Main21__top__column__right.Address input.Smallsize[type="text"] {
  margin: 10px;
}
.Main21__bottom__title {
  text-align: center;
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 400;
  position: relative;
  padding: 3% 0;
  display: inline-block;
}
@media (min-width: 1200px) {
  .Main21__bottom__title {
    font-size: 2.5rem;
  }
}
.Main21__bottom__title:before, .Main21__bottom__title:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40%;
  height: 10px;
  background-color: #ffe478;
}
.Main21__bottom__title:before {
  left: -50%;
}
.Main21__bottom__title:after {
  right: -50%;
}
.Main21__bottom__title__wrapper {
  text-align: center;
}
.Main21__bottom img {
  width: auto;
  margin-right: 2em;
}
.Main21__bottom .smalltxt {
  background-color: #f40202;
  color: #fff;
  padding: 2px 5px;
  font-weight: normal;
  margin-left: 2em;
  display: inline-block;
}
.Main21__bottom .smallnini {
  background-color: #bcbcbc;
  color: #fff;
  padding: 2px 5px;
  font-weight: normal;
  margin-left: 2em;
}
.Main21__bottom .Note {
  color: #f40202;
  font-size: 1.125rem;
  font-weight: normal;
  padding-top: 7px;
  display: inline-block;
}
.Main21__bottom > div input[type="text"], .Main21__bottom > div input[type="tel"], .Main21__bottom > div input[type="email"], .Main21__bottom > div textarea, .Main21__bottom > div select, .Main21__bottom > div input[type="date"] {
  width: 60%;
  float: left;
  margin-right: 2%;
}
@media only screen and (max-width: 768px) {
  .Main21__bottom > div input[type="text"], .Main21__bottom > div input[type="tel"], .Main21__bottom > div input[type="email"], .Main21__bottom > div textarea, .Main21__bottom > div select, .Main21__bottom > div input[type="date"] {
    margin-left: 10%;
  }
}
.Main21__bottom > div input.Smallsize[type="text"] {
  width: 20%;
  float: none;
  margin-right: 10px;
}
.Main21__bottom > div input.Bigsize[type="text"] {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .Main21__bottom > div input.Bigsize[type="text"] {
    width: 75%;
    margin-left: 3%;
  }
}
.Main21__bottom > div input.Smallsize[type="text"]:last-child {
  margin-left: 10px;
}
.Main21__bottom__column {
  padding: 1%;
  border-bottom: 2px dotted #bcbcbc;
}
.Main21__bottom__column > div {
  display: inline-block;
  padding-top: 13px;
  width: 30%;
  float: left;
}
@media only screen and (max-width: 768px) {
  .Main21__bottom__column > div {
    display: block;
    padding-bottom: 13px;
    width: 100%;
    float: none;
  }
}
.Main21__bottom__column label {
  margin-right: 4%;
}
@media only screen and (max-width: 768px) {
  .Main21__bottom__column label {
    margin-right: 0%;
    min-width: 150px;
    display: inline-block;
    margin-top: 6px;
  }
}
.Main21__bottom__column__right {
  width: 60% !important;
}
@media only screen and (max-width: 768px) {
  .Main21__bottom__column__right {
    width: 90% !important;
    margin: 0 auto;
  }
}
.Main21__bottom__column__right .Text {
  margin-top: 3%;
}
.Main21__bottom__column__right.Address input.Smallsize[type="text"] {
  margin: 10px;
}
.Main21__foot {
  color: #f40202;
  font-size: calc(1.3125rem + 0.75vw);
  text-align: center;
  margin: 3%;
}
@media (min-width: 1200px) {
  .Main21__foot {
    font-size: 1.875rem;
  }
}
@media only screen and (max-width: 768px) {
  .Main21__foot {
    font-size: 1.125rem;
  }
}

/*==============================================
    下層ページ
  ============================================== */
.Contact {
  margin: 0 auto;
  max-width: 800px;
}
.Contact__header {
  font-size: calc(1.5rem + 3vw);
  background-image: url(../images/main25head.png);
  background-repeat: no-repeat;
  background-position: top center;
  min-height: 4.5em;
  background-size: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 1200px) {
  .Contact__header {
    font-size: 3.75rem;
  }
}
@media only screen and (max-width: 768px) {
  .Contact__header {
    background-position: bottom center;
    min-height: 4em;
    text-align: center;
  }
}
.Contact input[type="submit"] {
  font-size: calc(1.3rem + 0.6vw);
  font-weight: normal;
  background-color: #f40202;
  border-radius: 20px;
  min-height: 45px;
  color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30%;
  box-shadow: 5px 5px #934725;
  background-position: 16% 50%,83% 50%;
  margin: 2% auto 2%;
  border: none;
}
@media (min-width: 1200px) {
  .Contact input[type="submit"] {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 768px) {
  .Contact input[type="submit"] {
    min-height: 40px;
  }
}
.Contact input[type="checkbox"] {
  border: 1px solid #c6c6c6;
  background: #ececec;
  color: #555;
  clear: none;
  cursor: pointer;
  display: inline-block;
  line-height: 0;
  outline: 0;
  padding: 0 !important;
  text-align: center;
  vertical-align: middle;
  width: 35px;
  height: 33px;
  -webkit-appearance: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  -webkit-transition: .05s border-color ease-in-out;
  transition: .05s border-color ease-in-out;
  border-radius: 4px;
  margin-right: 10px;
  margin-bottom: 10px;
}
.Contact input[type=checkbox]:checked:before {
  content: url(../images/checkmark.png);
  margin: 5px 0 0 5px;
}
.Contact input[type=checkbox]:checked:before, .Contact input[type=radio]:checked:before {
  float: left;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  font: 400 21px/1 dashicons;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.Contact > div input[type="text"], .Contact > div input[type="tel"], .Contact > div input[type="email"], .Contact > div textarea, .Contact > div select, .Contact > div input[type="date"] {
  display: inline-block;
  padding: 6px 0;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px #a0a0a0;
  box-shadow: inset 0 1px 1px #a0a0a0;
  -webkit-transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  margin: 0;
}
.Contact__bottom__title {
  text-align: center;
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 400;
  position: relative;
  padding: 3% 0;
  display: inline-block;
}
@media (min-width: 1200px) {
  .Contact__bottom__title {
    font-size: 2.5rem;
  }
}
.Contact__bottom__title:before, .Contact__bottom__title:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40%;
  height: 10px;
  background-color: #ffe478;
}
.Contact__bottom__title:before {
  left: -50%;
}
.Contact__bottom__title:after {
  right: -50%;
}
.Contact__bottom__title__wrapper {
  text-align: center;
}
.Contact__bottom img {
  width: auto;
  margin-right: 2em;
}
.Contact__bottom .smalltxt {
  background-color: #f40202;
  color: #fff;
  padding: 2px 5px;
  font-weight: normal;
  margin-left: 2em;
  display: inline-block;
}
.Contact__bottom .smallnini {
  background-color: #bcbcbc;
  color: #fff;
  padding: 2px 5px;
  font-weight: normal;
  margin-left: 2em;
}
.Contact__bottom .Note {
  color: #f40202;
  font-size: 1.125rem;
  font-weight: normal;
  padding-top: 7px;
  display: inline-block;
  float: right;
}
@media only screen and (max-width: 768px) {
  .Contact__bottom .Note {
    margin-left: 10%;
  }
}
.Contact__bottom > div input[type="text"], .Contact__bottom > div input[type="tel"], .Contact__bottom > div input[type="email"], .Contact__bottom > div textarea, .Contact__bottom > div select, .Contact__bottom > div input[type="date"] {
  width: 44%;
  float: left;
  margin-right: 2%;
}
@media only screen and (max-width: 768px) {
  .Contact__bottom > div input[type="text"], .Contact__bottom > div input[type="tel"], .Contact__bottom > div input[type="email"], .Contact__bottom > div textarea, .Contact__bottom > div select, .Contact__bottom > div input[type="date"] {
    margin-left: 10%;
    width: 90%;
    float: none;
  }
}
.Contact__bottom > div input.Smallsize[type="text"] {
  width: 20%;
  float: none;
  margin-right: 10px;
}
.Contact__bottom > div input.Bigsize[type="text"] {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .Contact__bottom > div input.Bigsize[type="text"] {
    width: 75%;
    margin-left: 3%;
  }
}
.Contact__bottom > div input.Smallsize[type="text"]:last-child {
  margin-left: 10px;
}
.Contact__bottom__column {
  padding: 1%;
  border-bottom: 2px dotted #bcbcbc;
}
.Contact__bottom__column > div {
  display: inline-block;
  padding-top: 8px;
  width: 30%;
  float: left;
  min-width: 290px;
}
@media only screen and (max-width: 768px) {
  .Contact__bottom__column > div {
    display: block;
    padding-bottom: 13px;
    width: 100%;
    float: none;
  }
}
.Contact__bottom__column label {
  margin-right: 4%;
}
@media only screen and (max-width: 768px) {
  .Contact__bottom__column label {
    margin-right: 0%;
    min-width: 150px;
    display: inline-block;
    margin-top: 6px;
  }
}
@media only screen and (min-width: 993px) {
  .Contact__bottom__column__right {
    width: 58% !important;
  }
}
@media only screen and (max-width: 768px) {
  .Contact__bottom__column__right {
    width: 90% !important;
    margin: 0 auto;
  }
}
.Contact__bottom__column__right .Text {
  margin-top: 3%;
}
.Contact__bottom__column__right.Address input.Smallsize[type="text"] {
  margin: 10px;
}
.Contact__foot {
  color: #f40202;
  font-size: calc(1.26875rem + 0.225vw);
  text-align: center;
  margin: 3%;
}
@media (min-width: 1200px) {
  .Contact__foot {
    font-size: 1.4375rem;
  }
}
@media only screen and (max-width: 768px) {
  .Contact__foot {
    font-size: 1.125rem;
  }
}

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