@charset "UTF-8";
/*! Made with Bones: http://themble.com/bones :) */
/******************************************************************
Site Name:
Author:

Stylesheet: Main Stylesheet

Some contents are coming from generic.
Some contnets are coming from bones.
thank you for all.
******************************************************************/
/*********************
IMPORTING PARTIALS
These files are needed at the beginning so that we establish all
our mixins, functions, and variables that we'll be using across
the whole project.
*********************/
/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Khula:wght@700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@700&display=swap");
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent;
}

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong,
.strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn,
em,
.em {
  font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

/*
 * proper formatting (http://blog.fontdeck.com/post/9037028497/hyphens)
*/
p {
  -webkit-hyphens: auto;
  -epub-hyphens: auto;
  -ms-hyphens: auto;
      hyphens: auto;
}

/*
 * Addresses margins set differently in IE6/7.
 */
pre {
  margin: 0;
}

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre-wrap;
}

/**
 * Set consistent quote types.
 */
q {
  quotes: "“" "”" "‘" "’";
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
q:before,
q:after {
  content: "";
  content: none;
}

small, .small {
  font-size: 75%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* ==========================================================================
  Lists
========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,
menu,
ol,
ul {
  margin: 1em 0;
}

dd {
  margin: 0;
}

/*
 * Addresses paddings set differently in IE6/7.
 */
menu {
  padding: 0 0 0 40px;
}

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

/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}

/* ==========================================================================
  Embedded content
========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img {
  border: 0;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 2 */
  margin: 0; /* 3 */
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type=checkbox],
input[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto; /* 1 */
  vertical-align: top; /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.image-replacement,
.ir {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

.clearfix, .cf {
  zoom: 1;
}
.clearfix:before, .clearfix:after, .cf:before, .cf:after {
  content: "";
  display: table;
}
.clearfix:after, .cf:after {
  clear: both;
}

/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/
span.amp {
  font-family: Baskerville, "Goudy Old Style", Palatino, "Book Antiqua", serif !important;
  font-style: italic;
}

/******************************************************************
Stylesheet: Variables
******************************************************************/
/******************************************************************
Stylesheet: Typography
******************************************************************/
/******************************************************************
Site Name:
Author:

Stylesheet: Mixins Stylesheet

This is where you can take advantage of Sass' great features: Mixins.
I won't go in-depth on how they work exactly,
there are a few articles below that will help do that. What I will
tell you is that this will help speed up simple changes like
changing a color or adding CSS3 techniques gradients.

A WORD OF WARNING: It's very easy to overdo it here. Be careful and
remember less is more.

Helpful:
http://sachagreif.com/useful-sass-mixins/
http://thesassway.com/intermediate/leveraging-sass-mixins-for-cleaner-code
http://web-design-weekly.com/blog/2013/05/12/handy-sass-mixins/

******************************************************************/
/*********************
TRANSITION
*********************/
/*
I totally rewrote this to be cleaner and easier to use.
You'll need to be using Sass 3.2+ for these to work.
Thanks to @anthonyshort for the inspiration on these.
USAGE: @include transition(all 0.2s ease-in-out);
*/
/*********************
CSS3 GRADIENTS
Be careful with these since they can
really slow down your CSS. Don't overdo it.
*********************/
/* @include css-gradient(#dfdfdf,#f8f8f8); */
/*********************
BOX SIZING
*********************/
/* @include box-sizing(border-box); */
/* NOTE: value of "padding-box" is only supported in Gecko. So
probably best not to use it. I mean, were you going to anyway? */
/*********************
IMPORTING MODULES
Modules are reusable blocks or elements we use throughout the project.
We can break them up as much as we want or just keep them all in one.
I mean, you can do whatever you want. The world is your oyster. Unless
you hate oysters, then the world is your peanut butter & jelly sandwich.
*********************/
/******************************************************************
Site Name:
Author:

Stylesheet: Button Styles

Buttons are a pretty important part of your site's style, so it's
important to have a consistent baseline for them. Use this stylesheet
to create all kinds of buttons.

Helpful Links:
http://galp.in/blog/2011/08/02/the-ui-guide-part-1-buttons/

******************************************************************/
/*********************
BUTTON DEFAULTS
We're gonna use a placeholder selector here
so we can use common styles. We then use this
to load up the defaults in all our buttons.

Here's a quick video to show how it works:
http://www.youtube.com/watch?v=hwdVpKiJzac

*********************/
.blue-btn {
  display: inline-block;
  position: relative;
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-decoration: none;
  color: white;
  font-size: 0.9em;
  font-size: 34px;
  line-height: 34px;
  font-weight: normal;
  padding: 0 24px;
  border-radius: 4px;
  border: 0;
  cursor: pointer;
  -webkit-transition: background-color 0.14s ease-in-out;
  transition: background-color 0.14s ease-in-out;
}
.blue-btn:hover, .blue-btn:focus {
  color: white;
  text-decoration: none;
  outline: none;
}
.blue-btn:active {
  top: 1px;
}

/*
An example button.
You can use this example if you want. Just replace all the variables
and it will create a button dependant on those variables.
*/
.blue-btn {
  background-color: blue;
}
.blue-btn:hover, .blue-btn:focus {
  background-color: #0000eb;
}
.blue-btn:active {
  background-color: #0000e6;
}

/******************************************************************
Site Name:
Author:

Stylesheet: Form Styles

We put all the form and button styles in here to setup a consistent
look. If we need to customize them, we can do this in the main
stylesheets and just override them. Easy Peasy.

You're gonna see a few data-uri thingies down there. If you're not
sure what they are, check this link out:
http://css-tricks.com/data-uris/
If you want to create your own, use this helpful link:
http://websemantics.co.uk/online_tools/image_to_data_uri_convertor/

******************************************************************/
/*********************
INPUTS
*********************/
input[type=text],
input[type=password],
input[type=datetime],
input[type=datetime-local],
input[type=date],
input[type=month],
input[type=time],
input[type=week],
input[type=number],
input[type=email],
input[type=url],
input[type=search],
input[type=tel],
input[type=color],
select,
textarea,
.field {
  display: block;
  height: 40px;
  line-height: 1em;
  padding: 0 12px;
  font-size: 1em;
  color: #171717;
  border-radius: 3px;
  vertical-align: middle;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0;
  width: 100%;
  max-width: 400px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #999;
  -webkit-transition: background-color 0.24s ease-in-out;
  transition: background-color 0.24s ease-in-out;
}
input[type=text]:focus, input[type=text]:active,
input[type=password]:focus,
input[type=password]:active,
input[type=datetime]:focus,
input[type=datetime]:active,
input[type=datetime-local]:focus,
input[type=datetime-local]:active,
input[type=date]:focus,
input[type=date]:active,
input[type=month]:focus,
input[type=month]:active,
input[type=time]:focus,
input[type=time]:active,
input[type=week]:focus,
input[type=week]:active,
input[type=number]:focus,
input[type=number]:active,
input[type=email]:focus,
input[type=email]:active,
input[type=url]:focus,
input[type=url]:active,
input[type=search]:focus,
input[type=search]:active,
input[type=tel]:focus,
input[type=tel]:active,
input[type=color]:focus,
input[type=color]:active,
select:focus,
select:active,
textarea:focus,
textarea:active,
.field:focus,
.field:active {
  background-color: #a3a3a3;
  outline: none;
}
input[type=text].error, input[type=text].is-invalid,
input[type=password].error,
input[type=password].is-invalid,
input[type=datetime].error,
input[type=datetime].is-invalid,
input[type=datetime-local].error,
input[type=datetime-local].is-invalid,
input[type=date].error,
input[type=date].is-invalid,
input[type=month].error,
input[type=month].is-invalid,
input[type=time].error,
input[type=time].is-invalid,
input[type=week].error,
input[type=week].is-invalid,
input[type=number].error,
input[type=number].is-invalid,
input[type=email].error,
input[type=email].is-invalid,
input[type=url].error,
input[type=url].is-invalid,
input[type=search].error,
input[type=search].is-invalid,
input[type=tel].error,
input[type=tel].is-invalid,
input[type=color].error,
input[type=color].is-invalid,
select.error,
select.is-invalid,
textarea.error,
textarea.is-invalid,
.field.error,
.field.is-invalid {
  color: #fbe3e4;
  border-color: #fbe3e4;
  background-color: #fff;
  background-position: 99% center;
  background-repeat: no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDREQkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDREQ0YwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ3ODRGRkE2RjA0QTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERBRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+U8iT5wAAAedJREFUeNqk1U9I02Ecx/HtV3aIFAc1hcRDUoGXRAq0oNLA2CrsEFmHbikZu0iQYIFGYAiegkCpLipBxPpDEBMUzB0EhSG2LhG7hMR2GviPgUTvB57Bw8P3+U23B16HPX8+e/b8nt93wezZSMCnhXETF3AcB5BDCnH8Dq98ExcGHcFn8Ah3cdDni+fxnPDv9oAnTB7CKu6VCFXtChZy56LxUjt+jfuB8toSOth9wd7xWAWhqrUjYR/FRTwWJm+iIPT/w7bQf5ljiZnBg45dtKFX6H+LU8gIY8OEV6vgTkStwXWE8BPTGDHGPqNPz2mCfSOOYkA99TvCt1bhGPL68zMcwmncMuape10jrI+q4BbHi/FLn31S9z2x5tRhTc+1W506ipM+T3oRD4X+8+qtc4SqFvL0z/Fr14S+Szjis8bz9Lvvaq8cwS/wwGfdlqfPSWqTiFlX77o13u9Ym1PBs8JAytpRoy44X9Ft9E/gvbA+rYKn8NcaaMVc8UHgBw4b9/iqUQZ6hOAJFbyDcUflmsEX4a6+wTtHGfhAIUqa1U29Zc2BytouThD8x6xuN5CtMPi2CrXLZkZf/HyZoRFCP7n+QVR4PV7uI/AjGghN7OU/r1ilnqILtfpNC+o6vIFljBKYlhb/F2AAgaBsWR5wRiIAAAAASUVORK5CYII=);
  outline-color: #fbe3e4;
}
input[type=text].success, input[type=text].is-valid,
input[type=password].success,
input[type=password].is-valid,
input[type=datetime].success,
input[type=datetime].is-valid,
input[type=datetime-local].success,
input[type=datetime-local].is-valid,
input[type=date].success,
input[type=date].is-valid,
input[type=month].success,
input[type=month].is-valid,
input[type=time].success,
input[type=time].is-valid,
input[type=week].success,
input[type=week].is-valid,
input[type=number].success,
input[type=number].is-valid,
input[type=email].success,
input[type=email].is-valid,
input[type=url].success,
input[type=url].is-valid,
input[type=search].success,
input[type=search].is-valid,
input[type=tel].success,
input[type=tel].is-valid,
input[type=color].success,
input[type=color].is-valid,
select.success,
select.is-valid,
textarea.success,
textarea.is-valid,
.field.success,
.field.is-valid {
  color: #e6efc2;
  border-color: #e6efc2;
  background-color: #fff;
  background-position: 99% center;
  background-repeat: no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NDM0NDRERkYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo2NDM0NDRFMEYwNEIxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjY0MzQ0NERERjA0QjExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY0MzQ0NERFRjA0QjExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+7olkTQAAAfhJREFUeNqklU9oE0EUhzdroWjw0tBeWlDxkEaIp55TsCU9VKIgCrHBelA8CQ1Kr1WPbZrQ3gqtQqvGqxpQc2jBk6BIIaAGD4qNCKURpDSKiPi98gLDsJt//uBjsztvfnk7895sIPAw6/joGMThFJyAXn2+A+9gA57/TaY/eU0OeBgfhGm4DiGnsb7DAszxBz/NAdcKjMJLuNWCqagHbsscN5+L+hmH4QkMOe1L5jzFfNA2PgT34ajTuY7AGuZB0/hmh5m+gS0r8xv1zRvg+gGCHZiOwnF4DP3iB3sQkYxPd2C6CWfhB9Xwlus5+K1j4jXuaq3a+gM1H9OPcAa+7q9lPidZJqHbiIm7Wg22rsEI7FrPSzAMX/T+ADyAKSsu7Fr1KplehLvwCs5DvfBf65p+MypqRbO1FXK9utH4/QKuaqYTsG3E3INJv00Q46px3+XxanJ/Ute2/vqP4FKDza2KcdljIKdnhS0xXYULTaqmLMZFn8FFSFtvt6x70ExFCS5oUXspq2ssa7oEl1swFa+CGFdgtkHgPDyDKy02zyxNU6lXRUZb1EuHYayNNs+Yh5B0WQo+/8fpJnNTZFuzz2OpjoQ2QruSOQlMy35fEGmEGMxY9e1brxobw7TkWA1h6xfckUPb+JhGoE/Hpfvew7qUld/H9J8AAwDpw3WYrxcZ3QAAAABJRU5ErkJggg==);
  outline-color: #e6efc2;
}
input[type=text][disabled], input[type=text].is-disabled,
input[type=password][disabled],
input[type=password].is-disabled,
input[type=datetime][disabled],
input[type=datetime].is-disabled,
input[type=datetime-local][disabled],
input[type=datetime-local].is-disabled,
input[type=date][disabled],
input[type=date].is-disabled,
input[type=month][disabled],
input[type=month].is-disabled,
input[type=time][disabled],
input[type=time].is-disabled,
input[type=week][disabled],
input[type=week].is-disabled,
input[type=number][disabled],
input[type=number].is-disabled,
input[type=email][disabled],
input[type=email].is-disabled,
input[type=url][disabled],
input[type=url].is-disabled,
input[type=search][disabled],
input[type=search].is-disabled,
input[type=tel][disabled],
input[type=tel].is-disabled,
input[type=color][disabled],
input[type=color].is-disabled,
select[disabled],
select.is-disabled,
textarea[disabled],
textarea.is-disabled,
.field[disabled],
.field.is-disabled {
  cursor: not-allowed;
  border-color: #cfcfcf;
  opacity: 0.6;
}
input[type=text][disabled]:focus, input[type=text][disabled]:active, input[type=text].is-disabled:focus, input[type=text].is-disabled:active,
input[type=password][disabled]:focus,
input[type=password][disabled]:active,
input[type=password].is-disabled:focus,
input[type=password].is-disabled:active,
input[type=datetime][disabled]:focus,
input[type=datetime][disabled]:active,
input[type=datetime].is-disabled:focus,
input[type=datetime].is-disabled:active,
input[type=datetime-local][disabled]:focus,
input[type=datetime-local][disabled]:active,
input[type=datetime-local].is-disabled:focus,
input[type=datetime-local].is-disabled:active,
input[type=date][disabled]:focus,
input[type=date][disabled]:active,
input[type=date].is-disabled:focus,
input[type=date].is-disabled:active,
input[type=month][disabled]:focus,
input[type=month][disabled]:active,
input[type=month].is-disabled:focus,
input[type=month].is-disabled:active,
input[type=time][disabled]:focus,
input[type=time][disabled]:active,
input[type=time].is-disabled:focus,
input[type=time].is-disabled:active,
input[type=week][disabled]:focus,
input[type=week][disabled]:active,
input[type=week].is-disabled:focus,
input[type=week].is-disabled:active,
input[type=number][disabled]:focus,
input[type=number][disabled]:active,
input[type=number].is-disabled:focus,
input[type=number].is-disabled:active,
input[type=email][disabled]:focus,
input[type=email][disabled]:active,
input[type=email].is-disabled:focus,
input[type=email].is-disabled:active,
input[type=url][disabled]:focus,
input[type=url][disabled]:active,
input[type=url].is-disabled:focus,
input[type=url].is-disabled:active,
input[type=search][disabled]:focus,
input[type=search][disabled]:active,
input[type=search].is-disabled:focus,
input[type=search].is-disabled:active,
input[type=tel][disabled]:focus,
input[type=tel][disabled]:active,
input[type=tel].is-disabled:focus,
input[type=tel].is-disabled:active,
input[type=color][disabled]:focus,
input[type=color][disabled]:active,
input[type=color].is-disabled:focus,
input[type=color].is-disabled:active,
select[disabled]:focus,
select[disabled]:active,
select.is-disabled:focus,
select.is-disabled:active,
textarea[disabled]:focus,
textarea[disabled]:active,
textarea.is-disabled:focus,
textarea.is-disabled:active,
.field[disabled]:focus,
.field[disabled]:active,
.field.is-disabled:focus,
.field.is-disabled:active {
  background-color: #d5edf8;
}

input[type=password] {
  letter-spacing: 0.3em;
}

textarea {
  max-width: 100%;
  min-height: 120px;
  line-height: 1.5em;
}

select {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
  appearance: none;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAHCAYAAADXhRcnAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEOEZCMjYxMEYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEOEZCMjYxMUYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQ4RkIyNjBFRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkQ4RkIyNjBGRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Vxkp9gAAAI9JREFUeNpidHFxucHAwKAOxE+AmJmBMPgLxDJAfJMFSKwD4kqoAClgA+P///8ZXF1dPaCGcBKh6QcQB+3evXs7WDMIAA2QB1I7gFgDj0aQFz2BGh+AOEwwUaDAQyBlCMR7cGjcC5KHaQQBuM3IAOiKTiBVhiTUDdRUhq4Oq2aoAelAahIQ5wM1zsCmBiDAADhYMJXVZ9u9AAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: 97.5% center;
}

/*********************
BASE (MOBILE) SIZE
This are the mobile styles. It's what people see on their phones. If
you set a great foundation, you won't need to add too many styles in
the other stylesheets. Remember, keep it light: Speed is Important.
*********************/
/******************************************************************

Stylesheet: Base Stylesheet

******************************************************************/
/*********************
general styles
*********************/
html {
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 115%;
  font-weight: 500;
}

body {
  line-height: 1.5;
  color: #171717;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
}
body.logged-in .header .floating {
  margin-top: 32px;
}

.container {
  display: block;
  width: auto;
  margin: 0 auto;
  position: relative;
}

.float {
  width: 1100px;
  margin: 0 auto;
  position: relative;
}
.float.w1300 {
  max-width: 1300px;
  width: 100%;
}
.float.w1200 {
  max-width: 1200px;
  width: 100%;
}
.float.w960 {
  max-width: 960px;
  width: 100%;
}

/*********************
general parts
*********************/
a, a:visited {
  color: #053a8e;
  /* on hover */
  /* mobile tap color */
  text-decoration: none;
}
a:hover, a:focus, a:visited:hover, a:visited:focus {
  color: #032862;
  text-decoration: underline;
  text-underline-offset: 0.25rem;
  text-decoration-thickness: 1px;
}
a:link, a:visited:link {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3);
}
a.more, a:visited.more {
  text-decoration: underline;
  text-underline-offset: 0.25rem;
  text-decoration-thickness: 1px;
}
a.more:hover, a:visited.more:hover {
  text-decoration: none;
}

