@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500&family=Noto+Serif+JP:wght@300;400&display=swap');

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 {
  font-family: "ヒラギノ角ゴ Pro W3", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", "Helvetica Neue", serif;
  font-weight:normal;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight:400;
  /*font-weight: inherit;
  font-style: inherit;*/
  color:#2e2a29;
  line-height:2.1428;
}

blockquote, q { quotes: none;}
blockquote::before, blockquote::after,
q::before, q::after { content: ''; content: none;}
legend { display:none;}
:focus { outline: 0;}
table { border-collapse: collapse; border-spacing: 0;}
caption, th, td { text-align: left; font-weight: normal;}
a img, iframe { border: none;}
ul, ol { list-style: none;}
input, textarea, select, button { font-size: 100%; /*font-family:inherit;*/}
input, select { vertical-align:middle;}
select { margin: inherit;}
button { border: 0; padding: 0; background: transparent; /* IE6/7 */ cursor: pointer;}
a:focus { outline:none;}

html {
  /*height:100%;*/
  background-color:#fff;
  /*font-size: 62.5%; /* 10px想定 */
  /*font-size:75%; /* 12px想定*/
  font-size:87.5%; /* 14px想定*/
  /*font-size:100%; /* 16px想定*/
  width:100%;
  /*overflow-x:hidden;*/
  -webkit-touch-callout:none;
  -webkit-text-size-adjust:100%;
  -webkit-tap-highlight-color:transparent;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
* { color:#2e2a29; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}
body { text-align:left; min-width:320px; position:relative; -webkit-text-size-adjust:100%; /*word-wrap:break-word;*/ width:100%;}
body * { font-size:1em; box-sizing:border-box;}
*::before,
*::after { box-sizing:border-box;}

.clear-1px { clear:both; font-size:1px; line-height:1px; height:1px;}

.position-set1 { position:relative; overflow:hidden;}
.position-set2 { position:absolute; overflow:hidden;}
.position-set3 { position:relative; overflow:visible;}
.position-set4 { position:absolute; overflow:visible;}
.position-set1 .position-text,
.position-set2 .position-text { display:block; overflow:hidden; position:absolute; text-align:left; left:105%; top:0; width:100%; height:100%;}

.table-format01 { display:table; table-layout:fixed; border-collapse:collapse;}
.table-format02 { display:table; table-layout:fixed; border-collapse:separate;}
.table-format01 .table-cell,
.table-format02 .table-cell { display:table-cell;}
.table-format01 .table-row,
.table-format02 .table-row { display:table-row;}

input { vertical-align:middle; outline:none; /*-webkit-appearance:none;*/ /*iPhoneオリジナルのinput*/ /*font-size:1.15em;*/}
input[type="submit"],
input[type="reset"],
input[type="text"] {
  -webkit-appearance:none;
  border-radius:0px;
  border-width:1.4px;
  border-style:solid;
  border-color:#ccc;
  padding:0;
  background-color:#fff;
}
input[type="submit"],
input[type="reset"],
label { cursor:pointer;}
select {
  -webkit-appearance:none;
  -moz-appearance:none;
  -ms-appearance:none;
  -o-appearance:none;
  appearance:none;
  height:2.8em;
  border-radius:0px;
  border-width:1.4px;
  border-style:solid;
  border-color:#ccc;
  margin:0;
  cursor:pointer;
}
textarea { max-width:100%; border-color:#ccc; border-width:1.4px; border-style:solid; padding-top:0.65em; padding-right:0.5em; padding-bottom:0.65em; padding-left:0.8em; line-height:1.6;}
input[type="text"] { max-width:100%;}
input[type=checkbox] { margin:0;}

a, a:hover { text-decoration:none;}
img { vertical-align:top;}
a img { /* firefox */background:url(../images/common/blank.gif) repeat left top;}
.animation a,
.animationImg a img,
.animation a:hover,
.animationImg a:hover img {
  -webkit-transition: 0.4s;
  -moz-transition: 0.4s;
  -ms-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}
