@charset "utf-8";

html {
  font-size: 62.5%;
}

#contents {
  padding: 0;
  width: 100%;
}

#wrapper {
  min-width: inherit;
  background-color: transparent;
}

#header {
  box-shadow: none;
}

#footerIn img {
  border: none;
}

.onlySP {
  display: none;
}

#ct_bg {
  position: relative;
  background-color: #BBE3FA;
  color: #000;
  font-family: 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', Osaka, sans-serif;
  font-size: 1.6rem;
  line-height: 1.5;
  overflow-x: hidden;
}
#ct_bg::before {
  position: fixed;
  top: 60px;
  left: 0;
  content: "";
  width: 100%;
  height: 1061px;
  background: url(../../img/bg_index06.png) no-repeat top center / 100% auto;
}
#ct_bg.noBg {
  background: #fff;
}
#ct_bg.noBg::before {
  content: normal;
}

#ct_bg a {
  color: #bc0c00;
}

#ct_bg img {
  max-width: 100%;
  height: auto;
}

#ct_bg .imgOver01 > a {
  display: block;
  position: relative;
}

#ct_bg .imgOver01 > a:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0;
  transition: all 0.6s;
}

#ct_bg .imgOver01 > a:hover:before {
  opacity: 0.5;
  transition: all 0.3s;
}

#ct_bg .center {
  text-align: center !important;
}
#ct_bg .right {
  text-align: right !important;
}

#ct_bg .font14 {
  font-size: 1.4rem;
}

#ct_bg .wrap01 {
  display: flex;
  flex-wrap: wrap;
}
#ct_bg .wrap01.bC {
  justify-content: center;
}
#ct_bg .wrap01.between {
  justify-content: space-between;
}
#ct_bg .wrap01.reverse {
  flex-direction: row-reverse;;
}
#ct_bg .wrap01.aC {
  align-items: center;
}

@media screen and (max-width: 767px) {
  #ct_bg {
    font-family: -apple-system, 'HelveticaNeue', Helvetica;
  }
  #ct_bg::before {
    top: 56px;
    aspect-ratio: 400/707;
    background: url(../../img/bg_index06_sp.png) no-repeat top center / cover;
  }

  #ct_bg a {
    text-decoration: underline;
  }
  #ct_bg a:hover {
    text-decoration: none;
  }
  #header {
    border-bottom: #ccc solid 1px;
  }
  #ct_bg img {
    width: 100%;
    height: auto;
  }

  #ct_bg .imgOver01 > a:before {
    content: normal;
  }

  .onlyPC {
    display: none;
  }
  .onlySP {
    display: block;
  }
  img.onlySP {
    display: inline-block;
  }
}

/* form reset
*****************************************/
input,
textarea,
select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	border: 0;
	background: none;
}

select::-ms-expand {
	display: none;
}

input[type="submit"] {
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]:-webkit-search-decoration {
	display: none;
}
input[type="submit"]:focus {
	outline-offset: -2px;
}

input[type="submit"]:-moz-focus-inner{
	border :0;
}

input[type=radio], input[type=checkbox] {
	opacity: 0;
	-webkit-appearance: none;
	appearance: none;
	position: absolute;
}

/* header
*****************************************/
#ct_bg .header01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 121px;
  border-bottom: 2px solid #D65700;
  background-color: #F06100;
}
#ct_bg .header01.fixed {
  position: fixed;
  height: 60px;
}

#ct_bg .headTitleArea01 {
  position: relative;
  background-color: #BC0C00;
  color: #fff;
}
#ct_bg .header01.fixed .headTitleArea01 {
  display: none;
}

#ct_bg .headTitleArea01 > .inner01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 5px 0;
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  height: 31px;
}

#ct_bg .headTitleArea01 > .inner01 > * {
  font-size: 1.4rem;
  font-weight: bold;
}
#ct_bg .headTitleArea01 > .inner01 > .title01 {
  margin-right: 10px;
}

#ct_bg .header01 > .inner01 {
  position: relative;
  z-index: 100;
  margin: 0 auto;
  max-width: 1200px;
  height: 80px;
}
#ct_bg .header01.fixed > .inner01 {
  height: 60px;
}

#ct_bg .header01 .logo01 {
  position: absolute;
  z-index: 10;
  top: 5px;
  left: 0;
  width: 90px;
}
#ct_bg .header01.fixed .logo01 {
  display: none;
}

#ct_bg .globalNav01 {
  margin-left: auto;
}
#ct_bg .fixed .globalNav01 {
  margin-left: 0;
}

#ct_bg .globalNav01 > ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  padding: 18px 0 18px 100px;
}
#ct_bg .fixed .globalNav01 > ul {
  justify-content: center;
  padding: 5px 10px;
}

#ct_bg .globalNav01 > ul > li {
  min-height: 54px;
  border-left: 3px solid rgba(255, 255, 255, 0.20);
}
#ct_bg .globalNav01 > ul > li:last-child {
  border-right: 3px solid rgba(255, 255, 255, 0.20);
}
#ct_bg .fixed .globalNav01 > ul > li {
  min-height: 50px;
}

#ct_bg .globalNav01 > ul > li > a {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 5px 40px;
  height: 100%;
  color: #fff;
  text-decoration: none;
  font-size: 1.8rem;
  font-family: 'M PLUS 1', sans-serif;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
  transition: opacity .3s;
}
#ct_bg .globalNav01 > ul > li > a:hover {
  opacity: .6;
}
#ct_bg .fixed .globalNav01 > ul > li > a {
  font-size: 1.6rem;
}

#ct_bg .globalNav01 > ul > li > a > .icon01 {
  display: block;
  position: relative;
  padding-left: 44.4px;
}
#ct_bg .globalNav01 > ul > li > a > .icon01::before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  margin-top: -14px;
  background: url(../img/icon_common03.svg) no-repeat 0 0 / cover;
  width: 34px;
  height: 28px;
}

@media screen and (max-width: 1030px) {
  #ct_bg .globalNav01 > ul > li > a {
    padding: 5px 2.9vw;
    font-size: 1.7vw;
  }
}

@media screen and (max-width: 767px) {
  #ct_bg .header01,
  #ct_bg .header01.fixed {
    height: 56px;
  }
  #ct_bg .header01 > .inner01,
  #ct_bg .header01.fixed > .inner01 {
    height: 56px;
    background-color: #F06100;
  }
  #ct_bg .headTitleArea01 > .inner01 > * {
    font-size: 1.2rem;
  }

  #ct_bg .headTitleArea01,
  #ct_bg .header01.fixed .headTitleArea01 {
    display: block;
    position: absolute;
    top: 10px;
    left: 81px;
    z-index: 999;
    background: none;
  }

  #ct_bg .headTitleArea01 > .inner01 {
    display: block;
    padding: 0;
  }
  #ct_bg .headTitleArea01 > .inner01 > .title01 {
    margin-right: 0;
  }

  #ct_bg .headTitleArea01 > .inner01 .text01 {
    margin-left: 0;
  }


  #ct_bg .headWrap01 {
    position: relative;
    z-index: 10000;
    height: 56px;
    background-color: #F06100;
  }

  #ct_bg .header01 .logo01,
  #ct_bg .header01.fixed .logo01 {
    display: block;
    top: 3px;
    left: 15px;
    width: 56px;
  }

  #ct_bg .headButton01 {
    position: absolute;
    top: 0;
    right: 0;
    width: 70px;
    height: 56px;
    cursor: pointer;
  }
  #ct_bg .headButton01 > .inner01 {
    transition: all .6s;
    display: block;
    width: 70px;
    height: 36px;
  }
  #ct_bg .active .headButton01 > .inner01 {
    transform: rotate(360deg);
  }
  #ct_bg .headButton01::before {
    position: absolute;
    top: 32.5px;
    left: 0;
    content: "メニュー";
    width: 100%;
    color: #fff;
    font-size: 1.0rem;
    font-weight: 800;
    text-align: center;
    transition: opacity .4s;
  }
  #ct_bg .headButton01::after {
    position: absolute;
    top: 32.5px;
    left: 0;
    content: "とじる";
    width: 100%;
    color: #fff;
    font-size: 1.0rem;
    font-weight: 800;
    text-align: center;
    opacity: 0;
    transition: opacity .4s;
  }
  #ct_bg .active .headButton01::before {
    opacity: 0;
  }
  #ct_bg .active .headButton01::after {
    opacity: 1.0;
  }
  #ct_bg .headButton01 .top,
  #ct_bg .headButton01 .middle,
  #ct_bg .headButton01 .bottom {
    position: absolute;
    z-index: 10;
    left: 22px;
    width: 26px;
    height: 3px;
    background-color: #fff;
    text-indent: 100%;
    white-space: nowrap;
    transition: all .4s;
  }

  #ct_bg .headButton01 .top {
    top: 9.5px;
  }

  #ct_bg .headButton01 .bottom {
    top: 25.5px;
  }

  #ct_bg .headButton01 .middle {
    top: 17.5px;
  }

  #ct_bg .active .headButton01 .top {
    top: 13.5px;
    left: 25px;
    width: 30%;
    transform: translateY(6px) rotate(-45deg);
  }

  #ct_bg .active .headButton01 .bottom {
    top: 25.5px;
    left: 25px;
    width: 30%;
    transform: translateY(-6px) rotate(45deg);
  }

  #ct_bg .active .headButton01 .middle {
    opacity: 0;
  }

  #ct_bg .globalNav01 {
    position: absolute;
    top: 56px;
    left: 0;
    margin-left: 0;
    transform: translateY(-150%);
    width: 100%;
    background-color: #F06100;
    transition: transform 0.3s;
  }

  #ct_bg .active .globalNav01 {
    transform: translateY(0);
  }

  #ct_bg .globalNav01 > ul,
  #ct_bg .fixed .globalNav01 > ul {
    justify-content: space-between;
    padding: 4.5% 4% 7.7%;
  }

  #ct_bg .globalNav01 > ul > li,
  #ct_bg .fixed .globalNav01 > ul > li {
    width: 47.22%;
    min-height: inherit;
    border-left: none;
    border-bottom: 3px solid rgba(255, 255, 255, 0.20);
  }
  #ct_bg .globalNav01 > ul > li:last-child {
    border-right: none;
  }
  #ct_bg .globalNav01 > ul > li > a,
  #ct_bg .fixed .globalNav01 > ul > li > a {
    justify-content: center;
    padding: 15px 0;
    min-height: 74px;
    font-size: 1.8rem;
  }
}

/* footer
*****************************************/
#ct_bg .footer01 {
  position: relative;
  padding-top: 14px;
  width: 100%;
  background: url(../img/bg_common04.png) repeat 0 0 / 4px;
}

#ct_bg .footer01:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 14px;
  background: url(../img/bg_common05.png) repeat-x 0 0 / auto 100%;
}

#ct_bg .footer01 > .inner01 {
  position: relative;
  margin: 0 auto;
  padding: 20px 20px 30px;
  max-width: 1040px;
}

#ct_bg .footer01 > .inner01 > .copyrights01 {
  width: 76.5%;
  color: #fff;
  font-size: 1.2rem;
}

#ct_bg .footer01 > .inner01 > .logo01 {
  position: absolute;
  top: 20px;
  right: 1.9%;
  width: 15.3%;
}

#ct_bg .footer01 > .inner01 > .logo02 {
  position: absolute;
  top: 20px;
  right: 17.5%;
  width: 5.6%;
}

#ct_bg .footer01 > .inner01 > .image01 {
  margin: 20px 0 0 1.6%;
  width: 80.7%;
}

@media screen and (max-width: 767px) {
  #ct_bg .footer01 {
    padding-top: 7px;
  }

  #ct_bg .footer01:before {
    height: 7px;
  }

  #ct_bg .footer01 > .inner01 {
    padding: 20px 4% 30px;
  }

  #ct_bg .footer01 > .inner01 > .copyrights01 {
    width: 81.1%;
    font-size: 1.1rem;
  }

  #ct_bg .footer01 > .inner01 > .logo01 {
    position: static;
    top: 0;
    right: 0;
    margin: 15px auto 0;
    width: 33.3%;
  }

  #ct_bg .footer01 > .inner01 > .logo02 {
    right: 2.6%;
    width: 16%;
  }

  #ct_bg .footer01 > .inner01 > .image01 {
    margin: 15px -1.4% 0;
    width: 102.8%;
  }
}

/* editor
*****************************************/
#ct_bg .editorArea01 {
  margin-top: 20px;
}

#ct_bg .editorArea01 p:first-child {
  margin-top: 0;
}

#ct_bg .editorArea01 p {
  margin-top: 20px;
}

#ct_bg .editorArea01 p.notes01 {
  padding-left: 1em;
  font-size: 1.4rem;
}
#ct_bg .editorArea01 p.notes01 + .notes01 {
  margin-top: 0;
}

#ct_bg .editorArea01 img {
  max-width: 100%;
  width: auto;
}

#ct_bg .editorArea01 h3 + h4 {
  margin-top: 20px;
}

#ct_bg .editorArea01 h3:first-child,
#ct_bg .editorArea01 h4:first-child,
#ct_bg .editorArea01 ul li:first-child,
#ct_bg .editorArea01 ol li:first-child,
#ct_bg .editorArea01 ul:first-child,
#ct_bg .editorArea01 ol:first-child {
  margin-top: 0;
}

#ct_bg .editorArea01 h3 {
  margin-top: 40px;
  color: #229edb;
  font-size: 2rem;
  font-weight: bold;
  border-top: 2px #229edb solid;
  border-bottom: 2px solid #229edb;
  padding: 4px 0 3px;
}

#ct_bg .editorArea01 h4 {
  margin-top: 40px;
  color: #1f2871;
  font-weight: bold;
}

#ct_bg .editorArea01 h5 {
  margin-top: 40px;
  text-align: center;
  color: #bc0c00;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.01rem;
  font-weight: bold;
}

#ct_bg .editorArea01 h6 {
  margin-top: 30px;
	padding-top: 30px;
  text-align: center;
  color: 000;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.01rem;
  font-weight: bold;
	border-top: 1px solid #bc0c00;
}

#ct_bg .editorArea01 ul {
  margin-top: 20px;
}

#ct_bg .editorArea01 ul li {
  position: relative;
  padding-left: 20px;
}

#ct_bg .editorArea01 ul li:before {
  position: absolute;
  top: 0.6em;
  left: 0;
  content: '';
  width: 5px;
  height: 5px;
  background-color: #bc0c00;
  border-radius: 50%;
}

#ct_bg .editorArea01 ol {
  margin-top: 20px;
  counter-reset: li;
}

#ct_bg .editorArea01 ol li {
  padding-left: 1.3em;
  text-indent: -1.3em;
}

#ct_bg .editorArea01 ol li:before {
  margin-right: 10px;
  counter-increment: li;
  content: counter(li) '';
  color: #bc0c00;
  font-weight: bold;
}

#ct_bg .editorArea01 table {
  margin-top: 20px;
  width: 100%;
  border: #abb6ba solid 1px;
}

#ct_bg .editorArea01 table th {
  padding: 10px;
  background-color: #d4dde1;
  border-top: #abb6ba solid 1px;
  border-right: #abb6ba solid 1px;
  text-align: left;
}

#ct_bg .editorArea01 table td {
  padding: 10px;
  border-top: #abb6ba solid 1px;
  border-right: #abb6ba solid 1px;
}

#ct_bg .editorArea01 p.text01 {
  margin-top: 10px;
  text-align: center;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 4rem;
  font-weight: bold;
  color: #bc0c00;
}

#ct_bg .editorArea01 .movie01 {
  margin: 30px auto 0;
  max-width: 640px;
}

#ct_bg .editorArea01 .image01 {
  max-width: 640px;
  margin: 0 auto;
}

#ct_bg .editorArea01 .image02 {
  margin: 0 auto;
}

#ct_bg .editorArea01 .image03 {
  margin: 40px auto 0;
}

#ct_bg .editorArea01 .btn01.type01 {
  margin-top: 40px;
}

#ct_bg .editorArea01 .btn01.type02 {
	display: block;
	min-width: auto;
}


