@charset "UTF-8";

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */

html {
font-family: sans-serif;

    -ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}

body {
margin: 0;
}

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

audio,
canvas,
progress,
video {
display: inline-block;
}

audio:not([controls]) {
display: none;
height: 0;
}

progress {
vertical-align: baseline;
}

template,
[hidden] {
display: none;
}

a {
background-color: transparent;

-webkit-text-decoration-skip: objects;
}

a:active,
a:hover {
outline-width: 0;
}

abbr[title] {
text-decoration: underline;
text-decoration: underline dotted;
border-bottom: none;
}

b,
strong {
font-weight: inherit;
}

b,
strong {
font-weight: bolder;
}

dfn {
font-style: italic;
}

h1 {
font-size: 2em;
margin: .67em 0;
}

mark {
color: #000;
background-color: #ff0;
}

small {
font-size: 80%;
}

sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}

sub {
bottom: -.25em;
}

sup {
top: -.5em;
}

img {
border-style: none;
}

svg:not(:root) {
overflow: hidden;
}

code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1em;
}

figure {
margin: 1em 40px;
}

hr {
overflow: visible;
box-sizing: content-box;
height: 0;
}

button,
input,
select,
textarea {
font: inherit;
margin: 0;
}

optgroup {
font-weight: bold;
}

button,
input {
overflow: visible;
}

button,
select {
text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
padding: 0;
border-style: none;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 1px dotted ButtonText;
}

fieldset {
margin: 0 2px;
padding: .35em .625em .75em;
border: 1px solid #c0c0c0;
}

legend {
display: table;
box-sizing: border-box;
max-width: 100%;
padding: 0;
white-space: normal;
color: inherit;
}

textarea {
overflow: auto;
}

[type="checkbox"],
[type="radio"] {
box-sizing: border-box;
padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}

[type="search"] {
outline-offset: -2px;

-webkit-appearance: textfield;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}

::-webkit-input-placeholder {
opacity: .54;
color: inherit;
}

::-webkit-file-upload-button {
font: inherit;

-webkit-appearance: button;
}

/* =================================================
    contents
   ================================================= */

html {
font-size: 62.5%;
position: relative;
min-height: 100%;
}

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: 16px;
font-size: 1.6rem;
line-height: 1.75;
min-width: 1016px;
}

.str-main {
overflow: hidden;
margin-bottom: 242px;
}

a {
text-decoration: none;
color: #003894;
}

a:hover {
text-decoration: underline;
}

a[target="_blank"] img[src*="icon-"] {
margin-right: 12px;
margin-left: 12px;
vertical-align: middle;
}

p {
margin: 0 0 40px;
}

img {
vertical-align: middle;
}

address {
font-style: normal;
display: inline-block;
}

.mod-wide {
width: 960px;
margin-right: auto;
margin-left: auto;
}

.mod-narrow {
width: 880px;
margin-right: auto;
margin-left: auto;
}

/* 見出し */

.hdg-lv1 {
font-size: 36px;
font-size: 3.6rem;
font-weight: normal;
line-height: 1.5;
margin: 48px 0;
text-align: center;
}

.hdg-lv2 {
font-size: 28px;
font-size: 2.8rem;
font-weight: normal;
margin: 90px 0 40px;
padding: 17px 0 14px;
text-align: center;
border-top: 2px solid #003894;
background-color: #efefef;
}

.hdg-lv3 {
font-size: 20px;
font-size: 2rem;
position: relative;
margin: 56px 0 30px;
padding-left: 25px;
}

.hdg-lv3:before {
position: absolute;
top: 3px;
left: 0;
display: inline-block;
width: 8px;
height: 24px;
content: "";
background-color: #003894;
}

/* テーブル */

.mod-table {
width: 100%;
margin-bottom: 30px;
border-collapse: collapse;
}

.mod-table th,
.mod-table td {
font-weight: normal;
padding: 20px;
text-align: left;
vertical-align: middle;
word-wrap: break-word;
border: 1px solid #ccc;

overflow-wrap: break-word;
}

.mod-table thead {
background-color: #e2e2e2;
}

.mod-table tbody th {
background-color: #f1faff;
}

.mod-table02 {
width: 100%;
margin-bottom: 30px;
border-collapse: collapse;
text-align: left;
}

.mod-table02 th,
.mod-table02 td {
text-align: left;
vertical-align: top;
}

.mod-table02 tr + tr th,
.mod-table02 tr + tr td {
padding-top: 17px;
}

