@charset "UTF-8";

/*--------------------コンテンツ基本設定--------------------*/

.wrapper>div>section+section {
  padding-top: 50px;
}

.wrapper>div>section.clm1_r_l_none+section.clm1_r_l_none {
  padding-top: 0px!important;
}

.wrapper>div>section img {
  width: auto;
  max-width: 100%;
  margin-bottom: 10px;
}
.wrapper>div>section > img:last-child,
.wrapper>div>section a.img_link:last-child img {
  margin-bottom: 0;
}

.wrapper>div>section h2 {
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: bold;
  margin-bottom: 20px;
  width: 100%;
}

.wrapper>div>section p {
  font-size: 1rem;
  line-height: 2;
  width: 100%;
}

.wrapper>section div h2+p,
.wrapper>section section h2+p {
  margin-top: 10px;
}

a.img_link {
  display: inline-block;
  width: auto;
  transition: 0.3s;
}

/*メインビジュアル*/

.ttl_wrap {
  width: 100%;
  height: 350px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0px !important;
  position: relative;
}

.ttl_wrap h1 {
  width: auto;
  font-size: 2.25rem;
  line-height: 1.6;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.15em;
  z-index: 5;
  padding: 0 20px;
}

.ttl_wrap h1 small {
  display: block;
  font-size: 1.25rem;
  text-align: center;
  margin-top: 15px;
  font-weight: 700;
  letter-spacing: 0.2em;
}

.ttl_wrap .bg,
.ttl_wrap .bgTablet,
.ttl_wrap .bgSp {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.ttl_h25 {
  height: 250px;
}

.ttl_h40 {
  height: 400px;
}

.ttl_h50,
.ttl_h100 {
  height: 100vh;
}

.ttl_bg_img {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}


/*メインビジュアルカラー設定*/

.ttl_wrap_color_01,
.ttl_wrap_color_02 {
  position: relative;
}

.ttl_wrap_color_01::before,
.ttl_wrap_color_02::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  z-index:4;
}

.ttl_wrap_color_01::before {
  background-color: rgba(0, 0, 0, 0.5);
}

.ttl_wrap_color_02::before {
  background-color: rgba(255, 255, 255, 0.7);
}


/*コンテンツ幅*/

.clum_w100 {
  width: 100%;
}

.clum_wpx {
  width: 1000px;
  margin: 0 auto;
}

@media all and (max-width:1024px) {
  /*タブレット・スマホ横幅*/
  .clum_wpx {
    width: 100%;
    margin: 0;
  }
}


/*カラム１*/

.clm1 {
  text-align: center;
}

.clm1>img {
  margin-bottom: 20px;
}

.clm1>img:only-child {
  margin-bottom: 0;
}

.clm1:not(.clum_wpx)>img,
.clm1:not(.clum_wpx)>a,
.clm1:not(.clum_wpx)>a>img
 {
  width: 100%;
  display: block;
}

.clm1>div {
  width: 100%;
  padding: 0 15%;
  box-sizing: border-box;
  display: flex;
  flex-flow: column;
}

.clm1>div h2 {
  font-size: 1.55rem!important;
  line-height: 1.8!important;
}

@media all and (min-width:481px) {
  .clum_wpx.clm1>div {
    padding: 0;
  }
}

/*カラム１（並列）*/

.clm1_l,
.clm1_r {
  display: flex;
  justify-content: space-between;
}

.clm1_r {
  flex-direction: row-reverse;
}

@media all and (min-width:481px) {
  .clm1_l>a.img_link,
  .clm1_r>a.img_link {
    width: 48%;
  }

  .clm1_l>div,
  .clm1_r>div {
    width: 47%;
  }

  .clm1_l>img,
  .clm1_r>img {
    width: 50%!important;
  }

  .clm1_l img,
  .clm1_r img {
    margin-bottom: 0px!important;
  }
}

@media all and (max-width:480px) {
  _:-ms-lang(x)::-ms-backdrop, .clm1_l {
    display: block;
    text-align: center;
  }
  _:-ms-lang(x)::-ms-backdrop, .clm1_r {
    display: block;
    text-align: center;
  }
}

/*カラム２.カラム３*/

.clm2,
.clm3 {
  display: flex;
  flex-wrap: wrap;
}

.clm2>section,
.clm3>section {
  display: flex;
  flex-direction: column;
}
_:-ms-lang(x)::-ms-backdrop, .clm2>section {
  display: block;
}
_:-ms-lang(x)::-ms-backdrop, .clm3>section {
  display: block;
}