#ct_bg .editorArea01 .btn01.type02 > a.scroll > .inner01::after {
  position: absolute;
  top: calc(50% - 4px);
  right: -2rem;
  margin: -5px auto 0;
  content: "";
  width: 8px;
  height: 8px;
  vertical-align: middle;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(135deg);
}
#ct_bg .editorArea01 > .copyright01 {
  font-size: 1.2rem;
}

#ct_bg .editorArea01 > .bg01 {
	position: relative;
}

#ct_bg .editorArea01 > .bg01 > .img01 {
	position: absolute;
	top: -10px;
	left: 10px;
	right: 10px;
}

#ct_bg .editorArea01 > .bg01 > .wrap01 {
	position: absolute;
	bottom: 20px;
	width: 100%;
	padding: 0 20px;
}
#ct_bg .editorArea01 > .bg01 > .wrap01 > .movie01 {
	width: 49%;
	margin: 0;
}
#ct_bg .editorArea01 > .bg01 > .wrap01 > .movie01 > p {
	display: block;
	width: 100%;
	padding: 2.5px 0;
	background-color: #0059a2;
	font-family: 'M PLUS 1', sans-serif;
	font-size: 3rem;
	font-weight: bold;
	color: #fff;
}
#ct_bg .editorArea01 .edCol01 {
	width: 49%;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}
#ct_bg .editorArea01 .edCol01:nth-child(n+3) {
		margin-top: 20px;
  }
#ct_bg .editorArea01 .edCol02 {
	width: 67%;
}
#ct_bg .editorArea01 .edCol02 > .txt01 {
	font-family: 'M PLUS 1', sans-serif;
	font-size: 2.4rem;
	font-weight: bold;
	color: #e70012;
}
#ct_bg .editorArea01 .edCol02 > .txt01 + .txt01 {
	margin-top: 40px;
}
#ct_bg .editorArea01 .edCol03 {
	width: 31%;
}
#ct_bg .editorArea01 .textBlock01 {
	padding: 25px 30px;
	border: 4px solid #386fb4;
	border-radius: 20px;
	background-image: url("../../info/img/ico_info01.png");
	background-size: 104px;
	background-repeat: no-repeat;
	background-position: top 20px right 20px;
}
#ct_bg .editorArea01 .textBlock01 > .txt01 {
	font-family: 'M PLUS 1', sans-serif;
	font-size: 3.2rem;
	font-weight: bold;
	color: #e70012;
}
#ct_bg .editorArea01 .textBlock01 > .txt02 {
	margin-top: 15px;
	font-family: 'M PLUS 1', sans-serif;
	font-size: 2.01rem;
	font-weight: bold;
	text-shadow:none;
	color: #1e5caa;
}
#ct_bg .editorArea01 .edCol01 > .textArea01 {
	height: 100%;
	margin-top: 4px;
	padding: 20px 10px 30px 30px;
	font-family: 'M PLUS 1', sans-serif;
	font-size: 2.4rem;
	font-weight: bold;
	color: #bc5000;
	background-color: #ffe7d4;
}
#ct_bg .editorArea01 .edCol01.color02 > .textArea01 {
	color: #1E5CAA;
	background-color: #E8F6FF;
}
[data-ruby] {
	position: relative;
	text-align: center;
}
[data-ruby]::before {
	content: attr(data-ruby);
	position: absolute;
	top: -0.5em;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 1.4rem;
	font-weight: normal;
	letter-spacing: 0.1em;
}
#ct_bg .textArea01 [data-ruby]::before {
	top: -1em;
	font-size: 1.0rem;
	font-weight: normal;
}
rt {
	display: none;
}
@media screen and (max-width: 767px) {
	[data-ruby]::before {
		top: -1em;
		font-size: 1.2rem;
		white-space: nowrap;
	}
	#ct_bg .textArea01 [data-ruby]::before {
		top: -.8em;
		font-size: .8rem;
	}
}
#ct_bg .editorArea01 .edCol01 > .textArea01 > span {
	display: block;
	margin-top: 15px;
	font-size: 2.01rem;
	color: #000;
}

@media screen and (max-width: 890px) {
  #ct_bg .editorArea01 > .bg01 > .wrap01 > .movie01 > p {
	font-size: 2rem;
	}
}

@media screen and (max-width: 767px) {
  #ct_bg .editorArea01 > .copyright01 {
    font-size: 1.1rem;
  }

  #ct_bg .editorArea01 h5,
  #ct_bg .editorArea01 h6 {
    text-align: left;
	  font-size: 1.6rem;
  }

  #ct_bg .editorArea01 .image03 {
    margin: 20px auto 0;
  }

  #ct_bg .editorArea01 .btn01.type01 {
    margin-top: 20px;
  }

  #ct_bg .editorArea01 > .bg01 > .wrap01 {
	position: static;
	margin-top: -28vw;
	padding-bottom: 20px;
	background-color: #fff3c1;
  }
  #ct_bg .editorArea01 > .bg01 > .wrap01 > .movie01 {
	width: 100%;
  }
  #ct_bg .editorArea01 > .bg01 > .wrap01 > .movie01 + .movie01 {
	margin-top: 20px;
  }
  #ct_bg .editorArea01 .edCol01,
  #ct_bg .editorArea01 .edCol02,
  #ct_bg .editorArea01 .edCol03 {
	width: 100%;
  }
  #ct_bg .editorArea01 .edCol01:nth-child(n+2) {
		margin-top: 20px;
  }
  #ct_bg .editorArea01 .textBlock01 {
	padding: 15px;
  }
  #ct_bg .editorArea01 .textBlock01 > .txt01 {
	font-size: 2.4rem;
  }
  #ct_bg .editorArea01 .textBlock01 > .txt02 {
	margin-top: 10px;
	font-size: 1.6rem;
  }
  #ct_bg .editorArea01 .edCol01 > .textArea01 {
	padding: 15px 10px 20px;
	font-size: 1.8rem;
  }
  #ct_bg .editorArea01 .edCol01 > .textArea01 > span {
	margin-top: 10px;
	font-size: 1.6rem;
  }
  #ct_bg .editorArea01 .edCol02 > .txt01 {
	font-size: 1.8rem;
  }
}

/* contents
*****************************************/
#ct_bg .contents01 {
  padding-top: 121px;
}

#ct_bg .mainArea01 {
  position: relative;
  padding: 10px 0 55px;
  background: #1F2871 ;
}

#ct_bg .mainArea01.type01 {
  background-size: contain;
  background-image: url(../../img/bg_index01_pc.png);
}
#ct_bg .mainArea01 .info {
  margin: 0 auto 20px;
  width: 1000px;
  background-color: #fff;
}
#ct_bg .mainArea01 .info a{
  padding: 10px 20px;
  display: block;
  background-color: #fffcd1;
  border: solid 3px #fff100;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  line-height: 110%;
  color: red;
  text-decoration: none;
}
#ct_bg .mainArea01 .info a:hover{
  text-decoration: underline;
  opacity: 0.7;
}
#ct_bg .slideArea01 {
  padding-left: 10px;
  padding-right: 10px;
  overflow-x: hidden;
}

#ct_bg .importantButton01 + .slideArea01 {
  margin-top: 10px;
}

#ct_bg .slider01 {
  max-width: 614px;
  margin: 0 auto;
}
#ct_bg .slider01 .slick-list {
  overflow: visible;
}

#ct_bg .slider01 .slick-slide {
  position: relative;
  margin-left: 7px;
  margin-right: 7px;
}

#ct_bg .slider01 .slick-slide a {
  position: relative;
  display: block;
}
#ct_bg .slider01 .item01 {
  border: 2px solid #fff;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}
#ct_bg .slider01 .slick-slide a::before {
  opacity: 0;
}

#ct_bg .slider01 .slick-slide a::after {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(255,255,255,.5);
  transition: opacity .5s;
  opacity: 0;
  content: "";
}

#ct_bg .slider01 .slick-slide a:hover::after {
  opacity: 1.0;
}

#ct_bg .slider01 .slick-arrow {
  position: absolute;
  z-index: 2;
  top: 50%;
  width: 48px;
  height: 48px;
  margin-top: -5px;
  padding: 0;
  border: none;
  box-sizing: border-box;
}

#ct_bg .slider01 .slick-arrow:before {
  content: "";
}

#ct_bg .slider01 .slick-arrow.slick-prev {
  background: url(../../img/prev_btn01_off.png) no-repeat 0 0 / cover;
  transition: .5s;
}
#ct_bg .slider01 .slick-arrow.slick-prev:hover {
  background: url(../../img/prev_btn01_on.png) no-repeat 0 0 / cover;
}


#ct_bg .slider01 .slick-arrow.slick-next {
  background: url(../../img/next_btn01_off.png) no-repeat 0 0 / cover;
  transition: .5s;
}
#ct_bg .slider01 .slick-arrow.slick-next:hover {
  background: url(../../img/next_btn01_on.png) no-repeat 0 0 / cover;
}

#ct_bg .slider01 .slick-dots {
  position: relative;
  top: -5px;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#ct_bg .slider01 .slick-dots > li {
  width: 55px;
  height: 8px;
  margin-top: 10px;
  margin-left: 5px;
  margin-right: 5px;
}

#ct_bg .slider01 .slick-dots > li > button {
  width: 100%;
  height: 100%;
  display: block;
  padding: 0;
  background-color: #fff;
  transition: background .3s;
}

#ct_bg .slider01 .slick-dots > li > button:hover {
  background-color: #fff000;
}

#ct_bg .slider01 .slick-dots > li.slick-active > button {
  background-color: #fff000;
}

#ct_bg .slider01 .slick-dots > li > button::before {
  content: none;
}

#ct_bg .slider01 .slick-dots > li > button:not(:first-child) {
  display: none;
}

#ct_bg #mainArea02-inView {
  position: relative;
}

#ct_bg #mainArea02-inView .mainArea02_event {
  position: absolute;
  width: 1px;
  height: 1px;
  top: 300px;
  left: 50%;
}

#ct_bg .mainArea02 > .image01 {
  display: block;
  margin: 0 auto;
  max-width: 1000px;
  opacity: 0;
}

#ct_bg .mainArea02.animated > .image01 {
  animation: zoomIn 0.5s 0.3s forwards;
}

@keyframes zoomIn {
  0% {
    opacity: 0;
    transform: scale(0.3, 0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.2, 1.2);
  }
  100% {
    opacity: 1;
    transform: scale(1 1);
  }
}

#ct_bg .mainArea01 > .mainInner01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  position: relative;
  z-index: 5;
  margin: 0 auto;
  padding: 0 20px 50px;
  max-width: 1040px;
}

#ct_bg .mainArea01 > .mainInner02 {
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1240px;
  position: relative;
}

#ct_bg .mainArea01 > .mainInner02 > .image01 {
  position: absolute;
  top: 5%;
  left: 7%;
  width: 19.8%;
}

#ct_bg .mainArea01 > .mainInner02 > .image02 {
  width: 67.583%;
  margin-left: 3.766%;
  padding-top: 8px;
}
#ct_bg .importantButton01 {
  margin: 10px auto 0;
  padding: 0 20px;
  max-width: 1000px;
}
#ct_bg .importantButton01:first-child {
  margin-top: 0;
}
#ct_bg .importantButton01 > a {
  display: block;
  position: relative;
  padding: 10px 10px 10px 34px;
  border: 2px solid #FFF000;
  background: #FFFCCD;
  color: #BC0C00;
  font-family: 'M PLUS 1', sans-serif;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
  line-height: 1.4;
  transition: all .3s;
}
#ct_bg .importantButton01 > a:hover {
  border: 2px solid #BC0C00;
  background: #FFF000;
}
#ct_bg .importantButton01 > a:before {
  position: absolute;
  top: 50%;
  left: 10px;
  content: "";
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 10px;
  border-color: transparent transparent transparent #bc0d00;
}

#ct_bg .mainCol01 {
  width: 39.5%;
  position: absolute;
  top: 40px;
  right: 9.833%;
  z-index: 5;
}

#ct_bg .mainCol01.type01 {
  width: 49%;
  position: static;
}

#ct_bg .mainCol01.type02 {
  margin: 0 auto;
}

#ct_bg .mainCol01 > .button01 {
  margin-top: 20px;
}

#ct_bg .frameArea01 {
  position: relative;
  padding: 64px 40px 50px;
}
#ct_bg .frameArea01.noPt {
  padding-top: 14px;
}
#ct_bg .frameArea01.type02 {
  padding: 104px 20px 50px;
}
#ct_bg .frameArea01.type02 > .inner01 {
  max-width: 1060px;
}

#ct_bg .frameArea01:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 14px;
  background: url(../img/bg_common05.png) repeat-x 0 0 / auto 100%;
}

#ct_bg .frameArea01 > .inner01 {
  margin: 0 auto;
  max-width: 1000px;
}

#ct_bg .frameArea02 {
  position: relative;
  margin-top: 100px;
  padding: 20px 20px 50px;
  background-color: #fff;
}

#ct_bg .frameArea02:first-child {
  margin-top: 0;
}

#ct_bg .frameArea03 {
  margin-top: 10px;
  padding: 10px;
  background-color: #fff;
}

#ct_bg .frameArea03:first-child {
  margin-top: 0;
}

#ct_bg .frameArea04 {
  position: relative;
  margin-top: 10px;
  padding: 4.9% 0;
}

#ct_bg .frameArea04.type01 {
  margin-top: 20px;
}

#ct_bg .frameArea04:first-child {
  margin-top: 0;
}

#ct_bg .frameArea04:before,
#ct_bg .frameArea04:after {
  position: absolute;
  left: 0;
  content: '';
  padding-bottom: 4.9%;
  width: 100%;
  height: 0;
  background: no-repeat 0 0 / 100%;
}
#ct_bg .frameArea04:before {
  top: 1px;
  background-image: url(../../img/bg_index02a.png);
}
#ct_bg .frameArea04:after {
  bottom: 1px;
  background-image: url(../../img/bg_index02c.png);
}

#ct_bg .frameArea04 > .inner01 {
  padding: 16px 30px;
  background: url(../../img/bg_index02b.png) repeat-y 0 0 / 100%;
}

#ct_bg .frameArea04 > .inner01 .icon01 {
  display: inline-block;
  margin-right: 8px;
  width: 54px;
  vertical-align: middle;
}

#ct_bg .frameArea05 {
  position: relative;
  padding: 114px 40px 60px;
  background: url(../../img/bg_index03.jpg) no-repeat bottom center / cover;
}

#ct_bg .frameArea05:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 14px;
  background: url(../img/bg_common05.png) repeat-x 0 0 / auto 100%;
}

#ct_bg .frameArea05 > .inner01 {
  margin: 0 auto;
  max-width: 1000px;
}

#ct_bg .frameArea06 {
  position: relative;
  padding-bottom: 60.3%;
  width: 100%;
  height: 0;
  background: url(../../img/bg_index04_pc.png) no-repeat 0 0 / cover;
}

#ct_bg .frameArea06 > .title01 {
  position: absolute;
  top: -5.6%;
  left: 8%;
  width: 48.6%;
}

#ct_bg .frameArea07 {
  position: absolute;
  top: 16.8%;
  left: 4.5%;
  padding: 20px;
  width: 90.9%;
  height: 75.3%;
  background-color: #fff;
  overflow-y: scroll;
}

#ct_bg .frameArea08 {
  margin-top: 40px;
  padding: 15px 20px 17px;
  border: solid 3px #bc0c00;
}

#ct_bg .frameArea08 > .text02 {
  font-family: 'M PLUS 1', sans-serif;
  color: #bc0c00;
  font-weight: bold;
  font-size: 2.05rem;
  text-align: center;
}

#ct_bg .frameArea09 {
  margin-top: 40px;
  padding: 14px 10px 12px 15px;
  border: solid 10px #222e76;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2) inset;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.8) inset;
  min-height: 291px;
  background: #fff url('../../img/bg_index05.png') no-repeat 93.8% 89%;
}
#ct_bg .frameArea09 p {
  color: #bc0d00;
  font-size: 1.7rem;
  font-weight: 700;
  margin-bottom: 0.5em;
}
#ct_bg .frameArea09 p + p {
  color: #0059a2;
  font-size: 1.5rem;
  font-weight: normal;
  margin-bottom: 0;
}