.mod-table02 th {
width: 136px;
}

.w-10 {
width: 10% !important;
}

.w-20 {
width: 20% !important;
}

.w-30 {
width: 30% !important;
}

.w-40 {
width: 40% !important;
}

.w-45 {
width: 45% !important;
}

.w-50 {
width: 50% !important;
}

.w-60 {
width: 60% !important;
}

.w-70 {
width: 70% !important;
}

.w-80 {
width: 80% !important;
}

.w-90 {
width: 90% !important;
}

.em-lv1 {
font-weight: bold;
}

.em-lv2 {
font-weight: bold;
color: #e61739;
}

.em-lv3 {
font-size: 18px;
font-size: 1.8rem;
font-weight: bold;
color: #e61739;
}

/* 文字位置 */

.aln-left {
text-align: left !important;
}

.aln-center {
text-align: center !important;
}

.aln-right {
text-align: right !important;
}

/* 画像位置 */

.img-center {
margin-bottom: 30px;
text-align: center;
}

.img-left {
margin-bottom: 30px;
}

.img-left:before,
.img-left:after {
display: table;
content: "";
}

.img-left:after {
clear: both;
}

.img-left img {
float: left;
}

.img-right {
margin-bottom: 30px;
}

.img-right:before,
.img-right:after {
display: table;
content: "";
}

.img-right:after {
clear: both;
}

.img-right img {
float: right;
}

/* 余白 */

.mb-0 {
margin-bottom: 0 !important;
}

.mt-0 {
margin-top: 0 !important;
}

.mr-0 {
margin-right: 0 !important;
}

