@charset "UTF-8";

/* === reset.css === */
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

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-size: 100%;
	font: inherit;
	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;
}
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;
}
a {
	text-decoration: none;
	color: #000;
}

/* === layouts.css === */
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.flex > * {
  margin: 20px 1%;
}

.flex.col-1 > * {
  width: 98%;
}

.flex.col-1-1 > * {
  width: 98%;
}

.flex.col-1-2 > * {
  width: 98%;
}

.flex.col-1-3 > * {
  width: 98%;
}

.flex.col-1-4 > * {
  width: 98%;
}

.flex.col-1-5 > * {
  width: 98%;
}

.flex.col-1-6 > * {
  width: 98%;
}

.flex.col-1-7 > * {
  width: 98%;
}

.flex.col-1-8 > * {
  width: 98%;
}

.flex.col-1-9 > * {
  width: 98%;
}

.flex.col-1-10 > * {
  width: 98%;
}

.flex.col-1-11 > * {
  width: 98%;
}

.flex.col-1-12 > * {
  width: 98%;
}

.flex.col-2 > * {
  width: 48%;
}

.flex.col-2-1 > * {
  width: 48%;
}

.flex.col-2-2 > * {
  width: 48%;
}

.flex.col-2-3 > * {
  width: 48%;
}

.flex.col-2-4 > * {
  width: 48%;
}

.flex.col-2-5 > * {
  width: 48%;
}

.flex.col-2-6 > * {
  width: 48%;
}

.flex.col-2-7 > * {
  width: 48%;
}

.flex.col-2-8 > * {
  width: 48%;
}

.flex.col-2-9 > * {
  width: 48%;
}

.flex.col-2-10 > * {
  width: 48%;
}

.flex.col-2-11 > * {
  width: 48%;
}

.flex.col-2-12 > * {
  width: 48%;
}

.flex.col-3 > * {
  width: 31.33333%;
}

.flex.col-3-1 > * {
  width: 31.33333%;
}

.flex.col-3-2 > * {
  width: 31.33333%;
}

.flex.col-3-3 > * {
  width: 31.33333%;
}

.flex.col-3-4 > * {
  width: 31.33333%;
}

.flex.col-3-5 > * {
  width: 31.33333%;
}

.flex.col-3-6 > * {
  width: 31.33333%;
}

.flex.col-3-7 > * {
  width: 31.33333%;
}

.flex.col-3-8 > * {
  width: 31.33333%;
}

.flex.col-3-9 > * {
  width: 31.33333%;
}

.flex.col-3-10 > * {
  width: 31.33333%;
}

.flex.col-3-11 > * {
  width: 31.33333%;
}

.flex.col-3-12 > * {
  width: 31.33333%;
}

.flex.col-4 > * {
  width: 23%;
}

.flex.col-4-1 > * {
  width: 23%;
}

.flex.col-4-2 > * {
  width: 23%;
}

.flex.col-4-3 > * {
  width: 23%;
}

.flex.col-4-4 > * {
  width: 23%;
}

.flex.col-4-5 > * {
  width: 23%;
}

.flex.col-4-6 > * {
  width: 23%;
}

.flex.col-4-7 > * {
  width: 23%;
}

.flex.col-4-8 > * {
  width: 23%;
}

.flex.col-4-9 > * {
  width: 23%;
}

.flex.col-4-10 > * {
  width: 23%;
}

.flex.col-4-11 > * {
  width: 23%;
}

.flex.col-4-12 > * {
  width: 23%;
}

.flex.col-5 > * {
  width: 18%;
}

.flex.col-5-1 > * {
  width: 19%;
  margin: 20px 0.5%;
}

.flex.col-5-2 > * {
  width: 18%;
}

.flex.col-5-3 > * {
  width: 18%;
}

.flex.col-5-4 > * {
  width: 18%;
}

.flex.col-5-5 > * {
  width: 18%;
}

.flex.col-5-6 > * {
  width: 18%;
}

.flex.col-5-7 > * {
  width: 18%;
}

.flex.col-5-8 > * {
  width: 18%;
}

.flex.col-5-9 > * {
  width: 18%;
}

.flex.col-5-10 > * {
  width: 18%;
}

.flex.col-5-11 > * {
  width: 18%;
}

.flex.col-5-12 > * {
  width: 18%;
}

.flex.col-6 > * {
  width: 14.66667%;
}

.flex.col-6-1 > * {
  width: 14.66667%;
}

.flex.col-6-2 > * {
  width: 14.66667%;
}

.flex.col-6-3 > * {
  width: 14.66667%;
}

.flex.col-6-4 > * {
  width: 14.66667%;
}

.flex.col-6-5 > * {
  width: 14.66667%;
}

.flex.col-6-6 > * {
  width: 14.66667%;
}

.flex.col-6-7 > * {
  width: 14.66667%;
}

.flex.col-6-8 > * {
  width: 14.66667%;
}