.clm2>section {
  width: calc(100% / 2 - 2%);
  margin-right: 4%;
}

.clm3>section {
  width: calc(100% / 3 - 4%);
  margin-right: 6%;
}

.clm2>section:nth-child(1n + 3),
.clm3>section:nth-child(1n + 4) {
  margin-top: 50px;
}

.clm2>section:first-child,
.clm3>section:first-child {
  margin-top: 0px;
}
.clm2>section:first-child:last-child,
.clm3>section:first-child:last-child {
  margin-right: 0px;
}

.clm2>section:nth-of-type(2n),
.clm3>section:nth-of-type(3n) {
  margin-right: 0%;
}

.clm2>section:only-child>img:only-child,
.clm3>section:only-child>img:only-child {
  margin-bottom: 0;
}

.clm3 h2 {
  font-size: 1.15rem!important;
  line-height: 1.5!important;
}

.clm2 p {
  flex-grow: 1;
}
.clm3 p {
  font-size: 0.85rem!important;
  line-height: 1.8!important;
  flex-grow: 1;
}


/*--------------------トップタイトル--------------------*/

h2.top_ttl {
  text-align: center;
  font-size: 1.85rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: bold;
}

h2.top_ttl+* {
  margin-top: 40px;
}

h2.top_ttl small {
  display: block;
  font-size: 1rem;
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
}

h2.top_ttl span + small {
  margin-top: 10px;
}


/*--------------------マップ基本設定--------------------*/

.map_wrap {
  text-align: center;
}

.map {
  width: 100%;
  height: 500px;
  background-color: grey;
}
.map_wrap .btn {
  margin-top: 30px;
}

/*--------------------テーブル基本設定--------------------*/

.outline_wrap div dl {
  display: flex;
  text-align: justify;
  font-size: 1rem;
  line-height: 2;
}

.outline_wrap div dl+dl {
  border-top: 1px solid #ccc;
}

.outline_wrap div dl dt {
  width: 25%;
  font-weight: bold;
}

.outline_wrap div dl dd {
  width: 75%;
}

.outline_wrap div dl dd>span {
  display: block;
}

.outline_wrap div dl dd>span+span {
  border-top: 1px solid #ccc;
  padding-top: 15px;
  margin-top: 15px;
}

.border_on.outline_wrap .table_wrap{
  border: 1px solid #ccc;
}
.image_on.outline_wrap .image_wrap .image{
  width:100%;
  /* padding-top: 77%; */
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}

.image_on.outline_wrap .image_wrap .image:not(:first-child){
  margin-top: 25px;
}

/*--------------------ボタン基本設定--------------------*/

p+.btn {
  margin-top: auto;
}

.btn {
  width: 100%;
  display: flex;
  justify-content: center;
}

.btn a {
  width: 250px;
  height: 60px;
  background-color: #aaa;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.0rem;
  color: #fff;
  position: relative;
  transition: 0.3s ease;
}

h2+.btn,
p+.btn {
  margin-top: 30px;
}

img+.btn {
  margin-top: 20px;
}

.btn a::before {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: 0px;
  right: 15px;
  width: 9px;
  height: 1px;
  background: #fff;
  transition: 0.3s ease;
}

.btn a::after {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 15px;
  width: 7px;
  height: 7px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: 0.3s ease;
}