em {
  color: #c00000;
  font-style: normal;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5 {
  text-rendering: optimizelegibility;
  font-weight: 500;
}

h1, .h1 {
  font-size: 2.5rem;
  line-height: 100%;
}

h2, .h2 {
  font-size: 2rem;
  line-height: 100%;
  margin-bottom: 0.375rem;
}

h3, .h3 {
  font-size: 1.5rem;
  line-height: 100%;
}

h4, .h4 {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 100%;
}

h5, .h5 {
  font-size: 1.1rem;
  line-height: 100%;
  text-transform: uppercase;
  letter-spacing: 2px;
}

h6, .h6 {
  font-size: 1rem;
  line-height: 100%;
  text-transform: uppercase;
  letter-spacing: 2px;
}

/*********************
fixed menu
*********************/
.fixed-container {
  width: 100%;
  height: 84px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #f0f7fc;
}

.floating {
  height: 84px;
}
.floating .fixed-container {
  width: 100%;
  position: fixed;
  z-index: 100;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-box-shadow: 0px 0px 7px 1px rgba(0, 0, 0, 0.12);
          box-shadow: 0px 0px 7px 1px rgba(0, 0, 0, 0.12);
  -webkit-transition: -webkit-box-shadow 0.3s ease;
  transition: -webkit-box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease;
  transition: box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease;
}

/*********************
header styles
*********************/
.header-menu {
  display: none;
}

header.global .float {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  gap: 0;
}
header.global nav {
  height: 100%;
}
header.global nav .menu-header_menu-container {
  height: 100%;
}
header.global .menu {
  height: 100%;
}
header.global .menu li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
header.global .menu li.contact {
  background-color: #ff7200;
}
header.global .menu li.contact a {
  color: white;
}
header.global #site-title a {
  display: block;
  overflow: hidden;
  text-indent: -1000px;
  background-image: url(../images/logo.png);
  background-repeat: no-repeat;
  width: 301px;
  height: 77px;
}
header.global nav {
  -ms-flex-negative: 1;
      flex-shrink: 1;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
header.global .adjuster {
  background-color: #f9f9f9;
  position: static;
  z-index: 1000;
  top: 0;
  width: 1400px;
  margin: 0 auto;
  -webkit-transition: top 0.3s ease;
  transition: top 0.3s ease;
}
header.global .adjuster.floating {
  position: fixed;
  width: 100%;
}

/*********************
navigation styles
*********************/
nav.header-menu {
  display: block;
}
nav.header-menu ul.menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  margin: 0;
  padding: 0;
  font-size: 0.95rem;
}
nav.header-menu ul.menu li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem 0;
  text-decoration: none;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
  font-weight: 600;
  text-align: center;
  color: black;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
  width: 100%;
}
nav.header-menu ul.menu li a:hover {
  color: #171717;
  text-decoration: underline;
  text-underline-offset: 0.5rem;
}
nav.header-menu ul.menu li a:hover::after {
  opacity: 1;
}
nav.posts-navigation, nav.post-navigation {
  margin-bottom: 80px;
}
nav.posts-navigation .nav-links, nav.post-navigation .nav-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.2rem;
  gap: 50px;
}
nav.posts-navigation .nav-links .meta-nav, nav.post-navigation .nav-links .meta-nav {
  display: inline-block;
  margin: 0 10px;
}
nav.posts-navigation .nav-links .nav-previous, nav.post-navigation .nav-links .nav-previous {
  float: none;
  width: auto;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 1rem;
}
nav.posts-navigation .nav-links .nav-previous a, nav.post-navigation .nav-links .nav-previous a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 120%;
}
nav.posts-navigation .nav-links .nav-next, nav.post-navigation .nav-links .nav-next {
  float: none;
  width: auto;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 1rem;
}
nav.posts-navigation .nav-links .nav-next a, nav.post-navigation .nav-links .nav-next a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  line-height: 120%;
}