.ml-0 {
margin-left: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

.pb-0 {
padding-bottom: 0 !important;
}

.pt-0 {
padding-top: 0 !important;
}

.pr-0 {
padding-right: 0 !important;
}

.pl-0 {
padding-left: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

/* リスト */

.list-normal {
margin-top: 0;
margin-bottom: 30px;
padding-left: 1.5em;
}

.list-normal li + li {
margin-top: 15px;
}

.list-number {
margin-top: 0;
margin-bottom: 30px;
padding-left: 1.5em;
list-style: decimal;
}

.list-number li + li {
margin-top: 15px;
}

.list-note {
font-size: 12px;
font-size: 1.2rem;
margin-top: 0;
margin-bottom: 30px;
padding-left: 0;
list-style: none;
}

.mod-table02 .list-note {
margin-top: 4px;
margin-bottom: 0;
}

.list-note li {
position: relative;
padding-left: 20px;
}

.list-note li:before {
position: absolute;
top: 0;
left: 0;
display: inline-block;
width: 1em;
height: 1em;
content: "※";
}

.list-note li + li {
margin-top: 10px;
}

.list-noteRight {
font-size: 12px;
font-size: 1.2rem;
margin-top: 0;
margin-bottom: 30px;
padding-left: 0;
list-style: none;
text-align: right;
}

.mod-table02 .list-noteRight {
margin-top: 4px;
margin-bottom: 0;
}

.list-noteRight li:before {
display: inline-block;
width: 1em;
height: 1em;
margin-right: 10px;
content: "※";
}

.list-noteRight li + li {
margin-top: 10px;
}

.list-note02 {
font-size: 12px;
font-size: 1.2rem;
margin-top: 0;
margin-bottom: 30px;
padding-left: 0;
list-style: none;
}

.mod-table02 .list-note02 {
margin-top: 4px;
margin-bottom: 0;
}

.list-note02 li {
position: relative;
padding-left: 20px;
}

.list-note02 li:before {
position: absolute;
top: 0;
left: 0;
display: inline-block;
width: 1em;
height: 1em;
content: "*";
}

.list-note02 li + li {
margin-top: 10px;
}

.list-note02 li .num {
position: absolute;
left: .6em;
}

.list-link {
margin-top: 0;
margin-bottom: 30px;
padding-left: 0;
list-style: none;
}

.list-link li {
padding-left: 22px;
}

.list-link li a {
position: relative;
}

.list-link li a:before {
position: absolute;
top: 5px;
left: -22px;
display: inline-block;
width: 12px;
height: 12px;
content: "";
background-image: url("/swift/img/sprite.png?201706");
background-position: -21px -43px;
background-size: 88px 64px;
}

.list-link li + li {
margin-top: 15px;
}

.list-linkRight {
margin-top: 0;
margin-bottom: 30px;
padding-left: 0;
list-style: none;
text-align: right;
}

.list-linkRight li a {
position: relative;
}

.list-linkRight li a:before {
position: absolute;
top: 5px;
left: -22px;
display: inline-block;
width: 12px;
height: 12px;
content: "";
background-image: url("/swift/img/sprite.png?201706");
background-position: -21px -43px;
background-size: 88px 64px;
}

.list-linkRight li + li {
margin-top: 15px;
}

.list-linkPdf {
margin-top: 0;
margin-bottom: 30px;
padding-left: 24px;
list-style: none;
}

.list-linkPdf li a {
position: relative;
}

.list-linkPdf li a:before {
position: absolute;
top: 5px;
left: -23px;
display: inline-block;
width: 12px;
height: 12px;
content: "";
background-image: url("/swift/img/sprite.png?201706");
background-position: -70px -25px;
background-size: 88px 64px;
}

.list-linkPdf li + li {
margin-top: 15px;
}

.list-info {
margin-top: 0;
margin-bottom: 30px;
padding-left: 0;
list-style: none;
}

.list-info li {
display: table;
margin-bottom: 15px;
}

.list-info li > span {
display: table-cell;
}

.list-info li > span:first-child {
width: 136px;
}

.list-btn {
display: table;
width: 100%;
margin-bottom: 30px;
padding-left: 0;
table-layout: fixed;
list-style: none;
}

.list-btn li {
display: table-cell;
padding: 0 12px;
vertical-align: middle;
}

.list-btn li:first-child {
padding-left: 0;
}

.list-btn li:last-child {
padding-right: 0;
}

/* ヘッダ */

.str-header {
width: 100%;
padding-bottom: 7px;
background-color: #fff;
}

.str-header.is-fixed {
position: fixed;
z-index: 1000;
top: 0;
box-shadow: 0 2px 2px rgba(0, 0, 0, .2);
}

.str-header > .mod-wide {
display: flex;
align-items: center;
/* width: 960px; */
justify-content: space-evenly;
max-width: 1280px;
width: 100%;
/*padding-top: 7px;*/
}

.str-header > .mod-wide > * {
/*display: table-cell;*/
/*vertical-align: middle;*/
}

.str-header .logo {
width: 104px;
}

.str-header .nav-groval {
font-size: 15px;
font-size: 1.5rem;
/*margin-top: 35px;*/
padding-left: 0;
display: flex;
align-items: center;
}

.str-header .nav-groval li {
display: inline-block;
float: left;
padding-left: 34px;
/*padding-top: 10px;*/
/*padding-bottom: 20px;*/
}

.str-header .nav-groval li:last-child {
  /*padding-top: 12px;*/
  /*padding-bottom: 26px;*/
}

.str-header .nav-groval li + li {
padding-left: 25px;
}

.str-header .nav-groval.type-swift li {
  padding-left: 20px;
}
.str-header .nav-groval.type-swift li + li {
  padding-left: 17px;
}

.str-header .nav-groval li a {
color: #000;
}

.str-header .inquiry {
line-height: 1.25;
/*box-sizing: border-box;*/
width: 320px;
margin: 10px 0;
padding-left: 16px;
border-left: 1px solid #ccc;
}

.str-header .inquiry .hdg {
font-size: 12px;
font-size: 1.2rem;
font-weight: bold;
display: inline-block;
}

.str-header .inquiry .time {
font-size: 12px;
font-size: 1.2rem;
display: inline-block;
margin-left: 6px;
}

.str-header .inquiry .tel {
font-size: 24px;
font-size: 2.4rem;
font-weight: bold;
line-height: 1;
margin: 7px 0 5px;
}

.str-header .inquiry .tel > img {
margin-right: 5px;
vertical-align: top;
}

.str-header .inquiry .tel > span {
font-size: 16px;
font-size: 1.6rem;
}

.str-header .inquiry .note {
font-size: 12px;
font-size: 1.2rem;
margin: 2px 0 0;
}

.str-header .btn-mypage {
width: 124px;
padding-left: 10px;
}

.str-header .btn-mypage > a {
font-size: 15px;
font-size: 1.5rem;
font-weight: bold;
line-height: 1.5;
position: relative;
display: block;
box-sizing: border-box;
height: 72px;
padding-top: 14px;
padding-left: 35px;
color: #fff;
border-radius: 6px;
background-color: #5076b6;
box-shadow: 0 2px 2px rgba(0, 0, 0, .2);
}

.str-header .btn-mypage.type-2 {
  padding-left: 0;
}

.str-header .btn-mypage.type-2 > a {
color: #000;
background-color: #ffe100;
padding-left: 12px;
}

.str-header .btn-mypage.type-2 > a:before {
  content: none;
}

.str-header .btn-mypage.type-2 > a[target="_blank"] img[src*="icon-"] {
  margin-right: 5px;
  margin-left: 5px;
}

.str-header .btn-mypage > a:hover {
opacity: .9;
}

.str-header .btn-mypage > a:before {
position: absolute;
top: 26px;
left: 10px;
display: block;
width: 16px;
height: 21px;
content: "";
background-image: url("/swift/img/sprite.png?201706");
background-position: 0 -43px;
background-size: 88px 64px;
}

/* フッタ */

.note-pagefoot {
position: absolute;
bottom: 100px;
width: 100%;
min-width: 1016px;
}

.link-pageTop {
width: 960px;
margin: 0 auto;
}

.link-pageTop > a {
position: absolute;
top: -67px;
right: 0;
display: block;
overflow: hidden;
width: 48px;
height: 38px;
white-space: nowrap;
text-indent: 100%;
background-image: url("/swift/img/sprite.png?201706");
background-position: 0 0;
background-size: 88px 64px;
}

.link-pageTop > a:hover {
opacity: .9;
}

.str-footer {
position: absolute;
bottom: 0;
width: 100%;
min-width: 1016px;
padding: 26px 0;
border-top: 3px solid #003894;
}

.str-footer .nav-footlink {
margin: 0;
padding: 0 300px 0 0;
}

.str-footer .nav-footlink li {
font-size: 14px;
font-size: 1.4rem;
display: inline-block;
}

.str-footer .nav-footlink li + li {
margin-left: 20px;
}

.str-footer .nav-footlink a {
color: #000;
}

.str-footer > .mod-wide {
position: relative;
}

.str-footer .business-info {
position: absolute;
top: 0;
right: 0;
width: 300px;
font-size: 12px;
font-size: 1.2rem;
}

/* パンくず */

.nav-location {
font-size: 12px;
font-size: 1.2rem;
line-height: 40px;
color: #fff;
background-color: #003894;
}

.nav-location a {
margin: 0 16px;
color: #fff;
}

.nav-location a:first-child {
margin-left: 0;
}

.mod-inquiry .tel {
font-size: 26px;
font-size: 2.6rem;
font-weight: bold;
line-height: 1;
display: block;
margin-top: 20px;
margin-bottom: 40px;
}

.mod-inquiry .tel > img {
margin-right: 5px;
vertical-align: top;
}

.mod-inquiry .tel > span {
font-size: 16px;
font-size: 1.6rem;
}

.mod-inquiry .note {
font-size: 12px;
font-size: 1.2rem;
}

/* ボタン */

.btn-link {
font-size: 16px;
font-size: 1.6rem;
font-weight: bold;
line-height: 1.3;
display: table;
width: 100%;
height: 56px;
text-align: center;
color: #fff;
border-radius: 6px;
background-color: #595959;
box-shadow: 0 2px 2px rgba(0, 0, 0, .2);
}

.btn-link:hover {
opacity: .9;
}

.btn-link > span {
position: relative;
display: table-cell;
vertical-align: middle;
}

.btn-link > span:before {
position: absolute;
top: 0;
bottom: 0;
display: inline-block;
width: 12px;
height: 12px;
margin: auto auto auto -22px;
content: "";
background-image: url("/swift/img/sprite.png?201706");
background-position: -53px -25px;
background-size: 88px 64px;
}

/* ステップ */

.mod-flow {
display: table;
width: 100%;
margin-bottom: 40px;
}

.mod-flow > * {
display: table-cell;
vertical-align: top;
}

.mod-flow > .img {
padding-left: 24px;
}

.mod-flow > .img:before,
.mod-flow > .img:after {
display: table;
content: "";
}

.mod-flow > .img:after {
clear: both;
}

.mod-flow > .img > span {
font-size: 12px;
font-size: 1.2rem;
display: block;
clear: both;
padding-top: 8px;
text-align: center;
}

.mod-flow > .img > span + img {
margin-top: 18px;
}

.mod-flow > .img img {
float: right;
}

.mod-flow > .txt {
position: relative;
padding-left: 32px;
}

.mod-flow > .txt > .num {
position: absolute;
left: 0;
}

/* index.html */

.mainVisual {
line-height: 1;
margin: 0 auto 20px;
padding: 16px 0 35px;
text-align: center;
background-color: #003894;
}

.mainVisual h1 {
margin: 0;
}