#ct_bg .frameArea10 {
  margin: 2px auto 0;
  padding: 20px 4%;
  max-width: 640px;
  background-color: #e4f8ff;
}

#ct_bg .frameArea10 > p.text01 {
  margin-top: 0;
  font-size: 3.5rem;
}

#ct_bg .frameArea10 > p.text01.type01 {
  font-size: 2.8rem;
}

#ct_bg .frameArea11 {
  background: #4db0e1 url(../img/bg_common11.png) repeat;
  border: 4px solid #1f2871;
  margin-top: 40px;
}
#ct_bg .frameArea11 .ttl {
  font-weight: bold;
  font-size: 2.0rem;
  color: #fff000;
  background: #1f2871;
  line-height: 1;
  padding: 16px;
  text-align: center;
}
#ct_bg .frameArea11 .inner {
  background: #fff url(../img/bg_common12.png);
  background-repeat: no-repeat;
  background-size: 103px;
  background-position: bottom 10px right 10px;
  padding: 9px 15px;
  margin: 11px;
  font-weight: bold;
  color: #1f2871;
  position: relative;
}

#ct_bg .frameArea12 {
  position: relative;
  margin: 100px auto 0;
  padding: 87px 50px 50px;
  max-width: 1060px;
  background-color: #fff;
  box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.10);
}
#ct_bg .frameArea12:first-child,
#ct_bg .frameArea12.type02:first-child {
  margin-top: 0;
}
#ct_bg .frameArea12.type02 {
  margin-top: 60px;
  padding-top: 40px;
}

#ct_bg .frameArea12 > .bgImg01 {
  position: absolute;
  top: -32px;
  right: 4.9px;
  width: 171px;
}
#ct_bg .frameArea12 > .bgImg02 {
  position: absolute;
  top: -74px;
  left: 10px;
  width: 179px;
}

#ct_bg .frameArea12 > .image01 {
  margin-top: 30px;
}

#ct_bg .frameArea12 > .text01 {
  margin-top: 30px;
}

#ct_bg .frameArea13 {
  position: relative;
  margin: 0 auto;
  padding: 40px 50px;
  max-width: 786px;
  background-color: #EDFAFF;
}

#ct_bg .frameArea14 {
	background: repeat url("../../img/bg_index07.png");
	background-size: 45px;
	padding: 20px 20px;
}
#ct_bg .frameArea14.type01 {
	background: repeat url("../../img/bg_index08.png");
	background-size: 45px;
}
#ct_bg .frameArea14 .border01 {
	margin-top: 20px;
	border: 4px solid #e70012;
	border-radius: 10px;
	overflow: hidden;
}
#ct_bg .frameArea14 .border02 {
	margin-top: 20px;
	border: 2px solid #0079c6;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0px 0px 8px rgba(0,0,0,.25);
}
#ct_bg .frameArea14 .textArea01 {
	max-width: 920px;
	margin: 0 auto;
	padding: 30px 20px 20px;
	background: #fff;
}
#ct_bg .frameArea14 .textArea01.type01 {
	min-height: 132px;
}
#ct_bg .frameArea14 .textArea01 > .taTxt01 {
	text-align: center;
	color: #0068b7;
	font-size: 1.8rem;
	font-weight: 600;
}
#ct_bg .frameArea14 .textArea01 > .taTxt01 > a {
	position: relative;
	cursor: pointer;
	color: #0068b7;
	font-size: 1.8rem;
	font-weight: 600;
}
#ct_bg .frameArea14 .textArea01 > .taTxt01 > a::after {
	position: absolute;
	bottom: .4rem;
	right: -1.5em;
	content: "";
	display: block;
	width: 22px;
	height: 22px;
	background: no-repeat url("../../img/ico_index01.png");	
}
#ct_bg .frameArea14 .textArea01 > .taTxt02 {
	text-align: center;
	color: #e70012;
	font-size: 1.8rem;
	font-weight: 600;
}
#ct_bg .frameArea14 .wrap01 {
	align-items: flex-start;
}
#ct_bg .frameArea14 .wrap01 > .block01 {
	display: flex;
	align-items: stretch;
	position: relative;
	width: 49%;
	margin-top: 20px;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0px 0px 8px rgba(0,0,0,.25);
}
#ct_bg .frameArea14 .wrap01 > .block01.type01 {
	border: 2px solid #0079c6;
}
#ct_bg .frameArea14 .wrap01 > .block01 a {
	text-decoration: none;
	color: #000;
}
#ct_bg .frameArea14 .wrap01 > .block01 a > .span01 {
	display: block;
	border: 2px solid #0079c6;
	border-bottom: none;
	border-radius: 10px 10px 0 0;
	overflow: hidden;
}
#ct_bg .frameArea14 .wrap01 > .block01 a > .span02 {
	display: block;
	border: 2px solid #0079c6;
	border-top: none;
	border-bottom: none;
}
#ct_bg .frameArea14 .wrap01 > .block01 .title01 {
	margin-top: 0;
	padding: 5px 10px 3px;
	background: #0068b7;
	color: #fff;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 600;
}
#ct_bg .frameArea14 .wrap01 > .block01 .textArea01 {
	background: #fffad5;
	padding: 20px;
	border: 2px solid #0079c6;
	border-top: none;
	border-radius: 0 0 10px 10px;
}
#ct_bg .frameArea14 .wrap01 > .block01 .textArea01 > p {
	font-size: 1.5rem;
}
#ct_bg .frameArea14 .imgOver01 > a:before {
	border-radius: 10px;
}
#ct_bg .frameArea14 .imgOver01 > a:hover:before {
	opacity: 0.2;
	transition: all 0.3s;
}

#ct_bg .popupArea01 {
  padding: 30px;
  width: 660px;
}

#ct_bg .popupArea01 > .img01 {
  width: 120px;
  margin: 0 auto;
}

#ct_bg .popupArea01 > .title01 {
  color: #1f2871;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  margin-top: 30px;
}

#ct_bg .popupArea01 > .title01.type01 {
  font-size: 2.2rem;
}

#ct_bg .popupArea01 > .img02 {
  width: 100%;
  margin-top: 10px;
}

#ct_bg .popupArea01 > .button01 {
  display: table;
  margin: 30px auto 0;
}

#ct_bg .popupArea01 > .button01 > a {
  display: block;
  padding: 10px 40px;
  background-color: #229edb;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

#ct_bg .popupArea01 > .button01 > a:hover {
  background-color: #ff5400;
}

#ct_bg .popupArea01 > .button01 > a > .inner01 {
  position: relative;
  padding-left: 19px;
}

#ct_bg .popupArea01 > .button01 > a > .inner01:before,
#ct_bg .popupArea01 > .button01 > a > .inner01:after {
  position: absolute;
  top: 50%;
  left: 0;
  content: ' ';
  margin-top: -1px;
  width: 12px;
  height: 2px;
  background-color: #fff;
}

#ct_bg .popupArea01 > .button01 > a > .inner01:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#ct_bg .popupArea01 > .button01 > a > .inner01:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#ct_bg .subSection01:not(:first-child) {
  margin-top: 100px;
}

#ct_bg .ancList01 + .subSection01 {
  margin-top: 50px;
}

#ct_bg .subSection02 {
  margin-top: 40px;
}
#ct_bg .subSection02:first-child,
#ct_bg .heading06 + .subSection02 {
  margin-top: 0;
}

#ct_bg .subSection03 {
  margin-top: 50px;
}
#ct_bg .subSection03:first-child {
  margin-top: 0;
}

#ct_bg .subSection04 {
  margin-top: 60px;
}
#ct_bg .subSection04:first-child,
#ct_bg .bgImg02 + .subSection04 {
  margin-top: 0;
}

#ct_bg .heading01 {
  position: relative;
  background: url(../img/bg_common06.jpg) no-repeat top center / cover;
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
}

#ct_bg .heading01 img.info {
  position: relative;
  top: -1px;
}

#ct_bg .heading02 {
  padding: 10px 10px 5px;
  background-color: #bc0c00;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
}

#ct_bg .heading03 {
  margin: 0 auto;
  max-width: 366px;
}

#ct_bg .heading04 {
  margin: 0 auto;
  width: 54.3%;
}

#ct_bg .heading05 {
  margin-top: 50px;
  padding: 12px 12px 9px;
  background-color: #1f2871;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
}

#ct_bg h2 + section .heading05 {
  margin-top: 20px;
}

#ct_bg .heading06 {
  position: absolute;
  top: -46px;
  left: 50%;
  margin-left: -44.9%;
  padding: 24px 20px;
  width: 89.8%;
  color: #fff;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 3.4rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
}
#ct_bg .heading06::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #CDE0E2 0%, #96A3A8 35.94%, #CDE0E2 69.79%, #96A3A8 100%);
  transform: skew(-10deg);
}
#ct_bg .heading06::after {
  position: absolute;
  top: 4px;
  left: 4px;
  content: "";
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  background: linear-gradient(180deg, #BD0B01 0%, #810800 100%);
  transform: skew(-10deg);
}

#ct_bg .heading06 > .icon01 {
  display: inline-block;
  position: relative;
  z-index: 2;
  padding-left: 68px;
  text-align: left;
}
#ct_bg .heading06 > .icon01::before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -20px;
  content: "";
  width: 50px;
  height: 40px;
  background: no-repeat 0 0 / cover;
}
#ct_bg .heading06 > .icon01.type01::before {
  background-image: url(../img/icon_common04.svg);
}
#ct_bg .heading06 > .icon01.type02::before {
  background-image: url(../img/icon_common05.svg);
}
#ct_bg .heading06 > .icon01.type03::before {
  background-image: url(../img/icon_common06.svg);
}
#ct_bg .heading06 > .icon01.type04::before {
  background-image: url(../img/icon_common07.svg);
}
#ct_bg .heading06 > .icon01.type05::before {
  background-image: url(../img/icon_common08.svg);
}

#ct_bg .heading07 {
  padding: 5px 10px;
  background-color: #BC0C00;
  color: #fff;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.4rem;
  font-weight: 800;
  text-align: center;
}
#ct_bg .heading07.type02 {
  background-color: #00A3E9;
}

#ct_bg .heading08 {
  display: inline;
  position: relative;
  margin-top: 5px;
  background: linear-gradient(transparent 70%, #FFF000 0%);
  color: #1F2871;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 3.0rem;
  font-weight: 800;
}

#ct_bg .day01 {
  margin-top: 20px;
  text-align: right;
}

#ct_bg .btn01 {
  display: table;
  margin-top: 20px;
  min-width: 200px;
}

#ct_bg .btn01.center {
  margin-right: auto;
  margin-left: auto;
}

#ct_bg .btn01 > a {
  position: relative;
  display: block;
  padding: 12px 20px 10px;
  border: #229edb solid 2px;
  border-radius: 5px;
  background: linear-gradient(to bottom, #62c6f0 0%, #209dda 100%);
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  transition: all 0.6s;
}

#ct_bg .btn01 > a:hover {
  border-color: #ff5400;
  transition: all 0.3s;
}

#ct_bg .btn01 > a > .inner01 {
  position: relative;
  z-index: 5;
}

#ct_bg .btn01 > a:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, #ffae00 0%, #ff5400 100%);
  opacity: 0;
  transition: all 0.6s;
  border-radius: 2px;
}

#ct_bg .btn01.type03 > a:before {
  border-radius: 6px;
}

#ct_bg .btn01 > a:hover:before {
  opacity: 1;
  transition: all 0.3s;
}

#ct_bg .btn01.pdf > a > .inner01 {
  padding-left: 27px;
}

#ct_bg .btn01.pdf > a > .inner01:after {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 21px;
  height: 26px;
  background: url(../img/icon_common02.png) no-repeat 0 0 / 100%;
}

#ct_bg .btn01.type03 {
  margin-top: 10px;
}

#ct_bg .btn01.type03 a {
  font-family: 'M PLUS 1', sans-serif;
  font-size: 3rem;
  border-radius: 10px;
  border-width: 3px;
  display: inline-block;
}

#ct_bg .btn02 {
  margin: 20px auto 0;
  max-width: 165px;
}

#ct_bg .btn02.left {
  margin-left: 0;
}

#ct_bg .btn02 > a {
  position: relative;
  display: block;
}

#ct_bg .btn02 > a:after {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: url(../img/btn_common02_on.png) no-repeat 0 0 / 100%;
  opacity: 0;
  transition: all 0.6s;
}

#ct_bg .btn02 > a.reserve:before,
#ct_bg .btn02 > a.waiting:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}

#ct_bg .btn02 > a.reserve:after,
#ct_bg .btn02 > a.waiting:after {
  opacity: 0;
  transition: all 0.6s;
}

#ct_bg .btn02 > a.reserve:before {
  background-image: url(../img/btn_common03_no.png);
}
#ct_bg .btn02 > a.reserve:after {
  background-image: url(../img/btn_common03_on.png);
}
#ct_bg .btn02 > a.waiting:before {
  background-image: url(../img/btn_common04_no.png);
}
#ct_bg .btn02 > a.waiting:after {
  background-image: url(../img/btn_common04_on.png);
}

#ct_bg .btn02 > a:hover:after {
  opacity: 1;
  transition: all 0.3s;
}

#ct_bg .btn03 {
  margin: 50px auto 0;
  max-width: 320px;
}

#ct_bg .btn03 > a {
  position: relative;
  display: block;
}

#ct_bg .btn03 > a:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: no-repeat 0 0 / 100%;
  opacity: 0;
  transition: all 0.6s;
}

#ct_bg .btn03 > a:hover:before {
  opacity: 1;
  transition: all 0.3s;
}
#ct_bg .btn03.type01 > a:before {
  background-image: url(../../img/btn_index04_on.png);
}
#ct_bg .btn03.type02 > a:before {
  background-image: url(../../img/btn_index05_on.png);
}
#ct_bg .btn03.type03 > a:before {
  background-image: url(../../img/btn_index30_on.png);
}
#ct_bg .btn03.type04 > a:before {
  background-image: url(../../img/btn_index68_on.png);
}

#ct_bg .btn04 {
  margin: 50px auto 0;
  text-align: center;
}

#ct_bg .btn04 > a {
  border: 2px solid #bc0c00;
  display: inline-block;
  width: 100%;
  padding: 12px 20px 10px;
  border-radius: 5px;
  background: #fff;
  color: #bc0c00;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  transition: all 0.6s;
}

#ct_bg .btn04 > a:hover {
  border: 2px solid #ff5400;
  color: #ff5400;
}

#ct_bg .btn05 {
  position: relative;
  margin-top: 50px;
  text-align: center;
}

#ct_bg .btn05 > a {
  display: table;
  position: relative;
  margin: 0 auto;
  padding: 20px 50px;
  border-radius: 10px;
  background: linear-gradient(180deg, #00A3E9 0%, #1F2871 100%);
  box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.10);
  color: #fff;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.4rem;
  font-weight: 800;
  cursor: pointer;
  line-height: 1.2;
  text-decoration: none;
  text-align: center;
  transition: all .3s;
}
#ct_bg .btn05 > a::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 10px;
  background: linear-gradient(180deg, #1F2871 0%, #00A3E9 100%);
  transition: opacity .3s;
  opacity: 0;
}
#ct_bg .btn05 > a:hover::after {
  opacity: 1.0;
}

#ct_bg .btn05 > a > .inner01 {
  display: block;
  position: relative;
  z-index: 3;
  padding-left: 30px;
  text-align: left;
}
#ct_bg .btn05 > a > .inner01::before {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 10px;
  border-color: transparent transparent transparent #ffffff;
}

#ct_bg .btn06 {
  margin-top: 10px;
}

#ct_bg .btn06 > a {
  position: relative;
  display: table;
  padding: 12px 20px 10px;
  border: #229edb solid 2px;
  border-radius: 5px;
  background: linear-gradient(to bottom, #62c6f0 0%, #209dda 100%);
  color: #fff;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 1.8rem;
  font-weight: 800;
  text-decoration: none;
  transition: all 0.6s;
}
#ct_bg .btn06 > a::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 3px;
  background: linear-gradient(180deg, #229EDB 0%, #62C6F0 100%);
  box-sizing: border-box;
  opacity: 0;
  transition: opacity .3s;
}
#ct_bg .btn06 > a:hover {
  border: 2px solid #229EDB;
}
#ct_bg .btn06 > a:hover::after {
  opacity: 1.0;
}