.menu-trigger {
  display: none;
}

/*********************
aside
*********************/
aside.path {
  margin-top: 30px;
  font-size: 0.8rem;
}
aside.path .float {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
aside.path .float a {
  font-weight: 600;
  color: black;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
aside.path .float a::after {
  content: "〉";
  display: block;
  margin-left: 0.5rem;
}
aside.path .float a:last-child::after {
  display: none;
}

/*********************
post
*********************/
#single-post {
  padding-top: 40px;
  margin-bottom: 40px;
}
#single-post article {
  border: 0;
  margin-bottom: 80px;
}

#archive-posts {
  padding-top: 40px;
  padding-bottom: 100px;
}
#archive-posts .float {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#archive-posts article {
  border: 0;
}
#archive-posts article .entry-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#archive-posts article .entry-title time {
  font-size: 1rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
}
#archive-posts article .entry-title .title-link {
  font-size: 1rem;
}
#archive-posts article .entry-title .thumbnail {
  width: 160px;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
#archive-posts article .entry-title .thumbnail img {
  width: 100%;
  margin: 0;
  display: block;
}

.hentry:last-child {
  border-bottom: 0;
}
.hentry .entry-title {
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.3rem;
  background-color: #e6eef8;
  border-radius: 10px;
}
.hentry .entry-title .title-link {
  display: block;
  padding: 1.3rem;
  color: #111;
  font-weight: normal;
}
.hentry .entry-title.headline {
  background-color: transparent;
}
.hentry .entry-title.headline .title-link {
  padding: 0 1rem;
  font-size: 1.3rem;
}
.hentry .entry-title.headline time {
  border-right: 1px solid #333;
}
.hentry .entry-title .title-link {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.hentry .entry-title time {
  font-size: 1.3rem;
  padding: 0 2rem;
}
.hentry .entry-meta {
  text-align: right;
  margin: 10px 0;
}
.hentry .entry-meta time {
  font-size: 1rem;
}
.hentry footer {
  padding: 1.5em;
  border-top: 1px solid #ddd;
}
.hentry footer p {
  margin: 0;
}

/* end .hentry */
.post-edit-link {
  font-size: 0.8rem;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding: 0 1rem;
}

/* post meta */
.byline {
  color: #9fa6b4;
  font-style: italic;
  margin: 0;
}
/* entry content */
.entry-content {
  padding: 0;
  /*
  image alignment on a screen this size may be
  a bit difficult. It's set to start aligning
  and floating images at the next breakpoint,
  but it's up to you. Feel free to change it up.
  */
}
.entry-content p {
  margin: 0 0 1.5em;
}
.entry-content table {
  width: 100%;
  border: 1px solid #999;
  margin-bottom: 1.5em;
}
.entry-content table caption {
  margin: 0 0 7px;
  font-size: 0.75em;
  color: #9fa6b4;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.entry-content tr {
  border-bottom: 1px solid #999;
}
.entry-content tr:nth-child(even) {
  background-color: #f1f1f1;
}
.entry-content td {
  padding: 7px;
  border-right: 1px solid #999;
}
.entry-content td:last-child {
  border-right: 0;
}
.entry-content th {
  background-color: #f1f1f1;
  border-bottom: 1px solid #999;
  border-right: 1px solid #999;
}
.entry-content th:last-child {
  border-right: 0;
}
.entry-content blockquote {
  margin: 0 0 1.5em 0.75em;
  padding: 0 0 0 0.75em;
  border-left: 3px solid #ddd;
  font-style: italic;
  color: #9fa6b4;
}
.entry-content dd {
  margin-left: 0;
  font-size: 0.9em;
  color: #787878;
  margin-bottom: 1.5em;
}
.entry-content img {
  margin: 0 0 1.5em 0;
  max-width: 100%;
  height: auto;
}
.entry-content .size-auto,
.entry-content .size-full,
.entry-content .size-large,
.entry-content .size-medium,
.entry-content .size-thumbnail {
  max-width: 100%;
  height: auto;
}
.entry-content pre {
  background: black;
  font-size: 0.9em;
  padding: 1.5em;
  margin: 0 0 1.5em;
  border-radius: 3px;
}

/* end .entry-content */
.wp-caption {
  max-width: 100%;
  background: #eee;
  padding: 5px;
  /* images inside wp-caption */
}
.wp-caption img {
  max-width: 100%;
  margin-bottom: 0;
  width: 100%;
}
.wp-caption p.wp-caption-text {
  font-size: 0.85em;
  margin: 4px 0 7px;
  text-align: center;
}

/* end .wp-caption */
/*********************
classes in common
*********************/
section .caption {
  margin-bottom: 55px;
}
section .caption h2 {
  font-size: 2.1rem;
  margin: 0;
  margin-bottom: 0.75rem;
  line-height: 100%;
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #123d83;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
}
section .caption h2 .sub {
  font-size: 1rem;
  line-height: 100%;
  color: black;
}
section .caption h3 {
  font-weight: bold;
  font-size: 1.6rem;
  color: #123d83;
  margin: 0;
}
section .caption h4 {
  font-weight: bold;
  font-size: 1.6rem;
}
section .caption p {
  margin: 0;
  line-height: 100%;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 3px;
}
section .caption.vertical h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
section .buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
section .buttons.bold a {
  font-weight: 600;
}
section .buttons.openc a {
  letter-spacing: 2px;
}
section .buttons.shrink {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
section .buttons a {
  background-color: #053a8e;
  border-radius: 50px;
  color: white;
  display: block;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.4rem;
  padding: 0.8rem 3rem;
}
section .buttons a:hover {
  text-decoration: none;
  opacity: 0.85;
  color: white;
}
section .pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
section .object-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 50px;
  margin-bottom: 50px;
}
section .object-list article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 50px;
}
section .object-list article figure {
  width: 400px;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
}
section .object-list article .data {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
section .object-list article .data h3 {
  color: #123d83;
  font-size: 1.5rem;
  line-height: 140%;
  margin: 0;
}
section .object-list article .data p {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 500;
}
section .more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  font-size: 1.1rem;
  font-weight: 500;
}
section .more a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
  text-decoration: none;
  color: white;
  padding: 0.25rem 0.5rem 0.25rem 1rem;
  text-decoration: none;
  background-color: #123d83;
  border-radius: 6px;
}
section .more a::after {
  content: "〉";
}
section .more a:hover {
  background-color: #b0deec;
  color: #123d83;
}