@media all and (min-width:1025px) {
  .btn a:hover {
    background-color: #999;
  }
  .btn a:hover::before,
  .btn a:hover::after {
    right: 10px;
  }
  a.img_link:hover {
    opacity: 0.7;
  }
  /*--------------------テーブル基本設定--------------------*/
  .outline_wrap div dl dt {
    padding-top: 30px;
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 30px;
  }
  .outline_wrap div dl dd {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .outline_wrap div dl dd>span {
    padding-left: 30px;
    padding-right: 30px;
  }
  .border_on.outline_wrap div dl dd {
    border-left: 1px solid #ccc;
  }

  .image_on.outline_wrap .table_wrap{
    width:600px;
  }

  .image_on.outline_wrap .image_wrap{
    width:350px;
  }

  .image_on.outline_wrap .image_wrap .image{
    /* height:270px; */
  }

  .image_on.outline_wrap{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    -webkit-display: flex;
    -webkit-align-items: flex-start;
    -webkit-justify-content: space-between;
    -moz-display: flex;
    -moz-align-items: flex-start;
    -moz-justify-content: space-between;
  }

}

.wrapper .img_complete img {
  margin-bottom: 0;
}
@media all and (min-width: 1025px){
  .ttl_wrap .bg{
    z-index:3;
  }
  .img_complete .pcImage{
    display: inline!important;
  }
  .img_complete .tabletImage{
    display: none!important;
  }
  .img_complete .spImage{
    display: none!important;
  }
  .pc_img_only .pcImage{
    display: inline!important;
  }
  .pc_img_only .tabletImage{
    display: none!important;
  }
  .pc_img_only .spImage{
    display: none!important;
  }
  .sp_img_only .pcImage{
    display: none!important;
  }
  .sp_img_only .tabletImage{
    display: none!important;
  }
  .sp_img_only .spImage{
    display: inline!important;
  }
  .tablet_img_only .pcImage{
    display: none!important;
  }
  .tablet_img_only .tabletImage{
    display: inline!important;
  }
  .tablet_img_only .spImage{
    display: none!important;
  }
  .ttl_wrap.bothImage .bgTablet{
    display: none!important;
  }
  .ttl_wrap.bothImage .bgSp{
    display: none!important;
  }
}


/*--------------------TABLET--------------------*/
@media all and (min-width: 481px) and (max-width: 1024px){
  /*--------------------コンテンツ基本設定--------------------*/
  .ttl_wrap .bgTablet{
    z-index:3;
  }
  .ttl_wrap.bothImage .bgSp{
    display: none!important;
  }
  .ttl_wrap.bothImage .bg {
    display: none!important;
  }
  .img_complete .pcImage{
    display: none!important;
  }
  .img_complete .tabletImage{
    display: inline!important;
  }
  .img_complete .spImage{
    display: none!important;
  }
  .pc_img_only .pcImage{
    display: inline!important;
  }
  .pc_img_only .tabletImage{
    display: none!important;
  }
  .pc_img_only .spImage{
    display: none!important;
  }
  .sp_img_only .pcImage{
    display: none!important;
  }
  .sp_img_only .tabletImage{
    display: none!important;
  }
  .sp_img_only .spImage{
    display: inline!important;
  }
  .tablet_img_only .pcImage{
    display: none!important;
  }
  .tablet_img_only .tabletImage{
    display: inline!important;
  }
  .tablet_img_only .spImage{
    display: none!important;
  }
}

/*--------------------SP--------------------*/

@media all and (max-width:480px) {
  /*--------------------コンテンツ基本設定--------------------*/
  .wrapper>.bg {
    padding: 50px 0;
  }
  .wrapper>.bg_pm0 {
    padding: 50px 0 10px;
  }
  .wrapper>div>section {
    width: 100%;
  }
  .wrapper>div>section+section {
    padding-top: 40px;
  }
  .wrapper>div>section.clm1_r_l_none+section.clm1_r_l_none {
    padding-top: 40px!important;
  }
  .wrapper>div>section img {
    width: auto;
    margin-bottom: 20px;
  }
  .wrapper>div>section h2 {
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 10px;
  }
  .wrapper>div>section p {
    font-size: 0.85rem;
    line-height: 2;
  }
  /*メインビジュアル*/
  .ttl_wrap {
    height: calc(400px * 0.6);
  }
  .ttl_wrap h1 {
    font-size: 1.1rem;
    line-height: 1.4;
    letter-spacing: 0em;
    padding: 0 5%;
  }
  .ttl_wrap h1 small {
    font-size: 0.85rem;
    margin-top: 8px;
    letter-spacing: 0.1em;
  }
  .ttl_wrap .bgSp{
    z-index:3;
  }
  .ttl_wrap.bothImage .bg {
    display: none!important;
  }
  .img_complete .pcImage{
    display: none!important;
  }
  .img_complete .spImage{
    display: inline!important;
  }
  .pc_img_only .pcImage{
    display: inline!important;
  }
  .pc_img_only .spImage{
    display: none!important;
  }
  .sp_img_only .pcImage{
    display: none!important;
  }
  .sp_img_only .spImage{
    display: inline!important;
  }
  .tablet_img_only .pcImage{
    display: none!important;
  }
  .tablet_img_only .tabletImage{
    display: inline!important;
  }
  .tablet_img_only .spImage{
    display: none!important;
  }
  .ttl_h25 {
    height: calc(250px * 0.6);
  }
  .ttl_h40 {
    height: calc(400px * 0.6);
  }
  .ttl_h50,
  .ttl_h100 {
    height: 100vh;
  }

  /*カラム１*/
  .clm1>img {
    margin-bottom: 20px;
  }
  .clm1>div {
    padding: 0 5%;
  }
  .clm1>div h2 {
    font-size: 1.1rem!important;
    line-height: 1.6!important;
  }
  /*カラム１（並列）*/
  .clm1_l,
  .clm1_r {
    flex-direction: column;
  }
  .clm1_l>a.img_link,
  .clm1_r>a.img_link {
    width: 100%;
  }
  .clm1_l>img,
  .clm1_r>img {
    width: 100%;
    margin-bottom: 10px;
  }
  .clm1_l>div,
  .clm1_r>div {
    width: 100%;
    padding: 0 5%;
    box-sizing: border-box;
  }
  /*カラム２.カラム３*/
  .clm2,
  .clm3 {
    padding: 0 5%;
    box-sizing: border-box;
  }
  .clm2>section {
    width: 100%;
    margin-right: 0%;
    margin-bottom: 0px;
  }
  .clm3>section {
    width: 100%;
    margin-right: 0%;
  }
  .clm3>section+section,
  .clm2>section+section {
    margin-top: 30px!important;
  }
  .clm2 h2,
  .clm3 h2 {
    font-size: 1.00rem!important;
    line-height: 1.6!important;
  }
  .clm3 p {
    font-size: 0.85rem!important;
    line-height: 1.8!important;
  }
  /*--------------------トップタイトル--------------------*/
  h2.top_ttl {
    font-size: 1.2rem;
    padding: 0 5%;
    box-sizing: border-box;
  }
  h2.top_ttl+* {
    margin-top: 30px;
  }
  h2.top_ttl small {
    font-size: 0.85rem;
    line-height: 2;
  }
  /*--------------------マップ基本設定--------------------*/
  .map {
    width: 100%;
    height: 300px;
  }
  .map_wrap .btn {
    margin-top: 15px;
  }
  /*--------------------テーブル基本設定--------------------*/
  .outline_wrap div {
    margin-top: 30px;
    padding: 0 5%;
    box-sizing: border-box;
  }
  .outline_wrap div dl {
    flex-direction: column;
    font-size: 0.85rem;
    line-height: 1.6;
  }
  .outline_wrap div dl+dl {
    padding-top: 15px;
    margin-top: 15px;
  }
  .outline_wrap div dl dt {
    width: 100%;
    padding-right: 0;
    margin-bottom: 10px;
  }
  .outline_wrap div dl dd {
    width: 100%;
  }
  .outline_wrap div dl dd>span+span {
    padding-top: 10px;
    margin-top: 10px;
    border-top: 1px dashed #eee;
  }
  .border_on.outline_wrap {
    width: auto !important;
    margin-left: 10px;
    margin-right: 10px;
  }
  .border_on.outline_wrap div{
      padding:0;
  }
  .border_on.outline_wrap div dl{
      margin-top: 0;
  }
  .border_on.outline_wrap div dl dt {
      padding-left: 10px;
      padding-right: 10px;
      padding-bottom: 10px;
      margin-bottom: 0;
      border-bottom: 1px solid #ccc;
  }
  .border_on.outline_wrap div dl dd {
      padding-top: 15px;
      padding-bottom: 15px;
      padding-left: 10px;
      padding-right: 10px;
  }
  .wrapper>section div h2+p,
  .wrapper>section section h2+p {
    margin-top: 10px;
  }
  /*--------------------ボタン基本設定--------------------*/
  p+.btn {
    margin-top: auto;
  }
  .btn {
    width: 100%;
    padding: 0 10%;
    box-sizing: border-box;
  }
  .btn a {
    width: 100%;
    height: 60px;
    font-size: 0.8rem;
  }
  h2+.btn,
  p+.btn {
    margin-top: 15px;
  }
  img+.btn {
    margin-top: 5px;
  }
}


/*--------------------iP_SE--------------------*/

@media all and (max-width:320px) {}


/*--------------------タブレット--------------------*/

@media all and (min-width: 481px) and (max-width: 1024px) {
  .clum_wpx {
    padding: 0 3%;
    box-sizing: border-box;
  }
  .clm1>div {
    padding: 0;
  }
  .clm1:not(.clum_wpx)>div {
    padding: 0 3%;
  }
  .clm2>section {
    width: calc(100% / 2 - 1.5%);
    margin-right: 3%;
  }
  .clm3>section {
    width: calc(100% / 3 - 2%);
    margin-right: 3%;
  }
  .wrapper>div>section+section {
    padding-top: 30px!important;
  }
  .ttl_wrap h1 {
    font-size: 1.5rem;
  }
  .ttl_wrap h1 small {
    font-size: 1.15rem;
  }
  .clm1>div h2 {
    font-size: 1.25rem!important;
  }
  .wrapper>div>section h2 {
    font-size: 1rem;
    margin-bottom: 5px;
  }
  .clm3 h2 {
    font-size: 0.9rem!important;
  }
  .outline_wrap h2 {
    font-size: 1.55rem;
  }
  .wrapper>div>section p {
    font-size: 0.75rem;
    line-height: 1.8;
  }
  .clm3 p {
    font-size: 0.75rem;
  }
  h2.top_ttl {
    font-size: 1.25rem;
    padding: 0 3%;
    box-sizing: border-box;
  }
  h2.top_ttl small {
    font-size: 0.8rem;
    line-height: 1.6;
  }
  .outline_wrap div {
    padding: 0 3%;
    box-sizing: border-box;
  }
  .outline_wrap div dl {
    font-size: 0.85rem;
  }
  .btn a {
    font-size: 0.9rem;
    height: 50px;
  }
  h2+.btn,
  p+.btn {
    margin-top: 20px;
  }
  img+.btn {
    margin-top: 10px;
  }
  .map_wrap .btn {
    margin-top: 20px;
  }
}

/*--------------------画像余白設定--------------------*/

@media all and (min-width: 481px) {
  /* ２カラム */
  .clm2 > section:nth-last-of-type(1) > img:first-child:last-child,
  .clm2 > section:nth-last-of-type(2) > img:first-child:last-child,
  .clm2 > section:nth-last-of-type(1) > a:first-child:last-child > img,
  .clm2 > section:nth-last-of-type(2) > a:first-child:last-child > img {
    margin-bottom: 0;
  }
  /* 3カラム */
  .clm3 > section:nth-last-of-type(1) > img:first-child:last-child,
  .clm3 > section:nth-last-of-type(2) > img:first-child:last-child,
  .clm3 > section:nth-last-of-type(3) > img:first-child:last-child,
  .clm3 > section:nth-last-of-type(1) > a:first-child:last-child > img,
  .clm3 > section:nth-last-of-type(2) > a:first-child:last-child > img,
  .clm3 > section:nth-last-of-type(3) > a:first-child:last-child > img {
    margin-bottom: 0;
  }
}
@media all and (max-width:480px) {
  /* ２カラム */
  .clm2 > section:nth-last-of-type(1) > img:first-child:last-child,
  .clm2 > section:nth-last-of-type(1) > a:first-child:last-child > img {
    margin-bottom: 0;
  }
  /* 3カラム */
  .clm3 > section:nth-last-of-type(1) > img:first-child:last-child,
  .clm3 > section:nth-last-of-type(1) > a:first-child:last-child > img {
    margin-bottom: 0;
  }
}

/*--------------------2clm.3clmレイアウト--------------------*/

@media all and (min-width: 481px) {
  /* センター */
  .clm2.box_center,
  .clm3.box_center {
    justify-content: center;
  }
  .clm2.box_center .column_start:last-child,
  .clm3.box_center .column_start:last-child {
    margin-right: 0;
  }
  /* 右揃え */
  .clm2.box_right,
  .clm3.box_right {
    justify-content: flex-end;
  }
  .clm2.box_right .column_start:last-child,
  .clm3.box_right .column_start:last-child {
    margin-right: 0;
  }
}


/*--------------------位置調整--------------------*/

.column_start {
  align-items: flex-start;
  text-align: justify;
}

.column_center {
  align-items: center;
  text-align: center;
}

.column_end {
  align-items: flex-end;
  text-align: right;
}

.row_start {
  align-items: flex-start;
}

.row_center {
  align-items: center;
}

.row_end {
  align-items: flex-end;
}


/*--------------------エディタ--------------------*/

.wrapper>div>.editor {
  display: block;
  font-size: 14px;
}

.wrapper>div>.editor:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}

