@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Great+Vibes&display=swap");
@import url("https://fonts.googleapis.com/css?family=Great+Vibes|Parisienne&display=swap");
/*reset css
---------------------------------------------------*/
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-style: normal;
  font-weight: 400;
  vertical-align: baseline;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt"; }

img {
  vertical-align: bottom;
  border: 0px;
  -ms-interpolation-mode: bicubic;
  vertical-align: text-bottom;
  border: none; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block; }

html {
  overflow-y: scroll;
  font-size: 62.5%; }

body {
  background-color: #fff;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリ オ", "ＭＳ Ｐゴ シック", Meiryo, sans-serif;
  color: #141414;
  font-size: 1.4rem;
  line-height: 1.6;
  letter-spacing: .1rem;
  overflow: hidden;
  font-weight: 400;
  padding-top: 30px; }
  @media only screen and (min-width: 768px) {
    body {
      font-size: 1.8rem; } }
  @media only screen and (min-width: 992px) {
    body {
      padding-top: 0px; } }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

input, textarea {
  margin: 0;
  padding: 0; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th {
  text-align: left; }

a, a span {
  -webkit-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition: 0.3s linear;
  -o-transition: 0.3s linear;
  transition: 0.3s linear; }

a,
a:hover,
a:visited {
  text-decoration: none; }

a {
  color: #616161; }

a:hover {
  color: #616161; }

a.links_txt {
	color: #616161;
	text-decoration: underline;
	font-weight: inherit;
}

a.links_txt:hover {
	color: #0000FF;
	text-decoration: underline;
}

a img {
  -webkit-transition: 0.3s linear;
  -o-transition: 0.3s linear;
  transition: 0.3s linear; }

a:focus {
  outline: none; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

/* float */
.fl {
  float: left; }

.fr {
  float: right; }

/*cleafix
/------------------------------------------------------------*/
.cf:before,
.cf:after {
  content: "";
  display: table; }

.cf:after {
  clear: both; }

/* For IE 6/7 (trigger hasLayout) */
.cf {
  zoom: 1; }

/*画像
---------------------------------------------------*/
.img100 {
  max-width: 100% !important;
  height: auto !important; }

/*object-fit IE最適化
/------------------------------------------------------------*/
.OF-cover {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center 80%;
  object-position: center 80%;
  font-family: 'object-fit: cover; object-position: center 80%'; }

.OF-contain {
  -o-object-fit: contain;
  object-fit: contain;
  font-family: 'object-fit: contain'; }

/*フォント
/------------------------------------------------------------*/
.red {
  color: #f52222; }

.vermilion {
  color: #900; }

.purple {
  color: #800080; }

.deep_blue {
  color: navy; }

.blue {
  color: #00F; }

.pink {
  color: #E32A5E; }

.mincho {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

.green {
  color: #679801; }

.olive {
  color: #808000; }

.font_s {
  font-size: 85%; }

.font_ml {
  font-size: 125%; }

.font_l {
  font-size: 150%; }

/*margin
---------------------------------------------------*/
.mb-5 {
  margin-bottom: 5px !important; }

.mb-10 {
  margin-bottom: 10px !important; }

.mb-15 {
  margin-bottom: 15px !important; }

.mb-20 {
  margin-bottom: 20px !important; }

.mb-25 {
  margin-bottom: 25px !important; }

.mb-30 {
  margin-bottom: 30px !important; }

.mb-40 {
  margin-bottom: 40px !important; }

.mb-50 {
  margin-bottom: 50px !important; }

.mb-60 {
  margin-bottom: 60px !important; }

.mb-65 {
  margin-bottom: 65px !important; }

.mb-70 {
  margin-bottom: 70px !important; }

.mb-75 {
  margin-bottom: 75px !important; }

.mb-80 {
  margin-bottom: 80px !important; }

.mb-90 {
  margin-bottom: 90px !important; }

.mb-100 {
  margin-bottom: 100px !important; }

.mb-110 {
  margin-bottom: 110px !important; }

.mb-120 {
  margin-bottom: 120px !important; }

.mb-125 {
  margin-bottom: 125px !important; }

.mb-150 {
  margin-bottom: 150px !important; }

.mb-175 {
  margin-bottom: 175px !important; }

@media only screen and (min-width: 568px) {
  .mb-sm-5 {
    margin-bottom: 5px !important; }
  .mb-sm-10 {
    margin-bottom: 10px !important; }
  .mb-sm-15 {
    margin-bottom: 15px !important; }
  .mb-sm-20 {
    margin-bottom: 20px !important; }
  .mb-sm-25 {
    margin-bottom: 25px !important; }
  .mb-sm-30 {
    margin-bottom: 30px !important; }
  .mb-sm-40 {
    margin-bottom: 40px !important; }
  .mb-sm-50 {
    margin-bottom: 50px !important; }
  .mb-sm-60 {
    margin-bottom: 60px !important; }
  .mb-sm-65 {
    margin-bottom: 65px !important; }
  .mb-sm-70 {
    margin-bottom: 70px !important; }
  .mb-sm-75 {
    margin-bottom: 75px !important; }
  .mb-sm-80 {
    margin-bottom: 80px !important; }
  .mb-sm-90 {
    margin-bottom: 90px !important; }
  .mb-sm-100 {
    margin-bottom: 100px !important; }
  .mb-sm-110 {
    margin-bottom: 110px !important; }
  .mb-sm-120 {
    margin-bottom: 120px !important; }
  .mb-sm-125 {
    margin-bottom: 125px !important; }
  .mb-sm-150 {
    margin-bottom: 150px !important; }
  .mb-sm-175 {
    margin-bottom: 175px !important; } }

@media only screen and (min-width: 768px) {
  .mb-md-5 {
    margin-bottom: 5px !important; }
  .mb-md-10 {
    margin-bottom: 10px !important; }
  .mb-md-15 {
    margin-bottom: 15px !important; }
  .mb-md-20 {
    margin-bottom: 20px !important; }
  .mb-md-25 {
    margin-bottom: 25px !important; }
  .mb-md-30 {
    margin-bottom: 30px !important; }
  .mb-md-40 {
    margin-bottom: 40px !important; }
  .mb-md-50 {
    margin-bottom: 50px !important; }
  .mb-md-60 {
    margin-bottom: 60px !important; }
  .mb-md-65 {
    margin-bottom: 65px !important; }
  .mb-md-70 {
    margin-bottom: 70px !important; }
  .mb-md-75 {
    margin-bottom: 75px !important; }
  .mb-md-80 {
    margin-bottom: 80px !important; }
  .mb-md-90 {
    margin-bottom: 90px !important; }
  .mb-md-100 {
    margin-bottom: 100px !important; }
  .mb-md-110 {
    margin-bottom: 110px !important; }
  .mb-md-120 {
    margin-bottom: 120px !important; }
  .mb-md-125 {
    margin-bottom: 125px !important; }
  .mb-md-150 {
    margin-bottom: 150px !important; }
  .mb-md-175 {
    margin-bottom: 175px !important; } }

@media only screen and (min-width: 992px) {
  .mb-lg-5 {
    margin-bottom: 5px !important; }
  .mb-lg-10 {
    margin-bottom: 10px !important; }
  .mb-lg-15 {
    margin-bottom: 15px !important; }
  .mb-lg-20 {
    margin-bottom: 20px !important; }
  .mb-lg-25 {
    margin-bottom: 25px !important; }
  .mb-lg-30 {
    margin-bottom: 30px !important; }
  .mb-lg-40 {
    margin-bottom: 40px !important; }
  .mb-lg-50 {
    margin-bottom: 50px !important; }
  .mb-lg-60 {
    margin-bottom: 60px !important; }
  .mb-lg-65 {
    margin-bottom: 65px !important; }
  .mb-lg-70 {
    margin-bottom: 70px !important; }
  .mb-lg-75 {
    margin-bottom: 75px !important; }
  .mb-lg-80 {
    margin-bottom: 80px !important; }
  .mb-lg-90 {
    margin-bottom: 90px !important; }
  .mb-lg-100 {
    margin-bottom: 100px !important; }
  .mb-lg-110 {
    margin-bottom: 110px !important; }
  .mb-lg-120 {
    margin-bottom: 120px !important; }
  .mb-lg-125 {
    margin-bottom: 125px !important; }
  .mb-lg-150 {
    margin-bottom: 150px !important; }
  .mb-lg-175 {
    margin-bottom: 175px !important; } }

/*見出し
---------------------------------------------------*/
.midashi01 {
  background-image: url("../img/common/midashi01.jpg");
  font-family: kan48typos-std, sans-serif;
  color: #e1406a;
  font-size: 1.8rem;
  padding: 10px;
  border-bottom: 1px solid #dccdb6; }

.midashi02 {
  background-color: #4b494a;
  color: #fff;
  font-size: 1.4rem;
  padding: 5px;
  border-radius: 3px;
  width: 100%; }
  .midashi02 span {
    background-image: url("../img/common/midashi02.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 5px 9px;
    padding-left: 10px; }

.midashi03 {
  font-size: 2rem;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  background-image: url("../img/common/midashi03.png");
  background-size: 15px;
  background-position: bottom;
  background-repeat: repeat-x;
  background-size: 2px 3px;
  padding-bottom: 10px; }

.midashi04 {
  font-size: 1.6rem;
  font-family: kan48typos-std, sans-serif;
  background-image: url("../img/common/midashi04.png");
  background-size: 15px;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 15px;
  padding-left: 30px; }

.midashi05 {
  position: relative;
  border-left: #F2D63E 5px solid;
  font-size: 1.5rem;
  margin-bottom: 15px;
  color: #fff;
  background: #6f6e6c;
  padding: 8px; }

.midashi06 {
  font-size: 2.5rem;
  font-weight: bold;
  padding-bottom: 15px;
  border-bottom: 2px solid #ccc; }

.midashi06_gaikoku {
  font-size: 2.5rem;
  font-weight: bold;
  padding-bottom: 15px;
  border-bottom: 2px solid #000; }

.midashi07 {
  font-size: 115%;
  font-weight: bold;
  background-color: #efefef;
  padding: 10px; }

.midashi08 {
  font-size: 115%;
  font-weight: bold;
  padding: 10px; }


/*リンク
---------------------------------------------------*/
.button01 {
  background-image: url("../img/common/button01.jpg");
  padding: 5px 25px;
  border-radius: 3px; }
  .button01 span {
    font-size: 1.3rem;
    font-family: kan48typos-std, sans-serif;
    color: #e4547a;
    background-image: url("../img/common/button01_02.png");
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 5px 9px;
    display: inline-block;
    padding-right: 15px; }

.button02 {
  background-color: #5bbfc9;
  color: #fff;
  display: inline-block;
  padding: 9px;
  border-radius: 6px;
  max-width: 300px;
  text-align: center;
  width: 100%; }
  .button02 span {
    font-size: 1.8rem;
    font-weight: bold; }
  .button02:hover {
    color: #fff; }

.button03 {
  background-image: url("../images/a019ani.gif");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  padding-left: 20px; }

.button04 {
  position: relative;
  display: inline-block;
  font-size: 1.6rem;
  padding-left: 15px; }
  .button04::before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    left: 0px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    border-top: 5px solid transparent;
    border-left: 5px solid #616161;
    border-bottom: 5px solid transparent;
    border-right: 5px solid transparent; }

.button05 {
  position: relative;
  display: inline-block;
  padding-left: 15px; }
  .button05::before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    left: 0px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    border-top: 5px solid transparent;
    border-left: 5px solid #fff;
    border-bottom: 5px solid transparent;
    border-right: 5px solid transparent; }

/*ブロック
---------------------------------------------------*/
.block01 {
  border: 1px solid #dccdb6; }
  .block01 .content {
    padding: 10px; }

.block02 {
  border: 1px dashed #b3aeaa;
  padding: 15px; }

.block03 {
  background-color: #efefef;
  padding: 15px; }

/*テーブルデザイン
---------------------------------------------------*/
.table01 {
  width: 100% !important;
  table-layout: fixed;
  word-wrap: break-word; }
  .table01 tbody {
    width: 100%; }
    .table01 tbody tr {
      border-left: 1px solid #959CA4;
      border-bottom: 1px solid #959CA4; }
      .table01 tbody tr:first-child {
        background-color: #FFC;
        border-top: 1px solid #959CA4; }
      .table01 tbody tr th, .table01 tbody tr td {
        border-right: 1px solid #959CA4;
        padding: 3px;
        vertical-align: middle; }
      .table01 tbody tr th {
        background-color: #f5ede0;
        text-align: center;
        font-weight: bold; }

.table02 {
  width: 100% !important;
  border-top: 1px solid #8ed2d9;
  border-left: 1px solid #8ed2d9; }
  .table02 tbody {
    width: 100%; }
    .table02 tbody tr {
      border-bottom: 1px solid #8ed2d9; }
      .table02 tbody tr th, .table02 tbody tr td {
        border-right: 1px solid #8ed2d9;
        padding: 10px; }
      .table02 tbody tr th {
        background-color: #deedee;
        text-align: center;
        color: #40a9b3; }
      .table02 tbody tr td {
        width: calc(100% / 3);
        background-color: #fff; }

.table03 {
  width: 100% !important;
  table-layout: fixed;
  word-wrap: break-word; }
  .table03 tbody {
    width: 100%; }
    .table03 tbody tr {
      border-left: 1px solid #959CA4;
      border-bottom: 1px solid #959CA4; }
      .table03 tbody tr:first-child {
        border-top: 1px solid #959CA4; }
      .table03 tbody tr th, .table03 tbody tr td {
        border-right: 1px solid #959CA4;
        padding: 3px; }
      .table03 tbody tr th {
        text-align: center;
        font-weight: bold; }

.table04 {
  width: 100% !important;
  table-layout: fixed;
  word-wrap: break-word; }
  .table04 tbody {
    width: 100%; }
    .table04 tbody tr {
      border-left: 1px solid #959CA4;
      border-bottom: 1px solid #959CA4; }
      .table04 tbody tr:first-child {
        background-color: #408080;
        border-top: 1px solid #959CA4;
        text-align: center; }
      .table04 tbody tr th, .table04 tbody tr td {
        border-right: 1px solid #959CA4;
        padding: 5px;
        vertical-align: middle; }
      .table04 tbody tr th {
        background-color: #f5ede0;
        text-align: center;
        font-weight: bold; }

/*リストデザイン
---------------------------------------------------*/
.list01 li {
  margin-left: 30px;
  list-style-type: disc; }

/*border
---------------------------------------------------*/
.border_bottom_bl {
  border-bottom: 1px solid #000; }

/* ページャー
---------------------------------------------------*/
#pagination {
  width: 100%;
  margin-top: 50px; }

#pagination ul {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

#pagination ul li {
  margin-bottom: 10px; }

#pagination ul li a {
  color: #000;
  display: inline-block;
  text-align: center;
  border: 1px solid #808080 !important;
  width: 40px;
  padding-top: 6px;
  padding-bottom: 6px;
  margin-left: 5px;
  margin-right: 5px;
  color: #808080; }

#pagination ul li a:hover {
  background-color: #808080;
  color: #fff; }

#pagination ul li.active a {
  background-color: #808080;
  color: #fff; }

/* ヘッダー
---------------------------------------------------*/
header {
  position: fixed;
  width: 100%;
  height: 60px;
  top: 0;
  left: 0;
  z-index: 150;
  padding-top: 13px;
  padding-left: 15px;
  border-bottom: 1px solid #dedede;
  background-color: #fffea1; }
  header h1 {
    max-width: 230px;
    width: 100%;
    display: block; }
    header h1 a {
      display: block; }
  header h2 {
    font-size: 1rem;
    padding-top: 12px;
    margin-bottom: 15px; }
  header .sp_phone {
    display: block;
    width: 60px;
    height: 60px;
    position: absolute;
    right: 60px;
    top: 0;
    padding-top: 14px;
    text-align: center; }
    header .sp_phone i {
      color: #4b494a;
      font-size: 3.2rem; }
  @media only screen and (min-width: 992px) {
    header {
      background-color: #fffea1;
      padding-top: 25px;
      padding-left: 0px;
      width: 200px;
      height: 100vh;
      border-bottom: none;
      overflow: auto;
      }
      header h1 {
        max-width: 151px;
        margin: 0 auto; }
      header .sp_phone {
        display: none; } }

/* ナビゲーション SP用 */
#menu {
  background-color: #fff; }
  #menu ul {
    height: 100vh;
    width: 100%;
    top: 0;
    margin-top: 0;
    padding-top: 20px;
    position: relative;
    z-index: 30; }
    #menu ul li {
      padding-top: 0;
      border: none;
      display: block;
      margin: 0 auto 0px;
      text-align: center;
      width: auto; }
      /*#menu ul li:nth-child(1) {
        display: none; }*/
      #menu ul li a {
        font-size: 1.6rem;
        color: #000;
        padding: 13px; }
        #menu ul li a .copy {
          display: none; }
      #menu ul li.toggle a {
        width: 100%; }
  @media only screen and (min-width: 992px) {
    #menu {
      background-color: #fffea1;
      margin-bottom: 0 !important;
      padding-top: 0;
      position: relative;
      right: auto; }
      #menu ul {
        display: block;
        height: auto;
        padding-top: 45px;
        padding-left: 15px;
        margin: 0; }
        #menu ul li {
          margin-bottom: 20px; }
          #menu ul li:nth-child(1) {
            display: block; }
          #menu ul li a {
            display: block;
            color: #fff;
            font-weight: bold;
            text-align: center;
            /*width: 151px;*/
			  width: 170px;
            height: 39px;
            background-image: url("../images/common/nav_bg_l.png");
            background-repeat: no-repeat;
            padding: 8px 8px 13px; 
	  white-space: nowrap;
	  font-size: 1.4rem;} }

.cp_offcm01 {
  position: fixed;
  top: 20px;
  right: 0px;
  display: inline-block;
  z-index: 200;
  width: 60px;
  height: 60px;
  background-color: #4b494a;
  right: 0;
  top: 0;
  padding: 15px;
  /* menu */
  /* menu toggle */ }
  .cp_offcm01 .toggle span {
    display: inline-block;
    position: absolute;
    left: 0;
    background: #fffea1;
    width: 100%;
    height: 2px;
    -webkit-transition-property: all;
    -o-transition-property: all;
    transition-property: all;
    -webkit-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear; }
    .cp_offcm01 .toggle span:nth-of-type(1) {
      top: 3px; }
    .cp_offcm01 .toggle span:nth-of-type(2) {
      top: 24px; }
    .cp_offcm01 .toggle span:nth-of-type(3) {
      top: 14px; }
  .cp_offcm01 .cp_menu {
    position: fixed;
    top: 60px;
    right: -100vw;
    width: 100%;
    height: 100%;
    cursor: pointer;
    -webkit-transition: 0.53s transform;
    -webkit-transition: 0.53s -webkit-transform;
    transition: 0.53s -webkit-transform;
    -o-transition: 0.53s transform;
    transition: 0.53s transform;
    transition: 0.53s transform, 0.53s -webkit-transform;
    -webkit-transition-timing-function: cubic-bezier(0.38, 0.52, 0.23, 0.99);
    -o-transition-timing-function: cubic-bezier(0.38, 0.52, 0.23, 0.99);
    transition-timing-function: cubic-bezier(0.38, 0.52, 0.23, 0.99);
    z-index: 100; }
    .cp_offcm01 .cp_menu ul {
      margin-left: 20px;
      margin-top: 30px;
      padding: 0; }
      .cp_offcm01 .cp_menu ul li {
        list-style: none; }
        .cp_offcm01 .cp_menu ul li a {
          display: block;
          padding: 20px;
          text-decoration: none;
          color: #fff; }
  .cp_offcm01 #cp_toggle01:checked ~ .cp_menu {
    -webkit-transform: translateX(-100vw);
    -ms-transform: translateX(-100vw);
    transform: translateX(-100vw);
    top: 60px;
    margin-right: 0; }
  .cp_offcm01 #cp_toggle01:checked ~ .cp_menu ul {
    margin-left: 0; }
  .cp_offcm01 #cp_toggle01 ~ label {
    display: block;
    cursor: pointer;
    -webkit-transition: 0.5s transform;
    -webkit-transition: 0.5s -webkit-transform;
    transition: 0.5s -webkit-transform;
    -o-transition: 0.5s transform;
    transition: 0.5s transform;
    transition: 0.5s transform, 0.5s -webkit-transform;
    -webkit-transition-timing-function: cubic-bezier(0.61, -0.38, 0.37, 1.27);
    -o-transition-timing-function: cubic-bezier(0.61, -0.38, 0.37, 1.27);
    transition-timing-function: cubic-bezier(0.61, -0.38, 0.37, 1.27);
    text-align: center;
    color: #333333;
    width: 30px;
    height: 30px;
    display: block;
    position: relative;
    margin: 0; }
  .cp_offcm01 #cp_toggle01:checked ~ label {
    position: fixed;
    top: 23px; }
  .cp_offcm01 #cp_toggle01:checked ~ label span {
    -webkit-transform: translateY(10px) rotate(-45deg);
    -ms-transform: translateY(10px) rotate(-45deg);
    transform: translateY(10px) rotate(-45deg);
    top: 9px; }
  .cp_offcm01 #cp_toggle01:checked ~ label span:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(-45deg);
    -ms-transform: translateY(10px) rotate(-45deg);
    transform: translateY(10px) rotate(-45deg);
    top: -3px; }
  .cp_offcm01 #cp_toggle01:checked ~ label span:nth-of-type(2) {
    -webkit-transform: translateY(-6px) rotate(45deg);
    -ms-transform: translateY(-6px) rotate(45deg);
    transform: translateY(-6px) rotate(45deg);
    top: 13px; }
  .cp_offcm01 #cp_toggle01:checked ~ label span:nth-of-type(3) {
    display: none; }

/* contents */
.cp_contents {
  color: #333333;
  text-align: center; }

.cp_cont #cp_toggle01 {
  position: absolute;
  display: none;
  opacity: 0; }

@media only screen and (min-width: 992px) {
  .cp_offcm01 {
    width: 100%;
    height: auto;
    position: relative;
    display: block;
    background-color: rgba(0, 0, 0, 0);
    padding: 0;
    right: auto;
    top: auto; }
    .cp_offcm01 .cp_menu {
      height: auto;
      position: relative;
      top: auto;
      right: 0; }
  .cp_offcm01 #cp_toggle01 ~ label {
    display: none; } }

/* footer */
footer {
  margin-top: 50px;
  margin-bottom: 5px; }
  footer .copyright {
    font-size: 1.2rem;
    text-align: center; }
  @media only screen and (min-width: 568px) {
    footer .copyright {
      font-size: 1.4rem; } }



footer .bana {
	display: block;
	width: 100%;
	max-width: 180px;
	height: auto;
	margin: 0 auto 15px;
}

footer .menu_links {
	display: flex;
	justify-content: center;
	font-size: 1.5rem;
	margin-bottom: 15px;
}
footer .menu_links li:not(:first-child){
	margin-left: 20px;
}
footer .menu_links li::before  {
	display: inline-block;
	font-family: "Font Awesome 5 Free";
    content: "\f152";
    font-weight: 600;
	margin-right: .5rem;
	color: #ff9c00;
}
footer .menu_links a {
	padding: 0 0px 0;
}

footer .menu_links a:hover {
	color: #ff9c00;
	text-decoration: underline;
}