.flex.col-6-9 > * {
  width: 14.66667%;
}

.flex.col-6-10 > * {
  width: 14.66667%;
}

.flex.col-6-11 > * {
  width: 14.66667%;
}

.flex.col-6-12 > * {
  width: 14.66667%;
}

.flex.col-7 > * {
  width: 12.28571%;
}

.flex.col-7-1 > * {
  width: 12.28571%;
}

.flex.col-7-2 > * {
  width: 12.28571%;
}

.flex.col-7-3 > * {
  width: 12.28571%;
}

.flex.col-7-4 > * {
  width: 12.28571%;
}

.flex.col-7-5 > * {
  width: 12.28571%;
}

.flex.col-7-6 > * {
  width: 12.28571%;
}

.flex.col-7-7 > * {
  width: 12.28571%;
}

.flex.col-7-8 > * {
  width: 12.28571%;
}

.flex.col-7-9 > * {
  width: 12.28571%;
}

.flex.col-7-10 > * {
  width: 12.28571%;
}

.flex.col-7-11 > * {
  width: 12.28571%;
}

.flex.col-7-12 > * {
  width: 12.28571%;
}

.flex.col-8 > * {
  width: 10.5%;
}

.flex.col-8-1 > * {
  width: 10.5%;
}

.flex.col-8-2 > * {
  width: 10.5%;
}

.flex.col-8-3 > * {
  width: 10.5%;
}

.flex.col-8-4 > * {
  width: 10.5%;
}

.flex.col-8-5 > * {
  width: 10.5%;
}

.flex.col-8-6 > * {
  width: 10.5%;
}

.flex.col-8-7 > * {
  width: 10.5%;
}

.flex.col-8-8 > * {
  width: 10.5%;
}

.flex.col-8-9 > * {
  width: 10.5%;
}

.flex.col-8-10 > * {
  width: 10.5%;
}

.flex.col-8-11 > * {
  width: 10.5%;
}

.flex.col-8-12 > * {
  width: 10.5%;
}

.flex.col-9 > * {
  width: 9.11111%;
}

.flex.col-9-1 > * {
  width: 9.11111%;
}

.flex.col-9-2 > * {
  width: 9.11111%;
}

.flex.col-9-3 > * {
  width: 9.11111%;
}

.flex.col-9-4 > * {
  width: 9.11111%;
}

.flex.col-9-5 > * {
  width: 9.11111%;
}

.flex.col-9-6 > * {
  width: 9.11111%;
}

.flex.col-9-7 > * {
  width: 9.11111%;
}

.flex.col-9-8 > * {
  width: 9.11111%;
}

.flex.col-9-9 > * {
  width: 9.11111%;
}

.flex.col-9-10 > * {
  width: 9.11111%;
}

.flex.col-9-11 > * {
  width: 9.11111%;
}

.flex.col-9-12 > * {
  width: 9.11111%;
}

.flex.col-10 > * {
  width: 8%;
}

.flex.col-10-1 > * {
  width: 8%;
}

.flex.col-10-2 > * {
  width: 8%;
}

.flex.col-10-3 > * {
  width: 8%;
}

.flex.col-10-4 > * {
  width: 8%;
}

.flex.col-10-5 > * {
  width: 8%;
}

.flex.col-10-6 > * {
  width: 8%;
}

.flex.col-10-7 > * {
  width: 8%;
}

.flex.col-10-8 > * {
  width: 8%;
}

.flex.col-10-9 > * {
  width: 8%;
}

.flex.col-10-10 > * {
  width: 8%;
}

.flex.col-10-11 > * {
  width: 8%;
}

.flex.col-10-12 > * {
  width: 8%;
}

.flex.col-11 > * {
  width: 7.09091%;
}

.flex.col-11-1 > * {
  width: 7.09091%;
}

.flex.col-11-2 > * {
  width: 7.09091%;
}

.flex.col-11-3 > * {
  width: 7.09091%;
}

.flex.col-11-4 > * {
  width: 7.09091%;
}

.flex.col-11-5 > * {
  width: 7.09091%;
}

.flex.col-11-6 > * {
  width: 7.09091%;
}

.flex.col-11-7 > * {
  width: 7.09091%;
}

.flex.col-11-8 > * {
  width: 7.09091%;
}

.flex.col-11-9 > * {
  width: 7.09091%;
}

.flex.col-11-10 > * {
  width: 7.09091%;
}

.flex.col-11-11 > * {
  width: 7.09091%;
}

.flex.col-11-12 > * {
  width: 7.09091%;
}

.flex.col-12 > * {
  width: 6.33333%;
}

.flex.col-12-1 > * {
  width: 6.33333%;
}

.flex.col-12-2 > * {
  width: 6.33333%;
}

.flex.col-12-3 > * {
  width: 6.33333%;
}

.flex.col-12-4 > * {
  width: 6.33333%;
}

.flex.col-12-5 > * {
  width: 6.33333%;
}

.flex.col-12-6 > * {
  width: 6.33333%;
}

