/*
Theme Name:origin
*/
@charset "UTF-8";
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
  outline: none !important
}

html {
  overflow-y: scroll;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

fieldset, img {
  border: 0;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

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

caption, th {
  text-align: left;
}

a:focus {
  outline: none;
}

address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: normal;
}

a {
  text-decoration: none;
  cursor: pointer;
}

body *{
  box-sizing: border-box;
}


/****Adobe Fonts*****/
.shuei_l{
font-family: dnp-shuei-gothic-kin-std, sans-serif;
font-weight: 400;
font-style: normal;
}
.shuei_m{
font-family: dnp-shuei-gothic-kin-std, sans-serif;
font-weight: 500;
font-style: normal;
}
.shuei_mb{
font-family: dnp-shuei-gothic-kin-std, sans-serif;
font-weight: 600;
font-style: normal;
}
.shuei_b{
font-family: dnp-shuei-gothic-kin-std, sans-serif;
font-weight: 500;
font-style: normal;
}
.noto_demil{
font-family: noto-sans-cjk-jp, sans-serif;
font-weight: 300;
font-style: normal;
}
.noto_r{
font-family: noto-sans-cjk-jp, sans-serif;
font-weight: 400;
font-style: normal;
}
.noto_m{
font-family: noto-sans-cjk-jp, sans-serif;
font-weight: 500;
font-style: normal;
}
.noto_b{
font-family: noto-sans-cjk-jp, sans-serif;
font-weight: 500;
font-style: normal;
}
/****Adobe Fonts*****/
.mvcontent{
  background:url("../img/sora5.jpg");
  height: 200px;
  background-size: cover;
margin: auto;
text-align: center;
max-width: 100%;
max-height: 100%;
position: relative;
}
.mvcontent p{
    color: white;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.wp-pagenavi{
    margin-top: 3em;
    text-align: center;
    font-family: dnp-shuei-gothic-kin-std, sans-serif;
font-weight: 400;
font-style: normal;
}

 .basecol{
  color:#0476d9;
 }

.f8 {
  font-size: 0.58565vw;
}

@media (min-width: 1367px) {
  .f8 {
    font-size: 8px;
  }
}

@media (max-width: 1024px) {
  .f8 {
    font-size: 0.78125vw;
  }
}

@media (max-width: 768px) {
  .f8 {
    font-size: 1.04167vw;
  }
}

/*@media (max-width: 480px) {
  .f8 {
    font-size: 2.13333vw;
  }
}*/

.f9 {
  font-size: 0.65886vw;
}

@media (min-width: 1367px) {
  .f9 {
    font-size: 9px;
  }
}

@media (max-width: 1024px) {
  .f9 {
    font-size: 0.87891vw;
  }
}

@media (max-width: 768px) {
  .f9 {
    font-size: 1.17188vw;
  }
}

/*@media (max-width: 480px) {
  .f9 {
    font-size: 2.4vw;
  }
}*/

.f10 {
  font-size: 0.73206vw;
}

@media (min-width: 1367px) {
  .f10 {
    font-size: 10px;
  }
}

@media (max-width: 1024px) {
  .f10 {
    font-size: 0.97656vw;
  }
}

@media (max-width: 768px) {
  .f10 {
    font-size: 1.30208vw;
  }
}

/*@media (max-width: 480px) {
  .f10 {
    font-size: 2.66667vw;
  }
}*/

.f11 {
  font-size: 0.80527vw;
}

@media (min-width: 1367px) {
  .f11 {
    font-size: 11px;
  }
}

@media (max-width: 1024px) {
  .f11 {
    font-size: 1.07422vw;
  }
}

@media (max-width: 768px) {
  .f11 {
    font-size: 1.43229vw;
  }
}

/*@media (max-width: 480px) {
  .f11 {
    font-size: 2.93333vw;
  }
}*/

.f12 {
  font-size: 0.87848vw;
}

@media (min-width: 1367px) {
  .f12 {
    font-size: 12px;
  }
}

@media (max-width: 1024px) {
  .f12 {
    font-size: 1.17188vw;
  }
}

@media (max-width: 768px) {
  .f12 {
    font-size: 1.5625vw;
  }
}

/*@media (max-width: 480px) {
  .f12 {
    font-size: 3.2vw;
  }
}*/

.f13 {
  font-size: 0.95168vw;
}

@media (min-width: 1367px) {
  .f13 {
    font-size: 13px;
  }
}

@media (max-width: 1024px) {
  .f13 {
    font-size: 1.26953vw;
  }
}

@media (max-width: 768px) {
  .f13 {
    font-size: 1.69271vw;
  }
}

/*@media (max-width: 480px) {
  .f13 {
    font-size: 3.46667vw;
  }
}*/

.f14 {
  font-size: 1.02489vw;
}

@media (min-width: 1367px) {
  .f14 {
    font-size: 14px;
  }
}

@media (max-width: 1024px) {
  .f14 {
    font-size: 1.36719vw;
  }
}

@media (max-width: 768px) {
  .f14 {
    font-size: 1.82292vw;
  }
}

/*@media (max-width: 480px) {
  .f14 {
    font-size: 3.73333vw;
  }
  .f14 {
    font-size: 14px;
  }
}*/

.f15 {
  font-size: 1.0981vw;
}

@media (min-width: 1367px) {
  .f15 {
    font-size: 15px;
  }
}

@media (max-width: 1024px) {
  .f15 {
    font-size: 1.46484vw;
  }
}

@media (max-width: 768px) {
  .f15 {
    font-size: 1.95313vw;
  }
}

/*@media (max-width: 480px) {
  .f15 {
    font-size: 4vw;
  }
}*/

.f16 {
  font-size: 1.1713vw;
}

@media (min-width: 1367px) {
  .f16 {
    font-size: 16px;
  }
}

/*@media (max-width: 1024px) {
  .f16 {
    font-size: 1.5625vw;
  }
}*/

@media (max-width: 768px) {
  .f16 {
    font-size: 2.08333vw;
  }
}

/*@media (max-width: 480px) {
  .f16 {
    font-size: 4.26667vw;
  }
}*/

.f17 {
  font-size: 1.24451vw;
}

@media (min-width: 1367px) {
  .f17 {
    font-size: 17px;
  }
}

@media (max-width: 1024px) {
  .f17 {
    font-size: 1.66016vw;
  }
}

@media (max-width: 768px) {
  .f17 {
    font-size: 2.21354vw;
  }
}

/*@media (max-width: 480px) {
  .f17 {
    font-size: 4.53333vw;
  }
}*/

.f18 {
  font-size: 1.31772vw;
}

@media (min-width: 1367px) {
  .f18 {
    font-size: 18px;
  }
}

@media (max-width: 1024px) {
  .f18 {
    font-size: 1.75781vw;
  }
}

@media (max-width: 768px) {
  .f18 {
    font-size: 2.34375vw;
  }
}

/*@media (max-width: 480px) {
  .f18 {
    font-size: 4.8vw;
  }
}*/

.f19 {
  font-size: 1.39092vw;
}

@media (min-width: 1367px) {
  .f19 {
    font-size: 19px;
  }
}

@media (max-width: 1024px) {
  .f19 {
    font-size: 1.85547vw;
  }
}

@media (max-width: 768px) {
  .f19 {
    font-size: 2.47396vw;
  }
}

/*@media (max-width: 480px) {
  .f19 {
    font-size: 5.06667vw;
  }
}*/

.f20 {
  font-size: 1.46413vw;
}

@media (min-width: 1367px) {
  .f20 {
    font-size: 20px;
  }
}

@media (max-width: 1024px) {
  .f20 {
    font-size: 1.95312vw;
  }
}

@media (max-width: 768px) {
  .f20 {
    font-size: 2.60417vw;
  }
}

/*@media (max-width: 480px) {
  .f20 {
    font-size: 5.33333vw;
  }
}*/

.f21 {
  font-size: 1.53734vw;
}

@media (min-width: 1367px) {
  .f21 {
    font-size: 21px;
  }
}

@media (max-width: 1024px) {
  .f21 {
    font-size: 2.05078vw;
  }
}

@media (max-width: 768px) {
  .f21 {
    font-size: 2.73438vw;
  }
}

/*@media (max-width: 480px) {
  .f21 {
    font-size: 5.6vw;
  }
}*/

.f22 {
  font-size: 1.61054vw;
}

@media (min-width: 1367px) {
  .f22 {
    font-size: 22px;
  }
}

@media (max-width: 1024px) {
  .f22 {
    font-size: 2.14844vw;
  }
}

@media (max-width: 768px) {
  .f22 {
    font-size: 2.86458vw;
  }
}

/*@media (max-width: 480px) {
  .f22 {
    font-size: 5.86667vw;
  }
}*/

.f23 {
  font-size: 1.68375vw;
}

@media (min-width: 1367px) {
  .f23 {
    font-size: 23px;
  }
}

@media (max-width: 1024px) {
  .f23 {
    font-size: 2.24609vw;
  }
}

@media (max-width: 768px) {
  .f23 {
    font-size: 2.99479vw;
  }
}

/*@media (max-width: 480px) {
  .f23 {
    font-size: 6.13333vw;
  }
}*/

.f24 {
  font-size: 1.75695vw;
}

@media (min-width: 1367px) {
  .f24 {
    font-size: 24px;
  }
}

@media (max-width: 1024px) {
  .f24 {
    font-size: 2.34375vw;
  }
}

/*@media (max-width: 768px) {
  .f24 {
    font-size: 3.125vw;
  }
}*/

/*@media (max-width: 480px) {
  .f24 {
    font-size: 6.4vw;
  }
}*/

.f25 {
  font-size: 1.83016vw;
}

@media (min-width: 1367px) {
  .f25 {
    font-size: 25px;
  }
}

@media (max-width: 1024px) {
  .f25 {
    font-size: 2.44141vw;
  }
}

@media (max-width: 768px) {
  .f25 {
    font-size: 3.25521vw;
  }
}

/*@media (max-width: 480px) {
  .f25 {
    font-size: 6.66667vw;
  }
}*/

.f26 {
  font-size: 1.90337vw;
}

@media (min-width: 1367px) {
  .f26 {
    font-size: 26px;
  }
}

/*@media (max-width: 1024px) {
  .f26 {
    font-size: 2.53906vw;
  }
}*/

@media (max-width: 768px) {
 /* .f26 {
    font-size: 3.38542vw;
  }*/
  .f26 {
    font-size: 2.5vw;
}
}

/*@media (max-width: 480px) {
  .f26 {
    font-size: 6.93333vw;
  }
}*/

.f27 {
  font-size: 1.97657vw;
}

@media (min-width: 1367px) {
  .f27 {
    font-size: 27px;
  }
}

@media (max-width: 1024px) {
  .f27 {
    font-size: 2.63672vw;
  }
}

@media (max-width: 768px) {
  .f27 {
    font-size: 3.51563vw;
  }
}

/*@media (max-width: 480px) {
  .f27 {
    font-size: 7.2vw;
  }
}*/

.f28 {
  font-size: 2.04978vw;
}

@media (min-width: 1367px) {
  .f28 {
    font-size: 28px;
  }
}

@media (max-width: 1024px) {
  .f28 {
    font-size: 2.73438vw;
  }
}

@media (max-width: 768px) {
  .f28 {
    font-size: 3.64583vw;
  }
}

/*@media (max-width: 480px) {
  .f28 {
    font-size: 7.46667vw;
  }
}*/

.f29 {
  font-size: 2.12299vw;
}

@media (min-width: 1367px) {
  .f29 {
    font-size: 29px;
  }
}

@media (max-width: 1024px) {
  .f29 {
    font-size: 2.83203vw;
  }
}

@media (max-width: 768px) {
  .f29 {
    font-size: 3.77604vw;
  }
}

/*@media (max-width: 480px) {
  .f29 {
    font-size: 7.73333vw;
  }
}*/

.f30 {
  font-size: 2.19619vw;
}

@media (min-width: 1367px) {
  .f30 {
    font-size: 30px;
  }
}

@media (max-width: 1024px) {
  .f30 {
    font-size: 2.92969vw;
  }
}

@media (max-width: 768px) {
  .f30 {
    font-size: 3.90625vw;
  }
}

/*@media (max-width: 480px) {
  .f30 {
    font-size: 8vw;
  }
}*/

.f31 {
  font-size: 2.2694vw;
}

@media (min-width: 1367px) {
  .f31 {
    font-size: 31px;
  }
}

@media (max-width: 1024px) {
  .f31 {
    font-size: 3.02734vw;
  }
}

@media (max-width: 768px) {
  .f31 {
    font-size: 4.03646vw;
  }
}

/*@media (max-width: 480px) {
  .f31 {
    font-size: 8.26667vw;
  }
}*/

.f32 {
  font-size: 2.34261vw;
}

@media (min-width: 1367px) {
  .f32 {
    font-size: 32px;
  }
}

@media (max-width: 1024px) {
  .f32 {
    font-size: 3.125vw;
  }
}

@media (max-width: 768px) {
  .f32 {
    font-size: 4.16667vw;
  }
}

/*@media (max-width: 480px) {
  .f32 {
    font-size: 8.53333vw;
  }
}*/

.f33 {
  font-size: 2.41581vw;
}

@media (min-width: 1367px) {
  .f33 {
    font-size: 33px;
  }
}

@media (max-width: 1024px) {
  .f33 {
    font-size: 3.22266vw;
  }
}

@media (max-width: 768px) {
  .f33 {
    font-size: 4.29688vw;
  }
}

/*@media (max-width: 480px) {
  .f33 {
    font-size: 8.8vw;
  }
}*/

.f34 {
  font-size: 2.48902vw;
}

@media (min-width: 1367px) {
  .f34 {
    font-size: 34px;
  }
}

@media (max-width: 1024px) {
  .f34 {
    font-size: 3.32031vw;
  }
}

@media (max-width: 768px) {
  .f34 {
    font-size: 4.42708vw;
  }
}

/*@media (max-width: 480px) {
  .f34 {
    font-size: 9.06667vw;
  }
}*/

.f35 {
  font-size: 2.56223vw;
}

@media (min-width: 1367px) {
  .f35 {
    font-size: 35px;
  }
}

@media (max-width: 1024px) {
  .f35 {
    font-size: 3.41797vw;
  }
}

@media (max-width: 768px) {
  .f35 {
    font-size: 4.55729vw;
  }
}

/*@media (max-width: 480px) {
  .f35 {
    font-size: 9.33333vw;
  }
}*/

.f36 {
  font-size: 2.63543vw;
}

@media (min-width: 1367px) {
  .f36 {
    font-size: 36px;
  }
}

/*@media (max-width: 1024px) {
  .f36 {
    font-size: 3.51562vw;
  }
}*/

/*@media (max-width: 768px) {
  .f36 {
    font-size: 4.6875vw;
  }
}*/

/*@media (max-width: 480px) {
  .f36 {
    font-size: 9.6vw;
  }
}*/

.f37 {
  font-size: 2.70864vw;
}

@media (min-width: 1367px) {
  .f37 {
    font-size: 37px;
  }
}

@media (max-width: 1024px) {
  .f37 {
    font-size: 3.61328vw;
  }
}

/*@media (max-width: 768px) {
  .f37 {
    font-size: 4.81771vw;
  }
}*/

/*@media (max-width: 480px) {
  .f37 {
    font-size: 9.86667vw;
  }
}*/

.f38 {
  font-size: 2.78184vw;
}

@media (min-width: 1367px) {
  .f38 {
    font-size: 38px;
  }
}

@media (max-width: 1024px) {
  .f38 {
    font-size: 3.71094vw;
  }
}

@media (max-width: 768px) {
  .f38 {
    font-size: 4.94792vw;
  }
}

/*@media (max-width: 480px) {
  .f38 {
    font-size: 10.13333vw;
  }
}*/

.f39 {
  font-size: 2.85505vw;
}

@media (min-width: 1367px) {
  .f39 {
    font-size: 39px;
  }
}

@media (max-width: 1024px) {
  .f39 {
    font-size: 3.80859vw;
  }
}

@media (max-width: 768px) {
  .f39 {
    font-size: 5.07812vw;
  }
}

/*@media (max-width: 480px) {
  .f39 {
    font-size: 10.4vw;
  }
}*/

.f40 {
  font-size: 2.92826vw;
}

@media (min-width: 1367px) {
  .f40 {
    font-size: 40px;
  }
}

@media (max-width: 1024px) {
  .f40 {
    font-size: 3.90625vw;
  }
}

@media (max-width: 768px) {
  .f40 {
    font-size: 5.20833vw;
  }
}

/*@media (max-width: 480px) {
  .f40 {
    font-size: 10.66667vw;
  }
}*/

.f42 {
  font-size: 3.07467vw;
}

@media (min-width: 1367px) {
  .f42 {
    font-size: 42px;
  }
}

/*@media (max-width: 1024px) {
  .f42 {
    font-size: 4.10156vw;
  }
}

@media (max-width: 768px) {
  .f42 {
    font-size: 5.46875vw;
  }
}*/

/*@media (max-width: 480px) {
  .f42 {
    font-size: 11.2vw;
  }
}*/
.f56 {
  font-size: 4.09956vw;
}
@media (min-width: 1367px) {
  .f56 {
    font-size: 56px;
  }
}

@media (max-width: 1024px) {
  .f56 {
    font-size: 5.46875vw;
  }
}

/*@media (max-width: 768px) {
  .f56 {
    font-size: 7.29167vw;
  }
}*/

/*@media (max-width: 480px) {
  .f56 {
    font-size: 14.93333vw;
  }
}*/
.f60 {
  font-size: 4.39239vw;
}

@media (min-width: 1367px) {
  .f60 {
    font-size: 60px;
  }
}

@media (max-width: 1024px) {
  .f60 {
    font-size: 5.85938vw;
  }
}

@media (max-width: 768px) {
  .f60 {
    font-size: 7.8125vw;
  }
}

/*@media (max-width: 480px) {
  .f60 {
    font-size: 16vw;
  }
}*/

.c0 {
  color: #000 !important;
}

.c1 {
  color: #fff !important;
}

.c2 {
  color: var(--primary);
}

.c3 {
  color: var(--secondary);
}

.c4 {
  color: var(--success);
}

.c5 {
  color: var(--danger);
}

.c6 {
  color: var(--warning);
}

.c7 {
  color: var(--light);
}

.c8 {
  color: var(--dark);
}

.bgc0 {
  background-color: #000 !important;
}

.bgc1 {
  background-color: #fff !important;
}

.bgc2 {
  background-color: var(--primary);
}

.bgc3 {
  background-color: var(--secondary);
}

.bgc4 {
  background-color: var(--success);
}

.bgc5 {
  background-color: var(--danger);
}

.bgc6 {
  background-color: var(--warning);
}

.bgc7 {
  background-color: var(--light);
}

.bgc8 {
  background-color: var(--dark);
}

.cosmetics_col {
  color: var(--cosmetics_col);
}

.cc1 {
  color: var(--site_color1) !important;
}

.cc2 {
  color: var(--site_color2) !important;
}

.cc3 {
  color: var(--site_color3) !important;
}

.cc4 {
  color: var(--site_color4) !important;
}

.cc5 {
  color: var(--site_color5) !important;
}

.lb_col {
  color: var(--site_letter_base) !important;
}

.bgcc1 {
  background-color: var(--site_color1) !important;
}

.bgcc2 {
  background-color: var(--site_color2) !important;
}

.bgcc3 {
  background-color: var(--site_color3) !important;
}

.bgcc4 {
  background-color: var(--site_color4) !important;
}

.bgcc5 {
  background-color: var(--site_color5) !important;
}

html {
  font-size: 0.73206vw;
}

@media (min-width: 1367px) {
  html {
    font-size: 10px;
  }
}

@media (max-width: 1024px) {
  html {
    font-size: 0.97656vw;
  }
}

@media (max-width: 768px) {
  html {
    font-size: 1.30208vw;
  }
}

@media (max-width: 480px) {
  html {
    font-size: 2.66667vw;
  }
}

body {
  overflow: hidden;
  line-height: 1.5;
  word-break: break-word;
  line-break: strict;
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-family: 'Noto Sans JP', sans-serif;
  font-family: 'hirakaku','Noto Sans JP', sans-serif;
  font-weight: 300;
  letter-spacing: .025em;
  color: var(--site_letter_base);
  font-size: 1.6rem;
}

@media (min-width: 1367px) {
  body {
    font-size: 16px;
  }
}

@media (max-width: 1024px) {
  body {
    font-size: 1.45455rem;
  }
}

@media (max-width: 768px) {
  body {
    font-size: 1.6rem;
  }
}

@media (max-width: 480px) {
  body {
    font-size: 1.33333rem;
  }
}

/* ===============================================
改行用
=============================================== */
.br1366on {
  display: none;
}

.br1024on {
  display: none;
}

.br768on {
  display: none;
}

.br480on {
  display: none;
}

.br375on {
  display: none;
}

@media (min-width: 1367px) {
  .br1366off {
    display: none;
  }
  .br1366on {
    display: block;
  }
  .sp1366off {
    display: none;
  }
}

@media (max-width: 1024px) {
  .br1024off {
    display: none;
  }
  .br1024on {
    display: block;
  }
  .sp1024off {
    display: none;
  }
}

@media (max-width: 768px) {
  .br768off {
    display: none;
  }
  .br768on {
    display: block;
  }
  .sp768off {
    display: none !important;
  }
}

@media (max-width: 480px) {
  .br480off {
    display: none;
  }
  .br480on {
    display: block;
  }
  .sp480off {
    display: none !important;
  }
}

/* -----------------------------------------------
表示/非表示
----------------------------------------------- */
@media (min-width: 481px) {
  *.sp480on {
    display: none !important;
  }
}

@media (min-width: 769px) {
  *.sp768on {
    display: none !important;
  }
}

@media (min-width: 1025px) {
  *.sp1024on {
    display: none !important;
  }
}

/* -----------------------------------------------
文字位置
----------------------------------------------- */
.tc {
  text-align: center;
}

.tr {
  text-align: right;
}

.tl {
  text-align: left;
}

.tj {
  text-align: justify;
}
.tr.ftlist {
    text-align: left;
    list-style: none;
}

/* -----------------------------------------------
文字太さ
----------------------------------------------- */
.fb {
  font-weight: 700;
}

.fsb {
  font-weight: 600;
}

.fm {
  font-weight: 500;
}

.fr {
  font-weight: 400;
}

.fl {
  font-weight: 300;
}

/* -----------------------------------------------
line-hight
----------------------------------------------- */
.lh1 {
  line-height: 1;
}

.lh1\.25 {
  line-height: 1.25;
}

.lh1\.5 {
  line-height: 1.5;
}

.lh1\.75 {
  line-height: 1.75;
}

.lh2 {
  line-height: 2;
}

/* -----------------------------------------------
line-hight
----------------------------------------------- */
.ls25 {
  letter-spacing: 0.25em;
}

.ls50 {
  letter-spacing: 0.05em;
}

.ls75 {
  letter-spacing: 0.75em;
}

.ls100 {
  letter-spacing: 0.1em;
}

.ls125 {
  letter-spacing: 0.125em;
}

.ls150 {
  letter-spacing: 0.15em;
}

/* -----------------------------------------------
縦書き
----------------------------------------------- */
.ver {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
}

.ver.ver_part {
  text-orientation: sideways;
}

/* -----------------------------------------------
要素の位置指定
----------------------------------------------- */
.mc {
  margin: auto;
}

.mxc {
  margin-left: auto;
  margin-right: auto;
}

.myc {
  margin-top: auto;
  margin-bottom: auto;
}

.mr {
  margin-left: auto;
  margin-right: 0;
}

.ml {
  margin-left: 0;
  margin-right: auto;
}

/* -----------------------------------------------
// order
----------------------------------------------- */
.o1 {
  order: 1;
}

.o2 {
  order: 2;
}

.o3 {
  order: 3;
}

.o4 {
  order: 4;
}

.o5 {
  order: 5;
}

.o6 {
  order: 6;
}

.o7 {
  order: 7;
}

.o8 {
  order: 8;
}

.o9 {
  order: 9;
}

.o10 {
  order: 10;
}

/* -----------------------------------------------
アニメーション
----------------------------------------------- */
.opa {
  transition: 0.3s !important;
  cursor: pointer;
}

.opa:hover {
  opacity: 0.6 !important;
}

.u_line {
  transition: 0.3s;
  border-bottom: 1px solid transparent;
}

.u_line:hover {
  border-bottom: 1px solid;
}

/* -----------------------------------------------
その他
----------------------------------------------- */
.short {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* -----------------------------------------------
ボーダー
----------------------------------------------- */
.bc1 {
  border-color: var(--site_color1);
}

.bc2 {
  border-color: var(--site_color2);
}

.bc3 {
  border-color: var(--site_color3);
}

.bc4 {
  border-color: var(--primary);
}

.bc5 {
  border-color: var(--secondary);
}

.bc6 {
  border-color: var(--success);
}

.bc7 {
  border-color: var(--danger);
}

.bc8 {
  border-color: var(--warning);
}

.bc9 {
  border-color: var(--light);
}

.bc10 {
  border-color: var(--dark);
}

.b1 {
  border: 1px solid;
}

.b1t {
  border-top: 1px solid;
}

.b1r {
  border-right: 1px solid;
}

.b1b {
  border-bottom: 1px solid;
}

.b1l {
  border-left: 1px solid;
}

.b2 {
  border: 2px solid;
}

.b2t {
  border-top: 2px solid;
}

.b2r {
  border-right: 2px solid;
}

.b2b {
  border-bottom: 2px solid;
}

.b2l {
  border-left: 2px solid;
}

.b3 {
  border: 3px solid;
}

.b3t {
  border-top: 3px solid;
}

.b3r {
  border-right: 3px solid;
}

.b3b {
  border-bottom: 3px solid;
}

.b3l {
  border-left: 3px solid;
}


.newswrap {
  display: flex;
}

.newswrap .nleft .titlebox {
  margin-bottom: 3.80673vw;
}

.newswrap .nleft {
  width: 25.3%;
  position: relative;
}

.newswrap .nright {
  width: 74.7%;
  padding-left: 5.56369vw;
}

.newswrap .nleft:after {
  content: "";
  width: 0.73206vw;
  height: 100%;
  position: absolute;
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(135deg, transparent, transparent 3px, #0476d9 3px, #0476d9 6px);
  top: 0;
  right: 0;
}

.newslist li {
  border-bottom: 1px solid #0476d9;
  padding: 1.5em 0;
  position: relative;
}
.newslist li a:before{
	content: "";
	position: absolute;
	 left: 0;
	bottom: -2px;
	width: 100%;
	height: 2px;
	background: #0476d9;
	transform: scale(0, 1);
	transform-origin: left;
	transition: 0.4s;
}
.newslist li a:hover:before {
	transform: scale(1);
}
.newslist li .dcwrap {
  display: inline-block;
  margin-right: 3em;
}
.newslist li .posttitle{
  color: black;
}

.newslist li span.date, .newslist li span.category {
  color: #0476d9;
}

.newslist li span.date {
  margin-right: 2.5em;
  min-width: 93px;
    display: inline-block;
}

.newslist li span.category {
  padding: 0.5em;
  border: 1px solid;
}

.newslist li span.newmark {
  margin-left: 1em;
  color: red;
}

.linkbox a {
  color: #0476d9;
  padding: 1.7em 5em;
  border: 1px solid #0476d9;
}

footer {
  background: #f1f2f4;
  padding: 0 7.32064vw;
}

.footerwrap {
  text-align: center;
}

ul.footnav {
  display: flex;
  justify-content: center;
  padding-top: 6.58858vw;
  margin-bottom: 4.39239vw;
}

ul.footnav li {
  border-right: 1px solid;
  padding: 0 1.5em;
  line-height: 1;
}

ul.footnav li:last-child {
  border-right: 0px;
}

ul.footnav li a {
  color: black;
}

.footlogo {
  margin-bottom: 4.39239vw;
}

.footlogo img {
  width: 6.8082vw;
  margin-bottom: 0.8em;
}

.copyright p {
  border-top: 1px solid #cccccc;
  padding-bottom: 40px;
  padding-top: 30px;
}







header {
  border-top: 10px solid #0476d9;
}

.hdleft {
    padding-left: 3.66032vw;
  display: flex;
  align-items: center;
}

.subdesc {
  margin-left: 2.56223vw;
}

.headerwrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.hdlogowrap {

  display: flex;
  align-items: center;
}

.hdlogowrap img {
  width: 3.66032vw;
  margin-right: 1.4em;
}

ul.headnav {
  display: flex;
}

/*ul.headnav li {
  padding: 1.7em 1.5em;
  border-left: 1px solid #cccccc;
  width: 14.64129vw;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}*/
ul.headnav li {
    padding: 1.7em 0.2em;
    border-left: 1px solid #cccccc;
    /*width: 19vw;*/
    width: 14.64129vw;
    max-width: 200px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

ul.headnav li a {
  color: black;
  position: relative;
  left: -0.87848vw;
}
ul.headnav li a:hover{
    color: #0476d9;
    }

ul.headnav li a:before {
  right: -1.68375vw;
  width: 0.58565vw;
  height: 0.58565vw;
  border-top: 1px solid #0476d9;
  border-right: 1px solid #0476d9;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: all .3s;
}
ul.headnav li a:hover:before {
right: -2vw;
}

ul.headnav li.tocontact {
  background: #0476d9;
  transition: .4s all;
}
ul.headnav li.tocontact:hover {
    background: #026ecc;
    transition: .4s all;
}

ul.headnav li.tocontact a {
  color: white;
  left: 0px;
  display: flex;
  align-items: center;
}

ul.headnav li.tocontact a:before {
  content: "";
  width: 1.39092vw;
  height: 1.0981vw;
  background-image: url(../img/contacticon.png);
  background-size: cover;
  display: inline-block;
  margin-right: 0.5em;
  left: 0 !important;
  transform: rotate(0deg);
  transition: all .3s;
  position: relative;
}
ul.headnav li.tocontact a:hover:before{
	transition: all .3s;
top:-3px;
}

.arrow {
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  /*font-size: 15px;*/
}

.arrow::before,
.arrow::after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}


@media screen and (max-width:768px){
  .hdleft {
    align-items: center;
    flex-wrap: wrap;
}
.subdesc{
  margin-left: 2em;
   margin-left: 15vw;
}
ul.footnav {
  flex-wrap: wrap;
}
ul.footnav li {
  border-right:0px;
    line-height: 2;
    width: 100%;
}
.headerwrap {
    min-height: 60px;
}
header {
    border-top: 10px solid #0476d9;
    position: fixed;
    z-index: 999;
    background: white;
    height: 70px;
    width: 100vw;
}
/*main{
    margin-top: 70px;
}*/

}
@media screen and (max-width:480px){
  .f12 {
    font-size: 12px;
}
.f14 {
    font-size: 14px;
}
.f16 {
    font-size: 16px;
}
.f24 {
    font-size: 18px;
}
.f36 {
    font-size: 20px;
}
.f42 {
    font-size: 22px;
}
.newslist li span.newmark {
    position: absolute;
    right: 40px;
}
.hdlogowrap {
    width: 100%;
}
.hdlogowrap .f26 {
    font-size: 16px;
}
.hdlogowrap img {
	width: 40px;
    position: relative;
    top: 10px;
}
header {
    height: 82px;
}
/*main{
    margin-top: 82px;
}*/
}





/*　ハンバーガーボタン　*/
.hamburger {
  display : block;
  position: fixed;
  z-index : 3;
  right : 13px;
  top   : 19px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #555;
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition   : 0.5s ease-in-out;
  transition        : 0.5s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  background : #fff;
  -webkit-transform: rotate(315deg);
  -moz-transform   : rotate(315deg);
  transform        : rotate(315deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  background : #fff;
  -webkit-transform: rotate(-315deg);
  -moz-transform   : rotate(-315deg);
  transform        : rotate(-315deg);
}
nav.globalMenuSp{
	display:none;
	transition: opacity .6s ease, visibility .6s ease;
}
nav.globalMenuSp.active {
  position: fixed;
  z-index : -99;
  top  : 0;
  left : 0;
  color: #fff;
  background: rgba(0,0,0,0.7);
  text-align: center;
  width: 100%;
  opacity: 0;
  transition: opacity .6s ease, visibility .6s ease;
  height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
/*  background :#ddd;*/
}

nav.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1em 0;
  text-decoration :none;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  opacity: 100;

}
.spnone{
}
.pcnone{
	display:none;
}
.spnone480{
}
.pcnone480{
	display:none;
}
@media screen and (max-width:768px){
.globalMenuSp.pcnone.active{
		z-index:2;
	}
.spnone{
	display: none;
}
.pcnone{
	display:block;
}
.mvcontent {
    height: 150px;
    }
.mvcontent .f20 {
    font-size: 20px;
}
ul.footnav li {
    line-height: 1.5;
    }
ul.footnav li a {
    font-size: 14px;
}
nav.globalMenuSp.active{
	/*display:flex !important;*/
}
}
@media screen and (max-width: 480px){
	.spnone480{
	display: none;
}
.pcnone480{
	display:block;
}
.newswrap .nleft {
    margin-bottom: 0;
}
.newswrap .nleft .titlebox {
    margin-bottom: 0;
}
}



/*スクロールに伴うナビゲーションアニメーション*/
#header{
    position: fixed;
    width: 100vw;
    z-index: 999;
    background: white;
}

/*　上に上がる動き　*/

#header.UpMove{
	animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime{
  from {
    opacity: 1;
	transform: translateY(0);
  }
  to {
    opacity: 0;
	transform: translateY(-100px);
  }
}

/*　下に下がる動き　*/

#header.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 0;
	transform: translateY(-100px);
  }
  to {
  	opacity: 1;
	transform: translateY(0);
  }
}