#ct_bg .btn06 > a > .inner01 {
  display: block;
  position: relative;
  z-index: 3;
  padding-left: 27px;
}

#ct_bg .btn06 > a > .inner01::after {
  position: absolute;
  top: 50%;
  left: 0;
  content: '';
  margin-top: -13px;
  width: 21px;
  height: 26px;
  background: url(../img/icon_common02.png) no-repeat 0 0 / 100%;
}


#ct_bg .btn07 {
  margin-top: 30px;
}

#ct_bg .btn07 > a {
  position: relative;
  display: block;
  padding: 15px 20px;
  border: #CC331F solid 2px;
  border-radius: 5px;
  background: linear-gradient(180deg, #F0D162 0%, #E61911 100%);
  color: #fff;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.6rem;
  font-weight: 800;
  text-align: center;
  text-shadow: 2px 2px 0 #CC331F, -2px -2px 0 #CC331F, -2px 2px 0 #CC331F, 2px -2px 0 #CC331F, 0px 2px 0 #CC331F, 0 -2px 0 #CC331F, -2px 0 0 #CC331F, 2px 0 0 #CC331F;
  text-decoration: none;
  transition: all 0.6s;
}
#ct_bg .btn07 > a::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 3px;
  background: linear-gradient(180deg, #E61911 0%, #F0D162 100%);
  box-sizing: border-box;
  opacity: 0;
  transition: opacity .3s;
}
#ct_bg .btn07 > a:hover::after {
  opacity: 1.0;
}

#ct_bg .btn07 > a > .inner01 {
  position: relative;
  z-index: 3;
  padding-left: 54px;
}

#ct_bg .btn07 > a > .inner01::after {
  position: absolute;
  top: 50%;
  left: 0;
  content: '';
  transform: translateY(-50%);
  width: 34px;
  height: 35px;
  background: url(../img/icon_common11.svg) no-repeat 0 0 / 100%;
}
#ct_bg .btn07 > a > .inner01.reserve::after {
  width: 30px;
  height: 31px;
  background: url(../img/icon_common12.svg) no-repeat 0 0 / 100%;
}
#ct_bg .btn07 > a > .inner01.waiting::after {
  width: 40px;
  height: 30px;
  background: url(../img/icon_common13.svg) no-repeat 0 0 / 100%;
}

#ct_bg .btn08 {
  display: table;
  min-width: 200px;
}

#ct_bg .btn08 > a {
  position: relative;
  display: block;
  padding: 12px 20px 10px;
  border: #1F2871 solid 2px;
  border-radius: 10px;
  background: linear-gradient(to bottom, #fff 0%, #BBE3FA 100%);
  color: #1F2871;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  transition: all 0.6s;
}

#ct_bg .btn08 > a:hover {
  border-color: #1F2871;
  transition: all 0.3s;
}

#ct_bg .btn08 > a > .inner01 {
  position: relative;
  z-index: 5;
}

#ct_bg .btn08 > a:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, #BBE3FA 0%, #fff 100%);
  opacity: 0;
  transition: all 0.6s;
  border-radius: 10px;
}

#ct_bg .btn08 > a:hover:before {
  opacity: 1;
  transition: all 0.3s;
}

#ct_bg .btn08 > a > .inner01 {
  padding-left: 20px;
}

#ct_bg .btn08 > a > .inner01:after {
  display: block;
  position: absolute;
  top: 7px;
  left: 0;
  content: '';
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 12px solid #1F2871;
  transform: rotate(0deg);
}

.btnWrap02 {
  max-width: 692px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin:30px auto 0;
}
.btnWrap02 > .btn08 {
  width: 48%;
}

#ct_bg .bnr01 {
  margin: 100px auto 0;
  max-width: 550px;
}

#ct_bg .bnr02 {
  margin: 40px auto 0;
  max-width: 490px;
}

#ct_bg .bnr03 {
  margin-top: 100px;
  width: 49%;
}
#ct_bg .bnr03:nth-child(n + 3) {
  margin-top: 30px;
}

#ct_bg .bnr04 {
  margin-bottom: 20px;
}

#ct_bg .bnr05 {
  margin: 0 auto;
  max-width: 690px;
}

#ct_bg .bnr06 {
  max-width: 490px;
  margin: 50px auto 0;
}

#ct_bg .btn03 + .bnr01,
#ct_bg .wrap01 + .bnr01 {
  margin-top: 50px;
}

#ct_bg .txt01:not(:first-child) {
  margin-top: 20px;
}

#ct_bg .txt02 {
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.01rem;
  font-weight: bold;
  color: #1f2871;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0-1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
}

#ct_bg .txt03 {
  font-size: 1.4rem;
  text-align: center;
  margin-top: 50px;
}

#ct_bg .txt04 {
  font-family: 'M PLUS 1', sans-serif;
  font-size: 4rem;
  font-weight: bold;
  color: #bc0c00;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0-1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
  text-align: center;
}

#ct_bg .txt05 {
  margin-top: 10px;
  color: #1f2871;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.01rem;
  font-weight: bold;
  text-align: center;
}

#ct_bg .txt06 {
  margin-top: 20px;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.01rem;
  font-weight: bold;
  color: #1f2871;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0-1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
  text-align: center;
}

#ct_bg .txt07 {
  margin-top: 10px;
}

#ct_bg .frameArea01.type02 .txt06 {
  color: #fff;
  text-shadow: #1f2871 2px 0px, #1f2871 -2px 0px, #1f2871 0px -2px, #1f2871 0px 2px, #1f2871 2px 2px, #1f2871 -2px 2px, #1f2871 2px -2px, #1f2871 -2px -2px, #1f2871 1px 2px, #1f2871 -1px 2px, #1f2871 1px -2px, #1f2871 -1px -2px, #1f2871 2px 1px, #1f2871 -2px 1px, #1f2871 2px -1px, #1f2871 -2px -1px;
}

#ct_bg .txt08 {
  margin-top: 30px;
  font-weight: bold;
  color: #1f2871;
}
#ct_bg .txt01.colorW,
#ct_bg .txt03.colorW {
  color: #ffffff;
}
#ct_bg.mightymovie .colorW {
  text-shadow:
       0px 0px 3px #000,
       0px 0px 3px #000,
       0px 0px 3px #000,
       0px 0px 3px #000,
       0px 0px 3px #000;
}

#ct_bg .txt09 {
  margin: 20px auto 0;
  text-align: center;
}

#ct_bg .list01,
#ct_bg .list03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

#ct_bg .list01 > li {
  margin-top: 50px;
  width: 49%;
}

#ct_bg .list01 > li:nth-child(even) {
  margin-left: 2%;
}

#ct_bg .list01 > li > .text01 {
  margin-top: 20px;
}

#ct_bg .list01 > li > .text01 > .icon01 {
  display: inline-block;
  margin-right: 8px;
  width: 54px;
  vertical-align: middle;
}

#ct_bg .list02 > dt {
  position: relative;
  margin-top: 20px;
  padding-left: 50px;
  min-height: 30px;
}

#ct_bg .list02 > dt:before {
  position: absolute;
  top: -6px;
  left: 0;
  content: '';
  width: 41px;
  height: 33px;
  background: url(../../qa/img/txt_index01.png) no-repeat 0 0 / 100%;
}

#ct_bg .list02 > dd {
  position: relative;
  margin-top: 30px;
  padding: 0 0 20px 50px;
  min-height: 30px;
  border-bottom: #abb6ba solid 1px;
}

#ct_bg .list02 > dd:before {
  position: absolute;
  top: -4px;
  left: 0;
  content: '';
  width: 39px;
  height: 32px;
  background: url(../../qa/img/txt_index02.png) no-repeat 0 0 / 100%;
}

#ct_bg .list03 > li {
  margin-top: 20px;
  width: 49%;
}

#ct_bg .list03 > li:nth-child(even) {
  margin-left: 2%;
}

#ct_bg .list04 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 35px;
}

#ct_bg .list04 > li {
  margin: 15px 0 0 2%;
  width: 32%;
}

#ct_bg .list04 > li:nth-child(3n + 1) {
  margin-left: 0;
}

#ct_bg .list04 > li > a {
  display: block;
  position: relative;
}

#ct_bg .list04 > li > a .new {
  position: absolute;
  top: -3.5%;
  left: 10%;
  width: 24.6875%;
}
#ct_bg .list04 > li > a:hover .new {
  opacity: 0.8;
  transition: all 0.6s;
}

#ct_bg .list04 > li > a:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: no-repeat 0 0 / 100%;
  opacity: 0;
  transition: all 0.6s;
}
#ct_bg .list04 > li.button01 > a:before {
  background-image: url(../../img/btn_index01_on.png);
}
#ct_bg .list04 > li.button02 > a:before {
  background-image: url(../../img/btn_index02_on.png);
}
#ct_bg .list04 > li.button03 > a:before {
  background-image: url(../../img/btn_index03_on.png);
}
#ct_bg .list04 > li.button04 > a:before {
  background-image: url(../../img/btn_index06_on.png);
}
#ct_bg .list04 > li.button05 > a:before {
  background-image: url(../../img/btn_index09_on.png);
}
#ct_bg .list04 > li.button06 > a:before {
  background-image: url(../../img/btn_index07_on.png);
}
#ct_bg .list04 > li.button07 > a:before {
  background-image: url(../../img/btn_index08_on.png);
}
#ct_bg .list04 > li.button08 > a:before {
  background-image: url(../../img/btn_index10_on.png);
}
#ct_bg .list04 > li.button09 > a:before {
  background-image: url(../../img/btn_index11_on.png);
}
#ct_bg .list04 > li.button10 > a:before {
  background-image: url(../../img/btn_index12_on.png);
}
#ct_bg .list04 > li.button10 > a:before {
  background-image: url(../../img/btn_index12_on.png);
}
#ct_bg .list04 > li.button11 > a:before {
  background-image: url(../../img/btn_index13_on.png);
}
#ct_bg .list04 > li.button12 > a:before {
  background-image: url(../../img/btn_index14_on.png);
}
#ct_bg .list04 > li.button13 > a:before {
  background-image: url(../../img/btn_index15_on.png);
}
#ct_bg .list04 > li.button14 > a:before {
  background-image: url(../../img/btn_index16_on.png);
}
#ct_bg .list04 > li.button15 > a:before {
  background-image: url(../../img/btn_index17_on.png);
}
#ct_bg .list04 > li.button16 > a:before {
  background-image: url(../../img/btn_index18_on.png);
}
#ct_bg .list04 > li.button17 > a:before {
  background-image: url(../../img/btn_index19_on.png);
}
#ct_bg .list04 > li.button18 > a:before {
  background-image: url(../../img/btn_index20_on.png);
}
#ct_bg .list04 > li.button19 > a:before {
  background-image: url(../../img/btn_index21_on.png);
}
#ct_bg .list04 > li.button20 > a:before {
  background-image: url(../../img/btn_index22_on.png);
}
#ct_bg .list04 > li.button21 > a:before {
  background-image: url(../../img/btn_index23_on.png);
}
#ct_bg .list04 > li.button22 > a:before {
  background-image: url(../../img/btn_index24_on.png);
}
#ct_bg .list04 > li.button23 > a:before {
  background-image: url(../../img/btn_index25_on.png);
}
#ct_bg .list04 > li.button24 > a:before {
  background-image: url(../../img/btn_index26_on.png);
}
#ct_bg .list04 > li.button25 > a:before {
  background-image: url(../../img/btn_index27_on.png);
}
#ct_bg .list04 > li.button26 > a:before {
  background-image: url(../../img/btn_index28_on.png);
}
#ct_bg .list04 > li.button27 > a:before {
  background-image: url(../../img/btn_index29_on.png);
}
#ct_bg .list04 > li.button28 > a:before {
  background-image: url(../../img/btn_index43_on.png);
}
#ct_bg .list04 > li.button29 > a:before {
  background-image: url(../../img/btn_index32_on.png);
}
#ct_bg .list04 > li.button30 > a:before {
  background-image: url(../../img/btn_index33_on.png?20220926);
}
#ct_bg .list04 > li.button31 > a:before {
  background-image: url(../../img/btn_index34_on.png);
}
#ct_bg .list04 > li.button32 > a:before {
  background-image: url(../../img/btn_index35_on.png);
}
#ct_bg .list04 > li.button33 > a:before {
  background-image: url(../../img/btn_index36_on.png);
}
#ct_bg .list04 > li.button34 > a:before {
  background-image: url(../../img/btn_index37_on.png);
}
#ct_bg .list04 > li.button35 > a:before {
  background-image: url(../../img/btn_index38_on.png);
}
#ct_bg .list04 > li.button36 > a:before {
  background-image: url(../../img/btn_index41_on.png?20220926);
}
#ct_bg .list04 > li.button37 > a:before {
  background-image: url(../../img/btn_index40_on.png);
}
#ct_bg .list04 > li.button38 > a:before {
  background-image: url(../../img/btn_index39_on.png);
}
#ct_bg .list04 > li.button39 > a:before {
  background-image: url(../../img/btn_index42_on.png);
}

/* 20220120更新で追加 */
#ct_bg .list04 > li.button40 > a:before {
  background-image: url(../../img/btn_index44_on.png);
}
#ct_bg .list04 > li.button41 > a:before {
  background-image: url(../../img/btn_index45_on.png);
}
#ct_bg .list04 > li.button42 > a:before {
  background-image: url(../../img/btn_index46_on.png);
}
#ct_bg .list04 > li.button43 > a:before {
  background-image: url(../../img/btn_index47_on.png);
}
#ct_bg .list04 > li.button44 > a:before {
  background-image: url(../../img/btn_index48_on.png);
}
#ct_bg .list04 > li.button45 > a:before {
  background-image: url(../../img/btn_index49_on.png);
}
#ct_bg .list04 > li.button46 > a:before {
  background-image: url(../../img/btn_index50_on.png);
}
#ct_bg .list04 > li.button47 > a:before {
  background-image: url(../../img/btn_index51_on.png);
}
#ct_bg .list04 > li.button48 > a:before {
  background-image: url(../../img/btn_index52_on.png);
}
#ct_bg .list04 > li.button49 > a:before {
  background-image: url(../../img/btn_index53_on.png);
}
#ct_bg .list04 > li.button50 > a:before {
  background-image: url(../../img/btn_index54_on.png);
}
#ct_bg .list04 > li.button51 > a:before {
  background-image: url(../../img/btn_index55_on.png);
}
#ct_bg .list04 > li.button52 > a:before {
  background-image: url(../../img/btn_index56_on.png);
}
#ct_bg .list04 > li.button53 > a:before {
  background-image: url(../../img/btn_index57_on.png);
}
#ct_bg .list04 > li.button54 > a:before {
  background-image: url(../../img/btn_index58_on.png);
}
#ct_bg .list04 > li.button55 > a:before {
  background-image: url(../../img/btn_index59_on.png);
}
#ct_bg .list04 > li.button56 > a:before {
  background-image: url(../../img/btn_index60_on.png);
}
#ct_bg .list04 > li.button57 > a:before {
  background-image: url(../../img/btn_index61_on.png);
}
#ct_bg .list04 > li.button58 > a:before {
  background-image: url(../../img/btn_index62_on.png);
}
#ct_bg .list04 > li.button59 > a:before {
  background-image: url(../../img/btn_index63_on.png);
}
#ct_bg .list04 > li.button60 > a:before {
  background-image: url(../../img/btn_index64_on.png);
}
#ct_bg .list04 > li.button61 > a:before {
  background-image: url(../../img/btn_index65_on.png);
}
#ct_bg .list04 > li.button62 > a:before {
  background-image: url(../../img/btn_index66_on.png);
}
#ct_bg .list04 > li.button63 > a:before {
  background-image: url(../../img/btn_index67_on.png);
}
#ct_bg .list04 > li.button64 > a:before {
  background-image: url(../../img/btn_index69_on.png);
}

#ct_bg .list04 > li > a:hover:before {
  opacity: 1;
  transition: all 0.3s;
}