#response_code_404 {
  padding-top: 100px;
  padding-bottom: 100px;
}
#response_code_404 .lead {
  margin-top: 0;
}
#response_code_404 .caption {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 0;
}
#response_code_404 .caption h2 {
  font-size: 1.5rem;
  font-weight: normal;
}
#response_code_404 .caption p {
  letter-spacing: 0;
  font-size: 1.2rem;
  margin-top: 2rem;
  font-weight: normal;
  font-family: sans-serif;
}
#response_code_404 .lead {
  text-align: center;
}

/*********************
original style sheet
*********************/
#keyvisual {
  background-color: #f0f7fc;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(../images/sky.jpg);
  background-size: cover;
  background-position: top center;
  overflow: hidden;
  position: relative;
  height: auto;
}
#keyvisual .bg {
  width: 100%;
  position: relative;
  margin-top: 140px;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
#keyvisual .bg .s {
  opacity: 0.5;
}
#keyvisual .bg .s svg {
  height: 190px;
  width: 100%;
}
#keyvisual .bg .e {
  position: absolute;
  z-index: 100;
  bottom: 0;
}
#keyvisual .bg .e svg {
  height: 70px;
  width: 100%;
}
#keyvisual .bg .middle {
  opacity: 0.5;
  height: 300px;
  width: 100%;
  background-color: #b0deec;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#keyvisual .road {
  position: absolute;
  bottom: 20px;
  width: 100%;
  left: 0;
  right: 0;
  height: 10px;
  -webkit-transform: rotate(3deg);
          transform: rotate(3deg);
}
#keyvisual .road .car {
  display: block;
  width: 280px;
  bottom: 0;
  right: 0;
  position: absolute;
  -webkit-animation: car_moving 25s linear infinite;
          animation: car_moving 25s linear infinite;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
}
@-webkit-keyframes car_moving {
  from {
    right: -500px;
  }
  to {
    right: calc(100% + 600px);
  }
}
@keyframes car_moving {
  from {
    right: -500px;
  }
  to {
    right: calc(100% + 600px);
  }
}
#keyvisual .road .car img {
  width: 100%;
  display: block;
}
#keyvisual .float {
  position: absolute;
  z-index: 10;
  top: 0;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#keyvisual .float .content {
  width: 100%;
  bottom: 0;
  position: absolute;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  color: #123d83;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  background-image: url(../images/aichi.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 410px;
}
#keyvisual .float .content > figure {
  margin: 0;
  padding: 0;
  width: 410px;
}
#keyvisual .float .content > figure img {
  display: block;
  -webkit-backface-visibility: hidden;
  image-rendering: -webkit-optimize-contrast;
}
#keyvisual .float .content .desc {
  position: relative;
  margin-bottom: 90px;
}
#keyvisual .float .content .desc .cc {
  position: absolute;
  top: -90px;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  -webkit-transform: rotate(10deg);
          transform: rotate(10deg);
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom;
}
#keyvisual .float .content .desc .cc img {
  -webkit-backface-visibility: hidden;
  image-rendering: -webkit-optimize-contrast;
}
#keyvisual .float .content .desc .name {
  margin-bottom: 30px;
}
#keyvisual .float .content .desc .name .s {
  font-size: 2rem;
  font-weight: 600;
  line-height: 100%;
  margin-bottom: 0.5rem;
}
#keyvisual .float .content .desc .name .m {
  font-size: 7.5rem;
  font-weight: 800;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 100%;
}
#keyvisual .float .pr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
#keyvisual .float .pr .time {
  background-color: #123d83;
  color: white;
  border-radius: 5px;
  padding: 0.25rem 1rem;
  font-size: 1.2rem;
  margin-bottom: 1rem;
}
#keyvisual .float .pr p {
  line-height: 140%;
  margin: 0;
  padding: 0;
  color: black;
  font-size: 1.1rem;
}

#profile {
  padding-top: 100px;
  padding-bottom: 120px;
  background-color: #f0f7fc;
}
#profile .float .data {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 50px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 100px;
}
#profile .float .data figure {
  width: 215px;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
#profile .float .data p {
  margin: 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -ms-flex-negative: 1;
      flex-shrink: 1;
  line-height: 200%;
}
#profile .float .history {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  margin-bottom: 70px;
}
#profile .float .history:after {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background-color: #123d83;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#profile .float .history > div {
  width: 50%;
  padding: 60px;
  padding-bottom: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
#profile .float .history > div .caption {
  text-align: center;
  margin-bottom: 30px;
}
#profile .float .history > div ul {
  line-height: 200%;
  list-style-type: disc;
}
#profile .float .personal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: white;
  padding: 90px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  gap: 90px;
}
#profile .float .personal .float {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 90px;
}
#profile .float .personal .table {
  width: 380px;
  font-weight: 600;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
}

#news {
  padding-top: 40px;
  padding-bottom: 0;
  background-color: #f0f7fc;
}
#news .edge {
  background-color: #f0f7fc;
  margin-top: 80px;
}
#news .list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 30px 1fr 30px 1fr 30px 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 30px;
  margin-bottom: 40px;
}
#news .list article time {
  font-size: 0.9rem;
  margin-top: 10px;
  display: block;
}
#news .list article a {
  display: block;
}
#news .list article .thumbnail {
  height: 170px;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  border-radius: 10px;
}
#news .list article figure {
  margin: 0;
  border-radius: 10px;
  overflow: hidden;
}

