@charset 'UTF-8';

/* Document
   ========================================================================== */

html {
font-family: sans-serif;
/* 1 */
line-height: 1.15;
/* 2 */

    -ms-text-size-adjust: 100%;
/* 3 */
-webkit-text-size-adjust: 100%;
/* 3 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
font-size: 2em;
margin: .67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main {
/* 1 */
display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
/* 1 */
overflow: visible;
box-sizing: content-box;
/* 1 */
height: 0;
/* 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
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
background-color: transparent;
/* 1 */

-webkit-text-decoration-skip: objects;
/* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

a:active,
a:hover {
outline-width: 0;
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
/* 1 */
text-decoration: underline;
/* 2 */
text-decoration: underline dotted;
border-bottom: none;
/* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
font-weight: bolder;
}

/**
 * 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 style in Android 4.3-.
 */

dfn {
font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
color: #000;
background-color: #ff0;
}

/**
 * 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: -.25em;
}

sup {
top: -.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
display: none;
height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
overflow: hidden;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
font-family: sans-serif;
/* 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;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type='button'],
[type='reset'],
[type='submit'] {
-webkit-appearance: button;
/* 2 */
}

/**
 * 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 {
padding: 0;
border-style: none;
}

/**
 * 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;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */

fieldset {
margin: 0 2px;
padding: .35em .625em .75em;
border: 1px solid #c0c0c0;
}

/**
 * 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 {
/* 2 */
display: table;
box-sizing: border-box;
/* 1 */
max-width: 100%;
/* 1 */
padding: 0;
/* 3 */
white-space: normal;
/* 1 */
color: inherit;
/* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
display: inline-block;
/* 1 */
vertical-align: baseline;
/* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

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'] {
/* 1 */
outline-offset: -2px;

-webkit-appearance: textfield;
/* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

[type='search']::-webkit-search-cancel-button,
[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 {
/* 1 */
font: inherit;

-webkit-appearance: button;
/* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details,
menu {
display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
display: none;
}

/* =================================================
    Elements (site based)
   ================================================= */

/*
 html, body
----------------------------*/

html {
font-size: 62.5%;
}

body {
font-family: Meiryo, \30e1\30a4\30ea\30aa, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'MS PGothic', sans-serif;
font-size: 1.4rem;
line-height: 1.71429;
min-width: 950px;
color: #223;
background-color: #fff;
}

/*
 block  ( except table,form-related )
----------------------------*/

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl {
margin: 0 0 20px;
}

/* heading */

h1,
h2,
h3,
h4,
h5,
h6 {
font-weight: bold;
}

h1 {
font-size: 3.6rem;
line-height: 1.38889;
}

h2 {
font-size: 2.8rem;
line-height: 1.42857;
}

h3 {
font-size: 2.2rem;
line-height: 1.36364;
}

h4 {
font-size: 2rem;
line-height: 1.5;
}

h5 {
font-size: 1.8rem;
line-height: 1.66667;
}

h6 {
font-size: 1.6rem;
line-height: 1.5;
}

/* list */

ul,
ol {
padding: 0;
list-style: none;
list-style-position: outside;
}

dd {
margin-left: 0;
}

/*
 inline
----------------------------*/

b,
dfn,
em,
q,
small,
strong,
sub,
sup {
font-style: normal;
}

em {
font-weight: bold;
}

strong {
font-weight: bold;
}

sub,
sup {
font-size: 1.2rem;
font-size: 85%;
position: relative;
vertical-align: baseline;
}

h3 sub,
h4 sub,
h5 sub,
h6 sub,
h3
sup,
h4
sup,
h5
sup,
h6
sup {
font-weight: normal;
}

sub {
top: 4px;
}

sup {
top: -4px;
}

/* link */

a {
color: #314da5;
}

a:link,
a:visited {
text-decoration: none;
}

a:hover,
a:active,
a:focus {
text-decoration: underline;
color: #0074bd;
}

/*
 frame content
----------------------------*/

.str-main .str-content .str-contentBody,
.str-main > .str-serviceTitle > .content,
.str-main > .str-serviceTitle > .nav-service > ul,
.str-main > .str-contentInfo > .str-contentBody,
.str-footer > .nav-pageTop > span,
.str-footer > .str-content > .str-contentBody,
.str-siteInfo > .str-contentBody,
.mod-hdg2 > span {
max-width: 1100px;
margin-right: auto;
margin-left: auto;
}

/*
 .mod-link-icon
----------------------------*/

a img[src*='icon-'] {
margin-right: 5px;
margin-left: 5px;
vertical-align: middle;
}

/*
 str-content
----------------------------*/

.str-content .str-contentBody > *:last-child {
margin-bottom: 0;
}

.str-main .str-content .str-contentBody {
padding-bottom: 70px;
}

/*
 mod-hdg1
----------------------------*/