#ct_bg .list05 > dt:not(:first-child) {
  margin-top: 30px;
}

#ct_bg .list05 > dt > .icon01 {
  display: inline-block;
  margin-left: 10px;
  padding: 2px 5px 0;
  background-color: #bc0c00;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.2;
}

#ct_bg .list05 > dd {
  margin-top: 5px;
}

#ct_bg .list06 > li {
  margin-top: 20px;
}
#ct_bg .list06 > li:first-child {
  margin-top: 0;
}

#ct_bg .list06 > li.btn06 {
  width: 100%;
}

#ct_bg .list06 > li.btn06 > a {
  display: block;
  padding: 10px 10px 10px 20px;
  text-align: left;
}

@media screen and (max-width: 1100px) {
  #ct_bg .list06 > li.btn06 > a {
    font-size: 1.6vw;
  }
}
#ct_bg .list07 {
  display: flex;
  flex-wrap: wrap;
}

#ct_bg .list07 > li {
  position: relative;
  margin: 12px 10px 0 0;
  padding-left: 21px;
  font-family: 'M PLUS 1', sans-serif;
}
#ct_bg .list07 > li::before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  margin-top: -8px;
  width: 16px;
  height: 16px;
  background: url(../img/icon_common10.svg) no-repeat 0 0 / cover;
}

#ct_bg .iframeWrap01 {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

#ct_bg .iframeWrap01:first-child {
  margin-top: 0;
}

#ct_bg .iframeWrap01 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#ct_bg .ancList01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -10px;
}

#ct_bg .ancList01 > li {
  margin: 10px 0 0 2%;
  width: 32%;
}

#ct_bg .ancList01 > li:nth-child(3n + 1) {
  margin-left: 0;
}

#ct_bg .ancList01 > li > a {
  display: block;
  position: relative;
}

#ct_bg .ancList01 > li > a .new {
  position: absolute;
  top: -10%;
  left: 6%;
  width: 21%;
}

#ct_bg .ancList01 > li > a:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: no-repeat 0 0 / 100%;
  opacity: 0;
  transition: all 0.6s;
}

#ct_bg .ancList01 > li > a:hover:before {
  opacity: 1;
  transition: all 0.3s;
}

#ct_bg .ancList01 > li.button01 > a:before {
  background-image: url(../../lineup/img/btn_index04_on.png);
}
#ct_bg .ancList01 > li.button02 > a:before {
  background-image: url(../../lineup/img/btn_index05_on.png);
}
#ct_bg .ancList01 > li.button03 > a:before {
  background-image: url(../../lineup/img/btn_index06_on.png);
}

#ct_bg .ancList01 > li.button04 > a:before {
  background-image: url(../../lineup/img/btn_index07_on.png);
}
#ct_bg .ancList01 > li.button05 > a:before {
  background-image: url(../../lineup/img/btn_index10_on.png);
}
#ct_bg .ancList01 > li.button06 > a:before {
  background-image: url(../../lineup/img/btn_index08_on.png);
}
#ct_bg .ancList01 > li.button07 > a:before {
  background-image: url(../../lineup/img/btn_index09_on.png);
}
#ct_bg .ancList01 > li.button08 > a:before {
  background-image: url(../../lineup/img/btn_index11_on.png);
}
#ct_bg .ancList01 > li.button09 > a:before {
  background-image: url(../../lineup/img/btn_index12_on.png);
}
#ct_bg .ancList01 > li.button10 > a:before {
  background-image: url(../../lineup/img/btn_index13_on.png);
}
#ct_bg .ancList01 > li.button10 > a:before {
  background-image: url(../../lineup/img/btn_index13_on.png);
}
#ct_bg .ancList01 > li.button11 > a:before {
  background-image: url(../../lineup/img/btn_index14_on.png);
}
#ct_bg .ancList01 > li.button12 > a:before {
  background-image: url(../../lineup/img/btn_index15_on.png);
}
#ct_bg .ancList01 > li.button13 > a:before {
  background-image: url(../../lineup/img/btn_index16_on.png);
}
#ct_bg .ancList01 > li.button14 > a:before {
  background-image: url(../../lineup/img/btn_index17_on.png);
}
#ct_bg .ancList01 > li.button15 > a:before {
  background-image: url(../../lineup/img/btn_index18_on.png);
}
#ct_bg .ancList01 > li.button16 > a:before {
  background-image: url(../../lineup/img/btn_index19_on.png);
}
#ct_bg .ancList01 > li.button17 > a:before {
  background-image: url(../../lineup/img/btn_index20_on.png);
}
#ct_bg .ancList01 > li.button18 > a:before {
  background-image: url(../../lineup/img/btn_movie01_on.png);
}
#ct_bg .ancList01 > li.button19 > a:before {
  background-image: url(../../lineup/img/btn_movie02_on.png);
}
#ct_bg .ancList01 > li.button20 > a:before {
  background-image: url(../../lineup/img/btn_movie03_on.png);
}
#ct_bg .ancList01 > li.button21 > a:before {
  background-image: url(../../lineup/img/btn_movie04_on.png);
}
#ct_bg .ancList01 > li.button22 > a:before {
  background-image: url(../../lineup/img/btn_movie05_on.png);
}
#ct_bg .ancList01 > li.button23 > a:before {
  background-image: url(../../lineup/img/btn_movie06_on.png);
}
#ct_bg .ancList01 > li.button24 > a:before {
  background-image: url(../../lineup/img/btn_movie07_on.png);
}
#ct_bg .ancList01 > li.button25 > a:before {
  background-image: url(../../lineup/img/btn_index21_on.png);
}
#ct_bg .ancList01 > li.button26 > a:before {
  background-image: url(../../lineup/img/btn_index22_on.png);
}
#ct_bg .ancList01 > li.button27 > a:before {
  background-image: url(../../lineup/img/btn_index35_on.png);
}
#ct_bg .ancList01 > li.button28 > a:before {
  background-image: url(../../lineup/img/btn_index24_on.png);
}
#ct_bg .ancList01 > li.button29 > a:before {
  background-image: url(../../lineup/img/btn_index25_on.png);
}
#ct_bg .ancList01 > li.button30 > a:before {
  background-image: url(../../lineup/img/btn_index26_on.png);
}
#ct_bg .ancList01 > li.button31 > a:before {
  background-image: url(../../lineup/img/btn_index27_on.png);
}
#ct_bg .ancList01 > li.button32 > a:before {
  background-image: url(../../lineup/img/btn_index28_on.png);
}
#ct_bg .ancList01 > li.button33 > a:before {
  background-image: url(../../lineup/img/btn_index29_on.png);
}
#ct_bg .ancList01 > li.button34 > a:before {
  background-image: url(../../lineup/img/btn_index30_on.png);
}
#ct_bg .ancList01 > li.button35 > a:before {
  background-image: url(../../lineup/img/btn_index33_on.png);
}
#ct_bg .ancList01 > li.button36 > a:before {
  background-image: url(../../lineup/img/btn_index32_on.png);
}
#ct_bg .ancList01 > li.button37 > a:before {
  background-image: url(../../lineup/img/btn_index31_on.png);
}
#ct_bg .ancList01 > li.button38 > a:before {
  background-image: url(../../lineup/img/btn_index34_on.png);
}
#ct_bg .ancList01 > li.button39 > a:before {
  background-image: url(../../lineup/img/btn_index36_on.png);
}
#ct_bg .ancList01 > li.button40 > a:before {
  background-image: url(../../lineup/img/btn_index37_on.png);
}
#ct_bg .ancList01 > li.button41 > a:before {
  background-image: url(../../lineup/img/btn_index38_on.png);
}
#ct_bg .ancList01 > li.button42 > a:before {
  background-image: url(../../lineup/img/btn_index39_on.png);
}
#ct_bg .ancList01 > li.button43 > a:before {
  background-image: url(../../lineup/img/btn_index40_on.png);
}
#ct_bg .ancList01 > li.button44 > a:before {
  background-image: url(../../lineup/img/btn_index41_on.png);
}
#ct_bg .ancList01 > li.button45 > a:before {
  background-image: url(../../lineup/img/btn_index42_on.png);
}
#ct_bg .ancList01 > li.button46 > a:before {
  background-image: url(../../lineup/img/btn_index43_on.png);
}
#ct_bg .ancList01 > li.button47 > a:before {
  background-image: url(../../lineup/img/btn_index44_on.png);
}
#ct_bg .ancList01 > li.button48 > a:before {
  background-image: url(../../lineup/img/btn_index45_on.png);
}
#ct_bg .ancList01 > li.button49 > a:before {
  background-image: url(../../lineup/img/btn_index46_on.png);
}
#ct_bg .ancList01 > li.button50 > a:before {
  background-image: url(../../lineup/img/btn_index47_on.png);
}
#ct_bg .ancList01 > li.button51 > a:before {
  background-image: url(../../lineup/img/btn_index48_on.png);
}
#ct_bg .ancList01 > li.button52 > a:before {
  background-image: url(../../lineup/img/btn_index49_on.png);
}
#ct_bg .ancList01 > li.button53 > a:before {
  background-image: url(../../lineup/img/btn_movie02_01_on.png);
}
#ct_bg .ancList01 > li.button54 > a:before {
  background-image: url(../../lineup/img/btn_movie02_02_on.png);
}
#ct_bg .ancList01 > li.button55 > a:before {
  background-image: url(../../lineup/img/btn_movie02_03_on.png);
}
#ct_bg .ancList01 > li.button56 > a:before {
  background-image: url(../../lineup/img/btn_movie02_04_on.png);
}
#ct_bg .ancList01 > li.button57 > a:before {
  background-image: url(../../lineup/img/btn_movie02_05_on.png);
}
#ct_bg .ancList01 > li.button58 > a:before {
  background-image: url(../../lineup/img/btn_movie02_06_on.png);
}
#ct_bg .ancList01 > li.button59 > a:before {
  background-image: url(../../lineup/img/btn_movie02_07_on.png);
}
#ct_bg .ancList01 > li.button60 > a:before {
  background-image: url(../../lineup/img/btn_movie02_08_on.png);
}
#ct_bg .ancList01 > li.button61 > a:before {
  background-image: url(../../lineup/img/btn_movie02_09_on.png);
}
#ct_bg .ancList01 > li.button62 > a:before {
  background-image: url(../../lineup/img/btn_movie02_10_on.png);
}

#ct_bg .releaseTxt01 {
  padding: 10px;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
}
#ct_bg .releaseTxt01.type01 {
  background-color: #bc0c00;
}
#ct_bg .releaseTxt01.type02 {
  background-color: #209cd9;
}
#ct_bg .releaseTxt01.type03 {
  background-color: #007d11;
}
#ct_bg .releaseTxt01.type04 {
  background-color: #666;
}
#ct_bg .releaseTxt01.type05 {
  background-color: #1f2871;
}

#ct_bg .col01 {
  margin: 50px 0 0 2%;
  width: 32%;
  background-color: #fff;
  position: relative;
}

#ct_bg .col01 .new {
  position: absolute;
  top: -2.5%;
  left: 5%;
  width: 24.6875%;
  z-index: 1000;
}

#ct_bg .col01:nth-child(3n + 1) {
  margin-left: 0;
}
#ct_bg .col01:nth-child(1),
#ct_bg .col01:nth-child(2),
#ct_bg .col01:nth-child(3) {
  margin-top: 20px;
}

#ct_bg .col01 .bx-wrapper {
  padding: 10px;
  background-color: #fff;
}

#ct_bg .col01 > .inner01 {
  padding: 20px 10px;
  background-color: #fff;
}

#ct_bg .col01 > .inner01 > .title01 {
  display: inline;
  background: linear-gradient(transparent 70%, #fff000 0%);
  color: #1f2871;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.01rem;
  font-weight: bold;
}

#ct_bg .col01 .image02 {
  padding: 10px;
  background-color: #fff;
}

#ct_bg .col02 {
  margin-top: 50px;
  width: 66%;
}

#ct_bg .wrap01:first-child .col02,
#ct_bg .wrap01:first-child .col03 {
  margin-top: 0;
}
#ct_bg .txt02 + .wrap01 > .col02,
#ct_bg .txt02 + .wrap01 > .col03 {
  margin-top: 20px;
}

#ct_bg .col02 > .image01 {
  position: relative;
  margin-top: 10px;
  padding: 10px;
  background-color: #fff;
}

#ct_bg .col02 > .image01:first-child {
  margin-top: 0;
}

#ct_bg .col02 > .image01 .new {
  position: absolute;
  display: inline-block;
  top: -15px;
  left: 2.5%;
  width: 12.12%;
  z-index: 50;
}

#ct_bg .col03 {
  margin-top: 50px;
  width: 32%;
}

#ct_bg .col03 > .inner01 {
  padding: 20px 10px;
  background-color: #fff;
}

#ct_bg .col03 > .inner01 > .title01 {
  display: inline;
  background: linear-gradient(transparent 70%, #fff000 0%);
  color: #1f2871;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.1rem;
  font-weight: bold;
}

#ct_bg .col03 > .button01 {
  margin: 10px auto 0;
}

#ct_bg .col03 > .button01:first-child {
  margin-top: 0;
}

#ct_bg .col04 {
  margin-top: 50px;
  width: 49%;
}

#ct_bg .col05 {
  margin: 30px 0 0 2%;
  width: 32%;
}

#ct_bg .col05:nth-child(3n + 1) {
  margin-left: 0;
}
#ct_bg .col05:nth-child(1),
#ct_bg .col05:nth-child(2),
#ct_bg .col05:nth-child(3) {
  margin-top: 20px;
}

#ct_bg .col05 > .inner02 {
  height: 100%;
  padding: 20px;
  background-color: #e4f8ff;
}

#ct_bg .col05 > .inner02 > .title01 {
  text-align: center;
}

#ct_bg .col05 > .inner02 > ul > li {
  padding-left: 15px;
  font-size: 1.5rem;
}

#ct_bg .col05 > .inner02 > ul {
  margin-top: 10px;
}

#ct_bg .col05 > .inner02 > ul > li:not(:first-child) {
  margin-top: 2px;
}

#ct_bg .col05 > .inner02 > ul > li::before {
  top: 0.5em;
}

#ct_bg .col06 {
  margin: 30px auto 0;
  width: 70%;
}

#ct_bg .col06 > .text01 {
  display: inline;
  background: linear-gradient(transparent 70%, #fff000 0%);
  color: #1f2871;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
}

#ct_bg .col07 {
  margin: 50px 0 0 2%;
  width: 49%;
  background: #fff;
}

#ct_bg .col07 .bx-wrapper {
  padding: 10px;
  background: #fff;
}

#ct_bg .col07:nth-child(odd) {
  margin-left: 0;
}

#ct_bg .col07:nth-child(1),
#ct_bg .col07:nth-child(2) {
  margin-top: 20px;
}

#ct_bg .col07 > .inner01 {
  padding: 20px 10px;
  background-color: #fff;
}

#ct_bg .col07 > .inner01 > .title01 {
  display: inline;
  background: linear-gradient(transparent 70%, #fff000 0%);
  color: #1f2871;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.01rem;
  font-weight: bold;
}

#ct_bg .col08 {
  width: 47.9%;
}

#ct_bg .col08 > .text01 {
  display: inline-block;
  margin-right: 10px;
  width: 80px;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.0rem;
  font-weight: 800;
}

#ct_bg .col09 {
  width: 45.1%;
}

#ct_bg .col10 {
  width: 50.4%;
}

#ct_bg .col11 {
  width: 450px;
}
#ct_bg .col11 > .text01 {
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.8rem;
  font-weight: 800;
}

#ct_bg .col12 {
  margin-right: 50px;
  width: 200px;
}

#ct_bg .col13 {
  margin-top: 20px;
  width: 52%;
}

#ct_bg .col13 > .text01 {
  margin-top: 10px;
  font-size: 1.2rem;
}

#ct_bg .col14 {
  margin-top: 20px;
  width: 44.7%;
}

#ct_bg .col14 > .text01 {
  margin-top: 10px;
}
#ct_bg .col14 > .text01:first-child {
  margin-top: 0;
}

#ct_bg .col14 > .text01 + .btn06 {
  margin-top: 30px;
}