#policy {
  margin-bottom: 140px;
}
#policy .edge {
  background-color: #f0f7fc;
  margin-bottom: 80px;
}
#policy .desc {
  margin-bottom: 160px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 50px;
}
#policy .desc p {
  margin: 0;
  line-height: 220%;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  font-size: 1.05rem;
  flex-grow: 1;
}
#policy .desc figure {
  width: 290px;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
#policy .policy-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 80px;
}
#policy .policy-list article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 50px;
}
#policy .policy-list article:nth-child(1) figure::before {
  content: "1";
}
#policy .policy-list article:nth-child(2) figure::before {
  content: "2";
}
#policy .policy-list article:nth-child(3) figure::before {
  content: "3";
}
#policy .policy-list article:nth-child(4) figure::before {
  content: "4";
}
#policy .policy-list article:nth-child(5) figure::before {
  content: "5";
}
#policy .policy-list article:nth-child(even) .data {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  padding-right: 0;
  padding-left: 60px;
}
#policy .policy-list article figure {
  width: 400px;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
}
#policy .policy-list article figure::before {
  left: 30px;
  position: absolute;
  font-size: 5rem;
  color: #123d83;
  font-family: Century Gothic;
  font-weight: 500;
  line-height: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
#policy .policy-list article .data {
  padding-top: 30px;
  padding-right: 60px;
}
#policy .policy-list article .data h3 {
  color: #123d83;
  font-size: 2rem;
  margin: 0;
  line-height: 120%;
}
#policy .policy-list article .data p {
  font-size: 1.05rem;
  line-height: 180%;
  font-weight: 500;
}

#result {
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #f0f7fc;
}
#result .edge {
  background-color: white;
  margin-bottom: 100px;
}
#result .edge svg {
  width: 100%;
}
#result .desc {
  margin-bottom: 160px;
}

#report {
  background-color: #b0deec;
  overflow: hidden;
  padding-top: 120px;
}
#report .instagram {
  margin-bottom: 110px;
}
#report .instagram .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: 0;
}
#report .instagram .title .literal {
  margin-top: 10px;
}
#report .instagram #sb_instagram #sbi_load {
  display: none;
}
#report .youtube {
  margin-bottom: 150px;
}
#report .youtube .screen {
  margin-bottom: 25px;
}
#report .youtube .screen .adjuster {
  width: 100%;
  position: relative;
}
#report .youtube .screen .adjuster iframe {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
#report .youtube .screen .adjuster:before {
  content: "";
  padding-top: 56.25%;
  display: block;
}
#report .youtube .bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
#report .youtube .bottom .check {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  gap: 5px;
}
#report .youtube .bottom .check a {
  background-color: white;
  color: #1eb8d4;
  font-size: 0.9rem;
  padding: 0.65rem;
  font-weight: 500;
  border-radius: 7px;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
#report .youtube .bottom .check a::after {
  content: url(../images/arrow-lb.png);
  margin-right: 1rem;
}
#report .youtube .bottom .check u {
  font-size: 0.75rem;
  text-underline-offset: 0.5rem;
  color: #777777;
}
#report .facebook {
  text-align: center;
  margin-bottom: 120px;
}

#office {
  background-color: #f0f7fc;
  overflow: hidden;
  padding-top: 60px;
}
#office .contact {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 600;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: white;
  margin-bottom: 20px;
  padding: 20px 0;
}
#office .contact .tel {
  font-size: 1.8rem;
  border: 1px solid black;
  padding: 2px 16px;
  margin: 20px 0 5px;
}
#office .map iframe {
  width: 100%;
  height: 620px;
  margin-bottom: 140px;
}
#office .pr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
  padding: 30px 20px;
}
#office .pr .time {
  background-color: #123d83;
  color: white;
  border-radius: 5px;
  padding: 0.25rem 1rem;
  font-size: 1rem;
  margin-bottom: 1rem;
}
#office .pr p {
  line-height: 140%;
  margin: 0;
  padding: 0;
  text-align: center;
  color: black;
  font-size: 1.1rem;
}

#banners {
  padding-top: 60px;
  padding-bottom: 130px;
}
#banners .float {
  padding: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 30px 1fr 30px 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px;
}
#banners .float a img {
  display: block;
}

/******************************************************************
stylesheet for wordpress native function
******************************************************************/
/* password screen */
#wp_password_screen form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 600px;
  margin: 60px auto 80px;
  border: 1px solid #e6eef8;
  background-color: #e6eef8;
  border-radius: 10px;
  padding: 1rem;
}
#wp_password_screen form label {
  display: none;
}
#wp_password_screen form input[name=post_password] {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -ms-flex-negative: 1;
      flex-shrink: 1;
  max-width: none;
  width: auto;
  letter-spacing: 0;
  border-radius: 0;
  background-color: transparent;
}
#wp_password_screen form input[name=Submit] {
  width: 100px;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  font-family: sans-serif;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding: 0;
  border-radius: 10px;
  font-size: 1rem;
}
#wp_password_screen form .description {
  width: 100%;
  font-size: 1rem;
}

/******************************************************************
pages
******************************************************************/
.table {
  overflow: hidden;
  font-size: 0.95rem;
  border: 0;
  color: #123d83;
}
.table .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  overflow: hidden;
  padding: 1rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  border-bottom: 1px solid #123d83;
}
.table .row:last-child {
  border-bottom: 0;
}
.table .row .caption {
  width: 110px;
  margin: 0;
}

.form {
  overflow: hidden;
  font-size: 1.05rem;
  padding: 60px 90px;
  background-color: #f4f4f4;
}
.form .buttons {
  text-align: left;
}
.form .row {
  overflow: hidden;
  padding: 1.5rem 1rem;
  padding-left: 320px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  border-bottom: 1px solid #dee0e1;
}
.form .row:last-child {
  border-bottom: 0;
}
.form .row:before {
  content: "";
  display: block;
  width: 300px;
  height: 100%;
  background-color: #f2f2f2;
  position: absolute;
  left: 0;
  top: 0;
}
.form .row .title {
  position: absolute;
  font-weight: normal;
  top: 50%;
  left: 0;
  display: inline-block;
  margin-left: 20px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}
.form .row input, .form .row textarea {
  margin-bottom: 0;
  border: 1px solid #a6a6a6;
  background-color: white;
  border-radius: 0;
  -webkit-appearance: none;
}
.form .row .submit {
  background-color: #0091c7;
  color: white;
  padding: 1rem 2rem;
  border: 0;
  width: 300px;
}
.form .row p {
  margin: 0;
}

.post-not-found {
  padding: 50px 0 100px;
  text-align: center;
  display: block;
  font-weight: 600;
  font-size: 1.25rem;
}

/*********************
pages
*********************/
/*********************
pager style
*********************/
.pagination,
.wp-prev-next {
  margin: 1.5em 0;
}

.pagination {
  text-align: center;
}
.pagination ul {
  display: inline-block;
  white-space: nowrap;
  padding: 0;
  clear: both;
  border-radius: 3px;
}
.pagination li {
  padding: 0;
  margin: 0;
  float: left;
  display: inline;
  overflow: hidden;
  border-right: 1px solid #999;
}
.pagination a, .pagination span {
  margin: 0;
  text-decoration: none;
  padding: 0;
  line-height: 1em;
  font-size: 1em;
  font-weight: normal;
  padding: 0.75em;
  min-width: 1em;
  display: block;
  color: #053a8e;
}
.pagination a:hover, .pagination a:focus, .pagination span:hover, .pagination span:focus {
  background-color: #032862;
  color: #fff;
}
.pagination .current {
  cursor: default;
  color: #171717;
}
.pagination .current:hover, .pagination .current:focus {
  background-color: #fff;
  color: #171717;
}

/* end .bones_page_navi */
/* fallback previous & next links */
.wp-prev-next .prev-link {
  float: left;
}
.wp-prev-next .next-link {
  float: right;
}

/* end .wp-prev-next */
/*********************
sidebars
*********************/
.no-widgets {
  background-color: #fff;
  padding: 1.5em;
  text-align: center;
  border: 1px solid #bbb;
  border-radius: 2px;
  margin-bottom: 1.5em;
}

/*********************
footer style
*********************/
footer.global .float {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
footer.global .pagetop {
  position: fixed;
  right: 10px;
  bottom: 10px;
  height: 84px;
  width: 84px;
  z-index: 1000;
  background-image: url(../images/gototop.png);
  background-repeat: no-repeat;
  background-size: contain;
  text-indent: -10000px;
  overflow: hidden;
  border: 0;
  display: block;
}
footer.global .content {
  padding: 40px 0;
}

#copyright {
  font-size: 0.6rem;
  padding: 1rem 0;
}