.flex.col-12-7 > * {
  width: 6.33333%;
}

.flex.col-12-8 > * {
  width: 6.33333%;
}

.flex.col-12-9 > * {
  width: 6.33333%;
}

.flex.col-12-10 > * {
  width: 6.33333%;
}

.flex.col-12-11 > * {
  width: 6.33333%;
}

.flex.col-12-12 > * {
  width: 6.33333%;
}

.flex.flex-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.dl-table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid #000;
  padding: 15px 0;
}

.dl-table > * {
  font-size: 16px;
}

.dl-table.last {
  border-bottom: 1px solid #000;
}

.dl-table dt {
  width: 20%;
  font-weight: bold;
}

.dl-table dd {
  width: 80%;
}

._inner, .__inner, .___inner {
  margin: 0 auto;
}

.t-right {
  text-align: right;
}

.bg-white {
  background: #fff;
}

/* sp */
@media (max-width: 768px) {
  ._inner, .__inner, .___inner {
    max-width: 96%;
    margin: 2% auto;
  }
  .flex.col-2-1 > * {
    margin: 10px 0;
    width: 100%;
  }
  .flex.col-3-1 > *, .flex.col-5-1 > * {
    margin: 10px 0;
    width: 100%;
  }
  
  .flex.col-3-2 > *, .flex.col-4-2 > * {
    margin: 10px 1%;
    width: 48%;
  }
  .flex.col-5-2 > * {
    margin: 10px 1%;
    width: 48%;
  }
  .flex.col-5-3 > * {
    margin: 10px 1%;
    width: 30%;
  }
  .dl-table {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    border-top: 1px solid #000;
    padding: 15px 0;
  }
  .dl-table > * {
    font-size: 16px;
  }
  .dl-table.last {
    border-bottom: 1px solid #000;
  }
  .dl-table dt {
    width: 100%;
    font-weight: bold;
    padding-bottom: 10px;
  }
  .dl-table dd {
    width: 100%;
  }
}