#ct_bg .col14 > .text02 {
  margin-top: 10px;
  font-size: 1.4rem;
}

#ct_bg .col14 > .text03 {
  margin-top: 10px;
  font-size: 1.2rem;
}
#ct_bg .col14 > .text03:first-child {
  margin-top: 0;
}

#ct_bg .column01 {
  margin-top: 20px;
}

#ct_bg .column01 > .text01 {
  display: inline-block;
  margin-right: 10px;
  width: 100px;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.0rem;
  font-weight: 800;
}

#ct_bg .window01 {
  padding: 15px;
  width: calc(100% - 120px);
  border: #ccc 3px solid;
  border-radius: 8px;
  background-color: #fff;
  font-family: inherit;
  font-size: 1.6rem;
}

#ct_bg .selectGroup01 {
  position: relative;
  display: inline-block;
  width: calc(100% - 100px);
  border: #ccc 3px solid;
  border-radius: 8px;
  cursor: pointer;
}
#ct_bg .selectGroup01::after {
  position: absolute;
  top: 50%;
  right: 15px;
  content: "";
  margin-top: -5px;
  width: 12px;
  height: 10px;
  background: url(../img/icon_common09.svg) no-repeat 0 0 / cover;
  pointer-events: none;
}

#ct_bg .select01 {
  position: relative;
  padding: 15px 41px 15px 15px;
  width: 100%;
  color: inherit;
  font-family: inherit;
  font-size: 1.6rem;
  cursor: pointer;
}

#ct_bg .formButton01 {
  position: relative;
  margin: 20px auto 0;
  width: 333px;
  border-radius: 10px;
  background: linear-gradient(180deg, #00A3E9 0%, #1F2871 100%);
  box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.10);
}
#ct_bg .formButton01::before {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50px;
  transform: translateY(-50%);
  content: "";
  width: 33px;
  height: 31px;
  background: url(../img/icon_common05.svg) no-repeat 0 0 / cover;
}

#ct_bg .formButton01::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 10px;
  background: linear-gradient(180deg, #1F2871 0%, #00A3E9 100%);
  transition: opacity .3s;
  opacity: 0;
}
#ct_bg .formButton01:hover::after {
  opacity: 1.0;
}

#ct_bg .formButton01 input {
  position: relative;
  z-index: 2;
  display: block;
  margin: 0 auto;
  padding: 20px 50px 25px 100px;
  width: 100%;
  color: #fff;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.4rem;
  font-weight: 800;
  cursor: pointer;
  line-height: 1.2;
  text-decoration: none;
  text-align: center;
  transition: all .3s;
}

#ct_bg .topMovie01 {
  max-width: 1000px;
  margin: 30px auto 0;
}

/* 20220120更新で追加 */
#ct_bg #anc44 .bgp10,
#ct_bg #anc45 .bgp10 {
  padding: 10px;
  background-color: #fff;
  margin-top: 20px;
}
#ct_bg #anc44 .col02 {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  #ct_bg #anc44 .bgp10,
  #ct_bg #anc45 .bgp10 {
    padding: 5px;
  }
  #ct_bg #anc44 .releaseTxt01,
  #ct_bg #anc45 .releaseTxt01 {
    font-size: 1.2rem;
  }
}

#ct_bg .infoArea01 {
  position: relative;
  padding: 30px 0 20px;
  background-color: #00A3E9;
  box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.20);
}
#ct_bg .infoArea01 > .title01 {
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
  padding: 5px 30px;
  border-radius: 5px;
  background-color: #00A3E9;
  color: #FFF;
  text-align: center;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.8rem;
  font-weight: 800;
  line-height: 1.4;
}

#ct_bg .infoArea02 {
  position: relative;
  margin: 100px auto 0;
  max-width: 1060px;
  padding: 20px;
  border: 10px solid #1F2871;
  background-color: #fff;
  box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.20);
}
#ct_bg .infoArea02 > .title01 {
  position: absolute;
  top: -50px;
  left: -10px;
  padding: 5px 30px;
  border-radius: 5px;
  background-color: #1F2871;
  color: #FFF;
  text-align: center;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.8rem;
  font-weight: 800;
  line-height: 1.4;
}

#ct_bg .slider02 {
  max-width: 610px;
  margin: 0 auto;
}
#ct_bg .slider02 .slick-list {
  overflow: visible;
}

#ct_bg .slider02 .slick-slide {
  position: relative;
  margin-left: 5px;
  margin-right: 5px;
}

#ct_bg .slider02 .slick-slide a {
  position: relative;
  display: block;
}
#ct_bg .slider02 .item01 {
  border: 2px solid #fff;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}
#ct_bg .slider02 .slick-slide a::before {
  opacity: 0;
}

#ct_bg .slider02 .slick-slide a::after {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(255,255,255,.5);
  transition: opacity .5s;
  opacity: 0;
  content: "";
}

#ct_bg .slider02 .slick-slide a:hover::after {
  opacity: 1.0;
}

#ct_bg .slider02 .slick-arrow {
  position: absolute;
  z-index: 2;
  top: 50%;
  width: 42px;
  height: 42px;
  padding: 0;
  margin-top: -5px;
  border: none;
  box-sizing: border-box;
}

#ct_bg .slider02 .slick-arrow:before {
  content: "";
}

#ct_bg .slider02 .slick-arrow.slick-prev {
  left: -20px;
  background: url(../../img/prev_btn02_off.png) no-repeat 0 0 / cover;
  transition: .5s;
}
#ct_bg .slider02 .slick-arrow.slick-prev:hover {
  background: url(../../img/prev_btn02_on.png) no-repeat 0 0 / cover;
}


#ct_bg .slider02 .slick-arrow.slick-next {
  right: -20px;
  background: url(../../img/next_btn02_off.png) no-repeat 0 0 / cover;
  transition: .5s;
}
#ct_bg .slider02 .slick-arrow.slick-next:hover {
  background: url(../../img/next_btn02_on.png) no-repeat 0 0 / cover;
}

#ct_bg .slider02 .slick-dots {
  display: block;
  height: auto;
  margin-top: 5px;
  position: static;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#ct_bg .slider02 .slick-dots > li {
  width: 40px;
  height: 8px;
  margin-left: 5px;
  margin-right: 5px;
}

#ct_bg .slider02 .slick-dots > li > button {
  width: 100%;
  height: 100%;
  display: block;
  padding: 0;
  background-color: #fff;
  transition: background .3s;
}

#ct_bg .slider02 .slick-dots > li > button:hover {
  background-color: #fff000;
}

#ct_bg .slider02 .slick-dots > li.slick-active > button {
  background-color: #fff000;
}

#ct_bg .slider02 .slick-dots > li > button::before {
  content: none;
}

#ct_bg .slider02 .slick-dots > li > button:not(:first-child) {
  display: none;
}

#ct_bg .slideArea02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 20px;
}

#ct_bg .slider03 {
  margin-top: 3px;
  width: 83.3%;
}

#ct_bg .slider03 .item01 .image01 a {
  transition: opacity .3s;
}
#ct_bg .slider03 .item01 .image01 a:hover {
  opacity: .6;
}

#ct_bg .slider03 .item01 .text01 {
  margin-top: 10px;
}

#ct_bg .slider03thum {
  width: 15.6%;
}

#ct_bg .slider03thum .draggable {
  overflow: hidden;
}

#ct_bg .slider03thum .slick-arrow {
  position: absolute;
  z-index: 2;
  top: auto;
  left: auto;
  right: auto;
  transform: none;
  width: 100%;
  height: 30px;
  padding: 0;
  border: none;
  box-sizing: border-box;
}

#ct_bg .slider03thum .slick-arrow:before {
  content: "";
}

#ct_bg .slider03thum .slick-arrow.slick-prev {
  bottom: 0;
  background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
  transition: .5s;
}
#ct_bg .slider03thum .slick-arrow.slick-prev::before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  margin: -5px 0 0 -7px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 7px 0 7px;
  border-color: #1f2971 transparent transparent transparent;
  opacity: .5;
  transition: opacity .3s;
}
#ct_bg .slider03thum .slick-arrow.slick-prev:hover::before {
  opacity: 1.0;
}

#ct_bg .slider03thum .slick-arrow.slick-next {
  top: 0;
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
  transition: .5s;
}
#ct_bg .slider03thum .slick-arrow.slick-next::before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  margin: -5px 0 0 -7px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 7px 9px 7px;
  border-color: transparent transparent #1f2971 transparent;
  opacity: .5;
  transition: opacity .3s;
}
#ct_bg .slider03thum .slick-arrow.slick-next:hover::before {
  opacity: 1.0;
}

#ct_bg .thumbnList01 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

#ct_bg .thumbnList01 > li {
  margin: 10px 0 0 2%;
  width: 18.4%;
  cursor: pointer;
  transition: opacity .3s;
}
#ct_bg .thumbnList01 > li:hover {
  opacity: .6;
}
#ct_bg .thumbnList01 > li:nth-child(5n+1) {
  margin-left: 0;
}

#ct_bg .wrapper01 {
  position: relative;
  z-index: 2;
  padding: 100px 20px 50px;
}

#ct_bg .itemSearch01 {
  display: flex;
  flex-wrap: wrap;
}

#ct_bg .itemSearch01 > li {
  margin: 15px 0 0 1%;
  width: 32.6%;
}
#ct_bg .itemSearch01 > li:nth-child(3n+1) {
  margin-left: 0;
}

#ct_bg .itemSearch01 > li > .inner01 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  flex-direction: row-reverse;
  position: relative;
  padding: 6px 6px 6px 13px;
  border-radius: 10px;
  border: 4px solid #1F2871;
  background-color: #00A3E9;
  box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.10);
  text-decoration: none;
  overflow: hidden;
  transition: all .3s;
}
#ct_bg .itemSearch01 > li > a.inner01:hover {
  border-color: #BC0C00;
  background-color: #F06100;
}

#ct_bg .itemSearch01 > li > .inner01::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/bg_common13.png) repeat 0 0 / 10px 10px;
  opacity: .2;
}
#ct_bg .itemSearch01 > li > .inner01 > .text01 {
  position: relative;
  width: calc(100% - 150px);
  color: #fff;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.6;
  text-shadow: 2px 2px 0 #1F2871, -2px -2px 0 #1F2871, -2px 2px 0 #1F2871, 2px -2px 0 #1F2871, 0px 2px 0 #1F2871, 0 -2px 0 #1F2871, -2px 0 0 #1F2871, 2px 0 0 #1F2871;
  transition: text-shadow .3s;
}
#ct_bg .itemSearch01 > li > a.inner01:hover > .text01 {
  text-shadow: 2px 2px 0 #BC0C00, -2px -2px 0 #BC0C00, -2px 2px 0 #BC0C00, 2px -2px 0 #BC0C00, 0px 2px 0 #BC0C00, 0 -2px 0 #BC0C00, -2px 0 0 #BC0C00, 2px 0 0 #BC0C00;
}

#ct_bg .itemSearch01 > li > .inner01 > .image01 {
  position: relative;
  width: 130px;
}

@media screen and (max-width: 1100px) {
  #ct_bg .itemSearch01 > li > .inner01 > .text01 {
    width: 10vw;
    font-size: 2.2vw;
  }
  #ct_bg .itemSearch01 > li > .inner01 > .image01 {
    width: 11.8vw;
  }
}

#ct_bg .goodsList01 {
  display: flex;
  flex-wrap: wrap;
}

#ct_bg .heading06 + .goodsList01 {
  margin-top: -30px;
}

#ct_bg .goodsList01 > li {
  margin: 30px 0 0 2%;
  width: 23.4%;
}
#ct_bg .goodsList01 > li:nth-child(4n+1) {
  margin-left: 0;
}

#ct_bg .goodsList01 > li > a.inner01 {
  display: block;
  text-decoration: none;
}

#ct_bg .goodsList01 > li > .inner01 > .image01 {
  position: relative;
  border: 1px solid #D9D9D9;
}
#ct_bg .goodsList01 > li > .inner01 > .image01::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0;
  transition: all .3s;
}

#ct_bg .goodsList01 > li > a.inner01:hover > .image01::before {
  opacity: .4;
}

#ct_bg .goodsList01 > li > .inner01 > .text01 {
  margin-top: 10px;
  color: #000;
  text-decoration: underline;
  transition: all .3s;
}
#ct_bg .goodsList01 > li > a.inner01:hover > .text01 {
  text-decoration: none;
}

#ct_bg .goodsList02 {
  display: flex;
  flex-wrap: wrap;
  margin-top: -16px;
}

#ct_bg .goodsList02 > li {
  margin: 16px 0 0 1.5%;
  width: 23.8%;
}
#ct_bg .goodsList02 > li:nth-child(4n+1) {
  margin-left: 0;
}

#ct_bg .goodsList02 > li > .inner01 {
  display: block;
  padding: 10px 10px 20px 10px;
  height: 100%;
  box-shadow: 10px 10px 20px 0px rgba(0, 0, 0, 0.10);
  background-color: #fff;
}

#ct_bg .goodsList02 > li > a.inner01 {
  display: block;
  text-decoration: none;
  transition: all .3s;
}
#ct_bg .goodsList02 > li > a.inner01:hover {
  background-color: #FFFCCD;
}

#ct_bg .goodsList02 > li > .inner01 > .image01 {
  position: relative;
}

#ct_bg .goodsList02 > li > .inner01 > .text01 {
  margin-top: 10px;
  color: #000;
  text-decoration: underline;
  transition: all .3s;
}
#ct_bg .goodsList02 > li > .inner01:hover > .text01 {
  text-decoration: none;
}

#ct_bg .infoList01 {
	display: flex;
	flex-wrap: wrap;
  justify-content: space-between;
  padding-right: 10px;
	max-height: 180px;
	overflow-y: auto;
}

#ct_bg .infoList01 > dt {
	margin-top: 20px;
	width: 81px;
  font-size: 1.4rem;
}
#ct_bg .infoList01 > dt:first-child,
#ct_bg .infoList01 > dt:first-child + dd {
  margin-top: 0;
}

#ct_bg .infoList01 > dd {
	margin-top: 20px;
	width: calc(100% - 101px);
  font-size: 1.4rem;
}

#ct_bg .infoList01 > dd > a {
  color: #000;
}
#ct_bg .infoList01 > dd .icon01 {
  display: inline-block;
  margin-right: 10px;
  padding: 1px 5px 0;
  background-color: #BC0C00;
  color: #fff;
  font-size: 1.0rem;
  text-decoration: none;
}

#ct_bg .pagination01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 30px;
}
#ct_bg .pagination01 > li {
  margin: 10px 5px 0;
}
#ct_bg .pagination01 > li > a,
#ct_bg .pagination01 > li > span {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding-bottom: 2px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 2px solid #1F2871;
  background: #FFF;
  color: #1F2871;
  font-family: 'M PLUS 1', sans-serif;
  font-weight: 800;
  line-height: 1.4;
  text-decoration: none;
  transition: all .3s;
}
#ct_bg .pagination01 > li > a:hover,
#ct_bg .pagination01 > li > span {
  background: #1F2871;
  color: #FFF000;
}

#ct_bg .catList01 {
  display: flex;
  flex-wrap: wrap;
  margin-top: -5px;
	max-width: calc(100% - 130px);
}

#ct_bg .catList01 > li {
  margin: 5px 10px 0 0;
}

#ct_bg .catList01 > li > a {
  display: block;
  padding: 5px 10px;
  background-color: #1F2871;
  color: #fff;
  font-family: 'M PLUS 1', sans-serif;
  font-weight: 800;
  transition: all .3s;
}

#ct_bg .catList01 > li > a:hover {
  background-color: #00A3E9;
}

#ct_bg .catchTxt01 {
  margin-top: 15px;
  color: #1F2871;
  font-family: 'M PLUS 1', sans-serif;
  font-size: 2.0rem;
  font-weight: 500;
}

#ct_bg .youtube {
  margin-top: 40px;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
#ct_bg .youtube iframe {
  position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#ct_bg .relationList01 > li {
  margin-top: 10px;
}

