
@charset "UTF-8";

@font-face { font-family: YuGothicM; src: local("Yu Gothic Medium"); }

/*=============================================================
	Nomalize
=============================================================*/
:root { -ms-overflow-style: -ms-autohiding-scrollbar; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; text-size-adjust: 100%; }
*, *::after, *::before { margin: 0; padding: 0; box-sizing: inherit; }
* { font-size: inherit; line-height: inherit; }
::before, ::after { text-decoration: inherit; vertical-align: inherit; }
*, ::before, ::after { border-style: solid; border-width: 0; }

html { box-sizing: border-box; font-size: 62.5%; line-height: 1.5; font-family: sans-serif; text-rendering: optimizeLegibility; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template { display: none; }
abbr[title] {  border-bottom: 1px dotted; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
b, strong { font-weight: bold; }
dfn, em { font-style: italic; }
small { font-size: 75%; }
sub, sup { position: relative; font-size: 75%; line-height: 0; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

pre { margin: 0; white-space: pre-wrap; }
kbd, samp { font-family: monospace, serif; }
code, pre { -moz-osx-font-smoothing: auto; -webkit-font-smoothing: auto; font-family: "Consolas", "Monaco", monospace; font-size: 1.3rem; }
blockquote, q { quotes: "\201C" "\201D" "\2018" "\2019"; }
blockquote::before, blockquote::after, q::before, q::after { content: ''; content: none; }
mark { background: #FF9; color: #000; font-weight: bold; font-style: italic; }
i { font-weight:  normal; font-style: normal; }
ol, ul { list-style-type: none;  }
ul:not(.default) { list-style-type: none; }
ul:not(.default) li { list-style-type: none; }

img { border: 0; }
svg:not(:root) { overflow: hidden; }
img, embed, object, audio, video { max-width: 100%; height: auto; }

textarea { overflow: auto; vertical-align: top; }
button, input, select, textarea, optgroup { color: inherit; font: inherit; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; }
button[disabled], html input[disabled] { cursor: default; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
optgroup { font-weight: bold; }
input { line-height: normal; }
input[type="text"], input[type="email"], input[type="search"], input[type="password"] { -webkit-appearance: none; -moz-appearance: none; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }
input[type="search"] { -webkit-appearance: textfield; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

table { border-collapse: collapse; border-spacing: 0; }
th, td { padding: 0; }

iframe { border: 0; }

a { background: transparent; }
a:active, a:hover { outline: 0; }

::-moz-selection { color: #fff; background-color: #00d4c6; text-shadow: none; }
::selection { color: #fff;  background-color: #00d4c6; text-shadow: none; }

body { word-wrap: break-word; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; text-size-adjust: 100%; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-smoothing: antialiased; text-rendering: auto; overflow-x: hidden; width: 100vw; min-width: 320px; }

body { font-size: 14px; font-size: 1.4rem; font-family: Roboto, "Noto Sans Japanese", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic" ,"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif; }

/*=============================================================
	Button
=============================================================*/
a { color: #000; cursor: pointer; text-decoration: none; -webkit-tap-highlight-color: transparent; transition: all .3s ease-out;　}
a:hover { color: #f30; }

/*=============================================================
	Layout
=============================================================*/
.defs { display: none; }

body { background: url(img/bg.png) repeat center center; }

.flex { position: relative; padding: 40px; width: 100%; height: 100%; min-height: 100vh; }
.flex-center { display: flex; justify-content: center; align-items: center; }
.header { width: 100%; }
.site-branding { width: 200px; }
.site-img { position: relative; left: 50%; width: 100%; transform: translateX(-50%); z-index: -1; }
.site-img img { width: 100%; }
.message { width: 200px; margin: 40px 0; }

.notice { padding: 20px 0; }
.notice p { font-size: 1.4rem; line-height: 1.8; text-align: center; padding-bottom: 20px; }
.address { padding: 20px; text-align: center; }
.address .e-mail { display: block; font-size: 2rem; font-weight: 700; padding-bottom: 20px; }
.address .small { font-size: 1.2rem; }

.copyright { text-align: center; font-size: 1.1rem; font-weight: 700; }
