@charset "UTF-8";
/* ***************************
html, body, 基本要素
*************************** */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
/*============================
reset
============================*/
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,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
 margin: 0;
 padding: 0;
 border: 0;
 font: inherit;
 vertical-align: baseline;
 background: none;
 -webkit-print-color-adjust: exact;
}

html {
 line-height: 1;
}

ol,
ul {
 list-style: none;
}

table {
 border-collapse: collapse;
 border-spacing: 0;
}

caption,
th,
td {
 text-align: left;
}

q,
blockquote {
 quotes: none;
}

q:before,
q:after,
blockquote:before,
blockquote:after {
 content: "";
 content: none;
}

a img {
 border: none;
}

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

button {
 background-color: transparent;
 border: none;
 cursor: pointer;
 padding: 0;
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
}

select {
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
}

select::-ms-expand {
 display: none;
}

/* ***************************
icomoon
*************************** */
@font-face {
 font-family: "icomoon";
 src: url("/assets/css/fonts/icomoon.eot?le2o82");
 src: url("/assets/css/fonts/icomoon.eot?le2o82#iefix") format("embedded-opentype"), url("/assets/css/fonts/icomoon.ttf?le2o82") format("truetype"),
  url("/assets/css/fonts/icomoon.woff?le2o82") format("woff"), url("/assets/css/fonts/icomoon.svg?le2o82#icomoon") format("svg");
 font-weight: normal;
 font-style: normal;
 font-display: block;
}
.linkicon:after,
.usefullink_link:after,
.usefulpanel_panel_link:after,
.panelbox_panel_link:before,
.linkcell_link:before,
.numpanel_link:after,
.anchor_link:after,
.ic_window .relbnr_item_text:after,
.infobox_list_item:before,
.pickupmenu_btn_link:after,
.pickupmenu_panel_link:after,
.pickupmenu_link_link:after,
.webservice_btn_link:after,
.newslist_link:after,
.datelist_link:after,
.topics_arrow:after,
.servicepanels_item_link:after,
.servicelinks_head_link:after,
.servicelinks_body_link:after,
.emergencyinfo_head:before,
.mainvisual_arrow:after,
.quicklink_item_link:after,
.btn:after,
.borderlink_body:after,
.listbreadcrumb_item:first-child .listbreadcrumb_item_link:before,
#breadcrumbs .first a:before,
.listlnav_item_link:before,
.setting_head_body:after,
.subnav_item_link:after,
.listgnav_item_search .listgnav_item_btnbody:after {
 /* use !important to prevent issues with browser extensions that change fonts */
 font-family: "icomoon" !important;
 font-style: normal;
 font-weight: normal;
 font-variant: normal;
 line-height: 1;
 text-transform: none;
 speak: none;
 /* Better Font Rendering =========== */
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
}

*,
:after,
:before {
 box-sizing: border-box;
}

html {
 font-size: 100%;
 line-height: 1.5;
}
@media only screen and (max-width: 768px) {
 html {
  font-size: 87.5% !important;
  line-height: 1.4284;
 }
}

body {
 width: 100%;
 background-color: #fff;
 color: #0f303f;
 font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", YuGothic, "Yu Gothic", "メイリオ", Meiryo, sans-serif;
 font-size: 100%;
 font-weight: normal;
 line-height: 1.5;
 -webkit-text-size-adjust: 100%;
 -moz-text-size-adjust: 100%;
 text-size-adjust: 100%;
 word-wrap: break-word;
 overflow-wrap: break-word;
 vertical-align: baseline;
}

img {
 max-width: 100%;
 height: auto;
 font-size: 0;
 line-height: 0;
 vertical-align: top;
}

/* ***************************
form Tag
*************************** */
input,
textarea,
select,
button {
 margin: 0;
 padding: 0;
 background: none;
 border: none;
 border-radius: 0;
 font: inherit;
 color: inherit;
 text-align: inherit;
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
}

select,
button {
 cursor: pointer;
}

input::-ms-clear,
input::-ms-reveal,
select::-ms-expand {
 display: none;
}

table input,
table select,
select#contract_a {
 color: #0f303f;
 border: 1px solid #0f303f;
 background-color: #ffffff;
 border-radius: 3px;
 padding: 2px 5px;
}

table select,
select#contract_a {
 -moz-appearance: menulist;
 -webkit-appearance: menulist;
}

/* ***************************
strong, em, mark
*************************** */
strong {
 font-weight: 700;
}

/*** sup / sub ***/
sup {
 vertical-align: top;
 font-size: 70%;
}
sub {
 vertical-align: bottom;
 font-size: 70%;
}

/*** faq_block***/
.faq_block > .text_indent > .icon {
 vertical-align: top;
}

.faq_block > .text_indent > .icon img {
 vertical-align: top;
 max-width: inherit;
}

.faq_block > .text_indent > .text {
 vertical-align: middle;
}

