@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500&display=swap&subset=japanese);
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ }

body { margin: 0; }

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

hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

a { background-color: transparent; }

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

b, strong { font-weight: bolder; }

code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

small { font-size: 80%; }

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

sub { bottom: -0.25em; }

sup { top: -0.5em; }

img { border-style: none; }

button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }

button, input { /* 1 */ overflow: visible; }

button, select { /* 1 */ text-transform: none; }

button, [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 { border-style: none; padding: 0; }

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

fieldset { padding: 0.35em 0.75em 0.625em; }

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

progress { vertical-align: baseline; }

textarea { overflow: auto; }

[type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ }

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

[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }

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

::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

details { display: block; }

summary { display: list-item; }

template { display: none; }

[hidden] { display: none; }

/******************************************************************
reset
******************************************************************/
main { display: block; background-color: #F5F5F6; }

h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dd, figure { margin: 0; padding: 0; }

li { list-style: none; }

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

iframe { border: 0; }

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

em { font-style: normal; font-weight: bold; }

fieldset { border: 0; padding: 0; margin: 0; }

address { font-style: normal; }

/******************************************************************
base
******************************************************************/
body { min-width: 320px; font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 14px; color: #181A24; line-height: 1.6; overflow-wrap: break-word; }

@media screen and (max-width: 767px) { body { font-size: 14px; } }

body[data-menu-open="true"] { overflow: hidden; }

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

a:hover { color: #3359CC; text-decoration: underline; }

h1, h2 { line-height: 1.3; }

h3 { line-height: 1.4; }

h4 { line-height: 1.5; }

small { line-height: 1.4; }

img { max-width: 100%; height: auto; vertical-align: middle; -webkit-backface-visibility: hidden; }

svg { vertical-align: middle; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #E8E8E8; }

button, input, optgroup, select, textarea { color: #181A24; line-height: inherit; }

/******************************************************************
layout - header-lp
******************************************************************/
.l-header-lp { background: #fff; }

@media print, screen and (min-width: 768px) { .l-header-lp__inner { max-width: 960px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; padding-top: 12px; padding-bottom: 12px; }
  .l-header-lp__logo { width: 138px; } }

@media screen and (max-width: 767px) { .l-header-lp__inner { box-sizing: border-box; display: flex; align-items: center; padding: 10px 8px 10px 10px; min-height: 78px; }
  .l-header-lp__logo { margin-bottom: 2vw; line-height: 1.8; font-size: 15px; }
  .l-header-lp__logo img { max-width: 120px; width: 32vw; } }

/******************************************************************
layout - footer2
******************************************************************/
.l-footer2 { color: #fff; background: #004098; font-size: 14px; }

.l-footer2 a { color: #fff; text-decoration: none; }

.l-footer2 a:hover { text-decoration: underline; }

@media print, screen and (min-width: 768px) { .l-footer2__recommend { border-bottom: 1px solid #fff; padding-top: 40px; padding-bottom: 40px; line-height: 1.6; }
  .l-footer2__recommend-inner { max-width: 960px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; }
  .l-footer2__recommend h3 { font-size: 18px; font-weight: 400; margin-bottom: 24px; }
  .l-footer2__recommend ul { display: flex; flex-wrap: wrap; margin-top: -12px; margin-right: -12px; }
  .l-footer2__recommend li { width: 150px; margin-top: 12px; margin-right: 12px; }
  .l-footer2__recommend img { width: 100%; }
  .l-footer2__inner { line-height: 1.6; max-width: 960px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; padding-top: 40px; padding-bottom: 30px; display: flex; align-items: center; }
  .l-footer2__nav { flex-grow: 1; display: flex; font-size: 12px; }
  .l-footer2__nav ul { margin-right: 60px; } }

@media print, screen and (min-width: 768px) and (max-width: 980px) { .l-footer2__nav ul { margin-right: 3.06122vw; } }

@media print, screen and (min-width: 768px) { .l-footer2__nav li:not(:last-child) { margin-bottom: 5px; }
  .l-footer2__sns-outer { text-align: center; }
  .l-footer2__sns { display: flex; justify-content: center; margin-right: -18px; }
  .l-footer2__sns li { margin-right: 18px; }
  .l-footer2__sns a { transition-property: opacity; transition-duration: 0.3s; }
  .l-footer2__sns a:hover { opacity: 0.7; }
  .l-footer2__sns-list { margin-top: 15px; }
  .l-footer2__sns-list a { position: relative; padding-right: 5.5px; padding-right: 20px; }
  .l-footer2__sns-list a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(0px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 1px solid #fff; border-right: 1px solid #fff; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-footer2__sns-list a::after { top: 2px; } }

@media screen and (max-width: 767px) { .l-footer2__recommend { border-bottom: 1px solid #fff; padding: 30px 24px; line-height: 1.6; }
  .l-footer2__recommend h3 { font-size: 18px; font-weight: 400; margin-bottom: 24px; }
  .l-footer2__recommend ul { display: flex; flex-wrap: wrap; margin-top: -8px; margin-right: -8px; }
  .l-footer2__recommend li { width: calc(33% - 8px); margin-top: 8px; margin-right: 8px; }
  .l-footer2__recommend img { width: 100%; }
  .l-footer2__inner { padding: 30px 24px; display: flex; flex-direction: column; }
  .l-footer2__nav { order: 3; margin-top: 30px; font-size: 12px; }
  .l-footer2__nav ul:not(:last-child) { margin-bottom: 24px; }
  .l-footer2__nav li:not(:last-child) { margin-bottom: 8px; }
  .l-footer2__sns { display: flex; justify-content: center; }
  .l-footer2__sns li { padding: 0 10px; }
  .l-footer2__sns li img { width: 40px; }
  .l-footer2__sns-list { margin-top: 12px; text-align: center; }
  .l-footer2__sns-list a { position: relative; padding-right: 5.5px; padding-right: 20px; }
  .l-footer2__sns-list a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(0px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 1px solid #fff; border-right: 1px solid #fff; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-footer2__sns-list a::after { top: 2px; } }

/******************************************************************
layout - footer-group
******************************************************************/
@media print, screen and (min-width: 768px) { .l-footer-group__inner { max-width: 960px; margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; display: flex; justify-content: space-between; align-items: flex-end; padding-top: 12px; padding-bottom: 15px; } }

@media screen and (max-width: 767px) { .l-footer-group__inner { box-sizing: border-box; padding: 24px; display: flex; flex-direction: column; min-height: 134px; justify-content: center; } }

@media print, screen and (min-width: 768px) { .l-footer-group__logo img { width: 400px; } }

@media screen and (max-width: 767px) { .l-footer-group__logo img { width: 400px; } }

.l-footer-group__copy { font-size: 12px; color: #B9BABD; }

@media screen and (max-width: 767px) { .l-footer-group__copy { display: block; padding-top: 10px; } }

@media screen and (max-width: 767px) and (max-width: 320px) { .l-footer-group__copy { font-size: 10px; } }