/* === parts.css === */
.card {
  background: #fff;
  border-radius: 6px;
  -webkit-filter: drop-shadow(0px 0px 5px #ccc);
  filter: drop-shadow(0px 0px 5px #ccc);
}

.card > .head * {
  border-top-left-radius: 6px;
  border-top-left-radius: 6px;
}

.card > .body {
  padding: 25px 20px;
  text-align: left;
}

.card > .body p.title {
  font-size: 20px;
  padding-bottom: 10px;
}

.card > .body p.text {
  color: #AFABAA;
}

.card > .foot {
  border-bottom-left-radius: 6px;
  border-bottom-left-radius: 6px;
}

.box {
  padding: 20px;
}

.box.bg-white {
  background: #fff;
  -webkit-filter: drop-shadow(0px 0px 5px #ccc);
  filter: drop-shadow(0px 0px 5px #ccc);
}

/* pagenation */
.pagenation ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.pagenation ul li {
  background: #fff;
  border-radius: 50%;
  color: #4D4F5C;
  font-size: 14px;
  padding: 10px 13px;
  margin-right: 10px;
  -webkit-filter: drop-shadow(0px 1px 4px #ccc);
  filter: drop-shadow(0px 1px 4px #ccc);
}

.pagenation ul li.active {
  background: #F7963B;
  color: #fff;
}

/* btn */
.btn {
  cursor: pointer;
  text-align: center;
  display: inline-block;
  margin: 0 auto;
  max-width: 100%;
  font-size: 14px;
  border-radius: 5px;
  padding: 15px 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: bold;
  min-width: 150px;
}

.btn.small {
  font-size: 12px;
  padding: 10px 5px;
  min-width: 50px;
}

.btn.large {
  font-size: 20px;
  padding: 10px 5px;
  min-width: 300px;
}

.btn.btn-block {
  width: 100%;
}

.btn:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

a.btn {
  text-decoration: none;
}

.btn-1 {
  background: #0005c5;
  border: 1px solid #0005c5;
  color: #fff;
  border-radius: 40px;
  padding: 15px 40px;
}

.btn-1:hover {
  background: #fff;
  color: #0005c5;
}

.btn-2-o {
  background: #fff;
  border: 1px solid #FF0000;
  color: #FF0000;
}

.btn-2-o:hover {
  background: #FF0000;
  color: #fff;
}

.btn-3 {
  background: #90663f;
  border: 1px solid #90663f;
  color: #fff;
}

.btn-3:hover {
  background: #fff;
  color: #90663f;
}

.btn-4 {
  background: #EFA70D;
  border: 1px solid #EFA70D;
  color: #fff;
}

.btn-4:hover {
  background: #fff;
  color: #EFA70D;
}

.btn-blue {
  background: #1AA2D6;
  border: 1px solid #1AA2D6;
  color: #fff;
}

.btn-blue:hover {
  background: #fff;
  color: #EFA70D;
}

.btn-gray-o {
  background: #fff;
  border: 1px solid #959EA7;
  color: #959EA7;
}

.btn-gray-o:hover {
  background: #959EA7;
  color: #fff;
}

.btn-next {
  background: #1AA2D6;
  border: 1px solid #1AA2D6;
  color: #fff;
  min-width: 100px;
  padding: 10px;
}

.btn-next:hover {
  background: #fff;
  color: #1AA2D6;
}

.btn-add {
  background: #9D8A47;
  border: 1px solid #9D8A47;
  color: #fff;
  min-width: auto;
}

.btn-add:hover {
  background: #fff;
  color: #9D8A47;
}

table {
  width: 100%;
}

table thead {
  /* background: #5C5452; */
}

table thead th {
  font-weight: bold;
  color: #fff;
  padding: 15px 10px;
  font-size: 16px;
}

table tbody {
  /* border-top: 1px solid #4D4F5C; */
}

table tbody td {
  padding: 20px 10px;
  color: #4D4F5C;
  font-size: 14px;
  /* border-bottom: 1px solid #CCCCCC; */
}

/* sp */


/* === utility.css === */
.t-center {
  text-align: center !important;
}

.t-left {
  text-align: left !important;
}

.t-right {
  text-align: right !important;
}

/* padding | margin */
.p0 {
  padding: 0px !important;
}

.pt0 {
  padding-top: 0px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.pl0 {
  padding-left: 0px !important;
}

.pr0 {
  padding-right: 0px !important;
}

.m0 {
  margin: 0px !important;
}

.mt0 {
  margin-top: 0px !important;
}

.mb0 {
  margin-bottom: 0px !important;
}

.ml0 {
  margin-left: 0px !important;
}

.mr0 {
  margin-right: 0px !important;
}

.p5 {
  padding: 5px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.m5 {
  margin: 5px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.ml5 {
  margin-left: 5px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.p10 {
  padding: 10px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.m10 {
  margin: 10px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.p15 {
  padding: 15px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.m15 {
  margin: 15px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.p20 {
  padding: 20px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.m20 {
  margin: 20px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.p25 {
  padding: 25px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.m25 {
  margin: 25px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.p30 {
  padding: 30px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.m30 {
  margin: 30px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.p35 {
  padding: 35px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.m35 {
  margin: 35px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.p40 {
  padding: 40px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.m40 {
  margin: 40px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.p45 {
  padding: 45px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.m45 {
  margin: 45px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.p50 {
  padding: 50px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.m50 {
  margin: 50px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.p55 {
  padding: 55px !important;
}

.pt55 {
  padding-top: 55px !important;
}

.pb55 {
  padding-bottom: 55px !important;
}

.pl55 {
  padding-left: 55px !important;
}

.pr55 {
  padding-right: 55px !important;
}

.m55 {
  margin: 55px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.ml55 {
  margin-left: 55px !important;
}

.mr55 {
  margin-right: 55px !important;
}

.p60 {
  padding: 60px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.m60 {
  margin: 60px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.p65 {
  padding: 65px !important;
}

.pt65 {
  padding-top: 65px !important;
}

.pb65 {
  padding-bottom: 65px !important;
}

.pl65 {
  padding-left: 65px !important;
}

.pr65 {
  padding-right: 65px !important;
}

.m65 {
  margin: 65px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.ml65 {
  margin-left: 65px !important;
}

.mr65 {
  margin-right: 65px !important;
}

.p70 {
  padding: 70px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pl70 {
  padding-left: 70px !important;
}

.pr70 {
  padding-right: 70px !important;
}

.m70 {
  margin: 70px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.ml70 {
  margin-left: 70px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.p75 {
  padding: 75px !important;
}

.pt75 {
  padding-top: 75px !important;
}

.pb75 {
  padding-bottom: 75px !important;
}

.pl75 {
  padding-left: 75px !important;
}

.pr75 {
  padding-right: 75px !important;
}

.m75 {
  margin: 75px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.ml75 {
  margin-left: 75px !important;
}

.mr75 {
  margin-right: 75px !important;
}

.p80 {
  padding: 80px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pl80 {
  padding-left: 80px !important;
}

.pr80 {
  padding-right: 80px !important;
}

.m80 {
  margin: 80px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.p85 {
  padding: 85px !important;
}

.pt85 {
  padding-top: 85px !important;
}

.pb85 {
  padding-bottom: 85px !important;
}

.pl85 {
  padding-left: 85px !important;
}

.pr85 {
  padding-right: 85px !important;
}

.m85 {
  margin: 85px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.ml85 {
  margin-left: 85px !important;
}

.mr85 {
  margin-right: 85px !important;
}

.p90 {
  padding: 90px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pl90 {
  padding-left: 90px !important;
}

.pr90 {
  padding-right: 90px !important;
}

.m90 {
  margin: 90px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.p95 {
  padding: 95px !important;
}

.pt95 {
  padding-top: 95px !important;
}

.pb95 {
  padding-bottom: 95px !important;
}

.pl95 {
  padding-left: 95px !important;
}

.pr95 {
  padding-right: 95px !important;
}

.m95 {
  margin: 95px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.ml95 {
  margin-left: 95px !important;
}

.mr95 {
  margin-right: 95px !important;
}

.p100 {
  padding: 100px !important;
}

.pt100 {
  padding-top: 100px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

.pl100 {
  padding-left: 100px !important;
}

.pr100 {
  padding-right: 100px !important;
}

.m100 {
  margin: 100px !important;
}

.mt100 {
  margin-top: 100px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.ml100 {
  margin-left: 100px !important;
}

.mr100 {
  margin-right: 100px !important;
}

h2 {
  color: #6F7579;
  font-weight: bold;
  margin: 20px 0;
  font-size: 16px;
}

p {
  font-size: 16px;
  margin-bottom: 15px;
  line-height: 1.4;
}

p.sm {
  font-size: 12px;
  margin-bottom: 10px;
  line-height: 1.4;
  font-weight: normal;
}

p.md {
  font-size: 18px;
  margin-bottom: 15px;
  line-height: 1.4;
}

p.lg {
  font-size: 24px;
  margin-bottom: 15px;
  line-height: 1.4;
  font-weight: bold;
}

p.xl {
  font-size: 30px;
  margin-bottom: 15px;
  line-height: 1.4;
  font-weight: bold;
}

p.xxl {
  font-size: 46px;
  margin-bottom: 15px;
  line-height: 1.4;
  font-weight: bold;
}

p.img {
  text-align: center;
  margin-bottom: 0;
  line-height: 0;
}

img {
  max-width: 100%;
  height: auto;
}

.sp {
  display: none;
}

/* sp */
@media (max-width: 768px) {
  .pc {
    display: none;
  }
  .sp {
    display: inherit;
  }
}


/* === form.css === */
/* reset */
input[type="text"], input[type="password"], input[type="email"], input[type="tel"] {
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}

input[type="radio"] {
  display: none;
}

input[type="radio"] + label {
  display: inline-block;
  width: 47%;
  margin: 1%;
  background: #CDD6DD;
  padding: 15px 0;
  text-align: center;
  border-radius: 3px;
  color: #fff;
}

input[type="radio"]:checked + label {
  background: #1AA2D6;
}

input[type="checkbox"] {
  display: none;
}

input[type="checkbox"] + label {
  display: inline-block;
  width: 47%;
  margin: 1%;
  background: #CDD6DD;
  padding: 15px 0;
  text-align: center;
  border-radius: 3px;
}

input[type="checkbox"]:checked + label {
  background: #1AA2D6;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}

textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  resize: none;
  padding: 0;
  border: 0;
  outline: none;
  background: transparent;
}

button,
input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
}

/* form */
.cp_ipselect {
  overflow: hidden;
  width: 90%;
  text-align: center;
}

.cp_ipselect select {
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.cp_ipselect select::-ms-expand {
  display: none;
}

.cp_ipselect.cp_sl02 {
  position: relative;
  border: 1px solid #bbbbbb;
  border-radius: 2px;
  background: #ffffff;
}

.cp_ipselect.cp_sl02::before {
  position: absolute;
  top: 0.8em;
  right: 0.9em;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #666666;
  pointer-events: none;
}

.cp_ipselect.cp_sl02:after {
  position: absolute;
  top: 0;
  right: 2.5em;
  bottom: 0;
  width: 1px;
  content: '';
  border-left: 1px solid #bbbbbb;
}

.cp_ipselect.cp_sl02 select {
  padding: 8px 38px 8px 8px;
  color: #666666;
}

/* kayouts */
.box-form {
  text-align: left;
  margin-bottom: 30px;
}

.box-form .thumb {
  margin-bottom: 10px;
}

.box-form .thumb img {
  max-width: 300px;
}

.form-group {
  margin-bottom: 20px;
}

label {
  font-size: 12px;
  display: inline-block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 5px;
  color: #6F7579;
}

.select-box.flex {
  margin: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.select-box.flex > * {
  margin: 0 1%;
}

/* form */
form .req {
  font-size: 10px;
  padding: 0 8px;
  color: #c8414c;
}

form input[type="text"], form input[type="password"], form input[type="email"], form input[type="tel"] {
  height: 30px;
  font-size: 14px;
  width: 100%;
  border: 1px solid #CDD6DD;
  border-radius: 5px;
  padding: 0 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

form input[type="text"].year, form input[type="password"].year, form input[type="email"].year, form input[type="tel"].year {
  width: 70px;
}

form input[type="text"].month, form input[type="password"].month, form input[type="email"].month, form input[type="tel"].month {
  width: 40px;
}

form input[type="text"].day, form input[type="password"].day, form input[type="email"].day, form input[type="tel"].day {
  width: 40px;
}

form select {
  /* styling */
  background-color: white;
  border: thin solid #CDD6DD;
  border-radius: 4px;
  display: inline-block;
  font: inherit;
  line-height: 1.3em;
  padding: 0.3em 2.5em 0.3em 0.5em;
  /* reset */
  margin: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, gray 50%), linear-gradient(135deg, gray 50%, transparent 50%), linear-gradient(to right, #ccc, #ccc);
  background-position: calc(100% - 12px) calc(1em - 2px), calc(100% - 7px) calc(1em - 2px), calc(100% - 1.5em) 0.2em;
  background-size: 5px 5px, 5px 5px, 1px 1.5em;
  background-repeat: no-repeat;
}

form select:focus {
  background-image: linear-gradient(45deg, green 50%, transparent 50%), linear-gradient(135deg, transparent 50%, green 50%), linear-gradient(to right, #ccc, #ccc);
  background-position: calc(100% - 7px) 0.9em, calc(100% - 12px) 0.9em, calc(100% - 1.5em) 0.2em;
  background-size: 5px 5px, 5px 5px, 1px 1.5em;
  background-repeat: no-repeat;
  border-color: green;
  outline: 0;
}

form textarea {
  background: #f6f6f6;
  border: 1px solid #ccc;
  width: 100%;
  height: 160px;
  font-size: 14px;
  padding: 5px;
}

form .btn-submit {
  margin-top: 40px;
  width: 300px;
  height: 55px;
  overflow: hidden;
  border: none;
  background: #087c7c;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  cursor: pointer;
}

form.form input[type="text"], form.form input[type="password"], form.form input[type="email"], form.form input[type="tel"] {
  border: 1px solid #ccc;
  border-radius: 5px;
  padding-left: 5px;
  height: 35px;
}

form.login input[type="text"], form.login input[type="password"], form.login input[type="email"], form.login input[type="tel"] {
  background: #fff;
  border-bottom: solid #E9E9F0 2px;
  margin-bottom: 10px;
  color: #43425D;
}

/* sp */


/* === master.css === */







* {
  font-family: "Noto Sans JP";
}

.modaal-inner-wrapper {
  padding: 60px 10px !important;
}

.modaal-container {
  border-radius: 10px;
}

.modaal-content-container {
  padding: 0px 15px !important;
  margin: 20px 0;
}

body, .wrapper {
  background: #eeeeee;
  max-width: 1800px;
  margin: 0 auto;
}

#btn-back {
  text-decoration: none;
  color: #1AA2D6;
  font-size: 14px;
}

._inner {
  max-width: 1160px;
  width: 100%;
}

.__inner {
  max-width: 960px;
  width: 100%;
}

.___inner {
  max-width: 768px;
  width: 100%;
}

/* page 関連 */
#g_nav {
  position: sticky;
  top: 0;
  background: #eee;
  z-index: 9999;
}

#g_nav .flex {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#g_nav .flex li {
  padding: 0 10px;
}

#g_nav .flex li a {
  font-size: 18px;
}

#menu ul li:after {
  content: "";
  display: block;
  background: #d2d2d2;
  width: 95%;
  height: 5px;
  margin: 5px auto 0;
  border-radius: 50px;
}

#menu ul li:hover:after {
  background: #0005c5;
}

#menu ul li a img {
  border-radius: 15px;
}

/* /#menu */
#election {
  background: url(../img/election_bg.png);
  background-size: cover;
  background-repeat: no-repeat;
  padding: 60px 0;
  margin-bottom: 80px;
}

/* /#election */
#news, #activity {
  margin-bottom: 50px;
}

#news .flex, #activity .flex {
  margin: auto -1%;
}

#news .flex p.img > img, #activity .flex p.img > img {
  width: 100%;
}

#news .flex li > a > div, #activity .flex li > a > div {
  background: #fff;
  padding: 15px 5px;
  position: relative;
}

#news .flex li > a > div p.text {
  padding-bottom: 20px;
  min-height: 70px;
}

#news .flex li > a > div div.tag, #activity .flex li > a > div div.tag {
  position: absolute;
  bottom: 15px;
}

#news .flex li > a > div div.tag span, #activity .flex li > a > div div.tag span {
  border: 1px solid #000;
  font-size: 14px;
  padding: 2px 3px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* min-width: 70px; */
  margin: 0 1px;
  display: inline-block;
}

#news .flex li > a > div div.tag span.tag-news, #activity .flex li > a > div div.tag span.tag-news {
  border: 2px solid #0005c5;
  background: #fff;
  color: #0005c5;
}

#news .flex li > a > div div.tag span.tag-activity, #activity .flex li > a > div div.tag span.tag-activity {
  border: 1px solid #0005c5;
  background: #0005c5;
  color: #fff;
}

#news .flex li > a > div div.tag span.tag-3, #activity .flex li > a > div div.tag span.tag-3 {
  border: 1px solid #00a0e9;
  background: #00a0e9;
  color: #fff;
}

#news .flex li > a > div div.tag span.tag-4, #activity .flex li > a > div div.tag span.tag-4 {
  border: 1px solid #ed00f9;
  background: #ed00f9;
  color: #fff;
}

#news .flex li > a > div div.tag span.tag-6, #activity .flex li > a > div div.tag span.tag-6 {
  border: 1px solid #e97a00;
  background: #e97a00;
  color: #fff;
}

#news p.ttl {
  font-size: 72px;
  color: #0005c5;
  font-weight: bold;
}

#news p.ttl + p {
  color: #0005c5;
  padding-left: 5px;
}

/* /#news , #activity */
#about {
  background: #dcdcdc;
  padding: 60px 0;
}

#about p.ttl {
  font-size: 72px;
  color: #0005c5;
  font-weight: bold;
}

#about p.ttl + p {
  color: #0005c5;
  padding-left: 5px;
}


#movie p.ttl {
  font-size: 72px;
  color: #0005c5;
  font-weight: bold;
}

#movie p.ttl + p {
  color: #0005c5;
  padding-left: 5px;
}

/* /#about us */
#movie .midashi {
  background: url(../img/movie_bg.png);
  background-size: cover;
  background-repeat: no-repeat;
  padding: 60px 0;
}

#movie .midashi p {
  color: #fff;
}

/* /#movie */
footer {
  padding: 40px 0 0;
  /* /.sns, .team */
}

footer .sns, footer .team {
  padding-top: 50px;
  background: #e2e2e2;
  padding-bottom: 50px;
}

footer .sns .ttl, footer .team .ttl {
  color: #0005c5;
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 20px;
  text-align: center;
}

footer .sns .ttl span, footer .team .ttl span {
  font-size: 24px;
  display: block;
}

footer .sns li, footer .team li {
  text-align: center;
}

footer .sns li a:hover, footer .team li a:hover {
  filter: drop-shadow(4px 4px 6px rgba(0,0,0,.2));
}

footer .sns li span, footer .team li span {
  padding-top: 10px;
  display: block;
  font-size: 12px;
  font-weight: bold;
}

footer .banner {
  background: #f5f5f5;
  padding: 40px 0;
}

footer .banner img {
  /* border-radius: 15px; */
}

footer .sitemap {
  background: #686d71;
  padding: 50px 0;
}

footer .sitemap * {
  color: #fff;
}

footer .sitemap ul {
  margin-top: 0;
}

footer .sitemap ul li {
  font-size: 16px;
  line-height: 1.8;
}

footer p.ttl {
  font-size: 72px;
  color: #0005c5;
  font-weight: bold;
}

footer p.ttl + p {
  color: #0005c5;
  padding-left: 5px;
}

#news_archive a:hover, #activity_archive a:hover {
  text-decoration: underline;
  opacity: 0.8;
}

#news_body, #activity_body {
  background: #fff;
  padding: 25px 15px;
}

#mv {
  position: relative;
  overflow: hidden;
}

#slide_top {
  position: absolute;
  z-index: 9999;
  width: 100%;
  height: 100%;
}

#slide_top h1 {
  top: 10px;
  left: 10px;
  position: relative;
  box-sizing: border-box;
  max-width: 50vw;
}

#slide_top p.text{
  position: absolute;
  bottom: 10px;
  left: 10px;
  background: #fff;
  padding: 10px;
  font-size: 40px;
  box-sizing: content-box;
  max-width: 90vw;
  font-weight: bold;
}

/* /footer */
@media (max-width: 768px) {
  #slide_top h1 {
    top: 10px;
    left: 10px;
    position: relative;
    box-sizing: border-box;
    max-width: 50vw;
  }

  #slide_top p.text{
    position: absolute;
    bottom: 10px;
    left: 10px;
    background: #fff;
    padding: 10px;
    font-size: 22px;
    box-sizing: content-box;
    max-width: 90vw;
    font-weight: bold;
  }

  ._inner, .__inner, .___inner {
    max-width: 1160px;
    width: 95%;
    margin: 0 auto;
  }
  /* page 関連 */
  #g_nav ul.flex {
    display: none;
    background: #fff;
    position: fixed;
    top: 0;
    width: 100%;
    height: 100vh;
    z-index: 100;
  }
  #g_nav ul.flex li {
    width: 100%;
    border-bottom: 1px solid #ccc;
    padding: 10px 2.5%;
    margin: 5px auto;
    box-sizing: border-box;
    text-align: center;
  }
  #menu ul li {
    /* width: 100%; */
    text-align: center;
  }
  #menu ul li:after {
    display: none;
  }
  #menu ul li a img {
    border-radius: 15px;
  }
  /* /#menu */
  #election {
    background: url(../img/election_bg.png);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 60px 0;
    margin-bottom: 80px;
  }
  /* /#election */
  #news, #activity {
    margin-bottom: 50px;
  }
  #news .flex, #activity .flex {
    margin: auto -1%;
  }
  #news .flex p.img > img, #activity .flex p.img > img {
    width: 100%;
  }
  #news .flex li > a > div, #activity .flex li > a > div {
    background: #fff;
    padding: 15px 5px;
    position: relative;
  }
  #news .flex li > a > div p.text {
    padding-bottom: 20px;
    min-height: 70px;
  }
  #news .flex li > a > div div.tag, #activity .flex li > a > div div.tag {
    position: absolute;
    bottom: 15px;
  }
  #news .flex li > a > div div.tag span, #activity .flex li > a > div div.tag span {
    border: 1px solid #000;
    font-size: 14px;
    padding: 2px 3px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    min-width: 70px;
    margin: 0 3px;
  }
  #news .flex li > a > div div.tag span.tag-news, #activity .flex li > a > div div.tag span.tag-news {
    border: 1px solid #0005c5;
    background: #0005c5;
    color: #fff;
  }
  #news .flex li > a > div div.tag span.tag-seinen, #activity .flex li > a > div div.tag span.tag-seinen {
    border: 1px solid #00a0e9;
    background: #00a0e9;
    color: #fff;
  }
  #news p.ttl {
    font-size: 11vw;
  }
  #news p.ttl + p {
    color: #0005c5;
    padding-left: 5px;
  }
  /* /#news , #activity */
  #about {
    background: #dcdcdc;
    padding: 60px 0;
  }
  #about p.ttl {
    font-size: 11vw;
    color: #0005c5;
    font-weight: bold;
  }
  #about p.ttl + p {
    color: #0005c5;
    padding-left: 5px;
  }
  #movie p.ttl {
    font-size: 11vw;
    color: #0005c5;
    font-weight: bold;
  }
  #movie p.ttl + p {
    color: #0005c5;
    padding-left: 5px;
  }
  /* /#about us */
  #movie .midashi {
    background: url(../img/movie_bg.png);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 60px 0;
  }
  #movie .midashi p {
    color: #fff;
  }
  /* /#movie */
  footer {
    padding: 40px 0 0;
    /* /.sns, .team */
  }
  footer .sns, footer .team {
    padding-top: 50px;
    background: #e2e2e2;
    padding-bottom: 50px;
  }
  footer .sns .ttl, footer .team .ttl {
    color: #0005c5;
    font-size: 36px;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
  }
  footer .sns .ttl span, footer .team .ttl span {
    font-size: 24px;
    display: block;
  }
  footer .sns li, footer .team li {
    text-align: center;
  }
  footer .sns li span, footer .team li span {
    padding-top: 10px;
    display: block;
    font-size: 12px;
    font-weight: bold;
  }
  footer .team .flex {
    justify-content: center;
  }
  footer .banner {
    background: #f5f5f5;
    padding: 40px 0;
  }
  footer .banner li {
    text-align: center;
    margin: 5px 10px;
  }
  footer .sitemap {
    background: #686d71;
    padding: 50px 0;
  }
  footer .sitemap * {
    color: #fff;
  }
  footer .sitemap ul {
    margin-top: 0;
  }
  footer .sitemap ul li {
    font-size: 16px;
    line-height: 1.8;
  }
  footer p.ttl {
    font-size: 72px;
    color: #0005c5;
    font-weight: bold;
  }
  footer p.ttl + p {
    color: #0005c5;
    padding-left: 5px;
  }
  /* /footer */

  .btn_event {
    text-align: center !important;
  }

  .btn_more_about {
    width: 100% !important;
  }
  .btn_more_about .btn {
    max-width: 100% !important;
    width: 100% !important;
  }

  #menu .col-4 li, #menu .col-6 li {
    width: 48%;
    margin: 5px 1%;
  }

  /*=============================
  .btn-trigger
  =============================*/
  .btn-trigger {
    position: relative;
    width: 50px;
    height: 44px;
    cursor: pointer;
    padding: 5px;
    background: #000000b5;
    z-index: 99999;
  }
  .btn-trigger span {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    width: 75%;
    height: 3px;
    background-color: #fff;
    border-radius: 4px;
  }
  .btn-trigger, .btn-trigger span {
    display: inline-block;
    transition: all .5s;
    box-sizing: border-box;
  }
  .btn-trigger span:nth-of-type(1) {
    top: 8px;
  }
  .btn-trigger span:nth-of-type(2) {
    top: 20px;
  }
  .btn-trigger span:nth-of-type(3) {
    bottom: 8px;
  }

  /*=============================
  #btn02
  =============================*/
  #btn02.active span:nth-of-type(1) {
    -webkit-transform: translateY(12px) rotate(45deg);
    transform: translateY(12px) rotate(45deg);
  }
  #btn02.active span:nth-of-type(2) {
    opacity: 0;
  }
  #btn02.active span:nth-of-type(3) {
    -webkit-transform: translateY(-13px) rotate(-45deg);
    transform: translateY(-13px) rotate(-45deg);
  }

  #g_nav {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    text-align: right;
    background: none;
  }

}