/* ***************************
a
*************************** */
a {
 color: #0069b7;
 text-decoration: none;
}
a:visited {
 color: #0069b7;
}
a:hover {
 color: #0069b7;
}
@media only screen and (min-width: 769px) {
 a:hover {
  text-decoration: underline;
 }
}
a.hover:before,
a:hover:before {
 text-decoration: none;
}

a .text_white:hover {
 text-decoration: underline;
}

/* ***************************
print
*************************** */
/**
 * Swiper 5.4.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 20, 2020
 */
@font-face {
 font-family: "swiper-icons";
 src: url("data:application/font-woff;charset=utf-8;base64, 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")
  format("woff");
 font-weight: 400;
 font-style: normal;
}
:root {
 --swiper-theme-color: #007aff;
}

/* ***************************
footer
*************************** */
.footer {
 position: relative;
 margin-top: 52px;
 padding-bottom: 64px;
 overflow: hidden;
}
@media only screen and (max-width: 768px) {
 .footer {
  margin-top: 0;
 }
}
.footer:after {
 position: absolute;
 bottom: 0;
 left: 50%;
 display: block;
 width: 140%;
 height: 46px;
 margin: auto;
 background-color: #13a74a;
 border-top-left-radius: 50% 100%;
 border-top-right-radius: 50% 100%;
 content: "";
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
}
@media only screen and (max-width: 768px) {
 .footer:after {
  width: 150%;
  height: 36px;
 }
}

.footer_inner {
 max-width: 1230px;
 margin: 0 auto;
 padding: 0 15px;
}
@media only screen and (max-width: 768px) {
 .footer_inner {
  padding: 26px 15px 0;
 }
}

.footer_middle {
 margin-top: 70px;
}
@media only screen and (max-width: 768px) {
 .footer_middle {
  margin-top: 40px;
 }
}

.footer_bottom {
 margin-top: 18px;
}
@media only screen and (max-width: 768px) {
 .footer_bottom {
  margin-top: 14px;
 }
}

/* ***************************
footernav
*************************** */
.footernav_list {
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
}
@media only screen and (max-width: 768px) {
 .footernav_list {
  margin: 0;
  justify-content: flex-start;
 }
}

.footernav_item {
 position: relative;
 margin-top: 0;
 padding: 5px 0 5px 22px;
}
@media only screen and (max-width: 768px) {
 .footernav_item {
  width: 33.33333%;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
 }
}
@media only screen and (max-width: 540px) {
 .footernav_item {
  width: 50%;
 }
}
.footernav_item:before {
 position: absolute;
 top: 0.75em;
 left: 0;
 width: 18px;
 height: 18px;
 background-color: transparent;
 background-image: url(/assets/img/icon-arrow.svg);
 background-repeat: no-repeat;
 background-size: 100% 100%;
 border-radius: 0;
 content: "";
}
@media only screen and (max-width: 768px) {
 .footernav_item:before {
  top: 1.1em;
  width: 17px;
  height: 17px;
 }
}
.footernav_item + .footernav_item {
 margin-left: 20px;
}
@media only screen and (max-width: 768px) {
 .footernav_item + .footernav_item {
  margin-left: 0;
 }
}

_::-webkit-full-page-media,
_:future,
:root .footernav_item:before {
 top: 0.7em;
}

@media only screen and (max-width: 768px) {
 _::-webkit-full-page-media,
 _:future,
 :root .footernav_item:before {
  top: 1em;
 }
}
.footernav_link {
 font-size: 1rem;
 line-height: 1.875;
 font-weight: 700;
 text-decoration: none;
}
@media only screen and (max-width: 768px) {
 .footernav_link {
  font-size: 1rem;
  line-height: 1.9285714286;
 }
}
@media only screen and (min-width: 769px) {
 .footernav_link:hover {
  text-decoration: underline;
 }
}
/* ***************************
footerlink
*************************** */
.footerlink {
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
}
@media only screen and (max-width: 768px) {
 .footerlink {
  justify-content: flex-start;
 }
}

.footerlink_item {
 position: relative;
 padding: 0 18px;
 margin: 5px 0 4px -1px;
}
@media only screen and (max-width: 768px) {
 .footerlink_item {
  width: 33.33333%;
  padding: 8px 10px 7px 0;
 }
}
@media only screen and (max-width: 540px) {
 .footerlink_item {
  width: 50%;
 }
}
.footerlink_item:first-child {
 padding-left: 0;
}
.footerlink_item:last-child {
 padding-right: 0;
}
.footerlink_item:before {
 content: none;
}
.footerlink_item + .footerlink_item:before {
 position: absolute;
 top: 0.25em;
 left: 0;
 width: 2px;
 height: 18px;
 background-color: #0f303f;
 content: "";
}
@media only screen and (max-width: 768px) {
 .footerlink_item + .footerlink_item:before {
  content: none;
 }
}

