@charset "UTF-8";
/*-------------------------------

	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, sub, sup, 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;
  font-size: 100%;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

/*-------------------------------

	Foundation

-------------------------------*/
html {
  font-size: 62.5%;
}

body {
  color: #333;
  font-size: 1.6rem;
  line-height: 1.7;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic Std", "Helvetica Neue", Arial, Meiryo, sans-serif;
  letter-spacing: 0.05em;
}

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

a:link,
a:visited,
a:hover,
a:active {
  text-decoration: none;
}

*:focus {
  outline: none;
}

p,
ul li,
ol li {
  text-align: justify;
  text-justify: inter-ideograph;
}

p + p {
  margin-top: 2em;
}

img,
picture {
  display: block;
}

strong,
b {
  font-weight: bold;
}

/*-------------------------------

	Layout

-------------------------------*/
/*
* wrapper
*/
.l-base {
  margin-right: 15px;
  margin-left: 15px;
}

.l-wide {
  width: min(calc(100% - (15px * 2)), 1024px);
  margin: 0 auto;
}

/*-------------------------------

	Object

-------------------------------*/
/*---------- Component ----------*/
/*
 * 見出し
 */
.c-h-black {
  margin: 4.5rem 0 2rem;
  padding: 2rem 1rem;
  background: #143A7B;
  line-height: 1.3;
  text-align: center;
}
.c-h-black__h1 {
  color: #fff;
  font-weight: bold;
  font-size: 1.8rem;
}
.c-h-black__h1 em {
  font-size: 130%;
}
.c-h-black.-mt0 {
  margin-top: 0;
}

.c-h4 {
  margin: 4.5rem 0 2rem;
  padding: 0.5rem 1rem;
  border-left: 5px solid #0339A6;
  background: #F1F5F8;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.5;
}

.c-h5 {
  margin-top: 2em;
  font-weight: bold;
}
.c-h5__txt {
  margin-left: 1.5rem;
}

.c-h6 {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
      align-items: flex-end;
  margin-bottom: 1rem;
  gap: 0 1rem;
  border-bottom: 2px solid #333;
  font-weight: bold;
  font-size: 1.8rem;
}
.c-h6 span {
  font-size: 130%;
  line-height: 1.3;
}
.c-h6 + p {
  margin-bottom: 4em;
}

.c-strong {
  font-size: 130%;
}

/*
 * 一覧
 */
.c-merit__item + .c-merit__item {
  margin-top: 4rem;
  padding-top: 4rem;
  border-top: 1px solid #cdcdcd;
}
.c-merit__h-box {
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-align: center;
      align-items: center;
  margin-bottom: 2rem;
  font-weight: bold;
  font-size: 1.8rem;
}
.c-merit__h-box + .c-merit__h-box:before {
  position: absolute;
  top: -2rem;
  left: 2rem;
  width: 2rem;
  height: 2rem;
  background: url("../images/arrow.svg") no-repeat center/contain;
  content: "";
}
.c-merit__num {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 0.5rem;
  margin-right: 3rem;
}
.c-merit__num span {
  font-weight: lighter;
  font-size: 1.2rem;
}
.c-merit__num em {
  font-weight: lighter;
  font-size: 2.4rem;
  font-family: "Hind Madurai";
}
.c-merit__num.-col {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  line-height: 1.1;
}
.c-merit__num.-col span {
  font-size: 1.2rem;
  letter-spacing: 0.2em;
  text-align: center;
}
.c-merit__num.-col em {
  font-size: 3.8rem;
  line-height: 1;
}
.c-merit__h {
  font-weight: normal;
}

.c-list {
  margin: 4rem 0 4rem;
  font-weight: bold;
}
.c-list li + li {
  margin-top: 1em;
}
.c-list li {
  display: -ms-flexbox;
  display: flex;
  gap: 0 1rem;
}
.c-list li:before {
  content: "・";
}

/*
 * サムネイル
 */
.c-thumb {
  display: block;
  width: min(100%, 40rem);
  margin: 2.8rem auto;
}
.c-thumb.-s {
  width: min(80%, 30rem);
}
.c-thumb.-shadow {
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.7);
}
.c-thumb.-border {
  border: 1px solid rgba(0, 0, 0, 0.5);
}
.c-thumb.-mb1 {
  margin-bottom: 1rem;
}
.c-thumb.-mt1 {
  margin-top: 1rem;
}
.c-thumb__caption {
  margin-bottom: 1rem;
  text-align: center;
}

/*---------- Project ----------*/
/*
 * header
 */
.p-topview {
  margin-bottom: 5.6rem;
  padding: 3rem 0;
}
.p-topview__img img {
  display: block;
  width: 100%;
}
.p-topview__txt {
  margin-bottom: 3rem;
  font-weight: normal;
  font-size: 1.4rem;
  text-align: center;
}

.p-bg {
  z-index: -1;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  background: url("../images/bg_pc.jpg") no-repeat center/cover;
  opacity: 0.8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
}

/*
 * aside
 */
