@charset "utf-8";

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, input, textarea {
  margin: 0;
  padding: 0;
  border: 0;
  color: #333;
  /*font-family: 'Noto Sans Japanese', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;*/
  font-family: "ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ", Meiryo,"MS ゴシック","MS Gothic",sans-serif;
  font-style: normal;
  font-weight: normal;
  font-size: 1.4rem;
  vertical-align: baseline;
  /*letter-spacing: 1px;*/
  line-height: 22px;
  box-sizing: border-box;
  }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
  }

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

body {
  /*display: flex;
  flex-direction: column;
  height: 100%;*/
  min-height: 100vh;
  background: #fff;
  overflow-y: auto;
  }

blockquote, q {
  quotes: none;
  }

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

input, textarea,{
  margin: 0;
  padding: 0;
  }

ol, ul{
  list-style:none;
  }

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

caption, th{
  text-align: left;
  }

sup {
  vertical-align: super;
  font-size: smaller;
  }

sub {
  vertical-align: sub;
  font-size: smaller;
  }

img {
  vertical-align: bottom;
  }

a,
a * {
  color: #499ef4;
  text-decoration: none;
  word-wrap: break-word;
  transition: .3s;
  }

/*
a:visited {
  color: #57b9ea;
  }
*/

a:hover {
  opacity: 0.8;
  }

a:focus {
  outline: none;
  }

h1, h2, h3, h4, h5,
h1 *, h2 *, h3 *, h4 *, h5 * {
  font-weight: bold;
  }

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
  }

.clearfix {
  min-height: 1px;
  }

* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
  }

input {
  background-color: #fff;
  border: 1px solid #ccc;
  -webkit-transition: .3s ease;
  transition: .3s ease;
  }

input[type="text"],
input[type="password"] {
  width: 100%;
  height: 40px;
  padding: 0 5px;
  border-radius: 5px;
  box-shadow: 1px 1px 2px rgba(0,0,0,0.1) inset;
  }

input:focus {
  background-color: #fff;
  }

input:-webkit-autofill {
  /* ここで指定しているbackground-colorは黄色い背景色のことです */
  -webkit-transition: background-color 9999s;
  transition: background-color 9999s;
  }

label {
  display: flex;
  align-items: center;
  }

label > input[type="radio"],
label > input[type="checkbox"] {
  margin-right: 5px;
  }

select {
  height: 40px;
  padding: 0 5px;
  margin-left: 10px;
  margin-right: 10px;
  border-radius: 5px;
  box-shadow: 1px 1px 2px rgba(0,0,0,0.1) inset;
  font-size: 1.4rem;
  color: #333;
  border: 1px solid #B3B3B3;
  background-color: #fff;
  }

select:first-child {
  margin-left: 0;
  }

select:disabled {
  color: #9f9f9f;
  background-color: #f5f5f5;
}

select option {
  font-size: 1.4rem;
  color: #333;
  }

textarea {
  width: 100%;
  padding: 5px;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-shadow: 1px 1px 2px rgba(0,0,0,0.1) inset;
  font-size: 1.4rem;
  }

.bold {
  font-weight: bold;
  }

.underline {
  text-decoration: underline;
  }

.both{
  clear:both;
  }

.alt {
  display: none;
  }

.txt_left {
  text-align: left;
  }

.txt_center {
  text-align: center;
  }

.txt_right {
  text-align: right;
  }

.pc {
  display: block;
  }

.sp {
  display: none;
  }



/*-------------------------------------------------------------------------------------------------
  iPadサイズ
  768px
--------------------------------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {

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, select, option, input, textarea {
  font-size: 1.4rem;
  letter-spacing: 0;
  -webkit-text-size-adjust: 100%;
  }

html,
body {
  -webkit-text-size-adjust: 100%;
  }

a:hover {
  opacity: 1;
  filter: alpha(opacity=100);
  -ms-filter: "alpha(opacity=100)";
  -moz-opacity: 1;
  -khtml-opacity: 1;
  }

.pc {
  display: none;
  }

.sp {
  display: block;
  }
}