.footerlink_link {
 color: #0f303f;
 font-size: 1rem;
 line-height: 1.5;
 font-weight: 700;
 text-decoration: none;
}
@media only screen and (max-width: 768px) {
 .footerlink_link {
  font-size: 1rem;
  line-height: 1.4285714286;
 }
}
@media only screen and (min-width: 769px) {
 .footerlink_link:hover {
  text-decoration: underline;
 }
}
.footerlink_link:hover,
.footerlink_link:visited,
.footerlink_link:focus {
 color: #0f303f;
}

/* ***************************
returntop
*************************** */
.returntop {
 position: relative;
 height: 50px;
 background-color: #e2eff8;
}

.returntop_inner {
 position: absolute;
 top: 20px;
 right: calc(50% - 590px);
 max-width: 1210px;
 margin: 0;
 padding: 0;
 z-index: 1;
}
@media only screen and (max-width: 1240px) {
 .returntop_inner {
  right: 15px;
 }
}
.returntop_inner.is-fixed {
 position: fixed;
 top: auto;
 bottom: 30px;
}

.returntop_link {
 display: block;
 width: 60px;
 height: 60px;
 margin-left: auto;
 font-size: 0%;
 line-height: 0;
 background-color: #0069b7;
 background-image: url(/assets/img/btn-top.png);
 background-position: 15px 15px;
 background-repeat: no-repeat;
 background-size: 30px 30px;
 border-radius: 8px;
 transition: background-position 0.3s;
}
@media only screen and (max-width: 768px) {
 .returntop_link {
  width: 50px;
  height: 50px;
  background-position: 10px 10px;
 }
}
@media only screen and (min-width: 769px) {
 .returntop_link:hover {
  background-position: 15px 9px;
 }
}

/* ***************************
copyright
*************************** */
.copyright {
 display: block;
 font-size: 0.875rem;
 line-height: 1.7142857143;
 text-align: center;
}
@media only screen and (max-width: 768px) {
 .copyright {
  font-size: 0.8571428571rem;
  line-height: 1.5;
 }
}

/* ***************************
footerbnr
*************************** */
.footerbnr {
 background-color: #e2eff8;
}

.footerbnr_inner {
 max-width: 1210px;
 margin: 0 auto;
 padding: 30px 15px 16px;
}
@media only screen and (max-width: 768px) {
 .footerbnr_inner {
  padding-top: 27px;
  padding-bottom: 27px;
 }
}

.footerbnr_list {
 display: flex;
 margin: 0 -10px;
 flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
 .footerbnr_list {
  margin: 0 -4px 0 -5px;
 }
}

.footerbnr_item {
 width: 25%;
 margin-top: 0;
 padding: 20px 10px;
}
@media only screen and (max-width: 768px) {
 .footerbnr_item {
  width: 50%;
  padding: 14px 4px 14px 5px;
 }
}
.footerbnr_item:before {
 content: none;
}

.footerbnr_item_link {
 display: block;
 color: #0069b7;
 text-decoration: none;
}
.footerbnr_item_link:after {
 content: none !important;
}
.footerbnr_item_link:visited {
 color: #0069b7;
}
.footerbnr_item_link:hover {
 color: #0069b7;
 text-decoration: none;
}

.footerbnr_item_link .ic_window:after {
 display: inline-block;
 text-decoration: none;
}

.footerbnr_item_img {
 display: block;
 border-radius: 8px;
 overflow: hidden;
}
.footerbnr_item_img img {
 transition: -webkit-transform 0.3s;
 transition: transform 0.3s;
 transition: transform 0.3s, -webkit-transform 0.3s;
}
@media only screen and (max-width: 768px) {
 .footerbnr_item_img img {
  width: 100%;
 }
}
@media only screen and (min-width: 769px) {
 .footerbnr_item_link:hover .footerbnr_item_img img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  -webkit-transform-origin: center;
  transform-origin: center;
 }
}

.footerbnr_item_text {
 font-size: 1rem;
 line-height: 1.5;
 font-weight: 700;
}
@media only screen and (max-width: 768px) {
 .footerbnr_item_text {
  font-size: 1rem;
  line-height: 1.4285714286;
 }
}
.footerbnr_item_img + .footerbnr_item_text {
 margin-top: 6px;
 color: #0f303f;
}
@media only screen and (min-width: 769px) {
 .footerbnr_item_link:hover .footerbnr_item_text {
  text-decoration: underline;
 }
}
.footerbnr_item_text .footerbnr_item_link:hover:after {
 text-decoration: none;
}

/* ***************************
pagereader
*************************** */
.pagereader {
 position: absolute;
 width: 0;
 height: 0;
 overflow: hidden;
 font-size: 0%;
 line-height: 0;
 outline: none;
}
/* ***************************
display
*************************** */
@media screen and (max-width: 768px) {
 .pc_vis {
  display: none !important;
 }
}

@media print, screen and (min-width: 769px) {
 .sp_vis {
  display: none !important;
 }
}

.block {
 display: block;
}

.inline {
 display: inline;
}

.inlineblock {
 display: inline-block;
}

.display_table {
 display: table;
}
.display_table_cell {
 display: table-cell;
}
