@charset "UTF-8";
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document ========================================================================== */
/** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. */
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/* Sections ========================================================================== */
/** Remove the margin in all browsers. */
body { margin: 0; }

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

/* Grouping content ========================================================================== */
/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/* Text-level semantics ========================================================================== */
/** Remove the gray background on active links in IE 10. */
a { background-color: transparent; }

/** 1. Remove the bottom border in Chrome 57- 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 2 */ }

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

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

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

sub { bottom: -0.25em; }

sup { top: -0.5em; }

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

/* Forms ========================================================================== */
/** 1. Change the font styles in all browsers. 2. Remove the margin in Firefox and Safari. */
button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }

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

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

/** Correct the inability to style clickable types in iOS and Safari. */
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }

/** Remove the inner border and padding in Firefox. */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

/** Restore the focus styles unset by the previous rule. */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

/** Correct the padding in Firefox. */
fieldset { padding: 0.35em 0.75em 0.625em; }

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

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

/** Remove the default vertical scrollbar in IE 10+. */
textarea { overflow: auto; }

/** 1. Add the correct box sizing in IE 10. 2. Remove the padding in IE 10. */
[type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

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

/** Remove the inner padding in Chrome and Safari on macOS. */
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

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

/* Interactive ========================================================================== */
/* Add the correct display in Edge, IE 10+, and Firefox. */
details { display: block; }

/* Add the correct display in all browsers. */
summary { display: list-item; }

/* Misc ========================================================================== */
/** Add the correct display in IE 10+. */
template { display: none; }

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

/*--Layout--*/
h1, h2, h3, h4, h5, h6 { font-size: 1em; font-weight: normal; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; }

#body_wrap.home #content { max-width: 1600px; }
#body_wrap.home #main_content { max-width: 1280px; }

.top-s1 { display: flex; justify-content: space-between; }
.top-s1 > div:nth-child(1) { width: 36%; }
.top-s1 > div:nth-child(2) { width: 60%; }
@media (max-width: 960px) { .top-s1 { flex-direction: column; }
  .top-s1 > div:nth-child(n) { width: 100%; margin-right: 0; } }

.top-s2 { display: flex; justify-content: space-between; align-items: center; }
.top-s2 > div:nth-child(1) { width: 45%; }
.top-s2 > div:nth-child(2) { width: 100%; }
@media (max-width: 960px) { .top-s2 { flex-direction: column; }
  .top-s2 > div:nth-child(n) { width: 100%; margin-right: 0; } }
.top-s2 > div:nth-child(1) { background: url("../img/top3.png") left top/contain no-repeat; padding: 30px 0 15px 160px; margin-right: 30px; flex-shrink: 0; }
.top-s2 strong { color: #E4007F; }

.home .post_content h2.is-style-section_ttl { text-align: left; font-size: 2rem; }
.home .post_content h2.is-style-section_ttl small { margin: 0; color: #333 !important; -webkit-text-fill-color: #333 !important; }
.home .post_content h2.is-style-section_ttl:after { content: none; }
@media (max-width: 960px) { .home .post_content h2.is-style-section_ttl { font-size: 1.5rem; padding-bottom: 0; } }

.top-s3 { position: relative; padding-top: 50px; margin-bottom: 0; z-index: 1; }
.top-s3:before { content: ''; position: absolute; inset: 0; display: block; width: 100vw; height: 100%; margin: 0 calc(50% - 50vw); background: #E9E8E9; z-index: -1; }
.top-s3:before { height: 20%; top: auto; }
.top-s3 > div:nth-child(1) { width: 45%; }
.top-s3 > div:nth-child(1) img { display: block; }
.top-s3 > div:nth-child(2) { position: absolute; width: 70%; top: 0; right: 0; }
@media (max-width: 960px) { .top-s3 > div:nth-child(1) { width: 100%; }
  .top-s3 > div:nth-child(2) { width: 100%; top: auto; bottom: -20px; right: auto; left: 30px; } }

.home .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) { background: transparent; }

.home .post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)):before { content: none; }

.top-s4 { position: relative; background: #77C4EE; padding: 20px 0; margin-bottom: 0; }
.top-s4:before { content: ''; position: absolute; inset: 0; display: block; width: 100vw; height: 100%; margin: 0 calc(50% - 50vw); background: #E9E8E9; z-index: -1; }
.top-s4 h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) { text-align: center; font-family: serif; font-size: 2rem; position: relative; padding: 30px 0; width: 960px; margin: auto; }
@media (max-width: 960px) { .top-s4 h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) { width: auto; margin-right: 10px; margin-left: 10px; } }
.top-s4 h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) strong { font-size: 2.2rem; }
.top-s4 h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) img { display: block; position: absolute; width: 180px; top: 0; right: 0; }
@media (max-width: 960px) { .top-s4 h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) { font-size: 1.5rem; }
  .top-s4 h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) img { width: 90px; position: static; margin-left: auto; }
  .top-s4 h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) strong { font-size: 1.6rem; } }