#ct_bg .relationList01 > li > a {
  display: block;
  position: relative;
  padding: 15px 15px 15px 40px;
  background: #EDFAFF;
  color: #000;
}
#ct_bg .relationList01 > li > a::before {
  position: absolute;
  top: 1.2em;
  left: 15px;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 10px;
  border-color: transparent transparent transparent #1f2971;
}

#ct_bg .copyrightTxt01 {
  margin-top: 60px;
  font-size: 1.2rem;
}
#ct_bg .copyrightTxt01 + .copyrightTxt01 {
  margin-top: 15px;
}

.modal01 {
  max-width: 100%;
  padding: 30px 40px;
  background-color: fff;
  opacity: 0;
  transition: opacity .3s linear;
  display: none;
}
.fancybox-container .modal01 {
  opacity: 1;
}
.fancybox-close-small {
    width: 64px;
    height: 64px;
    opacity: 1;
	background-color: #eee;
	border-radius: 50px;
	border: 2px solid #fff;
}
.fancybox-close-small:hover {
	opacity: .7;
}
.modal01 p {
	font-size: 1.6rem;
	font-family: Meiryo, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "sans-serif";
	color: #000;
	line-height: 1.5;
}
.modal01 p + p,
.modal01 ul + p {
	margin-top: 20px;
}
.modal01 .txt01 {
	font-size: 2rem;
	font-weight: 800;
}
.modal01 .txt02 {
	background: #eee;
	padding: 15px;
	text-align: center;
}
.modal01 .txt02 > span {
	color: red;
}
.modal01 .txt03 {
	font-size: 1.6rem;
	font-weight: 800;
}
.modal01 .txt03 + ul {
	margin-top: 0;
}
.modal01 .wrap01 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.modal01 .txtCol01 {
	width: 50%;
}
.modal01 .img01 {
	width: 40%;
	max-width: 467px;
	margin: 20px auto 0;
}
.modal01 .img01 > img {	
	width: 100%;
	height: auto;
}
.modal01 ul {
	margin-top: 20px;
	list-style-type: none;
}
.modal01 ul > li {
	position: relative;
	font-size: 1.6rem;
	font-family: Meiryo, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "sans-serif";
	color: #000;
	line-height: 1.5;
	padding-left: 1em;
}
.modal01 ul > li::before {
	content: "・";
	position: absolute;
	left: 0;
	top: 0;
}
.modalBtn01 {
	border: 3px solid #fff100;
    color: red;
    width: auto;
	margin-top: 50px;
    margin-bottom: 20px;
	margin-left: 20px;
	margin-right: 20px;
    padding-top: 10px;
    padding-right: 0;
    padding-bottom: 10px;
    padding-left: 0;
    font-size: 16px;
    background-color: #fffcd1;
    text-align: center;
    font-weight: bold;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
	cursor: pointer;
}
.modalBtn01:hover {
	background-color: #fff;
}
a.modalBtn01 {
	display: block;
}

.popModal01 {
  max-width: 100%;
  background-color: transparent;
  opacity: 0;
  transition: opacity .3s linear;
  display: none;
  overflow: hidden;
}
.fancybox-container .popModal01 {
  opacity: 1;
}
.popModal01In {
  background: #fff;
}
.popModal01In > a > img {
  width: 100%;
  height: 100%;
}
.popModal01 .imgOver01 img {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.popModal01 .imgOver01 a:hover img {
  opacity: 0.6;
}

.popModal01 .fancybox-button {
  padding: 0 !important;
  top: 0;
  right: 0;
}
.popModal01 .fancybox-close-small {
  width: 36px;
  height: 36px;
  opacity: 1;
  background: transparent;
  border: none;
  color: transparent;
}

.popModal01 .fancybox-close-small:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 36px;
  height: 36px;
}

.popModal01 .fancybox-close-small:before {
  background: url("../../img/close_btn01.svg") 0 0 no-repeat;
  background-size: 100%;
  opacity: 1;
  z-index: 2;
  transition: oapcity 0.3s;
}

