@import url(https://use.fontawesome.com/releases/v5.15.4/css/all.css);
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700&display=swap");
:root {
 --ff_main: "Noto Sans JP", "Helvetica Neue", "Segoe UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", meiryo,
 sans-serif;
 --color_txt: #231815;
 --color_bl: #000084;
 --color_gy: #f5f5f5;
 --fz_xs: 12px;
 --fz_sm: 14px;
 --fz_md: 16px;
 --fz_lg: 18px;
 --fz_xl: 20px;
 --lh_xs: 1.25;
 --lh_sm: 1.5;
 --lh_md: 1.75;
 --lh_lg: 2;
 --fw_r: 400;
 --fw_b: 900;
}
@media screen and (max-width: 1024px) {
 :root {
  --fz_xs: 10px;
  --fz_sm: 12px;
  --fz_md: 14px;
  --fz_lg: 16px;
  --fz_xl: 18px;
  --lh_xs: 1.2;
  --lh_sm: 1.4;
  --lh_md: 1.6;
  --lh_lg: 1.8;
 }
}

*,::before,::after {
 border-width: 0;
 border-style: solid;
 -webkit-box-sizing: border-box;
         box-sizing: border-box;
}

html {
 line-height: 1.15;

 -webkit-text-size-adjust: 100%;
 -webkit-tap-highlight-color: transparent;
}

body {
 margin: 0;
}

img {
 max-width: 100%;
}

main {
 display: block;
}

p,table,blockquote,address,pre,iframe,form,figure,dl {
 margin: 0;
}

h1,h2,h3,h4,h5,h6 {
 margin: 0;
 font-weight: inherit;
 font-size: inherit;
}

ul,ol {
 margin: 0;
 padding: 0;
 list-style: none;
}

dt {
 font-weight: 700;
}

dd {
 margin-left: 0;
}

hr {
 clear: both;
 height: 0;
 overflow: visible;
 margin: 0;
 border-top-width: 1px;
 color: inherit;
 -webkit-box-sizing: content-box;
         box-sizing: content-box;
}

pre {
 font-family: monospace, monospace;
 font-size: inherit;
}

address {
 font-style: inherit;
}

a {
 color: inherit;
 background-color: transparent;
 text-decoration: none;
}

abbr[title] {
 -webkit-text-decoration: underline dotted;
         text-decoration: underline dotted;
}

b,strong {
 font-weight: bolder;
}

code,kbd,samp {
 font-family: monospace, monospace;
 font-size: inherit;
}

small {
 font-size: 80%;
}

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

sub {
 bottom: -0.25em;
}

sup {
 top: -0.5em;
}

svg,img,embed,object,iframe {
 vertical-align: bottom;
}

button,input,optgroup,select,textarea {
 vertical-align: middle;
 margin: 0;
 padding: 0;
 border-radius: 0;
 color: inherit;
 background: transparent;
 font: inherit;
 text-align: inherit;
 text-transform: inherit;

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

button,[type=button],[type=reset],[type=submit] {
 cursor: pointer;
}

button:disabled,[type=button]:disabled,[type=reset]:disabled,[type=submit]:disabled {
 cursor: default;
}

:-moz-focusring {
 outline: auto;
}

select:disabled {
 opacity: inherit;
}

option {
 padding: 0;
}

fieldset {
 min-width: 0;
 margin: 0;
 padding: 0;
}

legend {
 padding: 0;
}

progress {
 vertical-align: baseline;
}

textarea {
 overflow: auto;
}

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

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

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

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

 -webkit-appearance: button;
}

[type=number] {
 -moz-appearance: textfield;
 -webkit-appearance: textfield;
         appearance: textfield;
}

label[for] {
 cursor: pointer;
}

details {
 display: block;
}

summary {
 display: list-item;
}

[contenteditable]:focus {
 outline: auto;
}

table {
 border-color: inherit;
 border-collapse: collapse;
}

caption {
 text-align: left;
}

td,th {
 vertical-align: top;
 padding: 0;
}

th {
 font-weight: 700;
 text-align: left;
}

.pc {
 display: block;
}
@media screen and (max-width: 768px) {
 .pc {
  display: none;
 }
}

.tb {
 display: none;
}
@media screen and (max-width: 1024px) {
 .tb {
  display: block;
 }
}

.pt {
 display: block;
}
@media screen and (max-width: 600px) {
 .pt {
  display: none;
 }
}

.sp {
 display: none;
}
@media screen and (max-width: 600px) {
 .sp {
  display: block;
 }
}

html {
 width: 100%;
 height: 100%;
 color: var(--color_txt);
 font-family: var(--ff_main);
 font-weight: 300;
 -webkit-font-feature-settings: "palt";
         font-feature-settings: "palt";
 -webkit-box-sizing: border-box;
         box-sizing: border-box;

 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 -webkit-tap-highlight-color: transparent;
 -webkit-text-size-adjust: 100%;
}

body.is_spOverflow {
 height: 100%;
 overflow: hidden;
}

header {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 position: relative;
 width: 100%;
 height: 240px;
 -webkit-box-pack: center;
     -ms-flex-pack: center;
         justify-content: center;
 -webkit-box-align: center;
     -ms-flex-align: center;
         align-items: center;
}
@media screen and (max-width: 1024px) {
 header {
  height: 120px;
 }
}
@media screen and (max-width: 600px) {
 header {
  height: 100px;
 }
}
@media screen and (max-width: 1024px) {
 header .logo img {
  width: 297.5px;
 }
}
@media screen and (max-width: 600px) {
 header .logo img {
  width: 170px;
 }
}
header .inst {
 position: absolute;
 top: 50%;
 right: 130px;
 -webkit-transform: translate(0, -40%);
         transform: translate(0, -40%);
}
@media screen and (max-width: 1024px) {
 header .inst {
  right: 5%;
  width: 30px;
 }
}
@media screen and (max-width: 600px) {
 header .inst {
  width: 25px;
 }
}

footer {
 position: relative;
 width: 100%;
 padding: 30px 0;
 background: #f7f7f7;
}
@media screen and (max-width: 1024px) {
 footer {
  height: auto;
 }
}
footer >.inner {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 width: 100%;
 height: 100%;
}
@media screen and (max-width: 1024px) {
 footer >.inner {
  display: block;
 }
}
footer >.inner .ft_l {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 position: relative;
 width: 30%;
 -ms-flex-negative: 0;
     flex-shrink: 0;
 -webkit-box-pack: center;
     -ms-flex-pack: center;
         justify-content: center;
 -webkit-box-align: center;
     -ms-flex-align: center;
         align-items: center;
 padding: 0 20px;
 border-right: 1px solid #231815;
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_l {
  position: static;
  width: 100%;
  min-width: 0;
  margin-bottom: 40px;
  padding-bottom: 30px;
  border-right: none;
  border-bottom: 1px solid #231815;
 }
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_l .logo img {
  width: 244.8px;
 }
}
@media screen and (max-width: 600px) {
 footer >.inner .ft_l .logo img {
  width: 183.6px;
 }
}
footer >.inner .ft_r {
 padding-left: 40px;
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_r {
  padding: 0 5%;
 }
}
footer >.inner .ft_r .ft_wrap {
 padding: 10px 0 25px;
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_r .ft_wrap {
  padding: 0;
 }
}
footer >.inner .ft_r .ft_wrap .logo_se {
 position: absolute;
 right: 2%;
 bottom: 0;
 width: 32vw;
 max-width: 460px;
 margin-bottom: 40px;
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_r .ft_wrap .logo_se {
  position: relative;
  width: 400px;
  margin: 30px 0 0 auto;
 }
}
@media screen and (max-width: 600px) {
 footer >.inner .ft_r .ft_wrap .logo_se {
  width: 250px;
  margin: 30px auto 0;
 }
}
footer >.inner .ft_r .ft_wrap .logo_grip {
 width: 360px;
 margin-bottom: 15px;
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_r .ft_wrap .logo_grip {
  width: 361.6px;
  margin-bottom: 15px;
 }
}
@media screen and (max-width: 600px) {
 footer >.inner .ft_r .ft_wrap .logo_grip {
  width: 271.2px;
 }
}
footer >.inner .ft_r .ft_wrap p.address {
 margin-bottom: 50px;
 font-weight: 400;
 font-size: 14px;
 letter-spacing: 0.01em;
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_r .ft_wrap p.address {
  margin-bottom: 50px;
  font-size: 16px;
 }
}
@media screen and (max-width: 600px) {
 footer >.inner .ft_r .ft_wrap p.address {
  margin-bottom: 30px;
  font-size: 14px;
 }
}
footer >.inner .ft_r .ft_wrap p.address span {
 margin-left: 30px;
 font-size: 18px;
 letter-spacing: 0.03em;
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_r .ft_wrap p.address span {
  margin-left: 20px;
  font-size: 20px;
 }
}
@media screen and (max-width: 600px) {
 footer >.inner .ft_r .ft_wrap p.address span {
  display: block;
  margin: 10px 0 0;
  font-size: 18px;
 }
}
footer >.inner .ft_r .ft_wrap .mail {
 margin-bottom: 50px;
}
@media screen and (max-width: 600px) {
 footer >.inner .ft_r .ft_wrap .mail {
  margin-bottom: 25px;
 }
}
footer >.inner .ft_r .ft_wrap .mail a {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
     -ms-flex-align: center;
         align-items: center;
 font-weight: 400;
 font-size: 21.6px;
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_r .ft_wrap .mail a {
  font-size: 18px;
 }
}
@media screen and (max-width: 600px) {
 footer >.inner .ft_r .ft_wrap .mail a {
  font-size: 16px;
 }
}
footer >.inner .ft_r .ft_wrap .mail a span.icon {
 margin-right: 25px;
}
@media screen and (max-width: 1024px) {
 footer >.inner .ft_r .ft_wrap .mail a span.icon {
  width: 25px;
  margin-right: 15px;
 }
}
@media screen and (max-width: 600px) {
 footer >.inner .ft_r .ft_wrap .mail a span.icon {
  width: 20px;
 }
}
footer >.inner .ft_r .ft_wrap .copy small {
 font-weight: 400;
 font-size: 12px;
 letter-spacing: 0.06em;
}
/*# sourceMappingURL=common.css.map */