.wrapper>div>.editor img {
  height: auto;
}

.wrapper>div>.editor p {
  margin-bottom: 15px;
}

.wrapper>div>.editor img {
  width: auto!important;
  max-width: 100% !important;
  height: auto !important;
  margin-bottom: 0!important;
}

.wrapper>div>.editor img.alignright {
  margin: 0 0 10px 15px;
  display: inline;
  float: right;
}

.wrapper>div>.editor img.alignleft {
  margin: 0 10px 15px 0;
  display: inline;
  float: left
}

.wrapper>div>.editor img.aligncenter {
  display: block;
  margin: 10px auto;
}

.wrapper>div>.editor img.alignnone {
  margin: 0 10px 15px 0;
}


/* .wrapper > div > .editor img.size-thumbnail {
	display: inline-block;
	margin: 0 4% 15px 0;
	width: 48%;
}
.wrapper > div > .editor img.size-thumbnail + .size-thumbnail {
	    margin: 0 0 15px 0;
} */

.wrapper>div>.editor .wp-caption {
  max-width: 100% !important;
}

.wrapper>div>.editor .wp-caption-text {
  font-size: 11px;
}

.wrapper>div>.editor strong {
  font-weight: bold !important;
}

.wrapper>div>.editor em {
  font-style: italic;
}

