@charset "utf-8";

/* font */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Noto+Sans+JP:wght@100..900&display=swap');

/* var */
:root {
  --c_black: #333333;
  --c_white: #ffffff;
}

/* reset */
* { padding: 0; margin: 0; box-sizing: border-box; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border: 0; }
address, caption, cite, code, dfn, em, var { font-style: normal; font-weight: 200; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: 200; }
q:before, q:after { content: ''; }
abbr, acronym { border: 0; }
section, article { display: block; }

/* iOS reset */
input[type=text] { border:none; -webkit-border-radius : 0; -webkit-appearance : none; -webkit-tap-highlight-color : rgba(0,0,0,0); }
input[type="submit"],
input[type="button"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer; }
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration { display: none; }
input[type="submit"]::focus,input[type="button"]::focus { outline-offset: -0.15em; }
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; outline: none; background: transparent; }
button,input[type="submit"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; border: none; outline: none; background: transparent; }
input[type="radio"] { display: none; }

/* base */
html { position: relative; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body {
  animation: fadeIn 2s ease 0s 1 normal; -webkit-animation: fadeIn 2s ease 0s 1 normal;
  position: relative; -webkit-font-smoothing: auto; -webkit-font-feature-settings: 'palt'; font-feature-settings: 'palt';
  word-wrap : break-word; overflow-wrap : break-word; font-kerning: normal; -webkit-font-kerning: normal;
  font-family: Helvetica, sans-serif, "Inter", "Noto Sans JP",sans-serif;
  line-height: 1.5em; letter-spacing: 0.05em; font-weight: 400; box-sizing: border-box; background-color: #176F3C; color: var(--c_white); padding: 0; margin: 0;
  -webkit-text-size-adjust: none; -webkit-font-smoothing: antialiased; }
img { vertical-align: bottom; height: auto; width: 100%; }
::selection { background: var(--c_black); color: var(--c_white); }
::-moz-selection { background: var(--c_black); }

/* fadein */
.fadein { opacity : 0; transform: translateY(0); transition: all 0.6s; }
@keyframes fadeIn { 0% { opacity: 0 } 100% { opacity: 1 } }
@-webkit-keyframes fadeIn { 0% { opacity: 0 } 100% { opacity: 1 } }

/* link */
.cWrap a { transition: all 0.15s ease-in-out; text-decoration: underline; }
.cWrap a:link,.cWrap a:hover,.cWrap a:active,.cWrap a:visited { color:var(--c_white);  }
.cWrap a[href^="tel:"] { pointer-events: none; }

/* options */
.pc { display:inline; }
.sp { display:none; }
.br__pc { display:block; }
.br__sp { display:none; }
.rl { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-feature-settings : "pkna"; }

/* flex */
.flex { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.fill { object-fit: cover; font-family: 'object-fit: cover;'; }

/* cWrap */
.cWrap { position: relative; height:100vh; }

.cMainte { position: relative; height:100vh; display:flex; flex-direction: column; justify-content: center; align-items: center; margin:auto; }
.cMainte h1 { margin:0 auto 3rem auto; width:40%; }
.cMainte p { font-size: 1rem; line-height: 1.8em; text-align: center; margin-bottom: 1em; }
.cMainte .copyright { font-size: 0.7rem; line-height: 1.8em; text-align: center; margin:2rem auto; }

@media screen and (max-width: 600px) {

/* options */
.pc { display:none; }
.sp { display:inline; }
.br__pc { display:none; }
.br__sp { display:block; }

.cMainte { position: relative; height:100vh; display:flex; flex-direction: column; justify-content: center; align-items: center; margin:auto; }
.cMainte h1 { margin:0 auto 3rem auto; width:85%; }
.cMainte p { margin:0 auto aem0 auto; width:80%; font-size: 1.1rem; line-height: 1.8em; text-align: justify; }
.cMainte p br { display:none; }
.cMainte .copyright { font-size: 0.7rem; line-height: 1.8em; text-align: center; margin:2rem auto; }

}

/* size */
html {
  font-size: clamp(10px, 1.1vw, 100px);
}

@media screen and (max-width: 600px) {
  html {
    font-size: clamp(0px, 3.6vw, 100px);
  }
}