.popModal01 .fancybox-close-small:hover:before {
  opacity: .7;
}
@media screen and (max-width: 767px) {
  #ct_bg .contents01 {
    padding-top: 56px;
  }
  #ct_bg .mainArea01 {
    padding: 10px 0 55px;
  }
  #ct_bg .mainArea01 .info {
    margin: 0 auto 20px;
    width: 100%;
    padding: 0 3%;
    background: none;
  }
  #ct_bg .mainArea01 .info a{
    padding: 10px 20px;
    display: block;
    background-color: #fffcd1;
    border: solid 3px #fff100;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    line-height: 110%;
    color: red;
    text-decoration: none;
  }
  #ct_bg .slideArea01 {
    padding: 0;
  }
  #ct_bg .slider01 {
    max-width: inherit;
    width: 100%;
  }
  #ct_bg .slider01 .slick-slide {
    margin-left: 5px;
    margin-right: 5px;
  }
  #ct_bg .slider01 .item01 {
    border: 1px solid #fff;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
  }
  #ct_bg .slider01 .slick-slide a:hover::after {
    opacity: 0;
  }
  #ct_bg .slider01 .slick-arrow {
    position: absolute;
    z-index: 2;
    top: 50%;
    width: 48px;
    height: 48px;
    margin-top: -5px;
    border-style: solid;
  }
  #ct_bg .slider01 .slick-arrow.slick-prev {
    left: 0;
  }
  #ct_bg .slider01 .slick-arrow.slick-prev:hover {
    background: url(../../img/prev_btn01_off.png) no-repeat 0 0 / cover;
  }
  #ct_bg .slider01 .slick-arrow.slick-next {
    right: 0;
  }
  #ct_bg .slider01 .slick-arrow.slick-next:hover {
    background: url(../../img/next_btn01_off.png) no-repeat 0 0 / cover;
  }

  #ct_bg .slider01 .slick-dots > li {
    width: 30px;
    height: 4px;
	margin-top: 10px;
    margin-left: 5px;
    margin-right: 5px;
  }
  #ct_bg .slider01 .slick-dots > li > button:hover {
    background-color: #fff;
  }

  #ct_bg .mainArea01 > .image01 {
    margin-top: 25px;
  }

  #ct_bg .mainArea01.type01 {
    padding-top: 6vw;
    padding-left: 0;
    padding-right: 0;
    background-size: contain;
    background-image: url(../../img/bg_index01_sp.png);
  }

  #ct_bg .mainArea01 > .mainInner02 {
    padding: 0 0 50px 0;
  }
  #ct_bg #mainArea02-inView {
    margin-top: 25px;
  }
  #ct_bg .mainCol01 {
    position: static;
    width: 100%;
  }

  #ct_bg .mainCol01.type01 {
    width: 100%;
  }

  #ct_bg .mainCol01 > .button01 {
    margin-top: 15px;
  }

  #ct_bg .mainCol01 > .text01 {
    position: absolute;
    top: 10.666vw;
    right: -2.463%;
    width: 61.884%;
  }

  #ct_bg .mainCol01.type01 > .text01 {
    position: static;
    width: 100%;
    margin-top: 15px;
  }

  #ct_bg .mainArea01 > .mainInner02 > .image01 {
    width: 46%;
    left: auto;
    right: 0;
    top: 61.066vw;
  }

  #ct_bg .mainArea01 > .mainInner02 > .image02 {
    width: 99.42%;
    margin-left: -4%;
    margin-bottom: -52px;
  }
  #ct_bg .mainArea01 > .mainInner01 {
    margin-top: 0px;
  }

  #ct_bg .importantButton01 {
    padding: 0 3.7vw;
  }

  #ct_bg .importantButton01 > a {
    padding: 2.5vw 2.5vw 2.5vw 34px;
    font-size: 1.4rem;
    text-align: left;
  }
  #ct_bg .importantButton01 > a:hover {
    border: 2px solid #FFF000;
    background: #FFFCCD;
  }

  #ct_bg .frameArea01 {
    position: relative;
    padding: 57px 4% 50px;
  }
  #ct_bg .frameArea01.type02 {
    padding: 73px 4% 60px;
  }
  #ct_bg .frameArea01.noPt {
    padding-top: 7px;
  }

  #ct_bg .frameArea01:before {
    height: 7px;
  }
  #ct_bg .frameArea02 {
    padding-right: 4.3%;
    padding-left: 4.3%;
  }

  #ct_bg .frameArea03 {
    padding: 5px;
  }

  #ct_bg .frameArea04 {
    padding: 4.9% 0;
  }

  #ct_bg .frameArea04 > .inner01 {
    padding: 8px 5.2%;
  }

  #ct_bg .frameArea05 {
    padding: 107px 4% 60px;
    background: url(../../img/bg_index03.jpg) no-repeat bottom center / cover;
  }

  #ct_bg .frameArea05:before {
    height: 7px;
  }

  #ct_bg .frameArea06 {
    padding-bottom: 89.8%;
    background-image: url(../../img/bg_index04_sp.png);
  }

  #ct_bg .frameArea06 > .title01 {
    top: -3.8%;
  }

  #ct_bg .frameArea07 {
    top: 11.2%;
    left: 4.3%;
    padding: 5.7% 4%;
    height: 84.1%;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
  }

  #ct_bg .frameArea08 {
    padding: 12px 4% 14px;
  }

  #ct_bg .frameArea08 > .text02 {
    font-size: 1.6rem;
  }

  #ct_bg .frameArea09 {
    margin-top: 40px;
    padding: 15px 10px 10px 15px;
    border: solid 10px #222e76;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2) inset;
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.8) inset;
    min-height: inherit;
    background: #fff url('../../img/bg_index05.png') no-repeat 93.8% 89%;
    background-size: auto 32%;
  }
  #ct_bg .frameArea09 p {
    font-size: 1.6rem;
  }
  #ct_bg .frameArea09 p + p {
    font-size: 1.4rem;
  }

  #ct_bg .frameArea10 > p.text01 {
    font-size: 2.5rem;
  }

  #ct_bg .frameArea10 > p.text01.type01 {
    font-size: 2.01rem;
  }
  #ct_bg .frameArea11 {
    margin-top: 25px;
  }
  #ct_bg .frameArea11 .ttl {
    font-size: 1.4rem;
    padding: 14px;
  }
  #ct_bg .frameArea11 .inner {
    font-size: 1.4rem;
    background-position: bottom 15px right 18px;
  }
  #ct_bg .frameArea12 {
    position: relative;
    margin: 100px auto 0;
    padding: 70px 3.75vw 60px;
    background-color: #fff;
  }
  #ct_bg .frameArea12.type02 {
    padding-top: 30px;
  }

  #ct_bg .frameArea12 > .bgImg01 {
    position: absolute;
    top: -44px;
    right: 4.2px;
    width: 128px;
  }
  #ct_bg .frameArea12 > .bgImg02 {
    position: absolute;
    top: -70px;
    left: 50%;
    transform: translateX(-50%);
    width: 143px;
  }

  #ct_bg .frameArea13 {
    padding: 20px 5.7%;
  }

  #ct_bg .frameArea14 .textArea01 > .taTxt01 > a {
	font-size: 1.8rem;
  }	
  #ct_bg .frameArea14 .textArea01 > .taTxt02 {
	font-size: 1.6rem;
	  text-align: left;
  }
  #ct_bg .frameArea14 .wrap01 > .block01 {
	width: 100%;
  }
  #ct_bg .frameArea14 .wrap01 > .block01 .textArea01 {
	padding: 10px;
  }
  #ct_bg .frameArea14 .textArea01.type01 {
	min-height: auto;
  }
  #ct_bg .frameArea14 .textArea01 > .taTxt01 > a::after {
	bottom: 0;
  }

  #ct_bg .popupArea01 {
    padding: 30px 20px;
    width: 100%;
  }

  #ct_bg .popupArea01 > .title01 {
    font-size: 2.2rem;
  }

  #ct_bg .popupArea01 > .title01.type01 {
    font-size: 2.01rem;
  }

  #ct_bg .popupArea01 > .img02 {
    width: 100%;
  }

  #ct_bg .popupArea01 > .button01 > a:hover {
    background-color: #229edb;
  }

  #ct_bg .heading01 {
    background: url(../img/bg_common06.jpg) no-repeat top center / cover;
    height: 26.6666vw;
  }

  #ct_bg .heading01 img {
    margin: 0 auto;
    width: 48.2%;
  }
  #ct_bg .heading01 img.products {
    width: 67.2%;
  }

  #ct_bg .heading02 {
    padding: 10px;
  }

  #ct_bg .heading03 {
    width: 74.4%;
  }

  #ct_bg .heading04 {
    width: 78.6%;
  }

  #ct_bg .heading06 {
    top: -27px;
    margin-left: -43.6%;
    padding: 16px 20px;
    width: 87.3%;
    font-size: 2.01rem;
  }
  #ct_bg .heading06.line02 {
    top: -40px;
  }

  #ct_bg .heading06 > .icon01 {
    padding-left: 58px;
  }
  #ct_bg .heading06 > .icon01::before {
    margin-top: -16px;
    width: 40px;
    height: 32px;
  }
  #ct_bg .heading07 {
    padding-top: 9px;
    padding-bottom: 9px;
    font-size: 2.0rem;
  }

  #ct_bg .heading08 {
    font-size: 2.4rem;
  }


  #ct_bg .col03 .btn01 {
    display: table;
    margin-right: auto;
    margin-left: auto;
  }

  #ct_bg .btn01 > a {
    padding: 12px 4%;
  }

  #ct_bg .btn01 > a:hover {
    border-color: #229edb;
  }

  #ct_bg .btn01 > a:before {
    content: normal;
  }

  #ct_bg .btn01.type01 {
    min-width: 100%;
  }

  #ct_bg .btn01.type01 > a {
    padding: 10px 2%;
    font-size: 1.4rem;
  }

  #ct_bg .btn01.type01.pdf > a > .inner01:after {
    top: -2px;
    width: 18px;
    height: 22px;
  }

  #ct_bg .btn01.type02 {
    min-width: initial;
  }

  #ct_bg .btn01.type03 > a {
    padding: 12px 3.5vw;
    font-size: 2.1rem;
  }

  #ct_bg .btn02 {
    max-width: 145px;
  }

  #ct_bg .btn02.left {
    margin-left: auto;
  }

  #ct_bg .btn02 > a:before,
  #ct_bg .btn03 > a:before {
    content: normal;
  }

  #ct_bg .btn02 > a:hover:after,
  #ct_bg .btn02 > a.reserve:after,
  #ct_bg .btn02 > a.waiting:after {
    opacity: 0;
    transition: none;
  }

  #ct_bg .btn03 {
    width: 92.7%;
  }

  #ct_bg .btn04 {
    width: 90%;
  }

  #ct_bg .btn04 > a {
    padding: 12px 10px 10px;
    font-size: 1.6rem;
  }

  #ct_bg .btn04 > a:hover {
    border: 2px solid #1f2871;
    color: #1f2871;
  }

  #ct_bg .btn05 {
    margin-top: 40px;
  }

  #ct_bg .btn05 > a {
    padding: 20px 8.5%;
    font-size: 1.8rem;
  }
  #ct_bg .btn05 > a::before {
    left: 20px;
  }
  #ct_bg .btn05 > a::after {
    content: normal;
  }

  #ct_bg .btn06 > a {
    padding: 10px 20px;
    font-size: 1.6rem;
  }
  #ct_bg .btn06 > a::after {
    content: normal;
  }
  #ct_bg .btn06 > a:hover {
    border: 2px solid #229edb;
  }
  #ct_bg .btn06 > a > .inner01 {
    padding-left: 31px;
  }

  #ct_bg .btn07 > a {
    padding: 15px 10px;
    font-size: 2.4rem;
  }
  #ct_bg .btn07 > a::after {
    content: normal;
  }
  #ct_bg .btn08 > a {
	font-size: 1.6rem;
  }
  #ct_bg .btn08 > a > .inner01:after {
	top: 2px;	
  }

  #ct_bg .btnWrap02 > .btn08 {
    width: 100%;
	max-width: 336px;
	  margin: 0 auto;
  }
  #ct_bg .btnWrap02 > .btn08:nth-child(n + 2) {
    margin-top: 20px;
  }

  #ct_bg .bnr02 {
    margin-top: 25px;
  }

  #ct_bg .bnr03 {
    margin-top: 30px;
    width: 100%;
  }
  #ct_bg .bnr03:first-child {
    margin-top: 100px;
  }
  #ct_bg .bnr05 {
    padding: 0 20px;
  }
  #ct_bg .bnr06 + .bnr06 {
    margin-top: 10px;
  }

  #ct_bg .txt04 {
    font-size: 2.6rem;
  }

  #ct_bg .txt06 {
    text-align: left;
  }

  #ct_bg .txt09 {
    padding: 0 20px;
  }

  #ct_bg .list01 > li {
    width: 100%;
  }

  #ct_bg .list01 > li:nth-child(even) {
    margin-left: 0;
  }

  #ct_bg .list02 > dt:before {
    top: -6px;
  }

  #ct_bg .list03 {
    margin-left: -50px;
  }

  #ct_bg .list03 > li {
    width: 100%;
  }

  #ct_bg .list03 > li:nth-child(even) {
    margin-left: 0;
  }

  #ct_bg .list04 > li {
    margin-left: 0;
    width: 47.8%;
  }

  #ct_bg .list04 > li:nth-child(even) {
    margin-left: 4.4%;
  }

  #ct_bg .list04 > li > a:before {
    content: normal;
  }

  #ct_bg .list05 > dt > .icon01 {
    padding: 2px 5px;
  }

  #ct_bg .list06 > li {
    margin-top: 10px
  }
  #ct_bg .list06 > li.btn06 {
    width: 100%;
  }

  #ct_bg .list06 > li.btn06 > a {
    padding: 10px;
    font-size: 1.4rem;
  }

  #ct_bg .list07 {
    display: block;
  }

  #ct_bg .list07 > li {
    margin: 10px 0 0;
    font-size: 1.4rem;
  }

  #ct_bg .ancList01 > li {
    margin: 10px 0 0;
    width: 47.8%;
  }

  #ct_bg .ancList01 > li:nth-child(even) {
    margin-left: 4.4%;
  }

  #ct_bg .ancList01 > li > a:before {
    content: normal;
  }

  #ct_bg .col01 {
    margin: 50px 0 0;
    width: 47.8%;
  }

  #ct_bg .col01 .new {
    top: -2%;
  }

  #ct_bg .col01:nth-child(even) {
    margin-left: 4.4%;
  }
  #ct_bg .col01:nth-child(3) {
    margin-top: 50px;
  }

  #ct_bg .col01 .bx-wrapper {
    padding: 5px;
  }

  #ct_bg .col01 > .inner01 {
    padding: 20px 6%;
  }

  #ct_bg .col01 > .inner01 > .title01 {
    font-size: 1.6rem;
  }

  #ct_bg .col02 {
    width: 100%;
  }

  #ct_bg .col02 > .image01 {
    padding: 5px;
  }

  #ct_bg .col02 > .image01 .new {
    top: -2.333vw;
  }

  #ct_bg .col03 {
    margin-top: 20px;
    width: 100%;
  }

  #ct_bg .wrap01:first-child .col03 {
    margin-top: 20px;
  }

  #ct_bg .col03 > .inner01 {
    padding: 20px 6%;
  }

  #ct_bg .col03 > .inner01 > .title01 {
    font-size: 1.8rem;
  }

  #ct_bg .col03 > .button01 {
    width: 86.9%;
  }

  #ct_bg .col04 {
    width: 100%;
  }

  #ct_bg .col04 + .col04 {
    margin-top: 20px;
  }

  #ct_bg .col05 {
    margin: 30px 0 0;
    width: 47.8%;
  }

  #ct_bg .col05:nth-child(even) {
    margin-left: 4.4%;
  }
  #ct_bg .col05:nth-child(3) {
    margin-top: 30px;
  }

  #ct_bg .col05.type01 {
    width: 100%;
    margin-left: 0;
  }

  #ct_bg .col06 {
    width: 100%;
  }

  #ct_bg .col06 > .text01 {
    font-size: 2.01rem;
  }

  #ct_bg .col08 {
    margin-top: 20px;
    width: 100%;
  }
  #ct_bg .col08:first-child {
    margin-top: 0;
  }

  #ct_bg .col08 > .text01 {
    display: block;
    margin-right: 0;
    width: auto;
    font-size: 1.8rem;
  }
  #ct_bg .col09 {
    margin: 0 auto;
    width: 86.1%;
  }

  #ct_bg .col10 {
    margin-top: 20px;
    width: 100%;
  }

  #ct_bg .col11 {
    width: 100%;
  }
  #ct_bg .col11 > .text01 {
    font-size: 2.6rem;
  }

  #ct_bg .col12 {
    margin: 20px 0 0;
    width: 100%;
  }
  #ct_bg .col12 > .image01 {
    margin: 0 auto;
    padding-right: 30px;
    width: 52.5vw;
  }

  #ct_bg .col13 {
    width: 100%;
  }

  #ct_bg .col13 > .text01 {
    font-size: 1.0rem;
  }

  #ct_bg .col14 {
    width: 100%;
  }
  #ct_bg .col14 > .text01 {
    font-size: 1.4rem;
  }
  #ct_bg .col14 > .text01 {
    font-size: 1.4rem;
  }
  #ct_bg .col14 > .text02 {
    font-size: 1.2rem;
  }
  #ct_bg .col14 > .text03 {
    font-size: 1.0rem;
  }

  #ct_bg .column01 > .text01 {
    display: block;
    margin-right: 0;
    width: auto;
    font-size: 1.8rem;
  }

  #ct_bg .window01 {
    margin-top: 10px;
    width: 100%;
  }

  #ct_bg .selectGroup01 {
    display: block;
    margin-top: 10px;
    width: 100%;
  }

  #ct_bg .formButton01 {
    width: 75%;
    border-radius: 10px;
  }
  #ct_bg .formButton01::before {
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    width: 26px;
    height: 23px;
  }

  #ct_bg .formButton01::after {
    content: normal;
  }

  #ct_bg .formButton01 input {
    padding: 15px 15px 15px 50px;
    font-size: 1.8rem;
  }

  #ct_bg .topMovie01 {
    width: 100%;
    margin-top: 25px;
    padding: 0 20px;
  }

  #ct_bg .infoArea01 > .title01 {
    top: -15px;
    padding: 5px 30px;
    font-size: 2.01rem;
  }

  #ct_bg .infoArea02 {
    position: relative;
    margin-top: 86px;
    padding: 3vw;
    border: 8px solid #1F2871;
  }
  #ct_bg .infoArea02 > .title01 {
    top: -40px;
    left: -8px;
    padding: 5px 5vw;
    font-size: 1.8rem;
  }


  #ct_bg .slider02 {
    max-width: inherit;
    width: 100%;
  }
  #ct_bg .slider02 .item01 {
    border: 1px solid #fff;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
  }
  #ct_bg .slider02 .slick-slide a:hover::after {
    opacity: 0;
  }
  #ct_bg .slider02 .slick-arrow {
    width: 42px;
    height: 42px;
  }

  #ct_bg .slider02 .slick-arrow.slick-prev {
    left: 15px;
  }
  #ct_bg .slider02 .slick-arrow.slick-prev:hover {
    background: url(../../img/prev_btn02_off.png) no-repeat 0 0 / cover;
  }

  #ct_bg .slider02 .slick-arrow.slick-next {
    right: 15px;
  }
  #ct_bg .slider02 .slick-arrow.slick-next:hover {
    background: url(../../img/next_btn02_off.png) no-repeat 0 0 / cover;
  }
  #ct_bg .slider02 .slick-dots > li {
    width: 30px;
    height: 5px;
  }

  #ct_bg .slider02 .slick-dots > li > button:hover {
    background-color: #fff;
  }

  #ct_bg .slider02 .slick-dots > li.slick-active > button {
    background-color: #fff000;
  }

  #ct_bg .slider03 {
    width: 100%;
  }
  #ct_bg .slick-dotted.slick-slider {
    margin: 0;
  }

  #ct_bg .slider03 .item01 .image01 a:hover {
    opacity: 1.0;
  }

  #ct_bg .slider03 .item01 .text01 {
    margin-top: 10px;
  }

  #ct_bg .slider03 .slick-arrow {
    position: absolute;
    z-index: 2;
    top: auto;
    left: auto;
    right: auto;
    bottom: -15px;
    transform: none;
    width: 40px;
    height: 40px;
    padding: 0;
    margin-top: 0;
    border: none;
    box-sizing: border-box;
  }
  #ct_bg .slider03 .slick-arrow:before {
    content: "";
  }

  #ct_bg .slider03 .slick-arrow.slick-prev {
    left: 0;
  }
  #ct_bg .slider03 .slick-arrow.slick-prev::before {
    position: absolute;
    top: 50%;
    left: 0;
    content: "";
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 14px 10px 0;
    border-color: transparent #1f2971 transparent transparent;
  }

  #ct_bg .slider03 .slick-arrow.slick-next {
    right: 0;
  }
  #ct_bg .slider03 .slick-arrow.slick-next::before {
    position: absolute;
    top: 50%;
    right: 0;
    content: "";
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 14px;
    border-color: transparent transparent transparent #1f2971;
  }

  #ct_bg .slider03 .slick-dots {
    height: auto;
    margin-top: 30px;
    position: static;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  #ct_bg .slider03 .slick-dots > li {
    margin-left: 5px;
    margin-right: 5px;
    width: 10px;
    height: 10px;
  }

  #ct_bg .slider03 .slick-dots > li > button {
    display: block;
    padding: 0;
    width: 100%;
    height: 100%;
    border-radius: 100%;
    background-color: #00A3E9;
    opacity: .2;
  }

  #ct_bg .slider03 .slick-dots > li.slick-active > button {
    opacity: 1.0;
  }

  #ct_bg .slider03 .slick-dots > li > button::before {
    content: none;
  }

  #ct_bg .slider03 .slick-dots > li > button:not(:first-child) {
    display: none;
  }

  #ct_bg .slider03thum {
    display: none;
  }

  #ct_bg .thumbnList01 > li:hover {
    opacity: 1.0;
  }

  #ct_bg .wrapper01 {
    padding: 100px 2.5% 50px;
  }

  #ct_bg .itemSearch01 {
    justify-content: space-between;
  }

  #ct_bg .itemSearch01 > li {
    margin: 10px 0 0;
    width: 48.5%;
  }

  #ct_bg .itemSearch01 > li > a.inner01:hover {
    border-color: #1F2871;
    background-color: #00A3E9;
  }

  #ct_bg .itemSearch01 > li > .inner01 {
    padding: 6px 6px 16px;
  }

  #ct_bg .itemSearch01 > li > .inner01::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    background: url(../img/bg_common13.png) repeat 0 0 / 10px 10px;
    opacity: .2;
  }
  #ct_bg .itemSearch01 > li > .inner01 > .text01 {
    margin-top: 10px;
    width: 100%;
    font-size: 1.8rem;
    text-align: center;
  }
  #ct_bg .itemSearch01 > li > a.inner01:hover > .text01 {
    text-shadow: 2px 2px 0 #1F2871, -2px -2px 0 #1F2871, -2px 2px 0 #1F2871, 2px -2px 0 #1F2871, 0px 2px 0 #1F2871, 0 -2px 0 #1F2871, -2px 0 0 #1F2871, 2px 0 0 #1F2871;
  }

  #ct_bg .itemSearch01 > li > .inner01 > .image01 {
    width: 100%;
  }

  #ct_bg .goodsList01 {
    justify-content: space-between;
  }

  #ct_bg .goodsList01 > li {
    margin-left: 0;
    width: 47.7%
  }
  #ct_bg .goodsList01 > li > .inner01 > .text01 {
    font-size: 1.4rem;
  }

  #ct_bg .goodsList01 > li > a.inner01:hover > .image01::before {
    opacity: 0;
  }

  #ct_bg .goodsList02 {
    justify-content: space-between;
  }

  #ct_bg .goodsList02 > li {
    margin-left: 0;
    width: 47.7%;
  }

  #ct_bg .goodsList02 > li > a.inner01:hover {
    background-color: #fff;
  }

  #ct_bg .goodsList02 > li > .inner01 > .text01 {
    font-size: 1.4rem;
  }
  #ct_bg .goodsList02 > li > .inner01:hover > .text01 {
    text-decoration: none;
  }


  #ct_bg .infoList01 {
    padding-right: 0;
  }

  #ct_bg .infoList01 > dt {
    width: 100%;
    font-size: 1.2rem;
  }
  #ct_bg .infoList01 > dt:first-child + dd {
    margin-top: 5px;
  }

  #ct_bg .infoList01 > dd {
    position: relative;
    margin-top: 5px;
    width: 100%;
    font-size: 1.2rem;
  }

  #ct_bg .infoList01 > dd .icon01 {
    display: block;
    position: absolute;
    top: -22px;
    left: 70px;
    margin-right: 0;
    padding: 0 5px;
    font-size: 1.0rem;
  }

  #ct_bg .pagination01 > li > a,
  #ct_bg .pagination01 > li > span {
    padding-bottom: 0;
    width: 32px;
    height: 32px;
    font-size: 1.4rem;
  }
  #ct_bg .pagination01 > li > a:hover {
    background: #FFF;
    color: #1F2871;
  }
	#ct_bg .catList01 {
		max-width: 100%;
	}
  #ct_bg .catList01 > li > a {
    font-size: 1.2rem;
  }

  #ct_bg .catList01 > li > a:hover {
    background-color: #1F2871;
  }

  #ct_bg .catchTxt01 {
    font-size: 1.6rem;
  }

  #ct_bg .relationList01 > li {
    margin-top: 10px;
  }

  #ct_bg .relationList01 > li > a {
    font-size: 1.4rem;
  }
  #ct_bg .copyrightTxt01 {
    font-size: 1.0rem;
  }

  .fancybox-close-small {
	width: 50px;
	height: 50px;
	}
  .fancybox-close-small:hover {
	opacity: 1;
  }
  .modal01 {
	padding: 10px 4%;
  }
  .modal01 p {
	font-size: 1.4rem;
  }
  .modal01 p + p {
	margin-top: 10px;
  }
  .modal01 .txt01 {
	font-size: 1.6rem;
	}
  .modal01 .txt02 {
	padding: 10px;
	text-align: center;
  }
  .modal01 ul > li {
	font-size: 1.4rem;
  }
  .modal01 .txtCol01 {
	width: 100%;
  }
  .modal01 .img01 {
	width: 100%;
  }
  .modalBtn01 {
	margin-left: 4%;
	margin-right: 4%;
	font-size: 1.4rem;	
  }
  .modalBtn01:hover {
	background-color: #fffcd1;
  }
  .popModal01 {
    overflow-x: hidden;
  }
  .popModal01 img {
    max-width: 100%;
  }
  .popModal01 iframe {
    max-width: 100%;
    width: 554px;
    height: 312px;
  }
  .popModal01 .fancybox-button {
    top: 0;
    right: 10px;
  }
  .popModal01.fancybox-content {
	padding: 48px 3vw 3vw;
  }
}
@media screen and (max-width: 346px) {
  #ct_bg .headTitleArea01 > .inner01 {
    font-size: 1rem;
  }
}
/* Clearfix */
#ct_bg .cf:after,
#ct_bg .col01 .image01:after {
  content: ' ';
  display: block;
  clear: both;
}


#ct_bg .sns_wrapper {
	display: table;
	margin: 45px auto 0;
	padding: 10px 5px 0;
	border-radius: 10px;
}
#ct_bg .sns_wrapper .snsBtn01 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#ct_bg .sns_wrapper .snsBtn01 li {
	margin: 0 5px 10px;
	line-height: 0;
}

#ct_bg .snsBtn02 {
	display: flex;
	flex-wrap: wrap;
}
#ct_bg .snsBtn02 > li {
	margin: 14px 5px 0;
	line-height: 0;
}

@media screen and (max-width: 767px) {
	#ct_bg .sns_wrapper {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 0;
	}
}

#ct_bg .slider01 > .item01,
#ct_bg .slider02 > .item01 {
  max-width: 600px;
}
#ct_bg .slider01 > .item01:not(:first-child),
#ct_bg .slider02 > .item01:not(:first-child) {
  display: none;
}