.wrapper>div>.editor ul {
  list-style-type: disc;
  margin-left: 30px;
  margin-bottom: 10px;
}

.wrapper>div>.editor ol {
  list-style-type: decimal;
  margin-left: 30px;
  margin-bottom: 15px;
}

.wrapper>div>.editor h2 {
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 15px;
}

.wrapper>div>.editor h2 {
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 15px;
}

.wrapper>div>.editor h3 {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 15px;
}

.wrapper>div>.editor h4 {
  font-weight: bold;
  font-size: 14px;
  margin-bottom: 15px;
}

.wrapper>div>.editor h5 {
  font-weight: bold;
  font-size: 13px;
  margin-bottom: 15px;
}

.wrapper>div>.editor h6 {
  font-weight: bold;
  font-size: 12px;
  margin-bottom: 15px;
}

.wrapper>div>.editor a {
  text-decoration: underline;
}

.wrapper>div>.editor a:hover {
  text-decoration: none;
}

.wrapper>div>.editor pre {
  font-size: 100%;
  white-space: pre-wrap;
  word-break: break-all;
}

.video-container {
  position: relative;
  padding-top: 56.25%;
  margin: 0;
  width: 100%;
}

.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}


/* TAB */

@media all and (max-width:1024px) {
  .wrapper>div>.editor {
    padding-left: 3%;
    padding-right: 3%;
  }
}