.p-aside {
  margin: 3rem 0;
}
.p-aside:before {
  display: block;
  height: 8rem;
  margin-bottom: 2rem;
  background: url("../images/arrow.png") no-repeat center/contain;
  content: "";
}
.p-aside form {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.p-aside input[type=text] {
  margin-bottom: 1.4rem;
  padding: 2rem 1rem;
  border: 2px solid #cdcdcd;
  font-size: 1.6rem;
}
.p-aside input[type=submit] {
  display: inline;
  appearance: none;
  padding: 2rem;
  border: none;
  border-radius: 5px;
  background: #0339A6;
  color: #fff;
  font-weight: bold;
  font-weight: bold;
  font-size: 1.8rem;
  font-family: inherit;
  letter-spacing: 0.05em;
  text-align: center;
  cursor: pointer;
  transition: opacity 0.3s;
}
.p-aside input[type=submit]:hover {
  opacity: 0.8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
}
.p-aside__txt {
  margin-top: 2rem;
  text-align: center;
}

/*
 * footer
 */
.p-ftr {
  background-color: #ceccb8;
  font-size: 1.2rem;
}
.p-ftr__inner {
  padding: 3rem 0;
  text-align: center;
}
.p-ftr__box-l {
  margin-bottom: 2rem;
}
.p-ftr__box-name {
  display: inline-block;
  margin-right: 1rem;
  margin-bottom: 1rem;
  font-weight: bold;
  font-size: 1.8rem;
}
.p-ftr__ruby {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin: 0.3rem 0.3rem 0;
}
.p-ftr__ruby span {
  font-size: 50%;
  line-height: 1;
}
.p-ftr__address {
  text-align: center;
}
.p-ftr__box-r {
  text-align: center;
}
.p-ftr__box-r li {
  display: inline-block;
}
.p-ftr__box-r li + li {
  margin-left: 1.5rem;
}
.p-ftr__box-r a {
  color: #1399CC;
  text-decoration: underline;
  transition: all 0.3s;
}
.p-ftr__box-r a:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-ftr__cr {
  padding: 0.5rem 15px;
  background-color: #342D2A;
  color: #CECCB8;
  font-size: 1rem;
}

/*---------- Utility ----------*/
/*
 * block
 */
.u-sp {
  display: block;
}

.u-pc {
  display: none;
}

.u-spacer {
  display: block;
  height: 2.8rem;
}

.u-mt2 {
  margin-top: 4em;
}

/*
 * color
 */
.u-red {
  color: #CE2323;
}

.u-white {
  color: #fff;
}

.u-gray {
  color: #666666;
}

.u-yerrow {
  color: #FEDA05;
}

.u-bg-white {
  background: #fff;
}

.u-bg-black {
  background: #212222;
}

.u-link {
  color: #0339A6;
  text-decoration: underline !important;
  transition: opacity 0.3s;
}
.u-link:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

/*
 * マーカー
 */
.u-marker {
  text-decoration: underline;
}

.u-2color-marker {
  display: inline;
  padding: 4px 0;
  background: linear-gradient(#FEDA05 94%, #333 0%);
}

.u-yerrow-marker {
  display: inline;
  background: #FEDA05;
}

/*
 * font-weignt
 */
.u-bold {
  font-weight: bold !important;
}

.u-tac {
  text-align: center;
}

@media only screen and (min-width: 768px){
  /* middle-size */
  .c-h-black{
    margin: 8.5rem 0 3.5rem;
    padding: 3rem 1.5rem;
  }
  .c-h-black__h1{
    font-size: 3.6rem;
  }
  .c-h-black.-mt0{
    margin-top: 0;
  }
  .c-h4{
    font-size: 2.2rem;
  }
  .c-h4{
    margin: 5.5rem 0 3.5rem;
    padding: 0.5rem 2rem;
  }
  .c-h5{
    margin-left: 2rem;
  }
  .c-h5__txt{
    margin-left: 4rem;
  }
  .c-h6{
    font-size: 2.2rem;
  }
  .c-merit__item + .c-merit__item{
    margin-top: 5.6rem;
    padding-top: 5.6rem;
  }
  .c-merit__h-box{
    font-size: 2.2rem;
  }
  .c-merit__h-box{
    margin-bottom: 4rem;
  }
  .c-merit__h-box + .c-merit__h-box:before{
    top: -4rem;
    left: 4rem;
    height: 4rem;
  }
  .c-merit__num span{
    font-size: 1.8rem;
  }
  .c-merit__num em{
    font-size: 3.4rem;
  }
  .c-merit__num.-col span{
    font-size: 1.4rem;
  }
  .c-merit__num.-col em{
    font-size: 4.2rem;
  }
  .c-thumb{
    width: 90%;
    margin: 5.6rem auto;
  }
  .c-thumb.-s{
    width: 50%;
  }
  .p-topview__txt{
    font-size: 1.6rem;
  }
  .p-aside{
    margin: 4rem 0;
  }
  .p-aside:before{
    height: 12rem;
  }
  .p-aside input[type=text]{
    font-size: 1.8rem;
  }
  .p-aside input[type=submit]{
    font-size: 2.2rem;
  }
  .p-ftr__inner{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
        justify-content: space-between;
    padding: 1rem 0;
  }
  .p-ftr__box-l{
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 0;
  }
  .p-ftr__box-name{
    margin-bottom: 0;
  }
  .p-ftr__address{
    text-align: left;
  }
  .p-ftr__box-r{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
  }
  .p-ftr__cr{
    text-align: center;
  }
  .u-sp{
    display: none;
  }
  .u-pc{
    display: block;
  }
  .u-spacer{
    height: 5.6rem;
  }
}

@media only screen and (min-width: 730px){
  /* large-size */
  .l-base{
    margin-right: calc((100% - 700px) / 2);
    margin-left: calc((100% - 700px) / 2);
  }
}
/*# sourceMappingURL=style.css.map */