/*********************
TABLET & SMALLER LAPTOPS
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*********************/
@media only screen and (max-width: 768px) {
  /******************************************************************

  Stylesheet: Smartphones

  ******************************************************************/
  /*********************
  general styles
  *********************/
  html {
    -webkit-overflow-scrolling: touch;
  }
  body.logged-in .header .adjuster.floating {
    margin-top: 0;
  }
  .float {
    width: auto;
    margin: 0 10px;
  }
  .float.w1300 {
    width: auto;
  }
  .float.w1200 {
    width: auto;
  }
  .float.w960 {
    max-width: 960px;
    width: auto;
  }
  .scroll {
    overflow: auto;
    white-space: nowrap;
    position: relative;
    margin: 0 10px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .scroll:hover:before, .scroll:active:before {
    opacity: 0;
  }
  .scroll:before {
    opacity: 1;
    content: "左右にスクロールできます";
    background-color: white;
    border: 1px solid black;
    padding: 2px 4px;
    font-size: 0.5rem;
    border-radius: 5px;
    position: absolute;
    top: 0;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .scroll::-webkit-scrollbar {
    height: 5px;
  }
  .scroll::-webkit-scrollbar-track {
    background: #F1F1F1;
  }
  .scroll::-webkit-scrollbar-thumb {
    background: #BCBCBC;
  }
  .pc {
    display: none !important;
  }
  .sp {
    display: initial;
  }
  /*********************
  general parts
  *********************/
  a.more, a:visited.more {
    font-size: 0.8rem;
  }
  /*********************
  fixed menu
  *********************/
  .fixed-container {
    height: 60px;
  }
  .floating .fixed-container {
    top: 0;
  }
  /*********************
  header styles
  *********************/
  header.global {
    height: 60px;
  }
  header.global .float {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: auto;
    gap: 0;
    margin: 0;
    padding: 0 10px;
  }
  header.global nav {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 50px;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  header.global nav .menu-header_menu-container {
    z-index: 1000;
    height: 100%;
    position: absolute;
    visibility: hidden;
    opacity: 0;
    height: auto;
    top: 50px;
    left: 0;
    right: 0;
    background-color: white;
  }
  header.global nav .menu-header_menu-container ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  header.global nav .menu-header_menu-container ul li {
    width: 100%;
    border-top: 1px solid #ddd;
  }
  header.global nav .menu-trigger.active + .menu-header_menu-container {
    display: block;
    visibility: visible;
    opacity: 1;
  }
  header.global .menu {
    height: 100%;
  }
  header.global .menu li {
    width: 160px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 0.9rem;
  }
  header.global .menu li.contact {
    background-color: #ff7200;
  }
  header.global .menu li.contact a {
    color: white;
  }
  header.global #site-title a {
    display: block;
    overflow: hidden;
    text-indent: -1000px;
    background-image: url(../images/logo.png);
    width: 240px;
    height: 50px;
    background-size: contain;
  }
  header.global .adjuster {
    background-color: #f9f9f9;
    position: static;
    z-index: 1000;
    top: 0;
    width: 1400px;
    margin: 0 auto;
    -webkit-transition: top 0.3s ease;
    transition: top 0.3s ease;
  }
  header.global .adjuster.floating {
    position: fixed;
    width: 100%;
  }
  /*********************
  navigation styles
  *********************/
  .menu-toggle {
    display: none;
  }
  nav.header-menu {
    display: block;
  }
  nav.header-menu ul.menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
    margin: 0;
    padding: 0;
    gap: 0;
  }
  nav.header-menu ul.menu li a {
    position: relative;
    display: block;
    padding: 1rem 1.5rem;
    text-decoration: none;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease;
    font-weight: 600;
    text-align: center;
    color: #171717;
    width: 100%;
  }
  nav.header-menu ul.menu li a:hover {
    color: #171717;
  }
  nav.posts-navigation, nav.post-navigation {
    margin-bottom: 0;
  }
  nav.posts-navigation .nav-links .nav-previous, nav.posts-navigation .nav-links .nav-next, nav.post-navigation .nav-links .nav-previous, nav.post-navigation .nav-links .nav-next {
    font-size: 0.8rem;
  }
  .menu-trigger,
  .menu-trigger span {
    display: inline-block;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .menu-trigger {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    width: 42px;
    height: 30px;
    background: none;
    margin: 10px 0;
    border: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    cursor: pointer;
    padding: 0;
  }
  .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: black;
    border-radius: 4px;
    top: 0;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 14px;
  }
  .menu-trigger span:nth-of-type(3) {
    top: auto;
    bottom: 0;
  }
  /* animation style */
  .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(14px) rotate(-45deg);
            transform: translateY(14px) rotate(-45deg);
  }
  .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-14px) rotate(45deg);
            transform: translateY(-14px) rotate(45deg);
  }
  /*********************
  post
  *********************/
  #single-post {
    padding-top: 40px;
    margin-bottom: 40px;
  }
  #single-post article {
    border: 0;
    margin-bottom: 80px;
  }
  #archive-posts {
    padding-top: 20px;
    padding-bottom: 50px;
  }
  #archive-posts article {
    margin: 0;
    border: 0;
  }
  #archive-posts article.entry-summary {
    display: none;
  }
  #content {
    margin-top: 0em;
  }
  .hentry:last-child {
    border-bottom: 0;
  }
  .hentry .entry-title {
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.3rem;
    background-color: #e6eef8;
    border-radius: 5px;
  }
  .hentry .entry-title.headline {
    background-color: transparent;
    border-bottom: 1px solid #e6eef8;
    padding: 10px 0;
    margin: 0;
  }
  .hentry .entry-title.headline .title-link {
    -webkit-box-ordinal-group: 101;
        -ms-flex-order: 100;
            order: 100;
    width: 100%;
    padding: 0;
    font-size: 1rem;
    line-height: 120%;
  }
  .hentry .entry-title.headline .post-edit-link {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    padding: 0;
  }
  .hentry .entry-title.headline time {
    font-size: 0.8rem;
    padding: 0 1rem 0 0;
    border: 0;
    margin-bottom: 0.5rem;
  }
  .hentry .entry-title .title-link {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    font-size: 1rem;
    padding: 0.5rem;
  }
  .hentry .entry-title time {
    font-size: 0.9rem;
    line-height: 100%;
    padding: 0 1rem;
  }
  .hentry .entry-meta {
    text-align: right;
    margin: 0;
  }
  .hentry .entry-meta time {
    font-size: 0.8rem;
    line-height: 100%;
    padding: 0;
  }
  .hentry .entry-content {
    padding: 0;
    font-size: 0.9rem;
  }
  .hentry footer {
    padding: 1.5em;
    border-top: 1px solid #ddd;
  }
  .hentry footer p {
    margin: 0;
  }
  /* end .hentry */
  /*********************
  classes in common
  *********************/
  section .caption {
    margin-bottom: 20px;
  }
  section .caption h2 {
    font-size: 1.3rem;
    margin: 0;
    gap: 10px;
  }
  section .caption h2 .sub {
    font-size: 0.8rem;
  }
  section .caption h3 {
    font-size: 1.15rem;
  }
  section .caption p {
    margin: 0;
    line-height: 100%;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0;
  }
  section .buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  section .buttons.bold a {
    padding: 1rem 2rem;
    font-weight: 600;
  }
  section .buttons.openc a {
    letter-spacing: 2px;
  }
  section .buttons.right {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
  }
  section .buttons a {
    background-color: #053a8e;
    border-radius: 50px;
    color: white;
    display: block;
    text-align: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 0.85rem;
    padding: 0.7rem 1.3rem;
  }
  section .buttons a:hover {
    text-decoration: none;
    opacity: 0.85;
    color: white;
  }
  section .object-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
    margin-bottom: 0;
  }
  section .object-list article {
    padding-bottom: 10px;
    border-bottom: 1px solid #bbb;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  section .object-list article:last-child {
    border: 0;
  }
  section .object-list article figure {
    width: 30%;
  }
  section .object-list article figure img {
    width: 100%;
    display: block;
  }
  section .object-list article .data {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 10px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  section .object-list article .data h3 {
    color: #123d83;
    font-size: 1rem;
    line-height: 140%;
    margin: 0;
  }
  section .object-list article .data p {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 500;
  }
  section .more {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 1.1rem;
    font-weight: 500;
  }
  section .more a {
    font-size: 0.8rem;
  }
  aside.path {
    margin-top: 10px;
    font-size: 0.7rem;
  }
  aside.path .float {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  aside.path .float a {
    font-weight: 600;
    color: black;
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  aside.path .float a::after {
    content: "〉";
    display: block;
    margin-left: 0.5rem;
  }
  aside.path .float a:last-child::after {
    display: none;
  }
  /*********************
  original style sheet
  *********************/
  #keyvisual {
    background-color: #f0f7fc;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
    position: relative;
    height: auto;
  }
  #keyvisual .bg {
    width: 100%;
    position: relative;
    margin-top: 80px;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  #keyvisual .bg .s svg {
    height: 70px;
    width: 100%;
  }
  #keyvisual .bg .e {
    position: absolute;
    z-index: 100;
  }
  #keyvisual .bg .e svg {
    height: 35px;
    width: 100%;
  }
  #keyvisual .bg .middle {
    height: 160px;
    width: 100%;
    background-color: #b0deec;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  #keyvisual .road {
    position: absolute;
    bottom: 20px;
    width: 100%;
    left: 0;
    right: 0;
    height: 10px;
    -webkit-transform: rotate(3deg);
            transform: rotate(3deg);
  }
  #keyvisual .road .car {
    display: block;
    width: 110px;
    bottom: 0;
    right: 0;
    position: absolute;
    -webkit-animation: car_moving 32s linear infinite;
            animation: car_moving 32s linear infinite;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
    -webkit-animation-delay: 0s;
            animation-delay: 0s;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
  }
  @-webkit-keyframes car_moving {
    from {
      right: -200px;
    }
    to {
      right: calc(100% + 600px);
    }
  }
  @keyframes car_moving {
    from {
      right: -200px;
    }
    to {
      right: calc(100% + 600px);
    }
  }
  #keyvisual .road .car img {
    width: 100%;
    display: block;
  }
  #keyvisual .float {
    width: calc(100% - 20px);
    margin: 0;
  }
  #keyvisual .float .content {
    width: 100%;
    bottom: 0;
    position: absolute;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    color: #123d83;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    gap: 0px;
    background-position: center;
    background-size: 150px;
  }
  #keyvisual .float .content > figure {
    margin: 0;
    padding: 0;
    width: 150px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  #keyvisual .float .content > figure img {
    display: block;
  }
  #keyvisual .float .content .desc {
    position: relative;
    margin-bottom: 60px;
  }
  #keyvisual .float .content .desc .cc {
    width: calc(100% + 120px);
    position: absolute;
    top: -50px;
    right: auto;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
  }
  #keyvisual .float .content .desc .name {
    margin-bottom: 0.5rem;
  }
  #keyvisual .float .content .desc .name .s {
    font-size: 0.8rem;
    margin-bottom: 0.25rem;
  }
  #keyvisual .float .content .desc .name .m {
    font-size: 2.1rem;
  }
  #keyvisual .float .pr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
  #keyvisual .float .pr .time {
    border-radius: 5px;
    padding: 2px 5px;
    line-height: 100%;
    font-size: 0.6rem;
    margin-bottom: 0.5rem;
  }
  #keyvisual .float .pr p {
    font-size: 0.7rem;
  }
  #keyvisual .float .pr p br {
    display: none;
  }
  #profile {
    padding-top: 50px;
    padding-bottom: 50px;
    background-color: #f0f7fc;
  }
  #profile .float .data {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    gap: 20px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px;
  }
  #profile .float .data figure {
    width: 100px;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  #profile .float .data p {
    margin: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    line-height: 150%;
    font-size: 0.9rem;
    font-weight: normal;
  }
  #profile .float .history {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: relative;
    margin-bottom: 30px;
  }
  #profile .float .history:after {
    display: none;
  }
  #profile .float .history > div {
    width: auto;
    padding: 30px;
    padding-bottom: 0;
    margin-bottom: 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    margin-bottom: 0;
  }
  #profile .float .history > div .caption {
    text-align: center;
    margin-bottom: 20px;
  }
  #profile .float .history > div ul {
    line-height: 150%;
    font-weight: normal;
    font-size: 0.9rem;
    list-style-type: disc;
  }
  #profile .float .personal {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    background-color: white;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    gap: 0;
  }
  #profile .float .personal figure {
    margin-bottom: 0;
  }
  #profile .float .personal .float {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0;
    gap: 0;
  }
  #profile .float .personal .table {
    font-size: 0.8rem;
    width: 100%;
    font-weight: 600;
  }
  #profile .float .personal .table .caption {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  #news {
    padding-top: 20px;
    padding-bottom: 0;
    background-color: #f0f7fc;
  }
  #news .edge {
    background-color: #f0f7fc;
    margin-top: 30px;
  }
  #news .list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 10px 1fr 10px 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
    margin-bottom: 40px;
  }
  #news .list article:nth-child(4) {
    display: none;
  }
  #news .list article time {
    font-size: 0.7rem;
    margin-top: 10px;
    display: block;
  }
  #news .list article a {
    display: block;
    font-size: 0.9rem;
    line-height: 120%;
  }
  #news .list article .thumbnail {
    height: 100px;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    border-radius: 5px;
  }
  #news .list article figure {
    margin: 0;
    border-radius: 10px;
    overflow: hidden;
  }
  #policy {
    margin-bottom: 80px;
  }
  #policy .edge {
    background-color: #f0f7fc;
    margin-bottom: 40px;
  }
  #policy .desc {
    margin-bottom: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 40px;
  }
  #policy .desc p {
    margin: 0;
    font-weight: normal;
    line-height: 150%;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    font-size: 0.9rem;
    flex-grow: 1;
    text-align: justify;
  }
  #policy .desc figure {
    width: auto;
    text-align: center;
  }
  #policy .policy-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 40px;
  }
  #policy .policy-list article {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
  }
  #policy .policy-list article:nth-child(1) figure::before, #policy .policy-list article:nth-child(2) figure::before, #policy .policy-list article:nth-child(3) figure::before, #policy .policy-list article:nth-child(4) figure::before, #policy .policy-list article:nth-child(5) figure::before {
    display: none;
  }
  #policy .policy-list article:nth-child(1) .data h3::before {
    content: "1.";
  }
  #policy .policy-list article:nth-child(2) .data h3::before {
    content: "2.";
  }
  #policy .policy-list article:nth-child(3) .data h3::before {
    content: "3.";
  }
  #policy .policy-list article:nth-child(4) .data h3::before {
    content: "4.";
  }
  #policy .policy-list article:nth-child(5) .data h3::before {
    content: "5.";
  }
  #policy .policy-list article:nth-child(even) .data {
    padding: 0;
  }
  #policy .policy-list article figure {
    width: auto;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
    gap: 10px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    padding: 20px;
  }
  #policy .policy-list article figure::before {
    left: auto;
    right: 0px;
    top: 0px;
    background-color: white;
    position: absolute;
    font-size: 2rem;
    font-family: sans-serif;
    padding: 0.5rem 1rem;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  #policy .policy-list article figure img {
    width: 100%;
  }
  #policy .policy-list article .data {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    padding: 0;
  }
  #policy .policy-list article .data h3 {
    color: #123d83;
    font-size: 1.3rem;
    font-weight: 500;
    margin: 0;
    margin-bottom: 1rem;
  }
  #policy .policy-list article .data p {
    margin: 0;
    font-size: 0.9rem;
    line-height: 150%;
    font-weight: normal;
  }
  #result {
    padding-top: 50px;
    padding-bottom: 30px;
    background-color: #f0f7fc;
  }
  #result .edge {
    background-color: white;
    margin-bottom: 100px;
  }
  #result .edge svg {
    width: 100%;
  }
  #result .desc {
    margin-bottom: 160px;
  }
  #report {
    background-color: #b0deec;
    overflow: hidden;
    padding-top: 50px;
  }
  #report .e {
    display: none;
  }
  #report .instagram {
    margin-bottom: 40px;
  }
  #report .instagram .title {
    gap: 10px;
    font-size: 1rem;
    margin-bottom: 15px;
  }
  #report .instagram .title img {
    width: 35px;
  }
  #report .instagram .title img.literal {
    width: 65px;
    margin-top: 5px;
  }
  #report .youtube {
    margin-bottom: 50px;
  }
  #report .youtube .screen {
    margin-bottom: 10px;
  }
  #report .youtube .screen .adjuster {
    width: 100%;
    position: relative;
  }
  #report .youtube .screen .adjuster iframe {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
  }
  #report .youtube .screen .adjuster:before {
    content: "";
    padding-top: 56.25%;
    display: block;
  }
  #report .youtube .bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 15px;
  }
  #report .youtube .bottom .logo {
    width: 80px;
  }
  #report .youtube .bottom .check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    font-size: 0.6rem;
    gap: 5px;
  }
  #report .youtube .bottom .check a {
    background-color: white;
    color: #1eb8d4;
    font-size: 0.7rem;
    padding: 6px 10px;
    font-weight: 600;
    border-radius: 7px;
    letter-spacing: 0;
    line-height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
  }
  #report .youtube .bottom .check a::after {
    display: none;
  }
  #report .youtube .bottom .check u {
    font-size: 0.65rem;
    text-underline-offset: 0.25rem;
  }
  #report .facebook {
    text-align: center;
    margin-bottom: 50px;
  }
  #report #sbi_images {
    padding: 2px !important;
  }
  #office {
    background-color: #f0f7fc;
    overflow: hidden;
    padding-top: 30px;
  }
  #office .contact {
    font-size: 0.8rem;
    text-align: center;
    padding: 10px 0;
  }
  #office .contact .tel {
    font-size: 1.3rem;
  }
  #office .pr {
    padding: 10px 20px;
  }
  #office .pr .time {
    line-height: 100%;
    font-size: 0.7rem;
    margin-bottom: 0.5rem;
  }
  #office .pr p {
    font-size: 0.7rem;
  }
  #office .map iframe {
    width: 100%;
    height: 70vh;
    margin-bottom: 20px;
  }
  #banners {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  #banners .float {
    padding: 0;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 20px 1fr;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
  #banners .float a img {
    display: block;
  }
  #response_code_404 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  #response_code_404 .lead {
    margin-top: 0;
  }
  #response_code_404 .lead p {
    letter-spacing: 0;
    font-size: 0.7rem;
    margin-top: 1rem;
    font-weight: normal;
    font-family: sans-serif;
  }
  #response_code_404 .caption {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 0;
  }
  #response_code_404 .caption h2 {
    font-size: 1rem;
    font-weight: normal;
  }
  #response_code_404 .lead {
    text-align: center;
  }
  /*********************
  post
  *********************/
  #archive-posts {
    padding-top: 40px;
    padding-bottom: 100px;
  }
  #archive-posts .float {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #archive-posts article {
    border: 0;
  }
  #archive-posts article .entry-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #archive-posts article .entry-title time {
    font-size: 0.8rem;
    margin: 0;
  }
  #archive-posts article .entry-title .title-link {
    font-size: 0.8rem;
    width: auto;
  }
  #archive-posts article .entry-title .thumbnail {
    width: 90px;
  }
  #archive-posts article .entry-title .thumbnail img {
    width: 100%;
    margin: 0;
    display: block;
  }
  #archive-posts article .entry-title .post-edit-link {
    display: none;
  }
  #single-post .caption h2 {
    font-size: 1rem;
    background-color: #053a8e;
    color: white;
    font-weight: normal;
    padding: 0.75rem 1rem;
    border-radius: 10px;
  }
  #single-post article {
    margin-bottom: 30px;
  }
  #single-post .customer .data {
    padding: 10px;
  }
  #single-post .customer .data > div {
    margin-bottom: 1rem;
    font-size: 1rem;
  }
  #single-post .customer .data > div .caption {
    color: #053a8e;
    margin-bottom: 0px;
  }
  #single-post .customer .data > div:first-child {
    margin-top: 10px;
  }
  #single-post .customer .data > div:last-child {
    margin-bottom: 0;
  }
  #single-post .customer .data .map iframe {
    width: 100%;
    height: 270px;
  }
  #single-post .customer .data .buttons {
    display: none;
  }
  #single-post .navigation {
    display: none;
  }
  /*********************
  stylesheet for wordpress native function
  *********************/
  /* password screen */
  #wp_password_screen form {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 60px auto 80px;
    padding: 1rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    border: 0;
    background-color: transparent;
  }
  #wp_password_screen form input[name=post_password] {
    font-size: 1rem;
    text-align: center;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    max-width: none;
    width: 100%;
    letter-spacing: 0;
    border-radius: 0;
    background-color: transparent;
    border: 1px solid #e6eef8;
    background-color: #e6eef8;
    border-radius: 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 10px;
    padding: 0.8rem 0.5rem;
    height: auto;
  }
  #wp_password_screen form input[name=Submit] {
    width: auto;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    padding: 0.5rem 2rem;
    border-radius: 50px;
    font-size: 0.9rem;
    font-family: sans-serif;
  }
  #wp_password_screen form .description {
    width: 100%;
    font-size: 1rem;
  }
  /*********************
  pages
  *********************/
  .table .row {
    font-weight: normal;
    padding: 0.5rem 0;
  }
  /*********************
  pager style
  *********************/
  /*********************
  sidebars
  *********************/
  /*********************
  footer style
  *********************/
  footer.global {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  footer.global .float {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 5px 0;
  }
  footer.global .logo {
    margin: 0;
    margin-bottom: 40px;
    text-align: center;
  }
  footer.global .logo a {
    color: #171717;
  }
  footer.global .pagetop {
    position: fixed;
    right: 10px;
    bottom: 10px;
    height: 60px;
    width: 60px;
  }
  footer.global .pagetop a {
    color: white;
    display: block;
    height: 100%;
    line-height: 60px;
    padding: 0 30px;
  }
  footer.global .content {
    padding: 40px 0;
  }
  #copyright {
    font-size: 0.5rem;
    text-align: center;
    padding: 0;
  }
}
/*********************
DESKTOP
This is the average viewing window. So Desktops, Laptops, and
in general anyone not viewing on a mobile device. Here's where
you can add resource intensive styles.
*********************/
@media only screen and (min-width: 769px) {
  /******************************************************************
  Site Name:
  Author:

  Stylesheet: Desktop Stylsheet

  This is the desktop size. It's larger than an iPad so it will only
  be seen on the Desktop.

  ******************************************************************/
  .pc {
    display: initial;
  }
  .sp {
    display: none !important;
  }
}
/*********************
RETINA (2x RESOLUTION DEVICES)
This applies to the retina iPhone (4s) and iPad (2,3) along with
other displays with a 2x resolution. You can also create a media
query for retina AND a certain size if you want. Go Nuts.
*********************/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  /******************************************************************

  Stylesheet: Retina Screens & Devices Stylesheet

  ******************************************************************/
  /* 

  EXAMPLE 
  Let's say you have an image and you need to make sure it looks ok
  on retina screens. Let's say we have an icon which dimension are
  24px x 24px. In your regular stylesheets, it would look something
  like this:

  .icon {
  	width: 24px;
  	height: 24px;
  	background: url(img/test.png) no-repeat;
  }

  For retina screens, we have to make some adjustments, so that image
  doesn't look blurry. So, taking into account the image above and the
  dimensions, this is what we would put in our retina stylesheet:

  .icon {
  	background: url(img/test@2x.png) no-repeat;
  	background-size: 24px 24px;
  }

  So, you would create the same icon, but at double the resolution, meaning 
  it would be 48px x 48px. You'd name it the same, but with a @2x at the end
  (this is pretty standard practice). Set the background image so it matches
  the original dimensions and you are good to go. 

  */
}
/*********************
PRINT STYLESHEET
Feel free to customize this. Remember to add things that won't make
sense to print at the bottom. Things like nav, ads, and forms should
be set to display none.
*********************/
@media print {
  /******************************************************************
  Stylesheet: Print Stylesheet
  ******************************************************************/
  * {
    text-shadow: none !important;
    -webkit-filter: none !important;
            filter: none !important;
    -ms-filter: none !important;
  }
}
@media print {
  .single-customer {
    padding: 1rem !important;
  }
  .single-customer header.global,
  .single-customer footer.global,
  .single-customer #page-visual,
  .single-customer aside.path,
  .single-customer .navigation {
    display: none;
  }
  .single-customer #layout, .single-customer #content {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    padding: 0;
    margin: 0;
    -ms-flex: auto;
        flex: auto;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    flex-grow: 1;
  }
  .single-customer #single-post {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin: 0;
    padding: 0;
  }
  .single-customer #single-post .caption h2 {
    font-size: 1.25rem;
    background-color: #053a8e !important;
    color: white !important;
    font-weight: normal;
    padding: 0.75rem 1rem;
    border-radius: 10px;
  }
  .single-customer #single-post .float {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .single-customer #single-post article {
    margin: 0;
    -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
            flex-grow: 1 !important;
    height: 100%;
    flex-grow: 1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .single-customer #single-post .customer .data {
    border: 0;
    padding: 0;
    margin: 0;
    font-size: 0.9rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    height: 100% !important;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .single-customer #single-post .customer .data > div {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 15% 1fr;
    grid-template-columns: 15% 1fr;
    border-bottom: 1px solid #333;
    font-size: 0.9rem;
    margin-bottom: 1rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  .single-customer #single-post .customer .data > div.map {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    border-bottom: 0;
  }
  .single-customer #single-post .customer .data > div.buttons {
    display: none;
  }
  .single-customer #single-post .customer .data > div iframe {
    height: 100%;
    width: 100%;
    display: block !important;
  }
}