/* SP */

@media all and (max-width:480px) {
  .wrapper>div>.editor {
    padding-left: 5%;
    padding-right: 5%;
  }
}


/* iP_SE */

@media all and (max-width:320px) {}


/*--------------------iframe--------------------*/

.iframe {
  width: 1000px;
  height: 500px;
  margin: 0 auto;
}

.iframe>iframe {
  width: 100%;
  height: 100%;
}

.iframeWrap .btn {
  margin-top: 30px;
}

@media all and (max-width: 1024px) {
  .iframe {
    width: 100%;
    height: auto;
    margin: 0;
  }
  .iframe>iframe {
    width: 100%;
    height: 450px;
  }
  .iframeWrap .btn {
    margin-top: 20px;
  }
}

@media all and (max-width:480px) {
  .iframe>iframe {
    height: 300px;
  }
  .iframeWrap .btn {
    margin-top: 15px;
  }
}


/*オプション設定
**********************************************************************************************************************************************************/


/*--------------------間取り--------------------*/

.plan_wrap .subTitle {
  font-size: 1.6rem;
  border-bottom: 1px solid #4d4d4d;
  margin-bottom: 20px;
  padding-bottom: 6px;
}

.plan_wrap .specBox {
  display: flex;
  align-items: center;
}

.plan_wrap .specBox dt {
  font-size: 2.4rem;
  font-weight: 700;
  padding-right: 20px;
}

.plan_wrap .specBox dd {
  font-size: 0.9rem;
}

.plan_wrap .dataBox {
  display: flex;
}

.plan_wrap .specBox+.dataBox {
  margin-top: 20px;
}

.plan_wrap .dataBox .ul1 {
  font-size: 0.9rem;
}

.plan_wrap .dataBox .ul1+.ul1 {
  padding-left: 20px;
}

.plan_wrap .dataBox .ul1 li+li {
  margin-top: 5px;
}