.mod-hdg1 {
margin-top: 10px; /* モジュールに余白追加 */
margin-bottom: 44px;
text-align: center;
}

/*
 step
----------------------------*/

.mod-step {
margin-bottom: 40px;
}

.mod-step .stepItem {
position: relative;
display: table;
box-sizing: border-box;
width: 100%;
margin-bottom: 75px;
padding: 26px 28px;
table-layout: fixed;
border: 1px solid #d2d2d2;
border-radius: 8px;
}

.mod-step .stepItem > * {
display: table-cell;
vertical-align: top;
}

.mod-step .stepItem > div:not(.content) {
text-align: center;
}

.mod-step .stepItem > div:not(.content) > p {
font-family: Arial;
font-size: 3.6rem;
line-height: 1;
margin-bottom: 20px;
padding-bottom: 16px;
color: #46ba4b;
border-bottom: 1px solid #c5c3b6;
}

.mod-step .stepItem > div:not(.content) > p .num {
font-size: 4rem;
font-weight: bold;
padding-left: 20px;
color: #009942;
}

.mod-step .stepItem > .txt {
width: 24.18426%;
}

.mod-step .stepItem > .txt + .content {
width: 75.81574%;
}

.mod-step .stepItem > .num {
width: 110px;
}

.mod-step .stepItem > .num p {
font-size: 4rem;
font-weight: bold;
padding-left: 0;
color: #009942;
}

.mod-step .stepItem > .num + .content {
width: 100%;
}

.mod-step .stepItem > .img {
width: 34.54894%;
}

.mod-step .stepItem > .img + .content {
width: 65.45106%;
}

.mod-step .stepItem > .content {
padding-left: 30px;
}

.mod-step .stepItem > .content > .title {
font-size: 1.6rem;
font-weight: bold;
margin-bottom: 18px;
}

.mod-step .stepItem > .content :last-child {
margin-bottom: 0;
}

.mod-step .stepItem > .content > .box {
margin-bottom: 18px;
padding: 15px 20px;
border: 1px solid #d2d2d2;
background-color: #f4f4f4;
}

.mod-step .stepItem.type-start {
padding-top: 38px;
padding-bottom: 35px;
text-align: center;
border-color: #009841;
}

.mod-step .stepItem.type-start::after {
display: none;
}

.mod-step .stepItem.type-start .title {
font-size: 2.8rem;
font-weight: bold;
margin-top: -7px;
margin-bottom: 14px;
color: #009841;
}

.mod-step .stepItem.type-start .title:first-child:last-child {
margin-top: 0;
margin-bottom: 0;
}

.mod-step .stepItem.type-start .content:first-child {
padding-left: 0;
}

.mod-step .stepItem::after {
position: absolute;
right: 0;
bottom: -42px;
left: 0;
display: block;
width: 20px;
height: 20px;
margin: 0 auto;
content: '';
-webkit-transform: rotate(45deg);
        transform: rotate(45deg);
border-right: 2px solid #333;
border-bottom: 2px solid #333;
}

.mod-step .stepItem:last-child {
margin-bottom: 0;
}

.mod-step .stepItem:last-child::after {
display: none;
}

@media only screen and (max-width: 1120px) {
.str-main .str-content .str-contentBody,
.str-main > .str-serviceTitle > .content,
.str-main > .str-serviceTitle > .nav-service > ul,
.str-main > .str-contentInfo > .str-contentBody,
.str-footer > .nav-pageTop > span,
.str-footer > .str-content > .str-contentBody,
.str-siteInfo > .str-contentBody,
.mod-hdg2 > span {
padding-right: 10px;
padding-left: 10px;
}

@media only screen and (max-width: 767px) {
body {
font-size: 14px;
line-height: 1.57143;
min-width: 320px;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl {
margin-bottom: 12px;
}

h1 {
font-size: 2rem;
}

h2 {
font-size: 1.7rem;
}

h3 {
font-size: 1.5rem;
}

h4 {
font-size: 1.5rem;
}

h5 {
font-size: 1.4rem;
}

h6 {
font-size: 1.4rem;
}

table {
margin-bottom: 16px;
}

button {
line-height: 1.57143;
}

.mod-hdg1 {
margin-bottom: 20px;
}

.str-main .str-content .str-contentBody {
padding-bottom: 36px;
}

.mod-step .stepItem {
display: block;
}

.mod-step .stepItem > * {
display: block;
}

.mod-step .stepItem > div:not(.content) {
width: 100%;
margin-bottom: 20px;
}

.mod-step .stepItem {
padding: 19px;
}

.mod-step .stepItem > .img {
width: 100%;
}

.mod-step .stepItem > .img + .content {
width: 100%;
padding-left: 0;
text-align: center;
}

.mod-step .stepItem .content {
width: 100% !important;
padding-left: 0;
}





}