.top-s4 h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) { color: #17288B; text-align: center; margin-bottom: 1em; }
.top-s4 h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) strong { font-size: 120%; }
.top-s4 h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)):before { content: none; }
@media (max-width: 960px) { .top-s4 h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) { margin-top: 0; } }
.top-s4 > div { width: 960px; margin: auto; text-align: center; line-height: 2; }
@media (max-width: 960px) { .top-s4 > div { width: auto; margin-right: 10px; margin-left: 10px; } }
@media (max-width: 960px) { .top-s4 br { display: none; } }

.top-s5 { display: flex; justify-content: space-between; position: relative; padding: 0 40px 40px; background-image: linear-gradient(180deg, #77C4EE 0 30%, transparent 30% 100%); margin-bottom: 0; }
.top-s5:before { content: ''; position: absolute; inset: 0; display: block; width: 100vw; height: 100%; margin: 0 calc(50% - 50vw); background: #E9E8E9; z-index: -1; }
.top-s5 > div { width: 32%; }
@media (max-width: 960px) { .top-s5 { padding-left: 0; padding-right: 0; } }

.top-s6 { display: flex; justify-content: space-between; position: relative; background: url("../img/top3.png") left top/160px no-repeat; padding: 30px 0 15px 160px; margin-bottom: 0; }
.top-s6 > div:nth-child(1) { width: 55%; }
.top-s6 > div:nth-child(2) { width: 40%; }
@media (max-width: 960px) { .top-s6 { flex-direction: column; }
  .top-s6 > div:nth-child(n) { width: 100%; margin-right: 0; } }
.top-s6:before { content: ''; position: absolute; inset: 0; display: block; width: 100vw; height: 100%; margin: 0 calc(50% - 50vw); background: #E9E8E9; z-index: -1; }
.top-s6 ul { list-style: none; padding: 0; font-family: serif; }
.top-s6 ul li:before { display: inline-block; width: 3em; margin-right: 0.5em; color: #E4007F; text-align: right; }
.top-s6 ul li:nth-child(1):before { content: '●'; }
.top-s6 ul li:nth-child(2):before { content: '●●'; }
.top-s6 ul li:nth-child(3):before { content: '●●●'; }
.top-s6 .top-btn { margin-left: auto; }
@media (max-width: 960px) { .top-s6 { padding: 0; background-size: 80px; background-position: right top; }
  .top-s6 h2 { padding-right: 50px; margin-bottom: 20px; }
  .top-s6 div:nth-child(1) { margin-bottom: 20px; }
  .top-s6 ul li:before { display: inline; } }

.top-btn { font-size: 1.25rem; width: 10em; text-align: center; }
.top-btn span { color: #E4007F; }
.top-btn a { display: block; background: #17288B; color: #fff; text-decoration: none; line-height: 2; border-radius: 1em; }
.top-btn a:hover { opacity: 0.8; }

.top-s7 { position: relative; background: #F5F8FC; border-radius: 2em; padding: 40px 80px; margin-bottom: 0; }
.top-s7:before { content: ''; position: absolute; inset: 0; display: block; width: 100vw; height: 100%; margin: 0 calc(50% - 50vw); background: #E9E8E9; z-index: -1; }
.top-s7 h2 { position: relative; margin-bottom: 0; }
.top-s7 h2 img { display: block; }
.top-s7 h2 img:nth-child(1) { width: 30%; margin: auto; }
.top-s7 h2 img:nth-child(2) { position: absolute; width: 40%; top: -50px; right: -80px; }
.top-s7 h3 { text-align: center; font-size: 1.5rem; color: #17288B; margin-top: 0; }
.top-s7 h3 span { display: block; color: #E4007F; font-size: 1rem; }
.top-s7 h4 { border-left: solid 5px #E4007F; }
@media (max-width: 960px) { .top-s7 { padding: 20px; }
  .top-s7 h2 img:nth-child(2) { width: 40%; top: 0; right: 0; } }

.top-s7-section { margin-top: 40px; display: flex; justify-content: space-between; align-items: center; }
.top-s7-section > div:nth-child(1) { width: 30%; }
.top-s7-section > div:nth-child(2) { width: 65%; }
@media (max-width: 960px) { .top-s7-section { flex-direction: column; }
  .top-s7-section > div:nth-child(n) { width: 100%; margin-right: 0; } }

.top-s7-section2 { margin-top: 40px; display: flex; justify-content: space-between; align-items: center; }
.top-s7-section2 > div:nth-child(1) { width: 49%; }
.top-s7-section2 > div:nth-child(2) { width: 49%; }
@media (max-width: 960px) { .top-s7-section2 { flex-direction: column; }
  .top-s7-section2 > div:nth-child(n) { width: 100%; margin-right: 0; } }

.top-s8 { background: #E9E8E9; position: relative; padding: 60px 80px 0; margin-bottom: 0; }
.top-s8:before { content: ''; position: absolute; inset: 0; display: block; width: 100vw; height: 100%; margin: 0 calc(50% - 50vw); background: #E9E8E9; z-index: -1; }
@media (max-width: 960px) { .top-s8 { padding: 20px; } }

.home .post_content .top-s8 h2.is-style-section_ttl { text-align: center; margin-bottom: 0; padding-bottom: 0; }
.home .post_content .top-s8 h2.is-style-section_ttl small { margin: auto; }

.top-s8-seiction { display: flex; justify-content: space-between; align-items: center; }
.top-s8-seiction > div:nth-child(1) { width: 30%; }
.top-s8-seiction > div:nth-child(2) { width: 65%; }
@media (max-width: 960px) { .top-s8-seiction { flex-direction: column; }
  .top-s8-seiction > div:nth-child(n) { width: 100%; margin-right: 0; } }
.top-s8-seiction span { font-weight: bold; color: #17288B; }

.top-s9 { padding: 40px 80px 0; position: relative; }
.top-s9:before { content: ''; position: absolute; inset: 0; display: block; width: 100vw; height: 100%; margin: 0 calc(50% - 50vw); background: #E9E8E9; z-index: -1; }
.top-s9:before { height: 80%; }
@media (max-width: 960px) { .top-s9 { padding: 20px; } }

.top-s10 { background: #F5F8FC; padding: 40px 0; }
.top-s10 > div:nth-child(1) { max-width: 100%; width: 1020px; margin: 0 auto 20px; }
.top-s10 > div:nth-child(1) a:hover { opacity: 0.8; }
.top-s10 > div:nth-child(2) { max-width: 100%; width: 960px; margin: auto; }

.home .post_content .top-s11 h2.is-style-section_ttl { text-align: center; margin-bottom: 0; padding-bottom: 0; }
.home .post_content .top-s11 h2.is-style-section_ttl small { margin: auto; }

.top-s11 { padding-bottom: 150px; position: relative; }
.top-s11:before, .top-s11:after { content: ''; display: block; position: absolute; width: 120%; height: 100%; z-index: -1; top: 0; bottom: 0; left: -10%; right: -10%; }
.top-s11:before { background: url("../img/top22.jpg") center top/contain no-repeat; }
.top-s11:after { background: url("../img/top23.jpg") center bottom/contain no-repeat; }
.top-s11 h3 { text-align: center; font-size: 1.5rem; position: relative; }
.top-s11 h3:after { content: ''; display: block; width: 8em; height: 1px; position: absolute; bottom: 0; left: 0; right: 0; margin: auto; background: #17288B; }
.top-s11 h4 { font-size: 1.75rem; line-height: 2; border-radius: 1em; color: #fff; font-family: serif; text-align: center; }
.top-s11 h4:nth-of-type(1) { background: #094264; }
.top-s11 h4:nth-of-type(2) { background: #005D86; }
.top-s11 h4:nth-of-type(3) { background: #E76C5D; }
.top-s11 ul { list-style: none; padding: 0 8em; }
.top-s11 ul li { display: inline-block; margin-right: 3em; font-weight: bold; font-size: 1.25rem; }
@media (max-width: 960px) { .top-s11 { padding-bottom: 30px; }
  .top-s11 h3 { margin: 20px 0; }
  .top-s11 h4 { font-size: 1.25rem; }
  .top-s11 ul { padding: 0; }
  .top-s11 ul li { font-size: 1.125rem; margin-right: 2em; } }

.top-s11-title { position: relative; }
.top-s11-title img { display: block; }
.top-s11-title img:nth-child(1) { position: absolute; top: 0; left: 0; width: 277px; }
.top-s11-title img:nth-child(2) { width: 800px; margin: auto; }
@media (max-width: 960px) { .top-s11-title img:nth-child(1) { width: 100px; } }

.home .post_content .top-s12 h2.is-style-section_ttl, .home .post_content .top-s13 h2.is-style-section_ttl { text-align: center; margin-bottom: 30px; }
.home .post_content .top-s12 h2.is-style-section_ttl small, .home .post_content .top-s13 h2.is-style-section_ttl small { margin: auto; }
.home .post_content .top-s12 h2.is-style-section_ttl:after, .home .post_content .top-s13 h2.is-style-section_ttl:after { content: ''; width: 10em; left: 0; right: 0; margin: auto; }

.top-s12-section { display: flex; justify-content: space-between; }
.top-s12-section > div:nth-child(1) { width: 55%; }
.top-s12-section > div:nth-child(2) { width: 40%; }
@media (max-width: 960px) { .top-s12-section { flex-direction: column; }
  .top-s12-section > div:nth-child(n) { width: 100%; margin-right: 0; } }
.top-s12-section p { font-size: 1.25rem; }
.top-s12-section span { font-weight: bold; color: #17288B; }
.top-s12-section .top-btn { margin-top: 3em; margin-left: auto; }
@media (max-width: 960px) { .top-s12-section p { font-size: 1.125rem; }
  .top-s12-section .top-btn { margin-top: 1em; margin: auto; }
  .top-s12-section div:nth-child(1) { margin-bottom: 20px; } }

.top-s13 p { font-size: 1.25rem; text-align: center; }
.top-s13 span { font-weight: bold; color: #17288B; }
@media (max-width: 960px) { .top-s13 p { font-size: 1.125rem; text-align: left; } }

.top-s13-section { width: 960px; margin: auto; display: flex; justify-content: space-between; background: #B2DCF5; align-items: center; margin-top: 1em; }
@media (max-width: 960px) { .top-s13-section { width: auto; margin-right: 10px; margin-left: 10px; } }
.top-s13-section > div:nth-child(1) { width: 40%; }
.top-s13-section > div:nth-child(2) { width: 60%; }
@media (max-width: 768px) { .top-s13-section { flex-direction: column; }
  .top-s13-section > div:nth-child(n) { width: 100%; margin-right: 0; } }
.top-s13-section > div:nth-child(2) { text-align: center; }
.top-s13-section .top-btn { margin: 20px auto 0; }
.top-s13-section img { display: block; }
.top-s13-section strong { font-size: 150%; }
@media (max-width: 960px) { .top-s13-section > div:nth-child(2) { padding: 20px; }
  .top-s13-section > div:nth-child(2) p { text-align: center; } }

.home .post_content .top-s14 h2.is-style-section_ttl { text-align: center; margin-bottom: 80px; }
.home .post_content .top-s14 h2.is-style-section_ttl small { margin: auto; }
.home .post_content .top-s14 h2.is-style-section_ttl:after { content: ''; width: 10em; left: 0; right: 0; margin: auto; }

.top-s14 { width: 960px; margin: auto; background: url("../img/top3.png") right top/500px no-repeat; padding-bottom: 60px; margin-bottom: 0; }
@media (max-width: 960px) { .top-s14 { width: auto; margin-right: 10px; margin-left: 10px; } }
@media (max-width: 960px) { .top-s14 { background-size: 100px; background-position: right bottom; } }

.top-s14-section { display: flex; align-items: center; margin-bottom: 20px; }
@media (max-width: 960px) { .top-s14-section { flex-direction: column; }
  .top-s14-section > div { margin: 20px 0; } }

.top-s14-section2 { width: 960px; margin: auto; }
@media (max-width: 960px) { .top-s14-section2 { width: auto; margin-right: 10px; margin-left: 10px; } }
.top-s14-section2 img { display: block; width: 295px; }

.home .post_content .top-s15 h2.is-style-section_ttl { text-align: center; margin-bottom: 40px; }
.home .post_content .top-s15 h2.is-style-section_ttl small { margin: auto; }

.top-s15 .swell-block-fullWide.information { background: #D0DEED; }

.home .post_content .top-s16 { background: url("../img/sakura2.png") center bottom/contain no-repeat; }
.home .post_content .top-s16 h2 { text-align: center; margin-bottom: 0; }
.home .post_content .top-s16 h2 small { margin: auto; }
.home .post_content .top-s16 h2 span { display: inline-block; margin: auto; position: relative; }
.home .post_content .top-s16 h2 span:before, .home .post_content .top-s16 h2 span:after { content: ''; display: block; position: absolute; background: url("../img/sakura.png") center/contain no-repeat; width: 30px; height: 28.8px; margin: auto; top: 0; bottom: 0; }
.home .post_content .top-s16 h2 span:before { left: -37.5px; }
.home .post_content .top-s16 h2 span:after { right: -37.5px; }
.home .post_content .top-s16 h2:after { content: ''; width: 10em; left: 0; right: 0; margin: auto; height: 2px; background: linear-gradient(135deg, #1c2187, #0095d3) !important; }
.home .post_content .top-s16 .s16-contents { display: flex; justify-content: space-between; }
.home .post_content .top-s16 .s16-contents > div { width: 49%; position: relative; }
.home .post_content .top-s16 .s16-head { position: absolute; display: flex; align-items: flex-end; }
.home .post_content .top-s16 h3 { position: relative; width: auto; flex-shrink: 0; top: 0; left: 0; margin: 0; padding: 0; z-index: 1; }
.home .post_content .top-s16 h3 img { display: block; width: auto; height: 225px; }
.home .post_content .top-s16 h3 span { color: #fff; position: absolute; display: block; margin: auto; left: 0; right: 0; bottom: calc(0.5em + 12px); text-align: center; font-size: 1rem; line-height: 1.1; }
.home .post_content .top-s16 h4 { margin: 0 0 0 1em; padding: 0; border: none; }
.home .post_content .top-s16 .s16-body { width: calc(100% - 50px); height: calc( 100% - 100px - 40px ); display: flex; position: relative; left: 50px; top: 100px; border: solid 1px #888; border-radius: 15px; padding: 140px 1em 1em; margin-bottom: 140px !important; }
@media screen and (max-width: 959px) { .home .post_content .top-s16 { background-position: left 10vh; background-size: 250vw; }
  .home .post_content .top-s16 h2 { padding-bottom: 20px; } }
@media screen and (max-width: 758px) { .home .post_content .top-s16 .s16-contents { flex-direction: column; }
  .home .post_content .top-s16 .s16-contents > div { width: 100%; }
  .home .post_content .top-s16 .s16-head { flex-direction: column; align-items: center; margin: auto; right: 0; left: 0; }
  .home .post_content .top-s16 h3 img { height: 50vw; }
  .home .post_content .top-s16 h3 span { bottom: calc(4vw + 0.5em); }
  .home .post_content .top-s16 .s16-body { width: 100%; position: relative; left: 0; top: 25vw; border: solid 1px #888; border-radius: 15px; padding: calc( 25vw + 40px ) 1em 1em; margin-bottom: 28vw !important; } }

.l-footer__foot { background: #000; padding: 100px 0; color: #fff; }
.l-footer__foot .footer-contents { display: flex; flex-direction: row; align-items: center; margin-bottom: 40px; }
.l-footer__foot .footer-logo { width: 200px; margin-left: 50px; flex-shrink: 0; }
.l-footer__foot .l-footer__nav { width: 100%; display: grid; grid-auto-flow: column; grid-template-rows: repeat(5, auto); }
.l-footer__foot .l-footer__nav li:first-child a, .l-footer__foot .l-footer__nav a { font-size: 1rem; border: none; padding: 0.25em 2em; }
@media (max-width: 960px) { .l-footer__foot .footer-contents { flex-direction: column; }
  .l-footer__foot .l-footer__nav { display: block; }
  .l-footer__foot .l-footer__nav li { display: inline-block; }
  .l-footer__foot .footer-logo { margin: auto; } }

/*--CPU--*/
.u-mg0 { margin: 0px !important; }

.u-mt0 { margin-top: 0px !important; }

.u-mr0 { margin-right: 0px !important; }

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

.u-ml0 { margin-left: 0px !important; }

.u-pd0 { padding: 0px !important; }

.u-pt0 { padding-top: 0px !important; }

.u-pr0 { padding-right: 0px !important; }

.u-pb0 { padding-bottom: 0px !important; }

.u-pl0 { padding-left: 0px !important; }

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

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

.u-mr10 { margin-right: 10px !important; }

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

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

.u-pd10 { padding: 10px !important; }

.u-pt10 { padding-top: 10px !important; }

.u-pr10 { padding-right: 10px !important; }

.u-pb10 { padding-bottom: 10px !important; }

.u-pl10 { padding-left: 10px !important; }

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

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

.u-mr20 { margin-right: 20px !important; }

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

.u-ml20 { margin-left: 20px !important; }

.u-pd20 { padding: 20px !important; }

.u-pt20 { padding-top: 20px !important; }

.u-pr20 { padding-right: 20px !important; }

.u-pb20 { padding-bottom: 20px !important; }

.u-pl20 { padding-left: 20px !important; }

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

.u-mt30 { margin-top: 30px !important; }

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

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

.u-ml30 { margin-left: 30px !important; }

.u-pd30 { padding: 30px !important; }

.u-pt30 { padding-top: 30px !important; }

.u-pr30 { padding-right: 30px !important; }

.u-pb30 { padding-bottom: 30px !important; }

.u-pl30 { padding-left: 30px !important; }

.u-mg40 { margin: 40px !important; }

.u-mt40 { margin-top: 40px !important; }

.u-mr40 { margin-right: 40px !important; }

.u-mb40 { margin-bottom: 40px !important; }

.u-ml40 { margin-left: 40px !important; }

.u-pd40 { padding: 40px !important; }

.u-pt40 { padding-top: 40px !important; }

.u-pr40 { padding-right: 40px !important; }

.u-pb40 { padding-bottom: 40px !important; }

.u-pl40 { padding-left: 40px !important; }

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

.u-mt50 { margin-top: 50px !important; }

.u-mr50 { margin-right: 50px !important; }

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

.u-ml50 { margin-left: 50px !important; }

.u-pd50 { padding: 50px !important; }

.u-pt50 { padding-top: 50px !important; }

.u-pr50 { padding-right: 50px !important; }

.u-pb50 { padding-bottom: 50px !important; }

.u-pl50 { padding-left: 50px !important; }

.u-fs-xxsmall { font-size: 0.75rem; }

.u-fs-xsmall { font-size: 0.875rem; }

.u-fs-small { font-size: 0.9375rem; }

.u-fs-normal { font-size: 1rem; }

.u-fs-large { font-size: 1.125rem; }

.u-fs-xlarge { font-size: 1.25rem; }

.u-fs-xxlarge { font-size: 1.5rem; }

.u-fs-xxxlarge { font-size: 1.75rem; }

.u-fc-text { color: #333; }

.u-fc-strong { color: #E4007F; }

.u-fc-coution { color: #E9E8E9; }

.u-fc-hover { color: #c00; }

.u-ls-disc { list-style-type: disc !important; padding-left: 1.5em !important; }

.u-ls-circle { list-style-type: circle !important; padding-left: 1.5em !important; }

.u-ls-square { list-style-type: square !important; padding-left: 1.5em !important; }

.u-ls-decimal { list-style-type: decimal !important; padding-left: 1.5em !important; }

.u-ls-ur { list-style-type: upper-roman !important; padding-left: 1.5em !important; }

.u-ls-none { list-style-type: none !important; padding-left: 1.5em !important; }

.u-ls-play li:before { font-family: 'FontAwesome'; margin-right: 0.5em; content: ""; }

.u-ls-cog li:before { font-family: 'FontAwesome'; margin-right: 0.5em; content: ""; }

.u-require { padding: 2px 5px; background: #c20f17; color: #fff; border-radius: 4px; margin: 0 4px; }

a.u-btn { background-color: #fff; color: #2a71b9; border: solid 1px #2a71b9; border-radius: 4px; display: inline-block; padding: 0.3em 1em; text-decoration: none; }

.u-fb { font-weight: bold; }

.u-tr { text-align: right; }

.u-tc { text-align: center; }

.u-tl { text-align: left; }

.u-w100 { width: 100% !important; }

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