.plan_wrap .planBox {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.plan_wrap .subTitle+.planBox,
.plan_wrap .specBox+.planBox,
.plan_wrap .dataBox+.planBox {
  margin-top: 50px;
}

.plan_wrap .planBox .thumb {
  width: 48%;
}

.plan_wrap .planBox .thumb a {
  display: block;
  width: 100%;
  height: 560px;
  padding: 30px;
  position: relative;
}

.plan_wrap .planBox .thumb .ico1 {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 50px;
  height: 50px;
  background-color: #fff;
}

.plan_wrap .planBox .thumb .ico1::before,
.plan_wrap .planBox .thumb .ico1::after {
  content: "";
  width: 2px;
  height: 25px;
  background-color: #4d4d4d;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.plan_wrap .planBox .thumb .ico1::after {
  width: 25px;
  height: 2px;
}

.fancy1 .fancybox-slide--image .fancybox-content {
  background-color: #fff;
}


/* pc */

@media all and (min-width: 1025px) {
  .plan_wrap .planBox .thumb+.thumb+.thumb {
    margin-top: 40px;
  }
  .plan_wrap .planBox .thumb a:hover {
    opacity: 0.7;
  }
}


/* tab */

@media all and (max-width: 1024px) {
  .plan_wrap .specBox {
    display: block;
  }
  .plan_wrap .specBox dt {
    padding-right: 0;
  }
  .plan_wrap .dataBox {
    display: block;
  }
  .plan_wrap .dataBox .ul1+.ul1 {
    padding-left: 0;
  }
  .plan_wrap .dataBox .ul1:nth-of-type(1n + 2) {
    padding-top: 15px;
  }
  .plan_wrap .planBox .thumb+.thumb+.thumb {
    margin-top: 20px;
  }
  .plan_wrap .planBox .thumb a {
    height: 50vw;
  }
}


/* sp */

@media all and (max-width:480px) {
  .plan_wrap {
    padding-left: 5%;
    padding-right: 5%;
  }
  .plan_wrap .subTitle {
    font-size: 1.2rem;
  }
  .plan_wrap .specBox dt {
    font-size: 1.6rem;
  }
  .plan_wrap .specBox dd {
    font-size: 0.8rem;
  }
  .plan_wrap .dataBox .ul1 {
    font-size: 0.8rem;
  }
  .plan_wrap .planBox {
    display: block;
  }
  .plan_wrap .subTitle+.planBox,
  .plan_wrap .specBox+.planBox,
  .plan_wrap .dataBox+.planBox {
    margin-top: 40px;
  }
  .plan_wrap .planBox .thumb {
    width: 100%;
  }
  .plan_wrap .planBox .thumb+.thumb {
    margin-top: 20px;
  }
  .plan_wrap .planBox .thumb a {
    height: 90vw;
  }
  .plan_wrap .planBox .thumb .ico1 {
    width: 30px;
    height: 30px;
  }
  .plan_wrap .planBox .thumb .ico1::before {
    height: 16px;
  }
  .plan_wrap .planBox .thumb .ico1::after {
    width: 16px;
  }
}


/* スライドショー
***************************************************************/

.slickSlide {
  margin-bottom: 40px;
}

.slickSlide li {
  margin: 0 40px;
}

.slickSlide li .img {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 35.305vw;
}

.slickSlide .slick-prev:before,
.slickSlide .slick-next:before {
  border-right: 1px solid #4d4d4d;
  border-bottom: 1px solid #4d4d4d;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}

.slickSlide .slick-prev {
  left: 19%;
  width: 30px;
  height: 40px;
}

.slickSlide .slick-next {
  right: 19%;
  width: 30px;
  height: 40px;
}

.slickSlide .img {
  width: 100%;
  overflow: hidden;
}

.slickSlide .textBox {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 12px;
}

.slickSlide .textBox .t1 {
  font-size: 16px;
}

.slickThumbnail {
  width: 965px;
  margin: 0 auto;
}

.slickThumbnail .slick-track {
  margin-left: 0;
  margin-right: 0;
}

.slickThumbnail .textBox {
  padding-top: 6px;
  padding-bottom: 12px;
}

.slickThumbnail li .img {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 90px;
}

.slickThumbnail .textBox .t1 {
  font-size: 11px;
  letter-spacing: 0;
  text-align: center;
}

.slickThumbnail .slick-current {
  position: relative;
}

.slickThumbnail .slick-current .img {
  position: relative;
}

.slickThumbnail .slick-current .img::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  border: 4px solid #4d4d4d;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.slickThumbnail .slick-slide:hover {
  cursor: pointer;
}

@media all and (max-width:480px) {
  .slickSlide {
    margin-bottom: 20px;
  }
  .slickSlide li {
    margin: 0 25px;
  }
  .slickSlide li .img {
    height: 56vw;
  }
  .slickSlide .slick-prev:before,
  .slickSlide .slick-next:before {
    width: 10px;
    height: 10px;
    margin-top: -5px;
  }
  .slickSlide .slick-prev {
    left: 0;
    width: 25px;
    height: 30px;
    margin-top: -10px;
  }
  .slickSlide .slick-next {
    right: 0;
    width: 25px;
    height: 30px;
    margin-top: -10px;
  }
  .slickSlide .textBox {
    padding-top: 6px;
  }
  .slickSlide .textBox .t1 {
    font-size: 11px;
  }
  .slickThumbnail .textBox {
    padding-top: 3px;
    padding-bottom: 6px;
  }
  .slickThumbnail {
    width: 100%;
  }
  .slickThumbnail .textBox .t1 {
    font-size: 10px;
    padding: 3px;
  }
  .slickThumbnail .slick-current .img::after {
    border: 3px solid #4d4d4d;
  }
}


/************************************
個別設定
************************************/


/*--------------------カラムマージン調整--------------------*/

.wrapper>.bg {
  padding: 70px 0;
}

.wrapper>.bgc_type00:not(.space_1):not(.space_2):not(.space_3)+.bgc_type00:not(.space_1):not(.space_2):not(.space_3),
.wrapper>.bgc_type01:not(.space_1):not(.space_2):not(.space_3)+.bgc_type01:not(.space_1):not(.space_2):not(.space_3),
.wrapper>.bgc_type02:not(.space_1):not(.space_2):not(.space_3)+.bgc_type02:not(.space_1):not(.space_2):not(.space_3),
.wrapper>.bgc_type03:not(.space_1):not(.space_2):not(.space_3)+.bgc_type03:not(.space_1):not(.space_2):not(.space_3),
.wrapper>.bgc_type04:not(.space_1):not(.space_2):not(.space_3)+.bgc_type04:not(.space_1):not(.space_2):not(.space_3),
.wrapper>.bgc_type05:not(.space_1):not(.space_2):not(.space_3)+.bgc_type05:not(.space_1):not(.space_2):not(.space_3),
.wrapper>.bgc_type06:not(.space_1):not(.space_2):not(.space_3)+.bgc_type06:not(.space_1):not(.space_2):not(.space_3) {
  padding-top: 0!important;
}

@media all and (max-width: 1024px) {
  .wrapper>.bg {
    padding: 50px 0;
  }
}


/*--------------------色調整--------------------*/
/*トップタイトル色*/
.color_topttl_type_white {
  color: #fff;
}
.color_topttl_type_black {
  color: #000;
}

/*背景色*/
.bgc_type00 {
  background-color: rgba(0, 0, 0, 0);
}
.bgc_type01 {
  background-color: #E2EEF4;
}
.bgc_type02 {
  background-color: #FDF8DF;
}
.bgc_type03 {
  background-color: #EAF4D6;
}
.bgc_type04 {
  background-color: #FAF3EE;
}
.bgc_type05 {
  background-color: #F9F9F9;
}

/*テキストカラー*/
.text_color01 {
    color: #4792BC;
}
.text_color02 {
    color: #F3AD44;
}
.text_color03 {
    color: #82BE0A;
}
.text_color04 {
    color: #F37C96;
}
.text_color05 {
    color: #949494;
}

/*ボタン色*/
.text_color01 a {
    background-color: #4792BC;
}
.text_color02 a {
    background-color: #F3AD44;
}
.text_color03 a {
    background-color: #82BE0A;
}
.text_color04 a {
    background-color: #F37C96;
}
.text_color05 a {
    background-color: #949494;
}

/*ボタンホバー色*/
@media all and (min-width:1025px) {
  .text_color01 a:hover {
    background-color: #3680A9;
  }
  .text_color02 a:hover {
    background-color: #DF9931;
  }
  .text_color03 a:hover {
    background-color: #6CA003;
  }
  .text_color04 a:hover {
    background-color: #DC6780;
  }
  .text_color05 a:hover {
    background-color: #777777;
  }
}


/************************************
余白設定オプション
************************************/
/* 上下なし */
.wrapper>.bg.space_1 {
  padding-top: 0;
  padding-bottom: 0;
}
/* 上のみなし */
.wrapper>.bg.space_2 {
  padding-top: 0;
}
/* 下のみなし */
.wrapper>.bg.space_3 {
  padding-bottom: 0;
}
